/* No initial hiding: progressive enhancement cannot obstruct purchasing content. */
.buyer-motion-card{position:relative}
.buyer-motion-card::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(320px circle at var(--buyer-x,50%) var(--buyer-y,50%),#d7e9ac30,transparent 68%);transition:opacity .25s;z-index:2}
.buyer-ripple-target{position:relative;overflow:hidden;isolation:isolate}
.buyer-ripple{position:absolute;border-radius:50%;background:currentColor;opacity:0;pointer-events:none;animation:buyer-ripple .58s ease-out forwards;z-index:2}
@keyframes buyer-ripple{0%{transform:scale(0);opacity:.18}100%{transform:scale(1);opacity:0}}
@media(hover:hover) and (pointer:fine){
  html[data-buyer-motion="on"] .buyer-motion-card{transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s,border-color .28s;transform:perspective(1100px) translateY(0) rotateX(0) rotateY(0);transform-origin:50% 50%}
  html[data-buyer-motion="on"] .buyer-motion-card.buyer-card-active{transform:perspective(1100px) translateY(-4px) rotateX(var(--buyer-rx,0deg)) rotateY(var(--buyer-ry,0deg));box-shadow:0 12px 30px #153d3214;border-color:#adbd94}
  html[data-buyer-motion="on"] .buyer-card-active::after{opacity:1}
  html[data-buyer-motion="on"] .priority-feature-image img,html[data-buyer-motion="on"] .priority-product .product-image-zoom img{scale:var(--buyer-scroll-scale,1);transform-origin:center;will-change:auto}
}
/* Native focus remains clearly visible regardless of pointer and motion preference. */
.buyer-motion-card:focus-within{outline:2px solid #6a8550;outline-offset:4px}
.buyer-ripple-target:focus-visible{outline:3px solid #8eab69;outline-offset:4px}
html[data-buyer-motion="off"] .buyer-motion-card{transform:none!important;transition:none!important}
html[data-buyer-motion="off"] .buyer-motion-card::after{display:none}
html[data-buyer-motion="off"] .buyer-ripple{display:none;animation:none}
html[data-buyer-motion="off"] .priority-feature-image img,html[data-buyer-motion="off"] .priority-product .product-image-zoom img{scale:1;transition:none!important;transform:none!important}
@media(prefers-reduced-motion:reduce){html:not([data-motion="full"]) .buyer-motion-card{transform:none!important;transition:none!important}html:not([data-motion="full"]) .buyer-motion-card::after{display:none}html:not([data-motion="full"]) .buyer-ripple{display:none;animation:none}html:not([data-motion="full"]) .priority-feature-image img,html:not([data-motion="full"]) .priority-product .product-image-zoom img{scale:1;transition:none!important;transform:none!important}}

/* Homepage pair only: independent translate does not overwrite reveal/tilt transforms. */
@keyframes priority-card-float{0%,100%{translate:0 0}50%{translate:0 -7px}}
@media(min-width:801px) and (hover:hover) and (pointer:fine){
  html[data-buyer-motion="on"] .priority-floating-card{animation:priority-card-float 8s ease-in-out infinite}
  html[data-buyer-motion="on"] .priority-floating-card:nth-child(2){animation-delay:-4s}
  html[data-buyer-motion="on"] .priority-floating-card:hover,html[data-buyer-motion="on"] .priority-floating-card:focus-within{animation-play-state:paused}
  html[data-buyer-motion="on"] .priority-floating-card:is(:hover,:focus-within){transform:perspective(1100px) translateY(-10px) rotateX(var(--buyer-rx,0deg)) rotateY(var(--buyer-ry,0deg));box-shadow:0 28px 56px -14px #163d3059,0 6px 18px #163d301c;border-color:#95ac90}
}
html[data-buyer-motion="off"] .priority-floating-card{animation:none!important;translate:none!important}
@media(prefers-reduced-motion:reduce){html:not([data-motion="full"]) .priority-floating-card{animation:none!important;translate:none!important}}
/* Keep selected shadows consistent with motion disabled, including keyboard focus. */
html[data-buyer-motion="off"] .priority-floating-card:focus-within{box-shadow:0 28px 56px -14px #163d3059,0 6px 18px #163d301c;border-color:#95ac90}
@media(hover:hover) and (pointer:fine){html[data-buyer-motion="off"] .priority-floating-card:hover{box-shadow:0 28px 56px -14px #163d3059,0 6px 18px #163d301c;border-color:#95ac90}}
