/* Case-study story, using the existing editorial palette, typography and rows. */
.case-context{max-width:72ch;margin:22px auto 0;color:var(--muted);font-size:14px;line-height:1.6}
.case-story-hero{padding-bottom:44px}
.case-story-hero h1{font-size:clamp(38px,4.4vw,58px);line-height:1.06;letter-spacing:-.035em}
.case-story-hero .hero-copy{max-width:59ch;font-size:18px;line-height:1.6}
.case-chapter-tags{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 24px;margin-top:30px;font-size:14px;line-height:1.5}
.case-chapter-tags a{display:inline-flex;align-items:center;gap:8px;padding-bottom:4px;border-bottom:1px solid var(--line);transition:border-color .2s}
.case-chapter-tags a:hover{border-color:var(--ink)}
.case-chapter-tags span,.case-chapter-number{color:var(--muted);font-variant-numeric:tabular-nums}
.case-opening{padding-bottom:80px}
.case-film{position:relative;aspect-ratio:2.1;overflow:hidden;border-radius:4px;background:var(--ink)}
.case-film video{width:100%;height:100%;object-fit:cover;display:block}
.case-film::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.58))}
.case-film-overlay{position:absolute;z-index:1;left:32px;right:150px;bottom:28px;color:#fff;display:grid;gap:7px}
.case-film-overlay span:first-child{font-size:14px;opacity:.8}
.case-film-overlay span:last-child{font-size:clamp(22px,2.7vw,34px);line-height:1.15;letter-spacing:-.025em}
.case-film-toggle{position:absolute;z-index:2;right:24px;bottom:28px;padding:10px 14px;background:rgba(17,17,15,.48);color:#fff;border:1px solid rgba(255,255,255,.45);border-radius:4px;font-size:14px;line-height:1.5}
.case-film-toggle:hover{background:rgba(17,17,15,.8)}
.case-film-toggle:focus-visible{outline-color:#fff}
.case-film-caption{margin-top:12px;color:var(--muted);font-size:13px;line-height:1.6}
.case-story{padding-bottom:88px}
.case-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.case-story-label{font-size:14px;color:var(--muted);line-height:1.5;margin-bottom:16px}
.case-story-blurb{border-top:1px solid var(--line);padding-top:24px}
.case-story-blurb h2,.case-chapter-heading h2{font-size:32px;line-height:1.14;letter-spacing:-.025em}
.case-story-blurb>p:last-child{margin-top:20px;font-size:16px;line-height:1.75;color:var(--muted)}
.case-metrics{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:18px;color:var(--ink);font-size:14px;line-height:1.5}
.case-metrics span+span{border-left:1px solid var(--line);padding-left:20px}
.case-chapter-number{margin-right:8px}
.case-publication{scroll-margin-top:115px}
.case-outcomes{padding:0 0 88px}
.case-outcomes h2{font-size:38px;line-height:1.12;font-weight:400;letter-spacing:-1px}
.out-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:32px;border-top:1px solid var(--line);padding-top:28px}
.out-tiles .num{font-family:'Research Serif',Georgia,serif;font-size:48px;line-height:1.2;letter-spacing:-1.5px;font-variant-numeric:tabular-nums}
.out-tiles p{max-width:27ch;margin:12px 0 0;color:var(--muted);font-size:16px;line-height:1.6}
.case-outcome-link{display:inline-flex;gap:6px;margin-top:20px;font-size:14px;line-height:1.5;border-bottom:1px solid var(--line);padding-bottom:3px}
.case-outcome-link:hover{border-color:var(--ink)}
.srcnote{margin:28px 0 0;color:var(--muted);font-size:13px;line-height:1.6}
.case-chapter-heading{padding-bottom:28px}
.case-chapter-heading .case-story-label{margin-bottom:12px}
.case-chapter-heading h2{font-size:38px}
.case-chapter-heading .container>p:last-child{margin-top:16px;color:var(--muted);font-size:16px;line-height:1.6}
@media(max-width:680px){
 .case-story-hero{padding-bottom:32px}.case-chapter-tags{gap:10px 16px}
 .case-film{aspect-ratio:1.25}.case-film-overlay{left:20px;right:20px;bottom:72px}.case-film-toggle{right:20px;bottom:18px;padding:8px 12px}
 .case-opening{padding-bottom:48px}.case-story,.case-outcomes{padding-bottom:56px}.case-story-grid{grid-template-columns:1fr;gap:32px}
 .case-story-blurb h2{font-size:28px}.case-outcomes h2,.case-chapter-heading h2{font-size:32px}
 .out-tiles{grid-template-columns:1fr;gap:24px;margin-top:24px}.out-tiles>div+div{border-top:1px solid var(--line);padding-top:24px}.out-tiles .num{font-size:42px}.out-tiles p{max-width:none}.case-outcome-link{margin-top:12px}
 .case-metrics{display:grid;gap:4px}.case-metrics span+span{border:0;padding:0}
}
@media(prefers-reduced-motion:reduce){.case-chapter-tags a{transition:none}}
