/* ═══════════════════════════════════════════════════════════════
   NUTRYNA · TON CORPS SAIT™
   STYLES DE BASE

   👉 Pour changer les couleurs du site, modifie uniquement
      les valeurs ci-dessous. Elles s'appliquent partout.
   ═══════════════════════════════════════════════════════════════ */

:root{
  /* ── COULEURS DE LA MARQUE ── */
  --ink:       #2A2342;   /* aubergine profond : titres et textes */
  --ink-soft:  #453b66;   /* aubergine clair : paragraphes */
  --lilac:     #CFC7F0;   /* lavande : accents doux */
  --lilac-tint:#EDEAFA;   /* lavande très clair : fonds de section */
  --coral:     #E8734A;   /* corail : boutons et accents */
  --coral-deep:#D65f37;   /* corail foncé : survol des boutons */
  --coral-tint:#FBEAE2;   /* corail très clair : encadrés */
  --cream:     #FBF7F1;   /* papier : fond général du site */
  --sage:      #8CA58A;   /* vert botanique : conseils */
  --sage-tint: #DFEADD;   /* vert très clair : fonds rassurants */
  --line:      rgba(42,35,66,.14);

  /* ── POLICES ── */
  --police-logo:   "Montserrat", sans-serif;           /* le mot « nutryna » */
  --police-titre:  "Bricolage Grotesque", sans-serif;  /* titres */
  --police-texte:  "Hanken Grotesk", system-ui, sans-serif; /* textes */
  --police-script: "Parisienne", cursive;              /* « ton corps sait » */
}

/* ── BANDEAU COOKIES ── */
.nx-cookies{
  position:fixed; left:16px; right:16px; bottom:16px; z-index:9999;
  background:var(--ink); color:var(--cream);
  border-radius:18px; padding:20px 24px;
  display:flex; align-items:center; justify-content:space-between;
  gap:20px; flex-wrap:wrap;
  font-family:var(--police-texte); font-size:.88rem; line-height:1.5;
  box-shadow:0 20px 50px -20px rgba(42,35,66,.5);
  max-width:820px; margin:0 auto;
}
.nx-cookies p{ margin:0; max-width:52ch; color:#cdc7de; }
.nx-cookies-actions{ display:flex; gap:10px; flex-shrink:0; }
.nx-cookies button{
  font-family:var(--police-texte); font-weight:700; font-size:.82rem;
  border-radius:100px; padding:10px 22px; cursor:pointer; border:1.5px solid transparent;
  transition:background .2s, transform .2s;
}
.nx-cookies .nx-accepter{ background:var(--coral); color:#fff; }
.nx-cookies .nx-accepter:hover{ background:var(--coral-deep); transform:translateY(-1px); }
.nx-cookies .nx-refuser{ background:transparent; color:#cdc7de; border-color:rgba(255,255,255,.3); }
.nx-cookies .nx-refuser:hover{ border-color:#fff; color:#fff; }

/* ── BOUTON DE TÉLÉCHARGEMENT DE BROCHURE ── */
.nx-pdf{
  display:block; width:100%; text-align:center; margin-top:10px;
  background:transparent; border:none; cursor:pointer;
  font-family:var(--police-texte); font-size:.8rem; font-weight:600;
  color:var(--ink-soft); text-decoration:underline; text-underline-offset:3px;
  padding:8px 4px; transition:color .2s;
}
.nx-pdf:hover{ color:var(--coral); }
.ocard.featured .nx-pdf{ color:var(--lilac); }
.ocard.featured .nx-pdf:hover{ color:#fff; }

/* ── ACCESSIBILITÉ ── */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{ animation:none !important; transition:none !important; }
}

/* ── IMPRESSION ── */
@media print{
  .nx-cookies, .nav, .top{ display:none !important; }
}


/* ── FENÊTRE DE CHOIX DU RÈGLEMENT ── */
.nx-modal{position:fixed;inset:0;z-index:9998;background:rgba(42,35,66,.55);
  display:flex;align-items:center;justify-content:center;padding:24px;
  font-family:var(--police-texte);backdrop-filter:blur(3px)}
.nx-modal-boite{background:var(--cream);border-radius:22px;padding:32px 30px;max-width:420px;width:100%;text-align:center;
  box-shadow:0 30px 60px -25px rgba(42,35,66,.5)}
.nx-modal-boite h3{font-family:var(--police-titre);font-weight:700;font-size:1.25rem;color:var(--ink);margin-bottom:8px}
.nx-modal-boite p{font-size:.88rem;color:var(--ink-soft);margin-bottom:20px}
.nx-modal-choix{display:grid;gap:10px;margin-bottom:16px}
.nx-modal-btn{display:block;background:var(--ink);color:#fff;text-decoration:none;
  border-radius:100px;padding:15px 20px;font-weight:700;font-size:.92rem;transition:background .2s,transform .2s}
.nx-modal-btn:hover{background:var(--coral);transform:translateY(-2px)}
.nx-modal-fermer{background:none;border:none;cursor:pointer;font-family:var(--police-texte);
  font-size:.84rem;font-weight:600;color:var(--ink-soft);text-decoration:underline;padding:6px}
.nx-modal-fermer:hover{color:var(--coral)}


/* ── LOGOTYPE ── */
.logo-mot,
.nav-brand,
.brand,
.top a{
  font-family:var(--police-logo) !important;
  font-weight:800;
  letter-spacing:-.03em;
  text-transform:none;
}
.logo-mot{ font-weight:900; }
