/* Project-specific frontend corrections. */

.thsc-permit-entry {
	margin: 1rem 0;
	padding: 1rem;
	border: 1px solid #dedede;
	border-radius: 4px;
}

.thsc-permit-entry h4 {
	margin: 0 0 .75rem;
}

.thsc-tier-prices {
	margin: 1rem 0;
}

.thsc-tier-prices table {
	width: 100%;
	max-width: 420px;
	border-collapse: collapse;
}

.thsc-tier-prices td {
	padding: .4rem .65rem;
	border: 1px solid #dedede;
}

.thsc-shop-filters {
	width: 100%;
	margin: 0 0 2rem;
	padding: 1.25rem;
	border: 1px solid #e7e5df;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 10px 35px rgba(28, 31, 29, .06);
}

.thsc-filter-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}

.thsc-filter-head strong {
	display: block;
	color: #1d2924;
	font-size: 1.1rem;
}

.thsc-filter-head span {
	display: block;
	margin-top: .15rem;
	color: #68716d;
	font-size: .85rem;
}

.thsc-filter-fields {
	display: grid;
	grid-template-columns: repeat(4, minmax(145px, 1fr));
	gap: .9rem;
	align-items: end;
	margin-top: 1rem;
}

.thsc-shop-filters label > span {
	display: block;
	margin-bottom: .3rem;
	font-size: .9rem;
	font-weight: 600;
}

.thsc-shop-filters .thsc-filter-control {
	width: 100%;
	min-height: 46px;
	padding: 0 .8rem;
	border: 1px solid #d7dcd9;
	border-radius: 7px;
	background: #fff;
	color: #17201c;
}

.thsc-shop-filters .thsc-filter-check {
	display: flex;
	align-items: center;
	min-height: 42px;
}

.thsc-shop-filters .thsc-filter-check span {
	display: inline;
	margin: 0 0 0 .35rem;
}

.thsc-filter-actions {
	display: flex;
	gap: .75rem;
	align-items: center;
	grid-column: 1 / -1;
}

.thsc-filter-actions .button,
.thsc-filter-toggle {
	min-height: 46px;
	padding: .75rem 1.2rem;
	border: 0;
	border-radius: 7px;
	background: #0b8064;
	color: #fff;
	font-weight: 700;
	letter-spacing: .02em;
}

.thsc-filter-actions a {
	color: #44514b;
	font-weight: 600;
}

.thsc-filter-toggle { display: none; }

/* The 2023 archive template contains a complete second filter/sidebar. */
.post-type-archive-product .elementor-element-5b34ed5,
.tax-product_cat .elementor-element-5b34ed5,
.search-results .elementor-element-5b34ed5,
.post-type-archive-product .elementor-element-3ad1c0a,
.tax-product_cat .elementor-element-3ad1c0a,
.search-results .elementor-element-3ad1c0a,
.jet-filters-pagination__load-more {
	display: none !important;
}

.post-type-archive-product .elementor-element-70f50a7,
.tax-product_cat .elementor-element-70f50a7,
.search-results .elementor-element-70f50a7 {
	width: 100% !important;
}

/* Calm, touch-friendly product cards inspired by specialist retail. */
.jet-woo-products.jet-equal-cols .jet-woo-products__item {
	padding: 10px;
}

.jet-woo-products .jet-woo-products__inner-box {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	min-height: 490px;
	overflow: hidden !important;
	border: 1px solid #e8e6df;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 8px 28px rgba(25, 32, 29, .06);
	transition: transform .2s ease, box-shadow .2s ease;
}

.jet-woo-products .jet-woo-products__inner-box:hover {
	transform: translateY(-3px);
	box-shadow: 0 15px 38px rgba(25, 32, 29, .11);
}

.jet-woo-products .jet-woo-products__thumb-wrap,
.jet-woo-products .jet-woo-product-thumbnail {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 210px !important;
	padding: 14px;
	background: #f8f8f5;
}

.jet-woo-products .jet-woo-product-thumbnail a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.jet-woo-products .jet-woo-product-thumbnail img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
}

.jet-woo-products .jet-woo-product-img-overlay,
.jet-woo-products .jet-woo-product-categories {
	display: none !important;
}

.jet-woo-products .jet-woo-products__item-content {
	display: flex !important;
	flex: 1;
	flex-direction: column;
	height: auto !important;
	min-height: 278px;
	padding: 18px !important;
	overflow: visible !important;
	text-align: left !important;
}

.jet-woo-products .jet-woo-product-title {
	display: -webkit-box;
	min-height: 3.15em;
	margin: 0 0 .7rem !important;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	color: #19231f;
	font-size: 1rem !important;
	font-weight: 700;
	line-height: 1.55;
}

.jet-woo-products .jet-woo-product-price {
	margin: 0 0 1rem !important;
	color: #111a16;
	font-size: 1.08rem !important;
	font-weight: 800;
}

.thsc-price-on-request {
	color: #6b3b19;
	font-size: .95rem;
}

.jet-woo-products .hovered-content {
	position: static !important;
	display: flex !important;
	flex: 1;
	flex-direction: column;
	justify-content: flex-end;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
}

.jet-woo-products .jet-woo-product-button {
	width: 100% !important;
	height: auto !important;
	margin: 0 0 .65rem !important;
}

.jet-woo-products .jet-woo-product-button .button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	min-height: 46px;
	border-radius: 7px !important;
	background: #153e32 !important;
	color: #fff !important;
	font-size: .78rem !important;
	font-weight: 800;
	letter-spacing: .06em;
}

.jet-woo-products .jet-woo-products-cqw-wrapper {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	align-items: stretch;
	width: 100% !important;
	pointer-events: auto !important;
}

.jet-woo-products .jet-woo-products-cqw-wrapper * {
	pointer-events: auto !important;
}

.jet-woo-products .jet-compare-button__container,
.jet-woo-products .jet-wishlist-button__container {
	display: block !important;
	width: 100% !important;
	height: 46px !important;
	margin: 0 !important;
}

.jet-woo-products .jet-compare-button__link,
.jet-woo-products .jet-wishlist-button__link,
.jet-woo-products .thsc-quick-view-button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	height: 46px !important;
	min-height: 46px;
	margin: 0 !important;
	padding: 0 .65rem !important;
	border: 1px solid #cfd7d3 !important;
	border-radius: 7px !important;
	background: #fff !important;
	color: #173d32 !important;
	font-size: .73rem !important;
	font-weight: 800;
	line-height: 1.1 !important;
	white-space: nowrap;
}

.jet-woo-products .jet-compare-button__link::before { content: "⇄"; font-size: 1.25rem; }
.jet-woo-products .jet-wishlist-button__link::before { content: "♡"; font-size: 1.35rem; }

.jet-woo-products .jet-compare-button__label,
.jet-woo-products .jet-wishlist-button__label,
.jet-woo-products .jet-compare-button__plane,
.jet-woo-products .jet-wishlist-button__plane {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
}

.woocommerce-ordering {
	margin-bottom: 1.25rem !important;
}

.woocommerce-ordering select {
	min-height: 44px;
	padding: 0 2.3rem 0 .8rem;
	border: 1px solid #d7dcd9;
	border-radius: 7px;
	background-color: #fff;
}

.thsc-compare-scroll {
	overflow-x: auto;
}

.thsc-compare-table {
	min-width: 720px;
}

.thsc-compare-table th,
.thsc-compare-table td {
	vertical-align: top;
}

.thsc-compare-table thead th:not(:first-child) {
	min-width: 190px;
	text-align: center;
}

.thsc-compare-table thead img {
	display: block;
	width: 150px;
	height: 150px;
	margin: 0 auto .5rem;
	object-fit: contain;
}

