/* ============================================================
   Offres et tarifs — « le prix qui bouge »
   ============================================================ */
.choix-formule{padding-top:60px}
.section-tete .accroche strong{color:var(--ivoire)}

/* ---------------- les commandes : format + formule */
.commandes{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 30px;margin-bottom:28px;position:sticky;top:76px;z-index:5;
  padding:12px;border-radius:14px;background:rgba(23,18,16,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--filet)}
.formats-choix{position:relative;display:flex;padding:4px;border-radius:10px;background:rgba(242,237,227,.05)}
.formats-choix button{position:relative;z-index:1;min-height:46px;padding:10px 22px;border:0;background:none;color:var(--texte);font:600 15px var(--ui);cursor:pointer;transition:color .35s}
.formats-choix button[aria-pressed="true"]{color:#1A130C}
.formats-choix .curseur{position:absolute;top:4px;bottom:4px;left:0;width:0;border-radius:7px;background:var(--or);transition:transform .55s var(--sortie),width .55s var(--sortie)}
.gamme-choix{display:flex;align-items:center;gap:14px;font:600 15px var(--ui);color:var(--texte)}
.gamme-choix small{font:600 10.5px var(--ui);letter-spacing:.1em;text-transform:uppercase;color:#1A130C;background:var(--or);padding:3px 7px;border-radius:99px;margin-left:6px;vertical-align:2px}
.interrupteur{position:relative;width:64px;height:36px;border-radius:99px;border:1px solid var(--filet);background:rgba(242,237,227,.08);cursor:pointer;transition:background .4s}
.interrupteur i{position:absolute;top:4px;left:4px;width:26px;height:26px;border-radius:50%;background:var(--ivoire);transition:transform .5s var(--sortie),background .4s}
.interrupteur[aria-checked="true"]{background:color-mix(in srgb,var(--or) 40%,transparent);border-color:var(--or)}
.interrupteur[aria-checked="true"] i{transform:translateX(28px);background:var(--or)}
.gamme-choix .actif{color:var(--ivoire)}

/* ---------------- la formule */
.formule{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);border:1px solid var(--filet);border-radius:18px;overflow:hidden;
  background:linear-gradient(150deg,rgba(242,237,227,.05),rgba(242,237,227,.012))}
.formule-prix{position:relative;padding:44px 42px;border-right:1px solid var(--filet);overflow:hidden}
.formule-prix::before{content:"";position:absolute;width:520px;height:520px;right:-240px;top:-260px;border-radius:50%;
  background:radial-gradient(closest-side,rgba(200,165,108,.26),transparent);opacity:0;transition:opacity .9s var(--sortie)}
.formule[data-gamme="premium"] .formule-prix::before{opacity:1}
.formule-nom{font:600 15px var(--ui);color:var(--ivoire);display:flex;align-items:center;gap:12px}
.badge-gamme{font:600 11px var(--ui);letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;border-radius:99px;border:1px solid var(--filet);color:var(--texte);transition:all .4s}
.formule[data-gamme="premium"] .badge-gamme{background:var(--or);border-color:var(--or);color:#1A130C}
.prix-geant{display:flex;align-items:flex-end;flex-wrap:wrap;gap:0 14px;margin:18px 0 8px;font:700 clamp(76px,9vw,148px)/.86 var(--titres);color:var(--ivoire);letter-spacing:-.05em}
.a-partir{flex-basis:100%;font:500 14px var(--ui);color:var(--discret);letter-spacing:0;margin-bottom:12px}
.compteur{display:inline-flex;font-variant-numeric:tabular-nums}
.roue{display:inline-block;height:.86em;overflow:hidden;position:relative}
.roue>span{display:block}
.roue .bande{display:flex;flex-direction:column;transition:transform 1s var(--sortie)}
.roue .bande span{display:block;height:.86em;line-height:.86}
.sep{display:inline-block;width:.18em}
.euro{font-size:.42em;color:var(--or);padding-bottom:.12em}
.prix-barre{flex-basis:100%;font-size:.56em;line-height:1;margin:0 0 .14em;color:var(--discret)}
.prix-barre s{color:var(--discret);text-decoration-color:var(--discret);text-decoration-thickness:.07em;white-space:nowrap}
.formule[data-gamme="premium"] .compteur{color:var(--or)}
.formule-desc{margin-top:22px}
.comparatif .barre{display:block;font:500 12.5px var(--ui);color:var(--discret);text-decoration-color:var(--or)}
.formule-desc{max-width:46ch;margin-bottom:18px}
.formule-inclus{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:7px}
.formule-inclus li{position:relative;padding-left:24px;font-size:15px;color:var(--ivoire)}
.formule-inclus li::before{content:"";position:absolute;left:2px;top:.55em;width:10px;height:5px;border-left:1.5px solid var(--or);border-bottom:1.5px solid var(--or);transform:rotate(-45deg)}
.economie{margin:0 0 18px;padding:14px 16px;border-radius:10px;background:rgba(200,165,108,.1);border:1px solid rgba(200,165,108,.35);font-size:14.5px;animation:monte .6s var(--sortie)}
.economie b{color:var(--ivoire)}
.economie strong{display:block;color:var(--or);font:700 18px var(--titres);margin-top:4px}
@keyframes monte{from{opacity:0;transform:translateY(10px)}}
.formule-paiement{font-size:13.5px;color:var(--discret);margin-bottom:22px}

.formule-liste{padding:44px 40px}
.formule-liste-titre{font:600 13px var(--ui);letter-spacing:.1em;text-transform:uppercase;color:var(--or);margin-bottom:18px}
.lignes{list-style:none;margin:0;padding:0}
.lignes li{display:grid;grid-template-columns:26px 1fr;gap:4px 14px;padding:16px 0;border-bottom:1px solid var(--filet);transition:opacity .5s,background .5s}
.lignes li:last-child{border-bottom:0}
.l-coche{grid-row:span 2;width:22px;height:22px;border-radius:50%;border:1px solid var(--filet);position:relative;margin-top:1px;transition:all .5s var(--sortie)}
.l-coche::after{content:"";position:absolute;left:6px;top:6px;width:8px;height:4px;border-left:1.5px solid transparent;border-bottom:1.5px solid transparent;transform:rotate(-45deg);transition:border-color .4s}
.l-nom{font:600 16px var(--titres);color:var(--ivoire);letter-spacing:-.01em}
.l-detail{font-size:14px;color:var(--texte)}
.l-compris .l-coche{background:var(--or);border-color:var(--or);box-shadow:0 0 18px rgba(200,165,108,.45)}
.l-compris .l-coche::after{border-color:#1A130C}
.l-inclus .l-coche{border-color:var(--ivoire)}
.l-inclus .l-coche::after{border-color:var(--ivoire)}
.l-option .l-nom,.l-absent .l-nom{color:var(--texte)}
.l-option .l-detail{justify-self:start;font:600 13px var(--ui);color:var(--or);padding:3px 9px;border-radius:99px;border:1px solid rgba(200,165,108,.4);font-variant-numeric:tabular-nums}
.l-option .l-detail::before{content:"En option · "; font-weight:500;color:var(--discret)}
.l-absent .l-nom,.l-absent .l-detail{color:var(--discret)}
.l-absent .l-coche{border-style:dashed}
.lignes li.change{animation:eclat 1s var(--sortie)}
@keyframes eclat{0%{background:rgba(200,165,108,.16)}100%{background:transparent}}

/* ---------------- dans les deux formules */
.garanties{margin-top:56px}
.garanties-liste{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.garanties-liste li{position:relative;padding:18px 18px 18px 46px;border-radius:12px;border:1px solid var(--filet);color:var(--ivoire);font-size:15px;background:rgba(242,237,227,.025)}
.garanties-liste li::before{content:"";position:absolute;left:18px;top:24px;width:16px;height:4px;
  background:linear-gradient(var(--or),var(--or)) 0 50%/100% 1px no-repeat,linear-gradient(var(--or),var(--or)) right/4px 4px no-repeat}

/* ---------------- tout comparer */
.tout-comparer{margin-top:40px;border:1px solid var(--filet);border-radius:14px}
.tout-comparer summary{list-style:none;cursor:pointer;padding:20px 24px;font:600 17px var(--titres);color:var(--ivoire);display:flex;justify-content:space-between;align-items:center;min-height:44px}
.tout-comparer summary::-webkit-details-marker{display:none}
.tout-comparer summary::after{content:"+";font:400 24px var(--ui);color:var(--or);transition:transform .4s var(--sortie)}
.tout-comparer[open] summary::after{transform:rotate(45deg)}
.tableau-defile{overflow-x:auto;padding:0 12px 18px}
.comparatif{width:100%;min-width:900px;border-collapse:collapse;font-size:13.5px;font-variant-numeric:tabular-nums}
.comparatif th,.comparatif td{padding:11px 10px;border-bottom:1px solid var(--filet);text-align:center;vertical-align:top}
.comparatif thead th{font:600 15px var(--titres);color:var(--ivoire)}
.comparatif thead tr:nth-child(2) th{font:600 11px var(--ui);letter-spacing:.1em;text-transform:uppercase;color:var(--discret)}
.comparatif tbody th{text-align:left;font-weight:500;color:var(--ivoire);min-width:180px}
.comparatif .p{background:rgba(200,165,108,.07)}
.comparatif thead .p{color:var(--or)}
.comparatif .compris{color:var(--or);font-weight:600}
.comparatif .absent{color:var(--discret)}
.comparatif .t-prix td{font:700 17px var(--titres);color:var(--ivoire)}
.comparatif .eco{color:var(--or);font-weight:600}

/* ---------------- la reprise */
.reprise-grille,.options-grille{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.reprise-texte{max-width:56ch}
.reprise-carte{padding:34px;border-radius:16px;border:1px dashed color-mix(in srgb,var(--or) 60%,var(--filet));background:rgba(200,165,108,.04)}
.coches{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:10px}
.coches li{position:relative;padding-left:28px;color:var(--ivoire)}
.coches li::before{content:"";position:absolute;left:3px;top:.5em;width:11px;height:5px;border-left:1.5px solid var(--or);border-bottom:1.5px solid var(--or);transform:rotate(-45deg)}
.reprise-prix{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:22px}
.reprise-prix b{font:700 32px var(--titres);color:var(--ivoire)}
.reprise-prix span{font-size:14px;color:var(--discret)}

/* ---------------- les options */
.options{width:100%;border-collapse:collapse}
.options th,.options td{padding:16px 0;border-bottom:1px solid var(--filet);text-align:left;vertical-align:top}
.options th{font:500 16px var(--ui);color:var(--ivoire)}
.options th small{display:block;color:var(--discret);font-size:13px;margin-top:3px;font-weight:400}
.options td{text-align:right;font:700 18px var(--titres);color:var(--or);white-space:nowrap;padding-left:20px;font-variant-numeric:tabular-nums}

/* ---------------- le calculateur, passé en version nuit */
.nuit-calc .calc{
  --c-fond:#211A16;--c-ivoire:#1B1512;--c-sable:#2A221D;--c-filet:#3A3029;--c-encre:#F2EDE3;--c-texte:#C7BCAD;
  --c-or-texte:#C8A56C;--c-voile:rgba(200,165,108,.14);--c-discret:#A89C8C;--c-or-fonce:#E0C48F;--c-bord:#6E6153;
  --c-jauge:#C8A56C;--c-or:#C8A56C;--c-or-profond:#E0C48F;--c-titres:var(--titres);--c-ui:var(--ui);max-width:none}
.nuit-calc .calc-titre{font-size:clamp(34px,4.4vw,60px);letter-spacing:-.035em}
.nuit-calc .calc-num{color:#1A130C}
.nuit-calc .calc-action .calc-btn{color:#1A130C;background:var(--or)}
.nuit-calc .calc-action .calc-btn:hover{background:#E0C48F}
.calcul{padding-top:60px}

@media (max-width:1020px){
  .formule{grid-template-columns:1fr}
  .formule-prix{border-right:0;border-bottom:1px solid var(--filet)}
  .reprise-grille,.options-grille{grid-template-columns:1fr;gap:30px}
  .commandes{top:70px}
}
@media (max-width:640px){
  .commandes{flex-direction:column;align-items:stretch;padding:8px;position:static}
  .formats-choix button{flex:1;padding:10px 8px;font-size:14px}
  .gamme-choix{justify-content:center}
  .formule-prix,.formule-liste{padding:30px 22px}
  .prix-geant{font-size:76px}
}
@media (prefers-reduced-motion:reduce){.roue .bande{transition:none}}
