/* PAGE SOUTENIR LE CLUB — FC Luy de Béarn
   Fichier : page-soutenir-le-club.php | slug : soutenir-le-club
   Body class : .page-soutenir-le-club | Préfixe : .soutenir-* */

.page-soutenir-le-club {
  --sg:  var(--fclb-green-dark, #2A5C1E);
  --sgl: var(--fclb-green-light, #9FDF6A);
  --sgp: var(--fclb-green-pale, #E4F2D8);
  --snight: #1B2618;
  --sink: #27331f;
  color: var(--sink);
}

/* [hidden] doit gagner sur les display:flex des messages du simulateur */
.page-soutenir-le-club [hidden] { display: none !important; }

/* Focus visible : vert foncé sur fond clair, vert clair sur fond sombre */
.page-soutenir-le-club a:focus-visible,
.page-soutenir-le-club button:focus-visible,
.page-soutenir-le-club input:focus-visible { outline: 3px solid var(--sg); outline-offset: 2px; }
.page-soutenir-le-club .soutenir-hero a:focus-visible,
.page-soutenir-le-club .soutenir-partenaire a:focus-visible { outline-color: var(--sgl); }

/* ── Césure : pas de largeur maximale sur les textes (ils prennent toute la largeur de leur colonne),
      pas de dernière ligne orpheline ni de titre déséquilibré ── */
.page-soutenir-le-club p, .page-soutenir-le-club li { text-wrap: pretty; }
.page-soutenir-le-club h1, .page-soutenir-le-club h2, .page-soutenir-le-club h3 { text-wrap: balance; }

/* ── Structure ── */
.page-soutenir-le-club .soutenir-wrap { max-width: 1200px; margin: 0 auto; }
.page-soutenir-le-club .soutenir-section { padding: clamp(56px, 7vw, 88px) var(--fclb-gutter, clamp(20px, 5vw, 80px)); background: #fff; }
.page-soutenir-le-club .soutenir-section--alt { background: #F4F9EE; }
.page-soutenir-le-club .soutenir-split { display: flex; flex-wrap: wrap; gap: clamp(32px, 5vw, 56px); align-items: center; }
.page-soutenir-le-club .soutenir-split--top { align-items: flex-start; }
.page-soutenir-le-club .soutenir-col { flex: 1 1 380px; min-width: 0; display: flex; flex-direction: column; gap: 20px; }
.page-soutenir-le-club .soutenir-col--cta { align-items: flex-start; gap: 16px; }

/* ── Textes ── */
.page-soutenir-le-club .soutenir-eyebrow { margin: 0; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 16px; letter-spacing: .1em; text-transform: uppercase; color: var(--sg); }
.page-soutenir-le-club .soutenir-eyebrow--light { color: var(--sgl); }
.page-soutenir-le-club .soutenir-title { margin: 0; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 800; font-size: clamp(28px, 3.6vw, 40px); line-height: 1.15; letter-spacing: -.01em; color: var(--snight); }
.page-soutenir-le-club .soutenir-title--light { color: #fff; }
.page-soutenir-le-club .soutenir-text { margin: 0; font-size: clamp(17px, .9vw + 14px, 19px); line-height: 1.65; color: var(--sink); }
.page-soutenir-le-club .soutenir-text--light { color: var(--sgp); }
.page-soutenir-le-club .soutenir-note { margin: 0; font-size: clamp(15px, .5vw + 13px, 16px); line-height: 1.55; color: #4a5a42; }
.page-soutenir-le-club .soutenir-note a { color: var(--sg); font-weight: 600; }
.page-soutenir-le-club .soutenir-link { font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 17px; color: var(--sg); }
.page-soutenir-le-club .soutenir-link--light { color: var(--sgl); }

.page-soutenir-le-club .soutenir-label { display: flex; align-items: center; gap: 14px; }
.page-soutenir-le-club .soutenir-icon { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 52px; height: 52px; border-radius: 50%; background: var(--sgp); color: var(--sg); }
.page-soutenir-le-club .soutenir-icon--light { background: var(--sgl); color: var(--snight); }

/* ── Boutons ── */
.page-soutenir-le-club .soutenir-actions { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 8px; }
.page-soutenir-le-club .soutenir-btn { display: inline-flex; align-items: center; justify-content: center; text-align: center; min-height: 48px; padding: 0 28px; border-radius: 999px; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 17px; text-decoration: none; border: 2px solid transparent; cursor: pointer; transition: opacity .15s; }
.page-soutenir-le-club .soutenir-btn:hover { opacity: .88; }
.page-soutenir-le-club .soutenir-btn--dark { background: var(--sg); color: #fff; }
.page-soutenir-le-club .soutenir-btn--light { background: var(--sgl); color: var(--snight); }
.page-soutenir-le-club .soutenir-btn--outline-light { border-color: var(--sgl); color: #fff; background: transparent; }
.page-soutenir-le-club .soutenir-btn--block { width: 100%; min-height: 52px; box-sizing: border-box; }

/* ── Hero ── */
.page-soutenir-le-club .soutenir-hero { background: var(--sg); color: #fff; padding: clamp(56px, 8vw, 96px) var(--fclb-gutter, clamp(20px, 5vw, 80px)); }
.page-soutenir-le-club .soutenir-hero .soutenir-wrap { display: flex; flex-direction: column; gap: 24px; }
.page-soutenir-le-club .soutenir-hero__title { margin: 0; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 800; font-size: clamp(34px, 5vw, 58px); line-height: 1.1; letter-spacing: -.02em; color: #fff; }
.page-soutenir-le-club .soutenir-hero__intro { margin: 0; font-size: clamp(18px, 1vw + 14px, 20px); line-height: 1.6; color: var(--sgp); }
.page-soutenir-le-club .soutenir-hero .soutenir-actions { margin-top: 0; }
.page-soutenir-le-club .soutenir-hero__pro { margin: 0; font-size: clamp(17px, .9vw + 14px, 19px); color: var(--sgp); }
.page-soutenir-le-club .soutenir-hero__pro a { color: var(--sgl); font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; }

/* ── Simulateur ── */
.page-soutenir-le-club .soutenir-sim { flex: 1 1 400px; min-width: 0; box-sizing: border-box; background: var(--sgp); border-radius: 24px; padding: clamp(24px, 3vw, 36px) clamp(20px, 3vw, 32px); display: flex; flex-direction: column; gap: 24px; }
.page-soutenir-le-club .soutenir-sim__title { margin: 0; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 22px; color: var(--snight); }
.page-soutenir-le-club .soutenir-sim__field { display: flex; flex-direction: column; gap: 10px; }
.page-soutenir-le-club .soutenir-sim__field label { font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 600; font-size: 16px; color: var(--snight); }
.page-soutenir-le-club .soutenir-sim__field input { box-sizing: border-box; width: 100%; height: 60px; padding: 0 20px; border: 2px solid var(--sg); border-radius: 14px; background: #fff; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 28px; color: var(--snight); }
.page-soutenir-le-club .soutenir-sim__presets { display: flex; flex-wrap: wrap; gap: 10px; }
.page-soutenir-le-club .soutenir-chip { min-height: 44px; padding: 0 20px; border-radius: 999px; border: 2px solid var(--sg); background: #fff; color: var(--snight); font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 16px; cursor: pointer; transition: background .15s, color .15s; }
.page-soutenir-le-club .soutenir-chip[aria-pressed="true"] { background: var(--sg); color: #fff; }

.page-soutenir-le-club .soutenir-sim__result { margin: 0; display: flex; flex-direction: column; background: #fff; border-radius: 18px; padding: 8px 24px; }
.page-soutenir-le-club .soutenir-sim__row { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 16px 0; border-bottom: 1px solid #d9e6cf; }
.page-soutenir-le-club .soutenir-sim__row:last-child { border-bottom: 0; }
.page-soutenir-le-club .soutenir-sim__row dt { margin: 0; font-size: 17px; }
.page-soutenir-le-club .soutenir-sim__row dd { margin: 0; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 20px; color: var(--snight); text-align: right; }
.page-soutenir-le-club .soutenir-sim__reduc { color: var(--sg) !important; }
.page-soutenir-le-club .soutenir-sim__row--total dt { font-weight: 700; }
.page-soutenir-le-club .soutenir-sim__row--total dd { font-weight: 800; font-size: 30px; }


/* ── Avantages donateurs + téléchargement du dossier ── */
.page-soutenir-le-club .soutenir-thanks { background: var(--sgp); border-radius: 18px; padding: 20px 24px; }
.page-soutenir-le-club .soutenir-thanks__title { margin: 0 0 10px; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 20px; color: var(--snight); }
.page-soutenir-le-club .soutenir-thanks__list { margin: 0; padding-left: 1.2em; display: flex; flex-direction: column; gap: 6px; font-size: clamp(17px, .9vw + 14px, 19px); line-height: 1.55; }
.page-soutenir-le-club .soutenir-dl { display: inline-flex; align-items: center; gap: 10px; align-self: flex-start; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 17px; color: var(--sg); }
.page-soutenir-le-club .soutenir-dl__tag { font-size: 15px; padding: 2px 8px; border-radius: 6px; background: var(--sg); color: #fff; }

/* ── À quoi sert votre don ── */
.page-soutenir-le-club .soutenir-impact { display: flex; flex-direction: column; gap: 24px; }
.page-soutenir-le-club .soutenir-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 14px; }
.page-soutenir-le-club .soutenir-stat { display: flex; flex-direction: column; gap: 6px; background: #fff; border: 1px solid #DDE8D5; border-radius: 14px; padding: 20px 18px; text-align: center; }
.page-soutenir-le-club .soutenir-stat__val { font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 800; font-size: clamp(28px, 3.4vw, 38px); line-height: 1; color: var(--sg); }
.page-soutenir-le-club .soutenir-stat__lbl { font-size: clamp(15px, .5vw + 13px, 16px); line-height: 1.4; color: #4a5a42; }
.page-soutenir-le-club .soutenir-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; }
.page-soutenir-le-club .soutenir-card { display: flex; flex-direction: column; gap: 12px; background: #fff; border: 1px solid #DDE8D5; border-top: 4px solid var(--sg); border-radius: 16px; padding: 26px 24px; }
.page-soutenir-le-club .soutenir-card__title { margin: 0; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 22px; line-height: 1.25; color: var(--snight); }
.page-soutenir-le-club .soutenir-card__budget { margin: 0; display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; }
.page-soutenir-le-club .soutenir-card__budget strong { font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 800; font-size: 28px; color: var(--sg); }
.page-soutenir-le-club .soutenir-card__budget span { font-size: clamp(15px, .5vw + 13px, 16px); color: #4a5a42; }
.page-soutenir-le-club .soutenir-card__text { margin: 0; font-size: clamp(17px, .9vw + 14px, 19px); line-height: 1.6; }

/* ── Seuil sponsor ── */
.page-soutenir-le-club .soutenir-seuil { box-sizing: border-box; background: #fff; border: 2px solid var(--sgl); border-radius: 24px; padding: clamp(28px, 3vw, 40px) clamp(24px, 3vw, 36px); gap: 14px; }
.page-soutenir-le-club .soutenir-seuil__chiffre { margin: 0; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 800; font-size: clamp(48px, 6vw, 72px); line-height: 1; color: var(--sg); }
.page-soutenir-le-club .soutenir-seuil__titre { margin: 0; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 20px; color: var(--snight); }

/* ── Carte Décathlon ── */
.page-soutenir-le-club .soutenir-cardnum { box-sizing: border-box; background: var(--sgp); color: var(--sg); border-radius: 24px; padding: clamp(32px, 4vw, 44px) clamp(24px, 3vw, 36px); gap: 12px; align-items: flex-start; }
.page-soutenir-le-club .soutenir-cardnum__label { margin: 0; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 20px; color: var(--snight); }
.page-soutenir-le-club .soutenir-cardnum__value { margin: 0; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 800; font-size: clamp(26px, 3.4vw, 36px); letter-spacing: .04em; color: var(--sg); overflow-wrap: anywhere; }
.page-soutenir-le-club .soutenir-copy { min-height: 44px; margin-top: 8px; padding: 0 22px; border-radius: 999px; border: 2px solid var(--sg); background: #fff; color: var(--sg); font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 16px; cursor: pointer; }
.page-soutenir-le-club .soutenir-copy:hover { background: var(--sg); color: #fff; }
.page-soutenir-le-club .soutenir-steps { margin: 0; padding-left: 1.3em; display: flex; flex-direction: column; gap: 8px; font-size: clamp(17px, .9vw + 14px, 19px); line-height: 1.6; }

.page-soutenir-le-club .soutenir-cardnum__logo { display: block; height: 44px; width: auto; max-width: 100%; }

/* ── Entreprises ── */
.page-soutenir-le-club .soutenir-partenaire { background: var(--snight); color: #fff; }

/* ── Contacts commission partenaires ── */
.page-soutenir-le-club .soutenir-contacts { margin-top: clamp(40px, 5vw, 56px); padding-top: clamp(32px, 4vw, 40px); border-top: 1px solid rgba(255, 255, 255, .18); display: flex; flex-direction: column; gap: 20px; }
.page-soutenir-le-club .soutenir-contacts__title { margin: 0; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 22px; color: #fff; }
.page-soutenir-le-club .soutenir-contacts__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
.page-soutenir-le-club .soutenir-contact { display: flex; align-items: center; gap: 14px; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .18); border-radius: 14px; padding: 16px 20px; }
.page-soutenir-le-club .soutenir-contact__avatar { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 48px; height: 48px; border-radius: 50%; background: var(--sgl); color: var(--snight); font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 17px; }
.page-soutenir-le-club .soutenir-contact__nom { margin: 0; font-family: var(--font-heading, 'Montserrat', sans-serif); font-weight: 700; font-size: 18px; line-height: 1.3; color: #fff; }
.page-soutenir-le-club .soutenir-contact__role { margin: 0 0 2px; font-size: 15px; line-height: 1.4; color: var(--sgp); }
.page-soutenir-le-club .soutenir-contact__tel { display: inline-block; padding: 6px 0; font-size: 17px; font-weight: 600; color: var(--sgl); }
.page-soutenir-le-club .soutenir-contacts__mail { margin: 0; font-size: clamp(17px, .9vw + 14px, 19px); color: var(--sgp); }
.page-soutenir-le-club .soutenir-contacts__mail a { color: var(--sgl); font-weight: 600; }

/* ── Responsive ── */
@media (max-width: 560px) {
  .page-soutenir-le-club .soutenir-actions .soutenir-btn { width: 100%; box-sizing: border-box; }
  .page-soutenir-le-club .soutenir-col--cta .soutenir-btn { width: 100%; box-sizing: border-box; }
  .page-soutenir-le-club .soutenir-sim__row--total dd { font-size: 26px; }
}
