/* ==========================================================================
   Zuricom - Shared WooCommerce Shop Archive
   ========================================================================== */

.zuri-shop-main,
.zuri-shop-archive {
	background: #fff;
}

.zuri-shop-container {
	width: min(100% - 4rem, 1500px);
	margin-left: auto;
	margin-right: auto;
	padding-top: 5rem;
	padding-bottom: 7rem;
}

.zuri-shop-header {
	margin-bottom: 3rem;
	text-align: left;
}

.zuri-shop-header .page-title {
	margin: 0;
	color: #222;
	font-size: clamp(3.2rem, 4vw, 5.2rem);
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: -.03em;
}

.zuri-shop-topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	margin-bottom: 3rem;
	padding: 1.4rem 1.6rem;
	border: 1px solid #ebebeb;
	background: #fff;
}

.zuri-shop-topbar-left,
.zuri-shop-topbar-right {
	display: flex;
	align-items: center;
	gap: 1.6rem;
}

.zuri-shop-topbar .woocommerce-result-count {
	margin: 0;
	color: #777;
	font-size: 1.4rem;
}

.zuri-shop-topbar .woocommerce-ordering {
	margin: 0;
}

.zuri-shop-topbar .woocommerce-ordering select {
	min-width: 220px;
	height: 4rem;
	padding: 0 1.2rem;
	border: 1px solid #ddd;
	background: #fff;
	color: #666;
	font-size: 1.4rem;
}

.zuri-shop-view-toggle {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
}

.zuri-toggle-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3.8rem;
	height: 3.8rem;
	padding: 0;
	border: 1px solid #ddd;
	background: #fff;
	color: #777;
	cursor: pointer;
	transition: all .25s ease;
}

.zuri-toggle-btn svg {
	width: 1.8rem;
	height: 1.8rem;
	fill: currentColor;
}

.zuri-toggle-btn:hover,
.zuri-toggle-btn:focus,
.zuri-toggle-btn.is-active {
	border-color: #222;
	background: #222;
	color: #fff;
}

.zuri-shop-layout {
	display: grid;
	grid-template-columns: 280px minmax(0, 1fr);
	gap: 4rem;
	align-items: start;
}

.zuri-shop-sidebar {
	min-width: 0;
	padding: 2.4rem;
	border: 1px solid #ebebeb;
	background: #fff;
}

.zuri-shop-products {
	min-width: 0;
}

.zuri-shop-sidebar .widget,
.zuri-shop-sidebar .wp-block-group,
.zuri-shop-sidebar .wc-blocks-filter-wrapper {
	margin-bottom: 3rem;
	padding-bottom: 3rem;
	border-bottom: 1px solid #ebebeb;
}

.zuri-shop-sidebar .widget:last-child,
.zuri-shop-sidebar .wp-block-group:last-child,
.zuri-shop-sidebar .wc-blocks-filter-wrapper:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: 0;
}

.zuri-shop-sidebar .widget-title,
.zuri-shop-sidebar .wp-block-heading {
	margin-bottom: 1.6rem;
	color: #222;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.zuri-shop-sidebar ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.zuri-shop-sidebar li {
	margin-bottom: .9rem;
	color: #777;
	font-size: 1.4rem;
}

.zuri-shop-sidebar a {
	color: #666;
	text-decoration: none;
}

.zuri-shop-sidebar a:hover,
.zuri-shop-sidebar a:focus {
	color: #c96;
}

.zuri-shop-products ul.products {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 4rem 2.8rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.zuri-shop-products ul.products::before,
.zuri-shop-products ul.products::after {
	display: none !important;
	content: none !important;
}

.zuri-shop-products ul.products li.product {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	clear: none !important;
}

.zuri-shop-products li.product {
	position: relative;
	min-width: 0;
	background: #fff;
	text-align: center;
	transition: transform .25s ease;
}

.zuri-shop-products li.product:hover {
	transform: translateY(-2px);
}

.zuri-shop-products li.product a.woocommerce-LoopProduct-link {
	display: block;
	color: inherit;
	text-decoration: none;
}

.zuri-shop-products li.product a.woocommerce-LoopProduct-link > img,
.zuri-shop-products li.product img.attachment-woocommerce_thumbnail {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1.08;
	height: auto;
	object-fit: cover;
	margin: 0 0 1.8rem !important;
	border-radius: .6rem;
	background: #f7f7f7;
}

.zuri-shop-products li.product .woocommerce-loop-product__title {
	margin: 0 0 .7rem;
	padding: 0;
	color: #333;
	font-size: 1.45rem;
	font-weight: 400;
	line-height: 1.45;
}

.zuri-shop-products li.product .price {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: .8rem;
	margin: 0 0 1.4rem;
	color: #333;
	font-size: 1.45rem;
	font-weight: 500;
	line-height: 1.4;
}

.zuri-shop-products li.product .price del {
	color: #aaa;
	font-weight: 400;
	opacity: 1;
}

.zuri-shop-products li.product .price ins {
	color: #c96;
	text-decoration: none;
}

.zuri-shop-products li.product .star-rating {
	margin: 0 auto 1.4rem;
}

.zuri-shop-products li.product .button,
.zuri-shop-products li.product .added_to_cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 4rem;
	padding: 1.1rem 2rem;
	border: 1px solid #222;
	border-radius: 0;
	background: #222;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1;
	text-transform: uppercase;
	text-decoration: none;
	transition: all .25s ease;
}

