/**
 * WooCommerce product archives and product search.
 */

.mc-shop {
	min-height: 60vh;
	padding-block: var(--mc-space-lg) var(--mc-space-2xl);
	color: var(--mc-color-text-primary);
	background: var(--mc-color-background);
}

.mc-shop__container {
	width: min(100%, var(--mc-container-width));
	padding-inline: var(--mc-container-padding-mobile);
	margin-inline: auto;
}

.woocommerce-products-header {
	display: grid;
	gap: var(--mc-space-md);
	margin-block-end: var(--mc-space-lg);
	text-align: start;
}

.woocommerce-products-header__title {
	margin: 0;
	font-size: var(--mc-font-size-2xl);
	font-weight: var(--mc-font-weight-bold);
	line-height: var(--mc-line-height-tight);
}

.term-description,
.page-description {
	max-width: 75ch;
	color: var(--mc-color-text-secondary);
	line-height: var(--mc-line-height-relaxed);
}

.term-description > :first-child,
.page-description > :first-child {
	margin-block-start: 0;
}

.term-description > :last-child,
.page-description > :last-child {
	margin-block-end: 0;
}

.mc-brand-header {
	justify-items: center;
	width: 100%;
	text-align: center;
}

.mc-brand-header__logo {
	display: grid;
	width: min(100%, 8rem);
	height: 6rem;
	padding: var(--mc-space-sm);
	place-items: center;
}

.mc-brand-header__logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.mc-brand-header .mc-brand-header__title {
	font-size: var(--mc-mobile-font-size-product-title);
	text-align: center;
}

.mc-brand-description {
	position: relative;
	width: min(100%, 56rem);
	margin-inline: auto;
	text-align: start;
}

.mc-brand-description__content {
	color: var(--mc-color-text-secondary);
	font-size: var(--mc-mobile-font-size-body);
	line-height: var(--mc-mobile-line-height-body);
	text-align: justify;
	text-justify: inter-word;
}

.mc-brand-description__content > :first-child {
	margin-block-start: 0;
}

.mc-brand-description__content > :last-child {
	margin-block-end: 0;
}

