/* Zaza WooCommerce archive system: shop, product categories, and product taxonomies only. */
body.zaza-product-archive-page {
	--zaza-shop-ink: #111312;
	--zaza-shop-muted: #70736f;
	--zaza-shop-line: rgba(17, 19, 18, 0.16);
	--zaza-shop-soft: #f7f7f4;
	--zaza-shop-paper: #ffffff;
	--zaza-shop-charcoal: #242424;
	--zaza-shop-black: #050706;
	--zaza-shop-accent: #ffb72f;
	--zaza-shop-display-font: "Bebas Neue", "Arial Narrow", "Roboto Condensed", sans-serif;
	--zaza-shop-body-font: "DM Sans", Arial, Helvetica, sans-serif;
	background: var(--zaza-shop-soft);
	color: var(--zaza-shop-ink);
	font-family: var(--zaza-shop-body-font);
}

body.zaza-product-archive-page .wp-site-blocks,
body.zaza-product-archive-page .wp-site-blocks > main {
	background: var(--zaza-shop-soft);
}

body.zaza-product-archive-page .wp-site-blocks > header:not(.zaza-header),
body.zaza-product-archive-page .wp-site-blocks > .wp-block-template-part:first-child,
body.zaza-product-archive-page .wp-site-blocks > .wp-block-group:first-child:has(.wp-block-site-title) {
	display: none !important;
	visibility: hidden !important;
}

body.zaza-product-archive-page .wp-site-blocks > main {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0 0 clamp(64px, 7vw, 108px);
}

.zaza-shop-main {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0 0 clamp(64px, 7vw, 108px);
	background: var(--zaza-shop-soft);
}

body.zaza-product-archive-page .woocommerce,
body.zaza-product-archive-page .wp-block-woocommerce-product-collection,
body.zaza-product-archive-page .wp-block-woocommerce-store-notices,
body.zaza-product-archive-page .wc-block-store-notices {
	font-family: var(--zaza-shop-body-font);
}

body.zaza-product-archive-page .woocommerce-breadcrumb,
body.zaza-product-archive-page .wp-block-woocommerce-breadcrumbs,
body.zaza-product-archive-page .wc-block-breadcrumbs {
	width: min(100% - 40px, 1380px);
	margin: 0 auto;
	padding: clamp(34px, 4vw, 58px) 0 0;
	color: var(--zaza-shop-muted);
	font-family: var(--zaza-shop-body-font);
	font-size: 0.82rem;
	font-weight: 800;
	line-height: 1.35;
	text-align: left;
	text-transform: uppercase;
}

.zaza-shop-breadcrumb .woocommerce-breadcrumb {
	width: auto;
	margin: 0;
	padding: 0;
}

body.zaza-product-archive-page .woocommerce-breadcrumb a,
body.zaza-product-archive-page .wp-block-woocommerce-breadcrumbs a,
body.zaza-product-archive-page .wc-block-breadcrumbs a {
	color: var(--zaza-shop-ink);
	text-decoration-thickness: 1px;
	text-underline-offset: 5px;
}

body.zaza-product-archive-page .woocommerce-products-header,
body.zaza-product-archive-page .wp-block-query-title {
	width: min(100% - 40px, 1380px);
	margin: 0 auto;
	padding: 12px 0 clamp(34px, 4vw, 54px);
	border-bottom: 1px solid var(--zaza-shop-line);
	text-align: left;
}

.zaza-shop-intro {
	width: min(100% - 40px, 1380px);
	margin: 0 auto;
	padding: clamp(42px, 5vw, 76px) 0 clamp(34px, 4vw, 54px);
	border-bottom: 1px solid var(--zaza-shop-line);
}

.zaza-shop-intro .wp-block-query-title {
	width: auto;
	margin: 0;
	padding: 0;
	border: 0;
}

body.zaza-product-archive-page .woocommerce-products-header__title.page-title,
body.zaza-product-archive-page h1.page-title,
body.zaza-product-archive-page .wp-block-query-title,
.zaza-shop-title {
	color: var(--zaza-shop-ink);
	font-family: var(--zaza-shop-display-font);
	font-size: clamp(2.25rem, 3vw, 3.35rem);
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 1;
	text-transform: uppercase;
}

.zaza-shop-title {
	margin: 18px 0 0;
}

