/* ==========================================================
   MRCC — Correctif Sous-menus V1.1
   Corrige le "trou" entre le menu parent et le sous-menu.
   ========================================================== */

@media (min-width: 901px){

  header nav li,
  header .menu li,
  .main-navigation li,
  .site-header li {
    position: relative !important;
  }

  /* Le sous-menu est collé au menu parent : aucun vide à traverser */
  header nav ul ul,
  header nav .sub-menu,
  header .menu ul ul,
  header .menu .sub-menu,
  .main-navigation ul ul,
  .main-navigation .sub-menu,
  .site-header ul ul,
  .site-header .sub-menu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: auto !important;
    z-index: 99999 !important;

    display: block !important;
    min-width: 250px !important;
    width: max-content !important;
    max-width: 340px !important;

    margin: 0 !important;
    padding: 8px !important;

    list-style: none !important;
    background: #fff !important;
    border: 1px solid rgba(13,27,42,.10) !important;
    border-radius: 14px !important;
    box-shadow: 0 14px 34px rgba(13,27,42,.14) !important;

    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(0) !important;
    transition: opacity .14s ease, visibility .14s ease !important;
  }

  /* Petit pont invisible qui sécurise le passage de la souris */
  header nav ul ul::before,
  header nav .sub-menu::before,
  header .menu ul ul::before,
  header .menu .sub-menu::before,
  .main-navigation ul ul::before,
  .main-navigation .sub-menu::before,
  .site-header ul ul::before,
  .site-header .sub-menu::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: -14px !important;
    width: 100% !important;
    height: 14px !important;
    background: transparent !important;
  }

  header nav li:hover > ul,
  header nav li:hover > .sub-menu,
  header nav li:focus-within > ul,
  header nav li:focus-within > .sub-menu,
  header .menu li:hover > ul,
  header .menu li:hover > .sub-menu,
  header .menu li:focus-within > ul,
  header .menu li:focus-within > .sub-menu,
  .main-navigation li:hover > ul,
  .main-navigation li:hover > .sub-menu,
  .main-navigation li:focus-within > ul,
  .main-navigation li:focus-within > .sub-menu,
  .site-header li:hover > ul,
  .site-header li:hover > .sub-menu,
  .site-header li:focus-within > ul,
  .site-header li:focus-within > .sub-menu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  header nav ul ul li,
  header nav .sub-menu li,
  header .menu .sub-menu li,
  .main-navigation .sub-menu li,
  .site-header .sub-menu li {
    display: block !important;
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  header nav ul ul a,
  header nav .sub-menu a,
  header .menu .sub-menu a,
  .main-navigation .sub-menu a,
  .site-header .sub-menu a {
    display: block !important;
    width: 100% !important;
    padding: 11px 13px !important;
    margin: 0 !important;
    border-radius: 9px !important;
    white-space: nowrap !important;
    color: #0D1B2A !important;
    background: transparent !important;
    text-decoration: none !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    box-shadow: none !important;
  }

  header nav ul ul a:hover,
  header nav .sub-menu a:hover,
  header .menu .sub-menu a:hover,
  .main-navigation .sub-menu a:hover,
  .site-header .sub-menu a:hover {
    background: #f4f6f8 !important;
    color: #0D1B2A !important;
  }
}

@media (max-width: 900px){
  header nav .sub-menu,
  header .menu .sub-menu,
  .main-navigation .sub-menu,
  .site-header .sub-menu {
    box-shadow: none;
  }
}
