/* ============================================================
   LA BOUSSOLE — SPONSORS PAGE (LOT A-ter · Partie 1)
   Scoped styles for templates/page-sponsors.php — refactored
   from the template's former inline <style> block into the
   theme asset pipeline (wp_enqueue_style).
   Packs: SILVER « Partenaire Officiel » (bleu) + GOLD
   « Partenaire Stratégique » (traitement coral, mise en avant).
   Aucune couleur or/doré en UI.
   ============================================================ */

/* ============================================================
   1 · HERO
   ============================================================ */
.lbs-sponsors-hero {
    min-height: 60vh; display: flex; align-items: center;
    background: linear-gradient(135deg, var(--lbs-primary) 0%, var(--lbs-primary-royal) 100%);
    color: var(--lbs-white);
    padding: var(--lbs-space-4xl) 0;
}
.lbs-sponsors-hero h1 {
    font-family: var(--lbs-font-heading); font-size: var(--lbs-fs-display);
    font-weight: var(--lbs-fw-bold); color: var(--lbs-white);
    line-height: var(--lbs-lh-tight); margin-bottom: var(--lbs-space-lg);
}
.lbs-sponsors-hero p {
    font-size: var(--lbs-fs-body-lg); color: rgba(255,255,255,0.7);
    max-width: 600px; line-height: var(--lbs-lh-relaxed);
}

/* ============================================================
   2 · BENEFITS GRID
   ============================================================ */
.lbs-sponsors-benefits {
    display: grid; grid-template-columns: repeat(3, 1fr);
    gap: var(--lbs-space-xl);
}
.lbs-sponsor-benefit {
    text-align: center; padding: var(--lbs-space-2xl);
    background: var(--lbs-white); border-radius: var(--lbs-radius-lg);
    box-shadow: var(--lbs-shadow-card);
    transition: transform var(--lbs-transition-base), box-shadow var(--lbs-transition-base);
}
.lbs-sponsor-benefit:hover { transform: translateY(-4px); box-shadow: var(--lbs-shadow-card-hover); }
.lbs-sponsor-benefit-icon {
    width: 64px; height: 64px; margin: 0 auto var(--lbs-space-lg);
    background: var(--lbs-blue-accent-soft); color: var(--lbs-blue-accent);
    border-radius: var(--lbs-radius-lg); display: flex; align-items: center; justify-content: center;
}
.lbs-sponsor-benefit-icon svg { width: 32px; height: 32px; }
.lbs-sponsor-benefit h3 {
    font-family: var(--lbs-font-heading); font-size: var(--lbs-fs-body);
    font-weight: var(--lbs-fw-bold); color: var(--lbs-primary);
    margin-bottom: var(--lbs-space-sm);
}
.lbs-sponsor-benefit p {
    font-size: var(--lbs-fs-small); color: var(--lbs-gray-500);
    line-height: var(--lbs-lh-body); margin: 0;
}

/* ============================================================
   2bis · WHY SPONSOR — fond dégradé navy → royal (FINAL BIS P4)
   Section « Pourquoi Sponsoriser ? » : fond navy #0A1628 → royal
   #1B3A6B. Sur-titre coral, titre et sous-titre blancs. Six cartes
   blanches, bordure supérieure 4px alternée bleu / coral. Pastilles
   d'icônes pleines 64px alternées bleu / coral, icône blanche.
   Élévation au survol, prefers-reduced-motion.
   ============================================================ */
.lbs-section-navy {
    background: linear-gradient(135deg, var(--lbs-primary) 0%, var(--lbs-primary-royal) 100%);
    color: var(--lbs-white);
}
.lbs-section-navy .lbs-eyebrow { color: var(--lbs-accent); }
.lbs-section-navy .lbs-section-title,
.lbs-section-navy .lbs-section-subtitle { color: var(--lbs-white); }

.lbs-section-navy .lbs-sponsor-benefit {
    border-top: 4px solid var(--lbs-blue-accent);
}
.lbs-section-navy .lbs-sponsor-benefit:nth-child(even) { border-top-color: var(--lbs-accent); }
.lbs-section-navy .lbs-sponsor-benefit-icon {
    background: var(--lbs-blue-accent); color: var(--lbs-white);
}
.lbs-section-navy .lbs-sponsor-benefit:nth-child(even) .lbs-sponsor-benefit-icon {
    background: var(--lbs-accent);
}

@media (prefers-reduced-motion: reduce) {
    .lbs-section-navy .lbs-sponsor-benefit { transition: none; }
    .lbs-section-navy .lbs-sponsor-benefit:hover {
        transform: none; box-shadow: var(--lbs-shadow-card);
    }
}

/* ============================================================
   3 · SPONSOR PACKS — 2 colonnes, cartes plus larges
      SILVER = traitement bleu · GOLD = traitment coral (featured)
   ============================================================ */
