/* =====================================================
   RESPONSIVE — ajustements desktop uniquement
   (mobile-first : les bases sont dans les autres fichiers)
   ===================================================== */

@media (min-width: 768px) {
  section { padding: 80px 40px; }

  .sec-stats { padding: clamp(40px, 5vw, 64px) 40px; }

  /* header desktop */
  .site-header { height: var(--header-h); }

  /* about photo badge */
  .about-badge { right: -16px; }
}

@media (min-width: 1024px) {
  /* hero mega desktop */
  .hero-mega__media {
    box-shadow: 30px 40px 80px color-mix(in srgb, var(--text) 18%, transparent),
                0 8px 20px color-mix(in srgb, var(--text) 10%, transparent);
  }

  /* services */
  .svc-alt__desc { max-width: 52ch; }
}

/* garantit que les éléments interactifs ont une cible tactile minimum */
@media (max-width: 768px) {
  .btn         { min-height: 44px; }
  .faq-trigger { min-height: 48px; }
  .contact-row { min-height: 64px; }
  .field input,
  .field select,
  .field textarea { min-height: 44px; }
}

/* wf-contrast-enforced */
.sec-processus, .sec-processus * { 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; }