@media (max-width: 980px) {
	.thsc-filter-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
	.thsc-shop-filters { padding: 1rem; border-radius: 10px; }
	.thsc-filter-toggle { display: inline-flex; align-items: center; justify-content: center; }
	.thsc-filter-fields { display: none; grid-template-columns: 1fr; }
	.thsc-shop-filters.is-open .thsc-filter-fields { display: grid; }
	.thsc-filter-actions { position: sticky; bottom: 0; z-index: 2; padding: .75rem 0 0; background: #fff; }
	.thsc-filter-actions .button { flex: 1; }
	.jet-woo-products.jet-equal-cols .jet-woo-products__item {
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}
	.jet-woo-products .jet-woo-products__inner-box { min-height: 0; }
	.jet-woo-products .jet-woo-products__thumb-wrap,
	.jet-woo-products .jet-woo-product-thumbnail { height: 190px !important; }
	.jet-woo-products .jet-woo-products__item-content { min-height: 250px; padding: 16px !important; }
	.jet-woo-products .jet-woo-products-cqw-wrapper { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}

/* Tramm & Hinners Corporate Design -------------------------------------- */
:root {
	--th-forest: #20351a;
	--th-forest-deep: #152711;
	--th-orange: #c45d22;
	--th-cream: #fdfae2;
	--th-paper: #fffef7;
	--th-ink: #20251e;
	--th-line: #dedcc9;
}

body {
	background: var(--th-cream);
	color: var(--th-ink);
	font-family: "Segoe UI", Arial, sans-serif;
}

h1, h2, h3, h4, h5, h6,
.elementor-heading-title {
	color: var(--th-forest);
	font-family: "PT Sans Narrow", "Arial Narrow", sans-serif;
	font-weight: 700;
	letter-spacing: .015em;
}

a { color: var(--th-forest); }
a:hover, a:focus { color: var(--th-orange); }

.button, button, input[type="submit"],
.elementor-button, .woocommerce a.button, .woocommerce button.button {
	border-radius: 6px !important;
	background-color: var(--th-forest) !important;
	color: #fff !important;
	transition: background-color .18s ease, color .18s ease, transform .18s ease;
}

.button:hover, button:hover, input[type="submit"]:hover,
.elementor-button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover {
	background-color: var(--th-orange) !important;
	color: #fff !important;
}

#masthead {
	background: var(--th-cream);
	box-shadow: 0 3px 18px rgba(32, 53, 26, .09);
}

#masthead .elementor-element-8654f17 { background: var(--th-cream) !important; }
#masthead .elementor-element-6cd2e8a { background: var(--th-forest) !important; }
#masthead .elementor-element-6cd2e8a a { color: var(--th-cream) !important; }
#masthead .elementor-element-6cd2e8a a:hover,
#masthead .elementor-element-6cd2e8a .current-menu-item > a { color: #fff !important; background: var(--th-orange) !important; }

.jet-woo-products .jet-woo-products__inner-box {
	border-color: var(--th-line) !important;
	background: var(--th-paper) !important;
	box-shadow: 0 8px 28px rgba(32, 53, 26, .07) !important;
}

.jet-woo-products .jet-woo-products__inner-box:hover {
	border-color: rgba(196, 93, 34, .55) !important;
	box-shadow: 0 13px 34px rgba(32, 53, 26, .13) !important;
}

.jet-woo-products .jet-woo-products__title a,
.jet-woo-products .jet-woo-product-title a { color: var(--th-forest) !important; }

.jet-woo-products .jet-compare-button__link,
.jet-woo-products .jet-wishlist-button__link,
.jet-woo-products .thsc-quick-view-button {
	border-color: var(--th-line) !important;
	color: var(--th-forest) !important;
}

.jet-woo-products .jet-compare-button__link:hover,
.jet-woo-products .jet-wishlist-button__link:hover,
.jet-woo-products .thsc-quick-view-button:hover {
	border-color: var(--th-orange) !important;
	background: var(--th-orange) !important;
	color: #fff !important;
}

.thsc-shop-filters { border-color: var(--th-line); background: var(--th-paper); }

@media (max-width: 767px) {
	body { overflow-x: hidden; }

	#masthead {
		position: sticky;
		top: 0;
		z-index: 9990;
	}

	body.admin-bar #masthead { top: 46px; }

	#masthead .elementor-element-8654f17 {
		padding: 8px 12px !important;
		transition: padding .24s ease;
	}

	#masthead .elementor-element-8654f17 > .elementor-container {
		display: flex !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		gap: 7px 0;
	}

	#masthead .elementor-element-6971ae9 {
		order: 1;
		width: 100% !important;
		max-height: 96px;
		overflow: hidden;
		opacity: 1;
		transition: max-height .24s ease, opacity .18s ease, transform .24s ease, margin .24s ease;
	}

	#masthead .elementor-element-a12a036 .jet-logo__img {
		width: 84px !important;
		max-width: 84px !important;
		height: 84px !important;
		object-fit: contain;
	}

	body.thsc-header-condensed #masthead .elementor-element-6971ae9 {
		max-height: 0 !important;
		margin: 0 !important;
		opacity: 0;
		transform: translateY(-12px);
		pointer-events: none;
	}

	body.thsc-header-condensed #masthead .elementor-element-8654f17 { padding-top: 5px !important; padding-bottom: 5px !important; }

	#masthead .elementor-element-469c648 {
		order: 4;
		width: 100% !important;
	}

	#masthead .elementor-element-eaf8498 {
		order: 2;
		width: calc(100% - 58px) !important;
	}

	#masthead .elementor-element-d66848f {
		order: 3;
		width: 58px !important;
	}

	#masthead .elementor-element-eaf8498 > .elementor-widget-wrap {
		display: flex !important;
		flex-wrap: nowrap !important;
		justify-content: flex-end !important;
	}

	#masthead .elementor-element-eaf8498 .elementor-widget-button { width: auto !important; }
	#masthead .elementor-element-eaf8498 .elementor-button-text { display: none !important; }

	#masthead .elementor-element-eaf8498 .elementor-button,
	#masthead .jet-blocks-cart__heading-link {
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 44px !important;
		height: 44px !important;
		min-height: 44px;
		padding: 0 !important;
		border-radius: 50% !important;
	}

	#masthead input[type="search"],
	#masthead .jet-search__field { min-height: 44px !important; font-size: 16px !important; }

	#masthead .elementor-element-6cd2e8a { min-height: 50px; padding: 0 12px !important; }
	#masthead .jet-mega-menu-toggle {
		display: flex !important;
		align-items: center;
		justify-content: flex-start;
		gap: 10px;
		width: 100%;
		min-height: 50px;
		padding: 0 4px;
		color: #fff;
	}

	#masthead .jet-mega-menu-toggle::after {
		content: "Menü";
		font-family: "Segoe UI", Arial, sans-serif;
		font-size: 15px;
		font-weight: 700;
		letter-spacing: .04em;
	}

	#masthead .jet-mega-menu-container {
		width: 100% !important;
		border-radius: 0 0 8px 8px;
		background: var(--th-paper) !important;
		box-shadow: 0 14px 30px rgba(21, 39, 17, .2);
	}

	#masthead .jet-mega-menu-container a {
		display: flex !important;
		align-items: center;
		min-height: 48px;
		padding: 10px 16px !important;
		border-bottom: 1px solid var(--th-line);
		background: var(--th-paper) !important;
		color: var(--th-forest) !important;
		font-size: 16px !important;
		line-height: 1.25 !important;
	}

	#masthead .jet-mega-menu-container a:hover,
	#masthead .jet-mega-menu-container .current-menu-item > a {
		background: #f6eadc !important;
		color: var(--th-orange) !important;
	}

	.elementor-section { max-width: 100vw; }
	.elementor-widget-image img { height: auto; }
	.elementor-button { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }

	.jet-woo-products .jet-woo-products-cqw-wrapper {
		gap: 7px !important;
	}

	.jet-woo-products .jet-compare-button__link,
	.jet-woo-products .jet-wishlist-button__link,
	.jet-woo-products .thsc-quick-view-button {
		min-width: 0 !important;
		padding: 0 .3rem !important;
		font-size: .68rem !important;
	}
}

@media (max-width: 360px) {
	.jet-woo-products .jet-woo-products-cqw-wrapper { grid-template-columns: 1fr !important; }
	.jet-woo-products .jet-compare-button__link,
	.jet-woo-products .jet-wishlist-button__link,
	.jet-woo-products .thsc-quick-view-button { height: 42px !important; }
}

body.thsc-quick-view-open {
	overflow: hidden;
}

.thsc-quick-view {
	position: fixed;
	inset: 0;
	z-index: 999999;
}

.thsc-quick-view__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, .65);
}

.thsc-quick-view__dialog {
	position: relative;
	width: min(900px, calc(100% - 2rem));
	max-height: calc(100vh - 2rem);
	margin: 1rem auto;
	padding: 2rem;
	overflow: auto;
	background: #fff;
	box-shadow: 0 20px 70px rgba(0, 0, 0, .35);
}

.thsc-quick-view__close {
	position: absolute;
	top: .5rem;
	right: .65rem;
	padding: .25rem .5rem;
	border: 0;
	background: transparent;
	font-size: 2rem;
	line-height: 1;
	cursor: pointer;
}

.thsc-quick-view__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 2rem;
}

.thsc-quick-view__grid img {
	width: 100%;
	height: auto;
}

@media (max-width: 640px) {
	.thsc-quick-view__dialog { padding: 2rem 1rem 1rem; }
	.thsc-quick-view__grid { grid-template-columns: 1fr; gap: 1rem; }
}

@media (max-width: 767px) {
	#masthead .elementor-element-dfca6e7 {
		display: none !important;
	}

	#masthead .elementor-element-6971ae9,
	#masthead .elementor-element-a12a036,
	#masthead .elementor-element-a12a036 > .elementor-widget-container {
		min-height: 0 !important;
		height: auto !important;
	}

	#masthead .elementor-element-a12a036 > .elementor-widget-container {
		display: flex;
		justify-content: center;
	}

	#masthead .elementor-element-a12a036 .jet-logo,
	#masthead .elementor-element-a12a036 .jet-logo__link {
		display: flex !important;
		justify-content: center;
	}

	#masthead .elementor-element-a12a036 .jet-logo__img {
		width: 84px !important;
		max-width: 84px !important;
		height: 84px !important;
		object-fit: contain;
	}
}


