/* ═══ Finitions (audit design, octobre 2026) ═══════════════════════════════
   Chargé en dernier sur toutes les pages : il corrige sans toucher à l'identité
   (violet / or, titres Playfair en italique). */

/* ─── Surfaces du navigateur aux couleurs du club ─────────────────────────── */
::selection { background: rgba(167,139,250,0.35); color: #fff; }
html { scrollbar-color: #A78BFA #15101F; -webkit-tap-highlight-color: transparent; -webkit-text-size-adjust: 100%; }
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #15101F; }
::-webkit-scrollbar-thumb { background: #A78BFA; border-radius: 3px; }
input, textarea, select { caret-color: #A78BFA; }
a, button, [role="button"] { touch-action: manipulation; }

/* ─── Focus clavier visible ───────────────────────────────────────────────── */
a:focus-visible, button:focus-visible, select:focus-visible, summary:focus-visible, [tabindex]:focus-visible {
  outline: 2px solid #A78BFA; outline-offset: 3px; border-radius: 6px;
}
.f-input:focus-visible { outline: none; border-bottom-color: #A78BFA; box-shadow: 0 1px 0 0 #A78BFA; }

/* ─── Formulaire : 16 px minimum, sinon l'iPhone zoome sur le champ ───────── */
.f-input, input, textarea, select { font-size: 16px; }
.f-input::placeholder { font-size: 0.8rem; color: rgba(212,204,216,0.5); }
.f-label { font-size: 0.75rem; color: rgba(224,216,232,0.72); }
.f-note { font-size: 0.78rem; color: rgba(224,216,232,0.62); }

/* ─── Tailles minimales (12 px) et contrastes (≥ 4,5:1) ───────────────────── */
.eyebrow { font-size: 0.75rem; color: #C7A57B; }
.hero-proof { font-size: 0.78rem; color: rgba(224,216,232,0.82); }
.adv-num { font-size: 0.8rem; color: #C7A57B; }
.card-num { color: #C7A57B; }
.badge { font-size: 0.75rem; }
.member-tag { font-size: 0.75rem; }
.testimonial cite { font-size: 0.75rem; }
.rv-card figcaption { font-size: 0.75rem; color: rgba(224,216,232,0.68); }
.f-progress-labels span { font-size: 0.75rem; color: rgba(224,216,232,0.62); }
.f-progress-labels b { font-size: 0.75rem; }
.av-link, .lc-head p { font-size: 0.75rem; }
.rv-kpi-label, .ft-kpi span { font-size: 0.78rem; color: rgba(224,216,232,0.75); }
.ft-wordmark { font-size: 0.78rem; color: rgba(224,216,232,0.62); }
.ft-copy { font-size: 0.75rem; color: rgba(224,216,232,0.58); letter-spacing: 0.06em; }
.ft-nav a { color: rgba(224,216,232,0.78); }
@media (max-width: 560px) {
  .hero-proof { font-size: 0.78rem; line-height: 1.9; }
  .rv-kpi-label, .ft-kpi span { font-size: 0.75rem; }
  .f-progress-labels span { font-size: 0; }
  .f-progress-labels span.now { font-size: 0.75rem; }
}

/* ─── Cibles tactiles (44 px) ─────────────────────────────────────────────── */
.nav-burger { padding: 12px !important; }
.nav-logo { display: inline-flex; align-items: center; min-height: 44px; }
.ft-nav { gap: 0 1.5rem; }
.ft-nav a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 0.25rem; }

/* ─── Menu : les pages du club ────────────────────────────────────────────── */
.nav-links a[aria-current="page"] { color: #C7A57B; }

/* ─── Étoiles en SVG (rendu identique sur tous les appareils) ─────────────── */
.stars { display: inline-flex; gap: 0.18em; vertical-align: -0.1em; color: #C7A57B; }
.stars svg { width: 0.95em; height: 0.95em; fill: currentColor; }

/* ─── Accueil : hero stable sur mobile, rythme resserré ───────────────────── */
#hero { height: 100svh; }
.adv-stack { padding-bottom: 140px; }
#experiences { padding-top: 6rem; }
@media (max-width: 768px) {
  .adv-stack { padding: 0 1rem 4rem; }
  .adv-card, .adv-card.adv-reverse { padding: 1.75rem 1.5rem !important; margin-bottom: 2.5rem; gap: 1.5rem !important; top: 90px; }
  .adv-img-wrap { width: 55% !important; }
  .adv-desc { font-size: 0.95rem; }
  #experiences { padding: 5rem 1.25rem; }
}
@media (max-width: 560px) {
  .eyebrow { letter-spacing: 0.2em; }
  .eyebrow.hero-eyebrow { letter-spacing: 0.16em; line-height: 1.7; }
}
