/* Dropdown nav template — hover flyouts + expand-all mega panel */
.nav--dropdown .nav-links--dropdown{
  display:flex;
  align-items:stretch;
  justify-content:center;
  gap:0;
  min-width:0;
}
.nav--dropdown .nav-item{
  position:relative;
  display:flex;
  align-items:stretch;
}
.nav--dropdown .nav-item-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  height:100%;
  padding:0 14px;
  color:inherit;
  text-decoration:none;
  white-space:nowrap;
}
.nav--dropdown .nav-caret{
  width:0;
  height:0;
  border-left:4px solid transparent;
  border-right:4px solid transparent;
  border-top:5px solid rgba(255,255,255,.55);
  transition:transform .2s ease,border-top-color .2s ease;
}
.nav--dropdown .nav-item.is-open > .nav-item-link .nav-caret,
.nav--dropdown .nav-item:hover > .nav-item-link .nav-caret{
  transform:rotate(180deg);
  border-top-color:var(--red,#e01d26);
}
.nav--dropdown .nav-sub{
  position:absolute;
  top:calc(100% - 2px);
  left:50%;
  z-index:40;
  display:grid;
  gap:2px;
  min-width:180px;
  padding:10px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(8,8,9,.97);
  box-shadow:0 18px 40px rgba(0,0,0,.45);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate(-50%,6px);
  transition:opacity .18s ease,transform .18s ease,visibility .18s;
}
.nav--dropdown .nav-item:hover > .nav-sub,
.nav--dropdown .nav-item:focus-within > .nav-sub,
.nav--dropdown .nav-item.is-open > .nav-sub,
.nav--dropdown.is-expand-all .nav-item.has-sub > .nav-sub{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,0);
}
.nav--dropdown .nav-sub-link{
  display:block;
  padding:10px 12px;
  color:#d8d8dc;
  font-size:12px;
  font-weight:750;
  letter-spacing:.04em;
  text-decoration:none;
  transition:background .15s,color .15s;
}
.nav--dropdown .nav-sub-link:hover,
.nav--dropdown .nav-sub-link:focus-visible{
  background:rgba(224,29,38,.14);
  color:#fff;
}
.nav-expand-all{
  appearance:none;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.04);
  color:#eee;
  padding:7px 10px;
  font:inherit;
  font-size:10px;
  font-weight:850;
  letter-spacing:.08em;
  cursor:pointer;
  white-space:nowrap;
  transition:border-color .18s,background .18s,color .18s;
}
.nav-expand-all:hover,
.nav-expand-all[aria-pressed="true"]{
  border-color:rgba(224,29,38,.7);
  background:rgba(224,29,38,.16);
  color:#fff;
}
.nav-mega{
  position:absolute;
  left:0;
  right:0;
  top:100%;
  z-index:35;
  border-bottom:1px solid rgba(255,255,255,.1);
  background:rgba(6,6,7,.98);
  box-shadow:0 24px 48px rgba(0,0,0,.4);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(-8px);
  transition:opacity .22s ease,transform .26s cubic-bezier(.2,.8,.2,1),visibility .22s;
}
.nav-mega[hidden]{display:none!important}
.nav-mega.is-mega-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:none;
}
.nav-mega-inner{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:18px 24px;
  padding:22px 0 26px;
}
.nav-mega-col{display:grid;gap:6px;align-content:start}
.nav-mega-title{
  margin-bottom:4px;
  color:#fff;
  font-size:12px;
  font-weight:900;
  letter-spacing:.1em;
  text-decoration:none;
}
.nav-mega-col a:not(.nav-mega-title){
  color:#a8a8ae;
  font-size:12px;
  font-weight:650;
  text-decoration:none;
}
.nav-mega-col a:not(.nav-mega-title):hover{color:#fff}
.mobile-menu--dropdown .mobile-nav-group{border-bottom:1px solid var(--line,rgba(255,255,255,.08))}
.mobile-menu--dropdown .mobile-nav-group > a{
  display:block;
  border-bottom:0;
  padding:13px 0 8px;
}
.mobile-menu--dropdown .mobile-nav-sub{
  display:grid;
  gap:0;
  padding:0 0 12px 12px;
}
.mobile-menu--dropdown .mobile-nav-sub a{
  border-bottom:0;
  padding:8px 0;
  color:#9a9aa0;
  font-size:13px;
  font-weight:650;
}
.mobile-menu--dropdown .mobile-nav-sub a:hover{color:#fff}
@media(max-width:1050px){
  .nav--dropdown .nav-links--dropdown,
  .nav--dropdown .nav-expand-all{display:none}
  .nav-mega{display:none!important}
}
@media(prefers-reduced-motion:reduce){
  .nav--dropdown .nav-sub,
  .nav--dropdown .nav-caret,
  .nav-mega{transition:none}
  .nav--dropdown2 .nav-mega.is-mega-open .nav-mega-col{animation:none;opacity:1;transform:none}
  .nav--dropdown2 .nav-expand-all [data-nav-expand-label]{transition:none}
}
