/* KMA Commerce visual system — scoped to approved storefront surfaces. */
body.kma-core-storefront {
	--kma-ink: #171715;
	--kma-ink-soft: #25231f;
	--kma-gold: #c59a52;
	--kma-gold-light: #ead8b6;
	--kma-canvas: #f6f2ea;
	--kma-paper: #fff;
	--kma-text: #26231f;
	--kma-muted: #716b62;
	--kma-line: #e3dbce;
	--kma-success: #277052;
	--kma-radius-sm: 10px;
	--kma-radius: 18px;
	--kma-radius-lg: 28px;
	--kma-shadow: 0 16px 50px rgb(23 23 21 / 10%);
	--kma-shadow-hover: 0 24px 65px rgb(23 23 21 / 16%);
	background: var(--kma-canvas);
	color: var(--kma-text);
	-webkit-font-smoothing: antialiased;
}

/* KMA area and package calculator. */
.kma-quantity-calculator{margin:18px 0;padding:18px;border:1px solid #e4dacb;border-radius:15px;background:#faf8f4}
.kma-calculator-heading{display:flex;align-items:center;gap:11px;margin-bottom:14px}.kma-calculator-heading>span{display:grid;width:34px;height:34px;flex:0 0 34px;border-radius:10px;color:#8c6122;background:#f0e1c5;place-items:center}.kma-calculator-heading strong,.kma-calculator-heading small{display:block}.kma-calculator-heading strong{font-size:12px}.kma-calculator-heading small{margin-top:2px;color:#777066;font-size:9px}
.kma-calculator-fields{display:grid;grid-template-columns:1fr 1fr .8fr;gap:8px}.kma-calculator-fields label{color:#665f55;font-size:9px;font-weight:700}.kma-calculator-fields label>span{display:flex;align-items:center;height:40px;margin-top:5px;overflow:hidden;border:1px solid #ddd2c2;border-radius:10px;background:#fff}.kma-calculator-fields input,.kma-calculator-fields select{width:100%;height:100%;min-height:0!important;padding:8px 10px!important;border:0!important;background:transparent!important;font-size:12px!important;box-shadow:none!important}.kma-calculator-fields em{padding-right:10px;color:#8a8175;font-size:10px;font-style:normal}
.kma-calculator-result{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:8px;margin-top:10px;padding:11px;border-radius:11px;background:#1b1a17;color:#fff}.kma-calculator-result span{display:flex;flex-direction:column}.kma-calculator-result small{color:#aaa397;font-size:8px}.kma-calculator-result strong{margin-top:2px;color:#e4c47f;font-size:13px}.kma-calculator-result button{min-height:36px;padding:8px 12px;border:0;border-radius:999px;color:#17130d;background:#d3a653;font-size:9px;font-weight:800}.kma-calculator-result button:disabled{cursor:not-allowed;opacity:.45}.kma-calculator-note{margin:8px 2px 0!important;color:#81786d;font-size:8px!important;line-height:1.45!important}
@media(max-width:520px){.kma-calculator-fields{grid-template-columns:1fr 1fr}.kma-calculator-fields label:last-child{grid-column:1/-1}.kma-calculator-result{grid-template-columns:1fr 1fr}.kma-calculator-result button{grid-column:1/-1}}

body.kma-core-storefront :where(a, button, input, select, textarea, summary):focus-visible {
	outline: 3px solid var(--kma-gold) !important;
	outline-offset: 3px;
}

body.kma-core-storefront .site-main {
	background:
		radial-gradient(circle at 10% 0%, rgb(197 154 82 / 8%), transparent 28rem),
		var(--kma-canvas);
}

body.kma-core-storefront .hero-section:not(.kma-home-hero) {
	padding-block: clamp(42px, 7vw, 88px);
	background: linear-gradient(125deg, #121210 0%, #28241e 70%, #3a2d1c 100%);
}

body.kma-core-storefront .hero-section .page-title,
body.kma-core-storefront .hero-section .ct-title-label {
	color: var(--kma-paper);
	font-size: clamp(2rem, 5vw, 4rem);
	letter-spacing: -0.035em;
}

body.kma-core-storefront .ct-breadcrumbs,
body.kma-core-storefront .ct-breadcrumbs a {
	color: var(--kma-gold-light);
}

body.kma-core-storefront :where(.ct-container, .ct-container-full) {
	--theme-container-edge-spacing: clamp(18px, 4vw, 48px);
}

body.kma-core-storefront .site-main :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
	min-height: 50px;
	border: 1px solid var(--kma-line);
	border-radius: var(--kma-radius-sm);
	background: var(--kma-paper);
	box-shadow: inset 0 1px 2px rgb(23 23 21 / 3%);
}

body.kma-core-storefront .site-main :where(.button, button, input[type="submit"], .wp-element-button) {
	min-height: 48px;
	padding-inline: 24px;
	border: 1px solid var(--kma-gold);
	border-radius: 999px;
	background: var(--kma-gold);
	color: var(--kma-ink);
	font-weight: 750;
	box-shadow: 0 8px 22px rgb(197 154 82 / 22%);
	transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

body.kma-core-storefront .site-main :where(.button, button, input[type="submit"], .wp-element-button):hover {
	background: #d6ad67;
	box-shadow: 0 12px 30px rgb(197 154 82 / 30%);
	transform: translateY(-1px);
}

/* Shop, category, search and product cards. */
body.kma-core-storefront .woo-listing-top {
	margin-bottom: 24px;
	padding: 14px 18px;
	border: 1px solid var(--kma-line);
	border-radius: var(--kma-radius);
	background: rgb(255 255 255 / 86%);
	box-shadow: 0 8px 30px rgb(23 23 21 / 6%);
	backdrop-filter: blur(12px);
}

body.kma-core-storefront .woocommerce-ordering select {
	min-width: 220px;
}

body.kma-core-storefront ul.products {
	gap: clamp(18px, 2.5vw, 30px) !important;
}

body.kma-core-storefront ul.products li.product {
	overflow: hidden;
	padding: 0 0 22px;
	border: 1px solid var(--kma-line);
	border-radius: var(--kma-radius);
	background: var(--kma-paper);
	box-shadow: 0 8px 28px rgb(23 23 21 / 7%);
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

body.kma-core-storefront ul.products li.product:hover {
	border-color: var(--kma-gold-light);
	box-shadow: var(--kma-shadow-hover);
	transform: translateY(-5px);
}

body.kma-core-storefront ul.products li.product > :not(figure) {
	margin-inline: 20px;
}

body.kma-core-storefront ul.products li.product figure,
body.kma-core-storefront ul.products li.product .ct-media-container {
	overflow: hidden;
	border-radius: var(--kma-radius) var(--kma-radius) 0 0;
	background: #eee8de;
}

body.kma-core-storefront ul.products li.product img {
	transition: transform 350ms ease;
}

body.kma-core-storefront ul.products li.product:hover img {
	transform: scale(1.035);
}

body.kma-core-storefront .woocommerce-loop-product__title {
	font-size: clamp(1rem, 1.5vw, 1.2rem);
	line-height: 1.45;
}

body.kma-core-storefront .price {
	color: var(--kma-ink);
	font-size: 1.08rem;
	font-weight: 800;
}

body.kma-core-storefront .onsale {
	margin: 14px;
	border-radius: 999px;
	background: var(--kma-gold);
	color: var(--kma-ink);
}

/* Filters. */
body.kma-core-storefront :where(.wpc-filters-widget-wrapper, .wp-block-woocommerce-filter-wrapper) {
	margin-bottom: 16px;
	padding: 18px;
	border: 1px solid var(--kma-line);
	border-radius: var(--kma-radius);
	background: var(--kma-paper);
}

body.kma-core-storefront :where(.wpc-filter-title, .wp-block-woocommerce-filter-wrapper h3) {
	margin: 0 0 14px;
	color: var(--kma-ink);
	font-size: 0.92rem;
	letter-spacing: 0.04em;
}

/* Single product. */
body.kma-core-storefront.single-product .product-entry-wrapper {
	align-items: center;
	gap: clamp(24px, 4vw, 54px);
	margin-block: clamp(24px, 4vw, 56px);
	padding: clamp(20px, 3.5vw, 52px);
	border: 1px solid #e6dccb;
	border-radius: clamp(24px, 4vw, 42px);
	background:
		radial-gradient(circle at 94% 2%, rgb(197 154 82 / 14%), transparent 28rem),
		linear-gradient(135deg, #fbf8f2 0%, #f1eadf 100%);
	box-shadow: 0 28px 80px rgb(54 43 27 / 12%);
}

body.kma-core-storefront.single-product .woocommerce-product-gallery,
body.kma-core-storefront.single-product .entry-summary {
	padding: clamp(18px, 3vw, 34px);
	border: 1px solid rgb(219 205 182 / 75%);
	border-radius: var(--kma-radius-lg);
	background: rgb(255 255 255 / 96%);
	box-shadow: 0 18px 50px rgb(54 43 27 / 11%);
}

body.kma-core-storefront.single-product .entry-summary {
	position: relative;
	overflow: hidden;
	z-index: 2;
	margin-left: clamp(-54px, -4vw, -24px);
	padding: clamp(28px, 4vw, 48px);
	border-color: rgb(197 154 82 / 36%);
	box-shadow: 0 26px 70px rgb(54 43 27 / 18%);
}

body.kma-core-storefront.single-product .entry-summary::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 6px;
	background: linear-gradient(90deg, #8d642d, var(--kma-gold), #ead8b6);
	content: "";
}

body.kma-core-storefront.single-product .woocommerce-product-gallery img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 680px;
	object-fit: contain;
	border-radius: var(--kma-radius);
}

body.kma-core-storefront.single-product .woocommerce-product-gallery {
	padding: clamp(12px, 2vw, 22px);
	background:
		radial-gradient(circle at 50% 40%, #fff 0%, transparent 42%),
		linear-gradient(145deg, #f8f3e9, #e9dfcf);
}

body.kma-core-storefront.single-product .woocommerce-product-gallery .ct-product-gallery-container {
	width: 100%;
}

body.kma-core-storefront.single-product .woocommerce-product-gallery .ct-media-container {
	width: 100%;
	margin: 0;
	border-radius: var(--kma-radius);
	background: transparent;
}

body.kma-core-storefront.single-product .entry-summary .ct-breadcrumbs {
	margin-bottom: 20px;
	color: #8d7b61;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

body.kma-core-storefront.single-product .entry-summary .ct-breadcrumbs a {
	color: #8d7b61;
}

body.kma-core-storefront.single-product .product_title {
	max-width: 18ch;
	font-size: clamp(1.8rem, 3.4vw, 3rem);
	line-height: 1.12;
	letter-spacing: -0.035em;
}

body.kma-core-storefront.single-product .product_title::after {
	display: block;
	width: 72px;
	height: 3px;
	margin-top: 20px;
	border-radius: 99px;
	background: var(--kma-gold);
	content: "";
}

body.kma-core-storefront.single-product .entry-summary .price {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 8px;
	margin-block: 22px;
	font-size: clamp(1.4rem, 3vw, 2rem);
	color: #9a6d2e;
}

body.kma-core-storefront.single-product .entry-summary .price ins {
	text-decoration: none;
}

body.kma-core-storefront.single-product .entry-summary .sale-price {
	display: inline-flex;
	align-items: baseline;
	gap: 10px;
}

body.kma-core-storefront.single-product .entry-summary .price del {
	margin-right: 10px;
	color: #9d9589;
	font-size: 0.68em;
}

body.kma-core-storefront.single-product .entry-summary .woocommerce-price-suffix {
	color: #766a58;
	font-size: 0.56em;
	font-weight: 750;
	letter-spacing: 0.02em;
}

body.kma-core-storefront.single-product .stock.in-stock {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 8px 0 0;
	padding: 8px 13px;
	border-radius: 999px;
	background: #e9f3ec;
	color: #28643f;
	font-size: 0.86rem;
	font-weight: 750;
}

body.kma-core-storefront.single-product .stock.in-stock::before {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #3b8a58;
	content: "";
}

body.kma-core-storefront.single-product .woocommerce-product-details__short-description {
	color: #625b51;
	font-size: 1rem;
	line-height: 1.8;
}

body.kma-core-storefront.single-product form.cart {
	display: flex;
	align-items: stretch;
	flex-wrap: nowrap;
	gap: 12px;
	margin-top: 28px;
	padding-top: 24px;
	border-top: 1px solid var(--kma-line);
}

body.kma-core-storefront.single-product .single_add_to_cart_button {
	display: inline-flex !important;
	flex: 1 1 260px !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	min-width: 220px !important;
	min-height: 56px !important;
	padding-inline: 34px !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, #d8b36d, #b7833e) !important;
	box-shadow: 0 14px 32px rgb(181 130 61 / 34%) !important;
	white-space: nowrap;
}

body.kma-core-storefront.single-product .quantity {
	flex: 0 0 116px;
}

body.kma-core-storefront.single-product .quantity input.qty {
	width: 100% !important;
	min-height: 56px;
	border-color: #cfb17c;
}

body.kma-core-storefront.single-product .kma-product-assurances {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid var(--kma-line);
}

body.kma-core-storefront.single-product .kma-product-assurances span {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #5e574d;
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1.35;
}

body.kma-core-storefront.single-product .kma-product-assurances i {
	display: inline-grid;
	flex: 0 0 25px;
	width: 25px;
	height: 25px;
	place-items: center;
	border-radius: 50%;
	background: #f1e2c7;
	color: #81591f;
	font-style: normal;
}

body.kma-core-storefront.single-product .product_meta {
	display: grid;
	gap: 10px;
	margin-top: 22px;
	padding: 18px 20px;
	border: 1px solid var(--kma-line);
	border-radius: var(--kma-radius-sm);
	background: #faf7f1;
	color: #756d62;
	font-size: 0.82rem;
}

body.kma-core-storefront.single-product .product_meta a {
	color: #8a622b;
	font-weight: 700;
}

/* Boutique sidebar. */
body.kma-core-storefront #sidebar .ct-sidebar {
	gap: 20px;
}

body.kma-core-storefront #sidebar .ct-widget {
	padding: 22px;
	border: 1px solid var(--kma-line);
	border-radius: var(--kma-radius);
	background: rgb(255 255 255 / 88%);
	box-shadow: 0 12px 36px rgb(54 43 27 / 8%);
}

body.kma-core-storefront #sidebar .widget-title {
	margin-bottom: 20px;
	padding-bottom: 13px;
	border-bottom: 2px solid #d1a859;
	color: var(--kma-ink);
	font-size: 1rem !important;
	letter-spacing: 0.01em;
}

body.kma-core-storefront #sidebar .product_list_widget li {
	gap: 13px;
	padding-block: 13px;
	border-bottom: 1px solid var(--kma-line);
}

body.kma-core-storefront #sidebar .product_list_widget img {
	border-radius: 9px;
}

body.kma-core-storefront #sidebar .product-title {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	font-size: 0.86rem;
	line-height: 1.45;
}

body.kma-core-storefront #sidebar .price {
	margin-top: 6px;
	font-size: 0.82rem;
}

body.kma-core-storefront.single-product .woocommerce-tabs,
body.kma-core-storefront.single-product .related {
	margin-block: clamp(40px, 7vw, 88px);
	padding: clamp(22px, 4vw, 40px);
	border: 1px solid var(--kma-line);
	border-radius: var(--kma-radius-lg);
	background: var(--kma-paper);
	box-shadow: 0 12px 40px rgb(23 23 21 / 7%);
}

body.kma-core-storefront.single-product .woocommerce-tabs ul.tabs {
	gap: 8px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--kma-line);
}

body.kma-core-storefront.single-product .woocommerce-tabs ul.tabs a {
	padding: 10px 16px;
	border-radius: 999px;
	font-weight: 750;
}

body.kma-core-storefront.single-product .woocommerce-tabs ul.tabs .active a {
	background: #f0e1c5;
	color: #6f4b18;
}

body.kma-core-storefront.single-product .related > h2 {
	margin-bottom: 28px;
	font-size: clamp(1.7rem, 3vw, 2.5rem);
	letter-spacing: -0.025em;
}

/* Cart and checkout. */
body.kma-core-storefront :where(.woocommerce-cart-form, .cart_totals, .woocommerce-checkout-review-order, .woocommerce-billing-fields, .woocommerce-shipping-fields, .woocommerce-additional-fields) {
	padding: clamp(20px, 3vw, 34px);
	border: 1px solid var(--kma-line);
	border-radius: var(--kma-radius-lg);
	background: var(--kma-paper);
	box-shadow: var(--kma-shadow);
}

body.kma-core-storefront table.shop_table {
	overflow: hidden;
	border: 1px solid var(--kma-line);
	border-radius: var(--kma-radius);
	background: var(--kma-paper);
}

body.kma-core-storefront table.shop_table th {
	background: #f0eadf;
	color: var(--kma-ink);
}

body.kma-core-storefront .woocommerce-error,
body.kma-core-storefront .woocommerce-info,
body.kma-core-storefront .woocommerce-message {
	border: 1px solid var(--kma-gold-light);
	border-radius: var(--kma-radius);
	background: var(--kma-paper);
	box-shadow: 0 8px 28px rgb(23 23 21 / 7%);
}

/* My Account. */
body.kma-core-storefront.woocommerce-account .woocommerce {
	gap: 28px;
	padding-block: clamp(30px, 5vw, 64px);
}

body.kma-core-storefront .woocommerce-MyAccount-navigation,
body.kma-core-storefront .woocommerce-MyAccount-content,
body.kma-core-storefront .woocommerce-form-login,
body.kma-core-storefront .woocommerce-form-register {
	padding: clamp(20px, 3vw, 32px);
	border: 1px solid var(--kma-line);
	border-radius: var(--kma-radius-lg);
	background: var(--kma-paper);
	box-shadow: var(--kma-shadow);
}

body.kma-core-storefront .woocommerce-MyAccount-navigation ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

body.kma-core-storefront .woocommerce-MyAccount-navigation a {
	display: block;
	padding: 13px 16px;
	border-bottom: 1px solid var(--kma-line);
	color: var(--kma-text);
	font-weight: 650;
}

body.kma-core-storefront .woocommerce-MyAccount-navigation .is-active a {
	border-radius: var(--kma-radius-sm);
	background: var(--kma-ink);
	color: var(--kma-gold-light);
}

/* Footer harmony, without replacing Blocksy templates. */
body.kma-core-storefront .site-footer {
	border-top: 1px solid rgb(197 154 82 / 24%);
	background: var(--kma-ink);
	color: #ded7ca;
}

body.kma-core-storefront .site-footer a {
	color: var(--kma-gold-light);
}

@media (max-width: 782px) {
	body.kma-core-storefront ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.kma-core-storefront .woocommerce-ordering,
	body.kma-core-storefront .woocommerce-ordering select {
		width: 100%;
	}

	body.kma-core-storefront .product-entry-wrapper,
	body.kma-core-storefront .woocommerce {
		grid-template-columns: 1fr !important;
	}

	body.kma-core-storefront.single-product .product-entry-wrapper {
		margin-inline: 12px;
		padding: 14px;
		border-radius: 24px;
	}

	body.kma-core-storefront.single-product .entry-summary {
		margin-left: 0;
		padding: 26px 20px;
	}

	body.kma-core-storefront.single-product .kma-product-assurances {
		grid-template-columns: 1fr;
	}

	body.kma-core-storefront.single-product form.cart {
		flex-wrap: wrap;
	}

	body.kma-core-storefront.single-product .single_add_to_cart_button {
		flex-basis: 100% !important;
		width: 100% !important;
	}
}

@media (max-width: 480px) {
	body.kma-core-storefront ul.products {
		grid-template-columns: 1fr !important;
	}

	body.kma-core-storefront ul.products li.product > :not(figure) {
		margin-inline: 16px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.kma-core-storefront *,
	body.kma-core-storefront *::before,
	body.kma-core-storefront *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* Sprint 31: refined catalog and product Boutique experience. */
body.kma-core-storefront .site-main{padding-bottom:72px}
body.kma-core-storefront .hero-section:not(.kma-home-hero){padding-block:clamp(34px,5vw,66px);background:radial-gradient(circle at 82% 0,rgb(197 154 82 / 32%),transparent 28rem),linear-gradient(125deg,#151411,#2b2720)}
body.kma-core-storefront .hero-section .page-title{font-size:clamp(2rem,4vw,3.4rem)}
.kma-catalog-intro{display:grid;grid-template-columns:repeat(3,1fr);grid-column:1/-1;gap:0;margin:0 0 24px;overflow:hidden;border:1px solid #dfd4c4;border-radius:18px;background:#fff;box-shadow:0 12px 34px rgb(48 39 26 / 6%)}
.kma-catalog-intro>span{display:grid;grid-template-columns:42px 1fr;align-items:center;padding:17px 20px;border-right:1px solid #e8e0d5}.kma-catalog-intro>span:last-child{border:0}.kma-catalog-intro b{display:grid;grid-row:1/span 2;width:34px;height:34px;border-radius:50%;color:#986b27;background:#f3e6ce;font-size:17px;place-items:center}.kma-catalog-intro strong,.kma-catalog-intro small{grid-column:2;display:block}.kma-catalog-intro strong{font-size:12px}.kma-catalog-intro small{margin-top:3px;color:#7d7569;font-size:9px}
body.kma-core-storefront.kma-core-catalog-view .site-main>.ct-container{padding-top:32px}
body.kma-core-storefront ul.products{align-items:stretch;row-gap:30px!important}
body.kma-core-storefront ul.products li.product{display:flex;min-width:0;height:100%;flex-direction:column;padding-bottom:18px;border-color:#e2d9cc;border-radius:20px;box-shadow:0 10px 30px rgb(37 31 23 / 7%)}
body.kma-core-storefront ul.products li.product figure,body.kma-core-storefront ul.products li.product .ct-media-container{aspect-ratio:1/1;overflow:hidden;background:linear-gradient(145deg,#faf8f4,#eee8dd)}
body.kma-core-storefront ul.products li.product img{width:100%!important;height:100%!important;object-fit:contain!important;transform:none!important;transition:transform .28s ease}
body.kma-core-storefront ul.products li.product:hover img{transform:scale(1.025)!important}
body.kma-core-storefront ul.products li.product .woocommerce-loop-product__title{display:-webkit-box;min-height:2.9em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:15px;line-height:1.45}
body.kma-core-storefront ul.products li.product .price{margin-top:10px;color:#9a6d29;font-size:16px;font-weight:800}
body.kma-core-storefront ul.products li.product .price del{color:#9a958c;font-size:.78em;font-weight:500}
body.kma-core-storefront ul.products li.product .button{width:calc(100% - 40px);margin:auto 20px 0!important;min-height:44px;padding:10px 16px!important;text-align:center}
body.kma-core-storefront ul.products li.product .onsale{top:14px;left:14px;padding:6px 10px;border-radius:999px;color:#241d13;background:#d8b46d;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
body.kma-core-storefront .woocommerce-pagination{margin-top:42px}body.kma-core-storefront .woocommerce-pagination .page-numbers{display:flex;gap:7px;justify-content:center}body.kma-core-storefront .woocommerce-pagination a,body.kma-core-storefront .woocommerce-pagination span{display:grid;min-width:40px;height:40px;padding:0;border:1px solid #ded5c8;border-radius:50%;background:#fff;place-items:center}body.kma-core-storefront .woocommerce-pagination .current{border-color:#bd8e42;color:#fff;background:#bd8e42}

body.kma-core-storefront.single-product .product-entry-wrapper{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(400px,.92fr)!important;gap:clamp(28px,4vw,58px)!important;align-items:start!important;margin-block:clamp(28px,4vw,58px)!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.kma-core-storefront.single-product .woocommerce-product-gallery{box-sizing:border-box;width:100%!important;margin:0!important;padding:clamp(18px,2.5vw,30px)!important;border:1px solid #e1d7c8!important;border-radius:26px!important;background:linear-gradient(145deg,#faf8f4,#eee7dc)!important;box-shadow:0 18px 52px rgb(50 40 26 / 9%)!important}
body.kma-core-storefront.single-product .woocommerce-product-gallery .ct-product-gallery-container{min-height:0!important}
body.kma-core-storefront.single-product .woocommerce-product-gallery .ct-media-container{aspect-ratio:1/1!important;overflow:hidden;border-radius:18px!important;background:#f8f5ef!important}
body.kma-core-storefront.single-product .woocommerce-product-gallery img{width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;border-radius:18px!important}
body.kma-core-storefront.single-product .entry-summary{position:sticky!important;top:30px!important;box-sizing:border-box;width:100%!important;margin:0!important;padding:clamp(28px,3.5vw,44px)!important;overflow:hidden;border:1px solid rgb(197 154 82 / 35%)!important;border-radius:26px!important;background:#fff!important;box-shadow:0 22px 62px rgb(49 38 23 / 13%)!important}
body.kma-core-storefront.single-product .entry-summary::before{height:5px}
body.kma-core-storefront.single-product .product_title{max-width:none!important;margin-top:4px;font-size:clamp(1.9rem,3vw,2.75rem)!important;line-height:1.15!important}
body.kma-core-storefront.single-product .product_title::after{width:58px;margin-top:17px}
body.kma-core-storefront.single-product .entry-summary .price{margin-block:19px;font-size:clamp(1.45rem,2.4vw,1.95rem)}
body.kma-core-storefront.single-product .woocommerce-product-details__short-description{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4;font-size:14px;line-height:1.7}
body.kma-core-storefront.single-product form.cart{gap:11px;margin-top:22px;padding-top:21px}
body.kma-core-storefront.single-product .single_add_to_cart_button{min-height:54px!important}
body.kma-core-storefront.single-product .kma-product-assurances{grid-template-columns:1fr;gap:0;margin-top:20px;padding:13px 0 0}
body.kma-core-storefront.single-product .kma-product-assurances span{padding:8px 0;border-bottom:1px solid #eee7dc;font-size:11px}body.kma-core-storefront.single-product .kma-product-assurances span:last-child{border:0}
body.kma-core-storefront.single-product .product_meta{margin-top:17px;padding:15px 17px}
body.kma-core-storefront.single-product .woocommerce-tabs,body.kma-core-storefront.single-product .related{border-radius:24px}
body.kma-core-storefront.single-product .related ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media(max-width:1020px){body.kma-core-storefront.single-product .product-entry-wrapper{grid-template-columns:1fr!important;max-width:820px;margin-right:auto!important;margin-left:auto!important}body.kma-core-storefront.single-product .entry-summary{position:static!important}.kma-catalog-intro{grid-template-columns:1fr}.kma-catalog-intro>span{border-right:0;border-bottom:1px solid #e8e0d5}.kma-catalog-intro>span:last-child{border-bottom:0}body.kma-core-storefront.single-product .related ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){body.kma-core-storefront ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}body.kma-core-storefront ul.products li.product> :not(figure){margin-inline:13px}body.kma-core-storefront ul.products li.product .button{width:calc(100% - 26px);margin-right:13px!important;margin-left:13px!important;font-size:11px!important}body.kma-core-storefront.single-product .product-entry-wrapper{margin-top:18px!important}body.kma-core-storefront.single-product .woocommerce-product-gallery,body.kma-core-storefront.single-product .entry-summary{padding:16px!important;border-radius:18px!important}body.kma-core-storefront.single-product form.cart{flex-wrap:wrap}body.kma-core-storefront.single-product .quantity{flex:1 1 100px}body.kma-core-storefront.single-product .single_add_to_cart_button{flex:1 1 190px!important;min-width:0!important}body.kma-core-storefront.single-product .related ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Sprint 31.1: modern editorial storefront. */
body.kma-core-catalog-view{background:#f6f2e9!important;color:#181714}
body.kma-core-catalog-view .hero-section{display:none!important}
body.kma-core-catalog-view #sidebar{display:none!important}
body.kma-core-catalog-view .site-main>.ct-container{display:block!important;width:min(1480px,calc(100% - 48px))!important;max-width:none!important;margin-inline:auto!important;padding:28px 0 80px!important}
body.kma-core-catalog-view .content-area{width:100%!important;max-width:none!important;margin:0!important}
body.kma-core-catalog-view .woocommerce-notices-wrapper{margin-bottom:18px}
.kma-shop-hero{display:grid;grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr);min-height:560px;margin-bottom:68px;overflow:hidden;border-radius:30px;background:#151512;box-shadow:0 28px 70px rgb(31 26 18 / 18%)}
.kma-shop-hero__copy{display:flex;position:relative;z-index:1;align-items:flex-start;justify-content:center;flex-direction:column;padding:clamp(44px,6vw,92px);color:#fff}
.kma-shop-hero__copy::before{position:absolute;top:56px;left:clamp(44px,6vw,92px);width:44px;height:2px;background:#c99b4c;content:""}
.kma-eyebrow{display:block;margin-bottom:15px;color:#ae7d30;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.kma-shop-hero .kma-eyebrow{margin-top:28px;color:#e2bd77}
.kma-shop-hero h1{max-width:650px;margin:0;color:#fff;font-size:clamp(2.55rem,4.7vw,5.2rem);font-weight:650;line-height:.99;letter-spacing:-.055em}
.kma-shop-hero p{max-width:510px;margin:27px 0 34px;color:#d6d0c4;font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.65}
.kma-hero-button{display:inline-flex;align-items:center;gap:24px;padding:15px 23px;border:1px solid #d0a95f;border-radius:999px;color:#201b13!important;background:linear-gradient(135deg,#eed597,#bd8839);font-size:13px;font-weight:800;box-shadow:0 12px 30px rgb(190 139 59 / 20%);transition:transform .2s ease,box-shadow .2s ease}
.kma-hero-button:hover{transform:translateY(-2px);box-shadow:0 17px 34px rgb(190 139 59 / 30%)}
.kma-shop-hero__visual{min-height:560px;background-position:center;background-size:cover}
.kma-section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:25px}
.kma-section-heading h2,.kma-products-heading h2{margin:0;color:#181714;font-size:clamp(2rem,3.2vw,3.25rem);font-weight:650;line-height:1;letter-spacing:-.045em}
.kma-section-heading>a{padding-bottom:5px;border-bottom:1px solid #b8873d;color:#8c6225!important;font-size:12px;font-weight:750}
.kma-category-showcase{margin-bottom:42px}
.kma-category-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}
.kma-category-card{display:flex;position:relative;align-items:flex-end;justify-content:space-between;min-height:310px;padding:22px;overflow:hidden;border-radius:19px;color:#fff!important;background:#2b2924;isolation:isolate;box-shadow:0 12px 30px rgb(38 31 21 / 10%)}
.kma-category-card::before{position:absolute;z-index:-2;inset:0;background-image:var(--kma-category-image);background-position:center;background-size:cover;content:"";transition:transform .45s ease}
.kma-category-card::after{position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,transparent 35%,rgb(9 9 8 / 82%) 100%);content:""}
.kma-category-card:hover::before{transform:scale(1.045)}
.kma-category-card__content{display:flex;min-width:0;flex-direction:column}.kma-category-card__content strong{font-size:15px;line-height:1.25}.kma-category-card__content small{margin-top:5px;color:#ddd5c6;font-size:10px}
.kma-category-card>b{display:grid;width:34px;height:34px;flex:0 0 34px;border:1px solid rgb(255 255 255 / 45%);border-radius:50%;font-size:14px;place-items:center}
.kma-shop-benefits{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 70px;overflow:hidden;border:1px solid #ddd3c4;border-radius:18px;background:#fff;box-shadow:0 12px 34px rgb(48 39 26 / 5%)}
.kma-shop-benefits>span{display:grid;grid-template-columns:46px 1fr;align-items:center;padding:20px 24px;border-right:1px solid #e8e0d5}.kma-shop-benefits>span:last-child{border:0}.kma-shop-benefits b{display:grid;grid-row:1/span 2;width:36px;height:36px;border-radius:50%;color:#8c6122;background:#f3e7d1;font-size:16px;place-items:center}.kma-shop-benefits strong,.kma-shop-benefits small{grid-column:2}.kma-shop-benefits strong{font-size:12px}.kma-shop-benefits small{margin-top:3px;color:#777066;font-size:9px}
.kma-products-heading{display:flex;align-items:end;justify-content:space-between;margin:0 0 22px;padding-top:6px;scroll-margin-top:110px}.kma-products-heading p{margin:0;color:#756f66;font-size:12px}
body.kma-core-catalog-view .woocommerce-result-count{margin:12px 0 27px;color:#777066;font-size:12px}
body.kma-core-catalog-view .woocommerce-ordering{margin:-55px 0 27px auto}
body.kma-core-catalog-view .woocommerce-ordering select{min-width:220px;border:1px solid #d8cdbd;border-radius:999px;background:#fff;font-size:12px}
body.kma-core-catalog-view ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important;clear:both}
body.kma-core-catalog-view ul.products li.product-category{display:none!important}
body.kma-core-catalog-view ul.products li.product{padding-bottom:20px;border:1px solid #e1d8cb;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgb(37 31 23 / 6%);transition:transform .25s ease,box-shadow .25s ease}
body.kma-core-catalog-view ul.products li.product:hover{transform:translateY(-5px);box-shadow:0 22px 44px rgb(37 31 23 / 12%)}
body.kma-core-catalog-view ul.products li.product figure,body.kma-core-catalog-view ul.products li.product .ct-media-container{aspect-ratio:1/1.12;background:#eee9df}
body.kma-core-catalog-view ul.products li.product img{object-fit:cover!important}
body.kma-core-catalog-view ul.products li.product .woocommerce-loop-product__title{font-size:14px;line-height:1.42}
body.kma-core-catalog-view ul.products li.product .button{border-radius:999px!important;color:#fff!important;background:#171714!important;font-size:11px!important}
body.kma-core-catalog-view ul.products li.product .button:hover{color:#1d1811!important;background:#d0a552!important}
@media(max-width:1100px){.kma-shop-hero{grid-template-columns:1fr 1fr;min-height:500px}.kma-shop-hero__visual{min-height:500px}.kma-category-grid{grid-template-columns:repeat(3,1fr)}.kma-category-card{min-height:280px}.kma-shop-benefits{grid-template-columns:repeat(2,1fr)}.kma-shop-benefits>span:nth-child(2){border-right:0}.kma-shop-benefits>span:nth-child(-n+2){border-bottom:1px solid #e8e0d5}body.kma-core-catalog-view ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:782px){body.kma-core-catalog-view .site-main>.ct-container{width:min(100% - 28px,720px)!important;padding-top:18px!important}.kma-shop-hero{grid-template-columns:1fr;min-height:0;border-radius:22px}.kma-shop-hero__copy{padding:50px 28px}.kma-shop-hero__copy::before{top:34px;left:28px}.kma-shop-hero__visual{min-height:350px;order:-1}.kma-category-grid{display:flex;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x mandatory}.kma-category-card{min-width:230px;min-height:285px;scroll-snap-align:start}.kma-shop-benefits{margin-bottom:48px}.kma-section-heading,.kma-products-heading{align-items:flex-start;gap:16px;flex-direction:column}.kma-products-heading p{margin-top:-8px}body.kma-core-catalog-view .woocommerce-ordering{width:100%;margin:0 0 18px}body.kma-core-catalog-view .woocommerce-ordering select{width:100%}body.kma-core-catalog-view ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}}
@media(max-width:520px){.kma-shop-hero__visual{min-height:270px}.kma-shop-hero h1{font-size:2.55rem}.kma-shop-benefits{grid-template-columns:1fr}.kma-shop-benefits>span{border-right:0!important;border-bottom:1px solid #e8e0d5!important}.kma-shop-benefits>span:last-child{border-bottom:0!important}body.kma-core-catalog-view ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}body.kma-core-catalog-view ul.products li.product .woocommerce-loop-product__title{font-size:12px}body.kma-core-catalog-view ul.products li.product .button{width:calc(100% - 22px);margin-inline:11px!important;padding-inline:8px!important}.kma-category-showcase{margin-bottom:30px}}

/* Sprint 31.2: compact contemporary product cards. */
@media(min-width:1280px){body.kma-core-catalog-view ul.products{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:18px!important}}
body.kma-core-catalog-view ul.products li.product{padding-bottom:15px;border-radius:16px}
body.kma-core-catalog-view ul.products li.product figure,
body.kma-core-catalog-view ul.products li.product .ct-media-container{aspect-ratio:1/1.02!important;max-height:285px;border-radius:15px 15px 0 0}
body.kma-core-catalog-view ul.products li.product> :not(figure){margin-right:15px;margin-left:15px}
body.kma-core-catalog-view ul.products li.product .woocommerce-loop-product__title{min-height:2.7em;margin-top:14px;margin-bottom:5px;font-size:13px;line-height:1.35}
body.kma-core-catalog-view ul.products li.product .price{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:6px;margin-top:6px;margin-bottom:12px;font-size:14px}
body.kma-core-catalog-view ul.products li.product .price .sale-price{display:contents}
body.kma-core-catalog-view ul.products li.product .price ins{order:1;text-decoration:none}
body.kma-core-catalog-view ul.products li.product .price .woocommerce-price-suffix{order:2}
body.kma-core-catalog-view ul.products li.product .price del{order:3;flex-basis:100%;margin-top:1px}
body.kma-core-catalog-view ul.products li.product .button{display:flex!important;align-items:center;justify-content:center;width:122px;min-width:122px;min-height:38px;margin:0 15px!important;padding:8px 16px!important;align-self:flex-start;font-size:10px!important;letter-spacing:.02em}
body.kma-core-catalog-view ul.products li.product .onsale{top:11px;left:11px;padding:3px 8px;font-size:7px}
@media(max-width:1279px) and (min-width:783px){body.kma-core-catalog-view ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important}}
@media(max-width:782px){body.kma-core-catalog-view ul.products li.product figure,body.kma-core-catalog-view ul.products li.product .ct-media-container{max-height:none}body.kma-core-catalog-view ul.products li.product .button{width:calc(100% - 24px);min-width:0;margin-right:12px!important;margin-left:12px!important}}

/* Sprint 31.3: restrained modern single-product composition. */
body.kma-core-product-view .site-main>.ct-container{width:min(1240px,calc(100% - 48px))!important;max-width:none!important;margin-inline:auto!important;padding-top:34px!important}
body.kma-core-product-view .hero-section{display:none!important}
body.kma-core-product-view.single-product .product-entry-wrapper{grid-template-columns:minmax(0,.94fr) minmax(380px,1.06fr)!important;gap:clamp(30px,4vw,54px)!important;align-items:start!important;max-width:1180px;margin:20px auto 64px!important}
body.kma-core-product-view.single-product .woocommerce-product-gallery{padding:18px!important;border:1px solid #e3dacd!important;border-radius:20px!important;background:#f2eee6!important;box-shadow:0 14px 38px rgb(45 37 26 / 8%)!important}
body.kma-core-product-view.single-product .woocommerce-product-gallery .ct-media-container{aspect-ratio:1/1!important;max-height:560px!important;border-radius:14px!important;background:#f8f5ef!important}
body.kma-core-product-view.single-product .woocommerce-product-gallery img{max-height:560px!important;object-fit:contain!important}
body.kma-core-product-view.single-product .entry-summary{position:sticky!important;top:28px!important;padding:32px 34px!important;border:1px solid #e1d7c8!important;border-radius:20px!important;box-shadow:0 16px 44px rgb(46 37 24 / 9%)!important}
body.kma-core-product-view.single-product .entry-summary::before{height:3px;background:linear-gradient(90deg,#b98436,#e7ca88 58%,transparent)!important}
body.kma-core-product-view.single-product .woocommerce-breadcrumb{margin-bottom:20px!important;font-size:9px!important;letter-spacing:.09em}
body.kma-core-product-view.single-product .product_title{margin:0!important;font-size:clamp(1.75rem,2.55vw,2.5rem)!important;font-weight:650!important;line-height:1.13!important;letter-spacing:-.035em!important}
body.kma-core-product-view.single-product .product_title::after{width:45px;height:2px;margin-top:14px}
body.kma-core-product-view.single-product .entry-summary .price{margin:17px 0!important;font-size:clamp(1.35rem,2vw,1.75rem)!important}
body.kma-core-product-view.single-product .woocommerce-product-details__short-description{margin-bottom:17px;font-size:13px!important;line-height:1.65!important}
body.kma-core-product-view.single-product .stock{margin:15px 0!important;padding:10px 13px!important;border-radius:10px!important;font-size:11px!important}
body.kma-core-product-view.single-product form.cart{display:grid!important;grid-template-columns:105px minmax(180px,1fr);gap:10px!important;margin-top:17px!important;padding-top:18px!important}
body.kma-core-product-view.single-product form.cart .quantity{width:105px!important;min-height:48px!important;border-radius:999px!important}
body.kma-core-product-view.single-product .single_add_to_cart_button{width:100%!important;min-height:48px!important;border-radius:999px!important;color:#17130d!important;background:linear-gradient(135deg,#e9ca84,#bd8738)!important;font-size:12px!important;font-weight:800!important;box-shadow:0 10px 24px rgb(184 129 47 / 20%)!important}
body.kma-core-product-view.single-product .single_add_to_cart_button:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgb(184 129 47 / 28%)!important}
body.kma-core-product-view.single-product .kma-product-assurances{display:grid;grid-template-columns:repeat(3,1fr)!important;gap:8px!important;margin-top:18px!important;padding-top:16px!important}
body.kma-core-product-view.single-product .kma-product-assurances span{justify-content:center;padding:10px 6px!important;border:1px solid #ebe3d7!important;border-radius:10px!important;background:#faf8f4;font-size:9px!important;text-align:center}
body.kma-core-product-view.single-product .kma-product-assurances i{width:17px;height:17px;font-size:9px}
body.kma-core-product-view.single-product .product_meta{margin-top:16px!important;padding:12px 14px!important;border-radius:10px!important;font-size:9px!important}
body.kma-core-product-view.single-product .woocommerce-tabs,
body.kma-core-product-view.single-product .related{max-width:1180px;margin:50px auto!important;padding:28px!important;border-radius:20px!important}
body.kma-core-product-view.single-product .related>h2{font-size:clamp(1.6rem,2.5vw,2.15rem)!important}
body.kma-core-product-view.single-product .related ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:17px!important}
body.kma-core-product-view.single-product .related ul.products li.product{border-radius:15px!important}
@media(max-width:960px){body.kma-core-product-view.single-product .product-entry-wrapper{grid-template-columns:1fr!important;max-width:720px!important}body.kma-core-product-view.single-product .entry-summary{position:static!important}body.kma-core-product-view.single-product .woocommerce-product-gallery .ct-media-container,body.kma-core-product-view.single-product .woocommerce-product-gallery img{max-height:650px!important}}
@media(max-width:600px){body.kma-core-product-view .site-main>.ct-container{width:calc(100% - 24px)!important;padding-top:14px!important}body.kma-core-product-view.single-product .product-entry-wrapper{gap:18px!important;margin-top:8px!important}body.kma-core-product-view.single-product .woocommerce-product-gallery{padding:10px!important;border-radius:16px!important}body.kma-core-product-view.single-product .entry-summary{padding:23px 18px!important;border-radius:16px!important}body.kma-core-product-view.single-product form.cart{grid-template-columns:92px 1fr}body.kma-core-product-view.single-product form.cart .quantity{width:92px!important}body.kma-core-product-view.single-product .kma-product-assurances{grid-template-columns:1fr!important}body.kma-core-product-view.single-product .related ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Sprint 31.4: genuinely compact desktop product stage. */
@media(min-width:961px){
	body.kma-core-product-view .site-main>.ct-container{width:min(1080px,calc(100% - 64px))!important;padding-top:24px!important}
	body.kma-core-product-view.single-product .product-entry-wrapper{grid-template-columns:440px minmax(0,1fr)!important;gap:36px!important;max-width:1030px!important;margin:12px auto 52px!important}
	body.kma-core-product-view.single-product .woocommerce-product-gallery{width:440px!important;padding:14px!important}
	body.kma-core-product-view.single-product .woocommerce-product-gallery .ct-media-container{width:410px!important;height:430px!important;max-height:430px!important;aspect-ratio:auto!important}
	body.kma-core-product-view.single-product .woocommerce-product-gallery img{width:100%!important;height:430px!important;max-height:430px!important;object-fit:contain!important}
	body.kma-core-product-view.single-product .entry-summary{min-height:0!important;padding:27px 29px!important}
	body.kma-core-product-view.single-product .product_title{font-size:clamp(1.65rem,2.15vw,2.15rem)!important}
	body.kma-core-product-view.single-product .entry-summary .price{font-size:1.45rem!important}
	body.kma-core-product-view.single-product .woocommerce-product-details__short-description{font-size:12px!important;-webkit-line-clamp:3!important}
	body.kma-core-product-view.single-product .stock{display:inline-flex!important;margin:11px 0!important;padding:8px 11px!important}
	body.kma-core-product-view.single-product form.cart{margin-top:12px!important;padding-top:15px!important}
	body.kma-core-product-view.single-product .kma-product-assurances{margin-top:14px!important;padding-top:12px!important}
	body.kma-core-product-view.single-product .product_meta{margin-top:12px!important}
	body.kma-core-product-view.single-product .woocommerce-tabs,
	body.kma-core-product-view.single-product .related{max-width:1030px!important}
}

/* Sprint 32: catalog discovery workspace. */
.kma-catalog-filters{display:grid;grid-template-columns:minmax(220px,1.45fr) minmax(170px,1fr) 125px 125px auto;grid-column:1/-1;align-items:end;gap:10px;margin:0 0 25px;padding:17px;border:1px solid #ded4c5;border-radius:16px;background:#fff;box-shadow:0 10px 30px rgb(42 34 23 / 5%)}
.kma-catalog-filters label,.kma-filter-search>label{display:block;margin:0;color:#6f675d;font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.kma-catalog-filters select,.kma-catalog-filters input[type=number],.kma-catalog-filters input[type=search]{width:100%;height:40px;min-height:40px!important;margin-top:5px;padding:8px 11px!important;border:1px solid #ddd3c5!important;border-radius:10px!important;background:#faf9f6!important;color:#26231e!important;font-size:11px!important;box-shadow:none!important}
.kma-filter-search>span{display:block;position:relative}.kma-filter-search b{position:absolute;right:11px;bottom:10px;color:#9a722f;font-size:15px}.kma-filter-search input{padding-right:35px!important}
.kma-price-input{display:flex;position:relative}.kma-price-input i{position:absolute;z-index:1;bottom:11px;left:11px;color:#8b8174;font-size:10px;font-style:normal}.kma-price-input input{padding-left:24px!important}
.kma-stock-filter{display:flex!important;align-items:center;align-self:center;gap:8px;margin-top:16px!important;white-space:nowrap}.kma-stock-filter input{width:17px;height:17px;margin:0;accent-color:#b7853c}.kma-stock-filter span{font-size:9px;letter-spacing:0;text-transform:none}
.kma-filter-actions{display:flex;align-items:center;gap:9px;grid-column:1/-1;justify-content:flex-end;padding-top:3px}.kma-filter-actions button{min-height:38px;padding:8px 18px;border:0;border-radius:999px;color:#fff;background:#191814;font-size:10px;font-weight:800}.kma-filter-actions button:hover{background:#b9873d}.kma-filter-actions a{padding:8px 12px;color:#82632f!important;font-size:9px;font-weight:750}
.kma-catalog-empty{grid-column:1/-1;margin:20px 0 60px;padding:60px 24px;border:1px solid #ded4c5;border-radius:22px;background:#fff;text-align:center;box-shadow:0 14px 40px rgb(42 34 23 / 6%)}.kma-catalog-empty>span{display:grid;width:48px;height:48px;margin:0 auto 18px;border-radius:50%;color:#906622;background:#f1e3ca;font-size:20px;place-items:center}.kma-catalog-empty h2{margin:0 0 8px;font-size:clamp(1.5rem,2.5vw,2.1rem)}.kma-catalog-empty p{margin:0 0 22px;color:#756d62}.kma-catalog-empty a{display:inline-flex;padding:12px 19px;border-radius:999px;color:#17130e!important;background:#d4aa5d;font-size:11px;font-weight:800}
@media(max-width:1100px){.kma-catalog-filters{grid-template-columns:1.5fr 1fr 1fr 1fr}.kma-stock-filter{grid-column:1/-1;margin-top:2px!important}.kma-filter-actions{grid-column:1/-1}}
@media(max-width:700px){.kma-catalog-filters{grid-template-columns:1fr 1fr;padding:14px}.kma-filter-search,.kma-catalog-filters>label:nth-of-type(1){grid-column:1/-1}.kma-stock-filter{grid-column:1/-1}.kma-filter-actions{justify-content:stretch}.kma-filter-actions button{flex:1}}

.kma-catalog-filters{display:block;position:sticky;top:24px;margin:0;padding:22px 20px;border-radius:18px;background:#fff}
.kma-catalog-filters header{padding-bottom:17px;border-bottom:1px solid #e8e0d5}.kma-catalog-filters header .kma-eyebrow{margin-bottom:6px}.kma-catalog-filters header h3{margin:0;font-size:18px;font-weight:700;letter-spacing:-.025em}
.kma-catalog-filters fieldset{min-width:0;margin:0;padding:18px 0;border:0;border-bottom:1px solid #e8e0d5}.kma-catalog-filters fieldset legend{display:block;width:100%;margin:0 0 12px;padding:0;color:#28251f;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.kma-catalog-filters input[type=search],.kma-catalog-filters input[type=number]{margin-top:0!important;background:#f7f4ee!important}.kma-filter-search b{bottom:10px}
.kma-filter-categories{max-height:none;overflow:visible}.kma-filter-categories label{display:grid!important;grid-template-columns:17px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 1px;color:#5f584e!important;font-size:10px!important;font-weight:650!important;letter-spacing:0!important;text-transform:none!important;cursor:pointer}.kma-filter-categories input{width:15px;height:15px;margin:0;accent-color:#b9883d}.kma-filter-categories small{display:grid;min-width:22px;height:22px;border-radius:999px;color:#7b7164;background:#f2ede4;font-size:8px;place-items:center}.kma-filter-categories label:has(input:checked) span{color:#9a6c28;font-weight:850}
.kma-filter-price>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.kma-filter-price label{color:#82796d!important;font-size:8px!important}.kma-filter-price label>span{display:block;margin-top:5px}.kma-price-input i{bottom:11px}
.kma-stock-filter{margin:0!important}.kma-filter-actions{display:grid;grid-template-columns:1fr auto;gap:7px;padding-top:18px}.kma-filter-actions button{width:100%;padding-inline:12px}.kma-filter-actions a{display:grid;padding:8px;place-items:center}
@media(max-width:900px){.kma-catalog-filters{position:static;margin-bottom:24px}.kma-filter-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.kma-filter-actions{grid-template-columns:1fr auto}}
@media(max-width:480px){.kma-filter-categories{grid-template-columns:1fr}.kma-filter-price>div{grid-template-columns:1fr 1fr}}

/* Sprint 33: wishlist and recently viewed discovery. */
.kma-wishlist-button{align-items:center;background:#fff;border:1px solid rgba(30,29,24,.12);border-radius:999px;color:#1f1e19;cursor:pointer;display:inline-flex;font:inherit;gap:8px;justify-content:center;min-height:42px;padding:8px 14px;transition:.2s ease;z-index:8}.kma-wishlist-button span{font-size:22px;line-height:1}.kma-wishlist-button em{font-size:12px;font-style:normal;font-weight:700}.kma-wishlist-button:hover,.kma-wishlist-button.is-active{background:#1e1d18;border-color:#cba153;color:#fff;transform:translateY(-1px)}.products .product{position:relative}.products .kma-wishlist-button--loop{height:42px;overflow:hidden;padding:0;position:absolute;right:14px;top:14px;width:42px}.products .kma-wishlist-button--loop em{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.kma-wishlist-button--single{margin:16px 0 0}.kma-recently-viewed{clear:both;margin:44px auto 20px;max-width:1440px;padding:0 28px;width:100%}.kma-recently-viewed[hidden]{display:none}.kma-recently-viewed>header{align-items:end;display:flex;justify-content:space-between;margin-bottom:18px}.kma-recently-viewed h2{font-size:clamp(25px,3vw,38px);margin:3px 0}.kma-eyebrow{color:#9a742f;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.kma-recently-viewed header button{background:transparent;border:0;color:#756b59;cursor:pointer;text-decoration:underline}.kma-recent-grid,.kma-account-favorites-grid{display:grid;gap:18px;grid-template-columns:repeat(4,minmax(0,1fr))}.kma-recent-card,.kma-account-favorites-grid article{background:#fff;border:1px solid rgba(30,29,24,.1);border-radius:18px;box-shadow:0 14px 35px rgba(43,34,20,.07);overflow:hidden}.kma-recent-card a,.kma-account-favorites-grid article>a{color:#1f1e19;display:grid;gap:7px;padding-bottom:16px;text-decoration:none}.kma-recent-card img,.kma-account-favorites-grid img{aspect-ratio:4/3;height:auto;object-fit:cover;width:100%}.kma-recent-card strong,.kma-recent-card span,.kma-account-favorites-grid strong,.kma-account-favorites-grid article>a span{padding:0 16px}.kma-recent-card strong,.kma-account-favorites-grid strong{font-size:15px}.kma-recent-card span,.kma-account-favorites-grid article>a span{color:#9a742f;font-weight:800}.kma-account-favorites{padding:8px 0 30px}.kma-account-favorites h2{font-size:clamp(28px,4vw,44px);margin:5px 0 24px}.kma-account-favorites-grid article{padding-bottom:14px;position:relative}.kma-account-favorites-grid .kma-wishlist-button{margin:0 14px}.kma-favorites-empty{background:#f6f1e7;border-radius:18px;padding:28px}.kma-favorites-empty a{background:#1e1d18;border-radius:999px;color:#fff;display:inline-block;margin-top:8px;padding:12px 18px;text-decoration:none}.kma-discovery-toast{background:#1e1d18;border:1px solid #cba153;border-radius:999px;bottom:24px;color:#fff;font-size:14px;left:50%;opacity:0;padding:12px 20px;pointer-events:none;position:fixed;transform:translate(-50%,20px);transition:.2s ease;z-index:99999}.kma-discovery-toast.is-visible{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.kma-recent-grid,.kma-account-favorites-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kma-recently-viewed{padding:0 16px}}
@media(max-width:520px){.kma-recent-grid,.kma-account-favorites-grid{grid-template-columns:1fr}.kma-wishlist-button--single{width:100%}.kma-recently-viewed>header{align-items:start}.kma-recent-card:nth-child(n+4){display:none}}


/* Sprint 45: sticky filter rail sharing a dedicated grid with the product column, no dead space. */
/* catalog-filter-position.js wraps the filter rail, toolbar, product grid, and pagination in .kma-shop-grid, */
/* so this grid contains only those four items -- no unrelated hero/category/benefits siblings to fight over rows. */
@media(min-width:901px){
	body.kma-core-catalog-view .kma-shop-grid{display:grid!important;grid-template-columns:280px minmax(0,1fr)!important;column-gap:26px!important;align-items:start!important;width:100%!important}
	body.kma-core-catalog-view .kma-shop-grid>.kma-filter-rail{grid-column:1!important;grid-row:1/span 3!important;position:relative!important;align-self:stretch!important;width:100%!important}
	body.kma-core-catalog-view .kma-filter-rail .kma-catalog-filters{position:static;top:auto}
	body.kma-core-catalog-view .kma-shop-grid>.woo-listing-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;grid-column:2!important;width:100%!important;margin:0!important;padding:0!important}
	body.kma-core-catalog-view .kma-shop-grid .woocommerce-result-count{width:auto!important;margin:0!important;float:none!important;white-space:normal!important;writing-mode:horizontal-tb!important}
	body.kma-core-catalog-view .kma-shop-grid .woocommerce-ordering{width:230px!important;margin:0!important;float:none!important;flex:0 0 auto!important}
	body.kma-core-catalog-view .kma-shop-grid>ul.products{grid-column:2!important;width:100%!important;margin:0!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important}
	body.kma-core-catalog-view .kma-shop-grid>.ct-pagination,
	body.kma-core-catalog-view .kma-shop-grid>.woocommerce-pagination{grid-column:2!important;width:100%!important;margin:0!important}
}
@media(max-width:1200px) and (min-width:901px){
	body.kma-core-catalog-view .kma-shop-grid{grid-template-columns:240px minmax(0,1fr)!important;column-gap:20px!important}
	body.kma-core-catalog-view .kma-shop-grid>ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:900px){
	body.kma-core-catalog-view .kma-shop-grid>.kma-filter-rail{position:static!important;width:100%!important;margin:0 0 16px!important}
	body.kma-core-catalog-view .kma-filter-rail .kma-catalog-filters{position:static!important}
	body.kma-core-catalog-view .kma-shop-grid>.woo-listing-top{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:100%!important;margin:0 0 16px!important;padding:0!important}
	body.kma-core-catalog-view .kma-shop-grid .woocommerce-result-count{width:auto!important;margin:0!important}
	body.kma-core-catalog-view .kma-shop-grid .woocommerce-ordering{width:auto!important;margin:0!important}
	body.kma-core-catalog-view .kma-shop-grid>ul.products{display:grid!important;width:100%!important;margin:0!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
	body.kma-core-catalog-view .kma-shop-grid>.ct-pagination,
	body.kma-core-catalog-view .kma-shop-grid>.woocommerce-pagination{width:100%!important;margin-left:0!important}
}
@media(max-width:520px){body.kma-core-catalog-view .kma-shop-grid>.woo-listing-top{flex-direction:column!important;align-items:flex-start!important}body.kma-core-catalog-view .kma-shop-grid .woocommerce-ordering{width:100%!important}}

/* storefront.js's fallback reflow: when the raw archive markup doesn't match the strict sibling shape
   catalog-filter-position.js needs, it builds .kma-live-catalog-layout > .kma-live-filter-rail + .kma-live-catalog-results
   instead. That structure had no matching CSS, so the filter and results stacked instead of forming two columns. */
@media(min-width:901px){
	body.kma-core-catalog-view .kma-live-catalog-layout{display:grid!important;grid-template-columns:280px minmax(0,1fr)!important;column-gap:26px!important;align-items:start!important;width:100%!important}
	body.kma-core-catalog-view .kma-live-filter-rail{position:relative!important;align-self:stretch!important;width:100%!important}
	body.kma-core-catalog-view .kma-live-filter-rail .kma-catalog-filters{position:static;top:auto}
	body.kma-core-catalog-view .kma-live-catalog-results{width:100%!important;min-width:0!important}
	body.kma-core-catalog-view .kma-live-catalog-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;margin:0 0 18px!important}
	body.kma-core-catalog-view .kma-live-catalog-results ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;margin:0!important}
}
@media(max-width:1200px) and (min-width:901px){
	body.kma-core-catalog-view .kma-live-catalog-layout{grid-template-columns:240px minmax(0,1fr)!important;column-gap:20px!important}
	body.kma-core-catalog-view .kma-live-catalog-results ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:900px){
	body.kma-core-catalog-view .kma-live-filter-rail{position:static!important;width:100%!important;margin:0 0 16px!important}
	body.kma-core-catalog-view .kma-live-filter-rail .kma-catalog-filters{position:static!important}
	body.kma-core-catalog-view .kma-live-catalog-toolbar{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin:0 0 16px!important}
	body.kma-core-catalog-view .kma-live-catalog-results ul.products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;margin:0!important}
}
@media(max-width:520px){body.kma-core-catalog-view .kma-live-catalog-toolbar{flex-direction:column!important;align-items:flex-start!important}}

/* Sprint 36: product quantity workspace. */
body.kma-core-product-view .kma-quantity-calculator{margin:18px 0 4px!important;padding:18px!important;border:1px solid #e4d8c5!important;border-radius:16px!important;background:linear-gradient(145deg,#fcfaf6,#f3ede3)!important;box-shadow:0 12px 30px rgb(54 42 24 / 7%)!important}
body.kma-core-product-view .kma-calculator-heading{margin-bottom:15px}.kma-calculator-heading>span{color:#1c1914;background:linear-gradient(135deg,#ead39c,#c89546)}
body.kma-core-product-view .kma-calculator-heading strong{font-size:13px}.kma-calculator-heading small{font-size:10px;line-height:1.5}
body.kma-core-product-view .kma-calculator-fields{grid-template-columns:1fr 1fr .82fr;gap:9px}.kma-calculator-fields label{font-size:10px}.kma-calculator-fields label>span{height:43px;border-color:#dbcfbd;background:#fff}
body.kma-core-product-view .kma-calculator-result{grid-template-columns:1fr 1fr minmax(145px,auto);gap:10px;margin-top:11px;padding:12px 13px;border-radius:13px;background:linear-gradient(135deg,#1d1b17,#2c271f)}
body.kma-core-product-view .kma-calculator-result small{font-size:8px;letter-spacing:.04em;text-transform:uppercase}.kma-calculator-result strong{font-size:14px}
body.kma-core-product-view .kma-calculator-result button{min-height:39px;padding:9px 14px;background:linear-gradient(135deg,#ead08f,#c79443);transition:transform .18s ease,box-shadow .18s ease}.kma-calculator-result button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 8px 18px rgb(202 151 69 / 24%)}
body.kma-core-product-view .kma-calculator-note{margin-top:9px!important;font-size:9px!important}
body.kma-core-product-view.single-product .kma-quantity-calculator+form.cart{margin-top:13px!important}
@media(max-width:600px){body.kma-core-product-view .kma-quantity-calculator{margin-top:15px!important;padding:15px!important}.kma-calculator-fields{grid-template-columns:1fr 1fr!important}.kma-calculator-fields label:last-child{grid-column:1/-1}.kma-calculator-result{grid-template-columns:1fr 1fr!important}.kma-calculator-result button{grid-column:1/-1;width:100%}.kma-calculator-note{font-size:9px!important}body.kma-core-product-view.single-product .woocommerce-product-gallery .ct-media-container,body.kma-core-product-view.single-product .woocommerce-product-gallery img{height:auto!important;max-height:430px!important;aspect-ratio:1/1!important}body.kma-core-product-view.single-product .product_title{font-size:1.65rem!important}}
