/* NDJ shared disclosure navigation. Native details remains usable without JS. */
.site-header .nav-group{position:relative;gap:0;align-items:center}
.site-header .nav-group>a{border-radius:7px;padding-right:.35rem}
.site-header .subnav{position:static;flex:none}
.site-header .subnav>summary{display:flex;align-items:center;justify-content:center;list-style:none;padding:0;width:30px;min-width:30px;min-height:44px;border-radius:7px;color:inherit;cursor:pointer}
.site-header .subnav>summary::-webkit-details-marker{display:none}
.site-header .subnav>summary::marker{content:""}
.site-header .nav-chevron{display:block;width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .16s ease}
.site-header .subnav[open]>summary .nav-chevron{transform:translateY(2px) rotate(225deg)}
.site-header .subnav>summary:hover,.site-header .subnav[open]>summary{background:rgba(101,40,247,.09)}
.site-header .subnav>.submenu-panel{position:absolute;left:0;right:auto;top:100%;z-index:110;display:flex;flex-direction:column;gap:2px;width:max-content;min-width:225px;max-width:min(340px,calc(100vw - 32px));max-height:min(65vh,530px);overflow-y:auto;overscroll-behavior:contain;padding:9px;background:#fff;border:1px solid #ddd5f4;border-top:3px solid #6528f7;border-radius:0 0 14px 14px;box-shadow:0 15px 36px rgba(21,12,49,.16);color:#21124c}
.site-header .subnav:not([open])>.submenu-panel{display:none}
.site-header .nav-group.submenu-align-end .submenu-panel{left:auto;right:0}
.site-header .nav-links .submenu-panel a{display:block;width:100%;max-width:none;padding:11px 14px;border-radius:7px;color:#251944;background:transparent;font-size:.91rem;font-weight:600;line-height:1.4;text-decoration:none;white-space:normal;transform:none;transition:background .15s ease,color .15s ease}
.site-header .nav-links .submenu-panel a:hover,.site-header .nav-links .submenu-panel a:focus-visible{color:#5511c9;background:#f1ebff;transform:none}
.site-header .nav-links .submenu-panel a[aria-current="page"]{color:#431096;background:#f1ebff}
.site-header .nav-links a:focus-visible,.site-header .subnav>summary:focus-visible{outline:2px solid #6528f7!important;outline-offset:2px!important}
.reference-inner .site-header .subnav>summary{color:#fff}
.reference-inner .site-header .subnav>summary:hover,.reference-inner .site-header .subnav[open]>summary{background:rgba(255,255,255,.17)}
.reference-inner .site-header .nav-links>a:focus-visible,.reference-inner .site-header .nav-group>a:focus-visible,.reference-inner .site-header .subnav>summary:focus-visible{outline-color:#fff!important}
.reference-inner .site-header .nav-links .submenu-panel a:focus-visible{outline-color:#6528f7!important}
@media(max-width:820px){
 .site-header .nav-links{align-items:stretch;gap:3px;max-height:calc(100dvh - 125px);overflow-y:auto;overscroll-behavior:contain;padding:6px 2px}
 .site-header .nav-links>a{flex:0 0 100%;margin:0}
 .site-header .nav-group{flex:0 0 100%;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start}
 .site-header .nav-group>a{grid-column:1;grid-row:1;min-height:44px;display:flex;align-items:center}
 .site-header .nav-group .subnav{display:contents}
 .site-header .nav-group .subnav>summary{grid-column:2;grid-row:1;width:44px;min-width:44px}
 .site-header .subnav>.submenu-panel,.site-header .nav-group.submenu-align-end .submenu-panel{position:static;grid-column:1/-1;grid-row:2;width:100%;min-width:0;max-width:none;max-height:none;margin:3px 0 7px;padding:5px 8px;border-top:1px solid #e4dcf5;border-radius:10px;box-shadow:none;overflow:visible}
 .site-header .nav-links .submenu-panel a{min-height:44px;padding:11px 13px}
}
@media(prefers-reduced-motion:reduce){.site-header .nav-chevron,.site-header .nav-links .submenu-panel a{transition:none}}


/* Owner-approved purple shared header, on every generated page. */

.site-header {
  position: sticky;
  top: 0;
  z-index: 40;
  background: linear-gradient(90deg, #5d00f6 0%, #6b00ff 52%, #5900eb 100%) !important;
  border-bottom: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 8px 22px rgba(19,7,61,.14) !important;
}

.site-header .phase2-nav {
  min-height: 74px;
}

.site-header .site-brand {
  display: inline-flex !important;
  align-items: center !important;
  gap: .7rem !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  color: #fff !important;
  text-decoration: none !important;
}

.site-header .site-brand > img.brand-mark {
  display: block !important;
  width: auto !important;
  height: 48px !important;
  max-width: 54px !important;
  object-fit: contain !important;
  flex: 0 0 auto !important;
}

.site-header .site-brand > span {
  color: #fff !important;
  font-size: 1.78rem !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: -.025em !important;
  white-space: nowrap;
}

.site-header .phase2-nav > .nav-links > a,
.site-header .phase2-nav > .nav-links > .nav-group > a {
  color: #fff !important;
  font-size: 1.18rem !important;
  font-weight: 700 !important;
}

.site-header .phase2-nav > .nav-links > a:hover,
.site-header .phase2-nav > .nav-links > .nav-group > a:hover {
  color: #fff !important;
  opacity: .86;
}

.site-header .phase2-nav > .nav-links > a[aria-current="page"],
.site-header .phase2-nav > .nav-links > .nav-group > a[aria-current="page"] {
  color: #fff !important;
}

.site-header .nav-chevron,
.site-header .subnav summary,
.site-header .menu-toggle {
  color: #fff !important;
}

.site-header .menu-toggle {
  border-color: rgba(255,255,255,.45) !important;
}

@media (max-width: 1180px) {
  .site-header .site-brand > span {
    font-size: 1.45rem !important;
  }

  .site-header .phase2-nav > .nav-links > a,
  .site-header .phase2-nav > .nav-links > .nav-group > a {
    font-size: 1rem !important;
  }
}

@media (max-width: 820px) {
  .site-header .site-brand > img.brand-mark {
    height: 38px !important;
    max-width: 43px !important;
  }

  .site-header .site-brand > span {
    font-size: 1.25rem !important;
  }
}

/* Keep current-page and keyboard cues readable against the purple header. */
.site-header .nav-links>a[aria-current="page"],.site-header .nav-group>a[aria-current="page"]{background:rgba(255,255,255,.16)!important;box-shadow:inset 0 -2px 0 rgba(255,255,255,.92)}
.site-header .nav-links>a:hover,.site-header .nav-group>a:hover,.site-header .subnav>summary:hover,.site-header .subnav[open]>summary{background:rgba(255,255,255,.16)}
.site-header .nav-links>a:focus-visible,.site-header .nav-group>a:focus-visible,.site-header .subnav>summary:focus-visible,.site-header .menu-toggle:focus-visible{outline:2px solid #fff!important;outline-offset:2px!important}
.site-header .nav-links .submenu-panel a:focus-visible{outline-color:#6528f7!important}
.site-header .menu-toggle{background:transparent!important}
@media(min-width:821px) and (max-width:1100px){.site-header .phase2-nav{gap:.5rem;padding-left:.75rem;padding-right:.75rem}.site-header .nav-links{gap:0;flex-wrap:wrap;justify-content:flex-end;min-width:0}.site-header .nav-links>a,.site-header .nav-group>a{padding-left:.25rem;padding-right:.25rem}}
