/* ZERA Edition 0.2 — WooCommerce visual refinements. No layout JS. */
:root{--zera-shop-ink:#192e40;--zera-shop-accent:#b37b3c;--zera-shop-edge:#e9e5df;--zera-shop-bg:#fbfaf8}
/* Product cards in shop, categories and related sections */
.woocommerce ul.products{align-items:stretch}
.woocommerce ul.products li.product{min-width:0;display:flex;flex-direction:column;border:1px solid var(--zera-shop-edge);border-radius:12px;overflow:hidden;background:#fff;padding:10px;box-shadow:none;transition:box-shadow .18s ease,border-color .18s ease}
.woocommerce ul.products li.product:hover{border-color:#d8c7b3;box-shadow:0 8px 26px rgba(19,43,57,.07)}
.woocommerce ul.products li.product .ct-image-container,.woocommerce ul.products li.product .woocommerce-loop-product__link img,.woocommerce ul.products li.product a img{max-width:100%;height:auto}
/* A bounded square image stage: no original image is resized or destroyed. */
.woocommerce ul.products li.product .ct-image-container{width:100%;max-width:300px;aspect-ratio:1/1;margin-inline:auto;overflow:hidden;background:var(--zera-shop-bg);border-radius:8px}
.woocommerce ul.products li.product .ct-image-container img{width:100%;height:100%;object-fit:contain}
.woocommerce ul.products li.product > a:first-child img{object-fit:contain}
.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce ul.products li.product .ct-woo-card-title{font-size:clamp(13px,1.2vw,16px);line-height:1.45;min-height:2.9em;margin-top:12px}
.woocommerce ul.products li.product .price{font-weight:700;color:var(--zera-shop-ink)}
.woocommerce ul.products li.product .button{margin-top:auto;border-radius:7px;background:var(--zera-shop-ink);color:#fff;min-height:38px;align-self:flex-start;display:inline-flex;align-items:center;justify-content:center}
.woocommerce ul.products li.product .button:hover{background:#2e4c61}
/* Reduce visual dominance of image on product detail without deleting gallery behavior. */
.single-product .woocommerce-product-gallery{max-width:490px;width:100%;margin-inline:auto}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img{width:100%;height:auto;max-height:490px;object-fit:contain}
.single-product .woocommerce-product-gallery__wrapper{max-width:490px;margin-inline:auto}
/* If native Woo lightbox is active, gallery images can be enlarged on click. */
.single-product .woocommerce-product-gallery__trigger{border-radius:50%}
@media(max-width:768px){
 .woocommerce ul.products li.product{padding:7px;border-radius:9px}
 .woocommerce ul.products li.product .ct-image-container{max-width:220px}
 .woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce ul.products li.product .ct-woo-card-title{font-size:13px;min-height:2.9em}
 .woocommerce ul.products li.product .button{font-size:12px;min-height:34px;padding:8px 11px}
 .single-product .woocommerce-product-gallery{max-width:min(360px,100%)}
 .single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img{max-height:360px}
}
@media(prefers-reduced-motion:reduce){.woocommerce ul.products li.product{transition:none}}


/* v0.3 — compact cards, shop two columns on phones, avoid layout-creating scripts. */
.woocommerce ul.products li.product { gap:0 !important; }
.woocommerce ul.products li.product .ct-image-container { margin-bottom: 5px !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .ct-woo-card-title,
.woocommerce ul.products li.product .woocommerce-loop-product__link { margin-bottom: 5px !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .ct-woo-card-title {margin-top: 5px !important;min-height:0 !important;}
.woocommerce ul.products li.product .price { margin: 2px 0 6px !important; padding:0 !important; }
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart { margin-top: 6px !important; margin-bottom:0 !important; }
.woocommerce ul.products li.product .ct-woo-card-extra,
.woocommerce ul.products li.product .ct-product-categories,
.woocommerce ul.products li.product .product-categories {margin-top:3px !important;margin-bottom:4px !important;}
/* Product detail page: preserve useful descriptions, do not hide delivery conditions. */
.single-product div.product .summary h1.product_title { font-size:clamp(25px,2.5vw,34px) !important;line-height:1.18 !important;margin-bottom:10px !important;}
.single-product div.product .summary .price {margin: 0 0 14px !important;}
.single-product div.product .summary .woocommerce-product-details__short-description { margin: 8px 0 12px !important; line-height:1.55; }
.single-product div.product .summary .woocommerce-product-details__short-description p { margin:0 0 10px !important; }
.single-product div.product .summary form.cart {margin:14px 0 16px !important; padding:0 !important;}
.single-product div.product .summary .product_meta {margin-top:10px !important;line-height:1.55; overflow-wrap:anywhere;}
@media (max-width: 767px) {
 /* Blocksy shop archives and WooCommerce fallback grids; homepage grid unaffected. */
 body.post-type-archive-product .woocommerce ul.products,
 body.tax-product_cat .woocommerce ul.products,
 body.tax-product_tag .woocommerce ul.products,
 body.tax-product_brand .woocommerce ul.products {display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:11px !important;}
 body.post-type-archive-product .woocommerce ul.products > li.product,
 body.tax-product_cat .woocommerce ul.products > li.product,
 body.tax-product_tag .woocommerce ul.products > li.product,
 body.tax-product_brand .woocommerce ul.products > li.product {width:auto !important;min-width:0 !important;max-width:none !important;float:none !important;margin:0 !important; padding:7px !important;}
 /* Blocksy may use columns as a CSS grid on .ct-products-container instead. */
 body.post-type-archive-product .ct-products-container,
 body.tax-product_cat .ct-products-container,
 body.tax-product_tag .ct-products-container,
 body.tax-product_brand .ct-products-container {display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:11px !important;}
 body.post-type-archive-product [data-products],
 body.tax-product_cat [data-products],
 body.tax-product_tag [data-products],
 body.tax-product_brand [data-products] {--shop-columns:2;--grid-template-columns:repeat(2,minmax(0,1fr));}
 .woocommerce ul.products li.product .ct-image-container { aspect-ratio:1/1;max-width:none !important; }
 .woocommerce ul.products li.product .woocommerce-loop-product__title,
 .woocommerce ul.products li.product .ct-woo-card-title {font-size:12px !important;line-height:1.35 !important;margin:6px 0 4px !important;min-height:0 !important;}
 .woocommerce ul.products li.product .price {font-size:13px !important; margin:3px 0 5px !important;}
 .woocommerce ul.products li.product .button {font-size:11px !important; padding:8px 9px !important;line-height:1.2 !important;min-height:34px !important;margin-top:5px !important;}
 .woocommerce ul.products li.product .ct-product-categories,
 .woocommerce ul.products li.product .product-categories {font-size:10px !important;line-height:1.3 !important;}
 .single-product div.product .summary h1.product_title {font-size:25px !important;margin-bottom:8px !important;}
 .single-product div.product .summary .price {font-size:21px !important;margin-bottom:11px !important;}
 .single-product div.product .summary .woocommerce-product-details__short-description {font-size:14px !important;line-height:1.48 !important; margin:6px 0 10px !important;}
 .single-product div.product .summary .woocommerce-product-details__short-description p {margin:0 0 8px !important;}
 .single-product div.product .summary form.cart {margin:10px 0 12px !important;}
 .single-product div.product .summary .product_meta {font-size:11px !important;line-height:1.45 !important;}
}
@media(max-width:360px){body.post-type-archive-product .woocommerce ul.products,body.tax-product_cat .woocommerce ul.products {gap:7px !important;}}

/* v0.4 — Blocksy's actual shop grid as well as standard WooCommerce loops.
   Only archive pages are changed; keep product gallery and homepage separate. */
@media screen and (max-width: 767px) {
 body.post-type-archive-product :is(.ct-products-container, ul.products, .products, [data-products]),
 body.tax-product_cat :is(.ct-products-container, ul.products, .products, [data-products]),
 body.tax-product_tag :is(.ct-products-container, ul.products, .products, [data-products]),
 body.tax-product_brand :is(.ct-products-container, ul.products, .products, [data-products]),
 body.woocommerce-shop :is(.ct-products-container, ul.products, .products, [data-products]) {
   --shop-columns: 2 !important;
   --grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
   --columns: 2 !important;
   grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
   column-gap: 10px !important;row-gap: 12px !important;
 }
 body.post-type-archive-product .ct-products-container > *,
 body.tax-product_cat .ct-products-container > *,
 body.tax-product_tag .ct-products-container > *,
 body.tax-product_brand .ct-products-container > *,
 body.woocommerce-shop .ct-products-container > * {
   min-width: 0 !important; max-width: 100% !important;
 }
 body.post-type-archive-product li.product,
 body.tax-product_cat li.product,
 body.tax-product_tag li.product,
 body.tax-product_brand li.product,
 body.woocommerce-shop li.product {
   width: 100% !important; max-width: 100% !important; min-width: 0 !important;
   margin: 0 !important; clear: none !important;
 }
 body.post-type-archive-product li.product :is(img, .ct-image-container),
 body.tax-product_cat li.product :is(img, .ct-image-container),
 body.woocommerce-shop li.product :is(img, .ct-image-container) {max-width:100% !important;}
}
/* Desktop single product: calmer hierarchy, tidy purchase region, no new JS. */
@media screen and (min-width: 769px) {
 body.single-product .woocommerce-product-gallery {max-width: 440px !important;}
 body.single-product .woocommerce-product-gallery__wrapper {max-width: 440px !important;}
 body.single-product div.product .summary {max-width: 600px;}
 body.single-product div.product .summary h1.product_title {font-size: clamp(25px,2.15vw,32px) !important;line-height:1.22 !important;letter-spacing:-.02em;}
 body.single-product div.product .summary .woocommerce-product-details__short-description {font-size:15px;line-height:1.65;}
 body.single-product div.product .summary .product_meta {font-size:12px;line-height:1.55; opacity:.85;}
}
body.single-product div.product .summary .single_add_to_cart_button {border-radius:8px !important;min-height:44px;}
body.single-product div.product .summary form.cart {border-top:1px solid #eee8e2;padding-top:14px !important;}
