/* ===== RESPONSIVE — Mobile-first (390px base, élargissement progressif) ===== */

/* ——— Desktop : afficher nav, masquer burger ——— */
@media (min-width: 768px) {
  html { scroll-padding-top: var(--header-h); }
  .burger         { display: none; }
  .menu-mobile    { display: none; }
  .nav-desktop    { display: flex; }
  .fab-call       { display: none; }
  .btn-header-call { display: flex; }
}

@media (max-width: 767px) {
  /* Header mobile */
  .site-header    { height: var(--header-h-mobile); padding: 0 20px; }
  .nav-desktop    { display: none; }
  .btn-header-call { display: none; }  /* PIÈGE PROD #13 */
  /* FAB visible sur mobile */
  .fab-call       { display: flex; }

  /* Hero immersif mobile */
  .hero-immersif  { min-height: 78dvh; padding: calc(var(--header-h-mobile) + 20px) 20px 40px; align-items: flex-end; }
  .hero-tag-ville { display: none; }
  /* CTA hero empilés plein-largeur (PIÈGE PROD #2) */
  .hero-immersif__cta {
    flex-direction: column;
    width: 100%;
  }
  .hero-immersif__cta .btn { width: 100%; }

  /* Sections padding mobile */
  section { padding: 48px 0; }
  .stats-strip { padding: 40px 0; }

  /* Avis section */
  .avis-section { padding: 48px 0; }
  .avis-carousel-wrap { margin: 0 -20px; padding: 0 20px; }

  /* A propos */
  .apropos-grid { grid-template-columns: 1fr; gap: 32px; }
  .apropos-media { order: -1; }
  .apropos-photo { aspect-ratio: 16/9; }
  .apropos-badge { bottom: -10px; left: 10px; font-size: 0.82rem; }

  /* Services */
  .svc-alt { gap: 40px; }
  .svc-alt__row { grid-template-columns: 1fr; gap: 20px; }
  .svc-alt__row:nth-child(even) .svc-alt__media { order: 0; }
  .svc-alt__icon { width: 100px; height: 100px; }
  .svc-alt__icon svg { width: 40px; height: 40px; }
  .svc-extras { grid-template-columns: 1fr; }
  .sap-encart  { flex-direction: column; }

  /* Galerie masonry */
  .gal-masonry { column-count: 1; }  /* PIÈGE PROD #7 : 1 colonne sous 560px */
  .realisations-header { flex-direction: column; align-items: flex-start; }

  /* Stats */
  .stats-grid { grid-template-columns: 1fr; gap: 24px; }
  .stat-item + .stat-item { border-left: 0; border-top: 1px solid rgba(255,255,255,0.15); padding-top: 24px; }

  /* FAQ */
  .faq-grid { grid-template-columns: 1fr; gap: 24px; }

  /* Zone */
  .zone-cols { grid-template-columns: 1fr; gap: 32px; }
  .map-wrapper iframe { height: 260px; }

  /* Contact */
  .contact-grid { grid-template-columns: 1fr; gap: 36px; }
  .form-grid { grid-template-columns: 1fr; }

  /* Footer */
  .footer-grid { grid-template-columns: 1fr; gap: 32px; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }
}

@media (min-width: 560px) and (max-width: 767px) {
  /* 2 colonnes galerie entre 560-767px */
  .gal-masonry { column-count: 2; }
}

@media (min-width: 768px) and (max-width: 1024px) {
  /* Tablet */
  .apropos-grid { gap: 40px; }
  .gal-masonry  { column-count: 2; }
  .contact-grid { gap: 40px; }
  .footer-grid  { grid-template-columns: 1fr 1fr; }
}

/* wf-noxoverflow : reveal vertical (le slide horizontal deborde la largeur sur mobile) */
[data-reveal]:not(.in){ transform: translateY(18px) !important; }