/* Contextual shop filters v2 ------------------------------------------- */
.thsc-filter-panel-head,
.thsc-filter-backdrop { display: none; }
.thsc-shop-filters {
	position: relative;
	border-color: var(--th-line, #dedcc9);
	background: var(--th-paper, #fffef7);
}
.thsc-filter-head strong,
.thsc-filter-panel-head strong { color: var(--th-forest, #20351a); }
.thsc-filter-toggle,
.thsc-filter-actions .button {
	background: var(--th-forest, #20351a) !important;
}
.thsc-filter-toggle:hover,
.thsc-filter-actions .button:hover {
	background: var(--th-orange, #c45d22) !important;
}
.thsc-filter-toggle::before {
	content: "☰";
	margin-right: .5rem;
	font-size: 1rem;
}
.thsc-filter-fields label { min-width: 0; }
.thsc-shop-filters .thsc-filter-control:focus {
	border-color: var(--th-orange, #c45d22);
	outline: 2px solid rgba(196, 93, 34, .2);
	outline-offset: 1px;
}
.thsc-filter-check input {
	width: 20px;
	height: 20px;
	accent-color: var(--th-forest, #20351a);
}
.thsc-filter-actions .button { cursor: pointer; }
.thsc-filter-actions a:hover { color: var(--th-orange, #c45d22); }

@media (max-width: 767px) {
	body.thsc-filter-drawer-open { overflow: hidden !important; }
	.thsc-shop-filters {
		margin-bottom: 1rem;
		padding: .85rem 1rem;
		border-radius: 8px;
	}
	.thsc-filter-head > div { min-width: 0; }
	.thsc-filter-head strong { font-size: 1rem; }
	.thsc-filter-head span { font-size: .8rem; }
	.thsc-filter-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 44px;
		padding: .65rem .9rem;
		white-space: nowrap;
	}
	.thsc-filter-backdrop {
		position: fixed;
		inset: 0;
		z-index: 100000;
		display: block !important;
		width: 100%;
		height: 100%;
		padding: 0;
		border: 0;
		border-radius: 0 !important;
		background: rgba(12, 20, 16, .58) !important;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity .22s ease, visibility .22s ease;
	}
	.thsc-filter-fields {
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		z-index: 100001;
		display: grid !important;
		grid-template-columns: 1fr;
		align-content: start;
		width: min(92vw, 430px);
		height: 100dvh;
		margin: 0;
		padding: 0 18px 18px;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		background: var(--th-paper, #fffef7);
		box-shadow: -18px 0 45px rgba(15, 27, 20, .25);
		transform: translateX(105%);
		visibility: hidden;
		pointer-events: none;
		transition: transform .25s ease, visibility .25s ease;
	}
	.thsc-shop-filters.is-open .thsc-filter-backdrop {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
	.thsc-shop-filters.is-open .thsc-filter-fields {
		transform: translateX(0);
		visibility: visible;
		pointer-events: auto;
	}
	.thsc-filter-panel-head {
		position: sticky;
		top: 0;
		z-index: 3;
		display: flex;
		align-items: center;
		justify-content: space-between;
		grid-column: 1 / -1;
		min-height: 68px;
		margin: 0 -18px .2rem;
		padding: 0 18px;
		border-bottom: 1px solid var(--th-line, #dedcc9);
		background: var(--th-paper, #fffef7);
	}
	.thsc-filter-panel-head strong { font-size: 1.25rem; }
	.thsc-filter-close {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		min-height: 44px;
		padding: 0 !important;
		border: 1px solid var(--th-line, #dedcc9) !important;
		border-radius: 50% !important;
		background: transparent !important;
		color: var(--th-forest, #20351a) !important;
		font-size: 2rem;
		font-weight: 400;
		line-height: 1;
	}
	.thsc-filter-fields > label {
		padding: 0 0 .85rem;
		border-bottom: 1px solid var(--th-line, #dedcc9);
	}
	.thsc-filter-actions {
		position: sticky;
		bottom: -18px;
		z-index: 3;
		display: grid;
		grid-template-columns: 1fr;
		gap: .65rem;
		margin: .25rem -18px -18px;
		padding: 14px 18px calc(14px + env(safe-area-inset-bottom));
		border-top: 1px solid var(--th-line, #dedcc9);
		background: var(--th-paper, #fffef7);
		text-align: center;
	}
	.thsc-filter-actions .button { width: 100%; min-height: 50px; }
	.thsc-filter-actions a { padding: .35rem; }
}


/* Dependent AJAX facets v3 ----------------------------------------------- */
.thsc-shop-filters.is-loading {
	opacity: .72;
	cursor: progress;
}

.thsc-searchable-filter {
	display: grid;
	gap: .35rem;
}

.thsc-brand-search {
	width: 100%;
	min-height: 42px;
	padding: 0 .75rem;
	border: 1px solid var(--th-line, #d7dcd9);
	border-radius: 7px;
	background: #fff;
	color: #17201c;
	font: inherit;
}

.thsc-brand-search:focus {
	border-color: var(--th-orange, #c45d22);
	outline: 2px solid rgba(196, 93, 34, .2);
	outline-offset: 1px;
}

.thsc-price-filter {
	min-width: 220px;
	padding: .1rem 0 .35rem;
}

.thsc-price-filter > span {
	display: block;
	margin-bottom: .45rem;
	font-size: .9rem;
	font-weight: 700;
}

.thsc-price-values {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .65rem;
	margin-bottom: .6rem;
	color: var(--th-forest, #20351a);
	font-size: .88rem;
	font-weight: 700;
}

.thsc-price-slider {
	--thsc-from: 0%;
	--thsc-to: 100%;
	position: relative;
	height: 28px;
}

.thsc-price-slider::before {
	position: absolute;
	top: 12px;
	right: 0;
	left: 0;
	height: 4px;
	border-radius: 99px;
	background: linear-gradient(
		to right,
		#d2d4cc 0 var(--thsc-from),
		var(--th-orange, #c45d22) var(--thsc-from) var(--thsc-to),
		#d2d4cc var(--thsc-to) 100%
	);
	content: "";
}

.thsc-price-slider input[type="range"] {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 28px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	outline: 0;
	pointer-events: none;
	-webkit-appearance: none;
	appearance: none;
}

.thsc-price-slider input[type="range"]::-webkit-slider-runnable-track {
	height: 4px;
	background: transparent;
}

.thsc-price-slider input[type="range"]::-moz-range-track {
	height: 4px;
	background: transparent;
}

.thsc-price-slider input[type="range"]::-webkit-slider-thumb {
	width: 22px;
	height: 22px;
	margin-top: -9px;
	border: 3px solid #fff;
	border-radius: 50%;
	background: var(--th-forest, #20351a);
	box-shadow: 0 0 0 1px rgba(32, 53, 26, .35), 0 2px 7px rgba(20, 28, 20, .2);
	cursor: grab;
	pointer-events: auto;
	-webkit-appearance: none;
	appearance: none;
}

.thsc-price-slider input[type="range"]::-moz-range-thumb {
	width: 18px;
	height: 18px;
	border: 3px solid #fff;
	border-radius: 50%;
	background: var(--th-forest, #20351a);
	box-shadow: 0 0 0 1px rgba(32, 53, 26, .35), 0 2px 7px rgba(20, 28, 20, .2);
	cursor: grab;
	pointer-events: auto;
}

.thsc-filter-feedback {
	min-height: 1.25em;
	grid-column: 1 / -1;
	color: #526057;
	font-size: .85rem;
}

.thsc-filter-feedback:empty {
	display: none;
}

.thsc-filter-feedback.is-error {
	display: block;
	padding: .65rem .75rem;
	border-left: 3px solid var(--th-orange, #c45d22);
	background: #fff4ec;
	color: #6a2f12;
}

.thsc-filter-actions .button:disabled {
	background: #9b9f98 !important;
	cursor: not-allowed;
	opacity: .8;
}

body.thsc-filter-drawer-open .thsc-filter-backdrop {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

@media (max-width: 767px) {
	.thsc-filter-fields > .thsc-price-filter {
		padding: .25rem 0 1rem;
		border-bottom: 1px solid var(--th-line, #dedcc9);
	}

	.thsc-price-values {
		font-size: .95rem;
	}

	.thsc-filter-feedback {
		margin-top: .15rem;
	}
}


/* Precise header product search ----------------------------------------- */
#masthead form.thsc-header-search {
	position: relative !important;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 50px !important;
	width: min(640px, 100%) !important;
	min-height: 50px;
	margin: 0 !important;
	overflow: visible !important;
	border: 1px solid var(--th-line, #d7d4bd);
	border-radius: 9px;
	background: #fff;
	box-shadow: 0 4px 18px rgba(24, 42, 21, .08);
}


#masthead .apsw-search-wrap {
	position: relative !important;
	z-index: 10030 !important;
	overflow: visible !important;
}

#masthead form.thsc-header-search .apsw-select-box-wrap {
	display: none !important;
}

#masthead form.thsc-header-search .apsw-search-input {
	position: static !important;
	grid-column: 1;
	width: 100% !important;
	height: 50px !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 16px !important;
	border: 0 !important;
	border-radius: 9px 0 0 9px !important;
	background: transparent !important;
	color: #1d2f19 !important;
	font-family: inherit !important;
	font-size: 15px !important;
	line-height: 50px !important;
	outline: 0 !important;
	box-shadow: none !important;
}

#masthead form.thsc-header-search:focus-within {
	border-color: var(--th-orange, #c45d22);
	box-shadow: 0 0 0 3px rgba(196, 93, 34, .16), 0 7px 22px rgba(24, 42, 21, .1);
}

#masthead form.thsc-header-search .apsw-search-btn {
	position: relative !important;
	inset: auto !important;
	display: block !important;
	grid-column: 2;
	width: 50px !important;
	height: 50px !important;
	min-width: 50px !important;
	margin: -1px -1px -1px 0 !important;
	padding: 0 !important;
	overflow: hidden;
	border: 0 !important;
	border-radius: 0 9px 9px 0 !important;
	background: var(--th-forest, #20351a) !important;
	color: transparent !important;
	font-size: 0 !important;
	cursor: pointer;
	box-shadow: none !important;
}

#masthead form.thsc-header-search .apsw-search-btn > * {
	display: none !important;
}

#masthead form.thsc-header-search .apsw-search-btn::before {
	position: absolute;
	top: 14px;
	left: 14px;
	width: 15px;
	height: 15px;
	border: 2.5px solid #fff;
	border-radius: 50%;
	content: "";
}

#masthead form.thsc-header-search .apsw-search-btn::after {
	position: absolute;
	top: 30px;
	left: 30px;
	width: 10px;
	height: 2.5px;
	border-radius: 2px;
	background: #fff;
	content: "";
	transform: rotate(45deg);
	transform-origin: left center;
}

#masthead form.thsc-header-search .apsw-search-btn:hover,
#masthead form.thsc-header-search .apsw-search-btn:focus-visible {
	background: var(--th-orange, #c45d22) !important;
}

#masthead form.thsc-header-search .apsw_loader {
	position: absolute !important;
	top: 15px !important;
	right: 58px !important;
	z-index: 3;
}

#masthead form.thsc-header-search .apsw_ajax_result {
	position: absolute !important;
	top: calc(100% + 7px) !important;
	right: 0 !important;
	left: 0 !important;
	z-index: 10020 !important;
	max-height: min(65vh, 560px);
	overflow-y: auto;
	border: 1px solid var(--th-line, #d7d4bd);
	border-radius: 9px;
	background: #fff;
	box-shadow: 0 18px 45px rgba(18, 31, 17, .2);
}

#masthead form.thsc-header-search .apsw_ajax_result:empty {
	display: none !important;
}

@media (max-width: 767px) {
	#masthead form.thsc-header-search {
		width: 100% !important;
		min-height: 46px;
	}

	#masthead form.thsc-header-search .apsw-search-input {
		height: 46px !important;
		padding-left: 13px !important;
		font-size: 16px !important;
		line-height: 46px !important;
	}

	#masthead form.thsc-header-search .apsw-search-btn {
		width: 48px !important;
		height: 46px !important;
		min-width: 48px !important;
	}

	#masthead form.thsc-header-search .apsw-search-btn::before {
		top: 12px;
		left: 13px;
	}

	#masthead form.thsc-header-search .apsw-search-btn::after {
		top: 28px;
		left: 29px;
	}
}


/* Prevent the mobile menu from flashing open before JetMenu is ready. */
@media (max-width: 767px) {
	html:not(.thsc-header-ready) #masthead .jet-mega-menu-container,
	#masthead .jet-mega-menu:not(.jet-mega-menu--inited) .jet-mega-menu-container {
		display: none !important;
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
	}

	#masthead .jet-mega-menu:not(.jet-mega-menu--inited) {
		min-height: 50px;
		visibility: hidden !important;
		opacity: 0 !important;
	}
}


/* Local CI typography for the contextual shop filter -------------------- */
.thsc-shop-filters {
	--thsc-font-text: "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif;
	--thsc-font-display: "HandelGotD-Bold", "ITC Resavska Sans Std Bold", Arial, sans-serif;
	font-family: var(--thsc-font-text) !important;
	font-style: normal;
}

.thsc-shop-filters .thsc-filter-head strong,
.thsc-shop-filters .thsc-filter-panel-head strong {
	font-family: var(--thsc-font-display) !important;
	font-weight: 400 !important;
	letter-spacing: .015em;
}

.thsc-shop-filters .thsc-filter-head span,
.thsc-shop-filters label,
.thsc-shop-filters label > span,
.thsc-shop-filters select,
.thsc-shop-filters option,
.thsc-shop-filters input,
.thsc-shop-filters output,
.thsc-shop-filters .thsc-price-values,
.thsc-shop-filters .thsc-filter-feedback,
.thsc-shop-filters .thsc-filter-actions a {
	font-family: var(--thsc-font-text) !important;
}

.thsc-shop-filters label > span,
.thsc-shop-filters .thsc-price-filter > span,
.thsc-shop-filters .thsc-price-values {
	font-weight: 700 !important;
	letter-spacing: .01em;
}

.thsc-shop-filters select,
.thsc-shop-filters input,
.thsc-shop-filters option,
.thsc-shop-filters .thsc-filter-feedback,
.thsc-shop-filters .thsc-filter-actions a {
	font-weight: 400 !important;
	letter-spacing: 0;
}

.thsc-shop-filters .thsc-filter-toggle,
.thsc-shop-filters .thsc-filter-close,
.thsc-shop-filters .thsc-filter-actions .button {
	font-family: var(--thsc-font-display) !important;
	font-weight: 400 !important;
	letter-spacing: .035em;
}

.thsc-shop-filters .thsc-brand-search::placeholder {
	font-family: var(--thsc-font-text) !important;
	font-weight: 400;
	opacity: .72;
}


/* Shop interaction polish: floating filters, product actions and gallery ---- */
.post-type-archive-product .woocommerce-ordering,
.tax-product_cat .woocommerce-ordering,
.search-results .woocommerce-ordering {
	display: none !important;
}

.thsc-floating-filter-toggle {
	--thsc-font-display: "HandelGotD-Bold", "ITC Resavska Sans Std Bold", Arial, sans-serif;
	position: fixed;
	top: 52%;
	right: 0;
	z-index: 99990;
	display: inline-flex;
	align-items: center;
	gap: .55rem;
	min-height: 50px;
	padding: .75rem .9rem;
	border: 1px solid var(--th-line, #dedcc9) !important;
	border-right: 0 !important;
	border-radius: 9px 0 0 9px !important;
	background: var(--th-forest, #20351a) !important;
	color: #fff !important;
	font-family: var(--thsc-font-display) !important;
	font-size: .86rem;
	letter-spacing: .035em;
	box-shadow: -7px 8px 24px rgba(22, 37, 18, .22);
	cursor: pointer;
	opacity: 0;
	pointer-events: none;
	transform: translateX(110%);
	transition: transform .2s ease, opacity .2s ease, background .18s ease;
}
.thsc-floating-filter-toggle.is-visible {
	opacity: 1;
	pointer-events: auto;
	transform: translateX(0);
}
.thsc-floating-filter-toggle:hover,
.thsc-floating-filter-toggle:focus-visible {
	background: var(--th-orange, #c45d22) !important;
}
.thsc-floating-filter-toggle__icon {
	position: relative;
	display: block;
	width: 21px;
	height: 16px;
	background:
		linear-gradient(#fff, #fff) 0 2px / 21px 2px no-repeat,
		linear-gradient(#fff, #fff) 0 8px / 21px 2px no-repeat,
		linear-gradient(#fff, #fff) 0 14px / 21px 2px no-repeat;
}
.thsc-floating-filter-toggle__icon::before,
.thsc-floating-filter-toggle__icon::after {
	position: absolute;
	width: 6px;
	height: 6px;
	border: 2px solid #fff;
	border-radius: 50%;
	background: var(--th-forest, #20351a);
	content: "";
}
.thsc-floating-filter-toggle__icon::before { top: -1px; left: 4px; }
.thsc-floating-filter-toggle__icon::after { right: 3px; bottom: -1px; }
.thsc-floating-filter-toggle:hover .thsc-floating-filter-toggle__icon::before,
.thsc-floating-filter-toggle:hover .thsc-floating-filter-toggle__icon::after {
	background: var(--th-orange, #c45d22);
}

@media (min-width: 768px) {
	body.thsc-filter-drawer-open { overflow: hidden !important; }
	.thsc-filter-backdrop {
		position: fixed;
		inset: 0;
		z-index: 100000;
		display: block !important;
		width: 100%;
		height: 100%;
		padding: 0;
		border: 0;
		border-radius: 0 !important;
		background: rgba(12, 20, 16, .58) !important;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity .22s ease, visibility .22s ease;
	}
	.thsc-shop-filters.is-open .thsc-filter-fields {
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		z-index: 100001;
		display: grid !important;
		grid-template-columns: 1fr;
		align-content: start;
		width: min(440px, calc(100vw - 24px));
		height: 100dvh;
		margin: 0;
		padding: 0 22px 22px;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		background: var(--th-paper, #fffef7);
		box-shadow: -18px 0 45px rgba(15, 27, 20, .25);
	}
	body.admin-bar .thsc-shop-filters.is-open .thsc-filter-fields {
		top: 32px;
		height: calc(100dvh - 32px);
	}
	.thsc-shop-filters.is-open .thsc-filter-panel-head {
		position: sticky;
		top: 0;
		z-index: 3;
		display: flex;
		align-items: center;
		justify-content: space-between;
		min-height: 70px;
		margin: 0 -22px .3rem;
		padding: 0 22px;
		border-bottom: 1px solid var(--th-line, #dedcc9);
		background: var(--th-paper, #fffef7);
	}
	.thsc-shop-filters.is-open .thsc-filter-panel-head strong { font-size: 1.25rem; }
	.thsc-shop-filters.is-open .thsc-filter-close {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		min-height: 44px;
		padding: 0 !important;
		border: 1px solid var(--th-line, #dedcc9) !important;
		border-radius: 50% !important;
		background: transparent !important;
		color: var(--th-forest, #20351a) !important;
		font-size: 2rem;
		line-height: 1;
	}
	.thsc-shop-filters.is-open .thsc-filter-fields > label,
	.thsc-shop-filters.is-open .thsc-filter-fields > .thsc-price-filter {
		padding-bottom: .9rem;
		border-bottom: 1px solid var(--th-line, #dedcc9);
	}
	.thsc-shop-filters.is-open .thsc-filter-actions {
		position: sticky;
		bottom: -22px;
		z-index: 3;
		display: grid;
		grid-template-columns: 1fr;
		gap: .65rem;
		margin: .3rem -22px -22px;
		padding: 15px 22px 20px;
		border-top: 1px solid var(--th-line, #dedcc9);
		background: var(--th-paper, #fffef7);
		text-align: center;
	}
}

@media (max-width: 767px) {
	.thsc-floating-filter-toggle {
		top: auto;
		right: 0;
		bottom: calc(82px + env(safe-area-inset-bottom));
		min-height: 48px;
		padding: .7rem .8rem;
	}
}

/* Product action bar ------------------------------------------------------ */
.jet-woo-products .jet-woo-products-cqw-wrapper {
	justify-content: center !important;
	justify-items: stretch !important;
}
.jet-woo-products .jet-compare-button__container,
.jet-woo-products .jet-wishlist-button__container {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}
.jet-woo-products .jet-compare-button__link,
.jet-woo-products .jet-wishlist-button__link,
.jet-woo-products .thsc-quick-view-button {
	align-items: center !important;
	justify-content: center !important;
	border-color: var(--th-line, #dedcc9) !important;
	background: var(--th-paper, #fffef7) !important;
	color: var(--th-forest, #20351a) !important;
	box-shadow: none !important;
	transition: border-color .18s ease, background .18s ease, color .18s ease, transform .18s ease;
}
.jet-woo-products .jet-compare-button__link::before,
.jet-woo-products .jet-wishlist-button__link::before {
	display: block !important;
	flex: 0 0 auto;
	margin: 0 !important;
	color: currentColor !important;
	line-height: 1 !important;
	text-align: center;
}
.jet-woo-products .jet-compare-button__link:hover,
.jet-woo-products .jet-compare-button__link:focus-visible,
.jet-woo-products .jet-wishlist-button__link:hover,
.jet-woo-products .jet-wishlist-button__link:focus-visible,
.jet-woo-products .thsc-quick-view-button:hover,
.jet-woo-products .thsc-quick-view-button:focus-visible {
	border-color: var(--th-orange, #c45d22) !important;
	background: var(--th-orange, #c45d22) !important;
	color: #fff !important;
	transform: translateY(-1px);
}
.jet-woo-products .jet-compare-button__link.added-to-compare,
.jet-woo-products .jet-wishlist-button__link.added-to-wishlist {
	border-color: var(--th-forest, #20351a) !important;
	background: var(--th-forest, #20351a) !important;
	color: #fff !important;
}
.jet-woo-products .jet-wishlist-button__link.added-to-wishlist::before { content: "♥" !important; }
.jet-woo-products .jet-compare-button__link.added-to-compare::before { content: "⇄" !important; }
.jet-woo-products .jet-compare-button__link.is-thsc-busy,
.jet-woo-products .jet-wishlist-button__link.is-thsc-busy {
	opacity: .55;
	pointer-events: none !important;
}

/* Accessible confirmations ------------------------------------------------ */
.thsc-shop-notice {
	--thsc-font-text: "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif;
	position: fixed;
	right: 22px;
	bottom: 24px;
	z-index: 1000002;
	max-width: min(390px, calc(100vw - 32px));
	padding: .9rem 1rem .9rem 1.15rem;
	border-left: 4px solid var(--th-orange, #c45d22);
	border-radius: 7px;
	background: var(--th-forest, #20351a);
	color: #fff;
	font-family: var(--thsc-font-text) !important;
	font-size: .9rem;
	box-shadow: 0 14px 38px rgba(15, 27, 20, .3);
	opacity: 0;
	pointer-events: none;
	transform: translateY(18px);
	transition: opacity .2s ease, transform .2s ease;
}
.thsc-shop-notice.is-visible {
	opacity: 1;
	transform: translateY(0);
}
.thsc-shop-notice.is-error {
	border-left-color: #b8322b;
	background: #71241f;
}

@media (max-width: 767px) {
	.thsc-shop-notice {
		right: 16px;
		bottom: calc(18px + env(safe-area-inset-bottom));
		left: 16px;
		max-width: none;
	}
}

/* Quick-view gallery ------------------------------------------------------ */
.thsc-quick-view__dialog {
	border-radius: 12px;
	background: var(--th-paper, #fffef7);
}
.thsc-quick-view__gallery { min-width: 0; }
.thsc-quick-view__main-image {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 360px;
	padding: 1rem;
	border: 1px solid var(--th-line, #dedcc9);
	border-radius: 9px;
	background: #fff;
}
.thsc-quick-view__main-image img {
	width: 100%;
	height: min(48vh, 480px);
	object-fit: contain;
}
.thsc-quick-view__thumbnails {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 8px;
	margin-top: 10px;
}
.thsc-quick-view__thumbnail {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1;
	min-height: 0 !important;
	padding: 4px !important;
	overflow: hidden;
	border: 1px solid var(--th-line, #dedcc9) !important;
	border-radius: 6px !important;
	background: #fff !important;
	cursor: pointer;
}
.thsc-quick-view__thumbnail.is-active,
.thsc-quick-view__thumbnail:hover,
.thsc-quick-view__thumbnail:focus-visible {
	border-color: var(--th-orange, #c45d22) !important;
	box-shadow: inset 0 0 0 1px var(--th-orange, #c45d22);
}
.thsc-quick-view__thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.thsc-quick-view__summary {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.thsc-quick-view__summary .price {
	margin: .3rem 0 1rem;
	color: var(--th-orange, #c45d22);
	font-size: 1.35rem;
	font-weight: 700;
}
.thsc-quick-view__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .8rem 1rem;
	margin-top: auto;
	padding-top: 1.25rem;
}
.thsc-quick-view__actions .button {
	min-height: 46px;
	padding: .75rem 1.15rem !important;
}
.thsc-quick-view__details {
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media (max-width: 640px) {
	.thsc-quick-view__main-image { min-height: 240px; }
	.thsc-quick-view__main-image img { height: min(36vh, 320px); }
	.thsc-quick-view__thumbnails { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.thsc-quick-view__actions { width: 100%; }
	.thsc-quick-view__actions .button { width: 100%; justify-content: center; text-align: center; }
}


/* Header refinement, navigation icons and automatic product loading -------- */
#masthead form.thsc-header-search {
	width: 100% !important;
	max-width: 620px;
	min-height: 50px;
	border: 1px solid rgba(32, 53, 26, .24) !important;
	border-radius: 10px !important;
	background: #fff !important;
	box-shadow: 0 7px 24px rgba(25, 42, 20, .09) !important;
}
#masthead form.thsc-header-search .apsw-search-input {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	height: 50px !important;
	padding: 0 18px !important;
	transform: none !important;
	color: var(--th-forest, #20351a) !important;
	font-family: "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif !important;
	font-size: 14px !important;
	line-height: 50px !important;
}
#masthead form.thsc-header-search .apsw-search-input::placeholder {
	color: #687164;
	opacity: .9;
}
#masthead form.thsc-header-search .apsw-search-btn {
	position: relative !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 52px !important;
	height: 50px !important;
	min-width: 52px !important;
	margin: -1px -1px -1px 0 !important;
	padding: 0 !important;
	border-radius: 0 10px 10px 0 !important;
	background: var(--th-orange, #c45d22) !important;
	transform: none !important;
}
#masthead form.thsc-header-search .apsw-search-btn > svg {
	display: block !important;
	width: 21px !important;
	height: 21px !important;
	fill: #fff !important;
}
#masthead form.thsc-header-search .apsw-search-btn > svg path {
	fill: #fff !important;
}
#masthead form.thsc-header-search .apsw-search-btn::before,
#masthead form.thsc-header-search .apsw-search-btn::after {
	display: none !important;
	content: none !important;
}
#masthead form.thsc-header-search .apsw-search-btn:hover,
#masthead form.thsc-header-search .apsw-search-btn:focus-visible {
	background: var(--th-forest, #20351a) !important;
}
#masthead form.thsc-header-search:focus-within {
	border-color: var(--th-orange, #c45d22) !important;
	box-shadow: 0 0 0 3px rgba(196, 93, 34, .15), 0 8px 26px rgba(25, 42, 20, .11) !important;
}

#masthead a.thsc-header-account-link {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 6px 3px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--th-orange, #c45d22) !important;
	font-family: "HandelGotD-Bold", "ITC Resavska Sans Std Bold", Arial, sans-serif !important;
	font-weight: 400 !important;
	letter-spacing: .02em;
	box-shadow: inset 0 -2px transparent;
	transition: color .18s ease, box-shadow .18s ease;
}
#masthead a.thsc-header-account-link .elementor-button-content-wrapper {
	align-items: center;
	gap: .32rem;
}
#masthead a.thsc-header-account-link i,
#masthead a.thsc-header-account-link svg {
	color: currentColor !important;
	fill: currentColor !important;
}
#masthead a.thsc-header-account-link:hover,
#masthead a.thsc-header-account-link:focus-visible {
	background: transparent !important;
	color: var(--th-forest, #20351a) !important;
	box-shadow: inset 0 -2px var(--th-forest, #20351a);
}

#masthead .jet-mega-menu-item__title {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .4rem;
}
#masthead .thsc-menu-icon {
	flex: 0 0 1.05em;
	width: 1.05em;
	margin: 0 !important;
	color: currentColor;
	font-family: FontAwesome !important;
	font-size: .82em;
	font-style: normal;
	line-height: 1;
	text-align: center;
}
#masthead .jet-mega-menu-item__link--top-level {
	background: transparent !important;
	color: var(--th-orange, #c45d22) !important;
	box-shadow: inset 0 -3px transparent;
	transition: color .18s ease, box-shadow .18s ease;
}
#masthead .jet-mega-menu-item__link--top-level:hover,
#masthead .jet-mega-menu-item__link--top-level:focus-visible {
	background: transparent !important;
	color: var(--th-cream, #fdfae2) !important;
	box-shadow: inset 0 -3px rgba(196, 93, 34, .75);
}
#masthead .jet-mega-current-menu-item > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level,
#masthead .jet-menu-item--active > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level,
#masthead .current-menu-item > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level,
#masthead .current_page_item > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level {
	background: transparent !important;
	color: var(--th-cream, #fdfae2) !important;
	box-shadow: inset 0 -3px var(--th-orange, #c45d22) !important;
}
#masthead .thsc-mobile-account-item {
	display: none !important;
}

/* Infinite scroll replaces visible page numbers. */
html.thsc-infinite-scroll-ready .jet-smart-filters-pagination,
html.thsc-infinite-scroll-ready .woocommerce-pagination {
	display: none !important;
}
.thsc-infinite-scroll {
	--thsc-font-text: "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: .75rem;
	min-height: 74px;
	width: 100%;
	margin: 1rem 0 2rem;
	color: #667066;
	font-family: var(--thsc-font-text) !important;
	font-size: .9rem;
	text-align: center;
}
.thsc-infinite-scroll__spinner {
	display: none;
	width: 24px;
	height: 24px;
	border: 3px solid rgba(32, 53, 26, .18);
	border-top-color: var(--th-orange, #c45d22);
	border-radius: 50%;
	animation: thsc-infinite-spin .75s linear infinite;
}
.thsc-infinite-scroll.is-loading .thsc-infinite-scroll__spinner {
	display: inline-block;
}
.thsc-infinite-scroll.is-complete {
	color: var(--th-forest, #20351a);
}
.thsc-infinite-scroll.is-error {
	color: #7a3218;
}
.jet-woo-products__item.thsc-infinite-item {
	animation: thsc-product-pop .42s ease both;
	animation-delay: var(--thsc-item-delay, 0ms);
}
@keyframes thsc-infinite-spin {
	to { transform: rotate(360deg); }
}
@keyframes thsc-product-pop {
	from { opacity: 0; transform: translateY(20px) scale(.985); }
	to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (max-width: 1280px) and (min-width: 768px) {
	#masthead .jet-mega-menu-item__link--top-level {
		font-size: 16px !important;
	}
	#masthead .jet-mega-menu-item__title { gap: .3rem; }
}

@media (max-width: 767px) {
	#masthead .jet-mega-menu-item__title {
		justify-content: flex-start;
		gap: .65rem;
	}
	#masthead .jet-mega-menu-item__link--top-level,
	#masthead .jet-mega-menu-item__link--top-level:hover,
	#masthead .jet-mega-menu-item__link--top-level:focus-visible {
		color: var(--th-orange, #c45d22) !important;
		box-shadow: none !important;
	}
	#masthead .jet-mega-menu-item__link--top-level:hover,
	#masthead .jet-mega-menu-item__link--top-level:focus-visible {
		background: rgba(32, 53, 26, .07) !important;
		color: var(--th-forest, #20351a) !important;
	}
	#masthead .jet-mega-current-menu-item > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level,
	#masthead .jet-menu-item--active > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level,
	#masthead .current-menu-item > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level,
	#masthead .current_page_item > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level {
		border-left: 3px solid var(--th-orange, #c45d22);
		background: rgba(32, 53, 26, .08) !important;
		color: var(--th-forest, #20351a) !important;
		box-shadow: none !important;
	}
	#masthead .thsc-mobile-account-item {
		display: block !important;
	}
	#masthead .thsc-mobile-account {
		margin-top: .35rem;
		padding-top: .5rem;
		border-top: 1px solid var(--th-line, #dedcc9);
	}
	#masthead .thsc-mobile-account-item .jet-mega-menu-item__link {
		color: var(--th-forest, #20351a) !important;
	}
	#masthead .thsc-mobile-account-item .thsc-menu-icon {
		color: var(--th-orange, #c45d22);
	}
	.thsc-infinite-scroll {
		min-height: 64px;
		margin-bottom: 1rem;
		padding: 0 1rem;
		font-size: .84rem;
	}
}


/* Header system v3: compact desktop, grouped mobile navigation ------------- */
#masthead .thsc-mobile-group-label,
#masthead .thsc-mobile-search-item {
	display: none;
}
#masthead .thsc-header-compare-wrap,
#masthead a.thsc-header-compare {
	display: none !important;
}
#masthead .elementor-element-eaf8498 > .elementor-widget-wrap {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-content: center !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px;
}
#masthead .elementor-element-eaf8498 .elementor-widget-button {
	flex: 0 0 auto;
	width: auto !important;
	margin: 0 !important;
}
#masthead a.thsc-header-account-link {
	min-height: 34px;
	padding: 4px 2px !important;
	font-size: 13px !important;
	white-space: nowrap;
}

/* The primary navigation returns to the light CI treatment. */
#masthead .elementor-element-6cd2e8a {
	min-height: 46px !important;
	padding: 0 !important;
	border-top: 1px solid rgba(32, 53, 26, .12);
	border-bottom: 1px solid rgba(32, 53, 26, .16);
	background: var(--th-cream, #fdfae2) !important;
	box-shadow: 0 3px 10px rgba(32, 53, 26, .06);
}
#masthead .elementor-element-6cd2e8a > .elementor-container,
#masthead .elementor-element-6cd2e8a .elementor-column,
#masthead .elementor-element-6cd2e8a .elementor-widget-wrap,
#masthead .elementor-element-87777ec,
#masthead .elementor-element-87777ec > .elementor-widget-container,
#masthead .elementor-element-6cd2e8a .jet-mega-menu,
#masthead .elementor-element-6cd2e8a .jet-mega-menu-container,
#masthead .elementor-element-6cd2e8a .jet-mega-menu-list {
	min-height: 44px !important;
	height: 44px !important;
}
#masthead .elementor-element-6cd2e8a .jet-mega-menu-list {
	align-items: stretch !important;
	justify-content: center !important;
}
#masthead .elementor-element-6cd2e8a .jet-mega-menu-item,
#masthead .elementor-element-6cd2e8a .jet-mega-menu-item__inner {
	min-height: 44px !important;
	height: 44px !important;
}
#masthead .elementor-element-6cd2e8a .jet-mega-menu-item__link--top-level {
	display: flex !important;
	align-items: center !important;
	min-height: 44px !important;
	height: 44px !important;
	padding: 0 9px !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--th-orange, #c45d22) !important;
	font-family: "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	letter-spacing: .005em;
	box-shadow: inset 0 -2px transparent !important;
}
#masthead .elementor-element-6cd2e8a .jet-mega-menu-item__title {
	flex-direction: row !important;
	align-items: center !important;
	justify-content: center !important;
	gap: .38rem !important;
	min-height: 0 !important;
	height: auto !important;
}
#masthead .elementor-element-6cd2e8a .jet-mega-menu-item__label {
	min-height: 0 !important;
	height: auto !important;
	line-height: 1.1 !important;
}
#masthead .elementor-element-6cd2e8a .thsc-menu-icon {
	flex: 0 0 14px;
	width: 14px;
	color: currentColor !important;
	font-size: 12px !important;
}
#masthead .elementor-element-6cd2e8a .jet-mega-menu-item__link--top-level:hover,
#masthead .elementor-element-6cd2e8a .jet-mega-menu-item__link--top-level:focus-visible {
	background: rgba(32, 53, 26, .055) !important;
	color: var(--th-forest, #20351a) !important;
	box-shadow: inset 0 -2px var(--th-orange, #c45d22) !important;
}
#masthead .elementor-element-6cd2e8a .jet-mega-current-menu-item > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level,
#masthead .elementor-element-6cd2e8a .jet-menu-item--active > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level,
#masthead .elementor-element-6cd2e8a .current-menu-item > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level,
#masthead .elementor-element-6cd2e8a .current_page_item > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level {
	background: rgba(196, 93, 34, .09) !important;
	color: var(--th-forest, #20351a) !important;
	box-shadow: inset 0 -3px var(--th-orange, #c45d22) !important;
}

/* Desktop: lighter initial header and a compact two-row sticky state. */
@media (min-width: 768px) {
	#masthead .elementor-element-8654f17,
	#masthead .elementor-element-8654f17 > .elementor-container,
	#masthead .elementor-element-8654f17 > .elementor-container > .elementor-column {
		min-height: 126px !important;
		height: 126px !important;
		transition: height .2s ease, min-height .2s ease;
	}
	#masthead .elementor-element-8654f17 .elementor-widget-wrap {
		align-content: center !important;
		align-items: center !important;
	}
	#masthead .elementor-element-a12a036,
	#masthead .elementor-element-a12a036 > .elementor-widget-container {
		height: 112px !important;
	}
	#masthead .elementor-element-a12a036 > .elementor-widget-container,
	#masthead .elementor-element-a12a036 .jet-logo,
	#masthead .elementor-element-a12a036 .jet-logo__link {
		display: flex !important;
		align-items: center;
		justify-content: center;
	}
	#masthead .elementor-element-a12a036 .jet-logo__img {
		width: 108px !important;
		max-width: 108px !important;
		height: 108px !important;
		object-fit: contain;
		transition: width .2s ease, height .2s ease;
	}

	#masthead .elementor-sticky--active {
		top: 0 !important;
	}
	body.admin-bar #masthead .elementor-sticky--active {
		top: 32px !important;
	}

	body.thsc-header-condensed #masthead .elementor-element-8654f17,
	body.thsc-header-condensed #masthead .elementor-element-8654f17 > .elementor-container,
	body.thsc-header-condensed #masthead .elementor-element-8654f17 > .elementor-container > .elementor-column {
		min-height: 66px !important;
		height: 66px !important;
	}
	body.thsc-header-condensed #masthead .elementor-element-8654f17 {
		overflow: visible !important;
		box-shadow: 0 4px 16px rgba(32, 53, 26, .11);
	}
	body.thsc-header-condensed #masthead .elementor-element-a12a036,
	body.thsc-header-condensed #masthead .elementor-element-a12a036 > .elementor-widget-container {
		height: 56px !important;
	}
	body.thsc-header-condensed #masthead .elementor-element-a12a036 .jet-logo__img {
		width: 54px !important;
		max-width: 54px !important;
		height: 54px !important;
	}
	body.thsc-header-condensed #masthead form.thsc-header-search,
	body.thsc-header-condensed #masthead .apsw-search-wrap {
		min-height: 40px !important;
		height: 40px !important;
	}
	body.thsc-header-condensed #masthead form.thsc-header-search .apsw-search-input {
		height: 40px !important;
		padding-left: 15px !important;
		font-size: 13px !important;
		line-height: 40px !important;
	}
	body.thsc-header-condensed #masthead form.thsc-header-search .apsw-search-btn {
		width: 44px !important;
		min-width: 44px !important;
		height: 40px !important;
	}
	body.thsc-header-condensed #masthead a.thsc-header-account-link {
		min-height: 30px;
		font-size: 12px !important;
	}
	body.thsc-header-condensed #masthead .elementor-element-6cd2e8a {
		position: fixed !important;
		top: 66px !important;
		right: 0;
		left: 0;
		z-index: 98;
		width: 100% !important;
		min-height: 44px !important;
	}
	body.admin-bar.thsc-header-condensed #masthead .elementor-element-6cd2e8a {
		top: 98px !important;
	}
}

/* Mobile: one permanent 60px row; drawer content is grouped and ordered. */
@media (max-width: 767px) {
	#masthead {
		position: sticky !important;
		top: 0 !important;
		z-index: 99990 !important;
		width: 100%;
		height: 60px !important;
		min-height: 60px !important;
		overflow: visible !important;
		background: var(--th-cream, #fdfae2) !important;
		box-shadow: 0 3px 16px rgba(32, 53, 26, .16);
	}
	body.admin-bar #masthead {
		top: 46px !important;
	}
	#masthead .elementor-element-dfca6e7,
	#masthead .elementor-element-96f09d2 {
		display: none !important;
	}
	#masthead .elementor-element-8654f17,
	#masthead .elementor-element-8654f17.elementor-sticky--active,
	#masthead .elementor-element-8654f17 > .elementor-container {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		left: auto !important;
		width: 100% !important;
		min-height: 60px !important;
		height: 60px !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
		transform: none !important;
	}
	#masthead .elementor-element-8654f17.elementor-sticky__spacer {
		display: none !important;
	}
	#masthead .elementor-element-8654f17 > .elementor-container {
		display: block !important;
		max-width: none !important;
	}
	#masthead .elementor-element-469c648,
	#masthead .elementor-element-eaf8498 {
		display: none !important;
	}
	#masthead .elementor-element-6971ae9,
	body.thsc-header-condensed #masthead .elementor-element-6971ae9 {
		position: absolute !important;
		top: 0 !important;
		left: 50% !important;
		z-index: 4;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 60px !important;
		min-height: 60px !important;
		height: 60px !important;
		max-height: 60px !important;
		margin: 0 !important;
		overflow: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		transform: translateX(-50%) !important;
	}
	#masthead .elementor-element-a12a036,
	#masthead .elementor-element-a12a036 > .elementor-widget-container,
	#masthead .elementor-element-a12a036 .jet-logo,
	#masthead .elementor-element-a12a036 .jet-logo__link {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 54px !important;
		min-height: 54px !important;
		height: 54px !important;
		margin: 0 !important;
	}
	#masthead .elementor-element-a12a036 .jet-logo__img,
	body.thsc-header-condensed #masthead .elementor-element-a12a036 .jet-logo__img {
		display: block !important;
		width: 50px !important;
		max-width: 50px !important;
		height: 50px !important;
		opacity: 1 !important;
		object-fit: contain;
	}
	#masthead .elementor-element-d66848f {
		position: absolute !important;
		top: 0 !important;
		right: 4px !important;
		z-index: 5;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 54px !important;
		min-height: 60px !important;
		height: 60px !important;
	}
	#masthead .elementor-element-d66848f > .elementor-widget-wrap {
		display: flex !important;
		align-content: center !important;
		align-items: center !important;
		justify-content: center !important;
		padding: 0 !important;
	}
	#masthead .elementor-element-d66848f .jet-blocks-cart__heading-link {
		width: 44px !important;
		height: 44px !important;
		min-height: 44px !important;
		padding: 0 !important;
		border-radius: 50% !important;
		background: transparent !important;
		color: var(--th-forest, #20351a) !important;
	}

	#masthead .elementor-element-6cd2e8a {
		position: absolute !important;
		top: 0 !important;
		left: 4px !important;
		z-index: 6;
		width: 54px !important;
		min-height: 60px !important;
		height: 60px !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
	}
	#masthead .elementor-element-6cd2e8a > .elementor-container,
	#masthead .elementor-element-6cd2e8a .elementor-column,
	#masthead .elementor-element-6cd2e8a .elementor-widget-wrap,
	#masthead .elementor-element-87777ec,
	#masthead .elementor-element-87777ec > .elementor-widget-container,
	#masthead .elementor-element-6cd2e8a .jet-mega-menu {
		width: 54px !important;
		min-height: 60px !important;
		height: 60px !important;
		margin: 0 !important;
		padding: 0 !important;
		background: transparent !important;
	}
	#masthead .jet-mega-menu-toggle {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 54px !important;
		min-height: 60px !important;
		height: 60px !important;
		padding: 0 !important;
		color: var(--th-forest, #20351a) !important;
	}
	#masthead .jet-mega-menu-toggle::after {
		display: none !important;
		content: none !important;
	}
	#masthead .jet-mega-menu-toggle svg,
	#masthead .jet-mega-menu-toggle path {
		width: 27px !important;
		height: 27px !important;
		fill: var(--th-forest, #20351a) !important;
		color: var(--th-forest, #20351a) !important;
	}

	#masthead .elementor-element-6cd2e8a .jet-mega-menu-container {
		position: fixed !important;
		top: 60px !important;
		bottom: 0 !important;
		left: 0 !important;
		z-index: 99991 !important;
		width: min(360px, calc(100vw - 24px)) !important;
		min-height: 0 !important;
		height: calc(100dvh - 60px) !important;
		max-height: calc(100dvh - 60px) !important;
		padding: 0 0 calc(18px + env(safe-area-inset-bottom)) !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		overscroll-behavior: contain;
		border: 0 !important;
		border-right: 1px solid rgba(32, 53, 26, .15) !important;
		border-radius: 0 !important;
		background: var(--th-paper, #fffef7) !important;
		box-shadow: 18px 12px 44px rgba(17, 31, 14, .24) !important;
	}
	body.admin-bar #masthead .elementor-element-6cd2e8a .jet-mega-menu-container {
		top: 106px !important;
		height: calc(100dvh - 106px) !important;
		max-height: calc(100dvh - 106px) !important;
	}
	#masthead .elementor-element-6cd2e8a .jet-mega-menu-list {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		justify-content: flex-start !important;
		width: 100% !important;
		min-height: min-content !important;
		height: auto !important;
		padding: 8px 0 20px !important;
		background: var(--th-paper, #fffef7) !important;
	}
	#masthead .elementor-element-6cd2e8a .jet-mega-menu-list > li {
		order: var(--thsc-mobile-order, 50);
		width: 100% !important;
	}
	#masthead .thsc-mobile-search-item,
	#masthead .thsc-mobile-group-label {
		display: block !important;
	}
	#masthead .thsc-mobile-search-item {
		order: 0 !important;
		padding: 7px 14px 10px;
	}
	#masthead .thsc-mobile-menu-search {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 46px;
		min-height: 46px;
		overflow: hidden;
		border: 1px solid rgba(32, 53, 26, .22);
		border-radius: 7px;
		background: #fff;
	}
	#masthead .thsc-mobile-menu-search input[type="search"] {
		width: 100%;
		min-width: 0;
		min-height: 44px !important;
		padding: 0 12px;
		border: 0 !important;
		background: transparent !important;
		color: var(--th-forest, #20351a);
		font-family: "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif !important;
		font-size: 14px !important;
		box-shadow: none !important;
	}
	#masthead .thsc-mobile-menu-search button {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 46px;
		min-height: 44px;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: var(--th-orange, #c45d22) !important;
		color: #fff !important;
	}
	#masthead .thsc-mobile-group-label {
		padding: 17px 18px 6px;
		color: var(--th-forest, #20351a);
		font-family: "HandelGotD-Bold", "ITC Resavska Sans Std Bold", Arial, sans-serif !important;
		font-size: 12px;
		font-weight: 700;
		letter-spacing: .09em;
		text-transform: uppercase;
	}
	#masthead .thsc-mobile-group-label span {
		display: block;
		padding-bottom: 7px;
		border-bottom: 1px solid rgba(32, 53, 26, .18);
	}
	#masthead .elementor-element-6cd2e8a .jet-mega-menu-item,
	#masthead .elementor-element-6cd2e8a .jet-mega-menu-item__inner {
		min-height: 0 !important;
		height: auto !important;
	}
	#masthead .elementor-element-6cd2e8a .jet-mega-menu-item__link--top-level {
		display: flex !important;
		align-items: center !important;
		min-height: 44px !important;
		height: auto !important;
		margin: 0 10px !important;
		padding: 0 10px !important;
		border: 0 !important;
		border-left: 3px solid transparent !important;
		border-radius: 5px !important;
		background: transparent !important;
		color: var(--th-forest, #20351a) !important;
		font-family: "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif !important;
		font-size: 15px !important;
		font-weight: 600 !important;
		line-height: 1.2 !important;
		box-shadow: none !important;
	}
	#masthead .elementor-element-6cd2e8a .jet-mega-menu-item__title {
		flex-direction: row !important;
		justify-content: flex-start !important;
		gap: .72rem !important;
		width: 100%;
	}
	#masthead .elementor-element-6cd2e8a .thsc-menu-icon {
		flex: 0 0 19px;
		width: 19px;
		color: var(--th-orange, #c45d22) !important;
		font-size: 15px !important;
	}
	#masthead .elementor-element-6cd2e8a .jet-mega-menu-item__link--top-level:hover,
	#masthead .elementor-element-6cd2e8a .jet-mega-menu-item__link--top-level:focus-visible {
		background: rgba(32, 53, 26, .07) !important;
		color: var(--th-orange, #c45d22) !important;
	}
	#masthead .elementor-element-6cd2e8a .jet-mega-current-menu-item > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level,
	#masthead .elementor-element-6cd2e8a .jet-menu-item--active > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level,
	#masthead .elementor-element-6cd2e8a .current-menu-item > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level,
	#masthead .elementor-element-6cd2e8a .current_page_item > .jet-mega-menu-item__inner > .jet-mega-menu-item__link--top-level {
		border-left-color: var(--th-orange, #c45d22) !important;
		background: rgba(196, 93, 34, .11) !important;
		color: var(--th-forest, #20351a) !important;
		box-shadow: none !important;
	}
	#masthead .thsc-mobile-primary-shop .jet-mega-menu-item__link--top-level,
	#masthead .thsc-mobile-primary-shop .jet-mega-menu-item__link--top-level:hover,
	#masthead .thsc-mobile-primary-shop .jet-mega-menu-item__link--top-level:focus-visible {
		min-height: 48px !important;
		margin-top: 2px !important;
		background: var(--th-forest, #20351a) !important;
		color: var(--th-cream, #fdfae2) !important;
	}
	#masthead .thsc-mobile-primary-shop .thsc-menu-icon {
		color: var(--th-orange, #c45d22) !important;
	}
	#masthead .thsc-mobile-account-item {
		display: block !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
	}
}


