/* =====================================================================
   ADUX · Revamp 2026 — couche de design globale (chargée après le CSS de page)
   Charte : rouge Guardsman CC0000 + neutres charbon · Sora (titres) · Inter (texte)
   Objectif : retirer les marqueurs « génération IA » (crème, mono, pilules,
   bandeaux arc-en-ciel, fade-up) et imposer un langage propre et senior.
   ===================================================================== */

:root{
  --bg:#FFFFFF; --card:#FFFFFF; --surface:#F5F6F7;
  --ink:#16181A; --muted:#5B6166; --line:#E4E6E9; --line-2:#CDD1D6;
  --signal:#CC0000; --signal-dark:#A30000;
  --dark-card:#16181A;
  --radius:14px;
  /* palette charte appliquée aux anciens accents « Google » */
  --g-rouge:#CC0000; --g-bleu:#0B63A5; --g-vert:#2AA65B; --g-jaune:#F2B705;
  --g-purple:#6D3FA6;
}

/* ---------- Typo ---------- */
body{font-family:'Inter',system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--ink);}
h1,h2,h3,h4,
.suite h3,.expert h3,.lb h3,.member h4,.final h2,.vm p,
.code-card .c-letter,.a6-verbs,.mm-link,.scale h4,.f-step h4{
  font-family:'Sora',system-ui,sans-serif;
}
h1{letter-spacing:-.02em;font-weight:800;}
h2{letter-spacing:-.015em;font-weight:700;}
h3,h4{font-weight:700;}
.mono{font-family:'Inter',sans-serif;}

/* libellés/eyebrows : Inter, fin du mono majuscule très espacé */
.eyebrow,.s-kicker,.m-role,.vm-kicker,.lb-kicker,.mod-kicker,.team-photo-cap,
.reassure,.scale .mono-big,.expert li,.s-price,.suite .s-price,.t-block .t-lbl,
.tb-h-lbl,.pay-sticky-lbl,.pay-toggle button,.t-block .t-sub,.cl-lbl{
  font-family:'Inter',sans-serif;
}
.eyebrow,.s-kicker,.vm-kicker,.lb-kicker,.mod-kicker{letter-spacing:.03em;}

/* ---------- Header ---------- */
header{background:rgba(255,255,255,.9);border-bottom:1px solid var(--line);}
.menu-open{
  border:1.5px solid var(--line-2);border-radius:10px;color:var(--ink);
  font-family:'Inter',sans-serif;font-weight:600;
}
.menu-open:hover{background:transparent;border-color:var(--ink);color:var(--ink);}

