@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:wght@600;800&family=Figtree:wght@400;600;700&display=swap');
:root{--ink:#0c2230;--teal:#14606b;--mist:#e8f0ef;--paper:#f7f9f8;--halo:#ffb547;--halo2:#ff8a3d;--mut:#51666f;--r:22px}
@media(prefers-color-scheme:dark){:root{--paper:#0c2230;--mist:#123142;--ink:#eef4f3;--mut:#9fb4bb;--teal:#4cc3cf}}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
body{font-family:Figtree,system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.6;font-size:17px}
h1,h2,h3{font-family:'Bricolage Grotesque',Figtree,sans-serif;line-height:1.05;letter-spacing:-.02em}
a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid var(--halo);outline-offset:3px}
.w{max-width:1160px;margin:auto;padding:0 24px}
nav{position:sticky;top:0;z-index:9;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid color-mix(in srgb,var(--ink) 10%,transparent)}
nav .w{display:flex;align-items:center;gap:20px;height:80px}
.logo{display:flex;align-items:center;gap:10px;font:800 22px 'Bricolage Grotesque';letter-spacing:.04em}
.logo i{width:30px;height:30px;border-radius:50%;border:5px solid var(--halo);box-shadow:0 0 18px var(--halo2);display:block}
nav ul{display:flex;gap:4px;list-style:none;margin-left:auto;padding:0;flex-wrap:wrap}
nav li a{padding:8px 14px;border-radius:99px;font-weight:600;font-size:15px}nav li a:hover,nav li a.on{background:var(--mist)}
.btn{display:inline-flex;gap:8px;align-items:center;padding:14px 26px;border-radius:99px;font-weight:700;background:linear-gradient(135deg,var(--halo),var(--halo2));color:#2a1500;box-shadow:0 8px 24px -8px var(--halo2);transition:transform .2s}
.btn:hover{transform:translateY(-3px)}.btn.g{background:none;color:#fff;border:2px solid #ffffff66;box-shadow:none}
.hero{position:relative;overflow:hidden;background:radial-gradient(120% 120% at 80% 0%,#1b6f7a,#0c2230 60%);color:#fff;padding:110px 0 120px}
.hero.s{padding:80px 0 90px}
.hero:before{content:"";position:absolute;right:-12%;top:50%;width:var(--d);height:var(--d);margin-top:calc(var(--d)/-2);border-radius:50%;border:34px solid transparent;border-top-color:var(--halo);border-right-color:#ffb54755;filter:drop-shadow(0 0 40px var(--halo2));animation:spin 28s linear infinite;opacity:.9}
.hero:after{content:"";position:absolute;right:calc(-12% + 120px);top:50%;width:var(--d2);height:var(--d2);margin-top:calc(var(--d2)/-2);border-radius:50%;border:2px solid #ffffff26}
.hero.i:before,.hero.i:after{opacity:.5}
@keyframes spin{to{transform:rotate(360deg)}}
.hero .w{position:relative;z-index:2}
.hero h1{font-size:clamp(42px,7vw,92px);max-width:880px;font-weight:800}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--halo),var(--halo2));-webkit-background-clip:text;color:transparent}
.hero p{max-width:600px;margin:26px 0 38px;font-size:20px;color:#d5e5e6}
.row{display:flex;gap:14px;flex-wrap:wrap}
section{padding:96px 0}section.m{background:var(--mist)}
h2{font-size:clamp(32px,4.4vw,56px);margin-bottom:18px;font-weight:800}
.lead{color:var(--mut);max-width:640px;font-size:19px}
.stats{margin-top:-60px;position:relative;z-index:3;padding:0}
.stats .g4{background:var(--paper);border-radius:var(--r);box-shadow:0 30px 60px -30px #0c223099;padding:34px 24px;border:1px solid color-mix(in srgb,var(--ink) 8%,transparent)}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.g4 b{display:block;font:800 clamp(34px,5vw,58px) 'Bricolage Grotesque';color:var(--teal)}.g4 span{color:var(--mut);font-weight:600}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:44px}
.card{background:var(--paper);border-radius:var(--r);padding:30px;border:1px solid color-mix(in srgb,var(--ink) 9%,transparent);transition:transform .25s,box-shadow .25s}
.card:hover{transform:translateY(-6px);box-shadow:0 24px 40px -24px #0c223088}
.card .ic{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-size:26px;background:var(--mist);margin-bottom:18px;box-shadow:inset 0 0 0 3px var(--halo)}
.card h3{font-size:24px;margin-bottom:10px}.card p{color:var(--mut);font-size:16px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.ph{border-radius:var(--r);min-height:380px;background:linear-gradient(135deg,#14606b,#0c2230);background-size:cover;background-position:center;box-shadow:0 30px 60px -30px #0c2230aa;position:relative}
.ph:after{content:"";position:absolute;inset:-14px 14px 14px -14px;border:3px solid var(--halo);border-radius:var(--r);z-index:-1}
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}
.steps div{counter-increment:s;padding:30px;border-radius:var(--r);background:var(--ink);color:var(--paper)}
.steps div:before{content:counter(s);display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--halo);color:#2a1500;font:800 22px 'Bricolage Grotesque';margin-bottom:16px}
.steps h3{font-size:30px}.steps p{opacity:.8;margin-top:8px}
.tile{min-height:300px;border-radius:var(--r);padding:28px;display:flex;align-items:flex-end;color:#fff;font:800 30px 'Bricolage Grotesque';background:linear-gradient(160deg,var(--c1),#0c2230);position:relative;overflow:hidden}
.tile:before{content:attr(data-e);position:absolute;top:10px;right:20px;font-size:120px;opacity:.25}
.tile small{display:block;font:500 15px Figtree;opacity:.8;margin-top:6px}
.cta{background:linear-gradient(135deg,var(--halo),var(--halo2));color:#2a1500;text-align:center;border-radius:36px;padding:70px 24px}
.cta .btn{background:#0c2230;color:#fff;box-shadow:none}
.ct{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.ct a{display:block}.ct b{font:800 26px 'Bricolage Grotesque';display:block;word-break:break-word}
form{display:grid;gap:14px;margin-top:30px}
input,textarea{font:inherit;padding:16px 18px;border-radius:16px;border:2px solid color-mix(in srgb,var(--ink) 14%,transparent);background:var(--paper);color:var(--ink)}
input:focus,textarea:focus{border-color:var(--halo);outline:0}
footer{background:#0a1b27;color:#a9bdc3;padding:60px 0 30px;font-size:15px}footer b{color:#fff}
footer .fg{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}

@media(prefers-reduced-motion:reduce){.hero:before{animation:none}*{transition:none!important}}
.hero{--d:clamp(340px,62vw,760px);--d2:calc(var(--d)*.68)}
html,body{overflow-x:hidden}
.logo svg{height:58px;width:auto;display:block}footer .logo svg{height:62px}
.ph{display:grid;place-items:center;isolation:isolate;background:radial-gradient(circle at 70% 20%,#1f7f8b,#0c2230 70%)}
.ph svg{width:72%;color:#fff;filter:drop-shadow(0 10px 30px #0008)}
.w .mq{width:100vw;margin-left:calc(50% - 50vw)}.mq{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);padding:10px 0}
.mq>div{display:flex;width:max-content;animation:mq 55s linear infinite}
.mq.r>div{animation-direction:reverse;animation-duration:46s}
.mq:hover>div{animation-play-state:paused}
.mq span{flex:none;width:236px;height:116px;margin-right:18px;background:#fff;border-radius:18px;display:grid;place-items:center;padding:16px;box-shadow:0 10px 24px -14px #0c2230aa;border:1px solid #0c223014}
.mq img{height:auto;display:block}
@keyframes mq{to{transform:translateX(-50%)}}
.map{border-radius:var(--r);overflow:hidden;box-shadow:0 30px 60px -30px #0c2230aa;border:1px solid #0c223018}.map iframe{display:block;width:100%;height:440px;border:0}
@media(max-width:1000px){.split{grid-template-columns:1fr;gap:48px}.ph{min-height:300px}section{padding:76px 0}footer .fg{grid-template-columns:1fr 1fr}}
@media(max-width:800px){body{font-size:16px}nav .w{flex-wrap:wrap;height:auto;padding:10px 20px;gap:8px}.logo svg{height:40px}nav ul{order:3;width:100%;margin:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:2px}nav li a{white-space:nowrap;padding:8px 12px}nav .btn{margin-left:auto;padding:9px 16px!important;font-size:14px}.steps,footer .fg{grid-template-columns:1fr}.g4{grid-template-columns:1fr 1fr}.hero{padding:70px 0 100px}.hero.s{padding:56px 0 70px}.hero p{font-size:18px}.hero:before{opacity:.4}.hero:after{display:none}.stats{margin-top:-50px}.ph:after{inset:-8px 8px 8px -8px}.mq{--k:.76}.mq span{width:180px;height:92px;padding:10px}.map iframe{height:340px}.cta{padding:48px 20px}h2{font-size:clamp(30px,8vw,40px)}}
@media(prefers-reduced-motion:reduce){.mq{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.mq>div{animation:none}}
