/* v9 : corrections responsive ciblées. Ne modifie pas les présentations ordinateur. */
@media (max-width: 700px) {
  /* Le sous-menu reste dans le flux, y compris sur À propos et Contact,
     dont les styles de page définissaient encore un positionnement absolu. */
  .home-header .main-nav .nav-dropdown { position: relative; display: block; width: 100%; min-width: 0; }
  .home-header .main-nav .nav-dropdown-toggle { width: 100%; justify-content: flex-start; }
  .home-header .main-nav .nav-dropdown-menu {
    position: static !important; inset: auto !important;
    display: none; box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%;
    margin: 0; padding: 4px 0 8px 18px; border: 0; border-radius: 0;
    background: transparent; box-shadow: none; transform: none !important;
    opacity: 1; visibility: visible; float: none;
  }
  .home-header .main-nav .nav-dropdown.is-open .nav-dropdown-menu { display: block; }
  .home-header .main-nav .nav-dropdown-menu a { display: block; white-space: normal; overflow-wrap: anywhere; }
  /* Limiter la largeur utile des textes des trois CTA de service. */
  body.v9-service .service-discovery { box-sizing: border-box; width: 100%; margin-left: 0; padding-left: 26px; padding-right: 26px; grid-template-columns: minmax(0, 1fr); }
  body.v9-service .service-discovery-copy { box-sizing: border-box; min-width: 0; width: 100%; max-width: 100%; }
  body.v9-service .service-discovery-copy h2,
  body.v9-service .service-discovery-copy p { box-sizing: border-box; width: 100%; max-width: 100%; overflow-wrap: break-word; }
  /* À propos : deux respirations modérées autour de l'illustration. */
  body.v9-about .about-nourishes { gap: 20px !important; padding-bottom: 34px; align-items: start; }
  body.v9-about .nourishes-visual { margin: 0 auto; padding: 0; min-height: 0; align-items: flex-start; }
  body.v9-about .nourishes-visual img { display: block; width: auto; height: auto; max-width: min(82vw, 360px); max-height: none; margin: 0 auto; }
  body.v9-about .about-posture { padding-top: 42px; }
  /* Coin réflexif : l'image panoramique doit conserver une surface visible sur mobile. */
  body.v9-reflexive .reflexive-hero { overflow: visible; padding-bottom: 62px; }
  body.v9-reflexive .reflexive-hero-visual { display: flex; align-items: center; justify-content: center; width: 100%; max-width: 100%; min-width: 0; min-height: 155px; margin: 0 auto; overflow: visible; }
  body.v9-reflexive .reflexive-hero-visual img { display: block; position: static; width: 100%; max-width: 100%; height: auto; transform: none !important; object-fit: contain; }
}
@media (max-width: 620px) {
  body.v9-coaching .service-hero-copy,
  body.v9-coaching .service-hero-text { box-sizing: border-box; min-width: 0; max-width: 100%; }
  body.v9-coaching .service-hero { padding-left: 26px; padding-right: 26px; }
  body.v9-home .hero-cta { box-sizing: border-box; white-space: nowrap; gap: 7px; padding-left: 12px; padding-right: 12px; font-size: clamp(.75rem, 3.35vw, .95rem); max-width: 100%; }
  body.v9-home .hero-cta span { flex-shrink: 0; }
}
