@keyframes hs-kenburns {
    from { transform: scale(1.08) translate3d(0,0,0); }
    to   { transform: scale(1.18) translate3d(1.5%,-1.5%,0); }
}
#hero-swiper .hs-img { transform: scale(1.08); transition: none; }
#hero-swiper .swiper-slide-active .hs-img { animation: hs-kenburns 9s ease-out forwards; }
.hs-grain::after {
    content: ''; position: absolute; inset: -50%;
    pointer-events: none; opacity: .04; mix-blend-mode: overlay;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.hs-aurora {
    background:
        radial-gradient(60% 80% at 80% 60%, rgba(20,184,154,.22), transparent 60%),
        radial-gradient(50% 60% at 90% 10%, rgba(205,150,46,.13), transparent 60%);
    filter: blur(8px); overflow: hidden;
}
.hs-glass      { background: rgba(11,17,33,.44); backdrop-filter: blur(14px) saturate(1.2); -webkit-backdrop-filter: blur(14px) saturate(1.2); }
.hs-glass-lite { background: rgba(255,255,255,.16); backdrop-filter: blur(14px) saturate(1.2); -webkit-backdrop-filter: blur(14px) saturate(1.2); }
.hs-reveal > * {
    opacity: 0; transform: translateY(18px);
    transition: opacity .75s cubic-bezier(.16,.84,.3,1), transform .75s cubic-bezier(.16,.84,.3,1);
}
.hs-reveal.is-active > *              { opacity: 1; transform: translateY(0); }
.hs-reveal.is-active > *:nth-child(1) { transition-delay: .07s; }
.hs-reveal.is-active > *:nth-child(2) { transition-delay: .16s; }
.hs-reveal.is-active > *:nth-child(3) { transition-delay: .27s; }
.hs-reveal.is-active > *:nth-child(4) { transition-delay: .38s; }
.hs-reveal.is-active > *:nth-child(5) { transition-delay: .50s; }
.hs-dot {
    position: relative; height: 4px; border-radius: 9999px;
    background: rgba(255,255,255,.28); overflow: hidden;
    transition: width .35s ease; padding: 0; border: 0; cursor: pointer;
}
.hs-dot .hs-fill { position: absolute; inset: 0; width: 0; background: #fff; border-radius: inherit; transition: none; }
.hs-thumb { transition: transform .35s cubic-bezier(.16,.84,.3,1), opacity .35s; }
.hs-thumb:hover { transform: translateY(-3px); }
.hs-thumb.is-active { outline: 2px solid #D4AF37; outline-offset: 2px; opacity: 1 !important; }
.hs-thumb:not(.is-active) { opacity: .58; }
.hs-pulse { width: .44rem; height: .44rem; border-radius: 9999px; background: #2dd4bf; flex-shrink: 0; }
.hs-nums { font-feature-settings: "ss01"; }

@media (prefers-reduced-motion: reduce) {
    #hero-swiper .swiper-slide-active .hs-img { animation: none; }
    .hs-reveal.is-active > * { transition: none; opacity: 1; transform: none; }
}