
:root{
  --prisma-black:#111111;
  --prisma-yellow:#ffd400;
  --prisma-white:#ffffff;
}

/* Masque uniquement l'ancien header technique sur les pages PRISMA. */
.prisma-v154-hide-legacy-prisma-header #masthead,
.prisma-v154-hide-legacy-prisma-header header.site-header,
.prisma-v154-hide-legacy-prisma-header .site-header,
.prisma-v154-hide-legacy-prisma-header .ast-primary-header-bar{
  display:none!important;
}

/* Conteneur global */
.prisma-v154-global-nav{
  position:sticky;
  top:0;
  z-index:10050;
  width:100%;
  background:var(--prisma-black);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 1px 8px rgba(0,0,0,.10);
}

/* Centrage réel du menu desktop */
.prisma-v154-global-nav .prisma-v150-main-nav{
  background:var(--prisma-black)!important;
  border:0!important;
}

.prisma-v154-global-nav .prisma-v150-main-menu{
  max-width:1200px!important;
  margin:0 auto!important;
  padding:0 24px!important;
  min-height:48px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  list-style:none!important;
  overflow:visible!important;
}

.prisma-v154-global-nav .prisma-v150-main-menu>li{
  position:relative!important;
  margin:0!important;
}

.prisma-v154-global-nav .prisma-v150-main-menu>li>a{
  display:flex!important;
  align-items:center!important;
  min-height:48px!important;
  padding:0 15px!important;
  color:var(--prisma-white)!important;
  background:transparent!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
}

.prisma-v154-global-nav .menu-item-has-children>a::after{
  content:"⌄";
  margin-left:7px;
  color:var(--prisma-yellow);
  font-size:10px;
}

.prisma-v154-global-nav .prisma-v150-main-menu>li>a:hover,
.prisma-v154-global-nav .prisma-v150-main-menu>li.current-menu-item>a,
.prisma-v154-global-nav .prisma-v150-main-menu>li.current-menu-ancestor>a{
  color:var(--prisma-yellow)!important;
}

/* Sous-menus modernes et discrets */
.prisma-v154-global-nav .sub-menu{
  display:none!important;
  position:absolute!important;
  top:100%!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  min-width:225px!important;
  max-width:320px!important;
  margin:0!important;
  padding:8px!important;
  list-style:none!important;
  background:var(--prisma-black)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-top:2px solid var(--prisma-yellow)!important;
  border-radius:0 0 8px 8px!important;
  box-shadow:0 16px 34px rgba(0,0,0,.22)!important;
}

.prisma-v154-global-nav li:hover>.sub-menu,
.prisma-v154-global-nav li:focus-within>.sub-menu{
  display:block!important;
}

.prisma-v154-global-nav .sub-menu li{
  position:relative!important;
  margin:0!important;
}

.prisma-v154-global-nav .sub-menu a{
  display:block!important;
  padding:10px 11px!important;
  color:var(--prisma-white)!important;
  background:transparent!important;
  text-decoration:none!important;
  font-size:12.5px!important;
  line-height:1.25!important;
  border-radius:5px!important;
}

.prisma-v154-global-nav .sub-menu a:hover{
  background:var(--prisma-yellow)!important;
  color:var(--prisma-black)!important;
}

.prisma-v154-global-nav .sub-menu .sub-menu{
  top:-8px!important;
  left:100%!important;
  transform:none!important;
}

/* Toggle invisible sur desktop */
.prisma-v154-toggle{
  display:none;
}

/* Anciennes barres injectées localement : neutralisées pour éviter doublons */
.prisma-v151-main-menu-wrap{
  display:none!important;
}

/* Sous-menu portails : reste séparé, compact, limité à la largeur éditoriale */
.prisma-v120-menu{
  position:sticky!important;
  top:48px!important;
  z-index:9990!important;
  background:transparent!important;
}
.prisma-v120-menu>.prisma-v120-shell{
  max-width:1200px!important;
  margin:0 auto!important;
  padding:0 18px!important;
}
.prisma-v120-menu-scroll{
  background:var(--prisma-yellow)!important;
  min-height:36px!important;
}
.prisma-v120-menu-scroll a{
  color:var(--prisma-black)!important;
  text-decoration:none!important;
  font-size:11.5px!important;
  font-weight:900!important;
  padding:11px 14px!important;
}
.prisma-v120-menu-scroll a:hover{
  background:var(--prisma-black)!important;
  color:var(--prisma-yellow)!important;
}

/* Pas de langues sur le web */
.prisma-v130-langs,.prisma-language-switcher,.prisma-v130-language-switcher,
.prisma-v140-language-switcher,[data-prisma-language-switcher]{
  display:none!important;
}

@media(max-width:800px){
  .prisma-v154-global-nav{
    min-height:44px;
  }

  /* une seule icône centrée, rien d'autre */
  .prisma-v154-toggle{
    display:flex!important;
    width:100%!important;
    height:44px!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:var(--prisma-black)!important;
    color:var(--prisma-yellow)!important;
    font-size:22px!important;
    line-height:1!important;
    cursor:pointer!important;
  }

  .prisma-v154-desktop-mobile-menu{
    display:none!important;
    background:var(--prisma-black)!important;
    max-height:calc(100vh - 44px);
    overflow:auto;
  }

  body.prisma-v154-menu-open .prisma-v154-desktop-mobile-menu{
    display:block!important;
  }

  .prisma-v154-global-nav .prisma-v150-main-menu{
    display:block!important;
    min-height:0!important;
    padding:6px 14px 12px!important;
  }

  .prisma-v154-global-nav .prisma-v150-main-menu>li>a{
    min-height:43px!important;
    justify-content:space-between!important;
    padding:0 10px!important;
    border-bottom:1px solid rgba(255,255,255,.09)!important;
    font-size:13px!important;
  }

  /* aucun sous-menu ouvert automatiquement au hover mobile */
  .prisma-v154-global-nav li:hover>.sub-menu{
    display:none!important;
  }

  .prisma-v154-global-nav li.prisma-v154-subopen>.sub-menu{
    display:block!important;
  }

  .prisma-v154-global-nav .sub-menu,
  .prisma-v154-global-nav .sub-menu .sub-menu{
    position:static!important;
    transform:none!important;
    min-width:0!important;
    max-width:none!important;
    width:100%!important;
    margin:0!important;
    padding:3px 0 6px 14px!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  .prisma-v154-global-nav .sub-menu a{
    border-left:2px solid var(--prisma-yellow)!important;
    border-radius:0!important;
    padding:9px 10px!important;
  }

  .prisma-v120-menu{
    top:44px!important;
  }

  body.prisma-v154-menu-open .prisma-v120-menu{
    position:relative!important;
    top:auto!important;
  }
}
