.js .animate-on-scroll{opacity:0;transform:translateY(24px);transition:opacity var(--duration-slower) var(--ease-out-expo),transform var(--duration-slower) var(--ease-spring);will-change:opacity,transform}.js .animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}.fade-up{transform:translateY(30px)}.fade-up.is-visible{transform:translateY(0)}.fade-in{transform:none}.js .slide-left{transform:translate(-24px);opacity:0}.js .slide-left.is-visible{transform:translate(0);opacity:1}.js .slide-right{transform:translate(24px);opacity:0}.js .slide-right.is-visible{transform:translate(0);opacity:1}.js .scale-up{transform:scale(.92);opacity:0}.js .scale-up.is-visible{transform:scale(1);opacity:1}.stagger-0{transition-delay:0ms}.stagger-1{transition-delay:calc(var(--stagger-delay) * 1)}.stagger-2{transition-delay:calc(var(--stagger-delay) * 2)}.stagger-3{transition-delay:calc(var(--stagger-delay) * 3)}.stagger-4{transition-delay:calc(var(--stagger-delay) * 4)}.stagger-5{transition-delay:calc(var(--stagger-delay) * 5)}.stagger-6{transition-delay:calc(var(--stagger-delay) * 6)}.stagger-7{transition-delay:calc(var(--stagger-delay) * 7)}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes scaleUp{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes confettiFall{0%{opacity:1;transform:translate(var(--x),var(--y)) scale(1) rotate(0)}to{opacity:0;transform:translate(calc(var(--x) * 3),calc(var(--y) * 3 + 40px)) scale(0) rotate(360deg)}}@keyframes ripple{0%{transform:scale(0);opacity:.6}to{transform:scale(4);opacity:0}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.08)}70%{transform:scale(.96)}to{opacity:1;transform:scale(1)}}.hero-entrance-1{animation:fadeUp .6s var(--ease-spring) .1s both}.hero-entrance-2{animation:fadeUp .7s var(--ease-spring) .25s both}.hero-entrance-3{animation:fadeUp .7s var(--ease-spring) .4s both}.hero-entrance-4{animation:fadeUp .6s var(--ease-spring) .55s both}.skeleton{background:linear-gradient(90deg,var(--bg-light) 25%,var(--border) 50%,var(--bg-light) 75%);background-size:200% 100%;animation:shimmer 1.5s var(--ease-in-out) infinite;border-radius:var(--radius-card)}.skeleton-text{height:16px;width:70%;border-radius:4px}.skeleton-image{width:100%;aspect-ratio:1}.skeleton-card{width:100%;height:380px}.confetti-particle{position:fixed;width:8px;height:8px;border-radius:50%;pointer-events:none;z-index:9999;animation:confettiFall .8s var(--ease-out-expo) forwards}.btn-ripple{position:relative;overflow:hidden}.btn-ripple:after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:#fff6;transform:scale(0);pointer-events:none}.btn-ripple.rippling:after{animation:ripple .5s var(--ease-out-expo) forwards}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.animate-on-scroll{opacity:1!important;transform:none!important}.hero-entrance-1,.hero-entrance-2,.hero-entrance-3,.hero-entrance-4{animation:none!important;opacity:1!important;transform:none!important}}
/*# sourceMappingURL=/cdn/shop/t/7/assets/animations.css.map */
