/* Natural Probio, boutique. Une seule feuille, sans framework. */
:root{
  --bg:#FBF8F3;--bg2:#F4EEE4;--card:#FFFFFF;--ink:#1B2420;--ink2:#34413A;--muted:#5F6B64;--line:#E7DFD2;--line2:#D9CFBF;
  --brand:#1E6A45;--brand-d:#144B31;--brand-l:#E6F1EA;--accent:#E07A2E;--accent-l:#FDEEE2;--gold:#F0B12F;--red:#B4382C;
  --radius:18px;--radius-s:12px;--shadow:0 1px 2px rgba(27,36,32,.06),0 8px 24px rgba(27,36,32,.07);--shadow-l:0 20px 60px rgba(27,36,32,.18);
  --serif:"Fraunces",Georgia,"Times New Roman",serif;--sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --wrap:1220px;--hdr:72px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:var(--brand);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--brand-d)}
button{font:inherit;color:inherit;cursor:pointer}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:1.15;letter-spacing:-.01em;margin:0 0 .5em;color:var(--ink);font-optical-sizing:auto}
h1{font-size:clamp(32px,4.6vw,56px)}
h2{font-size:clamp(26px,3.2vw,40px)}
h3{font-size:clamp(20px,2vw,24px)}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.narrow{max-width:780px;margin:0 auto;padding:0 20px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;background:var(--ink);color:#fff;padding:10px 14px;border-radius:10px;z-index:200}
.skip:focus{top:12px}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}
.ico{width:20px;height:20px;flex:none}

/* Bandeau d'annonces */
.annc{background:var(--brand-d);color:#EAF4EE;font-size:13.5px;font-weight:500;height:38px;overflow:hidden;position:relative}
.annc-track{display:flex;flex-direction:column;animation:annc 16s infinite}
.annc-item{height:38px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;white-space:nowrap}
.annc-item span{min-width:0;overflow:hidden;text-overflow:ellipsis}.annc-item svg{flex:none}
.annc-item svg{width:16px;height:16px;opacity:.9}
.annc-item b{color:#fff}
@keyframes annc{0%,21%{transform:translateY(0)}25%,46%{transform:translateY(-38px)}50%,71%{transform:translateY(-76px)}75%,96%{transform:translateY(-114px)}100%{transform:translateY(0)}}
@media (min-width:1240px){.annc-track{flex-direction:row;justify-content:center;gap:34px;animation:none}.annc-item{height:38px}.annc-item:nth-child(n+5){display:none}}
@media (min-width:1240px) and (max-width:1499px){.annc-item:nth-child(n+4){display:none}}
@media (prefers-reduced-motion:reduce){.annc-track{animation:none}}

/* En-tête */
.hdr{position:sticky;top:0;z-index:60;background:rgba(251,248,243,.92);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s}
.hdr.scrolled{border-color:var(--line);box-shadow:0 6px 20px rgba(27,36,32,.06)}
.hdr-in{height:var(--hdr);display:flex;align-items:center;gap:18px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex:none}
.logo img{height:40px;width:auto}
.logo span{font-family:var(--serif);font-size:21px;font-weight:600;letter-spacing:-.01em}
.logo small{display:block;font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:-2px}
.nav{display:none;margin-left:12px;gap:4px;align-items:center}
.nav>li{list-style:none;position:relative}
.nav>li>a{display:flex;white-space:nowrap;align-items:center;gap:4px;padding:10px 12px;border-radius:10px;color:var(--ink);text-decoration:none;font-weight:550;font-size:15px}
.nav>li>a:hover,.nav>li>a[aria-current]{background:var(--bg2)}
.nav>li>a svg{width:14px;height:14px;opacity:.6}
.hdr-act{margin-left:auto;display:flex;align-items:center;gap:4px}
.icon-btn{position:relative;flex:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:0;background:transparent;color:var(--ink);text-decoration:none}
.icon-btn:hover{background:var(--bg2)}
.icon-btn svg{width:23px;height:23px}
.cart-count{position:absolute;top:4px;right:3px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--accent);color:#fff;font-size:11.5px;font-weight:700;line-height:19px;text-align:center;transform:scale(0);transition:transform .25s cubic-bezier(.3,1.6,.5,1)}
.cart-count.on{transform:scale(1)}
.cart-count.bump{animation:bump .5s}
@keyframes bump{30%{transform:scale(1.45)}}
.burger{display:inline-flex}
.hdr-cta{display:none}
@media (min-width:1120px){.nav{display:flex}.burger{display:none}.hdr-cta{display:inline-flex}}
@media (max-width:1119px){.logo{margin-right:auto}.logo img{height:34px}.logo span{font-size:19px}.hdr-act{margin-left:0}}

/* Méga-menu */
.mega{position:absolute;left:50%;top:100%;transform:translate(-50%,8px);width:min(860px,92vw);background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-l);padding:22px;opacity:0;visibility:hidden;transition:opacity .18s,transform .18s,visibility .18s;z-index:70}
.nav>li:hover .mega,.nav>li:focus-within .mega{opacity:1;visibility:visible;transform:translate(-50%,0)}
.mega-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.mega-p{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:14px;text-decoration:none;color:var(--ink)}
.mega-p:hover{background:var(--bg)}
.mega-p img{border-radius:12px;aspect-ratio:1;object-fit:cover;background:var(--bg2)}
.mega-p b{font-size:14px;line-height:1.3}
.mega-p span{font-size:13px;color:var(--muted)}
.mega-foot{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:14px;border-top:1px solid var(--line);font-size:14px}
.mega-cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}
.mega-cols h4{font-family:var(--sans);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.mega-cols a{display:block;padding:6px 0;color:var(--ink);text-decoration:none;font-size:14.5px}
.mega-cols a:hover{color:var(--brand)}

/* Tiroirs (menu mobile, panier) et voile */
.veil{position:fixed;inset:0;background:rgba(18,24,21,.45);opacity:0;visibility:hidden;transition:.25s;z-index:90}
.veil.on{opacity:1;visibility:visible}
.drawer{position:fixed;top:0;bottom:0;width:min(440px,100vw);background:var(--bg);z-index:100;display:flex;flex-direction:column;transition:transform .32s cubic-bezier(.2,.8,.2,1);box-shadow:var(--shadow-l)}
.drawer.right{right:0;transform:translateX(102%)}
.drawer.left{left:0;transform:translateX(-102%)}
.drawer.on{transform:none}
.drawer-h{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line);background:var(--card)}
.drawer-h b{font-family:var(--serif);font-size:22px;font-weight:600}
.drawer-b{flex:1;overflow:auto;padding:16px 18px;overscroll-behavior:contain}
.drawer-f{padding:16px 18px 18px;border-top:1px solid var(--line);background:var(--card)}
.mnav a{display:flex;justify-content:space-between;align-items:center;padding:14px 4px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:17px;font-weight:550}
.mnav .mnav-p{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:14px 0 6px}
.mnav .mnav-p a{flex-direction:column;align-items:flex-start;gap:6px;padding:8px;border:1px solid var(--line);border-radius:14px;font-size:14px;background:var(--card)}
.mnav .mnav-p img{border-radius:10px;aspect-ratio:1;object-fit:cover}
.mnav small{display:block;color:var(--muted);font-size:13px;margin-top:18px}

