/* ==========================================================================
   natitud — design system web v3
   Ambiance claire (crème, blanc, dégradés) + scènes sombres (.nt-dark).
   Ambiance sombre complète : body.nt-mode-dark (Personnaliser › Ambiance).
   Mobile d'abord. Points de rupture : 640 / 900 / 1000 px.
   ========================================================================== */

/* Polices (hébergées dans le thème) */
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/poppins-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/poppins-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/poppins-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/poppins-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/poppins-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-style:italic;font-weight:700;font-display:swap;src:url(../fonts/poppins-latin-700-italic.woff2) format("woff2")}
@font-face{font-family:"Oswald";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/oswald-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Oswald";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/oswald-latin-500-normal.woff2) format("woff2")}

/* ----------------------------------------------------------------------
   Jetons
   ---------------------------------------------------------------------- */
:root{
  --nt-bg:#000;--nt-leaf:#8FBB29;--nt-forest:#134E33;--nt-cream:#F4F2EA;--nt-leaf-soft:rgba(143,187,41,.1);--nt-grey:#5C5C5C;
  --nt-font:"Poppins",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --nt-cond:"Oswald","Arial Narrow",Arial,sans-serif;
  --nt-max:1360px;--nt-pad:clamp(16px,4vw,48px);
  --nt-r-sm:12px;--nt-r:16px;--nt-r-md:24px;--nt-r-lg:32px;
  --nt-ease:cubic-bezier(.2,.8,.2,1);
  --nt-gold:#F2B705;
  /* Gamme par défaut (remplacée produit par produit) */
  --g-dark:#134E33;--g-accent:#8FBB29;--g-light:#F4F2EA;--g-on:#000;--g-text:#8FBB29;--g-ink:#134E33;--g-glow:rgba(143,187,41,.4);--g-soft:rgba(143,187,41,.12);--g-tint:#F9F8F3;--g-tint-2:#E3EDCB;
  /* Ambiance claire */
  --bg:#F4F2EA;--bg-2:#FBFAF6;--fg:#101311;--muted:#3E4440;--muted-2:#5C5C5C;
  --line:rgba(16,19,17,.08);--line-2:rgba(16,19,17,.14);--line-3:rgba(16,19,17,.3);
  --surface:rgba(255,255,255,.55);--surface-2:rgba(255,255,255,.9);--card:#fff;
  --btn-bg:#101311;--btn-fg:#fff;--ghost:rgba(16,19,17,.3);--hl:#4A7A12;
  --word:rgba(16,19,17,.07);--grid:rgba(16,19,17,.04);
  --input:#fff;--input-line:rgba(16,19,17,.16);
  --shadow:0 1px 2px rgba(16,30,20,.04),0 18px 40px -22px rgba(16,40,24,.22);
  --shadow-lg:0 2px 6px rgba(16,30,20,.05),0 40px 80px -40px rgba(16,40,24,.35);
  --ok:#134E33;--ok-bg:rgba(143,187,41,.16);--error:#B42318;--warn:#8A5A00;--star-off:rgba(16,19,17,.14);
  --g-fg:var(--g-ink);
  color-scheme:light;
}
[style*="--g-"]{--g-fg:var(--g-ink)}

/* Scènes sombres et ambiance sombre complète */
.nt-dark,.nt-mode-dark{
  --bg:var(--nt-bg);--bg-2:#0A0B0C;--fg:#fff;--muted:rgba(255,255,255,.74);--muted-2:rgba(255,255,255,.58);
  --line:rgba(255,255,255,.1);--line-2:rgba(255,255,255,.16);--line-3:rgba(255,255,255,.3);
  --surface:rgba(255,255,255,.04);--surface-2:rgba(255,255,255,.07);--card:#0C0D0F;
  --btn-bg:#fff;--btn-fg:#000;--ghost:rgba(255,255,255,.55);--hl:var(--nt-leaf);
  --word:rgba(255,255,255,.09);--grid:rgba(255,255,255,.035);
  --input:rgba(255,255,255,.05);--input-line:rgba(255,255,255,.2);
  --shadow:none;--shadow-lg:0 30px 60px rgba(0,0,0,.5);
  --ok:#C9E37A;--ok-bg:rgba(143,187,41,.14);--error:#FF8A70;--warn:#FDE27A;--star-off:rgba(255,255,255,.18);
  --g-fg:var(--g-text);
  color-scheme:dark;
}
.nt-dark [style*="--g-"],.nt-dark[style*="--g-"],.nt-mode-dark [style*="--g-"]{--g-fg:var(--g-text)}
.nt-dark{background:var(--bg);color:var(--fg)}

/* ----------------------------------------------------------------------
   Base
   ---------------------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background-color:var(--bg);color:var(--fg);font-family:var(--nt-font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
body.nt-mode-light{background-image:radial-gradient(1100px 620px at 92% -6%,rgba(143,187,41,.20),rgba(143,187,41,0) 62%),radial-gradient(900px 560px at -8% 8%,rgba(19,78,51,.10),rgba(19,78,51,0) 60%),linear-gradient(180deg,#F4F2EA 0,#FAF9F4 900px,#F4F2EA 1800px);background-repeat:no-repeat}
img,svg,video{max-width:100%;height:auto}
img{display:block}
a{color:inherit;text-underline-offset:3px}
a:hover{color:var(--hl)}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--hl);outline-offset:3px;border-radius:4px}
h1,h2,h3,h4{margin:0;line-height:1.1}
p{margin:0}
::selection{background:var(--nt-leaf);color:#000}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.nt-skip{position:absolute;left:12px;top:-60px;z-index:100;background:#fff;color:#000;padding:10px 16px;border-radius:8px;font-weight:600;text-decoration:none}
.nt-skip:focus{top:12px}
.nt-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
html.nt-lock,html.nt-lock body{overflow:hidden}
body.nt-locked{overflow:hidden}

/* Mise en page */
.nt-wrap{width:100%;max-width:var(--nt-max);margin:0 auto;padding-inline:var(--nt-pad)}
.nt-wrap--narrow{max-width:860px}
.nt-section{padding-block:clamp(64px,8vw,120px)}
.nt-section--tight{padding-block:clamp(40px,5vw,72px)}
.nt-section--line{border-top:1px solid var(--line)}
.nt-gridbg{background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:56px 56px;background-position:center top}
.nt-grid3{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.nt-grid1{display:grid;gap:20px}
@media (min-width:640px){.nt-grid3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.nt-grid3{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}}

/* Fonds des sections (ambiance claire) */
.nt-mode-light #produits,.nt-mode-light #composition,.nt-mode-light #faq{background:linear-gradient(180deg,rgba(255,255,255,0) 0,rgba(255,255,255,.85) 220px,#fff 100%)}
.nt-mode-light #avis{background:linear-gradient(180deg,#fff 0,#F1F5E6 100%)}
.nt-mode-light #packs,.nt-mode-light #magazine{background:linear-gradient(180deg,#F4F2EA 0,#FBFAF6 100%)}

/* Typographie */
.nt-eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--nt-cond);font-weight:400;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--hl);line-height:1.35}
.nt-eyebrow--muted{color:var(--muted-2)}
.nt-eyebrow--lime{color:#C9E37A}
.nt-pulse{width:7px;height:7px;flex:none;border-radius:99px;background:var(--nt-leaf);animation:nt-pulse 2.4s ease-in-out infinite}
.nt-h1{font-weight:700;font-size:clamp(36px,5vw,64px);line-height:1.04;letter-spacing:-.03em}
.nt-h2{font-weight:700;font-size:clamp(30px,4vw,56px);line-height:1.04;letter-spacing:-.03em}
.nt-h2--sm{font-size:clamp(26px,2.8vw,38px);line-height:1.12}
.nt-lead{font-size:clamp(16px,1.25vw,18px);line-height:1.65;color:var(--muted);max-width:36em}
.nt-hl{color:var(--hl)}
.nt-note{margin-top:18px;font-size:12px;color:var(--muted-2)}
.nt-meta{font-size:14px;color:var(--muted-2)}

/* En-tête de section */
.nt-head{display:flex;flex-direction:column;gap:16px;margin-bottom:clamp(32px,4vw,60px)}
.nt-head__main{display:flex;flex-direction:column;gap:14px;max-width:820px}
.nt-head__text{font-size:16px;line-height:1.65;color:var(--muted);max-width:30em}
@media (min-width:900px){.nt-head--side{flex-direction:row;justify-content:space-between;align-items:flex-end;gap:48px}.nt-head--side .nt-head__main{flex:1 1 560px}.nt-head--side .nt-head__text{flex:0 1 360px}}

/* Boutons */
.nt-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;border:1.5px solid transparent;font-weight:600;font-size:15px;line-height:1.2;text-decoration:none;text-align:center;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease;-webkit-tap-highlight-color:transparent}
.nt-btn:hover{transform:translateY(-1px)}
.nt-btn:active{transform:translateY(0) scale(.99)}
.nt-btn--light{background:var(--btn-bg);color:var(--btn-fg)}
.nt-btn--light:hover{color:var(--btn-fg);box-shadow:0 0 0 4px var(--line-2),0 12px 28px -10px rgba(0,0,0,.35)}
.nt-btn--dark{background:#101311;color:#fff}
.nt-btn--dark:hover{color:#fff;box-shadow:0 0 0 4px rgba(16,19,17,.12)}
.nt-dark .nt-btn--dark,.nt-mode-dark .nt-btn--dark{background:#fff;color:#000}
.nt-btn--ghost{border-color:var(--ghost);color:var(--fg);background:transparent}
.nt-btn--ghost:hover{color:var(--fg);border-color:var(--fg);background:var(--surface)}
.nt-btn--accent{background:var(--g-accent);color:var(--g-on)}
.nt-btn--accent:hover{color:var(--g-on);box-shadow:0 0 0 4px var(--g-soft),0 12px 30px var(--g-glow)}
.nt-btn--leaf{background:var(--nt-leaf);color:#000}
.nt-btn--leaf:hover{color:#000;box-shadow:0 0 0 4px var(--nt-leaf-soft)}
.nt-btn--sm{min-height:44px;padding:0 20px;font-size:14px}
.nt-btn--xl{min-height:60px;font-size:17px;font-weight:700}
.nt-btn--block{width:100%}
.nt-btn__sep{opacity:.55}
.nt-btn[aria-disabled=true],.nt-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}
.nt-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:500;font-size:15px}
button.nt-link{min-height:0;padding:0;border:0;background:none;color:var(--hl);font-weight:600;font-size:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* Pastilles */
.nt-pill{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;line-height:1.2}
.nt-pill--accent{background:var(--g-accent);color:var(--g-on)}
.nt-pill--leaf{background:var(--nt-leaf);color:#000}
.nt-pill--reco{background:linear-gradient(135deg,#134E33,#2F7A3E);color:#fff}
.nt-pill--xs{padding:3px 8px;font-size:11px;margin-left:6px;vertical-align:middle}
.nt-save{font-size:14px;font-weight:600;color:var(--ok)}
.nt-price{display:inline-flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.nt-price__now{font-weight:700}
.nt-price__was{font-size:.75em;color:var(--muted-2);font-weight:400}

/* Icônes en tuile */
.nt-tile{width:52px;height:52px;flex:none;border-radius:16px;border:1px solid rgba(143,187,41,.35);background:var(--nt-leaf-soft);color:var(--hl);display:grid;place-items:center}
.nt-tile--g{width:48px;height:48px;border-radius:14px;border:0;background:var(--g-soft);color:var(--g-fg)}

/* Étoiles */
.nt-stars{display:inline-flex;gap:2px;vertical-align:middle;line-height:0}
.nt-star path{fill:var(--star-off)}
.nt-star.is-full path{fill:var(--nt-gold)}
.nt-star.is-half path{fill:url(#nt-half)}
.nt-stars .on{stop-color:var(--nt-gold)}
.nt-stars .off{stop-color:var(--star-off)}
.nt-rating{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--muted);text-decoration:none}
.nt-rating b{color:var(--fg);font-weight:700}
a.nt-rating:hover{color:var(--fg)}

/* ----------------------------------------------------------------------
   Barre d'annonce, en-tête, menu mobile
   ---------------------------------------------------------------------- */
.nt-topbar{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 10px;padding:9px 16px;background:linear-gradient(90deg,#0E3B26,#134E33 50%,#0E3B26);font-size:12px;line-height:1.4;color:rgba(255,255,255,.88);text-align:center}
.nt-mode-dark .nt-topbar{background:transparent;border-bottom:1px solid var(--line);color:var(--muted)}
.nt-topbar__dot{color:var(--nt-leaf);font-size:9px;align-self:center}
.nt-header{position:sticky;top:0;z-index:40;background:rgba(244,242,234,.78);-webkit-backdrop-filter:saturate(1.4) blur(16px);backdrop-filter:saturate(1.4) blur(16px);border-bottom:1px solid var(--line)}
.nt-mode-dark .nt-header{background:rgba(0,0,0,.66)}
.admin-bar .nt-header{top:46px}
@media (min-width:783px){.admin-bar .nt-header{top:32px}}
.nt-header__in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px}
.nt-header__logo img{height:28px;width:auto}
.nt-nav{display:none}
.nt-menu{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 28px}
.nt-menu a{text-decoration:none;color:var(--muted);font-size:14px;font-weight:500;transition:color .2s}
.nt-menu a:hover,.nt-menu .current-menu-item>a{color:var(--fg)}
.nt-header__actions{display:flex;align-items:center;gap:6px}
.nt-header__cta{display:none}
.nt-burger,.nt-cartbtn{position:relative;width:44px;height:44px;border:0;border-radius:12px;background:transparent;color:var(--fg);display:grid;place-items:center;cursor:pointer;transition:background-color .2s}
.nt-burger:hover,.nt-cartbtn:hover{background:var(--line)}
.nt-cartbtn__n{position:absolute;top:3px;right:2px;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:var(--nt-leaf);color:#000;font-size:11px;font-weight:700;line-height:19px;text-align:center;box-shadow:0 0 0 2px var(--bg);animation:nt-pop .35s var(--nt-ease)}
@media (min-width:980px){.nt-nav{display:block}.nt-header__cta{display:inline-flex;margin-left:6px}.nt-header .nt-burger{display:none}.nt-header__logo img{height:30px}}
.nt-drawer{position:fixed;inset:0;z-index:90;background:rgba(16,19,17,.4);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.nt-drawer__panel{position:absolute;inset:0 0 0 auto;width:min(420px,100%);background:var(--bg-2);border-left:1px solid var(--line);display:flex;flex-direction:column;gap:24px;padding:16px var(--nt-pad) 28px;overflow-y:auto;animation:nt-slide .35s var(--nt-ease)}
.nt-drawer__top{display:flex;justify-content:space-between;align-items:center;min-height:52px}
.nt-drawer__top img{height:26px;width:auto}
.nt-menu--drawer{flex-direction:column;gap:0}
.nt-menu--drawer a{display:block;padding:16px 0;border-bottom:1px solid var(--line);font-size:22px;font-weight:600;color:var(--fg)}
.nt-drawer__foot{margin-top:auto;display:flex;flex-direction:column;gap:10px}

/* ----------------------------------------------------------------------
   Hero
   ---------------------------------------------------------------------- */
.nt-hero{position:relative;overflow:hidden}
.nt-mode-light .nt-hero{background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);-webkit-mask-image:linear-gradient(180deg,#000 75%,transparent);mask-image:linear-gradient(180deg,#000 75%,transparent)}
.nt-hero__in{display:flex;flex-direction:column;gap:20px;padding-block:clamp(36px,5vw,72px) clamp(40px,5vw,80px)}
.nt-hero__copy{position:relative;z-index:4;display:flex;flex-direction:column;gap:22px}
.nt-hero__h1{display:flex;flex-direction:column;gap:18px}
.nt-hero__title{font-weight:700;font-size:clamp(42px,6.4vw,94px);line-height:.98;letter-spacing:-.035em}
.nt-tabs{display:flex;flex-wrap:wrap;gap:8px}
.nt-tab{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--line-2);background:var(--surface);color:var(--fg);font-size:14px;font-weight:500;cursor:pointer;transition:border-color .3s,background-color .3s,box-shadow .3s}
.nt-tab:hover{border-color:var(--line-3)}
.nt-tab[aria-pressed=true]{border-color:var(--line-3);background:var(--card);box-shadow:var(--shadow)}
.nt-mode-dark .nt-tab[aria-pressed=true]{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.1)}
.nt-tab__dot{width:8px;height:8px;border-radius:99px;background:var(--g-accent)}
.nt-tab__prog{position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--g-accent)}
.nt-tab__prog.is-run{animation:nt-prog var(--nt-auto,6s) linear forwards}
.nt-claims{min-height:132px}
.nt-claim{display:flex;flex-direction:column;gap:16px;animation:nt-fade .6s var(--nt-ease) both}
.nt-claim__quote{font-size:clamp(18px,1.6vw,21px);font-weight:500;line-height:1.4}
.nt-claim__ctas{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px}

.nt-stage{position:relative;height:clamp(360px,92vw,460px);margin-inline:calc(var(--nt-pad) * -1)}
.nt-stage__word{position:absolute;inset:0;display:grid;place-items:center;font-weight:800;font-size:clamp(150px,24vw,360px);letter-spacing:-.06em;line-height:1;color:transparent;-webkit-text-stroke:1px var(--word);user-select:none;pointer-events:none}
.nt-stage__glow{position:absolute;left:50%;top:52%;width:min(92%,640px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,var(--g-glow) 0%,rgba(255,255,255,0) 62%);filter:blur(20px);opacity:0;transition:opacity 1.1s ease;pointer-events:none}
.nt-mode-light .nt-stage__glow{background:radial-gradient(circle,var(--g-tint-2) 0%,var(--g-soft) 38%,rgba(255,255,255,0) 64%)}
.nt-stage__glow.is-active{opacity:1}
.nt-stage__ring{position:absolute;left:50%;bottom:7%;width:64%;height:56px;transform:translateX(-50%);border-radius:50%;border:1px solid var(--line-2);pointer-events:none}
.nt-mode-light .nt-stage__ring{background:radial-gradient(closest-side,rgba(16,30,20,.12),rgba(16,30,20,0));border-color:transparent}
.nt-stage__ring--2{bottom:3%;width:84%;height:84px;border-color:var(--line)}
.nt-mode-light .nt-stage__ring--2{background:none;border-color:var(--line)}
.nt-bottle{position:absolute;left:50%;bottom:11%;height:76%;transform:translateX(-50%);opacity:1;z-index:1;transition:transform 1s var(--nt-ease),opacity 1s ease,filter 1s ease;will-change:transform}
.nt-bottle img{height:100%;width:auto;filter:drop-shadow(0 30px 40px rgba(0,0,0,.6))}
.nt-mode-light .nt-bottle img{filter:drop-shadow(0 30px 34px rgba(16,30,20,.28))}
.nt-bottle.is-active{z-index:3}
.nt-bottle.is-next{transform:translateX(28%) translateY(-4%) scale(.58);opacity:.4;filter:blur(2px)}
.nt-bottle.is-prev{transform:translateX(-128%) translateY(-4%) scale(.58);opacity:.4;filter:blur(2px)}
.nt-bottle.is-off{transform:translateX(-50%) scale(.4);opacity:0}
.nt-float{animation:nt-float 6s ease-in-out infinite}
.nt-hud{position:absolute;inset:0;z-index:5;pointer-events:none;opacity:0;transition:opacity .6s ease;display:none}
.nt-hud.is-active{opacity:1}
.nt-hud__chip{position:absolute;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;border:1px solid var(--line-2);background:var(--surface-2);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--nt-cond);font-size:13px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.nt-mode-dark .nt-hud__chip{background:rgba(255,255,255,.05)}
.nt-hud.is-active .nt-hud__chip{animation:nt-fade .7s var(--nt-ease) both}
.nt-hud__chip--0{left:0;top:12%}
.nt-hud__chip--1{right:0;top:40%;animation-delay:.12s!important}
.nt-hud__chip--2{left:4%;bottom:22%;animation-delay:.24s!important}
.nt-hud__dot{width:7px;height:7px;border-radius:99px;background:var(--g-accent)}
@media (min-width:760px){.nt-hud{display:block}.nt-stage{margin-inline:0;height:clamp(460px,56vw,700px)}}
@media (min-width:1000px){.nt-hero__in{flex-direction:row;align-items:center;gap:clamp(24px,4vw,56px)}.nt-hero__copy{flex:1 1 440px;min-width:0}.nt-stage{flex:1.15 1 520px;min-width:0;height:clamp(500px,48vw,700px)}}

/* ----------------------------------------------------------------------
   Engagements
   ---------------------------------------------------------------------- */
.nt-eng{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}
.nt-eng__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px 32px;padding-block:28px}
@media (min-width:640px){.nt-eng__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.nt-eng__grid{grid-template-columns:repeat(4,minmax(0,1fr));padding-block:34px}}
.nt-eng__item{display:flex;align-items:center;gap:16px}
.nt-eng__t{font-weight:600;font-size:15px}
.nt-eng__d{margin-top:2px;font-size:13px;color:var(--muted-2)}
.nt-mode-light .nt-tile{background:#fff;border-color:rgba(143,187,41,.45);box-shadow:var(--shadow);color:var(--nt-forest)}

/* ----------------------------------------------------------------------
   Rituel 24h (scène sombre)
   ---------------------------------------------------------------------- */
.nt-rituel-sec{position:relative;overflow:hidden}
.nt-mode-light .nt-rituel-sec{background:radial-gradient(900px 520px at 20% 0,rgba(143,187,41,.16),rgba(0,0,0,0) 60%),radial-gradient(800px 600px at 100% 100%,rgba(19,78,51,.5),rgba(0,0,0,0) 60%),#050806;border-radius:clamp(0px,3vw,40px) clamp(0px,3vw,40px) 0 0}
.nt-rituel{display:flex;flex-direction:column;gap:32px}
@media (min-width:1000px){.nt-rituel{flex-direction:row;align-items:center;gap:clamp(40px,5vw,80px)}.nt-dial{flex:1 1 460px}.nt-moments{flex:1 1 440px}}
.nt-dial{position:relative;width:100%;max-width:560px;margin-inline:auto;aspect-ratio:1;padding-inline:8px}
.nt-dial svg{width:100%;height:100%;overflow:visible}
.nt-dial__track{fill:none;stroke:rgba(255,255,255,.08);stroke-width:2}
.nt-dial__track--2{stroke:rgba(255,255,255,.06)}
.nt-dial__core{fill:rgba(255,255,255,.02);stroke:rgba(255,255,255,.06);stroke-width:1}
.nt-dial__tick{stroke:rgba(255,255,255,.22);stroke-width:1;stroke-linecap:round}
.nt-dial__tick.is-major{stroke:rgba(255,255,255,.5);stroke-width:1.6}
.nt-dial__lbl{fill:rgba(255,255,255,.55);font-family:var(--nt-cond);font-size:13px;letter-spacing:.1em}
.nt-arc{fill:none;stroke:var(--g-accent);stroke-linecap:round;stroke-width:5;opacity:.32;transition:stroke-width .5s ease,opacity .5s ease,filter .5s ease}
.nt-arc.is-active{stroke-width:12;opacity:1;filter:drop-shadow(0 0 10px var(--g-accent))}
.nt-dial__hand{transform-origin:280px 280px;transform-box:view-box;animation:nt-spin 40s linear infinite}
.nt-dial__hand line{stroke:rgba(255,255,255,.35);stroke-width:1}
.nt-dial__hand circle,.nt-dial__pin{fill:#fff}
.nt-dial__center{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.nt-dial__read{width:46%;text-align:center;animation:nt-fade .5s var(--nt-ease) both}
.nt-dial__time{font-family:var(--nt-cond);font-size:clamp(12px,1.4vw,14px);letter-spacing:.14em;text-transform:uppercase;color:var(--g-fg)}
.nt-dial__name{margin-top:6px;font-weight:800;font-size:clamp(24px,3vw,40px);letter-spacing:-.02em}
.nt-dial__sub{margin-top:6px;font-size:12px;color:var(--muted-2)}
.nt-moments{display:flex;flex-direction:column;gap:12px}
.nt-moment{border:1px solid var(--line);border-radius:var(--nt-r-md);transition:border-color .4s,background-color .4s}
.nt-moment.is-open{border-color:var(--line-3);background:var(--surface-2)}
.nt-moment__btn{width:100%;display:flex;align-items:center;gap:16px;min-height:76px;padding:14px 18px;border:0;background:transparent;color:var(--fg);text-align:left;cursor:pointer;border-radius:var(--nt-r-md)}
.nt-moment__lbl{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}
.nt-moment__k{font-family:var(--nt-cond);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}
.nt-moment__n{font-weight:800;font-size:22px}
.nt-moment__chev{transition:transform .3s ease;display:grid}
.nt-moment.is-open .nt-moment__chev{transform:rotate(180deg)}
.nt-moment__panel{padding:0 18px 22px 82px;display:flex;flex-direction:column;align-items:flex-start;gap:14px;animation:nt-fade .45s var(--nt-ease) both}
.nt-moment__panel p{font-size:15px;line-height:1.6;color:var(--muted)}
@media (max-width:520px){.nt-moment__panel{padding-left:18px}}
.nt-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.nt-chips li{padding:6px 10px;border-radius:8px;border:1px solid var(--line-2);font-family:var(--nt-cond);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.nt-offer{margin-top:clamp(40px,5vw,72px);border-radius:28px;border:1px solid var(--line-2);background:var(--surface);padding:20px clamp(20px,3vw,36px);display:flex;flex-wrap:wrap;align-items:center;gap:18px 32px}
.nt-offer__img{flex:none;height:96px}
.nt-offer__img img{height:100%;width:auto}
.nt-offer__txt{flex:1 1 220px;min-width:0}
.nt-offer__name{font-weight:800;font-size:24px;letter-spacing:-.01em}
.nt-offer__sub{margin-top:2px;font-family:var(--nt-cond);font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2)}
.nt-offer__price{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 14px;font-size:28px}
.nt-offer__price .nt-save{font-size:14px}

/* ----------------------------------------------------------------------
   Cartes produit
   ---------------------------------------------------------------------- */
.nt-pcard{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--nt-r-md);background:var(--card);box-shadow:var(--shadow);overflow:hidden;transition:border-color .3s,transform .4s var(--nt-ease),box-shadow .4s var(--nt-ease)}
.nt-pcard:hover{border-color:var(--line-2);transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.nt-pcard__media{position:relative;display:block;height:300px;overflow:hidden}
.nt-mode-light .nt-pcard__media{background:radial-gradient(120% 90% at 50% 100%,var(--g-tint-2) 0%,var(--g-tint) 45%,#fff 80%)}
.nt-pcard__glow{position:absolute;left:50%;top:55%;width:90%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,var(--g-glow) 0%,rgba(255,255,255,0) 62%);filter:blur(16px)}
.nt-mode-light .nt-pcard__glow{opacity:.55}
.nt-pcard__img{position:absolute;left:50%;bottom:20px;height:82%;width:auto;transform:translateX(-50%);filter:drop-shadow(0 20px 30px rgba(0,0,0,.55));transition:transform .5s var(--nt-ease)}
.nt-mode-light .nt-pcard__img{filter:drop-shadow(0 22px 24px rgba(16,30,20,.25))}
.nt-pcard:hover .nt-pcard__img{transform:translateX(-50%) translateY(-6px)}
.nt-pcard__badge{position:absolute;left:16px;top:16px}
.nt-pcard__body{flex:1;display:flex;flex-direction:column;gap:12px;padding:22px;border-top:1px solid var(--line)}
.nt-pcard__top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.nt-pcard__name{font-weight:800;font-size:26px;letter-spacing:-.01em}
.nt-pcard__name a{text-decoration:none}
.nt-pcard__top .nt-price{font-size:19px}
.nt-pcard__sub{font-family:var(--nt-cond);font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--g-fg)}
.nt-pcard__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--muted)}
.nt-pcard__list li{display:flex;gap:8px;align-items:flex-start}
.nt-pcard__list svg{flex:none;margin-top:3px;color:var(--g-fg)}
.nt-pcard__tiers{font-size:13px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.nt-mode-light .nt-pcard__tiers{background:var(--g-tint)}
.nt-pcard__tiers b{font-weight:600}
.nt-pcard__actions{margin-top:auto;display:flex;gap:8px}
.nt-pcard__cta{flex:1}
.nt-qadd{flex:none;width:52px;height:52px;border-radius:99px;border:1.5px solid var(--line-3);background:transparent;color:var(--fg);display:grid;place-items:center;cursor:pointer;transition:all .2s}
.nt-qadd:hover{border-color:var(--fg);background:var(--fg);color:var(--bg)}
.nt-qadd .nt-qadd__ok{display:none}
.nt-qadd.is-added{background:var(--nt-leaf);border-color:var(--nt-leaf);color:#000}
.nt-qadd.is-added .nt-qadd__ok{display:block}
.nt-qadd.is-added .nt-qadd__plus{display:none}

/* Packs */
.nt-packs{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
@media (min-width:760px){.nt-packs{grid-template-columns:repeat(2,minmax(0,1fr))}.nt-pack--featured{grid-column:1/-1}}
.nt-pack{display:flex;flex-direction:column;border-radius:var(--nt-r-md);border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);overflow:hidden;transition:transform .4s var(--nt-ease),box-shadow .4s var(--nt-ease)}
.nt-pack:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.nt-pack__media{position:relative;display:block;height:220px;overflow:hidden}
.nt-mode-light .nt-pack__media{background:radial-gradient(120% 90% at 50% 100%,#E6EFD2 0%,#F7F8F1 50%,#fff 85%)}
.nt-pack__glow{position:absolute;left:50%;top:60%;width:80%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(143,187,41,.3) 0%,rgba(255,255,255,0) 62%);filter:blur(16px)}
.nt-pack__img{position:absolute;left:50%;bottom:16px;height:80%;width:auto;max-width:92%;object-fit:contain;transform:translateX(-50%);filter:drop-shadow(0 20px 30px rgba(0,0,0,.5))}
.nt-mode-light .nt-pack__img{filter:drop-shadow(0 18px 22px rgba(16,30,20,.22))}
.nt-pack__body{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:22px clamp(20px,2.4vw,32px) 26px}
.nt-pack__name{font-weight:800;font-size:28px;letter-spacing:-.01em}
.nt-pack__name a{text-decoration:none}
.nt-pack__items{font-family:var(--nt-cond);font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.nt-pack__text{font-size:15px;line-height:1.6;color:var(--muted)}
.nt-pack__price{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 14px;font-size:26px;margin-top:auto}
.nt-pack__actions{display:flex;gap:8px;width:100%;flex-wrap:wrap}
.nt-pack__actions .nt-btn:first-child{flex:1 1 200px}
/* Pack mis en avant : crème en ambiance sombre, vert profond en ambiance claire */
.nt-pack--featured{background:var(--nt-cream);color:#000;border-color:transparent}
.nt-pack--featured .nt-pack__media{background:#fff;margin:14px 14px 0;border-radius:20px;height:300px}
.nt-pack--featured .nt-pack__glow{display:none}
.nt-pack--featured .nt-pack__img{filter:drop-shadow(0 18px 24px rgba(0,0,0,.18))}
.nt-pack--featured .nt-pack__items,.nt-pack--featured .nt-pack__text{color:#3d3d3d}
.nt-pack--featured .nt-price__was{color:#5C5C5C}
.nt-pack--featured .nt-save{color:var(--nt-forest)}
.nt-pack--featured .nt-pack__name{font-size:clamp(32px,3.4vw,48px)}
.nt-pack--featured a:hover{color:var(--nt-forest)}
.nt-pack--featured .nt-qadd{border-color:rgba(0,0,0,.3);color:#000}
.nt-mode-light .nt-pack--featured{background:radial-gradient(700px 400px at 100% 0,rgba(143,187,41,.28),rgba(143,187,41,0) 60%),linear-gradient(135deg,#134E33 0%,#0B2D1E 100%);color:#fff;box-shadow:var(--shadow-lg)}
.nt-mode-light .nt-pack--featured .nt-pack__media{background:radial-gradient(120% 90% at 50% 100%,#E6EFD2 0%,#fff 70%)}
.nt-mode-light .nt-pack--featured .nt-pack__items,.nt-mode-light .nt-pack--featured .nt-pack__text{color:rgba(255,255,255,.8)}
.nt-mode-light .nt-pack--featured .nt-price__was{color:rgba(255,255,255,.6)}
.nt-mode-light .nt-pack--featured .nt-save{color:#C9E37A}
.nt-mode-light .nt-pack--featured a:hover{color:#C9E37A}
.nt-mode-light .nt-pack--featured .nt-btn--dark{background:#fff;color:#000}
.nt-mode-light .nt-pack--featured .nt-qadd{border-color:rgba(255,255,255,.5);color:#fff}
.nt-mode-light .nt-pack--featured .nt-qadd:hover{background:#fff;color:#000}
@media (min-width:900px){.nt-pack--featured{flex-direction:row}.nt-pack--featured .nt-pack__media{flex:1 1 50%;height:auto;min-height:360px;margin:14px}.nt-pack--featured .nt-pack__body{flex:1 1 50%;justify-content:center;padding:clamp(24px,3vw,48px)}.nt-pack--featured .nt-pack__price{margin-top:0}}

/* Composition */
.nt-split{display:flex;flex-direction:column;gap:32px}
@media (min-width:1000px){.nt-split{flex-direction:row;gap:clamp(40px,5vw,80px);align-items:flex-start}.nt-split__side{flex:1 1 360px;position:sticky;top:110px}.nt-split>:last-child{flex:1.5 1 560px;min-width:0}}
.nt-split__side .nt-head{margin-bottom:24px}
.nt-split__mark{width:64px;height:auto;opacity:.12}
.nt-mode-light .nt-split__mark{filter:invert(1)}
.nt-compos{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media (min-width:640px){.nt-compos{grid-template-columns:repeat(2,minmax(0,1fr))}}
.nt-compo{border-radius:20px;border:1px solid var(--line);border-top:4px solid var(--g-accent);background:var(--card);box-shadow:var(--shadow);padding:22px}
.nt-compo__name{font-weight:800;font-size:22px}
.nt-compo__name a{text-decoration:none}
.nt-compo__note{margin-top:4px;font-size:13px;color:var(--muted-2)}
.nt-compo__list{margin:16px 0 0;display:flex;flex-direction:column;gap:10px;font-size:14px}
.nt-compo__list div{display:flex;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.nt-compo__list div:last-child{border-bottom:0;padding-bottom:0}
.nt-compo__list dt{color:var(--muted)}
.nt-compo__list dd{margin:0;font-weight:600;white-space:nowrap;color:var(--g-fg)}

/* Bandeau revendeurs (toujours vert profond) */
.nt-band{--fg:#fff;--btn-bg:#fff;--btn-fg:var(--nt-forest);--ghost:rgba(255,255,255,.55);--surface:rgba(255,255,255,.08);color:#fff;background:radial-gradient(600px 300px at 100% 0,rgba(143,187,41,.35),rgba(143,187,41,0) 60%),linear-gradient(135deg,#134E33,#0B2D1E);border-radius:var(--nt-r-lg);padding:clamp(28px,5vw,64px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px 48px;box-shadow:var(--shadow-lg)}
.nt-band__txt{flex:1 1 460px;min-width:0;display:flex;flex-direction:column;gap:12px}
.nt-band__txt p:last-child{color:rgba(255,255,255,.84);font-size:16px;line-height:1.6}
.nt-band__ctas{display:flex;flex-wrap:wrap;gap:12px}

/* Articles */
.nt-post{display:flex;flex-direction:column;gap:14px}
.nt-post__media{display:block;aspect-ratio:4/3;border-radius:var(--nt-r-md);overflow:hidden;background:var(--card);border:1px solid var(--line)}
.nt-post__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--nt-ease)}
.nt-post:hover .nt-post__media img{transform:scale(1.03)}
.nt-post__ph{display:grid;place-items:center;width:100%;height:100%;background:linear-gradient(135deg,var(--g-tint),#fff)}
.nt-mode-dark .nt-post__ph{background:none}
.nt-post__ph img{width:64px;height:auto;opacity:.15}
.nt-mode-light .nt-post__ph img{filter:invert(1)}
.nt-post__cat{font-family:var(--nt-cond);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--hl)}
.nt-post__title{font-weight:700;font-size:21px;line-height:1.3}
.nt-post__title a{text-decoration:none}
.nt-post__ex{font-size:14px;color:var(--muted-2);line-height:1.6}

/* FAQ */
.nt-faq{border-top:1px solid var(--line-2)}
.nt-faq__item{border-bottom:1px solid var(--line-2)}
.nt-faq__item summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font-weight:600;font-size:17px;cursor:pointer;list-style:none}
.nt-faq__item summary::-webkit-details-marker{display:none}
.nt-faq__plus{position:relative;width:20px;height:20px;flex:none}
.nt-faq__plus::before,.nt-faq__plus::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:1.5px;background:currentColor;transform:translate(-50%,-50%);transition:transform .3s ease}
.nt-faq__plus::after{transform:translate(-50%,-50%) rotate(90deg)}
.nt-faq__item[open] .nt-faq__plus::after{transform:translate(-50%,-50%) rotate(0)}
.nt-faq__a{padding:0 0 22px;max-width:48em}
.nt-faq__a p{font-size:15px;line-height:1.65;color:var(--muted)}

/* ----------------------------------------------------------------------
   Avis clients
   ---------------------------------------------------------------------- */
.nt-review{display:flex;flex-direction:column;gap:14px;padding:22px;border-radius:var(--nt-r-md);border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);animation:nt-fade .5s var(--nt-ease) both}
.nt-review__top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.nt-review__product{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;background:var(--g-soft);color:var(--g-fg);font-family:var(--nt-cond);font-size:12px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}
.nt-review__product::before{content:"";width:7px;height:7px;border-radius:99px;background:var(--g-accent)}
.nt-review__text{font-size:15px;line-height:1.65;color:var(--fg);white-space:pre-line}
.nt-review__by{margin-top:auto;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.nt-review__avatar{width:40px;height:40px;flex:none;border-radius:99px;display:grid;place-items:center;background:linear-gradient(135deg,var(--g-accent),var(--g-dark));color:#fff;font-weight:700}
.nt-review__who{display:flex;flex-direction:column;line-height:1.3;min-width:0}
.nt-review__who strong{font-size:14px}
.nt-review__who span{font-size:12px;color:var(--muted-2)}
.nt-review__verified{margin-left:auto;display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:99px;background:var(--ok-bg);color:var(--ok);font-size:12px;font-weight:600}
.nt-reviews__grid{display:flex;flex-direction:column;gap:32px}
@media (min-width:1000px){.nt-reviews__grid{flex-direction:row;align-items:flex-start;gap:clamp(40px,5vw,80px)}.nt-reviews__sum{flex:0 0 340px;position:sticky;top:110px}.nt-reviews__list{flex:1;min-width:0}}
.nt-reviews__sum{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.nt-reviews__score{display:flex;align-items:center;gap:16px}
.nt-reviews__score strong{font-weight:800;font-size:64px;line-height:1;letter-spacing:-.04em}
.nt-reviews__score div{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted-2)}
.nt-reviews__dist{list-style:none;margin:0;padding:0;width:100%;max-width:340px;display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted-2)}
.nt-reviews__dist li{display:grid;grid-template-columns:34px 1fr 26px;align-items:center;gap:10px}
.nt-reviews__dist li span:last-child{text-align:right}
.nt-bar{height:6px;border-radius:99px;background:var(--line);overflow:hidden}
.nt-bar span{display:block;height:100%;border-radius:99px;background:var(--nt-gold)}
.nt-reviews__note{font-size:14px;line-height:1.6;color:var(--muted)}
.nt-reviews__empty-t{font-size:clamp(28px,3vw,40px)}
.nt-reviews__cards{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media (min-width:700px){.nt-reviews__cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
.nt-reviews__more{margin-top:20px}
.nt-reviews__placeholder{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:clamp(24px,4vw,48px);border-radius:var(--nt-r-md);border:1.5px dashed var(--line-2);color:var(--muted)}
.nt-home-avis__head{display:flex;flex-direction:column;gap:20px;margin-bottom:clamp(28px,4vw,52px)}
.nt-home-avis__head .nt-head{margin-bottom:0}
@media (min-width:900px){.nt-home-avis__head{flex-direction:row;align-items:flex-end;justify-content:space-between}}
.nt-home-avis__score{display:flex;align-items:center;gap:14px;padding:14px 20px;border-radius:20px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.nt-home-avis__score strong{font-weight:800;font-size:44px;line-height:1;letter-spacing:-.03em}
.nt-home-avis__score div{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted-2)}
.nt-home-avis__track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,86%);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px;margin-inline:calc(var(--nt-pad) * -1);padding-inline:var(--nt-pad);scrollbar-width:thin}
.nt-home-avis__track>*{scroll-snap-align:start}
@media (min-width:700px){.nt-home-avis__track{grid-auto-columns:minmax(300px,calc((100% - 32px) / 2.4))}}
@media (min-width:1100px){.nt-home-avis__track{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;margin-inline:0;padding-inline:0}}

/* Fenêtre (avis) */
.nt-dialog{width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;border:0;border-radius:28px;background:var(--bg-2);color:var(--fg);box-shadow:0 40px 100px rgba(0,0,0,.35)}
.nt-dialog::backdrop{background:rgba(16,19,17,.5);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.nt-dialog[open]{animation:nt-up .4s var(--nt-ease)}
.nt-dialog__in{position:relative;display:flex;flex-direction:column;gap:16px;padding:clamp(22px,4vw,34px)}
.nt-dialog__x{position:absolute;right:12px;top:12px;width:44px;height:44px;border:0;border-radius:12px;background:transparent;color:var(--fg);display:grid;place-items:center;cursor:pointer}
.nt-dialog__x:hover{background:var(--line)}
.nt-dialog__t{font-weight:800;font-size:28px;letter-spacing:-.02em;padding-right:40px}
.nt-dialog__done{align-items:flex-start}
.nt-rate{border:0;margin:0;padding:0}
.nt-rate legend{padding:0;margin-bottom:6px;font-size:14px;font-weight:500}
.nt-rate__stars{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;gap:4px}
.nt-rate__stars input{position:absolute;opacity:0;width:1px;height:1px}
.nt-rate__stars label{cursor:pointer;line-height:0;transition:transform .15s}
.nt-rate__stars label:hover{transform:scale(1.12)}
.nt-rate__stars path{fill:var(--star-off);transition:fill .15s}
.nt-rate__stars label:hover path,.nt-rate__stars label:hover~label path,.nt-rate__stars input:checked~label path{fill:var(--nt-gold)}
.nt-rate__stars input:focus-visible+label{outline:2px solid var(--hl);outline-offset:2px;border-radius:6px}
.nt-rvform__row{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media (min-width:520px){.nt-rvform__row{grid-template-columns:repeat(2,minmax(0,1fr))}}
.nt-help{font-size:12px;color:var(--muted-2)}

/* ----------------------------------------------------------------------
   Pied de page (scène sombre)
   ---------------------------------------------------------------------- */
.nt-footer{border-top:1px solid var(--line);padding-top:clamp(56px,6vw,88px);padding-bottom:28px}
.nt-mode-light .nt-footer{border-top:0;background:radial-gradient(900px 400px at 0 0,rgba(19,78,51,.55),rgba(0,0,0,0) 60%),#050806}
.nt-footer__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px}
.nt-footer__brand{grid-column:1/-1;display:flex;flex-direction:column;gap:18px}
.nt-footer__brand img{width:180px;height:auto}
.nt-footer__about{font-size:14px;line-height:1.6;color:var(--muted);max-width:26em}
.nt-footer__title{margin-bottom:14px;font-family:var(--nt-cond);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--nt-leaf)}
.nt-footer__links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:14px}
.nt-footer__links a{text-decoration:none;color:var(--muted)}
.nt-footer__links a:hover{color:#fff}
.nt-socials{list-style:none;margin:0;padding:0;display:flex;gap:8px}
.nt-socials a{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;border:1px solid var(--line-2);color:#fff}
.nt-socials a:hover{border-color:#fff;color:#fff}
.nt-footer__bottom{margin-top:48px;padding-top:22px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px;font-size:12px;line-height:1.6;color:var(--muted-2)}
@media (min-width:900px){.nt-footer__grid{grid-template-columns:1.6fr repeat(4,minmax(0,1fr));gap:40px}.nt-footer__brand{grid-column:auto}.nt-footer__bottom{flex-direction:row;justify-content:space-between;gap:32px}.nt-footer__legal{max-width:62em;text-align:right}}
.nt-wa{position:fixed;right:16px;bottom:16px;z-index:50;display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 18px;border-radius:999px;background:var(--nt-forest);color:#fff;text-decoration:none;font-weight:600;font-size:14px;box-shadow:0 10px 30px rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.12)}
.nt-wa:hover{color:#fff;transform:translateY(-1px)}
@media (max-width:640px){.nt-wa span{display:none}.nt-wa{width:54px;padding:0;justify-content:center}}
.nt-has-sticky .nt-wa{bottom:88px;width:54px;padding:0;justify-content:center}
@media (max-width:899px){.nt-has-sticky .nt-wa{display:none}}
.nt-has-sticky .nt-wa span{display:none}
@media (min-width:900px){.nt-has-sticky .nt-wa{bottom:16px}}

/* ----------------------------------------------------------------------
   Page produit
   ---------------------------------------------------------------------- */
.nt-crumbs{padding-top:18px;font-size:13px;color:var(--muted-2)}
.nt-crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.nt-crumbs li+li::before{content:"/";margin-right:6px;opacity:.6}
.nt-crumbs a{color:var(--muted-2);text-decoration:none}
.nt-crumbs a:hover{color:var(--fg)}
.nt-crumbs [aria-current]{color:var(--fg)}
.nt-mode-light .nt-product{background:radial-gradient(1000px 560px at 20% 0,var(--g-tint) 0%,rgba(255,255,255,0) 70%)}
.nt-pp{display:flex;flex-direction:column;gap:28px;padding-top:18px;padding-bottom:clamp(56px,7vw,104px)}
@media (min-width:1000px){.nt-pp{flex-direction:row;align-items:flex-start;gap:clamp(28px,4vw,64px)}.nt-pp__gallery{flex:1.05 1 480px;min-width:0;position:sticky;top:96px}.nt-pp__info{flex:1 1 460px;min-width:0}}
.nt-pp__gallery{display:flex;flex-direction:column;gap:12px}
.nt-pp__stage{position:relative;height:clamp(380px,100vw,520px);border-radius:var(--nt-r-lg);overflow:hidden;border:1px solid var(--line);container-type:inline-size}
.nt-mode-light .nt-pp__stage{border-color:transparent;background:radial-gradient(90% 70% at 50% 85%,var(--g-tint-2) 0%,var(--g-tint) 45%,#fff 85%);box-shadow:var(--shadow-lg);background-image:radial-gradient(90% 70% at 50% 85%,var(--g-tint-2) 0%,var(--g-tint) 45%,#fff 85%)}
@media (min-width:1000px){.nt-pp__stage{height:clamp(480px,46vw,660px)}}
.nt-pp__slide{position:absolute;inset:0;animation:nt-fade .5s var(--nt-ease) both}
.nt-pp__slide--photo{inset:14px;border-radius:22px;background:#fff;display:grid;place-items:center;overflow:hidden}
.nt-pp__slide--photo img{max-height:100%;width:auto;object-fit:contain}
.nt-pp__glow{position:absolute;left:50%;top:50%;width:92%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,var(--g-glow) 0%,rgba(255,255,255,0) 64%);filter:blur(18px)}
.nt-mode-light .nt-pp__glow{opacity:.5}
.nt-pp__word{position:absolute;inset:0;display:grid;place-items:center;font-weight:800;font-size:min(230px,calc(150cqw / var(--len,6)));letter-spacing:-.05em;line-height:1;color:transparent;-webkit-text-stroke:1px var(--word);white-space:nowrap;overflow:hidden}
.nt-mode-light .nt-pp__word{-webkit-text-stroke:1.5px rgba(16,19,17,.08)}
.nt-pp__ring{position:absolute;left:50%;bottom:7%;width:58%;height:60px;transform:translateX(-50%);border-radius:50%;border:1px solid var(--line-2)}
.nt-mode-light .nt-pp__ring{border:0;background:radial-gradient(closest-side,rgba(16,30,20,.16),rgba(16,30,20,0))}
.nt-pp__bottle{position:absolute;left:50%;bottom:11%;height:74%;transform:translateX(-50%)}
.nt-pp__bottle img{height:100%;width:auto;filter:drop-shadow(0 30px 40px rgba(0,0,0,.65))}
.nt-mode-light .nt-pp__bottle img{filter:drop-shadow(0 28px 30px rgba(16,30,20,.3))}
.nt-pp__badge{position:absolute;left:18px;top:18px;z-index:2}
.nt-pp__thumbs{display:flex;gap:10px;flex-wrap:wrap}
.nt-pp__thumb{width:78px;height:78px;border-radius:18px;border:1.5px solid var(--line-2);background:#fff;padding:4px;cursor:pointer;display:grid;place-items:center;overflow:hidden}
.nt-pp__thumb img{max-height:100%;width:auto}
.nt-pp__thumb--dark{background:#0F1216;padding:6px}
.nt-mode-light .nt-pp__thumb--dark{background:var(--g-tint)}
.nt-pp__thumb[aria-pressed=true]{border-color:var(--g-accent);box-shadow:0 0 0 3px var(--g-soft)}
.nt-pp__info{display:flex;flex-direction:column;gap:24px}
.nt-pp__head{display:flex;flex-direction:column;gap:12px}
.nt-pp__title{font-weight:800;font-size:clamp(46px,5vw,72px);letter-spacing:-.03em;line-height:1}
.nt-pp__sub{font-family:var(--nt-cond);font-size:clamp(17px,1.5vw,20px);letter-spacing:.06em;text-transform:uppercase;color:var(--g-fg)}
.nt-pp__intro{margin-top:4px;font-size:17px;line-height:1.55;color:var(--muted)}
.nt-pp__intro strong{font-weight:500;color:var(--fg)}
.nt-benefits{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.nt-benefits li{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:var(--nt-r);border:1px solid var(--line);background:var(--surface);font-size:14px;line-height:1.4}
.nt-mode-light .nt-benefits li{background:#fff;box-shadow:var(--shadow)}
.nt-benefits svg{color:var(--g-fg)}

/* ----------------------------------------------------------------------
   Bloc d'achat, formulaires de commande, panier
   ---------------------------------------------------------------------- */
.nt-order{position:relative;border-radius:28px;border:1px solid var(--line-2);background:var(--surface);padding:clamp(18px,2.4vw,28px);scroll-margin-top:96px}
.nt-mode-light .nt-order{background:#fff;border-color:var(--line);box-shadow:var(--shadow-lg)}
.nt-order--oos{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.nt-order__form{display:flex;flex-direction:column;gap:22px}
.nt-order__form.is-sending{pointer-events:none}
.nt-order__form.is-sending .nt-order__submit{pointer-events:none;opacity:.8}
.nt-order__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}
.nt-order__title{font-weight:700;font-size:22px}
.nt-order__express{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:99px;background:var(--g-soft);color:var(--g-fg);font-size:13px;font-weight:600}
.nt-fs{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:10px}
.nt-fs__lg{padding:0;margin-bottom:10px;font-family:var(--nt-cond);font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.nt-fs__opt{text-transform:none;letter-spacing:0;font-family:var(--nt-font);font-size:13px;color:var(--muted-2)}

/* Offres 1 / 2 / 3 boîtes */
.nt-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.nt-tier{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:18px 6px 12px;border-radius:var(--nt-r);border:1.5px solid var(--line-2);background:var(--input);text-align:center;cursor:pointer;transition:border-color .2s,background-color .2s,transform .2s,box-shadow .2s}
.nt-tier:hover{border-color:var(--line-3)}
.nt-tier input{position:absolute;opacity:0;width:1px;height:1px}
.nt-tier__badge{position:absolute;top:-10px;left:50%;transform:translateX(-50%);padding:3px 9px;border-radius:99px;background:var(--g-accent);color:var(--g-on);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.nt-tier__q{font-weight:600;font-size:14px}
.nt-tier__p{font-weight:800;font-size:18px;letter-spacing:-.01em}
.nt-tier__s{font-size:12px;font-weight:600;color:var(--ok)}
.nt-tier.is-on,.nt-tier:has(input:checked){border-color:var(--g-accent);background:var(--g-soft);box-shadow:0 0 0 3px var(--g-soft)}
.nt-tier:has(input:focus-visible){outline:2px solid var(--g-accent);outline-offset:2px}
@media (max-width:380px){.nt-tier__p{font-size:16px}.nt-tier__q{font-size:13px}}

/* Quantité −/+ */
.nt-qtyrow{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.nt-qty{display:inline-flex;align-items:center;border-radius:99px;border:1.5px solid var(--line-2);background:var(--input);overflow:hidden}
.nt-qty__b{width:48px;height:48px;border:0;background:transparent;color:var(--fg);display:grid;place-items:center;cursor:pointer;transition:background-color .15s}
.nt-qty__b:hover:not(:disabled){background:var(--line)}
.nt-qty__b:disabled{opacity:.3;cursor:not-allowed}
.nt-qty__i{width:44px;height:48px;border:0;background:transparent;text-align:center;font-weight:700;font-size:17px;-moz-appearance:textfield;appearance:textfield;display:grid;place-items:center;line-height:48px}
.nt-qty__i::-webkit-outer-spin-button,.nt-qty__i::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.nt-qty__i:focus{outline:none}
.nt-qty:focus-within{border-color:var(--g-accent)}
.nt-qty__i.is-bump{animation:nt-pop .3s var(--nt-ease)}
.nt-qty--sm .nt-qty__b{width:36px;height:36px}
.nt-qty--sm .nt-qty__i{width:30px;height:36px;line-height:36px;font-size:15px}
.nt-qtyrow__info{flex:1 1 180px;font-size:13px;line-height:1.45;color:var(--muted)}
.nt-qtyrow__info b{color:var(--ok);font-weight:600}
.nt-qtyrow__info span{color:var(--muted-2)}

/* Options (compléments, paiement) */
.nt-opt{position:relative;display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 16px;border-radius:var(--nt-r);border:1.5px solid var(--line-2);background:var(--input);cursor:pointer;transition:border-color .2s,background-color .2s,box-shadow .2s}
.nt-opt:hover{border-color:var(--line-3)}
.nt-opt input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.nt-opt__radio{width:20px;height:20px;flex:none;border-radius:99px;border:1.5px solid var(--line-3);display:grid;place-items:center}
.nt-opt__radio::after{content:"";width:9px;height:9px;border-radius:99px;background:transparent;transition:background-color .2s}
.nt-opt__box{width:22px;height:22px;flex:none;border-radius:7px;border:1.5px solid var(--line-3);display:grid;place-items:center;color:transparent;transition:all .2s}
.nt-opt__ico{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--line);color:var(--fg)}
.nt-opt__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.nt-opt__t{font-weight:600;font-size:15px}
.nt-opt__d{font-size:13px;line-height:1.45;color:var(--muted-2)}
.nt-opt__p{display:flex;flex-direction:column;align-items:flex-end;font-weight:700;font-size:17px;white-space:nowrap}
.nt-opt__p s{font-weight:400;font-size:13px;color:var(--muted-2)}
.nt-opt__save{flex:none;padding:6px 10px;border-radius:10px;background:var(--ok-bg);color:var(--ok);font-weight:700;font-size:14px;white-space:nowrap}
.nt-opt:has(input:checked),.nt-opt.is-on{border-color:var(--g-accent);background:var(--g-soft)}
.nt-opt:has(input:checked) .nt-opt__radio,.nt-opt.is-on .nt-opt__radio{border-color:var(--g-accent)}
.nt-opt:has(input:checked) .nt-opt__radio::after,.nt-opt.is-on .nt-opt__radio::after{background:var(--g-accent)}
.nt-opt:has(input:checked) .nt-opt__box,.nt-opt.is-on .nt-opt__box{background:var(--g-accent);border-color:var(--g-accent);color:var(--g-on)}
.nt-opt:has(input:checked) .nt-opt__ico,.nt-opt.is-on .nt-opt__ico{background:var(--g-accent);border-color:var(--g-accent);color:var(--g-on)}
.nt-opt:has(input:focus-visible){outline:2px solid var(--g-accent);outline-offset:2px}
.nt-opt:has(input:disabled){opacity:.45;cursor:not-allowed}
.nt-opt--extra img{height:44px;width:auto;flex:none}
.nt-opt--extra:has(input:checked){border-color:var(--x-accent,var(--g-accent))}
.nt-pay{display:flex;flex-direction:column;gap:10px}
.nt-opt--bacs .nt-pill--xs{margin-left:4px}
.nt-order__pack{padding:12px 14px;border-radius:14px;background:var(--ok-bg);color:var(--ok);font-size:14px;font-weight:500}
.nt-order__warn{font-size:13px;line-height:1.5;color:var(--warn)}
.nt-order__cart{display:flex;flex-direction:column;gap:14px}
.nt-order__cart [data-add-cart]{min-height:54px}
.nt-order__cart [data-add-cart].is-added{background:var(--nt-leaf);border-color:var(--nt-leaf);color:#000}
.nt-order__or{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--muted-2);text-transform:uppercase;letter-spacing:.12em;font-family:var(--nt-cond)}
.nt-order__or::before,.nt-order__or::after{content:"";flex:1;height:1px;background:var(--line-2)}

/* Champs à étiquette flottante */
.nt-field{position:relative;display:flex;flex-direction:column;gap:6px}
.nt-field>label{font-size:14px;font-weight:500}
.nt-input{width:100%;min-height:52px;padding:0 16px;border-radius:14px;border:1px solid var(--input-line);background:var(--input);color:var(--fg);font-size:16px;transition:border-color .2s,background-color .2s,box-shadow .2s}
.nt-input::placeholder{color:var(--muted-2);opacity:.7}
.nt-input:focus{outline:none;border-color:var(--g-accent);box-shadow:0 0 0 3px var(--g-soft)}
textarea.nt-input{min-height:88px;padding:14px 16px;resize:vertical;line-height:1.5}
select.nt-input{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23777' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:44px}
select.nt-input option{color:#000;background:#fff}
.nt-field--float{gap:4px}
.nt-field--float .nt-input{min-height:58px;padding:22px 16px 6px}
.nt-field--float textarea.nt-input{min-height:84px;padding-top:26px}
.nt-field--float>label{position:absolute;left:17px;top:18px;font-size:15px;font-weight:400;color:var(--muted-2);pointer-events:none;transform-origin:0 0;transition:transform .18s var(--nt-ease),color .18s}
.nt-field--float .nt-input:focus+label,.nt-field--float .nt-input:not(:placeholder-shown)+label{transform:translateY(-10px) scale(.78);color:var(--muted)}
.nt-field--float .nt-input::placeholder{color:transparent}
.nt-input.is-invalid{border-color:var(--error);box-shadow:0 0 0 3px rgba(180,35,24,.1)}
.nt-err{font-size:13px;color:var(--error)}
.nt-err:empty{display:none}
.nt-remember{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13px;color:var(--ok);margin-top:-4px}

/* Récapitulatif */
.nt-recap{border-top:1px solid var(--line-2);padding-top:18px;display:flex;flex-direction:column;gap:10px;font-size:14px}
.nt-recap__lines{display:flex;flex-direction:column;gap:8px}
.nt-recap__line{display:flex;justify-content:space-between;gap:12px;color:var(--muted)}
.nt-recap__line span:last-child{white-space:nowrap;text-align:right}
.nt-recap__line s{color:var(--muted-2);font-size:12px;margin-right:4px}
.nt-recap__line.is-discount span:last-child{color:var(--ok);font-weight:600}
.nt-recap__save{align-self:flex-start;margin-top:2px;padding:5px 10px;border-radius:99px;background:var(--ok-bg);color:var(--ok);font-size:13px}
.nt-recap__total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-top:10px;border-top:1px dashed var(--line-2);font-weight:700;font-size:20px}
.nt-recap__eta{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.nt-recap__eta svg{flex:none;color:var(--g-fg)}
.nt-check{position:relative;display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.5;color:var(--muted);cursor:pointer}
.nt-check input{position:absolute;opacity:0;width:1px;height:1px}
.nt-order__submit{width:100%}
.nt-order__submit:disabled{opacity:.7}
.nt-order__sep{opacity:.5}
.nt-order__msg{font-size:14px;color:var(--error);text-align:center}
.nt-order__msg:empty{display:none}
.nt-order__note{text-align:center;font-size:12px;color:var(--muted-2)}
.nt-legal{margin-top:-10px;text-align:center;font-size:12px;line-height:1.5;color:var(--muted-2)}
.nt-legal a{color:var(--muted)}

/* Confirmation */
.nt-done{display:flex;flex-direction:column;gap:16px;animation:nt-fade .5s var(--nt-ease) both}
.nt-done:focus{outline:none}
.nt-done__hero{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.nt-done__icon{width:60px;height:60px;border-radius:99px;background:var(--nt-leaf);color:#000;display:grid;place-items:center;box-shadow:0 0 0 8px rgba(143,187,41,.18);animation:nt-pop .5s var(--nt-ease) both}
.nt-done__title{font-weight:800;font-size:clamp(24px,2.4vw,30px);line-height:1.15;letter-spacing:-.02em}
.nt-done__num{font-family:var(--nt-cond);font-size:15px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2)}
.nt-done__num strong{color:var(--fg);font-weight:500}
.nt-done__text{font-size:15px;line-height:1.6;color:var(--muted)}
.nt-done__card{display:flex;flex-direction:column;gap:10px;padding:16px 18px;border-radius:18px;border:1px solid var(--line);background:var(--surface-2);font-size:14px;line-height:1.6}
.nt-done__card .nt-recap__total{font-size:18px}
.nt-done__card--pay{border-color:rgba(143,187,41,.45);background:var(--ok-bg)}
.nt-done__k{font-family:var(--nt-cond);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}
.nt-done__addr{color:var(--fg)}
.nt-done__eta{color:var(--ok);font-weight:600}
.nt-done__rib{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:var(--card);border:1px solid var(--line);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;letter-spacing:.04em;word-break:break-all}
.nt-done__small{font-size:12px;color:var(--muted-2)}
.nt-copy{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;border:1px solid var(--line-2);background:transparent;color:var(--fg);font:600 12px var(--nt-font);cursor:pointer}
.nt-done__next{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;font-size:12px;line-height:1.35;color:var(--muted)}
.nt-done__next li{display:flex;flex-direction:column;gap:6px;padding:12px 10px;border-radius:14px;border:1px solid var(--line)}
.nt-done__next span{width:24px;height:24px;border-radius:99px;display:grid;place-items:center;background:var(--fg);color:var(--bg);font-weight:700;font-size:12px}
.nt-done__next li:first-child span{background:var(--nt-leaf);color:#000}
.nt-done__actions{display:flex;flex-direction:column;gap:10px}
@media (min-width:520px){.nt-done__actions{flex-direction:row}.nt-done__actions .nt-btn{flex:1}}
.nt-order.is-done{border-color:rgba(143,187,41,.5)}

/* Composition et mode d'emploi (page produit) */
.nt-dose__note{margin-bottom:6px;font-size:13px;color:var(--muted-2)}
.nt-dose__row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:22px 0;border-bottom:1px solid var(--line-2)}
.nt-dose__row span{font-size:clamp(17px,1.6vw,22px);font-weight:600}
.nt-dose__row strong{font-family:var(--nt-cond);font-weight:400;font-size:clamp(24px,2.4vw,34px);color:var(--g-fg);white-space:nowrap}
.nt-usage{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media (min-width:760px){.nt-usage{grid-template-columns:repeat(3,minmax(0,1fr))}}
.nt-usage__card{border-radius:var(--nt-r-md);border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);padding:26px;display:flex;flex-direction:column;gap:10px}
.nt-usage__k{font-family:var(--nt-cond);font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--g-fg)}
.nt-usage__t{font-weight:700;font-size:20px}
.nt-usage__d{font-size:14px;line-height:1.6;color:var(--muted)}

/* Bouton fixe mobile */
.nt-sticky{position:fixed;left:16px;right:16px;bottom:max(16px,env(safe-area-inset-bottom));z-index:45;min-height:56px;font-size:16px;font-weight:700;box-shadow:0 10px 30px rgba(0,0,0,.3);transition:transform .3s var(--nt-ease),opacity .3s}
.nt-sticky.is-hidden{transform:translateY(140%);opacity:0;pointer-events:none}
@media (min-width:900px){.nt-sticky{display:none}}

/* Panier latéral */
.nt-cart{position:fixed;inset:0;z-index:95}
.nt-cart__veil{position:absolute;inset:0;background:rgba(16,19,17,.42);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity .3s}
.nt-cart__panel{position:absolute;top:0;right:0;bottom:0;width:min(460px,100%);display:flex;flex-direction:column;background:var(--bg-2);color:var(--fg);box-shadow:-30px 0 80px rgba(0,0,0,.2);transform:translateX(100%);transition:transform .38s var(--nt-ease);outline:none}
.nt-mode-light .nt-cart__panel{background:linear-gradient(180deg,#FBFAF6,#F4F2EA)}
.nt-cart.is-open .nt-cart__veil{opacity:1}
.nt-cart.is-open .nt-cart__panel{transform:none}
.nt-cart__head{display:flex;align-items:center;gap:8px;padding:12px 12px 8px 20px;min-height:64px}
.nt-cart__title{flex:1;font-weight:700;font-size:19px}
.nt-cart__x,.nt-cart__back{width:44px;height:44px;border:0;border-radius:12px;background:transparent;color:var(--fg);display:grid;place-items:center;cursor:pointer}
.nt-cart__back{margin-left:-12px;transform:scaleX(-1)}
.nt-cart__x:hover,.nt-cart__back:hover{background:var(--line)}
.nt-cart__steps{list-style:none;margin:0 20px 6px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;font-size:11px;font-family:var(--nt-cond);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2)}
.nt-cart__steps li{display:flex;flex-direction:column;gap:6px}
.nt-cart__steps li::before{content:"";height:3px;border-radius:99px;background:var(--line-2);transition:background-color .3s}
.nt-cart__steps li.is-on{color:var(--fg)}
.nt-cart__steps li.is-on::before{background:var(--nt-leaf)}
.nt-cart__body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:12px 20px 24px;display:flex;flex-direction:column;gap:16px}
.nt-cart__form{gap:20px}
.nt-cart__lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.nt-line{display:flex;align-items:center;gap:12px;padding:12px;border-radius:18px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);transition:opacity .22s,transform .22s}
.nt-line.is-out{opacity:0;transform:translateX(30px)}
.nt-line__img{flex:none;width:64px;height:76px;border-radius:12px;display:grid;place-items:center;background:radial-gradient(circle at 50% 80%,color-mix(in srgb,var(--x-accent,#8FBB29) 22%,#fff),#fff 75%);overflow:hidden}
.nt-mode-dark .nt-line__img{background:radial-gradient(circle at 50% 80%,color-mix(in srgb,var(--x-accent,#8FBB29) 30%,#000),#0C0D0F 75%)}
.nt-line__img img{max-height:64px;width:auto}
.nt-line__main{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.nt-line__name{font-weight:700;font-size:16px;text-decoration:none}
.nt-line__sub{font-size:12px;color:var(--muted-2)}
.nt-line__side{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:8px;align-self:stretch}
.nt-line__total{display:flex;flex-direction:column;align-items:flex-end;font-weight:700;font-size:15px;white-space:nowrap}
.nt-line__total s{font-weight:400;font-size:12px;color:var(--muted-2)}
.nt-line__rm{width:34px;height:34px;border:0;border-radius:10px;background:transparent;color:var(--muted-2);display:grid;place-items:center;cursor:pointer}
.nt-line__rm:hover{background:rgba(180,35,24,.08);color:var(--error)}
.nt-cart__pack{padding:12px 14px;border-radius:14px;background:var(--ok-bg);color:var(--ok);font-size:13px;line-height:1.5}
.nt-cart__upsell{display:flex;flex-direction:column;gap:10px;margin-top:4px}
.nt-cart__upsell-t{font-family:var(--nt-cond);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}
.nt-cart__upsell-list{display:flex;flex-direction:column;gap:8px}
.nt-upsell{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:16px;border:1px dashed var(--line-2)}
.nt-upsell img{height:52px;width:auto;flex:none}
.nt-upsell__main{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}
.nt-upsell__main a{font-weight:700;text-decoration:none}
.nt-upsell__main span{font-size:12px;color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nt-upsell__add{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border-radius:99px;border:1.5px solid var(--line-3);background:transparent;color:var(--fg);font-weight:600;font-size:13px;cursor:pointer;white-space:nowrap;transition:all .2s}
.nt-upsell__add:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.nt-cart__foot{padding:16px 20px max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg-2);display:flex;flex-direction:column;gap:12px}
.nt-cart__sum{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--muted)}
.nt-cart__sum>div{display:flex;justify-content:space-between;gap:12px}
.nt-cart__total{padding-top:8px;border-top:1px dashed var(--line-2);color:var(--fg);font-size:18px}
.nt-cart__total strong{font-weight:800}
.nt-cart__bacs{padding:10px 12px;border-radius:12px;background:var(--ok-bg);color:var(--ok);font-size:13px}
.nt-cart__reassure{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;font-size:12px;color:var(--muted-2)}
.nt-cart__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:40px 10px;color:var(--muted)}
.nt-cart__empty-ico{width:76px;height:76px;border-radius:99px;display:grid;place-items:center;background:var(--card);border:1px solid var(--line);color:var(--fg);margin-bottom:6px}
.nt-cart__empty-t{font-weight:700;font-size:20px;color:var(--fg)}
.nt-cart__empty .nt-btn{margin-top:10px;--g-accent:var(--nt-leaf);--g-on:#000}
.nt-cart [data-step=done] .nt-done{padding-top:6px}

/* Notification */
.nt-toast{position:fixed;left:50%;bottom:max(20px,env(safe-area-inset-bottom));z-index:96;display:flex;align-items:center;gap:12px;max-width:calc(100% - 32px);padding:10px 12px 10px 10px;border-radius:18px;background:#101311;color:#fff;font-size:14px;box-shadow:0 20px 50px rgba(0,0,0,.35);transform:translate(-50%,24px);opacity:0;transition:transform .35s var(--nt-ease),opacity .35s}
.nt-toast.is-on{transform:translate(-50%,0);opacity:1}
.nt-toast__ico{width:32px;height:32px;flex:none;border-radius:99px;background:var(--nt-leaf);color:#000;display:grid;place-items:center}
.nt-toast__ico svg{width:18px;height:18px}
.nt-toast .nt-link{color:#C9E37A;white-space:nowrap}
.nt-has-sticky .nt-toast{bottom:92px}
@media (min-width:900px){.nt-has-sticky .nt-toast{bottom:24px}}

/* ----------------------------------------------------------------------
   Pages, articles, contenu de l'éditeur
   ---------------------------------------------------------------------- */
.nt-pagehead{padding-block:clamp(48px,7vw,104px) clamp(36px,5vw,64px);border-bottom:1px solid var(--line)}
.nt-pagehead .nt-wrap{display:flex;flex-direction:column;gap:16px}
.nt-pagehead .nt-crumbs{padding-top:0}
.nt-article__cover{margin-top:32px}
.nt-article__cover img{width:100%;border-radius:var(--nt-r-lg)}
.nt-prose{max-width:760px;font-size:17px;line-height:1.75;color:var(--muted)}
.nt-prose>*+*{margin-top:1.1em}
.nt-prose h2{margin-top:1.8em;font-size:clamp(24px,2.4vw,32px);font-weight:700;letter-spacing:-.01em;color:var(--fg)}
.nt-prose h3{margin-top:1.6em;font-size:21px;font-weight:700;color:var(--fg)}
.nt-prose a{color:var(--hl)}
.nt-prose ul,.nt-prose ol{padding-left:1.2em}
.nt-prose li+li{margin-top:.4em}
.nt-prose blockquote{margin:1.6em 0;padding:4px 0 4px 20px;border-left:3px solid var(--nt-leaf);font-size:20px;color:var(--fg)}
.nt-prose img{border-radius:var(--nt-r)}
.nt-prose strong{color:var(--fg)}
.nt-prose table,.nt-table{width:100%;border-collapse:collapse;font-size:15px}
.nt-prose th,.nt-prose td,.nt-table th,.nt-table td{padding:12px 10px;border-bottom:1px solid var(--line-2);text-align:left;vertical-align:top}
.nt-table th{width:40%;color:var(--muted);font-weight:500}
.nt-prose .wp-block-button__link{background:var(--btn-bg);color:var(--btn-fg);border-radius:999px;padding:14px 26px;font-weight:600;text-decoration:none}
.nt-prose .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px}
.nt-prose .alignwide{max-width:1100px}
.nt-prose .has-text-align-center{text-align:center}
.nt-pagination{margin-top:48px}
.nt-pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px}
.nt-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--line-2);text-decoration:none}
.nt-pagination .page-numbers.current{background:var(--btn-bg);color:var(--btn-fg)}
.nt-empty{display:flex;flex-direction:column;align-items:flex-start;gap:18px;color:var(--muted)}
.nt-404__code{font-weight:800;font-size:clamp(120px,22vw,260px);line-height:.9;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px var(--line-3)}
.nt-404__ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}

/* Formulaires (contact, suivi) */
.nt-form{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-block:1.4em;padding:clamp(18px,2.4vw,28px);border-radius:var(--nt-r-md);border:1px solid var(--line-2);background:var(--card);box-shadow:var(--shadow);--g-accent:var(--nt-leaf);--g-on:#000;--g-soft:rgba(143,187,41,.14)}
.nt-form__grid{width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@media (min-width:640px){.nt-form__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nt-field--full{grid-column:1/-1}}
.nt-form__msg{font-size:14px;color:var(--muted)}
.nt-form__msg:empty{display:none}
.nt-form__msg.is-error{color:var(--error)}
.nt-form__msg.is-ok{color:var(--ok)}
.nt-track__result{width:100%;display:flex;flex-direction:column;gap:14px;padding-top:8px;border-top:1px solid var(--line)}
.nt-track__head{font-weight:700;font-size:18px}
.nt-track__items,.nt-track__note,.nt-track__state,.nt-track__code{font-size:14px;color:var(--muted)}
.nt-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;font-size:13px;color:var(--muted-2)}
.nt-steps li{display:flex;flex-direction:column;gap:8px}
.nt-steps__dot{height:6px;border-radius:99px;background:var(--line-2)}
.nt-steps .is-done .nt-steps__dot{background:var(--nt-leaf)}
.nt-steps .is-current{color:var(--fg);font-weight:600}
.nt-steps .is-current .nt-steps__dot{background:var(--nt-leaf);box-shadow:0 0 12px var(--nt-leaf)}
.nt-cards3{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-block:1.2em}
@media (min-width:640px){.nt-cards3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.nt-infocard{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:var(--nt-r-md);border:1px solid var(--line-2);background:var(--card);text-decoration:none;color:var(--fg)!important;transition:border-color .2s}
.nt-infocard:hover{border-color:var(--nt-leaf)}
.nt-infocard svg{color:var(--hl);margin-bottom:6px}
.nt-infocard__l{font-family:var(--nt-cond);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}
.nt-infocard__v{font-weight:600;font-size:16px;word-break:break-word}
.nt-checklist{list-style:none!important;padding:0!important;display:flex;flex-direction:column;gap:14px}
.nt-checklist li{display:flex;gap:14px;align-items:flex-start}
.nt-checklist svg{flex:none;color:var(--hl);margin-top:3px}

/* ----------------------------------------------------------------------
   Animations
   ---------------------------------------------------------------------- */
@keyframes nt-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes nt-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes nt-up{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}
@keyframes nt-pop{0%{transform:scale(.6)}60%{transform:scale(1.12)}100%{transform:scale(1)}}
@keyframes nt-prog{from{width:0}to{width:100%}}
@keyframes nt-spin{to{transform:rotate(360deg)}}
@keyframes nt-pulse{0%,100%{opacity:.35}50%{opacity:1}}
@keyframes nt-slide{from{transform:translateX(40px);opacity:0}to{transform:none;opacity:1}}
.nt-js [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .8s var(--nt-ease),transform .8s var(--nt-ease)}
.nt-js [data-reveal].is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .nt-js [data-reveal]{opacity:1;transform:none}
}

/* WordPress */
.alignleft{float:left;margin:0 1.5em 1em 0}
.alignright{float:right;margin:0 0 1em 1.5em}
.aligncenter{margin-inline:auto}
.wp-caption-text,figcaption{font-size:13px;color:var(--muted-2);margin-top:8px}
.woocommerce-notices-wrapper:empty{display:none}

/* Petits écrans */
@media (max-width:420px){.nt-order__submit{font-size:15px;padding:0 16px}.nt-order{padding:16px}.nt-opt{padding:12px}.nt-opt__p{font-size:16px}.nt-opt__ico{display:none}.nt-done__next{grid-template-columns:1fr}.nt-done__next li{flex-direction:row;align-items:center}}
.nt-mode-light .nt-pack--featured .nt-rating{color:rgba(255,255,255,.75)}
.nt-mode-light .nt-pack--featured .nt-rating b{color:#fff}
.nt-mode-light .nt-pack--featured{--star-off:rgba(255,255,255,.25)}
@media (max-width:520px){.nt-pack__actions .nt-btn:first-child{padding:0 16px;font-size:14px}}
