:root{--navy:#06131e;--deep:#05111a;--text:#f5efe3;--muted:#a8b4bd;--orange:#f47e3c;--line:#243746;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--navy);color:var(--text);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--orange);outline-offset:6px}img{display:block;max-width:100%;object-fit:cover}svg{display:block}h1,h2,h3,h4,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.06;letter-spacing:-.042em}h1{font-size:clamp(48px,4.8vw,76px)}h2{font-size:clamp(40px,3.9vw,62px)}h3{font-size:17px;font-weight:500;line-height:1.4}p{color:var(--muted)}.container{width:min(1280px,calc(100% - 120px));margin:auto}.site-header{height:92px;position:absolute;inset:0 0 auto;z-index:20;border-bottom:1px solid transparent}.header-inner{height:92px;display:flex;align-items:center;gap:38px;width:min(1320px,calc(100% - 100px));margin:auto}.wordmark{display:flex;flex-direction:column;text-align:center;line-height:1.1;white-space:nowrap}.wordmark>span{font-size:22px;letter-spacing:.16em;font-weight:600}.wordmark small{font-size:8px;letter-spacing:.55em;margin-top:7px}.desktop-nav{display:flex;gap:25px;align-items:center;margin:auto;font-size:12px}.desktop-nav a{color:#bec8cd;transition:color .2s}.desktop-nav a:hover,.footer-links a:hover{color:var(--orange)}.languages{display:flex;gap:10px;align-items:center;font-size:12px;letter-spacing:.09em}.languages span{color:#6f7c87}.languages a{padding:8px 0}.languages a[aria-current]{color:var(--orange);border-bottom:1px solid var(--orange)}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}.skip-link{position:fixed;top:5px;left:10px;transform:translateY(-200%);padding:8px 15px;background:var(--orange);color:var(--navy);z-index:99}.skip-link:focus{transform:translateY(0)}.hero{position:relative;min-height:780px;min-height:min(850px,100svh);padding:210px 0 120px;isolation:isolate;display:flex;align-items:center;overflow:hidden}.hero-photo{position:absolute;inset:0 0 0 auto;width:84%;height:100%;z-index:-3;object-position:center}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#05111b 0%,rgba(5,17,27,.97) 23%,rgba(5,17,27,.55) 49%,rgba(5,17,27,.04) 78%),linear-gradient(0deg,#06131e 0%,transparent 24%,transparent 86%,#06131e95 100%)}.hero-content{position:relative}.hero-marker{position:absolute;left:-39px;top:-42px;font-size:11px;color:#c3cbd0;display:flex;flex-direction:column;align-items:center;gap:17px;line-height:1}.hero-marker span{height:52px;width:1px;background:#87939a75}.project-tag{display:inline-block;font-size:11px;letter-spacing:.07em;color:var(--orange);border:1px solid #f47e3c80;line-height:1.2;padding:5px 9px;margin-bottom:27px}.hero h1{max-width:790px}.hero-description{max-width:490px;font-size:16px;line-height:1.7;margin-top:24px;color:#c2c9cd}.actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:48px;padding:11px 22px;font-size:12px;font-weight:600;border:1px solid #6b7a86;border-radius:2px;transition:background .2s,transform .2s,border-color .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--orange);border-color:var(--orange);color:#12202a}.primary:hover{background:#ff985d;border-color:#ff985d}.secondary:hover{border-color:var(--orange)}.hero-credit{font-size:10px;letter-spacing:.1em;margin-top:31px;color:#8c9ba6}.hero-note{position:absolute;bottom:75px;right:5%;font-size:9px;line-height:1.8;letter-spacing:.2em;color:#b4bcc3}.hero-note:after{content:'';display:block;width:40px;height:1px;background:var(--orange);margin-top:10px}.scroll-cue{position:absolute;bottom:24px;left:50%;color:#8b9eab;font-size:23px}.service-strip{border-block:1px solid var(--line);background:#06131ecc}.services{display:grid;grid-template-columns:repeat(4,1fr);padding-block:28px}.services a{display:flex;align-items:center;justify-content:center;gap:25px;position:relative;font-size:14px}.services a:not(:last-child):after{content:'/';position:absolute;right:0;color:#76828b}.services svg{width:32px;height:32px;color:#d3d4d0}.services a:hover{color:var(--orange)}.section{padding:88px 0;border-bottom:1px solid var(--line);position:relative}.two-column{display:grid;grid-template-columns:.85fr 1.55fr;gap:80px;align-items:center}.section-intro{position:relative;z-index:2}.eyebrow{font-size:10px;letter-spacing:.2em;text-transform:uppercase;display:flex;gap:29px;align-items:center;color:#98a6b3;margin-bottom:30px;font-weight:600}.section-number{letter-spacing:.05em;color:#d6dadc}.section-intro>p:not(.eyebrow){margin-top:25px;max-width:390px;font-size:15px;line-height:1.75}.text-link{display:inline-flex;align-items:center;gap:20px;margin-top:25px;font-size:13px;color:var(--orange);border-bottom:1px solid #f47e3c50;padding-bottom:4px}.text-link:hover{gap:28px}.flow-panel{position:relative;padding:40px 0 0;isolation:isolate}.network-map{position:absolute;inset:-50px -5%;width:110%;height:120%;z-index:-1;opacity:.7;pointer-events:none}.land{fill:#18344b66;stroke:#27445b;stroke-width:1}.map-routes{fill:none;stroke:#29516b;stroke-width:1;opacity:.65}.map-points{fill:var(--orange);opacity:.8}.flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;position:relative}.flow li:nth-child(2){padding-top:23px}.flow li:nth-child(3){padding-top:40px}.flow li:nth-child(4){padding-top:16px}.node{width:65px;height:65px;border:1px solid var(--orange);border-radius:50%;display:flex;align-items:center;justify-content:center;background:#071724;color:#dddcd5;box-shadow:0 0 24px #f47e3c0d}.node svg{width:31px;height:31px}.flow h3{margin:20px 0 9px;font-size:15px}.flow p{font-size:12px;line-height:1.7}.flow-route{position:absolute;left:0;top:56px;width:100%;height:80px;z-index:-1;fill:none;stroke:var(--orange);stroke-width:1.5}.draw-route{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1.8s ease}.js .reveal:not(.is-visible) .draw-route{stroke-dashoffset:1}.ecosystem{padding-top:75px}.ecosystem-graphic{height:470px;position:relative;isolation:isolate}.ecosystem-graphic .network-map{inset:-12% -15%;width:130%;height:120%}.ecosystem-lines{position:absolute;width:100%;height:100%;inset:0;fill:none;stroke:#e77c41a0;stroke-width:1.5}.hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:148px;height:148px;border:1px solid var(--orange);border-radius:50%;background:#0b1e2ccc;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 60px #f47e3c0a}.hub span{font-size:14px;letter-spacing:.12em}.hub small{font-size:7px;letter-spacing:.4em;margin-top:4px}.role{position:absolute;width:185px}.role .node{width:63px;height:63px;border-color:#9db0c4;background:#12283c}.role h3{font-size:14px;margin-top:10px}.role p{font-size:11px;line-height:1.6;margin-top:3px}.role-0{left:calc(50% - 31px);top:5px}.role-0 h3,.role-0 p{position:relative;left:80px;top:-63px;width:170px}.role-1{left:4%;bottom:0}.role-2{right:0;bottom:0;width:170px}.order-example{display:grid;grid-template-columns:1fr 265px;gap:45px;border:1px solid #294155;border-radius:9px;padding:30px 32px;margin-top:35px;background:linear-gradient(110deg,#081722,#0a1d2b55);scroll-margin-top:30px}.example-heading{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.example-heading h3{font-size:15px}.demo-badge{font-size:9px;color:#c5b39b;border:1px solid #8c735140;padding:3px 7px;letter-spacing:.06em}.example-description{font-size:11px;margin-top:8px;max-width:650px}.order-stages{display:flex;justify-content:space-between;margin:35px -10px 0;position:relative}.order-stages:before{content:'';position:absolute;left:10%;right:10%;height:1px;top:6px;background:#f47e3c70}.order-stage{background:none;border:0;color:#96a8b7;position:relative;padding:0 7px;display:flex;flex-direction:column;align-items:center;gap:18px;flex:1;font-size:11px;cursor:pointer;min-height:64px;text-align:center}.stage-dot{width:12px;height:12px;border-radius:50%;border:1px solid var(--orange);background:#132536;box-shadow:0 0 0 3px #f47e3c15;transition:background .2s}.order-stage.is-current{color:var(--text)}.order-stage.is-current .stage-dot{background:var(--orange);box-shadow:0 0 0 5px #f47e3c20}.order-stage:hover .stage-dot{background:#f47e3c99}.order-details{border-left:1px solid #294155;padding-left:25px}.order-details h4{font-size:12px;font-weight:500;margin-bottom:10px}.order-details dl{margin:0;font-size:11px}.order-details dl>div{display:grid;grid-template-columns:70px 1fr;gap:8px;margin:5px 0}.order-details dt{color:#8293a2}.order-details dd{margin:0}.status-value{color:var(--orange)}.perspective{display:grid;grid-template-columns:1.13fr 1fr;border-bottom:1px solid var(--line);min-height:580px}.perspective-photo{position:relative;min-height:550px;overflow:hidden}.perspective-photo img{width:100%;height:100%;position:absolute;object-position:48% center;transition:transform 1s ease}.perspective-photo:hover img{transform:scale(1.035)}.photo-caption{position:absolute;bottom:15px;left:25px;font-size:9px;letter-spacing:.07em;color:#fff;background:#06131eb0;padding:3px 7px}.perspective-copy{padding:75px clamp(35px,5vw,90px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.perspective-copy h2{font-size:clamp(54px,5vw,80px)}.perspective-copy>p:not(.eyebrow){margin-top:24px;font-size:14px;max-width:450px}.roadmap{isolation:isolate;padding-block:80px 90px;overflow:hidden}.roadmap-backdrop{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#06131e 20%,#06131eb8 57%,#06131e35),linear-gradient(0deg,#06131e,transparent 80%),url('/assets/night-port.webp') center 57%/cover}.roadmap-intro>p:not(.eyebrow){margin-top:20px;max-width:500px;font-size:14px}.plan-label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#d4b29b;display:block;margin-top:22px}.milestones{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;list-style:none;padding:0;margin:50px 0 0}.milestones li{position:relative;display:flex;align-items:flex-start;gap:20px}.milestones li:not(:last-child):after{content:'';position:absolute;left:62px;right:-50px;top:28px;height:1px;background:linear-gradient(90deg,var(--orange),#f47e3c50);z-index:-1}.milestone-node{width:56px;height:56px;border:1px solid var(--orange);border-radius:50%;background:#081722;display:grid;place-items:center;font-size:20px;flex:none}.milestones li>div{padding-top:65px;margin-left:-65px;max-width:285px}.milestone-date{font-size:11px;letter-spacing:.05em;color:var(--orange);margin-bottom:5px}.milestones h3{margin-bottom:10px}.milestones li>div>p:last-child{font-size:13px}.contact-section{background:#eee7d8;color:#0a1922;isolation:isolate;position:relative;overflow:hidden}.contact-image{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#efe9db 5%,#efe9dbf2 36%,#efe9db05 75%),url('/assets/night-port.webp') center 67%/cover}.contact-layout{display:grid;grid-template-columns:1.8fr .5fr .5fr;gap:35px;align-items:center;padding-block:85px}.contact-copy{max-width:670px}.contact-copy h2{font-size:clamp(40px,3.9vw,62px)}.contact-copy .eyebrow,.contact-copy .section-number{color:#4d5b63}.contact-copy>p:not(.eyebrow){color:#4a5861;font-size:14px;max-width:450px;margin-top:24px}.contact-copy .project-attribution{font-size:11px;line-height:1.7;max-width:470px;margin-top:28px}.contact-secondary{border-color:#59646a;color:#12202a}.contact-secondary:hover{background:#ffffff55}.contact-orbit{height:130px;width:130px;border:1px solid var(--orange);color:var(--orange);border-radius:50%;display:grid;place-items:center;justify-self:center;background:#06131e88;transition:transform .3s}.contact-orbit svg{width:65px;height:65px;stroke-width:.8}.contact-orbit:hover{transform:rotate(-30deg)}.contact-manifesto{font-size:10px;letter-spacing:.2em;line-height:2.3;color:#d9dde0}footer{background:#04111b}.footer-inner{display:flex;align-items:center;gap:40px;min-height:105px}.footer-brand{font-size:10px;font-weight:600;letter-spacing:.12em}.footer-links{margin-left:auto;display:flex;gap:25px;font-size:11px;color:#aab7c0}.footer-inner .languages{font-size:10px}.not-found{padding:15vh 8vw}.not-found h1{margin:20px 0 40px}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.js .reveal.is-visible{opacity:1;transform:none}
@media(min-width:1600px){.hero{min-height:900px}}
@media(max-width:1150px){.container{width:calc(100% - 80px)}.header-inner{width:calc(100% - 80px);gap:25px}.desktop-nav{gap:15px;font-size:11px}.wordmark>span{font-size:18px}.two-column{gap:45px;grid-template-columns:.9fr 1.4fr}.flow{gap:13px}.flow h3{font-size:13px}.flow p{font-size:11px}.role-0 h3,.role-0 p{width:120px;left:70px}.role-1{left:0}.role-2{right:-15px;width:135px}.hero{min-height:710px}.order-example{gap:25px;grid-template-columns:1fr 220px}.contact-layout{grid-template-columns:1.8fr .6fr;gap:25px}.contact-manifesto{display:none}}
@media(max-width:900px){.desktop-nav{display:none}.header-inner{height:80px}.site-header{height:80px}.header-inner>.languages{margin-left:auto}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:40px;height:44px;background:none;border:0;padding:8px;color:inherit;cursor:pointer}.menu-toggle span{height:1px;background:var(--text);width:23px;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav{background:#071723f7;padding:24px 40px 30px;display:grid;gap:16px;border-block:1px solid var(--line);backdrop-filter:blur(20px)}.hero{padding-top:160px;min-height:760px}.hero-photo{width:100%;object-position:65% center}.hero-shade{background:linear-gradient(90deg,#05111bf2,#05111bd0 40%,#05111b25),linear-gradient(0deg,#06131e,transparent 50%)}.hero h1{font-size:clamp(48px,6.4vw,68px)}.two-column{grid-template-columns:1fr;gap:50px}.section-intro>p:not(.eyebrow){max-width:580px}.process .flow-panel{padding:0;max-width:700px;width:100%;margin:auto}.flow-route{top:17px}.flow p{font-size:13px}.flow h3{font-size:16px}.ecosystem-graphic{max-width:650px;width:100%;margin:auto}.role-0 h3,.role-0 p{width:170px}.role-2{right:0;width:170px}.order-example{grid-template-columns:1fr}.order-details{border-left:0;border-top:1px solid #294155;padding:22px 0 0;max-width:100%}.order-details dl{display:grid;grid-template-columns:repeat(2,1fr);gap:4px 35px}.perspective{grid-template-columns:1fr 1fr;min-height:600px}.perspective-copy{padding:45px 30px}.perspective-photo{min-height:600px}.perspective-copy h2{font-size:48px}.milestones{gap:25px}.milestones li:not(:last-child):after{right:-25px}.milestones li>div{margin-left:-76px;padding-top:80px}.contact-layout{padding-block:70px}.contact-image{background:linear-gradient(90deg,#efe9db 10%,#efe9dbdb 53%,#efe9db15),url('/assets/night-port.webp') center/cover}.contact-orbit{width:90px;height:90px}.contact-orbit svg{width:45px}.footer-inner{gap:20px;flex-wrap:wrap;padding-block:25px}.footer-links{gap:18px}}
@media(max-width:600px){html{scroll-padding-top:30px}.container{width:calc(100% - 48px)}.header-inner{width:calc(100% - 40px);gap:15px}.wordmark>span{font-size:18px}.wordmark small{font-size:7px}.header-inner>.languages{font-size:11px}.hero{min-height:760px;min-height:92svh;padding:160px 0 110px;align-items:flex-start}.hero-marker{display:none}.hero-photo{object-position:65% center}.hero-shade{background:linear-gradient(90deg,#05111bf2 0%,#05111bb5 65%,#05111b70),linear-gradient(0deg,#06131e,transparent 65%)}.hero h1{font-size:clamp(40px,8.9vw,54px);letter-spacing:-.05em}.hero-description{font-size:14px;max-width:360px;margin-top:22px}.project-tag{font-size:10px;margin-bottom:26px}.hero-credit{font-size:9px;max-width:280px}.hero-note{display:none}.button{font-size:11px;min-height:46px;padding:11px 16px;gap:15px}.actions{gap:12px}.services{grid-template-columns:repeat(2,1fr);padding-block:0}.services a{justify-content:flex-start;gap:15px;padding:20px 10px;font-size:12px}.services a:after{display:none}.services a:nth-child(-n+2){border-bottom:1px solid var(--line)}.services svg{width:27px;height:27px}.section{padding-block:60px}.eyebrow{font-size:9px;gap:20px;margin-bottom:23px}h2{font-size:42px}.section-intro>p:not(.eyebrow){font-size:14px}.two-column{gap:40px}.flow{grid-template-columns:1fr 1fr;gap:32px 25px}.flow li:nth-child(n){padding:0}.flow .node{width:54px;height:54px}.flow h3{margin-top:14px;font-size:16px}.flow p{font-size:12px}.flow-route{display:none}.flow-panel .network-map{inset:0;width:100%;height:100%}.ecosystem-graphic{height:420px}.ecosystem-lines{width:100%;height:100%}.hub{width:112px;height:112px;top:48%}.hub span{font-size:11px}.hub small{font-size:6px}.role{width:135px}.role .node{width:50px;height:50px}.role-0{left:calc(50% - 25px);top:0}.role-0 h3,.role-0 p{left:63px;top:-51px;width:105px}.role h3{font-size:12px}.role p{font-size:10px}.role-1{left:0;bottom:0}.role-2{right:0;width:120px;bottom:0}.ecosystem .network-map{inset:0;width:100%;height:100%}.order-example{padding:22px 16px;margin-top:30px;border-radius:5px;gap:15px}.example-heading{gap:8px}.example-heading h3{font-size:13px}.example-description{font-size:10px;margin-top:12px}.order-stages{flex-direction:column;gap:12px;margin:24px 0 0}.order-stages:before{left:6px;right:auto;top:7px;bottom:20px;height:auto;width:1px}.order-stage{flex-direction:row;gap:16px;min-height:34px;justify-content:flex-start;padding:0;font-size:12px}.stage-dot{flex:none}.order-details dl{grid-template-columns:1fr}.perspective{grid-template-columns:1fr}.perspective-photo{min-height:370px}.perspective-copy{padding:50px 24px 60px}.perspective-copy h2{font-size:56px}.roadmap h2{font-size:40px}.roadmap-backdrop{background:linear-gradient(90deg,#06131ef2,#06131eab),url('/assets/night-port.webp') center/cover}.milestones{grid-template-columns:1fr;gap:30px;margin-top:35px}.milestones li{gap:22px}.milestones li>div{margin:0;padding:0;max-width:calc(100% - 75px)}.milestone-node{width:48px;height:48px}.milestones li:not(:last-child):after{left:24px;top:50px;bottom:-30px;width:1px;height:auto;right:auto}.milestones li>div>p:last-child{font-size:13px}.contact-layout{display:block;padding-block:55px 190px}.contact-image{background:linear-gradient(180deg,#efe9db 0%,#efe9dbf5 55%,#efe9db10 90%),url('/assets/night-port.webp') 70% bottom/auto 70% no-repeat;background-color:#0b1a25}.contact-copy h2{font-size:40px}.contact-copy>p:not(.eyebrow){font-size:14px}.contact-copy .project-attribution{font-size:10px;max-width:320px}.contact-orbit{position:absolute;right:30px;bottom:35px;width:85px;height:85px}.footer-inner{flex-direction:column;align-items:flex-start;gap:22px}.footer-links{margin:0;flex-wrap:wrap}.footer-inner .languages{position:absolute;right:24px}.footer-brand{font-size:9px}.mobile-nav{padding-inline:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.draw-route{stroke-dashoffset:0!important}.button:hover,.contact-orbit:hover,.perspective-photo:hover img{transform:none}}
.process,.ecosystem{overflow:clip}
.land{fill:#16354c55;stroke:#35536a88;stroke-width:.7}.network-map{overflow:hidden}.flow-panel .network-map{opacity:.32}
/* Motion release: scroll remains native; every effect has a reduced-motion fallback. */
html{scrollbar-width:none;scroll-padding-top:110px}html::-webkit-scrollbar,body::-webkit-scrollbar{width:0;height:0}.site-header{position:fixed;height:92px;transition:background .35s,border-color .35s,box-shadow .35s}.site-header.is-scrolled,.site-header.menu-open{background:#06131ef2;backdrop-filter:blur(18px);border-bottom-color:#294154;box-shadow:0 8px 35px #0003}.reading-progress{position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:var(--orange);transform:scaleX(var(--read-progress,0));transform-origin:left;pointer-events:none}.header-inner{gap:25px}.desktop-nav{gap:20px}.desktop-nav a{position:relative;padding-block:10px}.desktop-nav a:after{content:'';position:absolute;bottom:2px;left:0;right:0;height:1px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .3s}.desktop-nav a.is-active{color:var(--text)}.desktop-nav a.is-active:after,.desktop-nav a:hover:after{transform:scaleX(1)}.menu-toggle{display:flex;position:relative;flex-direction:column;gap:7px;justify-content:center;align-items:flex-end;width:75px;min-width:75px;height:44px;background:none;border:0;padding:8px 0 8px 35px;color:inherit;cursor:pointer}.menu-toggle:before{content:attr(data-label);position:absolute;left:0;top:14px;font-size:10px;letter-spacing:.06em}.menu-toggle span{display:block;height:1px;width:24px;background:var(--text);transition:transform .3s,width .3s}.menu-toggle span:last-child{width:17px}.menu-toggle:hover span:last-child{width:24px}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{width:24px;transform:translateY(-4px) rotate(-45deg)}.mobile-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:25px max(40px,calc((100vw - 1280px)/2)) 32px;background:#071723fa;backdrop-filter:blur(25px);border-block:1px solid var(--line);box-shadow:0 20px 45px #0006;counter-reset:nav}.mobile-nav a{padding:16px 20px;border-bottom:1px solid #ffffff10;display:flex;align-items:center;gap:18px;font-family:var(--serif);font-size:24px;transition:color .2s,background .2s}.mobile-nav a:before{counter-increment:nav;content:'0' counter(nav);font:10px var(--sans);color:var(--orange);letter-spacing:.12em}.mobile-nav a:hover,.mobile-nav a.is-active{color:var(--orange);background:#ffffff04}.hero{overflow:clip}.hero-photo{transform:translateY(var(--hero-shift,0)) scale(1.09);transform-origin:70% 45%}.hero.is-on-screen .hero-photo{will-change:transform}.motion-ready .hero .project-tag{animation:hero-arrive .8s .05s both}.motion-ready .hero h1{animation:hero-arrive 1.15s .18s both}.motion-ready .hero-description{animation:hero-arrive 1s .38s both}.motion-ready .hero .actions{animation:hero-arrive 1s .55s both}.motion-ready .hero-credit{animation:hero-arrive .9s .7s both}.motion-ready .scroll-cue{animation:scroll-hint 2.5s infinite}.js .reveal{transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1);transform:translateY(40px)}.js .reveal.is-visible{transform:none}.draw-route{stroke-width:2;stroke-dasharray:1;transition:stroke-dashoffset .18s linear;filter:drop-shadow(0 0 4px #f47e3c55)}.route-track{fill:none;stroke:#f47e3c30;stroke-width:1.5}.route-signal{fill:#ffe0a8;stroke:#f47e3c;stroke-width:2;filter:drop-shadow(0 0 5px #f47e3c);pointer-events:none}.flow li{transition:opacity .7s,transform .8s;position:relative}.motion-ready .flow li:not(.is-reached){opacity:.25;transform:translateY(24px)}.flow .node{transition:background .5s,box-shadow .5s,transform .4s}.flow li.is-reached .node{background:#33291f;box-shadow:0 0 30px #f47e3c20}.flow li:hover .node{transform:translateY(-5px);box-shadow:0 0 40px #f47e3c38}.flow li.is-reached h3{color:#ffb883}.role{transition:opacity .8s,transform .8s}.motion-ready .role:not(.is-reached){opacity:.2;transform:translateY(16px)}.role.is-reached .node{border-color:#f4b478;box-shadow:0 0 25px #f47e3c25}.hub:before{content:'';position:absolute;inset:-12px;border:1px dashed #f47e3c55;border-radius:50%;pointer-events:none}.motion-ready .ecosystem.is-on-screen .hub:before{animation:orbit-spin 28s linear infinite}.motion-ready .ecosystem.is-on-screen .map-points{animation:map-breathe 3.8s ease-in-out infinite alternate}.perspective-photo img{transform:translateY(var(--photo-shift,0)) scale(1.13);height:100%;object-fit:cover}.perspective-photo:hover img{transform:translateY(var(--photo-shift,0)) scale(1.16)}.motion-ready .perspective-photo{clip-path:inset(8% 8% 8% 0);transition:clip-path 1.3s cubic-bezier(.2,.8,.2,1)}.motion-ready .perspective-photo.is-visible{clip-path:inset(0)}.milestone-node{transition:background .5s,box-shadow .5s,color .5s}.milestones li.is-reached .milestone-node{background:var(--orange);color:var(--navy);box-shadow:0 0 30px #f47e3c22}.milestones li:after{transform-origin:left;transform:scaleX(var(--route-progress,1));transition:transform .2s linear}.milestones li>div{transition:opacity .8s,transform .8s}.motion-ready .milestones li:not(.is-reached)>div{opacity:.3;transform:translateY(15px)}.play-sequence{margin-left:auto;border:1px solid #b05d34;background:#0b1d2b;color:#ffd0b3;font-size:10px;line-height:1.2;display:inline-flex;align-items:center;gap:8px;padding:8px 10px;min-height:36px;cursor:pointer;border-radius:3px;transition:background .2s}.play-sequence:hover,.play-sequence[aria-pressed=true]{background:#55311d}.play-sequence>span:first-child{font-size:18px}.order-stages:after{content:'';position:absolute;left:10%;right:10%;top:6px;height:1px;background:var(--orange);transform:scaleX(var(--order-progress,.5));transform-origin:left;transition:transform .65s ease;pointer-events:none}.order-stage{z-index:1}.order-stage.is-past .stage-dot{background:#d16a32}.order-stage.is-current .stage-dot{box-shadow:0 0 0 5px #f47e3c25,0 0 20px #f47e3c77}.contact-image{background:linear-gradient(90deg,#efe9db 0%,#efe9db 36%,#efe9dbe8 50%,#06131e15 73%,#06131e55 100%),url('/assets/night-port.webp') center 67%/cover}.contact-manifesto{color:#fff5e8;background:#06131ef5;padding:22px 20px;border-left:2px solid var(--orange);font-size:10px;line-height:2.3;letter-spacing:.16em;box-shadow:0 10px 35px #0004;max-width:230px}.contact-orbit{background:#06131ef0;border-width:2px;box-shadow:0 0 0 12px #06131e25}.contact-orbit:hover{transform:translateX(7px);background:#142938}.motion-ready .contact-section.is-on-screen .contact-orbit svg{animation:arrow-nudge 3s ease-in-out infinite}.contact-copy>p:not(.eyebrow){color:#35434d}.contact-copy .project-attribution{color:#35434d}.contact-details{margin-top:24px;border-top:1px solid #0a192235;padding-top:16px;max-width:450px;scroll-margin-top:120px;color:#172b39}.contact-details summary{cursor:pointer;font-size:13px;font-weight:600;padding:5px 0;list-style:none;display:flex;justify-content:space-between;align-items:center}.contact-details summary:after{content:'+';font-size:22px;font-weight:400}.contact-details[open] summary:after{content:'−'}.contact-details summary::-webkit-details-marker{display:none}.contact-channels{display:grid;gap:12px;padding:18px 0 5px}.contact-channels p{font-size:12px;color:#35434d}.contact-channels a{font-size:20px;font-family:var(--serif);width:fit-content;border-bottom:1px solid #0a192245}.contact-channels small{font-size:11px;color:#46535b}.contact-details[open] .contact-channels{animation:hero-arrive .4s both}.contact-details summary:focus-visible{outline:2px solid #9d4218;outline-offset:4px}.legal-header{min-height:110px;display:flex;align-items:center;gap:30px;border-bottom:1px solid var(--line);font-size:13px}.legal-header>a:nth-child(2){margin-left:auto}.legal-content{max-width:900px;padding-block:75px 100px}.legal-content h1{font-size:clamp(40px,6vw,70px);margin-bottom:30px}.legal-content>p{font-size:17px}.legal-content section{margin-top:45px}.legal-content h2{font-size:30px;letter-spacing:-.02em;margin-bottom:20px}.legal-content section p{margin:15px 0;font-size:15px}.legal-content a{color:#ffad76;text-decoration:underline;text-underline-offset:4px}.company-data{margin:0}.company-data>div{display:grid;grid-template-columns:200px 1fr;gap:25px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.company-data dt{color:#9dafbd}.company-data dd{margin:0}.legal-nav{margin-top:50px;display:flex;gap:30px;border-top:1px solid var(--line);padding-top:30px;font-size:14px}
@keyframes hero-arrive{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@keyframes scroll-hint{0%,100%{transform:translateY(0);opacity:.5}50%{transform:translateY(8px);opacity:1}}@keyframes orbit-spin{to{transform:rotate(360deg)}}@keyframes map-breathe{from{opacity:.3}to{opacity:1}}@keyframes arrow-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(8px)}}
@media(max-width:1150px){.desktop-nav{gap:13px}.header-inner{gap:20px}.menu-toggle{width:65px;min-width:65px}.contact-layout{grid-template-columns:1.8fr .6fr}.contact-manifesto{display:none}}
@media(max-width:900px){.site-header{height:80px}.mobile-nav{grid-template-columns:1fr 1fr;padding:15px 30px 25px}.mobile-nav a{font-size:24px}.hero-photo{transform:translateY(var(--hero-shift,0)) scale(1.15)}.header-inner{gap:20px}.contact-copy{background:#efe9dbed;padding:22px;border-radius:3px;margin-left:-22px}.contact-orbit{justify-self:end}.contact-image{background:linear-gradient(90deg,#efe9db 10%,#efe9dbd9 48%,#06131e20 90%),url('/assets/night-port.webp') center/cover}.contact-details{max-width:100%}.play-sequence{margin-left:0}}
@media(max-width:600px){html{scroll-padding-top:95px}.mobile-nav{grid-template-columns:1fr;padding:12px 24px 20px;max-height:calc(100svh - 80px);overflow-y:auto}.mobile-nav a{font-size:23px;padding:11px 5px}.menu-toggle{width:30px;min-width:30px;padding-left:0}.menu-toggle:before{display:none}.header-inner{gap:14px}.header-inner>.languages{gap:8px}.hero h1{font-size:clamp(38px,8.7vw,52px)}.flow-route{display:block;top:12px;left:23px;width:calc(100% - 45px);height:100px;opacity:.65}.flow li{z-index:1}.flow li:nth-child(n){background:transparent}.flow li:nth-child(3),.flow li:nth-child(4){margin-top:12px}.milestones li:after{transform:scaleY(var(--route-progress,1));transform-origin:top}.order-stages:after{left:6px;right:auto;top:7px;bottom:20px;width:1px;height:auto;transform:scaleY(var(--order-progress,.5));transform-origin:top}.contact-copy{background:#efe9db;padding:0;margin:0}.contact-image{background:linear-gradient(180deg,#efe9db 0%,#efe9db calc(100% - 210px),#efe9db20 calc(100% - 115px),#06131e30 100%),url('/assets/night-port.webp') 70% bottom/auto 240px no-repeat;background-color:#efe9db}.contact-layout{padding-bottom:220px}.contact-orbit{bottom:40px;right:30px;width:95px;height:95px}.contact-copy .project-attribution{max-width:100%}.contact-channels a{font-size:20px}.legal-header{flex-wrap:wrap;gap:20px;padding-block:25px}.legal-header .wordmark{width:100%;align-items:flex-start}.legal-header>a:nth-child(2){margin-left:0}.legal-content{padding-block:45px 70px}.company-data>div{grid-template-columns:1fr;gap:5px}.legal-content section{margin-top:35px}.legal-content section p{font-size:14px}.legal-content h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){.hero-photo,.perspective-photo img,.perspective-photo:hover img{transform:none!important}.perspective-photo{clip-path:none!important}.route-signal{display:none}.flow li,.role,.milestones li>div{opacity:1!important;transform:none!important}.milestones li:after{transform:none!important}.contact-details[open] .contact-channels{animation:none}.route-track{opacity:.3}}

/* Route geometry follows the actual node positions at every viewport. */
.flow-route{inset:0;width:100%;height:100%;overflow:visible}

.project-attribution a{text-decoration:underline;text-underline-offset:3px}.project-attribution a:hover{color:#953c14}

/* Original Impra artwork stays unmodified on a light, readable plaque. */
.wordmark .brand-logo{width:174px;height:auto;background:#f5efe3;padding:9px 12px;border-radius:3px;object-fit:contain}.wordmark small{color:#f5efe3}.developer-credit{font-size:11px;line-height:1.8;padding-bottom:22px;color:#a8b4bd}.developer-credit a{text-decoration:underline;text-underline-offset:3px}.contact-channels p{font-size:14px;line-height:1.8}.contact-channels a{font-size:16px;line-height:1.5}.hub>span{font-size:22px;letter-spacing:.12em}.legal-page .wordmark small{color:#f5efe3}
@media(max-width:600px){.wordmark .brand-logo{width:126px;padding:7px 9px}.wordmark small{font-size:7px;margin-top:5px}.hub>span{font-size:18px}.developer-credit{font-size:10px}.contact-channels a{font-size:16px}}