/* Panier */
.ship-bar{background:var(--brand-l);color:var(--brand-d);border-radius:12px;padding:10px 12px;font-size:14px;font-weight:550;display:flex;gap:8px;align-items:center;margin-bottom:14px}
.ship-bar svg{width:18px;height:18px;flex:none}
.ci{display:grid;grid-template-columns:76px 1fr auto;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);align-items:start}
.ci img{width:76px;height:76px;border-radius:12px;object-fit:cover;background:var(--bg2)}
.ci-n{font-weight:600;font-size:15px;line-height:1.3;color:var(--ink);text-decoration:none}
.ci-v{font-size:13px;color:var(--muted);margin-top:2px}
.ci-p{font-weight:700;font-size:15px;text-align:right;white-space:nowrap}
.ci-rm{border:0;background:none;color:var(--muted);font-size:12.5px;text-decoration:underline;padding:4px 0;margin-top:4px}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line2);border-radius:11px;background:var(--card);margin-top:8px;height:36px}
.qty button{width:34px;height:34px;border:0;background:none;font-size:18px;line-height:1;color:var(--ink)}
.qty input{width:34px;border:0;text-align:center;font-weight:650;background:none;-moz-appearance:textfield;font-size:15px}
.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.cart-empty{text-align:center;padding:40px 10px;color:var(--muted)}
.cart-empty svg{width:56px;height:56px;margin:0 auto 12px;color:var(--line2)}
.swap{border:1.5px dashed var(--accent);background:var(--accent-l);border-radius:14px;padding:12px 14px;margin:14px 0;font-size:14px}
.swap b{color:#8A3D0C}
.swap button{margin-top:8px}
.upsell{margin-top:18px}
.upsell h4{font-family:var(--sans);font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 10px}
.up{display:grid;grid-template-columns:56px 1fr auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--card);margin-bottom:8px}
.up img{width:56px;height:56px;border-radius:10px;object-fit:cover}
.up b{font-size:14px;line-height:1.25;display:block}
.up span{font-size:13px;color:var(--muted)}
.sum{display:flex;justify-content:space-between;font-size:15px;margin:4px 0}
.sum.total{font-size:19px;font-weight:750;margin-top:8px}
.sum .ok{color:var(--brand);font-weight:650}
.pay{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:12px}
.pay span{display:inline-flex;align-items:center;height:24px;padding:0 7px;border:1px solid var(--line2);border-radius:6px;background:#fff;font-size:10.5px;font-weight:800;letter-spacing:.02em;color:#2B3A33}
.secure{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12.5px;color:var(--muted);margin-top:10px}
.secure svg{width:14px;height:14px}

/* Boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:14px;border:0;background:var(--brand);color:#fff;font-weight:700;font-size:16.5px;text-decoration:none;letter-spacing:.005em;box-shadow:0 2px 0 var(--brand-d),0 10px 22px rgba(30,106,69,.22);transition:transform .12s,background .15s,box-shadow .15s;position:relative;overflow:hidden;white-space:nowrap}
.btn:hover{background:#185C3B;color:#fff;transform:translateY(-1px)}
.btn:active{transform:translateY(1px);box-shadow:0 1px 0 var(--brand-d)}
.btn svg{width:20px;height:20px}
.btn.block{width:100%}
.btn.big{min-height:58px;font-size:17.5px}
.btn.alt{background:var(--ink);box-shadow:0 2px 0 #000,0 10px 22px rgba(0,0,0,.15)}
.btn.alt:hover{background:#2A3630}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}
.btn.ghost:hover{background:var(--ink);color:#fff}
.btn.light{background:#fff;color:var(--brand-d);box-shadow:0 10px 22px rgba(0,0,0,.12)}
.btn.small{min-height:38px;padding:0 14px;font-size:14px;border-radius:10px;box-shadow:none}
.btn.accent{background:var(--accent);box-shadow:0 2px 0 #B85A17,0 10px 22px rgba(224,122,46,.25)}
.btn.accent:hover{background:#CC6A20}
.btn[disabled],.btn.loading{opacity:.75;pointer-events:none}
.btn.loading::after{content:"";width:18px;height:18px;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.btn.added{background:var(--brand-d)}
.link-arrow{font-weight:650;text-decoration:none;display:inline-flex;gap:6px;align-items:center}
.link-arrow::after{content:"→";transition:transform .15s}
.link-arrow:hover::after{transform:translateX(3px)}

/* Sections communes */
.sec{padding:72px 0}
.sec.tight{padding:48px 0}
.sec.alt{background:var(--bg2)}
.sec.dark{background:var(--brand-d);color:#EAF4EE}
.sec.dark h2,.sec.dark h3{color:#fff}
.sec-h{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;flex-wrap:wrap}
.sec-h h2{margin:0}
.sec-h p{margin:6px 0 0;color:var(--muted);max-width:620px}
.kicker{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}

.center{text-align:center}
.sec-h.center{justify-content:center;text-align:center}.sec-h.center p{margin-left:auto;margin-right:auto}.sec-h.center .kicker{justify-content:center}
.center .sec-h{justify-content:center;text-align:center}
.center .sec-h p{margin-left:auto;margin-right:auto}

/* Héros d'accueil */
.hero{position:relative;padding:44px 0 64px;overflow:hidden}
.hero::before{content:"";position:absolute;right:-12%;top:-30%;width:70vw;height:70vw;max-width:900px;max-height:900px;border-radius:50%;background:radial-gradient(circle,#E3EFE6 0,rgba(227,239,230,0) 66%);z-index:-1}
.hero-g{display:grid;gap:40px;align-items:center}
@media (min-width:960px){.hero-g{grid-template-columns:1.05fr 1fr}.hero{padding:64px 0 84px}}
.hero h1{font-size:clamp(38px,5.6vw,68px);line-height:1.04;margin-bottom:18px}
.hero h1 em{font-style:italic;color:var(--brand);font-weight:500}
.hero .lead{font-size:clamp(17px,1.6vw,20px);color:var(--ink2);max-width:560px;margin-bottom:26px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:26px}
.proof{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:14.5px;color:var(--ink2)}
.stars{display:inline-flex;gap:2px;color:var(--gold)}
.stars svg{width:18px;height:18px}
.proof b{color:var(--ink)}
.proof a{color:inherit}
.hero-art{position:relative;aspect-ratio:1/1.02;max-width:620px;justify-self:center;width:100%}
.hero-art .ha{position:absolute;border-radius:26px;overflow:hidden;box-shadow:var(--shadow-l);background:#fff}
.hero-art .ha img{width:100%;height:100%;object-fit:cover}
.ha1{left:0;top:6%;width:56%;aspect-ratio:1;transform:rotate(-4deg);z-index:2}
.ha2{right:0;top:0;width:50%;aspect-ratio:1;transform:rotate(3deg)}
.ha3{left:24%;bottom:0;width:54%;aspect-ratio:1;z-index:3;transform:rotate(1.5deg)}
.hero-chip{position:absolute;z-index:4;background:#fff;border-radius:16px;box-shadow:var(--shadow);padding:10px 14px;font-size:13.5px;font-weight:600;display:flex;gap:8px;align-items:center}
.hero-chip svg{width:18px;height:18px;color:var(--brand)}
.chip1{left:-2%;bottom:18%}
.chip2{right:0;top:52%}
@media (max-width:600px){.hero-chip{font-size:12px;padding:8px 10px}.chip1{left:0}}

/* Bande de réassurance */
.trustbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--card)}
.trustbar ul{list-style:none;margin:0;padding:18px 0;display:grid;grid-template-columns:repeat(2,1fr);gap:14px 18px}
@media (min-width:900px){.trustbar ul{grid-template-columns:repeat(4,1fr)}}
.trustbar li{display:flex;gap:12px;align-items:center;font-size:14px;line-height:1.35}
.trustbar li svg{width:30px;height:30px;color:var(--brand);flex:none;padding:6px;background:var(--brand-l);border-radius:10px}
.trustbar b{display:block;font-size:14.5px}
.trustbar span{color:var(--muted);font-size:13px}

/* Cartes produit */
.grid{display:grid;gap:18px;grid-template-columns:repeat(2,1fr)}
@media (min-width:900px){.grid{grid-template-columns:repeat(4,1fr);gap:22px}.grid.g3{grid-template-columns:repeat(3,1fr)}}
@media (max-width:420px){.grid{gap:12px}}
.pc{position:relative;display:flex;flex-direction:column;background:var(--card);border-radius:var(--radius);border:1px solid var(--line);overflow:hidden;transition:box-shadow .2s,transform .2s}
.pc:hover{box-shadow:var(--shadow-l);transform:translateY(-3px)}
.pc-img{position:relative;display:block;aspect-ratio:1;background:var(--pt,#F6F1E8);overflow:hidden}
.pc-img img{width:100%;height:100%;object-fit:cover;transition:opacity .35s,transform .5s}
.pc-img img+img{position:absolute;inset:0;opacity:0}
.pc:hover .pc-img img+img{opacity:1}
.pc:hover .pc-img img:first-child{transform:scale(1.03)}
.badge{position:absolute;left:10px;top:10px;z-index:2;background:var(--ink);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.03em;padding:5px 9px;border-radius:999px}
.badge.b-acc{background:var(--accent)}
.badge.b-brand{background:var(--brand)}
.badge.top{background:#E47911;color:#fff;border-radius:3px 0 0 3px;padding:6px 18px 6px 10px;letter-spacing:.02em;clip-path:polygon(0 0,100% 0,calc(100% - 9px) 50%,100% 100%,0 100%);box-shadow:none}
.gal-stage>.badge{left:16px;top:16px;font-size:13px}
.badge.save{left:auto;right:10px;background:#fff;color:var(--red);box-shadow:var(--shadow)}
.pc-b{padding:14px 14px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.pc-cat{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.pc-t{font-family:var(--serif);font-size:18px;font-weight:600;line-height:1.22;color:var(--ink);text-decoration:none}
.pc-t::after{content:"";position:absolute;inset:0;z-index:1}
.pc-promise{font-size:13.5px;color:var(--muted);line-height:1.4}
.pc-f{margin-top:auto;padding-top:8px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.price{font-weight:750;font-size:18px;color:var(--ink)}
.price small{font-weight:500;font-size:12.5px;color:var(--muted)}
.price s{font-weight:500;color:var(--muted);font-size:14px;margin-left:6px}
.pc-add{position:relative;z-index:2;width:42px;height:42px;border-radius:12px;border:0;background:var(--brand);color:#fff;display:inline-flex;align-items:center;justify-content:center;transition:transform .12s,background .15s}
.pc-add:hover{background:var(--brand-d);transform:scale(1.06)}
.pc-add svg{width:20px;height:20px}
.pc-add.done{background:var(--accent)}
@media (max-width:420px){.pc-t{font-size:16px}.pc-promise{display:none}.pc-b{padding:12px}}

/* Fiche produit */
.crumbs{font-size:13px;color:var(--muted);padding-top:14px;padding-bottom:6px}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.crumbs li+li::before{content:"/";margin-right:6px;opacity:.5}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--ink)}
.pdp{display:grid;gap:34px;padding:10px 0 40px}
@media (min-width:980px){.pdp{grid-template-columns:1.1fr 1fr;gap:56px}.pdp-info{position:sticky;top:96px;align-self:start}}
.gal{position:relative}.gal-stage{position:relative}
.gal-main{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:24px;background:var(--pt,#F6F1E8);scrollbar-width:none;aspect-ratio:1}
.gal-main::-webkit-scrollbar{display:none}
.gal-main figure{flex:0 0 100%;scroll-snap-align:center;margin:0;cursor:zoom-in}
.gal-main img{width:100%;height:100%;object-fit:cover}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.95);box-shadow:var(--shadow);display:none;align-items:center;justify-content:center}
.gal-nav svg{width:20px;height:20px}
.gal-prev{left:12px}.gal-next{right:12px}
@media (hover:hover){.gal-nav{display:inline-flex}}
.gal-dots{position:absolute;bottom:14px;left:0;right:0;display:flex;gap:6px;justify-content:center}
.gal-dots i{width:7px;height:7px;border-radius:50%;background:rgba(27,36,32,.25);transition:.2s}
.gal-dots i.on{width:20px;border-radius:4px;background:var(--ink)}
.gal-th{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:12px}
.gal-th button{padding:0;border:2px solid transparent;border-radius:14px;overflow:hidden;background:var(--bg2);aspect-ratio:1}
.gal-th button.on{border-color:var(--ink)}
.gal-th img{width:100%;height:100%;object-fit:cover}
@media (max-width:600px){.gal-th{display:none}.gal-main{border-radius:18px}}
.pdp-info h1{font-size:clamp(28px,3.4vw,42px);margin-bottom:10px}
.pdp-rate{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink2);margin-bottom:12px;flex-wrap:wrap}
.pdp-rate a{color:inherit}
.pdp-promise{font-size:18px;color:var(--ink2);margin-bottom:16px}
.pdp-price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:6px 0 4px}
.pdp-price .price{font-size:30px;font-family:var(--sans)}
.pdp-price .tax{font-size:13.5px;color:var(--muted)}
.save-tag{display:inline-flex;background:#FBE9E6;color:var(--red);font-weight:700;font-size:13px;padding:4px 10px;border-radius:999px}
.ticks{list-style:none;padding:0;margin:16px 0 20px;display:grid;gap:9px}
.ticks li{display:flex;gap:10px;align-items:flex-start;font-size:15.5px}
.ticks li svg{width:20px;height:20px;color:var(--brand);flex:none;margin-top:2px}
.opt-l{font-size:14px;font-weight:650;margin:16px 0 8px;display:flex;justify-content:space-between}
.opt-l span{font-weight:500;color:var(--muted)}
.pills{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.pill{position:relative;text-align:left;border:1.5px solid var(--line2);background:var(--card);border-radius:14px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}
.pill b{display:block;font-size:16px}
.pill span{display:block;font-size:13px;color:var(--muted);line-height:1.3;margin-top:2px}
.pill em{position:absolute;right:12px;top:12px;font-style:normal;font-weight:700;font-size:14px}
.pill[aria-checked="true"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:#FFFDF9}
.buy-row{display:grid;grid-template-columns:auto 1fr;gap:10px;margin-top:18px}
.buy-row .qty{margin:0;height:58px;border-radius:14px}
.buy-row .qty button{width:42px;height:56px}
.buy-now{margin-top:10px}
.eta{display:flex;gap:12px;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-top:16px;font-size:14.5px}
.eta svg{width:22px;height:22px;color:var(--brand);flex:none;margin-top:1px}
.eta b{color:var(--ink)}
.guar{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}
.guar div{text-align:center;font-size:12.5px;line-height:1.3;color:var(--ink2);background:var(--bg2);border-radius:12px;padding:12px 6px}
.guar svg{width:22px;height:22px;margin:0 auto 6px;color:var(--brand)}
.acc{margin-top:18px;border-top:1px solid var(--line)}
.acc details{border-bottom:1px solid var(--line)}
.acc summary{list-style:none;cursor:pointer;padding:16px 2px;font-weight:650;display:flex;justify-content:space-between;align-items:center;gap:10px}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";font-size:22px;font-weight:400;transition:transform .2s;color:var(--muted)}
.acc details[open] summary::after{transform:rotate(45deg)}
.acc .acc-b{padding:0 2px 16px;color:var(--ink2);font-size:15px}
.acc .acc-b ul{padding-left:18px;margin:0}
.acc .acc-b li{margin:4px 0}

/* Barre d'achat collante */
.sticky-buy{position:fixed;left:0;right:0;bottom:0;z-index:80;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line);box-shadow:0 -10px 30px rgba(27,36,32,.1);transform:translateY(110%);transition:transform .3s cubic-bezier(.2,.8,.2,1);padding:10px 0 calc(10px + env(safe-area-inset-bottom))}
.sticky-buy.on{transform:none}
.sticky-buy .wrap{display:flex;align-items:center;gap:14px}
.sticky-buy img{width:48px;height:48px;border-radius:10px;object-fit:cover}
.sb-t{flex:1;min-width:0}
.sb-t b{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-t span{font-size:14px;color:var(--muted)}
.sticky-buy .btn{min-height:48px;padding:0 20px}
@media (max-width:600px){.sticky-buy img,.sb-t span{display:none}.sb-t b{font-size:14px}.sticky-buy .btn{flex:1.3}}

/* Blocs éditoriaux et produit */
.feat{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.feat>div{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.feat svg{width:40px;height:40px;color:var(--brand);background:var(--brand-l);padding:8px;border-radius:12px;margin-bottom:12px}
.feat h3{font-size:20px;margin-bottom:6px}
.feat p{margin:0;color:var(--muted);font-size:15px}
.steps{counter-reset:s;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.steps>div{position:relative;background:var(--card);border-radius:var(--radius);padding:26px 22px 22px;border:1px solid var(--line)}
.steps>div::before{counter-increment:s;content:counter(s);position:absolute;top:-16px;left:22px;width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:18px;box-shadow:0 6px 14px rgba(224,122,46,.35)}
.steps h3{font-size:19px;margin:6px 0}
.steps p{margin:0;color:var(--muted);font-size:15px}
.split{display:grid;gap:36px;align-items:center}
@media (min-width:900px){.split{grid-template-columns:1fr 1fr;gap:64px}.split.rev>:first-child{order:2}}
.split img{border-radius:24px;box-shadow:var(--shadow)}
.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:var(--card);margin:20px 0}
.tbl table{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}
.tbl th,.tbl td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.tbl th{background:var(--bg2);font-weight:650;font-size:14px}
.tbl tr:last-child td{border-bottom:0}
.bundle{display:grid;gap:20px;align-items:center;background:linear-gradient(135deg,#FFF7EE,#FDEEE2);border:1px solid #F5D8BE;border-radius:24px;padding:22px}
@media (min-width:800px){.bundle{grid-template-columns:220px 1fr auto;padding:26px 30px}}
.bundle img{border-radius:18px;width:100%;max-width:220px;aspect-ratio:1;object-fit:cover}
.bundle h3{margin-bottom:6px}
.bundle p{margin:0 0 6px;color:var(--ink2)}
.bundle .price{font-size:24px}

/* Choix du ferment (quiz) */
.quiz{background:var(--card);border:1px solid var(--line);border-radius:26px;padding:clamp(20px,4vw,40px);box-shadow:var(--shadow)}
.quiz-q{font-family:var(--serif);font-size:clamp(22px,2.6vw,30px);font-weight:600;margin-bottom:6px}
.quiz-s{color:var(--muted);margin-bottom:18px}
.quiz-o{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.quiz-o button{display:flex;gap:14px;align-items:center;text-align:left;border:1.5px solid var(--line2);background:var(--bg);border-radius:16px;padding:14px 16px;font-size:15.5px;font-weight:600;transition:.15s}
.quiz-o button:hover{border-color:var(--ink);background:#fff;transform:translateY(-2px)}
.quiz-o button i{font-style:normal;font-size:26px;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--bg2);flex:none}
.quiz-o button span{display:block;font-weight:450;font-size:13.5px;color:var(--muted)}
.quiz-r{display:grid;gap:22px;align-items:center}
@media (min-width:760px){.quiz-r{grid-template-columns:260px 1fr}}
.quiz-r img{border-radius:20px;aspect-ratio:1;object-fit:cover;width:100%}
.quiz-prog{height:4px;background:var(--bg2);border-radius:4px;margin-bottom:20px;overflow:hidden}
.quiz-prog i{display:block;height:100%;background:var(--accent);transition:width .3s}
.quiz-back{border:0;background:none;color:var(--muted);text-decoration:underline;font-size:14px;margin-top:14px;padding:0}

/* Témoignage de marque, bande Trustpilot */
.tp{display:flex;flex-wrap:wrap;gap:18px 40px;align-items:center;justify-content:center;text-align:center}
.tp-big{font-family:var(--serif);font-size:58px;line-height:1;font-weight:600;color:#fff}
.tp .stars svg{width:26px;height:26px}
.tp p{margin:6px 0 0;opacity:.85}

/* Guides et articles */
.cards{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}
.card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--ink);transition:box-shadow .2s,transform .2s}
.card:hover{box-shadow:var(--shadow-l);transform:translateY(-3px);color:var(--ink)}
.card-top{height:8px;background:var(--ct,var(--brand))}
.card-b{padding:20px;display:flex;flex-direction:column;gap:8px;flex:1}
.card-k{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ct,var(--brand))}
.card h3{font-size:19px;margin:0}
.card p{font-size:14.5px;color:var(--muted);margin:0}
.card .link-arrow{margin-top:auto;padding-top:8px;font-size:14.5px;color:var(--brand)}
.art-h{padding:26px 0 10px}
.art-h h1{font-size:clamp(32px,4.4vw,52px);max-width:900px}
.art-h .lead{font-size:19px;color:var(--ink2);max-width:760px}
.meta{display:flex;gap:16px;flex-wrap:wrap;font-size:13.5px;color:var(--muted);margin-top:10px}
.art-g{display:grid;gap:40px;padding:20px 0 60px}
@media (min-width:1080px){.art-g{grid-template-columns:minmax(0,1fr) 320px}.aside{position:sticky;top:100px;align-self:start}}
.prose{font-size:17.5px;line-height:1.72;color:var(--ink2);max-width:760px}
.prose h2{font-size:clamp(25px,2.6vw,32px);margin:1.8em 0 .55em;color:var(--ink)}
.prose h3{font-size:21px;margin:1.5em 0 .4em;color:var(--ink)}
.prose ul,.prose ol{padding-left:1.25em}
.prose li{margin:.35em 0}
.prose li::marker{color:var(--accent)}
.prose strong{color:var(--ink)}
.prose blockquote{margin:1.4em 0;padding:16px 20px;border-left:4px solid var(--accent);background:var(--accent-l);border-radius:0 14px 14px 0;color:var(--ink)}
.prose figure{margin:1.6em 0}
.prose figure img{border-radius:18px}
.prose figcaption{font-size:14px;color:var(--muted);margin-top:8px}
.prose hr{border:0;border-top:1px solid var(--line);margin:2em 0}
.quick{background:var(--card);border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:16px;padding:18px 22px;margin:0 0 1.6em;font-size:16.5px}
.quick b:first-child{display:block;font-family:var(--sans);font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--brand);margin-bottom:6px}
.quick p:last-child{margin:0}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:1.2em 0 1.6em}
.facts div{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.facts b{display:block;font-family:var(--serif);font-size:24px;color:var(--ink);line-height:1.1}
.facts span{font-size:13px;color:var(--muted)}
.tip{background:var(--brand-l);border-radius:16px;padding:16px 20px;margin:1.4em 0;color:var(--brand-d);font-size:16px}
.tip b:first-child{margin-right:6px}
.toc{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px 20px;font-size:14.5px}
.toc b{display:block;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.toc ol{margin:0;padding-left:18px}
.toc li{margin:6px 0}
.toc a{color:var(--ink2);text-decoration:none}
.toc a:hover{color:var(--brand)}
.toc a.on{color:var(--brand);font-weight:650}
.side-buy{margin-top:16px;background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden}
.side-buy img{aspect-ratio:1.4;object-fit:cover;width:100%;background:var(--bg2)}
.side-buy div{padding:16px}
.side-buy b{display:block;font-family:var(--serif);font-size:19px;line-height:1.25;margin-bottom:4px}
.side-buy p{font-size:14px;color:var(--muted);margin:0 0 12px}
.inline-buy{display:grid;grid-template-columns:110px 1fr;gap:16px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:14px;margin:1.8em 0;box-shadow:var(--shadow)}
.inline-buy img{border-radius:14px;aspect-ratio:1;object-fit:cover}
.inline-buy b{display:block;font-family:var(--serif);font-size:19px;line-height:1.25;color:var(--ink)}
.inline-buy p{font-size:14.5px;margin:4px 0 10px;color:var(--muted);line-height:1.45}
.inline-buy .ib-f{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
@media (max-width:520px){.inline-buy{grid-template-columns:84px 1fr}.inline-buy .btn{width:100%}}
.cta-band{background:var(--brand-d);color:#EAF4EE;border-radius:28px;padding:clamp(26px,5vw,52px);display:grid;gap:24px;align-items:center;position:relative;overflow:hidden}
.cta-band::after{content:"";position:absolute;right:-80px;top:-80px;width:280px;height:280px;border-radius:50%;background:rgba(255,255,255,.06)}
@media (min-width:860px){.cta-band{grid-template-columns:1.4fr 1fr}}
.cta-band h2{color:#fff;margin-bottom:8px}
.cta-band p{margin:0;opacity:.9}
.cta-band .cb-p{display:flex;gap:12px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:16px;margin-bottom:10px;padding:0 18px}
.faq summary{cursor:pointer;list-style:none;padding:17px 0;font-weight:650;font-size:16.5px;display:flex;justify-content:space-between;gap:14px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:22px;font-weight:400;color:var(--muted);transition:transform .2s;line-height:1}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details>div,.faq details>p{padding:0 0 16px;margin:0;color:var(--ink2)}
.recipe-box{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:22px;margin:1.6em 0}
.recipe-box h2{margin-top:0!important}
.recipe-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.recipe-meta span{background:var(--bg2);border-radius:999px;padding:6px 12px;font-size:13.5px;font-weight:600}

/* Formulaires */
.form{display:grid;gap:14px;max-width:620px}
.form label{display:grid;gap:6px;font-weight:600;font-size:14.5px}
.form input,.form textarea,.form select{font:inherit;padding:13px 14px;border:1.5px solid var(--line2);border-radius:12px;background:#fff;color:var(--ink)}
.form input:focus,.form textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-l)}
.form .hp{position:absolute;left:-9999px}
.form-msg{padding:12px 14px;border-radius:12px;font-weight:550}
.form-msg.ok{background:var(--brand-l);color:var(--brand-d)}
.form-msg.err{background:#FBE9E6;color:var(--red)}

/* Recherche */
.search{position:fixed;inset:0;z-index:120;background:rgba(18,24,21,.5);display:none;align-items:flex-start;justify-content:center;padding:70px 16px 16px}
.search.on{display:flex}
.search-box{width:min(680px,100%);background:var(--bg);border-radius:22px;box-shadow:var(--shadow-l);overflow:hidden}
.search-in{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);background:#fff}
.search-in svg{width:22px;height:22px;color:var(--muted)}
.search-in input{flex:1;border:0;font:inherit;font-size:18px;outline:none;background:none}
.search-r{max-height:60vh;overflow:auto;padding:8px}
.search-r a{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;color:var(--ink);text-decoration:none}
.search-r a:hover,.search-r a.on{background:var(--bg2)}
.search-r img{width:44px;height:44px;border-radius:10px;object-fit:cover}
.search-r small{display:block;color:var(--muted);font-size:12.5px}
.search-r p{padding:14px;color:var(--muted);margin:0}

/* Lightbox */
.lb{position:fixed;inset:0;z-index:130;background:rgba(10,14,12,.92);display:none;align-items:center;justify-content:center}
.lb.on{display:flex}
.lb img{max-width:94vw;max-height:88vh;border-radius:12px}
.lb button{position:absolute;top:14px;right:14px;width:48px;height:48px;border-radius:50%;border:0;background:#fff}

/* Toast */
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,140%);background:var(--ink);color:#fff;padding:12px 18px;border-radius:14px;font-weight:600;font-size:14.5px;z-index:140;transition:transform .3s;box-shadow:var(--shadow-l)}
.toast.on{transform:translate(-50%,0)}

/* Pied de page */
.foot{background:#16211C;color:#BFCBC4;padding:60px 0 0;margin-top:0}
.foot a{color:#DCE6E0;text-decoration:none}
.foot a:hover{color:#fff;text-decoration:underline}
.foot-g{display:grid;gap:34px;grid-template-columns:1fr 1fr}
@media (min-width:900px){.foot-g{grid-template-columns:1.5fr 1fr 1fr 1fr}}
.foot-g>div:first-child{grid-column:1/-1}
@media (min-width:900px){.foot-g>div:first-child{grid-column:auto}}
.foot h4{font-family:var(--sans);font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:#8FA197;margin:0 0 14px}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:14.5px}
.foot .flogo{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.foot .flogo img{height:36px;width:auto}
.foot .flogo b{font-family:var(--serif);font-size:22px;color:#fff;font-weight:600}
.foot p{font-size:14.5px;max-width:380px}
.foot-b{border-top:1px solid #2B3832;margin-top:44px;padding:20px 0 26px;display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;align-items:center;font-size:13px}
.foot-b ul{display:flex;flex-wrap:wrap;gap:8px 18px}
.foot .pay{justify-content:flex-start;margin:0}
.foot .pay span{background:#fff}
body.has-sticky .foot{padding-bottom:70px}

/* Divers */
.pill-tag{display:inline-flex;gap:6px;align-items:center;background:var(--bg2);border-radius:999px;padding:6px 12px;font-size:13.5px;font-weight:600;margin:0 6px 6px 0;color:var(--ink2);text-decoration:none}
a.pill-tag:hover{background:var(--line)}
.note{font-size:13.5px;color:var(--muted)}
.hide{display:none!important}
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s,transform .6s}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}*{scroll-behavior:auto!important}}
.err404{text-align:center;padding:80px 0}
.err404 b{font-family:var(--serif);font-size:120px;line-height:1;color:var(--brand)}
.thanks{text-align:center;padding:40px 0 10px}
.thanks .ok-ico{width:84px;height:84px;margin:0 auto 18px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;animation:pop .5s cubic-bezier(.3,1.6,.5,1)}
.thanks .ok-ico svg{width:44px;height:44px}
@keyframes pop{from{transform:scale(.3);opacity:0}}
.order-box{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px;text-align:left;max-width:560px;margin:24px auto}

/* ===== Accueil spectaculaire ===== */
.xhero{position:relative;overflow:hidden;background:radial-gradient(120% 90% at 85% 10%,#2A7A52 0,#174D34 45%,#0F3323 100%);color:#EAF4EE;padding:56px 0 70px;isolation:isolate}
.xhero{border-radius:0 0 clamp(28px,5vw,64px) clamp(28px,5vw,64px)}
.xhero-g{display:grid;gap:30px;align-items:center}
@media (min-width:980px){.xhero-g{grid-template-columns:1.02fr 1fr;gap:40px}.xhero{padding-top:70px;padding-bottom:80px}}
.xhero h1{color:#fff;font-size:clamp(40px,6.2vw,80px);line-height:1.02;margin-bottom:20px;letter-spacing:-.02em}
.xhero h1 .rot{display:inline-grid;vertical-align:bottom;color:#F6C08F;font-style:italic;font-weight:500}
.xhero h1 .rot span{grid-area:1/1;opacity:0;transform:translateY(40%);transition:opacity .5s,transform .5s}
.xhero h1 .rot span.on{opacity:1;transform:none}
.xhero .lead{color:#D6E7DC;font-size:clamp(17px,1.7vw,21px);max-width:560px;margin-bottom:28px}
.xhero .kicker{color:#F6C08F}
.xhero .btn.light{color:var(--brand-d)}
.xhero .btn.ghost{color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.6)}
.xhero .btn.ghost:hover{background:#fff;color:var(--brand-d)}
.xhero .proof{color:#CFE2D6;margin-top:22px}
.xhero .proof b{color:#fff}
.xhero .proof a{color:#fff}
.bubbles{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.bubbles i{position:absolute;bottom:-60px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.55),rgba(255,255,255,.08) 60%,rgba(255,255,255,0) 70%);border:1px solid rgba(255,255,255,.18);animation:rise linear infinite}
@keyframes rise{0%{transform:translate(0,0) scale(.6);opacity:0}10%{opacity:.9}100%{transform:translate(var(--dx,20px),-110vh) scale(1.1);opacity:0}}
@media (prefers-reduced-motion:reduce){.bubbles{display:none}}
.xstage{position:relative;aspect-ratio:1/1.05;max-width:600px;width:100%;justify-self:center}
.xstage .glow{position:absolute;inset:8% 6% 14% 6%;border-radius:50%;background:radial-gradient(circle,rgba(246,192,143,.35),rgba(246,192,143,0) 65%)}
.xstage .main{position:absolute;left:12%;right:12%;top:6%;border-radius:32px;overflow:hidden;box-shadow:0 40px 80px rgba(0,0,0,.35);transform:rotate(-2deg);animation:float 7s ease-in-out infinite}
.xstage .main img{width:100%;height:auto}
@keyframes float{50%{transform:rotate(-2deg) translateY(-12px)}}
.fcard{position:absolute;z-index:3;display:flex;align-items:center;gap:10px;background:#fff;color:var(--ink);border-radius:18px;padding:10px 14px 10px 10px;box-shadow:0 18px 40px rgba(0,0,0,.25);font-size:13.5px;line-height:1.25;text-decoration:none;animation:float2 6s ease-in-out infinite}
.fcard:hover{color:var(--ink)}
.fcard img{width:46px;height:46px;border-radius:12px;object-fit:cover}
.fcard b{display:block;font-size:14px}
.fcard span{color:var(--muted)}
.fcard .fp{margin-left:6px;font-weight:800;color:var(--brand)}
@keyframes float2{50%{transform:translateY(-8px)}}
.fc1{left:-2%;top:62%;animation-delay:-2s}
.fc2{right:-2%;top:16%;animation-delay:-4s}
.fc3{right:2%;bottom:6%}
.eta-chip{position:absolute;left:4%;top:4%;z-index:3;background:var(--accent);color:#fff;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:700;box-shadow:0 10px 24px rgba(224,122,46,.4);display:flex;gap:6px;align-items:center}
.eta-chip svg{width:16px;height:16px}
@media (max-width:600px){.fcard{font-size:12px;padding:8px 10px 8px 8px}.fcard img{width:38px;height:38px}.fc1{left:0}.fc2{right:0}.fc3{display:none}}
/* bandeau défilant */
.marquee{background:var(--bg);overflow:hidden;border-bottom:1px solid var(--line);position:relative;margin-top:8px}
.marquee-t{display:flex;width:max-content;animation:marq 38s linear infinite}
.marquee:hover .marquee-t{animation-play-state:paused}
.marquee span{display:inline-flex;align-items:center;gap:14px;padding:18px 26px;font-family:var(--serif);font-size:clamp(18px,2vw,24px);font-weight:500;white-space:nowrap;color:var(--ink)}
.marquee span::after{content:"";width:9px;height:9px;border-radius:50%;background:var(--accent);margin-left:26px}
@keyframes marq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marquee-t{animation:none}}
/* sélecteur de ferment à onglets */
.ftabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:4px;margin:0 -4px 22px}
.ftabs::-webkit-scrollbar{display:none}
.ftabs button{flex:none;display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--line2);background:var(--card);border-radius:999px;padding:10px 18px;font-weight:650;font-size:15px;transition:.2s}
.ftabs button svg{width:20px;height:20px}
.ftabs button[aria-selected="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.fpanel{display:none;grid-template-columns:1fr;gap:0;background:var(--card);border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}
.fpanel.on{display:grid;animation:fade .45s}
@keyframes fade{from{opacity:0;transform:translateY(10px)}}
@media (min-width:900px){.fpanel{grid-template-columns:1fr 1.05fr}}
.fpanel-img{background:var(--pt);position:relative;min-height:320px}
.fpanel-img img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.fpanel-b{padding:clamp(22px,4vw,46px);display:flex;flex-direction:column;gap:14px}
.fpanel-b h3{font-size:clamp(28px,3.2vw,40px);margin:0}
.fpanel-b p{margin:0;color:var(--ink2);font-size:17px}
.meters{display:grid;gap:10px;margin:6px 0}
.meter{display:grid;grid-template-columns:110px 1fr;gap:12px;align-items:center;font-size:14px;color:var(--muted)}
.meter i{display:block;height:8px;border-radius:8px;background:var(--bg2);position:relative;overflow:hidden}
.meter i::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--v);background:var(--mc,var(--brand));border-radius:8px;transition:width .8s cubic-bezier(.2,.8,.2,1)}
.fpanel-f{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:auto;padding-top:8px}
.fpanel-f .price{font-size:26px}
/* calculateur */
.calc{display:grid;gap:26px;align-items:center;background:linear-gradient(135deg,#FFF6EC,#FDEADB);border:1px solid #F5D8BE;border-radius:30px;padding:clamp(22px,4vw,48px)}
@media (min-width:900px){.calc{grid-template-columns:1fr 1fr}}
.calc input[type=range]{width:100%;accent-color:var(--accent);height:30px}
.calc-l{display:flex;justify-content:space-between;font-weight:650;margin-bottom:6px}
.calc-out{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.calc-out div{background:#fff;border-radius:20px;padding:18px;box-shadow:var(--shadow)}
.calc-out b{display:block;font-family:var(--serif);font-size:clamp(30px,4vw,46px);line-height:1;color:var(--ink)}
.calc-out span{font-size:13.5px;color:var(--muted)}
.calc-out .big{grid-column:1/-1;background:var(--brand-d);color:#EAF4EE}
.calc-out .big b{color:#fff}
.calc-out .big span{color:#CFE2D6}
/* chronologie 24 h */
.tl{position:relative;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
@media (min-width:900px){.tl::before{content:"";position:absolute;left:0;right:0;top:27px;height:3px;background:linear-gradient(90deg,var(--accent),var(--brand));border-radius:3px}}
.tl>div{position:relative;padding-top:66px}
.tl>div::before{content:attr(data-h);position:absolute;top:0;left:0;width:56px;height:56px;border-radius:50%;background:#fff;border:3px solid var(--accent);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;color:var(--ink);box-shadow:var(--shadow)}
.tl>div:last-child::before{background:var(--brand);border-color:var(--brand);color:#fff}
.tl h3{font-size:19px;margin-bottom:4px}
.tl p{margin:0;color:var(--muted);font-size:15px}
/* mosaïque */
.bento{display:grid;gap:16px;grid-template-columns:1fr}
@media (min-width:760px){.bento{grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(150px,auto)}.b1{grid-column:span 3;grid-row:span 2}.b2{grid-column:span 3}.b3{grid-column:span 3}.b4{grid-column:span 2}.b5{grid-column:span 2}.b6{grid-column:span 2}}
.bento>div{position:relative;border-radius:26px;padding:26px;overflow:hidden;background:var(--card);border:1px solid var(--line)}
.bento h3{font-size:22px;margin:0 0 6px}
.bento p{margin:0;color:var(--muted);font-size:15px}
.bento .b1{background:var(--brand-d);color:#EAF4EE;border:0;display:grid;grid-template-columns:1fr;gap:22px;align-content:end;min-height:340px}
.bento .b1 h3{color:#fff;font-size:clamp(26px,3vw,36px)}
.bento .b1 p{color:#CFE2D6;font-size:16.5px}
.bento .b1 img{width:min(78%,300px);border-radius:22px;transform:rotate(4deg);box-shadow:0 30px 60px rgba(0,0,0,.35);justify-self:end;margin:-6px -4px 0 0}
.bento .b1 .bt{position:relative}
@media (max-width:759px){.bento .b1 img{justify-self:center;width:70%}}
.bento .num{font-family:var(--serif);font-size:54px;line-height:1;color:var(--accent);font-weight:600;margin-bottom:8px}
.bento .b2{background:var(--accent-l);border-color:#F5D8BE}
.bento svg.bi{width:34px;height:34px;color:var(--brand);margin-bottom:10px}
.bento>div>svg{width:36px;height:36px;color:var(--brand);margin-bottom:12px;display:block;background:var(--brand-l);padding:7px;border-radius:12px}
.fcard .stars svg{width:14px;height:14px}
@media (max-width:1119px){.hdr-in{gap:6px}.wrap.hdr-in{padding:0 12px}}
@media (max-width:420px){.logo span{font-size:17px}.logo small{font-size:10px}.icon-btn{width:40px}.logo img{height:30px}}
.art-g>*,.split>*,.pdp>*,.hero-g>*,.xhero-g>*,.quiz-r>*,.fpanel>*{min-width:0}
.prose img,.prose table{max-width:100%}

/* ===== Avis ===== */
.rstars{--r:100%;display:inline-block;position:relative;font-size:17px;line-height:1;letter-spacing:2px;color:#E2D9C9;vertical-align:-2px}
.rstars::before{content:"★★★★★"}
.rstars::after{content:"★★★★★";position:absolute;left:0;top:0;width:var(--r);overflow:hidden;color:var(--gold)}
.rbadge{display:inline-flex;align-items:center;gap:6px;color:var(--ink2);text-decoration:none;font-size:14px;margin-left:4px;padding-left:10px;border-left:1px solid var(--line2)}
.rbadge:hover{color:var(--ink)}
.rev-g{display:grid;gap:30px}
@media (min-width:900px){.rev-g{grid-template-columns:330px 1fr;gap:50px}.rev-sum{position:sticky;top:100px;align-self:start}}
.rev-big{display:flex;align-items:center;gap:12px;margin:8px 0 14px}
.rev-big b{font-family:var(--serif);font-size:56px;line-height:1}
.rev-big .rstars{font-size:22px}
.rev-big span:last-child{color:var(--muted);font-size:14px}
.rev-dist{display:grid;gap:6px;margin-bottom:18px}
.rev-dist div{display:grid;grid-template-columns:34px 1fr 26px;gap:8px;align-items:center;font-size:13px;color:var(--muted)}
.rev-dist i{height:8px;border-radius:8px;background:var(--bg2);position:relative;overflow:hidden}
.rev-dist i::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--v);background:var(--gold);border-radius:8px}
.rev{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px 20px;margin-bottom:12px}
.rev h3{font-family:var(--sans);font-size:16.5px;font-weight:700;margin:8px 0 4px}
.rev p{margin:0;color:var(--ink2);font-size:15.5px}
.rev-m{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;margin-top:10px;font-size:13.5px;color:var(--muted)}
.rev-m b{color:var(--ink)}
.vbadge{display:inline-flex;align-items:center;gap:4px;background:var(--brand-l);color:var(--brand-d);font-weight:650;font-size:12px;padding:3px 8px;border-radius:999px}
.vbadge::before{content:"✓"}
.rev-reply{margin-top:12px;padding:12px 14px;background:var(--bg);border-left:3px solid var(--brand);border-radius:0 12px 12px 0;font-size:14.5px}
.rev-reply b{display:block;font-size:13px;margin-bottom:4px}
.rev-form{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;margin-bottom:16px;max-width:none}
.rate{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;gap:4px}
.rate input{position:absolute;opacity:0;width:1px;height:1px}
.rate label{font-size:34px;line-height:1;color:#E2D9C9;cursor:pointer;transition:color .1s;display:block}
.rate input:checked~label,.rate label:hover,.rate label:hover~label{color:var(--gold)}
.rate input:focus-visible+label{outline:3px solid var(--accent);border-radius:6px}
.pc-rate{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--muted)}
.pc-rate .rstars{font-size:13px;letter-spacing:1px}
/* Trustpilot */
.tp2{background:linear-gradient(180deg,var(--bg) 0,#F1F7F3 100%)}
.tp2-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}
.tp2-head h2{margin:0}
.tp2-head p{margin:6px 0 0;color:var(--muted)}
.tp2-score{display:grid;justify-items:center;gap:4px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:14px 26px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow)}
.tp2-score b{font-family:var(--serif);font-size:44px;line-height:1}
.tp2-score .stars svg{width:20px;height:20px}
.tp2-score span:last-child{font-size:13px;color:var(--muted)}
.tp2-cards{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 14px;scrollbar-width:thin}
.tpc{scroll-snap-align:start;display:flex;flex-direction:column;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px;text-decoration:none;color:var(--ink);transition:box-shadow .2s,transform .2s;min-height:230px}
.tpc:hover{box-shadow:var(--shadow-l);transform:translateY(-3px);color:var(--ink)}
.tpc .stars svg{width:17px;height:17px}
.tpc b{font-size:16px;line-height:1.3}
.tpc p{margin:0;font-size:14.5px;color:var(--ink2);flex:1}
.tpc-m{font-size:13px;color:var(--ink);font-weight:600}
.tpc-src{font-size:12px;color:var(--muted)}
.dq{margin:14px 0 4px;padding:12px 14px;background:var(--bg);border-radius:14px;text-align:center}
.dq .stars svg{width:14px;height:14px}
.dq .stars{justify-content:center}
.dq blockquote{margin:6px 0 4px;font-size:14px;font-style:italic;color:var(--ink2)}
.dq figcaption{font-size:12px;color:var(--muted)}

/* ===== Temps forts ===== */
.occ{padding:34px 0 6px}
.occ-box{display:grid;gap:24px;align-items:center;background:linear-gradient(120deg,#FFF3E6 0,#FCE6D3 55%,#F9DCC4 100%);border:1px solid #F3CFAE;border-radius:28px;padding:clamp(22px,4vw,40px);position:relative;overflow:hidden}
.occ-box::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.35)}
@media (min-width:900px){.occ-box{grid-template-columns:1fr 1.15fr}}
.occ-t h2{margin-bottom:8px}
.occ-t p{color:var(--ink2);margin-bottom:16px;max-width:520px}
.occ-p{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;position:relative;z-index:1}
@media (max-width:600px){.occ-p{grid-template-columns:repeat(2,1fr)}}
.occ-card{display:flex;flex-direction:column;gap:4px;background:#fff;border-radius:16px;padding:8px 8px 12px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:transform .2s}
.occ-card:hover{transform:translateY(-3px);color:var(--ink)}
.occ-card img{border-radius:12px;aspect-ratio:1;object-fit:cover;width:100%}
.occ-card b{font-size:13.5px;line-height:1.25}
.occ-card span{font-size:13.5px;font-weight:700}
.occ-card s{color:var(--muted);font-weight:500;margin-right:3px}
.occ-chip{display:inline-flex;align-items:center;gap:8px;background:var(--accent-l);color:#8A3D0C;border:1px solid #F5D8BE;border-radius:999px;padding:7px 14px;font-size:13.5px;font-weight:650;margin:10px 0 2px}
.occ-chip svg{width:16px;height:16px}
.sum.ok{color:var(--brand);font-weight:650}

/* ===== Newsletter : pop-up et bandeau ===== */
.nlp{position:fixed;inset:0;z-index:150;background:rgba(18,24,21,.55);display:flex;align-items:center;justify-content:center;padding:16px;animation:fade .3s}
.nlp[hidden]{display:none}
.nlp-card{position:relative;display:grid;grid-template-columns:1fr;max-width:760px;width:100%;background:var(--bg);border-radius:26px;overflow:hidden;box-shadow:var(--shadow-l)}
@media (min-width:700px){.nlp-card{grid-template-columns:.9fr 1.1fr}}
.nlp-img{background:#E9F3EE}
.nlp-img img{width:100%;height:100%;object-fit:cover}
@media (max-width:699px){.nlp{align-items:flex-end;padding:0}.nlp-card{border-radius:24px 24px 0 0;animation:sheet .35s cubic-bezier(.2,.8,.2,1)}.nlp-img{display:none}}
@keyframes sheet{from{transform:translateY(100%)}}
.nlp-b{padding:clamp(22px,4vw,38px)}
.nlp-b h2{font-size:clamp(26px,3.4vw,36px);margin-bottom:8px}
.nlp-b p{color:var(--ink2);margin-bottom:16px}
.nlp-x{position:absolute;right:10px;top:10px;z-index:2;background:rgba(255,255,255,.9)}
.nlf{display:grid;gap:10px}
.nlf-row{display:flex;gap:8px;flex-wrap:wrap}
.nlf-row input{flex:1 1 200px;min-width:0;font:inherit;padding:14px 16px;border:1.5px solid var(--line2);border-radius:14px;background:#fff;color:var(--ink)}
.nlf-row input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-l)}
.nlf-row .btn{flex:0 0 auto}
.nlf-c{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;line-height:1.45;color:var(--muted);cursor:pointer}
.nlf-c input{margin-top:2px;width:16px;height:16px;flex:none;accent-color:var(--brand)}
.nlf-c a{color:inherit}
.nl-ok{text-align:center;padding:4px 0}
.nl-code{display:inline-block;font-family:ui-monospace,Menlo,monospace;font-size:24px;font-weight:800;letter-spacing:3px;background:#fff;border:2px dashed var(--accent);border-radius:14px;padding:12px 20px;margin:8px 0}
.nlb{background:var(--brand);color:#EAF4EE;padding:44px 0}
.nlb-g{display:grid;gap:22px;align-items:center}
@media (min-width:900px){.nlb-g{grid-template-columns:1fr 1.1fr;gap:50px}}
.nlb h2{color:#fff;margin:0 0 6px}
.nlb p{margin:0;opacity:.9}
.nlb .nlf-c{color:#CFE2D6}
.nlb .btn{background:var(--accent);box-shadow:none}
.nlb .btn:hover{background:#CC6A20}
.nlb .form-msg.ok{background:#fff}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* ===== Lisibilité renforcée et centrage des titres de section ===== */
:root{--ink:#121915;--ink2:#1F2924;--muted:#424D47;--line:#E2D9CA;--accent:#C25E1C}
body{font-size:17px;line-height:1.65;color:var(--ink)}
.kicker{color:#B0531A;font-size:13px}
p,.lead{color:var(--ink2)}
.prose{color:var(--ink2);font-size:18px}
.sec-h{flex-direction:column;align-items:center;text-align:center;gap:10px}
.sec-h>div{display:flex;flex-direction:column;align-items:center}
.sec-h p{margin-left:auto;margin-right:auto;color:var(--muted);font-size:17px}
.sec-h .link-arrow{font-size:15.5px}
.art-h.center{text-align:center}
.art-h.center .lead{margin-left:auto;margin-right:auto}
.pc-promise{font-size:14.5px;color:var(--muted)}
.pc-cat{font-size:12px;color:#55605A}
.pc-t{font-size:19px}
.note{font-size:14px;color:var(--muted)}
.trustbar b{font-size:15.5px}
.trustbar span{font-size:14px;color:var(--muted)}
.meta,.crumbs{font-size:14px;color:var(--muted)}
.feat p,.steps p,.tl p,.bento p,.card p{font-size:16px;color:var(--muted)}
.ci-v,.up span,.tpc-src,.rev-m,.search-r small{color:var(--muted)}
.tpc p{font-size:15.5px;color:var(--ink2)}
.acc .acc-b,.faq details>div,.faq details>p{color:var(--ink2);font-size:16.5px}
.ticks li{font-size:16.5px}
.pdp-promise{color:var(--ink2)}
.annc{font-size:14px}
.foot{color:#D2DCD6}
.foot p,.foot ul{font-size:15px}
.foot h4{color:#A9B8B0}
.foot-b{font-size:13.5px}
.xhero .lead{color:#E6F0EA}
.xhero .proof{color:#E0ECE5}
.nlb p{opacity:1;color:#E6F0EA}
.dq blockquote{color:var(--ink2);font-size:15px}
.mega-p span,.mega-cols h4{color:var(--muted)}
.btn{font-size:17px}
@media (max-width:600px){body{font-size:16.5px}.prose{font-size:17.5px}}
.tp2-head{flex-direction:column;align-items:center;text-align:center}.tp2-head p{margin-left:auto;margin-right:auto}
.sec-h>div{width:100%}
.sec-h p{max-width:680px}
@media (min-width:1100px){.tp2-cards{grid-auto-flow:row;grid-template-columns:repeat(5,1fr);overflow:visible}}
.nl-ok{background:#fff;border-radius:18px;padding:18px 20px;color:var(--ink);box-shadow:var(--shadow)}
.nl-ok b{font-size:17px;color:var(--ink)}
.nl-ok .nl-code{color:var(--ink);background:#FFF8F0}
.nl-ok .note{color:var(--ink2);font-size:14.5px;display:block;margin-top:2px}
.nlb .nl-ok{max-width:520px}
.foot p,.foot li,.foot span{color:#D2DCD6}
.foot a{color:#EEF4F0}
.sec.dark p,.cta-band p,.nlb p,.xhero p,.bento .b1 p{color:#E3EEE7}
.cta-band p{opacity:1}
.nlb .nlf-c,.nlb .nlf-c span{color:#DCEAE1}
.nlb .nlf-c a{color:#fff}
.nlb .nl-ok,.nlb .nl-ok p,.nlb .nl-ok span{color:var(--ink)}
.nlb .nl-ok .note{color:var(--ink2)}
.nlf-c{font-size:13.5px}

/* Logos des moyens de paiement */
.pay{gap:8px}
.pay .payb{display:inline-flex;align-items:center;justify-content:center;height:38px;min-width:58px;padding:0 9px;background:#fff;border:1px solid #D9D2C5;border-radius:8px;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.pay .payb svg{display:block}
.foot .pay .payb{border-color:#fff}
.foot-b .pay{flex-wrap:wrap}
.drawer-f .pay .payb,.pdp-info .pay .payb{height:32px;min-width:50px;padding:0 7px}
.drawer-f .pay .payb svg,.pdp-info .pay .payb svg{transform:scale(.85)}
.foot .pay .payb{height:46px;min-width:72px;padding:0 10px}
.foot .pay .payb svg{transform:scale(1.15)}

.foot 
.payb[title="American Express"]{padding:0 6px}
.foot .pay .payb b{font-size:16px!important}
.drawer-f .pay{gap:5px}
.drawer-f .pay .payb{height:28px;min-width:44px;padding:0 4px}
.drawer-f .pay .payb svg{transform:scale(.72)}
.drawer-f 
.drawer-f .pay .payb b{font-size:11px!important}
@media (min-width:740px) and (max-width:979px){
  .pdp{grid-template-columns:1fr 1fr;gap:28px}
  .pdp-info{position:sticky;top:90px;align-self:start}
  .pdp-info h1{font-size:30px}
  .gal-th{grid-template-columns:repeat(4,1fr);gap:8px}
  .fpanel{grid-template-columns:1fr 1.1fr}
  .fpanel-img{min-height:100%}
  .buy-row{grid-template-columns:1fr}
  .buy-row .qty{justify-self:start}
}

.nlf .nlf-in{width:100%;font:inherit;font-size:17px;padding:15px 16px;border:1.5px solid var(--line2);border-radius:14px;background:#fff;color:var(--ink)}
.nlf .nlf-in:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-l)}
.nlf-c{padding:6px 4px;border-radius:12px;transition:box-shadow .2s,background .2s}
.nlf-c input{width:22px;height:22px;margin-top:0}
.nlf-c.need{background:#FFF1EE;box-shadow:0 0 0 2px #D9442B;color:#7A1F12!important;animation:shake .35s}
.nlf-c.need span,.nlb .nlf-c.need span{color:#7A1F12!important}
.nlb .nlf-c.need a{color:#7A1F12}
@keyframes shake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.nlb .form-msg.err{background:#fff;color:#B4382C}
.nlf .btn{min-height:54px}
.annc.fixed .annc-track{animation:none}.annc.fixed .annc-item:not(:first-child){display:none}

.cart-nl{margin:16px 0;padding:16px;border-radius:16px;background:linear-gradient(135deg,#FFF6EC,#FDEADB);border:1px solid #F3CFAE}
.cart-nl b{display:block;font-size:17px;color:var(--ink)}
.cart-nl p{margin:2px 0 10px;font-size:14.5px;color:var(--ink2)}
.cart-nl .nlf-in{padding:12px 14px;font-size:16px}
.cart-nl .btn{min-height:46px;font-size:16px}
.cart-nl .nlf-c{font-size:12.5px}

@media (max-width:600px),(max-height:760px){.drawer-f .dq{display:none}.drawer-f{padding-top:12px;padding-bottom:12px}.drawer-f .pay{flex-wrap:nowrap;overflow:hidden}.drawer-f .pay .payb{min-width:0;flex:1 1 0;padding:0 2px}}

/* Contact (comme sur la boutique principale) */
.cbar{background:#F3EEE6;color:var(--ink2);font-size:13.5px;border-bottom:1px solid #E7DFD2}
.cbar-in{display:flex;align-items:center;justify-content:center;gap:14px;min-height:34px;flex-wrap:wrap}
.cbar-t{font-weight:600}
.cbar-sep{opacity:.35}
.cbar-l{display:inline-flex;align-items:center;gap:6px;color:var(--ink2);text-decoration:none;font-weight:500;min-height:34px}
.cbar-l:hover{color:var(--brand)}
.cbar-l svg{width:17px;height:17px}
.cbar-l[href^="https://wa.me"] svg{color:#1F9D55}
@media (max-width:600px){.cbar-l span{display:none}.cbar-l svg{width:20px;height:20px}.cbar-in{gap:18px}}
.fcontact{display:flex;flex-wrap:wrap;gap:10px 18px;margin:4px 0 14px}
.fc{display:inline-flex;align-items:center;gap:7px;color:inherit;text-decoration:none;font-weight:500}
.fc svg{width:18px;height:18px}
.fc:hover{text-decoration:underline}
.social{display:flex;gap:10px}
.social a{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);color:#fff}
.social a:hover{background:rgba(255,255,255,.2)}
.social svg{width:19px;height:19px}
.pcontact .btn svg{width:20px;height:20px}.pcontact .btn[href^="https://wa.me"] svg{color:#1F9D55}
/* Livraison dans la cesta */
.shipk{margin:16px 0;padding:14px;border:1px solid var(--line,#E7DFD2);border-radius:14px;background:#fff}
.shipk-l{display:flex;align-items:center;gap:8px;font-weight:700;margin-bottom:8px}
.shipk-l svg{width:20px;height:20px;color:var(--brand)}
.shipk select{width:100%;min-height:46px;padding:0 12px;border:1.5px solid #CFC6B8;border-radius:10px;background:#fff;font:inherit;color:var(--ink)}
.shipk-m{display:grid;gap:8px;margin-top:10px}
.shipk-o{display:flex;align-items:center;gap:10px;padding:12px;border:1.5px solid #E2DACD;border-radius:12px;cursor:pointer;min-height:48px}
.shipk-o.on{border-color:var(--brand);background:#F2F8F4}
.shipk-o input{accent-color:var(--brand);width:18px;height:18px;flex:none}
.shipk-o span{flex:1;display:flex;flex-direction:column;line-height:1.3}
.shipk-o small{color:var(--muted);font-size:13px}
.shipk-o em{font-style:normal;font-weight:700;white-space:nowrap}
.shipk-r{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding:12px;border-radius:12px;background:#F7F3EC;font-size:14.5px;line-height:1.4}
.shipk-r small{display:block;color:var(--muted)}
.shipk-r b{display:block}
.shipk-pick{margin-top:10px}
.shipk-n{margin:10px 0 0;font-size:13.5px;color:var(--muted);line-height:1.5}
.mrm{position:fixed;inset:0;z-index:300;background:rgba(18,25,21,.55);display:none;align-items:center;justify-content:center;padding:16px}
.mrm.on{display:flex}
.mrm-in{background:#fff;border-radius:18px;width:min(980px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden}
.mrm-h{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #EEE7DB}
.mrm-h .icon-btn{font-size:28px;line-height:1}
.mrm-b{overflow:auto;padding:12px 16px;flex:1;min-height:300px}
.mrm-f{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid #EEE7DB;flex-wrap:wrap}
.mrm-sel{font-size:14.5px;line-height:1.4;flex:1;min-width:200px}
.mrm-load{padding:30px 0;text-align:center;color:var(--muted)}
#mr-widget{min-height:280px}
/* Icônes du quiz : taille explicite (Safari iOS réduit à 0 un SVG sans dimensions dans un conteneur flex) */
.quiz-o button i svg{width:26px;height:26px;min-width:26px;flex:none;display:block}
.quiz-o button i{color:var(--brand)}
.payb img{display:block;height:20px;width:auto}.drawer-f .payb img{height:15px}.pdp-info .pay .payb img{height:17px}

.payb[title="Apple Pay"] svg{transform:none!important}
/* Allemagne (legal_de) : prix de base (Grundpreis), TVA et frais de port, acceptation des AGB, rétractation */
.gp{display:block;font-size:11.5px;font-weight:500;color:var(--muted);line-height:1.3;margin-top:1px;font-family:var(--sans)}
.pdp-price .gp{display:inline-block;font-size:14px;margin:0}
.pill .gp{margin-top:4px}
.taxn{display:block;font-size:11.5px;color:var(--muted);margin-top:6px;line-height:1.35}
.taxn a,.vatn a,.agb a,.pdp-price .tax a{color:inherit}
.vatn{font-size:12.5px;color:var(--muted);margin:12px 0 0}
.vatn small{font-size:inherit}
.cta-band .gp,.cta-band .taxn,.cta-band .taxn a{color:rgba(255,255,255,.82)}
.agb{font-size:12.5px;line-height:1.45;color:var(--muted);margin:6px 0 10px}
.ci-u{font-size:12px;color:var(--muted)}
.wdf{max-width:560px;border:1px solid var(--line);border-radius:16px;padding:22px;background:var(--card);margin:24px 0}
.wdf h2{margin-top:0}
@media (max-width:600px){.sb-t .gp{display:none}}
.payb img[src*="klarna"]{height:22px}.payb img[src*="sepa"]{height:18px}
