@font-face{font-family:Inter;src:url('assets/inter.woff2');font-weight:100 900;font-display:swap}
:root{--ink:#090c13;--silver:#dce1e9;--blue:#175cff;--muted:#a7b4c8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--ink);color:#f8faff;font:400 16px/1.6 Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;color:inherit}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:3px solid #397aff;outline-offset:5px}[hidden]{display:none!important}h1,h2,h3,p{margin:0}img{display:block;max-width:100%}button{border-radius:0}button:disabled{opacity:.4}.skip{position:absolute;top:-100px;left:20px;z-index:20;background:var(--blue);padding:14px}.skip:focus{top:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}header{position:absolute;top:0;left:0;width:100%;z-index:8;display:flex;align-items:center;justify-content:space-between;padding:26px 5%;gap:24px}.brand img{width:150px;height:auto;filter:invert(1)}header nav{display:flex;gap:30px;font-size:14px}header a:hover{color:#87aeff}.header-link{font-size:14px;border-bottom:1px solid #afb7c8;padding-bottom:7px}.journey{height:360svh;background:var(--ink)}.viewport{position:sticky;top:0;height:100svh;min-height:680px;overflow:hidden;isolation:isolate}#canvas-stage{position:absolute;inset:0}#canvas-stage canvas{display:block;width:100%;height:100%}#video-pool{position:absolute;inset:0;pointer-events:none}#video-pool video{width:100%;height:100%;object-fit:cover}.webgl-ready #video-pool{width:1px;height:1px;opacity:0;overflow:hidden}.entry-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#04070ded 0%,#070b1360 60%,transparent),linear-gradient(0deg,#050912bb,transparent 55%)}.chapter{position:absolute;z-index:3;left:5%;top:24%;pointer-events:none;will-change:opacity,transform}.chapter .eyebrow{margin-bottom:22px}.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:550;color:#b4c4da}.chapter h1{font-size:clamp(50px,6.5vw,99px);font-weight:500;line-height:1.04;letter-spacing:-.06em}.intro h1 span{color:#d7dfe9}.subtitle{font-size:clamp(16px,1.5vw,23px);letter-spacing:-.025em;margin-top:20px}.action,.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;background:var(--blue);border:1px solid #6593ff;padding:14px 20px;font-size:14px;pointer-events:auto;box-shadow:0 0 35px #175cff30;color:#fff}.action>span{font-size:22px;line-height:1}.action:hover,.button:hover{background:#3775ff}.intro-actions{display:flex;align-items:center;gap:26px;margin-top:26px}.text-link{font-size:14px;border:0;border-bottom:1px solid currentColor;background:none;padding:0 0 5px;display:inline-block;pointer-events:auto;cursor:pointer}.opening-films{display:flex;gap:22px;margin-top:30px;pointer-events:auto}.opening-films button{display:flex;align-items:center;gap:12px;text-align:left;padding:0;background:none;border:0}.opening-films img{width:52px;height:76px;object-fit:cover;border:1px solid #76859d;transition:transform .2s}.opening-films button:hover img{transform:translateY(-4px)}.opening-films span{display:grid;gap:2px}.opening-films small{font-size:10px;letter-spacing:.08em;color:#b0c1d9}.opening-films strong{font-size:14px;font-weight:500}.opening-films em{font-size:11px;color:#8fb4ff;font-style:normal}.build,.dive{opacity:0;visibility:hidden;top:29%}.chapter h2{font-size:clamp(35px,4vw,60px);font-weight:450;line-height:1.1;letter-spacing:-.05em}.build h2 span{color:#7da6ff}.build>p:last-child{font-size:16px;color:#b5c4d8;line-height:1.7;margin-top:24px}.dive{top:20%;left:0;width:100%;text-align:center}.dive h2{font-size:clamp(32px,4vw,62px);text-shadow:0 2px 22px #000}.dive h2 span{color:#ccd8eb}.stage-status{position:absolute;left:5%;bottom:34px;z-index:4;display:flex;align-items:center;gap:20px;font-size:11px;letter-spacing:.08em}.progress{width:100px;height:2px;background:#8090a040}.progress i{display:block;width:0;height:100%;background:#4486ff;box-shadow:0 0 14px #125aff}.scroll-label{color:#adbcd0;font-size:10px}.playback{position:absolute;right:5%;bottom:23px;z-index:5;display:flex;gap:12px}.playback button{font-size:12px;border:1px solid #66708950;background:#0b1124aa;padding:11px 12px;color:#e0e8f8}.section{padding:84px 5%}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:38px}.section h2{font-size:clamp(35px,4.3vw,64px);font-weight:500;line-height:1.08;letter-spacing:-.05em;margin-top:16px}.section h2 span{color:#7e8ba1}.section-heading>p{font-size:14px;color:var(--muted);max-width:330px}.showreels{padding-top:64px;background:linear-gradient(145deg,#121929,#090c13 70%);border-top:1px solid #273651}.showreel-grid{display:grid;grid-template-columns:2.8fr 1fr 1fr;gap:16px;align-items:stretch}.showreel-grid button,.studio-visual button{padding:0;border:1px solid #45506a;background:#05070c;position:relative;overflow:hidden;text-align:left;min-width:0}.showreel-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.showreel-main{aspect-ratio:16/9}.portrait-feature img{position:absolute;inset:0}.showreel-main:hover img,.portrait-feature:hover img,.studio-visual button:hover img{transform:scale(1.03)}.showreel-caption{position:absolute;inset:auto 0 0;padding:46px 22px 22px;background:linear-gradient(transparent,#030810ed);display:grid;gap:5px;color:#fff}.showreel-caption small{font-size:10px;letter-spacing:.09em}.showreel-caption strong{font-size:clamp(18px,2vw,28px);font-weight:500;line-height:1.2}.play-disc{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;display:grid;place-items:center;border:1px solid #bacbf080;border-radius:50%;background:#0c142980;color:white;font-size:16px;padding-left:3px;backdrop-filter:blur(8px)}.showreel-main .play-disc{width:72px;height:72px;background:#175cffd9}.work{background:var(--silver);color:#121826;position:relative}.work:before{content:"";position:absolute;top:0;left:5%;right:5%;height:2px;background:var(--blue);box-shadow:0 0 25px #155affaa}.work .eyebrow{color:#4d5c76}.work .section-heading>p{color:#4b586f;font-size:12px;letter-spacing:.06em}.case-toolbar{border-top:1px solid #9aa6b9;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:12px;letter-spacing:.09em}.case-toolbar b{margin-left:15px;color:#175cff}.case-toolbar input{border:0;border-bottom:1px solid #8a96a9;background:none;padding:10px 0;width:240px;color:#152136;font-size:14px;letter-spacing:0;max-width:100%}.case-toolbar input::placeholder{color:#5b6679}.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}.film-card{min-width:0;border:0;background:none;text-align:left;padding:0;color:#152136}.film-image{position:relative;aspect-ratio:16/9;overflow:hidden;background:#131a26;border:1px solid #fff}.film-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.film-card:hover img{transform:scale(1.045)}.film-image span{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:36px;height:36px;background:#115cff;color:white;border-radius:50%;font-size:11px;padding-left:2px}.film-image small{position:absolute;left:14px;bottom:14px;background:#050a15bb;color:#fff;font-size:11px;padding:3px 7px}.film-card h3{font-size:14px;font-weight:550;margin:12px 0 0;line-height:1.45;min-height:2.9em}.pagination{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #a6b0c0;margin-top:28px;padding-top:20px;gap:20px}.pagination>span{font-size:12px;letter-spacing:.06em}.pagination>div{display:flex;gap:8px}.pagination button,.carousel-controls button{border:1px solid #8895ac;background:none;color:inherit;width:46px;height:44px;font-size:14px}.pagination button[aria-pressed=true]{background:#125cff;color:#fff;border-color:#125cff}.carousel-controls{display:flex;gap:10px}.carousel-controls button{font-size:22px}.verticals{overflow:hidden}.verticals .section-heading h2{font-size:clamp(34px,4vw,57px)}.reel-track{display:flex;gap:18px;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#175cff #172034;padding-bottom:20px;margin-right:-5.6%;padding-right:5.6%}.reel-card{position:relative;flex:0 0 19%;min-width:180px;aspect-ratio:9/16;scroll-snap-align:start;padding:0;border:1px solid #41506a;background:#131926;overflow:hidden}.reel-card img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.reel-card:hover img{transform:scale(1.04)}.reel-play{position:absolute;right:16px;top:16px;display:grid;place-items:center;background:#175cff;width:36px;height:36px;border-radius:50%;font-size:11px;padding-left:2px}.reel-caption{display:flex;justify-content:space-between;position:absolute;left:0;bottom:0;right:0;padding:35px 16px 16px;background:linear-gradient(transparent,#060b15dd);font-size:11px;letter-spacing:.1em}.carousel-note{display:flex;justify-content:space-between;font-size:12px;color:#a6b4c9;margin-top:14px}.partners{background:#cfd6e1;color:#111927;padding-top:40px;padding-bottom:45px}.partners .eyebrow{color:#3e4d65}.partners-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.partner-tabs{display:flex;gap:20px}.partner-tabs button{font-size:14px;background:none;border:0;border-bottom:2px solid transparent;color:#495870;padding:8px 0}.partner-tabs button[aria-pressed=true]{color:#104fda;border-color:#175cff}.logo-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:25px}.logo-grid>div{display:grid;place-items:center;height:85px;border:1px solid #b0bacb}.logo-grid img{max-width:78%;max-height:52px;object-fit:contain;filter:grayscale(1)}.studio{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:center}.studio-visual{max-width:490px;width:100%;margin:auto}.studio-visual button{width:100%;aspect-ratio:4/5;display:block}.studio-visual img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.studio-visual .showreel-caption{padding:60px 30px 30px}.studio-visual .play-disc{width:76px;height:76px;background:#175cffcf}.studio-copy h2{font-size:clamp(34px,3.8vw,55px);margin-bottom:30px}.studio-copy p{color:#a7b4c8;margin-top:18px}.studio-copy .lead{font-size:20px;color:#e0e7f2}.studio-copy details{margin-top:28px}details{border-top:1px solid #46536b;padding-top:18px}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;color:#dce6fa}summary::-webkit-details-marker{display:none}details p{margin-top:18px}details .text-link{margin-top:20px;color:#8fb3ff}.services{border-top:1px solid #303d53;background:#111827}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #50617a}.services-grid article{padding:30px 30px 0 0}.services-grid article+article{border-left:1px solid #35435c;padding-left:30px}.service-no{font-size:11px;letter-spacing:.1em;color:#8eb0ff}.services h3{font-size:27px;font-weight:450;letter-spacing:-.03em;line-height:1.2;margin:30px 0 22px}.services-grid p{font-size:16px;color:#bdc8da;min-height:78px}.services ul{list-style:none;padding:20px 0 0;margin:0;color:#96a7c0;font-size:14px;line-height:1.7}.services li{margin-bottom:7px}.creators{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;background:linear-gradient(135deg,#18295c,#0d1427 65%)}.creator-heading p{color:#b8c7df;margin:25px 0;max-width:430px}.creator-heading .button{margin-top:8px}.creator-copy{align-self:center;color:#b6c6df}.creator-copy p{margin-bottom:20px}.creator-stat{display:flex;align-items:center;gap:26px;margin-bottom:28px;color:#dfe9fc}.creator-stat strong{font-size:88px;line-height:1;font-weight:400;letter-spacing:-.06em}.creator-stat span{font-size:12px;line-height:1.7;letter-spacing:.07em}.creator-copy details p{font-size:14px;margin-top:20px}.contact{background:var(--silver);color:#111b2d}.contact .eyebrow{color:#51627c}.contact-head{display:flex;justify-content:space-between;align-items:end;gap:30px}.contact h2{margin-bottom:0}.contact-info{display:flex;justify-content:space-between;gap:30px;align-items:start;padding:50px 0;border-bottom:1px solid #a6b3c7}.contact-email{font-size:clamp(19px,2.4vw,34px);letter-spacing:-.035em}.contact-info address{font-style:normal;font-size:14px;color:#4b5b74}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:32px}.footer-bottom .brand img{filter:none;width:125px}.footer-bottom nav{display:flex;gap:23px;flex-wrap:wrap;font-size:12px;color:#4b5b74}.back-top{font-size:28px}.contact .button{box-shadow:none}dialog{background:#0b101c;color:#fff;border:1px solid #66738b;width:min(1050px,94vw);padding:16px;max-height:94svh}dialog::backdrop{background:#050811e8;backdrop-filter:blur(14px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:12px}.dialog-head h2{font-size:16px;font-weight:450}.dialog-head button{background:none;border:1px solid #52617a;width:44px;height:44px;flex-shrink:0;font-size:26px}#player-host{aspect-ratio:16/9;background:#000;position:relative}#player-host iframe,#player-host video{width:100%;height:100%;border:0;object-fit:contain;display:block}dialog>a{display:block;text-align:right;margin-top:15px;font-size:14px;color:#94b7ff}.portrait-player{width:min(470px,94vw)}.portrait-player #player-host{aspect-ratio:9/16;max-height:72svh;width:100%}.player-error{position:absolute;inset:40% 20px auto;color:#fff;text-align:center;background:#131b2a;padding:16px}.reduced .journey{height:100svh;min-height:680px}.reduced .viewport{position:relative}.reduced .scroll-label{display:none}.reduced .progress{display:none}
@media(min-width:1500px){.section{padding-left:max(5%,calc((100vw - 1500px)/2));padding-right:max(5%,calc((100vw - 1500px)/2))}}
@media(max-width:1000px){header nav{gap:18px}.stage-status .scroll-label{display:none}.showreel-grid{grid-template-columns:2fr 1fr 1fr}.showreel-caption{padding:35px 14px 16px}.showreel-caption small{font-size:9px}.showreel-main{aspect-ratio:4/3}.section{padding:64px 5%}.section-heading{gap:20px}.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.logo-grid{grid-template-columns:repeat(4,1fr)}.studio{gap:5%}.services-grid article{padding-right:20px}.services-grid article+article{padding-left:20px}.services h3{font-size:23px}.services-grid p{min-height:110px}.creators{gap:6%}.contact-info{flex-wrap:wrap}.contact-info address{min-width:220px}.footer-bottom nav{gap:14px}}
@media(max-width:760px){header{padding:22px;gap:18px}.brand img{width:118px}header nav{display:none}.header-link{font-size:12px}.journey{height:310svh}.viewport{min-height:680px}.chapter{left:22px;top:23%;max-width:calc(100% - 44px)}.chapter .eyebrow{font-size:10px;margin-bottom:18px}.chapter h1{font-size:clamp(43px,10.1vw,70px)}.subtitle{font-size:16px;max-width:270px;margin-top:18px}.intro-actions{gap:18px;margin-top:24px}.action{font-size:12px;padding:13px 14px;gap:20px}.intro-actions .text-link{font-size:12px}.opening-films{gap:22px;margin-top:26px}.opening-films img{width:43px;height:67px}.opening-films small{font-size:8px;letter-spacing:.03em}.opening-films strong{font-size:12px}.opening-films em{font-size:10px}.opening-films button{gap:9px}.build{top:18%;max-width:320px}.chapter h2{font-size:34px}.build>p:last-child{font-size:14px;margin-top:16px}.dive{left:22px;top:20%;text-align:left;width:auto;max-width:calc(100% - 44px)}.dive h2{font-size:32px}.stage-status{left:22px;bottom:85px;font-size:10px;gap:14px}.progress{width:65px}.playback{left:22px;right:22px;bottom:25px;justify-content:space-between;gap:10px}.playback button{font-size:11px;padding:10px}.section{padding:48px 22px}.section-heading{align-items:start;margin-bottom:28px;gap:20px}.section h2{font-size:36px}.section-heading>.eyebrow{font-size:10px}.section-heading>p{display:none}.section .eyebrow{font-size:10px}.showreel-grid{grid-template-columns:1fr 1fr;gap:12px}.showreel-main{grid-column:1/-1;aspect-ratio:16/9}.portrait-feature{aspect-ratio:3/4}.showreel-caption strong{font-size:19px}.portrait-feature .play-disc{width:44px;height:44px}.showreel-caption small{font-size:9px}.case-toolbar{align-items:start;font-size:10px;gap:16px}.case-toolbar>span{padding-top:12px;white-space:nowrap}.case-toolbar b{margin-left:5px}.case-toolbar input{width:165px;font-size:12px}.case-grid{gap:20px 12px}.film-card h3{font-size:12px;line-height:1.45}.film-image span{right:8px;bottom:8px;width:28px;height:28px;font-size:9px}.film-image small{left:7px;bottom:8px;font-size:9px;padding:2px 4px}.pagination{margin-top:24px}.pagination>span{font-size:10px}.pagination button{width:39px;height:42px}.verticals .section-heading h2{font-size:32px}.verticals .section-heading{align-items:end}.carousel-controls{gap:6px}.carousel-controls button{width:36px;height:40px}.reel-track{gap:12px;margin-right:-22px;padding-right:22px}.reel-card{flex-basis:59%;min-width:0}.partners-heading{align-items:start;gap:15px}.partners-heading>.eyebrow{max-width:160px}.partner-tabs{gap:16px}.partner-tabs button{padding-top:0;font-size:12px}.logo-grid{grid-template-columns:repeat(3,1fr);gap:6px}.logo-grid>div{height:65px}.logo-grid img{max-height:42px}.studio{grid-template-columns:1fr;gap:34px}.studio-visual{max-width:none}.studio-visual button{aspect-ratio:4/3}.studio-visual img{object-position:50% 30%}.studio-copy h2{margin-bottom:24px}.studio-copy .lead{font-size:19px}.services-grid{grid-template-columns:1fr}.services-grid article,.services-grid article+article{padding:27px 0;border-left:0;border-bottom:1px solid #35435c}.services h3{font-size:28px;margin:20px 0}.services-grid p{min-height:0}.services .section-heading{display:block}.services .section-heading .text-link{margin-top:25px}.creators{grid-template-columns:1fr;gap:42px}.creator-stat strong{font-size:76px}.contact-head{display:block}.contact-head .button{margin-top:28px}.contact-info{display:grid;gap:22px;padding:35px 0}.footer-bottom{align-items:start;gap:24px;flex-wrap:wrap}.footer-bottom nav{order:3;width:100%;font-size:12px}.entry-shade{background:linear-gradient(90deg,#04070dcc,transparent),linear-gradient(0deg,#050912ed,transparent 90%)}.dialog-head h2{font-size:14px}.portrait-player #player-host{max-height:69svh}}
@media(max-width:370px){.chapter h1{font-size:39px}.opening-films{gap:10px}.opening-films img{width:34px;height:57px}.intro-actions{gap:12px}.action{gap:8px}.case-toolbar{flex-wrap:wrap}.case-toolbar label,.case-toolbar input{width:100%}.stage-status{font-size:9px}.section h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.journey{height:100svh;min-height:680px}.viewport{position:relative}}

@media(max-height:760px){.intro{top:19%}.chapter h1{font-size:clamp(43px,5.4vw,76px)}.intro .eyebrow{margin-bottom:15px}.intro-actions{margin-top:20px}.opening-films{margin-top:20px}.opening-films img{height:60px;width:40px}}
@media(max-width:760px) and (max-height:760px){.intro{top:19%}.chapter h1{font-size:43px}.subtitle{margin-top:14px}.opening-films{margin-top:20px}.opening-films img{height:60px;width:38px}}
/* Project covers and editorial case presentations. */
.case-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:26px 18px}.film-card{grid-column:span 3;min-width:0;background:#c9d1df;border:1px solid #f4f7fb}.film-card.case-lead{grid-column:span 6}.case-cover{display:block;width:100%;padding:0;border:0;position:relative;aspect-ratio:4/3;text-align:left;background:#0b1420;overflow:hidden}.case-lead .case-cover{aspect-ratio:19/10}.case-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#050b17ed,transparent 75%)}.case-cover img{width:100%;height:100%;object-fit:cover;transition:transform .6s,filter .6s}.film-card:hover .case-cover img{transform:scale(1.055);filter:saturate(1.15)}.case-number{position:absolute;left:18px;top:17px;z-index:1;font-size:10px;letter-spacing:.11em;color:white;background:#0913228c;padding:5px 8px}.case-cover-title{position:absolute;z-index:1;left:18px;bottom:21px;max-width:calc(100% - 65px);font-size:19px;line-height:1.15;font-weight:500;letter-spacing:-.035em;color:#f2f6ff}.case-lead .case-cover-title{font-size:clamp(23px,2.5vw,36px);max-width:75%;left:25px;bottom:26px}.case-open-arrow{position:absolute;z-index:2;right:18px;bottom:19px;color:#fff;font-size:25px}.case-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:15px 15px}.case-card-bottom>span{font-size:9px;letter-spacing:.06em;color:#52617a}.case-card-bottom button{padding:8px 9px;border:1px solid #95a5bf;background:transparent;color:#10203a;font-size:11px;white-space:nowrap;display:flex;align-items:center;gap:12px}.case-card-bottom button:hover{background:#175cff;color:#fff;border-color:#175cff}.case-lead .case-card-bottom{padding:17px 23px}.case-lead .case-card-bottom>span{font-size:11px}.case-lead .case-card-bottom button{font-size:13px;padding:9px 14px}.case-detail{width:min(1320px,96vw);padding:22px;background:#dce1e9;color:#111d30;border:1px solid #f4f8ff}.case-detail .dialog-head{border-bottom:1px solid #a5b1c6;padding-bottom:18px;margin-bottom:22px}.case-detail .dialog-head h2{font-size:11px;letter-spacing:.12em}.case-detail #player-host{aspect-ratio:auto;background:transparent}.case-detail-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,1fr);gap:32px;align-items:start}.case-detail-media{aspect-ratio:16/10;background:#03070e;position:relative;overflow:hidden}.case-detail-media>button{border:0;padding:0;width:100%;height:100%;background:none;position:relative;display:block}.case-detail-media img{width:100%;height:100%;object-fit:cover}.case-detail-media iframe{width:100%;height:100%;border:0;display:block}.case-detail-media .play-disc{width:70px;height:70px;background:#175cffe8;border-color:#7a9fff}.detail-play-label{position:absolute;bottom:0;left:0;width:100%;padding:35px 20px 20px;background:linear-gradient(transparent,#050c1bdb);color:#fff;font-size:11px;letter-spacing:.09em;text-align:left}.case-detail-copy .eyebrow{color:#526b90;font-size:10px}.case-detail-copy h2{font-size:clamp(27px,3vw,43px);font-weight:500;letter-spacing:-.045em;line-height:1.07;margin:18px 0 25px;overflow-wrap:anywhere}.case-story{border-top:1px solid #a1adc1;padding-top:20px;margin-bottom:30px}.detail-label{font-size:10px;letter-spacing:.12em;color:#536984}.case-story p{margin-top:12px;font-size:16px;line-height:1.7}.story-pending{color:#5c6a81}.deliverables{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:0}.deliverables li{border:1px solid #a4b2c8;padding:5px 9px;font-size:12px}.case-detail-copy .action{width:100%;font-size:13px}.detail-navigation{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:30px;border-top:1px solid #a1adc1;padding-top:18px}.detail-navigation button{background:none;border:0;padding:8px 0;color:#203557;font-size:12px}.detail-navigation>span{font-size:10px;color:#69788e}.case-detail>a{color:#345d9b;font-size:12px;margin-top:22px}.partners{background:#101622;color:#f0f5ff;overflow:hidden}.partners .eyebrow{color:#9fb0cd}.partners-heading{align-items:end;margin-bottom:35px}.partners h2{font-size:clamp(34px,4vw,56px)}.partners h2 span{color:#8a9bb7}.partners #logo-motion{font-size:12px;color:#b7c8e5}.brand-line-label{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.14em;color:#899bb9;padding:20px 0;border-top:1px solid #34445c}.agency-label{margin-top:30px}.logo-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.logo-belt{width:max-content;display:flex;animation:logo-drift var(--logo-duration,60s) linear infinite;will-change:transform}.logo-sequence{display:flex;flex-shrink:0;align-items:center}.moving-logo{width:180px;height:95px;display:grid;place-items:center;padding:20px 24px;flex-shrink:0}.moving-logo img{max-width:100%;max-height:58px;width:auto;object-fit:contain;filter:grayscale(1);opacity:.9}.logo-marquee.reverse .logo-belt{animation-direction:reverse}.logo-marquee:hover .logo-belt,.logos-paused .logo-belt{animation-play-state:paused}.reduced .logo-belt{animation:none;transform:none}.reduced .logo-sequence[aria-hidden]{display:none}.reduced .logo-belt,.reduced .logo-sequence{width:100%;flex-wrap:wrap}.reduced .logo-marquee{mask-image:none}@keyframes logo-drift{to{transform:translateX(-50%)}}
@media(max-width:1100px){.case-grid{gap:18px 14px}.film-card,.film-card.case-lead{grid-column:span 4}.case-lead .case-cover,.case-cover{aspect-ratio:4/3}.case-lead .case-cover-title,.case-cover-title{font-size:22px;left:16px;bottom:20px}.case-lead .case-card-bottom,.case-card-bottom{padding:12px}.case-card-bottom>span,.case-lead .case-card-bottom>span{font-size:9px}.case-card-bottom button,.case-lead .case-card-bottom button{font-size:11px;padding:8px;gap:8px}.case-detail-layout{grid-template-columns:1.3fr 1fr;gap:24px}}
@media(max-width:760px){.film-card,.film-card.case-lead{grid-column:span 6}.case-lead .case-cover,.case-cover{aspect-ratio:4/5}.case-lead .case-cover-title,.case-cover-title{font-size:19px;left:12px;bottom:17px;max-width:calc(100% - 23px)}.case-number{font-size:8px;left:10px;top:10px;letter-spacing:.03em;padding:4px}.case-open-arrow{display:none}.case-card-bottom>span,.case-lead .case-card-bottom>span{display:none}.case-card-bottom button,.case-lead .case-card-bottom button{font-size:11px;width:100%;justify-content:space-between;padding:9px}.case-detail{padding:16px}.case-detail-layout{grid-template-columns:1fr;gap:23px}.case-detail .dialog-head{margin-bottom:16px;padding-bottom:12px}.case-detail-media{aspect-ratio:16/9}.case-detail-copy h2{font-size:33px;margin:14px 0 24px}.case-detail-copy .action{margin:0}.case-story{margin-bottom:25px}.moving-logo{width:135px;height:83px;padding:17px}.moving-logo img{max-height:48px}.partners-heading{gap:20px}.partners-heading>.eyebrow{max-width:none}.partners #logo-motion{white-space:nowrap;font-size:11px}.brand-line-label{font-size:9px}.reduced .moving-logo{width:33.33%}}
@media(prefers-reduced-motion:reduce){.logo-belt{animation:none;transform:none}.logo-sequence[aria-hidden]{display:none}.logo-belt,.logo-sequence{width:100%;flex-wrap:wrap}.logo-marquee{mask-image:none}}
.case-cover-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
/* Full portfolio index: every project on the home page. */
.case-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px 12px}.film-card,.film-card.case-lead{grid-column:auto}.case-cover,.case-lead .case-cover{aspect-ratio:4/3}.case-cover-title,.case-lead .case-cover-title{font-size:14px;line-height:1.2;left:12px;bottom:12px;max-width:calc(100% - 24px);letter-spacing:-.02em}.case-number{left:10px;top:10px;font-size:9px}.case-card-bottom,.case-lead .case-card-bottom{padding:9px}.case-card-bottom>span{display:none}.case-card-bottom button,.case-lead .case-card-bottom button{font-size:11px;width:100%;justify-content:space-between;padding:8px;gap:5px}.case-total{font-size:12px;color:#56677f;margin-top:22px}.contact{background:radial-gradient(ellipse at 0 0,#1d3572,transparent 55%),#0a101c;color:#edf3ff;border-top:2px solid #175cff}.contact .eyebrow{color:#96b8ff}.contact-conversion{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.contact-intro h2{font-size:clamp(40px,4.7vw,72px);line-height:1.03}.contact-intro h2 span{color:#8faff0}.contact-intro>p{max-width:400px;color:#b6c6df;font-size:17px;margin:25px 0 30px}.contact-actions{display:flex;align-items:start;flex-direction:column;gap:22px}.contact-actions .button{font-size:16px;padding:17px 24px;gap:30px}.contact-actions .text-link{color:#b7cdf6;font-size:15px}.quote-form{padding:30px;background:#dce3ee;color:#17253c;border-top:3px solid #377aff;scroll-margin-top:25px}.quote-form .eyebrow{color:#466590;font-size:10px}.quote-heading h3{font-size:26px;line-height:1.2;font-weight:500;letter-spacing:-.035em;margin:12px 0 25px}.quote-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px}.quote-fields label{font-size:12px;font-weight:550;display:flex;flex-direction:column;gap:7px}.quote-fields input,.quote-fields textarea,.quote-fields select{width:100%;min-width:0;max-width:100%;border:1px solid #9daec7;background:#f5f7fb;color:#17253c;padding:12px;font:400 14px/1.5 Inter,Arial,sans-serif;border-radius:0}.quote-fields input::placeholder,.quote-fields textarea::placeholder{color:#677992}.quote-fields textarea{resize:vertical;min-height:100px}.quote-fields .full-field{grid-column:1/-1}.quote-fields label small{font-weight:400;color:#63758d;font-size:11px;display:inline}.quote-submit{width:100%;margin-top:24px;gap:15px;font-size:14px;justify-content:space-between}.quote-note{font-size:12px;color:#526783;margin-top:12px}.quote-form #quote-ready{margin-top:14px;color:#174fb8;font-size:13px}.contact .contact-info{margin-top:28px;border-color:#364866}.contact .contact-info address{color:#99afce}.contact .footer-bottom .brand img{filter:invert(1)}.contact .footer-bottom nav{color:#9fb4d5}.contact .contact-email{color:#edf3ff}
@media(max-width:1200px){.case-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.contact-conversion{gap:5%}.quote-form{padding:25px}.quote-fields{grid-template-columns:1fr}.quote-fields label{grid-column:1}.contact-intro h2{font-size:52px}}
@media(max-width:760px){.case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px}.case-cover,.case-lead .case-cover{aspect-ratio:3/4}.case-cover-title,.case-lead .case-cover-title{font-size:12px;left:8px;bottom:9px;max-width:calc(100% - 16px)}.case-number{font-size:8px;left:7px;top:7px;padding:3px 5px}.case-card-bottom,.case-lead .case-card-bottom{padding:6px}.case-card-bottom button,.case-lead .case-card-bottom button{font-size:10px;padding:7px 5px;white-space:normal;min-height:38px}.contact-conversion{grid-template-columns:1fr;gap:36px}.contact-intro h2{font-size:46px}.contact-intro>p{font-size:16px;margin:22px 0 26px}.contact-actions{gap:22px}.contact-actions .button{width:100%;justify-content:space-between}.quote-form{padding:23px}.quote-heading h3{font-size:25px}.quote-fields input,.quote-fields textarea,.quote-fields select{font-size:16px}.contact .contact-info{margin-top:5px}.quote-submit{font-size:13px}.contact .contact-email{font-size:23px}}
@media(max-width:350px){.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-cover{aspect-ratio:4/3}.case-cover-title{font-size:13px}.contact-intro h2{font-size:40px}.quote-form{padding:18px}}
/* Blue optical glass, silver reflections and a moving perimeter highlight. */
@property --neon-orbit{syntax:'<angle>';initial-value:0deg;inherits:false}
:is(.action,.button,.case-card-bottom button,.playback button,.header-link,.detail-navigation button){position:relative;isolation:isolate;border:1px solid #78aeff80;border-radius:8px;color:#eff7ff;background:linear-gradient(135deg,#b3d9ff38 0%,#558eff22 20%,#091d5470 46%,#175cffb8 70%,#061333ef 100%),linear-gradient(180deg,#3184fa85,#0a2268e8);box-shadow:inset 0 1px 0 #e1f2ffb3,inset 0 -2px 0 #020c2980,0 4px 0 #07173b,0 9px 22px #07153050,0 0 20px #1465ff29;backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);transition:transform .25s,box-shadow .25s,background .25s;transform-style:preserve-3d}
:is(.action,.button,.case-card-bottom button,.playback button,.header-link,.detail-navigation button)::before{content:'';position:absolute;inset:-1px;padding:1.7px;border-radius:inherit;background:conic-gradient(from var(--neon-orbit),transparent 0deg 245deg,#164aff55 280deg,#2389ff 320deg,#d2f5ff 343deg,transparent 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none;filter:drop-shadow(0 0 4px #258aff)}
:is(.action,.button)::before{animation:neon-lap 4.5s linear infinite}.case-card-bottom button:hover::before,.header-link:hover::before{animation:neon-lap 3s linear infinite}
:is(.action,.button,.case-card-bottom button,.playback button,.header-link)::after{content:'';position:absolute;inset:1px 1px 48%;border-radius:6px 6px 45% 45%;background:linear-gradient(115deg,#e3f5ff40,transparent 34%,#9ed4ff16 63%,transparent);pointer-events:none;z-index:-1}
:is(.action,.button,.case-card-bottom button,.playback button,.header-link):hover{background:linear-gradient(145deg,#a0d2ff55,#235de7c9 48%,#0c2769);box-shadow:inset 0 1px 0 #eefaff,0 5px 0 #081940,0 12px 28px #08254e70,0 0 25px #1c75ff55;transform:perspective(600px) rotateX(-5deg) translateY(-2px)}
:is(.action,.button,.case-card-bottom button,.playback button,.header-link):active{transform:translateY(2px);box-shadow:inset 0 1px 0 #e1f2ff80,0 1px 0 #07173b,0 0 16px #176aff40}.header-link{padding:11px 17px}.contact .button{box-shadow:inset 0 1px 0 #e1f2ffb3,inset 0 -2px 0 #020c2980,0 4px 0 #07173b,0 12px 25px #0005,0 0 24px #1465ff3d}.detail-navigation button{padding:8px 12px}.detail-navigation button:disabled{box-shadow:none;cursor:default}.case-detail-copy .action{color:#fff}.case-card-bottom{padding-top:11px;padding-bottom:13px}.case-card-bottom button:hover{color:#fff;border-color:#a4d2ff}.quote-submit{min-height:54px}
@keyframes neon-lap{to{--neon-orbit:360deg}}
.section{position:relative}.section::after{content:'';position:absolute;top:0;left:5%;right:5%;height:1px;background:linear-gradient(90deg,transparent,#1245b980 12%,#237aff 38%,#a5d6ff 50%,#237aff 62%,#1245b980 88%,transparent);box-shadow:0 0 12px #176affaa,0 0 28px #176aff44;pointer-events:none}.section-heading{padding-left:18px;border-left:2px solid #388bff;box-shadow:-10px 0 18px -17px #4ca3ff}.work:before{display:none}.services-grid{border-top-color:#347cf080}.services-grid article+article{border-left-color:#326ce64a}.showreel-grid>button,.studio-visual>button{border-color:#3f8cff77;box-shadow:0 0 0 1px #b3d8ff12,0 0 28px #165dff1a}.showreel-grid>button:hover,.studio-visual>button:hover{box-shadow:0 0 0 1px #80b7ff80,0 0 32px #165dff45}.quote-form{border:1px solid #438aff;box-shadow:0 0 0 4px #1865ff0b,0 0 40px #1356ed25}.partners .brand-line-label{border-top-color:#3478df55}.contact-info{border-bottom-color:#397cdf70!important}
/* All vertical films are visible in a grid; no horizontal track or repeated label. */
.reel-track{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:16px 12px;overflow:visible;padding:0;margin:0;scroll-snap-type:none}.reel-card{width:100%;min-width:0;aspect-ratio:9/16;border:1px solid #488aff66;border-radius:6px;background:#101a2b;box-shadow:inset 0 0 0 1px #b4d5ff14,0 8px 20px #0004;transition:transform .25s,box-shadow .25s}.reel-card:hover{transform:translateY(-4px);box-shadow:0 0 0 1px #86bdff,0 0 24px #1b6bff4d}.reel-play{right:10px;top:10px;width:30px;height:30px;font-size:10px;border:1px solid #a5d3ff80;background:linear-gradient(145deg,#87bcff88,#1655dadb);box-shadow:inset 0 1px 0 #d9edff80,0 0 15px #1768ff66;backdrop-filter:blur(8px)}.vertical-count{font-size:11px;letter-spacing:.1em;color:#99b6e6;align-self:end}.reel-caption{display:none}
@media(max-width:1000px){.reel-track{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px 9px}.reel-play{width:26px;height:26px;right:7px;top:7px;font-size:9px}}
@media(max-width:760px){.reel-track{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 8px;margin:0;padding:0}.reel-play{width:24px;height:24px;right:6px;top:6px;font-size:8px}.vertical-count{display:none}.header-link{padding:9px 11px;font-size:11px}.section-heading{padding-left:13px}.section::after{left:22px;right:22px}.services-grid article+article{border-left:0}.detail-navigation button{padding:8px;font-size:11px}}
@media(max-width:350px){.reel-track{grid-template-columns:repeat(3,minmax(0,1fr))}}
.reduced :is(.action,.button,.case-card-bottom button,.header-link)::before{animation:none}.reduced .reel-card:hover,.reduced :is(.action,.button,.case-card-bottom button,.playback button,.header-link):hover{transform:none}
@media(prefers-reduced-motion:reduce){:is(.action,.button,.case-card-bottom button,.header-link)::before{animation:none!important}.reel-card:hover,:is(.action,.button,.case-card-bottom button,.playback button,.header-link):hover{transform:none}}
/* One integrated project tile: the project name is the only action label. */
.film-card{border:0;background:none;box-shadow:none}.project-card{display:block;width:100%;padding:0;border:1px solid #8eafff55;border-radius:7px;overflow:hidden;text-align:left;color:white;background:#09234d;cursor:pointer;transition:transform .25s,box-shadow .25s}.project-image{display:block;aspect-ratio:16/11;overflow:hidden;background:#101a2b}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.project-name{position:relative;display:flex;align-items:center;min-height:65px;padding:11px 28px 11px 12px;font-size:12px;font-weight:600;line-height:1.3;background:linear-gradient(135deg,#93caff88,#2464dfa6 36%,#0a245c 85%);border-top:1px solid #bddfffaa;box-shadow:inset 0 1px 0 #ffffff35,inset 0 -3px 0 #03112f80;text-shadow:0 1px 3px #06143180}.project-name:before{content:'';position:absolute;inset:0 0 55%;background:linear-gradient(115deg,#e8f6ff35,transparent 55%);pointer-events:none}.project-arrow{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:15px;color:#ceeaff}.project-card:hover,.project-card:focus-visible{transform:translateY(-3px);box-shadow:0 0 0 1px #86bdff,0 8px 24px #155cf740;outline:0}.project-card:hover img{transform:scale(1.045)}.project-card:hover .project-name{background:linear-gradient(135deg,#addbffaa,#276deb 45%,#0b2865)}
@media(max-width:760px){.project-name{font-size:11px;min-height:68px;padding:9px 21px 9px 8px}.project-arrow{right:7px;font-size:12px}}
.reduced .project-card,.reduced .project-image img{transition:none}.reduced .project-card:hover,.reduced .project-card:hover img{transform:none}@media(prefers-reduced-motion:reduce){.project-card,.project-image img{transition:none}.project-card:hover,.project-card:hover img{transform:none}}

/* More scroll distance for the upper-floor assembly and the completed studio fly-by. */
body:not(.reduced) .journey{height:520svh}
@media(max-width:760px){body:not(.reduced) .journey{height:460svh}}
@media(prefers-reduced-motion:reduce){body:not(.reduced) .journey{height:100svh;min-height:680px}}

/* Keep the video texture source on-screen rather than hidden at zero opacity. */
.webgl-ready #video-pool{inset:0;width:100%;height:100%;opacity:1;overflow:hidden;z-index:0}#canvas-stage{z-index:1}.entry-shade{z-index:2}

/* Compact glass actions, with single-line labels and restrained arrows. */
.action,.button,.header-link,.contact-actions .button,.case-detail-copy .action{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;gap:10px;width:auto;max-width:100%;min-height:44px;padding:10px 15px;font-size:14px;line-height:1.2;white-space:nowrap}
.action>span,.button>span,.header-link>span{flex:0 0 auto;font-size:14px;line-height:1}
.intro-actions{flex-wrap:wrap;gap:14px 20px}.header-link{font-size:13px;padding:10px 13px}.quote-submit{min-height:44px}
@media(max-width:760px){.action,.button,.contact-actions .button,.case-detail-copy .action{font-size:13px;padding:10px 13px;gap:9px}.header-link{font-size:12px;padding:9px 11px;gap:8px}.action>span,.button>span,.header-link>span{font-size:13px}.intro-actions{gap:12px 16px}}
