.live-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--space-6,24px); }
.live-grid > shopify-context { display:contents; }
.live-card { min-width:0; }
.live-card shopify-media { display:block; background:#f2f1ed; }
.live-card .product-card__media { aspect-ratio:1; }
.live-card .product-card__footer { flex-wrap:wrap; gap:12px; }
.live-card .product-card__link { cursor:pointer; }
.coming-heading { margin:64px 0 24px; }
.catalog-pagination { display:flex; gap:16px; margin-top:24px; }
[hidden] { display:none!important; }
.shop-status { grid-column:1/-1; padding:24px; background:#f1f0eb; }
.live-detail > div { min-width:0; }
.live-main-image { display:block; background:#f1f0eb; }
.live-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:16px; }
.live-gallery > shopify-context { display:contents; }
.live-description { margin-top:28px; overflow-x:auto; line-height:1.7; }
.live-description table { border-collapse:collapse; font-size:13px; width:100%; }
.live-description td,.live-description th { padding:8px; border:1px solid #ccc; }
.live-description ul { padding-left:22px; }
.shipping-note,.shop-availability { font-size:14px; margin-top:14px; }
.shop-availability { color:#8c3a24; }
shopify-variant-selector { display:block; margin:24px 0; }
shopify-variant-selector::part(radio) { border:1px solid #888; border-radius:2px; padding:10px; }
shopify-variant-selector::part(radio-selected) { background:#1c1c1a; color:white; border-color:#1c1c1a; }
shopify-cart::part(dialog) { font-family:Inter,sans-serif; }
shopify-cart::part(primary-button) { background:#1c1c1a; color:white; border-radius:2px; }
shopify-cart::part(secondary-button) { color:#1c1c1a; fill:#1c1c1a; }
@media(max-width:1000px) { .live-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:540px) { .live-grid { grid-template-columns:1fr; } .live-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.header-actions [data-open-cart] { display:inline-flex; }
shopify-list-context.live-grid[shopify-context-display-contents],
shopify-list-context.live-gallery[shopify-context-display-contents] { display:grid; }
.live-gallery shopify-media { display:block; min-width:0; }
.live-gallery img { width:100%; height:auto; }

/* Shopify's display:contents rule must not flatten our catalog/gallery grids. */
shopify-list-context.live-grid[shopify-context-display-contents],
shopify-list-context.live-gallery[shopify-context-display-contents] { display:grid!important; }
.live-card .product-card__media { aspect-ratio:auto; height:240px; overflow:hidden; background:#fff; }
.live-card shopify-media img { width:100%!important; height:240px!important; max-height:240px!important; object-fit:contain!important; background-image:none!important; }
.live-card .product-card__body { padding:20px; }
.live-card .product-card__name { font-size:18px; }
.live-gallery shopify-media img { height:120px!important; max-height:120px!important; object-fit:contain!important; background-image:none!important; }
@media(max-width:540px) {
  .live-card .product-card__media { height:220px; }
  .live-card shopify-media img { height:220px!important; max-height:220px!important; }
}

/* White catalog cards; ivory detail galleries match the page. */
.live-card shopify-media { background:#fff; }
.live-detail > div:first-child { background:var(--color-bg); isolation:isolate; }
.live-detail .live-main-image { background:transparent; }
.live-detail .live-main-image,
.live-detail .live-gallery shopify-media { mix-blend-mode:multiply; }
.single-color-choice { border:0; padding:0; margin:24px 0 0; }
.single-color-choice legend { margin-bottom:12px; }
.single-color-choice__button { font:inherit; padding:10px 14px; border:1px solid #1c1c1a; border-radius:2px; background:#1c1c1a; color:#fff; cursor:pointer; }
.single-color-choice__button:focus-visible { outline:2px solid #1c1c1a; outline-offset:3px; }

.live-detail .live-main-image img,
.live-detail .live-gallery img { mix-blend-mode:multiply; }

.live-main-image > img { display:block; width:100%; height:auto; }

.live-gallery > img { height:120px; max-height:120px; object-fit:contain; }