.zaza-shop-intro__description {
	max-width: 800px;
	margin-top: 18px;
	color: var(--zaza-shop-muted);
	font-family: var(--zaza-shop-body-font);
	font-size: 0.98rem;
	font-weight: 400;
	line-height: 1.7;
}

.zaza-shop-intro__description > :first-child {
	margin-top: 0;
}

.zaza-shop-intro__description > :last-child {
	margin-bottom: 0;
}

body.zaza-product-archive-page .term-description {
	width: min(100% - 40px, 760px);
	margin: -34px auto clamp(38px, 4vw, 58px);
	color: var(--zaza-shop-muted);
	font-family: var(--zaza-shop-body-font);
	font-size: 0.98rem;
	font-weight: 400;
	line-height: 1.7;
	text-align: left;
}

body.zaza-product-archive-page .woocommerce-notices-wrapper,
body.zaza-product-archive-page .wc-block-store-notices {
	width: min(100% - 40px, 1380px);
	margin: 0 auto;
}

body.zaza-product-archive-page .wp-site-blocks > main > .wp-block-group.alignwide:has(.wc-block-product-results-count),
body.zaza-product-archive-page .wp-site-blocks > main > .wp-block-group.alignwide.is-content-justification-space-between,
.zaza-shop-topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: min(100% - 40px, 1380px);
	max-width: 1380px;
	margin: clamp(24px, 3vw, 42px) auto 0;
	padding: 0;
	gap: 20px;
}

.zaza-shop-count,
.zaza-shop-sort {
	display: flex;
	align-items: center;
	min-width: 0;
}

body.zaza-product-archive-page .woocommerce-result-count,
body.zaza-product-archive-page .woocommerce-ordering,
body.zaza-product-archive-page .wc-block-product-results-count,
body.zaza-product-archive-page .wp-block-woocommerce-catalog-sorting {
	float: none;
	display: flex;
	align-items: center;
	margin: 0;
	color: var(--zaza-shop-ink);
	font-family: var(--zaza-shop-body-font);
	font-size: 0.88rem;
	font-weight: 600;
	line-height: 1.4;
}

.zaza-shop-sort::before {
	content: "Sort by:";
	margin-right: 10px;
	color: var(--zaza-shop-ink);
	font-size: 0.86rem;
	font-weight: 800;
}

body.zaza-product-archive-page .wp-block-woocommerce-catalog-sorting::before {
	content: none;
}

body.zaza-product-archive-page .woocommerce-ordering select,
body.zaza-product-archive-page .wp-block-woocommerce-catalog-sorting select {
	min-height: 42px;
	max-width: 100%;
	padding: 0 36px 0 14px;
	border: 1px solid transparent;
	border-radius: 999px;
	background-color: var(--zaza-shop-soft);
	color: var(--zaza-shop-ink);
	font-family: var(--zaza-shop-body-font);
	font-size: 0.86rem;
	font-weight: 600;
}

.zaza-shop-layout {
	display: grid;
	grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
	align-items: start;
	width: min(100% - 40px, 1380px);
	margin: clamp(22px, 3vw, 38px) auto 0;
	gap: clamp(34px, 4vw, 64px);
}

.zaza-shop-filters {
	color: var(--zaza-shop-ink);
	font-family: var(--zaza-shop-body-font);
}

.zaza-shop-filter,
.zaza-shop-filter-widget {
	padding: 0 0 28px;
	margin: 0 0 28px;
	border-bottom: 1px solid var(--zaza-shop-line);
}

.zaza-shop-filter__title,
.zaza-shop-filter-widget .widget-title {
	margin: 0 0 18px;
	color: var(--zaza-shop-ink);
	font-family: var(--zaza-shop-display-font);
	font-size: clamp(1.45rem, 2vw, 2rem);
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 1;
	text-transform: uppercase;
}

.zaza-shop-filter__list,
.zaza-shop-filter-widget ul {
	display: grid;
	gap: 13px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.zaza-shop-filter__link,
.zaza-shop-filter-widget a {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr) auto;
	align-items: center;
	gap: 10px;
	color: var(--zaza-shop-ink);
	font-size: 0.9rem;
	font-weight: 500;
	line-height: 1.35;
	text-decoration: none;
}

.zaza-shop-filter__link:hover,
.zaza-shop-filter__link:focus-visible,
.zaza-shop-filter__link.is-active,
.zaza-shop-filter-widget a:hover,
.zaza-shop-filter-widget a:focus-visible {
	color: var(--zaza-shop-black);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
}

