/* Shared visual language: every route uses the same typography and palette. */
:root{--ink:#142129;--paper:#f5f6f4;--gold:#adc9d7;--muted:#b8c3c9;--pad:5vw}body{background:var(--ink);color:var(--paper)}body h1,body h2,body h3,body .next-title{font-family:'Manrope',Arial,sans-serif!important;font-weight:400!important;text-transform:none!important;letter-spacing:-.04em!important;line-height:1.15!important}body h1{font-size:clamp(42px,5.4vw,78px)!important}body h2{font-size:clamp(30px,3.5vw,52px)!important}body h3{font-size:clamp(21px,2.1vw,30px)!important}.eyebrow{font-size:11px;letter-spacing:.09em}.header{height:100px!important;border:0!important;color:#fff}.header .brand{width:110px;height:70px}.header nav a,.contact-link{font-size:13px!important}.header nav a:after{display:none}.header.scrolled,.menu-open .header{background:#142129f0!important;backdrop-filter:blur(12px)}.contact-link{border:0!important;padding:0!important}.contact-link span{font-size:20px}.mobile-nav{background:#142129!important;color:#fff}.mobile-nav a{font-family:'Manrope',Arial,sans-serif!important;text-transform:none!important;font-size:30px!important;letter-spacing:-.03em}.studio-link{font-size:13px;white-space:normal;max-width:100%;line-height:1.5}.studio-link span{font-size:20px}.outline-link{font-size:13px}.case-opening,.case-index,.services-opening{padding-top:160px;padding-bottom:75px;background:#142129}.case-opening h1,.case-index h1,.services-opening h1{margin:35px 0}.case-opening h1 span,.case-index h1 span,.services-opening h1 span{color:#bdccd3}.case-topline{font-size:11px;letter-spacing:.04em}.case-deck{margin-top:40px}.case-scope-line{color:#bac9d0}.case-client-logo{width:190px;height:75px;object-fit:contain;object-position:left center;margin-bottom:35px}.case-opening>.case-client-logo{margin-bottom:30px}.case-client-logo[src*="regulator"]{width:183px;height:84px}.directory-logo{width:165px;height:65px;object-fit:contain;object-position:left center;margin-bottom:25px}.case-card-copy .directory-logo{filter:brightness(0);width:150px}.case-project-entry{background:#1b303b!important;border-color:#425761!important}.case-project-entry h2{margin:25px 0!important}.case-project-entry>.eyebrow{display:none}.case-card-copy h2{font-size:clamp(30px,3.5vw,50px)!important}.case-brief,.case-team,.case-connections,.service-chapter,.broker-services{background:#f5f6f4;color:#222d33}.case-lead,.case-thread,.case-close,.partnership,.motion-section{background:#1b303b}.case-lead p,.partnership p,.motion-section p{color:#c2cdd2}.case-thread{color:#eff3f5}.case-thread article{border-color:#48606b}.case-thread p{color:#c2cdd2}.case-pad{padding-top:85px;padding-bottom:85px}.case-section-heading{gap:45px}.case-section-heading h2{max-width:700px}.case-team .credit-row{border-color:#cad2d6}.case-team .credit-row p{color:#596970}.chapter-title>p,.chapter-body li{color:#53656f}.service-chapter{border-color:#cbd4d8}.service-art{border-color:#cbd4d8}.services-opening-bottom>p{font-size:18px;color:#c4cfd5}.chapter-body>p{font-size:16px}.broker-heading h2{font-size:clamp(32px,4vw,58px)!important}.broker-listing{background:#e8eef0!important;color:#142129}.broker-intro,.broker-heading p{color:#586c77!important}.about-section h1{margin:30px 0}.about-section .portrait{transform:none}.agency-lead{background:#e8eef0;color:#142129}.agency-lead p{color:#52656f}.sub-hero h1{max-width:900px}.sub-title p{font-size:16px}.page-intro h2{max-width:700px}.next-section,.capabilities{background:#eef2f3!important;color:#142129}.cinema-contact{padding:90px var(--pad);background:#16252d;color:white}.cinema-contact p{font-size:16px;color:#bac5cb}.cinema-contact>a{display:inline-block;font:400 clamp(40px,6vw,80px)/1.2 'Manrope',sans-serif;margin-top:15px;letter-spacing:-.04em;border-bottom:1px solid #75858d;padding-bottom:8px}footer{background:#16252d;color:#c6cdd1}.footer-brand{font-family:'Manrope',sans-serif!important;font-size:20px!important}.footer-brand span{font-size:10px}.contact-page h1{margin-bottom:40px}.contact-details a{font-size:clamp(18px,2vw,28px)}a:focus-visible,button:focus-visible{outline:2px solid #64aacd;outline-offset:6px}.case-video-grid{gap:65px 30px}.video-caption h3{font-size:20px!important}.video-caption .eyebrow{color:#a8bcc7}.video-stage{border:1px solid #ffffff20}.video-load img{transition:transform 1s}.video-load:hover img{transform:scale(1.04)}
/* Client ribbon. The second visual set is excluded from keyboard / screen readers. */
.client-ticker{background:#16252d;color:white;padding:32px 0 44px;overflow:hidden}.ticker-heading{display:flex;align-items:center;justify-content:space-between;margin:0 var(--pad) 30px}.ticker-heading p{font-size:12px;color:#bfccd2}.ticker-pause{font-size:11px;color:#bfccd2;background:none;border:0;border-bottom:1px solid #61757f;padding:5px 0}.ticker-window{overflow:hidden}.ticker-track{width:max-content;display:flex;animation:client-drift 32s linear infinite}.ticker-set{display:flex;justify-content:space-around;align-items:center;gap:6vw;min-width:100vw;padding:0 3vw}.ticker-set a{display:flex;align-items:center;justify-content:center;min-width:190px;height:85px}.ticker-set img{width:180px;height:65px;object-fit:contain}.ticker-set img[src*="regulator"]{width:145px;height:67px}.client-ticker:hover .ticker-track,.client-ticker:focus-within .ticker-track,.client-ticker.is-paused .ticker-track{animation-play-state:paused}@keyframes client-drift{to{transform:translateX(-50%)}}
/* Native sticky passage — one measured scroll progress, no easing loop or hijacking. */
.horizon-passage{height:190svh;position:relative;background:#102d38}.horizon-frame{height:100svh;min-height:650px;position:sticky;top:0;overflow:hidden;isolation:isolate;color:white}.horizon-frame>img,.horizon-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.horizon-air{z-index:-3;object-position:center 60%}.horizon-water{z-index:-2;clip-path:inset(0 calc((1 - var(--passage,0))*100%) 0 0);transform:scale(1.02)}.horizon-shade{z-index:-1;background:linear-gradient(0deg,#041821b3,transparent 55%,#04182133)}.horizon-title{position:absolute;bottom:125px;left:var(--pad);right:var(--pad)}.horizon-title>p{font-size:13px;margin-bottom:25px}.horizon-title h2{font-size:clamp(35px,4.5vw,68px)!important}.horizon-bottom{position:absolute;bottom:35px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;align-items:center;font-size:12px;gap:20px}.horizon-bottom>span{display:flex;align-items:center;gap:15px;font-size:11px}.horizon-bottom i{width:100px;height:1px;background:#ffffff50;position:relative}.horizon-bottom i:after{content:'';display:block;height:2px;width:calc(var(--passage,0)*100%);background:#fff}.horizon-bottom a{border-bottom:1px solid #ffffff80;padding-bottom:8px}.cinema-project{overflow:hidden}.project-materials{perspective:1200px}.project-materials .material-web{transform:rotateY(5deg)}.project-materials .material-print{transform:rotate(-3deg)}.project-materials .material-production{transform:rotateY(-5deg)}
/* Regulator: an immersive film opening, followed by the actual work. */
.regulator-hero{position:relative;height:100svh;min-height:680px;overflow:hidden;background:#12252d;color:white;isolation:isolate}.regulator-hero-image,.regulator-hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.regulator-hero-shade{z-index:-1;background:linear-gradient(0deg,#071d29e6,transparent 80%),linear-gradient(90deg,#071d294d,transparent)}.regulator-back{position:absolute;top:140px;left:var(--pad);font-size:12px}.regulator-hero-copy{position:absolute;left:var(--pad);bottom:115px}.regulator-hero-copy .case-client-logo{margin-bottom:28px}.regulator-hero-copy h1{font-size:clamp(44px,5.3vw,80px)!important}.regulator-hero-copy>p{font-size:13px;margin-top:22px}.regulator-watch{position:absolute;right:9vw;bottom:190px;display:flex;align-items:center;gap:22px;border:0;color:white;background:transparent;font-size:14px}.regulator-watch>span{display:grid;place-items:center;width:95px;height:95px;border:1px solid #ffffffa0;border-radius:50%;background:#ffffff12;backdrop-filter:blur(8px);transition:background .25s,transform .25s;font-size:20px}.regulator-watch:hover>span{transform:scale(1.08);background:#ffffff30}.regulator-hero-foot{position:absolute;bottom:35px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;border-top:1px solid #ffffff40;padding-top:20px;font-size:11px}.production-note{padding:100px var(--pad);display:grid;grid-template-columns:1fr 1fr;gap:9vw;background:#f5f6f4;color:#142129}.production-note p{font-size:16px;color:#536772;max-width:500px}.production-note p+p{margin-top:20px}.regulator-page .case-videos{background:#12252e}.regulator-page .case-section-heading{margin-bottom:50px}.regulator-page .case-video-grid{display:grid;grid-template-columns:1fr 1fr}.regulator-page .video-featured{grid-column:1/-1}.regulator-page .video-featured .video-stage{aspect-ratio:21/9}.regulator-page .video-featured .video-load img{object-fit:cover}.film-dialog{padding:60px 4vw 25px;border:0;width:min(1400px,96vw);max-width:96vw;max-height:95svh;background:#101b22;color:white;overflow:auto}.film-dialog::backdrop{background:#020b11ed;backdrop-filter:blur(10px)}.film-close{position:absolute;right:4vw;top:18px;color:white;background:none;border:0;padding:8px;font-size:13px}.film-dialog-player{aspect-ratio:16/9}.film-dialog-player iframe{width:100%;height:100%;border:0}.film-dialog>p{font-size:12px;margin-top:20px;color:#b4c5ce}
@media(max-width:700px){.header{height:85px!important}.header .brand{width:90px;height:55px}body h1{font-size:42px!important}body h2{font-size:32px!important}body h3{font-size:23px!important}.case-opening,.case-index,.services-opening{padding-top:125px;padding-bottom:55px}.case-pad{padding-top:55px;padding-bottom:55px}.case-section-heading{gap:25px}.case-client-logo{width:155px;height:60px}.case-project-entry h2{font-size:30px!important}.case-deck{gap:25px}.studio-link{white-space:normal}.horizon-passage{height:155svh}.horizon-frame{min-height:600px}.horizon-title{bottom:125px}.horizon-title h2{font-size:36px!important}.horizon-bottom{flex-wrap:wrap;bottom:27px;gap:20px;font-size:11px}.horizon-bottom>span{display:none}.horizon-air{object-position:45% center}.ticker-set{gap:45px;min-width:900px;padding:0 35px}.ticker-set a{min-width:210px}.client-ticker{padding:25px 0}.ticker-heading{margin-bottom:15px}.regulator-hero{min-height:720px}.regulator-back{top:110px}.regulator-hero-copy{bottom:225px}.regulator-hero-copy h1{font-size:44px!important}.regulator-watch{left:var(--pad);right:auto;bottom:100px}.regulator-watch>span{width:64px;height:64px;font-size:15px}.regulator-hero-foot{font-size:9px;gap:15px}.regulator-hero-copy .case-client-logo{width:145px;height:67px;margin-bottom:20px}.production-note{padding:60px var(--pad);grid-template-columns:1fr;gap:30px}.regulator-page .case-video-grid{grid-template-columns:1fr}.regulator-page .video-featured .video-stage{aspect-ratio:16/9}.regulator-page .video-featured{grid-column:auto}.film-dialog{padding:60px 15px 20px}.film-dialog>p{font-size:11px}.cinema-contact{padding:65px var(--pad)}.project-materials .material-web,.project-materials .material-production{transform:none}}
@media(prefers-reduced-motion:reduce){.ticker-track{animation:none}.ticker-window{overflow-x:auto}.ticker-set[aria-hidden]{display:none}.ticker-set{min-width:100%;flex-wrap:wrap;gap:25px;padding:0 20px}.ticker-pause{display:none}.horizon-passage{height:100svh}.horizon-water{clip-path:inset(0 0 0 50%);transform:none}.horizon-frame{position:relative}.horizon-bottom i:after{width:50%}.regulator-watch>span,.video-load img{transition:none}}
.ticker-track{animation-duration:65s}.ticker-set{min-width:0;gap:70px;padding:0 35px;white-space:nowrap}.ticker-client{font:400 clamp(22px,2.4vw,34px)/1.3 'Manrope',Arial,sans-serif;letter-spacing:-.04em;color:#e5edef}.ticker-client:after{content:'·';margin-left:70px;color:#6c8592}.ticker-set .ticker-client:last-child:after{display:none}@media(prefers-reduced-motion:reduce){.ticker-set{white-space:normal;justify-content:flex-start;gap:25px 40px;padding:0 var(--pad)}.ticker-client{font-size:20px}.ticker-client:after{display:none}}
.regulator-hero-shade{background:linear-gradient(0deg,#071d29e6,transparent 80%),linear-gradient(180deg,#071d2970,transparent 30%)}
.broker-media,.case-feature,.case-social,.case-videos{background:#1b303b}.broker-heading>p{color:#c4d1d8!important}.case-print{background:#e8eef0}.case-print .sample-credit,.case-print figcaption{color:#536772}.social-channels p,.results-disclaimer,.results-footnote,.result-platform,.results-grid article p,.case-card-copy>p{color:#c2cfd7}.social-channels>div,.social-results{border-color:#607987}.results-label .sample-status{color:#d5e7f1;border-color:#7895a4}.results-grid strong{font-family:'Manrope',Arial,sans-serif;font-weight:400;font-size:clamp(45px,7vw,95px)}.case-card-copy .directory-logo{filter:none}.art-note{font-family:'Manrope',Arial,sans-serif!important;font-weight:400!important;font-size:clamp(24px,3vw,38px)!important;line-height:1.2!important}
/* Moving image openings: poster remains until actual playback begins. */
.ambient-player{position:absolute;inset:0;overflow:hidden;opacity:0;transition:opacity .6s;pointer-events:none;z-index:-2}.ambient-playing .ambient-player{opacity:1}.ambient-player iframe{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:0;max-width:none}.regulator-hero-image{z-index:-3}.ambient-toggle{position:absolute;right:var(--pad);top:135px;background:#0c253744;color:white;border:1px solid #ffffff50;padding:10px 14px;font-size:11px;z-index:2}.ambient-toggle[hidden]{display:none}.motion-feature{position:relative;isolation:isolate;height:95svh;min-height:650px;overflow:hidden;color:white;background:#12252d}.motion-feature-poster,.motion-feature-shade{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;z-index:-3}.motion-feature-shade{z-index:-1;background:linear-gradient(0deg,#031925ce,transparent 70%)}.motion-feature-copy{position:absolute;left:var(--pad);bottom:85px;right:var(--pad)}.motion-feature-copy>p{font-size:13px;margin-bottom:25px}.motion-feature-copy h2{font-size:clamp(46px,6vw,90px)!important}.motion-feature .ambient-toggle{top:auto;bottom:40px}.cinema-home .reel-copy h1{font-size:clamp(48px,6.6vw,100px)!important;letter-spacing:-.055em!important}.cinema-home .reel-copy{bottom:110px}.cinema-home .cinema-intro{padding-top:75px;padding-bottom:80px}.cinema-home .project-materials{gap:45px}.cinema-home .client-ticker{padding-top:20px;padding-bottom:28px}.cinema-home .ticker-heading{margin-bottom:20px}
@media(max-width:700px){.ambient-toggle{top:105px;font-size:10px;padding:8px 10px}.motion-feature{min-height:600px;height:85svh}.motion-feature-copy{bottom:105px}.motion-feature-copy h2{font-size:46px!important}.cinema-home .reel-copy h1{font-size:48px!important;white-space:normal}.cinema-home .cinema-intro{padding-top:55px;padding-bottom:55px}.cinema-home .project-materials{gap:25px 18px}}
@media(prefers-reduced-motion:reduce){.ambient-player{transition:none}}
