/* Keep names, prices and actions stable. Only the photograph moves softly. */
#retail-grid{overflow:visible}
#retail-grid>.product-card>a{overflow:visible}
#retail-grid .visual.normalized-product{overflow:visible}
@media(prefers-reduced-motion:no-preference){
 #retail-grid>.product-card.catalog-motion{animation:none}
 #retail-grid>.catalog-motion>:is(.card-title,.desc,.card-actions){transform:none;opacity:1;transition:none}
 #retail-grid>.catalog-motion>a{transform:translateX(calc(var(--catalog-side)*24px*(1 - var(--catalog-photo,1))));opacity:calc(.85 + .15*var(--catalog-photo,1));transition:none}
 #retail-grid>.catalog-motion:focus-within>a{transform:none;opacity:1}
}

/* Touch browsing keeps the product still while the page follows the finger. */
@media(max-width:768px),(pointer:coarse){
 #retail-grid>.product-card{animation:none}
 #retail-grid>.product-card>a{transform:none!important;opacity:1!important;transition:none}
}
