/**
 * Catalog refresh: compact discovery, visual categories and consistent product cards.
 */

body.sansara-catalog-refresh {
	background:
		radial-gradient(circle at 8% 6%, rgba(28, 194, 187, .08), transparent 24rem),
		#fbfcfa;
}

body.sansara-catalog-refresh .woocommerce-shell {
	padding-block: 30px 88px;
}

body.sansara-catalog-refresh .page-title,
body.sansara-catalog-refresh > .woocommerce-result-count,
body.sansara-catalog-refresh .woocommerce-shell > .woocommerce-result-count,
body.sansara-catalog-refresh .woocommerce-shell > .woocommerce-ordering,
body.sansara-catalog-refresh .sansara-catalog-toolbar {
	display: none !important;
}

.sansara-catalog-intro {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 28px;
	margin: 0 0 24px;
	border: 1px solid #e1e8e5;
	border-radius: 26px;
	padding: 31px 34px;
	background:
		linear-gradient(118deg, rgba(255,255,255,.96), rgba(243,249,247,.93)),
		#f5f7f4;
	box-shadow: 0 18px 48px rgba(20, 58, 61, .08);
}

.sansara-catalog-intro::before,
.sansara-catalog-intro::after {
	content: "";
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	pointer-events: none;
}

.sansara-catalog-intro::before {
	width: 240px;
	height: 240px;
	right: -76px;
	top: -130px;
	border: 1px solid rgba(8, 126, 123, .13);
}

.sansara-catalog-intro::after {
	width: 170px;
	height: 170px;
	right: 80px;
	bottom: -132px;
	background: rgba(24, 196, 188, .13);
	filter: blur(1px);
}

.sansara-catalog-intro.has-category-hero {
	display: none;
}

.sansara-catalog-intro__eyebrow {
	display: block;
	margin-bottom: 8px;
	color: #087e7b;
	font-size: 10px;
	font-weight: 950;
	letter-spacing: .17em;
	text-transform: uppercase;
}

.sansara-catalog-intro h1 {
	max-width: 760px;
	margin: 0;
	color: #10292b;
	font-size: clamp(36px, 4.2vw, 58px);
	font-weight: 950;
	letter-spacing: -.055em;
	line-height: .98;
}

.sansara-catalog-intro p {
	max-width: 660px;
	margin: 13px 0 0;
	color: #5f7071;
	font-size: 14px;
	line-height: 1.5;
}

.sansara-catalog-intro__status {
	position: relative;
	z-index: 2;
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 40px;
	border: 1px solid rgba(8, 126, 123, .14);
	border-radius: 999px;
	padding: 0 15px;
	background: rgba(255,255,255,.86);
	color: #214547;
	font-size: 11px;
	font-weight: 850;
	box-shadow: 0 8px 24px rgba(20, 58, 61, .07);
}

.sansara-catalog-intro__status i,
.sansara-catalog-toolbar__result span i {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #2abd80;
	box-shadow: 0 0 0 5px rgba(42, 189, 128, .12);
}

body.sansara-catalog-refresh .sansara-shop-tools {
	display: grid !important;
	clear: both;
	gap: 12px;
	margin: 0 0 22px;
}

.sansara-category-heading {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 20px;
	padding-inline: 2px;
}

.sansara-category-heading strong {
	color: #173638;
	font-size: 17px;
	letter-spacing: -.02em;
}

.sansara-category-heading span {
	color: #7a8989;
	font-size: 11px;
}

body.sansara-catalog-refresh .sansara-category-rail {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px;
	overflow: visible;
	padding: 0;
	scrollbar-width: none;
}

.sansara-category-card-link {
	position: relative;
	overflow: hidden;
	display: grid !important;
	grid-template-columns: 72px minmax(0, 1fr);
	align-items: center;
	gap: 4px;
	min-width: 0;
	min-height: 96px !important;
	border: 1px solid #e2e9e6 !important;
	border-radius: 19px !important;
	padding: 8px 12px 8px 8px !important;
	background: #fff !important;
	color: #173638 !important;
	box-shadow: 0 9px 25px rgba(20, 58, 61, .05);
	transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}

