:root {
  --ink: #241814;
  --cream: #f2ede4;
  --blue: #2252d6;
  --clay: #dc9362;
  --clay-deep: #8d3e28;
  --chapter: #27687a;
  --line: rgba(36, 24, 20, .28);
  --pad: clamp(1.25rem, 4vw, 4.5rem);
  --serif: Georgia, "Times New Roman", serif;
  --sans: Arial, sans-serif;
  --mono: "DM Mono", monospace;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--cream); font-family: var(--mono); font-weight: 300; -webkit-font-smoothing: antialiased; }
body.project-page::after { content:none; }
img { display: block; width: 100%; }
a { color: inherit; text-decoration: none; }
p, h1, h2, h3, figure, blockquote, dl, dd { margin: 0; }
.skip-link { position: fixed; z-index: 100; top: .75rem; left: .75rem; padding: .75rem 1rem; color: var(--cream); background: var(--ink); font: 500 .75rem/1 var(--mono); transform: translateY(-180%); }
.skip-link:focus { transform: none; }
.visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }

.project-header { position: absolute; z-index: 10; top: 0; left: 0; right: 0; display: grid; grid-template-columns: 1fr auto auto; gap: clamp(1.5rem,4vw,4rem); align-items: center; min-height: 6rem; padding: 1.25rem var(--pad); color: var(--cream); font: 500 max(.75rem,12px)/1.2 var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.project-header > a:last-child { padding-bottom: .35rem; border-bottom: 1px solid currentColor; }
.project-brand { position: relative; display: block; width: clamp(7rem,10vw,9rem); aspect-ratio: 1466 / 545; }
.project-brand__signal, .project-brand__word { position: absolute; display: block; background: currentColor; -webkit-mask-position: center; mask-position: center; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: 100% 100%; mask-size: 100% 100%; }
.project-brand__signal { inset: 0; -webkit-mask-image: url("assets/images/identity/frame31-signal.svg"); mask-image: url("assets/images/identity/frame31-signal.svg"); }
.project-brand__word { top: 20%; left: 33.56%; width: 57.71%; height: 60%; -webkit-mask-image: url("assets/images/identity/frame31-shaun-word.svg"); mask-image: url("assets/images/identity/frame31-shaun-word.svg"); }

.case-hero { position: relative; min-height: 64svh; display: grid; grid-template-columns: repeat(12,1fr); grid-template-rows: 1fr auto; padding: clamp(7rem,9vw,9rem) var(--pad) var(--pad); overflow: hidden; color: var(--cream); background: var(--ink); }
.case-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(22,10,8,.68),rgba(22,10,8,.08) 70%),linear-gradient(0deg,rgba(22,10,8,.5),transparent 55%); pointer-events:none; }
.case-hero__media { position: absolute; inset: 0; }
.case-hero__media img { height: 100%; object-fit: cover; }
.case-hero__media figcaption { position:absolute; z-index:2; right:var(--pad); bottom:var(--pad); display:flex; gap:2rem; font:500 max(.75rem,12px)/1.2 var(--mono); letter-spacing:.08em; text-transform:uppercase; }
.case-hero__copy { position: relative; z-index: 2; grid-column: 1 / 12; align-self: end; padding-bottom: clamp(1.5rem,3vw,3rem); }
.eyebrow, .section-index { font: 500 max(.75rem,12px)/1.2 var(--mono); letter-spacing: .09em; text-transform: uppercase; }
.case-hero h1 { max-width: 12ch; margin-top: 1rem; font: 400 clamp(4rem,8vw,8rem)/.82 var(--serif); letter-spacing: -.055em; }
.case-hero h1 em, .case-section h2 em, blockquote em { color: var(--blue); font-weight: 400; }
.case-hero__jump { display:inline-block; margin-top:2.25rem; padding-bottom:.45rem; border-bottom:1px solid currentColor; font:500 max(.75rem,12px)/1.2 var(--mono); letter-spacing:.08em; text-transform:uppercase; }

.case-section { padding: clamp(6rem,11vw,11rem) var(--pad); border-bottom: 1px solid var(--line); }
.case-selector { display:grid; grid-template-columns:1fr; gap:clamp(3rem,5vw,5rem); align-items:start; padding-top:clamp(4rem,7vw,7rem); background:#e7ded5; }
.case-selector__stage { display:grid; grid-template-columns:repeat(8,1fr); gap:1.5rem; min-width:0; }
.case-selector__stage > .section-index { grid-column:1/-1; }
.case-selector__stage h2 { grid-column:1/-1; max-width:10ch; margin-top:clamp(3rem,6vw,6rem); font:400 clamp(3.8rem,7vw,7.8rem)/.82 var(--serif); letter-spacing:-.055em; }
.case-selector__stage h2 > span:first-child { display:block; margin-bottom:1rem; color:var(--blue); font:500 max(.75rem,12px)/1 var(--mono); letter-spacing:.08em; }
.case-selector__summary { grid-column:5/-1; max-width:44ch; margin-top:2rem; padding-top:1rem; border-top:1px solid var(--ink); font-size:clamp(.78rem,.85vw,.9rem); line-height:1.55; text-transform:uppercase; }
.case-selector__roles { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; margin-top:2rem; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.case-selector__roles div { padding:1.25rem 1rem 1.25rem 0; }
.case-selector__roles div + div { padding-left:1.25rem; border-left:1px solid var(--line); }
.case-selector__roles dt { color:var(--blue); font:500 max(.75rem,12px)/1 var(--mono); }
.case-selector__roles dd { margin-top:1.25rem; font:300 clamp(.78rem,.85vw,.9rem)/1.4 var(--mono); text-transform:uppercase; }
.case-selector__assets { grid-column:1/-1; display:grid; grid-template-columns:repeat(12,1fr); gap:clamp(1rem,2vw,2rem); align-items:start; margin-top:2rem; }
.case-selector__videos { grid-column:1/-1; display:grid; grid-template-columns:repeat(12,1fr); gap:clamp(1rem,2vw,2rem); align-items:start; }
.case-video { grid-column:span 4; margin:0; }
.case-video { position:relative; overflow:hidden; }
.case-video--landscape { grid-column:1/-1; }
.case-selector__videos[data-count="5"] .case-video:nth-child(4) { grid-column:3/7; margin-top:clamp(2rem,5vw,5rem); }
.case-selector__videos[data-count="5"] .case-video:nth-child(5) { grid-column:7/11; margin-top:clamp(2rem,5vw,5rem); }
.case-selector__videos[data-count="2"] .case-video--portrait:first-child { grid-column:3/7; }
.case-selector__videos[data-count="2"] .case-video--portrait:last-child { grid-column:7/11; }
.case-selector__asset { margin:0; }
.case-selector__asset--landscape { grid-column:4/11; margin-top:clamp(6rem,12vw,12rem); }
.case-selector__asset img { object-fit:cover; }
.case-selector__asset--landscape img { aspect-ratio:4/3; }
.video-embed { position:relative; overflow:hidden; isolation:isolate; background:var(--ink); }
.video-embed::after { content:""; position:absolute; z-index:2; inset:0; pointer-events:none; background:linear-gradient(110deg,rgba(255,136,76,.13),rgba(255,136,76,0) 31%,rgba(27,170,191,0) 72%,rgba(27,170,191,.1)),var(--analog-grain-image,none); background-size:auto,72px 72px; mix-blend-mode:soft-light; opacity:.2; }
.video-embed--landscape { aspect-ratio:16/9; }
.video-embed--portrait { aspect-ratio:9/16; }
.video-embed iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.video-embed img { display:block; width:100%; height:100%; object-fit:cover; }
.video-poster { position:absolute; z-index:1; inset:0; width:100%; height:100%; padding:0; overflow:hidden; border:0; color:var(--blue); background:var(--ink); cursor:pointer; }
.video-poster img { transition:transform .45s cubic-bezier(.23,1,.32,1),filter .3s ease; }
.video-poster::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(36,24,20,.02),rgba(36,24,20,.24)); pointer-events:none; }
.video-poster__play { position:absolute; z-index:3; top:50%; left:50%; width:clamp(3rem,4.5vw,4.5rem); aspect-ratio:1; display:grid; place-items:center; color:var(--blue); background:var(--cream); border:1px solid rgba(36,24,20,.18); border-radius:50%; box-shadow:0 .65rem 1.6rem rgba(36,24,20,.24); transform:translate(-50%,-50%); transition:transform .3s cubic-bezier(.23,1,.32,1),background-color .2s ease; }
.video-poster__play i { width:0; height:0; margin-left:.2rem; border-top:.42rem solid transparent; border-bottom:.42rem solid transparent; border-left:.7rem solid currentColor; }
.video-poster:hover img { transform:scale(1.025); filter:saturate(1.04) contrast(1.02); }
.video-poster:hover .video-poster__play { background:#fff8ec; transform:translate(-50%,-50%) scale(1.06); }
.video-poster:focus-visible { outline:3px solid var(--cream); outline-offset:-6px; }
.video-poster:focus-visible .video-poster__play { transform:translate(-50%,-50%) scale(1.06); }
.case-selector__stage figcaption { margin-top:.7rem; padding-top:.7rem; border-top:1px solid var(--line); font:500 max(.75rem,12px)/1.3 var(--mono); letter-spacing:.06em; text-transform:uppercase; }
.case-selector__nav { grid-row:1; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); }
.case-selector__nav button { width:100%; display:grid; grid-template-columns:2.5rem 1fr auto; gap:.75rem; align-items:center; min-height:5.5rem; padding:1rem; border:0; border-right:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--ink); background:transparent; font-family:var(--mono); text-align:left; cursor:pointer; }
.case-selector__nav button:first-child { border-left:1px solid var(--line); }
.case-selector__nav button span { color:var(--blue); font-size:max(.75rem,12px); }
.case-selector__nav button b { font-size:clamp(.78rem,.9vw,.95rem); font-weight:500; letter-spacing:.04em; }
.case-selector__nav button i { font-style:normal; opacity:.32; transition:transform .2s ease,opacity .2s ease; }
.case-selector__nav button:hover i, .case-selector__nav button.is-active i { opacity:1; transform:translate(.2rem,-.2rem); }
.case-selector__nav button.is-active b { color:var(--blue); }
.case-selector__nav button:focus-visible { outline:2px solid var(--blue); outline-offset:5px; }
.case-selector__stage [data-case-title], .case-selector__summary, .case-selector__roles dd, .case-selector__videos { transition:opacity .16s ease,transform .22s ease; }
.case-selector.is-changing .case-selector__stage [data-case-title], .case-selector.is-changing .case-selector__summary, .case-selector.is-changing .case-selector__roles dd, .case-selector.is-changing .case-selector__videos { opacity:0; transform:translateY(.45rem); }

.case-notes { color:var(--cream); background:var(--ink); }
.case-notes__head { display:grid; grid-template-columns:repeat(12,1fr); gap:2rem; align-items:end; }
.case-notes__head .section-index { grid-column:1/4; align-self:start; }
.case-notes__head h2 { grid-column:1/8; margin-top:clamp(4rem,7vw,7rem); font:400 clamp(3.8rem,7vw,7.5rem)/.84 var(--serif); letter-spacing:-.05em; }
.case-notes__head > p:last-child { grid-column:9/-1; max-width:48ch; padding-top:1rem; border-top:1px solid rgba(242,237,228,.3); font-size:clamp(.82rem,.9vw,.95rem); line-height:1.6; text-transform:uppercase; }
.case-notes__meta { display:grid; grid-template-columns:repeat(5,1fr); margin-top:clamp(4rem,7vw,7rem); border-top:1px solid rgba(242,237,228,.25); border-bottom:1px solid rgba(242,237,228,.25); }
.case-notes__meta div { min-height:7rem; padding:1.25rem 1rem 1.25rem 0; border-right:1px solid rgba(242,237,228,.25); }
.case-notes__meta div + div { padding-left:1.25rem; }
.case-notes__meta div:last-child { border-right:0; }
.case-notes__meta dt, .case-notes__process span { color:var(--blue); font:500 max(.75rem,12px)/1.2 var(--mono); letter-spacing:.08em; }
.case-notes__meta dd { margin-top:1.5rem; font:300 clamp(.78rem,.85vw,.9rem)/1.45 var(--mono); text-transform:uppercase; }
.case-notes__process { display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(2rem,5vw,6rem); margin-top:clamp(4rem,7vw,7rem); }
.case-notes__process h3 { margin-top:1.25rem; font:500 max(.75rem,12px)/1.2 var(--mono); letter-spacing:.08em; }
.case-notes__process p { max-width:34ch; margin-top:1rem; font-size:clamp(.78rem,.85vw,.9rem); line-height:1.55; text-transform:uppercase; }

