/**
 * Menu mobile — le clone #_mobile_top_menu n’a pas .somef-fusion-menu :
 * méga-menus et sous-menus s’affichent sinon en liste plate.
 */
@media (max-width: 767.98px) {
  #mobile_top_menu_wrapper {
    max-height: calc(100vh - 56px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  #_mobile_top_menu #top-menu {
    display: block !important;
    flex-wrap: nowrap !important;
    padding: 0.5rem 0 1rem !important;
    gap: 0 !important;
  }

  #_mobile_top_menu #top-menu > li {
    display: block;
    width: 100%;
    border-bottom: 1px solid var(--color-border, #e8e8e8);
  }

  #_mobile_top_menu #top-menu > li > a.dropdown-item {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 0.85rem 1rem !important;
    white-space: normal !important;
    font-size: 0.8125rem !important;
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }

  #_mobile_top_menu .mega-menu-wrapper,
  #_mobile_top_menu .somef-solutions-wrapper {
    display: none !important;
    position: static !important;
    width: 100% !important;
    max-width: 100% !important;
    left: auto !important;
    transform: none !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    box-shadow: none !important;
    border-top: none !important;
    padding: 0 0 0.75rem !important;
    margin: 0 !important;
    background: var(--color-bg-light, #f8f9fa);
  }

  #_mobile_top_menu li.has-mega-menu.somef-mobile-submenu-open .mega-menu-wrapper,
  #_mobile_top_menu li.has-solutions-menu.somef-mobile-submenu-open .somef-solutions-wrapper {
    display: block !important;
  }

  #_mobile_top_menu .mega-menu-wrapper .row {
    display: block !important;
    margin: 0 !important;
  }

  #_mobile_top_menu .mega-menu-wrapper .col-md-4 {
    flex: none !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 0.5rem 1rem !important;
  }

  #_mobile_top_menu .mega-menu-wrapper .menu-title {
    margin: 0.5rem 0 0.35rem;
    font-size: 0.75rem;
    padding-bottom: 0.35rem;
  }

  #_mobile_top_menu .mega-menu-wrapper .somef-mega-list li a,
  #_mobile_top_menu .somef-solutions-list a {
    padding: 0.45rem 0 !important;
    font-size: 0.875rem !important;
  }

  #_mobile_top_menu li.has-mega-menu > a.dropdown-item::after,
  #_mobile_top_menu li.has-solutions-menu > a.dropdown-item::after {
    content: '+';
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1;
    color: var(--color-primary, #d33343);
    margin-left: 0.5rem;
    flex-shrink: 0;
  }

  #_mobile_top_menu li.has-mega-menu.somef-mobile-submenu-open > a.dropdown-item::after,
  #_mobile_top_menu li.has-solutions-menu.somef-mobile-submenu-open > a.dropdown-item::after {
    content: '−';
  }

  #_mobile_top_menu .js-top-menu-bottom {
    padding: 0.75rem 1rem 1rem;
    border-top: 1px solid var(--color-border, #e8e8e8);
  }

  #_mobile_top_menu .js-top-menu-bottom a {
    display: block;
    padding: 0.65rem 0;
    font-weight: 600;
    color: var(--color-accent-blue, #2b3c45);
    text-decoration: none;
  }
}
