/* ***************************************** */
/* MEGA MENU */
/* ***************************************** */

/* Blurbs : image et texte centrés verticalement */
@media (min-width: 768px) {
  .pa-vertical-align-blurb .et_pb_blurb_content {
    display: flex;
    align-items: center;
  }
  .pa-vertical-align-blurb .et_pb_main_blurb_image {
    width: auto !important;
    margin-bottom: 0 !important;
  }
}

/* ***************************************** */
/* Fond des sous-menus (desktop) et du panneau (mobile) */
/* ***************************************** */
.dsm-mega-menu-container:not(.mobile-menu) .dsm-submenu-inner-container,
.et_pb_module.dsm_mega_menu .dsm-mega-menu-container.mobile-menu {
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M100.0001575,25.4561334L25.4562122,100.0000787H.0001575v-25.4560547L74.5441028.0000787h25.4560547v25.4560547ZM.0001575.0000787v25.4560547L25.4562122.0000787H.0001575ZM100.0001575,74.5440241l-25.4560547,25.4560547h25.4560547v-25.4560547Z'/%3E%3C/svg%3E") repeat,
    radial-gradient(circle at top left, #001f26 0%, #001013 33%);
  background-size: auto 4px, cover;
}
.et_pb_module.dsm_mega_menu .dsm-mega-menu-container.mobile-menu {
  padding-left: 0;
  padding-right: 0;
}
.et_pb_module.dsm_mega_menu .dsm-mega-menu-container.mobile-menu .dsm-root-menu .dsm-mega-menu-item {
  margin-right: 0;
}
.et_pb_module.dsm_mega_menu .dsm-mega-menu-container.mobile-menu .dsm-root-menu > .dsm-mega-menu-item > .dsm-mega-menu-link {
  padding-left: 20px;
  padding-right: 20px;
  box-sizing: border-box;
}

/* ***************************************** */
/* Suppression de la barre de recherche du menu mobile */
/* ***************************************** */
.dsm-mega-menu-search-container {
  display: none !important;
}

/* ***************************************** */
/* MOBILE : hauteur du menu */
/* ***************************************** */
.et_pb_module.dsm_mega_menu .dsm-mega-menu-container.mobile-menu {
  height: auto !important;
  max-height: 96%;
}
.et_pb_module.dsm_mega_menu .dsm-mega-menu-container.mobile-menu nav {
  height: auto;
  max-height: calc(96vh - 22px); /* Navigateurs sans dvh */
  max-height: calc(96dvh - 22px); /* 22px = padding haut + bas du panneau */
  overflow-y: auto;
}

/* ***************************************** */
/* DESKTOP : voile sombre derrière le sous-menu */
/* ***************************************** */
.dsm-mega-menu-container:not(.mobile-menu) .dsm-submenu-inner-container::before {
  content: '';
  position: fixed;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 66px,     /* Transparent sur les 66 premiers pixels */
    rgba(0, 0, 0, 0.55) 222px,
    rgba(0, 0, 0, 0.88) 100%   /* Le plus sombre tout en bas */
  );
  z-index: -1;                 /* Derrière le sous-menu */
  pointer-events: none;        /* Ne bloque pas les clics */
}
