/* Identité de marque du header — SNHL 2.00 */
.brand-copy{position:relative;display:flex!important;min-width:0;align-items:flex-start;flex-direction:column}.brand .brand-title{position:relative;display:block!important;padding:0 0 8px;font-family:"Oswald","Arial Narrow",sans-serif!important;font-size:clamp(1.18rem,1.3vw,1.4rem)!important;font-weight:700!important;line-height:1!important;letter-spacing:.045em!important;text-transform:uppercase!important;white-space:nowrap;text-shadow:0 5px 22px rgba(0,0,0,.32)}.brand-title span{color:#f7fbff}.brand-title em{color:#a9c8e7;font-style:normal;font-weight:600}.brand-title:after{content:"";position:absolute;left:0;bottom:0;width:54px;height:3px;border-radius:999px;background:linear-gradient(90deg,#e3263f 0 32%,#268fe9 32% 100%);box-shadow:0 0 13px rgba(38,143,233,.28);transition:width .25s ease}.brand .season-badge{margin-top:7px}.brand:hover .brand-title em{color:#d6eaff}.brand:hover .brand-title:after{width:78px}html[data-theme="light"] .brand-title{text-shadow:none}html[data-theme="light"] .brand-title span{color:#10263c}html[data-theme="light"] .brand-title em{color:#436987}html[data-theme="light"] .brand:hover .brand-title em{color:#174f7d}
@media(max-width:1240px){.brand .brand-title{font-size:1rem!important;letter-spacing:.035em!important}.brand-title:after{width:45px}.brand .season-badge{margin-top:6px}}
@media(max-width:980px){.brand .brand-title{font-size:1.08rem!important}.brand-title:after{height:2px}.brand-copy{max-width:none!important}}
@media(max-width:560px){.brand .brand-title{padding-bottom:6px;font-size:clamp(.76rem,3.35vw,.92rem)!important;letter-spacing:.02em!important}.brand-title:after{width:38px}.brand .season-badge{margin-top:5px}}
@media(max-width:380px){.brand .brand-title{font-size:.7rem!important}.brand-title em{color:#bdd2e6}}
@media(prefers-reduced-motion:reduce){.brand-title:after{transition:none}}

/* MAJ 2.14 — connexion Espace DG dans le header */
.header-dg-access{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:12px;min-width:154px;margin-left:auto;padding:10px 13px;overflow:hidden;border:1px solid rgba(38,143,233,.58);border-radius:14px;background:linear-gradient(125deg,rgba(13,77,136,.72),rgba(20,135,255,.22));color:#f4f9ff;box-shadow:0 10px 24px rgba(0,0,0,.17),inset 0 1px rgba(255,255,255,.06);text-decoration:none}
.header-dg-access::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 0 55%,rgba(255,255,255,.06) 55.5% 56%,transparent 56.5%)}
.header-dg-access:hover,.header-dg-access:focus-visible{border-color:#6eb9ff;background:linear-gradient(125deg,rgba(15,92,163,.86),rgba(31,148,255,.3));transform:translateY(-1px)}
.header-dg-access.is-connected{grid-template-columns:42px minmax(0,1fr) 18px;min-width:184px}.header-dg-team-logo{position:relative;width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 6px 10px rgba(0,0,0,.28))}.header-dg-team-logo[hidden]{display:none}
.header-dg-copy{position:relative;display:grid;min-width:0;line-height:1.12}.header-dg-copy small{color:#69baff;font-size:.55rem;font-weight:900;letter-spacing:.12em}.header-dg-copy strong{overflow:hidden;color:#f8fbff;font-family:"Oswald",sans-serif;font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.header-dg-copy em{color:#abc4dc;font-size:.58rem;font-style:normal}.header-dg-access>b{position:relative;color:#73bdff;font-size:1rem}
html[data-theme="light"] .header-dg-access{border-color:#71aede;background:linear-gradient(125deg,#e8f3fc,#dceeff);color:#112c40;box-shadow:0 8px 20px rgba(37,71,99,.1)}html[data-theme="light"] .header-dg-copy strong{color:#123047}html[data-theme="light"] .header-dg-copy small,html[data-theme="light"] .header-dg-access>b{color:#0875df}html[data-theme="light"] .header-dg-copy em{color:#5d7187}
@media(max-width:1320px){.header-dg-access{min-width:125px;padding:8px 10px}.header-dg-access.is-connected{grid-template-columns:36px minmax(0,1fr);min-width:150px}.header-dg-team-logo{width:36px;height:36px}.header-dg-access>b,.header-dg-copy em{display:none}}
@media(max-width:980px){.header-dg-access{order:2;min-width:0;margin-left:auto;padding:8px 10px}.header-dg-access.is-connected{min-width:0}.header-dg-copy strong{font-size:.8rem}.header-dg-copy small{font-size:.48rem}.menu-button{order:3}.main-menu{order:4}}
@media(max-width:560px){.header-dg-access{gap:7px;padding:7px 9px}.header-dg-access.is-connected{grid-template-columns:32px minmax(0,1fr)}.header-dg-team-logo{width:32px;height:32px}.header-dg-copy small{display:none}.header-dg-copy strong{font-size:.72rem}.menu-button{padding:8px 10px}}
@media(max-width:390px){.header-dg-access{grid-template-columns:1fr;min-width:64px;text-align:center}.header-dg-access.is-connected{grid-template-columns:30px;min-width:44px}.header-dg-access.is-connected .header-dg-copy{display:none}.header-dg-team-logo{width:30px;height:30px}.header-dg-access>b{display:none}}
.header-dg-notification-badge{position:absolute;z-index:3;right:4px;top:3px;display:grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border:2px solid #0b1827;border-radius:999px;background:#e52b3f;color:#fff;font:800 .6rem/1 Inter,Arial,sans-serif;box-shadow:0 4px 10px rgba(229,43,63,.38)}

/* MAJ 3.2 — accès DG à l’extrême droite et filigrane SNHL */
.header-inner .main-menu{order:2;margin-left:auto}.header-dg-access{order:3;flex:0 0 auto;margin-left:10px}.header-dg-access::after{content:"";position:absolute;z-index:0;right:-19px;top:-23px;width:88px;height:88px;background:url("logo_snhl.png") center/contain no-repeat;opacity:.055;transform:rotate(-12deg);pointer-events:none}.header-dg-access>*{z-index:1}.header-dg-access::before{z-index:1}
@media(max-width:980px){.header-inner .main-menu{order:4;margin-left:0}.header-dg-access{order:2;margin-left:auto}.menu-button{order:3}}

.header-dg-access.is-connected{grid-template-columns:48px minmax(0,1fr);min-width:220px;padding:9px 12px}.header-dg-access.is-connected>b{display:none}.header-dg-access.is-connected .header-dg-team-logo{width:48px;height:48px}.header-dg-access.is-connected .header-dg-copy{text-align:right}.header-dg-access.is-connected .header-dg-copy small{color:#58b8f2}.header-dg-access.is-connected .header-dg-copy em{display:block;color:#d3e1ed;font-size:.62rem;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.header-dg-access.is-connected .header-dg-notification-badge{right:-6px;top:-8px}
@media(max-width:1320px){.header-dg-access.is-connected{grid-template-columns:40px minmax(0,1fr);min-width:190px}.header-dg-access.is-connected .header-dg-team-logo{width:40px;height:40px}.header-dg-access.is-connected .header-dg-copy em{display:block}}
@media(max-width:560px){.header-dg-access.is-connected{grid-template-columns:34px minmax(0,1fr);min-width:138px;padding:7px 8px}.header-dg-access.is-connected .header-dg-team-logo{width:34px;height:34px}.header-dg-access.is-connected .header-dg-copy{text-align:left}.header-dg-access.is-connected .header-dg-copy small{display:none}.header-dg-access.is-connected .header-dg-copy strong{font-size:.68rem}.header-dg-access.is-connected .header-dg-copy em{font-size:.55rem}}
@media(max-width:390px){.header-dg-access.is-connected{grid-template-columns:30px;min-width:46px}.header-dg-access.is-connected .header-dg-copy{display:none}.header-dg-access.is-connected .header-dg-team-logo{width:30px;height:30px}}

/* MAJ 3.12 — la pastille doit déborder de la carte de session */
.header-dg-access,.header-dg-access.is-connected{overflow:visible}
.header-dg-access::after{right:0;top:0;width:72px;height:100%;border-radius:0 14px 14px 0;clip-path:inset(0 round 0 14px 14px 0)}
.header-dg-access.is-connected .header-dg-notification-badge{z-index:8;right:-9px;top:-10px}

/* Mobile commun SNHL 2026 : logo, session STHS, menu */
@media(max-width:760px){
  .site-header{z-index:1000}
  .site-header .header-inner{
    display:grid!important;
    grid-template-columns:minmax(48px,1fr) minmax(142px,178px) 52px!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-height:78px!important;
    padding:9px 10px!important;
    flex-wrap:nowrap!important;
  }
  .site-header .brand{grid-column:1;min-width:0}
  .site-header .brand>img{width:56px!important;height:56px!important}
  .site-header .brand-copy{display:none!important}
  .site-header .header-dg-access,
  .site-header .header-dg-access.is-connected{
    grid-column:2!important;
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    min-height:56px!important;
    margin:0!important;
    padding:6px 8px!important;
    border-radius:14px!important;
  }
  .site-header .header-dg-team-logo,
  .site-header .header-dg-access.is-connected .header-dg-team-logo{display:block;width:38px!important;height:38px!important}
  .site-header .header-dg-copy,
  .site-header .header-dg-access.is-connected .header-dg-copy{display:grid!important;text-align:right!important}
  .site-header .header-dg-copy small{display:none!important}
  .site-header .header-dg-copy strong{max-width:104px;font-size:.75rem!important}
  .site-header .header-dg-copy em,
  .site-header .header-dg-access.is-connected .header-dg-copy em{display:block!important;font-size:.58rem!important}
  .site-header .header-dg-access>b{display:none!important}
  .site-header .menu-button{
    grid-column:3!important;
    display:flex!important;
    width:52px!important;
    height:56px!important;
    margin:0!important;
    padding:29px 3px 4px!important;
    align-items:center!important;
    justify-content:center!important;
    position:relative;
    border:1px solid rgba(80,153,207,.55)!important;
    border-radius:14px!important;
    background:#0b2135!important;
    color:#dce9f5!important;
    font-size:.6rem!important;
  }
  .site-header .menu-button:before{content:"☰";position:absolute;top:5px;left:0;right:0;color:#eef7ff;font-size:1.65rem;line-height:1}
  .site-header .main-menu{
    grid-column:1/-1!important;
    position:fixed!important;
    z-index:1200!important;
    top:78px!important;
    left:7px!important;
    right:7px!important;
    width:auto!important;
    max-height:calc(100dvh - 88px)!important;
    margin:0!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    border-radius:15px!important;
    box-shadow:0 22px 60px rgba(0,0,0,.55)!important;
  }
}
@media(max-width:390px){
  .site-header .header-inner{grid-template-columns:48px minmax(132px,1fr) 48px!important;padding-inline:7px!important}
  .site-header .brand>img{width:48px!important;height:48px!important}
  .site-header .header-dg-access,.site-header .header-dg-access.is-connected{grid-template-columns:34px minmax(0,1fr)!important;min-height:52px!important}
  .site-header .header-dg-team-logo,.site-header .header-dg-access.is-connected .header-dg-team-logo{width:34px!important;height:34px!important}
  .site-header .header-dg-copy strong{max-width:88px;font-size:.68rem!important}
  .site-header .menu-button{width:48px!important;height:52px!important}
}