.mc-brand-description.has-overflow:not(.is-expanded) .mc-brand-description__content {
	max-height: var(--mc-brand-description-height);
	overflow: hidden;
	mask-image: linear-gradient(to bottom, #000 72%, transparent);
	-webkit-mask-image: linear-gradient(to bottom, #000 72%, transparent);
}

.mc-brand-description button {
	display: none;
	margin: var(--mc-space-sm) auto 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--mc-color-primary);
	font: inherit;
	font-weight: var(--mc-font-weight-semibold);
	cursor: pointer;
}

.mc-brand-description.has-overflow button {
	display: inline-flex;
}

.mc-brand-description button:focus-visible {
	outline: 2px solid var(--mc-color-primary);
	outline-offset: 2px;
}

.mc-shop-toolbar {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: var(--mc-space-sm);
	align-items: center;
	margin-block-end: var(--mc-space-lg);
}

.mc-shop-toolbar .woocommerce-notices-wrapper {
	grid-column: 1 / -1;
}

.mc-shop-toolbar .woocommerce-result-count,
.mc-shop-toolbar .woocommerce-ordering {
	margin: 0;
	font-size: var(--mc-font-size-sm);
	line-height: var(--mc-line-height-normal);
}

.mc-shop-toolbar .woocommerce-result-count {
	display: none;
}

.mc-shop-toolbar .woocommerce-ordering,
.mc-shop-toolbar .woocommerce-ordering select,
.mc-shop-filters__open {
	width: 100%;
}

.mc-shop-toolbar .woocommerce-ordering select,
.mc-shop-filters input,
.mc-shop-filters select {
	min-height: 2.75rem;
	padding: var(--mc-space-sm) var(--mc-space-md);
	color: var(--mc-color-text-primary);
	background: var(--mc-color-surface);
	border: 1px solid var(--mc-color-border);
	border-radius: var(--mc-radius-small);
}

.mc-shop-filters__open {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.75rem;
	padding-inline: var(--mc-space-md);
	color: var(--mc-color-primary);
	font: inherit;
	font-weight: var(--mc-font-weight-semibold);
	background: var(--mc-color-surface);
	border: 1px solid var(--mc-color-primary);
	border-radius: var(--mc-radius-button);
	cursor: pointer;
}

.mc-shop-filters__layer[hidden] {
	display: none;
}

body.mc-shop-filters-open {
	overflow: hidden;
}

.mc-shop-filters__layer,
.mc-shop-filters__overlay {
	position: fixed;
	inset: 0;
}

.mc-shop-filters__layer {
	z-index: 1000;
}

.mc-shop-filters__overlay {
	background: rgb(17 24 39 / 35%);
}

.mc-shop-filters__panel {
	position: absolute;
	inset-inline: 0;
	inset-block-end: 0;
	max-height: min(82vh, 42rem);
	padding: var(--mc-space-md);
	overflow-y: auto;
	background: var(--mc-color-surface);
	border-start-start-radius: var(--mc-radius-large);
	border-start-end-radius: var(--mc-radius-large);
	transform: translateY(100%);
	transition: transform 280ms ease;
}

.mc-shop-filters__layer.is-open .mc-shop-filters__panel {
	transform: translateY(0);
}

.mc-shop-filters__panel>header {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.mc-shop-filters__panel>header h2 {
	margin: 0;
	font-size: var(--mc-mobile-font-size-section-title);
}

.mc-shop-filters__panel>header button {
	display: grid;
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	place-items: center;
	font: inherit;
	font-size: 1.5rem;
	background: transparent;
	border: 1px solid var(--mc-color-border);
	border-radius: var(--mc-radius-button);
	cursor: pointer;
}

.mc-shop-filters__form {
	display: grid;
	gap: var(--mc-space-md);
	padding-block-start: var(--mc-space-md);
}

.mc-shop-filters__form label:not(.mc-shop-filters__check) {
	display: grid;
	gap: var(--mc-space-xs);
	color: var(--mc-color-text-secondary);
	font-size: var(--mc-font-size-sm);
}

.mc-shop-filters__check {
	display: flex;
	gap: var(--mc-space-sm);
	align-items: center;
}

.mc-shop-filters__check input {
	width: 1.125rem;
	min-height: 0;
	height: 1.125rem;
}

.mc-shop-filters__submit {
	width: 100%;
	justify-content: center;
}

.mc-category-header {
	gap: var(--mc-space-lg);
}

.mc-category-banner {
	width: 100%;
	height: var(--mc-category-banner-mobile-height);
	overflow: hidden;
	background: var(--mc-color-surface);
}

.mc-category-banner--radius-small{border-radius:var(--mc-radius-small)}.mc-category-banner--radius-medium{border-radius:var(--mc-radius-medium)}.mc-category-banner--radius-large{border-radius:var(--mc-radius-large)}
.mc-category-banner a,.mc-category-banner picture,.mc-category-banner img{display:block;width:100%;height:100%}.mc-category-banner img{object-position:center}.mc-category-banner--fit-cover img{object-fit:cover}.mc-category-banner--fit-contain img{object-fit:contain}

.mc-category-description h2{margin:0 0 var(--mc-space-md);font-size:var(--mc-mobile-font-size-section-title);font-weight:var(--mc-font-weight-bold)}
.mc-category-children ul{display:flex;gap:var(--mc-space-md);margin:0;padding:0 0 var(--mc-space-xs);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;list-style:none}.mc-category-children ul::-webkit-scrollbar{display:none}.mc-category-children li{flex:0 0 calc((100% - (var(--mc-space-md) * .75)) / var(--mc-category-child-mobile-visible));min-width:0;scroll-snap-align:start}.mc-category-children a{display:grid;gap:var(--mc-space-xs);color:var(--mc-color-text-primary);font-size:var(--mc-mobile-font-size-sm);font-weight:var(--mc-font-weight-semibold);text-align:center;text-decoration:none}.mc-category-child__media{display:grid;width:100%;aspect-ratio:1;place-items:center;overflow:hidden;border-radius:var(--mc-radius-full);background:var(--mc-color-surface)}.mc-category-child__media img{display:block;width:78%;height:78%;object-fit:contain}

.mc-category-description{position:relative}.mc-category-description__content{color:var(--mc-color-text-secondary);font-size:var(--mc-mobile-font-size-body);line-height:var(--mc-mobile-line-height-body)}.mc-category-description__content>:first-child{margin-block-start:0}.mc-category-description__content>:last-child{margin-block-end:0}.mc-category-description button{display:none;margin-block-start:var(--mc-space-sm);padding:0;color:var(--mc-color-primary);font:inherit;font-weight:var(--mc-font-weight-semibold);background:transparent;border:0;cursor:pointer}

.mc-category-extra-banner,.mc-category-banner-grid,.mc-product-section--category-extra{margin-block:var(--mc-space-lg)}.mc-category-extra-banner{overflow:hidden;border-radius:var(--mc-radius-large)}.mc-category-extra-banner a,.mc-category-extra-banner picture,.mc-category-extra-banner img{display:block;width:100%}.mc-category-extra-banner img{height:auto}.mc-category-banner-grid ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--mc-space-sm);margin:0;padding:0;list-style:none}.mc-category-banner-grid li{overflow:hidden;aspect-ratio:1;border-radius:var(--mc-radius-medium)}.mc-category-banner-grid img{display:block;width:100%;height:100%;object-fit:cover}

