/* NextWaveNFC — Design system "Instrument de signal" — scopé .nwn-page / .nwn-chrome */
:root{
 --void:#08090B;--charbon:#101317;--charbon-2:#171C22;--charbon-3:#1E242B;
 --line:#262C34;--line-2:#323a44;--grid:rgba(255,255,255,.055);
 --bone:#ECEDEF;--bone-dim:#9AA2AB;--bone-faint:#616a73;
 --signal:#0EA5A0;--signal-bright:#1ac9c1;--signal-deep:#0a716c;--signal-glow:rgba(14,165,160,.16);
 --panel:#EFEDE6;--panel-ink:#12151a;--maxw:1200px;--gut:24px;
 --ff-disp:"Clash Display","SF Pro Display",system-ui,-apple-system,"Segoe UI",sans-serif;
 --ff-body:"General Sans",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
 --ff-mono:"JetBrains Mono","SF Mono",ui-monospace,"Cascadia Code",Menlo,Consolas,monospace;
}
.nwn-page,.nwn-chrome{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.nwn-page{background:var(--void);color:var(--bone);font-family:var(--ff-body);font-size:17px;line-height:1.6}
.nwn-page *,.nwn-chrome *{box-sizing:border-box}
.nwn-page a{color:inherit;text-decoration:none}
.nwn-page img{max-width:100%;display:block}
.nwn-page ::selection{background:var(--signal);color:var(--void)}
.nwn-page :focus-visible,.nwn-chrome :focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-radius:2px}
.nwn-page h1,.nwn-page h2,.nwn-page h3,.nwn-page h4{margin:0}
.nwn-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut);width:100%}
.nwn-page .mono{font-family:var(--ff-mono);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:500;color:var(--bone-faint)}

.nwn-page .sec{padding:100px 0;position:relative}
.nwn-page .sec-head{display:flex;flex-direction:column;gap:18px;margin-bottom:52px;max-width:720px}
.nwn-page .coord{display:inline-flex;align-items:center;gap:12px}
.nwn-page .coord .dot{width:7px;height:7px;background:var(--signal);border-radius:1px;box-shadow:0 0 10px var(--signal)}
.nwn-page .coord span{font-family:var(--ff-mono);letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:600;color:var(--signal)}
.nwn-page .coord i{font-style:normal;font-family:var(--ff-mono);letter-spacing:.16em;font-size:12px;color:var(--bone-faint);text-transform:uppercase}
.nwn-page .sec-title{font-family:var(--ff-disp);font-weight:700;letter-spacing:-.03em;line-height:1.02;font-size:clamp(30px,4.4vw,52px)}
.nwn-page .sec-title em{font-style:normal;color:var(--signal)}
.nwn-page .sec-sub{color:var(--bone-dim);font-size:18px;max-width:560px}

.nwn-page .btn,.nwn-chrome .btn{position:relative;display:inline-flex;align-items:center;gap:12px;font-weight:600;font-size:15.5px;padding:15px 26px;border-radius:8px;cursor:pointer;border:1px solid transparent;overflow:hidden;transition:transform .18s cubic-bezier(.2,.7,.3,1),background .2s,border-color .2s,color .2s;isolation:isolate;font-family:var(--ff-body)}
.nwn-page .btn .arw,.nwn-chrome .btn .arw{transition:transform .2s}
.nwn-page .btn:hover .arw,.nwn-chrome .btn:hover .arw{transform:translateX(3px)}
.nwn-page .btn-lg{padding:17px 30px;font-size:16px}
.nwn-page .btn-primary,.nwn-chrome .btn-primary{background:var(--signal);color:#04211f;font-weight:700}
.nwn-page .btn-primary::before,.nwn-chrome .btn-primary::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translateX(-120%);transition:transform .55s ease}
.nwn-page .btn-primary:hover,.nwn-chrome .btn-primary:hover{background:var(--signal-bright);transform:translateY(-2px)}
.nwn-page .btn-primary:hover::before,.nwn-chrome .btn-primary:hover::before{transform:translateX(120%)}
.nwn-page .btn-ghost,.nwn-chrome .btn-ghost{background:transparent;color:var(--bone);border-color:var(--line-2)}
.nwn-page .btn-ghost:hover,.nwn-chrome .btn-ghost:hover{border-color:var(--signal);color:var(--signal);transform:translateY(-2px)}
.nwn-page .link-signal{display:inline-flex;align-items:center;gap:8px;color:var(--bone);font-weight:600;position:relative}
.nwn-page .link-signal::after{content:"";position:absolute;left:0;bottom:-3px;height:1.5px;width:100%;background:var(--signal);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.nwn-page .link-signal:hover{color:var(--signal)}
.nwn-page .link-signal:hover::after{transform:scaleX(1)}

/* HERO */
.nwn-page .hero{position:relative;padding:clamp(48px,6vw,88px) 0 92px;overflow:hidden}
.nwn-page .hero-grid{position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(90deg,var(--grid) 0 1px,transparent 1px 8.3333%);-webkit-mask-image:linear-gradient(180deg,#000 40%,transparent 96%);mask-image:linear-gradient(180deg,#000 40%,transparent 96%);opacity:.9}
.nwn-page .hero-in{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.nwn-page .hero-copy{max-width:600px}
.nwn-page .hero-ey{display:inline-flex;align-items:center;gap:12px;margin-bottom:26px}
.nwn-page .hero-ey .bar{width:34px;height:1.5px;background:var(--signal)}
.nwn-page .hero-ey span{font-family:var(--ff-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--signal)}
.nwn-page .hero h1{font-family:var(--ff-disp);font-weight:700;letter-spacing:-.04em;line-height:.96}
.nwn-page .hero h1 .l1{display:block;font-size:clamp(54px,9vw,104px)}
.nwn-page .hero h1 .l1 .p{color:var(--signal)}
.nwn-page .hero h1 .l2{display:block;font-size:clamp(26px,4.6vw,50px);font-weight:600;color:var(--bone);letter-spacing:-.03em;margin-top:6px;line-height:1.02}
.nwn-page .hero h1 .l2 b{font-weight:700}
.nwn-page .hero h1 em{font-style:normal;color:var(--signal)}
.nwn-page .hero p.lede{color:var(--bone-dim);font-size:19px;max-width:460px;margin:28px 0 36px;line-height:1.55}
.nwn-page .hero-cta{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.nwn-page .hero-trust{display:flex;align-items:center;gap:16px;margin-top:44px;padding-top:22px;border-top:1px solid var(--line);flex-wrap:wrap}
.nwn-page .hero-trust .stars{color:var(--signal);letter-spacing:2px;font-size:13px}
.nwn-page .sep{width:6px;height:6px;border-radius:50%;background:var(--line-2);flex:0 0 auto}

/* NFC card */
.nwn-page .stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:420px}
.nwn-page .glow{position:absolute;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,var(--signal-glow),transparent 62%);filter:blur(6px)}
.nwn-page .rings{position:absolute;width:340px;height:340px;pointer-events:none}
.nwn-page .rings span{position:absolute;inset:0;margin:auto;width:120px;height:120px;border:1.5px solid var(--signal);border-radius:50%;opacity:0;animation:nwnring 3.4s ease-out infinite}
.nwn-page .rings span:nth-child(2){animation-delay:1.13s}
.nwn-page .rings span:nth-child(3){animation-delay:2.26s}
@keyframes nwnring{0%{transform:scale(.4);opacity:0}18%{opacity:.7}100%{transform:scale(2.5);opacity:0}}
.nwn-page .card{position:relative;width:min(360px,86%);aspect-ratio:1.586/1;border-radius:16px;background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 42%),linear-gradient(160deg,#1b2127,#0d1116 70%);border:1px solid #2c343d;box-shadow:0 2px 0 rgba(255,255,255,.04) inset,0 40px 80px -30px rgba(0,0,0,.8);transform:rotate(-7deg);transition:transform .4s cubic-bezier(.2,.7,.3,1);padding:24px;overflow:hidden}
.nwn-page .card::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,rgba(255,255,255,.025) 0 2px,transparent 2px 5px);pointer-events:none}
.nwn-page .card .chip{width:38px;height:29px;border-radius:5px;border:1px solid var(--signal);position:relative;background:linear-gradient(160deg,rgba(14,165,160,.18),transparent)}
.nwn-page .card .chip::before,.nwn-page .card .chip::after{content:"";position:absolute;background:var(--signal);opacity:.55}
.nwn-page .card .chip::before{left:0;right:0;top:50%;height:1px}
.nwn-page .card .chip::after{top:0;bottom:0;left:50%;width:1px}
.nwn-page .card .cname{position:absolute;left:24px;bottom:44px;font-family:var(--ff-disp);font-weight:700;font-size:24px;letter-spacing:-.02em}
.nwn-page .card .cname span{color:var(--signal)}
.nwn-page .card .cser{position:absolute;left:25px;bottom:26px;font-family:var(--ff-mono);font-size:9.5px;letter-spacing:.32em;color:var(--bone-faint)}
.nwn-page .card .cwave{position:absolute;right:22px;bottom:24px}
.nwn-page .card .cwave path{fill:none;stroke:var(--signal);stroke-width:2.2;stroke-linecap:round}
.nwn-page .card-tag{position:absolute;top:26px;right:-6px;font-family:var(--ff-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--signal);background:var(--charbon);border:1px solid var(--line);padding:6px 10px;border-radius:6px;transform:rotate(-7deg)}

/* TICKER */
.nwn-page .ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--charbon);overflow:hidden}
.nwn-page .ticker-in{display:flex;align-items:center;gap:56px;padding:20px 0;white-space:nowrap;width:max-content;animation:nwnslide 34s linear infinite}
.nwn-page .ticker:hover .ticker-in{animation-play-state:paused}
.nwn-page .ticker-item{display:inline-flex;align-items:center;gap:12px;font-family:var(--ff-mono);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--bone-dim)}
.nwn-page .ticker-item b{color:var(--bone);font-weight:600}
.nwn-page .ticker-item .s{color:var(--signal)}
@keyframes nwnslide{to{transform:translateX(-50%)}}

