/* Responsive overrides (mobile-first deja en place, ici on durcit) */

@media (max-width:768px){
  section{padding:48px 0;}
  .hero-mega{padding:calc(var(--header-h-mobile) + 28px) 20px 36px;}
  .hero-mega__cta{flex-direction:column;}
  .hero-mega__cta .btn{width:100%;}
  .stats-strip{padding:24px 0;}
  .stat-number{font-size:2.2rem;}
  .contact-cta-row .btn{width:100%;}
  .contact-form{padding:24px 20px;}
  .contact-section{padding:56px 0;}
  .avis-section,.zone-section{padding:56px 0;}
  .gallery-cta-row .btn{width:100%;}
  .gallery-head{flex-direction:column;align-items:flex-start;gap:8px;}
}

@media (max-width:560px){
  h1{font-size:clamp(2rem,11vw,2.8rem);}
  .hero-mega__title{font-size:clamp(2.2rem,11vw,3.2rem);}
  .menu-mobile a{font-size:1.4rem;}
}

@media (max-width:380px){
  .brand-name{font-size:1.15rem;}
  .brand-mark{width:32px;height:32px;padding:5px;}
}

/* wf-contrast-enforced */
.contact-section, .contact-section * { color: #F6F0E6 !important; }
.site-footer, .site-footer * { color: #F6F0E6 !important; }
/* /wf-contrast-enforced */

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