@font-face{font-family:Instrument;src:url('../fonts/instrument-sans-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Instrument;src:url('../fonts/instrument-sans-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Instrument;src:url('../fonts/instrument-sans-600.woff2') format('woff2');font-weight:600;font-display:swap}

:root{
  --ink:#0d100f;
  --ink-2:#161a18;
  --paper:#e9e7df;
  --paper-2:#dcdad2;
  --soft:#aaa9a2;
  --signal:#c7f640;
  --line:rgba(13,16,15,.2);
  --line-light:rgba(255,255,255,.22);
  --gutter:clamp(1.2rem,4.15vw,8rem);
  --header:5.5rem;
  --sans:Instrument,Arial,sans-serif;
  --mono:ui-monospace,'SFMono-Regular',Menlo,Consolas,monospace;
  --ease:cubic-bezier(.2,.75,.2,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink);overflow-x:hidden}
html.is-overlay-open{overflow:hidden;overscroll-behavior:none}
body{margin:0;overflow-x:clip;background:var(--paper);color:var(--ink);font:400 16px/1.4 var(--sans);-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
body.is-scroll-locked{overflow:hidden!important;overscroll-behavior:none}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:auto}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer}
::selection{background:var(--signal);color:var(--ink)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;z-index:3000;left:1rem;top:1rem;transform:translateY(-180%);padding:.8rem 1rem;background:var(--signal);color:var(--ink)}
.skip-link:focus{transform:none}
.section-pad{padding-left:var(--gutter);padding-right:var(--gutter)}

.grain{position:fixed;z-index:1800;inset:-60%;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");animation:grain .22s steps(2) infinite}
@keyframes grain{0%{transform:translate(0)}25%{transform:translate(2%,-1%)}50%{transform:translate(-1%,2%)}75%{transform:translate(1%,1%)}100%{transform:translate(-2%,-1%)}}

.site-intro{position:fixed;z-index:2500;inset:0;display:grid;place-items:center;background:var(--paper);transition:clip-path 1.05s var(--ease);clip-path:inset(0)}
.site-intro.is-done{clip-path:inset(0 0 100%)}
.intro-mark{position:relative;width:min(36vw,22rem)}
.intro-mark svg{width:100%;fill:transparent;stroke:rgba(13,16,15,.15);stroke-width:1}
.intro-mark__trace{stroke:var(--ink)!important;stroke-dasharray:610;stroke-dashoffset:610;animation:intro-trace 1.4s var(--ease) forwards}
.intro-mark>div{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);place-items:center;font:500 clamp(2.4rem,5vw,4.7rem)/1 var(--sans);letter-spacing:-.07em}
.intro-data{position:absolute;bottom:3rem;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;font:10px var(--mono);letter-spacing:.12em}
.intro-rule{position:absolute;left:var(--gutter);right:var(--gutter);bottom:2rem;height:1px;background:rgba(13,16,15,.14)}
.intro-rule i{display:block;width:0;height:100%;background:var(--ink);animation:intro-line 1.4s var(--ease) forwards}
@keyframes intro-trace{to{stroke-dashoffset:0}}
@keyframes intro-line{to{width:100%}}

.page-progress{position:fixed;z-index:1400;right:0;top:0;width:3px;height:100vh;background:rgba(255,255,255,.08);pointer-events:none}
.page-progress i{display:block;width:100%;height:100%;background:var(--signal);transform:scaleY(0);transform-origin:top}

.site-header{position:fixed;z-index:1200;left:0;right:0;top:0;height:var(--header);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--gutter);color:white;border-bottom:1px solid rgba(255,255,255,.16);transition:transform .55s var(--ease),background .4s,color .4s,border-color .4s}
.site-header::before{content:'';position:absolute;inset:0;z-index:-1;background:rgba(13,16,15,.72);backdrop-filter:blur(14px);opacity:0;transition:opacity .35s}
.site-header.is-scrolled::before{opacity:1}
.site-header.is-hidden{transform:translateY(-105%)}
.brand{display:flex;align-items:center;gap:.7rem;width:max-content}
.brand__mark{width:2rem;height:2rem;fill:currentColor}
.brand__accent{fill:var(--signal)}
.brand__name{font-size:1.1rem;font-weight:600;letter-spacing:-.04em}
.brand__descriptor{padding-left:.8rem;border-left:1px solid currentColor;font:8px/1.3 var(--mono);text-transform:uppercase;letter-spacing:.08em;opacity:.72}
.desktop-nav{display:flex;align-items:center;gap:clamp(1.4rem,3vw,3rem)}
.desktop-nav a{position:relative;padding:.6rem 0;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}
.desktop-nav a span{position:absolute;top:-.12rem;left:0;font:6px var(--mono);opacity:.45}
.desktop-nav a::after{content:'';position:absolute;left:0;right:0;bottom:.2rem;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease)}
.desktop-nav a:hover::after,.desktop-nav a:focus-visible::after,.desktop-nav a[aria-current=page]::after{transform:scaleX(1);transform-origin:left}
.header-cta[aria-current=page]{background:var(--signal);color:var(--ink)}
.desktop-nav b{font:inherit;font-weight:400}
.header-actions{justify-self:end;display:flex;align-items:center;gap:1rem}
.header-cta{justify-self:end;display:flex;gap:2.5rem;align-items:center;padding:.8rem 0;border-bottom:1px solid currentColor;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}
.menu-toggle{display:none;position:relative;width:2.8rem;height:2.8rem;border:1px solid currentColor;background:transparent}
.menu-toggle>span{position:absolute;left:.7rem;right:.7rem;height:1px;background:currentColor;transition:transform .35s,top .35s}
.menu-toggle>span:first-child{top:1.1rem}.menu-toggle>span:nth-child(2){top:1.55rem}
.menu-toggle[aria-expanded=true]>span:first-child{top:1.33rem;transform:rotate(45deg)}.menu-toggle[aria-expanded=true]>span:nth-child(2){top:1.33rem;transform:rotate(-45deg)}
.mobile-menu{position:fixed;z-index:1100;inset:0;display:none;padding:calc(var(--header) + 3rem) var(--gutter) 2rem;background:var(--ink);color:white;clip-path:inset(0 0 100%);transition:clip-path .7s var(--ease)}
.mobile-menu.is-open{clip-path:inset(0)}
.mobile-menu nav{display:grid;align-content:center;width:100%}
.mobile-menu nav a{display:grid;grid-template-columns:2.2rem 1fr;align-items:start;padding:1rem 0;border-bottom:1px solid var(--line-light)}
.mobile-menu nav small{font:8px var(--mono);color:var(--signal)}
.mobile-menu nav span{font-size:clamp(2.5rem,10vw,5rem);line-height:1;letter-spacing:-.055em}
.mobile-menu__foot{align-self:end;display:flex;justify-content:space-between;width:100%;font:9px var(--mono);text-transform:uppercase;color:var(--soft)}