/* Header v3.1 alignment hotfix */
#masthead .elementor-element-a12a036 > .elementor-widget-container { margin: 0 !important; }
body.thsc-header-condensed #masthead .elementor-element-a12a036 > .elementor-widget-container { margin: 0 !important; }
@media (max-width: 767px) {
	html body, html body.admin-bar { padding-top: 0 !important; }
	#page { overflow: visible !important; }
	body.thsc-header-condensed #masthead .elementor-element-8654f17 { padding: 0 !important; }
	#masthead .elementor-element-6971ae9 > .elementor-widget-wrap {
		display: flex !important;
		align-content: center !important;
		align-items: center !important;
		justify-content: center !important;
		padding: 0 !important;
	}
	#masthead .elementor-element-a12a036 {
		position: static !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;
		transform: none !important;
	}
	#masthead .elementor-element-d66848f {
		right: 16px !important;
		flex: 0 0 54px !important;
		max-width: 54px !important;
	}
	#masthead .elementor-element-6cd2e8a .jet-mega-menu-item__inner {
		margin: 0 !important;
		padding: 0 !important;
	}
}

/* Branded Tramm & Hinners loading system ------------------------------- */
.thsc-brand-loader {
	position: fixed;
	inset: 0;
	z-index: 1000005;
	display: grid;
	place-items: center;
	padding: 24px;
	background: rgba(253, 250, 226, .94);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity .18s ease, visibility .18s ease;
}
body.thsc-global-loading {
	cursor: progress;
}
body.thsc-global-loading .thsc-brand-loader {
	opacity: 1;
	visibility: visible;
	pointer-events: all;
}
.thsc-brand-loader__panel {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 15px;
	min-width: min(270px, calc(100vw - 40px));
	padding: 24px 28px 22px;
	border: 1px solid rgba(32, 53, 26, .14);
	border-radius: 14px;
	background: rgba(255, 254, 247, .92);
	box-shadow: 0 18px 50px rgba(32, 53, 26, .16);
}
.thsc-brand-loader__mark {
	position: relative;
	display: grid;
	place-items: center;
	width: 92px;
	height: 92px;
}
.thsc-brand-loader__mark::before {
	content: "";
	position: absolute;
	inset: 3px;
	border: 1px solid rgba(196, 93, 34, .38);
	border-radius: 50%;
	animation: thsc-loader-ring 1.35s ease-in-out infinite;
}
.thsc-brand-loader__mark img {
	position: relative;
	z-index: 1;
	display: block;
	width: 78px;
	height: 78px;
	object-fit: contain;
	animation: thsc-loader-pulse 1.35s ease-in-out infinite;
	filter: drop-shadow(0 7px 13px rgba(32, 53, 26, .18));
}
.thsc-brand-loader__text {
	color: var(--th-forest, #20351a);
	font-family: "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif !important;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: .015em;
	text-align: center;
}
@keyframes thsc-loader-pulse {
	0%, 100% { opacity: .72; transform: scale(.94); }
	50% { opacity: 1; transform: scale(1.035); }
}
@keyframes thsc-loader-ring {
	0%, 100% { opacity: .28; transform: scale(.88); }
	50% { opacity: .85; transform: scale(1.06); }
}

/* Existing local spinners use the same brand mark. */
img.apsw_loader {
	content: url("/wp-content/uploads/2025/02/Logo-Tramm-Hinners0.png") !important;
	width: 34px !important;
	height: 34px !important;
	object-fit: contain !important;
	animation: thsc-loader-pulse 1.2s ease-in-out infinite !important;
}
.thsc-infinite-scroll__spinner {
	width: 38px !important;
	height: 38px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: url("/wp-content/uploads/2025/02/Logo-Tramm-Hinners0.png") center / contain no-repeat !important;
	animation: thsc-loader-pulse 1.2s ease-in-out infinite !important;
}
.jet-search-filter__input-loading::before,
.jet-popup-loader::before,
.woocommerce .blockUI.blockOverlay::before,
.woocommerce .loader::before {
	width: 52px !important;
	height: 52px !important;
	margin: -26px 0 0 -26px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: url("/wp-content/uploads/2025/02/Logo-Tramm-Hinners0.png") center / contain no-repeat !important;
	animation: thsc-loader-pulse 1.2s ease-in-out infinite !important;
}
.woocommerce .blockUI.blockOverlay {
	background: rgba(253, 250, 226, .78) !important;
	opacity: 1 !important;
}
@media (max-width: 767px) {
	.thsc-brand-loader { padding: 16px; }
	.thsc-brand-loader__panel {
		min-width: min(238px, calc(100vw - 32px));
		padding: 20px 22px 19px;
	}
	.thsc-brand-loader__mark { width: 80px; height: 80px; }
	.thsc-brand-loader__mark img { width: 68px; height: 68px; }
	.thsc-brand-loader__text { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
	.thsc-brand-loader,
	.thsc-brand-loader__mark::before,
	.thsc-brand-loader__mark img,
	img.apsw_loader,
	.thsc-infinite-scroll__spinner,
	.jet-search-filter__input-loading::before,
	.jet-popup-loader::before,
	.woocommerce .blockUI.blockOverlay::before,
	.woocommerce .loader::before {
		animation: none !important;
		transition: none !important;
	}
	.thsc-brand-loader__mark img { opacity: 1; transform: none; }
}


/* Header drawer interaction fixes --------------------------------------- */
#masthead .jet-blocks-cart__heading-link {
	cursor: pointer;
}
#masthead .jet-blocks-cart__list {
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
	transform: translateY(-9px) scale(.985) !important;
	transform-origin: top right;
	transition: none !important;
}
#masthead .jet-blocks-cart.thsc-cart-open .jet-blocks-cart__list {
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	transform: translateY(0) scale(1) !important;
}
#masthead .jet-blocks-cart__heading-link[aria-expanded="true"] {
	background: rgba(196, 93, 34, .11) !important;
	color: var(--th-orange, #c45d22) !important;
}
#masthead .thsc-empty-cart-actions {
	padding: 4px 18px 20px;
}
#masthead .thsc-empty-cart-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	width: 100%;
	min-height: 44px;
	padding: 10px 16px;
	border: 1px solid var(--th-forest, #20351a);
	border-radius: 5px;
	background: var(--th-forest, #20351a);
	color: var(--th-cream, #fdfae2) !important;
	font-family: "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif !important;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .035em;
	text-align: center;
	text-decoration: none !important;
	transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}
#masthead .thsc-empty-cart-link:hover,
#masthead .thsc-empty-cart-link:focus-visible {
	border-color: var(--th-orange, #c45d22);
	background: var(--th-orange, #c45d22);
	color: #fff !important;
}

@media (max-width: 767px) {
	#masthead .jet-mega-menu .jet-mega-menu-container {
		opacity: 0 !important;
		visibility: hidden !important;
		pointer-events: none !important;
		transform: translate3d(-104%, 0, 0) !important;
		transition: none !important;
	}
	#masthead .jet-mega-menu.jet-mega-menu--dropdown-open .jet-mega-menu-container {
		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto !important;
		transform: translate3d(0, 0, 0) !important;
	}
	body.thsc-mobile-menu-open {
		overflow: hidden !important;
	}
	#masthead .jet-blocks-cart__list {
		position: fixed !important;
		top: 60px !important;
		right: 10px !important;
		bottom: auto !important;
		left: auto !important;
		z-index: 99992 !important;
		width: min(340px, calc(100vw - 20px)) !important;
		max-width: none !important;
		max-height: calc(100dvh - 72px) !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		box-shadow: 0 16px 38px rgba(17, 31, 14, .24) !important;
	}
	body.admin-bar #masthead .jet-blocks-cart__list {
		top: 106px !important;
		max-height: calc(100dvh - 118px) !important;
	}
}
@media (prefers-reduced-motion: reduce) {
	#masthead .jet-mega-menu .jet-mega-menu-container,
	#masthead .jet-blocks-cart__list {
		transition: none !important;
	}
}


