/* A single travelling underline owns desktop navigation feedback. Keep these
   controls immune to generic hover/pressed button skins from other sections. */
.site-header .primary-nav{position:relative}
.site-header .primary-nav>.site-nav-item{
 --nav-neon-color:#53d9ff;
 background:transparent!important;
 border:0!important;
 box-shadow:none!important;
 filter:none!important;
 text-shadow:none!important;
 text-decoration:none!important;
 outline:none;
}
.site-header .primary-nav>.chaos-nav{--nav-neon-color:#ff68d1}
.site-header .primary-nav>.site-nav-item::before{content:none!important}
.site-header .primary-nav>.site-nav-item::after{
 content:'';
 position:absolute;
 left:0;
 right:0;
 bottom:1px;
 height:2px;
 background:var(--nav-neon-color);
 box-shadow:0 0 5px var(--nav-neon-color),0 0 12px var(--nav-neon-color);
 opacity:0;
 transform:scaleX(.3);
 transform-origin:center;
 transition:transform .22s ease,opacity .18s ease;
 pointer-events:none;
}
.site-header .primary-nav>.site-nav-item:is(:hover,:focus-visible,[aria-current=page])::after{
 opacity:1;
 transform:scaleX(1);
}
.site-header .primary-nav>.site-nav-item:focus-visible{color:#e5faff}
.site-header .primary-nav.nav-neon-ready>.site-nav-item::after{opacity:0!important}
.nav-neon-line{
 --line-color:#53d9ff;
 position:absolute;
 left:0;
 top:0;
 width:0;
 height:2px;
 border-radius:2px;
 background:var(--line-color);
 box-shadow:0 0 5px var(--line-color),0 0 12px var(--line-color);
 transform:translate3d(var(--line-x,0px),var(--line-y,0px),0);
 opacity:0;
 pointer-events:none;
 transition:transform .24s cubic-bezier(.2,.7,.25,1),width .24s cubic-bezier(.2,.7,.25,1),background-color .2s ease,box-shadow .2s ease,opacity .15s ease;
}
@media(prefers-reduced-motion:reduce){
 .nav-neon-line,.site-header .primary-nav>.site-nav-item::after{transition:none}
}