.hero{position:relative;min-height:100svh;display:grid;grid-template-rows:var(--header) 1fr auto;overflow:hidden;background:var(--ink);color:white}
.hero__media,.hero__veil,.hero__drawing{position:absolute;inset:0;margin:0}
.hero__media img{height:100%;object-fit:cover;object-position:center 48%;transform:scale(1.07);animation:hero-settle 1.8s .8s var(--ease) forwards}
@keyframes hero-settle{to{transform:scale(1)}}
.hero__veil{background:linear-gradient(90deg,rgba(6,8,7,.86) 0%,rgba(6,8,7,.54) 44%,rgba(6,8,7,.22) 75%),linear-gradient(0deg,rgba(6,8,7,.88),transparent 42%)}
.hero__drawing svg{width:100%;height:100%;fill:none;stroke:rgba(255,255,255,.13);stroke-width:1;vector-effect:non-scaling-stroke}
.hero__drawing circle{fill:var(--signal);stroke:none}
.hero__topline{position:relative;z-index:2;grid-row:1;margin-top:var(--header);padding:1.2rem var(--gutter);display:flex;justify-content:space-between;font:8px var(--mono);letter-spacing:.12em;text-transform:uppercase}
.hero__content{position:relative;z-index:2;grid-row:2;align-self:center;width:100%;min-width:0;padding:clamp(4rem,8vh,8rem) var(--gutter) 3rem}
.hero__eyebrow{margin:0 0 1.8rem;font:9px var(--mono);text-transform:uppercase;letter-spacing:.15em}
.hero__title{margin:0;max-width:82rem;font-size:clamp(5.5rem,11.5vw,12rem);font-weight:400;line-height:.77;letter-spacing:-.075em;text-transform:uppercase}
.title-mask{display:block;overflow:hidden;padding:.07em 0}
.title-mask i{display:block;font-style:normal;transform:translateY(110%);animation:title-in 1.1s .22s var(--ease) forwards}
.title-mask--offset{padding-left:clamp(4rem,18vw,20rem)}
.title-mask--offset i{animation-delay:.32s;color:transparent;-webkit-text-stroke:1.2px rgba(255,255,255,.9)}
@keyframes title-in{to{transform:none}}
.hero__intro{display:flex;align-items:center;gap:clamp(2rem,7vw,8rem);margin:1.4rem 4vw 0 auto;width:min(35rem,48vw)}
.hero__intro>p{margin:0;max-width:22rem;color:rgba(255,255,255,.78);font-size:clamp(.88rem,1.1vw,1.1rem);line-height:1.5}
.circle-link{flex:0 0 6.8rem;width:6.8rem;height:6.8rem;border-radius:50%;color:white}
.circle-link svg{width:100%;height:100%;overflow:visible}
.circle-link text{fill:currentColor;font:7px var(--mono);letter-spacing:1.3px;text-transform:uppercase}
.circle-link textPath{animation:rotate-text 13s linear infinite;transform-origin:center}
.circle-link__arrow{stroke:var(--signal);stroke-width:1.5;fill:none}
@keyframes rotate-text{to{transform:rotate(360deg)}}
.hero__footer{position:relative;z-index:2;grid-row:3;display:grid;grid-template-columns:1fr 1.3fr 1fr;border-top:1px solid rgba(255,255,255,.17);background:rgba(8,10,9,.24)}
.hero__footer div{display:flex;justify-content:space-between;gap:1rem;padding:1.2rem var(--gutter);border-right:1px solid rgba(255,255,255,.17)}
.hero__footer div:last-child{border:0}
.hero__footer small{font:7px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.52)}
.hero__footer strong{font-size:.68rem;font-weight:400;text-transform:uppercase;letter-spacing:.06em}

.section-code{display:flex;gap:1.1rem;align-items:center;font:8px var(--mono);letter-spacing:.1em;text-transform:uppercase}
.section-code span:first-child{width:2rem;color:#777b76}.section-code--light span:first-child{color:var(--signal)}
.section-code--light{color:white}
.manifesto{position:relative;padding-top:8rem;padding-bottom:3rem;overflow:hidden;background:var(--paper)}
.manifesto__copy{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem;margin-top:5rem}
.kinetic-copy{grid-column:1/11;margin:0;font-size:clamp(4rem,8.5vw,9rem);line-height:.9;letter-spacing:-.065em}
.kinetic-copy .word{display:inline-block;opacity:.17;transition:opacity .65s var(--ease),transform .65s var(--ease);transform:translateY(.3em)}
.kinetic-copy .word.is-visible{opacity:1;transform:none}
.manifesto__aside{grid-column:8/12;display:grid;grid-template-columns:auto 1fr;gap:1rem;margin-top:4rem}
.manifesto__aside p{margin:0;line-height:1.65;color:#5c605c}
.status-dot{display:inline-block;width:.55rem;height:.55rem;border-radius:50%;background:var(--signal);box-shadow:0 0 0 .35rem rgba(199,246,64,.14)}
.ticker{margin-top:8rem;margin-left:calc(var(--gutter)*-1);margin-right:calc(var(--gutter)*-1);padding:1rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;white-space:nowrap;font:9px var(--mono);letter-spacing:.08em}
.ticker div{width:max-content;animation:ticker 34s linear infinite}
@keyframes ticker{to{transform:translateX(-50%)}}

.services{padding-top:9rem;padding-bottom:10rem;background:var(--ink);color:white}
.services__head{display:grid;grid-template-columns:1fr 2.15fr 1fr;gap:2rem;align-items:end}
.services__head h2,.method h2,.experience h2,.procurement h2,.about h2{margin:0;font-size:clamp(4.2rem,8.4vw,9rem);font-weight:400;line-height:.87;letter-spacing:-.065em}
.services__head h2 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.8)}
.services__head>p{margin:0;color:#a6aaa7;line-height:1.6}
.services__stage{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(3rem,7vw,8rem);margin-top:8rem;align-items:start}
.service-list{border-top:1px solid var(--line-light)}
.service-row{display:grid;grid-template-columns:2.2rem 1fr auto;grid-template-areas:'no title arrow' '. copy arrow';gap:.35rem 1rem;align-items:center;padding:1.45rem 0;border-bottom:1px solid var(--line-light);opacity:.42;transition:opacity .4s,padding .4s,color .4s;cursor:pointer;outline:none}
.service-row:hover,.service-row:focus,.service-row.is-active{opacity:1;padding-left:.8rem;color:var(--signal)}
.service-row>span{grid-area:no;font:8px var(--mono)}
.service-row h3{grid-area:title;margin:0;font-size:clamp(1.45rem,2.4vw,2.65rem);font-weight:400;letter-spacing:-.04em}
.service-row p{grid-area:copy;margin:0;color:#858a86;font-size:.76rem}
.service-row i{grid-area:arrow;font-style:normal;font-size:1.4rem;transition:transform .4s var(--ease)}
.service-row:hover i,.service-row.is-active i{transform:rotate(45deg)}
.service-frame{position:sticky;top:calc(var(--header) + 2rem);aspect-ratio:4/5;overflow:hidden;background:#202522}
.service-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(.62) contrast(1.05);transition:opacity .25s,transform 1s var(--ease)}
.service-frame:hover img{transform:scale(1.035)}
.service-frame.is-changing img{opacity:.12;transform:scale(1.045)}
.service-frame::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,10,9,.72),transparent 45%)}
.service-frame__corners i{position:absolute;z-index:3;width:1.8rem;height:1.8rem;border-color:var(--signal);border-style:solid}.service-frame__corners i:nth-child(1){left:1rem;top:1rem;border-width:1px 0 0 1px}.service-frame__corners i:nth-child(2){right:1rem;top:1rem;border-width:1px 1px 0 0}.service-frame__corners i:nth-child(3){left:1rem;bottom:1rem;border-width:0 0 1px 1px}.service-frame__corners i:nth-child(4){right:1rem;bottom:1rem;border-width:0 1px 1px 0}
.service-frame__caption{position:absolute;z-index:3;left:2rem;right:2rem;bottom:2rem;display:flex;justify-content:space-between;font:8px var(--mono);text-transform:uppercase;letter-spacing:.08em}
.service-frame__scope{position:absolute;z-index:4;left:50%;top:50%;width:4.8rem;height:4.8rem;border:1px solid rgba(255,255,255,.55);border-radius:50%;transform:translate(-50%,-50%)}
.service-frame__scope::before,.service-frame__scope::after{content:'';position:absolute;background:rgba(255,255,255,.55)}.service-frame__scope::before{left:50%;top:-1.2rem;width:1px;height:7.2rem}.service-frame__scope::after{top:50%;left:-1.2rem;height:1px;width:7.2rem}.service-frame__scope i{position:absolute;inset:.8rem;border:1px solid rgba(255,255,255,.28);border-radius:50%}
.wide-cta-wrap{margin-top:5rem}.wide-cta{display:flex;justify-content:space-between;align-items:center;padding:1.3rem 0;border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light);font:9px var(--mono);text-transform:uppercase;letter-spacing:.08em}.wide-cta i{font-style:normal;font-size:1.2rem}