/* Unified category width, raised desktop navigation and multi-brand facets. */
@media (min-width: 768px) {
	#masthead .elementor-element-6cd2e8a .jet-mega-menu-list {
		transform: translateY(-3px);
	}
}
body.tax-product_cat .elementor-element-751dc4d > .elementor-container,
body.tax-product_brand .elementor-element-751dc4d > .elementor-container {
	width: 100% !important;
	max-width: none !important;
}

.thsc-taxonomy-checks {
	display: grid;
	gap: .45rem;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}
.thsc-taxonomy-checks legend {
	display: block;
	width: 100%;
	margin: 0 0 .15rem;
	padding: 0;
	color: var(--th-forest, #20351a);
	font-family: var(--thsc-font-text, "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif) !important;
	font-size: .9rem;
	font-weight: 700;
	letter-spacing: .01em;
}
.thsc-taxonomy-options {
	display: grid;
	gap: 2px;
	max-height: 230px;
	padding: 5px;
	overflow-x: hidden;
	overflow-y: auto;
	border: 1px solid var(--th-line, #d7dcd9);
	border-radius: 7px;
	background: #fff;
	scrollbar-color: var(--th-orange, #c45d22) transparent;
	scrollbar-width: thin;
}
.thsc-taxonomy-option {
	display: flex !important;
	align-items: center;
	gap: .6rem;
	min-height: 38px;
	margin: 0 !important;
	padding: 6px 8px;
	border-radius: 5px;
	color: var(--th-forest, #20351a);
	cursor: pointer;
	transition: background-color .15s ease, color .15s ease;
}
.thsc-taxonomy-option[hidden] {
	display: none !important;
}
.thsc-taxonomy-option:hover,
.thsc-taxonomy-option:focus-within {
	background: rgba(32, 53, 26, .07);
	color: var(--th-orange, #c45d22);
}
.thsc-taxonomy-option input[type="checkbox"] {
	flex: 0 0 19px;
	width: 19px !important;
	height: 19px !important;
	margin: 0;
	accent-color: var(--th-forest, #20351a);
}
.thsc-taxonomy-option > span {
	display: inline !important;
	margin: 0 !important;
	font-family: var(--thsc-font-text, "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.25;
}
.thsc-taxonomy-summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .75rem;
	min-height: 28px;
	color: #68716d;
	font-family: var(--thsc-font-text, "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif) !important;
	font-size: 12px;
}
.thsc-taxonomy-clear {
	min-height: 30px;
	padding: 3px 8px !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--th-orange, #c45d22) !important;
	font-family: var(--thsc-font-text, "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif) !important;
	font-size: 12px;
	text-decoration: underline;
	cursor: pointer;
}
.thsc-taxonomy-clear:disabled {
	opacity: .45;
	cursor: default;
}
.thsc-shop-filters.is-open .thsc-taxonomy-checks {
	padding-bottom: .9rem;
	border-bottom: 1px solid var(--th-line, #dedcc9);
}
@media (max-width: 767px) {
	.thsc-taxonomy-options {
		max-height: 270px;
	}
}


/* Compact manufacturer disclosure, centered product actions and calm AJAX v0.18.1 */
.thsc-taxonomy-checks legend.screen-reader-text {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}
.thsc-taxonomy-disclosure {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto 18px;
	align-items: center;
	gap: .65rem;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 8px 12px !important;
	border: 1px solid var(--th-line, #d7dcd9) !important;
	border-radius: 7px !important;
	background: #fff !important;
	color: var(--th-forest, #20351a) !important;
	font-family: var(--thsc-font-text, "ITC Resavska Sans Std Bold", "Roboto", Arial, sans-serif) !important;
	text-align: left;
	cursor: pointer;
	box-shadow: none !important;
	transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease;
}
.thsc-taxonomy-disclosure:hover,
.thsc-taxonomy-disclosure:focus-visible {
	border-color: var(--th-forest, #20351a) !important;
	background: rgba(32, 53, 26, .045) !important;
	color: var(--th-forest, #20351a) !important;
	box-shadow: 0 0 0 2px rgba(32, 53, 26, .09) !important;
	outline: 0;
}
.thsc-taxonomy-disclosure__label {
	font-size: 14px;
	font-weight: 700;
}
.thsc-taxonomy-disclosure__summary {
	color: #68716d;
	font-size: 12px;
	font-weight: 400;
	white-space: nowrap;
}
.thsc-taxonomy-disclosure__chevron {
	width: 9px;
	height: 9px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: translateY(-2px) rotate(45deg);
	transition: transform .18s ease;
}
.thsc-taxonomy-checks.is-expanded .thsc-taxonomy-disclosure__chevron {
	transform: translateY(2px) rotate(225deg);
}
.thsc-taxonomy-panel {
	display: grid;
	gap: .45rem;
	min-width: 0;
}
.thsc-taxonomy-panel[hidden] {
	display: none !important;
}
.thsc-taxonomy-checks.is-expanded .thsc-taxonomy-panel {
	animation: thsc-taxonomy-reveal .16s ease-out;
}
@keyframes thsc-taxonomy-reveal {
	from { opacity: 0; transform: translateY(-4px); }
	to { opacity: 1; transform: translateY(0); }
}

.jet-woo-products .jet-compare-button__container,
.jet-woo-products .jet-wishlist-button__container {
	display: grid !important;
	place-items: center !important;
	text-align: center !important;
}
.jet-woo-products .jet-compare-button__link,
.jet-woo-products .jet-wishlist-button__link {
	position: relative !important;
	display: grid !important;
	place-items: center !important;
	padding: 0 !important;
	text-align: center !important;
}
.jet-woo-products .jet-compare-button__link > *,
.jet-woo-products .jet-wishlist-button__link > * {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	white-space: nowrap !important;
}
.jet-woo-products .jet-compare-button__link::before,
.jet-woo-products .jet-wishlist-button__link::before {
	grid-area: 1 / 1 !important;
	align-self: center !important;
	justify-self: center !important;
	margin: 0 !important;
	text-align: center !important;
}

.thsc-shop-filters.is-loading {
	opacity: 1 !important;
}
body.thsc-filter-drawer-open .thsc-filter-backdrop,
body.thsc-filter-drawer-open .thsc-filter-backdrop:hover,
body.thsc-filter-drawer-open .thsc-filter-backdrop:focus,
body.thsc-filter-drawer-open .thsc-filter-backdrop:active,
.thsc-shop-filters.is-open .thsc-filter-backdrop:hover,
.thsc-shop-filters.is-open .thsc-filter-backdrop:focus {
	border: 0 !important;
	background: rgba(12, 20, 16, .58) !important;
	background-color: rgba(12, 20, 16, .58) !important;
	color: transparent !important;
	box-shadow: none !important;
	filter: none !important;
	outline: 0 !important;
	transform: none !important;
}

/* Club 30 and FAQ editorial pages --------------------------------------- */
.thsc-club30-page,
.thsc-faq-page {
	--th-editorial-green: var(--th-green, #193b1d);
	--th-editorial-orange: var(--th-orange, #c45d22);
	--th-editorial-cream: var(--th-cream, #fbf8df);
	--th-editorial-line: var(--th-line, #d9d4b8);
	width: min(1440px, calc(100% - 40px));
	margin: 32px auto 72px;
	color: #1d2f19;
}

.thsc-club30-page > section,
.thsc-faq-page > section {
	padding: clamp(34px, 5vw, 72px);
	border: 1px solid var(--th-editorial-line);
	border-top: 0;
	background: #fffef5;
}

.thsc-club30-page > section:first-child,
.thsc-faq-page > section:first-child {
	border-top: 4px solid var(--th-editorial-orange);
}

.thsc-club30-page h1,
.thsc-faq-page h1,
.thsc-club30-page h2,
.thsc-faq-page h2 {
	margin-top: 0;
	color: var(--th-editorial-green);
}

.thsc-club30-page h1,
.thsc-faq-page h1 {
	max-width: 920px;
	font-size: clamp(38px, 6vw, 76px);
	line-height: .98;
}

.thsc-club30-page h2,
.thsc-faq-page h2 {
	font-size: clamp(28px, 4vw, 48px);
	line-height: 1.08;
}

.thsc-club30-page p,
.thsc-faq-page p,
.thsc-club30-page li,
.thsc-faq-page li {
	font-size: clamp(16px, 1.5vw, 19px);
	line-height: 1.7;
}

.thsc-club30-page .thsc-eyebrow,
.thsc-faq-page .thsc-eyebrow {
	margin: 0 0 12px;
	color: var(--th-editorial-orange);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .14em;
	line-height: 1.3;
}

.thsc-club30-hero,
.thsc-faq-hero,
.thsc-club30-cta,
.thsc-faq-cta {
	color: #fff;
	background:
		linear-gradient(125deg, rgba(12, 40, 20, .98), rgba(31, 63, 27, .9)),
		var(--th-editorial-green);
}

.thsc-club30-hero h1,
.thsc-faq-hero h1,
.thsc-club30-cta h2,
.thsc-faq-cta h2,
.thsc-club30-hero p,
.thsc-faq-hero p,
.thsc-club30-cta p,
.thsc-faq-cta p {
	color: #fff;
}

.thsc-club30-hero .thsc-lead,
.thsc-faq-hero .thsc-lead {
	max-width: 820px;
	font-size: clamp(19px, 2.2vw, 28px);
}

.thsc-club30-page .thsc-button,
.thsc-faq-page .thsc-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	margin: 8px 8px 0 0;
	padding: 13px 22px;
	border: 1px solid var(--th-editorial-orange);
	border-radius: 4px;
	background: var(--th-editorial-orange);
	color: #fff !important;
	font-weight: 800;
	letter-spacing: .04em;
	text-decoration: none;
}

.thsc-club30-page .thsc-button:hover,
.thsc-faq-page .thsc-button:hover {
	border-color: #fff;
	background: #fff;
	color: var(--th-editorial-green) !important;
}

.thsc-club30-page .thsc-button-outline {
	border-color: rgba(255, 255, 255, .75);
	background: transparent;
}

.thsc-club30-timeline {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	margin-top: 28px;
}

.thsc-club30-timeline article {
	padding: 24px;
	border-top: 4px solid var(--th-editorial-orange);
	background: var(--th-editorial-cream);
}

.thsc-club30-timeline strong {
	color: var(--th-editorial-orange);
	font-size: 18px;
}

.thsc-club30-timeline h3 {
	margin: 8px 0;
	color: var(--th-editorial-green);
}

.thsc-club30-page ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px 28px;
	padding-left: 22px;
}

.thsc-club30-faq details,
.thsc-faq-list details {
	margin: 0 0 12px;
	border: 1px solid var(--th-editorial-line);
	background: #fff;
}

.thsc-club30-faq summary,
.thsc-faq-list summary {
	position: relative;
	padding: 20px 56px 20px 22px;
	color: var(--th-editorial-green);
	font-size: clamp(17px, 1.6vw, 20px);
	font-weight: 800;
	cursor: pointer;
	list-style: none;
}

.thsc-club30-faq summary::-webkit-details-marker,
.thsc-faq-list summary::-webkit-details-marker {
	display: none;
}

.thsc-club30-faq summary::after,
.thsc-faq-list summary::after {
	content: '+';
	position: absolute;
	top: 50%;
	right: 22px;
	color: var(--th-editorial-orange);
	font-size: 28px;
	transform: translateY(-50%);
}

.thsc-club30-faq details[open] summary::after,
.thsc-faq-list details[open] summary::after {
	content: '–';
}

.thsc-club30-faq details p,
.thsc-faq-list details p {
	margin: 0;
	padding: 0 22px 22px;
}

@media (max-width: 900px) {
	.thsc-club30-timeline,
	.thsc-club30-page ul {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 640px) {
	.thsc-club30-page,
	.thsc-faq-page {
		width: min(100% - 20px, 1440px);
		margin: 18px auto 48px;
	}

	.thsc-club30-page > section,
	.thsc-faq-page > section {
		padding: 28px 20px;
	}

	.thsc-club30-timeline,
	.thsc-club30-page ul {
		grid-template-columns: 1fr;
	}

	.thsc-club30-page .thsc-button,
	.thsc-faq-page .thsc-button {
		width: 100%;
		margin-right: 0;
	}
}

/* Editorial page specificity fixes. */
body.page-id-28451 .entry-header,
body.page-id-28453 .entry-header {
	display: none;
}

.thsc-club30-page > .thsc-club30-hero,
.thsc-faq-page > .thsc-faq-hero,
.thsc-club30-page > .thsc-club30-cta,
.thsc-faq-page > .thsc-faq-cta {
	color: #fff;
	background:
		linear-gradient(125deg, rgba(12, 40, 20, .98), rgba(31, 63, 27, .9)),
		var(--th-editorial-green);
}

body.page-id-28451 .page-header,
body.page-id-28453 .page-header {
	display: none;
}

