﻿/* =============================================
   Styles extraits pour index.html
   ============================================= */


/* même couleur que .engagement */
.impact-section {
  position: relative;
  overflow: hidden;
  color: var(--c-text);
  padding: 50px 50px;
  text-align: center;
  border-radius: 16px;
  max-width: 1100px;
  margin: 70px auto;
  box-shadow: none;
}

.mission-container {
  max-width: 1000px;
  width: 100%;
  text-align: center; /* centre le texte, titres et bouton */
}

.impact-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; /* centre les cartes sur la ligne */
  gap: 20px;
  margin-top: 30px;
}

/* Force toutes les textes des cards impact en marron uniforme */
.impact-card,
.impact-card h3,
.impact-card p,
.impact-card span,
.impact-card strong,
.impact-card small {
  color: var(--c-text) !important;
}
.impact-card h3,
.impact-card h3 .counter {
  color: var(--c-text) !important;
}

/* Titre de la section "NOS ACTIONS" — repris du style impact-section h2 */
main section.actions-heading {
  display: block;
  width: 100%;
  max-width: 1100px;
  margin: 50px auto 0;
  padding: 50px 20px 20px;
  text-align: center;
}

.actions-heading h2 {
  color: var(--c-text);
  font-family: 'Kanit', sans-serif;
  font-size: 2.5rem;
  margin: 0 auto;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 800;
  width: 100%;
}

@media (max-width: 600px) {
  main section.actions-heading {
    padding: 30px 20px 0;
    margin-top: 20px;
  }
  .actions-heading h2 {
    font-size: 1.8rem;
  }
}

/* Même style que NOS ACTIONS pour "O' Plan d'accès" et "Ils nous soutiennent" */
#souris > div > h2,
#souris .partenaires-carousel > h2 {
  color: var(--c-text);
  font-family: 'Kanit', sans-serif;
  font-size: 2.5rem;
  margin: 0 0 25px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 800;
}

@media (max-width: 600px) {
  #souris > div > h2,
  #souris .partenaires-carousel > h2 {
    font-size: 1.8rem;
  }
}




.suspense {
  margin-top: 15px;
  font-style: italic;
  color: #a76e48;
}

.stats-block {
  flex: 1 1 550px;
}

.stats-block h3 {
  font-size: 1.5rem;
  margin-bottom: 20px;
  color: var(--c-text);
  text-align: center;
}

.stats-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
}

.stat-box {
  flex: 1 1 240px;
  background: #d8ad85;
  border: 1px solid #f7d8b8;
  border-radius: 12px;
  padding: 20px;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.counter {
  font-size: 2.4rem;
  font-weight: 900;
  color: var(--c-text);
  font-family: 'Kanit', sans-serif;
  margin-bottom: 10px;
  display: block;
}

.stat-box p {
  font-size: 1rem;
  color: var(--c-text);
  margin-bottom: 6px;
}

.stat-box small {
  font-size: 0.85rem;
  font-style: italic;
  color: #9a8b7c;
}

/* Responsive */
@media (max-width: 900px) {
  .ofacilit-section {
    flex-direction: column;
  }

  .stats-grid {
    flex-direction: column;
    gap: 15px;
  }
}

footer {
    text-align: center;
    padding: 20px 10px;
    font-family: 'Montserrat', sans-serif;
    margin-top: 60px;
}

.footer-links {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-weight: 600;
}

.footer-links a {
    color: var(--c-text); /* couleur identique à "À propos / Contact" */
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer-links a:hover {
    color: var(--c-accent); /* même doré doux que topbar au survol */
}

.footer-links .dot {
    color: var(--c-text);
    font-weight: 700;
}

.footer-copy {
    font-size: 0.85rem;
    color: var(--c-text); /* idem topbar */
    margin-top: 6px;
}

@media (max-width: 600px) {
    .footer-links {
        flex-direction: column;
        gap: 4px;
    }
    .footer-links .dot {
        display: none;
    }
}


    /* Bande CTA don pleine largeur — sélecteur très spécifique pour battre main section:not(.actions-row) */
    main section.don-cta-band,
    .don-cta-band {
      display: block !important;
      width: 100vw !important;
      max-width: 100vw !important;
      position: relative;
      left: calc(-50vw + 50%);
      margin: 60px 0 !important;
      padding: 80px 24px !important;
      background: linear-gradient(135deg, #3d2b1f 0%, #6b4226 50%, #a07f50 100%);
      color: #fff;
      text-align: center;
      overflow: hidden;
      box-sizing: border-box;
    }
    .don-cta-band::before {
      content: "";
      position: absolute;
      top: -40%;
      right: -10%;
      width: 500px;
      height: 500px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(245,208,138,0.18) 0%, transparent 70%);
      pointer-events: none;
    }
    .don-cta-inner {
      position: relative;
      max-width: 1100px;
      margin: 0 auto;
      display: flex;
      flex-wrap: wrap;
      gap: 48px;
      align-items: center;
      justify-content: center;
    }
    .don-cta-content {
      flex: 1 1 480px;
      max-width: 640px;
      text-align: left;
    }
    .don-cta-content h2 {
      font-family: 'Kanit', sans-serif;
      font-size: clamp(2rem, 4vw, 3rem);
      font-weight: 700;
      color: #f5d08a;
      margin: 0 0 18px;
      letter-spacing: 0.5px;
      line-height: 1.1;
    }
    .don-cta-content p {
      font-size: 1.05rem;
      line-height: 1.7;
      color: rgba(255, 255, 255, 0.88);
      margin: 0 0 32px;
    }
    .don-cta-btn {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: #f5d08a;
      color: #3d2b1f;
      font-family: 'Kanit', sans-serif;
      font-size: 1.1rem;
      font-weight: 700;
      padding: 16px 38px;
      border-radius: 50px;
      text-decoration: none;
      letter-spacing: 0.3px;
      box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
      transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
    }
    .don-cta-btn:hover {
      background: var(--c-accent-hover);
      transform: translateY(-3px);
      box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4);
    }
    .don-cta-qr {
      flex: 0 0 auto;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 10px;
    }
    .don-cta-qr img {
      width: 140px;
      height: 140px;
      border-radius: 10px;
      background: #fff;
      padding: 8px;
      box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
    }
    .don-cta-qr span {
      font-size: 0.78rem;
      letter-spacing: 1.5px;
      text-transform: uppercase;
      color: rgba(255, 255, 255, 0.6);
      font-weight: 600;
    }
    @media (max-width: 900px) {
      .don-cta-band { padding: 60px 20px; margin-top: 40px !important; margin-bottom: 40px !important; }
      .don-cta-content { text-align: center; flex: 1 1 100%; }
      .don-cta-inner { gap: 32px; }
      .don-cta-qr { display: none; }
    }

