/* A family keepsake, told as a quiet photographic essay. */
.journal-index{padding-block:55px 115px;max-width:1600px}
.journal-index-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;padding-bottom:45px;border-bottom:1px solid var(--line);margin-bottom:48px}
.journal-index-heading h1{font-size:clamp(64px,7vw,108px);margin-top:16px}
.journal-index-heading>p{font-size:15px;line-height:1.85;color:var(--muted);margin:0 0 8px}
.journal-feature{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(36px,5vw,85px);align-items:center}
.journal-feature-image{display:block;overflow:hidden}
.journal-feature-image img{aspect-ratio:4/3;object-fit:contain;transition:transform .65s cubic-bezier(.2,.65,.3,1)}
.journal-feature-image:hover img{transform:scale(1.025)}
.journal-feature-copy h2{font-size:clamp(48px,4.8vw,74px);line-height:1.03;margin:22px 0 25px;letter-spacing:-.02em}
.journal-feature-copy>p{max-width:360px;font-size:16px;color:var(--muted);line-height:1.9;margin-bottom:24px}
.journal-feature-copy .text-link{margin-top:26px;gap:28px}
.journal-meta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 24px;color:var(--muted);font-size:12px;letter-spacing:.025em}
.journal-meta>span:last-child{position:relative}
.journal-meta>span:last-child:before{content:'·';position:absolute;left:-14px}
.journal-meta a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--line)}
.journal-meta a:hover{text-decoration-color:var(--ink)}
.journal-feature .journal-meta{justify-content:flex-start}
.journal-article-heading{max-width:1600px;padding-block:12px 48px}
.journal-back{display:inline-flex;align-items:center;gap:14px;min-height:44px;font-size:12px;letter-spacing:.065em;text-transform:uppercase}
.journal-back span{transition:transform .2s}
.journal-back:hover span{transform:translateX(-4px)}
.journal-title-block{text-align:center;padding-top:22px;animation:journal-arrive .65s ease-out both}
.journal-title-block h1{font-size:clamp(62px,7.2vw,108px);line-height:.98;letter-spacing:-.025em;margin:24px 0}
.journal-photograph{width:calc(100% - 2 * var(--gutter));max-width:1280px;margin:0 auto}
.journal-photograph .photo-open{display:block;width:100%;max-width:none;padding:0;border:0;background:transparent;cursor:zoom-in}
.journal-photograph img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.journal-photograph figcaption{font-size:12px;line-height:1.7;color:var(--muted);padding-top:15px;text-align:left}
.journal-prose{max-width:650px;margin:70px auto;padding-inline:0;font-size:17px;line-height:1.95}
.journal-prose p{margin:0 0 27px;text-wrap:pretty}
.journal-prose p:last-child{margin-bottom:0}
.journal-first-paragraph:first-letter{float:left;font:82px/.85 var(--serif);padding:9px 12px 0 0;color:var(--olive)}
.journal-prose .journal-aside{font:italic 36px/1.3 var(--serif);margin-block:34px}
.journal-detail{max-width:920px}
.journal-prose .journal-statement{font:400 clamp(31px,3vw,44px)/1.28 var(--serif);letter-spacing:-.01em;margin-block:46px;padding-block:32px;border-block:1px solid var(--line)}
.journal-author{max-width:650px;margin:0 auto 90px;border-top:1px solid var(--line);padding-top:30px}
.journal-author .signature-image{width:150px;margin:0 0 14px}
.journal-author .signature-image img{width:100%;height:auto}
.journal-author>p{font-size:12px;line-height:1.8;color:var(--muted);margin:0 0 20px}
.journal-author>p a{text-decoration:underline;text-underline-offset:4px}
.motion-ready .journal-photograph.reveal{transition:transform .7s cubic-bezier(.2,.65,.3,1)}
.motion-ready .journal-photograph.reveal.pending{opacity:1;transform:translateY(16px)}
/* Keep the title readable on first paint while retaining its gentle arrival. */
@keyframes journal-arrive{from{transform:translateY(10px)}to{transform:translateY(0)}}
@media(max-width:1000px){.journal-feature{grid-template-columns:1.2fr 1fr;gap:32px}.journal-feature-copy h2{font-size:52px}.journal-prose,.journal-author{max-width:610px}}
@media(max-width:760px){
  .journal-index{padding-block:28px 65px}.journal-index-heading{display:block;padding-bottom:28px;margin-bottom:28px}.journal-index-heading h1{font-size:68px}.journal-index-heading>p{margin:24px 0 0}.journal-index-heading>p br{display:none}
  .journal-feature{grid-template-columns:1fr;gap:30px}.journal-feature-copy h2{font-size:54px;margin:18px 0 20px}.journal-feature-copy>p{max-width:440px}.journal-feature-copy .text-link{margin-top:20px}
  .journal-article-heading{padding-block:5px 32px}.journal-title-block{padding-top:20px}.journal-title-block h1{font-size:clamp(58px,11vw,82px);margin:22px 0 15px}.journal-title-block .eyebrow{font-size:10px;letter-spacing:.12em}
  .journal-cover,.journal-interlude{width:100%}.journal-photograph figcaption{padding-inline:var(--gutter);font-size:11px}.journal-detail figcaption{padding-inline:0}
  .journal-prose,.journal-author{width:calc(100% - 2 * var(--gutter));max-width:610px}.journal-prose{font-size:16px;line-height:1.95;margin-block:43px}.journal-prose p{margin-bottom:24px}.journal-first-paragraph:first-letter{font-size:72px;padding-top:9px}.journal-prose .journal-aside{font-size:32px;margin-block:28px}.journal-prose .journal-statement{margin-block:34px;padding-block:26px}.journal-author{margin-bottom:55px;padding-top:22px}
}
@media(prefers-reduced-motion:reduce){.journal-title-block{animation:none}.journal-feature-image img,.journal-back span,.motion-ready .journal-photograph.reveal{transition:none}.motion-ready .journal-photograph.reveal.pending{opacity:1;transform:none}.journal-feature-image:hover img{transform:none}}
