/* TABLET >= 640 */
@media (min-width: 640px) {
  .gal-grid { grid-template-columns: repeat(2, 1fr); }
  .stats-grid { grid-template-columns: repeat(3, 1fr); }
  .stat-item { border-bottom: 0; border-right: 1px solid rgba(255,255,255,0.18); padding: 0 16px; }
  .stat-item:last-child { border-right: 0; }
}

/* >= 768 (DESKTOP small) */
@media (min-width: 768px) {
  .header { height: var(--header-h); }
  .section { padding: 80px 0; }
  .section-head { margin-bottom: 56px; }
  .container { padding: 0 32px; }

  .nav-desktop { display: flex; }
  .burger { display: none; }
  .menu-mobile { display: none; }
  .header-call-num { display: inline; }

  .hero-svg {
    grid-template-columns: 1.1fr 0.9fr;
    gap: 56px;
    padding: calc(var(--header-h) + 48px) 32px 96px;
  }
  .hero-svg__cta {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .hero-svg__cta .btn { width: auto; flex: 0 0 auto; }
  .hero-svg__title { font-size: clamp(2.6rem, 4.6vw, 3.8rem); }
  .hero-svg__art { max-width: 420px; margin-left: auto; margin-right: 0; }

  .svc-grid { grid-template-columns: repeat(2, 1fr); gap: 22px; }

  .process-steps { grid-template-columns: repeat(3, 1fr); gap: 22px; }

  .about-grid { grid-template-columns: 1.1fr 0.9fr; gap: 56px; }

  .avis-cols { grid-template-columns: 1fr 1fr; }
  .avis-cols--single { grid-template-columns: 1fr; max-width: 720px; }

  .zone-cols { grid-template-columns: 1fr 1fr; gap: 36px; }
  .map-wrapper { aspect-ratio: 4/3; }

  .contact-grid { grid-template-columns: 1.05fr 0.95fr; gap: 48px; }

  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 40px; }
  .footer-bottom { flex-direction: row; justify-content: space-between; align-items: center; }
}

/* >= 1024 (DESKTOP large) */
@media (min-width: 1024px) {
  .svc-grid { grid-template-columns: repeat(3, 1fr); }
  .stat-number { font-size: 2.6rem; }
}

/* FAB visible mobile uniquement, jamais desktop */
@media (min-width: 768px) {
  .fab-call { display: none !important; }
}

/* Mobile contact padding (FAB ne recouvre pas) */
@media (max-width: 767px) {
  .section-contact { padding-bottom: 96px; }
}
