/* Journal (blog) pages — same paper, ink and gold as the rest of the site. */
.journal { padding: clamp(2.5rem, 2rem + 3vw, 5rem) var(--gutter) var(--space-section); max-width: 1180px; margin: 0 auto; }
.journal-head h1 { font-size: var(--text-h2); }
.lang-links a { padding: 7px 12px; border-radius: 999px; text-decoration: none; font: 600 var(--text-sm)/1 var(--font-body); letter-spacing: 0.08em; }
.lang-links a[aria-current='true'] { background: var(--ink); color: var(--paper); }
.site-header .nav-list a[aria-current='page'] { background-size: 100% 1px; }

.journal-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(20px, 3vw, 40px); }
.journal-card { display: grid; align-content: start; gap: 14px; }
.journal-card-cover { display: block; overflow: hidden; border-radius: var(--radius-soft); background: var(--paper-deep); box-shadow: 0 30px 50px -34px rgb(28 24 20 / 0.55); }
.journal-card-cover img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: transform var(--duration-normal) var(--ease-out-expo); }
.journal-card:hover .journal-card-cover img { transform: scale(1.03); }
.journal-card time, .journal-kicker { font-size: var(--text-sm); text-transform: uppercase; letter-spacing: 0.16em; color: var(--gold-deep); }
.journal-kicker a { color: inherit; text-decoration: none; }
.journal-card h2 { font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.1rem); font-style: italic; line-height: 1.08; }
.journal-card h2 a { text-decoration: none; }
.journal-card h2 a:hover { color: var(--gold-ink); }
.journal-card p { color: var(--ink-soft); }
.journal-more { color: var(--gold-deep); text-decoration: none; font-weight: 600; font-size: var(--text-sm); letter-spacing: 0.06em; }
.journal-more:hover { text-decoration: underline; text-underline-offset: 4px; }
.journal-empty { color: var(--ink-soft); font-family: var(--font-display); font-size: var(--text-lg); font-style: italic; }

.journal-post { max-width: 760px; margin: 0 auto; }
.journal-post h1 { font-size: clamp(2.2rem, 1.4rem + 3vw, 4rem); font-style: italic; line-height: 1.02; margin: 14px 0 22px; }
.journal-note { color: var(--ink-soft); font-size: var(--text-sm); margin-bottom: 18px; }
.journal-cover { margin: 0 0 clamp(1.8rem, 1rem + 2vw, 3rem); }
.journal-cover img { width: 100%; border-radius: var(--radius-soft); box-shadow: 0 34px 60px -30px rgb(28 24 20 / 0.55); }
.journal-body { font-size: var(--text-lg); line-height: 1.65; color: var(--ink); }
.journal-body p, .journal-body ul, .journal-body blockquote { margin: 0 0 1.1em; }
.journal-body h2 { font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.2rem); margin: 1.6em 0 0.5em; }
.journal-body h3 { font-size: var(--text-lg); font-weight: 500; margin: 1.4em 0 0.4em; }
.journal-body ul { padding-left: 1.2em; }
.journal-body li { margin-bottom: 0.4em; }
.journal-body li::marker { color: var(--gold); }
.journal-body blockquote { border-left: 3px solid var(--gold); padding-left: 1em; font-family: var(--font-display); font-style: italic; color: var(--ink-soft); }
.journal-body a { color: var(--gold-deep); text-underline-offset: 3px; }
.journal-body strong { font-weight: 600; }
.journal-back { margin-top: clamp(2rem, 1.5rem + 2vw, 3.5rem); }
.journal-back a { color: var(--gold-deep); text-decoration: none; font-weight: 600; font-size: var(--text-sm); letter-spacing: 0.06em; }
.journal-back a:hover { text-decoration: underline; text-underline-offset: 4px; }

@media (max-width: 900px) { .journal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .journal-grid { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .journal-card:hover .journal-card-cover img { transform: none; } }

/* Photos placed inside the text ("[foto:…]"), Medium-style: full column width, caption underneath. */
.journal-photo { margin: 1.8em 0 2em; }
.journal-photo img { width: 100%; border-radius: var(--radius-soft); box-shadow: 0 24px 48px -30px rgb(28 24 20 / 0.5); }
.journal-photo figcaption { margin-top: 0.7em; text-align: center; font-size: var(--text-sm); color: var(--ink-soft); font-style: italic; }