.zaza-shop-filter__box {
	width: 18px;
	height: 18px;
	border: 1px solid rgba(17, 19, 18, 0.34);
	border-radius: 3px;
	background: transparent;
}

.zaza-shop-filter__link.is-active .zaza-shop-filter__box {
	border-color: var(--zaza-shop-black);
	background: var(--zaza-shop-black);
	box-shadow: inset 0 0 0 4px var(--zaza-shop-soft);
}

.zaza-shop-filter__count {
	color: var(--zaza-shop-muted);
	font-size: 0.82rem;
	font-weight: 500;
}

.zaza-shop-price-filter {
	display: grid;
	gap: 14px;
}

.zaza-shop-price-filter__fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.zaza-shop-price-filter label {
	display: grid;
	gap: 6px;
	color: var(--zaza-shop-muted);
	font-size: 0.76rem;
	font-weight: 700;
	text-transform: uppercase;
}

.zaza-shop-price-filter input {
	width: 100%;
	min-height: 42px;
	padding: 0 12px;
	border: 1px solid var(--zaza-shop-line);
	border-radius: 999px;
	background: #eeeeec;
	color: var(--zaza-shop-ink);
	font-family: var(--zaza-shop-body-font);
	font-size: 0.88rem;
	font-weight: 600;
}

.zaza-shop-price-filter button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: max-content;
	min-height: 42px;
	padding: 0 20px;
	border: 0;
	border-radius: 999px;
	background: var(--zaza-shop-black);
	color: #ffffff;
	font-family: var(--zaza-shop-display-font);
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	cursor: pointer;
}

.zaza-shop-results {
	min-width: 0;
}

body.zaza-product-archive-page .woocommerce ul.products,
body.zaza-product-archive-page .wc-block-product-template {
	clear: both;
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: clamp(34px, 4vw, 58px) clamp(20px, 2.6vw, 42px) !important;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}

body.zaza-product-archive-page .woocommerce ul.products::before,
body.zaza-product-archive-page .woocommerce ul.products::after,
body.zaza-product-archive-page .wc-block-product-template::before,
body.zaza-product-archive-page .wc-block-product-template::after {
	display: none;
	content: none;
}

body.zaza-product-archive-page .woocommerce ul.products li.product,
body.zaza-product-archive-page .wc-block-product {
	float: none !important;
	display: flex;
	flex-direction: column;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	text-align: left;
	overflow: visible;
}

body.zaza-product-archive-page .woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
body.zaza-product-archive-page .wc-block-product .wp-block-woocommerce-product-image > a {
	display: block;
	color: var(--zaza-shop-ink);
	text-decoration: none;
}

body.zaza-product-archive-page .woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
	display: flex;
	flex-direction: column;
}

body.zaza-product-archive-page .wp-block-woocommerce-product-image,
body.zaza-product-archive-page .wc-block-components-product-image {
	width: 100%;
	margin: 0 0 18px !important;
	background: transparent;
}

body.zaza-product-archive-page .wp-block-woocommerce-product-image > a,
body.zaza-product-archive-page .wc-block-components-product-image > a {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
}

body.zaza-product-archive-page .woocommerce ul.products li.product a img,
body.zaza-product-archive-page .wc-block-product .wp-block-woocommerce-product-image img,
body.zaza-product-archive-page .wc-block-product .wc-block-components-product-image img {
	display: block;
	width: 100% !important;
	height: clamp(210px, 18vw, 310px) !important;
	aspect-ratio: 1 / 1;
	margin: 0 !important;
	padding: clamp(6px, 1vw, 14px);
	background: transparent;
	object-fit: contain !important;
	transition: transform 180ms ease;
}

body.zaza-product-archive-page .woocommerce ul.products li.product:hover a img,
body.zaza-product-archive-page .wc-block-product:hover .wp-block-woocommerce-product-image img,
body.zaza-product-archive-page .wc-block-product:hover .wc-block-components-product-image img {
	transform: translateY(-4px) scale(1.025);
}

