/* vl-plus.eu – feuille de style (polices locales, sans Google Fonts) */
@font-face{font-family:"Jakarta";src:url(../fonts/plus-jakarta-sans-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Jakarta";src:url(../fonts/plus-jakarta-sans-latin-800-normal.woff2) format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Nunito Sans";src:url(../fonts/nunito-sans-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Nunito Sans";src:url(../fonts/nunito-sans-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Nunito Sans";src:url(../fonts/nunito-sans-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}

:root{
  --v1:#49267B;--v2:#66438D;--v3:#B39CC4;--rust:#712F03;--rust-h:#8a3a06;--white:#fff;
  --lav:#f4eff8;--lav2:#ebe2f2;--ink:#1f1430;--txt:#3d3450;--mute:#6f6680;--line:#e4dbec;
  --h:"Jakarta",system-ui,sans-serif;--b:"Nunito Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mw:1180px;--hh:74px;--r:20px;--rs:12px;--sh:0 20px 44px -26px rgba(73,38,123,.45);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hh) + 16px);-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--b);font-size:1.07rem;line-height:1.7;color:var(--txt);background:#fff;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--v2)}
h1,h2,h3,h4{font-family:var(--h);font-weight:800;line-height:1.14;color:var(--v1);margin:0 0 .5em;letter-spacing:-.02em}
h2{font-size:clamp(1.9rem,3.7vw,2.8rem)}
h3{font-size:1.2rem;font-weight:800}
p{margin:0 0 1em}
.c{max-width:var(--mw);margin:0 auto;padding:0 22px}
.skip{position:absolute;left:-999px;top:8px;background:var(--v1);color:#fff;padding:8px 14px;z-index:300;border-radius:8px}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--rust);outline-offset:3px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* pulse divider – signature */
.pulse{display:block;width:120px;height:24px;margin-bottom:14px;color:var(--v3)}
.pulse path{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.pulse circle{fill:var(--rust)}
.kicker{font-family:var(--h);font-weight:600;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:var(--v2);margin:0 0 6px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;font-family:var(--h);font-weight:800;text-decoration:none;color:#fff;background:var(--rust);border:0;cursor:pointer;border-radius:14px;padding:1em 1.8em;font-size:1.03rem;line-height:1.15;box-shadow:0 12px 26px -12px rgba(113,47,3,.75);transition:transform .15s,background .15s;text-align:center}
.btn:hover{background:var(--rust-h);transform:translateY(-2px)}
.btn svg{width:1.15em;height:1.15em;flex:none}
.btn.xl{font-size:1.16rem;padding:1.15em 2.2em}
.btn.alt{background:var(--v1);box-shadow:0 12px 26px -12px rgba(73,38,123,.75)}
.btn.alt:hover{background:var(--v2)}
.btn.light{background:#fff;color:var(--v1);box-shadow:0 10px 22px -12px rgba(0,0,0,.4)}
.btn.light:hover{background:var(--lav)}
.lnk{font-weight:700;color:var(--v1);text-decoration:underline;text-decoration-color:var(--v3);text-decoration-thickness:2px;text-underline-offset:4px}

/* trust bar + header */
.tb{background:var(--v1);color:#e9e0f3;font-size:.86rem}
.tb .c{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 26px;padding-top:7px;padding-bottom:7px}
.tb span{display:inline-flex;align-items:center;gap:6px}
.tb svg{width:14px;height:14px;color:var(--v3)}
.hd{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.hd .c{display:flex;align-items:center;gap:20px;height:var(--hh)}
.logo img{height:44px;width:auto}
.nav{margin-left:auto}
.nav ul{list-style:none;display:flex;gap:2px;margin:0;padding:0}
.nav a{display:block;white-space:nowrap;padding:.5em .75em;border-radius:10px;text-decoration:none;color:var(--ink);font-weight:700;font-size:.95rem}
.nav a:hover{background:var(--lav);color:var(--v1)}
.hd .btn{padding:.72em 1.25em;font-size:.93rem;border-radius:12px}
.menu-btn{display:none;width:46px;height:46px;border-radius:12px;border:1px solid var(--line);background:#fff;cursor:pointer;color:var(--v1)}
.menu-btn svg{width:22px;height:22px}

/* hero */
.hero{position:relative;isolation:isolate;background:var(--lav) url(../img/imagehome.webp) 70% center/cover no-repeat;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(250,247,252,.94) 38%,rgba(244,239,248,.6) 52%,rgba(244,239,248,0) 66%)}
.hero .c{display:flex;align-items:center;min-height:min(86vh,690px);padding-top:56px;padding-bottom:64px}
.hero-txt{max-width:590px}
.hero .over{display:inline-flex;align-items:center;gap:8px;font-family:var(--h);font-weight:600;font-size:.85rem;color:var(--v1);background:#fff;border:1px solid var(--line);border-radius:999px;padding:.4em .9em;margin-bottom:18px}
.hero .over i{width:8px;height:8px;border-radius:50%;background:var(--rust);font-style:normal}
.hero h1{font-size:clamp(2.2rem,4.8vw,3.55rem);margin-bottom:.35em}
.hero h1 span{color:var(--v2);background:linear-gradient(transparent 62%,rgba(179,156,196,.45) 62%)}
.hero .lead{font-size:1.13rem}
.score{display:flex;align-items:center;gap:14px;margin:22px 0 26px}
.score .big{font-family:var(--h);font-weight:800;font-size:2.3rem;line-height:1;color:var(--v1)}
.score .big small{font-size:.45em;color:var(--mute)}
.stars{position:relative;display:inline-block;font-size:1.2rem;letter-spacing:2px;line-height:1;color:var(--lav2)}
.stars::before{content:"★★★★★"}
.stars i{position:absolute;inset:0 auto 0 0;overflow:hidden;white-space:nowrap;font-style:normal;color:#e0a100}
.stars i::before{content:"★★★★★"}
.score p{margin:0;font-size:.9rem;color:var(--mute);line-height:1.4}
.score p b{color:var(--ink)}
.acts{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.ticks{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-wrap:wrap;gap:8px 18px;font-weight:700;color:var(--v1);font-size:.95rem}
.ticks li{display:flex;align-items:center;gap:7px}
.ticks svg{width:18px;height:18px;color:var(--rust)}

/* benefits strip */
.bens{background:var(--v1);color:#fff;padding:0}
.bens ul{list-style:none;margin:0 auto;padding:0;display:grid;grid-template-columns:repeat(4,1fr)}
.bens li{padding:30px 24px;display:flex;gap:14px;align-items:flex-start;border-right:1px solid rgba(255,255,255,.12)}
.bens li:last-child{border-right:0}
.bens .ic{flex:none;width:46px;height:46px;border-radius:14px;background:rgba(179,156,196,.22);display:grid;place-items:center;color:#fff}
.bens svg{width:24px;height:24px}
.bens h3{color:#fff;font-size:1.02rem;margin:0 0 .2em}
.bens p{margin:0;font-size:.92rem;color:#ddd1ea;line-height:1.5}

/* sections */
.sec{padding:96px 0}
.sec.lav{background:var(--lav)}
.sec.deep{background:linear-gradient(180deg,var(--v1),#3a1d63);color:#e9e0f3}
.sec.deep h2,.sec.deep h3{color:#fff}
.sec.deep .kicker{color:var(--v3)}
.sec.deep .pulse{color:rgba(179,156,196,.7)}
.head{max-width:760px;margin-bottom:44px}
.head.mid{margin-left:auto;margin-right:auto;text-align:center}
.head.mid .pulse{margin-left:auto;margin-right:auto}
.head p{font-size:1.1rem}

/* product */
.prod{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:26px 0}
.stat{background:var(--lav);border-radius:var(--rs);padding:16px 12px;text-align:center}
.stat b{display:block;font-family:var(--h);font-weight:800;font-size:1.7rem;color:var(--v1);line-height:1.05}
.stat span{font-size:.84rem;color:var(--mute)}
.names{font-size:.95rem;color:var(--mute);border-left:4px solid var(--v3);padding:6px 0 6px 14px;margin:0 0 22px}
.photo{position:relative;border-radius:28px;overflow:hidden;box-shadow:var(--sh)}
.photo .badge{position:absolute;left:18px;bottom:18px;background:#fff;color:var(--v1);font-family:var(--h);font-weight:800;padding:.65em 1em;border-radius:14px;display:flex;align-items:center;gap:10px;box-shadow:0 10px 24px -12px rgba(0,0,0,.35)}
.photo .badge i{width:34px;height:34px;border-radius:10px;background:var(--v1);display:grid;place-items:center;font-style:normal;color:#fff}
.photo .badge svg{width:18px;height:18px}

/* composition */
.tbl-box{background:#fff;border-radius:var(--r);box-shadow:var(--sh);overflow:hidden}
table.cmp{width:100%;border-collapse:collapse}
.cmp th,.cmp td{padding:13px 20px;text-align:left;border-bottom:1px solid var(--line)}
.cmp thead th{background:var(--v1);color:#fff;font-family:var(--h);font-weight:600;font-size:.85rem;letter-spacing:.03em}
.cmp tbody th{font-weight:700;color:var(--ink)}
.cmp .grp th{background:var(--lav2);color:var(--v1);font-family:var(--h);font-weight:800;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;padding:9px 20px}
.cmp td.q{font-family:var(--h);font-weight:800;color:var(--v1);white-space:nowrap}
.cmp td.pct{font-weight:700;white-space:nowrap}
.yes{display:inline-flex;align-items:center;gap:5px;font-size:.82rem;font-weight:700;color:#fff;background:var(--v2);border-radius:999px;padding:.2em .75em}
.no{font-size:.82rem;font-weight:700;color:var(--mute);background:var(--lav);border-radius:999px;padding:.2em .75em}
.tbl-foot{margin:0;padding:14px 20px;font-size:.88rem;background:var(--lav);color:var(--mute)}
.keynote{display:flex;gap:14px;align-items:flex-start;margin-top:24px;padding:18px 22px;border-radius:var(--rs);background:#fff;border:1px solid var(--line)}
.keynote svg{width:26px;height:26px;color:var(--rust);flex:none;margin-top:2px}
.keynote p{margin:0}
.groups{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
.grp-col h3{display:flex;align-items:center;gap:10px;font-size:1.1rem;padding-bottom:10px;border-bottom:3px solid var(--v3)}
.grp-col h3 span{font-family:var(--b);font-weight:700;font-size:.8rem;color:#fff;background:var(--v2);border-radius:999px;padding:.15em .65em}
.nut{padding:14px 0;border-bottom:1px dashed var(--line)}
.nut:last-child{border-bottom:0}
.nut h4{font-size:1rem;margin:0 0 .25em;display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.nut h4 em{font-family:var(--b);font-style:normal;font-weight:700;font-size:.84rem;color:var(--rust)}
.nut p{margin:0;font-size:.95rem}
.promo{display:grid;grid-template-columns:auto 1fr auto;gap:26px;align-items:center;margin-top:50px;padding:24px 34px;border-radius:24px;background:#fff;box-shadow:var(--sh);border:2px solid var(--lav2)}
.promo img{width:92px;height:auto}
.promo h3{margin:0 0 .2em;font-size:1.35rem}
.promo p{margin:0}

/* usage */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;counter-reset:s}
.steps li{counter-increment:s;position:relative;background:#fff;border-radius:var(--r);padding:30px 26px 26px;border:1px solid var(--line)}
.steps li::before{content:"0" counter(s);display:block;font-family:var(--h);font-weight:800;font-size:2.6rem;line-height:1;color:var(--v3);margin-bottom:12px}
.steps li:nth-child(2){background:var(--v1);border-color:var(--v1);color:#e9e0f3}
.steps li:nth-child(2) h3{color:#fff}
.steps li:nth-child(2)::before{color:#fff}
.steps p{margin:0;font-size:.98rem}
.use-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;margin-top:40px;align-items:stretch}
.use-img{border-radius:var(--r);overflow:hidden;min-height:300px;background:center 35%/cover no-repeat}
.care{background:#fff;border-radius:var(--r);padding:28px 28px 22px;border:1px solid var(--line);border-top:6px solid var(--rust)}
.care h3{display:flex;align-items:center;gap:10px}
.care h3 svg{width:24px;height:24px;color:var(--rust)}
.care ul{margin:0;padding:0;list-style:none}
.care li{padding:8px 0 8px 24px;position:relative;border-bottom:1px solid var(--line);font-size:.97rem}
.care li:last-child{border-bottom:0}
.care li::before{content:"";position:absolute;left:0;top:1.05em;width:10px;height:10px;border-radius:3px;background:var(--v3)}

/* efficacy */
.claims{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.claim{background:rgba(255,255,255,.06);border:1px solid rgba(179,156,196,.3);border-radius:var(--r);padding:26px}
.claim h3{display:flex;align-items:center;gap:12px;font-size:1.2rem}
.claim h3 i{width:42px;height:42px;border-radius:12px;background:var(--v3);color:var(--v1);display:grid;place-items:center;font-style:normal;flex:none}
.claim h3 svg{width:22px;height:22px}
.claim .tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.claim .tags span{font-size:.78rem;font-weight:700;padding:.25em .7em;border-radius:999px;background:rgba(255,255,255,.12);color:#fff}
.claim p{margin:0;font-size:.97rem;color:#ddd1ea}
.claim p q{quotes:auto;color:#fff;font-weight:600}
:lang(fr) .claim p q{quotes:"« " " »"}
:lang(de) .claim p q{quotes:"„" "“"}
:lang(de-CH) .claim p q{quotes:"«" "»"}
:lang(nl) .claim p q{quotes:"‘" "’"}
:lang(it) .claim p q{quotes:"«" "»"}
:lang(fi) .claim p q{quotes:"”" "”"}
:lang(nb) .claim p q{quotes:"«" "»"}
:lang(da) .claim p q{quotes:"»" "«"}
.no-claim{margin:26px 0 0;padding:18px 22px;border-radius:var(--rs);background:rgba(0,0,0,.18);font-size:.97rem}
.no-claim strong{color:#fff}
.expect{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px}
.expect div{border-radius:var(--r);padding:26px 28px;background:#fff;color:var(--txt)}
.expect h3{color:var(--v1)}
.expect ul{margin:0;padding:0;list-style:none}
.expect li{padding:6px 0 6px 30px;position:relative}
.expect li::before{position:absolute;left:0;top:6px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:.75rem;font-weight:800;color:#fff}
.expect .ok li::before{content:"✓";background:var(--v2)}
.expect .ko li::before{content:"✕";background:var(--rust)}
.eff-cta{text-align:center;margin-top:40px}
.eff-cta small{display:block;margin-top:10px;color:#cbbcdb;font-size:.86rem}

/* band */
.band{position:relative;isolation:isolate;display:flex;align-items:center;min-height:440px;background:var(--lav) center/cover no-repeat}
.band::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(73,38,123,.94) 0%,rgba(73,38,123,.85) 34%,rgba(73,38,123,.15) 55%,rgba(73,38,123,0) 70%)}
.band .in{max-width:470px;color:#fff;padding:40px 0}
.band h2{color:#fff;font-size:clamp(1.8rem,3.3vw,2.5rem)}
.band p{color:#e9e0f3}

/* buy */
.packs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.pack{position:relative;background:#fff;border-radius:24px;padding:30px 26px 26px;border:2px solid var(--line);display:flex;flex-direction:column;text-align:center}
.pack.best{border-color:var(--v1);box-shadow:var(--sh);transform:translateY(-8px)}
.pack .flag{position:absolute;top:-15px;left:50%;transform:translateX(-50%);background:var(--v1);color:#fff;font-family:var(--h);font-weight:800;font-size:.8rem;padding:.4em 1em;border-radius:999px;white-space:nowrap}
.pack .bottles{display:flex;justify-content:center;align-items:flex-end;height:140px;margin:6px 0 16px}
.pack .bottles img{height:130px;width:auto;margin:0 -16px}
.pack .bottles img:nth-child(2){height:140px;position:relative;z-index:1}
.pack h3{font-size:1.35rem;margin:0}
.pack .dur{color:var(--mute);font-size:.95rem;margin:.2em 0 14px}
.pack ul{list-style:none;margin:0 0 20px;padding:0;text-align:left;font-size:.95rem}
.pack li{padding:5px 0 5px 26px;position:relative}
.pack li::before{content:"✓";position:absolute;left:0;color:var(--v2);font-weight:800}
.pack .pr{margin-top:auto;font-size:.92rem;color:var(--mute);margin-bottom:14px}
.pack .pr b{display:block;font-family:var(--h);font-weight:800;font-size:1.5rem;color:var(--v1)}
.pack .pr s{color:var(--mute)}
.pack .btn{width:100%}
.buy-note{font-size:.88rem;color:var(--mute);text-align:center;margin:26px auto 0;max-width:760px}
.trust{list-style:none;margin:44px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.trust li{display:flex;gap:12px;align-items:flex-start;background:#fff;border-radius:var(--rs);padding:18px;border:1px solid var(--line)}
.trust svg{width:26px;height:26px;color:var(--v2);flex:none}
.trust strong{display:block;color:var(--v1);font-family:var(--h)}
.trust p{margin:0;font-size:.92rem}

/* manufacturing */
.mf{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
.mf-pic{background:linear-gradient(160deg,var(--lav),var(--lav2));border-radius:32px;padding:36px;display:flex;justify-content:center}
.mf-pic img{max-height:420px;width:auto;filter:drop-shadow(0 24px 26px rgba(73,38,123,.3))}
.known{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.known > div{border-radius:var(--r);padding:24px;background:#fff;border:1px solid var(--line)}
.known h3{font-size:1.08rem;display:flex;align-items:center;gap:8px}
.known .k h3::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--v2)}
.known .u h3::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--rust)}
.known dl{margin:0}
.known dt{font-weight:700;color:var(--ink);margin-top:10px}
.known dt:first-child{margin-top:0}
.known dd{margin:0;font-size:.95rem}
.known ul{margin:0;padding-left:1.1em;font-size:.95rem}
.known li{margin-bottom:.4em}
.check-tip{margin-top:20px;padding:16px 20px;border-radius:var(--rs);background:var(--lav);font-size:.96rem}

/* FAQ */
.faq-w{display:grid;grid-template-columns:.7fr 1.3fr;gap:56px;align-items:start}
.faq-side{position:sticky;top:calc(var(--hh) + 30px)}
.faq-side .ph{border-radius:var(--r);overflow:hidden;margin-top:22px;box-shadow:var(--sh)}
.faq details{border-radius:var(--rs);background:#fff;border:1px solid var(--line);margin-bottom:10px}
.faq details[open]{border-color:var(--v3);box-shadow:0 12px 30px -22px rgba(73,38,123,.6)}
.faq summary{list-style:none;cursor:pointer;padding:18px 58px 18px 20px;font-family:var(--h);font-weight:600;font-size:1.04rem;color:var(--v1);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:16px;top:50%;width:30px;height:30px;margin-top:-15px;border-radius:9px;background:var(--lav);color:var(--v1);display:grid;place-items:center;font-size:1.3rem;font-weight:400;line-height:1;transition:transform .2s,background .2s}
.faq details[open] summary::after{transform:rotate(45deg);background:var(--v1);color:#fff}
.faq .a{padding:0 20px 18px}
.faq .a p{margin:0}

/* final */
.end{background:var(--lav);position:relative;overflow:hidden}
.end .c{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center;padding-top:90px;padding-bottom:90px}
.end-card{background:#fff;border-radius:32px;padding:44px;box-shadow:var(--sh);position:relative}
.end-card::before{content:"";position:absolute;inset:0 0 auto 0;height:8px;border-radius:32px 32px 0 0;background:linear-gradient(90deg,var(--v1),var(--v2),var(--v3))}
.end h2{font-size:clamp(2rem,4vw,3rem)}
.end ul{list-style:none;margin:20px 0 26px;padding:0;display:grid;gap:8px}
.end li{display:flex;gap:10px;align-items:center;font-weight:700;color:var(--v1)}
.end li svg{width:20px;height:20px;color:var(--rust)}
.end .score{margin:0 0 24px}
.end-pic{display:flex;justify-content:center}
.end-pic img{max-height:470px;width:auto;filter:drop-shadow(0 30px 30px rgba(73,38,123,.35))}

/* footer */
.ft{background:#1f1430;color:#cbbfdb;font-size:.95rem;padding:62px 0 28px}
.ft a{color:#fff;text-decoration:none}
.ft a:hover{color:var(--v3);text-decoration:underline}
.ft-top{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:36px;padding-bottom:34px;border-bottom:1px solid #352850}
.ft-logo{display:inline-flex;background:#fff;border-radius:12px;padding:8px 14px;margin-bottom:14px}
.ft-logo img{height:38px;width:auto}
.ft h4{color:#fff;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-weight:600}
.ft ul{list-style:none;margin:0;padding:0}
.ft li{margin-bottom:6px}
.disc{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:34px 0}
.disc section{border-radius:var(--rs);padding:22px;background:#291c3f;border:1px solid #352850}
.disc h4{display:flex;align-items:center;gap:10px;font-size:1rem;letter-spacing:0;text-transform:none;font-weight:800;font-family:var(--h)}
.disc h4 i{width:30px;height:30px;border-radius:9px;background:var(--v2);display:grid;place-items:center;font-style:normal}
.disc section:nth-child(2) h4 i{background:var(--v3);color:var(--v1)}
.disc section:nth-child(3) h4 i{background:var(--rust)}
.disc h4 svg{width:16px;height:16px}
.disc p{margin:0;font-size:.89rem;line-height:1.6}
.ft-bot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:24px;border-top:1px solid #352850;font-size:.88rem}

/* mobile sticky bar */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:90;background:#fff;border-top:1px solid var(--line);box-shadow:0 -10px 30px -18px rgba(73,38,123,.5);transform:translateY(110%);transition:transform .25s ease;display:none}
.sticky.show{transform:none}
.sticky .c{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;padding-bottom:10px}
.sticky b{font-family:var(--h);color:var(--v1);display:block;font-size:.98rem;line-height:1.2}
.sticky small{color:var(--mute);font-size:.82rem}
.sticky .btn{padding:.75em 1.2em;font-size:.92rem}

/* subpages */
.pg-hero{background:linear-gradient(135deg,var(--v1),var(--v2));color:#fff;padding:64px 0 54px}
.pg-hero h1{color:#fff;font-size:clamp(2rem,4.6vw,3rem);margin:0}
.pg-hero p{color:#e9e0f3;margin:.6em 0 0;max-width:680px}
.doc{max-width:860px;margin:0 auto;padding:60px 22px 96px}
.doc h2{font-size:1.5rem;margin:2em 0 .7em}
.doc h2:first-child{margin-top:0}
.doc h3{font-size:1.1rem;margin:1.4em 0 .5em}
.doc dl{display:grid;grid-template-columns:200px 1fr;gap:6px 18px;background:var(--lav);border-radius:var(--rs);padding:18px 22px;margin:0 0 1em}
.doc dt{font-weight:700;color:var(--v1)}.doc dd{margin:0}
.frm{max-width:720px;margin:0 auto;padding:60px 22px 96px}
.frm .two{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fld{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}
.fld label{font-weight:700;color:var(--v1);font-size:.96rem}
.fld input,.fld textarea,.fld select{font:inherit;padding:.85em 1em;border:1.5px solid #d6cae2;border-radius:12px;background:#fff;color:var(--ink);width:100%}
.fld input:focus,.fld textarea:focus,.fld select:focus{outline:none;border-color:var(--v2);box-shadow:0 0 0 4px rgba(102,67,141,.16)}
.fld textarea{min-height:170px;resize:vertical}
.agree{display:flex;gap:12px;align-items:flex-start;font-size:.95rem;margin-bottom:24px}
.agree input{margin-top:.3em;width:18px;height:18px;accent-color:var(--v1);flex:none}
.hp{position:absolute;left:-9999px}
.msg{padding:16px 20px;border-radius:12px;margin-bottom:22px;font-weight:700}
.msg.ok{background:#efe7f7;color:var(--v1)}
.msg.err{background:#f7e9e0;color:var(--rust)}
.side{margin-top:28px;padding:18px 22px;border-radius:12px;background:var(--lav);font-size:.96rem}

/* reveal */
.rv{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rv{opacity:1;transform:none;transition:none}.btn,.sticky{transition:none}}

/* responsive */
@media (max-width:1240px){.nav a{padding:.5em .45em;font-size:.88rem}}
@media (max-width:1100px){.nav a{padding:.5em .5em;font-size:.9rem}.trust{grid-template-columns:1fr 1fr}}
@media (max-width:980px){
  :root{--hh:66px}
  .menu-btn{display:grid;place-items:center}
  .nav{position:fixed;left:0;right:0;top:var(--hh);background:#fff;margin:0;border-bottom:1px solid var(--line);box-shadow:0 20px 30px -20px rgba(0,0,0,.25);transform:translateY(-140%);visibility:hidden;transition:transform .25s ease}
  .nav.open{transform:none;visibility:visible}
  .nav ul{flex-direction:column;padding:10px 16px 18px}
  .nav a{padding:.85em 1em;font-size:1.05rem}
  .hd .btn{margin-left:auto}
  .tb .c{gap:2px 16px;font-size:.8rem}
  .tb span:nth-child(3){display:none}
  .hero{background-position:85% center}
  .hero::before{background:linear-gradient(180deg,rgba(255,255,255,.9) 0%,rgba(250,247,252,.86) 60%,rgba(244,239,248,.7) 100%)}
  .hero .c{min-height:auto;padding-top:44px;padding-bottom:52px}
  .bens ul{grid-template-columns:1fr 1fr}
  .bens li:nth-child(2){border-right:0}
  .bens li:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.12)}
  .prod,.use-grid,.mf,.faq-w,.end .c{grid-template-columns:1fr;gap:36px}
  .faq-side{position:static}
  .faq-side .ph{display:none}
  .groups{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .claims,.expect{grid-template-columns:1fr}
  .packs{grid-template-columns:1fr;max-width:480px;margin:0 auto}
  .pack.best{transform:none;order:-1}
  .known{grid-template-columns:1fr}
  .disc,.ft-top{grid-template-columns:1fr}
  .band::before{background:linear-gradient(180deg,rgba(73,38,123,.1) 15%,rgba(73,38,123,.8) 50%,rgba(73,38,123,.95) 100%)}
  .band{align-items:flex-end;min-height:540px}
  .mf-pic{max-width:440px;margin:0 auto}
  .sticky{display:block}
  body.has-sticky{padding-bottom:72px}
}
@media (max-width:700px){
  body{font-size:1.02rem}
  .sec{padding:68px 0}
  .logo img{height:36px}
  .hd .btn{padding:.6em .95em;font-size:.85rem}
  .hd .btn .x{display:none}
  .tb span:nth-child(2){display:none}
  .acts .btn{width:100%}
  .bens ul{grid-template-columns:1fr}
  .bens li{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}
  .bens li:last-child{border-bottom:0}
  .stats{grid-template-columns:1fr 1fr}
  .cmp thead{display:none}
  .cmp,.cmp tbody,.cmp tr,.cmp th,.cmp td{display:block;width:100%}
  .cmp tr:not(.grp){display:grid;grid-template-columns:1fr auto auto;gap:4px 10px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line)}
  .cmp tr:not(.grp) th,.cmp tr:not(.grp) td{padding:0;border:0}
  .cmp tr:not(.grp) td.cl{grid-column:1/-1}
  .cmp .grp th{padding:9px 16px}
  .promo{grid-template-columns:1fr;text-align:center;padding:24px 22px}
  .promo img{margin:0 auto}
  .promo .btn{width:100%}
  .trust{grid-template-columns:1fr}
  .end-card{padding:30px 22px}
  .end .btn{width:100%}
  .frm .two,.doc dl{grid-template-columns:1fr}
}
.sec.deep .expect h3{color:var(--v1)}
.band .c{width:100%}

/* language switcher */
.lang{position:relative;margin-left:6px}
.lang summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:7px;padding:.45em .7em;border:1px solid var(--line);border-radius:10px;font-weight:700;font-size:.88rem;color:var(--v1);background:#fff;white-space:nowrap}
.lang summary::-webkit-details-marker{display:none}
.lang summary::after{content:"";width:7px;height:7px;border-right:2px solid var(--v2);border-bottom:2px solid var(--v2);transform:rotate(45deg) translate(-2px,-2px);margin-left:2px}
.lang[open] summary{border-color:var(--v3);background:var(--lav)}
.lang img,.lang-list img{width:22px;height:15px;border-radius:3px;box-shadow:0 0 0 1px rgba(0,0,0,.12);flex:none;object-fit:cover}
.lang-list{position:absolute;right:0;top:calc(100% + 8px);z-index:150;list-style:none;margin:0;padding:8px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 50px -20px rgba(31,20,48,.45);min-width:240px;max-height:min(70vh,520px);overflow:auto}
.lang-list a{display:flex;align-items:center;gap:10px;padding:.55em .7em;border-radius:9px;text-decoration:none;color:var(--ink);font-weight:600;font-size:.93rem}
.lang-list a:hover{background:var(--lav);color:var(--v1)}
.lang-list a[aria-current="page"]{background:var(--v1);color:#fff}
@media (max-width:980px){.lang{margin-left:auto}.hd .btn{margin-left:8px}}
@media (max-width:700px){.lang summary .lbl{display:none}.lang summary{padding:.45em .55em}.hd .c{gap:10px}}
@media (max-width:380px){.hd .btn{display:none}}

/* hero product – flottement (modèle vcs-400.eu) */
.hero .c{gap:30px}
.hero-prod{position:relative;flex:0 0 auto;width:300px;margin-left:auto;margin-right:4%;align-self:center;isolation:isolate}
.hero-prod::before{content:"";position:absolute;left:50%;top:52%;width:480px;height:480px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.95) 0%,rgba(255,255,255,.72) 32%,rgba(235,226,242,.4) 55%,rgba(255,255,255,0) 72%);z-index:-1}
.hero-prod::after{content:"";position:absolute;left:14%;right:14%;bottom:-6px;height:24px;border-radius:50%;background:radial-gradient(ellipse,rgba(73,38,123,.38),rgba(73,38,123,0) 70%);z-index:-1}
.hero-prod img{width:100%;height:auto;animation:vlFlotte 6s ease-in-out infinite;filter:drop-shadow(0 18px 22px rgba(73,38,123,.28))}
@keyframes vlFlotte{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(-2deg)}}
@media (prefers-reduced-motion:reduce){.hero-prod img{animation:none}}
@media (max-width:980px){
  .hero .c{position:relative;flex-direction:column;align-items:stretch}
  .hero-prod{position:absolute;right:22px;top:30px;width:160px;margin:0}
  .hero-prod::before{width:280px;height:280px}
  .hero-txt{padding-right:180px}
}
@media (max-width:700px){
  .hero-prod{position:relative;right:auto;top:auto;order:-1;width:120px;margin:0 auto -4px}
  .hero-prod::before{width:230px;height:230px}
  .hero-txt{padding-right:0}
}
