/* Shared 32px drawing grid. Content and card insets follow the same rhythm. */
:root{--paper:#fcfcfb;--yellow:#ffe000;--selection:#ffeb87;--grid:32px;--content:1280px}
body{background-color:var(--paper);background-image:linear-gradient(#1b241b08 1px,transparent 1px),linear-gradient(90deg,#1b241b08 1px,transparent 1px);background-size:var(--grid) var(--grid);background-position:center top;background-attachment:fixed}
.wrap{width:min(var(--content),calc(100% - 64px))}
.grid-paper,.light{background:transparent}
.dark{background:transparent}
.header{width:min(1344px,calc(100% - 32px));top:16px;height:72px;border-radius:14px;background:rgba(22,26,22,.88)}
.hero{padding:144px 0 48px;color:var(--ink)}
.hero-heading{display:block;margin-bottom:32px}
.hero-heading .eyebrow{color:#62695d;margin-bottom:24px}
.hero h1{font-size:clamp(42px,4.4vw,68px);line-height:1.24;letter-spacing:-.035em;font-weight:650;max-width:1250px}
.hero-line{font-weight:400}
.selection{background:var(--selection);padding:0 .1em .025em;border-left:2px solid var(--yellow);border-right:2px solid var(--yellow)}
.selection:before,.selection:after{border:0;width:8px;height:8px;border-radius:50%;background:var(--yellow)}
.hero-description{color:#5b6357;font-size:17px;margin:24px 0 0;max-width:58ch;line-height:1.55}
.hero-description strong{color:#1a2117;font-weight:650}
.hero-film{width:100%;aspect-ratio:16/9;border-radius:16px}
.hero-caption{color:#596151;font-size:12px;margin-top:0}
.hero-caption a{color:#20261d;text-decoration:underline;text-underline-offset:4px}
.reveal-section{padding:32px 0 64px}
.reveal-section>.wrap{border:1px solid #1c251a1a;border-radius:18px;background:#ffffffad;padding:48px 32px;box-shadow:0 8px 32px #17201404}
.reveal-section h2{font-size:clamp(34px,4.3vw,64px);line-height:1.2}
.reveal-section .eyebrow{margin-bottom:20px}
.reveal-section p:last-child{margin-top:28px}
.works{padding-bottom:64px}
.section-heading{padding:0 0 32px;border:0}
.section-heading h2{font-size:54px}
.work-grid{gap:32px}
.work-card{border:1px solid #1822171a;border-radius:18px;padding:16px;background:#ffffffbf;box-shadow:0 8px 28px #19241604;transition:border-color .2s}
.work-card:hover{border-color:#c9ad1a}
.case-title,.case-link p,.credit-line{margin-left:16px;margin-right:16px}
.case-title{margin-top:24px}.credit-line{margin-bottom:12px}
.case-image{aspect-ratio:16/10;border-radius:10px}
.lead-card .case-image{aspect-ratio:16/9;max-height:600px}
.case-image video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.case-image img{position:relative;z-index:1;transition:opacity .25s,transform .6s var(--ease)}
.case-image.playing img{opacity:0}
.case-open{z-index:2}
.film-button{transition:opacity .2s;background:#172017c9}
.film.autoplaying .film-button{opacity:0;pointer-events:none}
.film.autoplaying:hover .film-button,.film.autoplaying:focus-within .film-button{opacity:1;pointer-events:auto}
.film.playing:not(.hero-film) .film-button{display:flex}
.more-work{margin-top:32px}
.more-work>summary{display:flex;justify-content:center;align-items:center;gap:24px;width:max-content;max-width:100%;margin:0 auto;padding:16px 24px;border:1px solid #26322124;border-radius:9px;background:#ffffffbd;font-size:16px}
.more-work[open]>summary{margin-bottom:32px}.more-open{display:none}.more-work[open] .more-open{display:inline}.more-work[open] .more-closed{display:none}
.faq-section,.studio{padding:0 0 64px}
.faq-section>.wrap,.studio>.wrap,footer>.wrap{background:#111511;border:1px solid #374030;border-radius:20px;padding:48px 32px;box-shadow:0 16px 45px #1b25100a}
.faq-section h2,.perspective h2,.collaborate h2{font-size:54px}
.faq-layout{gap:32px;margin-top:40px}
.perspective{padding:0 0 64px}
.perspective-intro{font-size:25px;margin-top:24px}
.perspective-list{margin-top:32px}
.perspective-list article{border:1px solid #1922151c;border-radius:18px;background:#ffffffb8;padding:32px}
.perspective-list article+article{margin-top:24px}
.perspective-title{gap:20px;margin-bottom:24px}
.perspective-title h3{font-size:32px}
.perspective-content{gap:32px}
.perspective-content mark{background:var(--selection)}
.studio-layout{gap:32px}.studio-heading h2{font-size:72px}
.studio-heading .eyebrow{line-height:1.6;max-width:28ch}.studio-card{padding:24px;background:#ffffff08;backdrop-filter:blur(12px)}
.studio-card p{font-size:23px}.studio-cards{gap:16px}
.collaborate{padding:0 0 64px}
.collaborate>.wrap{padding:32px;border:1px solid #1922151c;border-radius:18px;background:#ffffffba}
.collaborate-copy{margin:32px 0 0;max-width:760px}
footer{padding:0 0 32px}.footer-main{gap:32px}.footer-bottom{margin-top:64px}
.case-page,.legal{background:transparent}.case-story{padding:32px;border:1px solid #19221518;border-radius:16px;background:#ffffffc7}
@media(min-width:1800px){.wrap{width:min(var(--content),calc(100% - 64px))}}
@media(max-width:1000px){.hero h1{font-size:clamp(38px,5.2vw,58px)}.faq-section h2,.perspective h2,.collaborate h2{font-size:45px}.studio-layout{grid-template-columns:.8fr 1.2fr}.studio-heading h2{font-size:56px}.studio-card p{font-size:21px}}
@media(max-width:700px){:root{--grid:24px}.wrap{width:calc(100% - 32px)}.header{width:calc(100% - 20px);top:10px;height:62px}.hero{padding:112px 0 32px}.hero h1{font-size:clamp(29px,7.2vw,46px);line-height:1.36;letter-spacing:-.035em}.hero h1 br{display:none}.hero-line{display:block;margin-bottom:8px}.hero .selection{box-decoration-break:clone;-webkit-box-decoration-break:clone}.hero-description{font-size:16px;max-width:33ch}.hero-heading{margin-bottom:24px}.hero-film{aspect-ratio:16/9}.hero-caption{font-size:10px}.reveal-section{padding:0 0 32px}.reveal-section>.wrap{padding:28px 16px}.reveal-section h2{font-size:clamp(29px,7.5vw,43px)}.reveal-section p:last-child{font-size:15px;margin-top:24px}.section-heading{padding:0 0 24px}.section-heading h2{font-size:38px}.work-grid{gap:24px}.work-card{padding:8px;border-radius:14px}.case-title,.case-link p,.credit-line{margin-left:8px;margin-right:8px}.case-image,.lead-card .case-image{aspect-ratio:16/10}.case-title{margin-top:16px}.case-title h3{font-size:23px}.credit-line{margin-bottom:8px}.more-work{margin-top:24px}.more-work>summary{font-size:14px;padding:14px 20px}.works,.faq-section,.perspective,.studio,.collaborate{padding:0 0 32px}.faq-section>.wrap,.studio>.wrap,footer>.wrap{padding:32px 16px;border-radius:16px}.faq-section h2,.perspective h2,.collaborate h2{font-size:36px}.faq-layout{margin-top:28px;gap:24px}.perspective-intro{font-size:20px;margin-top:24px}.perspective-list{margin-top:24px}.perspective-list article{padding:24px 16px;border-radius:14px}.perspective-list article+article{margin-top:24px}.perspective-title h3{font-size:27px}.perspective-title{gap:12px}.perspective-content{gap:24px}.perspective-content h4{font-size:23px}.studio-layout{grid-template-columns:1fr;gap:24px}.studio-heading h2{font-size:54px}.studio-heading .eyebrow{max-width:none}.studio-card{padding:20px}.studio-card p{font-size:21px}.collaborate>.wrap{padding:32px 16px}.collaborate-copy{margin-top:24px}.footer-main h2{font-size:38px}.footer-bottom{margin-top:40px}.case-story{padding:24px 16px;font-size:20px}.film-button{font-size:11px;padding:9px 12px}.more-grid{grid-template-columns:1fr}}
@media(prefers-reduced-transparency:reduce){.work-card,.perspective-list article,.reveal-section>.wrap,.collaborate>.wrap{background:#fff}.studio-card{background:#252b24}}
@media(max-width:700px){.hero h1 br{display:initial}.hero h1 .selection{font-size:clamp(26px,7vw,44px)}}
@media(max-width:700px){.hero h1 .hero-line+br{display:none}}
.case-image{width:100%}.lead-card .case-image{max-height:none}
.hero-description{max-width:none;font-size:18px}
.case-link{display:block}
.case-link p{max-width:none}
.case-title{align-items:start;min-height:3.4em}
.case-title h3{font-size:clamp(20px,1.65vw,26px);line-height:1.25;text-wrap:balance}
.lead-card .case-title{min-height:0}
.perspective-intro{font-size:23px}
.studio-heading h2{font-size:clamp(64px,7vw,100px)}
.selection{background:#ffeb87;border-color:#ffe000}
.yellow-dot{color:#ffe000}
.work-card,.perspective-list article,.reveal-section>.wrap,.collaborate>.wrap{background:rgba(255,255,255,.68);box-shadow:inset 0 1px 0 #fff,0 8px 30px #17201407}
.case-image video{pointer-events:none}
.entering{animation:enter-card .6s cubic-bezier(.22,1,.36,1) both}
@keyframes enter-card{from{opacity:.3;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(max-width:700px){.hero-description{font-size:16px}.case-title{min-height:0}.case-title h3{font-size:23px}.perspective-intro{font-size:20px}.studio-heading h2{font-size:64px}}
@media(prefers-reduced-motion:reduce){.entering{animation:none}}
.perspective-content mark{position:relative;box-decoration-break:clone;-webkit-box-decoration-break:clone;border-left:2px solid #ffe000;border-right:2px solid #ffe000;padding:0 .08em}
.perspective-content mark:before,.perspective-content mark:after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:#ffe000}
.perspective-content mark:before{left:-4px;top:-3px}.perspective-content mark:after{right:-4px;bottom:-3px}
/* Native media proportions on every case breakpoint. */
.case-page .film{aspect-ratio:var(--ratio,16/9)}
.case-page .film>img,.case-page .film>video{object-fit:contain}
.case-gallery{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px}
.case-gallery .film:first-child{grid-column:auto}
.case-gallery .film.wide-film{grid-column:1/-1}
.case-page .film.playing:not(.autoplaying) .film-button{bottom:64px}
.case-story{font-size:18px;line-height:1.75;max-width:none;width:100%;margin:32px 0 40px;padding:0;border:0;background:none;white-space:pre-line}
.header{background:linear-gradient(135deg,#ffffff22,#ffffff08),#101a18a8;border:1px solid #ffffff80;box-shadow:inset 0 1px 0 #ffffff75,inset 0 -1px 0 #ffffff18,0 8px 28px #07120a20;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%)}
.header nav{gap:8px}
.header nav a,.header .book,.menu-toggle{border:1px solid #ffffff55;border-radius:10px;padding:10px 14px;background:#ffffff06;color:#fff;box-shadow:inset 0 1px 0 #ffffff12;transition:background .2s,color .2s,border-color .2s,box-shadow .2s}
.header .book{border-color:#ffe000aa}
.header nav a:hover,.header nav a.active,.header .book:hover,.menu-toggle:hover{background:#ffe000c9;border-color:#fff199;color:#151a12;box-shadow:inset 0 1px 0 #fff8,0 3px 14px #ffe00020}
.header a:focus-visible,.menu-toggle:focus-visible{outline:2px solid #ffe000;outline-offset:3px}
@media(max-width:900px){.header{gap:12px}.header nav a{padding:9px 10px}}
@media(max-width:700px){.case-story{font-size:16px;line-height:1.75;margin:24px 0 32px}.case-gallery{gap:12px}.header .book,.menu-toggle{padding:8px 9px;font-size:11px}.header nav a{padding:12px}.case-gallery .film-button{left:6px;bottom:8px;font-size:10px;padding:7px 8px;gap:5px}.case-gallery .film.playing:not(.autoplaying) .film-button{bottom:48px}}
@supports not (backdrop-filter:blur(1px)){.header{background:#202923}}
@media(min-width:701px) and (max-width:1000px){.header nav{display:none;position:absolute;left:0;right:0;top:82px;background:#17201ef0;border:1px solid #ffffff50;border-radius:14px;padding:16px;flex-direction:column;align-items:stretch;backdrop-filter:blur(24px)}.header.menu-open nav{display:flex}.menu-toggle{display:block}.header .logo{margin-right:auto}}
/* Never enlarge a film beyond its decoded pixels; centre smaller originals. */
.film,.case-image{width:100%;max-width:var(--native-width,100%);margin-inline:auto;aspect-ratio:var(--ratio,16/9)}
.case-gallery .film{justify-self:center}
.hero-film,.lead-card .case-image{aspect-ratio:var(--ratio,16/9)}
.film>video,.case-image video,.film>img,.case-image img{object-fit:contain}
.case-link:hover .case-image img{transform:none}
@media(max-width:700px){.film,.case-image,.lead-card .case-image{aspect-ratio:var(--ratio,16/9)}}
/* Clear capsule glass: curved highlights and a restrained dark tint for logo contrast. */
.header{border-radius:999px;background:linear-gradient(115deg,#ffffff18 0%,#ffffff03 42%,#ffffff0d 78%,#ffffff20 100%),#0b141c8f;border:1px solid #ffffff38;box-shadow:inset 1px 1px 0 #ffffffa6,inset -1px -1px 0 #ffffff20,inset 0 8px 14px -12px #fff,0 8px 30px #08101c1c;backdrop-filter:blur(10px) saturate(190%) contrast(108%);-webkit-backdrop-filter:blur(10px) saturate(190%) contrast(108%);isolation:isolate;padding-inline:24px}
.header::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;background:radial-gradient(ellipse 22% 95% at 86% 0%,#ffffff63 0%,#ffffff15 42%,transparent 70%),radial-gradient(ellipse 16% 85% at 5% 100%,#ffffff1f,transparent 75%);box-shadow:inset 0 1px 0 #ffffff50}
.header nav a,.header .book,.menu-toggle{border-radius:999px;background:transparent;border-color:#ffffff35;box-shadow:inset 0 1px 0 #ffffff18}
.header .book{border-color:#ffe000a6}
.header nav a:hover,.header nav a.active,.header .book:hover,.menu-toggle:hover{background:linear-gradient(135deg,#fff8b659,#ffe000a6);border-color:#fff3a0;box-shadow:inset 0 1px 1px #ffffffb3,inset 0 -1px 1px #c9ac0059,0 2px 12px #ffe00018;color:#101710}
@media(max-width:700px){.header{border-radius:32px;padding-inline:13px;gap:9px}.header .book,.menu-toggle{padding:8px 9px}}
@media(prefers-reduced-transparency:reduce){.header{background:#25302d;backdrop-filter:none}.header::before{opacity:.3}}
.header{background:linear-gradient(125deg,#ffffff8c,#ffffff38 50%,#ffffff80);color:#17201c;backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%);border-color:#ffffffb3;box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #ffffff70,0 6px 24px #17201718}
.header .logo img{filter:drop-shadow(0 1px 2px #000b)}
.header nav a,.header .book,.menu-toggle{color:#17201c;border-color:#293b2938;background:#ffffff28;text-shadow:0 1px 5px #ffffff70}
.header .book{border-color:#bba30080}
.header nav a:hover,.header .book:hover,.header nav a.active,.menu-toggle:hover{background:linear-gradient(140deg,#fff9ad80,#ffe00099);color:#142012}
.work-card,.perspective-list article,.reveal-section>.wrap,.collaborate>.wrap,.more-work>summary,.case-nav a{background:linear-gradient(130deg,#ffffff8c,#ffffff35);border:1px solid #ffffffc9;box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #ffffff80,0 5px 20px #1720140a;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.faq-section h2,.perspective h2,.studio-heading h2{font-size:clamp(36px,4.1vw,54px);line-height:1.15}
.hero-selection{--selection-progress:100%;background:linear-gradient(#ffeb87,#ffeb87) left center/var(--selection-progress) 100% no-repeat;border:0;padding:0 .1em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.hero-selection:before{left:0;top:0}.hero-selection:after{right:0;bottom:0}
.case-nav{display:grid;grid-template-columns:minmax(0,1fr) 160px minmax(0,1fr);gap:16px;margin:48px 0}
.case-nav a{border-radius:16px;padding:20px;justify-content:center;gap:10px;min-height:108px;transition:background .2s,border-color .2s}
.case-nav a>span{font-size:13px;font-weight:600}.case-nav a>strong{font-size:17px;line-height:1.35;font-weight:500}
.case-nav .all-projects{text-align:center;align-items:center}.case-nav a:hover{background:#ffeb8780;border-color:#e7ca13}
.case-gallery .compact-film{aspect-ratio:1/1;align-self:start}
.media-controls{position:absolute;bottom:12px;left:12px;right:12px;z-index:5;display:flex;align-items:center;gap:10px;border:1px solid #ffffff50;background:#111b2080;backdrop-filter:blur(12px);border-radius:10px;padding:8px 10px;color:#fff;font:11px ui-monospace,monospace}
.media-controls button{background:transparent;border:0;color:inherit;padding:6px;cursor:pointer;font:inherit}
.media-controls input{min-width:20px;flex:1;width:100%;height:3px;accent-color:#ffe000;cursor:pointer}
.media-controls time{white-space:nowrap}
.case-page .film.playing .film-button{display:none}
.media-controls[hidden]{display:none}
.media-loading{position:absolute;inset:0;z-index:3;display:grid;place-items:center;pointer-events:none;color:#fff;text-shadow:0 1px 8px #000}
.media-loading[hidden]{display:none}
@media(max-width:1000px){.header nav{background:#fffffff0}.header nav a{color:#17201c}}
@media(max-width:700px){.faq-section h2,.perspective h2,.studio-heading h2{font-size:36px}.case-nav{grid-template-columns:1fr 1fr;gap:12px}.case-nav .all-projects{grid-column:1/-1;grid-row:2;min-height:56px;flex-direction:row}.case-nav a{padding:16px;min-height:110px}.case-nav a>strong{font-size:14px}.media-controls{gap:3px;padding:4px;left:4px;right:4px;bottom:4px;font-size:9px}.media-controls button{padding:4px}}
.header .logo img{filter:invert(1) hue-rotate(180deg)} .film:fullscreen{max-width:none;width:100%;height:100%;background:#050706;border-radius:0} .film:fullscreen video{object-fit:contain}
.case-gallery .compact-film{aspect-ratio:var(--compact-ratio,1);max-width:min(var(--native-width,100%),var(--compact-width,100%))}
@media(min-width:1001px){.hero-selection .keep-phrase{white-space:nowrap}}
.film-button{background:linear-gradient(135deg,#ffffffb3,#ffffff66);border:1px solid #ffffffb3;color:#14201b;backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 #fff,0 3px 14px #0001}.film-button:hover{background:#ffe000a6}.case-nav a{border-color:#263b2626}.case-nav .all-projects{border-color:#c5b63a66}
/* Shared rows keep every project preview, title, summary and credit aligned. */
.work-grid{align-items:stretch}
.work-grid .work-card{display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:0;position:relative;isolation:isolate;background:linear-gradient(130deg,#ffffff42,#ffffff0d 55%,#ffffff30);border:1px solid #ffffffa6;box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #ffffff73,0 6px 24px #233b2312;backdrop-filter:blur(10px) saturate(160%);-webkit-backdrop-filter:blur(10px) saturate(160%)}
.work-card:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:radial-gradient(ellipse 40% 10% at 90% 0%,#ffffffc2,transparent 75%),linear-gradient(115deg,#ffffff24,transparent 40%);box-shadow:inset 0 1px 0 #fff}
.work-grid .case-link{display:grid;grid-row:span 3;grid-template-rows:subgrid;row-gap:0}
.work-grid .case-image{aspect-ratio:4/3;width:100%;max-width:none;margin:0;align-self:start;background:#13201808}
.work-grid .lead-card .case-image{aspect-ratio:16/9}
.work-grid .case-image video,.work-grid .case-image img{position:absolute;inset:auto;left:50%;top:50%;transform:translate(-50%,-50%);width:100%;height:100%;max-width:var(--native-width,100%);object-fit:contain}
.work-grid .case-link:hover .case-image img{transform:translate(-50%,-50%)}
.work-grid .case-title{min-height:0;margin:24px 16px 16px;align-self:start}
.work-grid .case-link p{margin:0 16px;align-self:start}
.work-grid .credit-line{align-self:end;margin:20px 16px 12px}
@media(max-width:700px){.work-grid .case-title{margin:16px 8px 12px}.work-grid .case-link p{margin-inline:8px}.work-grid .credit-line{margin:16px 8px 8px}}

:root{--yellow:#ffcc00;--selection:#ffe58a}
.more-work>summary{position:relative;isolation:isolate;border-radius:999px;border:1px solid #ffffffd9;background:linear-gradient(125deg,#ffffff99,#ffffff30 50%,#ffffff80);box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #ffffff88,0 5px 20px #29372114;backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%);transition:background .2s,box-shadow .2s}
.more-work>summary>span:last-child{display:grid;place-items:center;width:24px;height:24px;font-size:22px;line-height:1}
.more-work[open]>summary>span:last-child{font-size:0}
.more-work[open]>summary>span:last-child:after{content:"−";font-size:22px}
.more-work>summary:hover,.more-work[open]>summary{background:linear-gradient(135deg,#fff1b899,#ffcc0052);border-color:#ffda6580;box-shadow:inset 0 1px 1px #fff,0 5px 20px #ffb00020}
.header .book{background:linear-gradient(135deg,#fff3bd60,#ffbd003d 60%,#fff0ad70);border:1px solid #ffce4999;box-shadow:inset 0 1px 1px #fff8d5d9,inset 0 -2px 5px #e398001f,0 3px 16px #ffb00024}
.header nav a:hover,.header nav a.active,.header .book:hover,.menu-toggle:hover{background:linear-gradient(135deg,#fff3ba9c,#ffbf00a6 65%,#ffda6ba6);border-color:#ffcf57;box-shadow:inset 0 1px 2px #fff6d6,inset 0 -3px 8px #ce7b0026,0 4px 22px #ffa80040;color:#261c09}
.header .book:after{content:"";position:absolute;pointer-events:none}
.media-controls{background:linear-gradient(125deg,#ffffffbf,#ffffff73);color:#172019;border:1px solid #ffffffe0;box-shadow:inset 0 1px 1px #fff,0 4px 18px #0002;backdrop-filter:blur(14px)}
.media-controls button{border:1px solid #ffffff80;border-radius:7px;background:#ffffff30;box-shadow:inset 0 1px 0 #fff8}
.media-controls button:hover{background:#ffcc0066}
.media-controls input{accent-color:#ffcc00}
.film-button:hover,.case-nav a:hover{background:linear-gradient(135deg,#fff3b8a6,#ffcc006b);border-color:#ffd266;box-shadow:inset 0 1px 0 #fff9,0 4px 18px #ffb00026}
.yellow-dot{color:#ffcc00}
@media(prefers-reduced-transparency:reduce){.more-work>summary,.media-controls{background:#fff;backdrop-filter:none}}
.work-grid .work-card{background:linear-gradient(125deg,#ffffff35,#ffffff08 55%,#ffffff26);border-color:#a7b4a747;box-shadow:inset 1px 1px 0 #ffffffed,inset -1px -1px 0 #ffffff99,0 8px 24px #243a2412,0 1px 3px #243a2410;backdrop-filter:blur(3px) saturate(150%);-webkit-backdrop-filter:blur(3px) saturate(150%)}
.work-grid .case-image video,.work-grid .case-image img{object-fit:cover}
.work-grid .work-card,.perspective-list article,.collaborate>.wrap{background:linear-gradient(125deg,#ffffff1a,#ffffff03 55%,#ffffff12);backdrop-filter:none;-webkit-backdrop-filter:none}
.player-frame{width:100%;max-width:var(--native-width,100%);margin-inline:auto;padding:10px;border:1px solid #b6c1b652;border-radius:18px;background:linear-gradient(125deg,#ffffff26,#ffffff05);box-shadow:inset 1px 1px 0 #fff,0 5px 20px #1720140a;align-self:start;justify-self:center}
.player-frame>.film{width:100%;max-width:none;margin:0}
.case-gallery>.player-frame.wide-film{grid-column:1/-1}
.case-gallery>.player-frame.compact-frame{max-width:min(var(--native-width,100%),var(--compact-width,100%))}
.player-frame>.media-controls{position:relative;inset:auto;margin-top:8px;width:100%;min-height:40px;border-radius:10px;animation:tray-open .2s ease-out}
@keyframes tray-open{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
.player-frame:fullscreen{max-width:none;width:100%;height:100%;display:flex;flex-direction:column;background:#080c09;padding:12px}
.player-frame:fullscreen>.film{flex:1;min-height:0;aspect-ratio:auto}
.player-frame:fullscreen>.media-controls{flex:none}
@media(max-width:700px){.player-frame{padding:6px;border-radius:12px}.player-frame>.media-controls{flex-wrap:wrap;gap:4px;min-height:38px}.player-frame>.media-controls input{flex-basis:35%}}
@media(prefers-reduced-motion:reduce){.player-frame>.media-controls{animation:none}}
.header nav a,.menu-toggle{background:linear-gradient(135deg,#fffffff2,#ffffffe0);color:#152018;border-color:#ffffffcc;text-shadow:none;box-shadow:inset 0 1px 0 #fff,0 1px 5px #00000012}.header .book{background:linear-gradient(135deg,#fff1bcf5,#ffd45be8);color:#241b06}.header .logo{background:#ffffffd9;border-radius:12px;padding:4px 8px}.header .logo img{display:block}

.booking-page{padding:150px 0 80px}.booking-page h1{font-size:clamp(38px,5vw,72px);line-height:1.05;margin:24px 0}.booking-intro{max-width:680px;font-size:18px;line-height:1.6;margin-bottom:36px}.booking-frame{padding:12px;border-radius:24px;overflow:hidden}.booking-frame iframe{display:block;border-radius:16px;background:white}.booking-help{font-size:14px;line-height:1.7;margin-top:20px}.booking-help a{text-decoration:underline}@media(max-width:600px){.booking-page{padding-top:100px}.booking-frame{padding:4px;margin-inline:-8px}.booking-frame iframe{height:1000px}.booking-intro{font-size:16px}}
/* October playback and glass refinement. */
.hero-emphasis{display:block;font-weight:700}.hero h1{font-weight:400;line-height:1.16}.hero-emphasis,.plain-emphasis{background:none;border:0;padding:0}.hero h1{max-width:1100px}.plain-emphasis{font-weight:700}
.work-hook{max-width:760px;margin:-8px 0 32px;font-size:19px;line-height:1.55;color:#505950}.work-hook strong{color:#172019}.case-title{flex-wrap:wrap}.case-type{flex-basis:100%;font-size:12px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:#575f53;margin-bottom:4px}.case-title h3{flex:1}.studio-recognition{display:grid;gap:9px;margin-top:24px;padding-top:20px;border-top:1px solid #ffffff30;font-size:14px}.ranking-source{font-weight:700;color:#ffcc00}.studio-card strong{font-weight:700}.studio-recognition .text-link{margin-top:8px}
.header .logo{background:none;border:0;box-shadow:none;padding:0 4px;border-radius:0}.header{background:linear-gradient(115deg,#ffffffba,#ffffff80 45%,#ffffffa6);backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%)}
/* Layered bevels approximate clear glass on the web without a distortion filter. */
.header nav a,.menu-toggle{background:linear-gradient(135deg,#ffffffe0,#ffffff66 45%,#ffffffad);border:1px solid #ffffffd9;color:#172019;box-shadow:inset 1px 2px 2px #fff,inset -1px -3px 3px #6a776425,0 3px 5px #17201724,0 0 0 1px #53634b15;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.header nav a.active,.header nav a:hover,.header .book:hover{background:linear-gradient(125deg,#fff8d6e6,#ffcc0080 55%,#ffe48cc4);box-shadow:inset 1px 2px 2px #fff8dc,inset -1px -3px 4px #c9950038,0 3px 6px #7a61042b,0 0 18px #ffcc0033}
.header .book{background:linear-gradient(135deg,#fff2b9dd,#ffcc00a6 55%,#ffe180d9);box-shadow:inset 1px 2px 2px #fff8d6,inset -1px -3px 4px #b989002e,0 4px 14px #ffbc0038}
.faq-section>.wrap,.studio>.wrap,footer>.wrap{background-color:#111711;background-image:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px);background-size:var(--grid) var(--grid);background-position:center top}
.studio-card{background:#ffffff05;backdrop-filter:none;-webkit-backdrop-filter:none}.work-card,.perspective-list article,.collaborate>.wrap,.player-frame{background-image:linear-gradient(#26342306 1px,transparent 1px),linear-gradient(90deg,#26342306 1px,transparent 1px);background-size:var(--grid) var(--grid)}
.film>img,.case-image>img{transition:opacity .12s linear}.film.playing>video{z-index:0}.film>img{z-index:1}.film .film-button{display:none!important}.film.needs-play .film-button{display:flex!important;opacity:1;pointer-events:auto;bottom:12px}.film.playing.needs-play .film-button{display:flex!important}
.media-controls{font-size:12px;gap:8px}.media-controls button{min-height:34px;min-width:34px}.media-controls .sound-toggle{min-width:116px;white-space:nowrap;font-family:inherit}.media-controls input{height:5px;min-height:24px}.media-controls time{min-width:70px}.case-gallery .film{aspect-ratio:var(--ratio,16/9)}
.hero>.wrap>.player-frame{max-width:100%;padding:0;border:0;box-shadow:none;background:none}.hero .media-controls{margin-top:8px}.film img{object-fit:contain}.case-image img{object-fit:cover}
@media(max-width:700px){.hero h1{font-size:32px;line-height:1.22}.hero-emphasis{margin-top:8px}.work-hook{font-size:16px;margin-top:-4px}.case-type{font-size:10px}.media-controls{gap:3px!important;font-size:10px}.media-controls time{min-width:60px}.media-controls .sound-toggle{min-width:106px}.media-controls input{flex:1;flex-basis:30%!important}.studio-recognition{font-size:13px}.header .logo{padding:0}.header nav a{background:linear-gradient(135deg,#ffffffee,#ffffffad)} }
@media(prefers-reduced-transparency:reduce){.header,.header nav a,.menu-toggle,.media-controls{background:#fafafa;backdrop-filter:none;-webkit-backdrop-filter:none}}
.sound-toggle{display:flex;align-items:center;justify-content:center;gap:7px}.sound-toggle svg{flex:none}.media-controls button:focus-visible{outline:2px solid #a17800;outline-offset:3px}.media-controls .sound-toggle[aria-pressed=true]{background:#ffcc0066}
.perspective-content mark{background:none;border:0;padding:0;font-weight:700;color:#172019}.perspective-content mark:before,.perspective-content mark:after{display:none}
.case-gallery .compact-film{aspect-ratio:var(--compact-ratio,1)}
