/* ── Programme partenaires (affiliation et parrainage) ──
   S'appuie sur afrique.css (en-tête, sections, étapes, FAQ). Ici : tableau des gains, encadré parrainage, formulaire. */

/* Tableau des gains */
.pa-gains { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.pa-gain { background: var(--card); border: 1px solid var(--border); border-radius: 18px; padding: 24px 22px; box-shadow: 0 10px 30px rgba(15,21,35,.14); }
.pa-gain-f { font-size: 11.5px; font-weight: 700; letter-spacing: 1.6px; text-transform: uppercase; color: var(--cyan); margin-bottom: 10px; }
.pa-gain-p { font-size: 13.5px; color: rgba(255,255,255,.55); margin-bottom: 14px; }
.pa-gain-c { font-family: 'DM Serif Display', serif; font-weight: 400; font-size: 30px; color: #fff; line-height: 1.1; }
.pa-gain-x { font-size: 13px; color: rgba(255,255,255,.45); margin-top: 6px; }
.pa-note { font-size: 14px; color: #5a6478; margin-top: 16px; }

/* Parrainage des anciens élèves */
.pa-parrain { display: grid; grid-template-columns: 1.4fr 1fr; gap: 28px; align-items: center;
  background: linear-gradient(135deg, #12122b, #0d0d20); border: 1px solid rgba(0,212,255,.18); border-radius: 22px; padding: 34px 36px; box-shadow: 0 24px 60px rgba(15,21,35,.22); }
.pa-parrain h3 { font-family: 'DM Serif Display', serif; font-weight: 400; font-size: 26px; color: #fff; margin-bottom: 10px; }
.pa-parrain p { font-size: 15.5px; line-height: 1.8; color: rgba(255,255,255,.66); }
.pa-prime { text-align: center; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.09); border-radius: 16px; padding: 22px; }
.pa-prime b { display: block; font-family: 'DM Serif Display', serif; font-weight: 400; font-size: 40px; color: #fff; line-height: 1.1; }
.pa-prime span { display: block; font-size: 13.5px; color: rgba(255,255,255,.55); margin-top: 6px; }

/* Règles */
.pa-regles { list-style: none; display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px 28px; }
.pa-regles li { position: relative; padding-left: 26px; font-size: 15px; line-height: 1.7; color: #33405a; }
.pa-regles li::before { content: ''; position: absolute; left: 0; top: 9px; width: 12px; height: 12px; border-radius: 4px; background: #0a0a14; box-shadow: inset 0 0 0 3px #00d4ff; }
.pa-regles b { color: #0f1523; }

/* Formulaire de candidature */
.pa-form { max-width: 760px; background: #fff; border: 1px solid rgba(15,21,35,.09); border-radius: 20px; padding: 32px; box-shadow: 0 12px 34px rgba(15,21,35,.08); }
.pa-form .pa-ligne { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.pa-form label { display: block; font-size: 13.5px; font-weight: 600; color: #1f2a3d; margin-bottom: 6px; }
.pa-form input, .pa-form select, .pa-form textarea { width: 100%; font: inherit; font-size: 15px; color: #0f1523; background: #f5f7fb;
  border: 1px solid rgba(15,21,35,.14); border-radius: 10px; padding: 12px 14px; margin-bottom: 16px; }
.pa-form textarea { min-height: 96px; resize: vertical; }
.pa-form input:focus, .pa-form select:focus, .pa-form textarea:focus { outline: 2px solid rgba(8,145,178,.35); border-color: #0891b2; }
.pa-form .pa-coche { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; font-weight: 400; color: #33405a; margin: 4px 0 20px; }
.pa-form .pa-coche input { width: auto; margin: 4px 0 0; }
.pa-form button { display: inline-flex; align-items: center; gap: 9px; padding: 14px 26px; border: 0; border-radius: 11px; background: #0a0a14; color: #00d4ff;
  font: inherit; font-size: 15px; font-weight: 700; cursor: pointer; transition: transform .2s, box-shadow .2s; }
.pa-form button:hover { transform: translateY(-1px); box-shadow: 0 10px 26px rgba(10,10,20,.25); }
.pa-form .pa-msg { margin-top: 14px; font-size: 14px; }

@media (max-width: 900px) {
  .pa-gains { grid-template-columns: 1fr 1fr; }
  .pa-parrain { grid-template-columns: 1fr; padding: 26px 22px; }
  .pa-regles { grid-template-columns: 1fr; }
  .pa-form { padding: 24px 20px; }
  .pa-form .pa-ligne { grid-template-columns: 1fr; gap: 0; }
}
@media (max-width: 520px) { .pa-gains { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .pa-form button { transition: none; } }

/* Sous-titres des gains (bootcamps, mentorat) et grille à trois colonnes */
.pa-sous-titre { font-family: 'DM Serif Display', serif; font-weight: 400; font-size: 22px; color: #0f1523; margin: 30px 0 10px; }
.pa-gains-3 { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 900px) { .pa-gains-3 { grid-template-columns: 1fr; } }
.af-intro a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