/* STEPS */
.nwn-page .steps{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--charbon)}
.nwn-page .step{padding:38px 32px 42px;border-right:1px solid var(--line);transition:background .25s}
.nwn-page .step:last-child{border-right:0}
.nwn-page .step:hover{background:var(--charbon-2)}
.nwn-page .step .n{font-family:var(--ff-mono);font-size:13px;color:var(--signal);letter-spacing:.1em}
.nwn-page .step .ico{width:46px;height:46px;margin:22px 0 20px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line-2);border-radius:11px;color:var(--signal);background:var(--charbon-2)}
.nwn-page .step h3{font-family:var(--ff-disp);font-weight:600;font-size:22px;letter-spacing:-.02em;margin-bottom:10px}
.nwn-page .step p{color:var(--bone-dim);font-size:15.5px;line-height:1.55}

/* DUO */
.nwn-page .duo{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.nwn-page .duo-card{border:1px solid var(--line);border-radius:14px;padding:40px 36px;background:var(--charbon);position:relative;overflow:hidden;min-height:300px}
.nwn-page .duo-card .tag{font-family:var(--ff-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--signal)}
.nwn-page .duo-card h3{font-family:var(--ff-disp);font-weight:700;font-size:30px;letter-spacing:-.02em;margin:16px 0 12px}
.nwn-page .duo-card p{color:var(--bone-dim);font-size:16px;max-width:420px}
.nwn-page .duo-card ul{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-direction:column;gap:11px}
.nwn-page .duo-card li{display:flex;align-items:flex-start;gap:11px;font-size:15px;color:var(--bone)}
.nwn-page .duo-card li svg{flex:0 0 auto;margin-top:3px;color:var(--signal)}
.nwn-page .duo-card .beam{position:absolute;right:-40px;top:-40px;width:220px;height:220px;background:radial-gradient(circle,var(--signal-glow),transparent 65%);pointer-events:none}

/* PLANS */
.nwn-page .plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:end}
.nwn-page .plan{position:relative;border:1px solid var(--line);border-radius:16px;background:var(--charbon);padding:34px 30px;display:flex;flex-direction:column;gap:20px;transition:transform .25s,border-color .25s}
.nwn-page .plan:hover{transform:translateY(-4px);border-color:var(--line-2)}
.nwn-page .plan .nm{font-family:var(--ff-mono);font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--bone-dim)}
.nwn-page .plan .nm.s{color:var(--signal)}
.nwn-page .plan .p-price{font-family:var(--ff-disp);font-weight:700;font-size:52px;letter-spacing:-.03em;line-height:1}
.nwn-page .plan .p-price small{font-family:var(--ff-mono);font-size:14px;font-weight:500;letter-spacing:.06em;color:var(--bone-faint);margin-left:8px}
.nwn-page .plan .p-desc{color:var(--bone-dim);font-size:14.5px;min-height:42px}
.nwn-page .plan ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;flex:1}
.nwn-page .plan li{display:flex;align-items:flex-start;gap:11px;font-size:14.5px;color:var(--bone)}
.nwn-page .plan li svg{flex:0 0 auto;margin-top:3px;color:var(--signal)}
.nwn-page .plan li.off{color:var(--bone-faint)}
.nwn-page .plan li.off svg{color:var(--bone-faint)}
.nwn-page .plan .btn{justify-content:center;width:100%}
.nwn-page .plan.feat{background:var(--charbon-2);border-color:var(--signal);box-shadow:0 0 0 1px var(--signal),0 30px 60px -30px var(--signal-glow);transform:translateY(-14px)}
.nwn-page .plan.feat:hover{transform:translateY(-18px)}
.nwn-page .plan .flag{position:absolute;top:-11px;left:30px;font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;background:var(--signal);color:#04211f;font-weight:700;padding:5px 11px;border-radius:6px}
.nwn-page .plans-foot{margin-top:26px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}

/* ENTERPRISE light */
.nwn-page .ent{background:var(--panel);color:var(--panel-ink)}
.nwn-page .ent .nwn-wrap{padding-top:104px;padding-bottom:104px}
.nwn-page .ent-in{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.nwn-page .ent .coord span{color:var(--signal-deep)}
.nwn-page .ent .coord i{color:#6b7076}
.nwn-page .ent .coord .dot{background:var(--signal-deep);box-shadow:none}
.nwn-page .ent h2{font-family:var(--ff-disp);font-weight:700;letter-spacing:-.03em;font-size:clamp(32px,4.2vw,50px);line-height:1.02;margin:16px 0 18px}
.nwn-page .ent p{color:#3d444c;font-size:18px;max-width:440px}
.nwn-page .ent-list{list-style:none;margin:26px 0 32px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.nwn-page .ent-list li{display:flex;align-items:flex-start;gap:10px;font-size:15px;color:var(--panel-ink);font-weight:500}
.nwn-page .ent-list li svg{flex:0 0 auto;margin-top:3px;color:var(--signal-deep)}
.nwn-page .ent .btn-primary{background:var(--panel-ink);color:var(--panel)}
.nwn-page .ent .btn-primary:hover{background:#000}
.nwn-page .ent .link-signal{color:var(--panel-ink)}
.nwn-page .ent-visual{background:var(--panel-ink);border-radius:16px;padding:34px;position:relative;overflow:hidden;min-height:320px;display:flex;flex-direction:column;justify-content:center;gap:14px}
.nwn-page .ent-visual .row{display:flex;align-items:center;gap:14px;background:#191d23;border:1px solid #262c34;border-radius:10px;padding:14px 16px}
.nwn-page .ent-visual .av{width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,var(--signal),var(--signal-deep));flex:0 0 auto}
.nwn-page .ent-visual .row .t{flex:1}
.nwn-page .ent-visual .row .t b{color:var(--bone);font-size:14px;font-weight:600;display:block}
.nwn-page .ent-visual .row .t span{font-family:var(--ff-mono);font-size:11px;color:var(--bone-faint);letter-spacing:.06em}
.nwn-page .ent-visual .row .stat{font-family:var(--ff-mono);font-size:13px;color:var(--signal)}
.nwn-page .ent-visual .lbl{position:absolute;top:16px;left:18px;font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--bone-faint)}

/* TESTIMONIALS */
.nwn-page .tst{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.nwn-page .tst-card{border:1px solid var(--line);border-radius:14px;padding:30px 28px;background:var(--charbon);display:flex;flex-direction:column;gap:18px}
.nwn-page .tst-card .stars{color:var(--signal);letter-spacing:3px;font-size:13px}
.nwn-page .tst-card blockquote{margin:0;font-size:16.5px;line-height:1.55;color:var(--bone);font-family:var(--ff-disp);font-weight:500;letter-spacing:-.01em}
.nwn-page .tst-card .who{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:8px;border-top:1px solid var(--line)}
.nwn-page .tst-card .who .av{width:38px;height:38px;border-radius:9px;background:linear-gradient(135deg,var(--charbon-3),#0c0f13);border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;font-family:var(--ff-disp);font-weight:700;color:var(--signal);font-size:15px}
.nwn-page .tst-card .who .nm{font-size:14px;font-weight:600}
.nwn-page .tst-card .who .rl{font-family:var(--ff-mono);font-size:11px;letter-spacing:.06em;color:var(--bone-faint);text-transform:uppercase}

/* NEWSLETTER */
.nwn-page .news{border:1px solid var(--line);border-radius:18px;background:radial-gradient(120% 140% at 100% 0,var(--signal-glow),transparent 45%),var(--charbon);padding:56px;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.nwn-page .news h2{font-family:var(--ff-disp);font-weight:700;font-size:clamp(26px,3.2vw,38px);letter-spacing:-.03em;max-width:440px;line-height:1.04}
.nwn-page .news p{color:var(--bone-dim);margin-top:12px;max-width:400px}
.nwn-page .news-form{display:flex;gap:10px;min-width:340px}
.nwn-page .news-form input{flex:1;background:var(--void);border:1px solid var(--line-2);border-radius:9px;padding:15px 16px;color:var(--bone);font-family:var(--ff-mono);font-size:14px;letter-spacing:.02em}
.nwn-page .news-form input::placeholder{color:var(--bone-faint)}
.nwn-page .news-form input:focus{outline:none;border-color:var(--signal);box-shadow:0 0 0 3px var(--signal-glow)}

/* COMPARISON TABLE */
.nwn-page .cmp-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px}
.nwn-page table.cmp{width:100%;border-collapse:collapse;min-width:640px;font-size:15px}
.nwn-page table.cmp th,.nwn-page table.cmp td{padding:15px 20px;text-align:center;border-bottom:1px solid var(--line)}
.nwn-page table.cmp thead th{background:var(--charbon-2);font-family:var(--ff-mono);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--bone-dim);font-weight:600}
.nwn-page table.cmp thead th .pr{display:block;font-family:var(--ff-disp);font-size:18px;color:var(--bone);letter-spacing:-.01em;margin-top:4px}
.nwn-page table.cmp th:first-child,.nwn-page table.cmp td:first-child{text-align:left;color:var(--bone-dim);font-weight:500}
.nwn-page table.cmp tbody tr:last-child td{border-bottom:0}
.nwn-page table.cmp .col-wave{background:rgba(14,165,160,.05)}
.nwn-page table.cmp thead .col-wave{background:rgba(14,165,160,.12);color:var(--signal)}
.nwn-page table.cmp thead .col-wave .pr{color:var(--signal)}
.nwn-page .chk{color:var(--signal)}.nwn-page .dash{color:var(--bone-faint)}
.nwn-page table.cmp .val{font-family:var(--ff-mono);font-size:13px;color:var(--bone)}
.nwn-page table.cmp tbody tr:hover td{background:rgba(255,255,255,.02)}
.nwn-page table.cmp tbody tr:hover td.col-wave{background:rgba(14,165,160,.08)}

/* FUNNEL */
.nwn-page .funnel{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--charbon)}
.nwn-page .fstep{padding:32px 28px;border-right:1px solid var(--line);position:relative}
.nwn-page .fstep:last-child{border-right:0}
.nwn-page .fstep .fn{display:flex;align-items:center;gap:10px;font-family:var(--ff-mono);font-size:13px;color:var(--signal);letter-spacing:.08em;margin-bottom:16px}
.nwn-page .fstep .fn .arw{color:var(--bone-faint)}
.nwn-page .fstep h3{font-family:var(--ff-disp);font-weight:600;font-size:19px;letter-spacing:-.01em;margin:0 0 8px}
.nwn-page .fstep p{color:var(--bone-dim);font-size:14px;line-height:1.5;margin:0}
.nwn-page .fstep .tag{display:inline-block;margin-top:14px;font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--bone-faint);border:1px solid var(--line-2);border-radius:5px;padding:4px 8px}

/* GUARANTEE */
.nwn-page .guar{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px}
.nwn-page .guar-item{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:12px;padding:22px 24px;background:var(--charbon)}
.nwn-page .guar-item .gi{width:44px;height:44px;flex:0 0 auto;border:1px solid var(--line-2);border-radius:11px;display:flex;align-items:center;justify-content:center;color:var(--signal);background:var(--charbon-2)}
.nwn-page .guar-item b{display:block;font-size:15px;font-weight:600}
.nwn-page .guar-item span{font-size:13.5px;color:var(--bone-dim)}

/* FAQ */
.nwn-page .faq{max-width:820px}
.nwn-page .faq details{border-bottom:1px solid var(--line)}
.nwn-page .faq summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-family:var(--ff-disp);font-weight:600;font-size:19px;letter-spacing:-.01em;color:var(--bone)}
.nwn-page .faq summary::-webkit-details-marker{display:none}
.nwn-page .faq summary .pl{color:var(--signal);font-family:var(--ff-mono);font-size:22px;transition:transform .25s;flex:0 0 auto}
.nwn-page .faq details[open] summary .pl{transform:rotate(45deg)}
.nwn-page .faq details p{margin:0 0 22px;color:var(--bone-dim);font-size:16px;max-width:640px}

/* PROTO */
.nwn-page .proto{position:relative;display:flex;flex-direction:column;max-width:860px}
.nwn-page .pstep{display:grid;grid-template-columns:88px 1fr;gap:28px;padding:34px 0;border-bottom:1px solid var(--line);position:relative}
.nwn-page .pstep:last-child{border-bottom:0}
.nwn-page .pstep .pn{font-family:var(--ff-mono);font-size:14px;color:var(--signal);letter-spacing:.06em;position:relative}
.nwn-page .pstep .pn::after{content:"";position:absolute;left:6px;top:26px;bottom:-34px;width:1px;background:linear-gradient(var(--signal),transparent);opacity:.4}
.nwn-page .pstep:last-child .pn::after{display:none}
.nwn-page .pstep h3{font-family:var(--ff-disp);font-weight:600;font-size:26px;letter-spacing:-.02em;margin:0 0 10px}
.nwn-page .pstep p{color:var(--bone-dim);font-size:16px;max-width:520px;margin:0}
.nwn-page .pstep .meta{margin-top:14px;font-family:var(--ff-mono);font-size:12px;letter-spacing:.06em;color:var(--bone-faint)}

/* SPEC */
.nwn-page .spec{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--charbon)}
.nwn-page .spec .row{display:grid;grid-template-columns:220px 1fr;gap:20px;padding:18px 26px;border-bottom:1px solid var(--line)}
.nwn-page .spec .row:last-child{border-bottom:0}
.nwn-page .spec .k{font-family:var(--ff-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--bone-faint)}
.nwn-page .spec .v{color:var(--bone);font-size:15.5px}
.nwn-page .spec .v b{color:var(--signal);font-weight:600}

/* MODULES */
.nwn-page .mods{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.nwn-page .mod{border:1px solid var(--line);border-radius:12px;padding:24px 22px;background:var(--charbon);transition:transform .22s,border-color .22s}
.nwn-page .mod:hover{transform:translateY(-3px);border-color:var(--line-2)}
.nwn-page .mod .mi{width:40px;height:40px;border:1px solid var(--line-2);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--signal);background:var(--charbon-2);margin-bottom:16px}
.nwn-page .mod h4{font-family:var(--ff-disp);font-weight:600;font-size:16px;margin:0 0 6px;letter-spacing:-.01em}
.nwn-page .mod p{color:var(--bone-dim);font-size:13.5px;margin:0;line-height:1.5}

/* VS */
.nwn-page .vs{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.nwn-page .vs-col{border:1px solid var(--line);border-radius:14px;padding:32px 30px;background:var(--charbon)}
.nwn-page .vs-col.win{border-color:var(--signal);box-shadow:0 0 0 1px var(--signal),0 30px 60px -34px var(--signal-glow);background:var(--charbon-2)}
.nwn-page .vs-col .h{font-family:var(--ff-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:20px}
.nwn-page .vs-col.old .h{color:var(--bone-faint)}.nwn-page .vs-col.win .h{color:var(--signal)}
.nwn-page .vs-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.nwn-page .vs-col li{display:flex;align-items:flex-start;gap:12px;font-size:15px;color:var(--bone)}
.nwn-page .vs-col.old li{color:var(--bone-dim)}
.nwn-page .vs-col li svg{flex:0 0 auto;margin-top:2px}
.nwn-page .vs-col.old li svg{color:var(--bone-faint)}.nwn-page .vs-col.win li svg{color:var(--signal)}

/* CTA BAND */
.nwn-page .cta{border:1px solid var(--line);border-radius:18px;background:radial-gradient(120% 160% at 0 0,var(--signal-glow),transparent 42%),var(--charbon);padding:56px;text-align:center}
.nwn-page .cta h2{font-family:var(--ff-disp);font-weight:700;font-size:clamp(28px,3.6vw,44px);letter-spacing:-.03em;line-height:1.02;max-width:600px;margin:0 auto 12px}
.nwn-page .cta p{color:var(--bone-dim);margin:0 auto 28px;max-width:440px}

/* PHONE */
.nwn-page .phwrap{display:flex;justify-content:center;position:relative}
.nwn-page .phglow{position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,var(--signal-glow),transparent 62%);top:50%;left:50%;transform:translate(-50%,-50%)}
.nwn-page .phone{position:relative;width:266px;border-radius:38px;background:linear-gradient(160deg,#242a31,#0d1116);padding:11px;border:1px solid #2c343d;box-shadow:0 40px 80px -30px rgba(0,0,0,.85)}
.nwn-page .phone .screen{background:var(--void);border-radius:29px;overflow:hidden;padding:26px 18px 20px;position:relative}
.nwn-page .phone .notch{position:absolute;top:12px;left:50%;transform:translateX(-50%);width:78px;height:20px;background:#000;border-radius:0 0 12px 12px;z-index:2}
.nwn-page .pf-av{width:66px;height:66px;border-radius:18px;margin:8px auto 12px;background:linear-gradient(135deg,var(--charbon-3),#0c0f13);border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;font-family:var(--ff-disp);font-weight:700;color:var(--signal);font-size:26px}
.nwn-page .pf-name{text-align:center;font-family:var(--ff-disp);font-weight:700;font-size:19px;letter-spacing:-.01em}
.nwn-page .pf-role{text-align:center;font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--bone-faint);margin-top:3px}
.nwn-page .pf-btn{margin:14px 0 8px;background:var(--signal);color:#04211f;font-weight:700;font-size:13px;text-align:center;padding:11px;border-radius:9px}
.nwn-page .pf-btn.ghost{background:transparent;color:var(--bone);border:1px solid var(--line-2);margin-top:0}
.nwn-page .pf-soc{display:flex;justify-content:center;gap:8px;margin:14px 0}
.nwn-page .pf-soc span{width:32px;height:32px;border-radius:9px;background:var(--charbon-2);border:1px solid var(--line)}
.nwn-page .pf-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:8px}
.nwn-page .pf-grid span{aspect-ratio:1;border-radius:7px;background:linear-gradient(135deg,var(--charbon-2),var(--charbon))}
.nwn-page .pf-grid span:nth-child(2){background:linear-gradient(135deg,rgba(14,165,160,.25),var(--charbon))}
.nwn-page .phtag{position:absolute;font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--signal);background:var(--charbon);border:1px solid var(--line);padding:7px 11px;border-radius:7px;box-shadow:0 10px 30px -10px #000}
.nwn-page .phtag.t1{top:24px;right:-10px}
.nwn-page .phtag.t2{bottom:60px;left:-24px}

.nwn-page .phero{position:relative;padding:72px 0 20px}
.nwn-page .phero .ey{display:inline-flex;align-items:center;gap:12px;margin-bottom:22px}
.nwn-page .phero .ey .bar{width:34px;height:1.5px;background:var(--signal)}
.nwn-page .phero .ey span{font-family:var(--ff-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--signal)}
.nwn-page .phero h1{font-family:var(--ff-disp);font-weight:700;letter-spacing:-.04em;line-height:1;font-size:clamp(40px,6.4vw,74px);max-width:800px}
.nwn-page .phero h1 em{font-style:normal;color:var(--signal)}
.nwn-page .phero p{color:var(--bone-dim);font-size:19px;max-width:520px;margin-top:22px}

/* REVEAL */
.nwn-page .rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.3,1)}
.nwn-page .rv.in{opacity:1;transform:none}

/* RESPONSIVE */
@media(max-width:960px){
 .nwn-page .hero-in{grid-template-columns:1fr;gap:8px}
 .nwn-page .stage{min-height:340px;order:-1;margin-bottom:8px}
 .nwn-page .steps{grid-template-columns:1fr}
 .nwn-page .step{border-right:0;border-bottom:1px solid var(--line)}
 .nwn-page .step:last-child{border-bottom:0}
 .nwn-page .duo,.nwn-page .ent-in,.nwn-page .tst,.nwn-page .vs{grid-template-columns:1fr}
 .nwn-page .plans{grid-template-columns:1fr;align-items:stretch}
 .nwn-page .plan.feat{transform:none}.nwn-page .plan.feat:hover{transform:translateY(-4px)}
 .nwn-page .news{grid-template-columns:1fr;padding:40px 28px}
 .nwn-page .news-form{min-width:0}
 .nwn-page .funnel{grid-template-columns:1fr 1fr}
 .nwn-page .guar{grid-template-columns:1fr}
 .nwn-page .mods{grid-template-columns:1fr 1fr}
 .nwn-page .hero-in.hiw{grid-template-columns:1fr;gap:40px}
 .nwn-page .phwrap{order:-1}
}
@media(max-width:560px){
 .nwn-page{font-size:16px}
 .nwn-page .sec{padding:76px 0}
 .nwn-page .hero p.lede,.nwn-page .phero p{font-size:17px}
 .nwn-page .funnel,.nwn-page .mods{grid-template-columns:1fr}
 .nwn-page .fstep{border-right:0;border-bottom:1px solid var(--line)}
 .nwn-page .fstep:last-child{border-bottom:0}
 .nwn-page .pstep{grid-template-columns:1fr;gap:8px}
 .nwn-page .pstep .pn::after{display:none}
 .nwn-page .spec .row{grid-template-columns:1fr;gap:6px}
 .nwn-page .cta{padding:40px 24px}
 .nwn-page .ent-list{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
 .nwn-page *{animation:none!important;transition:none!important}
 .nwn-page .rv{opacity:1;transform:none}
}

/* ===== vCard (carte de visite digitale) ===== */
.nwn-vc{max-width:440px;margin:0 auto;padding:0 20px 46px;text-align:center}
.nwn-vc-cover{height:120px;margin:0 -20px;background:radial-gradient(120% 220% at 50% -60%,var(--signal-glow),transparent 60%),var(--charbon);border-bottom:1px solid var(--line)}
.nwn-vc-photo{width:120px;height:120px;border-radius:50%;margin:-60px auto 16px;border:3px solid var(--void);background:var(--charbon-2);overflow:hidden;box-shadow:0 20px 44px -20px #000;display:flex;align-items:center;justify-content:center;font-family:var(--ff-disp);font-weight:700;font-size:40px;color:var(--signal);position:relative}
.nwn-vc-photo img{width:100%;height:100%;object-fit:cover}
.nwn-vc-name{font-family:var(--ff-disp);font-weight:700;font-size:28px;letter-spacing:-.02em;color:var(--bone)}
.nwn-vc-role{color:var(--bone-dim);font-size:15px;margin-top:4px}
.nwn-vc-role b{color:var(--bone);font-weight:600}
.nwn-vc-loc{font-family:var(--ff-mono);font-size:11.5px;letter-spacing:.1em;color:var(--bone-faint);margin-top:7px;text-transform:uppercase}
.nwn-vc-save{width:100%;justify-content:center;margin:22px 0 16px;padding:16px}
.nwn-vc-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px}
.nwn-vc-actions a{display:flex;flex-direction:column;align-items:center;gap:7px;padding:14px 6px;border:1px solid var(--line);border-radius:12px;background:var(--charbon);color:var(--bone);font-size:11px;text-decoration:none;transition:border-color .2s,transform .15s}
.nwn-vc-actions a:hover{border-color:var(--signal);transform:translateY(-2px)}
.nwn-vc-actions a svg{color:var(--signal)}
.nwn-vc-soc{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.nwn-vc-soc a{width:46px;height:46px;border-radius:12px;border:1px solid var(--line);background:var(--charbon);display:flex;align-items:center;justify-content:center;color:var(--bone-dim);font-family:var(--ff-mono);font-size:13px;font-weight:600;letter-spacing:.04em;text-decoration:none;transition:border-color .2s,color .2s,transform .15s}
.nwn-vc-soc a:hover{border-color:var(--signal);color:var(--signal);transform:translateY(-2px)}
.nwn-vc-bio{color:var(--bone-dim);font-size:15px;line-height:1.65;text-align:left;border-top:1px solid var(--line);padding-top:22px;margin-top:4px}
.nwn-vc-badge{margin-top:34px;font-family:var(--ff-mono);font-size:11px;letter-spacing:.08em;color:var(--bone-faint)}
.nwn-vc-badge a{color:var(--bone);text-decoration:none;font-weight:600}

/* ===== Hero video (remplace la carte CSS) ===== */
.nwn-page .hero-video{width:100%;max-width:560px;height:auto;border-radius:18px;display:block;position:relative;box-shadow:0 40px 90px -40px #000}
@media(max-width:960px){.nwn-page .hero-video{max-width:440px;margin:0 auto}}

/* ===== Lisibilité : aération des mots (moins serré) ===== */
.nwn-page .sec-title,.nwn-page .ent h2,.nwn-page .cta h2,.nwn-page .phero h1,.nwn-page .news h2{letter-spacing:-.01em;word-spacing:.06em}
.nwn-page .hero h1 .l1{letter-spacing:-.035em;word-spacing:.02em}
.nwn-page .hero h1 .l2{letter-spacing:-.005em;word-spacing:.08em}
.nwn-page .hero p.lede,.nwn-page .phero p,.nwn-page .sec-sub,.nwn-page .duo-card p,.nwn-page .step p,.nwn-page .plan .p-desc,.nwn-page .mod p,.nwn-page .pstep p,.nwn-page .tst-card blockquote,.nwn-page .faq details p,.nwn-page .spec .v{word-spacing:.04em}
.nwn-page .step h3,.nwn-page .duo-card h3,.nwn-page .pstep h3,.nwn-page .faq summary{letter-spacing:-.005em;word-spacing:.04em}

/* ===== Hero video v2 : plus grande ===== */
.nwn-page .hero-in{grid-template-columns:1fr 1.15fr}
.nwn-page .hero-video{max-width:700px}
@media(max-width:960px){.nwn-page .hero-in{grid-template-columns:1fr}.nwn-page .stage{order:-1}.nwn-page .hero-video{max-width:520px;margin:0 auto}}

/* ===== Hero video : cadre paysage (réf. ~592x511) ===== */
.nwn-page .hero-video{width:100%;max-width:660px;aspect-ratio:592/511;height:auto;object-fit:contain;object-position:center;background:#0B0E12;border-radius:16px}
@media(max-width:960px){.nwn-page .hero-video{max-width:560px;margin:0 auto}}
@media(max-width:560px){.nwn-page .hero-video{max-width:100%}}

/* ===== Hero video : retour au format précédent (ratio natif) ===== */
.nwn-page .hero-video{max-width:700px;aspect-ratio:auto;height:auto;object-fit:fill;background:transparent}
@media(max-width:960px){.nwn-page .hero-video{max-width:520px;margin:0 auto}}
@media(max-width:560px){.nwn-page .hero-video{max-width:100%}}

/* ===== Pages légales ===== */
.nwn-legal{max-width:780px;margin:0 auto;padding:64px 24px 96px}
.nwn-legal .lg-ey{display:inline-flex;align-items:center;gap:10px;font-family:var(--ff-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--signal);margin-bottom:16px}
.nwn-legal .lg-ey .dot{width:7px;height:7px;border-radius:1px;background:var(--signal);box-shadow:0 0 10px var(--signal)}
.nwn-legal h1{font-family:var(--ff-disp);font-weight:700;letter-spacing:-.02em;font-size:clamp(30px,4vw,46px);line-height:1.03;margin:0}
.nwn-legal .upd{font-family:var(--ff-mono);font-size:12px;color:var(--bone-faint);margin:14px 0 36px;letter-spacing:.04em}
.nwn-legal h2{font-family:var(--ff-disp);font-weight:700;font-size:21px;letter-spacing:-.01em;margin:38px 0 12px;color:var(--bone)}
.nwn-legal p,.nwn-legal li{color:var(--bone-dim);font-size:15.5px;line-height:1.7}
.nwn-legal p{margin:0 0 14px}
.nwn-legal ul{margin:0 0 14px;padding-left:20px}.nwn-legal li{margin-bottom:7px}
.nwn-legal a{color:var(--signal);text-decoration:none}.nwn-legal a:hover{text-decoration:underline}
.nwn-legal strong{color:var(--bone);font-weight:600}
.nwn-legal .lg-note{border:1px solid var(--line);border-left:3px solid var(--signal);background:var(--charbon);border-radius:0 10px 10px 0;padding:16px 20px;margin:20px 0;font-size:14px;color:var(--bone-dim)}

/* ===== Pages légales ===== */
.nwn-legal{max-width:780px;margin:0 auto;padding:64px 24px 96px}
.nwn-legal .lg-ey{display:inline-flex;align-items:center;gap:10px;font-family:var(--ff-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--signal);margin-bottom:16px}
.nwn-legal .lg-ey .dot{width:7px;height:7px;border-radius:1px;background:var(--signal);box-shadow:0 0 10px var(--signal)}
.nwn-legal h1{font-family:var(--ff-disp);font-weight:700;letter-spacing:-.02em;font-size:clamp(30px,4vw,46px);line-height:1.03;margin:0}
.nwn-legal .upd{font-family:var(--ff-mono);font-size:12px;color:var(--bone-faint);margin:14px 0 36px;letter-spacing:.04em}
.nwn-legal h2{font-family:var(--ff-disp);font-weight:700;font-size:21px;letter-spacing:-.01em;margin:38px 0 12px;color:var(--bone)}
.nwn-legal p,.nwn-legal li{color:var(--bone-dim);font-size:15.5px;line-height:1.7}
.nwn-legal p{margin:0 0 14px}
.nwn-legal ul{margin:0 0 14px;padding-left:20px}.nwn-legal li{margin-bottom:7px}
.nwn-legal a{color:var(--signal);text-decoration:none}.nwn-legal a:hover{text-decoration:underline}
.nwn-legal strong{color:var(--bone);font-weight:600}
.nwn-legal .lg-note{border:1px solid var(--line);border-left:3px solid var(--signal);background:var(--charbon);border-radius:0 10px 10px 0;padding:16px 20px;margin:20px 0;font-size:14px;color:var(--bone-dim)}

/* ===== Article / guide ===== */
.nwn-legal .lead{font-size:19px;color:var(--bone);line-height:1.6;margin:0 0 22px}
.nwn-legal .cta-box{border:1px solid var(--signal);background:radial-gradient(120% 160% at 100% 0,var(--signal-glow),transparent 50%),var(--charbon-2);border-radius:14px;padding:26px 28px;margin:34px 0}
.nwn-legal .cta-box h3{font-family:var(--ff-disp);font-weight:700;font-size:20px;letter-spacing:-.01em;margin:0 0 8px;color:var(--bone)}
.nwn-legal .cta-box p{margin:0 0 16px}
.nwn-legal .related{margin-top:38px;padding-top:24px;border-top:1px solid var(--line)}
.nwn-legal .related h2{margin-top:0}
.nwn-legal .related a{color:var(--signal)}

/* ========== Poppins sur tout le site ========== */
:root{--ff-disp:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;--ff-body:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;--ff-mono:"Poppins",system-ui,sans-serif}
.nwn-page,.nwn-page *,.nwn-chrome,.nwn-chrome *{font-family:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif}

/* ========== Bloc-titre (clair) ========== */
.nwn-titleblock{background:#ffffff;padding:84px 24px;text-align:center}
.nwn-titleblock .tb-title{font-weight:800;font-size:clamp(28px,4.4vw,44px);color:#1a1a1a;line-height:1.15;letter-spacing:-.01em;max-width:1000px;margin:0 auto}
.nwn-titleblock .tb-title .cy{color:#5BC8E8}
.nwn-titleblock .tb-sub{font-size:18px;color:#999999;font-weight:400;margin:20px auto 0;max-width:660px}

/* ========== Section "pourquoi" (clair, texte + téléphone/formulaire) ========== */
.nwn-why{background:#eef1f4;color:#1a1a1a;padding:76px 0}
.nwn-why .in{max-width:1160px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.nwn-why h2{font-weight:800;font-size:clamp(28px,3.6vw,40px);color:#0e1b3a;line-height:1.15;letter-spacing:-.01em}
.nwn-why p{color:#5a6472;font-size:17px;line-height:1.65;margin:20px 0 28px;max-width:470px}
.nwn-why .btn-cy{display:inline-flex;align-items:center;gap:9px;background:#5BC8E8;color:#fff;font-weight:700;font-size:16px;padding:15px 30px;border-radius:100px;box-shadow:0 16px 34px -14px rgba(91,200,232,.75);transition:transform .18s,filter .2s}
.nwn-why .btn-cy:hover{transform:translateY(-2px);filter:brightness(1.05)}
.nwn-why .visual{position:relative;display:flex;justify-content:center;align-items:center;min-height:420px}
.nwn-why .visual .badge-eco{position:absolute;top:6%;left:12%;width:44px;height:44px;border-radius:12px;background:#e6f7ec;display:flex;align-items:center;justify-content:center;color:#2ea86a;box-shadow:0 12px 26px -14px rgba(0,0,0,.25)}
.nwn-why .visual .badge-sec{position:absolute;top:8%;right:10%;width:44px;height:44px;border-radius:12px;background:#fff5e6;display:flex;align-items:center;justify-content:center;color:#e0a53c;box-shadow:0 12px 26px -14px rgba(0,0,0,.25)}

/* Téléphone + fiche (réutilisé) */
.nwn-pf{width:250px;background:#fff;border-radius:34px;border:8px solid #101a33;box-shadow:0 34px 66px -26px rgba(14,27,58,.5);padding:16px 14px 18px;position:relative}
.nwn-pf .notch{position:absolute;top:14px;left:50%;transform:translateX(-50%);width:74px;height:20px;background:#101a33;border-radius:0 0 12px 12px}
.nwn-pf .av{width:60px;height:60px;border-radius:50%;margin:22px auto 8px;background:linear-gradient(135deg,#5BC8E8,#0EA5A0)}
.nwn-pf .nm{text-align:center;font-weight:700;font-size:16px;color:#0e1b3a}
.nwn-pf .rl{text-align:center;font-size:11px;color:#9aa3b0;margin-bottom:12px}
.nwn-pf .fld{height:38px;border:1px solid #e4e8ee;border-radius:9px;margin:8px 4px;display:flex;align-items:center;padding:0 12px;color:#9aa3b0;font-size:12px}
.nwn-pf .send{height:40px;border-radius:9px;margin:12px 4px 2px;background:#5BC8E8;color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;gap:7px}

/* ========== 3 étapes (clair) ========== */
.nwn-steps3{background:#ffffff;color:#1a1a1a;padding:80px 0}
.nwn-steps3 .grid{max-width:1160px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.nwn-steps3 .st .ph{aspect-ratio:1.15/1;border-radius:22px;background:#eef1f4;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.nwn-steps3 .st .ph .mini{width:118px;background:#fff;border-radius:22px 22px 8px 8px;border:6px solid #101a33;border-bottom:0;box-shadow:0 20px 40px -20px rgba(14,27,58,.45);padding:12px 9px 0;margin-top:22px}
.nwn-steps3 .st .ph .mini .av{width:36px;height:36px;border-radius:50%;margin:6px auto 6px;background:linear-gradient(135deg,#5BC8E8,#0EA5A0)}
.nwn-steps3 .st .ph .mini .l{height:5px;border-radius:3px;background:#e4e8ee;margin:4px 10px}.nwn-steps3 .st .ph .mini .l.s{width:50%;margin:4px auto}
.nwn-steps3 .st .ph .mini .b{height:16px;border-radius:6px;background:#5BC8E8;margin:8px 6px 0}
.nwn-steps3 .st .ph .nfc{position:absolute;top:14px;right:16px;color:#0EA5A0}
.nwn-steps3 .st h3{font-weight:700;font-size:20px;color:#0e1b3a;margin:20px 0 8px}
.nwn-steps3 .st h3 span{color:#5BC8E8}
.nwn-steps3 .st p{color:#5a6472;font-size:15px;line-height:1.6;margin:0}
.nwn-steps3 .st p b{color:#0e1b3a}
@media(max-width:820px){.nwn-steps3 .grid{grid-template-columns:1fr}}

/* ========== Synchronisation (anim) ========== */
.nwn-sync{background:#f4f6f8;color:#1a1a1a;padding:78px 0;overflow:hidden}
.nwn-sync .head{text-align:center;max-width:640px;margin:0 auto 20px}
.nwn-sync .head h2{font-weight:800;font-size:clamp(26px,3.4vw,38px);color:#0e1b3a;letter-spacing:-.01em}
.nwn-sync .head h2 span{color:#5BC8E8}
.nwn-sync .head p{color:#5a6472;font-size:17px;margin:14px 0 0}
.nwn-sync .stage{position:relative;max-width:720px;height:480px;margin:20px auto 0}
.nwn-sync .stage .lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.nwn-sync .stage .lines path{fill:none;stroke:#bcd0d8;stroke-width:2;stroke-dasharray:6 7;stroke-linecap:round;opacity:0}
.nwn-sync .stage .phone{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2}
.nwn-sync .tool{position:absolute;width:74px;height:74px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;box-shadow:0 16px 34px -16px rgba(14,27,58,.4);opacity:0;z-index:3;background:#fff}
.nwn-sync .tool b{font-size:10.5px;font-weight:700;color:#0e1b3a}
.nwn-sync .tool .g{width:26px;height:26px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:13px}
.nwn-sync .t1{top:4%;left:16%}.nwn-sync .t2{top:2%;right:16%}.nwn-sync .t3{bottom:8%;left:9%}.nwn-sync .t4{bottom:6%;right:10%}
@keyframes nwnToolCycle{0%,100%{opacity:0;transform:scale(.85)}6%{opacity:1;transform:scale(1)}22%{opacity:1;transform:scale(1)}30%{opacity:0;transform:scale(.85)}}
@keyframes nwnLineCycle{0%,100%{opacity:0}6%{opacity:.9}22%{opacity:.9}30%{opacity:0}}
@keyframes nwnFlow{to{stroke-dashoffset:-26}}
.nwn-sync .tool,.nwn-sync .lines path{animation-duration:13s;animation-iteration-count:infinite;animation-timing-function:ease-in-out}
.nwn-sync .tool{animation-name:nwnToolCycle}
.nwn-sync .lines path{animation-name:nwnLineCycle,nwnFlow;animation-duration:13s,1s;animation-iteration-count:infinite,infinite;animation-timing-function:ease-in-out,linear}
.nwn-sync .t1,.nwn-sync .lines .p1{animation-delay:0s}
.nwn-sync .t2,.nwn-sync .lines .p2{animation-delay:3.25s}
.nwn-sync .lines .p2{animation-delay:3.25s,0s}
.nwn-sync .t3,.nwn-sync .lines .p3{animation-delay:6.5s}
.nwn-sync .lines .p3{animation-delay:6.5s,0s}
.nwn-sync .t4,.nwn-sync .lines .p4{animation-delay:9.75s}
.nwn-sync .lines .p4{animation-delay:9.75s,0s}
.nwn-sync .lines .p1{animation-delay:0s,0s}
@media(max-width:620px){.nwn-sync .stage{height:520px}.nwn-sync .tool{width:62px;height:62px}.nwn-sync .t1{left:2%}.nwn-sync .t2{right:2%}.nwn-sync .t3{left:0}.nwn-sync .t4{right:0}}
@media(prefers-reduced-motion:reduce){.nwn-sync .tool{opacity:1;animation:none}.nwn-sync .lines path{opacity:.7;animation:none}}

/* ========== Reskin SOMBRE des sections (cohérence 100%) ========== */
.nwn-titleblock{background:var(--charbon)}
.nwn-titleblock .tb-title{color:var(--bone)}
.nwn-titleblock .tb-title .cy{color:var(--signal)}
.nwn-titleblock .tb-sub{color:var(--bone-dim)}

.nwn-why{background:var(--void)}
.nwn-why h2{color:var(--bone)}
.nwn-why p{color:var(--bone-dim)}
.nwn-why .btn-cy{background:var(--signal);color:#04211f;box-shadow:0 16px 34px -14px var(--signal-glow)}
.nwn-why .visual .badge-eco{background:#10251d;color:#3ecf8e;box-shadow:0 12px 26px -14px rgba(0,0,0,.6)}
.nwn-why .visual .badge-sec{background:#122a28;color:var(--signal);box-shadow:0 12px 26px -14px rgba(0,0,0,.6)}

.nwn-pf{background:var(--charbon-2);border-color:#05090a;box-shadow:0 34px 66px -26px rgba(0,0,0,.75)}
.nwn-pf .notch{background:#05090a}
.nwn-pf .nm{color:var(--bone)}
.nwn-pf .rl{color:var(--bone-faint)}
.nwn-pf .fld{border-color:var(--line);color:var(--bone-faint)}
.nwn-pf .send{background:var(--signal);color:#04211f}

.nwn-steps3{background:var(--charbon)}
.nwn-steps3 .st .ph{background:var(--charbon-2)}
.nwn-steps3 .st .ph .mini{background:var(--void);border-color:#05090a}
.nwn-steps3 .st .ph .mini .l{background:var(--line-2)}
.nwn-steps3 .st .ph .mini .b{background:var(--signal)}
.nwn-steps3 .st .ph .nfc{color:var(--signal)}
.nwn-steps3 .st h3{color:var(--bone)}
.nwn-steps3 .st h3 span{color:var(--signal)}
.nwn-steps3 .st p{color:var(--bone-dim)}
.nwn-steps3 .st p b{color:var(--bone)}

.nwn-sync{background:var(--void)}
.nwn-sync .head h2{color:var(--bone)}
.nwn-sync .head h2 span{color:var(--signal)}
.nwn-sync .head p{color:var(--bone-dim)}
.nwn-sync .stage .lines path{stroke:#2c3f3e}
.nwn-sync .tool{background:var(--charbon-2);box-shadow:0 16px 34px -16px rgba(0,0,0,.75)}
.nwn-sync .tool b{color:var(--bone)}

/* ----- 5 outils : positions + timing ----- */
.nwn-sync .t1{top:4%;left:12%;right:auto;bottom:auto}
.nwn-sync .t2{top:2%;right:12%;left:auto;bottom:auto}
.nwn-sync .t3{top:40%;left:1%;right:auto;bottom:auto}
.nwn-sync .t4{top:40%;right:1%;left:auto;bottom:auto}
.nwn-sync .t5{bottom:2%;left:calc(50% - 37px);right:auto;top:auto}
.nwn-sync .tool,.nwn-sync .lines path{animation-duration:15s}
.nwn-sync .lines path{animation-name:nwnLineCycle,nwnFlow;animation-duration:15s,1s}
.nwn-sync .t1{animation-delay:0s}.nwn-sync .lines .p1{animation-delay:0s,0s}
.nwn-sync .t2{animation-delay:3s}.nwn-sync .lines .p2{animation-delay:3s,0s}
.nwn-sync .t3{animation-delay:6s}.nwn-sync .lines .p3{animation-delay:6s,0s}
.nwn-sync .t4{animation-delay:9s}.nwn-sync .lines .p4{animation-delay:9s,0s}
.nwn-sync .t5{animation-delay:12s}.nwn-sync .lines .p5{animation-delay:12s,0s}
@media(max-width:620px){.nwn-sync .t1{left:1%}.nwn-sync .t2{right:1%}.nwn-sync .t3{top:38%}.nwn-sync .t4{top:38%}}

/* ========== Maquettes téléphone détaillées (sombre) ========== */
.nwn-mock{background:var(--charbon-2);border:8px solid #05090a;border-radius:32px;box-shadow:0 34px 66px -26px rgba(0,0,0,.75);overflow:hidden;position:relative}
.nwn-mock .notch{position:absolute;top:9px;left:50%;transform:translateX(-50%);width:66px;height:18px;background:#05090a;border-radius:0 0 11px 11px;z-index:4}
.nwn-mock.mock-sm{width:196px}

/* Fiche vCard (aperçu carte finale) */
.vcp{background:var(--void);text-align:center;padding-bottom:16px}
.vcp .cover{height:56px;background:radial-gradient(130% 190% at 50% -50%,var(--signal-glow),transparent 60%),var(--charbon)}
.vcp .av{width:66px;height:66px;border-radius:50%;margin:-33px auto 8px;border:3px solid var(--void);background:var(--charbon-2);display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--signal);font-size:22px}
.vcp .nm{font-weight:700;font-size:17px;color:var(--bone)}
.vcp .rl{font-size:11.5px;color:var(--bone-dim);margin-top:3px}
.vcp .rl b{color:var(--bone)}
.vcp .loc{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--bone-faint);margin-top:6px}
.vcp .save{margin:14px 14px 12px;background:var(--signal);color:#04211f;font-weight:700;font-size:12.5px;padding:12px;border-radius:10px}
.vcp .acts{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:0 14px}
.vcp .acts a{border:1px solid var(--line);border-radius:10px;padding:9px 2px;display:flex;flex-direction:column;align-items:center;gap:5px;font-size:8.5px;color:var(--bone-dim);text-decoration:none}
.vcp .acts a svg{color:var(--signal)}
.vcp .soc{display:flex;justify-content:center;gap:7px;margin-top:12px}
.vcp .soc span{width:32px;height:32px;border-radius:9px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:var(--bone-faint)}

/* Ecrans des 3 étapes */
.st-scr{background:var(--void);height:200px;padding:26px 11px 12px;display:flex;flex-direction:column}
.st-nfc{justify-content:flex-start}
.st-nfc .pill{background:var(--charbon-2);border:1px solid var(--line);border-radius:13px;padding:10px 11px;display:flex;align-items:center;gap:9px;box-shadow:0 10px 22px -12px #000}
.st-nfc .pill .ic{width:28px;height:28px;border-radius:8px;background:#0f2a28;color:var(--signal);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.st-nfc .pill .t b{font-size:10.5px;color:var(--bone);display:block;line-height:1.25}
.st-nfc .pill .t span{font-size:9px;color:var(--bone-dim)}
.st-nfc .card{margin-top:auto;height:60px;border-radius:10px;background:linear-gradient(150deg,#1a2229,#0c1114);border:1px solid var(--line);position:relative}
.st-nfc .card::after{content:"NextWave";position:absolute;left:10px;bottom:8px;font-size:9px;font-weight:800;color:var(--bone)}
.st-prof{text-align:center;justify-content:flex-start}
.st-prof .av{width:46px;height:46px;border-radius:50%;margin:2px auto 7px;background:linear-gradient(135deg,var(--signal),var(--signal-deep));display:flex;align-items:center;justify-content:center;color:#04211f;font-weight:800;font-size:14px}
.st-prof .nm{font-size:12px;font-weight:700;color:var(--bone)}
.st-prof .rl{font-size:9px;color:var(--bone-dim);margin-bottom:9px}
.st-prof .save{background:var(--signal);color:#04211f;font-weight:700;font-size:9.5px;padding:8px;border-radius:8px;margin:0 4px 9px}
.st-prof .row{display:flex;justify-content:center;gap:6px}
.st-prof .row span{width:27px;height:27px;border-radius:8px;border:1px solid var(--line);color:var(--signal);display:flex;align-items:center;justify-content:center}
.st-xch{justify-content:flex-start}
.st-xch .ttl{font-size:10.5px;font-weight:700;color:var(--bone);margin:0 2px 10px;display:flex;justify-content:space-between;align-items:center}
.st-xch .ttl .x{color:var(--bone-faint)}
.st-xch .fld{height:27px;border:1px solid var(--line);border-radius:7px;margin-bottom:7px;padding:0 9px;display:flex;align-items:center;font-size:9px;color:var(--bone-faint)}
.st-xch .send{height:29px;border-radius:7px;background:var(--signal);color:#04211f;font-weight:700;font-size:9.5px;display:flex;align-items:center;justify-content:center;gap:5px;margin-top:2px}

/* ===== Poppins forcé sur widgets Elementor natifs + formulaires (site complet) ===== */
.elementor-widget-heading .elementor-heading-title,.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-widget-text-editor a,.elementor-widget-button .elementor-button,.elementor-widget-icon-list .elementor-icon-list-text,.elementor-accordion .elementor-tab-title,.elementor-accordion .elementor-tab-content,.wpcf7 input,.wpcf7 textarea,.wpcf7 select,.wpcf7 .wpcf7-submit,.wpcf7 label{font-family:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif !important}

/* ===== 2 étapes avec vraies photos ===== */
.nwn-steps2{background:var(--charbon);padding:84px 0}
.nwn-steps2 .grid{max-width:980px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1fr 1fr;gap:40px}
.nwn-steps2 .st .img{border-radius:22px;overflow:hidden;background:#eef1f4;box-shadow:0 26px 54px -26px rgba(0,0,0,.6);aspect-ratio:1/1.06}
.nwn-steps2 .st .img img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block}
.nwn-steps2 .st h3{font-weight:700;font-size:22px;color:var(--bone);margin:22px 0 8px}
.nwn-steps2 .st h3 span{color:var(--signal)}
.nwn-steps2 .st p{color:var(--bone-dim);font-size:16px;line-height:1.6;max-width:430px}
.nwn-steps2 .st p b{color:var(--bone)}
@media(max-width:720px){.nwn-steps2 .grid{grid-template-columns:1fr;gap:30px}}

/* image profil au centre de la section sync */
.nwn-sync .nwn-sync-shot{overflow:hidden}
.nwn-sync .nwn-sync-shot img{display:block;width:100%;height:252px;object-fit:cover;object-position:50% 5%}

/* Section sync : téléphone plus haut, profil complet visible */
.nwn-sync .nwn-sync-shot{width:262px !important}
.nwn-sync .nwn-sync-shot img{height:auto;aspect-ratio:.86;object-fit:cover;object-position:50% 0}


/* ===== Dashboard client (analytics) ===== */
.nwn-dash{max-width:940px;margin:0 auto;padding:64px 24px 96px}.nwn-dash .dh{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:6px}.nwn-dash h1{font-family:var(--ff-disp);font-weight:700;font-size:clamp(28px,3.6vw,40px);color:var(--bone);letter-spacing:-.02em;line-height:1.05}.nwn-dash .who{font-family:var(--ff-mono);font-size:13px;color:var(--signal);text-transform:uppercase;letter-spacing:.08em}.nwn-dash .sub{color:var(--bone-dim);font-size:15px;margin:0 0 34px}.nwn-dash .tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:26px}.nwn-dash .tile{background:var(--charbon);border:1px solid var(--line);border-radius:14px;padding:22px 20px}.nwn-dash .tile .n{font-family:var(--ff-disp);font-weight:700;font-size:36px;color:var(--bone);letter-spacing:-.02em;line-height:1}.nwn-dash .tile .l{font-size:11px;color:var(--bone-faint);text-transform:uppercase;letter-spacing:.07em;margin-top:8px}.nwn-dash .tile.acc{border-color:var(--signal-deep);background:linear-gradient(180deg,rgba(14,165,160,.08),var(--charbon))}.nwn-dash .tile.acc .n{color:var(--signal-bright)}.nwn-dash .panel{background:var(--charbon);border:1px solid var(--line);border-radius:16px;padding:26px 26px 28px;margin-bottom:18px}.nwn-dash .panel h2{font-size:13px;font-weight:600;color:var(--bone-dim);text-transform:uppercase;letter-spacing:.06em;margin:0 0 22px}.nwn-dash .chart{display:flex;align-items:flex-end;gap:10px;height:176px}.nwn-dash .chart .bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;height:100%}.nwn-dash .chart .bar .b{width:100%;max-width:44px;background:linear-gradient(180deg,var(--signal-bright),var(--signal-deep));border-radius:6px 6px 0 0;min-height:4px}.nwn-dash .chart .bar .v{font-family:var(--ff-mono);font-size:12px;color:var(--bone)}.nwn-dash .chart .bar .d{font-family:var(--ff-mono);font-size:10px;color:var(--bone-faint)}.nwn-dash .links .row{display:flex;align-items:center;gap:14px;margin-bottom:13px}.nwn-dash .links .row:last-child{margin-bottom:0}.nwn-dash .links .lab{width:150px;font-size:14px;color:var(--bone)}.nwn-dash .links .track{flex:1;height:9px;background:var(--charbon-3);border-radius:6px;overflow:hidden}.nwn-dash .links .fill{display:block;height:100%;background:linear-gradient(90deg,var(--signal-deep),var(--signal-bright));border-radius:6px}.nwn-dash .links .c{width:40px;text-align:right;font-family:var(--ff-mono);font-size:13px;color:var(--bone-dim)}.nwn-dash .empty{color:var(--bone-faint);font-size:14px}.nwn-dash .topbar{display:flex;justify-content:flex-end;margin-bottom:10px}.nwn-dash .logout{font-size:13px;color:var(--bone-dim);text-decoration:none;border:1px solid var(--line);border-radius:8px;padding:7px 14px;transition:.2s}.nwn-dash .logout:hover{color:var(--bone);border-color:var(--line-2)}.nwn-login{max-width:404px;margin:0 auto;padding:72px 24px 120px}.nwn-login .box{background:var(--charbon);border:1px solid var(--line);border-radius:18px;padding:38px 34px}.nwn-login h1{font-family:var(--ff-disp);font-weight:700;font-size:26px;color:var(--bone);margin:0 0 6px}.nwn-login p.int{color:var(--bone-dim);font-size:14px;margin:0 0 26px}.nwn-login label{display:block;font-size:12px;color:var(--bone-dim);text-transform:uppercase;letter-spacing:.06em;margin:0 0 7px}.nwn-login .fld{margin-bottom:18px}.nwn-login input{width:100%;background:var(--void);border:1px solid var(--line-2);border-radius:10px;padding:13px 14px;color:var(--bone);font-size:15px;font-family:var(--ff-body);box-sizing:border-box}.nwn-login input:focus{outline:none;border-color:var(--signal);box-shadow:0 0 0 3px var(--signal-glow)}.nwn-login button{width:100%;margin-top:6px;background:var(--signal);color:#04201f;border:none;border-radius:10px;padding:14px;font-size:15px;font-weight:700;cursor:pointer;font-family:var(--ff-body);transition:.2s}.nwn-login button:hover{background:var(--signal-bright)}.nwn-login .err{background:rgba(220,80,80,.1);border:1px solid rgba(220,80,80,.35);color:#f0a5a5;font-size:13px;border-radius:10px;padding:11px 14px;margin-bottom:20px}.nwn-login .note{color:var(--bone-faint);font-size:12px;text-align:center;margin-top:20px}@media(max-width:640px){.nwn-dash .tiles{grid-template-columns:1fr 1fr}.nwn-dash .links .lab{width:110px}}

/* ===== Mobile fixes accueil ===== */
@media(max-width:760px){.nwn-why .in{grid-template-columns:1fr;gap:30px}.nwn-why .visual{min-height:auto;margin-top:2px}.nwn-why .visual .nwn-mock{width:240px !important}.nwn-why p{max-width:none}.nwn-page .plans{grid-template-columns:1fr;gap:18px}.nwn-page .ent-in{grid-template-columns:1fr;gap:26px}.nwn-page .ent-list{grid-template-columns:1fr}.nwn-page .tst{grid-template-columns:1fr;gap:16px}.nwn-page .duo{grid-template-columns:1fr}}
@media(max-width:760px){.nwn-herox-scrim{background:linear-gradient(180deg,rgba(8,9,11,.64),rgba(8,9,11,.5) 46%,rgba(8,9,11,.86))}.nwn-herox-in{padding:96px 18px 66px}.nwn-herox-sub{font-size:16px;line-height:1.55}}

.nwn-cmd-brand{margin:0 0 26px}
.nwn-cmd-brand .nwn-logo-full{height:58px;width:auto;display:block}
@media(max-width:760px){.nwn-cmd-brand .nwn-logo-full{height:50px}}

.nwn-vc-soc a svg{width:22px;height:22px;display:block}

.nwn-page .nfc-explain{max-width:780px;margin:0 auto 40px}
.nwn-page .nfc-explain p{color:var(--bone-dim);font-size:17px;line-height:1.72;margin:0 0 16px}
.nwn-page .nfc-explain b{color:var(--bone)}
