/* Stable product recommendations: no carousel initialization required. */
.pa-store .pa-related-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; align-items:stretch; }
.pa-store .pa-related-grid > .product-item { width:100%!important; min-width:0; max-width:100%; margin:0!important; height:auto; }
.pa-store .pa-related-grid figure { margin:0; width:100%; overflow:hidden; }
.pa-store .pa-related-grid figure img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; }
.pa-store .product-summary, .pa-store .product-detail-section .row > div { min-width:0; }
.pa-store .product-summary h1 { overflow-wrap:anywhere; }
.pa-store .single-product-image img { width:100%; height:auto; object-fit:contain; }
.pa-store .tab-content img { max-width:100%; height:auto; }
.pa-store .tab-content { overflow-wrap:anywhere; }
.pa-store .related-products-section .section-header { gap:16px; flex-wrap:wrap; margin-bottom:24px; }
@media(max-width:991.98px) { .pa-store .pa-related-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; } }
@media(max-width:767.98px) { .pa-store .pa-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; } }
/* Animate composited properties only; preserve keyboard and touch operation. */
@media(prefers-reduced-motion:no-preference) {
 .pa-store :is(.btn,.pa-button,.pa-category-card,.pa-brand-card,.pa-service-card,.pa-review-card,.product-thumb-small) { transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease,border-color .25s ease; }
 .pa-store .btn:active,.pa-store .pa-button:active { transform:scale(.98); }
 .pa-store .product-thumb-small:hover { transform:translateY(-3px); border-color:#c58b24; }
 .pa-store .tab-pane.show.active { animation:pa-panel-in .25s ease-out; }
 @media(hover:hover) and (pointer:fine) {
  .pa-store :is(.pa-category-card,.pa-brand-card,.pa-service-card,.pa-review-card):hover { transform:translateY(-4px); box-shadow:0 12px 28px #4b2f1212; }
 }
}
@keyframes pa-panel-in { from { opacity:.6; transform:translateY(6px); } to { opacity:1; transform:none; } }
