/* V48 — Menu PC V47 + logo validé, appliqués aux pages internes.
   Desktop uniquement (>=821px). Le header/mobile existant de chaque page reste intact. */

.dm11-v48-menu-symbols{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}

@media (min-width:821px){
  /* Le header historique reste dans le HTML mais n'est masqué que sur PC. */
  .dm11-v48-original-header{display:none!important}

  .dm11-v48-desktop-header{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    min-height:104px!important;
    height:104px!important;
    margin:0!important;
    padding-left:max(24px,calc((100vw - 1150px)/2))!important;
    padding-right:max(24px,calc((100vw - 1150px)/2))!important;
    display:flex!important;
    align-items:center!important;
    position:relative!important;
    top:auto!important;
    z-index:50!important;
    background:linear-gradient(180deg,#010a1a 0%,#010c20 100%)!important;
    border:0!important;
    border-radius:0!important;
    border-bottom:1px solid rgba(53,235,255,.18)!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  .dm11-v48-brand{
    position:absolute!important;
    left:max(32px,calc((100vw - 1696px)/2))!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    width:350px!important;
    min-width:335px!important;
    max-width:none!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    z-index:3!important;
    text-decoration:none!important;
    background:none!important;
    border:0!important;
  }

  .dm11-v48-brand img{
    display:block!important;
    width:350px!important;
    max-width:none!important;
    height:auto!important;
    max-height:96px!important;
    object-fit:contain!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
  }

  .dm11-v48-menu{
    flex:1 1 auto!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
  }

  .dm11-v48-menu-list{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-width:0!important;
    list-style:none!important;
    margin:0!important;
    padding:0!important;
  }

  .dm11-v48-menu-link{
    position:relative!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:11px!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:13px 9px!important;
    border:0!important;
    border-radius:24px!important;
    color:#d9e6f8!important;
    background:transparent!important;
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
    font-size:13px!important;
    font-weight:850!important;
    line-height:1!important;
    letter-spacing:-.025em!important;
    text-decoration:none!important;
    white-space:nowrap!important;
    box-shadow:none!important;
    transform:none!important;
    transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease!important;
  }

  .dm11-v48-menu-link svg{
    width:25px!important;
    height:25px!important;
    fill:none!important;
    stroke:#82dfff!important;
    stroke-width:2.2!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    filter:drop-shadow(0 0 7px rgba(34,204,255,.5))!important;
    flex:none!important;
  }

  .dm11-v48-menu-link::after{
    content:""!important;
    position:absolute!important;
    left:25%!important;
    right:25%!important;
    bottom:4px!important;
    height:3px!important;
    border-radius:4px!important;
    background:#12dfff!important;
    box-shadow:0 0 10px #00dfff!important;
    transform:scaleX(0)!important;
    transition:transform .18s ease!important;
  }

  .dm11-v48-menu-link:hover,
  .dm11-v48-menu-link.active{
    background:linear-gradient(180deg,rgba(17,90,145,.8),rgba(8,46,83,.75))!important;
    color:#fff!important;
    box-shadow:0 0 20px rgba(0,172,255,.26),inset 0 0 10px rgba(0,205,255,.07)!important;
    transform:translateY(-1px)!important;
  }

  .dm11-v48-menu-link.active{
    padding:13px 18px!important;
    border:1px solid rgba(77,211,255,.68)!important;
    box-shadow:0 0 22px rgba(0,199,255,.3),inset 0 0 11px rgba(0,208,255,.1)!important;
  }

  .dm11-v48-menu-link:hover::after,
  .dm11-v48-menu-link.active::after{transform:scaleX(1)!important}
}

@media (min-width:821px) and (max-width:1500px){
  .dm11-v48-brand{left:28px!important;width:305px!important;min-width:280px!important}
  .dm11-v48-brand img{width:305px!important;max-height:92px!important}
  .dm11-v48-menu-list{gap:5px!important}
  .dm11-v48-menu-link{font-size:13px!important;gap:8px!important;padding:12px 7px!important}
  .dm11-v48-menu-link svg{width:22px!important;height:22px!important}
  .dm11-v48-menu-link.active{padding:12px 13px!important}
}

@media (min-width:821px) and (max-width:1180px){
  .dm11-v48-brand{width:245px!important;min-width:225px!important}
  .dm11-v48-brand img{width:245px!important;max-height:84px!important}
  .dm11-v48-menu-list{gap:2px!important}
  .dm11-v48-menu-link{font-size:13px!important;gap:6px!important;padding:10px 6px!important}
  .dm11-v48-menu-link svg{width:19px!important;height:19px!important}
  .dm11-v48-menu-link.active{padding:10px 10px!important}
}

/* Mobile : absolument aucun changement de header/menu. */
@media (max-width:820px){
  .dm11-v48-desktop-header,.dm11-v48-menu-symbols{display:none!important}
}
