/* Mobile-first deja gere section par section. Quelques ajustements globaux mobile/desktop. */
@media (max-width: 768px) {
  .hero-centre__cta { flex-direction: column; }
  .hero-centre__cta .btn { width: 100%; }
  .hero-centre { padding-top: 18px; }
  .hero { padding-top: 8px; }
  .contact-cta-row .btn { flex: 1 1 auto; }
}

@media (max-width: 480px) {
  .footer-bottom { flex-direction: column; align-items: flex-start; gap: 12px; }
  .stats { padding: 36px 0; }
  .horaires-row { font-size: .88rem; }
}

/* Forcer le scroll fluide horizontal jamais visible */
body { overscroll-behavior: auto; }
/* wf-contrast-enforced */
.c-asym.c-asym--lead.svc-asym__card--lead.svc-card, .c-asym.c-asym--lead.svc-asym__card--lead.svc-card * { color: #ECEBE6 !important; }
/* /wf-contrast-enforced */

/* wf-footer-fix */
footer, .site-footer, .footer { margin-top: 0 !important; }

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