body.zaza-product-archive-page .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.zaza-product-archive-page .wc-block-product .wp-block-post-title,
body.zaza-product-archive-page .wc-block-product .wp-block-post-title a {
	display: -webkit-box;
	min-height: 2.4em;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;
	color: var(--zaza-shop-ink);
	font-family: var(--zaza-shop-display-font);
	font-size: clamp(1.02rem, 1.18vw, 1.32rem) !important;
	font-weight: 400;
	letter-spacing: 0.015em;
	line-height: 1.08 !important;
	text-align: left;
	text-decoration: none;
	text-transform: uppercase;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

body.zaza-product-archive-page .wc-block-product .wp-block-post-title a {
	color: inherit;
}

body.zaza-product-archive-page .woocommerce ul.products li.product .star-rating,
body.zaza-product-archive-page .wc-block-components-product-rating {
	margin: 9px 0 0;
	color: #f0b400;
	font-size: 0.86rem;
}

body.zaza-product-archive-page .woocommerce ul.products li.product .price,
body.zaza-product-archive-page .wc-block-product .wp-block-woocommerce-product-price,
body.zaza-product-archive-page .wc-block-product .wc-block-components-product-price {
	display: block;
	margin: 10px 0 0 !important;
	color: var(--zaza-shop-black);
	font-family: var(--zaza-shop-body-font);
	font-size: 0.94rem !important;
	font-weight: 800;
	line-height: 1.3;
	text-align: left;
}

body.zaza-product-archive-page .woocommerce ul.products li.product .button,
body.zaza-product-archive-page .wc-block-product .wp-block-woocommerce-product-button,
body.zaza-product-archive-page .wc-block-product .wc-block-components-product-button {
	width: 100%;
	margin-top: 14px !important;
	text-align: left;
}

body.zaza-product-archive-page .woocommerce ul.products li.product .button,
body.zaza-product-archive-page .wc-block-product .wp-block-button__link,
body.zaza-product-archive-page .wc-block-product .wc-block-components-product-button__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-height: 38px;
	margin: 0 !important;
	padding: 0 18px;
	border: 0;
	border-radius: 999px;
	background: var(--zaza-shop-black);
	color: #ffffff;
	font-family: var(--zaza-shop-display-font);
	font-size: 0.96rem !important;
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1;
	text-decoration: none;
	text-transform: uppercase;
}

body.zaza-product-archive-page .woocommerce ul.products li.product .button:hover,
body.zaza-product-archive-page .woocommerce ul.products li.product .button:focus-visible,
body.zaza-product-archive-page .wc-block-product .wp-block-button__link:hover,
body.zaza-product-archive-page .wc-block-product .wp-block-button__link:focus-visible,
body.zaza-product-archive-page .wc-block-product .wc-block-components-product-button__button:hover,
body.zaza-product-archive-page .wc-block-product .wc-block-components-product-button__button:focus-visible {
	background: #222625;
	color: #ffffff;
	outline: 2px solid var(--zaza-shop-accent);
	outline-offset: 2px;
}

body.zaza-product-archive-page .woocommerce nav.woocommerce-pagination {
	margin-top: clamp(38px, 5vw, 68px);
}

body.zaza-product-archive-page .woocommerce nav.woocommerce-pagination ul {
	display: flex;
	justify-content: center;
	gap: 10px;
	border: 0;
}

body.zaza-product-archive-page .woocommerce nav.woocommerce-pagination ul li {
	border: 0;
}

body.zaza-product-archive-page .woocommerce nav.woocommerce-pagination ul li a,
body.zaza-product-archive-page .woocommerce nav.woocommerce-pagination ul li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	min-height: 42px;
	border: 1px solid var(--zaza-shop-line);
	border-radius: 999px;
	background: var(--zaza-shop-paper);
	color: var(--zaza-shop-ink);
	font-family: var(--zaza-shop-display-font);
	font-size: 1rem;
	font-weight: 400;
	text-decoration: none;
}

body.zaza-product-archive-page .woocommerce nav.woocommerce-pagination ul li span.current {
	background: var(--zaza-shop-accent);
	color: var(--zaza-shop-black);
}

body.zaza-product-archive-page .wc-block-product-template + .wp-block-query-no-results,
body.zaza-product-archive-page .wp-block-query-no-results,
body.zaza-product-archive-page .woocommerce-info {
	grid-column: 1 / -1;
	max-width: 720px;
	margin: 36px auto;
	color: var(--zaza-shop-ink);
	font-family: var(--zaza-shop-body-font);
	text-align: center;
}

