@font-face{font-family:Manrope;src:url('/assets/fonts/manrope.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}:root{--bg:#090d10;--ink:#eff4f2;--muted:#9eafba;--ice:#b2d9dd;--pad:clamp(24px,5.25vw,100px);--line:#d9e5e526}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:40px}body{margin:0;color:var(--ink);background:var(--bg);font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid #b2d9dd;outline-offset:6px}::selection{background:#b2d9dd;color:#112128}h1,h2,h3,p,figure{margin:0}button{border:0}a,button{-webkit-tap-highlight-color:transparent}.skip{position:fixed;z-index:100;top:-100px;left:20px;background:white;color:black;padding:18px}.skip:focus{top:20px}header{position:absolute;inset:0 0 auto;z-index:20;display:flex;align-items:center;gap:40px;height:104px;padding:0 var(--pad);border-bottom:1px solid #ffffff12}.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand-image{display:block;width:165px;height:auto}header nav{display:flex;align-items:center;margin-left:auto;gap:34px}header nav a{font-size:12px;font-weight:500;color:#bcc9ce;transition:color .2s}header nav a:hover{color:#fff}.lang{font-size:10px;font-weight:700;letter-spacing:1px;border-left:1px solid #ffffff26;padding-left:29px}.menu{display:none}.hero{position:relative;isolation:isolate;min-height:780px;height:100svh;max-height:1100px;overflow:hidden;background:radial-gradient(ellipse at 71% 58%,#24404b66,transparent 52%),linear-gradient(110deg,#070c10,#101b22 75%,#0b141a)}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#080d11 0,#080d11d9 23%,transparent 64%);z-index:-1;pointer-events:none}.hero-grain{position:absolute;inset:0;opacity:.055;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 170 170' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.65' filter='url(%23n)'/%3E%3C/svg%3E");z-index:-1}.hero-copy{position:relative;z-index:3;padding:clamp(190px,24vh,280px) 0 0 var(--pad);max-width:700px;pointer-events:none}.hero-copy a{pointer-events:auto}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2px;line-height:1.6;color:#a6b9c2}.eyebrow i{display:inline-block;width:5px;height:5px;background:#b7dcdf;border-radius:50%;margin-right:12px;vertical-align:middle;box-shadow:0 0 14px #a1e3e380}.hero .eyebrow{margin-bottom:31px}h1{font-size:clamp(65px,6.6vw,109px);line-height:1.035;font-weight:450;letter-spacing:-5.5px;margin-bottom:31px}.lead{font-size:14px;line-height:1.85;color:#a9bac3;max-width:355px;margin-bottom:34px}.button{height:49px;display:inline-flex;align-items:center;justify-content:space-between;gap:66px;padding:0 21px;font-size:11px;letter-spacing:.2px;font-weight:650;transition:background .2s,transform .2s}.primary{background:#e5eeeb;color:#16262b}.primary:hover{background:#b9dfe2;transform:translateY(-2px)}.button span{font-size:19px;font-weight:400}.hero-product{position:absolute;inset:85px -16% 50px 29%;z-index:2}.product-fallback{position:absolute;inset:8% 0 0;display:grid;align-items:center;transition:opacity 1s;pointer-events:none}.product-fallback svg{width:100%}.rendered .product-fallback{opacity:0}#product-render{position:absolute;inset:0;cursor:grab;touch-action:pan-y}#product-render:active{cursor:grabbing}#product-render canvas{display:block;width:100%;height:100%;outline:none;opacity:0;transition:opacity 1.3s}#product-render.ready canvas{opacity:1}.product-toolbar{position:absolute;bottom:58px;left:37%;right:25%;display:flex;align-items:center;flex-direction:column;gap:12px;pointer-events:none}.view-switch{display:inline-flex;gap:3px;border:1px solid #aec7d326;border-radius:3px;padding:4px;background:#0a131ba8;backdrop-filter:blur(10px);pointer-events:auto}.view-switch button{background:transparent;font-size:10px;font-weight:600;padding:10px 15px;color:#7b97a6;border-radius:1px;transition:background .25s,color .25s;white-space:nowrap}.view-switch button span{margin-left:16px}.view-switch button[aria-pressed=true]{color:#d1e4e7;background:#7598a625}.render-hint{font-size:7px;letter-spacing:.8px;color:#6c8a9a;white-space:nowrap}.hero-bottom{position:absolute;inset:auto var(--pad) 30px;display:flex;align-items:center;justify-content:space-between;color:#69828f;z-index:3}.hero-bottom span{font-size:7px;font-weight:600;letter-spacing:2px}.hero-bottom a{border:1px solid #ffffff25;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:17px;color:#b4c8cd}.section{padding:110px var(--pad);position:relative;overflow:hidden}h2{font-size:clamp(44px,4.65vw,73px);line-height:1.1;letter-spacing:-3.7px;font-weight:450}.section-heading>.eyebrow{margin-bottom:34px}.heading-grid{display:grid;grid-template-columns:1fr 1fr;gap:14%;align-items:end}.section-intro{font-size:15px;line-height:1.9;max-width:390px;color:#879eab}.principle{color:#172d35;background:#eff1eb;padding-bottom:90px}.principle .eyebrow{color:#7a8b8b}.principle .section-intro{color:#637a7e;padding-bottom:4px}.flow-visual{margin-top:45px;position:relative;border-bottom:1px solid #203a4221}.flow-visual svg{width:100%;display:block;overflow:visible}.flow-pipe{stroke:#678b92;stroke-width:2;fill:none}.bypass-line{stroke:#aebcbb;stroke-width:1.4;stroke-dasharray:5 7;fill:none;animation:bypassFlow 20s linear infinite}.reject-line{stroke:#a77555;stroke-width:1.3;fill:none}.flow-label{font-family:Manrope,Arial,sans-serif;font-size:10px;letter-spacing:1.7px;fill:#6f8386;font-weight:600}.flow-ro{font-family:Manrope,Arial,sans-serif;font-size:18px;font-weight:500;letter-spacing:4px;fill:#345561}.flow-drops{fill:#5e95a0}.flow-drops circle{animation:waterLight 3s ease-in-out infinite}.flow-drops circle:nth-child(3n){animation-delay:-1s}.flow-drops circle:nth-child(2n){animation-delay:-2s}.figure-note{display:block;text-align:right;font-size:8px;color:#87999b;margin:0 0 24px;letter-spacing:.2px}.principle-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:32px}.principle-steps article{display:flex;gap:22px}.step-index{font-size:10px;color:#91a4a6;line-height:26px}.principle-steps h3{font-size:16px;font-weight:600;letter-spacing:-.45px;margin-bottom:10px}.principle-steps p{font-size:11px;line-height:1.85;max-width:220px;color:#778a8e}.prototype{display:grid;grid-template-columns:1.12fr 1fr;background:#0c171e;position:relative;overflow:hidden}.plant-photo{position:relative;height:730px;overflow:hidden;background:#18252a}.plant-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#07121915,transparent 45%,#03121d66);pointer-events:none}.plant-photo img{width:100%;height:100%;object-fit:cover;object-position:center 51%;filter:saturate(.45) brightness(.8);display:block;transition:filter .8s,transform 2s}.prototype:hover .plant-photo img{filter:saturate(.7) brightness(.9);transform:scale(1.015)}.plant-photo figcaption{position:absolute;z-index:2;bottom:28px;left:35px;font-size:8px;letter-spacing:1.5px;color:#d1e2e8}.plant-copy{padding:100px 12% 80px 14%;align-self:center}.plant-copy .eyebrow{margin-bottom:35px}.plant-copy h2{margin-bottom:29px}.plant-copy>p:not(.eyebrow){font-size:13px;line-height:1.9;max-width:330px;color:#8fa6b2}.location-mark{display:flex;align-items:center;gap:10px;font-size:9px;color:#a6bbc5;margin-top:27px;line-height:1.7}.location-mark i{width:4px;height:4px;border-radius:50%;background:#a6cdd3;flex-shrink:0}.text-link{display:inline-flex;align-items:center;gap:50px;margin-top:48px;padding-bottom:9px;border-bottom:1px solid #8ca5ad4a;font-size:10px;color:#c6d8dc}.text-link span{font-size:16px}.saltecho{background:#071017;display:grid;grid-template-columns:1fr 1fr;gap:14%;padding-top:130px;padding-bottom:130px}.salt-heading .eyebrow{margin-bottom:33px}.salt-heading h2{margin-bottom:28px}.salt-heading .section-intro{font-size:13px;max-width:350px}.salt-outcomes{margin-top:35px;max-width:340px}.salt-outcomes p{font-size:11px;color:#a1b8c4;border-top:1px solid #86a8bc26;padding:15px 0;display:flex;align-items:center;gap:17px}.salt-outcomes p span{color:#749eae;font-size:14px}.control{position:relative;align-self:center;border:1px solid #7596a32c;border-radius:5px;background:linear-gradient(135deg,#0e1f2a,#0c1921 60%,#132735);box-shadow:0 18px 60px #0002,0 0 80px #84afbe08;overflow:hidden}.control-head{display:flex;align-items:center;justify-content:space-between;margin:28px 30px 0;font-size:10px;letter-spacing:2px;color:#d2e3e9;border-bottom:1px solid #67829240;padding-bottom:20px}.control-state{display:flex;align-items:center;gap:6px;font-size:6px;letter-spacing:.7px;color:#678c9f}.control-state i{width:3px;height:3px;background:#9cccd3;border-radius:50%;box-shadow:0 0 8px #a9e5ec}.control-body{padding:4px 30px 0}.signal{display:flex;align-items:center;gap:15px;height:53px;border-bottom:1px solid #67829221}.signal>span:first-child{font-size:7px;letter-spacing:1px;color:#789dad;flex-basis:110px}.signal svg{flex:1;min-width:0;height:27px;overflow:hidden}.signal svg path{fill:none;stroke:#8ebfcc;stroke-width:1;stroke-dasharray:250;animation:signal 8s ease-in-out infinite}.signal:nth-child(2) svg path{transform:translate(0,31px) scale(1,-1);animation-delay:-3s}.signal:nth-child(3) svg path{animation-delay:-5s}.signal-point{width:8px;height:2px;background:#7096a7}.control-core{height:167px;position:relative;display:grid;place-items:center;margin-top:14px}.core-ring{width:78px;height:78px;border:1px solid #b2e0eb77;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#143546;box-shadow:0 0 35px #85c8d713,inset 0 0 20px #a9edff13;position:relative;z-index:1}.core-ring>span{font-size:27px;font-weight:350;color:#badce6;line-height:1.2}.core-ring>small{font-size:5px;letter-spacing:2px;color:#789faf;margin-top:4px;padding-left:2px}.orbit{position:absolute;border:1px solid #77b4c51a;border-radius:50%;width:125px;height:125px}.orbit:after{content:'';position:absolute;top:4px;left:36px;width:3px;height:3px;border-radius:50%;background:#9fdfef;box-shadow:0 0 12px #b6efff}.orbit-one{animation:orbit 20s linear infinite}.orbit-two{width:159px;height:159px;animation:orbit 34s linear infinite reverse;border-style:dashed;border-color:#77b4c51a}.control-route{display:flex;align-items:center;justify-content:center;gap:20px;font-size:7px;letter-spacing:1px;color:#8cacb8;margin-bottom:27px}.control-route svg{width:100px;height:20px;stroke:#5d889b;stroke-width:.7;fill:none}.control-foot{border-top:1px solid #67829233;padding:20px 25px;text-align:center}.control-foot>span{display:block;font-size:7px;letter-spacing:1.5px;color:#91b4c0}.control-foot>p{font-size:6px;letter-spacing:1px;color:#496b7b;margin-top:10px}.mission{background:#14242d;isolation:isolate;padding-top:110px;padding-bottom:60px}.mission-pattern{position:absolute;inset:0;z-index:-1;opacity:.13;background:repeating-radial-gradient(ellipse at 80% 0,transparent 0,transparent 43px,#a7c6cc55 44px,transparent 45px,transparent 72px)}.mission>.eyebrow{margin-bottom:38px}.mission>h2{font-size:clamp(48px,5.7vw,90px);max-width:850px;letter-spacing:-4.5px}.mission-copy{max-width:480px;font-size:15px;line-height:1.85;color:#a0b6c1;margin:35px 0 0 auto}.global-row{margin-top:90px;border-top:1px solid #71919f33;padding-top:60px;display:grid;grid-template-columns:1fr 1fr;min-height:430px;position:relative;align-items:center}.global-copy{z-index:2;max-width:380px}.global-copy h3{font-size:38px;line-height:1.2;letter-spacing:-1.9px;font-weight:450;margin-bottom:25px}.global-copy p{font-size:12px;line-height:1.9;color:#85a0ae;max-width:320px}.global-tags{display:flex;gap:19px;margin-top:28px;font-size:8px;color:#b0c6d0;letter-spacing:.1px}.global-tags span+span:before{content:'/';margin-right:19px;color:#607f90}.world-visual{position:absolute;left:42%;right:-6%;top:-30px;bottom:-10px;pointer-events:none;display:grid;align-items:center}.globe{width:100%;height:auto}.route{stroke-dasharray:500;stroke-dashoffset:500;animation:route 10s ease-in-out infinite}.route:nth-child(2){animation-delay:-3s}.route:nth-child(3){animation-delay:-6s}.beacon{animation:beacon 3s ease-in-out infinite;transform-origin:450px 117px}.beacon.delay{animation-delay:-1.5s;transform-origin:578px 238px}.contact{background:#e9eee8;color:#21383f;padding-top:90px;padding-bottom:85px}.contact>.eyebrow{color:#859794;margin-bottom:30px}.contact h2{font-size:clamp(75px,9vw,140px);font-weight:400;letter-spacing:-7px;line-height:1.03}.contact-bottom{display:flex;align-items:end;justify-content:space-between;margin-top:65px;gap:30px}.contact-bottom>p{font-size:11px;line-height:1.9;max-width:235px;color:#788c8e}.email{font-size:21px;letter-spacing:-.8px;display:flex;align-items:center;gap:60px;padding-bottom:12px;border-bottom:1px solid #8a9d9d}.email span{font-size:30px;font-weight:350}.email:hover{color:#58878e}footer{padding:42px var(--pad) 24px;background:#060c10}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-top .brand-image{width:135px}.footer-top>div{display:flex;align-items:center;gap:25px;font-size:9px;color:#829ca9}.footnote{font-size:8px;line-height:1.85;max-width:530px;color:#536f7d;margin-top:30px;margin-bottom:25px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #243d49;padding-top:20px;font-size:7px;letter-spacing:1px;color:#5b7786}.js .reveal{opacity:0;transform:translateY(16px);transition:opacity .8s,transform .8s}.js .reveal.visible{opacity:1;transform:none}.legal-page{min-height:100vh;background:#0c151d}.legal-brand{margin:40px var(--pad)}.legal{max-width:800px;padding:60px var(--pad) 100px;margin:auto;min-height:65vh}.legal .back{display:block;color:#92b6c7;font-size:12px;margin-bottom:50px}.legal h1{font-size:40px;letter-spacing:-1px;overflow-wrap:anywhere}.legal h2{font-size:23px;letter-spacing:-.4px;margin:35px 0 16px}.legal p{font-size:14px;line-height:1.8;color:#a3b5bf;margin:18px 0}.legal a:not(.back){text-decoration:underline;text-underline-offset:4px}.legal-page footer p{font-size:10px;color:#92a8b3}
@keyframes bypassFlow{to{stroke-dashoffset:-240}}@keyframes waterLight{0%,100%{opacity:.4}50%{opacity:1}}@keyframes signal{0%,100%{stroke-dashoffset:150;opacity:.45}50%{stroke-dashoffset:0;opacity:1}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes route{0%{stroke-dashoffset:500;opacity:0}30%,80%{stroke-dashoffset:0;opacity:.8}100%{stroke-dashoffset:-500;opacity:0}}@keyframes beacon{0%,100%{opacity:.2;transform:scale(.7)}50%{opacity:.8;transform:scale(1.25)}}
@media(min-width:1700px){.hero-product{left:30%;right:-8%}.hero-copy{padding-top:25vh}.product-toolbar{right:20%;left:33%;bottom:60px}}
@media(max-width:1100px){header nav{gap:22px}h1{font-size:77px;letter-spacing:-4px}.hero-product{left:25%;right:-28%}.hero-copy{max-width:580px}.hero{min-height:800px}.heading-grid{gap:7%}.saltecho{gap:8%}.plant-copy{padding-left:12%;padding-right:10%}.plant-photo{height:660px}h2{font-size:49px;letter-spacing:-2.7px}.contact h2{font-size:100px}.contact-bottom{margin-top:50px}.email{font-size:18px;gap:30px}.section{padding-top:90px;padding-bottom:90px}}
@media(max-width:900px){:root{--pad:24px}header{height:82px;gap:23px}.brand-image{width:143px}header nav{display:none;position:absolute;top:82px;left:0;right:0;margin:0;padding:25px var(--pad);background:#0c1820f5;border-bottom:1px solid #aac4d133;backdrop-filter:blur(15px);flex-direction:column;align-items:stretch;gap:22px}header nav.open{display:flex}header nav a{font-size:15px}.lang{margin-left:auto;padding:0;border:0;font-size:9px}.menu{display:flex;width:25px;height:26px;background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:0}.menu span{height:1px;width:20px;background:#b8cbd4;transition:transform .2s}.menu[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.hero{height:auto;min-height:940px;max-height:none}.hero-copy{padding:142px var(--pad) 0;max-width:540px}.hero .eyebrow{font-size:7px;letter-spacing:1.7px;margin-bottom:27px}.hero .eyebrow i{width:4px;height:4px;margin-right:9px}h1{font-size:clamp(52px,11.5vw,79px);letter-spacing:-3.3px;line-height:1.055;margin-bottom:25px}.lead{font-size:12px;line-height:1.9;max-width:320px;margin-bottom:25px}.button{height:45px;font-size:10px;gap:58px;padding:0 18px}.hero-product{left:-20%;right:-25%;top:436px;bottom:50px}.product-toolbar{left:10%;right:10%;bottom:34px;gap:10px}.view-switch button{font-size:9px;padding:9px 13px}.render-hint{font-size:6px;letter-spacing:.3px}.hero-bottom{bottom:23px}.hero-bottom span{font-size:6px;letter-spacing:1.2px;max-width:220px;line-height:1.7}.hero-bottom a{width:29px;height:29px;font-size:15px}.hero:after{background:linear-gradient(180deg,#080d11 15%,#080d1166 43%,transparent 62%)}.section{padding-top:70px;padding-bottom:70px}.heading-grid{display:block}.section-heading>.eyebrow{margin-bottom:27px}h2{font-size:clamp(36px,8vw,52px);line-height:1.14;letter-spacing:-2.2px}.section-intro{font-size:13px;line-height:1.9;margin-top:24px;max-width:100%}.flow-visual{margin-top:25px}.flow-visual svg{width:175%;margin-left:-36%;margin-top:20px;margin-bottom:15px}.flow-label{font-size:11px;letter-spacing:1.1px}.figure-note{text-align:left;font-size:7px;line-height:1.7;max-width:270px;margin-bottom:24px}.principle-steps{display:block;margin-top:0}.principle-steps article{padding:23px 0;border-bottom:1px solid #264e5721;gap:26px}.principle-steps article:last-child{border-bottom:0;padding-bottom:0}.principle-steps h3{font-size:15px;margin-bottom:6px}.principle-steps p{font-size:11px;max-width:100%}.prototype{display:flex;flex-direction:column-reverse}.plant-photo{height:500px}.plant-photo img{object-position:center 55%}.plant-photo figcaption{left:24px;bottom:25px;font-size:7px}.plant-copy{padding:70px var(--pad) 50px;align-self:auto}.plant-copy .eyebrow{margin-bottom:26px}.plant-copy h2{margin-bottom:24px}.plant-copy>p:not(.eyebrow){font-size:12px;max-width:360px}.location-mark{font-size:8px;margin-top:24px}.text-link{margin-top:30px;font-size:10px;gap:45px}.saltecho{display:block}.salt-heading .eyebrow{margin-bottom:27px}.salt-heading h2{margin-bottom:24px}.salt-heading .section-intro{font-size:12px;max-width:100%;margin-top:0}.salt-outcomes{margin-top:26px;max-width:none}.salt-outcomes p{font-size:10px;padding:14px 0}.control{margin-top:38px}.control-head{margin:23px 23px 0;font-size:9px;padding-bottom:17px}.control-state{font-size:5px}.control-body{padding:4px 23px 0}.signal{height:48px;gap:12px}.signal>span:first-child{flex-basis:95px;font-size:6px}.control-core{height:148px}.core-ring{width:68px;height:68px}.orbit-one{width:110px;height:110px}.orbit-two{width:140px;height:140px}.control-route{margin-bottom:23px;font-size:6px}.control-foot{padding:18px}.control-foot>span{font-size:6px;letter-spacing:1px}.control-foot>p{font-size:5px;line-height:1.9;letter-spacing:.8px}.mission{padding-bottom:30px}.mission>.eyebrow{font-size:8px;margin-bottom:30px}.mission>h2{font-size:clamp(40px,9vw,60px);letter-spacing:-2.7px}.mission-copy{font-size:12px;margin:27px 0 0;max-width:100%}.global-row{margin-top:44px;display:block;padding-top:35px;min-height:660px}.global-copy{max-width:100%}.global-copy h3{font-size:29px;letter-spacing:-1.4px;margin-bottom:20px}.global-copy p{font-size:11px;max-width:310px}.global-tags{font-size:7px;gap:15px;margin-top:25px}.global-tags span+span:before{margin-right:15px}.world-visual{left:-35%;right:-35%;top:auto;bottom:0;height:410px}.contact{padding-top:64px;padding-bottom:65px}.contact>.eyebrow{font-size:8px;margin-bottom:26px}.contact h2{font-size:clamp(65px,14vw,92px);line-height:1.05;letter-spacing:-4px}.contact-bottom{display:block;margin-top:32px}.contact-bottom>p{font-size:10px;max-width:270px;margin-bottom:28px}.email{display:inline-flex;font-size:15px;gap:28px;letter-spacing:-.5px;padding-bottom:10px}.email span{font-size:25px}footer{padding-top:33px}.footer-top{align-items:flex-start}.footer-top .brand-image{width:114px}.footer-top>div{flex-direction:column;align-items:flex-start;gap:15px;font-size:8px}.footnote{font-size:7px;line-height:1.9;margin-top:26px;margin-bottom:25px}.footer-bottom{font-size:6px;line-height:1.7;gap:15px}.legal-brand{margin-top:28px}.legal{padding-top:20px;padding-bottom:60px}.legal h1{font-size:30px;letter-spacing:-1px}.legal p{font-size:13px}.legal h2{font-size:23px;letter-spacing:-1px}}
@media(max-width:360px){.hero{min-height:930px}.hero-product{top:450px}.lead{font-size:12px}.hero-copy{padding-top:135px}.global-tags{gap:10px}.global-tags span+span:before{margin-right:10px}.email{font-size:13px;gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.route{stroke-dashoffset:0}.js .reveal{opacity:1;transform:none}}

.mobile-flow{display:none!important}@media(max-width:900px){.flow-visual .desktop-flow{display:none}.flow-visual .mobile-flow{display:block!important;width:100%;margin:20px 0 13px}.flow-label{font-size:9px;letter-spacing:1px}}

@media(max-width:900px){.hero-product{left:-8%;right:-8%}.flow-ro{font-size:9px;letter-spacing:1px}.hero-product .product-toolbar{left:5%;right:5%}}

.contact-methods{display:flex;flex-direction:column;align-items:flex-start;gap:24px}.contact-form-link{font-size:13px;border:1px solid rgba(180,210,214,.4);border-radius:2px;padding:14px 20px}.contact-form-link:hover{background:#d2eff3;color:#09202a}.contact-form-link:focus-visible{outline:2px solid #d2eff3;outline-offset:5px}@media(max-width:900px){.contact-form-link{font-size:12px;padding:14px 17px}.contact-methods{gap:22px}}

/* Readability, touch targets and non-JavaScript fallback. */
.lead{font-size:16px}.eyebrow{font-size:11px}.section-intro{font-size:16px}.principle-steps p,.plant-copy>p:not(.eyebrow),.salt-heading .section-intro,.global-copy p,.contact-bottom>p{font-size:15px}.location-mark,.plant-photo figcaption,.global-tags{font-size:12px}.text-link{font-size:14px;min-height:44px}.salt-outcomes p{font-size:14px}.figure-note{font-size:12px}.view-switch button{font-size:12px;min-height:44px}.render-hint{font-size:11px;white-space:normal;text-align:center;line-height:1.6;color:#9eb7c4}.hero-bottom span{font-size:10px;max-width:360px;line-height:1.7}.hero-bottom a{min-width:44px;min-height:44px}.control-state{font-size:9px}.signal>span:first-child{font-size:10px}.control-route,.control-foot>span{font-size:10px}.control-foot>p{font-size:10px;color:#9bb5c0;line-height:1.7}.contact-form-link{border-color:#617b80}.contact-form-link:focus-visible{outline-color:#21383f}.footer-top>div a{display:inline-flex;align-items:center;min-height:44px;font-size:12px}.footnote{font-size:12px;max-width:620px;color:#9eafba}.footer-bottom{font-size:11px;color:#95aab5}.hero-product:not(.rendered) .view-switch{display:none}#product-render:focus-visible{outline:2px solid #b2d9dd;outline-offset:-12px}
@media(max-width:900px){.lang{min-width:32px;min-height:44px;display:grid;place-items:center;font-size:12px}.menu{min-width:44px;min-height:44px}.lead{font-size:15px;line-height:1.8}.hero{min-height:990px}.hero-product{top:460px}.hero .eyebrow{font-size:10px}.hero-bottom span{font-size:9px;max-width:230px}.hero-bottom a{min-width:44px;min-height:44px}.section-intro{font-size:15px}.principle-steps p,.plant-copy>p:not(.eyebrow),.salt-heading .section-intro,.global-copy p,.contact-bottom>p{font-size:15px}.plant-photo figcaption,.location-mark,.global-tags,.figure-note{font-size:11px}.view-switch button{font-size:12px;min-height:44px}.render-hint{font-size:11px;max-width:300px}.control-head{gap:12px}.control-head>span:first-child{font-size:11px}.signal>span:first-child{font-size:10px}.control-state{font-size:8px}.control-route{font-size:10px}.control-foot>span,.control-foot>p{font-size:10px}.footer-top>div{gap:3px}.footer-top>div a{font-size:12px}.footnote{font-size:12px;line-height:1.8}.footer-bottom{font-size:10px}.flow-label{font-size:11px}.flow-ro{font-size:12px}.legal p{font-size:15px}.legal-page footer p{font-size:12px}.button{font-size:12px}.hero-copy{padding-top:136px}.hero-product .product-toolbar{bottom:30px}}
@media(max-width:360px){h1{font-size:48px}.hero{min-height:1020px}.hero-product{top:495px}.lead{font-size:14px}.email{font-size:15px;gap:15px}}
@media(max-width:900px){html:not(.js) .menu{display:none}html:not(.js) header{height:auto;flex-wrap:wrap;padding-block:20px}html:not(.js) header nav{display:flex;position:static;order:3;width:100%;padding:16px 0 0;flex-direction:row;flex-wrap:wrap;gap:20px;background:none;border:0}}
header nav a,.lang{display:inline-flex;align-items:center;min-height:44px;font-size:12px}.principle .eyebrow,.step-index{color:#53696e}.principle .section-intro,.principle-steps p{color:#4e666b}.figure-note{color:#53696e}.flow-label{fill:#50686d}.contact>.eyebrow,.contact-bottom>p{color:#49636a}@media(max-width:900px){.lang{display:grid}}

@media(max-width:900px){.hero-product{left:0;right:0}.hero-product .product-toolbar{left:6%;right:6%}}

/* Original decorative water artwork; keeps text and diagrams separate. */
.mission-pattern{opacity:.48;background:linear-gradient(180deg,transparent 25%,#14242d66 55%,#14242d 88%),url('/assets/vand.webp') center top/100% auto no-repeat;pointer-events:none}
@media(max-width:760px){.mission-pattern{opacity:.38;background-image:linear-gradient(180deg,transparent 15%,#14242d88 40%,#14242d 70%),url('/assets/vand-mobil.webp');background-size:auto,auto 420px;background-position:center top;background-repeat:no-repeat}}

/* One persistent scene: never crossfade the old illustration behind WebGL. */
.product-fallback{inset:0;transition:none;opacity:1;visibility:visible;display:grid;place-items:center}.product-fallback img{width:100%;height:100%;object-fit:contain}.rendered .product-fallback,.loading .product-fallback{opacity:0;visibility:hidden}#product-render canvas{opacity:1;transition:none}.hero-product.loading .product-toolbar{visibility:hidden}.hero-product.unavailable .product-fallback{opacity:1;visibility:visible}.view-switch{align-items:center}.view-switch button[data-reset-product]{display:grid;place-items:center;padding-inline:13px;border-left:1px solid #88a2ad33}.hero-product .product-toolbar{left:10%;right:10%;bottom:32px}.hero-product{inset:105px -5% 55px 39%}.hero-copy{max-width:670px}.hero-copy .lead{max-width:350px}
@media(min-width:1700px){.hero-product{inset:105px 0 55px 39%}}
@media(max-width:1100px) and (min-width:901px){.hero-product{inset:130px -14% 60px 35%}.hero-copy{max-width:54%}.hero-copy h1{font-size:clamp(58px,6.2vw,77px)}}
@media(max-width:900px){.hero-product{left:0;right:0;top:480px;bottom:58px}.hero-product .product-toolbar{bottom:8px;left:5%;right:5%}.hero{min-height:1015px}.hero-copy{max-width:600px}.hero-copy .lead{max-width:355px}}
@media(max-width:360px){.hero-product{top:500px}.hero{min-height:1035px}}
/* Hidden overflow can scroll when a 3D control receives focus; clipping cannot. */
.hero{overflow:clip}.product-fallback{min-width:0;min-height:0}.product-fallback img{min-width:0;min-height:0;display:block}
/* GEUS/Jupiter map: all geography, data and controls are self-hosted. */
.water-map{background:#0d1a22;padding-top:100px;padding-bottom:95px}.map-heading{display:grid;grid-template-columns:1fr 1fr;gap:13%;align-items:end;margin-bottom:34px}.map-heading .eyebrow{color:#94bac7;margin-bottom:25px}.map-heading h2{font-size:clamp(45px,4.4vw,70px)}.map-intro{font-size:16px;color:#a2b8c4;line-height:1.8;max-width:440px;padding-bottom:6px}.map-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.map-filters button{font:inherit;font-size:12px;line-height:1.4;min-height:44px;border:1px solid #59778655;background:transparent;color:#b8ccd4;padding:10px 15px;border-radius:2px;cursor:pointer}.map-filters button[aria-pressed=true]{background:#d7e6e6;color:#132b36;border-color:#d7e6e6}.map-filters button:hover{border-color:#acc8d3}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;border:1px solid #65849440;background:#0a151d}.map-stage{position:relative;min-width:0;overflow:clip;border-right:1px solid #65849440}.map-topline,.map-bottomline{position:absolute;left:25px;right:25px;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.4px;color:#9bb3c0;z-index:1;pointer-events:none}.map-topline{top:24px}.map-bottomline{bottom:20px;font-size:11px;letter-spacing:.2px}.map-bottomline span:first-child{display:flex;align-items:center;gap:9px}.map-bottomline i{width:7px;height:7px;border-radius:50%;background:#e58f84;box-shadow:0 0 12px #e58f8466}.denmark-map{width:100%;height:auto;display:block;padding:30px 15px 25px}.map-grid{stroke:#507183;stroke-width:.5;opacity:.13;fill:none}.map-land{fill:#1b343e;stroke:#7193a5;stroke-width:.7;stroke-linejoin:round}.map-city{fill:#93aebc;font:11px Manrope,Arial,sans-serif;letter-spacing:.1px}.map-dot{fill:#ef9e91;stroke:#0a151d;stroke-width:.8}.map-halo{fill:#e58f84;opacity:.1}.map-hit{fill:transparent;cursor:pointer}.map-point{cursor:pointer}.map-point:hover .map-dot,.map-point.selected .map-dot{fill:#fff}.map-point.selected .map-halo{opacity:.36;r:11}.map-point.map-hidden{display:none}.map-point:focus-visible{outline:none}.map-point:focus-visible .map-halo{opacity:.5}.map-info{padding:30px 25px;min-width:0}.map-total{padding-bottom:23px;border-bottom:1px solid #65849440;margin-bottom:24px}.map-total strong{display:block;font-size:64px;font-weight:400;letter-spacing:-3px;line-height:1.1}.map-total span{display:block;color:#9db5c2;font-size:13px;line-height:1.7;margin-top:8px}.map-select-label{display:block;font-size:12px;color:#a6bdc9;margin-bottom:10px}.map-info select{font:inherit;font-size:12px;background:#162b36;color:#d8e6eb;border:1px solid #67889a77;width:100%;min-height:45px;padding:10px 8px;border-radius:0}.map-detail{margin-top:28px;max-height:420px;overflow:auto;scrollbar-width:thin;scrollbar-color:#638494 #152b35}.map-detail-empty{font-size:14px;color:#a6bcc9;line-height:1.8}.map-detail h3{font-size:20px;line-height:1.45;font-weight:500;letter-spacing:-.4px}.map-municipality{font-size:12px;color:#9eb8c7;margin-top:6px}.map-reading{padding:20px 0;border-bottom:1px solid #65849433}.map-reading-type{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#e8aa9e}.map-reading h4{font-size:14px;line-height:1.6;font-weight:500;margin-top:7px}.map-reading-value{font-size:27px;letter-spacing:-.6px;line-height:1.5;margin-top:6px}.map-reading-limit,.map-reading-date{font-size:12px;line-height:1.7;color:#a8bfcb;margin-top:6px}.map-reading a{font-size:12px;line-height:1.8;display:inline-block;text-decoration:underline;text-underline-offset:4px;margin-top:12px;color:#c5dce5}.map-note{font-size:12px;color:#9db3c0;line-height:1.9;margin-top:20px;max-width:1000px}.map-method{border-top:1px solid #65849433;margin-top:20px;padding-top:10px}.map-method summary{font-size:12px;color:#b2c7d2;cursor:pointer;min-height:44px;align-content:center}.map-method p{font-size:12px;line-height:1.9;color:#a0b7c4;max-width:1020px;margin:12px 0}.map-method a{text-decoration:underline;text-underline-offset:4px}.map-filters button:focus-visible,.map-info select:focus-visible,.map-method summary:focus-visible{outline:2px solid #b2d9dd;outline-offset:4px}
@media(max-width:1100px){.map-layout{grid-template-columns:minmax(0,1fr) 300px}.map-info{padding:25px 20px}.map-total strong{font-size:53px}}
@media(max-width:760px){.water-map{padding-block:70px}.map-heading{display:block;margin-bottom:25px}.map-heading h2{font-size:42px;letter-spacing:-2px}.map-intro{font-size:15px;margin-top:22px}.map-filters{gap:6px;margin-bottom:20px}.map-filters button{font-size:11px;padding:10px 11px}.map-layout{display:flex;flex-direction:column}.map-stage{border-right:0;border-bottom:1px solid #65849440}.denmark-map{padding:25px 0 30px}.map-topline{left:16px;right:16px;top:17px;font-size:8px}.map-bottomline{left:16px;right:16px;bottom:15px;font-size:10px}.map-info{padding:23px 20px}.map-total{display:flex;align-items:center;gap:20px;padding-bottom:20px;margin-bottom:20px}.map-total strong{font-size:48px;letter-spacing:-2px}.map-total span{font-size:12px;max-width:130px;margin-top:0}.map-detail{margin-top:20px;max-height:360px}.map-detail h3{font-size:20px}.map-note{font-size:11px;line-height:1.9}.map-method p{font-size:12px}.map-halo{opacity:.16}}

html.js .hero-product:not(.unavailable) .product-fallback{visibility:hidden;opacity:0}
@media(min-width:761px){.denmark-map{height:clamp(430px,44vw,610px);width:100%;padding:30px 15px 25px}}