.case-outcome { display:grid; grid-template-columns:repeat(12,1fr); gap:2rem; background:linear-gradient(145deg,#f3dfc5,#dc9362 58%,#8d3e28); }
.case-outcome .section-index { grid-column:1/4; }
.case-outcome h2 { grid-column:1/10; margin-top:clamp(4rem,8vw,8rem); font:400 clamp(3.5rem,7vw,7.6rem)/.84 var(--serif); letter-spacing:-.055em; }
.case-outcome > p:last-child { grid-column:9/-1; max-width:42ch; padding-top:1rem; border-top:1px solid var(--ink); font-size:clamp(.78rem,.85vw,.9rem); line-height:1.55; text-transform:uppercase; }

.case-next { min-height:72svh; display:grid; grid-template-columns:1fr auto; grid-template-rows:auto 1fr; align-items:center; padding:clamp(5rem,9vw,9rem) var(--pad); color:var(--cream); background:var(--ink); }
.case-next p { align-self:start; font:500 max(.75rem,12px)/1.2 var(--mono); letter-spacing:.08em; }
.case-next a { grid-column:1/-1; display:flex; justify-content:space-between; align-items:center; padding-bottom:1rem; border-bottom:1px solid rgba(242,237,228,.4); font:400 clamp(4.5rem,11vw,11rem)/.8 var(--serif); letter-spacing:-.06em; }
.case-next a span { color:var(--blue); font-family:var(--mono); font-size:.25em; }
.project-footer { display:flex; justify-content:space-between; gap:2rem; padding:2rem var(--pad); color:var(--cream); background:var(--ink); border-top:1px solid rgba(242,237,228,.25); font:500 max(.75rem,12px)/1.4 var(--mono); letter-spacing:.07em; text-transform:uppercase; }

/* Compact case-study workspace */
.project-page { display:grid; grid-template-columns:minmax(18rem,28vw) minmax(0,1fr); align-items:start; }
.project-rail { position:sticky; top:0; z-index:20; grid-column:1; grid-row:1; min-height:100svh; display:flex; flex-direction:column; overflow:hidden; isolation:isolate; padding:clamp(1.5rem,3vw,3rem); color:var(--cream); background:var(--blue); }
.project-rail::before { content:""; position:absolute; z-index:0; inset:0; pointer-events:none; background-image:var(--analog-grain-image,none); background-size:72px 72px; mix-blend-mode:soft-light; opacity:.09; }
.project-rail > * { position:relative; z-index:1; }
.project-page--f1 .project-rail { background:linear-gradient(150deg,#c96f46 0%,var(--clay-deep) 72%,#71301f 100%); }
.project-page--f1 .project-canvas .case-selector { background:radial-gradient(circle at 88% 4%,rgba(220,147,98,.28),rgba(220,147,98,0) 34%),radial-gradient(circle at 16% 74%,rgba(39,104,122,.12),rgba(39,104,122,0) 38%),#e7ded5; }
.project-page--f1 .compact-project-footer { color:var(--cream); background:#3b231c; border-top-color:rgba(242,237,228,.24); }
.project-rail__header { display:flex; justify-content:space-between; align-items:center; gap:1rem; font:500 max(.75rem,12px)/1.2 var(--mono); letter-spacing:.08em; }
.project-rail__header > a:last-child { padding-bottom:.35rem; border-bottom:1px solid currentColor; }
.project-rail__title { margin:auto 0 clamp(3rem,6vw,6rem); }
.project-rail__title h1 { max-width:100%; margin-top:1.25rem; font:400 clamp(2rem,2.7vw,3rem)/.88 var(--serif); letter-spacing:-.035em; }
.project-rail__title h1 > span { white-space:nowrap; }
.project-rail__title h1 em { color:var(--cream); font-weight:400; }
.project-rail__overview { max-width:34ch; margin-top:1.5rem; padding-top:1rem; border-top:1px solid rgba(242,237,228,.35); color:rgba(242,237,228,.82); font:300 max(.68rem,10px)/1.5 var(--mono); }
.project-rail__nav { border-top:1px solid rgba(242,237,228,.3); }
.project-rail__nav button { width:100%; display:grid; grid-template-columns:2.25rem 1fr auto; gap:.75rem; align-items:center; min-height:3.75rem; padding:.75rem 0; border:0; border-bottom:1px solid rgba(242,237,228,.3); color:var(--cream); background:transparent; font-family:var(--mono); text-align:left; cursor:pointer; }
.project-rail__nav span { color:var(--cream); opacity:.66; }
.project-rail__nav b { font-size:max(.75rem,12px); font-weight:500; letter-spacing:.04em; }
.project-rail__nav i { font-style:normal; opacity:.35; transition:transform .2s ease,opacity .2s ease; }
.project-rail__nav button:hover i, .project-rail__nav button.is-active i { opacity:1; transform:translate(.2rem,-.2rem); }
.project-rail__nav button.is-active b { color:var(--cream); text-decoration:underline; text-underline-offset:.35rem; }
.project-rail__nav button.is-active span { opacity:1; }
.project-rail__nav button:focus-visible { outline:2px solid var(--cream); outline-offset:4px; }
.project-rail__details { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-top:1.25rem; }
.project-rail__details div { padding-top:.9rem; border-top:1px solid rgba(242,237,228,.3); }
.project-rail__details span { color:var(--cream); font:500 max(.68rem,10px)/1.2 var(--mono); letter-spacing:.06em; }
.project-rail__details p { margin-top:.65rem; color:rgba(242,237,228,.72); font:300 max(.66rem,10px)/1.45 var(--mono); }

@media (min-width:801px) {
  .project-rail { max-height:100svh; overflow-x:hidden; overflow-y:auto; scrollbar-width:none; }
  .project-rail::-webkit-scrollbar { display:none; }
  .project-rail__title { margin:clamp(14rem,28svh,20rem) 0 clamp(3rem,6vw,6rem); }
}
.project-canvas { grid-column:2; grid-row:1; min-width:0; }
.project-canvas .case-selector { position:relative; isolation:isolate; display:block; min-height:100svh; padding:clamp(2rem,4vw,4rem); background:radial-gradient(circle at 88% 4%,rgba(220,147,98,.2),rgba(220,147,98,0) 34%),radial-gradient(circle at 16% 74%,rgba(34,82,214,.055),rgba(34,82,214,0) 38%),#e7ded5; }
.project-canvas .case-selector::before { content:""; position:absolute; z-index:0; inset:0; pointer-events:none; background-image:var(--analog-grain-image,none); background-size:72px 72px; mix-blend-mode:multiply; opacity:.075; }
.project-canvas .case-selector > * { position:relative; z-index:1; }
.project-canvas .case-selector__stage { display:block; }
.project-canvas .case-selector__assets { display:block; margin:0; }
.project-canvas .case-selector__assets--context-first { margin-top:clamp(3rem,5vw,5rem); }
.project-canvas .case-selector__assets[data-layout="square-image-stack"] { display:grid; grid-template-columns:minmax(0,60fr) minmax(0,40fr); gap:clamp(.75rem,1.25vw,1.25rem); align-items:start; }
.project-canvas .case-selector__assets[data-layout="square-image-stack"] .case-selector__videos { grid-column:1; }
.project-canvas .case-selector__assets[data-layout="square-image-stack"] .case-selector__images { grid-column:2; }
.project-canvas .case-selector__assets[data-layout="bottas-reel-stills"] { display:grid; grid-template-columns:minmax(0,44.4fr) minmax(0,55.6fr); gap:clamp(.75rem,1.25vw,1.25rem); align-items:stretch; }
.project-canvas .case-selector__assets[data-layout="bottas-reel-stills"] .case-selector__videos { grid-column:1; }
.project-canvas .case-selector__assets[data-layout="bottas-reel-stills"] .case-selector__images { grid-column:2; margin-top:0; }
.project-canvas .case-selector__videos[data-layout="bottas-reel-stills"] { grid-template-columns:1fr; height:100%; }
.project-canvas .case-selector__videos[data-layout="bottas-reel-stills"] > .case-video--portrait { grid-column:1; width:100%; height:100%; align-self:stretch; }
.project-canvas .case-selector__videos[data-layout="bottas-reel-stills"] > .case-video--portrait .video-embed { height:100%; aspect-ratio:auto; }
.project-canvas .case-selector__videos[data-layout="bottas-reel-stills"] > .case-video--portrait video.video--contain { object-fit:cover; }
.case-selector__images[data-layout="bottas-stills"] { grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(.75rem,1.25vw,1.25rem); }
.case-selector__images[data-layout="bottas-stills"] .case-image:first-child { grid-column:1/-1; }
.case-selector__images[data-layout="bottas-stills"] .case-image:first-child { aspect-ratio:3/2; }
.case-selector__images[data-layout="bottas-stills"] .case-image:nth-child(2),
.case-selector__images[data-layout="bottas-stills"] .case-image:nth-child(3) { aspect-ratio:2/3; }
.case-selector__images[data-layout="bottas-stills"] .case-image:first-child img { object-position:52% 50%; }
.case-selector__images[data-layout="bottas-stills"] .case-image:nth-child(2) img { object-position:50% 50%; }
.case-selector__images[data-layout="bottas-stills"] .case-image:nth-child(3) img { object-position:50% 50%; }
.project-canvas .case-selector__videos { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); grid-auto-flow:row dense; gap:clamp(.75rem,1.25vw,1.25rem); align-items:start; overflow:visible; padding:0; }
.case-selector__videos[data-label]::before,
.case-selector__images[data-label]::before { content:attr(data-label); grid-column:1/-1; display:block; padding:.85rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--blue); font:500 max(.72rem,11px)/1.3 var(--mono); letter-spacing:.06em; }
.project-canvas .case-selector__videos .case-video { min-width:0; margin:0; align-self:start; }
.project-canvas .case-selector__videos .case-video--landscape { grid-column:1/-1; }
.project-canvas .case-selector__videos .case-video--strip { grid-column:1/-1; }
.project-canvas .case-selector__videos .case-video--panorama { grid-column:1/-1; }
.project-canvas .case-selector__videos .case-video--portrait,
.project-canvas .case-selector__videos .case-video--editorial,
.project-canvas .case-selector__videos .case-video--square { grid-column:span 2; }
.project-canvas .case-selector__videos[data-portrait-count="1"] .case-video--portrait { grid-column:3/span 2; }
.project-canvas .case-selector__videos[data-portrait-count="2"] .case-video--portrait:first-of-type { grid-column:2/span 2; }
.project-canvas .case-selector__videos[data-portrait-count="5"] .case-video--portrait:nth-last-child(2) { grid-column:2/span 2; }
.project-canvas .case-selector__videos[data-layout="lead-four"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
.project-canvas .case-selector__videos[data-layout="lead-four"][data-portrait-count="5"] > .case-video:first-child { grid-column:1; align-self:start; }
.project-canvas .case-selector__videos[data-layout="lead-four"] > .case-video .video-embed { height:auto; aspect-ratio:9/16; }
.project-canvas .case-selector__videos[data-layout="two-up"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
.project-canvas .case-selector__videos[data-layout="two-up"] > .case-video--landscape { grid-column:span 1; }
.project-canvas .case-selector__videos[data-layout="four-up"] { grid-template-columns:repeat(4,minmax(0,1fr)); }
.project-canvas .case-selector__videos[data-layout="four-up"] > .case-video--portrait { grid-column:span 1; }
.project-canvas .case-selector__videos[data-layout="suzuka-watch-party"] { grid-template-columns:repeat(4,minmax(0,1fr)); }
.project-canvas .case-selector__videos[data-layout="suzuka-watch-party"] > .case-video--landscape:first-child { grid-column:1/-1; }
.project-canvas .case-selector__videos[data-layout="suzuka-watch-party"] > .case-video--landscape:first-child .video-embed { aspect-ratio:16/9; }
.project-canvas .case-selector__videos[data-layout="suzuka-watch-party"] > .case-video--portrait,
.project-canvas .case-selector__videos[data-layout="suzuka-watch-party"][data-portrait-count="4"] > .case-video--portrait { grid-column:span 1; width:100%; margin-top:0; align-self:start; justify-self:stretch; }
.project-canvas .case-selector__videos[data-layout="suzuka-watch-party"]:has(.case-video--portrait.is-expanded) > .case-video--portrait:not(.is-expanded) { filter:brightness(.7); }
.project-canvas .case-selector__videos[data-layout="suzuka-watch-party"] > .case-video--portrait.is-expanded { z-index:2; grid-column:span 2 !important; grid-row:span 2; }
.case-selector__suzuka-lead { margin:0 0 clamp(2.5rem,5vw,5rem); }
.case-selector__suzuka-lead .case-video { width:100%; margin:0; }
.case-selector__suzuka-lead .video-embed { aspect-ratio:16/9; }
.case-selector.is-suzuka .case-selector__ledger { margin-bottom:clamp(3rem,6vw,6rem); }
.project-canvas .case-selector__videos[data-layout="joy-large"] { grid-template-columns:repeat(2,minmax(0,1fr)); width:min(84%,64rem); margin-inline:auto; }
.project-canvas .case-selector__videos[data-layout="joy-large"] > .case-video--portrait { grid-column:span 1; }
.project-canvas .case-selector__videos[data-layout="always-on-grid"] > .case-video--panorama { grid-column:1/-1; }
.project-canvas .case-selector__videos[data-layout="always-on-grid"] > .case-video--portrait,
.project-canvas .case-selector__videos[data-layout="always-on-grid"] > .case-video--editorial { grid-column:span 3; }
.project-canvas .case-selector__videos[data-layout="always-on-grid"] > .case-video:first-child { grid-column:1/-1; }
.project-canvas .case-selector__videos[data-layout="always-on-grid"] > .case-video:first-child .video-embed { aspect-ratio:16/9; }
.project-canvas .case-selector__videos[data-layout="f1-always-on"] { display:block; overflow:hidden; }
.project-canvas .case-selector__videos[data-layout="f1-always-on"] .case-video-group__grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.project-canvas .case-selector__videos[data-layout="f1-always-on"] .case-video-group--feed .case-video-group__grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
.project-canvas .case-selector__videos[data-layout="f1-always-on"] .case-video { width:100%; transition:filter 180ms ease; }
.project-canvas .case-selector__videos[data-layout="f1-always-on"] .case-video-group__grid:has(.is-expanded) .case-video:not(.is-expanded) { filter:brightness(.7); }
.project-canvas .case-selector__videos[data-layout="f1-always-on"] .case-video.is-expanded { z-index:2; grid-column:span 2 !important; grid-row:span 2; }
.project-canvas .case-selector__videos[data-layout="f1-always-on"] .video-embed--three-four { aspect-ratio:3/4; }
.project-canvas .case-selector__videos[data-layout="landscape-two"] > .case-video--portrait { grid-column:span 3; }
.project-canvas .case-selector__videos[data-layout="media-groups"] { display:block; }
.case-video-group + .case-video-group { margin-top:clamp(4rem,7vw,7rem); }
.case-video-group > p { margin:0 0 1.25rem; padding:.85rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--blue); font:500 max(.72rem,11px)/1.3 var(--mono); letter-spacing:.06em; }
.case-video-group__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-auto-flow:dense; grid-auto-rows:1fr; gap:0; align-items:start; overflow:hidden; }
.case-video-group__grid .case-video { grid-column:auto !important; }
.project-canvas .case-selector__videos[data-layout="single-square"] { grid-template-columns:1fr; }
.project-canvas .case-selector__videos[data-layout="single-square"] > .case-video--square { grid-column:1; width:min(70%,48rem); justify-self:center; }
.project-canvas .case-selector__videos[data-layout="square-image-stack"] { grid-template-columns:1fr; }
.project-canvas .case-selector__videos[data-layout="square-image-stack"] > .case-video--square { grid-column:1; width:100%; }
.project-canvas .case-selector__videos[data-layout="portrait-three"] { grid-template-columns:minmax(0,32.8fr) minmax(0,67.2fr); }
.project-canvas .case-selector__videos[data-layout="portrait-three"] > .case-video--portrait { grid-column:1; width:100%; justify-self:stretch; }
.project-canvas .case-selector__videos[data-layout="portrait-three"] > .case-video--portrait .video-embed { aspect-ratio:9/16; }
.project-canvas .case-selector__videos[data-layout="portrait-two"] { grid-template-columns:minmax(0,39fr) minmax(0,61fr); }
.project-canvas .case-selector__videos[data-layout="portrait-two"] > .case-video--portrait { grid-column:1; width:100%; justify-self:stretch; }
.project-canvas .case-selector__videos[data-layout="portrait-two"] > .case-video--portrait .video-embed { aspect-ratio:9/16; }
.project-canvas .case-selector__videos[data-layout="portrait-two"] .case-video-cluster { grid-template-columns:1fr; }
.project-canvas .case-selector__videos[data-layout="hero-slider"] { grid-template-columns:minmax(0,3.16fr) minmax(0,1fr); align-items:start; }
.project-canvas .case-selector__videos[data-layout="hero-slider"] > .case-video { grid-column:1; }
.project-canvas .case-selector__videos[data-layout="hero-slider"] > .case-video .video-embed { aspect-ratio:16/9; }
.case-media-slider { grid-column:2; min-width:0; margin-top:0; overflow:hidden; }
.case-media-slider__viewport { overflow:hidden; }
.case-media-slider__track { display:flex; transition:transform .55s cubic-bezier(.22,1,.36,1); will-change:transform; }
.case-media-slider__slide { flex:0 0 100%; min-width:0; display:grid; place-items:center; }
.case-media-slider__slide .case-video { width:100%; }
.case-media-slider__slide .video-embed { aspect-ratio:9/16; }
.case-media-slider__slide video { object-fit:contain; }
.case-media-slider__controls { display:grid; grid-template-columns:2.75rem 1fr 2.75rem; align-items:center; gap:1rem; margin-top:1rem; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.case-media-slider__controls button { min-height:2.75rem; border:0; color:var(--blue); background:transparent; font:500 1rem/1 var(--mono); cursor:pointer; }
.case-media-slider__controls button:hover { background:rgba(34,82,214,.06); }
.case-media-slider__controls button:focus-visible { outline:2px solid var(--blue); outline-offset:-2px; }
.case-media-slider__controls p { margin:0; text-align:center; font:500 max(.7rem,11px)/1.2 var(--mono); letter-spacing:.06em; }
.case-video-cluster { grid-column:2; align-self:start; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(2,auto); gap:clamp(.75rem,1.25vw,1.25rem); min-width:0; }
.case-video-cluster .case-video { grid-column:auto !important; width:auto; min-height:0; margin-top:0 !important; align-self:start; }
.case-video-cluster .video-embed { height:auto; min-height:0; aspect-ratio:9/16; }
.case-video-cluster--landscape .case-video:first-child { grid-column:1/-1 !important; }
.case-video-cluster--landscape .video-embed { aspect-ratio:16/9; }
.case-selector__images { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(.75rem,1.25vw,1.25rem); margin-top:clamp(2.5rem,5vw,5rem); }
.case-selector__images[data-layout="three-up"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.case-selector__images[data-layout="groups"] { display:block; }
.case-image-group + .case-image-group { margin-top:clamp(4rem,8vw,8rem); }
.case-image-group__header { display:grid; grid-template-columns:minmax(12rem,.7fr) minmax(0,1.3fr); gap:clamp(1.5rem,3vw,3rem); margin-bottom:1.25rem; padding:1rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.case-image-group__header p { margin:0; font:400 max(.72rem,11px)/1.5 var(--mono); }
.case-image-group__header > p:first-child { color:var(--blue); font-weight:500; letter-spacing:.06em; }
.case-image-group__copy { display:grid; gap:.8rem; }
.case-image-group__talent { color:var(--ink-muted); }
.case-image-group__talent span { color:var(--blue); margin-right:.65rem; }
.case-image-group__grid { display:grid; gap:clamp(.75rem,1.25vw,1.25rem); }
.case-image-group__grid[data-layout="four-up"] { grid-template-columns:repeat(4,minmax(0,1fr)); }
.case-image-group__grid[data-layout="three-up"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.case-image-group__grid[data-layout="portrait-media-grid"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.case-image-group__grid[data-layout="portrait-media-grid"] .case-image { width:100%; aspect-ratio:9/16; }
.case-image-group__grid[data-layout="portrait-media-grid"] .case-image video { width:100%; height:100%; object-fit:cover; }
.case-image-group__grid[data-layout="dc-launch-pair"] { grid-template-columns:repeat(2,minmax(0,1fr)); width:min(100%,46rem); margin-inline:auto; }
.case-image-group__grid[data-layout="dc-launch-pair"] .case-image,
.case-image-group__grid[data-layout="dc-event-films"] .case-image { width:100%; aspect-ratio:9/16; }
.case-image-group__grid[data-layout="dc-launch-pair"] .case-image video,
.case-image-group__grid[data-layout="dc-event-films"] .case-image video { width:100%; height:100%; object-fit:contain; background:var(--ink); }
.case-image-group__grid[data-layout="dc-event-films"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.case-image-group__grid[data-layout="seamless-three"] { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; }
.case-image-group__grid[data-layout="seamless-five"] { grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; }
.case-image-group__grid[data-layout="seamless-five"] .case-image { aspect-ratio:4/5; }
.case-carousel-slider { --visible-slides:1; width:min(100%,28rem); margin-inline:auto; overflow:hidden; }
.case-carousel-slider[data-visible-slides="3"] { --visible-slides:3; width:100%; }
.case-carousel-slider__viewport { overflow:hidden; background:rgba(36,24,20,.045); }
.case-carousel-slider__track { display:flex; transform:translate3d(calc(var(--active-slide,0) * -100% / var(--visible-slides)),0,0); transition:transform .55s cubic-bezier(.22,1,.36,1); will-change:transform; }
.case-carousel-slider__slide { flex:0 0 calc(100% / var(--visible-slides)); min-width:0; }
.case-carousel-slider[data-visible-slides="3"] .case-carousel-slider__slide { padding-right:clamp(.45rem,.9vw,.8rem); }
.case-carousel-slider__slide .case-image { width:100%; aspect-ratio:4/5; }
.case-carousel-slider__slide .case-image video { object-fit:cover; }
.case-carousel-slider--before-after { width:min(100%,28rem); }
.case-carousel-slider--before-after .case-carousel-slider__slide .case-image { aspect-ratio:9/16; }
.case-carousel-slider--before-after .case-carousel-slider__slide .case-image video { object-fit:contain; background:var(--ink); }
.case-image-group__hero-ticket { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(1.5rem,3vw,3rem); align-items:start; }
.case-image-group__hero-ticket > section { min-width:0; }
.case-image-group__hero-ticket > section > p { margin:0 0 .8rem; padding:.75rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--blue); font:500 max(.7rem,11px)/1.3 var(--mono); letter-spacing:.06em; }
.case-image-group__hero-ticket > section > .case-image { width:100%; aspect-ratio:9/16; }
.case-image-group__hero-ticket > section > .case-image video { object-fit:cover; }
.case-image-group__hero-ticket .case-carousel-slider { width:100%; }
@media (max-width:900px) { .case-carousel-slider[data-visible-slides="3"] { --visible-slides:2; } }
@media (max-width:620px) { .case-carousel-slider[data-visible-slides="3"] { --visible-slides:1; } }
.project-canvas .case-selector__videos[data-layout="f1box-hero"] { grid-template-columns:1fr; }
.project-canvas .case-selector__videos[data-layout="f1box-hero"] > .case-video--landscape { grid-column:1; }
.project-canvas .case-selector__videos[data-layout="f1box-hero"] > .case-video--landscape .video-embed { aspect-ratio:16/9; }
.case-image-group__grid[data-layout="f1box-mixed"] { grid-template-columns:repeat(12,minmax(0,1fr)); grid-template-rows:minmax(0,1.15fr) minmax(0,.85fr); aspect-ratio:1.406/1; }
.case-image-group__grid[data-layout="f1box-mixed"] .case-image { width:100%; height:100%; aspect-ratio:auto; }
.case-image-group__grid[data-layout="f1box-mixed"] .case-image:nth-child(1) { grid-column:1/6; grid-row:1/3; }
.case-image-group__grid[data-layout="f1box-mixed"] .case-image:nth-child(5) { grid-column:6/13; grid-row:1; }
.case-image-group__grid[data-layout="f1box-mixed"] .case-image:nth-child(2) { grid-column:6/9; grid-row:2; }
.case-image-group__grid[data-layout="f1box-mixed"] .case-image:nth-child(3) { grid-column:9/11; grid-row:2; }
.case-image-group__grid[data-layout="f1box-mixed"] .case-image:nth-child(4) { grid-column:11/13; grid-row:2; }
.case-image-group__grid[data-layout="f1box-mixed"] .case-image video.video--contain { object-fit:cover; }
.case-image-group__grid[data-layout="silverstone-promo"] { grid-template-columns:repeat(12,minmax(0,1fr)); grid-template-rows:auto auto; }
.case-image-group__grid[data-layout="silverstone-promo"] .case-image:nth-child(1) { grid-column:1/-1; aspect-ratio:16/9; }
.case-image-group__grid[data-layout="silverstone-promo"] .case-image:nth-child(2) { grid-column:1/5; grid-row:2/4; aspect-ratio:9/16; }
.case-image-group__grid[data-layout="silverstone-promo"] .case-image:nth-child(3) { grid-column:5/13; grid-row:2; aspect-ratio:16/9; }
.case-image-group__grid[data-layout="silverstone-promo"] .case-image:nth-child(4) { grid-column:5/9; grid-row:3; aspect-ratio:16/9; }
.case-image-group__grid[data-layout="silverstone-promo"] .case-image:nth-child(5) { grid-column:9/13; grid-row:3; aspect-ratio:16/9; }
.case-image-group__grid[data-layout="silverstone-promo"] .case-image video.video--contain { object-fit:cover; }
.case-image-group__grid[data-layout="full"] { grid-template-columns:1fr; }
.case-image-group__grid[data-layout="full"] .case-image { aspect-ratio:24/5; }
.case-image-group__grid[data-layout="hero-landscape"] { grid-template-columns:1fr; }
.case-image-group__grid[data-layout="hero-landscape"] .case-image { width:100%; aspect-ratio:16/9; }
.case-image-group__grid[data-layout="portrait-feature"] { display:block; }
.case-image-group__grid[data-layout="portrait-feature"] .case-image { width:clamp(15rem,38%,22rem); aspect-ratio:9/19; }
.case-selector.is-miami .case-image-group__feature { display:grid; grid-template-columns:minmax(15rem,22rem) minmax(0,1fr); gap:clamp(1.5rem,3vw,3rem); align-items:stretch; }
.case-selector.is-miami .case-image-group__feature .case-image-group__grid[data-layout="portrait-feature"] .case-image { width:100%; }
.case-image-group__creator-feature { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(.75rem,1.25vw,1.25rem); align-items:start; }
.case-image-group__creator-feature > .case-image { width:100%; aspect-ratio:9/16; }
.case-image-group__creator-feature > .case-image video { width:100%; height:100%; object-fit:cover; }
.case-image-group__creator-ugc { min-width:0; }
.case-image-group__creator-ugc .case-carousel-slider { width:100%; }
.case-image-group__creator-ugc .case-carousel-slider__slide .case-image { aspect-ratio:9/16; }
.case-image-group__data { display:grid; grid-template-rows:auto 1fr; min-width:0; padding:1rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.case-image-group__data > p { margin:0; color:var(--accent); font-size:max(.75rem,12px); font-weight:500; letter-spacing:.075em; line-height:1.25; }
.case-image-group__data dl { display:grid; align-content:end; margin:clamp(2rem,5vw,4rem) 0 0; }
.case-image-group__data dl div { display:grid; grid-template-columns:minmax(6.5rem,.7fr) minmax(0,1.3fr); gap:1rem; padding:1rem 0; border-top:1px solid var(--line); }
.case-image-group__data dt,
.case-image-group__data dd { margin:0; font-size:max(.75rem,12px); line-height:1.45; }
.case-image-group__data dt { color:var(--accent); font-weight:500; letter-spacing:.075em; }
.case-image-group__data dd { font-weight:400; letter-spacing:.02em; }
@media (max-width:620px) {
  .case-image-group__grid[data-layout="portrait-feature"] .case-image { width:min(72vw,20rem); }
  .case-selector.is-miami .case-image-group__feature { grid-template-columns:1fr; }
  .case-selector.is-miami .case-image-group__feature .case-image-group__grid[data-layout="portrait-feature"] .case-image { width:min(72vw,20rem); margin-inline:auto; }
  .case-image-group__creator-feature { grid-template-columns:1fr; }
  .case-image-group__creator-feature > .case-image { width:100%; margin-inline:0; }
  .case-image-group__data dl { margin-top:2rem; }
}
.case-selector__images[data-layout="video-slider"] { grid-template-columns:1fr; align-items:start; }
.case-selector__images[data-layout="video-slider"] .case-media-pair { display:grid; grid-template-columns:minmax(0,27.3fr) minmax(0,72.7fr); gap:clamp(.75rem,1.25vw,1.25rem); align-items:start; }
.case-selector__images[data-layout="video-slider"] .case-media-slider--secondary { grid-column:1; width:100%; margin:0; }
.case-selector__images[data-layout="video-slider"] .case-media-slider__slide .case-image { width:100%; aspect-ratio:9/16; }
.case-selector__images[data-layout="video-slider"] .case-media-slider__slide video { aspect-ratio:9/16; }
.case-selector__images[data-layout="video-slider"] .case-media-pair > .case-image { grid-column:2; aspect-ratio:3/2; }
.case-selector__images[data-layout="video-slider"] > .case-image { width:100%; aspect-ratio:3/2; }
.case-selector__images[data-layout="video-slider"] .case-image-pair { display:grid; grid-template-columns:minmax(0,44.4fr) minmax(0,55.6fr); gap:clamp(.75rem,1.25vw,1.25rem); align-items:start; }
.case-selector__images[data-layout="video-slider"] .case-image-pair .case-image:first-child { aspect-ratio:4/5; }
.case-selector__images[data-layout="video-slider"] .case-image-pair .case-image:last-child { aspect-ratio:1; }
.case-selector__images[data-layout="stack-three"] { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:0; }
.case-selector__images[data-layout="stack-three"] .case-image:first-child { grid-column:1/-1; }
.case-selector__images[data-layout="proactive"] { grid-template-columns:minmax(0,60fr) minmax(0,40fr); margin-top:0; }
.case-selector__images[data-layout="proactive"] .case-image:nth-child(1) { grid-column:1; grid-row:1; }
.case-selector__images[data-layout="proactive"] .case-image:nth-child(2) { grid-column:1; grid-row:2; }
.case-selector__images[data-layout="proactive"] .case-image:nth-child(3) { grid-column:2; grid-row:1/3; }
.case-selector__images[data-layout="proactive-hero"] { grid-template-columns:minmax(0,75fr) minmax(0,25fr); }
.case-selector__images[data-layout="proactive-hero"] .case-image:nth-child(1) { grid-column:1/-1; }
.case-selector__images[data-layout="proactive-hero"] .case-image:nth-child(2) { grid-column:1; }
.case-selector__images[data-layout="proactive-hero"] .case-image:nth-child(3) { grid-column:2; }
.case-selector__images[hidden] { display:none; }
.case-image { position:relative; min-width:0; margin:0; overflow:hidden; background:rgba(36,24,20,.045); }
.case-image img,
.case-image video { display:block; width:100%; height:100%; object-fit:cover; }
.case-image video.video--contain { object-fit:contain; background:var(--ink); }
.case-image--landscape { aspect-ratio:16/9; }
.case-image--square { aspect-ratio:1; }
.case-image--editorial { aspect-ratio:4/5; }
.case-image--photo { aspect-ratio:3/2; }
.case-image--zoom-photo { aspect-ratio:2.3/1; }
.case-image--zoom-photo img { object-position:55% 52%; transform:scale(1.3); }
.case-image--tall { aspect-ratio:1/2; }
.case-image--portrait { aspect-ratio:4/5; }
.case-image--wide { grid-column:1/-1; aspect-ratio:2/1; }
.case-image--strip { grid-column:1/-1; aspect-ratio:24/5; }
.case-image--full { grid-column:1/-1; aspect-ratio:16/9; }
.case-image--full-photo { grid-column:1/-1; aspect-ratio:3/2; }
.case-selector__ledger { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(16rem,1fr); margin-top:clamp(2rem,3vw,3rem); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.case-selector__ledger--story-only { grid-template-columns:1fr; }
.case-selector__ledger--story-only .case-selector__ledger-story { padding-right:0; border-right:0; }
.case-selector__ledger-story { padding:clamp(2rem,3.5vw,3.5rem) clamp(2rem,4vw,4.5rem) clamp(2rem,3.5vw,3.5rem) 0; border-right:1px solid var(--line); }
.case-selector__chapter { color:var(--blue); font:500 max(.7rem,11px)/1.3 var(--mono); letter-spacing:.06em; }
.case-selector__ledger-story h3 { max-width:10ch; margin:1rem 0 1.75rem; font:400 clamp(2.8rem,5.2vw,5.7rem)/.86 var(--serif); letter-spacing:-.035em; text-wrap:balance; }
.case-selector__ledger-story > [data-case-summary] { max-width:56ch; font:300 clamp(.78rem,.9vw,.96rem)/1.6 var(--mono); }
.case-selector__ledger-story > .case-selector__summary--columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(1.5rem,3vw,3rem); max-width:none; }
.case-selector__summary--columns span { display:block; }
.case-selector__contribution { max-width:56rem; margin-top:clamp(1.35rem,2.5vw,2rem); border-block:1px solid var(--line); }
.case-selector__contribution-columns { display:grid; grid-template-columns:repeat(var(--contribution-columns,3),minmax(0,1fr)); }
.case-selector__credit-column { min-width:0; min-height:4.65rem; padding:.56rem .72rem .62rem; border-right:1px solid var(--line); display:flex; flex-direction:column; justify-content:flex-start; gap:.55rem; }
.case-selector__credit-column:last-child { border-right:0; }
.case-selector__credit-index { align-self:flex-end; color:color-mix(in srgb,var(--ink) 48%,transparent); font:400 12px/1 var(--mono); letter-spacing:0; }
.case-selector__credit-column > div { display:grid; grid-template-rows:1.4rem minmax(2.7rem,auto); width:100%; align-items:start; }
.case-selector__credit-column h5 { margin:0; font:400 clamp(1rem,1.45vw,1.18rem)/1 var(--serif); letter-spacing:-.02em; text-transform:none; }
.case-selector__credit-column p { display:inline-flex; align-items:center; width:fit-content; min-height:2.7rem; max-width:100%; margin:0; padding:.32rem .68rem; border-radius:999px; background:color-mix(in srgb,var(--ink) 7%,transparent); color:color-mix(in srgb,var(--ink) 72%,transparent); font:400 12px/1.25 var(--mono); letter-spacing:0; text-transform:none; overflow-wrap:anywhere; }
.case-selector__credit-column.is-final p { background:var(--blue); color:var(--paper); }
.case-selector__credit-column:only-child p { display:block; width:auto; padding:0; border-radius:0; background:transparent; color:var(--ink); font:300 clamp(.9375rem,1vw,1rem)/1.5 var(--mono); }
.case-selector__talent { padding:clamp(2rem,3.5vw,3.5rem); }
.case-selector__talent[hidden] { display:none; }
.case-selector__talent > p { color:var(--blue); font:500 max(.68rem,10px)/1.3 var(--mono); letter-spacing:.06em; }
.case-selector__talent ol { margin:1.75rem 0 0; padding:0; list-style:none; }
.case-selector__talent li { display:grid; grid-template-columns:2rem 1fr; gap:.75rem; padding:.85rem 0; border-top:1px solid var(--line); font:400 clamp(.72rem,.82vw,.86rem)/1.4 var(--mono); }
.case-selector__talent li span { color:var(--blue); font-size:max(.68rem,10px); }
.case-selector__talent li a { color:inherit; text-decoration:none; }
.case-selector__talent li a:hover { color:var(--blue); }
.case-selector__talent li a:focus-visible { outline:2px solid var(--blue); outline-offset:4px; }
.case-selector__talent li small { display:block; margin-top:.2rem; color:var(--ink-muted); font:400 max(.66rem,10px)/1.35 var(--mono); letter-spacing:.05em; }
.case-selector.has-no-talent .case-selector__ledger { grid-template-columns:1fr; }
.case-selector.has-no-talent .case-selector__ledger-story { padding-right:0; border-right:0; }
.case-selector__ledger-meta { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:1.5rem; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.case-selector__supporting-info { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:clamp(3rem,5vw,5rem); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.case-selector__ledger-meta--after-work { display:contents; }
.case-selector__talent--after-work { min-width:0; padding:1.25rem; border-left:1px solid var(--line); }
.case-selector__supporting-info--talent-only { grid-template-columns:1fr !important; }
.case-selector__supporting-info--talent-only .case-selector__talent--after-work { padding:1.25rem 0; border-left:0; }
.case-selector.has-no-talent .case-selector__supporting-info { grid-template-columns:repeat(2,minmax(0,1fr)); }
.case-selector.is-frieze .case-selector__supporting-info { grid-template-columns:minmax(15rem,2fr) minmax(0,3fr); }
.case-selector.is-frieze .case-selector__ledger-meta--after-work { display:grid; grid-template-columns:1fr; margin:0; border:0; }
.case-selector.is-frieze .case-selector__ledger-meta--after-work div { min-height:auto; padding:1.25rem 1.25rem 1.25rem 0; border-right:0; border-bottom:1px solid var(--line); }
.case-selector.is-frieze .case-selector__ledger-meta--after-work div:last-child { border-bottom:0; }
.case-selector.is-frieze .case-selector__talent--after-work { padding:1.25rem clamp(1.5rem,3vw,3rem); }
.case-selector.is-frieze .case-selector__talent--after-work ol { margin-top:clamp(2.5rem,5vw,5rem); }
.case-selector.is-frieze .case-selector__talent--after-work li { grid-template-columns:2.5rem 1fr; padding:1.15rem 0; font-size:clamp(.82rem,1vw,1rem); }
.case-selector.is-max-fosh .case-selector__supporting-info { grid-template-columns:minmax(15rem,2fr) minmax(0,3fr); }
.case-selector.is-max-fosh .case-selector__ledger-meta--after-work { display:grid; grid-template-columns:1fr; margin:0; border:0; }
.case-selector.is-max-fosh .case-selector__ledger-meta--after-work div { min-height:auto; padding:1.25rem 1.25rem 1.25rem 0; border-right:0; border-bottom:1px solid var(--line); }
.case-selector.is-max-fosh .case-selector__ledger-meta--after-work div:last-child { border-bottom:0; }
.case-selector.is-max-fosh .case-selector__talent--after-work { padding:1.25rem clamp(1.5rem,3vw,3rem); }
.case-selector.is-max-fosh .case-selector__talent--after-work ol { margin-top:clamp(2.5rem,5vw,5rem); }
.case-selector.is-max-fosh .case-selector__talent--after-work li { grid-template-columns:2.5rem 1fr; padding:1.15rem 0; font-size:clamp(.82rem,1vw,1rem); }
.case-selector.has-long-credits .case-selector__supporting-info { grid-template-columns:minmax(15rem,2fr) minmax(0,3fr); }
.case-selector.has-long-credits .case-selector__ledger-meta--after-work { display:grid; grid-template-columns:1fr; margin:0; border:0; }
.case-selector.has-long-credits .case-selector__ledger-meta--after-work div { min-height:auto; padding:1.25rem 1.25rem 1.25rem 0; border-right:0; border-bottom:1px solid var(--line); }
.case-selector.has-long-credits .case-selector__ledger-meta--after-work div:last-child { border-bottom:0; }
.case-selector.has-long-credits .case-selector__talent--after-work { padding:1.25rem clamp(1.5rem,3vw,3rem); }
.case-selector__ledger-meta div { min-height:7rem; padding:1.25rem; border-right:1px solid var(--line); }
.case-selector__ledger-meta div:first-child { padding-left:0; }
.case-selector__ledger-meta div:last-child { border-right:0; }
.case-selector__ledger-meta dt { color:var(--blue); font:500 max(.68rem,10px)/1.2 var(--mono); letter-spacing:.06em; }
.case-selector__ledger-meta dd { margin-top:.75rem; font:300 max(.7rem,11px)/1.45 var(--mono); }
.case-selector__metrics { margin-top:clamp(3rem,5vw,5rem); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.case-selector__metrics[hidden] { display:none; }
.case-selector__metrics > header { display:grid; grid-template-columns:minmax(8rem,1fr) minmax(0,3fr); gap:1.25rem; align-items:start; padding:1.15rem 0 clamp(2rem,4vw,4rem); }
.case-selector__metrics > header p { color:var(--blue); font:500 max(.68rem,10px)/1.3 var(--mono); letter-spacing:.06em; }
.case-selector__metrics > header strong { max-width:30ch; font:400 clamp(1.35rem,2.4vw,2.6rem)/1.02 var(--serif); letter-spacing:-.025em; text-transform:none; text-wrap:balance; }
.case-selector__metrics dl { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); border-top:1px solid var(--line); }
.case-selector__metrics dl div { min-height:7.5rem; padding:1.25rem; border-right:1px solid var(--line); }
.case-selector__metrics dl div:nth-child(6), .case-selector__metrics dl div:last-child { border-right:0; }
.case-selector__metrics dl div:nth-child(n+7) { border-top:1px solid var(--line); }
.case-selector__metrics .metric--hero { grid-column:span 3; grid-row:span 2; min-height:18rem; padding-left:0; background:linear-gradient(135deg,rgba(44,86,220,.12),transparent 68%); }
.case-selector__metrics .metric--discovery { grid-column:span 2; }
.case-selector__metrics dt { color:var(--muted); font:400 max(.66rem,10px)/1.3 var(--mono); letter-spacing:.04em; }
.case-selector__metrics dd { margin-top:.75rem; color:var(--ink); font:400 clamp(1.45rem,2.5vw,2.7rem)/1 var(--serif); letter-spacing:-.025em; }
.case-selector__metrics .metric--hero dd { margin-top:clamp(3rem,7vw,7rem); color:var(--blue); font-size:clamp(3.6rem,8vw,8rem); letter-spacing:-.05em; }
.case-selector__metrics .metric--discovery dd { font-size:clamp(2.2rem,4vw,4.25rem); }
.case-selector__metrics small { display:block; margin-top:.65rem; color:var(--blue); font:500 max(.62rem,10px)/1.35 var(--mono); letter-spacing:.04em; }
.case-selector.is-bottas .case-selector__metrics > header { grid-template-columns:minmax(8rem,2fr) minmax(0,5fr); padding-bottom:clamp(1.5rem,2.5vw,2.5rem); }
.case-selector.is-bottas .case-selector__metrics > header strong { max-width:28ch; }
.case-selector.is-bottas .case-selector__assets + .case-selector__metrics { margin-top:clamp(1.5rem,2.5vw,2.5rem); }
.case-selector.is-bottas .case-selector__metrics + .case-selector__ledger { margin-top:clamp(2.5rem,4vw,4rem); }
.case-selector.is-bottas .case-selector__metrics dl { grid-template-columns:repeat(12,minmax(0,1fr)); }
.case-selector.is-bottas .case-selector__metrics dl div { min-height:6.25rem; padding-block:1rem; border-top:0; opacity:0; transform:translateY(.65rem); filter:blur(2px); transition:opacity 300ms cubic-bezier(.23,1,.32,1),transform 300ms cubic-bezier(.23,1,.32,1),filter 240ms ease; transition-delay:calc(var(--metric-index) * 45ms); }
.case-selector.is-bottas .case-selector__metrics.is-revealed dl div { opacity:1; transform:translateY(0); filter:blur(0); }
.case-selector.is-bottas .case-selector__metrics dl div:nth-child(1) { grid-column:1/8; grid-row:1/3; min-height:13.5rem; }
.case-selector.is-bottas .case-selector__metrics dl div:nth-child(4) { grid-column:8/13; grid-row:1; border-right:0; }
.case-selector.is-bottas .case-selector__metrics dl div:nth-child(2) { grid-column:8/10; grid-row:2; border-top:1px solid var(--line); }
.case-selector.is-bottas .case-selector__metrics dl div:nth-child(3) { grid-column:10/13; grid-row:2; border-top:1px solid var(--line); border-right:0; }
.case-selector.is-bottas .case-selector__metrics dl div:nth-child(5) { grid-column:1/4; }
.case-selector.is-bottas .case-selector__metrics dl div:nth-child(6) { grid-column:4/7; }
.case-selector.is-bottas .case-selector__metrics dl div:nth-child(7) { grid-column:7/10; }
.case-selector.is-bottas .case-selector__metrics dl div:nth-child(8) { grid-column:10/13; border-right:0; }
.case-selector.is-bottas .case-selector__metrics dl div:nth-child(n+5) { grid-row:3; border-top:1px solid var(--line); }
.case-selector.is-bottas .case-selector__metrics .metric--hero dd { margin-top:clamp(1.75rem,3.5vw,3.5rem); font-size:clamp(3.4rem,6.8vw,6.8rem); }
.case-selector.is-bottas .case-selector__metrics .metric--discovery dd { font-size:clamp(2rem,3.5vw,3.6rem); }
.case-selector.is-bottas .case-selector__supporting-info { grid-template-columns:minmax(15rem,2fr) minmax(0,3fr); }
.case-selector.is-bottas .case-selector__supporting-info--talent-only {
  margin-top:clamp(1.75rem,2.5vw,2.5rem);
  border-top:0;
  border-bottom:0;
}
.case-selector.is-bottas .case-selector__ledger-meta--after-work { display:grid; grid-template-columns:1fr; margin:0; border:0; }
.case-selector.is-bottas .case-selector__ledger-meta--after-work div { min-height:auto; padding:1.25rem 1.25rem 1.25rem 0; border-right:0; border-bottom:1px solid var(--line); }
.case-selector.is-bottas .case-selector__ledger-meta--after-work div:last-child { border-bottom:0; }
.case-selector.is-bottas .case-selector__talent--after-work { padding:0; }
.case-selector.is-bottas .case-selector__talent--after-work ol { margin-top:.85rem; }
.case-selector.is-bottas .case-selector__talent--after-work li { grid-template-columns:2.5rem 1fr; padding:1rem 0; font-size:clamp(.82rem,1vw,1rem); }
.case-selector.is-f1-box .case-selector__metrics dl { grid-template-columns:repeat(12,minmax(0,1fr)); }
.case-selector.is-f1-box .case-selector__metrics dl div { min-width:0; min-height:7rem; }
.case-selector.is-f1-box .case-selector__metrics dl div:nth-child(1) { grid-column:1/7; grid-row:1; padding-left:0; }
.case-selector.is-f1-box .case-selector__metrics dl div:nth-child(2) { grid-column:7/13; grid-row:1; border-right:0; }
.case-selector.is-f1-box .case-selector__metrics dl div:nth-child(n+3) { grid-column:span 3; grid-row:2; border-top:1px solid var(--line); }
.case-selector.is-f1-box .case-selector__metrics dl div:nth-child(6) { border-right:0; }
.case-selector.is-f1-box .case-selector__metrics .metric--hero { min-height:11rem; background:linear-gradient(135deg,rgba(44,86,220,.12),transparent 68%); }
.case-selector.is-f1-box .case-selector__metrics .metric--hero dd { margin-top:2rem; font-size:clamp(3rem,5.6vw,5.8rem); }
.case-selector.is-f1-box .case-selector__metrics dl div:nth-child(2) dd { color:var(--blue); font-size:clamp(2.5rem,4.5vw,4.8rem); }
.case-selector.is-f1-box .case-selector__metrics dd { max-width:100%; overflow-wrap:anywhere; }
.case-selector.is-suzuka .case-selector__metrics { margin-top:clamp(2rem,3vw,3rem); }
.case-selector.is-suzuka .case-selector__metrics > header { grid-template-columns:minmax(7rem,1fr) minmax(0,4fr); padding:1rem 0 1.25rem; }
.case-selector.is-suzuka .case-selector__metrics > header strong { max-width:54ch; font:300 max(.72rem,11px)/1.5 var(--mono); letter-spacing:0; }
.case-selector.is-suzuka .case-selector__metrics dl { grid-template-columns:repeat(3,minmax(0,1fr)); }
.case-selector.is-suzuka .case-selector__metrics dl div,
.case-selector.is-suzuka .case-selector__metrics .metric--hero,
.case-selector.is-suzuka .case-selector__metrics .metric--discovery { grid-column:auto; grid-row:auto; min-height:auto; padding:1rem 1.25rem; background:none; }
.case-selector.is-suzuka .case-selector__metrics dl div:first-child { padding-left:0; }
.case-selector.is-suzuka .case-selector__metrics dl div:last-child { border-right:0; }
.case-selector.is-suzuka .case-selector__metrics dd,
.case-selector.is-suzuka .case-selector__metrics .metric--hero dd,
.case-selector.is-suzuka .case-selector__metrics .metric--discovery dd { margin-top:.45rem; color:var(--ink); font:400 clamp(1.55rem,2.8vw,2.8rem)/1 var(--serif); letter-spacing:-.025em; }
.case-selector.is-suzuka .case-selector__metrics small { margin-top:.4rem; color:var(--muted); font-weight:300; }
.video-embed video { display:block; width:100%; height:100%; object-fit:cover; background:var(--ink); }
.video-embed video.video--contain { object-fit:contain; }
.project-page--clip-previews [data-clip-preview] { cursor:pointer; }
.project-page--clip-previews [data-media-expand] ~ img,
.project-page--clip-previews .case-media__expand + img { cursor:pointer; }
.project-canvas .case-selector__videos[data-layout="f1-always-on"] .case-video--photo img { cursor:pointer; }
.clip-preview__play { position:absolute; z-index:3; top:.25rem; right:.25rem; isolation:isolate; display:grid; width:2.75rem; height:2.75rem; padding:0; overflow:hidden; border:0; place-items:center; color:var(--blue); background:transparent; transition:transform .18s cubic-bezier(.16,1,.3,1); cursor:pointer; }
.clip-preview__play::before { content:""; position:absolute; z-index:0; inset:.48rem; border:1px solid rgba(255,255,255,.56); border-radius:.16rem; background:radial-gradient(90% 62% at 18% -5%,rgba(255,255,255,.42),transparent 54%),linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.055)); -webkit-backdrop-filter:blur(6px) saturate(1.14); backdrop-filter:blur(6px) saturate(1.14); box-shadow:0 .35rem .9rem rgba(36,24,20,.18),inset 0 1px 0 rgba(255,255,255,.6); pointer-events:none; }
.clip-preview__play:hover { transform:scale(1.06); }
.clip-preview__play:focus-visible { outline:2px solid var(--blue); outline-offset:3px; }
.clip-preview__play[hidden] { display:none; }
.clip-preview__play svg { position:relative; z-index:1; width:.72rem; height:.72rem; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:square; }
.case-video-group--feed .clip-preview__play { top:.12rem; right:.12rem; width:2rem; height:2rem; }
.case-video-group--feed .clip-preview__play::before { inset:.33rem; }
.case-video-group--feed .clip-preview__play svg { width:.56rem; height:.56rem; }
.clip-preview__play .icon-play { fill:currentColor; stroke:none; }
.clip-preview__play .icon-collapse { display:none; }
.case-video.is-expanded .clip-preview__play .icon-expand { display:none; }
.case-video.is-expanded .clip-preview__play .icon-collapse { display:block; }
.clip-preview__play:active { transform:scale(.97); }
.video-embed--square { aspect-ratio:1; }
.video-embed--editorial { aspect-ratio:4/5; }
.video-embed--strip { aspect-ratio:2.7/1; }
.video-embed--panorama { aspect-ratio:4/1; }
.video-embed--artwork { background:rgba(36,24,20,.045); }
.video-embed--artwork::after { display:none; }
.video-embed--artwork img { object-fit:contain; }
@media (prefers-reduced-motion:reduce) {
  .clip-preview__play { transition:none; }
  .case-selector.is-bottas .case-selector__metrics dl div { opacity:1; transform:none; transition:none; }
  .case-selector.is-bottas .case-selector__metrics dl div { filter:none; }
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  .clip-preview__play { background:rgba(242,237,228,.72); }
}
.project-canvas .case-notes { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(20rem,.85fr); padding:0; color:var(--ink); background:var(--cream); }
.project-canvas .case-notes__head { grid-column:1; display:block; padding:clamp(4rem,7vw,7rem) var(--pad) 0; }
.project-canvas .case-notes__head h2 { margin-top:clamp(2.5rem,5vw,5rem); }
.project-canvas .case-notes__head > p:last-child { max-width:58ch; margin-top:3rem; padding-top:1rem; border-color:var(--line); }
.project-canvas .case-notes__meta { grid-column:1; margin:clamp(3rem,5vw,5rem) var(--pad) 0; grid-template-columns:repeat(5,1fr); border-color:var(--line); }
.project-canvas .case-notes__meta div { min-height:6.5rem; border-color:var(--line); }
.project-canvas .case-notes__process { grid-column:1; margin:clamp(3rem,5vw,5rem) var(--pad) clamp(4rem,7vw,7rem); gap:2rem; }
.case-notes__result { grid-column:2; grid-row:1/4; display:flex; flex-direction:column; justify-content:space-between; min-height:100%; padding:clamp(4rem,7vw,7rem) clamp(2rem,4vw,4rem); color:var(--cream); background:var(--blue); }
.case-notes__result h2 { margin-top:auto; padding-top:8rem; font:400 clamp(3.2rem,5.2vw,5.8rem)/.84 var(--serif); letter-spacing:-.05em; }
.case-notes__result h2 em { color:var(--ink); font-weight:400; }
.case-notes__result > p:last-child { max-width:44ch; margin-top:3rem; padding-top:1rem; border-top:1px solid rgba(242,237,228,.4); font-size:clamp(.78rem,.85vw,.9rem); line-height:1.55; text-transform:uppercase; }
.project-canvas .case-next { min-height:50svh; }
.project-canvas + .project-footer { grid-column:2; }
.compact-project-footer { grid-column:2; grid-row:2; display:flex; justify-content:space-between; align-items:center; gap:2rem; padding:1rem var(--pad); color:var(--ink); background:var(--cream); border-top:1px solid var(--line); font:500 max(.7rem,11px)/1.3 var(--mono); letter-spacing:.06em; }
.compact-project-footer a { padding-bottom:.25rem; border-bottom:1px solid currentColor; }
.compact-project-footer__links { display:flex; align-items:center; gap:clamp(1.5rem,3vw,3rem); }
.compact-project-footer__next { display:flex; align-items:baseline; gap:.7rem; }
.compact-project-footer__next span { color:var(--blue); font-size:max(.62rem,10px); }
.project-page--pga .compact-project-footer, .project-page--bmw .compact-project-footer { color:var(--cream); background:var(--ink); border-top-color:rgba(242,237,228,.24); }

@media (max-width: 1180px) and (min-width: 801px) {
  .case-selector__ledger { grid-template-columns:minmax(0,1.25fr) minmax(14rem,.75fr); }
  .case-selector__ledger--story-only { grid-template-columns:1fr; }
  .case-selector__ledger-meta { grid-template-columns:1fr 1fr; }
  .case-selector__metrics dl { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .case-selector__metrics .metric--hero { grid-column:span 2; }
  .case-selector__metrics .metric--discovery { grid-column:span 2; }
  .case-selector.is-bottas .case-selector__metrics dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .case-selector.is-bottas .case-selector__metrics dl div:nth-child(n) { grid-column:auto; grid-row:auto; min-height:7.5rem; border-top:1px solid var(--line); }
  .case-selector.is-bottas .case-selector__metrics dl div:nth-child(1) { grid-column:1/-1; min-height:12rem; border-top:0; border-right:0; }
  .case-selector.is-bottas .case-selector__metrics dl div:nth-child(2n) { border-right:0; }
  .case-selector.is-bottas .case-selector__supporting-info { grid-template-columns:minmax(14rem,2fr) minmax(0,3fr); }
  .case-selector.is-bottas .case-selector__ledger-meta div:last-child { padding-left:0; }
  .case-selector__supporting-info { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .case-selector__supporting-info .case-selector__ledger-meta div:last-child { grid-column:auto; padding-left:1.25rem; border-top:0; }
  .case-selector.is-david-coulthard .case-selector__talent--after-work { grid-column:1/-1; padding:1.25rem 0; border-top:1px solid var(--line); border-left:0; }
  .case-selector.is-david-coulthard .case-selector__talent--after-work ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:1.75rem; }
  .case-selector.is-david-coulthard .case-selector__talent--after-work li { grid-template-columns:2rem minmax(0,1fr); padding:1rem 1.25rem; border-right:1px solid var(--line); }
  .case-selector.is-david-coulthard .case-selector__talent--after-work li:first-child { padding-left:0; }
  .case-selector.is-david-coulthard .case-selector__talent--after-work li:last-child { border-right:0; }
  .case-selector.has-no-talent .case-selector__supporting-info { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .case-selector.is-frieze .case-selector__supporting-info { grid-template-columns:minmax(14rem,2fr) minmax(0,3fr); }
  .case-selector.is-frieze .case-selector__ledger-meta div:last-child { padding-left:0; }
  .case-selector.is-max-fosh .case-selector__supporting-info { grid-template-columns:minmax(14rem,2fr) minmax(0,3fr); }
  .case-selector.is-max-fosh .case-selector__ledger-meta div:last-child { padding-left:0; }
  .case-selector.has-long-credits .case-selector__supporting-info { grid-template-columns:minmax(14rem,2fr) minmax(0,3fr); }
  .case-selector.has-long-credits .case-selector__ledger-meta div:last-child { padding-left:0; }
}

@media (max-width: 800px) {
  .project-header { grid-template-columns:1fr auto; min-height:5rem; }
  .project-header p { display:none; }
  .case-hero { min-height:64svh; padding-top:6.5rem; }
  .case-hero__copy { grid-column:1/-1; }
  .case-hero h1 { font-size:clamp(3.8rem,17vw,6.3rem); }
  .case-hero__media figcaption { left:var(--pad); right:var(--pad); justify-content:space-between; }
  .case-outcome { grid-template-columns:1fr; }
  .case-outcome .section-index, .case-outcome h2, .case-outcome > p:last-child { grid-column:1; }
  .case-outcome h2 { font-size:clamp(3rem,13vw,5rem); }
  .case-selector { grid-template-columns:1fr; }
  .case-selector__stage { grid-template-columns:1fr; }
  .case-selector__stage > .section-index, .case-selector__stage h2, .case-selector__summary, .case-selector__roles, .case-selector__assets { grid-column:1; }
  .case-selector__stage h2 { font-size:clamp(3rem,13vw,5rem); }
  .case-selector__summary { margin-top:1rem; }
  .case-selector__nav { grid-template-columns:1fr 1fr; }
  .case-selector__nav button:nth-child(odd) { border-left:1px solid var(--line); }
  .case-selector__assets { grid-template-columns:1fr; }
  .case-selector__videos { grid-template-columns:1fr 1fr; }
  .case-video, .case-video--landscape, .case-selector__videos[data-count="5"] .case-video:nth-child(4), .case-selector__videos[data-count="5"] .case-video:nth-child(5), .case-selector__videos[data-count="2"] .case-video--portrait:first-child, .case-selector__videos[data-count="2"] .case-video--portrait:last-child { grid-column:auto; margin-top:0; }
  .case-video--landscape { grid-column:1/-1; }
  .case-selector__asset--landscape { grid-column:1; margin-top:2rem; }
  .case-selector__asset--landscape { width:86%; margin-left:auto; }
  .case-notes__head { grid-template-columns:1fr; }
  .case-notes__head .section-index, .case-notes__head h2, .case-notes__head > p:last-child { grid-column:1; }
  .case-notes__head h2 { margin-top:2.5rem; font-size:clamp(3rem,13vw,5rem); }
  .case-notes__head > p:last-child { margin-top:1rem; }
  .case-notes__meta { grid-template-columns:1fr 1fr; }
  .case-notes__meta div { min-height:6.5rem; border-bottom:1px solid rgba(242,237,228,.25); }
  .case-notes__meta div:nth-child(2n) { border-right:0; }
  .case-notes__process { grid-template-columns:1fr; gap:0; }
  .case-notes__process article { padding:1.5rem 0 2rem; border-bottom:1px solid rgba(242,237,228,.25); }
  .case-outcome > p:last-child { margin-top:2rem; }
  .case-next { min-height:55svh; }
  .case-next a { font-size:clamp(3.4rem,16vw,5.6rem); }
  .project-footer { flex-direction:column; }
}

@media (max-width: 800px) {
  .case-selector__ledger-story > .case-selector__summary--columns { grid-template-columns:1fr; gap:1rem; }
  .project-page { display:block; }
  .project-rail { position:relative; min-height:auto; padding:1.5rem var(--pad) 2rem; }
  .project-rail__header { margin-bottom:clamp(19rem,56svh,26rem); }
  .project-rail__title { margin:0 0 3rem; }
  .project-rail__title h1 { font-size:clamp(2.2rem,10vw,3.8rem); }
  .project-rail__overview { max-width:44ch; }
  .project-rail__nav { display:grid; grid-template-columns:1fr 1fr; }
  .project-rail__nav button { padding:.75rem; border-right:1px solid rgba(242,237,228,.3); }
  .project-rail__details { margin-top:1rem; }
  .project-canvas .case-selector { min-height:auto; padding:1.25rem var(--pad) 4rem; }
  .project-canvas .case-selector__videos { grid-template-columns:1fr 1fr; grid-auto-flow:row; gap:1rem; }
  .project-canvas .case-selector__videos .case-video--landscape { grid-column:1/-1; }
  .project-canvas .case-selector__videos .case-video--strip { grid-column:1/-1; }
  .project-canvas .case-selector__videos .case-video--panorama { grid-column:1/-1; }
  .project-canvas .case-selector__videos .case-video--portrait,
  .project-canvas .case-selector__videos .case-video--editorial,
  .project-canvas .case-selector__videos .case-video--square { grid-column:span 1; width:100%; justify-self:stretch; }
  .project-canvas .case-selector__videos[data-portrait-count="1"] .case-video--portrait,
  .project-canvas .case-selector__videos[data-portrait-count="3"] .case-video--portrait:last-of-type,
  .project-canvas .case-selector__videos[data-portrait-count="5"] .case-video--portrait:last-of-type { grid-column:1/-1; width:calc(50% - .5rem); justify-self:center; }
  .case-selector__ledger { grid-template-columns:1fr; }
  .case-selector__supporting-info { grid-template-columns:1fr; }
  .case-selector.has-no-talent .case-selector__supporting-info { grid-template-columns:1fr; }
  .case-selector.is-frieze .case-selector__supporting-info { grid-template-columns:1fr; }
  .case-selector.is-frieze .case-selector__talent--after-work { padding:1.25rem 0; }
  .case-selector.is-frieze .case-selector__talent--after-work ol { margin-top:1.75rem; }
  .case-selector.is-max-fosh .case-selector__supporting-info { grid-template-columns:1fr; }
  .case-selector.is-max-fosh .case-selector__talent--after-work { padding:1.25rem 0; }
  .case-selector.is-max-fosh .case-selector__talent--after-work ol { margin-top:1.75rem; }
  .case-selector.has-long-credits .case-selector__supporting-info { grid-template-columns:1fr; }
  .case-selector__talent--after-work { padding:1.25rem 0; border-top:1px solid var(--line); border-left:0; }
  .case-selector__ledger-story { padding-right:0; border-right:0; border-bottom:1px solid var(--line); }
  .case-selector__contribution-columns { grid-template-columns:1fr; }
  .case-selector__credit-column { min-height:auto; padding:.7rem .15rem .75rem; border-right:0; border-bottom:1px solid var(--line); gap:.7rem; }
  .case-selector__credit-column:last-child { border-bottom:0; }
  .case-selector__talent { padding:2rem 0; }
  .case-selector__ledger-meta { grid-template-columns:1fr; }
  .case-selector__metrics dl { grid-template-columns:1fr; }
  .case-selector__metrics > header { grid-template-columns:1fr; }
  .case-selector__metrics dl div:nth-child(n) { min-height:auto; padding:1.25rem 0; border-top:1px solid var(--line); border-right:0; }
  .case-selector__metrics .metric--hero, .case-selector__metrics .metric--discovery { grid-column:1; grid-row:auto; }
  .case-selector__metrics .metric--hero { min-height:15rem; }
  .case-selector__metrics .metric--hero dd { margin-top:3.5rem; }
  .case-selector.is-bottas .case-selector__metrics > header { grid-template-columns:1fr; }
  .case-selector.is-bottas .case-selector__metrics dl { grid-template-columns:1fr; }
  .case-selector.is-bottas .case-selector__metrics dl div:nth-child(n) { grid-column:1; grid-row:auto; min-height:auto; padding:1.25rem 0; border-right:0; }
  .case-selector.is-bottas .case-selector__metrics dl div:nth-child(1) { min-height:11rem; }
  .case-selector.is-bottas .case-selector__supporting-info { grid-template-columns:1fr; }
  .case-selector.is-bottas .case-selector__talent--after-work { padding:1.25rem 0; }
  .case-selector.is-bottas .case-selector__talent--after-work ol { margin-top:1.75rem; }
  .case-selector.is-bottas .case-selector__metrics .metric--hero dd { margin-top:2rem; }
  .case-selector.is-f1-box .case-selector__metrics dl { grid-template-columns:1fr; }
  .case-selector.is-f1-box .case-selector__metrics dl div:nth-child(n) { grid-column:1; grid-row:auto; min-height:auto; padding:1.25rem 0; border-top:1px solid var(--line); border-right:0; }
  .case-selector.is-f1-box .case-selector__metrics dl div:nth-child(1) { min-height:10rem; }
  .case-selector.is-f1-box .case-selector__metrics .metric--hero dd { margin-top:2rem; font-size:clamp(3rem,15vw,5rem); }
  .case-selector.is-f1-box .case-selector__metrics dl div:nth-child(2) dd { font-size:clamp(2.5rem,12vw,4rem); }
  .case-selector.is-suzuka .case-selector__metrics > header { grid-template-columns:1fr; gap:.5rem; }
  .case-selector.is-suzuka .case-selector__metrics dl { grid-template-columns:1fr; }
  .case-selector.is-suzuka .case-selector__metrics dl div,
  .case-selector.is-suzuka .case-selector__metrics .metric--hero,
  .case-selector.is-suzuka .case-selector__metrics .metric--discovery { padding:1rem 0; border-top:1px solid var(--line); border-right:0; }
  .case-image-group__hero-ticket { grid-template-columns:1fr; }
  .case-image-group__hero-ticket > section > .case-image,
  .case-image-group__hero-ticket .case-carousel-slider { width:min(76%,24rem); margin-inline:auto; }
  .case-selector__ledger-meta div { min-height:auto; padding:1.25rem 0; border-right:0; border-bottom:1px solid var(--line); }
  .case-selector__ledger-meta div:last-child { border-bottom:0; }
  .project-canvas .case-selector__videos[data-landscape-count="1"][data-portrait-count="0"] { grid-template-columns:1fr; }
  .project-canvas .case-selector__videos[data-layout="lead-four"] { grid-template-columns:1fr; }
  .project-canvas .case-selector__videos[data-layout="lead-four"] > .case-video { grid-column:1/-1 !important; width:100% !important; justify-self:stretch; }
  .project-canvas .case-selector__videos[data-layout="lead-four"] > .case-video .video-embed { height:auto; aspect-ratio:9/16; }
  .project-canvas .case-selector__videos[data-layout="two-up"] { grid-template-columns:1fr; }
  .project-canvas .case-selector__videos[data-layout="two-up"] > .case-video--landscape { grid-column:1; }
  .project-canvas .case-selector__videos[data-layout="four-up"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .project-canvas .case-selector__videos[data-layout="suzuka-watch-party"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .project-canvas .case-selector__videos[data-layout="suzuka-watch-party"] > .case-video--landscape:first-child { grid-column:1/-1; width:100%; }
  .project-canvas .case-selector__videos[data-layout="suzuka-watch-party"] > .case-video--portrait,
  .project-canvas .case-selector__videos[data-layout="suzuka-watch-party"][data-portrait-count="4"] > .case-video--portrait { grid-column:span 1; width:100%; justify-self:stretch; }
  .project-canvas .case-selector__videos[data-layout="four-up"] > .case-video--portrait,
  .project-canvas .case-selector__videos[data-layout="landscape-two"] > .case-video--portrait { grid-column:span 1; }
  .project-canvas .case-selector__videos[data-layout="joy-large"] { grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; }
  .project-canvas .case-selector__videos[data-layout="joy-large"] > .case-video--portrait { grid-column:span 1; }
  .project-canvas .case-selector__videos[data-layout="always-on-grid"] > .case-video--portrait,
  .project-canvas .case-selector__videos[data-layout="always-on-grid"] > .case-video--editorial { grid-column:span 1; }
  .project-canvas .case-selector__videos[data-layout="always-on-grid"] > .case-video:first-child { grid-column:1/-1; }
  .project-canvas .case-selector__videos[data-layout="f1-always-on"] .case-video-group__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .project-canvas .case-selector__videos[data-layout="f1-always-on"] .case-video-group--feed .case-video-group__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .case-video-group__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .project-canvas .case-selector__videos[data-layout="single-square"] > .case-video--square { width:100%; }
  .project-canvas .case-selector__videos[data-layout="hero-slider"] { grid-template-columns:1fr; }
  .project-canvas .case-selector__videos[data-layout="hero-slider"] > .case-video,
  .project-canvas .case-selector__videos[data-layout="hero-slider"] > .case-media-slider { grid-column:1; }
  .project-canvas .case-selector__videos[data-layout="hero-slider"] > .case-media-slider { margin-top:2rem; }
  .case-selector__images[data-layout="video-slider"] { grid-template-columns:1fr; }
  .case-selector__images[data-layout="video-slider"] .case-media-pair,
  .case-selector__images[data-layout="video-slider"] .case-image-pair { grid-template-columns:1fr; }
  .case-image-group__header { grid-template-columns:1fr; gap:.65rem; }
  .case-image-group__grid[data-layout="four-up"],
  .case-image-group__grid[data-layout="three-up"],
  .case-image-group__grid[data-layout="portrait-media-grid"],
  .case-image-group__grid[data-layout="dc-event-films"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .case-image-group__grid[data-layout="dc-event-films"] .case-image:last-child { grid-column:1/-1; width:calc(50% - .5rem); justify-self:center; }
  .case-image-group__grid[data-layout="seamless-five"] { grid-template-columns:repeat(5,minmax(7.5rem,1fr)); overflow-x:auto; scroll-snap-type:x mandatory; }
  .case-image-group__grid[data-layout="seamless-five"] .case-image { scroll-snap-align:start; }
  .case-image-group__grid[data-layout="f1box-mixed"] { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:none; aspect-ratio:auto; }
  .case-image-group__grid[data-layout="f1box-mixed"] .case-image:nth-child(n) { grid-column:auto; grid-row:auto; aspect-ratio:4/5; }
  .case-image-group__grid[data-layout="f1box-mixed"] .case-image:first-child { grid-column:1/-1; width:min(72%,28rem); justify-self:center; aspect-ratio:9/16; }
  .case-image-group__grid[data-layout="silverstone-promo"] { grid-template-columns:1fr; grid-template-rows:none; }
  .case-image-group__grid[data-layout="silverstone-promo"] .case-image:nth-child(n) { grid-column:1; grid-row:auto; }
  .case-image-group__grid[data-layout="silverstone-promo"] .case-image:nth-child(2) { width:min(72%,28rem); justify-self:center; }
  .case-image-group__grid[data-layout="f1box-mixed"] .case-image:nth-child(2) { grid-column:1/-1; aspect-ratio:3/2; }
  .case-image-group__grid[data-layout="three-up"] .case-image:last-child { grid-column:1/-1; width:calc(50% - .5rem); justify-self:center; }
  .case-image-group__grid[data-layout="portrait-media-grid"] .case-image:last-child { grid-column:1/-1; width:calc(50% - .5rem); justify-self:center; }
  .case-selector__images[data-layout="video-slider"] .case-media-pair > .case-image { grid-column:1; }
  .case-selector__images[data-layout="video-slider"] .case-media-slider__slide .case-image { width:min(76%,24rem); }
  .project-canvas .case-selector__assets[data-layout="square-image-stack"] { grid-template-columns:1fr; }
  .project-canvas .case-selector__assets[data-layout="square-image-stack"] .case-selector__videos,
  .project-canvas .case-selector__assets[data-layout="square-image-stack"] .case-selector__images { grid-column:1; }
  .project-canvas .case-selector__assets[data-layout="bottas-reel-stills"] { grid-template-columns:1fr; }
  .project-canvas .case-selector__assets[data-layout="bottas-reel-stills"] .case-selector__videos,
  .project-canvas .case-selector__assets[data-layout="bottas-reel-stills"] .case-selector__images { grid-column:1; }
  .project-canvas .case-selector__videos[data-layout="bottas-reel-stills"] > .case-video--portrait { width:min(72%,28rem); justify-self:center; }
  .project-canvas .case-selector__videos[data-layout="bottas-reel-stills"] { height:auto; }
  .project-canvas .case-selector__videos[data-layout="bottas-reel-stills"] > .case-video--portrait { height:auto; align-self:start; }
  .project-canvas .case-selector__videos[data-layout="bottas-reel-stills"] > .case-video--portrait .video-embed { height:auto; aspect-ratio:9/16; }
  .project-canvas .case-selector__assets[data-layout="bottas-reel-stills"] .case-selector__images { margin-top:3rem; }
  .project-canvas .case-selector__videos[data-layout="portrait-three"] { grid-template-columns:1fr; }
  .project-canvas .case-selector__videos[data-layout="portrait-three"] > .case-video--portrait { grid-column:1; width:min(72%,28rem); justify-self:center; }
  .project-canvas .case-selector__videos[data-layout="portrait-two"] { grid-template-columns:1fr; }
  .project-canvas .case-selector__videos[data-layout="portrait-two"] > .case-video--portrait { grid-column:1; width:min(72%,28rem); justify-self:center; }
  .case-media-slider__slide .case-video { width:min(76%,24rem); }
  .case-video-cluster { grid-column:1; gap:1rem; }
  .case-video-cluster .case-video { grid-column:auto !important; width:auto !important; justify-self:stretch !important; }
  .case-video-cluster .video-embed { height:auto; aspect-ratio:9/16; }
  .case-video-cluster--landscape .video-embed { aspect-ratio:16/9; }
  .case-selector__images { grid-template-columns:1fr; margin-top:3rem; }
  .case-selector__images[data-layout="stack-three"] { grid-template-columns:1fr; margin-top:3rem; }
  .case-selector__images[data-layout="stack-three"] .case-image:first-child { grid-column:1; }
  .case-selector__images[data-layout="proactive"] { grid-template-columns:1fr; margin-top:3rem; }
  .case-selector__images[data-layout="proactive"] .case-image:nth-child(n) { grid-column:1; grid-row:auto; }
  .case-selector__images[data-layout="proactive-hero"] { grid-template-columns:1fr; }
  .case-selector__images[data-layout="proactive-hero"] .case-image:nth-child(n) { grid-column:1; }
  .case-image--wide { grid-column:1; aspect-ratio:16/9; }
  .project-canvas .case-notes { grid-template-columns:1fr; }
  .project-canvas .case-notes__head, .project-canvas .case-notes__meta, .project-canvas .case-notes__process, .case-notes__result { grid-column:1; grid-row:auto; }
  .project-canvas .case-notes__head { padding:4rem var(--pad) 0; }
  .project-canvas .case-notes__meta { grid-template-columns:1fr 1fr; }
  .project-canvas .case-notes__process { grid-template-columns:1fr; }
  .case-notes__result { min-height:70svh; padding:4rem var(--pad); }
  .case-notes__result h2 { padding-top:6rem; font-size:clamp(3.2rem,14vw,5rem); }
  .project-canvas + .project-footer { grid-column:auto; }
  .compact-project-footer { grid-column:auto; grid-row:auto; padding:1rem var(--pad); }
  .compact-project-footer__links { align-items:flex-end; flex-direction:column; gap:.75rem; text-align:right; }
  .compact-project-footer__next { align-items:flex-end; flex-direction:column; gap:.2rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
}

/* Reading roles use DM Mono Regular; medium is reserved for labels, chapter
   controls, navigation and metadata headings. */
body.project-page,
.project-rail__overview,
.project-rail__details p,
.case-selector__ledger-story > [data-case-summary],
.case-selector__contribution,
.case-selector__ledger-meta dd,
.case-selector__talent li,
.case-selector__summary,
.case-selector__roles dd,
.case-notes__head > p:last-child,
.case-notes__meta dd,
.case-notes__process p,
.case-outcome > p:last-child {
  font-weight: 400;
}

/* Typography role contract: prose is readable sentence case; uppercase DM Mono
   is reserved for navigation, labels, roles and data. */
.project-rail__overview,
.case-selector__ledger-story > [data-case-summary],
.case-selector__summary,
.case-notes__head > p:last-child,
.case-notes__process p,
.case-notes__result > p:last-child,
.case-outcome > p:last-child,
.case-image-group__copy > p:first-child,
.case-video-group > p {
  font: 300 clamp(.9375rem, 1vw, 1rem)/1.58 var(--mono);
  letter-spacing: 0;
  text-transform: none;
  text-wrap: pretty;
}

.case-selector__contribution {
  font-size: clamp(.9375rem, 1vw, 1rem);
  line-height: 1.5;
  letter-spacing: 0;
  text-transform: none;
}

.project-rail__details span,
.project-rail__details p,
.case-selector__chapter,
.case-selector__contribution span,
.case-selector__ledger-meta dt,
.case-selector__ledger-meta dd,
.case-selector__talent > p,
.case-selector__talent li,
.case-selector__talent li span,
.case-selector__metrics > header p,
.case-selector__metrics dt,
.case-selector__metrics small,
.case-image-group__header > p,
.case-image-group__talent,
.case-media-slider__controls p,
.case-video-group__label,
.compact-project-footer,
.compact-project-footer__next span {
  font-size: max(.75rem, 12px);
}

.case-selector__ledger-meta dd,
.case-selector__talent li,
.project-rail__details p {
  text-transform: uppercase;
}

.case-hero h1,
.project-rail__title h1,
.case-selector__stage h2,
.case-outcome h2,
.case-next strong {
  letter-spacing: -.04em;
  text-wrap: balance;
}

/* Results use one restrained scale. No chapter receives an oversized metric
   merely because it happens to be first in the data set. */
.case-selector__metrics dl,
.case-selector.is-bottas .case-selector__metrics dl,
.case-selector.is-f1-box .case-selector__metrics dl,
.case-selector.is-suzuka .case-selector__metrics dl {
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
}

.case-selector__metrics dl div,
.case-selector__metrics .metric--hero,
.case-selector__metrics .metric--discovery,
.case-selector.is-bottas .case-selector__metrics dl div:nth-child(n),
.case-selector.is-f1-box .case-selector__metrics dl div:nth-child(n),
.case-selector.is-suzuka .case-selector__metrics dl div:nth-child(n) {
  grid-column: auto;
  grid-row: auto;
  min-height: 7.5rem;
  padding: 1.25rem;
  border-top: 0;
  border-right: 1px solid var(--line);
  background: none;
}

.case-selector__metrics dl div:last-child {
  border-right: 0;
}

.case-selector__metrics dd,
.case-selector__metrics .metric--hero dd,
.case-selector__metrics .metric--discovery dd,
.case-selector.is-bottas .case-selector__metrics .metric--hero dd,
.case-selector.is-bottas .case-selector__metrics .metric--discovery dd,
.case-selector.is-f1-box .case-selector__metrics .metric--hero dd,
.case-selector.is-f1-box .case-selector__metrics dl div:nth-child(2) dd,
.case-selector.is-suzuka .case-selector__metrics dd,
.case-selector.is-suzuka .case-selector__metrics .metric--hero dd,
.case-selector.is-suzuka .case-selector__metrics .metric--discovery dd {
  margin-top: .75rem;
  color: var(--ink);
  font: 400 clamp(1.55rem, 2.8vw, 2.8rem)/1 var(--serif);
  letter-spacing: -.025em;
}

@media (max-width: 760px) {
  .case-selector__metrics dl,
  .case-selector.is-bottas .case-selector__metrics dl,
  .case-selector.is-f1-box .case-selector__metrics dl,
  .case-selector.is-suzuka .case-selector__metrics dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Responsive build: additive tablet and phone composition. Desktop rules
   above 1024px remain the approved source of truth. */
@media (max-width: 1024px) {
  :root { --pad: clamp(1.25rem, 4.5vw, 3rem); }

  .project-page { grid-template-columns: minmax(15.5rem, 31vw) minmax(0, 1fr); }
  .project-canvas .case-selector { padding: clamp(1.75rem, 4vw, 3rem); }
  .project-rail { padding: clamp(1.35rem, 2.8vw, 2.25rem); }
  .project-rail__title h1 { font-size: clamp(1.9rem, 3.25vw, 2.55rem); }
  .project-rail__overview { font-size: .75rem; line-height: 1.55; }
  .project-rail__nav button { min-height: 3.75rem; }
  .case-selector__ledger { gap: clamp(1.25rem, 3vw, 2.25rem); }
  .case-selector__metrics dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .case-selector__metrics dl div { min-width: 0; }
  .case-image-group__copy,
  .case-selector__story { max-width: 68ch; }
  .compact-project-footer { flex-wrap: wrap; }
}

@media (max-width: 800px) {
  :root { --pad: clamp(1rem, 5vw, 2rem); }

  .project-page { display: block; }
  .project-rail,
  .project-canvas,
  .project-canvas + .project-footer,
  .compact-project-footer { grid-column: auto; grid-row: auto; }
  .project-rail { min-height: auto; overflow: visible; }
  .project-rail__header { margin-bottom: clamp(7rem, 22svh, 11rem); }
  .project-rail__title { margin-bottom: 2.25rem; }
  .project-rail__title h1 { max-width: 12ch; font-size: clamp(2.5rem, 9.5vw, 4rem); }
  .project-rail__overview { max-width: 48ch; font-size: .875rem; }
  .project-rail__nav {
    display: flex;
    width: calc(100% + (2 * var(--pad)));
    margin-inline: calc(-1 * var(--pad));
    padding-inline: var(--pad);
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }
  .project-rail__nav::-webkit-scrollbar { display: none; }
  .project-rail__nav button {
    flex: 0 0 min(72vw, 18rem);
    min-height: 3.75rem;
    padding-inline: .75rem;
    border-right: 1px solid rgba(242,237,228,.3);
    scroll-snap-align: start;
  }
  .project-rail__nav button:first-child { border-left: 1px solid rgba(242,237,228,.3); }
  .project-rail__details { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .project-canvas .case-selector { min-height: 0; padding: clamp(2rem, 6vw, 3.5rem) var(--pad); }
  .case-selector__ledger,
  .case-selector__supporting-info,
  .case-selector__ledger-meta,
  .case-selector__roles { grid-template-columns: 1fr; }
  .case-selector__ledger > *,
  .case-selector__supporting-info > *,
  .case-selector__ledger-meta > *,
  .case-selector__roles > * { min-width: 0; }
  .case-selector__roles div + div,
  .case-selector__ledger-meta div + div { padding-left: 0; border-left: 0; border-top: 1px solid var(--line); }
  .case-selector__summary,
  .case-image-group__copy > p,
  .case-selector__story { font-size: .9375rem; line-height: 1.65; }
  .case-selector__metrics dl,
  .case-selector.is-bottas .case-selector__metrics dl,
  .case-selector.is-f1-box .case-selector__metrics dl,
  .case-selector.is-suzuka .case-selector__metrics dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .case-selector__videos,
  .case-video-group__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .case-video-group__grid > .case-video--landscape { grid-column: 1 / -1; }
  .case-image-group__header { grid-template-columns: 1fr; gap: .75rem; }
  .case-image-group__copy { grid-column: 1; }
  .case-media-slider__controls button { min-width: 2.75rem; min-height: 2.75rem; }
  .case-media-slider__viewport,
  .case-carousel-slider__viewport { touch-action: pan-y; }
  .compact-project-footer { align-items: flex-start; padding-block: 1.25rem; }
  .compact-project-footer__links { flex-wrap: wrap; gap: 1rem 1.5rem; }
}

@media (max-width: 520px) {
  .project-rail__header { margin-bottom: clamp(5rem, 18svh, 8rem); }
  .project-rail__details { grid-template-columns: 1fr; }
  .project-rail__nav button { flex-basis: min(82vw, 17rem); }
  .case-selector__metrics dl,
  .case-selector.is-bottas .case-selector__metrics dl,
  .case-selector.is-f1-box .case-selector__metrics dl,
  .case-selector.is-suzuka .case-selector__metrics dl { grid-template-columns: 1fr; }
  .case-selector__metrics dl div,
  .case-selector.is-david-coulthard .case-selector__metrics dl div:nth-child(n) {
    grid-column: 1;
    border-right: 0;
    border-top: 1px solid var(--line);
  }
  .case-selector__metrics dl div:first-child { border-top: 0; }
  .case-selector__videos,
  .case-video-group__grid { grid-template-columns: 1fr; }
  .case-selector__videos > .case-video,
  .case-video-group__grid > .case-video { grid-column: 1; width: 100%; }
  .case-video-group__grid > .case-video--portrait,
  .case-media-slider__slide .case-video,
  .case-selector__images[data-layout="video-slider"] .case-media-slider__slide .case-image {
    width: min(82vw, 22rem);
    margin-inline: auto;
  }
  .case-carousel-slider[data-visible-slides="3"] { --visible-slides: 1; }
  .case-image-group__grid[data-layout="three-up"],
  .case-image-group__grid[data-layout="four-up"] { grid-template-columns: 1fr; }
  .case-image-group__creator-feature,
  .case-image-group__hero-ticket { grid-template-columns: 1fr; }
  .case-image-group__hero-ticket .case-carousel-slider { width: min(82vw, 22rem); }
  .compact-project-footer { display: grid; gap: 1.25rem; }
}

/* Three-up portrait stories become a single native swipe row on narrow
   phones. The media elements and their viewport-aware loading stay intact. */
@media (max-width: 430px) {
  .project-canvas .case-selector__videos[data-portrait-count="3"][data-landscape-count="0"],
  .case-video-group__grid:has(> .case-video--portrait:nth-child(3)):not(:has(> .case-video:nth-child(4))) {
    display: flex;
    gap: .75rem;
    width: calc(100% + var(--pad));
    margin-right: calc(-1 * var(--pad));
    padding-right: var(--pad);
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    scroll-padding-inline: 0 var(--pad);
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    touch-action: pan-x pan-y;
  }

  .project-canvas .case-selector__videos[data-portrait-count="3"][data-landscape-count="0"]::-webkit-scrollbar,
  .case-video-group__grid:has(> .case-video--portrait:nth-child(3)):not(:has(> .case-video:nth-child(4)))::-webkit-scrollbar {
    display: none;
  }

  .project-canvas .case-selector__videos[data-portrait-count="3"][data-landscape-count="0"] > .case-video--portrait,
  .case-video-group__grid:has(> .case-video--portrait:nth-child(3)):not(:has(> .case-video:nth-child(4))) > .case-video--portrait {
    flex: 0 0 min(76vw, 19rem);
    width: min(76vw, 19rem);
    margin-inline: 0;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
}

/* David Coulthard has seven results: two headline figures over five supporting
   figures keeps both rows complete, so no divider terminates in empty space. */
.case-selector.is-david-coulthard .case-selector__metrics dl {
  grid-template-columns: repeat(10, minmax(0, 1fr));
}

.case-selector.is-david-coulthard .case-selector__metrics dl div:nth-child(-n+2) {
  grid-column: span 5;
}

.case-selector.is-david-coulthard .case-selector__metrics dl div:nth-child(n+3) {
  grid-column: span 2;
  border-top: 1px solid var(--line);
}

.case-selector.is-david-coulthard .case-selector__metrics dl div:nth-child(2),
.case-selector.is-david-coulthard .case-selector__metrics dl div:nth-child(7) {
  border-right: 0;
}

@media (max-width: 760px) {
  .case-selector.is-david-coulthard .case-selector__metrics dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .case-selector.is-david-coulthard .case-selector__metrics dl div:nth-child(n) {
    grid-column: span 1;
    border-top: 1px solid var(--line);
  }

  .case-selector.is-david-coulthard .case-selector__metrics dl div:nth-child(-n+2) {
    border-top: 0;
  }

  .case-selector.is-david-coulthard .case-selector__metrics dl div:nth-child(2n) {
    border-right: 0;
  }

  .case-selector.is-david-coulthard .case-selector__metrics dl div:last-child {
    grid-column: 1 / -1;
    border-right: 0;
  }
}