.mc-shop ul.products {
	display: grid;
	grid-template-columns: repeat(var(--mc-shop-columns-mobile), minmax(0, 1fr));
	gap: calc(var(--mc-space-sm) + var(--mc-space-xs));
	padding: 0;
	margin: 0;
	list-style: none;
}

.mc-shop ul.products::before,
.mc-shop ul.products::after {
	display: none;
}

#primary.mc-shop ul.products > li.product.mc-shop-grid__item {
	width: 100%;
	min-width: 0;
	max-width: none;
	padding: 0;
	margin: 0;
	float: none;
	clear: none;
}

#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive {
	width: 100%;
	min-height: 100%;
	min-width: 0;
	max-width: 100%;
}

.mc-shop .woocommerce-pagination {
	margin-block-start: var(--mc-space-xl);
}

.mc-shop .woocommerce-pagination ul {
	display: flex;
	flex-wrap: wrap;
	gap: var(--mc-space-sm);
	justify-content: center;
	padding: 0;
	margin: 0;
	list-style: none;
}

.mc-shop .woocommerce-pagination a,
.mc-shop .woocommerce-pagination span {
	display: grid;
	min-width: 2.5rem;
	min-height: 2.5rem;
	padding: var(--mc-space-xs);
	color: var(--mc-color-text-primary);
	text-decoration: none;
	place-items: center;
	background: var(--mc-color-surface);
	border: 1px solid var(--mc-color-border);
	border-radius: var(--mc-radius-small);
}

.mc-shop .woocommerce-pagination .current,
.mc-shop .woocommerce-pagination a:hover {
	color: var(--mc-color-button-text);
	background: var(--mc-color-primary);
	border-color: var(--mc-color-primary);
}

.mc-shop-load-more {
	display: none;
}

.mc-shop[data-mc-all-products] .woocommerce-pagination.is-load-more-enhanced { display: none; }
.mc-shop-infinite-sentinel { min-height: 3rem; margin-block-start: var(--mc-space-lg); text-align: center; }

.mc-shop-empty {
	padding: var(--mc-space-2xl) var(--mc-space-lg);
	text-align: center;
	background: var(--mc-color-surface);
	border: 1px solid var(--mc-color-border);
	border-radius: var(--mc-radius-card);
}

.mc-shop-empty h2,
.mc-shop-empty p {
	margin-block: 0 var(--mc-space-sm);
}

