/* WooCommerce collection grids and product discovery. No client-side filtering. */
.lb-catalog-tiles #content ul.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(1.5rem, 3vw, 2.7rem) clamp(.65rem, 1.8vw, 1.45rem);
	margin: 0 0 2rem;
	padding: 0;
	list-style: none;
}
.lb-catalog-tiles #content ul.products::before,
.lb-catalog-tiles #content ul.products::after { display: none; }
.lb-catalog-tiles #content ul.products li.product {
	display: flex;
	flex-direction: column;
	min-width: 0;
	width: auto;
	margin: 0;
	padding: 0;
	float: none;
	text-align: start;
	background: transparent;
	border: 0;
	box-shadow: none;
}
.lb-catalog-tiles #content ul.products li.product .astra-shop-thumbnail-wrap {
	position: relative; width: 100%; margin: 0;
}
.lb-catalog-tiles #content ul.products .astra-shop-thumbnail-wrap img {
	display: block; width: 100%; height: auto; aspect-ratio: 5 / 7;
	margin: 0; border-radius: .18rem; object-fit: contain; background: #f5f1eb;
}
.lb-catalog-tiles #content ul.products .astra-shop-summary-wrap {
	display: block; padding: .65rem 0 0; min-width: 0; text-align: start;
}
.lb-catalog-tiles #content ul.products li.product .price {
	display: block; margin: 0 0 .3rem; color: var(--lb-ink);
	font: 680 clamp(.94rem, 1.5vw, 1.1rem)/1.3 var(--lb-sans); font-variant-numeric: tabular-nums;
}
.lb-catalog-tiles #content ul.products .price del { color: var(--lb-muted); font-size: .8em; opacity: .95; }
.lb-catalog-tiles #content ul.products .price ins { color: var(--lb-wine); background: transparent; text-decoration: none; }
.lb-catalog-tiles #content ul.products .ast-woo-product-category {
	display: block; margin: 0 0 .15rem; color: var(--lb-muted); opacity: 1; font: 550 .73rem/1.38 var(--lb-sans);
}
.lb-catalog-tiles #content ul.products .ast-loop-product__link { display: block; color: var(--lb-ink); }
.lb-catalog-tiles #content ul.products li.product .woocommerce-loop-product__title {
	padding: 0; margin: 0; color: var(--lb-ink); overflow-wrap: anywhere;
	font: 600 clamp(.94rem, 1.25vw, 1.03rem)/1.38 var(--lb-sans); letter-spacing: -.012em;
}
.lb-catalog-tiles #content ul.products .ast-loop-product__link:hover .woocommerce-loop-product__title { text-decoration: underline; }
.lb-card-sizes { display: block; margin: .28rem 0 0; color: var(--lb-muted); font: 400 .76rem/1.45 var(--lb-sans); }
.lb-suit-trail { display: flex; flex-wrap: wrap; align-items: center; gap: .38rem; color: var(--lb-muted); font: 500 .82rem/1.4 var(--lb-sans); }
.lb-suit-trail a { color: var(--lb-wine); text-underline-offset: .2em; }
.lb-catalog-categories strong { align-self: center; font: 600 .85rem/1.35 var(--lb-sans); }
.lb-catalog-tiles #content ul.products li.product .star-rating {
	display: inline-block; vertical-align: middle; margin: .25rem .3rem .3rem 0; color: var(--lb-wine);
}
.lb-card-review-count { color: var(--lb-muted); font: 500 .76rem/1.4 var(--lb-sans); }
.lb-catalog-tiles #content ul.products li.product .button {
	display: table; width: auto; max-width: 100%; margin: .18rem 0 0; padding: .65rem 0;
	background: none; border: 0; min-height: 44px; color: var(--lb-wine); text-align: start;
	text-decoration: underline; text-underline-offset: .24em; font: 600 .83rem/1.4 var(--lb-sans); white-space: normal;
}
.lb-catalog-tiles #content ul.products li.product .button:hover { color: var(--lb-ink); }
.lb-catalog-tiles #content ul.products li.product .onsale {
	position: absolute; inset: .55rem auto auto .55rem; z-index: 1; margin: 0; padding: .25rem .45rem;
	width: auto; height: auto; min-width: 0; min-height: 0; line-height: 1.25; border: 0; border-radius: .15rem;
	box-shadow: none; background: var(--lb-wine); color: #fff; font: 650 .75rem/1.3 var(--lb-sans);
}
.lb-catalog-categories {
	display: flex; gap: .5rem; overflow: auto; padding: .25rem .2rem .75rem;
	margin-block: .25rem .4rem; align-items: center; max-width: 100%;
}
.lb-catalog-categories a {
	flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 44px; padding: .45rem .88rem;
	border: 1px solid var(--lb-rule); border-radius: 2rem; background: var(--lb-surface);
	font: 550 .86rem/1.35 var(--lb-sans); color: var(--lb-ink); text-decoration: none;
}
.lb-catalog-categories a[aria-current="page"] { color: #fff; background: var(--lb-wine); border-color: var(--lb-wine); }
.lb-catalog-categories a:hover { border-color: var(--lb-wine); text-decoration: underline; }
.lb-catalog-price, .lb-catalog-tiles .labella-archive-filters {
	clear: both; margin: 0 0 .85rem; padding: .15rem .8rem; border: 1px solid var(--lb-rule); border-radius: .2rem;
}
.lb-catalog-price summary { cursor: pointer; width: fit-content; min-height: 44px; padding-block: .63rem; font: 650 .88rem/1.45 var(--lb-sans); color: var(--lb-ink); }
.lb-catalog-price form {
	display: flex; align-items: flex-end; flex-wrap: wrap; gap: .55rem .9rem; padding: .2rem 0 .65rem; margin: 0;
}
.lb-catalog-price label { display: grid; gap: .2rem; color: var(--lb-ink); font: 550 .82rem/1.4 var(--lb-sans); }
.lb-catalog-price input { width: min(11rem, 100%); min-height: 44px; font-size: 16px; }
.lb-catalog-price button { min-height: 44px; padding: .5rem .85rem; border-radius: .2rem; border: 0; background: var(--lb-wine); color: white; }
.lb-catalog-price a { display: inline-flex; align-items: center; min-height: 44px; color: var(--lb-wine); }
.lb-catalog-tiles .woocommerce-result-count { color: var(--lb-muted); font: .87rem/1.4 var(--lb-sans); }
.lb-catalog-tiles #content .woocommerce-ordering { max-width: 100%; }
.lb-catalog-tiles #content .woocommerce-ordering select { width: auto; max-width: 100%; }
@media (max-width: 1000px) {
	.lb-catalog-tiles #content ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
	.lb-catalog-tiles #content ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.35rem .65rem; }
	.lb-catalog-tiles #content ul.products .astra-shop-summary-wrap { padding-top: .5rem; }
	.lb-catalog-tiles .woocommerce-result-count, .lb-catalog-tiles #content .woocommerce-ordering { float: none; margin-block: .35rem .8rem; }
}
