@keyframes soft-cta-pulse{0%,100%{box-shadow:0 7px 17px rgba(0,63,143,.2)}50%{box-shadow:0 10px 25px rgba(181,236,0,.4)}}
@keyframes arrow-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}
.button{position:relative;isolation:isolate;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}.button:before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:-130%;width:70%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.38),transparent);transform:skewX(-22deg);transition:left .48s ease}.button:hover:before{left:150%}.button:hover{transform:translateY(-3px);box-shadow:0 11px 22px rgba(0,55,127,.28)}.button:active{transform:translateY(0) scale(.98)}.hero-actions .button,.ticket.featured .button{animation:soft-cta-pulse 3s ease-in-out infinite}.card-link span{display:inline-block;transition:transform .2s ease}.card-link:hover span{animation:arrow-nudge .65s ease-in-out infinite}.park-carousel-control{transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.park-carousel-control:hover{transform:translateY(-50%) scale(1.13);box-shadow:0 5px 12px rgba(0,40,105,.22)}.park-carousel-dot{transition:width .25s ease,transform .2s ease}.park-carousel-dot:hover{transform:scale(1.35)}.faq details{transition:background .2s ease,padding-left .2s ease}.faq details:hover{padding-left:10px;background:#f6fdff}.faq details[open]{background:#f1fbff;padding-left:12px}.faq summary{transition:color .2s ease}.faq details[open] summary{color:#0056a9}@media(prefers-reduced-motion:reduce){.button,.button:before,.card-link span,.park-carousel-control,.park-carousel-dot,.faq details,.faq summary{transition:none}.hero-actions .button,.ticket.featured .button,.card-link:hover span{animation:none}}
