/* ------------------------------------------------------------
   Options payantes (suppléments) à l'achat
   ------------------------------------------------------------ */
.price-old { color: rgba(255,255,255,0.5); text-decoration: line-through; margin-right: 0.35rem; font-weight: 400; }
.supp-choices { border: 0; padding: 0; margin: 0 0 1.4rem; min-width: 0; }
.supp-choices[hidden], .supp-total[hidden] { display: none; }
.supp-choices legend { padding: 0; margin-bottom: 0.9rem; font-family: var(--font-display); font-weight: 600; font-size: 1.35rem; line-height: 1.25; color: var(--cream, #f1ead9); }
.checkout-form .supp-card { display: flex; align-items: center; gap: 1rem; margin: 0 0 0.7rem; padding: 0.95rem 1.1rem; min-height: 56px; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.14); border-radius: 14px; cursor: pointer; transition: border-color .15s, background .15s; }
.checkout-form .supp-card:hover { border-color: rgba(196,152,73,0.6); }
.checkout-form .supp-card input[type="radio"] { appearance: none; -webkit-appearance: none; flex: 0 0 22px; width: 22px; height: 22px; min-height: 0; margin: 0; padding: 0; border-radius: 50%; border: 2px solid rgba(255,255,255,0.8); background: #fff; display: grid; place-content: center; }
.checkout-form .supp-card input[type="radio"]::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--gold); transform: scale(0); transition: transform .12s; }
.checkout-form .supp-card input[type="radio"]:checked::before { transform: scale(1); }
.checkout-form .supp-card:has(input:checked) { border-color: var(--gold); background: rgba(196,152,73,0.12); }
.supp-card-label { flex: 1 1 auto; font-size: 1.05rem; }
.supp-card-price { flex: 0 0 auto; white-space: nowrap; }
.supp-card-price strong { color: var(--gold); font-size: 1.2rem; font-weight: 600; }
.supp-card-none { justify-content: flex-start; margin-top: 1.1rem; }
.supp-total { margin: 0 0 1.2rem; font-size: 1.1rem; }
.supp-total strong { color: var(--gold, #C49849); }
.order-supplements ul { margin: 0.4rem 0 0.8rem; padding-left: 1.2rem; }
.price-old { color: rgba(255,255,255,0.5); text-decoration: line-through; margin-right: 0.35rem; font-weight: 400; }
.supp-person-title { margin: 1.2rem 0 0.6rem; font-weight: 600; color: var(--gold, #C49849); font-family: var(--font-display); letter-spacing: .04em; text-transform: uppercase; font-size: .9rem; }

/* Politiques de l'événement (case obligatoire avant paiement) */
.terms-box { border: 1px solid rgba(196,152,73,.45); border-radius: 6px; padding: .9rem 1.1rem 1.1rem; margin: 1.4rem 0 1.4rem; }
.terms-box legend { padding: 0 .5rem; font-family: var(--font-display); font-weight: 700; color: var(--gold, #C49849); }
.terms-intro { margin: 0 0 .7rem; font-size: .92rem; opacity: .85; }
.terms-label span { line-height: 1.55; }
.terms-label a { color: var(--gold, #C49849); text-decoration: underline; }