.lbs-sponsors-packs {
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--lbs-space-2xl); align-items: stretch;
    max-width: 880px; margin: 0 auto;
}
.lbs-sponsor-pack {
    background: var(--lbs-white); border-radius: var(--lbs-radius-lg);
    box-shadow: var(--lbs-shadow-card); overflow: hidden;
    border: 1px solid var(--lbs-gray-200);
    border-top: 4px solid var(--lbs-blue-accent);
    display: flex; flex-direction: column;
    transition: transform var(--lbs-transition-base), box-shadow var(--lbs-transition-base);
}
.lbs-sponsor-pack:hover { transform: translateY(-4px); box-shadow: var(--lbs-shadow-card-hover); }
/* LOT B · Partie 0.4 — mise en avant GOLD par bordure supérieure coral,
   badge et ombre uniquement (plus d'aplat coral). */
.lbs-sponsor-pack--featured {
	border-top: 5px solid var(--lbs-accent);
	box-shadow: var(--lbs-shadow-xl);
}
.lbs-sponsor-pack--featured:hover { box-shadow: var(--lbs-shadow-xl); }

.lbs-sponsor-pack__header {
	padding: var(--lbs-space-xl);
	text-align: center; background: var(--lbs-gray-50);
	display: flex; flex-direction: column; align-items: center;
	gap: var(--lbs-space-sm);
}
.lbs-sponsor-pack__badge {
	display: inline-flex; align-items: center;
	padding: 0.3125rem 0.875rem;
	background: var(--lbs-blue-accent-soft); color: var(--lbs-blue-accent);
	border-radius: var(--lbs-radius-full);
	font-size: var(--lbs-fs-xs); font-weight: var(--lbs-fw-bold);
	letter-spacing: var(--lbs-ls-wide); text-transform: uppercase;
}
.lbs-sponsor-pack--featured .lbs-sponsor-pack__badge {
	background: var(--lbs-accent); color: var(--lbs-white);
}
.lbs-sponsor-pack__name {
	font-family: var(--lbs-font-heading); font-size: var(--lbs-fs-h4);
	font-weight: var(--lbs-fw-bold); color: var(--lbs-primary);
	letter-spacing: 0.14em;
}
.lbs-sponsor-pack__price {
	font-family: var(--lbs-font-heading); font-size: var(--lbs-fs-h1);
	font-weight: var(--lbs-fw-bold); color: var(--lbs-blue-accent);
	line-height: 1.05;
}
.lbs-sponsor-pack--featured .lbs-sponsor-pack__price { color: var(--lbs-accent); }
.lbs-sponsor-pack__price span {
	display: block; font-size: var(--lbs-fs-small); color: var(--lbs-gray-500);
	font-weight: var(--lbs-fw-regular); font-family: var(--lbs-font-body);
	letter-spacing: 0.08em; text-transform: uppercase; margin-top: 0.25rem;
}
.lbs-sponsor-pack__body {
	padding: var(--lbs-space-xl);
	display: flex; flex-direction: column;
	gap: var(--lbs-space-xl);
}
.lbs-sponsor-pack__list {
	list-style: none; margin: 0; padding: 0;
	display: flex; flex-direction: column; gap: var(--lbs-space-sm);
}
.lbs-sponsor-pack__placeholder {
	font-size: var(--lbs-fs-small); font-style: italic;
	color: var(--lbs-gray-500); line-height: 1.5;
	text-align: center; padding: var(--lbs-space-sm) 0;
	border-bottom: 1px dashed var(--lbs-gray-300);
}
.lbs-sponsor-pack__body .lbs-btn { margin-top: 0; }

/* ============================================================
   4 · SPONSOR FORM
   ============================================================ */
.lbs-sponsor-form-card {
    background: var(--lbs-white); border-radius: var(--lbs-radius-lg);
    box-shadow: var(--lbs-shadow-card); padding: var(--lbs-space-2xl);
    max-width: 800px; margin: 0 auto;
}
.lbs-sponsor-form-card h3 {
    font-family: var(--lbs-font-heading); font-size: var(--lbs-fs-h5);
    font-weight: var(--lbs-fw-bold); color: var(--lbs-primary);
    margin-bottom: var(--lbs-space-xl);
}

/* ============================================================
   5 · STATS BAR
   ============================================================ */
.lbs-sponsors-stats {
    display: grid; grid-template-columns: repeat(4, 1fr);
    gap: var(--lbs-space-xl); text-align: center;
}
.lbs-sponsors-stat__number {
    font-family: var(--lbs-font-heading); font-size: var(--lbs-fs-h2);
    font-weight: var(--lbs-fw-bold); color: var(--lbs-blue-accent);
}
.lbs-sponsors-stat__label {
    font-size: var(--lbs-fs-caption); color: var(--lbs-gray-500);
    text-transform: uppercase; letter-spacing: var(--lbs-ls-wider);
    margin-top: 0.25rem;
}

/* ============================================================
   6 · RESPONSIVE
   ============================================================ */
@media (max-width: 1024px) {
    .lbs-sponsors-benefits { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    .lbs-sponsors-hero { min-height: auto; padding-top: var(--lbs-space-3xl); }
    .lbs-sponsors-benefits { grid-template-columns: 1fr; }
    .lbs-sponsors-packs { grid-template-columns: 1fr; max-width: 500px; }
    .lbs-sponsors-stats { grid-template-columns: 1fr 1fr; }
}