/* ---------- Boutons : arrondis, pas pilule, sans halo ---------- */
.btn{border-radius:8px;font-family:'Inter',sans-serif;font-weight:600;}
.btn-signal{background:var(--signal);color:#fff;border:1.5px solid var(--signal);}
.btn-signal:hover{background:var(--signal-dark);border-color:var(--signal-dark);box-shadow:none;transform:none;}
.btn-ghost{background:#fff;border:1.5px solid var(--line-2);color:var(--ink);}
.btn-ghost:hover{background:var(--surface);border-color:var(--ink);color:var(--ink);}

/* ---------- Cartes : contour uniforme, sans bandeau épais ---------- */
.suite,.member,.code-card{
  background:#fff;border:1px solid var(--line);border-radius:14px;
}
.suite{border-top:1px solid var(--line);}
.suite:hover,.member:hover{box-shadow:0 12px 34px rgba(20,24,28,.08);transform:translateY(-3px);}
.code-card{border-top:1px solid var(--line);}
/* fin accent : un filet 2px coloré (charte) au lieu d'un bandeau 6px */
.suite.rouge{border-top:2px solid var(--g-rouge);}
.suite.bleu{border-top:2px solid var(--g-bleu);}
.suite.vert{border-top:2px solid var(--g-vert);}
.suite.jaune{border-top:2px solid var(--g-jaune);}
.suite.noir{border-top:2px solid var(--ink);}
.code-card.c1{border-top:2px solid var(--g-rouge);}
.code-card.c2{border-top:2px solid var(--g-vert);}
.code-card.c3{border-top:2px solid var(--g-jaune);}
.code-card.c4{border-top:2px solid var(--g-bleu);}
/* boutons de carte unifiés (sobre) au lieu de 6 couleurs */
.suite .btn{background:transparent;border:1.5px solid var(--ink);color:var(--ink);}
.suite .btn:hover{background:var(--ink);color:#fff;}
.suite .s-kicker{color:var(--muted);}
.suite.rouge .s-kicker{color:var(--g-rouge);}
.suite.bleu .s-kicker{color:var(--g-bleu);}
.suite.vert .s-kicker{color:#1F8A4C;}
.suite.jaune .s-kicker{color:#B6850A;}

/* chips */
.suite .chip{border-radius:6px;}

/* ---------- Sections sombres adoucies ---------- */
.fly,.vm,.final,.suite-more,.dark-card{background:var(--dark-card);}
.vm .vm-kicker{color:var(--g-jaune);}

/* ---------- Avatars équipe : ronds colorés préservés + 2 couleurs en plus ---------- */
.avatar{border-width:3px;}
.avatar.rouge{border-color:var(--g-rouge);}
.avatar.bleu{border-color:var(--g-bleu);}
.avatar.jaune{border-color:var(--g-jaune);}
.avatar.vert{border-color:var(--g-vert);}
.avatar.violet{border-color:var(--g-purple);}
.avatar.ink{border-color:var(--ink);}
.avatar.mono-av{display:flex;align-items:center;justify-content:center;color:#fff;
  font-family:'Sora',sans-serif;font-weight:700;font-size:1.6rem;letter-spacing:.01em;}
.avatar.mono-av.violet{background:var(--g-purple);}
.avatar.mono-av.ink{background:var(--ink);}
/* 6 membres : grille à 3 colonnes sur grand écran */
@media(min-width:921px){ .team-grid{grid-template-columns:repeat(3,1fr);} }

/* ---------- Nettoyage des tics IA ---------- */
.g-dots{display:none;}
.reveal{animation:none !important;opacity:1 !important;transform:none !important;}
.reassure span::before{content:"";}
.expert li::before{content:"";margin:0;}
.reassure span:not(:last-child)::after{content:"·";color:var(--line-2);margin-left:18px;}
.expert li:not(:last-child)::after{content:"·";color:var(--line-2);margin-left:18px;}

/* ---------- Lightbox ---------- */
.lb,.lb input{border-radius:12px;}
.lb input:focus{border-color:var(--signal);box-shadow:0 0 0 3px rgba(204,0,0,.14);}

/* ---------- Consentement + CTA flottants ---------- */
#consentBanner button{border-radius:10px;font-family:'Inter',sans-serif;}
.scta-main{background:var(--signal);border-radius:10px;box-shadow:0 12px 30px rgba(20,24,28,.22);}
.scta-main:hover{background:var(--signal-dark);}

/* =====================================================================
   TARIFS · Calculateur en panneau latéral droit (style panier)
   Le panneau (#totalBar) glisse de la droite ; un lanceur flottant
   reste visible quand il est fermé. Aucun voile : la page reste lisible.
   ===================================================================== */
.total-bar{
  position:fixed; top:0; right:0; bottom:auto; left:auto;
  height:100dvh; width:min(390px,92vw);
  background:var(--ink); color:#fff;
  box-shadow:-20px 0 55px rgba(0,0,0,.30);
  transform:translateX(100%);
  transition:transform .34s cubic-bezier(.4,0,.2,1);
  z-index:9995; display:flex; flex-direction:column; overflow-y:auto;
}
.total-bar.open{transform:translateX(0);}
@media(prefers-reduced-motion:reduce){ .total-bar{transition:none;} }

.cp-head{
  position:sticky;top:0;z-index:2;background:var(--ink);
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 20px;border-bottom:1px solid #2A2D30;
}
.cp-title{font-family:'Sora',sans-serif;font-weight:700;font-size:1.08rem;color:#fff;}
.cp-close{width:38px;height:38px;border:none;background:transparent;color:#fff;
  font-size:1.25rem;line-height:1;border-radius:9px;cursor:pointer;}
.cp-close:hover{background:rgba(255,255,255,.10);}
.cp-close:focus-visible{outline:3px solid #fff;outline-offset:2px;}

/* le corps n'est plus replié verticalement : on déroule dans le panneau */
.total-bar .tb-body{max-height:none;overflow:visible;opacity:1;}
.total-bar .pay-sticky{flex-direction:column;align-items:stretch;gap:12px;padding:18px 20px 0;max-width:none;}
.total-bar .pay-toggle{grid-template-columns:1fr 1fr;gap:6px;}
.total-bar .pay-toggle button{min-height:54px;}
.total-bar .total-inner{display:flex;flex-direction:column;gap:16px;max-width:none;padding:18px 20px 24px;}
.total-bar .total-inner .btn{width:100%;text-align:center;justify-self:auto;}
.t-block{min-width:0;}

/* lanceur flottant (pastille « Votre estimation ») */
.calc-launch{
  position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:9990;
  display:flex;flex-direction:column;align-items:center;gap:9px;
  background:var(--signal);color:#fff;border:none;cursor:pointer;
  font-family:'Inter',sans-serif;font-weight:700;font-size:.9rem;letter-spacing:.02em;
  padding:16px 9px;border-radius:14px 0 0 14px;
  box-shadow:-7px 10px 30px rgba(20,24,28,.30);
  transition:background .15s ease, padding-right .15s ease;
}
.calc-launch:hover{background:var(--signal-dark);padding-right:14px;}
.calc-launch:focus-visible{outline:3px solid var(--ink);outline-offset:3px;}
.calc-launch.hidden{display:none;}
.calc-launch .cl-lbl{writing-mode:vertical-rl;text-orientation:mixed;opacity:.96;}
.calc-launch .cl-fig{display:none;}
.calc-launch .cl-arrow{font-size:1.2rem;line-height:1;}
.calc-launch.pulse{animation:clpulse .4s ease;}
@keyframes clpulse{0%{transform:translateY(-50%) scale(.97);}55%{transform:translateY(-50%) scale(1.03);}100%{transform:translateY(-50%) scale(1);}}
@media(prefers-reduced-motion:reduce){ .calc-launch.pulse{animation:none;} }
@media(max-width:560px){
  .total-bar{width:100vw;}
}

/* =====================================================================
   ACCUEIL · présentation des six leviers (cartes épurées, façon maquette)
   ===================================================================== */
#suite .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:38px;}
#suite .card{
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 22px;
  display:flex;flex-direction:column;text-decoration:none;color:var(--ink);transition:.18s ease;
}
#suite .card:hover{border-color:var(--line-2);box-shadow:0 12px 34px rgba(20,24,28,.08);transform:translateY(-3px);}
#suite .card .cat{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:600;letter-spacing:.02em;color:var(--muted);}
#suite .card .cat i{width:9px;height:9px;border-radius:3px;display:block;flex:none;}
#suite .card h3{font-family:'Sora',sans-serif;font-weight:700;font-size:1.5rem;margin-top:12px;letter-spacing:-.01em;}
#suite .card .pname{font-size:.92rem;font-weight:600;color:var(--ink);margin-top:3px;}
#suite .card .cdesc{font-size:.93rem;color:var(--muted);margin-top:11px;flex:1;line-height:1.55;}
#suite .card .crow{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:15px;border-top:1px solid var(--line);}
#suite .card .price{font-family:'Sora',sans-serif;font-weight:700;font-size:1.05rem;color:var(--ink);}
#suite .card .go{font-size:.88rem;font-weight:600;color:var(--signal);display:inline-flex;align-items:center;gap:5px;white-space:nowrap;}
@media(max-width:880px){ #suite .cards{grid-template-columns:1fr 1fr;} }
@media(max-width:560px){ #suite .cards{grid-template-columns:1fr;} }

/* Surlignage des titres -> simple texte coloré (pas de bloc de fond) */
h1 .accent, h2 .accent, .hero .accent{background:none;color:var(--signal);padding:0;border-radius:0;box-shadow:none;}

/* CTA sur fond foncé (.final/.fly/.vm) : bouton blanc, lisible quelle que soit la couleur de page */
.final .btn-signal, .fly .btn-signal, .vm .btn-signal{
  background:#fff; color:var(--ink); border-color:#fff;
}
.final .btn-signal:hover, .fly .btn-signal:hover, .vm .btn-signal:hover{
  background:#E9EAEC; color:var(--ink); border-color:#E9EAEC;
}

/* Accueil : teinte légère par carte (couleur du levier) */
#suite .card[style*="--c"]{
  background:color-mix(in srgb, var(--c) 6%, #fff);
  border-color:color-mix(in srgb, var(--c) 30%, var(--line));
}
#suite .card[style*="--c"]:hover{
  background:color-mix(in srgb, var(--c) 11%, #fff);
  border-color:color-mix(in srgb, var(--c) 50%, var(--line));
  box-shadow:0 12px 34px color-mix(in srgb, var(--c) 16%, transparent);
}
#suite .card[style*="--c"] .crow{border-top-color:color-mix(in srgb, var(--c) 24%, var(--line));}
#suite .card[style*="--c"] .go{color:var(--c);}

/* Panneau d'estimation : pousse le contenu vers la gauche (≥900px) au lieu de le recouvrir */
body{transition:padding-right .34s cubic-bezier(.4,0,.2,1);}
@media (min-width:900px){
  body.cp-open{padding-right:390px;}
}

/* Panneau d'estimation : alignement uniforme à gauche pour tous les blocs, quel que soit le mode de paiement */
.total-bar .total-inner{align-items:stretch;}
.total-bar .t-block{text-align:left;}
.total-bar .pay-note{text-align:left;}
