/* ============================================================
   NewKeys Slider (nkslide) — 7 modèles
   Root pleine largeur ; le contenu des modèles "boxed" est
   contraint par .nk-inner. Le modèle fullscreen reste full-bleed.
   Tokens surchageables par le thème (ici défauts MAM).
   ============================================================ */
.nkslide{
  --nk-coral:#FF5A5F; --nk-coral-d:#ED4045; --nk-coral-pale:#FFE9EA;
  --nk-navy:#41556B; --nk-navy-d:#1A2738;
  --nk-cream:#FBF6EF; --nk-cream-2:#F4EEDF; --nk-white:#fff;
  --nk-text:#1A2030; --nk-text-2:#4A5468; --nk-muted:#8B94A6;
  --nk-line:#E8E2D6; --nk-butter:#F4C95D; --nk-success:#2E8259;
  --nk-fd:'Fraunces',Georgia,serif; --nk-fb:'DM Sans',system-ui,sans-serif;
  --nk-rmd:14px; --nk-rlg:20px; --nk-rxl:32px; --nk-rpill:999px;
  --nk-maxw:1280px; --nk-minh:400px;
  --nk-shlg:0 30px 70px -24px rgba(26,39,56,.4);
  --nk-shcoral:0 12px 32px -10px rgba(255,90,95,.45);
  width:100%; position:relative; font-family:var(--nk-fb);
}
.nkslide *,.nkslide *::before,.nkslide *::after{box-sizing:border-box}
.nkslide-swiper{width:100%;overflow:hidden;position:relative}
.nkslide .swiper-slide{height:auto}
.nkslide[data-effect="fade"] .swiper-slide{opacity:0!important;transition:opacity .3s ease}
.nkslide[data-effect="fade"] .swiper-slide-active{opacity:1!important}

.nkslide-slide{position:relative;overflow:hidden}
.nkslide-fulllink{position:absolute;inset:0;z-index:30}
.nk-inner{max-width:var(--nk-maxw);margin:0 auto;padding:0 24px;width:100%}
.nk-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;min-height:var(--nk-minh);padding-top:38px;padding-bottom:38px}
.nkslide[data-layout="1-2"] .nk-split{grid-template-columns:1fr 2fr}
.nkslide[data-layout="2-1"] .nk-split{grid-template-columns:2fr 1fr}
.nkslide[data-layout="2-3"] .nk-split{grid-template-columns:2fr 3fr}
.nkslide-slide[data-reverse="true"] .nk-split{direction:rtl}
.nkslide-slide[data-reverse="true"] .nk-split>*{direction:ltr}
.nk-center{display:flex;flex-direction:column;align-items:center;text-align:center;min-height:var(--nk-minh);justify-content:center;padding-top:40px;padding-bottom:40px}

