:root{--azur:#00a9e0;--minuit:#002d72;--charbon:#060716;--blanc:#f4f8fc;--texte:#d5e3f3}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{background:var(--charbon);color:var(--texte);font:400 1.125rem/1.6 "Rethink Sans",system-ui,sans-serif}
h1,h2,.stat{font-family:"Sofia Sans Condensed","Arial Narrow",sans-serif;font-weight:800;color:var(--blanc);line-height:1.02}
a{color:var(--azur)}
:focus-visible{outline:3px solid var(--azur);outline-offset:3px}
.wrap{max-width:1080px;margin:0 auto;padding:0 1.5rem}
header{position:absolute;inset:0 0 auto;z-index:3}
header .wrap{display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem;padding-bottom:1.5rem}
.brand{display:block;line-height:0}.brand img{height:clamp(34px,5vw,48px);width:auto}
.hero{position:relative;min-height:92vh;display:flex;align-items:flex-end;overflow:hidden;background:radial-gradient(120% 80% at 80% 10%,#0a2a63 0%,var(--charbon) 60%)}
.hero svg{position:absolute;inset:0;width:100%;height:100%}
.hero .wrap{position:relative;z-index:2;padding-bottom:5rem;padding-top:9rem}
h1{font-size:clamp(3rem,9vw,7rem);max-width:12ch}
.lead{max-width:34rem;margin-top:1.5rem;font-size:1.25rem}
.btn{display:inline-block;margin-top:2rem;background:var(--azur);color:var(--charbon);font-weight:700;padding:.85rem 1.6rem;border-radius:999px;text-decoration:none}
.btn:hover{background:#4cc6ee}
section{padding:6rem 0}
h2{font-size:clamp(2rem,5vw,3.4rem);max-width:18ch;margin-bottom:2rem}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:3rem}
.cols h3{color:var(--blanc);font-size:1.2rem;margin-bottom:.5rem}
.flow{background:var(--minuit)}
.flow p{max-width:40rem}
.mission{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:3rem;align-items:start}
.stat{font-size:clamp(3.5rem,9vw,6rem);color:var(--azur)}
.mission dl{display:grid;gap:1rem}
dt{color:var(--blanc);font-weight:700}
dd{margin:0}
footer{border-top:1px solid #16264a;padding:2.5rem 0;font-size:.95rem}
footer .wrap{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}
.formbox{margin-top:2rem;max-width:640px;border-radius:14px;overflow:hidden;background:#fff}.formbox iframe{display:block;width:100%}
.trail{stroke-dasharray:1400;stroke-dashoffset:1400;animation:draw 2.8s cubic-bezier(.2,.7,.2,1) forwards}
.t2{animation-delay:.3s}.t3{animation-delay:.6s}.t4{animation-delay:.9s}
@keyframes draw{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.trail{animation:none;stroke-dashoffset:0}html{scroll-behavior:auto}}

nav{display:flex;gap:1.5rem;align-items:center}
nav a{color:var(--blanc);text-decoration:none;font-weight:500}
nav a:hover{color:var(--azur)}
.onepager{background:linear-gradient(180deg,var(--charbon),#0a1633 40%,var(--charbon))}
.onepager h3{color:var(--blanc);font-size:1.25rem;margin-bottom:.75rem}
.sub{color:var(--azur);font-weight:700;font-size:1.25rem;margin:-1rem 0 1.5rem}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;margin:3rem 0;border-top:1px solid #1d3a6b;border-bottom:1px solid #1d3a6b}
.stats>div{padding:1.75rem 1.25rem;border-left:1px solid #1d3a6b}
.stats>div:first-child{border-left:0;padding-left:0}
.stats .stat{font-size:clamp(2.6rem,6vw,3.6rem)}
.stats span{display:block;color:var(--texte);font-size:1rem}
.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3.5rem;margin-top:3rem}
.two ul{list-style:none;padding:0;display:grid;gap:1rem}
.two li strong{color:var(--blanc)}
.arch{margin:1rem 0 1.5rem;width:100%;height:auto}
.arch text{font-family:"Rethink Sans",sans-serif;fill:var(--blanc);font-size:15px}
.arch .s{fill:var(--texte);font-size:12.5px}
.arch rect{fill:#0b1a3a;stroke:var(--azur);stroke-width:1.5}
.arch .cl{fill:var(--minuit)}
.arch line,.arch path{stroke:var(--azur);stroke-width:2;fill:none}
.dl{display:inline-block;margin-top:2.5rem;border:2px solid var(--azur);color:var(--blanc);padding:.8rem 1.5rem;border-radius:999px;text-decoration:none;font-weight:700}
.dl:hover{background:var(--azur);color:var(--charbon)}
.who{margin-top:2rem}.who strong{color:var(--blanc)}
.press{padding-top:9rem}
.items{list-style:none;padding:0;display:grid;margin-top:1rem}
.items li{padding:1.75rem 0;border-top:1px solid #1d3a6b;display:grid;gap:.35rem}
.items li:last-child{border-bottom:1px solid #1d3a6b}
.items a.t{color:var(--blanc);font-weight:700;font-size:1.25rem;text-decoration:none}
.items a.t:hover{color:var(--azur);text-decoration:underline}
.meta{font-size:.95rem;color:#8fb3d9}
.press h2{margin-bottom:1rem}.press h3{color:var(--blanc);margin:3rem 0 0}
@media (max-width:640px){nav{gap:1rem;font-size:.95rem}.stats>div{border-left:0;border-top:1px solid #1d3a6b;padding-left:0}.stats>div:first-child{border-top:0}}

.video{max-width:640px;aspect-ratio:16/9;background:#0b1430;border-radius:12px;overflow:hidden;margin-top:1rem}
.video video{width:100%;height:100%;display:block;background:#000}
.logos{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;margin-top:1.5rem}
.logo{border:1px solid #1d3a6b;border-radius:12px;overflow:hidden;display:grid}
.logo .pad{display:grid;place-items:center;padding:2rem;min-height:140px}
.logo .pad img{width:100%;max-width:300px;height:auto}
.logo .on-light{background:#fff}.logo .on-dark{background:var(--charbon)}
.logo a{padding:.9rem 1.25rem;border-top:1px solid #1d3a6b;color:var(--blanc);font-weight:500;text-decoration:none}
.logo a:hover{color:var(--azur)}
.swatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-top:1.5rem}
.sw{border-radius:12px;padding:3.5rem 1.1rem 1rem;color:#fff;font-weight:500;line-height:1.4}.sw small{display:block;font-weight:400;opacity:.9}
.actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}
.actions .btn,.actions .dl{margin-top:0}
.about{max-width:42rem;border-left:3px solid var(--azur);padding-left:1.25rem;margin-top:1.5rem}
.page{padding-top:8.5rem}.page section{padding:3rem 0}

.arch-img{display:block;width:100%;max-width:1000px;height:auto;margin-top:1.5rem;border-radius:14px}
