@keyframes anim-fade-in{0%{opacity:0}to{opacity:1}}@keyframes anim-fade-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes anim-fade-scale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes anim-slide-in-right{0%{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes anim-slide-out-right{0%{transform:translateX(0);opacity:1}to{transform:translateX(100%);opacity:0}}@keyframes anim-overlay-fade-in{0%{opacity:0}to{opacity:1}}@keyframes anim-overlay-fade-out{0%{opacity:1}to{opacity:0}}@keyframes anim-quantity-tick{0%{transform:scale(1)}50%{transform:scale(1.25)}to{transform:scale(1)}}@keyframes gift-glow-pulse{0%,to{opacity:0}50%{opacity:1}}.anim-fade-in{animation:anim-fade-in .25s ease forwards}.anim-fade-slide-up{animation:anim-fade-slide-up .25s ease forwards}.anim-fade-scale{animation:anim-fade-scale .25s ease forwards}.anim-slide-in-right{animation:anim-slide-in-right .25s ease forwards}.anim-slide-out-right{animation:anim-slide-out-right .25s ease forwards}.anim-overlay-fade-out{animation:anim-overlay-fade-out .2s ease forwards}.anim-quantity-tick{animation:anim-quantity-tick .2s cubic-bezier(.34,1.56,.64,1)}.anim-gift-glow{position:relative}.anim-gift-glow:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 30px rgba(59,130,246,.5),inset 0 1px 0 hsla(0,0%,100%,.25);animation:gift-glow-pulse 2s ease-in-out infinite;pointer-events:none}@keyframes anim-fade-slide-down{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes anim-price-update{0%{opacity:.5;transform:scale(.95)}50%{opacity:1;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes anim-shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px) rotate(-2deg)}75%{transform:translateX(5px) rotate(2deg)}}@keyframes anim-item-remove{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.anim-fade-slide-down{animation:anim-fade-slide-down .25s ease forwards}.anim-price-flash{animation:anim-price-update .6s cubic-bezier(.34,1.56,.64,1)}.anim-shake{animation:anim-shake .5s ease}.anim-item-remove{animation:anim-item-remove .35s ease forwards}.modal-btn-primary{position:relative;overflow:hidden}.modal-btn-primary:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,hsla(0,0%,100%,.15),transparent 50%);opacity:0;transition:opacity .25s ease;pointer-events:none}.modal-btn-primary:hover:before{opacity:1}.modal-btn-trial{position:relative;overflow:hidden}.modal-btn-trial:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(52,211,153,.12),transparent 50%);opacity:0;transition:opacity .25s ease;pointer-events:none}.modal-btn-trial:hover:before{opacity:1}.anim-price-swap{animation:anim-price-swap .35s cubic-bezier(.34,1.56,.64,1)}@keyframes anim-price-swap{0%{opacity:.4;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes anim-cart-badge-bounce{0%{transform:scale(1)}25%{transform:scale(1.4)}50%{transform:scale(.9)}75%{transform:scale(1.15)}to{transform:scale(1)}}.anim-cart-badge-bounce{animation:anim-cart-badge-bounce .4s cubic-bezier(.34,1.56,.64,1)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}