:root{--fx-fast:140ms;--fx-base:240ms;--fx-slow:380ms;--fx-ease:cubic-bezier(.22, .61, .36, 1);--fx-spring:cubic-bezier(.34, 1.56, .64, 1)}.btn,.product-card__details-btn,.product-card__qty-add,button{transition:transform var(--fx-fast) var(--fx-ease),box-shadow var(--fx-base) var(--fx-ease),background-color var(--fx-base) var(--fx-ease),filter var(--fx-base) var(--fx-ease)}.btn:hover,.product-card__details-btn:hover,.product-card__qty-add:hover,button:hover:not(:disabled){transform:translateY(-1px)}.btn:active,.product-card__details-btn:active,.product-card__qty-add:active,button:active:not(:disabled){transform:translateY(0) scale(.97)}.card,.product-card{transition:transform var(--fx-base) var(--fx-ease),box-shadow var(--fx-base) var(--fx-ease);will-change:transform}.card:hover,.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.1)}.product-card__image-wrap{overflow:hidden}.product-card__image{transition:transform var(--fx-slow) var(--fx-ease)}.product-card:hover .product-card__image{transform:scale(1.06)}@keyframes fxPulse{0%{transform:scale(1)}40%{transform:scale(1.18)}100%{transform:scale(1)}}.fx-added{animation:fxPulse var(--fx-base) var(--fx-spring)}@keyframes fxSlideUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.cart-bar,[class*=cart-bar]{transition:transform var(--fx-base) var(--fx-ease),opacity var(--fx-base) var(--fx-ease)}.modal__backdrop{transition:opacity var(--fx-base) var(--fx-ease)}.modal__dialog{transition:transform var(--fx-base) var(--fx-spring),opacity var(--fx-base) var(--fx-ease)}.modal:not(.is-open) .modal__dialog{opacity:0;transform:translateY(8px) scale(.98)}.modal.is-open .modal__dialog{opacity:1;transform:translateY(0) scale(1)}@keyframes fxFadeInUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.fx-reveal{animation:fxFadeInUp var(--fx-slow) var(--fx-ease) both}@keyframes fxShimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}.fx-skeleton{background:linear-gradient(90deg,#eee 25%,#f5f5f5 37%,#eee 63%);background-size:200% 100%;animation:fxShimmer 1.4s ease-in-out infinite;border-radius:8px;color:transparent!important}a:not(.btn){transition:color var(--fx-fast) var(--fx-ease),opacity var(--fx-fast) var(--fx-ease)}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:NaNs!important;animation-iteration-count:1!important;transition-duration:NaNs!important;scroll-behavior:auto!important}.card:hover,.product-card:hover,.product-card:hover .product-card__image{transform:none}}