/* V5.0: accessible hero carousel and blinking typing indicator */
.hero .spark{animation:nwBlink 1s steps(2,start) infinite;flex:none}
@keyframes nwBlink{0%,49%{opacity:1;box-shadow:0 0 16px #00d8ff}50%,100%{opacity:.18;box-shadow:0 0 3px #00d8ff}}
.nw-type-label{display:inline-block;overflow:hidden;white-space:nowrap;vertical-align:bottom;max-width:0;animation:nwTypeIn 1.45s steps(34,end) .65s forwards}
@keyframes nwTypeIn{to{max-width:34ch}}
.nw-hero-controls{display:flex;gap:10px;align-items:center;margin-top:24px;direction:ltr;justify-content:flex-start}
.nw-slide-dot{height:8px;width:23px;padding:0;border-radius:50px;background:#60698c;border:0;cursor:pointer;transition:width .35s,background .35s}
.nw-slide-dot[aria-current=true]{width:45px;background:linear-gradient(90deg,#974bff,#00cfff)}
.nw-slide-dot:focus-visible,.nw-slide-toggle:focus-visible{outline:2px solid #00d8ff;outline-offset:4px}
.nw-slide-toggle{cursor:pointer;border:1px solid #536087;border-radius:9px;background:#151d3c;color:#fff;min-width:30px;height:27px}
.nw-slide-copy{transition:opacity .3s ease,transform .3s ease}
.hero.nw-changing .nw-slide-copy{opacity:0;transform:translateY(9px)}
.hero-art .glass-card{transition:filter .6s ease}
.hero[data-nw-slide="1"] .glass-card{filter:hue-rotate(28deg)}
.hero[data-nw-slide="2"] .glass-card{filter:hue-rotate(-34deg)}
@media(max-width:650px){.nw-type-label{white-space:normal;animation:none;max-width:none}.nw-hero-controls{margin-top:16px}}
@media(prefers-reduced-motion:reduce){.hero .spark,.nw-type-label{animation:none!important;max-width:none!important;opacity:1}.nw-slide-copy{transition:none!important}}