/* atomes communs */
.nk-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--nk-coral)}
.nk-eyebrow .nk-ln{width:30px;height:1px;background:var(--nk-coral);display:inline-block}
.nk-title{font-family:var(--nk-fd);font-weight:600;letter-spacing:-.02em;line-height:1.04;color:var(--nk-navy-d);margin:14px 0 14px;font-size:clamp(30px,3.8vw,46px)}
.nk-title em{font-style:italic;color:var(--nk-coral)}
.nk-lead{font-size:16px;line-height:1.6;color:var(--nk-text-2);max-width:460px;margin:0 0 6px}
.nk-ctas{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:24px;position:relative;z-index:31}
.nk-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--nk-fb);font-weight:600;font-size:15px;padding:14px 26px;border-radius:var(--nk-rpill);text-decoration:none;cursor:pointer;border:none;transition:all .2s ease}
.nk-btn-coral{background:var(--nk-coral);color:#fff;box-shadow:var(--nk-shcoral)}
.nk-btn-coral:hover{background:var(--nk-coral-d);color:#fff;transform:translateY(-1px)}
.nk-btn-ghost{background:transparent;border:1.5px solid var(--nk-line);color:var(--nk-navy-d)}
.nk-btn-ghost:hover{border-color:var(--nk-navy);color:var(--nk-navy)}
.nk-tag{display:inline-block;background:var(--nk-butter);color:var(--nk-navy-d);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:8px 16px;border-radius:var(--nk-rpill);margin-bottom:4px}
.nk-tag-navy{background:var(--nk-navy-d);color:#fff}

/* ---------- ÉDITORIAL ---------- */
.nkslide-slide--editorial{background:radial-gradient(60% 80% at 100% 30%,rgba(255,90,95,.10),transparent 60%),radial-gradient(50% 60% at 0% 80%,rgba(65,85,107,.08),transparent 60%),var(--nk-cream)}
.nk-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px;padding-top:22px;border-top:1px solid var(--nk-line);max-width:480px}
.nk-stat-n{font-family:var(--nk-fd);font-weight:600;font-size:30px;color:var(--nk-navy-d);line-height:1}
.nk-stat-l{font-size:11.5px;color:var(--nk-text-2);margin-top:6px;line-height:1.3}
.nk-visual{position:relative;aspect-ratio:1.05/1;display:flex;align-items:center;justify-content:center}
.nk-blob{position:absolute;inset:0;border-radius:42% 58% 55% 45%/55% 45% 60% 40%;background:linear-gradient(135deg,#FFE0E2,#FFF1E5 60%,#FFE8C5);animation:nkMorph 14s ease-in-out infinite}
.nk-blob-2{background:linear-gradient(135deg,#FFE8C5,#FFF1E5 60%,#E3ECEF)}
@keyframes nkMorph{50%{border-radius:55% 45% 40% 60%/45% 60% 40% 55%}}
.nk-frame{position:relative;z-index:2;width:74%;border-radius:var(--nk-rlg);overflow:hidden;box-shadow:var(--nk-shlg);background:var(--nk-white);animation:nkFloat 6s ease-in-out infinite}
@keyframes nkFloat{50%{transform:translateY(-12px)}}
.nk-frame img{width:100%;height:100%;object-fit:cover;display:block}

/* ---------- PROMO / ANTI-GASPI ---------- */
.nkslide-slide--antigaspi{background:linear-gradient(135deg,#2D3E54,var(--nk-navy))}
.nkslide-slide--antigaspi::before{content:'';position:absolute;top:-120px;right:-100px;width:420px;height:420px;background:radial-gradient(circle,rgba(255,90,95,.28),transparent 70%);z-index:1}
.nkslide-slide--antigaspi .nk-title{color:#fff}
.nkslide-slide--antigaspi .nk-title em{color:var(--nk-butter)}
.nkslide-slide--antigaspi .nk-lead{color:rgba(255,255,255,.78)}
.nk-pills{position:relative;min-height:200px}
.nk-pct{position:absolute;background:#fff;border-radius:var(--nk-rlg);box-shadow:var(--nk-shlg);display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--nk-fd);color:var(--nk-coral);font-weight:600;padding:14px 18px}
.nk-pct b{font-size:34px;line-height:1}
.nk-pct span{font-size:11px;color:var(--nk-muted);font-family:var(--nk-fb);font-weight:600;letter-spacing:.05em;text-transform:uppercase;margin-top:4px}
.nk-pct-1{top:4%;left:8%;transform:rotate(-6deg)}
.nk-pct-2{top:54%;left:32%;transform:rotate(5deg);color:var(--nk-navy-d)}
.nk-pct-3{top:20%;right:4%;transform:rotate(8deg)}

/* ---------- HERITAGE ---------- */
.nkslide-slide--heritage{background:var(--nk-cream);background-image:radial-gradient(circle at 1px 1px,rgba(65,85,107,.07) 1px,transparent 0);background-size:22px 22px}
.nkslide-slide--heritage .nk-eyebrow{color:var(--nk-navy)}
.nkslide-slide--heritage .nk-eyebrow .nk-ln{background:var(--nk-navy)}
.nk-stars{color:var(--nk-butter);letter-spacing:6px;font-size:14px;margin-bottom:14px}
.nkslide-slide--heritage .nk-title{font-size:clamp(34px,5vw,60px);max-width:15ch}
.nkslide-slide--heritage .nk-lead{margin-left:auto;margin-right:auto;max-width:540px}
.nk-marquee{margin-top:32px;width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.nk-mk{display:flex;gap:26px;width:max-content;animation:nkScroll 26s linear infinite;font-family:var(--nk-fd);font-style:italic;font-size:18px;color:var(--nk-navy)}
.nk-mk span{opacity:.55}.nk-mk b{color:var(--nk-coral)}
@keyframes nkScroll{to{transform:translateX(-50%)}}

/* ---------- BOX / PRODUIT ---------- */
.nkslide-slide--box{background:linear-gradient(120deg,var(--nk-cream-2) 0%,var(--nk-cream) 55%)}
.nk-boxv{position:relative;aspect-ratio:1.1/1;display:flex;align-items:center;justify-content:center}
.nk-pkg{width:70%;aspect-ratio:1;border-radius:var(--nk-rxl);overflow:hidden;box-shadow:var(--nk-shlg);transform:rotate(-3deg);background:linear-gradient(135deg,var(--nk-coral),#FF8A63)}
.nk-pkg img{width:100%;height:100%;object-fit:cover;display:block}
.nk-pkg-empty{display:flex;align-items:center;justify-content:center;font-size:84px}
.nk-ribbon{position:absolute;top:8%;right:6%;background:var(--nk-butter);color:var(--nk-navy-d);font-weight:700;font-size:13px;padding:8px 16px;border-radius:var(--nk-rpill);transform:rotate(6deg);box-shadow:var(--nk-shlg)}

/* ---------- NOUVEL ARRIVAGE ---------- */
.nkslide-slide--arrivage{background:radial-gradient(70% 90% at 0% 20%,var(--nk-coral-pale),transparent 55%),var(--nk-cream)}
.nk-pill{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--nk-line);color:var(--nk-coral-d);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:7px 14px;border-radius:var(--nk-rpill);margin-bottom:4px}
.nk-pill .nk-dot{width:7px;height:7px;border-radius:50%;background:var(--nk-coral);animation:nkBlink 1.4s infinite}
@keyframes nkBlink{50%{opacity:.3}}

/* ---------- RÉASSURANCE ---------- */
.nkslide-slide--reassurance{background:linear-gradient(120deg,var(--nk-navy-d) 0%,#243446 100%)}
.nkslide-slide--reassurance .nk-eyebrow{color:var(--nk-butter)}
.nkslide-slide--reassurance .nk-eyebrow .nk-ln{background:var(--nk-butter)}
.nkslide-slide--reassurance .nk-title{color:#fff}
.nkslide-slide--reassurance .nk-title em{color:var(--nk-butter)}
.nkslide-slide--reassurance .nk-lead{color:rgba(255,255,255,.75);margin-left:auto;margin-right:auto}
.nk-rea{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px;width:100%;max-width:820px}
.nk-rea-item{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--nk-rmd);padding:20px;display:flex;flex-direction:column;align-items:center;gap:10px;color:#fff}
.nk-rea-ic{width:46px;height:46px;border-radius:50%;background:rgba(255,90,95,.18);display:flex;align-items:center;justify-content:center}
.nk-rea-ic svg{width:22px;height:22px}
.nk-rea-t{font-weight:600;font-size:14.5px}
.nk-rea-s{font-size:12px;color:rgba(255,255,255,.6)}

/* ---------- IMAGE PLEIN ÉCRAN ---------- */
.nk-fs{position:relative;width:100%;min-height:clamp(360px,46vh,520px);display:flex;align-items:center}
.nk-fs-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.nk-fs-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,22,34,.9),rgba(15,22,34,.2));z-index:1}
.nk-fs-content{position:relative;z-index:2;padding-top:40px;padding-bottom:40px}
.nk-fs .nk-title{color:#fff}.nk-fs .nk-title em{color:var(--nk-butter)}
.nk-fs .nk-eyebrow{color:#fff}.nk-fs .nk-eyebrow .nk-ln{background:var(--nk-coral)}
.nk-fs .nk-lead{color:rgba(255,255,255,.85)}
.nk-fs--center{justify-content:center;text-align:center}
.nk-fs--center .nk-fs-content{display:flex;flex-direction:column;align-items:center}
.nk-fs--center .nk-fs-overlay{background:rgba(15,22,34,.55)}
.nk-fs--center .nk-eyebrow{justify-content:center}
.nk-fs--center .nk-lead{margin-left:auto;margin-right:auto}
.nk-fs--center .nk-ctas{justify-content:center}
.nk-fs--right{justify-content:flex-end;text-align:right}
.nk-fs--right .nk-fs-overlay{background:linear-gradient(270deg,rgba(15,22,34,.9),rgba(15,22,34,.2))}
.nk-fs--right .nk-fs-content{display:flex;flex-direction:column;align-items:flex-end}
.nk-fs--right .nk-ctas{justify-content:flex-end}

/* ---------- navigation swiper ---------- */
.nkslide .swiper-button-prev,.nkslide .swiper-button-next{width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.92);border:1px solid var(--nk-line);color:var(--nk-navy-d);box-shadow:var(--nk-shlg);transition:.2s;margin-top:-23px}
.nkslide .swiper-button-prev:hover,.nkslide .swiper-button-next:hover{background:#fff;color:var(--nk-coral)}
.nkslide .swiper-button-prev::after,.nkslide .swiper-button-next::after{font-size:16px;font-weight:700}
.nkslide .swiper-button-prev{left:22px}.nkslide .swiper-button-next{right:22px}
.nkslide .swiper-pagination-bullet{background:rgba(26,39,56,.3);opacity:1;width:9px;height:9px;transition:.2s}
.nkslide .swiper-pagination-bullet-active{background:var(--nk-coral);width:26px;border-radius:99px}
/* puces claires sur fonds sombres */
.nkslide-slide--antigaspi .swiper-pagination-bullet,
.nkslide-slide--reassurance .swiper-pagination-bullet,
.nkslide-slide--fullscreen .swiper-pagination-bullet{background:rgba(255,255,255,.45)}

/* ---------- responsive ---------- */
@media (max-width:880px){
  .nk-split{grid-template-columns:1fr!important;gap:30px;text-align:center;padding-top:34px;padding-bottom:34px;min-height:0}
  .nkslide-slide[data-reverse="true"] .nk-split{direction:ltr}
  .nk-eyebrow,.nk-ctas,.nk-stats{justify-content:center}
  .nk-lead{margin-left:auto;margin-right:auto}
  .nk-visual,.nk-pills,.nk-boxv{display:none}
  .nk-rea{grid-template-columns:1fr}
  .nk-fs{min-height:380px}
  .nk-fs--right .nk-fs-content,.nk-fs--right{align-items:center;text-align:center}
  .nkslide .swiper-button-prev,.nkslide .swiper-button-next{display:none}
}

/* ---------- CARROUSEL DE MARQUES (marquee CSS) ---------- */
.nkslide-slide--brands{background:var(--nk-cream)}
.nk-brands{width:100%;overflow:hidden;padding:30px 0;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.nk-brands-track{display:flex;align-items:center;gap:20px;width:max-content;
  animation:nkBrandScroll 40s linear infinite}
.nk-brands:hover .nk-brands-track{animation-play-state:paused}
.nk-brand{flex:0 0 auto;display:flex;align-items:center;justify-content:center;
  width:200px;height:130px;padding:14px 20px;background:#fff;border:1px solid var(--nk-line);
  border-radius:var(--nk-rmd);text-decoration:none;
  transition:border-color .2s,box-shadow .2s,transform .2s}
.nk-brand:hover{border-color:var(--nk-coral);box-shadow:var(--nk-shcoral);transform:translateY(-3px)}
.nk-brand img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;
  mix-blend-mode:multiply;filter:saturate(.96)}
@keyframes nkBrandScroll{to{transform:translateX(-50%)}}
@media (max-width:880px){.nk-brand{width:160px;height:104px}}

/* ============================================================
   Template "reouverture" — banniere bilingue FR/EN
   ============================================================ */
.nkslide-slide--reouverture{background:radial-gradient(620px 380px at 90% -10%,rgba(244,201,93,.16),transparent 60%),radial-gradient(520px 360px at -6% 115%,rgba(255,90,95,.10),transparent 60%),var(--nk-cream)}
.nkslide-slide--reouverture::after{content:"";position:absolute;inset:0;z-index:0;background-image:radial-gradient(circle,var(--nk-butter) 1.4px,transparent 2px),radial-gradient(circle,var(--nk-coral) 1.4px,transparent 2px);background-size:48px 48px,66px 66px;background-position:0 0,24px 24px;opacity:.06;pointer-events:none}
.nk-reopen{position:relative;z-index:2;display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:44px;padding:58px 56px;max-width:var(--nk-maxw);margin:0 auto;min-height:var(--nk-minh)}
.nk-reopen-copy{min-width:0}
.nk-flagline{display:flex;height:5px;width:88px;border-radius:4px;overflow:hidden;margin:0 0 24px}
.nk-flagline i{flex:1}
.nk-flagline .r{background:var(--nk-coral)}
.nk-flagline .w{background:#fff}
.nk-flagline .b{background:var(--nk-navy)}
.nk-reopen-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--nk-coral);margin:0 0 18px}
.nk-reopen-eyebrow b,.nk-reopen-eyebrow strong{color:var(--nk-navy);font-weight:700}
.nk-reopen-title{font-family:var(--nk-fd);font-weight:600;font-size:clamp(38px,4.6vw,64px);line-height:1.02;letter-spacing:-.012em;color:var(--nk-navy-d);margin:0 0 20px;max-width:16ch}
.nk-reopen-title em{font-style:italic;font-weight:500;color:var(--nk-coral)}
.nk-reopen-sub{font-size:clamp(15px,1.35vw,18px);line-height:1.62;color:var(--nk-text-2);max-width:42ch;margin:0 0 30px}
.nk-reopen-sub b,.nk-reopen-sub strong{color:var(--nk-navy-d);font-weight:600;font-style:italic}
.nk-reopen-cta{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin:0 0 30px}
.nk-reopen-btn{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:16px;text-decoration:none;padding:15px 30px;border-radius:var(--nk-rpill);background:var(--nk-coral);color:#fff;box-shadow:var(--nk-shcoral);transition:background .15s,transform .15s,box-shadow .15s}
.nk-reopen-btn:hover{background:var(--nk-coral-d);transform:translateY(-2px)}
.nk-reopen-btn .arrow{transition:transform .15s}
.nk-reopen-btn:hover .arrow{transform:translateX(4px)}
.nk-reopen-promo{display:inline-flex;align-items:center;gap:9px;font-size:14.5px;font-weight:500;color:var(--nk-text-2)}
.nk-reopen-promo .code{background:#fff;border:1.5px dashed var(--nk-navy);border-radius:7px;padding:4px 10px;font-weight:700;letter-spacing:.08em;color:var(--nk-navy-d)}
.nk-reopen-trust{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:13px;font-weight:500;color:var(--nk-text-2)}
.nk-reopen-trust span{display:inline-flex;align-items:center;gap:7px}
.nk-reopen-trust .s{color:var(--nk-butter)}
.nk-reopen-trust .sep{color:#c7bda9}
.nk-reopen-cardwrap{display:flex;justify-content:center}
.nk-reopen-card{background:#fff;border:1px solid var(--nk-line);border-radius:18px;padding:28px 26px;text-align:center;box-shadow:0 14px 34px rgba(40,51,65,.10);max-width:340px}
.nk-reopen-card-kicker{font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--nk-butter);margin:0 0 14px;display:flex;align-items:center;justify-content:center;gap:10px}
.nk-reopen-card-kicker::before,.nk-reopen-card-kicker::after{content:"";height:1px;width:26px;background:var(--nk-line)}
.nk-reopen-card-title{font-family:var(--nk-fd);font-weight:600;font-size:44px;line-height:1;color:var(--nk-navy-d);margin:0 0 12px}
.nk-reopen-card-title em{font-style:italic;font-weight:500;color:var(--nk-coral)}
.nk-reopen-card-text{font-size:14.5px;line-height:1.5;color:var(--nk-text-2);margin:0 0 16px}
.nk-reopen-card-foot{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--nk-navy);padding-top:14px;border-top:1px solid var(--nk-line);margin:0}
.nk-reopen-card-foot .star{color:var(--nk-butter)}
@media(max-width:900px){.nk-reopen{grid-template-columns:1fr;padding:44px 28px;gap:30px;min-height:0}.nk-reopen-title,.nk-reopen-sub{max-width:none}.nk-reopen-card{max-width:360px}}
