/* AxionPro — thème V5 de la landing (fr/en). Source : maquette « AxionPro V5 » (17/10/2026), adaptée au positionnement pos-1/pos-2. */
:root{--f:'Geist',system-ui,sans-serif;--fm:'Geist Mono',ui-monospace,monospace;--r:18px;--ease:cubic-bezier(.2,.7,.2,1)}
[data-theme="dark"]{--bg:#04060a;--bg2:#0a0f17;--ink:#eaf2fb;--ink2:#a9b6c7;--ink3:#7c8a9e;--line:rgba(150,200,255,.12);--line2:rgba(150,210,255,.22);--cy:#67e8f9;--cy2:#38bdf8;--bl:#3b82f6;--glass:rgba(12,20,32,.55);--glass2:rgba(16,26,40,.78);--gb:rgba(140,210,255,.16);--bp:#d8f8ff;--bpi:#021018;--glow:rgba(103,232,249,.35);--ok:#67e8f9;--no:#4b5668;color-scheme:dark}
[data-theme="light"]{--bg:#edf2fb;--bg2:#e1e9f8;--ink:#061127;--ink2:#2c3a56;--ink3:#4f5d79;--line:rgba(37,72,160,.13);--line2:rgba(37,99,235,.26);--cy:#0271c2;--cy2:#0ea5e9;--bl:#4f46e5;--glass:rgba(255,255,255,.66);--glass2:rgba(255,255,255,.88);--gb:rgba(37,99,235,.18);--bp:linear-gradient(115deg,#2563eb,#0284c7 55%,#06b6d4);--bpi:#fff;--glow:rgba(37,99,235,.3);--ok:#0271c2;--no:#9aa6bd;color-scheme:light}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--f);background:var(--bg);color:var(--ink);font-size:17px;line-height:1.55;overflow-x:hidden;-webkit-font-smoothing:antialiased;transition:background .5s,color .5s}
a{color:var(--cy);text-decoration:none}a:hover{color:var(--ink)}
img{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:2px solid var(--cy);outline-offset:3px;border-radius:6px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:16px;top:-60px;z-index:200;padding:10px 16px;border-radius:10px;background:var(--bp);color:var(--bpi)}.skip:focus{top:16px}
.mono{font-family:var(--fm);letter-spacing:.02em}
.wrap{width:100%;max-width:1320px;margin:0 auto;padding:0 clamp(20px,4.5vw,56px)}
#scene{position:fixed;inset:0;width:100vw;height:100vh;z-index:0;pointer-events:none}
.scene-fallback{display:none;position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(40vw 40vw at 75% 35%,rgba(56,189,248,.16),transparent 70%),radial-gradient(30vw 30vw at 20% 80%,rgba(59,130,246,.1),transparent 70%)}
.no-gl .scene-fallback{display:block}
.cursor-glow{position:fixed;left:0;top:0;width:560px;height:560px;margin:-280px 0 0 -280px;border-radius:50%;pointer-events:none;z-index:1;background:radial-gradient(circle,var(--glow),transparent 62%);opacity:0;transition:opacity .6s;mix-blend-mode:screen;will-change:transform}
[data-theme="light"] .cursor-glow{mix-blend-mode:multiply;opacity:0!important}
.has-pointer .cursor-glow{opacity:.55}
main,.foot-s{position:relative}
/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .4s,border-color .4s,backdrop-filter .4s;border-bottom:1px solid transparent}
.nav.scr{background:color-mix(in oklab,var(--bg) 72%,transparent);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border-color:var(--line)}
.nav-in{display:flex;align-items:center;gap:28px;height:72px}
.logo{display:flex;align-items:center;gap:8px;color:var(--ink);flex:none}.logo img{height:30px;width:30px}
[data-theme="dark"] .logo .lm-l,[data-theme="light"] .logo .lm-d{display:none}
.logo-word{font-weight:600;font-size:19px;line-height:1;letter-spacing:-.045em}.logo-word b{font-weight:300;color:var(--cy)}
.logo-txt img{display:none}.logo-txt .logo-word{display:block}
.nav-links{display:flex;gap:4px;margin-left:8px}
.nav-links a{color:var(--ink2);font-size:14.5px;padding:8px 12px;border-radius:999px;transition:color .2s,background .2s}.nav-links a:hover{color:var(--ink);background:var(--line)}
.nav-act{display:flex;align-items:center;gap:10px;margin-left:auto}
.lang{display:flex;align-items:center;border:1px solid var(--line2);border-radius:999px;padding:3px;font-family:var(--fm);font-size:12px}
.lang>*{padding:4px 9px;border-radius:999px;color:var(--ink2)}.lang [aria-current]{background:var(--line2);color:var(--ink)}.lang a:hover{color:var(--ink)}
.theme-btn{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line2);color:var(--ink2);transition:color .2s,border-color .2s}.theme-btn:hover{color:var(--ink);border-color:var(--cy)}
[data-theme="dark"] .theme-btn .moon,[data-theme="light"] .theme-btn .sun{display:none}
.nav-login{color:var(--ink2);font-size:14.5px;padding:8px 10px}.nav-login:hover{color:var(--ink)}
.burger{display:none;width:40px;height:40px;border-radius:12px;border:1px solid var(--line2);position:relative}
.burger i{position:absolute;left:11px;right:11px;height:1.6px;background:var(--ink);transition:transform .3s,top .3s}.burger i:first-child{top:15px}.burger i:last-child{top:23px}
.burger[aria-expanded="true"] i:first-child{top:19px;transform:rotate(45deg)}.burger[aria-expanded="true"] i:last-child{top:19px;transform:rotate(-45deg)}
.mnav{display:flex;flex-direction:column;gap:4px;padding:12px clamp(20px,4.5vw,56px) 24px;background:color-mix(in oklab,var(--bg) 92%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}
.mnav[hidden]{display:none}
.mnav>a:not(.btn){font-size:22px;font-weight:500;letter-spacing:-.02em;color:var(--ink);padding:10px 0;border-bottom:1px solid var(--line)}
.mnav-row{display:flex;gap:20px;padding:16px 0}.mnav-row a{color:var(--ink2)}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 24px;border-radius:999px;font-weight:500;font-size:16px;letter-spacing:-.01em;white-space:nowrap;transition:transform .3s var(--ease),box-shadow .3s,background .3s,color .3s,border-color .3s}
.btn span{transition:transform .3s var(--ease)}.btn:hover span{transform:translateX(4px)}
.btn-p{background:var(--bp);color:var(--bpi);box-shadow:0 0 0 1px rgba(255,255,255,.4) inset,0 10px 40px -8px var(--glow)}
.btn-p:hover{color:var(--bpi);transform:translateY(-2px);box-shadow:0 0 0 1px rgba(255,255,255,.5) inset,0 18px 50px -8px var(--glow),0 0 30px -4px var(--glow)}
.btn-g{border:1px solid var(--line2);color:var(--ink);background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.btn-g:hover{color:var(--ink);border-color:var(--cy);transform:translateY(-2px)}
.btn-sm{height:38px;padding:0 16px;font-size:14px}
.btn-lg{height:60px;padding:0 32px;font-size:17px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}
/* type */
.eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--fm);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink2)}
.idx{color:var(--cy);padding:3px 8px;border:1px solid var(--line2);border-radius:6px}
.pulse{width:7px;height:7px;border-radius:50%;background:var(--cy);box-shadow:0 0 0 0 var(--cy);animation:pulse 2.2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in oklab,var(--cy) 60%,transparent)}100%{box-shadow:0 0 0 10px transparent}}
.h2{font-size:clamp(38px,5.4vw,80px);line-height:.98;letter-spacing:-.045em;font-weight:500;margin:22px 0 0;text-wrap:balance;max-width:16ch}
.lead{font-size:clamp(17px,1.4vw,20px);color:var(--ink2);max-width:46ch;margin-top:22px;text-wrap:pretty}
.sec-head{margin-bottom:clamp(40px,6vw,80px)}.sec-head.center{text-align:center}.sec-head.center .eyebrow{justify-content:center}.sec-head.center .h2,.sec-head.center .lead{margin-left:auto;margin-right:auto}
section{position:relative}
/* hero */
.hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:120px 0 40px}
.hero-in{flex:1;display:flex;flex-direction:column;justify-content:center}
.hero-h{font-size:clamp(50px,8.6vw,138px);line-height:.9;letter-spacing:-.055em;font-weight:500;margin:26px 0 0}
.hero-h .ln{display:block;overflow:hidden;padding-bottom:.06em}
.hero-h .ln>span{display:inline-block;transform:translateY(105%);animation:rise 1.1s var(--ease) forwards}
.hero-h .ln:nth-child(2)>span{animation-delay:.12s;background:linear-gradient(100deg,var(--ink) 30%,var(--cy) 75%,var(--bl));-webkit-background-clip:text;background-clip:text;color:transparent}
@keyframes rise{to{transform:none}}
.hero-k{margin-top:30px;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--cy);display:flex;gap:14px;flex-wrap:wrap}
.hero-k span:last-child{color:var(--ink)}
.hero-p{font-size:clamp(17px,1.45vw,21px);color:var(--ink2);max-width:44ch;margin-top:18px;text-wrap:pretty}.hero-p strong{color:var(--ink);font-weight:500}
.hero-c{margin-top:36px}
.hero-e,.hero-k,.hero-p,.hero-c{opacity:0;transform:translateY(14px);animation:fadeup .9s var(--ease) forwards}
.hero-e{animation-delay:.05s}.hero-k{animation-delay:.5s}.hero-p{animation-delay:.62s}.hero-c{animation-delay:.74s}
@keyframes fadeup{to{opacity:1;transform:none}}
.proofs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:56px;border-top:1px solid var(--line);opacity:0;animation:fadeup 1s var(--ease) .95s forwards}
.proof{padding:22px 24px 4px 0;display:flex;flex-direction:column;gap:6px}
.proof+.proof{padding-left:24px;border-left:1px solid var(--line)}
.proof b{font-size:clamp(22px,2.2vw,30px);font-weight:500;letter-spacing:-.04em;line-height:1}.proof b small{font-size:.55em;color:var(--ink2);margin-left:2px}
.proof span{font-size:13.5px;color:var(--ink2);line-height:1.4;max-width:28ch}
.scroll-cue{position:absolute;right:clamp(20px,4.5vw,56px);bottom:150px;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:var(--ink3);writing-mode:vertical-rl}
.scroll-cue i{width:1px;height:56px;background:linear-gradient(var(--cy),transparent);animation:cue 2.2s ease-in-out infinite;transform-origin:top}
@keyframes cue{0%{transform:scaleY(0)}50%{transform:scaleY(1)}100%{transform:scaleY(1);opacity:0}}
/* chapters */
.chap{min-height:120vh;display:flex;align-items:center;padding:120px 0}
.chap-in{display:flex}.chap-r .chap-in{justify-content:flex-end}
.chap-c{max-width:540px;padding:36px;margin:-36px;border-radius:28px;background:radial-gradient(closest-side,color-mix(in oklab,var(--bg) 70%,transparent),transparent)}
.flux-note{margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}
.flux-note p{color:var(--ink2)}.flux-n{display:flex;align-items:baseline;gap:14px;color:var(--ink)!important;font-size:18px;margin-bottom:10px}
.flux-n b{font-size:64px;font-weight:500;letter-spacing:-.05em;line-height:1;color:var(--cy)}
.hint{margin-top:28px;font-size:12px;color:var(--ink3);text-transform:uppercase;letter-spacing:.12em;display:flex;align-items:center;gap:10px}.hint::before{content:"";width:22px;height:1px;background:var(--cy)}
.rings{list-style:none;margin-top:44px;display:flex;flex-direction:column}
.rings button{width:100%;text-align:left;display:grid;grid-template-columns:86px minmax(0,1fr);column-gap:16px;padding:18px 0;border-top:1px solid var(--line);transition:padding .35s var(--ease)}
.rings li:last-child button{border-bottom:1px solid var(--line)}
.r-i{grid-row:span 2;font-size:11.5px;color:var(--ink3);text-transform:uppercase;letter-spacing:.1em;padding-top:5px;transition:color .3s}
.r-t{font-size:20px;font-weight:500;letter-spacing:-.02em}
.r-d{color:var(--ink2);font-size:15px}
.rings button:hover,.rings button.on{padding-left:12px}.rings button:hover .r-i,.rings button.on .r-i{color:var(--cy)}
/* holo dashboard */
.pilot{padding:clamp(100px,14vw,180px) 0 clamp(80px,10vw,140px)}
.holo{position:relative;perspective:1600px;max-width:1080px;margin:0 auto}
.holo-beam{position:absolute;left:10%;right:10%;bottom:-60px;height:120px;background:radial-gradient(50% 50% at 50% 50%,var(--glow),transparent);filter:blur(20px);opacity:.8}
.holo-frame{position:relative;transform:rotateX(14deg) scale(.96);transform-style:preserve-3d;border-radius:22px;border:1px solid var(--line2);background:linear-gradient(170deg,var(--glass2),var(--glass));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 60px 120px -40px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.03) inset,0 1px 0 rgba(255,255,255,.08) inset;transition:transform 1.2s var(--ease)}
[data-theme="light"] .holo-frame{box-shadow:0 60px 100px -50px rgba(20,40,90,.35),0 1px 0 #fff inset}
.holo-frame::before{content:"";position:absolute;inset:0;border-radius:inherit;background:repeating-linear-gradient(0deg,transparent 0 3px,color-mix(in oklab,var(--cy) 5%,transparent) 3px 4px);pointer-events:none;opacity:.5}
.holo.on .holo-frame{transform:rotateX(var(--rx,4deg)) rotateY(var(--ry,0deg))}
.holo-bar{display:flex;align-items:center;gap:16px;padding:14px 18px;border-bottom:1px solid var(--line)}
.hdots{display:flex;gap:6px}.hdots i{width:9px;height:9px;border-radius:50%;background:var(--line2)}
.url{font-size:12px;color:var(--ink3);padding:4px 12px;border-radius:999px;background:var(--line);margin:0 auto}
.live{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--cy);text-transform:uppercase;letter-spacing:.1em}.live i{width:6px;height:6px;border-radius:50%;background:var(--cy);animation:pulse 1.8s infinite}
.holo-body{display:grid;grid-template-columns:190px minmax(0,1fr)}
.holo-nav{display:flex;flex-direction:column;gap:2px;padding:18px 12px;border-right:1px solid var(--line);font-size:13.5px;color:var(--ink2)}
.holo-nav span{padding:8px 12px;border-radius:9px}.holo-nav .on{background:color-mix(in oklab,var(--cy) 14%,transparent);color:var(--ink)}
.hn-logo{font-weight:600;color:var(--ink)!important;letter-spacing:-.02em;margin-bottom:10px}
.holo-main{padding:24px;transform-style:preserve-3d}
.holo-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:20px}.holo-head b{font-size:20px;font-weight:500;letter-spacing:-.02em}.holo-head span{font-size:12px;color:var(--ink3)}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;transform-style:preserve-3d}
.kpi{position:relative;padding:18px 18px 12px;border-radius:14px;border:1px solid var(--line2);background:color-mix(in oklab,var(--bg2) 60%,transparent);display:flex;flex-direction:column;gap:4px;overflow:hidden}
.kpi::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(140deg,color-mix(in oklab,var(--cy) 14%,transparent),transparent 45%);pointer-events:none}
.k-l{font-size:11px;color:var(--ink3);text-transform:uppercase;letter-spacing:.1em}
.k-v{font-size:clamp(22px,2.4vw,32px);font-weight:500;letter-spacing:-.04em;line-height:1.15;font-variant-numeric:tabular-nums}
.k-d{font-size:12.5px;color:var(--ink2)}.k-d.up{color:var(--cy)}
.spark{width:100%;height:32px;margin-top:8px;overflow:visible}.spark path{fill:none;stroke:var(--cy);stroke-width:1.6;stroke-linecap:round;stroke-dasharray:200;stroke-dashoffset:200;transition:stroke-dashoffset 1.6s var(--ease) .3s;filter:drop-shadow(0 0 6px var(--glow))}
.holo-flow{display:flex;align-items:center;gap:10px;margin-top:18px;padding:14px 16px;border-radius:12px;border:1px dashed var(--line2);font-family:var(--fm);font-size:12px;color:var(--ink2);flex-wrap:wrap}
.holo-flow span{padding:4px 10px;border-radius:7px;background:var(--line)}
.holo-flow i{flex:1;min-width:20px;height:1px;background:linear-gradient(90deg,transparent,var(--cy),transparent);background-size:200% 100%;animation:flow 1.8s linear infinite}
@keyframes flow{from{background-position:100% 0}to{background-position:-100% 0}}
.hp{opacity:0;transform:translateZ(0) translateY(18px);transition:opacity .8s var(--ease),transform .9s var(--ease)}
.holo.on .hp{opacity:1;transform:translateZ(var(--z,0px)) translateY(0)}
.holo.on .spark path{stroke-dashoffset:0}
/* modules */
.mods{padding:clamp(80px,10vw,140px) 0}
.mods-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,5vw,80px);align-items:center}
.map-wrap{position:relative;aspect-ratio:1;max-width:560px;width:100%;margin:0 auto}
#map{width:100%;height:100%;overflow:visible}
#map .ln{stroke:var(--line2);stroke-width:1;fill:none;transition:stroke .4s,opacity .4s}
#map .ln.hot{stroke:var(--cy);stroke-width:1.4;stroke-dasharray:4 6;animation:dash 1s linear infinite;filter:drop-shadow(0 0 4px var(--glow))}
@keyframes dash{to{stroke-dashoffset:-20}}
#map .nd circle{fill:var(--bg);stroke:var(--line2);stroke-width:1.2;transition:all .4s}
#map .nd text{fill:var(--ink2);font-family:var(--fm);font-size:11.5px;letter-spacing:.04em;transition:fill .4s}
#map .nd.on circle{stroke:var(--cy);fill:color-mix(in oklab,var(--cy) 22%,var(--bg));filter:drop-shadow(0 0 10px var(--glow))}
#map .nd.on text{fill:var(--ink)}
#map .nd.lit circle{stroke:color-mix(in oklab,var(--cy) 60%,var(--line2))}
#map .sm circle{fill:var(--line2);stroke:none}
#map .core circle{fill:color-mix(in oklab,var(--cy) 18%,var(--bg));stroke:var(--cy);stroke-width:1.2}
#map .core text{fill:var(--ink);font-family:var(--f);font-weight:600;font-size:15px;letter-spacing:-.02em}
#map .pk{fill:var(--cy);filter:drop-shadow(0 0 4px var(--cy))}
.mod-list{list-style:none;border-top:1px solid var(--line)}
.mod{width:100%;text-align:left;display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:12px;padding:20px 4px;border-bottom:1px solid var(--line);transition:background .3s}
.mod:hover{background:linear-gradient(90deg,color-mix(in oklab,var(--cy) 6%,transparent),transparent)}
.m-n{font-size:12px;color:var(--ink3);padding-top:9px;transition:color .3s}
.m-t{font-size:clamp(22px,2.3vw,32px);font-weight:500;letter-spacing:-.035em;line-height:1.2;color:var(--ink2);transition:color .3s}
.m-b{grid-column:2;display:flex;flex-direction:column;max-height:0;overflow:hidden;opacity:0;transition:max-height .55s var(--ease),opacity .4s}
.m-d{color:var(--ink2);font-size:15.5px;max-width:46ch;padding-top:8px}
.tags{display:flex;flex-wrap:wrap;gap:6px;padding-top:12px}.tags span{font-family:var(--fm);font-size:11.5px;padding:4px 10px;border-radius:999px;border:1px solid var(--line2);color:var(--ink2)}
.mod[aria-expanded="true"] .m-t{color:var(--ink)}.mod[aria-expanded="true"] .m-n{color:var(--cy)}
.mod[aria-expanded="true"] .m-b{max-height:220px;opacity:1}
/* comparatif */
.cmp{padding:clamp(60px,8vw,110px) 0}
.cmp-t{position:relative;border-radius:22px;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);overflow:hidden}
.cmp-r{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));align-items:center}
.cmp-r>*{padding:20px 24px;border-bottom:1px solid var(--line)}.cmp-r:last-child>*{border-bottom:0}
.cmp-r>[role="cell"],.cmp-h>*:not(:first-child){text-align:center}
.cmp-h>*{font-family:var(--fm);font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3)}
.cmp-h .ax{color:var(--ink);font-family:var(--f);font-size:17px;text-transform:none;letter-spacing:-.02em;font-weight:600}
[role="rowheader"]{font-size:16px}
.cmp .ax{background:linear-gradient(180deg,color-mix(in oklab,var(--cy) 10%,transparent),color-mix(in oklab,var(--cy) 4%,transparent));box-shadow:1px 0 0 color-mix(in oklab,var(--cy) 35%,transparent) inset,-1px 0 0 color-mix(in oklab,var(--cy) 35%,transparent) inset}
.yes{color:var(--ok);font-size:18px}.no{color:var(--no);font-size:16px}.txt{color:var(--ink2);font-size:15px}.ax.txt{color:var(--ink);font-weight:500}
.foot{margin-top:16px;font-size:12px;color:var(--ink3)}
/* témoignage */
.temo{padding:clamp(100px,14vw,200px) 0}
.temo-in{display:flex;flex-direction:column;align-items:center;text-align:center}
.temo-h{font-size:clamp(36px,5.6vw,84px);line-height:1;letter-spacing:-.045em;font-weight:400;margin-top:26px;max-width:18ch;text-wrap:balance}
.caret{display:inline-block;width:.06em;height:.82em;margin-left:.08em;vertical-align:-.06em;background:var(--cy);box-shadow:0 0 18px var(--cy);animation:blink 1.05s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.temo .lead{margin-left:auto;margin-right:auto}.temo .btn{margin-top:36px}
/* pricing */
.price{padding:clamp(80px,10vw,140px) 0}
.tiers{position:relative;display:flex;flex-direction:column;gap:14px;padding-left:44px}
.tiers::before{content:"";position:absolute;left:12px;top:30px;bottom:30px;width:2px;border-radius:2px;background:linear-gradient(var(--line2),var(--cy),var(--bl));box-shadow:0 0 14px var(--glow)}
.tier{position:relative;display:grid;grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) minmax(0,1.7fr) auto;gap:28px;align-items:center;padding:30px 32px;border-radius:22px;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:border-color .4s,transform .4s var(--ease)}
.tier::before{content:"";position:absolute;left:-39px;top:50%;width:12px;height:12px;margin-top:-6px;border-radius:50%;background:var(--bg);border:2px solid var(--cy);box-shadow:0 0 12px var(--glow)}
.tier:hover{border-color:var(--line2);transform:translateX(4px)}
.tier-pro{border-color:color-mix(in oklab,var(--cy) 45%,transparent);background:linear-gradient(100deg,color-mix(in oklab,var(--cy) 9%,var(--glass)),var(--glass));box-shadow:0 30px 80px -40px var(--glow)}
.tier-pro::before{background:var(--cy)}
.t-lv{font-size:11.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--cy)}
.t-id h3{font-size:30px;font-weight:500;letter-spacing:-.035em;line-height:1.1;margin-top:6px}.t-id p{color:var(--ink2);font-size:15px;margin-top:2px}
.t-pr{display:flex;flex-direction:column}.t-pr b{font-size:clamp(34px,3.4vw,48px);font-weight:500;letter-spacing:-.045em;line-height:1}.t-pr span{color:var(--ink2);font-size:15px;margin-top:6px}.t-pr em{font-style:normal;font-size:11.5px;color:var(--ink3);margin-top:8px;text-transform:uppercase;letter-spacing:.06em}
.t-f{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;font-size:15px;color:var(--ink2)}
.t-f li{display:flex;gap:9px}.t-f li::before{content:"";flex:none;width:6px;height:6px;margin-top:9px;border-radius:2px;background:var(--cy);transform:rotate(45deg)}
.guar{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px;margin-top:40px;color:var(--ink2);font-size:15px}
.guar li{display:flex;align-items:center;gap:9px}.guar li::before{content:"✓";color:var(--cy);font-weight:600}
/* faq */
.faq{padding:clamp(80px,10vw,140px) 0}
.faq-in{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:40px}
.faq-l{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-size:clamp(18px,1.6vw,22px);font-weight:500;letter-spacing:-.02em}
summary::-webkit-details-marker{display:none}
summary::after{content:"";flex:none;width:12px;height:12px;border-right:1.6px solid var(--cy);border-bottom:1.6px solid var(--cy);transform:rotate(45deg) translate(-3px,-3px);transition:transform .35s var(--ease)}
details[open] summary::after{transform:rotate(225deg)}
details p{color:var(--ink2);padding:0 40px 26px 0;max-width:60ch}
/* final */
.final{min-height:110vh;display:flex;align-items:center;padding:140px 0}
.final-in{display:flex;flex-direction:column;align-items:center;text-align:center}
.final-k{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--cy)}
.final-h{font-size:clamp(44px,7vw,112px);line-height:.95;letter-spacing:-.055em;font-weight:500;margin-top:22px;max-width:14ch;text-wrap:balance;text-shadow:0 0 60px var(--bg)}
.final .lead{margin-left:auto;margin-right:auto}.final .cta-row{margin-top:38px;justify-content:center}
/* footer */
.foot-s{border-top:1px solid var(--line);padding:70px 0 30px;background:color-mix(in oklab,var(--bg) 80%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.foot-g{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:40px}
.foot-b p{color:var(--ink2);font-size:14.5px;max-width:36ch;margin-top:18px}
.socials{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:20px;font-size:14px}.socials a{color:var(--ink2)}.socials a:hover{color:var(--cy)}
.foot-c{display:flex;flex-direction:column;gap:14px}
.foot-c h4{font-size:11.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);font-weight:400}
.foot-c a{color:var(--ink);font-size:15px;display:flex;flex-direction:column}.foot-c a small{color:var(--ink3);font-size:13px}.foot-c a:hover{color:var(--cy)}
.foot-l{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:60px;padding-top:24px;border-top:1px solid var(--line);font-size:12px;color:var(--ink3)}
.status{display:flex;align-items:center;gap:8px;color:var(--ink2)}.status i{width:7px;height:7px;border-radius:50%;background:#34d399;box-shadow:0 0 10px #34d399}
/* reveal */
.rv{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform 1s var(--ease)}
.rv.in{opacity:1;transform:none}
/* responsive */
@media (max-width:1180px){.nav-links{display:none}.burger{display:block}.tier{grid-template-columns:minmax(0,1fr) minmax(0,1fr);row-gap:22px}.t-f{grid-column:1/-1}.tier .btn{grid-column:1/-1;justify-self:start}}
@media (max-width:860px){
body{font-size:16px}
.nav-login,.lang,.nav-act>.btn-sm{display:none}
.proofs{grid-template-columns:repeat(2,minmax(0,1fr))}.proof:nth-child(3){padding-left:0;border-left:0}.proof:nth-child(n+3){border-top:1px solid var(--line);margin-top:6px}
.scroll-cue{display:none}
.chap{min-height:auto;padding:110px 0 90px}.chap-r .chap-in{justify-content:flex-start}
.chap-c{max-width:none;background:color-mix(in oklab,var(--bg) 55%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);margin:0;padding:28px 22px;border:1px solid var(--line)}
.chap{padding-top:58vh}
.holo-frame{transform:none}.holo.on .holo-frame{transform:none}
.holo-body{grid-template-columns:1fr}.holo-nav{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line);padding:10px;white-space:nowrap}.hn-logo{display:none}
.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.holo-main{padding:16px}
.mods-grid{grid-template-columns:1fr}.map-wrap{max-width:380px}
.cmp-r{grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr))}.cmp-r>*{padding:14px 8px}.cmp-r>:first-child{padding-left:16px}[role="rowheader"]{font-size:14px}.cmp-h>*{font-size:10px;letter-spacing:.04em}.cmp-h .ax{font-size:14px}
.tiers{padding-left:28px}.tiers::before{left:6px}.tier::before{left:-27px}.tier{grid-template-columns:1fr;padding:24px 22px}.t-f{grid-template-columns:1fr}
.faq-in{grid-template-columns:1fr;gap:10px}
.foot-g{grid-template-columns:1fr 1fr}.foot-b{grid-column:1/-1}
.final{min-height:90vh}
}
@media (max-width:420px){.btn{white-space:normal;text-align:center;height:auto;min-height:52px;padding:12px 22px}.hero-h{font-size:clamp(44px,13vw,60px)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.rv,.hp{opacity:1;transform:none}html{scroll-behavior:auto}.caret{opacity:1}}

[data-theme="light"] body{background:radial-gradient(60vw 50vw at 85% -5%,rgba(56,189,248,.28),transparent 60%),radial-gradient(50vw 45vw at -5% 35%,rgba(99,102,241,.2),transparent 60%),radial-gradient(55vw 40vw at 80% 75%,rgba(14,165,233,.16),transparent 60%),radial-gradient(40vw 40vw at 15% 105%,rgba(139,92,246,.14),transparent 60%),var(--bg);background-attachment:fixed}
[data-theme="light"] .cursor-glow{mix-blend-mode:normal;opacity:.5!important;background:radial-gradient(circle,rgba(56,189,248,.22),transparent 62%)}
[data-theme="light"] .idx{background:linear-gradient(120deg,#dbeafe,#cffafe);border-color:rgba(37,99,235,.25)}
[data-theme="light"] .hero-h .ln:nth-child(2)>span{background-image:linear-gradient(100deg,#061127 20%,#2563eb 55%,#06b6d4 90%)}
[data-theme="light"] .flux-n b,[data-theme="light"] .t-pr b{background:linear-gradient(110deg,#2563eb,#06b6d4);-webkit-background-clip:text;background-clip:text;color:transparent}
[data-theme="light"] .tier-pro{background:linear-gradient(110deg,rgba(219,234,254,.95),rgba(207,250,254,.7) 60%,rgba(255,255,255,.7));border-color:rgba(37,99,235,.4);box-shadow:0 30px 70px -36px rgba(37,99,235,.45)}
[data-theme="light"] .cmp .ax{background:linear-gradient(180deg,rgba(219,234,254,.9),rgba(207,250,254,.5))}
[data-theme="light"] .btn-g{background:rgba(255,255,255,.75)}
[data-theme="light"] .tiers::before{background:linear-gradient(#93c5fd,#2563eb,#06b6d4)}
[data-theme="light"] .caret{background:#2563eb;box-shadow:0 0 18px rgba(37,99,235,.6)}
[data-theme="light"] .pulse{background:#06b6d4}
[data-theme="light"] .chap-c{background:radial-gradient(closest-side,rgba(237,242,251,.85),transparent)}
/* dashboard */
.holo{max-width:1180px}
.db{display:grid;grid-template-columns:220px minmax(0,1fr);text-align:left}
.db-side{display:flex;flex-direction:column;gap:2px;padding:16px 12px;border-right:1px solid var(--line);font-size:13px;color:var(--ink2)}
.db-ws{display:flex;align-items:center;gap:10px;padding:8px;border-radius:12px;border:1px solid var(--line);margin-bottom:8px}
.db-ws-l,.av{flex:none;display:grid;place-items:center;border-radius:9px;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--cy2),var(--bl))}
.db-ws-l{width:30px;height:30px}
.db-ws b,.db-user b{display:block;font-size:12.5px;font-weight:500;color:var(--ink);line-height:1.2}.db-ws em,.db-user em{display:block;font-style:normal;font-size:11px;color:var(--ink3)}
.db-g{font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);padding:12px 10px 4px}
.db-i{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:9px}.db-i svg{flex:none;opacity:.8}
.db-i em{margin-left:auto;font-style:normal;font-size:10.5px;padding:1px 7px;border-radius:999px;background:color-mix(in oklab,var(--cy) 18%,transparent);color:var(--cy)}
.db-i.on{background:color-mix(in oklab,var(--cy) 15%,transparent);color:var(--ink);box-shadow:inset 2px 0 0 var(--cy)}.db-i.on svg{color:var(--cy);opacity:1}
.db-user{margin-top:auto;display:flex;align-items:center;gap:10px;padding:14px 8px 4px;border-top:1px solid var(--line)}
.av{width:28px;height:28px;border-radius:50%;font-size:10.5px}
.db-main{padding:20px 22px 22px;display:flex;flex-direction:column;gap:14px;transform-style:preserve-3d;min-width:0}
.db-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.db-h{display:block;font-size:20px;font-weight:500;letter-spacing:-.02em}.db-sub{font-size:11.5px;color:var(--ink3)}
.db-tools{display:flex;gap:8px;align-items:center}
.db-search{display:flex;align-items:center;gap:8px;height:34px;padding:0 10px;border-radius:10px;border:1px solid var(--line);color:var(--ink3);font-size:12.5px;min-width:190px}.db-search kbd{margin-left:auto;font-size:10.5px;padding:1px 6px;border-radius:5px;border:1px solid var(--line)}
.db-new{height:34px;display:flex;align-items:center;padding:0 14px;border-radius:10px;font-size:12.5px;font-weight:500;color:#fff;background:linear-gradient(120deg,var(--bl),var(--cy2));box-shadow:0 6px 18px -6px var(--glow)}
[data-theme="dark"] .db-new{background:linear-gradient(120deg,#2563eb,#0891b2)}
.db-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:14px}
.db-card{padding:16px 18px;border-radius:14px;border:1px solid var(--line2);background:color-mix(in oklab,var(--bg2) 55%,transparent);min-width:0}
[data-theme="light"] .db-card,[data-theme="light"] .kpi{background:rgba(255,255,255,.72)}
.db-ch{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:12px}.db-ch b{font-size:14px;font-weight:500}.db-ch>span{font-size:11px;color:var(--ink3)}
.lg{margin-left:auto;display:flex;align-items:center;gap:6px}.lg i{width:8px;height:8px;border-radius:2px}.lr{background:linear-gradient(var(--cy2),var(--bl))}.ld{background:var(--line2);margin-left:8px}
.db-bars{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;height:150px;align-items:end;padding-bottom:20px;background:repeating-linear-gradient(0deg,var(--line) 0 1px,transparent 1px 32px)}
.db-bar{position:relative;height:100%;display:flex;align-items:flex-end;justify-content:center;gap:4px}
.db-bar span{width:38%;max-width:18px;border-radius:5px 5px 2px 2px;transform-origin:bottom;transform:scaleY(.04);transition:transform 1.1s var(--ease);transition-delay:calc(var(--i)*80ms + .5s)}
.b-r{height:var(--r);background:linear-gradient(var(--cy2),var(--bl));box-shadow:0 0 14px -2px var(--glow)}.b-d{height:var(--d);background:var(--line2)}
.db-bar em{position:absolute;bottom:-20px;font-style:normal;font-size:10.5px;color:var(--ink3)}
.holo.on .db-bar span{transform:none}
.db-pipe{list-style:none;display:flex;flex-direction:column;gap:12px}
.db-pipe li{display:grid;grid-template-columns:1fr auto;gap:5px 10px;font-size:12.5px}
.p-n em{font-style:normal;font-size:10.5px;margin-left:8px;padding:1px 6px;border-radius:999px;background:var(--line);color:var(--ink2)}.p-v{color:var(--ink);font-size:12px}
.p-b{grid-column:1/-1;height:6px;border-radius:6px;background:var(--line)}.p-b i{display:block;height:100%;width:var(--w);border-radius:inherit;background:linear-gradient(90deg,var(--bl),var(--cy2));transform-origin:left;transform:scaleX(0);transition:transform 1.2s var(--ease) .7s}
.holo.on .p-b i{transform:none}
.db-tbl{display:flex;flex-direction:column;font-size:12.5px}
.db-tr{display:grid;grid-template-columns:96px minmax(0,1fr) 78px 86px;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--line)}.db-tr:first-child{border-top:0}
.db-tr>span:first-child{font-size:11px;color:var(--ink3)}.db-tr>span:nth-child(2){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.r{text-align:right}
.chip{display:inline-block;font-size:10.5px;padding:2px 8px;border-radius:999px;font-weight:500}
.chip.ok{background:rgba(16,185,129,.16);color:#34d399}.chip.wait{background:rgba(56,189,248,.16);color:var(--cy)}.chip.late{background:rgba(244,114,182,.15);color:#f472b6}
[data-theme="light"] .chip.ok{color:#047857}[data-theme="light"] .chip.late{color:#be185d}
.db-jobs{list-style:none;display:flex;flex-direction:column;gap:8px}
.db-jobs li{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 10px;border-radius:10px;background:var(--line);font-size:12.5px}
.j-t{font-size:11px;color:var(--cy)}.j-n em{display:block;font-style:normal;font-size:11px;color:var(--ink3)}
.holo-note{text-align:center;margin-top:22px;font-size:11px;color:var(--ink3);text-transform:uppercase;letter-spacing:.1em}
@media (max-width:1180px){.db{grid-template-columns:1fr}.db-side{flex-direction:row;align-items:center;gap:4px;overflow-x:auto;white-space:nowrap;border-right:0;border-bottom:1px solid var(--line);padding:10px 12px;scrollbar-width:thin}.db-side .db-ws,.db-side .db-user,.db-side .db-g{display:none}.db-i{flex:none}.db-i.on{box-shadow:inset 0 -2px 0 var(--cy)}.db-more{flex:none}}
@media (max-width:860px){.db-row{grid-template-columns:1fr}.db-search{display:none}.db-tr{grid-template-columns:minmax(0,1fr) 70px 80px}.db-tr>span:first-child{display:none}.db-main{padding:14px}}
.db-more{padding:8px 10px;font-size:11px;color:var(--cy);letter-spacing:.04em}

.hero{isolation:auto}
.hero-photo{position:absolute;inset:0;z-index:0;overflow:hidden;mix-blend-mode:screen;opacity:.95;-webkit-mask:linear-gradient(180deg,#000 50%,rgba(0,0,0,.35) 88%,rgba(0,0,0,.35));mask:linear-gradient(180deg,#000 50%,rgba(0,0,0,.35) 88%,rgba(0,0,0,.35))}
.hero-scrim{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.7) 38%,rgba(0,0,0,.2) 70%,transparent 90%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 45%)}
[data-theme="light"] .hero-photo{mix-blend-mode:multiply;opacity:.55;filter:grayscale(.2)}
[data-theme="light"] .hero-scrim{background:linear-gradient(90deg,rgba(237,242,251,.85) 0%,rgba(237,242,251,.4) 45%,transparent 75%)}
.hero-in,.proofs,.scroll-cue{position:relative;z-index:1}
.hero-in,.proofs{pointer-events:none}.hero-in a,.hero-in button,.proofs a{pointer-events:auto}

/* pos-2 — ajouts au thème V5 */
.hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.1) contrast(1.1) brightness(.72)}
.hero-credit{position:absolute;right:clamp(20px,4.5vw,56px);bottom:14px;z-index:2;font-size:11px;color:var(--ink3)}.hero-credit a{color:var(--ink3)}.hero-credit a:hover{color:var(--ink)}
.trades{list-style:none;margin-top:28px;display:flex;flex-wrap:wrap;gap:8px}
.trades li{font-family:var(--fm);font-size:12.5px;letter-spacing:.02em;padding:7px 13px;border-radius:999px;border:1px solid var(--line2);background:var(--glass);color:var(--ink)}
.duo{padding:clamp(80px,10vw,140px) 0}
.duo-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.duo-c{position:relative;padding:clamp(28px,3.4vw,44px);border-radius:24px;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);overflow:hidden}
.duo-c::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(140deg,color-mix(in oklab,var(--cy) 10%,transparent),transparent 45%);pointer-events:none}
.duo-c h3{font-size:clamp(26px,2.6vw,38px);line-height:1.05;letter-spacing:-.04em;font-weight:500;margin-top:18px;max-width:18ch;text-wrap:balance}
.duo-c p{color:var(--ink2);margin-top:16px;max-width:46ch}
.duo-c ul{list-style:none;margin-top:22px;display:flex;flex-direction:column;gap:10px;color:var(--ink2);font-size:15.5px}
.duo-c li{display:flex;gap:10px}.duo-c li::before{content:"";flex:none;width:6px;height:6px;margin-top:9px;border-radius:2px;background:var(--cy);transform:rotate(45deg)}
.office{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:1080px;margin:clamp(40px,5vw,64px) auto 0}
.office li{padding:16px 18px;border-radius:14px;border:1px solid var(--line);background:var(--glass);font-size:15.5px;color:var(--ink)}
.office li small{display:block;font-size:13px;color:var(--ink3);margin-top:2px}
.price-note{text-align:center;margin-top:20px;font-size:13px;color:var(--ink3)}
@media (max-width:860px){.duo-g{grid-template-columns:1fr}.office{grid-template-columns:1fr}}
@media (min-width:861px) and (max-width:1180px){.office{grid-template-columns:repeat(2,minmax(0,1fr))}}
.flux-n b{white-space:nowrap}
.tiers-2 .t-pr b{font-size:clamp(28px,2.6vw,40px)}
.cursor-glow{display:none}.has-pointer .cursor-glow{display:block}
.holo-bar .url{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:420px){.hdots{display:none}.holo-bar{gap:10px;padding:12px 14px}}
.flux-n{flex-wrap:wrap}
/* Sans JS (ou bundle en échec) : rien ne reste masqué. shared/ui.js pose html.js. */
html:not(.js) .rv,html:not(.js) .hp{opacity:1;transform:none}
.foot-c h3{font-size:11.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);font-weight:400}
