/* Menu du haut regroupé (2026-10-21) : Accueil · L'association ▾ · Clubs ▾ ·
 * Articles · Contact. Les sous-menus s'ouvrent au survol et au clavier (focus).
 * En dessous de 920 px, le menu du haut est masqué : le menu plein écran prend le relais. */
.bar-links{align-items:center;}
.nav-group{position:relative;display:flex;align-items:center;}
.nav-group > .nav-top::after{
  content:"";display:inline-block;width:5px;height:5px;margin:0 0 3px 8px;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);
  opacity:.7;
}
.nav-sub{
  position:absolute;top:calc(100% + 24px);left:-20px;z-index:60;min-width:240px;
  padding:14px 0 10px;display:none;flex-direction:column;
  background:#0B1220;border:1px solid rgba(255,255,255,.12);border-top:2px solid #D9B65C;
}
/* Pont invisible : le survol ne se perd pas entre le lien et le panneau. */
.nav-sub::before{content:"";position:absolute;left:0;right:0;top:-28px;height:28px;}
.nav-group:hover .nav-sub,.nav-group:focus-within .nav-sub{display:flex;}
.bar-links .nav-sub a{
  padding:10px 20px;border:0;text-transform:none;letter-spacing:0;
  font-size:14.5px;font-weight:600;color:rgba(255,255,255,.78);white-space:nowrap;
}
.bar-links .nav-sub a:hover,.bar-links .nav-sub a:focus{color:#fff;background:rgba(255,255,255,.06);}

/* Menu plein écran (mobile), mêmes regroupements que le menu du haut.
 * Rubriques en Sora, sous-liens plus petits sous un intitulé or ; la page
 * courante est marquée d'un filet or. Le menu défile si l'écran est court. */
.menu-links.menu-v2{justify-content:flex-start;gap:0;padding:14px 0 18px;}
.menu-v2 a::before{display:none;content:none;}
.menu-v2 a{border:0;padding:0;}
.menu-v2 a:hover{padding-left:0;}
.menu-v2 .m-top{display:block;font-family:Sora,sans-serif;font-weight:700;font-size:clamp(20px,3.1vh,26px);
  color:rgba(255,255,255,.9);padding:13px 0;border-bottom:1px solid rgba(255,255,255,.1);}
.menu-v2 .m-group{padding:16px 0 12px;border-bottom:1px solid rgba(255,255,255,.1);}
.menu-v2 .m-head{margin:0 0 6px;font:700 11.5px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#D9B65C;}
.menu-v2 .m-sub{display:block;font-family:Inter,sans-serif;font-weight:600;font-size:16.5px;line-height:1.3;
  color:rgba(255,255,255,.72);padding:8px 0;}
@media(min-width:560px){.menu-v2 .m-group{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;}
  .menu-v2 .m-head{grid-column:1 / -1;}}
.menu-v2 a:hover,.menu-v2 a:focus{color:#fff;}
.menu-v2 a[aria-current="page"]{color:#fff;padding-left:12px;box-shadow:inset 3px 0 0 #D9B65C;}
