/* Future native product-loop hooks may opt into these classes; no templates replaced. */
.ow-foundation .ow-product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--ow-space-6) var(--ow-grid-gap); }
.ow-foundation .ow-product-media { display:block; aspect-ratio:var(--ow-product-ratio); overflow:hidden; background:var(--ow-canvas); }
.ow-foundation .ow-product-media img { display:block; inline-size:100%; block-size:100%; object-fit:cover; }
.ow-foundation .ow-product-title { margin-block:var(--ow-space-3) var(--ow-space-2); font:400 1rem/1.4 var(--ow-font-body); overflow-wrap:anywhere; }
.ow-foundation .ow-price { color:var(--ow-ink); font:600 1rem/1.5 var(--ow-font-body); font-variant-numeric:tabular-nums; }
.ow-foundation .ow-price del { color:var(--ow-muted); font-weight:400; }
.ow-foundation .ow-price ins { text-decoration:none; }
.ow-foundation .ow-status { font:400 var(--ow-text-caption)/1.5 var(--ow-font-body); }
@media (max-width:359px) { .ow-foundation .ow-product-grid { grid-template-columns:minmax(0,1fr); } }
@media (min-width:1024px) { .ow-foundation .ow-product-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