.sansara-category-card-link:hover,
.sansara-category-card-link:focus-visible {
	border-color: #6acdc8 !important;
	box-shadow: 0 14px 30px rgba(20, 94, 91, .10);
	transform: translateY(-2px);
}

.sansara-category-card-link.is-active {
	border-color: #12b8b2 !important;
	background: #edfafa !important;
	box-shadow: inset 0 0 0 1px rgba(18, 184, 178, .12), 0 12px 28px rgba(20, 94, 91, .10);
}

.sansara-category-card-link__media {
	overflow: hidden;
	display: grid;
	width: 66px;
	height: 78px;
	place-items: center;
	border-radius: 15px;
	background: linear-gradient(145deg, #f2f8f7, #fbf7ef);
	color: #087e7b;
	font-size: 25px;
	font-weight: 950;
}

.sansara-category-card-link__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	mix-blend-mode: multiply;
}

.sansara-category-card-link__media.is-all {
	background: linear-gradient(145deg, #173638, #078d89);
	color: #fff;
	font-size: 28px;
}

.sansara-category-card-link__media.is-icon {
	background: linear-gradient(145deg, #e2f7f5, #f6efe6);
	font-size: 34px;
}

.sansara-category-card-link__label {
	min-width: 0;
	overflow-wrap: anywhere;
	font-size: 12px;
	font-weight: 900;
	line-height: 1.1;
}

.sansara-catalog-controls {
	position: relative;
	z-index: 30;
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-top: 5px;
	border: 1px solid #e1e8e5;
	border-radius: 18px;
	padding: 11px 12px 11px 18px;
	background: rgba(255,255,255,.92);
	box-shadow: 0 10px 28px rgba(20, 58, 61, .06);
}

.sansara-catalog-toolbar__result {
	display: grid;
	gap: 2px;
}

.sansara-catalog-toolbar__result strong {
	color: #173638;
	font-size: 12px;
	font-weight: 800;
}

.sansara-catalog-toolbar__result strong b {
	margin-right: 3px;
	font-size: 19px;
	letter-spacing: -.04em;
}

.sansara-catalog-toolbar__result span {
	display: flex;
	align-items: center;
	gap: 7px;
	color: #728182;
	font-size: 9px;
}

.sansara-catalog-toolbar__result span i {
	width: 6px;
	height: 6px;
	box-shadow: none;
}

body.sansara-catalog-refresh .sansara-mobile-tool-row {
	display: flex;
	align-items: center;
	gap: 8px;
}

body.sansara-catalog-refresh .sansara-filter-panel,
body.sansara-catalog-refresh .sansara-sort-panel {
	position: relative;
	min-width: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

body.sansara-catalog-refresh .sansara-filter-panel[open],
body.sansara-catalog-refresh .sansara-sort-panel[open] {
	grid-column: auto;
}

body.sansara-catalog-refresh .sansara-filter-panel summary,
body.sansara-catalog-refresh .sansara-sort-panel summary {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-height: 46px;
	border: 1px solid #dce6e3;
	border-radius: 13px;
	padding: 0 15px;
	background: #f6f9f8;
	color: #173638;
	font-size: 11px;
	font-weight: 900;
	list-style: none;
	cursor: pointer;
	transition: border-color .18s ease, background .18s ease;
}

body.sansara-catalog-refresh .sansara-filter-panel summary:hover,
body.sansara-catalog-refresh .sansara-sort-panel summary:hover,
body.sansara-catalog-refresh details[open] > summary {
	border-color: #73cfca;
	background: #edf8f7;
}

body.sansara-catalog-refresh summary::-webkit-details-marker {
	display: none;
}

body.sansara-catalog-refresh .sansara-filter-panel summary::before {
	content: "≡";
	color: #087e7b;
	font-size: 17px;
	font-weight: 950;
	transform: rotate(90deg);
}

body.sansara-catalog-refresh .sansara-filter-panel summary::after,
body.sansara-catalog-refresh .sansara-sort-panel summary::after {
	content: "⌄";
	color: #087e7b;
	font-size: 14px;
}

body.sansara-catalog-refresh details[open] > summary::after {
	content: "⌃";
}

body.sansara-catalog-refresh .sansara-filter-panel summary b {
	display: grid;
	min-width: 20px;
	height: 20px;
	place-items: center;
	margin: 0;
	border-radius: 50%;
	background: #13bdb8;
	color: #fff;
	font-size: 9px;
}

body.sansara-catalog-refresh .sansara-sort-panel summary small {
	max-width: 130px;
	overflow: hidden;
	color: #6e7e7e;
	font-size: 9px;
	font-weight: 750;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.sansara-catalog-refresh .sansara-filter-panel form,
body.sansara-catalog-refresh .sansara-sort-panel form {
	position: absolute;
	z-index: 50;
	right: 0;
	top: calc(100% + 8px);
	display: grid;
	border: 1px solid #dce6e3;
	border-radius: 17px;
	padding: 16px;
	background: #fff;
	box-shadow: 0 24px 60px rgba(20, 58, 61, .18);
}

body.sansara-catalog-refresh .sansara-filter-panel form {
	width: 390px;
	gap: 14px;
}

body.sansara-catalog-refresh .sansara-sort-panel form {
	width: 290px;
	gap: 2px;
}

body.sansara-catalog-refresh .sansara-price-fields {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

body.sansara-catalog-refresh .sansara-price-fields label {
	display: grid;
	gap: 6px;
	color: #667677;
	font-size: 9px;
	font-weight: 850;
	text-transform: uppercase;
	letter-spacing: .06em;
}

body.sansara-catalog-refresh .sansara-price-fields input {
	width: 100%;
	height: 45px;
	border: 1px solid #dce6e3;
	border-radius: 11px;
	padding: 0 12px;
	background: #f8faf9;
	color: #173638;
	font-size: 13px;
	font-weight: 800;
	outline: none;
}

body.sansara-catalog-refresh .sansara-price-fields input:focus {
	border-color: #12b8b2;
	box-shadow: 0 0 0 3px rgba(18, 184, 178, .10);
}

body.sansara-catalog-refresh .sansara-stock-toggle {
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 42px;
	color: #173638;
	font-size: 11px;
	font-weight: 800;
}

body.sansara-catalog-refresh .sansara-stock-toggle input {
	width: 19px;
	height: 19px;
	accent-color: #0a9792;
}

body.sansara-catalog-refresh .sansara-filter-actions {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 8px;
}

body.sansara-catalog-refresh .sansara-filter-actions button,
body.sansara-catalog-refresh .sansara-sort-panel form button {
	min-height: 44px;
	border: 0;
	border-radius: 11px;
	padding-inline: 16px;
	background: #14bbb5;
	color: #fff;
	font-size: 11px;
	font-weight: 900;
	cursor: pointer;
}

body.sansara-catalog-refresh .sansara-filter-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 11px;
	padding: 0 12px;
	background: #eef4f3;
	color: #456162;
	font-size: 10px;
	font-weight: 850;
}

body.sansara-catalog-refresh .sansara-sort-panel form label {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 42px;
	border-bottom: 1px solid #edf1ef;
	color: #334f50;
	font-size: 11px;
	font-weight: 800;
}

body.sansara-catalog-refresh .sansara-sort-panel form input {
	width: 18px;
	height: 18px;
	accent-color: #0a9792;
}

body.sansara-catalog-refresh.woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 15px !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.sansara-catalog-refresh.woocommerce ul.products::before,
body.sansara-catalog-refresh.woocommerce ul.products::after {
	display: none !important;
}

body.sansara-catalog-refresh.woocommerce ul.products li.product {
	position: relative;
	float: none !important;
	display: flex !important;
	width: auto !important;
	min-width: 0;
	height: 100%;
	flex-direction: column;
	overflow: hidden;
	margin: 0 !important;
	border: 1px solid #dfe8e5;
	border-radius: 19px;
	padding: 0 0 12px !important;
	background: #fff;
	box-shadow: 0 10px 30px rgba(20, 58, 61, .06);
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

body.sansara-catalog-refresh.woocommerce ul.products li.product:hover {
	border-color: #a9d8d4;
	box-shadow: 0 18px 40px rgba(20, 78, 75, .10);
	transform: translateY(-2px);
}

body.sansara-catalog-refresh.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link {
	display: flex !important;
	min-width: 0;
	flex: 1 1 auto;
	flex-direction: column;
	color: #10282a;
}

body.sansara-catalog-refresh.woocommerce ul.products li.product a img {
	order: -2;
	display: block;
	width: 100% !important;
	height: 224px !important;
	margin: 0 !important;
	border-radius: 0;
	padding: 17px;
	background: linear-gradient(145deg, #f3f7f6, #f9f6f1);
	object-fit: contain;
	transition: transform .2s ease;
}

body.sansara-catalog-refresh.woocommerce ul.products li.product:hover a img {
	transform: scale(1.025);
}

body.sansara-catalog-refresh.woocommerce ul.products li.product .woocommerce-loop-product__title {
	min-height: 50px;
	margin: 0;
	padding: 15px 15px 0 !important;
	color: #10282a;
	font-size: 14px !important;
	font-weight: 900;
	letter-spacing: -.025em;
	line-height: 1.25;
}

body.sansara-catalog-refresh .sansara-card-colors {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px;
	min-height: 17px;
	margin: 9px 15px 0;
}

body.sansara-catalog-refresh .sansara-card-colors i {
	width: 14px;
	height: 14px;
	border: 2px solid #fff;
	border-radius: 50%;
	background: var(--sansara-swatch, #dce5e4);
	box-shadow: 0 0 0 1px #cad6d4;
}

body.sansara-catalog-refresh .sansara-card-colors small {
	display: inline-flex;
	color: #637474;
	font-size: 8px;
	font-weight: 900;
}

body.sansara-catalog-refresh .sansara-card-availability {
	display: flex;
	flex-wrap: wrap;
	gap: 3px 8px;
	margin: 8px 15px 0;
}

body.sansara-catalog-refresh .sansara-card-availability span {
	color: #278a45;
	font-size: 9px;
	font-weight: 850;
}

body.sansara-catalog-refresh .sansara-card-availability small {
	color: #829090;
	font-size: 8px;
}

body.sansara-catalog-refresh.woocommerce ul.products li.product .price {
	display: flex !important;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 3px 5px;
	margin: 12px 15px 0 !important;
	color: #10282a !important;
	font-size: 21px !important;
	font-weight: 950 !important;
	letter-spacing: -.035em;
	line-height: 1.05;
}

body.sansara-catalog-refresh li.product-type-variable .price > .amount:nth-of-type(n+2),
body.sansara-catalog-refresh li.product-type-variable .price > span[aria-hidden="true"]:not(.amount) {
	display: none !important;
}

body.sansara-catalog-refresh li.product-type-variable .price > .amount:first-of-type::before {
	content: "от ";
	color: #6f7f7f;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 0;
}

body.sansara-catalog-refresh .sansara-card-payment {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 3px 5px;
	margin: 7px 15px 0;
	color: #738283;
	font-size: 9px;
}

body.sansara-catalog-refresh .sansara-card-payment strong {
	color: #087e7b;
	font-size: 11px;
	font-weight: 950;
}

body.sansara-catalog-refresh .sansara-card-payment > span {
	color: #829090;
	font-size: 8px;
}

body.sansara-catalog-refresh.woocommerce ul.products li.product > .button,
body.sansara-catalog-refresh.woocommerce ul.products li.product > .added_to_cart {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto;
	min-height: 45px;
	margin: 12px 12px 0 !important;
	border: 0;
	border-radius: 12px;
	padding: 0 12px !important;
	background: #16bbb5 !important;
	color: #fff !important;
	font-size: 11px !important;
	font-weight: 900 !important;
	line-height: 1.1 !important;
	text-align: center;
	box-shadow: none;
}

body.sansara-catalog-refresh.woocommerce ul.products li.product > .button:hover {
	background: #087e7b !important;
}

body.sansara-catalog-refresh .sansara-gift {
	z-index: 4;
	left: 9px;
	top: 9px;
	border: 1px solid rgba(8, 126, 123, .12);
	border-radius: 999px;
	padding: 5px 7px;
	background: rgba(255,255,255,.94);
	color: #087e7b;
	font-size: 8px;
	font-weight: 950;
	box-shadow: 0 6px 16px rgba(20, 58, 61, .08);
}

body.sansara-catalog-refresh.woocommerce nav.woocommerce-pagination {
	margin-top: 34px;
}

body.sansara-catalog-refresh.woocommerce nav.woocommerce-pagination ul {
	display: flex;
	justify-content: center;
	gap: 6px;
}

body.sansara-catalog-refresh.woocommerce nav.woocommerce-pagination ul li {
	margin: 0;
}

body.sansara-catalog-refresh.woocommerce nav.woocommerce-pagination ul li a,
body.sansara-catalog-refresh.woocommerce nav.woocommerce-pagination ul li span {
	display: grid;
	min-width: 40px;
	height: 40px;
	place-items: center;
	border: 1px solid #dce6e3;
	border-radius: 12px;
	padding: 0;
	background: #fff;
	color: #173638;
	font-size: 11px;
	font-weight: 900;
}

body.sansara-catalog-refresh.woocommerce nav.woocommerce-pagination ul li span.current {
	border-color: #12b8b2;
	background: #12b8b2;
	color: #fff;
}

@media (max-width: 1100px) {
	body.sansara-catalog-refresh.woocommerce ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}

	.sansara-category-card-link {
		grid-template-columns: 58px minmax(0, 1fr);
		padding: 7px !important;
	}

	.sansara-category-card-link__media {
		width: 54px;
		height: 72px;
	}
}

@media (max-width: 720px) {
	body.sansara-catalog-refresh {
		background: #fbfcfa;
	}

	body.sansara-catalog-refresh .woocommerce-shell {
		width: calc(100% - 24px);
		padding-block: 12px 34px;
	}

	.sansara-catalog-intro {
		display: grid;
		gap: 14px;
		margin-bottom: 18px;
		border-radius: 20px;
		padding: 21px 20px;
		box-shadow: 0 12px 32px rgba(20, 58, 61, .07);
	}

	.sansara-catalog-intro.has-category-hero {
		display: none;
	}

	.sansara-catalog-intro::before {
		width: 170px;
		height: 170px;
		right: -80px;
		top: -100px;
	}

	.sansara-catalog-intro::after {
		width: 120px;
		height: 120px;
		right: 10px;
		bottom: -94px;
	}

	.sansara-catalog-intro__eyebrow {
		margin-bottom: 6px;
		font-size: 8px;
	}

	.sansara-catalog-intro h1 {
		max-width: 305px;
		font-size: 31px;
		line-height: 1;
	}

	.sansara-catalog-intro p {
		max-width: 300px;
		margin-top: 9px;
		font-size: 11px;
		line-height: 1.45;
	}

	.sansara-catalog-intro__status {
		width: max-content;
		min-height: 34px;
		padding: 0 12px;
		font-size: 9px;
	}

	body.sansara-catalog-refresh .sansara-shop-tools {
		gap: 9px;
		margin-bottom: 14px;
	}

	.sansara-category-heading {
		padding-inline: 0;
	}

	.sansara-category-heading strong {
		font-size: 15px;
	}

	.sansara-category-heading span {
		font-size: 9px;
	}

	body.sansara-catalog-refresh .sansara-category-rail {
		display: flex;
		gap: 8px;
		margin-inline: -12px;
		overflow-x: auto;
		padding: 2px 12px 5px;
		scroll-snap-type: x proximity;
	}

	.sansara-category-card-link {
		flex: 0 0 82px;
		display: grid !important;
		grid-template-columns: 1fr;
		grid-template-rows: 58px auto;
		gap: 5px;
		min-height: 91px !important;
		border-radius: 16px !important;
		padding: 6px !important;
		text-align: center;
		scroll-snap-align: start;
	}

	.sansara-category-card-link:hover {
		transform: none;
	}

	.sansara-category-card-link__media {
		width: 100%;
		height: 58px;
		border-radius: 12px;
		font-size: 21px;
	}

	.sansara-category-card-link__media.is-icon {
		font-size: 28px;
	}

	.sansara-category-card-link__label {
		font-size: 9px;
		line-height: 1;
	}

	.sansara-catalog-controls {
		z-index: 35;
		display: grid !important;
		gap: 9px;
		margin-top: 2px;
		border-radius: 15px;
		padding: 10px;
	}

	.sansara-catalog-toolbar__result {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0 3px;
	}

	.sansara-catalog-toolbar__result strong b {
		font-size: 17px;
	}

	.sansara-catalog-toolbar__result span {
		font-size: 8px;
	}

	body.sansara-catalog-refresh .sansara-mobile-tool-row {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 7px;
	}

	body.sansara-catalog-refresh .sansara-filter-panel[open],
	body.sansara-catalog-refresh .sansara-sort-panel[open] {
		grid-column: 1 / -1;
	}

	body.sansara-catalog-refresh .sansara-filter-panel summary,
	body.sansara-catalog-refresh .sansara-sort-panel summary {
		min-height: 43px;
		padding: 0 11px;
		font-size: 10px;
	}

	body.sansara-catalog-refresh .sansara-sort-panel summary small {
		max-width: 72px;
		font-size: 7px;
	}

	body.sansara-catalog-refresh .sansara-filter-panel form,
	body.sansara-catalog-refresh .sansara-sort-panel form {
		position: static;
		width: 100%;
		margin-top: 7px;
		border-radius: 13px;
		padding: 12px;
		box-shadow: none;
	}

	body.sansara-catalog-refresh .sansara-price-fields input {
		height: 42px;
		font-size: 11px;
	}

	body.sansara-catalog-refresh .sansara-filter-actions button,
	body.sansara-catalog-refresh .sansara-sort-panel form button {
		min-height: 43px;
	}

	body.sansara-catalog-refresh.woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 8px !important;
	}

	body.sansara-catalog-refresh.woocommerce ul.products li.product {
		display: flex !important;
		grid-template-columns: none !important;
		overflow: hidden;
		border-radius: 15px;
		padding-bottom: 9px !important;
	}

	body.sansara-catalog-refresh.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link {
		display: flex !important;
		grid-template-columns: none !important;
	}

	body.sansara-catalog-refresh.woocommerce ul.products li.product a img {
		width: 100% !important;
		height: 154px !important;
		border-radius: 0;
		padding: 10px;
	}

	body.sansara-catalog-refresh.woocommerce ul.products li.product:hover a img {
		transform: none;
	}

	body.sansara-catalog-refresh.woocommerce ul.products li.product .woocommerce-loop-product__title {
		min-height: 47px;
		padding: 11px 10px 0 !important;
		font-size: 12px !important;
		line-height: 1.22;
	}

	body.sansara-catalog-refresh .sansara-card-colors {
		gap: 3px;
		min-height: 14px;
		margin: 7px 10px 0;
	}

	body.sansara-catalog-refresh .sansara-card-colors i {
		width: 12px;
		height: 12px;
	}

	body.sansara-catalog-refresh .sansara-card-availability {
		margin: 6px 10px 0;
	}

	body.sansara-catalog-refresh .sansara-card-availability span {
		font-size: 8px;
	}

	body.sansara-catalog-refresh .sansara-card-availability small {
		display: none;
	}

	body.sansara-catalog-refresh.woocommerce ul.products li.product .price {
		margin: 9px 10px 0 !important;
		font-size: 18px !important;
	}

	body.sansara-catalog-refresh li.product-type-variable .price > .amount:first-of-type::before {
		font-size: 8px;
	}

	body.sansara-catalog-refresh .sansara-card-payment {
		display: grid;
		grid-template-columns: auto 1fr;
		gap: 2px 4px;
		margin: 6px 10px 0;
		font-size: 8px;
	}

	body.sansara-catalog-refresh .sansara-card-payment strong {
		font-size: 10px;
	}

	body.sansara-catalog-refresh .sansara-card-payment > span {
		grid-column: 1 / -1;
		font-size: 7px;
	}

	body.sansara-catalog-refresh.woocommerce ul.products li.product > .button,
	body.sansara-catalog-refresh.woocommerce ul.products li.product > .added_to_cart {
		min-height: 43px;
		margin: 9px 9px 0 !important;
		border-radius: 11px;
		padding: 0 6px !important;
		font-size: 10px !important;
	}

	body.sansara-catalog-refresh .sansara-gift {
		left: 7px;
		top: 7px;
		padding: 4px 6px;
		font-size: 7px;
	}

	body.sansara-catalog-refresh.woocommerce nav.woocommerce-pagination {
		margin-top: 25px;
	}
}

@media (max-width: 390px) {
	body.sansara-catalog-refresh.woocommerce ul.products li.product a img {
		height: 142px !important;
	}

	body.sansara-catalog-refresh.woocommerce ul.products li.product .woocommerce-loop-product__title {
		min-height: 44px;
		font-size: 11.5px !important;
	}

	body.sansara-catalog-refresh.woocommerce ul.products li.product .price {
		font-size: 17px !important;
	}
}

/* Mobile catalog cleanup after the legacy archive rules. */
@media (max-width: 720px) {
	body.post-type-archive-product.sansara-catalog-refresh .sansara-catalog-intro {
		display: none !important;
	}

	body.sansara-catalog-refresh .sansara-category-rail .sansara-category-card-link {
		flex: 0 0 82px !important;
		width: 82px !important;
		min-width: 82px !important;
		max-width: 82px;
	}

	body.sansara-catalog-refresh .sansara-filter-panel summary,
	body.sansara-catalog-refresh .sansara-sort-panel summary {
		justify-content: flex-start;
		gap: 8px;
		border-color: #cfe1df;
		padding-inline: 12px;
		background: #fff;
		font-size: 10.5px;
	}

	body.sansara-catalog-refresh .sansara-filter-panel summary::before,
	body.sansara-catalog-refresh .sansara-sort-panel summary::before {
		display: grid;
		width: 23px;
		height: 23px;
		flex: 0 0 23px;
		place-items: center;
		border-radius: 8px;
		background: #e8f7f5;
		color: #087e7b;
		font-size: 13px;
		transform: none;
	}

	body.sansara-catalog-refresh .sansara-filter-panel summary::before {
		content: "☷";
	}

	body.sansara-catalog-refresh .sansara-sort-panel summary::before {
		content: "↕";
	}

	body.sansara-catalog-refresh .sansara-sort-panel summary small {
		display: none;
	}

	body.sansara-catalog-refresh .sansara-filter-panel summary::after,
	body.sansara-catalog-refresh .sansara-sort-panel summary::after {
		margin-left: auto;
	}
}
/* Mobile filters: one quiet utility row instead of a nested card. */
@media (max-width: 720px) {
	body.sansara-catalog-refresh .sansara-catalog-controls {
		grid-template-columns: auto minmax(0, 1fr);
		align-items: center;
		gap: 9px;
		margin-top: 3px;
		border: 0;
		border-top: 1px solid #dfe8e5;
		border-radius: 0;
		padding: 12px 0 0;
		background: transparent;
		box-shadow: none;
	}

	body.sansara-catalog-refresh .sansara-catalog-toolbar__result {
		display: block;
		padding: 0;
		white-space: nowrap;
	}

	body.sansara-catalog-refresh .sansara-catalog-toolbar__result strong {
		display: flex;
		align-items: baseline;
		gap: 3px;
		font-size: 9px;
	}

	body.sansara-catalog-refresh .sansara-catalog-toolbar__result strong b {
		margin: 0;
		font-size: 18px;
	}

	body.sansara-catalog-refresh .sansara-catalog-toolbar__result span {
		display: none;
	}

	body.sansara-catalog-refresh .sansara-mobile-tool-row {
		width: 100%;
		gap: 6px;
	}

	body.sansara-catalog-refresh .sansara-filter-panel summary,
	body.sansara-catalog-refresh .sansara-sort-panel summary {
		min-height: 42px;
		border-radius: 12px;
		padding-inline: 10px;
		box-shadow: none;
	}

	body.sansara-catalog-refresh .sansara-filter-panel summary {
		border-color: #173638;
		background: #173638;
		color: #fff;
	}

	body.sansara-catalog-refresh .sansara-filter-panel summary::before {
		background: rgba(255,255,255,.12);
		color: #75dfda;
	}

	body.sansara-catalog-refresh .sansara-sort-panel summary {
		border-color: #d3e2df;
		background: #fff;
	}

	body.sansara-catalog-refresh .sansara-filter-panel summary::after,
	body.sansara-catalog-refresh .sansara-sort-panel summary::after {
		display: none;
	}

	body.sansara-catalog-refresh .sansara-catalog-controls:has(details[open]) {
		grid-template-columns: 1fr;
	}

	body.sansara-catalog-refresh .sansara-catalog-controls:has(details[open]) .sansara-catalog-toolbar__result {
		display: none;
	}

	body.sansara-catalog-refresh .sansara-catalog-controls:has(details[open]) .sansara-mobile-tool-row {
		grid-column: 1 / -1;
	}
}
/* Keep the expanded mobile filter trigger readable. */
@media (max-width: 720px) {
	body.sansara-catalog-refresh .sansara-filter-panel[open] > summary {
		border-color: #173638;
		background: #173638;
		color: #fff;
	}

	body.sansara-catalog-refresh .sansara-filter-panel[open] > summary::before {
		background: rgba(255,255,255,.12);
		color: #75dfda;
	}
}
/* The primary mobile filter trigger keeps one stable colour in every state. */
@media (max-width: 720px) {
	body.sansara-catalog-refresh .sansara-filter-panel > summary:hover,
	body.sansara-catalog-refresh .sansara-filter-panel > summary:focus,
	body.sansara-catalog-refresh .sansara-filter-panel > summary:focus-visible,
	body.sansara-catalog-refresh .sansara-filter-panel[open] > summary:hover,
	body.sansara-catalog-refresh .sansara-filter-panel[open] > summary:focus-visible {
		border-color: #173638;
		background: #173638;
		color: #fff;
	}

	body.sansara-catalog-refresh .sansara-filter-panel > summary:hover::before,
	body.sansara-catalog-refresh .sansara-filter-panel > summary:focus-visible::before {
		background: rgba(255,255,255,.12);
		color: #75dfda;
	}
}
/* Closed filter is quiet mint; expanded filter remains dark and explicit. */
@media (max-width: 720px) {
	body.sansara-catalog-refresh .sansara-filter-panel:not([open]) > summary,
	body.sansara-catalog-refresh .sansara-filter-panel:not([open]) > summary:hover,
	body.sansara-catalog-refresh .sansara-filter-panel:not([open]) > summary:focus,
	body.sansara-catalog-refresh .sansara-filter-panel:not([open]) > summary:focus-visible {
		border-color: #b9dedb;
		background: #e9f7f5;
		color: #173638;
	}

	body.sansara-catalog-refresh .sansara-filter-panel:not([open]) > summary::before,
	body.sansara-catalog-refresh .sansara-filter-panel:not([open]) > summary:hover::before,
	body.sansara-catalog-refresh .sansara-filter-panel:not([open]) > summary:focus-visible::before {
		background: #d3efec;
		color: #087e7b;
	}
}
