/* hero entrance + interaction animations */
.ha .hero-text>*{opacity:0;transform:translateX(-60px)}
.ha .hero-art img,.ha .hero-art .halo{opacity:0;transform:translateX(120px)}
.ha .hero-art .chip{opacity:0;transform:scale(.3)}
.ha.go .hero-text>*{animation:haL .8s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--d,0)*1ms)}
.ha.go .hero-art img,.ha.go .hero-art .halo{animation:haR 1s cubic-bezier(.2,.8,.2,1) .15s forwards}
.ha.go .hero-art .chip{animation:haP .6s cubic-bezier(.3,1.6,.5,1) forwards;animation-delay:calc(var(--d,0)*1ms)}
@keyframes haL{to{opacity:1;transform:none}}
@keyframes haR{to{opacity:1;transform:none}}
@keyframes haP{to{opacity:1;transform:none}}
.hero h1 .ch{display:inline-block;transition:transform .25s cubic-bezier(.3,1.6,.5,1),color .25s;cursor:default}
.hero h1 .ch:hover{transform:translateY(-8px) rotate(-6deg);color:#D9822B}
.hero h1 .ch.bn{animation:haB .55s cubic-bezier(.3,1.6,.5,1)}
@keyframes haB{0%{transform:scale(1)}30%{transform:scale(1.35) translateY(-10px);color:#D9822B}60%{transform:scale(.9)}100%{transform:scale(1)}}
.hero .sub,.hero .eyebrow{transition:color .3s,letter-spacing .3s}
.hero .sub:hover{color:#D9822B}
.hero .eyebrow:hover{letter-spacing:.06em}
.btn{transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(217,130,43,.25)}
.btn:active{transform:translateY(0) scale(.97)}
nav .links a{position:relative}
nav .links a::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background:#D9822B;transform:scaleX(0);transform-origin:left;transition:transform .3s}
nav .links a:hover::after{transform:scaleX(1)}
@media (prefers-reduced-motion:reduce){.ha .hero-text>*,.ha .hero-art img,.ha .hero-art .halo,.ha .hero-art .chip{opacity:1!important;transform:none!important;animation:none!important}.hero h1 .ch,.btn,nav .links a::after{transition:none!important;animation:none!important}}
