.fog-case .case-title h1{font-size:clamp(40px,3.3vw,60px)}
.fog-case .case-title p{flex-shrink:0}
.language-preview{border-radius:8px;background:var(--reel-stage);padding:18px clamp(16px,2.3vw,36px) 24px}
.language-reel{padding:18px clamp(16px,2.3vw,36px)}
.language-reel .reel-browser{width:min(100%,calc((100svh - 340px)*1.90476))}
.language-reel video{display:block;width:100%;height:auto;aspect-ratio:40/21;margin:auto;border-radius:0;background:#080808}
.language-demo video{display:block;width:100%;height:auto;aspect-ratio:40/21;border-radius:5px;background:#080808}
.evidence-pair:has(video) .language-image img{aspect-ratio:40/21;object-fit:cover}
.language-switch{display:flex;justify-content:center;gap:28px;margin:0 0 16px;font:400 13px/1.5 var(--sans)}
.language-switch button{padding:5px 0;color:var(--secondary-text);border-bottom:1px solid transparent}
.language-switch [aria-pressed=true]{color:var(--page-text);border-color:currentColor}
.language-hero-image,.language-image{position:relative;display:block;border-radius:5px;overflow:hidden;background:#080808;cursor:zoom-in;padding:0}
.language-hero-image{width:min(100%,calc((100svh - 350px)*1.6));margin:auto}
.language-hero-image img,.language-image img{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:contain}
.language-hero-image>span,.language-image>span{position:absolute;right:12px;bottom:12px;color:white;font-size:22px;opacity:0;transition:opacity .2s}
.language-hero-image:hover>span,.language-image:hover>span,.language-hero-image:focus-visible>span,.language-image:focus-visible>span{opacity:1}
.language-works,.language-research{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.language-works article{min-width:0;scroll-margin-top:100px}
.fog-case h3{font:500 22px/1.35 var(--sans);letter-spacing:-.015em;margin:0 0 12px}
.work-premise{font:400 15px/1.65 var(--sans);color:var(--secondary-text);margin:0 0 24px}
.language-image{width:100%;margin-bottom:24px}
.language-works .case-copy,.language-research p{font:400 16px/1.65 var(--sans);color:var(--secondary-text);margin:0}
.language-works cite{font-style:normal}
.language-slot{margin:32px 0 0;min-width:0}
.language-slot .empty-frame{aspect-ratio:2.8;background:var(--surface);border-color:var(--hairline)}
.language-slot figcaption{font:400 12px/1.5 var(--sans);color:var(--secondary-text);margin-top:12px}
.language-encoding{margin-top:48px;max-width:75ch}
.language-encoding ul{display:flex;gap:28px;list-style:none;padding:0;margin:22px 0 0;font:400 14px/1.5 var(--sans)}
.language-encoding li{display:flex;align-items:center;gap:9px}
.language-encoding i{width:9px;height:9px;border-radius:50%}.anchor-love{background:#c77d9f}.anchor-reason{background:#86a690}.anchor-money{background:#d29a6c}
.language-note{font:400 13px/1.65 var(--sans);color:var(--secondary-text);max-width:90ch;margin:28px 0 0}
.language-development{display:grid;grid-template-columns:38% 1fr;gap:8%;margin:48px 0}
.language-development .language-slot{margin:0}.language-development .empty-frame{aspect-ratio:16/10}
.language-process{border-top:1px solid var(--hairline);padding-top:42px;margin-top:52px}
.language-story{margin-top:64px}
.evidence-heading{display:flex;flex-direction:column;gap:12px;margin-bottom:28px}
.evidence-heading h3{margin:0}
.evidence-pair,.evidence-sequence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.evidence-sequence{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.language-evidence{margin:0;min-width:0}
.language-evidence .language-image{margin:0}
.language-evidence figcaption{font:400 13px/1.6 var(--sans);color:var(--secondary-text);margin-top:12px}
.language-anchor-key{display:flex;flex-wrap:wrap;gap:24px;list-style:none;padding:0;margin:18px 0 0;font:400 13px/1.5 var(--sans)}
.language-anchor-key li{display:flex;align-items:center;gap:9px}.language-anchor-key i{width:9px;height:9px;border-radius:50%}
.evidence-closeup{width:min(100%,680px);margin:24px auto 0}
.evidence-crop{display:block;width:100%;padding:0;overflow:hidden;border-radius:6px;background:#080808;cursor:zoom-in}
.evidence-crop svg{display:block;width:100%;height:auto}
.language-recording-slots{margin-top:48px}.language-recording-slots .empty-frame{aspect-ratio:16/9}
.language-dialog{width:calc(100vw - 48px);max-width:1800px;max-height:92svh;padding:20px;border:1px solid var(--hairline);border-radius:12px;background:var(--page-bg);color:var(--page-text)}
.language-dialog::backdrop{background:#0009;backdrop-filter:blur(12px)}
.language-dialog>div{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}
.language-dialog h2{font:400 16px/1.5 var(--sans);margin:0}.language-dialog button{font:400 13px/1.5 var(--sans);padding:8px}
.language-dialog>img{display:block;width:100%;max-height:calc(92svh - 100px);object-fit:contain}
@media(max-width:850px){.language-development{grid-template-columns:1fr;gap:24px}.language-works,.language-research{gap:24px}}
@media(max-width:580px){.language-works,.language-research{grid-template-columns:1fr;gap:36px}.language-hero-image{width:100%}.language-preview{padding:14px}.fog-case h3{font-size:20px}.language-slot .empty-frame{aspect-ratio:16/10}.language-development{margin:36px 0}.language-dialog{width:calc(100vw - 20px);padding:12px}.language-dialog>img{max-height:calc(92svh - 90px)}}
@media(max-width:850px){.evidence-heading{grid-template-columns:1fr;gap:16px}}
@media(max-width:580px){.evidence-pair,.evidence-sequence{grid-template-columns:1fr;gap:28px}.language-story{margin-top:44px}.language-recording-slots{gap:0}.language-evidence figcaption{font-size:12px}}

/* One reading direction throughout the case: heading, explanation, evidence. */
.fog-case .chapter-heading-row{display:flex;flex-direction:column;gap:14px;margin-bottom:36px}
.fog-case .chapter-heading-row>.case-copy,.fog-case .evidence-heading .case-copy{max-width:none}
.fog-case .evidence-heading .case-copy,.fog-case .chapter-heading-row .case-copy,.fog-case .language-process .case-copy{font:400 16px/1.7 var(--sans);margin:0;color:var(--secondary-text)}
.fog-case .evidence-heading .case-copy+.case-copy{margin-top:12px}
.language-research{gap:48px}
.language-research article{min-width:0}
.language-research p{line-height:1.7;max-width:60ch}
.language-process .case-copy{max-width:none}
#development>.chapter-heading-row+.language-story{margin-top:0}
@media(max-width:580px){.fog-case .chapter-heading-row{margin-bottom:28px}.language-research{gap:28px}.evidence-heading{gap:10px;margin-bottom:22px}}
