/* Fine-tuning mobile-first */
@media(max-width:559px){
  .hero h1{font-size:clamp(2.3rem,9.6vw,3.4rem)}
  .hero-photo{height:280px}
  .hero-photo .photo-tag{font-size:0.66rem;padding:6px 11px}
  .section-head h2{font-size:clamp(1.55rem,7vw,2.2rem)}
  .container{padding:0 18px}
  .stat-num{font-size:2rem}
  .avis-card{padding:22px 20px}
  .faq-trigger{font-size:1.02rem;padding:18px 4px}
  .gal-grid{gap:12px}
  .horaires-table .h-row{padding:11px 14px;font-size:0.9rem}
  .contact-row{padding:12px 14px;font-size:0.92rem}
}
@media(min-width:1280px){
  .container{padding:0 40px}
}

/* Anti-overflow safety */
.hero-inner,.hero,section{min-width:0}
form,.contact-form{min-width:0}

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