.method{padding-top:10rem;padding-bottom:11rem;background:var(--paper)}
.method__head{display:grid;grid-template-columns:1fr 2.2fr 1fr;gap:2rem;align-items:end}
.method__head>p{margin:0;color:#626660;line-height:1.6}
.method__rail{display:grid;grid-template-columns:repeat(6,minmax(17rem,1fr));margin-top:7rem;border-top:1px solid var(--line);border-left:1px solid var(--line);overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}
.method__rail::-webkit-scrollbar{display:none}
.method__rail article{position:relative;min-height:29rem;display:flex;flex-direction:column;padding:1.2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);scroll-snap-align:start;overflow:hidden;transition:color .45s}
.method__rail article::before{content:'';position:absolute;inset:100% 0 0;background:var(--ink);transition:inset .55s var(--ease)}
.method__rail article:hover::before{inset:0}.method__rail article:hover{color:white}
.method__rail article>*{position:relative;z-index:1}
.method__rail article>div{display:flex;justify-content:space-between;font:8px var(--mono);text-transform:uppercase}.method__rail article small{color:#7c817c}
.method__rail h3{margin:auto 0 .8rem;font-size:2rem;font-weight:400;letter-spacing:-.045em}
.method__rail p{min-height:3.5rem;margin:0;color:#737772;font-size:.78rem;line-height:1.5}

.control-room{position:relative;min-height:110vh;display:grid;grid-template-columns:1fr 1fr;align-items:end;overflow:hidden;padding:var(--gutter);background:var(--ink);color:white}
.control-room__media,.control-room__shade{position:absolute;inset:0;margin:0}.control-room__media img{height:100%;object-fit:cover;object-position:center;filter:saturate(.5)}
.control-room__shade{background:linear-gradient(90deg,rgba(7,9,8,.78),rgba(7,9,8,.08)),linear-gradient(0deg,rgba(7,9,8,.76),transparent 62%)}
.control-room__copy{position:relative;z-index:2;align-self:start;padding-top:calc(var(--header) + 4rem)}
.control-room__copy h2{margin:3rem 0 0;font-size:clamp(3.8rem,7vw,8rem);font-weight:400;line-height:.86;letter-spacing:-.065em}
.control-panel{position:relative;z-index:3;align-self:end;background:rgba(13,16,15,.72);border:1px solid rgba(255,255,255,.26);backdrop-filter:blur(16px)}
.control-panel__top{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:1rem;padding:1rem;border-bottom:1px solid var(--line-light);font:8px var(--mono);text-transform:uppercase;letter-spacing:.08em}.control-panel__top b{font-weight:400;color:var(--signal)}
.control-panel__grid{display:grid;grid-template-columns:1fr 1fr}
.control-panel article{min-height:12rem;display:flex;flex-direction:column;padding:1rem;border-right:1px solid var(--line-light);border-bottom:1px solid var(--line-light)}.control-panel article:nth-child(2n){border-right:0}.control-panel article:nth-child(n+3){border-bottom:0}
.control-panel small{font:8px var(--mono);text-transform:uppercase;color:#969b97}.control-panel strong{margin:auto 0 .5rem;font-size:3.7rem;font-weight:400;letter-spacing:-.07em}.control-panel sup{font-size:.8rem;vertical-align:top}.control-panel p{margin:auto 0 0;font:7px var(--mono);text-transform:uppercase;color:#a1a5a2}.control-panel h3{margin:auto 0 0;font-size:1.6rem;font-weight:400;line-height:1.05}
.meter{height:2px;background:rgba(255,255,255,.18)}.meter i{display:block;width:var(--w);height:100%;background:var(--signal)}
.panel-chart svg{width:100%;margin-top:auto;fill:none;stroke:var(--signal);stroke-width:1.5}.panel-chart>span{font:6px var(--mono);color:#777b77}
.panel-chart path{stroke-dasharray:420;stroke-dashoffset:420}.control-panel.is-visible .panel-chart path{animation:draw-control 1.5s .2s var(--ease) forwards}.control-panel .meter i{transform:scaleX(0);transform-origin:left}.control-panel.is-visible .meter i{animation:fill-control 1.1s .15s var(--ease) forwards}
@keyframes draw-control{to{stroke-dashoffset:0}}@keyframes fill-control{to{transform:scaleX(1)}}

.experience{position:relative;padding-top:10rem;padding-bottom:12rem;background:var(--paper-2)}
.experience__head{display:grid;grid-template-columns:1fr 2.1fr 1fr;gap:2rem;align-items:end;margin-bottom:7rem}.experience__head>p{margin:0;color:#60645f;line-height:1.6}
.home-experience-film{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:24rem 24rem;gap:1px;margin-bottom:7rem;background:var(--ink)}
.home-experience-film a{position:relative;overflow:hidden;color:white}.home-experience-film__main{grid-row:1/3}.home-experience-film img{width:100%;height:100%;object-fit:cover;filter:saturate(.75);transition:transform 1.1s var(--ease),filter .6s}.home-experience-film a:hover img{transform:scale(1.035);filter:saturate(1)}.home-experience-film a::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,9,8,.74),transparent 55%)}.home-experience-film span{position:absolute;z-index:2;left:1.3rem;top:1.3rem;font:8px var(--mono);text-transform:uppercase;letter-spacing:.08em}.home-experience-film h3{position:absolute;z-index:2;left:1.3rem;right:1.3rem;bottom:1.3rem;max-width:43rem;margin:0;font-size:clamp(2.4rem,4vw,5rem);font-weight:400;line-height:.92;letter-spacing:-.055em}
.project-registry{position:relative;z-index:2;border-top:1px solid var(--line)}
.registry-row{display:grid;grid-template-columns:3.2rem 2fr 1fr auto;gap:2rem;align-items:center;min-height:7rem;border-bottom:1px solid var(--line);transition:padding .45s var(--ease),color .35s;cursor:crosshair}
.registry-row:hover,.registry-row.is-active{padding-left:1rem;color:#4d6500}
.registry-row__no{font:8px var(--mono)}.registry-row h3{margin:0;font-size:clamp(1.65rem,3vw,3.4rem);font-weight:400;letter-spacing:-.05em}.registry-row p,.registry-row b{margin:0;font:8px var(--mono);text-transform:uppercase;letter-spacing:.05em}.registry-row p{color:#686c67}.registry-row b{font-weight:400;text-align:right}
.registry-preview{position:fixed;z-index:20;width:min(30vw,29rem);aspect-ratio:4/3;left:0;top:0;pointer-events:none;overflow:hidden;opacity:0;transform:translate(-50%,-50%) scale(.9);transition:opacity .28s,transform .35s var(--ease);background:var(--ink)}
.registry-preview.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}.registry-preview img{width:100%;height:100%;object-fit:cover;filter:saturate(.65)}.registry-preview span{position:absolute;left:1rem;bottom:1rem;padding:.4rem .5rem;background:var(--signal);font:7px var(--mono)}

.procurement{display:grid;grid-template-columns:.92fr 1.08fr;min-height:100vh;background:var(--ink);color:white}
.procurement__copy{padding-top:9rem;padding-bottom:8rem;display:flex;flex-direction:column}.procurement__copy>.eyebrow{margin:auto 0 1.2rem}.eyebrow{font:8px var(--mono);text-transform:uppercase;letter-spacing:.12em}.procurement__copy h2{font-size:clamp(4rem,7.1vw,8rem)}.procurement__copy>p:not(.eyebrow){max-width:32rem;margin:2rem 0 3.5rem;color:#a8aca9;line-height:1.65}
.arrow-link{display:flex;justify-content:space-between;align-items:center;width:min(100%,31rem);padding:1rem 0;border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light);font:9px var(--mono);text-transform:uppercase}.arrow-link i{font-style:normal;font-size:1.1rem}
.route-map{position:relative;display:grid;place-items:center;border-left:1px solid var(--line-light);overflow:hidden}.route-map svg{width:100%;height:100%;min-height:45rem}.route-map__grid{fill:none;stroke:rgba(255,255,255,.08);stroke-width:1}.route-map__line{fill:none;stroke:#6a6f6b;stroke-width:1.5;stroke-dasharray:5 7}.route-map__pulse{fill:none;stroke:var(--signal);stroke-width:2;stroke-dasharray:90 900;animation:route 7s linear infinite}.route-map circle{fill:var(--signal)}.route-map text{fill:white;font:9px var(--mono);letter-spacing:.05em}
@keyframes route{to{stroke-dashoffset:-990}}
.route-map__note{position:absolute;left:2rem;right:2rem;bottom:2rem;display:flex;justify-content:space-between;padding-top:1rem;border-top:1px solid var(--line-light);font:8px var(--mono);text-transform:uppercase}.route-map__note span{color:#858a86}.route-map__note b{font-weight:400}

.about{padding-top:10rem;padding-bottom:10rem;background:var(--paper)}
.about__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;margin-top:6rem}.about__number{align-self:start;display:grid;grid-template-columns:auto 1fr;align-items:end;gap:1.5rem;border-top:1px solid var(--line);padding-top:1rem}.about__number strong{font-size:clamp(8rem,18vw,20rem);font-weight:400;line-height:.72;letter-spacing:-.09em}.about__number sup{font-size:2rem;vertical-align:top;color:#6d8800}.about__number span{padding-bottom:.3rem;font:8px/1.5 var(--mono);text-transform:uppercase}
.about__copy h2{margin:1.5rem 0 3rem}.about__lead{font-size:clamp(1.5rem,2.5vw,2.8rem);line-height:1.13;letter-spacing:-.04em}.about__copy>p:last-child{max-width:38rem;color:#686c67;line-height:1.65}
.about__link{display:flex;justify-content:space-between;align-items:center;max-width:38rem;margin-top:3rem;padding:1rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font:8px var(--mono);text-transform:uppercase}.about__link i{font-style:normal}
.about__facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:8rem;border-top:1px solid var(--line)}.about__facts div{display:flex;justify-content:space-between;gap:1rem;padding:1.2rem 1rem 1.2rem 0;border-right:1px solid var(--line);font:8px var(--mono);text-transform:uppercase}.about__facts div+div{padding-left:1rem}.about__facts div:last-child{border:0}.about__facts span{color:#6c706b}.about__facts b{font-weight:400;text-align:right}

.contact{background:var(--signal);color:var(--ink)}
.contact__top{padding-top:7rem;padding-bottom:7rem}.contact__top>p{margin:6rem 0 1.5rem;font:9px var(--mono);text-transform:uppercase}.contact__mail{position:relative;display:block;width:max-content;max-width:100%;padding-right:5rem;box-sizing:border-box;font-size:clamp(5rem,11vw,13rem);font-weight:400;line-height:.8;letter-spacing:-.075em;text-transform:uppercase}.contact__mail b{font:inherit}.contact__mail>span{position:absolute;right:0;top:1rem;font-size:2rem;letter-spacing:0}
.contact__bottom{display:grid;grid-template-columns:1.15fr .85fr;gap:10vw;padding-top:6rem;padding-bottom:6rem;border-top:1px solid rgba(13,16,15,.25)}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}.contact-form label{display:grid;gap:.7rem;padding:1rem 0;border-bottom:1px solid rgba(13,16,15,.3)}.contact-form label span{font:8px var(--mono);text-transform:uppercase}.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:0;outline:0;background:transparent;resize:vertical;appearance:none}.contact-form__message{grid-column:1/-1}.contact-form button{grid-column:1/-1;display:flex;justify-content:space-between;margin-top:2rem;padding:1rem;border:1px solid var(--ink);background:var(--ink);color:white;font:9px var(--mono);text-transform:uppercase}.contact-form button i{font-style:normal}.contact-form button:disabled{cursor:wait;opacity:.68}.contact-form__honey{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;padding:0!important;border:0!important}.contact__details{display:grid;grid-template-columns:1fr 1fr;align-content:end;gap:2rem}.contact__details div:first-child{grid-column:1/-1}.contact__details span{display:block;margin-bottom:.7rem;font:8px var(--mono);text-transform:uppercase}.contact__details p,.contact__details a{margin:0;font-size:1.15rem;line-height:1.5}

.site-footer{padding:5rem var(--gutter) 2rem;background:var(--ink);color:white}
.site-footer__brand{min-height:24rem;display:flex;align-items:flex-start;justify-content:space-between}.brand--footer .brand__mark{fill:white}.brand--footer .brand__accent{fill:var(--signal)}.site-footer__brand>p{margin:0;font-size:clamp(4rem,9vw,10rem);line-height:.76;letter-spacing:-.075em;text-align:right}
.site-footer__meta{display:grid;grid-template-columns:1fr 2fr auto;gap:2rem;padding-top:1.3rem;border-top:1px solid var(--line-light);color:#8f9490;font:7px/1.6 var(--mono);text-transform:uppercase}.site-footer__meta a{color:white}

.reveal{opacity:0;transform:translateY(2rem);transition:opacity .85s var(--ease),transform .85s var(--ease)}.reveal.is-visible{opacity:1;transform:none}.reveal-image{clip-path:inset(0 0 100% 0);transition:clip-path 1.15s var(--ease)}.reveal-image.is-visible{clip-path:inset(0)}
.cursor{position:fixed;z-index:2000;left:0;top:0;width:1.15rem;height:1.15rem;border:1px solid white;border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);mix-blend-mode:difference;transition:width .25s,height .25s,background .25s,border-color .25s}.cursor i{position:absolute;left:50%;top:50%;width:2px;height:2px;background:white;border-radius:50%;transform:translate(-50%,-50%)}.cursor span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);opacity:0;color:var(--ink);font:7px var(--mono);letter-spacing:.08em}.cursor.is-active{width:4.2rem;height:4.2rem;background:white;mix-blend-mode:normal}.cursor.is-active i{opacity:0}.cursor.is-active span{opacity:1}.cursor.is-dark{border-color:var(--ink);mix-blend-mode:normal}.cursor.is-dark i{background:var(--ink)}
.toast{position:fixed;z-index:2100;right:1rem;bottom:1rem;max-width:min(32rem,calc(100vw - 2rem));padding:1rem 1.2rem;background:var(--ink);color:white;font-size:.75rem;line-height:1.45;transform:translateY(150%);transition:transform .4s var(--ease),background .3s}.toast.is-visible{transform:none}.toast.is-error{background:#62192d}.toast.is-success{background:#0d100f}
.lang-switch{padding:.55rem .7rem;border:1px solid currentColor;background:transparent;color:inherit;font:8px var(--mono);letter-spacing:.08em}
.language-panel{position:fixed;z-index:2600;inset:0;display:grid;grid-template-rows:auto 1fr auto;padding:2rem var(--gutter);background:var(--signal);color:var(--ink);clip-path:inset(0 0 100%);transition:clip-path .7s var(--ease);pointer-events:none}.language-panel.is-open{clip-path:inset(0);pointer-events:auto}.language-panel__top{display:flex;justify-content:space-between;align-items:center;font:9px var(--mono);text-transform:uppercase}.language-panel__close{width:3rem;height:3rem;border:1px solid var(--ink);background:transparent;font-size:1.4rem}.language-panel__options{align-self:center;display:grid}.language-panel__options button{display:grid;grid-template-columns:4rem 1fr auto;align-items:center;padding:1rem 0;border:0;border-bottom:1px solid rgba(13,16,15,.3);background:transparent;text-align:left}.language-panel__options small{font:8px var(--mono)}.language-panel__options span{font-size:clamp(3.7rem,9vw,10rem);line-height:.85;letter-spacing:-.065em}.language-panel__options i{font-style:normal;font:8px var(--mono);opacity:0}.language-panel__options button.is-active i{opacity:1}.language-panel__bottom{display:flex;justify-content:space-between;font:8px var(--mono);text-transform:uppercase}
.page-transition{position:fixed;z-index:2550;inset:0;display:grid;grid-template-columns:repeat(5,1fr);overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s linear,visibility 0s .95s}.page-transition i{background:var(--signal);transform:scaleY(0);transform-origin:bottom;transition:transform .68s var(--ease)}.page-transition i:nth-child(2){transition-delay:.035s}.page-transition i:nth-child(3){transition-delay:.07s}.page-transition i:nth-child(4){transition-delay:.105s}.page-transition i:nth-child(5){transition-delay:.14s}.page-transition__mark{position:absolute;z-index:2;left:50%;top:50%;display:grid;gap:.25rem;text-align:center;color:var(--ink);font:600 clamp(1.05rem,1.45vw,1.4rem) var(--sans);letter-spacing:-.035em;opacity:0;transform:translate(-50%,-42%);transition:opacity .28s ease,transform .55s var(--ease)}.page-transition__mark small{font:7px var(--mono);letter-spacing:.17em}.is-leaving .page-transition,.is-arriving .page-transition{opacity:1;visibility:visible;transition-delay:0s}.is-leaving .page-transition i{transform:scaleY(1)}.is-leaving .page-transition__mark{opacity:1;transform:translate(-50%,-50%);transition-delay:.28s}.is-arriving .page-transition i{transform:scaleY(1);transform-origin:top;transition:none}.is-arriving .page-transition__mark{opacity:1;transform:translate(-50%,-50%);transition:none}.is-arriving.is-arrival-ready .page-transition i{transform:scaleY(0);transition:transform .72s var(--ease)}.is-arriving.is-arrival-ready .page-transition i:nth-child(1){transition-delay:.14s}.is-arriving.is-arrival-ready .page-transition i:nth-child(2){transition-delay:.105s}.is-arriving.is-arrival-ready .page-transition i:nth-child(3){transition-delay:.07s}.is-arriving.is-arrival-ready .page-transition i:nth-child(4){transition-delay:.035s}.is-arriving.is-arrival-ready .page-transition i:nth-child(5){transition-delay:0s}.is-arriving.is-arrival-ready .page-transition__mark{opacity:0;transform:translate(-50%,-58%);transition:opacity .22s ease,transform .45s var(--ease)}
html.csd-arriving body{background:var(--signal)}html.csd-arriving body>*{visibility:hidden}

@media(max-width:1050px){
  :root{--header:4.8rem}
  .site-header{grid-template-columns:1fr auto}.desktop-nav,.header-actions{display:none}.menu-toggle,.mobile-menu{display:flex}.mobile-menu{flex-direction:column}.brand__descriptor{display:none}
  .hero__title{font-size:clamp(5rem,13.3vw,9rem)}.hero__intro{width:min(38rem,58vw)}
  .services__head,.method__head,.experience__head{grid-template-columns:1fr 2fr}.services__head>p,.method__head>p,.experience__head>p{grid-column:2}.services__stage{grid-template-columns:1fr 1fr;gap:3rem}
  .control-room{grid-template-columns:1fr}.control-room__copy{max-width:60rem}.control-panel{width:min(100%,44rem);justify-self:end}
  .procurement{grid-template-columns:1fr}.route-map{min-height:70vw;border-left:0;border-top:1px solid var(--line-light)}
  .about__grid{grid-template-columns:1fr}.about__number{width:70%}.contact__bottom{gap:5vw}
  .cursor{display:none}
}

@media(max-width:700px){
  :root{--gutter:1rem;--header:4.6rem}
  .grain{opacity:.035}.page-progress{width:2px}.intro-mark{width:58vw}.intro-data{bottom:2.2rem}.intro-rule{bottom:1.5rem}
  .hero{min-height:100svh}.hero__topline{margin-top:var(--header);padding-top:.9rem}.hero__topline span:last-child{display:none}.hero__media img{object-position:56% center}.hero__veil{background:linear-gradient(90deg,rgba(6,8,7,.82),rgba(6,8,7,.28)),linear-gradient(0deg,rgba(6,8,7,.92),transparent 60%)}.hero__drawing{display:none}
  .hero__content{padding-top:3.5rem}.hero__eyebrow,.hero__title{max-width:100%}.hero__eyebrow{margin-bottom:1.2rem}.hero__title{font-size:clamp(4.1rem,20vw,7rem);line-height:.8}.title-mask--offset{padding-left:0}.title-mask--offset i{color:white;-webkit-text-stroke:0}
  .hero__intro{width:100%;margin:2rem 0 0;align-items:flex-end}.hero__intro>p{font-size:.88rem}.circle-link{flex-basis:5.2rem;width:5.2rem;height:5.2rem}.hero__footer{grid-template-columns:1fr 1fr}.hero__footer div{display:grid;padding:1rem}.hero__footer div:nth-child(2){border:0}.hero__footer div:last-child{display:none}
  .manifesto{padding-top:6rem}.manifesto__copy{display:block;margin-top:4rem}.kinetic-copy{font-size:clamp(3.4rem,15vw,5.8rem)}.manifesto__aside{margin:3rem 0 0 18%;display:grid}.ticker{margin-top:5rem}
  .services{padding-top:6rem;padding-bottom:7rem}.services__head,.method__head,.experience__head{display:block}.services__head h2,.method h2,.experience h2,.procurement h2,.about h2{font-size:clamp(3.4rem,15vw,5.8rem);margin-top:3rem}.services__head>p,.method__head>p,.experience__head>p{margin:2rem 0 0 18%}.services__stage{display:flex;flex-direction:column;margin-top:4rem}.service-frame{position:relative;top:auto;order:-1;width:100%;aspect-ratio:4/5}.service-row{grid-template-columns:1.8rem 1fr auto}.service-row p{display:none}.service-row h3{font-size:1.45rem}
  .method{padding-top:7rem;padding-bottom:8rem}.method__rail{grid-template-columns:repeat(6,82vw);margin-top:4rem}.method__rail article{min-height:23rem}
  .control-room{min-height:115svh;padding:var(--gutter);align-content:space-between}.control-room__copy{padding-top:calc(var(--header) + 2rem)}.control-room__copy h2{font-size:clamp(3.5rem,14vw,5.6rem);margin-top:2rem}.control-panel{align-self:end;width:100%}.control-panel article{min-height:9.5rem}.control-panel strong{font-size:3rem}.control-panel h3{font-size:1.25rem}
  .experience{padding-top:7rem;padding-bottom:8rem}.experience__head{margin-bottom:4rem}.home-experience-film{grid-template-columns:1fr 1fr;grid-template-rows:110vw 58vw;margin-bottom:5rem}.home-experience-film__main{grid-column:1/-1;grid-row:auto}.home-experience-film h3{font-size:11vw}.home-experience-film span{font-size:6px}.registry-row{grid-template-columns:2rem 1fr auto;gap:.7rem;min-height:6.5rem}.registry-row p{display:none}.registry-row h3{font-size:1.45rem}.registry-row b{font-size:6px}.registry-preview{display:none}
  .procurement{min-height:auto}.procurement__copy{padding-top:7rem;padding-bottom:6rem}.procurement__copy>.eyebrow{margin-top:5rem}.route-map{min-height:90vw}.route-map svg{min-height:0}.route-map__note{left:1rem;right:1rem;bottom:1rem;display:grid;gap:.6rem}
  .about{padding-top:7rem;padding-bottom:7rem}.about__grid{margin-top:4rem}.about__number{width:100%;grid-template-columns:auto 1fr}.about__number strong{font-size:43vw}.about__copy h2{margin-top:1rem}.about__facts{grid-template-columns:1fr;margin-top:5rem}.about__facts div,.about__facts div+div{padding:1rem 0;border-right:0;border-bottom:1px solid var(--line)}
  .contact__top{padding-top:6rem;padding-bottom:5rem}.contact__top>p{margin-top:5rem}.contact__mail{width:100%;padding-right:0;font-size:clamp(2.6rem,12vw,5rem)}.contact__mail b{display:block;max-width:100%;overflow-wrap:anywhere;text-wrap:balance}.contact__mail>span{right:0;top:-1rem}.contact__bottom{grid-template-columns:1fr;gap:5rem;padding-top:4rem;padding-bottom:5rem}.contact-form{grid-template-columns:1fr}.contact-form__message,.contact-form button{grid-column:auto}.contact__details{grid-template-columns:1fr}.contact__details div:first-child{grid-column:auto}
  .site-footer{padding-top:4rem}.site-footer__brand{min-height:17rem;display:grid}.site-footer__brand>p{font-size:17vw;text-align:left;align-self:end}.site-footer__meta{grid-template-columns:1fr;gap:1rem}.language-panel__options button{grid-template-columns:2rem 1fr auto}.language-panel__options span{font-size:16vw}.language-panel__bottom span:last-child{max-width:55%;text-align:right}
}

html.is-safari .grain{animation:none;transform:none}
@media(hover:none),(pointer:coarse){.cursor{display:none}.registry-row{cursor:default}.grain{animation:none;transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.site-intro{display:none}.reveal{opacity:1;transform:none}.reveal-image{clip-path:none}.title-mask i{transform:none}.kinetic-copy .word{opacity:1;transform:none}.grain{display:none}}

/* Cinematic delivery sequence */
.hero__media{--hero-x:0px;--hero-y:0px;transform:translate3d(var(--hero-x),var(--hero-y),0);transition:transform .7s var(--ease);will-change:transform}
.hero__drawing{--draw-x:0px;--draw-y:0px;transform:translate3d(var(--draw-x),var(--draw-y),0);transition:transform .9s var(--ease);will-change:transform}

.field-film{position:relative;height:340svh;background:var(--ink);color:white}
.field-film__sticky{--spot-x:68%;--spot-y:42%;position:sticky;top:0;height:100svh;overflow:hidden;background:#080b0a;isolation:isolate}
.field-film__visuals,.field-film__image,.field-film__wash,.field-film__grid{position:absolute;inset:0;margin:0}
.field-film__image{opacity:0;transform:scale(1.08);transition:opacity 1s var(--ease),transform 1.8s var(--ease);will-change:opacity,transform}
.field-film__image.is-active{opacity:1;transform:scale(1)}
.field-film__image img{height:100%;object-fit:cover;filter:saturate(.72) contrast(1.05)}
.field-film__image:nth-child(1) img{object-position:center 58%}.field-film__image:nth-child(2) img{object-position:center 42%}
.field-film__wash{z-index:1;background:radial-gradient(circle at var(--spot-x) var(--spot-y),transparent 0,rgba(5,8,7,.08) 14rem,rgba(5,8,7,.18) 32rem),linear-gradient(90deg,rgba(5,8,7,.86) 0,rgba(5,8,7,.42) 48%,rgba(5,8,7,.16)),linear-gradient(0deg,rgba(5,8,7,.9),transparent 54%)}
.field-film__grid{z-index:2;display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid rgba(255,255,255,.12);pointer-events:none}
.field-film__grid i{border-right:1px solid rgba(255,255,255,.12)}
.field-film__top{position:absolute;z-index:4;left:var(--gutter);right:var(--gutter);top:calc(var(--header) + 2rem);display:flex;justify-content:space-between;align-items:center}
.field-film__counter{font:8px var(--mono);letter-spacing:.12em}.field-film__counter b{color:var(--signal);font-weight:400}
.field-film__copies{position:absolute;z-index:4;left:var(--gutter);right:var(--gutter);bottom:9.5rem;height:min(41vw,34rem)}
.field-film__copy{position:absolute;inset:auto 0 0;pointer-events:none;opacity:0;transform:translateY(4rem);filter:blur(8px);transition:opacity .7s var(--ease),transform .9s var(--ease),filter .7s var(--ease)}
.field-film__copy.is-active{opacity:1;transform:none;filter:none;pointer-events:auto}
.field-film__copy p{margin:0 0 1.2rem;font:8px var(--mono);text-transform:uppercase;letter-spacing:.13em;color:var(--signal)}
.field-film__copy h2{max-width:73rem;margin:0;font-size:clamp(4.8rem,10vw,11rem);font-weight:400;line-height:.78;letter-spacing:-.075em;text-transform:uppercase}
.field-film__copy span{display:block;max-width:29rem;margin:2rem 0 0 51%;color:rgba(255,255,255,.72);font-size:1rem;line-height:1.55}
.field-film__rail{position:absolute;z-index:4;right:var(--gutter);top:50%;display:grid;gap:.55rem;transform:translateY(-50%)}
.field-film__rail i{display:block;width:2px;height:3.5rem;background:rgba(255,255,255,.25);transition:height .55s var(--ease),background .4s}.field-film__rail i.is-active{height:7rem;background:var(--signal)}
.field-film__meta{position:absolute;z-index:4;left:var(--gutter);right:var(--gutter);bottom:2rem;display:flex;justify-content:space-between;padding-top:1rem;border-top:1px solid rgba(255,255,255,.24);font:7px var(--mono);text-transform:uppercase;letter-spacing:.1em}
.field-film__steps{position:absolute;inset:0}.field-film__steps i{display:block;height:calc(100% / 3)}

.build-reveal{padding-top:10rem;padding-bottom:11rem;background:var(--paper)}
.build-reveal__head{display:grid;grid-template-columns:1fr 2.1fr 1fr;gap:2rem;align-items:end}
.build-reveal__head h2{margin:0;font-size:clamp(4.2rem,8vw,8.8rem);font-weight:400;line-height:.86;letter-spacing:-.065em}
.build-reveal__head>p{margin:0;color:#60645f;line-height:1.65}
.build-reveal__stage{--reveal:52%;position:relative;height:min(76vh,54rem);margin-top:7rem;overflow:hidden;background:var(--ink);cursor:ew-resize}
.build-reveal__stage::after{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(0deg,rgba(7,9,8,.55),transparent 35%)}
.build-reveal__stage img{position:absolute;inset:0;height:100%;object-fit:cover;user-select:none;pointer-events:none}
.build-reveal__after{filter:saturate(.78)}
.build-reveal__before{position:absolute;z-index:1;inset:0 auto 0 0;width:var(--reveal);overflow:hidden;border-right:1px solid rgba(255,255,255,.8)}
.build-reveal__before img{width:calc(100vw - (2 * var(--gutter)));max-width:none;filter:saturate(.72)}
.build-reveal__handle{position:absolute;z-index:4;left:var(--reveal);top:0;bottom:0;width:1px;pointer-events:none}.build-reveal__handle i{position:absolute;inset:0;background:rgba(255,255,255,.8)}.build-reveal__handle b{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:4.7rem;height:4.7rem;border-radius:50%;background:var(--signal);color:var(--ink);font-weight:400;transform:translate(-50%,-50%);box-shadow:0 0 0 .7rem rgba(199,246,64,.14)}
.build-reveal__labels{position:absolute;z-index:3;left:1.2rem;right:1.2rem;bottom:1.2rem;display:flex;justify-content:space-between;color:white;font:7px var(--mono);text-transform:uppercase;letter-spacing:.1em;pointer-events:none}
.build-reveal__range{position:absolute;z-index:5;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}
.build-reveal__signals{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line)}
.build-reveal__signals article{position:relative;min-height:12rem;display:flex;flex-direction:column;justify-content:space-between;padding:1.2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}
.build-reveal__signals span{font:8px var(--mono);color:#71756f}.build-reveal__signals strong{position:relative;z-index:1;font-size:clamp(1.5rem,2.6vw,3rem);font-weight:400;letter-spacing:-.045em}.build-reveal__signals i{position:absolute;inset:100% 0 0;background:var(--signal);transition:inset .55s var(--ease)}.build-reveal__signals article:hover i{inset:0}

html.is-safari .field-film__wash{background:linear-gradient(90deg,rgba(5,8,7,.86),rgba(5,8,7,.22)),linear-gradient(0deg,rgba(5,8,7,.9),transparent 54%)}
html.is-safari .field-film__copy{filter:none}

@media(max-width:1050px){
  .build-reveal__head{grid-template-columns:1fr 2fr}.build-reveal__head>p{grid-column:2}.field-film__copy span{margin-left:40%}
}
@media(max-width:700px){
  .field-film{height:300svh}.field-film__top{top:calc(var(--header) + 1.5rem)}.field-film__grid{grid-template-columns:repeat(2,1fr)}.field-film__grid i:nth-child(n+3){display:none}
  .field-film__copies{bottom:8rem;height:67vh}.field-film__copy{bottom:0}.field-film__copy h2{max-width:100%;font-size:clamp(2.3rem,11.5vw,4.8rem);line-height:.84;overflow-wrap:anywhere;text-wrap:balance}.field-film__copy span{max-width:80%;margin:1.5rem 0 0 18%;font-size:.86rem}.field-film__rail{right:1rem}.field-film__rail i{height:2.2rem}.field-film__rail i.is-active{height:4.4rem}.field-film__meta{bottom:1rem}
  .build-reveal{padding-top:7rem;padding-bottom:7rem}.build-reveal__head{display:block}.build-reveal__head h2{max-width:100%;margin-top:3rem;font-size:clamp(2.8rem,12.2vw,5rem);overflow-wrap:anywhere;text-wrap:balance}.build-reveal__head>p{margin:2rem 0 0 18%}.build-reveal__stage{height:70svh;margin-top:4rem}.build-reveal__before img{width:calc(100vw - 2rem)}.build-reveal__handle b{width:3.8rem;height:3.8rem}.build-reveal__signals{grid-template-columns:1fr}.build-reveal__signals article{min-height:8rem}
}
@media(hover:none),(pointer:coarse){.field-film__wash{--spot-x:65%;--spot-y:35%}.build-reveal__signals article:hover i{inset:100% 0 0}}
@media(prefers-reduced-motion:reduce){.field-film{height:100svh}.field-film__steps{display:none}.field-film__image:not(:first-child),.field-film__copy:not(:first-child),.field-film__rail{display:none}.field-film__image:first-child{opacity:1;transform:none}}

/* Wide-screen rhythm: grow the canvas and the breathing room, not just the type. */
@media(min-width:1600px){
  :root{--header:6rem}
  .site-header{column-gap:4rem}
  .hero__content{padding-top:clamp(5rem,9vh,8rem);padding-bottom:4rem}.hero__title{max-width:76rem;font-size:clamp(8rem,9vw,11.25rem);line-height:.79}.hero__intro{width:min(38rem,34vw)}
  .manifesto{padding-top:clamp(10rem,12vh,14rem);padding-bottom:6rem}.manifesto__copy{margin-top:clamp(6rem,9vh,9rem)}.kinetic-copy{max-width:94rem;font-size:clamp(6rem,7.2vw,8.5rem)}.manifesto__aside{max-width:23rem}
  .services,.method,.experience,.about{padding-top:clamp(11rem,13vh,15rem);padding-bottom:clamp(12rem,14vh,17rem)}
  .services__head,.method__head,.experience__head,.build-reveal__head{grid-template-columns:.8fr 2fr .8fr;gap:clamp(3rem,5vw,7rem)}
  .services__head h2,.method h2,.experience h2,.procurement h2,.about h2{font-size:clamp(6rem,6.4vw,8rem)}
  .services__stage{margin-top:clamp(7rem,9vh,10rem);gap:clamp(5rem,7vw,10rem)}.service-row{min-height:8rem}.service-frame{width:min(36vw,39rem)}
  .method__rail{margin-top:clamp(6rem,9vh,10rem)}.method__rail article{min-height:30rem;padding:2rem}
  .control-room{min-height:105svh}.control-room__copy h2{max-width:49rem;font-size:clamp(5.5rem,5.8vw,7.3rem)}.control-panel{width:min(46rem,42vw)}
  .experience__head{margin-bottom:clamp(7rem,9vh,10rem)}.home-experience-film{grid-template-rows:29rem 29rem;margin-bottom:9rem}.project-registry{margin-top:2rem}
  .procurement__copy{padding-top:clamp(11rem,14vh,15rem);padding-bottom:clamp(9rem,12vh,13rem)}.route-map svg{min-height:52rem}
  .about__grid{gap:clamp(7rem,10vw,14rem);margin-top:8rem}.about__copy{max-width:48rem}.about__facts{margin-top:10rem}
  .contact__top{padding-top:9rem;padding-bottom:9rem}.contact__mail{font-size:clamp(8rem,9vw,11rem)}.contact__bottom{padding-top:8rem;padding-bottom:8rem}
  .site-footer{padding-top:7rem}.site-footer__brand{min-height:30rem}.site-footer__brand>p{font-size:clamp(7rem,7.2vw,9rem)}
  .field-film__copies{bottom:11rem;height:min(34vw,36rem)}.field-film__copy h2{max-width:76rem;font-size:clamp(7rem,7.4vw,9.25rem)}
  .build-reveal{padding-top:13rem;padding-bottom:14rem}.build-reveal__head h2{font-size:clamp(6rem,6.4vw,8rem)}.build-reveal__stage{margin-top:9rem}
}
@media(min-width:2300px){
  :root{--gutter:clamp(8rem,5vw,11rem)}
  body{font-size:17px}.hero__content,.services__head,.method__head,.experience__head,.about__grid,.contact__bottom{max-width:142rem;margin-left:auto;margin-right:auto;width:100%}
  .section-label,.eyebrow,.hero__eyebrow{letter-spacing:.15em}
}

/* Delivery refinement: unified iconography, adaptive chrome and mobile navigation. */
.ui-arrow{display:inline-grid;place-items:center;flex:0 0 auto;width:2.65rem;height:2.65rem;border:1px solid currentColor;border-radius:50%;transition:transform .38s var(--ease),background .38s,color .38s,border-color .38s}
.ui-arrow svg{display:block;width:1rem;height:1rem;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.ui-arrow--small{width:2rem;height:2rem}.ui-arrow--small svg{width:.78rem;height:.78rem}.ui-arrow--bare{width:1.4rem;height:1.4rem;border:0}.ui-arrow--bare svg{width:.9rem;height:.9rem}
a:hover>.ui-arrow,button:hover>.ui-arrow{transform:translate3d(.13rem,-.13rem,0)}
.service-row>.ui-arrow{grid-area:arrow}.service-row:hover>.ui-arrow,.service-row:focus-visible>.ui-arrow,.service-row.is-active>.ui-arrow{background:var(--signal);border-color:var(--signal);color:var(--ink);transform:translate3d(.13rem,-.13rem,0)}
.contact__mail>.ui-arrow{right:.5rem;top:.6rem;width:3.5rem;height:3.5rem}.contact__mail>.ui-arrow svg{width:1.25rem;height:1.25rem}
.contact-form button>.ui-arrow{border-color:rgba(255,255,255,.65)}

.mobile-header-actions{display:none;justify-self:end;align-items:center;gap:.55rem}
.lang-switch{min-width:2.8rem;min-height:2.8rem;display:inline-grid;place-items:center;padding:.55rem;border-color:color-mix(in srgb,currentColor 55%,transparent);transition:background .3s,color .3s,border-color .3s}
.lang-switch:hover,.lang-switch:focus-visible{background:currentColor;color:var(--ink);outline:0}
.site-header.is-on-light{color:var(--ink);border-color:rgba(13,16,15,.18)}
.site-header.is-on-light::before{background:rgba(233,231,223,.82);opacity:1}
.site-header.is-on-signal::before{background:rgba(199,246,64,.83);opacity:1}
.site-header.is-on-light .brand__accent{fill:var(--ink)}
body.menu-open .site-header{color:#fff;border-color:rgba(255,255,255,.16)}
body.menu-open .site-header::before{background:rgba(13,16,15,.88);opacity:1}
body.menu-open .site-header .brand__accent{fill:var(--signal)}

.mobile-menu{isolation:isolate;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;pointer-events:none}.mobile-menu.is-open{pointer-events:auto}
.mobile-menu::before{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),radial-gradient(circle at 88% 12%,rgba(199,246,64,.11),transparent 28%);background-size:4.5rem 4.5rem,4.5rem 4.5rem,auto}
.mobile-menu::after{content:'CONTROL / BUILT IN';position:absolute;z-index:-1;right:-.15em;bottom:.08em;color:rgba(255,255,255,.025);font:600 clamp(4.2rem,18vw,9rem)/.72 var(--sans);letter-spacing:-.075em;text-align:right;max-width:7em;pointer-events:none}
.mobile-menu__status{display:flex;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--line-light);font:7px var(--mono);letter-spacing:.11em;text-transform:uppercase;color:#8f9490}
.mobile-menu nav{margin:clamp(2.3rem,7vh,5rem) 0 1.25rem}
.mobile-menu nav a{position:relative;grid-template-columns:2.2rem 1fr 1.5rem;overflow:hidden;transition:padding .35s var(--ease),color .35s}
.mobile-menu nav a::after{content:'';justify-self:end;align-self:center;width:.55rem;height:.55rem;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);opacity:.45;transition:transform .35s,opacity .35s}
.mobile-menu nav a:hover,.mobile-menu nav a:focus-visible{padding-left:.65rem;color:var(--signal);outline:0}.mobile-menu nav a:hover::after,.mobile-menu nav a:focus-visible::after{opacity:1;transform:translateX(.15rem) rotate(45deg)}
.mobile-menu nav a[aria-current=page]{color:var(--signal)}.mobile-menu nav a[aria-current=page]::after{opacity:1}.mobile-menu nav a[aria-current=page] small::after{content:'';display:inline-block;width:.3rem;height:.3rem;margin-left:.45rem;border-radius:50%;background:var(--signal);vertical-align:middle}
.mobile-menu.is-open nav a{animation:menu-item-in .62s both var(--ease)}.mobile-menu.is-open nav a:nth-child(2){animation-delay:.045s}.mobile-menu.is-open nav a:nth-child(3){animation-delay:.09s}.mobile-menu.is-open nav a:nth-child(4){animation-delay:.135s}.mobile-menu.is-open nav a:nth-child(5){animation-delay:.18s}
@keyframes menu-item-in{from{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:none}}
.mobile-menu__cta{position:relative;display:grid;grid-template-columns:2.2rem 1fr auto;align-items:center;gap:.2rem;margin:0 0 1rem;padding:1rem 1rem 1rem 0;border-top:1px solid rgba(199,246,64,.45);border-bottom:1px solid rgba(199,246,64,.45);color:var(--signal);transition:padding .35s var(--ease),background .35s,color .35s}.mobile-menu__cta small{font:8px var(--mono)}.mobile-menu__cta>span:nth-child(2){font-size:clamp(1.35rem,5vw,2rem);letter-spacing:-.035em}.mobile-menu__cta:hover,.mobile-menu__cta:focus-visible{padding-left:1rem;background:var(--signal);color:var(--ink);outline:0}.mobile-menu__cta .ui-arrow{width:2.35rem;height:2.35rem}
.mobile-menu__foot{margin-top:auto;padding-top:1rem;border-top:1px solid var(--line-light)}.mobile-menu__foot a{color:#fff;text-transform:none}

.method__rail{gap:.75rem;border:0;scroll-snap-type:x mandatory;scroll-padding-inline:0}
.method__rail:focus-visible{outline-offset:.65rem}
.method__rail article{min-height:31rem;padding:0;border:1px solid var(--line);background:rgba(255,255,255,.16)}
.method__rail article::before{background:var(--ink)}
.method-card__top{padding:1rem 1.1rem;border-bottom:1px solid var(--line)}
.method-card__visual{position:relative;z-index:1;height:14rem;margin:0;overflow:hidden;background:var(--ink)}
.method-card__visual::before{content:'';position:absolute;z-index:2;inset:0;background:linear-gradient(0deg,rgba(13,16,15,.4),transparent 55%),linear-gradient(90deg,transparent 49.8%,rgba(199,246,64,.55) 50%,transparent 50.2%);background-size:auto,3.5rem 100%;mix-blend-mode:screen;opacity:.7}
.method-card__visual::after{content:'';position:absolute;z-index:3;left:1rem;bottom:1rem;width:2rem;height:2rem;border-left:1px solid var(--signal);border-bottom:1px solid var(--signal)}
.method-card__visual img{height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08) brightness(.7);transition:filter .7s,transform 1s var(--ease)}
.method-card__visual>i{position:absolute;z-index:3;left:50%;top:50%;width:.55rem;height:.55rem;border:1px solid var(--signal);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 .42rem rgba(199,246,64,.13)}
.method-card__copy{display:block!important;margin-top:auto;padding:1.25rem 1.1rem 1.35rem;font:inherit!important;text-transform:none!important}
.method__rail h3{margin:0 0 .7rem}.method__rail p{min-height:0}
.method__rail article:hover .method-card__visual img{filter:grayscale(.15) contrast(1.04) brightness(.82);transform:scale(1.045)}
.method__rail article:hover .method-card__top{border-color:rgba(255,255,255,.2)}
.method__progress{display:none;align-items:center;gap:1rem;margin-top:1.25rem}.method__progress>i{flex:1;height:1px;background:var(--line);overflow:hidden}.method__progress>i b{display:block;width:100%;height:100%;background:var(--ink);transform:scaleX(0);transform-origin:left}.method__progress>span{font:7px var(--mono);letter-spacing:.08em}.method__progress em{font-style:normal}

:focus-visible{outline:2px solid var(--signal);outline-offset:4px}
@media(max-width:1050px){
  .mobile-header-actions{display:flex}.menu-toggle{display:block}.site-header>.menu-toggle{display:none}
  .site-header{grid-template-columns:minmax(0,1fr) auto;column-gap:1rem}.brand{min-width:0}.brand__name{font-size:1rem}
  .mobile-menu{padding-top:calc(var(--header) + 1.35rem)}
}
@media(max-width:700px){
  .site-header{padding-inline:1rem}.mobile-header-actions{gap:.45rem}.lang-switch--header,.menu-toggle{width:2.85rem;height:2.85rem;min-width:2.85rem;min-height:2.85rem}.brand__mark{width:1.9rem;height:1.9rem}
  .mobile-menu{padding-inline:1.25rem;padding-bottom:max(1.4rem,env(safe-area-inset-bottom))}.mobile-menu nav a{padding:.85rem 0}.mobile-menu nav span{font-size:clamp(2.2rem,10vw,3.45rem)}.mobile-menu__foot{display:grid;gap:.55rem}.mobile-menu__foot a{text-align:left}
  .method__rail{grid-template-columns:repeat(6,calc(100vw - 3.25rem));gap:.75rem;margin-right:calc(var(--gutter)*-1);padding-right:var(--gutter)}
  .method__rail article{min-height:27.5rem}.method-card__visual{height:15rem}.method-card__copy{padding-bottom:1.6rem}.method__progress{display:flex}
  .service-row{min-width:0;overflow:hidden}.service-row h3{min-width:0;overflow-wrap:anywhere}.service-row:hover>.ui-arrow,.service-row:focus-visible>.ui-arrow,.service-row.is-active>.ui-arrow{transform:translate3d(0,-.13rem,0)}
  .contact__mail>.ui-arrow{position:static;display:inline-grid;margin:.85rem 0 0 .35rem;width:3rem;height:3rem;vertical-align:top}
}
@media(max-height:690px) and (max-width:1050px){.mobile-menu{padding-top:calc(var(--header) + .8rem)}.mobile-menu__status{padding-bottom:.6rem}.mobile-menu nav{margin:1rem 0 .65rem}.mobile-menu nav a{padding:.55rem 0}.mobile-menu nav span{font-size:clamp(1.9rem,8.6vw,2.75rem)}.mobile-menu__cta{padding:.7rem .7rem .7rem 0}.mobile-menu__foot{padding-top:.65rem}}
@media(prefers-reduced-motion:reduce){.mobile-menu.is-open nav a{animation:none}.method-card__visual img,.ui-arrow{transition:none}}

/* Headline rhythm: protect diacritics and keep translated display type breathable. */
.hero__title{line-height:.86;letter-spacing:-.064em}
.kinetic-copy{line-height:.94;letter-spacing:-.057em}
.services__head h2,.method h2,.experience h2,.procurement h2,.about h2{line-height:.92;letter-spacing:-.056em}
.control-room__copy h2,.home-experience-film h3,.build-reveal__head h2{line-height:.92;letter-spacing:-.056em}
.contact__mail{line-height:.9;letter-spacing:-.06em}
.site-footer__brand>p{line-height:.88;letter-spacing:-.06em}
.field-film__copy h2{line-height:.9;letter-spacing:-.058em}
.language-panel__options span{line-height:.92;letter-spacing:-.055em}

@media(max-width:700px){
  .hero__title{font-size:clamp(3.4rem,18.8vw,7rem);line-height:.94;letter-spacing:-.052em}
  html[lang="fr"] .hero__title{font-size:clamp(3rem,16.5vw,7rem)}
  html[lang="tr"] .hero__title{font-size:clamp(3.2rem,18vw,7rem)}
  .kinetic-copy{line-height:.98;letter-spacing:-.045em}
  .services__head h2,.method h2,.experience h2,.procurement h2,.about h2,.control-room__copy h2,.home-experience-film h3,.build-reveal__head h2{line-height:.96;letter-spacing:-.048em}
  .contact__mail{line-height:.96;letter-spacing:-.05em}
  .site-footer__brand>p{line-height:.94;letter-spacing:-.05em}
  .field-film__copies{bottom:7.5rem;height:69vh}
  .field-film__copy h2{font-size:clamp(2.25rem,10.8vw,4.55rem);line-height:.96;letter-spacing:-.048em}
  .field-film__copy span{margin-top:1.75rem}
  .language-panel__options span{line-height:.96;letter-spacing:-.047em}
}
