/* ============================================================
   Styles de la page d'accueil (FR et EN)
   ============================================================ */

/* Grand bandeau d'introduction */
.home-hero {
  padding: 64px 0 48px;
  background: var(--bg-page);
  overflow: hidden;
}
.home-hero .split { align-items: center; }
.home-hero h1 { font-size: 44px; }
.home-hero .tagline {
  font-size: 18px;
  color: var(--slate);
  margin: 0 0 28px;
}
.home-hero .hero-img {
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}
@media (max-width: 640px) {
  .home-hero h1 { font-size: 32px; }
}

/* Carte « Événements à venir » */
.events-card {
  display: grid;
  grid-template-columns: 2fr 3fr;
  background: #FFFFFF;
  border-radius: 16px;
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}
@media (max-width: 800px) {
  .events-card { grid-template-columns: 1fr; }
}
.events-figure {
  min-height: 280px;
  background-size: cover;
  background-position: center;
}
.events-content { padding: 36px; }
.events-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.events-table td {
  padding: 12px 8px;
  border-top: 1px solid var(--border);
  vertical-align: middle;
}
.events-table td:last-child { text-align: right; }

/* Cartes publics cibles */
.audience-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}
@media (max-width: 800px) {
  .audience-grid { grid-template-columns: 1fr; }
}
.audience-card { display: flex; gap: 20px; padding: 28px; }
.audience-card .icon-badge { flex-shrink: 0; margin-bottom: 0; }
.audience-card h4 { margin-bottom: 8px; }
.audience-card p { margin: 0; color: var(--slate); font-size: 14.5px; }
