/* Lead with the work, then explain the decisions behind it. */
.case-opening{padding-block:28px 24px}
.case-opening .case-reading{margin-bottom:18px}
.case-opening h1{font-size:clamp(1.875rem,3.5vw,3.25rem);line-height:1.12;letter-spacing:-.045em;max-width:1100px;margin:0;text-wrap:balance}
.case-opening h1:focus,.creative-case-header h1:focus{outline:none}
.case-opening-meta{display:block;font-size:.8125rem;color:var(--muted);margin-top:12px;line-height:1.5}
.case-hero.case-intro{padding-top:52px;padding-bottom:52px}
.case-intro .case-summary{margin-top:24px}
.case-opening-still{margin-block:0 28px}
.case-opening-still>a{display:flex;justify-content:center;background:var(--wash,#e5e9ee);border-radius:10px;overflow:hidden;padding:22px}
.case-opening-still img{display:block;width:100%;height:auto;max-height:620px;object-fit:contain}
.case-opening-still figcaption{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:12px;font-size:.8125rem;line-height:1.5;color:var(--muted)}
.case-opening-still button,.case-opening-still figcaption a{min-height:44px;font-weight:650;color:#294f6b}
.case-opening-film{padding:0 0 24px;background:transparent;color:var(--ink,#202a36)}
.case-opening-film .case-film{object-fit:contain;border:0;border-radius:10px}
.film-player{position:relative}
.film-play-start{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:16px;min-height:72px;padding:16px 24px;background:#f5f4eef2;color:#203340;border-radius:48px;box-shadow:0 6px 32px #0003;font-size:.9375rem;font-weight:650;white-space:nowrap}
.film-play-start[hidden]{display:none}
.film-play-start>span:first-child{font-size:1.3rem}
.film-play-start small{display:block;font-size:.75rem;line-height:1.5;color:#52616f;font-weight:500;text-align:left}
.film-play-start:hover{background:#fff}
.film-play-start:focus-visible{outline:3px solid #7eb6dc;outline-offset:5px}
.case-opening-film .film-opening-line{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-block:12px 4px;font-size:.75rem;line-height:1.6;color:#52616f}
.case-opening-film .film-opening-line>strong{font-size:.75rem;color:#304c62}
.case-opening-film .film-details{margin-top:8px;border-bottom:1px solid #263b4f15}
.case-opening-film .film-details>summary{padding-block:12px;min-height:44px;font-size:.8125rem;font-weight:650;cursor:pointer;color:#294f6b}
.case-opening-film .film-details[open]{padding-bottom:24px}
.case-opening-film .film-guide{border-color:#263b4f20}
.case-opening-film .film-guide button{color:#293f50}
.case-opening-film .film-guide button:hover{color:#0f588a}
.case-opening-film .film-guide button>span:first-child{color:#6d6c85}
.case-opening-film .film-authorship,.case-opening-film .film-note{color:#52616f}
.case-opening-film .film-authorship strong{color:#263f50}
.case-opening-film h2{font-size:1.25rem;margin:12px 0 8px}
.case-graph{margin-bottom:28px}
.graph-shell{background:#11141c;color:#edf0f5;border-radius:12px;overflow:hidden}
.graph-heading{padding:24px 28px 12px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.graph-heading .eyebrow{font-size:.625rem;color:#aeb6c8}
.graph-heading h2{font-size:clamp(1.5rem,2.3vw,2rem);letter-spacing:-.035em;font-weight:550;margin:8px 0 0}
.graph-count{font-size:.8125rem;line-height:1.6;color:#b6c0d0;margin:0;text-align:right}
.graph-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:8px 28px 14px;border-bottom:1px solid #b6c0d018}
.graph-toolbar>label{display:flex;align-items:center;gap:10px;font-size:.75rem;color:#b6c0d0}
.graph-toolbar select{background:#242a36;color:#edf0f5;border:0;min-height:44px;border-radius:8px;padding:0 32px 0 12px;font:inherit;max-width:220px}
.graph-toolbar>div{display:flex;gap:4px;flex-wrap:wrap}
.graph-toolbar button,.graph-bottom button{min-height:44px;min-width:44px;padding:8px 12px;border-radius:8px;background:transparent;color:#d7deeb;font-size:.75rem;font-weight:550}
.graph-toolbar button:hover,.graph-bottom button:hover,.graph-toolbar button[aria-pressed=true]{background:#ffffff12}
.graph-toolbar button[data-graph=in],.graph-toolbar button[data-graph=out]{font-size:1.3rem;font-weight:400}
.graph-stage{position:relative;height:clamp(400px,43vw,570px);overflow:hidden;background:#11141c;isolation:isolate}
.graph-stage canvas{display:block;width:100%;height:100%;touch-action:pan-y;cursor:move}
.graph-stage canvas[hidden],.graph-fallback[hidden]{display:none}
.graph-stage.is-exploring canvas{touch-action:none}
.graph-stage.is-dragging canvas{cursor:grabbing!important}
.graph-stage canvas:focus-visible{outline:2px solid #d7b5ff;outline-offset:-5px}
.graph-fallback{display:block;width:100%;height:100%;object-fit:contain}
.graph-note{position:absolute;bottom:18px;left:28px;right:28px;display:flex;align-items:center;gap:9px;pointer-events:none;font-size:.75rem;line-height:1.5;color:#cad1df;text-shadow:0 1px 5px #11141c;background:#11141cb3;width:fit-content;max-width:calc(100% - 56px);padding:7px 10px;border-radius:6px}
.graph-dot{width:6px;height:6px;background:#d8b96b;border-radius:50%;flex:none}
.graph-bottom{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:14px 28px;border-top:1px solid #b6c0d018}
.graph-bottom p{font-size:.75rem;line-height:1.65;max-width:760px;color:#aeb6c8;margin:0}
.graph-bottom button{white-space:nowrap;background:#ffffff09}
.graph-provenance{font-size:.75rem;line-height:1.7;color:#52616f;margin:12px 0 0;max-width:950px}
.graph-provenance button{min-height:44px;display:inline;font-size:inherit;color:#294f6b;font-weight:650}
.graph-shell button:focus-visible,.graph-shell select:focus-visible{outline:2px solid #d7b5ff;outline-offset:2px}
.creative-case-header .creative-summary{display:none}
.creative-case>.creative-summary{margin:28px 0 36px;max-width:900px}
@media(max-width:800px){.case-opening{padding-block:22px 20px}.case-opening-meta{font-size:.75rem}.case-opening .case-reading{gap:12px;margin-bottom:16px}.case-opening .case-reading>span{font-size:.6875rem}.case-opening h1{font-size:clamp(1.75rem,6vw,2.5rem)}.case-hero.case-intro{padding-block:36px}.case-opening-film .film-opening-line{display:block}.case-opening-film .film-opening-line>span{display:block;margin-top:5px}.case-opening-still>a{padding:12px}.case-opening-still figcaption{align-items:flex-start;flex-direction:column;gap:4px}.graph-heading{padding:20px 18px 10px;display:block}.graph-count{text-align:left;margin-top:8px}.graph-toolbar{padding:8px 14px 12px;align-items:flex-start;flex-direction:column;gap:8px}.graph-toolbar>label{width:100%;justify-content:space-between}.graph-toolbar select{max-width:calc(100% - 80px);flex:1}.graph-toolbar>div{width:100%;justify-content:space-between;gap:0}.graph-toolbar button{padding-inline:8px;font-size:.6875rem}.graph-stage{height:420px}.graph-note{left:16px;right:16px;max-width:calc(100% - 32px);bottom:12px;font-size:.6875rem}.graph-bottom{padding:14px 18px;flex-direction:column;align-items:stretch;gap:12px}.graph-bottom button{text-align:left;white-space:normal}.graph-provenance{font-size:.75rem}.creative-case-header{padding-top:24px}.creative-case-header h1{font-size:clamp(1.875rem,7vw,3rem)}}
@media(prefers-contrast:more){.graph-toolbar button,.graph-toolbar select,.graph-bottom button{border:1px solid #b6c0d0}.graph-note,.graph-bottom p{color:#fff}}
@media print{.graph-toolbar,.graph-bottom,.graph-note{display:none}.graph-stage canvas{display:none}.graph-fallback[hidden]{display:block}}