.zuri-shop-products li.product .button:hover,
.zuri-shop-products li.product .button:focus,
.zuri-shop-products li.product .added_to_cart:hover,
.zuri-shop-products li.product .added_to_cart:focus {
	border-color: #c96;
	background: #c96;
	color: #fff;
}

.zuri-shop-products li.product .onsale {
	top: 1.2rem;
	left: 1.2rem;
	right: auto;
	min-width: 4.8rem;
	min-height: 4.8rem;
	margin: 0;
	border-radius: 50%;
	background: #ef837b;
	color: #fff;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 4.8rem;
	text-align: center;
}

.zuri-shop-archive.zuri-shop-view-list .zuri-shop-products ul.products,
body.zuri-shop-view-list .zuri-shop-products ul.products {
	display: block;
}

.zuri-shop-archive.zuri-shop-view-list .zuri-shop-products ul.products li.product,
body.zuri-shop-view-list .zuri-shop-products ul.products li.product {
	display: grid;
	grid-template-columns: 280px minmax(0, 1fr);
	gap: 2.8rem;
	align-items: center;
	margin-bottom: 3.5rem !important;
	text-align: left;
}

.zuri-shop-archive.zuri-shop-view-list .zuri-shop-products li.product .price,
body.zuri-shop-view-list .zuri-shop-products li.product .price {
	justify-content: flex-start;
}

.zuri-shop-archive.zuri-shop-view-list .zuri-shop-products li.product .star-rating,
body.zuri-shop-view-list .zuri-shop-products li.product .star-rating {
	margin-left: 0;
}

.zuri-shop-products .woocommerce-pagination {
	margin-top: 5rem;
	text-align: center;
}

.zuri-shop-products .woocommerce-pagination ul {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
	margin: 0;
	padding: 0;
	border: 0;
}

.zuri-shop-products .woocommerce-pagination li {
	border: 0;
}

.zuri-shop-products .woocommerce-pagination a,
.zuri-shop-products .woocommerce-pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 3.8rem;
	height: 3.8rem;
	border: 1px solid #ddd;
	color: #666;
	text-decoration: none;
}

.zuri-shop-products .woocommerce-pagination .current,
.zuri-shop-products .woocommerce-pagination a:hover,
.zuri-shop-products .woocommerce-pagination a:focus {
	border-color: #222;
	background: #222;
	color: #fff;
}

@media (max-width: 1199.98px) {
	.zuri-shop-layout {
		grid-template-columns: 250px minmax(0, 1fr);
		gap: 3rem;
	}

	.zuri-shop-products ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 3rem 2rem;
	}
}

@media (max-width: 991.98px) {
	.zuri-shop-container {
		width: min(100% - 3rem, 1500px);
		padding-top: 4rem;
	}

	.zuri-shop-layout {
		display: block;
	}

	.zuri-shop-sidebar {
		margin-bottom: 3rem;
	}

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

	.zuri-shop-archive.zuri-shop-view-list .zuri-shop-products ul.products li.product,
	body.zuri-shop-view-list .zuri-shop-products ul.products li.product {
		display: block;
		text-align: center;
	}

	.zuri-shop-archive.zuri-shop-view-list .zuri-shop-products li.product .price,
	body.zuri-shop-view-list .zuri-shop-products li.product .price {
		justify-content: center;
	}
}

@media (max-width: 767.98px) {
	.zuri-shop-topbar {
		flex-direction: column;
		align-items: stretch;
	}

	.zuri-shop-topbar-left,
	.zuri-shop-topbar-right {
		justify-content: space-between;
	}

	.zuri-shop-products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2.4rem 1.6rem;
	}
}

@media (max-width: 575.98px) {
	.zuri-shop-container {
		width: min(100% - 2rem, 1500px);
	}

	.zuri-shop-header .page-title {
		font-size: 3.2rem;
	}

	.zuri-shop-sidebar {
		padding: 2rem;
	}

	.zuri-shop-topbar-left,
	.zuri-shop-topbar-right {
		flex-direction: column;
		align-items: stretch;
	}

	.zuri-shop-topbar .woocommerce-ordering select {
		width: 100%;
	}

	.zuri-shop-products li.product .button,
	.zuri-shop-products li.product .added_to_cart {
		width: 100%;
		padding-left: 1rem;
		padding-right: 1rem;
	}
}