@media (max-width: 1180px) {
	.zaza-shop-layout {
		grid-template-columns: minmax(190px, 240px) minmax(0, 1fr);
		gap: 28px;
	}

	body.zaza-product-archive-page .woocommerce ul.products,
	body.zaza-product-archive-page .wc-block-product-template {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 900px) {
	body.zaza-product-archive-page .woocommerce-breadcrumb,
	body.zaza-product-archive-page .wp-block-woocommerce-breadcrumbs,
	body.zaza-product-archive-page .wc-block-breadcrumbs,
	body.zaza-product-archive-page .woocommerce-products-header,
	body.zaza-product-archive-page .wp-block-query-title,
	.zaza-shop-intro,
	body.zaza-product-archive-page .wp-site-blocks > main > .wp-block-group.alignwide:has(.wc-block-product-results-count),
	body.zaza-product-archive-page .wp-site-blocks > main > .wp-block-group.alignwide.is-content-justification-space-between,
	.zaza-shop-layout {
		width: min(100% - 28px, 1380px);
	}

	.zaza-shop-layout {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.zaza-shop-filters {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px;
	}

	.zaza-shop-filter,
	.zaza-shop-filter-widget {
		margin: 0;
		padding: 18px;
		border: 1px solid var(--zaza-shop-line);
		border-radius: 8px;
		background: rgba(255, 255, 255, 0.48);
	}

	body.zaza-product-archive-page .woocommerce ul.products,
	body.zaza-product-archive-page .wc-block-product-template {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 28px 14px !important;
	}
}

@media (max-width: 600px) {
	body.zaza-product-archive-page .woocommerce-breadcrumb,
	body.zaza-product-archive-page .wp-block-woocommerce-breadcrumbs,
	body.zaza-product-archive-page .wc-block-breadcrumbs {
		padding-top: 28px;
		font-size: 0.72rem;
	}

	body.zaza-product-archive-page .woocommerce-products-header,
	body.zaza-product-archive-page .wp-block-query-title {
		padding-bottom: 28px;
	}

	.zaza-shop-intro {
		padding-bottom: 28px;
	}

	body.zaza-product-archive-page .woocommerce-products-header__title.page-title,
	body.zaza-product-archive-page h1.page-title,
	body.zaza-product-archive-page .wp-block-query-title,
	.zaza-shop-title {
		font-size: clamp(2rem, 11vw, 2.85rem);
	}

	body.zaza-product-archive-page .wp-site-blocks > main > .wp-block-group.alignwide:has(.wc-block-product-results-count),
	body.zaza-product-archive-page .wp-site-blocks > main > .wp-block-group.alignwide.is-content-justification-space-between,
	.zaza-shop-topbar {
		align-items: stretch;
		flex-direction: column;
		gap: 12px;
	}

	body.zaza-product-archive-page .woocommerce-result-count,
	body.zaza-product-archive-page .wc-block-product-results-count {
		min-height: 0;
	}

	body.zaza-product-archive-page .woocommerce-ordering,
	body.zaza-product-archive-page .wp-block-woocommerce-catalog-sorting,
	body.zaza-product-archive-page .woocommerce-ordering select,
	body.zaza-product-archive-page .wp-block-woocommerce-catalog-sorting select {
		width: 100%;
	}

	.zaza-shop-filters {
		grid-template-columns: 1fr;
	}

	body.zaza-product-archive-page .woocommerce ul.products,
	body.zaza-product-archive-page .wc-block-product-template {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.zaza-product-archive-page .woocommerce ul.products li.product a img,
	body.zaza-product-archive-page .wc-block-product .wp-block-woocommerce-product-image img,
	body.zaza-product-archive-page .wc-block-product .wc-block-components-product-image img {
		height: clamp(132px, 38vw, 210px) !important;
		padding: 4px;
	}

	body.zaza-product-archive-page .woocommerce ul.products li.product:hover a img,
	body.zaza-product-archive-page .wc-block-product:hover .wp-block-woocommerce-product-image img,
	body.zaza-product-archive-page .wc-block-product:hover .wc-block-components-product-image img {
		transform: none;
	}

	body.zaza-product-archive-page .woocommerce ul.products li.product .woocommerce-loop-product__title,
	body.zaza-product-archive-page .wc-block-product .wp-block-post-title,
	body.zaza-product-archive-page .wc-block-product .wp-block-post-title a {
		font-size: 0.96rem !important;
		line-height: 1.08 !important;
	}

	body.zaza-product-archive-page .woocommerce ul.products li.product .price,
	body.zaza-product-archive-page .wc-block-product .wp-block-woocommerce-product-price,
	body.zaza-product-archive-page .wc-block-product .wc-block-components-product-price {
		font-size: 0.82rem !important;
	}

	body.zaza-product-archive-page .woocommerce ul.products li.product .button,
	body.zaza-product-archive-page .wc-block-product .wp-block-button__link,
	body.zaza-product-archive-page .wc-block-product .wc-block-components-product-button__button {
		min-height: 34px;
		padding: 0 13px;
		font-size: 0.82rem !important;
	}
}

/* Quick archive control correction: no colliding filter fields or tiny controls. */
.zaza-shop-filters,
.zaza-shop-filters * {
	box-sizing: border-box;
}

.zaza-shop-price-filter {
	gap: 16px;
}

.zaza-shop-price-filter__fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	width: 100%;
}

.zaza-shop-price-filter label {
	min-width: 0;
}

.zaza-shop-price-filter input {
	width: 100%;
	min-width: 0;
	max-width: 100%;
	height: 46px;
	padding: 0 16px;
}

.zaza-shop-price-filter button {
	min-height: 44px;
	padding: 0 22px;
	font-size: 1.08rem;
}

body.zaza-product-archive-page .woocommerce ul.products li.product .button,
body.zaza-product-archive-page .wc-block-product .wp-block-button__link,
body.zaza-product-archive-page .wc-block-product .wc-block-components-product-button__button {
	min-height: 40px;
	padding: 0 18px;
	font-size: 1rem !important;
	white-space: nowrap;
}

@media (max-width: 1180px) and (min-width: 901px) {
	.zaza-shop-layout {
		grid-template-columns: minmax(230px, 270px) minmax(0, 1fr);
		gap: 34px;
	}
}

@media (max-width: 600px) {
	.zaza-shop-price-filter__fields {
		gap: 10px;
	}

	.zaza-shop-price-filter input {
		height: 42px;
		padding: 0 12px;
	}
}

/* Final archive typography: Bebas titles/buttons, DM Sans supporting text. */
body.zaza-product-archive-page :where(
	.woocommerce,
	.woocommerce-breadcrumb,
	.woocommerce-result-count,
	.woocommerce-ordering,
	.woocommerce-ordering select,
	.zaza-shop-intro__description,
	.term-description,
	.zaza-shop-filter__link,
	.zaza-shop-filter__label,
	.zaza-shop-filter__count,
	.zaza-shop-price-filter label,
	.zaza-shop-price-filter input,
	.price,
	.amount,
	.star-rating,
	.wc-block-components-product-price
) {
	font-family: var(--zaza-shop-body-font);
	letter-spacing: 0;
	text-transform: none;
}

body.zaza-product-archive-page :where(
	.woocommerce-products-header__title.page-title,
	h1.page-title,
	.wp-block-query-title,
	.zaza-shop-title,
	.zaza-shop-filter__title,
	.woocommerce-loop-product__title,
	.wc-block-product .wp-block-post-title,
	.wc-block-product .wp-block-post-title a,
	.woocommerce ul.products li.product .button,
	.wc-block-product .wp-block-button__link,
	.wc-block-product .wc-block-components-product-button__button,
	.woocommerce nav.woocommerce-pagination ul li a,
	.woocommerce nav.woocommerce-pagination ul li span
) {
	font-family: var(--zaza-shop-display-font);
	font-weight: 400;
	letter-spacing: 0.035em;
	text-transform: uppercase;
}

body.zaza-product-archive-page .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.zaza-product-archive-page .wc-block-product .wp-block-post-title,
body.zaza-product-archive-page .wc-block-product .wp-block-post-title a {
	font-size: clamp(1.05rem, 1.12vw, 1.22rem);
	line-height: 1.04;
}

body.zaza-product-archive-page .woocommerce ul.products li.product .price,
body.zaza-product-archive-page .wc-block-product .wp-block-woocommerce-product-price,
body.zaza-product-archive-page .wc-block-product .wc-block-components-product-price {
	font-size: 0.94rem;
	font-weight: 800;
}

body.zaza-product-archive-page .zaza-shop-filter__title {
	font-size: clamp(1.55rem, 2vw, 2rem);
	line-height: 1;
}
