/* FINAL MOBILE — CORRECTIFS CIBLÉS UNIQUEMENT */

@media (max-width: 767px) {

  /* Bloc réassurance accueil */
  .home .elementor-icon-box-wrapper {
    flex-wrap: wrap !important;
  }

  /* Footer : évite le débordement horizontal */
  footer,
  .site-footer,
  .elementor-location-footer,
  .elementor-location-footer > *,
  .elementor-location-footer .elementor-section,
  .elementor-location-footer .elementor-container,
  .elementor-location-footer .e-con {
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  /* Footer : respiration latérale */
  .elementor-location-footer .elementor-container,
  .elementor-location-footer .e-con {
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box;
  }

  /* Drawer Astra : pleine largeur réelle */
  .ast-mobile-popup-drawer,
  .ast-mobile-popup-inner,
  .ast-mobile-popup-content,
  .ast-mobile-popup-content-content {
    width: 100vw !important;
    max-width: 100vw !important;
  }

  /* Zone menu : vraie respiration */
  .ast-mobile-popup-drawer .main-header-menu,
  .ast-mobile-popup-drawer .main-navigation,
  .ast-mobile-popup-drawer .menu {
    padding-left: 16px !important;
    padding-right: 16px !important;
    margin: 0 !important;
  }

  /* Niveau 1 */
  .ast-mobile-popup-drawer .main-header-menu > .menu-item > .menu-link,
  .ast-mobile-popup-drawer .main-header-menu > .menu-item > a,
  .ast-mobile-popup-drawer .menu-link,
  .ast-mobile-popup-drawer a,
  .main-header-menu .menu-link {
    font-size: 18px !important;
    line-height: 1.45 !important;
    font-weight: 500 !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    color: #000 !important;
    background: transparent !important;
  }

  /* Espacement entre items */
  .ast-mobile-popup-drawer .main-header-menu .menu-item,
  .ast-mobile-popup-drawer .menu-item {
    margin-bottom: 8px !important;
  }

  /* Sous-menus : vraie hiérarchie visuelle */
  .ast-mobile-popup-drawer .sub-menu {
    margin-top: 4px !important;
    margin-left: 14px !important;
    padding-left: 10px !important;
    border-left: 1px solid rgba(0, 0, 0, 0.12) !important;
  }

  .ast-mobile-popup-drawer .sub-menu .menu-link,
  .ast-mobile-popup-drawer .sub-menu a {
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    color: #222 !important;
    background: transparent !important;
  }

  /* Zone interne du drawer */
  .ast-mobile-popup-drawer .ast-mobile-popup-inner {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  /* Couleur active = ta couleur */
  .ast-mobile-popup-drawer .current-menu-item > .menu-link,
  .ast-mobile-popup-drawer .current-menu-item > a,
  .ast-mobile-popup-drawer .current-menu-ancestor > .menu-link,
  .ast-mobile-popup-drawer .current-menu-ancestor > a,
  .ast-mobile-popup-drawer .current_page_item > .menu-link,
  .ast-mobile-popup-drawer .current_page_item > a {
    color: #1A658C !important;
    background: transparent !important;
  }

  /* Hover / focus */
  .ast-mobile-popup-drawer .menu-link:hover,
  .ast-mobile-popup-drawer .menu-link:focus,
  .ast-mobile-popup-drawer a:hover,
  .ast-mobile-popup-drawer a:focus {
    color: #1A658C !important;
    background: transparent !important;
  }

  /* Boutons d’ouverture des sous-menus */
  .ast-mobile-popup-drawer .ast-menu-toggle {
    color: #000 !important;
    min-width: 36px !important;
    min-height: 36px !important;
    background: transparent !important;
  }

  /* Bouton fermer */
  .ast-mobile-popup-drawer .menu-toggle-close,
  .ast-mobile-popup-drawer .ast-mobile-popup-close,
  .ast-mobile-popup-drawer .close-menu {
    font-size: 22px !important;
    color: #000 !important;
    background: transparent !important;
  }
}