/* Planifast, vitrine. Feuille commune à toutes les pages (FR et EN), générées par build/build.mjs */
@font-face{font-family:'Inter';font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/inter-latin.woff2) format('woff2')}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --b:#d97706;--b6:#b45309;--b7:#92400e;--b1:#fef3c7;--b0:#fffbeb;--or:#ea6a0a;
  --ink:#0f172a;--s7:#334155;--s6:#475569;--s5:#64748b;--s4:#94a3b8;--s3:#cbd5e1;--s2:#e2e8f0;--s1:#f1f5f9;--s0:#f8fafc;
  --em:#059669;--em0:#ecfdf5;
  --font:'Inter',-apple-system,'Segoe UI',Roboto,sans-serif;--logo:Georgia,'Times New Roman',serif;
  --r:16px;--shadow:0 30px 60px -28px rgba(217,119,6,.35),0 12px 30px -16px rgba(15,23,42,.2);
}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font);background:#fff;color:var(--ink);line-height:1.6;font-size:16px;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
:focus-visible{outline:2px solid var(--b);outline-offset:2px;border-radius:4px}
.w{max-width:1160px;margin:0 auto;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px))}
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 12px;border-radius:8px;z-index:200}.skip:focus{left:8px}
.lg{font-family:var(--logo);font-size:1.4rem;letter-spacing:.02em;color:var(--ink);white-space:nowrap}.lg em{color:var(--or);font-style:italic}

/* boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;font:inherit;font-weight:600;font-size:.94rem;border-radius:11px;padding:.72rem 1.3rem;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:background .15s,transform .12s,box-shadow .2s}
.btn.p{background:var(--b);color:#fff;box-shadow:0 6px 16px -8px rgba(15,23,42,.4)}.btn.p:hover{background:var(--b6);transform:translateY(-1px)}
.btn.g{background:#fff;color:var(--ink);border-color:var(--s2)}.btn.g:hover{border-color:var(--s3);background:var(--s0)}
.btn.d{background:#fff;color:var(--ink)}.btn.d:hover{background:var(--b1)}
.btn.sm{padding:.5rem .95rem;font-size:.86rem;border-radius:9px}
.btn.lgb{padding:.9rem 1.6rem;font-size:1rem}

/* navigation */
.nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--s1)}
.nav-in{display:flex;align-items:center;height:66px;gap:2rem}
.nl{display:flex;align-items:center;gap:1.6rem;font-size:.92rem;font-weight:500;color:var(--s6)}
.nl>a:hover,.nl .dd>button:hover{color:var(--ink)}
.nl a.on,.nl .dd.on>button{color:var(--ink)}
.dd{position:relative}
.dd>button{font:inherit;background:none;border:0;color:inherit;cursor:pointer;display:flex;align-items:center;gap:.3rem;padding:.4rem 0}
.dd>button svg{transition:transform .2s}.dd.open>button svg{transform:rotate(180deg)}
.nr{margin-left:auto;display:flex;align-items:center;gap:1rem}
.lang{display:flex;gap:2px;background:var(--s1);border-radius:8px;padding:3px;font-size:.78rem;font-weight:600}
.lang a{color:var(--s5);padding:.22rem .55rem;border-radius:6px}
.lang a[aria-current]{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(15,23,42,.1)}
.burger{display:none;background:none;border:0;cursor:pointer;padding:8px;margin-right:-8px}
.burger span{display:block;width:22px;height:2px;background:var(--s6);border-radius:2px;margin:4px 0;transition:transform .25s,opacity .2s}
.nav.mopen .burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}.nav.mopen .burger span:nth-child(2){opacity:0}.nav.mopen .burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
/* mega-menu */
.mega{position:absolute;left:0;right:0;top:66px;background:#fff;border-bottom:1px solid var(--s2);box-shadow:0 30px 50px -30px rgba(15,23,42,.3)}
.mega .w{display:grid;grid-template-columns:repeat(3,1fr) 280px;gap:1rem 2rem;padding-top:1.6rem;padding-bottom:1.8rem}
.mega.small .w{grid-template-columns:repeat(3,1fr);max-width:900px}
.mg h6{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:var(--s4);margin:0 0 .5rem .55rem;font-weight:700}
.mi{display:flex;gap:.7rem;padding:.55rem;border-radius:11px}.mi:hover{background:var(--s0)}
.mi .ic{width:34px;height:34px;border-radius:9px;background:var(--b0);color:var(--b7);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.mi b{display:block;font-size:.9rem;color:var(--ink)}.mi small{display:block;font-size:.8rem;color:var(--s5);line-height:1.35}
.mfeat{background:var(--ink);color:#fff;border-radius:16px;padding:1.1rem 1.2rem;display:flex;flex-direction:column;gap:.4rem;align-items:flex-start}
.mfeat small{color:#fcd34d;font-weight:700;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
.mfeat p{font-size:.84rem;color:#cbd5e1;margin-bottom:.4rem}
.mall{grid-column:1/-1;border-top:1px solid var(--s1);padding-top:.9rem;font-size:.86rem;font-weight:600;color:var(--b6)}
/* menu mobile */
.mmenu{display:none}
.mmenu .w{padding-top:.6rem;padding-bottom:1.2rem;display:flex;flex-direction:column}
.mmenu details{border-bottom:1px solid var(--s1)}
.mmenu summary,.mmenu>.w>a{display:flex;justify-content:space-between;align-items:center;padding:.85rem 0;font-weight:600;color:var(--s7);cursor:pointer;list-style:none;border-bottom:1px solid var(--s1)}
.mmenu details summary{border-bottom:0}
.mmenu summary::-webkit-details-marker{display:none}
.mmenu summary::after{content:"+";color:var(--b6);font-size:1.2rem}.mmenu details[open] summary::after{content:"−"}
.mmenu details a{display:block;padding:.5rem 0 .5rem .8rem;color:var(--s6);font-size:.95rem}
.mmenu .lang{align-self:flex-start;margin-top:1rem}
.mbar{display:none}

/* hero */
.hero{position:relative;padding:4.2rem 0 3.6rem;background:radial-gradient(760px 460px at 88% -5%,rgba(245,158,11,.17),transparent 70%)}
.hg{display:grid;grid-template-columns:.92fr 1.18fr;gap:3rem;align-items:center}
.hg>*{min-width:0}
.eyb{display:inline-flex;gap:.5rem;align-items:center;font-size:.8rem;font-weight:600;color:var(--b7);background:var(--b0);border:1px solid var(--b1);padding:.35rem .85rem;border-radius:99px}
.crumb{font-size:.84rem;color:var(--s5);margin-bottom:.9rem}.crumb a:hover{color:var(--ink)}.crumb b{color:var(--ink);font-weight:600}
h1.h{font-size:clamp(2.1rem,4.6vw,3.35rem);line-height:1.08;letter-spacing:-.028em;font-weight:800;margin:1.1rem 0 1rem;text-wrap:balance}
.sub{font-size:clamp(1.02rem,1.5vw,1.15rem);color:var(--s6);max-width:560px;margin-bottom:1.7rem}
.cta{display:flex;gap:.7rem;flex-wrap:wrap}
.stores{display:flex;gap:.55rem;align-items:center;margin-top:1.4rem;flex-wrap:wrap;font-size:.84rem;color:var(--s5)}
.store-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--ink);color:#fff;padding:6px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.08)}
.store-badge span{display:flex;flex-direction:column;line-height:1.1}.store-badge small{font-size:.58rem;opacity:.8}.store-badge strong{font-size:.88rem}
.store-badge:hover{transform:translateY(-1px)}

/* bandeau de faits */
.facts{border-top:1px solid var(--s1);border-bottom:1px solid var(--s1);background:var(--s0)}
.facts .w{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;padding-top:1.1rem;padding-bottom:1.1rem}
.fact{font-size:.84rem;color:var(--s6);display:flex;gap:.6rem;align-items:flex-start}
.fact b{display:block;color:var(--ink);font-size:.88rem}
.fact .d{width:8px;height:8px;border-radius:50%;background:var(--b);margin-top:.45rem;flex-shrink:0}

/* sections */
section.s{padding:4.5rem 0}
.bg0{background:var(--s0)}
.kick{font-size:.76rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--b6)}
h2.h2{font-size:clamp(1.6rem,3.2vw,2.15rem);line-height:1.15;letter-spacing:-.022em;margin:.5rem 0 .7rem;text-wrap:balance}
.intro{color:var(--s6);max-width:640px;margin-bottom:2rem;font-size:1.03rem}
.center{text-align:center}.center .intro{margin-left:auto;margin-right:auto}

/* modules */
.mods{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.mod{border:1px solid var(--s2);border-radius:var(--r);padding:1.15rem;background:#fff;display:flex;flex-direction:column;gap:.45rem;position:relative;transition:border-color .15s,box-shadow .2s}
.mod:hover{border-color:var(--b);box-shadow:0 12px 28px -18px rgba(217,119,6,.55)}
.mod .ic{width:38px;height:38px;border-radius:10px;background:var(--b0);color:var(--b7);display:flex;align-items:center;justify-content:center}
.mod b{font-size:1rem}.mod p{font-size:.88rem;color:var(--s6)}
.mod .more{margin-top:auto;font-size:.84rem;font-weight:600;color:var(--b6);padding-top:.4rem}
.mod.hot{border-color:var(--b);background:linear-gradient(180deg,var(--b0),#fff 65%)}
.newb{position:absolute;top:.9rem;right:.9rem;font-size:.68rem;font-weight:700;background:var(--b);color:#fff;padding:.12rem .5rem;border-radius:99px}
.socle{margin-top:1rem;border-radius:var(--r);background:var(--ink);color:#e2e8f0;padding:1.05rem 1.4rem;display:flex;gap:.6rem 1.5rem;flex-wrap:wrap;align-items:center;font-size:.88rem}
.socle b{color:#fff}.socle span{display:flex;align-items:center;gap:.45rem}.socle span::before{content:"";width:5px;height:5px;border-radius:50%;background:#f59e0b}

/* profils */
.ptabs{display:inline-flex;background:var(--s1);border-radius:11px;padding:4px;margin-bottom:1.6rem;flex-wrap:wrap}
.ptabs button{font:inherit;font-size:.9rem;font-weight:600;border:0;background:none;padding:.5rem 1.1rem;border-radius:8px;color:var(--s6);cursor:pointer}
.ptabs button[aria-pressed="true"]{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(15,23,42,.12)}
.ppane[hidden]{display:none}
.prow{display:grid;grid-template-columns:.85fr 1.15fr;gap:3rem;align-items:center}
.prow>*{min-width:0}
.chk{list-style:none;display:grid;gap:.85rem}
.chk li{display:grid;grid-template-columns:24px 1fr;gap:.6rem;color:var(--s7);font-size:.97rem}
.chk li::before{content:"✓";width:22px;height:22px;border-radius:50%;background:var(--em0);color:var(--em);font-size:.75rem;font-weight:800;display:flex;align-items:center;justify-content:center;margin-top:.15rem}
.chk b{color:var(--ink)}

/* encart sombre */
.spot{background:var(--ink);color:#fff;border-radius:24px;padding:2.4rem;display:grid;grid-template-columns:1fr 1.15fr;gap:2.4rem;align-items:center}
.spot>*{min-width:0}
.spot .kick{color:#fcd34d}.spot h2.h2{color:#fff}.spot .intro{color:#cbd5e1;margin-bottom:1.2rem}
.tl{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-bottom:1.4rem}
.tl div{border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:.75rem .85rem;font-size:.82rem;color:#cbd5e1}
.tl b{display:block;color:#fff;font-size:.88rem;margin-bottom:.1rem}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.tl .j{font-size:.72rem;color:#fcd34d;font-weight:700}

/* luxembourg */
.lu{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.lu div{border-top:2px solid var(--b);padding-top:.9rem;font-size:.92rem;color:var(--s6)}
.lu b{display:block;color:var(--ink);font-size:1rem;margin-bottom:.25rem}
.ref{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;color:var(--b7);background:var(--b0);padding:.05rem .35rem;border-radius:4px;white-space:nowrap}

/* tarifs */
.price{display:grid;grid-template-columns:1fr 1fr;gap:2.2rem;align-items:center;border:1px solid var(--s2);border-radius:24px;padding:2rem;background:#fff}
.price>*{min-width:0}
.big{font-size:clamp(2.2rem,5vw,3rem);font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1.1}
.big small{font-size:1rem;color:var(--s5);font-weight:500;letter-spacing:0}
.sim{background:var(--s0);border-radius:var(--r);padding:1.3rem}
.sim label,.sim .lbl{font-size:.84rem;font-weight:600;color:var(--s6);display:block;margin-bottom:.4rem}
.sim input[type=range]{width:100%;accent-color:#d97706}
.nrow{display:flex;gap:.6rem;align-items:center}
.nrow input[type=number]{width:90px;font:inherit;font-size:.95rem;padding:.35rem .5rem;border:1px solid var(--s2);border-radius:8px;background:#fff}
.chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:.4rem 0 1rem}
.chips button{font:inherit;font-size:.84rem;border:1px solid var(--s2);background:#fff;border-radius:99px;padding:.3rem .8rem;cursor:pointer;color:var(--s7)}
.chips button[aria-pressed="true"]{background:var(--b);border-color:var(--b);color:#fff}
.tot{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;border-top:1px solid var(--s2);padding-top:.8rem;font-variant-numeric:tabular-nums}
.tot b{font-size:1.4rem}.tot small{color:var(--s5);font-size:.8rem}
.ptable{width:100%;border-collapse:collapse;font-size:.95rem}
.ptable th,.ptable td{padding:.85rem 1rem;border-bottom:1px solid var(--s1);text-align:left}
.ptable th{font-size:.72rem;letter-spacing:.07em;text-transform:uppercase;color:var(--s4)}
.ptable td.n{font-weight:700;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.ptable th.n{text-align:right}
.tbox{border:1px solid var(--s2);border-radius:var(--r);overflow-x:auto;background:#fff}
.incl{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem 1.6rem}

/* faq */
.faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:2.5rem}
.faq>*{min-width:0}
details.q{border-bottom:1px solid var(--s2);padding:1rem 0}
details.q summary{font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem}
details.q summary::-webkit-details-marker{display:none}
details.q summary::after{content:"+";color:var(--b6);font-weight:700;font-size:1.15rem;line-height:1.2}
details.q[open] summary::after{content:"−"}
details.q p{color:var(--s6);font-size:.95rem;margin-top:.55rem}

/* appel final */
.final{text-align:center;padding:4.5rem 0;background:radial-gradient(560px 260px at 50% 100%,rgba(245,158,11,.2),transparent 70%)}
.final .cta{justify-content:center}
.final .intro{margin:0 auto 1.6rem}

/* pages module */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.step{border:1px solid var(--s2);border-radius:var(--r);padding:1.25rem;background:#fff}
.tagj{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;font-weight:700;color:var(--b7);background:var(--b0);border:1px solid var(--b1);border-radius:6px;padding:.05rem .45rem}
.step h3,.step h4{font-size:1.05rem;margin:.65rem 0 .5rem}
.step ul{padding-left:1.1rem;font-size:.9rem;color:var(--s6)}.step li{margin:.3rem 0}
.row{display:grid;grid-template-columns:1fr 1.15fr;gap:3rem;align-items:center;padding:2.2rem 0}
.row>*{min-width:0}
.row.rev>.txt{order:2}
.row h3{font-size:clamp(1.3rem,2.4vw,1.6rem);letter-spacing:-.016em;margin:.4rem 0 .7rem;line-height:1.22;text-wrap:balance}
.row p{color:var(--s6);margin-bottom:1.1rem}
.law{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
.law div{background:#fff;border:1px solid var(--s2);border-radius:14px;padding:1rem;font-size:.88rem;color:var(--s6)}
.law b{display:block;color:var(--ink);margin:.45rem 0 .15rem;font-size:.94rem}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.cards2{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.box{border:1px solid var(--s2);border-radius:var(--r);padding:1.3rem;background:#fff;min-width:0}
.box h3{font-size:1.05rem;margin-bottom:.5rem}.box p{color:var(--s6);font-size:.93rem}
.box ul{padding-left:1.1rem;color:var(--s6);font-size:.92rem}.box li{margin:.3rem 0}
.box .kick{display:block;margin-bottom:.3rem}
.combo{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.8rem}
.combo span{font-size:.78rem;font-weight:600;background:var(--b0);color:var(--b7);border:1px solid var(--b1);padding:.1rem .55rem;border-radius:99px}
.note{font-size:.84rem;color:var(--s5)}
.shot{border-radius:14px;overflow:hidden;border:1px solid var(--s2);box-shadow:var(--shadow);background:#fff}
.shot img{width:100%;height:auto}

/* maquettes d'écran : fenêtre avec barre latérale sombre et logo Pf */
.win{color:var(--ink);text-align:left;border:1px solid var(--s2);border-radius:14px;overflow:hidden;background:#fff;box-shadow:var(--shadow);display:grid;grid-template-columns:158px 1fr;grid-template-areas:"bar bar" "side body";font-size:12.5px;line-height:1.45;min-width:0}
.wb{grid-area:bar;height:32px;display:flex;align-items:center;gap:6px;padding:0 12px;border-bottom:1px solid var(--s1);background:#fff}
.wb i{width:9px;height:9px;border-radius:50%;display:block}.wb i:nth-child(1){background:#f87171}.wb i:nth-child(2){background:#fbbf24}.wb i:nth-child(3){background:#34d399}
.side{grid-area:side;background:#0f172a;padding:11px 0;color:#cbd5e1}
.sb{display:flex;align-items:center;gap:8px;padding:0 11px 11px}
.pf{width:26px;height:26px;border-radius:7px;background:#fff;color:#0f172a;font-family:var(--logo);font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pf em{color:var(--or);font-style:italic}
.sb b{display:block;color:#fff;font-size:11.5px;line-height:1.15}.sb small{font-size:10px;color:#94a3b8}
.sg{font-size:9.5px;letter-spacing:.07em;text-transform:uppercase;color:#fbbf24;padding:9px 11px 3px;font-weight:700}
.si{display:flex;justify-content:space-between;align-items:center;padding:5px 11px;font-size:11px;border-left:2px solid transparent;white-space:nowrap}
.si.on{background:rgba(255,255,255,.08);color:#fff;font-weight:600;border-left-color:var(--or)}
.si i{font-style:normal;background:#f59e0b;color:#0f172a;font-size:9.5px;font-weight:800;border-radius:99px;padding:0 5px}
.bd{grid-area:body;padding:14px;min-width:0;background:#f8fafc}
.bh{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;flex-wrap:wrap}
.bh b{font-size:14.5px;display:block}.bh small{color:var(--s5);font-size:11px}
.bbt{display:flex;gap:5px;flex-wrap:wrap}
.ab{font-size:10.5px;font-weight:600;border-radius:6px;padding:4px 8px;border:1px solid var(--s3);background:#fff;white-space:nowrap}
.ab.pr{background:#1d4ed8;border-color:#1d4ed8;color:#fff}
.pan{background:#fff;border:1px solid var(--s2);border-radius:10px;padding:10px;margin-bottom:9px}
.ph6{display:flex;align-items:center;gap:6px;font-weight:700;font-size:12px;margin-bottom:6px;flex-wrap:wrap}
.cnt{background:#fef3c7;color:#92400e;font-size:10px;border-radius:99px;padding:0 6px;font-weight:700}
.ir{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;border-top:1px solid var(--s1);font-size:11px}
.pan .ir:first-of-type{border-top:0}
.ir small{color:var(--s5);display:block;font-size:10px}
.bdg{font-size:10px;font-weight:700;border-radius:99px;padding:1px 7px;white-space:nowrap;display:inline-block}
.b-am{background:#fef3c7;color:#92400e}.b-em{background:#d1fae5;color:#065f46}.b-bl{background:#dbeafe;color:#1e40af}.b-rd{background:#fee2e2;color:#991b1b}.b-sl{background:#e2e8f0;color:#334155}.b-sk{background:#e0f2fe;color:#075985}.b-pk{background:#fce7f3;color:#9d174d}.b-vi{background:#ede9fe;color:#5b21b6}.b-tl{background:#ccfbf1;color:#115e59}
.fl{display:flex;gap:5px;margin-bottom:9px;flex-wrap:wrap;align-items:center}
.fl span{font-size:10.5px;font-weight:600;padding:3px 8px;border-radius:99px;background:#fff;border:1px solid var(--s2);color:var(--s6)}
.fl .dk{background:#0f172a;color:#fff;border-color:#0f172a}.fl .am{background:#fef3c7;color:#92400e;border-color:#fde68a}
.pcs{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.pc{background:#fff;border:1px solid var(--s2);border-radius:10px;padding:9px;min-width:0}
.pc .tp{display:flex;gap:7px;align-items:center}
.av{width:28px;height:28px;border-radius:8px;background:#059669;color:#fff;font-weight:700;font-size:10.5px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.av.dep{background:#334155}.av.lg2{width:34px;height:34px;border-radius:10px}
.pc b{font-size:11.5px;display:block}.pc small{font-size:10px;color:var(--s5)}
.pc .dt{font-size:10px;color:var(--s6);margin:7px 0 5px}
.bar{height:5px;border-radius:99px;background:var(--s1);overflow:hidden}.bar i{display:block;height:100%;background:#f59e0b;border-radius:99px}
.bar.full i{background:#10b981}
.pg{display:flex;justify-content:space-between;font-size:10px;color:var(--s5);margin-top:3px}
.kp{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:9px}
.kp div{background:#fff;border:1px solid var(--s2);border-radius:9px;padding:7px 8px;min-width:0}
.kp small{font-size:8.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--s4);font-weight:700;display:block}
.kp b{font-size:13.5px;display:block}.kp span{font-size:9.5px;color:var(--s5)}
.tabsm{display:flex;gap:12px;border-bottom:1px solid var(--s2);margin-bottom:9px;font-size:11px;font-weight:600;color:var(--s5);flex-wrap:wrap}
.tabsm span{padding:4px 0}.tabsm .on{color:var(--ink);border-bottom:2px solid #f59e0b}
.tk{display:flex;gap:7px;align-items:flex-start;padding:6px 8px;border:1px solid var(--s2);border-radius:8px;margin-top:5px;background:#fff;font-size:11px}
.tk .cb{width:13px;height:13px;border-radius:4px;border:1.5px solid var(--s3);flex-shrink:0;margin-top:1px}
.tk.dn{background:#f0fdf4}.tk.dn .cb{background:#10b981;border-color:#10b981}
.tk.lt{background:#fef2f2;border-color:#fecaca}
.tk small{display:block;color:var(--s5);font-size:10px}.tk.lt small{color:#b91c1c}
.tk .r{margin-left:auto;font-family:ui-monospace,Menlo,monospace;font-size:9.5px;color:var(--s5);white-space:nowrap}
.grp{font-size:11px;font-weight:700;display:flex;justify-content:space-between;gap:8px;margin-top:4px}
.grp small{font-weight:500;color:var(--s5)}
table.mt{width:100%;border-collapse:collapse;font-size:11px;background:#fff;border:1px solid var(--s2);border-radius:10px;overflow:hidden}
table.mt th{text-align:left;font-size:9px;letter-spacing:.05em;text-transform:uppercase;color:var(--s4);padding:6px 8px;border-bottom:1px solid var(--s2);font-weight:700;white-space:nowrap}
table.mt td{padding:6px 8px;border-bottom:1px solid var(--s1);color:var(--s7);white-space:nowrap}
table.mt tr:last-child td{border-bottom:0}
table.mt .n{text-align:right;font-variant-numeric:tabular-nums}
.mtw{overflow-x:auto;border-radius:10px}
.cell{display:inline-block;min-width:44px;text-align:center;border-radius:6px;padding:2px 4px;font-size:10px;font-weight:700}
/* téléphone */
.phone{color:var(--ink);text-align:left;width:240px;border-radius:38px;padding:8px;background:linear-gradient(155deg,#4a4a52,#1b1b1f 42%,#0b0b0d);box-shadow:0 30px 60px -25px rgba(15,23,42,.45);flex-shrink:0}
.scr{border-radius:31px;overflow:hidden;background:#f8fafc;aspect-ratio:9/19.5;display:flex;flex-direction:column;position:relative;font-size:11px;line-height:1.4}
.isl{position:absolute;top:9px;left:50%;transform:translateX(-50%);width:72px;height:21px;border-radius:99px;background:#000;z-index:2}
.ph{background:linear-gradient(135deg,var(--b),#f59e0b);color:#fff;padding:40px 14px 14px}
.ph.teal{background:linear-gradient(135deg,#0f766e,#14b8a6)}
.ph small{opacity:.88;font-size:10px}.ph b{display:block;font-size:15.5px}
.ph .cd{display:inline-block;margin-top:6px;background:rgba(255,255,255,.22);border-radius:99px;padding:2px 9px;font-size:10px;font-weight:600}
.pb{padding:9px;display:grid;gap:7px}
.pk{background:#fff;border:1px solid var(--s2);border-radius:12px;padding:8px 10px}
.pk .h5{font-weight:700;margin:0 0 5px;font-size:11px;display:flex;justify-content:space-between;gap:6px}
.pk .h5 span{font-size:9.5px;color:var(--s5);font-weight:500}
.pl{display:flex;justify-content:space-between;gap:8px;padding:3px 0;font-size:10px;color:var(--s6)}
.pl b{color:var(--ink);text-align:right}
.pnav{margin-top:auto;display:flex;justify-content:space-around;padding:8px 0 12px;background:#fff;border-top:1px solid var(--s2);font-size:9px;color:var(--s4);font-weight:600}
.pnav .on{color:var(--b6)}
.duo{position:relative;padding:0 120px 56px 0}
.duo .phone{position:absolute;right:0;bottom:0;transform:scale(.74);transform-origin:bottom right}
.ctr{display:flex;justify-content:center}
.mlegend{font-size:10px;color:var(--s5);margin-top:6px}

/* pied de page */
footer{background:#0f172a;color:#94a3b8;font-size:.88rem}
.fg{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:1.8rem;padding-top:3rem;padding-bottom:2rem}
.fg>*{min-width:0}
footer .lg{color:#fff}
footer h2{color:#fff;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.7rem;font-weight:700}
footer ul{list-style:none;display:grid;gap:.45rem}
footer a:hover{color:#fff}
footer .about p{margin:.7rem 0;max-width:300px}
footer .store-badge{background:#1e293b}
.fstores{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.8rem}
.leg{border-top:1px solid #1e293b;padding-top:1.1rem;padding-bottom:1.6rem;display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;font-size:.8rem}
.leg span{margin-right:auto}

/* modale démo */
.modal-bd{position:fixed;inset:0;background:rgba(15,23,42,.55);display:none;align-items:center;justify-content:center;z-index:300;padding:16px}
.modal-bd.open{display:flex}
.modal{background:#fff;border-radius:20px;max-width:460px;width:100%;padding:1.8rem;position:relative;max-height:calc(100vh - 32px);overflow:auto}
.modal h2{font-size:1.35rem;letter-spacing:-.015em;margin-bottom:.3rem}
.modal p.m{color:var(--s6);font-size:.93rem;margin-bottom:1.2rem}
.mclose{position:absolute;top:12px;right:12px;width:34px;height:34px;border-radius:50%;border:0;background:var(--s1);cursor:pointer;font-size:1.2rem;color:var(--s6)}
.fld{display:grid;gap:.3rem;margin-bottom:.85rem}
.fld label{font-size:.84rem;font-weight:600;color:var(--s7)}
.fld input,.fld textarea,.fld select{font:inherit;font-size:.95rem;padding:.65rem .8rem;border:1px solid var(--s2);border-radius:10px;background:#fff;color:var(--ink);width:100%}
.fld input:focus,.fld textarea:focus{outline:2px solid var(--b1);border-color:var(--b)}
.fmsg{font-size:.86rem;margin-top:.7rem}.fmsg.err{color:#b91c1c}
.fok{text-align:center;padding:1rem 0}.fok .okc{width:52px;height:52px;border-radius:50%;background:var(--em0);color:var(--em);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;font-size:1.4rem;font-weight:800}
.fine{font-size:.78rem;color:var(--s5);margin-top:.6rem}

/* pages légales */
.legal{max-width:780px;margin:0 auto;padding-top:3rem;padding-bottom:4rem}
.legal h1{font-size:clamp(1.8rem,4vw,2.4rem);letter-spacing:-.022em;margin:.6rem 0 .4rem}
.legal .meta{color:var(--s5);font-size:.9rem;margin-bottom:2rem}
.legal h2{font-size:1.15rem;margin:2.1rem 0 .6rem;display:flex;gap:.6rem;align-items:baseline}
.legal h2 .num{font-size:.8rem;color:var(--b7);background:var(--b0);border:1px solid var(--b1);border-radius:6px;padding:0 .45rem;font-weight:700}
.legal p,.legal li{color:var(--s7);font-size:.97rem}
.legal p{margin:.5rem 0}
.legal ul{padding-left:1.2rem;margin:.5rem 0}.legal li{margin:.3rem 0}
.legal a{color:var(--b6);text-decoration:underline;text-underline-offset:2px}
.legal .block{background:var(--s0);border:1px solid var(--s2);border-radius:12px;padding:1rem 1.2rem;margin:1rem 0;font-size:.95rem}
.legal table{width:100%;border-collapse:collapse;font-size:.88rem;margin:.8rem 0}
.legal th,.legal td{text-align:left;padding:.6rem .7rem;border-bottom:1px solid var(--s2);vertical-align:top}
.legal th{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--s5)}

/* responsive */
@media (max-width:1060px){
  .nl{gap:1.1rem}
  .mods{grid-template-columns:repeat(2,1fr)}
  .law{grid-template-columns:repeat(2,1fr)}
  .fg{grid-template-columns:repeat(3,1fr)}.fg .about{grid-column:1/-1}
}
@media (max-width:920px){
  .nl,.nr .btn,.nr .lang{display:none}
  .burger{display:block}
  .nav.mopen .mmenu{display:block;max-height:calc(100vh - 66px);overflow:auto;border-top:1px solid var(--s1);background:#fff}
  .mega{display:none!important}
  .mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:90;padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:rgba(255,255,255,.95);border-top:1px solid var(--s2);backdrop-filter:blur(10px)}
  .mbar .btn{width:100%}
  body{padding-bottom:70px}
  .hg,.prow,.spot,.price,.faq,.row{grid-template-columns:1fr}
  .row.rev>.txt{order:0}
  .hg{gap:2.4rem}
  .facts .w{grid-template-columns:repeat(2,1fr)}
  .steps,.lu,.cards3,.incl{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .w{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
  section.s{padding:3.2rem 0}
  .hero{padding:2.6rem 0 2.6rem}
  .mods,.steps,.lu,.tl,.pcs,.law,.cards3,.cards2,.incl{grid-template-columns:1fr}
  .facts .w{grid-template-columns:1fr 1fr;gap:.9rem}
  .kp{grid-template-columns:1fr 1fr}
  .win{grid-template-columns:1fr;grid-template-areas:"bar" "body"}.side{display:none}
  .duo{padding:0}.duo .phone{display:none}
  .spot{padding:1.5rem;border-radius:18px}.price{padding:1.3rem;border-radius:18px}
  .fg{grid-template-columns:1fr 1fr}
  .leg span{width:100%}
  .cta .btn{flex:1 1 auto}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.fl span.b-sk{background:#e0f2fe;color:#075985;border-color:transparent}.fl span.b-em{background:#d1fae5;color:#065f46;border-color:transparent}.fl span.b-pk{background:#fce7f3;color:#9d174d;border-color:transparent}.fl span.b-bl{background:#dbeafe;color:#1e40af;border-color:transparent}
.scr.shotm{background:#fff;padding-top:30px}.scr.shotm img{width:100%;height:auto;display:block}
.duo .shot{box-shadow:var(--shadow)}
/* captures : agrandissement au survol (souris) et ouverture en grand au clic */
.shot img,.scr.shotm img{cursor:zoom-in}
@media (hover:hover) and (pointer:fine){
  .shot,.phone:has(.shotm){position:relative;transition:scale .35s ease,box-shadow .35s ease;transform-origin:right center}
  .row.rev .shot,.row.rev .phone:has(.shotm){transform-origin:left center}
  .duo .phone:has(.shotm){transform-origin:bottom right}
  .shot:hover{scale:1.4;z-index:30;box-shadow:0 40px 90px -30px rgba(15,23,42,.55)}
  .phone:has(.shotm):hover{scale:1.3;z-index:30}
}
.lightbox{position:fixed;inset:0;z-index:400;background:rgba(15,23,42,.88);display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));cursor:zoom-out}
.lightbox img{max-width:100%;max-height:100%;width:auto;height:auto;border-radius:12px;box-shadow:0 30px 80px rgba(0,0,0,.5);background:#fff}
.lightbox button{position:absolute;top:max(14px,env(safe-area-inset-top,0px));right:max(14px,env(safe-area-inset-right,0px));width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.15);color:#fff;font-size:1.4rem;cursor:pointer}
