@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-scale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes card-enter{0%{opacity:0;filter:blur(4px);transform:scale(.85)translateY(30px)}to{opacity:1;filter:blur();transform:scale(1)translateY(0)}}@keyframes card-shuffle{0%{opacity:.6;transform:scale(.95)}50%{opacity:.8;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.animate-fade-in-up{animation:.6s ease-out both fade-in-up}.animate-fade-in-scale{animation:.4s ease-out both fade-in-scale}.animate-card-enter{animation:.5s cubic-bezier(.22,1,.36,1) both card-enter}.animate-card-shuffle{animation:.35s ease-out both card-shuffle}.product-grid{grid-template-columns:repeat(1,1fr);gap:1rem;display:grid}@media (min-width:640px){.product-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}}@media (min-width:768px){.product-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px){.product-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1280px){.product-grid{grid-template-columns:repeat(4,1fr)}}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.card-item{transition:all .4s cubic-bezier(.22,1,.36,1)}.hover-lift{transition:transform .3s,box-shadow .3s}.hover-lift:hover{transform:translateY(-8px)}.hover-scale{transition:transform .4s}.hover-scale:hover{transform:scale(1.1)}.button-hover{transition:transform .15s}.button-hover:hover{transform:scale(1.05)}.button-hover:active{transform:scale(.95)}