@media (max-width: 47.999rem) {
	.mc-shop .woocommerce-pagination.is-load-more-enhanced {
		display: none;
	}

	.mc-shop-load-more {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-height: 2.75rem;
		padding: var(--mc-space-sm) var(--mc-space-md);
		margin-block-start: var(--mc-space-xl);
		color: var(--mc-color-button-text);
		font: inherit;
		font-size: var(--mc-mobile-font-size-body);
		font-weight: var(--mc-font-weight-bold);
		background: var(--mc-color-primary);
		border: 0;
		border-radius: var(--mc-radius-button);
		cursor: pointer;
	}

	.mc-shop-load-more:hover,
	.mc-shop-load-more:focus-visible {
		background: var(--mc-color-primary-hover);
	}

	.mc-shop-load-more:focus-visible {
		outline: 2px solid var(--mc-color-primary);
		outline-offset: 2px;
	}

	.mc-shop-load-more:disabled {
		cursor: wait;
	}

	#primary.mc-shop ul.products {
		grid-template-columns: repeat(var(--mc-shop-columns-mobile, 2), minmax(0, 1fr));
	}

	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__image-link,
	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__media,
	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__image {
		width: 100%;
		min-width: 0;
		max-width: 100%;
	}

	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__image img {
		width: 100%;
		height: 100%;
		object-fit: contain;
		object-position: center;
	}

	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__content {
		min-width: 0;
	}

	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__brand,
	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__price del {
		font-size: 0.6875rem;
	}

	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__title,
	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__price ins {
		font-size: var(--mc-mobile-font-size-card-title);
	}

	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__title {
		line-height: var(--mc-mobile-line-height-card);
		overflow-wrap: break-word;
	}

	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__price {
		width: 100%;
		min-width: 0;
		align-items: baseline;
	}

	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__offer,
	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__availability {
		font-size: 0.6875rem;
	}

	#primary.mc-shop ul.products > li.mc-shop-grid__item > .mc-product-card--archive .mc-product-card__cart {
		width: 100%;
		min-width: 0;
		min-height: 2.5rem;
		padding: var(--mc-space-sm);
		font-size: var(--mc-mobile-font-size-card-title);
		line-height: var(--mc-mobile-line-height-control);
		white-space: normal;
		word-break: normal;
		overflow-wrap: break-word;
		background: var(--mc-color-primary);
	}

	.woocommerce-products-header {
		gap: var(--mc-space-sm);
		margin-block-end: var(--mc-space-md);
	}

	.woocommerce-products-header__title,
	.mc-shop-empty h2 {
		font-size: var(--mc-mobile-font-size-section-title);
		line-height: var(--mc-mobile-line-height-heading);
	}

	.term-description,
	.page-description,
	.mc-shop-empty p {
		font-size: var(--mc-mobile-font-size-body);
		line-height: var(--mc-mobile-line-height-body);
	}

	.mc-shop-toolbar .woocommerce-result-count,
	.mc-shop-toolbar .woocommerce-ordering,
	.mc-shop-filters__form label:not(.mc-shop-filters__check) {
		font-size: var(--mc-mobile-font-size-sm);
	}

	.mc-shop-filters summary,
	.mc-shop-filters__submit {
		font-size: var(--mc-mobile-font-size-body);
		line-height: var(--mc-mobile-line-height-control);
	}

	.mc-category-description.is-collapsible:not(.is-expanded) .mc-category-description__content{max-height:var(--mc-category-description-height);overflow:hidden;mask-image:linear-gradient(to bottom,#000 72%,transparent)}
	.mc-category-description.is-collapsible.has-overflow button{display:inline-flex}
}

@media (min-width: 48rem) {
	.mc-shop__container {
		padding-inline: var(--mc-container-padding-desktop);
	}

	.mc-brand-header__logo {
		width: min(100%, 10rem);
		height: 7.5rem;
	}

	.mc-brand-header .mc-brand-header__title {
		font-size: var(--mc-font-size-2xl);
	}

	.mc-brand-description__content {
		font-size: var(--mc-font-size-md);
		line-height: var(--mc-line-height-relaxed);
	}

	.mc-shop-filters__form {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		align-items: end;
	}

	.mc-shop-toolbar{grid-template-columns:auto minmax(0,1fr) auto}.mc-shop-toolbar .woocommerce-result-count{display:block}.mc-shop-toolbar .woocommerce-ordering,.mc-shop-toolbar .woocommerce-ordering select,.mc-shop-filters__open{width:auto}.mc-shop-filters__layer{position:absolute;inset:auto 0 auto auto;width:min(100%,48rem);margin-block-start:var(--mc-space-xs)}.mc-shop-filters__overlay{display:none}.mc-shop-filters__panel{position:relative;inset:auto;max-height:70vh;border:1px solid var(--mc-color-border);border-radius:var(--mc-radius-large);box-shadow:var(--mc-shadow-medium);transform:translateY(-.5rem);opacity:0;transition:transform 200ms ease,opacity 200ms ease}.mc-shop-filters__layer.is-open .mc-shop-filters__panel{transform:translateY(0);opacity:1}body.mc-shop-filters-open{overflow:auto}.mc-shop-filters__submit{width:auto;justify-self:start}.mc-category-banner{height:var(--mc-category-banner-desktop-height)}.mc-category-children ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));overflow:visible}.mc-category-children li{min-width:0}.mc-category-child__media{max-width:8rem;margin-inline:auto}.mc-category-banner-grid ul{gap:var(--mc-space-md)}

	.mc-shop ul.products {
		grid-template-columns: repeat(var(--mc-shop-columns-tablet), minmax(0, 1fr));
		gap: var(--mc-space-lg);
	}
}

@media (min-width: 64rem) {
	.mc-shop {
		padding-block-start: var(--mc-space-xl);
	}

	.mc-shop ul.products {
		grid-template-columns: repeat(var(--mc-shop-columns-desktop), minmax(0, 1fr));
	}

	.mc-shop-filters__form {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}
