@font-face{font-family:Barlow;src:url(/vendor/barlow-800.ttf);font-weight:800;font-display:swap}*{box-sizing:border-box}:root{--bg:#080a0c;--fg:#eeeee8;--muted:#aab2b9;--red:#ef483a;--line:#ffffff29;--pad:clamp(24px,5.5vw,88px)}html{scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.6 Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img,video,svg{max-width:100%;display:block}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--red);outline-offset:5px}[hidden]{display:none!important}.skip{position:fixed;top:-70px;left:20px;z-index:100;background:var(--fg);color:var(--bg);padding:12px}.skip:focus{top:10px}.site-header{height:100px;position:sticky;top:0;z-index:30;padding:0 var(--pad);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:#080a0cf7;backdrop-filter:blur(16px)}.wordmark{font-size:39px;font-weight:800;letter-spacing:-3px;line-height:1}.desktop-nav{display:flex;align-items:center;gap:27px;font-size:13px}.desktop-nav a[aria-current=page]{color:var(--red)}.motion-control{border:1px solid #ffffff5a;background:none;color:inherit;padding:10px 13px;min-height:44px;font-size:11px}.motion-control[aria-pressed=true]{border-color:var(--red)}.mobile-menu{display:none}.crumbs{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:11px;padding:32px var(--pad) 0}.crumbs a{text-decoration:underline;text-underline-offset:4px}.kicker{display:block;color:var(--red);text-transform:uppercase;font-size:10px;letter-spacing:1.8px;line-height:1.5;margin-bottom:22px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Barlow,Impact,sans-serif;text-transform:uppercase;font-weight:800;letter-spacing:-.018em;line-height:.98}h1{font-size:clamp(66px,8.1vw,128px);margin-bottom:30px}h2{font-size:clamp(44px,5vw,76px);margin-bottom:24px}h3{font-size:22px;line-height:1.2;font-weight:400}.lead{font-size:clamp(17px,1.5vw,21px);line-height:1.65;color:#c2c8cc;max-width:660px}.hero{padding:65px var(--pad) 100px}.service-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5vw;min-height:650px}.service-hero h1{font-size:clamp(65px,7.5vw,116px)}.service-hero .hero-copy{position:relative;z-index:1}.graphic-frame{position:relative;min-width:0;background:radial-gradient(ellipse at 50% 40%,#29322e44,transparent 66%);overflow:hidden}.graphic-frame svg{width:100%;height:auto}.graphic-caption{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:var(--muted);padding:18px 0;border-top:1px solid var(--line)}.action{display:inline-flex;align-items:center;gap:40px;border-bottom:1px solid #ffffff66;padding:12px 0;min-height:44px;font-size:14px}.action:after{content:'↗';color:var(--red);font-size:22px}.hero .action{margin-top:18px}.feature .service-hero{grid-template-columns:1.15fr .85fr;align-items:end}.feature .graphic-frame{grid-column:1/-1;max-width:1150px;width:100%;margin:15px auto 0}.feature .hero-copy{display:contents}.feature .hero-copy .kicker,.feature .hero-copy h1{grid-column:1}.feature .hero-copy .lead,.feature .hero-copy .action{grid-column:2}.feature .hero-copy .kicker{margin:0}.feature .hero-copy h1{grid-row:2/4;margin:0}.feature .hero-copy .lead{grid-row:2}.feature .hero-copy .action{grid-row:3;justify-self:start}.sequence .service-hero{grid-template-columns:1.2fr .8fr}.sequence .graphic-frame{transform:translateY(45px)}.section{padding:100px var(--pad);border-top:1px solid var(--line)}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin-bottom:52px}.section-intro h2{max-width:630px}.section-intro p{color:var(--muted);max-width:540px}.capabilities{list-style:none;margin:0;padding:0;counter-reset:cap;display:grid;grid-template-columns:1fr 1fr;gap:0 6vw}.capabilities li{counter-increment:cap;border-top:1px solid var(--line);padding:23px 0;display:flex;gap:24px;font-size:clamp(18px,2vw,28px);line-height:1.35}.capabilities li:before{content:counter(cap,decimal-leading-zero);font-size:10px;color:var(--red);padding-top:5px;min-width:22px}.narrative{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5vw}.narrative article{border-top:1px solid var(--line);padding-top:24px}.narrative .number{font:800 60px/1 Barlow;color:#ffffff2e;display:block;margin-bottom:35px}.narrative p{color:var(--muted);font-size:15px}.light-band{background:#e9e8df;color:#101416}.light-band .kicker{color:#ae3328}.light-band p{color:#485052}.light-band .narrative article,.light-band .capabilities li{border-color:#10141633}.light-band .number{color:#10141640}.related{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.related-list a{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid var(--line);font-size:20px}.related-list a:after{content:'↗';color:var(--red)}.cta-band{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;background:#e9e8df;color:#101416}.cta-band h2{margin:0;max-width:720px}.cta-band .action{border-color:#10141666;white-space:nowrap}.page-footer{padding:65px var(--pad) 30px;border-top:1px solid var(--line)}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;margin-bottom:60px}.footer-top p{font-size:13px;color:var(--muted);max-width:250px;margin-top:20px}.footer-top nav{display:flex;flex-direction:column;gap:12px;font-size:14px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:1px;color:var(--muted)}.route-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 7vw}.route-list a{display:block;padding:28px 0;border-top:1px solid var(--line)}.route-list strong{font-size:clamp(23px,3vw,42px);font-weight:400;line-height:1.2;display:block}.route-list span{display:block;margin-top:12px;font-size:14px;color:var(--muted);max-width:450px}.hub-hero{max-width:1100px}.hub-hero .lead{max-width:680px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px 5vw}.project-tile:first-child{grid-column:1/-1}.project-tile .media-wrap{background:#111615;overflow:hidden}.project-tile img{width:100%;height:440px;object-fit:contain;background:#101413}.project-tile:first-child img{height:auto;max-height:700px;object-fit:cover}.project-tile h2{font-family:Arial,sans-serif;text-transform:none;font-size:clamp(27px,3vw,45px);font-weight:400;margin:24px 0 8px}.project-tile p{color:var(--muted);font-size:13px}.case-hero{padding-bottom:60px}.case-hero h1{max-width:1200px;font-size:clamp(75px,11vw,168px)}.case-meta{display:flex;flex-wrap:wrap;gap:25px 65px;padding-top:35px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.case-meta strong{display:block;color:var(--fg);font-weight:400;margin-bottom:6px}.case-media{margin:0 var(--pad);background:#111614;display:grid;place-items:center;position:relative;min-height:240px}.case-media video{width:100%;max-height:78vh;background:#040506;object-fit:contain}.case-media img{width:auto;height:auto;max-height:720px;max-width:min(100%,640px)}.case-media .original-link{position:absolute;bottom:26px;background:#080a0cee;padding:15px 22px;border:1px solid #ffffff70;font-size:13px}.case-story{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.case-story .story-text{max-width:710px}.case-story h2{font-size:50px}.case-story p{font-size:18px;color:var(--muted)}.case-story ul{padding-left:20px;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.contact-details a{display:block;border-bottom:1px solid var(--line);padding:18px 0;font-size:clamp(16px,2vw,26px);overflow-wrap:anywhere}.contact-details p{color:var(--muted);font-size:14px;margin-top:24px}.brief-form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.brief-form label{display:flex;flex-direction:column;gap:10px;font-size:12px;color:#c7cbcc}.brief-form .wide{grid-column:1/-1}.brief-form input,.brief-form select,.brief-form textarea{width:100%;min-height:49px;background:#111615;color:var(--fg);border:1px solid #ffffff45;border-radius:0;padding:13px}.brief-form textarea{min-height:125px;resize:vertical}.brief-form button{background:var(--fg);color:#101416;border:0;padding:16px 24px;justify-self:start;min-height:48px}.form-note{font-size:12px;color:var(--muted);margin:0}.form-status{font-size:13px;color:var(--fg)}.studio-art{background:#111614}.studio-art img{width:100%;max-height:650px;object-fit:cover}.quote-statement{font:800 clamp(45px,6.7vw,100px)/1.04 Barlow;text-transform:uppercase;max-width:1150px;margin:0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.about-grid p{font-size:18px;color:var(--muted)}.reveal{opacity:1}.motion-enabled .reveal{animation:rise-in .7s both}.motion-enabled .graphic-frame .vfs-motion{animation-play-state:running}@keyframes rise-in{from{opacity:.25;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.desktop-nav{gap:18px}.service-hero{min-height:auto}.hero{padding-top:50px;padding-bottom:70px}h1{font-size:80px}.service-hero h1{font-size:72px}.section{padding-block:75px}.narrative{gap:30px}.contact-grid{gap:45px}.project-tile img{height:340px}}
@media(max-width:760px){.site-header{height:80px}.wordmark{font-size:34px}.desktop-nav{display:none}.mobile-menu{display:block}.mobile-menu summary{list-style:none;cursor:pointer;font-size:13px;padding:12px 0;min-width:54px;text-align:right}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu[open] summary{color:var(--red)}.mobile-menu nav{position:absolute;top:79px;left:0;right:0;background:#0c1012;border-bottom:1px solid var(--line);padding:20px var(--pad) 26px;display:grid;grid-template-columns:1fr 1fr;gap:8px 30px}.mobile-menu nav a{padding:12px 0;font-size:17px}.mobile-menu .motion-control{grid-column:1/-1;margin-top:12px;justify-self:start}.crumbs{padding-top:22px;font-size:10px}.hero{padding-top:40px;padding-bottom:58px}h1,.service-hero h1,.case-hero h1{font-size:clamp(52px,12.8vw,85px);overflow-wrap:normal;margin-bottom:25px}.service-hero,.sequence .service-hero,.feature .service-hero{display:flex;flex-direction:column;gap:36px;align-items:stretch}.feature .hero-copy{display:block}.sequence .graphic-frame{transform:none}.graphic-frame{width:100%}.feature .graphic-frame{margin:0}.lead{font-size:17px;line-height:1.6}.hero .action{margin-top:10px}.kicker{font-size:9px;margin-bottom:18px}.section{padding-block:58px}.section-intro,.narrative,.related,.case-story,.contact-grid,.about-grid{grid-template-columns:1fr;gap:30px}.section-intro{margin-bottom:35px}.section-intro h2{margin-bottom:0}h2{font-size:46px}.capabilities{grid-template-columns:1fr}.capabilities li{font-size:22px;padding:20px 0}.narrative .number{font-size:45px;margin-bottom:20px}.narrative article{padding-bottom:10px}.cta-band{display:block}.cta-band .action{margin-top:28px}.route-list{grid-template-columns:1fr}.route-list strong{font-size:29px}.project-grid{grid-template-columns:1fr;gap:45px}.project-tile:first-child{grid-column:auto}.project-tile img{height:370px;max-height:65vh}.project-tile h2{font-size:30px}.case-meta{gap:20px 30px}.case-story h2{font-size:42px}.case-story p{font-size:16px}.case-media{margin-inline:var(--pad)}.case-media video{max-height:60vh}.case-media .original-link{bottom:18px;font-size:12px;padding:12px 16px}.brief-form{grid-template-columns:1fr;gap:20px}.brief-form .wide{grid-column:auto}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>div{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;font-size:9px}.contact-details a{font-size:20px}.quote-statement{font-size:12vw}.about-grid p{font-size:16px}}
@media(prefers-reduced-motion:reduce){html:not([data-vfs-motion="full"]) *,html:not([data-vfs-motion="full"]) *:before,html:not([data-vfs-motion="full"]) *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
/* Shared typography and page-family refinements. */
.wordmark{display:inline-flex;align-items:center;gap:12px}.wordmark span{font:700 7px/1.4 Arial,sans-serif;letter-spacing:1.5px}.graphic-frame{margin:0}.graphic-caption{gap:22px;font-size:9px;line-height:1.5;letter-spacing:.5px}.graphic-caption span:last-child{white-space:nowrap}.service-hero h1{font-size:clamp(60px,6.7vw,106px)}.route-arrow{display:inline!important;margin:0 0 0 20px!important;color:var(--red)!important;font-size:.65em!important}.studio-link{padding-top:60px}.related-project-image{width:100%;max-height:520px;object-fit:contain;background:#111615}.media-credit{margin:22px var(--pad) 55px;color:var(--muted);font-size:12px}.media-credit a{text-decoration:underline;text-underline-offset:5px}.case-media img{max-height:75vh}.project-tile img{object-fit:cover;object-position:center;height:550px}.project-tile:first-child img{max-height:780px;object-fit:contain;background:#101413}.work-index{padding-top:30px}.about-art{margin:0 var(--pad) 70px}.about-art img{width:100%;max-height:750px;object-fit:cover;object-position:center}.about-art figcaption{font-size:10px;color:var(--muted);padding:18px 0;letter-spacing:1px}.next-project{background:#141916}.next-project h2 a:hover,.project-tile h2 a:hover{color:var(--red)}.next-project h2{max-width:1000px}.contact-page .hero{max-width:none}.contact-page h1{font-size:clamp(75px,11vw,170px)}.contact-grid .contact-details .kicker{margin-top:26px}.feature .hero-copy h1{font-size:clamp(68px,7vw,112px)}.feature .graphic-frame{max-width:1050px}.footer-top nav a{overflow-wrap:anywhere}.brief-form select{max-width:100%}.service-hero .lead{font-size:18px}figure{min-width:0}h1,h2,h3{overflow-wrap:break-word}.crumbs{max-width:100%}.crumbs span:last-child{overflow-wrap:anywhere}.case-page .case-hero h1{max-width:1200px}
@media(max-width:1000px){.desktop-nav{gap:16px;font-size:12px}.wordmark span{display:none}.project-tile img{height:420px}.feature .hero-copy h1{font-size:72px}.service-hero h1{font-size:72px}}
@media(max-width:760px){.wordmark span{display:block}.service-hero h1,.feature .hero-copy h1{font-size:clamp(52px,12.8vw,85px)}.project-tile img{height:auto;max-height:65vh;object-fit:contain}.project-tile:first-child img{max-height:72vh}.graphic-caption{font-size:8px;gap:10px}.service-hero .lead{font-size:17px}.about-art{margin-bottom:50px}.about-art img{height:380px;object-fit:cover}.case-meta{font-size:12px}.contact-page h1{font-size:clamp(60px,15vw,100px)}.media-credit{margin-bottom:40px;line-height:1.8}.case-media img{max-height:65vh}.mobile-menu summary{min-height:44px}.footer-top{column-gap:24px}.footer-top nav{min-width:0}}
.inline-arrow{display:inline-block;width:16px;height:16px;margin-left:8px;vertical-align:middle;color:var(--red)}.action:after,.related-list a:after{content:'';display:inline-block;flex-shrink:0;width:17px;height:17px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 19 19 5M5 5h14v14' fill='none' stroke='%23ef483a' stroke-width='1.5'/%3E%3C/svg%3E") center/contain no-repeat}.route-arrow .inline-arrow{width:23px;height:23px}.brief-form button .inline-arrow{color:inherit}.contact-details a .inline-arrow{margin-left:5px}
@media(max-width:760px){.footer-top nav:last-child{grid-column:1/-1}.footer-top nav:last-child a{overflow-wrap:normal;word-break:normal}}
/* Related project links use the existing section rhythm and reachable targets. */
.related-work-links{display:flex;flex-wrap:wrap;gap:18px 40px}.related-work-links .action{min-width:140px}

/* QA: reserve an arrow column so service titles cannot strand arrows on a new line. */
.route-list strong{display:flex;align-items:flex-start;gap:16px}.route-list .route-label{font:inherit;color:inherit;margin:0;max-width:none;min-width:0;flex:1}.route-list .route-arrow{display:block!important;flex:0 0 23px;margin:6px 0 0!important}.route-list .route-arrow .inline-arrow{display:block;margin:0}
.brief-form input[type="date"]{color-scheme:dark}
