@keyframes fadeInUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideInLeft{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}
@keyframes slideInRight{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(61,197,91,.4)}50%{box-shadow:0 0 0 12px rgba(61,197,91,0)}}
@keyframes shimmer{0%{background-position:-468px 0}100%{background-position:468px 0}}
@keyframes coinSpin{0%{transform:rotateY(0)}100%{transform:rotateY(360deg)}}
@keyframes bounceIn{0%{transform:scale(.8);opacity:0}60%{transform:scale(1.05);opacity:1}100%{transform:scale(1)}}
@keyframes flicker{0%,100%{opacity:1}50%{opacity:.82}}
@keyframes rotateSlow{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes heroTextEntrance{0%{opacity:0;transform:translateY(20px) scale(.97)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes floatUp{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

.anim-fade-up{animation:fadeInUp .6s ease both}
.anim-fade-in{animation:fadeIn .5s ease both}
.anim-slide-left{animation:slideInLeft .6s ease both}
.anim-slide-right{animation:slideInRight .6s ease both}
.anim-bounce{animation:bounceIn .55s cubic-bezier(.36,.07,.19,.97) both}
.anim-float{animation:floatUp 3s ease-in-out infinite}

.hero-title{animation:heroTextEntrance .7s ease both}
.hero-subtitle{animation:heroTextEntrance .7s .12s ease both}
.hero-actions{animation:heroTextEntrance .7s .24s ease both}

.btn-money{animation:pulse 2.5s ease-in-out infinite}
.btn-money:hover{animation:none}

.observe-fade{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}
.observe-fade.is-visible{opacity:1;transform:translateY(0)}
.observe-fade-delay-1{transition-delay:.1s}
.observe-fade-delay-2{transition-delay:.2s}
.observe-fade-delay-3{transition-delay:.3s}
.observe-fade-delay-4{transition-delay:.4s}
.observe-fade-delay-5{transition-delay:.5s}
.observe-fade-delay-6{transition-delay:.6s}

.strategy-card{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease,box-shadow .3s ease,border-color .3s ease}
.strategy-card.is-visible{opacity:1;transform:translateY(0)}

.section-title{opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .5s ease}
.section-title.is-visible{opacity:1;transform:translateY(0)}

.faq-item{transition:border-color .25s}
.faq-item:hover{border-color:rgba(61,197,91,.2)}

.stat-card{opacity:0;transform:scale(.92);transition:opacity .4s ease,transform .4s ease}
.stat-card.is-visible{opacity:1;transform:scale(1)}

.rtp-bar{width:0;transition:width 1.2s cubic-bezier(.25,.8,.25,1)}
.rtp-bar.animate{width:95.5%}

.header-wrap{animation:fadeIn .4s ease both}

@keyframes menuSlideDown{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.mobile-menu.open{animation:menuSlideDown .3s ease both}

@media (prefers-reduced-motion:reduce){
    *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
    .btn-money{animation:none}
}
