@media (max-width: 900px) {
  .hero-grid { grid-template-columns: 1fr; }
  .hero-motif { display: none; }
  .apropos-grid { grid-template-columns: 1fr; gap: 3rem; justify-items: center; text-align: center; }
  .portrait-wrapper { max-width: 300px; }
  .podcast-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .actu-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  /* En colonne unique, on centre ces intros comme les autres sections */
  .podcast-intro, .actu-intro { text-align: center; }
  .teaser-grid { grid-template-columns: 1fr; gap: 2.5rem; justify-items: center; text-align: center; }
  .teaser-photo { max-width: 280px; }
  .teaser-content > p { margin-left: auto; margin-right: auto; }
}
@media (max-width: 820px) {
  .nav-links { display: none; }
  .hamburger { display: flex; }
  .contact-items { flex-direction: column; align-items: stretch; max-width: 360px; margin: 0 auto 2.8rem; }
  .footer-inner { flex-direction: column; text-align: center; }
  .footer-links { justify-content: center; }
  section { padding: 4.5rem 0; }
}
@media (max-width: 620px) {
  .galerie-grid { grid-template-columns: repeat(2, 1fr); gap: 0.8rem; }
  .flip-back { padding: 1.1rem 0.9rem; }
}
@media (max-width: 480px) {
  .hero-actions, .contact-actions { flex-direction: column; align-items: stretch; }
  .offres-tabs { flex-direction: column; align-items: center; }
  .intro-actions { flex-direction: column; align-items: stretch; width: 100%; max-width: 280px; }
  /* Interlettrage réduit pour garder « Marie-Astrid Lesage · La Rochelle » sur une ligne */
  .section-label { letter-spacing: 0.12em; }
}
