/* Launch navigation layer — 2026-09-26
   Keeps only the global luminous scroll-progress rail and the in-nav active state.
   No right-side section directory. */

:root{
  --launch-white:#f7f8fa;
}

/* Global top scroll progress — subtle luminous white rail. */
.launch-scroll-progress{
  position:fixed;
  inset:0 0 auto 0;
  height:2px;
  z-index:160;
  pointer-events:none;
  background:rgba(255,255,255,.035);
}
.launch-scroll-progress__fill{
  display:block;
  width:100%;
  height:100%;
  transform:scaleX(0);
  transform-origin:left center;
  background:#fff;
  box-shadow:
    0 0 7px rgba(255,255,255,.86),
    0 0 18px rgba(255,255,255,.34),
    0 0 32px rgba(255,255,255,.10);
  will-change:transform;
}

/* Current-page state stays entirely inside each nav item. */
.nav-links a{
  position:relative;
  border-bottom-color:transparent!important;
}
.nav-links a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:17px;
  height:1px;
  background:var(--launch-white);
  transform:scaleX(0);
  transform-origin:left center;
  opacity:0;
  transition:transform .22s ease,opacity .22s ease;
}
.nav-links a:hover::after{
  transform:scaleX(.36);
  opacity:.46;
}
.nav-links a[aria-current="page"]{
  color:var(--launch-white)!important;
}
.nav-links a[aria-current="page"]::after{
  transform:scaleX(1);
  opacity:1;
}

@media(max-width:720px){
  .nav-links a::after{
    left:0;
    right:auto;
    bottom:7px;
    width:30px;
  }
  .nav-links a:hover::after{transform:scaleX(.55)}
  .nav-links a[aria-current="page"]::after{transform:scaleX(1)}
}

@media(prefers-reduced-motion:reduce){
  .launch-scroll-progress__fill,
  .nav-links a::after{transition:none!important}
}
