/* ==========================================================================
   IA RENOV — Adaptations responsive (mobile-first → tablette → desktop)
   Le style de base cible le mobile ; on enrichit à mesure que l'écran grandit.
   ========================================================================== */

/* --- ≥ 600px : petites tablettes --------------------------------------- */
@media (min-width: 600px) {
  .grid--2 { grid-template-columns: repeat(2, 1fr); }
  .grid--4 { grid-template-columns: repeat(2, 1fr); }
  .gallery { grid-template-columns: repeat(2, 1fr); }
  .trust__grid { grid-template-columns: repeat(4, 1fr); }
  .pest-grid { grid-template-columns: repeat(2, 1fr); }
  .stat-band { grid-template-columns: repeat(4, 1fr); }
}

/* --- ≥ 900px : tablettes / desktop ------------------------------------- */
@media (min-width: 900px) {
  h1 { font-size: var(--fs-3xl); }
  h2 { font-size: var(--fs-2xl); }

  .nav__links { display: flex; }
  .nav__actions { display: flex; }
  .nav__toggle { display: none; }
  .mobile-menu { display: none !important; }

  .hero__inner { grid-template-columns: 1.05fr 0.95fr; padding-block: var(--space-7); }
  .hero h1 { font-size: var(--fs-3xl); }
  .hero__media { min-height: 460px; }

  .grid--3 { grid-template-columns: repeat(3, 1fr); }
  .grid--4 { grid-template-columns: repeat(4, 1fr); }
  .gallery { grid-template-columns: repeat(3, 1fr); }

  .split { grid-template-columns: 1fr 1fr; }
  .split--reverse .split__media { order: 2; }

  .footer-grid { grid-template-columns: 1.6fr 1fr 1fr 1fr; }

  .contact-layout { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: var(--space-5); align-items: start; }
}

/* --- ≥ 1100px : grands écrans ------------------------------------------ */
@media (min-width: 1100px) {
  .section { padding-block: var(--space-7); }
  .pest-grid { grid-template-columns: repeat(2, 1fr); }
}
