@font-face{font-family:Inter;font-weight:400;font-display:swap;src:url(fonts/inter-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-weight:600;font-display:swap;src:url(fonts/inter-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-weight:800;font-display:swap;src:url(fonts/inter-latin-800-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-weight:400;font-display:swap;src:url(fonts/inter-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-weight:600;font-display:swap;src:url(fonts/inter-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-weight:800;font-display:swap;src:url(fonts/inter-latin-ext-800-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{--ink:#0b2124;--ink2:#10282a;--deep:#081a1c;--g:#1c6f5a;--g2:#2b8d6b;--mint:#7fe0b6;--sand:#f6f1e6;--bg:#f4f8f7;--mut:#5f7173;--line:#dce7e5;--or:#e0602d}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.5}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.wrap{width:min(1240px,100% - 40px);margin-inline:auto}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:99;background:#fff;padding:8px 12px;border-radius:8px}
.eb{display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--g2)}
h1,h2,h3{letter-spacing:-.035em;line-height:1.04;font-weight:800}
h2{font-size:clamp(2.1rem,4.6vw,3.6rem);margin:12px 0 16px}
h2 em,h1 .acc{font-style:normal;color:var(--g)}
/* header */
.top{position:fixed;inset:0 0 auto;z-index:50;transition:background .3s,box-shadow .3s}
.top.solid{background:rgba(8,26,28,.86);backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(0,0,0,.18)}
.top-in{display:flex;align-items:center;justify-content:space-between;height:74px;gap:20px}
.brand{display:flex;align-items:center;gap:12px;color:#fff}
.brand img{border-radius:12px;background:#fff}
.brand strong{display:block;font-size:1.05rem;letter-spacing:.02em}.brand small{display:block;font-size:.72rem;color:#a8c3bd}
.nav{display:flex;align-items:center;gap:26px;font-size:.9rem;font-weight:600;color:#d6e6e2}
.nav a:hover{color:#fff}
.nav-cta{padding:10px 16px;border-radius:12px;background:var(--mint);color:var(--ink)!important}
.burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer}
.burger i{display:block;width:22px;height:2px;background:#fff;margin:6px auto;transition:.3s}
/* hero */
.hero{position:relative;overflow:hidden;background:radial-gradient(90% 80% at 80% 0%,#174b45 0%,var(--ink) 50%,var(--deep) 100%);color:#fff;padding:150px 0 60px}
#reseau{position:absolute;inset:0;width:100%;height:100%;opacity:.55}
.hero-grid{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
.hero .eb{color:var(--mint)}
.hero h1{font-size:clamp(2.6rem,5.6vw,4.9rem);margin:16px 0 22px;letter-spacing:-.05em;line-height:.98}
.hero h1 .ln{display:block}
.hero h1 .acc{color:var(--mint)}
.lead{font-size:1.15rem;color:#c3d6d2;max-width:620px}
.ask{margin:30px 0 12px;font-weight:700;color:#fff}
.intents{display:grid;gap:10px;max-width:640px}
.intent{position:relative;display:grid;grid-template-columns:44px 1fr;align-items:center;padding:16px 56px 16px 16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);transition:transform .25s,background .25s,border-color .25s}
.intent b{grid-row:span 2;font-size:.8rem;color:var(--mint);letter-spacing:.1em}
.intent span{font-weight:800;font-size:1.08rem}
.intent small{color:#9fb9b4;font-size:.86rem}
.intent i{position:absolute;right:20px;top:50%;transform:translateY(-50%);font-style:normal;font-size:1.3rem;color:var(--mint);transition:transform .25s}
.intent:hover{background:rgba(127,224,182,.12);border-color:rgba(127,224,182,.5);transform:translateX(6px)}
.intent:hover i{transform:translate(6px,-50%)}
.orbit{position:relative;aspect-ratio:1;max-width:480px;width:100%;justify-self:center}
.ring{position:absolute;inset:0;border-radius:50%;border:1px dashed rgba(127,224,182,.28)}
.r2{inset:16%}.r3{inset:32%;border-style:solid;border-color:rgba(127,224,182,.18)}
.core{position:absolute;inset:38%;border-radius:28%;overflow:hidden;background:#fff;box-shadow:0 0 0 8px rgba(127,224,182,.12),0 30px 80px rgba(0,0,0,.5);animation:pulse 4s ease-in-out infinite}
.core img{width:100%;height:100%;object-fit:cover}
.sat{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px;border-radius:18px;background:#fff;padding:10px;box-shadow:0 14px 34px rgba(0,0,0,.35);animation:orb 26s linear infinite}
.sat img{width:100%;height:100%;object-fit:contain;animation:orbr 26s linear infinite}
.s1{--r:200px;--a:0deg}.s2{--r:200px;--a:120deg}.s3{--r:200px;--a:240deg}.s4{--r:125px;--a:60deg;animation-duration:18s}.s5{--r:125px;--a:180deg;animation-duration:18s}.s6{--r:125px;--a:300deg;animation-duration:18s}
.s4 img,.s5 img,.s6 img{animation-duration:18s}
@keyframes orb{from{transform:rotate(var(--a)) translateX(var(--r)) rotate(calc(-1*var(--a)))}to{transform:rotate(calc(var(--a) + 360deg)) translateX(var(--r)) rotate(calc(-1*var(--a) - 360deg))}}
@keyframes orbr{from{transform:none}to{transform:none}}
@keyframes pulse{50%{box-shadow:0 0 0 18px rgba(127,224,182,.06),0 30px 80px rgba(0,0,0,.5)}}
.facts{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:64px;border-radius:20px;overflow:hidden;background:rgba(255,255,255,.1)}
.facts div{background:rgba(8,26,28,.7);padding:22px 24px}
.facts strong{display:block;font-size:1.9rem;letter-spacing:-.03em;color:#fff}
.facts span{color:#9fb9b4;font-size:.88rem}
/* poles nav */
.poles{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:74px;z-index:20}
.pole-nav{display:grid;grid-template-columns:repeat(4,1fr)}
.pole-nav a{padding:18px 10px;font-weight:700;font-size:.95rem;border-right:1px solid var(--line);text-align:center;transition:background .2s,color .2s}
.pole-nav a:last-child{border-right:0}
.pole-nav a em{font-style:normal;color:var(--g2);font-size:.75rem;margin-right:8px;letter-spacing:.1em}
.pole-nav a:hover,.pole-nav a.on{background:var(--ink);color:#fff}
/* sections */
.sec{padding:110px 0;scroll-margin-top:130px}
.head{max-width:760px;margin-bottom:46px}
.head.center{margin-inline:auto;text-align:center}
.head p{color:var(--mut);font-size:1.08rem}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.big{position:relative;display:flex;flex-direction:column;gap:14px;padding:36px;border-radius:30px;min-height:380px;overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.big:hover{transform:translateY(-8px);box-shadow:0 40px 90px rgba(11,33,36,.18)}
.big.light{background:#fff;border:1px solid var(--line)}
.big.dark{background:linear-gradient(150deg,#174b45,var(--ink));color:#fff}
.big h3{font-size:2.4rem}
.big p{color:var(--mut);font-size:1.05rem;max-width:460px}
.big.dark p{color:#c3d6d2}
.big ul,.veille ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.big li,.veille li{padding:7px 12px;border-radius:999px;font-size:.85rem;font-weight:700;background:#eef6f3;color:var(--g)}
.big.dark li{background:rgba(127,224,182,.14);color:var(--mint)}
.big strong{margin-top:auto;color:var(--g);font-size:1rem}
.big.dark strong{color:var(--mint)}
.tag{display:inline-block;align-self:flex-start;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--g2)}
.big.dark .tag{color:var(--mint)}
.big::after{content:"";position:absolute;right:-80px;bottom:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(127,224,182,.25),transparent 70%);transition:transform .5s}
.big:hover::after{transform:scale(1.4)}
.guide{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;align-items:center;margin-top:22px;padding:26px 30px;border-radius:24px;background:var(--sand);border:1px solid #ebe1cb}
.guide strong{display:block;font-size:1.25rem;letter-spacing:-.02em}.guide span{color:var(--mut)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips a{padding:9px 14px;border-radius:999px;background:#fff;border:1px solid #e5dccb;font-weight:700;font-size:.9rem;transition:background .2s,color .2s,transform .2s}
.chips a:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}
/* veilles */
.sec.dk{background:radial-gradient(80% 70% at 50% 0%,#174b45,var(--ink) 55%,var(--deep));color:#fff}
.sec.dk .head p{color:#b9cfca}.sec.dk h2 em{color:var(--mint)}.sec.dk .eb{color:var(--mint)}
.veilles{display:grid;grid-template-columns:1fr 150px 1fr;align-items:center;gap:20px}
.veille{position:relative;display:flex;flex-direction:column;gap:12px;padding:34px;border-radius:28px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);min-height:400px;transition:transform .35s,border-color .35s,box-shadow .35s}
.veille:hover{transform:translateY(-8px);border-color:rgba(127,224,182,.6);box-shadow:0 0 60px rgba(43,141,107,.35)}
.veille>img{position:absolute;right:28px;top:28px;width:58px;height:58px;border-radius:16px;background:#fff;padding:9px}
.veille .tag{color:var(--mint)}
.veille h3{font-size:2rem;max-width:80%}
.veille p{color:#c3d6d2}
.veille li{background:rgba(127,224,182,.14);color:#e6f7f0}
.veille li::before{content:"✓ ";color:var(--mint)}
.veille strong{margin-top:auto;color:var(--mint)}
.radar{position:relative;width:150px;height:150px}
.radar i{position:absolute;inset:0;border-radius:50%;border:2px solid var(--mint);animation:ping 3s ease-out infinite;opacity:0}
.radar i:nth-child(2){animation-delay:1s}.radar i:nth-child(3){animation-delay:2s}
.radar img{position:absolute;inset:40px;width:70px;height:70px;border-radius:20px;background:#fff;box-shadow:0 0 50px rgba(127,224,182,.5)}
@keyframes ping{0%{transform:scale(.35);opacity:.9}100%{transform:scale(1.25);opacity:0}}
/* studio */
.studio{background:linear-gradient(180deg,var(--sand),#fff)}
.studio-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
.studio p{color:var(--mut);font-size:1.08rem}
.ticks{list-style:none;margin:22px 0 28px;display:grid;gap:10px}
.ticks li{font-weight:700}.ticks li::before{content:"";display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--or);margin-right:12px}
.btns{display:flex;flex-wrap:wrap;gap:12px}.btns.center{justify-content:center}
.btn{display:inline-flex;align-items:center;padding:15px 22px;border-radius:14px;font-weight:800;border:1px solid var(--line);background:#fff;transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(11,33,36,.14)}
.btn.pri{background:var(--ink);color:#fff;border-color:var(--ink)}
.film{position:relative;margin:0}
.film video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:24px;background:var(--ink);box-shadow:0 40px 100px rgba(11,33,36,.3)}
.film .robot{position:absolute;width:120px;right:-30px;bottom:-40px;filter:drop-shadow(0 20px 30px rgba(0,0,0,.3));animation:flot 4s ease-in-out infinite}
.film figcaption{margin-top:14px;color:var(--mut);font-size:.88rem}
@keyframes flot{50%{transform:translateY(-12px) rotate(-3deg)}}
/* une */
.une{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.tile{display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:24px;background:#fff;border:1px solid var(--line);min-height:250px;background-size:cover;background-position:center;transition:transform .3s,box-shadow .3s}
.tile:hover{transform:translateY(-6px);box-shadow:0 30px 70px rgba(11,33,36,.14)}
.tile.photo{color:#fff;border:0}.tile.photo p{color:#d6e6e2}.tile.photo .tag{color:var(--mint)}
.tile-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.tile-top img{width:44px;height:44px;border-radius:12px;background:#fff;padding:6px;object-fit:contain;box-shadow:0 6px 16px rgba(0,0,0,.12)}
.tile h3{font-size:1.4rem;letter-spacing:-.02em}
.tile p{color:var(--mut);font-size:.95rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tile strong{margin-top:auto;font-size:.9rem;color:var(--g)}.tile.photo strong{color:var(--mint)}
.host{margin-top:26px;display:grid;grid-template-columns:.7fr 1.3fr;gap:24px;align-items:center;padding:28px;border-radius:24px;background:var(--ink);color:#fff}
.host .eb{color:var(--mint)}.host p{color:#b9cfca;margin-top:6px}
.host-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hosted{display:flex;align-items:center;gap:14px;padding:14px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);transition:background .2s}
.hosted:hover{background:rgba(127,224,182,.12)}
.hosted img{width:48px;height:48px;border-radius:12px;background:#fff;padding:5px;object-fit:contain;flex:0 0 auto}
.hosted strong{display:block;font-size:.95rem;line-height:1.25}.hosted small{color:#9fb9b4;font-size:.78rem}
.hosted i{margin-left:auto;font-style:normal;color:var(--mint)}
/* values */
.values{background:#fff}
.vals{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.vals div{padding:26px;border-radius:22px;background:var(--bg);border:1px solid var(--line)}
.vals b{color:var(--g2);font-size:.8rem;letter-spacing:.1em}
.vals strong{display:block;font-size:1.25rem;margin:8px 0 6px;letter-spacing:-.02em}
.vals span{color:var(--mut);font-size:.95rem}
/* final + footer */
.final{padding:100px 0;text-align:center;background:radial-gradient(70% 90% at 50% 100%,#174b45,var(--ink));color:#fff}
.final h2{color:#fff}.final p{color:#b9cfca;margin-bottom:28px;font-size:1.1rem}
.final .btn.pri{background:var(--mint);color:var(--ink);border-color:var(--mint)}
.final .btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.foot{background:var(--deep);color:#b9cfca;padding:60px 0 30px;font-size:.92rem}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}
.foot-brand{display:flex;gap:14px}.foot-brand img{border-radius:10px;background:#fff}.foot-brand strong{color:#fff}
.foot nav{display:flex;flex-direction:column;gap:8px}.foot nav strong{color:#fff;margin-bottom:4px}.foot nav a:hover{color:#fff}
.foot-bot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);font-size:.82rem}
/* reveal */
.js .rv{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1)}
.js .rv.vu{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.js .rv{opacity:1;transform:none}html{scroll-behavior:auto}}
/* responsive */
@media(max-width:1020px){
 .hero-grid,.studio-grid{grid-template-columns:1fr}
 .orbit{max-width:340px}.s1,.s2,.s3{--r:150px}.s4,.s5,.s6{--r:92px}
 .une{grid-template-columns:1fr 1fr}.vals{grid-template-columns:1fr 1fr}
 .veilles{grid-template-columns:1fr}.radar{justify-self:center;width:110px;height:110px}.radar img{inset:28px;width:54px;height:54px}
 .host{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
 .nav{position:fixed;inset:74px 0 auto;flex-direction:column;align-items:stretch;gap:0;background:rgba(8,26,28,.97);padding:10px 20px 20px;display:none}
 .nav a{padding:14px 4px;border-bottom:1px solid rgba(255,255,255,.08)}.nav-cta{text-align:center;margin-top:10px;border:0}
 .top.open .nav{display:flex}.top.open{background:rgba(8,26,28,.97)}
 .burger{display:block}.top.open .burger i:first-child{transform:translateY(4px) rotate(45deg)}.top.open .burger i:last-child{transform:translateY(-4px) rotate(-45deg)}
 .hero{padding:110px 0 40px}.lead{font-size:1.02rem}
 .facts{grid-template-columns:1fr 1fr;margin-top:40px}
 .poles{top:74px}.pole-nav{grid-template-columns:repeat(4,auto);overflow-x:auto}.pole-nav a{white-space:nowrap;padding:14px 16px;font-size:.85rem}
 .sec{padding:76px 0}.duo,.une,.vals,.host-list{grid-template-columns:1fr}
 .big{padding:28px;min-height:0}.big h3{font-size:2rem}.guide{grid-template-columns:1fr;padding:22px}
 .veille{padding:28px;min-height:0}.film .robot{width:84px;right:-6px;bottom:-30px}
 .foot-grid{grid-template-columns:1fr}
}
.protege{display:inline-flex;align-items:center;gap:5px;color:var(--mint);font-weight:700}
