/* ============================================================
   Mozambeak Theme Styles
   Palette + design tokens come from theme.json.
   These styles cover layout behavior Tailwind classes provided
   in the original static design.
   ============================================================ */

:root {
	--moz-earth-50: #faf8f5;
	--moz-earth-100: #f4efe6;
	--moz-earth-200: #eadec9;
	--moz-earth-300: #d2c1a5;
	--moz-earth-400: #b09e83;
	--moz-earth-500: #8a7a64;
	--moz-earth-600: #685a48;
	--moz-earth-700: #4d4234;
	--moz-earth-800: #2f271e;
	--moz-earth-900: #14120e;
	--moz-sienna-500: #a0522d;
	--moz-sienna-600: #8b4513;
	--moz-sienna-900: #4e210b;
	--moz-ease: cubic-bezier(0.16, 1, 0.3, 1);
	--moz-container: 1800px;
	--moz-gutter: 24px;
}

/* Tailwind-style preflight: padding/borders count inside sizes. */
*,
*::before,
*::after {
	box-sizing: border-box;
}

@media (min-width: 1024px) {
	:root {
		--moz-gutter: 64px;
	}
}

body {
	overflow-x: hidden;
}

::selection {
	background: var(--moz-sienna-500);
	color: #fff;
}

/* ============================================================
   Header
   ============================================================ */

/* ============================================================
   Header (Luxury 2-Row Header with Rose-Gold / Metallic Copper Accents)
   Row 1: Centered Logo | Utility Icons (Account | Wishlist | Cart)
   Row 2: Nav Menu (Left) | Consultation Button (Right)
   ============================================================ */

header.wp-block-template-part {
	display: block !important;
}

.moz-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99999;
	padding: 0;
	background: #0C0B0A;
	border-bottom: 1px solid rgba(197, 137, 112, 0.35);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
	transition: background 0.45s cubic-bezier(0.16, 1, 0.3, 1), backdrop-filter 0.45s ease, -webkit-backdrop-filter 0.45s ease, box-shadow 0.45s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.45s ease;
}

/* WordPress Admin Bar Compatibility */
body.admin-bar .moz-header {
	top: 32px;
}
@media screen and (max-width: 782px) {
	body.admin-bar .moz-header {
		top: 46px;
	}
}

.moz-header.is-transparent-header {
	background: rgba(12, 11, 10, 0.75) !important;
	backdrop-filter: blur(16px) saturate(160%) !important;
	-webkit-backdrop-filter: blur(16px) saturate(160%) !important;
	border-bottom: 1px solid rgba(197, 137, 112, 0.35) !important;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2) !important;
}

.moz-header.is-transparent-header:hover {
	background: rgba(12, 11, 10, 0.9) !important;
	backdrop-filter: blur(20px) saturate(180%) !important;
	-webkit-backdrop-filter: blur(20px) saturate(180%) !important;
	border-bottom-color: rgba(197, 137, 112, 0.5) !important;
}

.moz-header.is-solid-header,
.moz-header:not(.is-transparent-header) {
	background: rgba(12, 11, 10, 0.95) !important;
	backdrop-filter: blur(20px) saturate(180%) !important;
	-webkit-backdrop-filter: blur(20px) saturate(180%) !important;
	border-bottom: 1px solid rgba(197, 137, 112, 0.35) !important;
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.3) !important;
}

.moz-header.is-solid-header.is-shrunk {
	background: #0C0B0A !important;
}

/* Header Layout Resets & Gutenberg Flow Overrides */
.moz-header,
.moz-header.is-layout-flow,
.moz-header.wp-block-group,
:root :where(.is-layout-flow).moz-header {
	gap: 0 !important;
}

.moz-header > *,
.moz-header.is-layout-flow > *,
:root :where(.is-layout-flow).moz-header > *,
:root :where(.is-layout-flow) > .moz-header-wrapper,
:root :where(.is-layout-flow) > .moz-header-row-top-wrap,
:root :where(.is-layout-flow) > .moz-header-row-bottom-wrap,
.moz-header-wrapper,
.moz-header-wrapper > *,
.moz-header-row-top-wrap,
.moz-header-row-bottom-wrap {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}

.moz-header-wrapper {
	width: 100%;
	display: flex;
	flex-direction: column;
	margin: 0 !important;
	padding: 0 !important;
}

/* Row Wrappers */
.moz-header-row-top-wrap {
	width: 100%;
	border-bottom: 1px solid rgba(197, 137, 112, 0.35);
	margin: 0 !important;
	padding: 0 !important;
}

.moz-header-row-bottom-wrap {
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
}

/* --- ROW 1 (TOP): Center Logo & Utility Icons --- */
.moz-header-row-top {
	width: 100%;
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	padding: 16px clamp(24px, 3.5vw, 48px);
	box-sizing: border-box;
	transition: padding 0.45s cubic-bezier(0.25, 1, 0.5, 1);
}

.moz-header.is-shrunk .moz-header-row-top {
	padding: 8px clamp(24px, 3.5vw, 48px);
	transition: padding 0.45s cubic-bezier(0.25, 1, 0.5, 1);
}

.moz-header-top-left {
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.moz-header-top-center {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.moz-site-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	text-align: center;
}

.moz-site-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	text-align: center;
	position: relative;
}

.moz-logo-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	position: relative;
	transition: opacity 0.3s var(--moz-ease), transform 0.3s var(--moz-ease);
}

.moz-logo-link:hover {
	opacity: 0.95;
	transform: scale(1.02);
}

.moz-logo-img {
	height: 76px;
	width: auto;
	max-height: 80px;
	object-fit: contain;
	display: block;
	will-change: height, max-height, opacity, transform, filter;
}

/* 1. Full Logo (In Normal Flow) */
.moz-logo-full {
	opacity: 1;
	transform: scale(1) translateY(0);
	filter: blur(0px);
	transition: 
		height 0.45s cubic-bezier(0.25, 1, 0.5, 1),
		max-height 0.45s cubic-bezier(0.25, 1, 0.5, 1),
		opacity 0.32s ease-out,
		transform 0.45s cubic-bezier(0.25, 1, 0.5, 1),
		filter 0.32s ease-out;
}

/* 2. Symbol M Emblem (Positioned Absolute at Center) */
.moz-logo-symbol {
	position: absolute;
	top: 50%;
	left: 50%;
	height: 38px;
	max-height: 40px;
	width: auto;
	object-fit: contain;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translate(-50%, -50%) scale(0.75);
	filter: blur(3px);
	transition: 
		height 0.45s cubic-bezier(0.25, 1, 0.5, 1),
		max-height 0.45s cubic-bezier(0.25, 1, 0.5, 1),
		opacity 0.35s ease-in,
		transform 0.45s cubic-bezier(0.25, 1, 0.5, 1),
		filter 0.35s ease-in,
		visibility 0.35s;
}

@media (min-width: 1440px) {
	.moz-logo-img {
		height: 84px;
		max-height: 88px;
	}
	.moz-logo-symbol {
		height: 44px;
		max-height: 46px;
	}
}

@media (min-width: 1800px) {
	.moz-logo-img {
		height: 92px;
		max-height: 96px;
	}
	.moz-logo-symbol {
		height: 48px;
		max-height: 50px;
	}
}

/* Scrolled / Shrunk State */
.moz-header.is-shrunk .moz-logo-img.moz-logo-full {
	height: 38px;
	max-height: 40px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: scale(0.85) translateY(-3px);
	filter: blur(3px);
	transition: 
		height 0.45s cubic-bezier(0.25, 1, 0.5, 1),
		max-height 0.45s cubic-bezier(0.25, 1, 0.5, 1),
		opacity 0.25s ease-out,
		transform 0.45s cubic-bezier(0.25, 1, 0.5, 1),
		filter 0.25s ease-out,
		visibility 0.25s;
}

.moz-header.is-shrunk .moz-logo-img.moz-logo-symbol {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translate(-50%, -50%) scale(1);
	filter: blur(0px);
	transition: 
		opacity 0.35s cubic-bezier(0.25, 1, 0.5, 1) 0.08s,
		transform 0.45s cubic-bezier(0.25, 1, 0.5, 1) 0.05s,
		filter 0.35s cubic-bezier(0.25, 1, 0.5, 1) 0.08s;
}

.moz-header-top-right {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 16px;
}

/* Vertical dividers between icons */
.moz-header-divider {
	display: inline-block;
	color: rgba(197, 137, 112, 0.45);
	font-size: 13px;
	font-weight: 300;
	user-select: none;
	opacity: 0.8;
	line-height: 1;
}

.moz-header-icon-btn {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #FFFFFF !important;
	text-decoration: none;
	transition: opacity 0.2s ease, transform 0.2s ease, color 0.2s ease;
	opacity: 0.92;
	background: transparent;
	border: none;
	padding: 4px;
	cursor: pointer;
}

.moz-header-icon-btn:hover {
	opacity: 1;
	color: #D49A7E !important;
	transform: translateY(-1px);
}

/* --- ROW 2 (BOTTOM): Navigation (Left) | Consultation Button (Right) --- */
.moz-header-container,
.moz-header-row-bottom {
	max-width: 1240px;
	margin: 0 auto;
	padding-left: clamp(24px, 4vw, 48px);
	padding-right: clamp(24px, 4vw, 48px);
	width: 100%;
	box-sizing: border-box;
}

.moz-header-row-bottom {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	padding-top: 11px;
	padding-bottom: 11px;
	transition: padding 0.45s cubic-bezier(0.25, 1, 0.5, 1);
}

.moz-header.is-shrunk .moz-header-row-bottom {
	padding-top: 7px;
	padding-bottom: 7px;
	transition: padding 0.45s cubic-bezier(0.25, 1, 0.5, 1);
}

.moz-header-bottom-left {
	display: flex;
	align-items: center;
}

.moz-header-nav {
	display: flex;
	align-items: center;
}

.moz-main-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	gap: clamp(20px, 2.5vw, 36px);
}

.moz-menu-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: rgba(255, 255, 255, 0.88) !important;
	text-decoration: none;
	font-size: 11.5px;
	font-weight: 500;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	padding: 6px 0;
	transition: color 0.25s ease, opacity 0.25s ease;
	white-space: nowrap;
}

.moz-menu-link:hover {
	color: #D49A7E !important;
}

.moz-dropdown-arrow {
	transition: transform 0.25s ease;
	opacity: 0.75;
}

.moz-has-dropdown:hover .moz-dropdown-arrow {
	transform: rotate(180deg);
}

.moz-header-bottom-right {
	display: flex;
	align-items: center;
}

/* Consultation button (Outline with rose gold / copper border & text) */
.moz-header-consult-btn {
	white-space: nowrap !important;
	background: transparent;
	color: #D49A7E !important;
	border: 1px solid #C58970;
	border-radius: 1px;
	padding: 6px 18px;
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-weight: 600;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.moz-header-consult-btn:hover {
	background: #C58970 !important;
	color: #0C0B0A !important;
	border-color: #C58970;
	box-shadow: 0 4px 14px rgba(197, 137, 112, 0.3);
}

/* Account Dropdown Wrap */
.moz-account-dropdown-wrap {
	position: relative;
	display: inline-block;
}

.moz-account-trigger {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #FFFFFF !important;
	text-decoration: none;
	padding: 5px 6px;
	border-radius: 4px;
	cursor: pointer;
	transition: background 0.25s var(--moz-ease), opacity 0.25s var(--moz-ease);
	opacity: 0.95;
	white-space: nowrap;
}

.moz-account-trigger.is-logged-in {
	padding: 4px 8px;
	font-size: 13px;
	letter-spacing: 0.02em;
	color: #FFFFFF !important;
}

.moz-account-trigger:hover,
.moz-account-dropdown-wrap.is-open .moz-account-trigger,
.moz-account-dropdown-wrap.is-hovered .moz-account-trigger {
	background: rgba(255, 255, 255, 0.12);
	opacity: 1;
}

.moz-account-icon-wrap {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.moz-account-user-greeting,
.moz-account-user-text {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: #FFFFFF;
	font-size: 13px;
	line-height: 1.2;
}

.moz-account-hi {
	color: rgba(255, 255, 255, 0.9);
	font-weight: 400;
}

.moz-account-name,
.moz-account-label strong,
.moz-account-user-text strong {
	font-weight: 600;
	color: #FFFFFF;
	max-width: 140px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	display: inline-block;
	vertical-align: middle;
}

.moz-account-comma {
	color: rgba(255, 255, 255, 0.9);
	margin-right: 2px;
}

.moz-account-chevron {
	display: inline-block;
	width: 10px;
	height: 6px;
	stroke: currentColor;
	transition: transform 0.25s var(--moz-ease);
	opacity: 0.85;
	margin-left: 2px;
	flex-shrink: 0;
}

.moz-account-dropdown-wrap:hover .moz-account-chevron,
.moz-account-dropdown-wrap.is-hovered .moz-account-chevron,
.moz-account-dropdown-wrap.is-open .moz-account-chevron {
	transform: rotate(180deg);
}

@media (max-width: 640px) {
	.moz-account-trigger.is-logged-in {
		padding: 4px 6px;
		font-size: 12px;
	}

	.moz-account-name {
		max-width: 85px;
	}
}

/* Account Dropdown Menu */
.moz-account-dropdown {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	min-width: 220px;
	background: #1C1713;
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 6px;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	padding: 8px 0;
	z-index: 1001;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-6px);
	transition: opacity 0.22s cubic-bezier(0.16, 1, 0.3, 1), transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.22s;
	pointer-events: none;
}

/* Invisible hover bridge: covers the gap between trigger and dropdown */
.moz-account-dropdown::before {
	content: '';
	position: absolute;
	top: -20px;
	left: -20px;
	right: -20px;
	height: 26px;
	display: block;
	background: transparent;
	pointer-events: auto;
}

.moz-account-dropdown-wrap:hover .moz-account-dropdown,
.moz-account-dropdown-wrap.is-hovered .moz-account-dropdown,
.moz-account-dropdown-wrap.is-open .moz-account-dropdown {
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateY(0) !important;
	pointer-events: auto !important;
}

.moz-account-dropdown-wrap:hover .moz-account-chevron,
.moz-account-dropdown-wrap.is-hovered .moz-account-chevron,
.moz-account-dropdown-wrap.is-open .moz-account-chevron {
	transform: rotate(180deg);
}

.moz-account-dropdown-header {
	padding: 12px 18px 10px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.moz-account-dropdown-hi {
	font-size: 10px;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	color: var(--moz-sienna-400, #C27A56);
	font-weight: 600;
}

.moz-account-dropdown-name {
	font-size: 14px;
	color: #FFFFFF;
	font-weight: 500;
	letter-spacing: 0.02em;
}

.moz-account-dropdown-menu {
	list-style: none;
	margin: 0;
	padding: 4px 0;
}

.moz-account-dropdown-menu li {
	list-style: none;
	margin: 0;
	padding: 0;
}

.moz-dropdown-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 18px;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
	font-weight: 400;
	letter-spacing: 0.02em;
	transition: background 0.2s var(--moz-ease), color 0.2s var(--moz-ease), padding-left 0.2s var(--moz-ease);
}

.moz-dropdown-item:hover {
	background: rgba(255, 255, 255, 0.08);
	color: #FFFFFF;
	padding-left: 22px;
}

.moz-dropdown-item svg {
	display: block;
	width: 16px;
	height: 16px;
	stroke: currentColor;
	opacity: 0.8;
	flex-shrink: 0;
}

.moz-dropdown-divider {
	height: 1px;
	background: rgba(255, 255, 255, 0.08);
	margin: 6px 0;
}

.moz-dropdown-logout {
	color: var(--moz-earth-300, #E0D3C1);
}

.moz-dropdown-logout:hover {
	color: #FF8A8A;
}

/* Wishlist button */
.moz-wishlist-button {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: #FFFFFF !important;
	text-decoration: none;
	opacity: 0.92;
	transition: opacity 0.25s var(--moz-ease), transform 0.2s var(--moz-ease);
	padding: 4px;
	cursor: pointer;
}

.moz-wishlist-button:hover {
	opacity: 1;
	transform: translateY(-1px);
}

.moz-wishlist-button svg {
	display: block;
	width: 20px;
	height: 20px;
	stroke: currentColor;
}

.moz-wishlist-count {
	font-size: 11px;
	letter-spacing: 0.08em;
	font-weight: 600;
	color: #FFFFFF;
}

/* Legacy account button fallback */
.moz-account-button {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #FFFFFF !important;
	text-decoration: none;
	transition: opacity 0.25s var(--moz-ease), transform 0.2s var(--moz-ease);
	padding: 4px;
	cursor: pointer;
	opacity: 0.92;
}

.moz-account-button:hover {
	opacity: 1;
	transform: translateY(-1px);
}

.moz-account-button svg {
	display: block;
	width: 20px;
	height: 20px;
	stroke: currentColor;
}

/* Cart button */
.moz-cart-button {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-weight: 500;
	color: #FFFFFF !important;
	text-decoration: none;
	opacity: 0.92;
	transition: opacity 0.25s var(--moz-ease), transform 0.2s var(--moz-ease);
}

.moz-cart-button:hover {
	opacity: 1;
	transform: translateY(-1px);
}

.moz-cart-button svg {
	display: block;
	stroke: currentColor;
}

.moz-cart-count {
	color: #FFFFFF !important;
	font-size: 11.5px;
	font-weight: 600;
}

.moz-menu-item {
	position: relative;
}

.moz-menu-link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #FFFFFF !important;
	text-decoration: none;
	font-size: 11.5px;
	font-weight: 500;
	letter-spacing: 0.13em;
	text-transform: uppercase;
	opacity: 0.92;
	padding: 6px 0;
	transition: opacity 0.25s var(--moz-ease), color 0.25s var(--moz-ease);
	white-space: nowrap;
}

.moz-menu-link:hover {
	opacity: 1;
	color: #FFFDF9 !important;
}

.moz-dropdown-arrow {
	transition: transform 0.25s var(--moz-ease);
	opacity: 0.8;
}

.moz-has-dropdown:hover .moz-dropdown-arrow {
	transform: rotate(180deg);
}

/* ABOUT US DROPDOWN MENU */
.moz-dropdown-menu {
	position: absolute;
	top: 100%;
	left: 0;
	width: 330px;
	background: #FFFFFF;
	border: 1px solid var(--moz-earth-200, #EAE6DF);
	border-radius: 4px;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.18);
	list-style: none;
	padding: 8px 0;
	margin: 8px 0 0;
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity 0.25s var(--moz-ease), transform 0.25s var(--moz-ease), visibility 0.25s;
	z-index: 100;
}

/* Hover bridge for about us dropdown */
.moz-dropdown-menu::before {
	content: '';
	position: absolute;
	top: -16px;
	left: 0;
	right: 0;
	height: 20px;
	display: block;
	background: transparent;
}

.moz-has-dropdown:hover .moz-dropdown-menu,
.moz-has-dropdown:focus-within .moz-dropdown-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.moz-dropdown-menu li {
	border-bottom: 1px solid #F5F2EC;
}

.moz-dropdown-menu li:last-child {
	border-bottom: none;
}

.moz-dropdown-menu a {
	display: flex;
	flex-direction: column;
	gap: 3px;
	padding: 12px 18px;
	text-decoration: none;
	color: var(--moz-earth-900, #14120E);
	transition: background 0.2s, color 0.2s;
}

.moz-dropdown-menu a strong {
	font-size: 13px;
	font-weight: 600;
	color: var(--moz-earth-900, #14120E);
	letter-spacing: 0.02em;
}

.moz-dropdown-menu a span {
	font-size: 11.5px;
	color: var(--moz-earth-600, #685A48);
	line-height: 1.4;
}

.moz-dropdown-menu a:hover {
	background: #FAF8F5;
}

.moz-dropdown-menu a:hover strong {
	color: #A0522D;
}

/* Media Release Special Link */
.moz-media-link-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.moz-media-badge {
	font-size: 9.5px !important;
	font-weight: 700 !important;
	color: #A0522D !important;
	background: #FAF0E6;
	padding: 2px 6px;
	border-radius: 2px;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

/* Bottom Right: BoConcept Minimalist Underline Search Bar */
.moz-header-search-wrap {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: clamp(230px, 24vw, 320px);
}

.moz-header-search-form {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	background: transparent;
	border: none;
	border-bottom: 1.5px solid rgba(255, 255, 255, 0.45);
	padding: 3px 0;
	transition: border-color 0.3s var(--moz-ease);
}

.moz-header-search-form:focus-within {
	border-bottom-color: #FFFFFF;
}

.moz-header-search-input {
	flex: 1;
	background: transparent !important;
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	color: #FFFFFF !important;
	font-size: 12px !important;
	font-family: inherit !important;
	padding: 3px 8px 3px 0 !important;
	margin: 0 !important;
}

.moz-header-search-input::placeholder {
	color: rgba(255, 255, 255, 0.72) !important;
	font-size: 11.5px !important;
	letter-spacing: 0.02em;
}

.moz-header-search-btn {
	background: transparent;
	border: none;
	color: #FFFFFF;
	padding: 2px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	opacity: 0.85;
	transition: opacity 0.2s, transform 0.2s;
}

.moz-header-search-btn svg,
.moz-mobile-search-submit svg {
	pointer-events: none;
}

.moz-header-search-btn:hover {
	opacity: 1;
	transform: scale(1.1);
}

/* ============================================================
   Header Live Search Suggestions UI
   Clean Luxury Aesthetic — BoConcept / Atelier Spec
   ============================================================ */

.moz-header-search-wrap {
	position: relative;
}

.moz-search-suggestions {
	position: absolute;
	top: calc(100% + 12px);
	right: 0;
	width: min(440px, 92vw);
	background: #FFFFFF;
	border: 1px solid var(--moz-earth-200, #EAE6DF);
	border-radius: 6px;
	box-shadow: 0 20px 56px rgba(20, 18, 14, 0.2), 0 4px 12px rgba(20, 18, 14, 0.06);
	padding: 14px 0 8px;
	z-index: 10000;
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.25s var(--moz-ease), transform 0.25s var(--moz-ease), visibility 0.25s;
	box-sizing: border-box;
	max-height: 480px;
	overflow-y: auto;
}

.moz-search-suggestions.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.moz-sugg-section-title {
	font-size: 10px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #8A7A64;
	font-weight: 600;
	padding: 4px 18px 8px;
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.moz-sugg-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 8px;
	padding: 4px 18px 14px;
	border-bottom: 1px solid #F5F2EC;
	margin-bottom: 6px;
}

.moz-sugg-pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #FAF8F5;
	border: 1px solid #EAE6DF;
	border-radius: 20px;
	padding: 5px 12px;
	font-size: 11.5px;
	color: #14120E;
	text-decoration: none;
	transition: all 0.2s;
	letter-spacing: 0.02em;
}

.moz-sugg-pill:hover {
	background: #A0522D;
	color: #FFFFFF !important;
	border-color: #A0522D;
}

.moz-sugg-pill-badge {
	font-size: 9px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	opacity: 0.7;
	font-weight: 600;
}

.moz-sugg-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.moz-sugg-item {
	border-bottom: 1px solid #F8F6F1;
}

.moz-sugg-item:last-child {
	border-bottom: none;
}

.moz-sugg-link {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 10px 18px;
	text-decoration: none;
	color: #14120E;
	transition: background 0.2s;
}

.moz-sugg-link:hover {
	background: #FAF8F5;
}

.moz-sugg-thumb {
	width: 48px;
	height: 48px;
	border-radius: 4px;
	overflow: hidden;
	background: #EAE6DF;
	flex: 0 0 48px;
}

.moz-sugg-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.moz-sugg-details {
	flex: 1;
	min-width: 0;
}

.moz-sugg-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 18px;
	font-weight: 500;
	color: #14120E;
	margin: 0 0 2px;
	line-height: 1.2;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.moz-sugg-link:hover .moz-sugg-title {
	color: #A0522D;
}

.moz-sugg-sub {
	font-size: 10.5px;
	color: #8A7A64;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.moz-sugg-price {
	font-size: 14px;
	font-weight: 600;
	color: #14120E;
	white-space: nowrap;
	text-align: right;
}

.moz-sugg-view-all {
	display: block;
	padding: 12px 18px 6px;
	margin-top: 6px;
	border-top: 1px solid #F0ECE6;
	text-align: center;
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #A0522D;
	text-decoration: none;
	transition: color 0.2s;
}

.moz-sugg-view-all:hover {
	color: #803D1E;
	text-decoration: underline;
}

.moz-sugg-empty {
	padding: 18px;
	font-size: 12px;
	color: #8A7A64;
	text-align: center;
	line-height: 1.5;
}

/* Mobile search suggestions */
.moz-mobile-search-bar .moz-search-suggestions {
	position: static;
	width: 100%;
	margin-top: 10px;
	border-radius: 4px;
	box-shadow: none;
	border: 1px solid #EAE6DF;
	background: #FFFFFF;
}

/* Hidden elements on desktop */
.moz-mobile-menu-toggle,
.moz-mobile-drawer {
	display: none;
}

/* ============================================================
   MOBILE & TABLET HEADER (<= 1024px)
   ============================================================ */
@media (max-width: 1024px) {
	.moz-header {
		padding: 0 !important;
		margin: 0 !important;
	}

	.moz-header-row-bottom-wrap {
		display: none !important;
	}

	.moz-header-row-top-wrap {
		border-bottom: none !important;
	}

	.moz-header-row-top {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		padding: 8px 16px !important;
		border-bottom: none !important;
		gap: 8px !important;
		min-height: auto !important;
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.moz-header.is-shrunk .moz-header-row-top {
		padding: 6px 16px !important;
	}

	/* Left side: Hamburger & Logo Grouped Together */
	.moz-header-top-left {
		flex: 0 0 auto !important;
		display: flex !important;
		align-items: center !important;
		margin: 0 !important;
	}

	.moz-header-top-center {
		flex: 0 1 auto !important;
		display: flex !important;
		justify-content: flex-start !important;
		align-items: center !important;
		margin: 0 0 0 6px !important;
		min-width: 0 !important;
	}

	.moz-header-top-right {
		flex: 0 0 auto !important;
		margin-left: auto !important;
		display: flex !important;
		align-items: center !important;
		gap: 10px !important;
	}

	/* On mobile/tablet: Hide text greeting, show icon with active dot */
	#moz-account-wrap .moz-account-user-greeting {
		display: none !important;
	}
	#moz-account-wrap .moz-account-icon-wrap {
		display: inline-flex !important;
	}
	.moz-account-trigger.is-logged-in .moz-account-icon-wrap {
		position: relative;
	}
	.moz-account-trigger.is-logged-in .moz-account-icon-wrap::after {
		content: '';
		position: absolute;
		top: -1px;
		right: -1px;
		width: 6px;
		height: 6px;
		background: #A0522D;
		border-radius: 50%;
		border: 1px solid #14120E;
	}

	.moz-header-divider {
		display: none !important;
	}

	.moz-consult-btn-wrap {
		display: none !important;
	}

	/* Hamburger Button (Left) */
	.moz-mobile-menu-toggle {
		display: flex !important;
		flex-direction: column;
		justify-content: center;
		gap: 5px;
		width: 36px;
		height: 36px;
		background: transparent;
		border: none;
		cursor: pointer;
		padding: 4px;
		color: #FFFFFF;
	}

	.moz-ham-bar {
		display: block;
		width: 22px;
		height: 2px;
		background: #FFFFFF;
		border-radius: 2px;
		transition: transform 0.3s var(--moz-ease), opacity 0.3s var(--moz-ease);
	}

	/* Logo Aligned to Left */
	.moz-site-logo {
		display: flex !important;
		justify-content: flex-start !important;
		align-items: center !important;
	}

	.moz-logo-link {
		display: inline-flex !important;
		justify-content: flex-start !important;
		align-items: center !important;
	}

	.moz-logo-img {
		height: 32px !important;
		max-height: 36px !important;
	}
	.moz-logo-symbol {
		height: 28px !important;
		max-height: 30px !important;
		left: 0 !important;
		transform: translateY(-50%) scale(0.75) !important;
		transform-origin: left center !important;
	}

	.moz-header.is-shrunk .moz-logo-img.moz-logo-full {
		height: 26px !important;
		max-height: 28px !important;
	}
	.moz-header.is-shrunk .moz-logo-img.moz-logo-symbol {
		height: 24px !important;
		max-height: 26px !important;
		left: 0 !important;
		transform: translateY(-50%) scale(1) !important;
	}

	@media (max-width: 480px) {
		.moz-header-row-top {
			padding: 8px 12px !important;
			gap: 6px !important;
		}
		.moz-header.is-shrunk .moz-header-row-top {
			padding: 5px 12px !important;
		}
		.moz-header-top-center {
			margin-left: 2px !important;
		}
		.moz-header-top-right {
			gap: 8px !important;
		}
		.moz-logo-img {
			height: 28px !important;
			max-height: 32px !important;
		}
		.moz-logo-symbol {
			height: 24px !important;
			max-height: 26px !important;
		}
		.moz-header.is-shrunk .moz-logo-img.moz-logo-full {
			height: 24px !important;
			max-height: 26px !important;
		}
		.moz-header.is-shrunk .moz-logo-img.moz-logo-symbol {
			height: 22px !important;
			max-height: 24px !important;
		}
	}

	/* Mobile Drawer */
	.moz-mobile-drawer {
		display: block;
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 100vw !important;
		height: 100vh !important;
		height: 100dvh !important;
		max-height: 100vh !important;
		max-height: 100dvh !important;
		z-index: 999999 !important;
		pointer-events: none;
		visibility: hidden;
		transition: visibility 0.3s;
	}

	.moz-mobile-drawer.is-open {
		pointer-events: auto !important;
		visibility: visible !important;
	}

	.moz-drawer-backdrop {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 100% !important;
		height: 100% !important;
		background: rgba(20, 18, 14, 0.65) !important;
		opacity: 0;
		transition: opacity 0.3s;
		z-index: 1 !important;
	}

	.moz-mobile-drawer.is-open .moz-drawer-backdrop {
		opacity: 1 !important;
	}

	.moz-drawer-inner {
		position: fixed !important;
		top: 0 !important;
		bottom: 0 !important;
		left: 0 !important;
		width: min(85vw, 360px) !important;
		height: 100% !important;
		height: 100vh !important;
		height: 100dvh !important;
		max-height: 100vh !important;
		max-height: 100dvh !important;
		background: #FAF8F5 !important;
		box-shadow: 4px 0 24px rgba(0, 0, 0, 0.25) !important;
		display: flex !important;
		flex-direction: column !important;
		justify-content: flex-start !important;
		transform: translateX(-100%) !important;
		transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch !important;
		padding: 24px 20px !important;
		box-sizing: border-box !important;
		z-index: 2 !important;
	}

	.moz-mobile-drawer.is-open .moz-drawer-inner {
		transform: translateX(0) !important;
	}

	.moz-drawer-header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding-bottom: 14px;
		border-bottom: 1px solid #EAE6DF;
		margin-bottom: 12px;
		width: 100%;
		flex-shrink: 0;
	}

	.moz-drawer-logo {
		font-family: 'Cormorant Garamond', serif;
		font-size: 19px;
		font-weight: 500;
		letter-spacing: 0.08em;
		color: #14120E;
		text-transform: uppercase;
	}

	.moz-drawer-close {
		background: transparent;
		border: none;
		color: #14120E;
		cursor: pointer;
		padding: 4px;
		display: flex;
		align-items: center;
	}

	.moz-drawer-nav {
		list-style: none;
		padding: 0;
		margin: 0;
		display: flex;
		flex-direction: column;
		gap: 0;
		width: 100%;
		flex-shrink: 0;
	}

	.moz-drawer-nav li a,
	.moz-drawer-dropdown-btn {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		padding: 12px 6px;
		color: #14120E;
		text-decoration: none;
		font-size: 13px;
		font-weight: 500;
		letter-spacing: 0.1em;
		text-transform: uppercase;
		border-bottom: 1px solid #F0ECE6;
		background: transparent;
		border-top: none;
		border-left: none;
		border-right: none;
		cursor: pointer;
		text-align: left;
		font-family: inherit;
		box-sizing: border-box;
	}

	.moz-drawer-nav li a:hover,
	.moz-drawer-dropdown-btn:hover {
		color: #A0522D;
	}

	.moz-drawer-arrow {
		transition: transform 0.25s var(--moz-ease);
	}

	.moz-drawer-dropdown.is-expanded .moz-drawer-arrow {
		transform: rotate(180deg);
	}

	.moz-drawer-submenu {
		list-style: none;
		padding: 0;
		margin: 0;
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.3s var(--moz-ease);
		background: #F4EFE6;
		border-radius: 4px;
	}

	.moz-drawer-dropdown.is-expanded .moz-drawer-submenu {
		max-height: 240px;
		padding: 6px 0 6px 14px;
		margin: 6px 0 10px;
	}

	.moz-drawer-submenu li a {
		font-size: 12.5px;
		padding: 8px 12px;
		border-bottom: none;
		text-transform: none;
		letter-spacing: 0.02em;
	}

	.moz-drawer-media-title {
		font-weight: 600;
		color: #C58970;
	}

	.moz-drawer-media-sub {
		font-size: 10.5px;
		color: #8A7A64;
	}

	.moz-drawer-consult-link {
		color: #C58970 !important;
		font-weight: 600 !important;
	}

	.moz-drawer-footer {
		margin-top: auto;
		padding-top: 24px;
		border-top: 1px solid #EAE6DF;
		font-size: 11px;
		color: #8A7A64;
		line-height: 1.5;
		width: 100%;
		flex-shrink: 0;
	}
}

/* ============================================================
   Main content offset for the fixed header
   ============================================================ */

.moz-main {
	--moz-main-offset: 165px;
	padding-top: var(--moz-main-offset);
	margin-top: 0;
}

@media (max-width: 1024px) {
	.moz-main {
		--moz-main-offset: 68px;
	}
}

/* ============================================================
   Hero block & Sticky Scroll Track (BoConcept Style)
   ============================================================ */

.moz-hero-track {
	position: relative;
	height: var(--moz-hero-track-h, 185vh);
	margin-top: calc(-1 * var(--moz-main-offset, 120px));
	padding: 0;
	z-index: 1;
}

main.moz-main .moz-hero-track {
	margin-top: calc(-1 * var(--moz-main-offset, 120px));
}

.moz-hero {
	position: sticky;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	min-height: 100vh;
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	overflow: hidden;
	margin-top: 0 !important;
	padding-top: 120px;
	background: var(--moz-overlay-full, #14120e);
	box-sizing: border-box;
	z-index: 1;
}

main.moz-main .moz-hero {
	margin-top: 0 !important;
}

.moz-hero.is-custom {
	height: 100vh;
	min-height: var(--moz-hero-h, 800px);
}

.moz-hero.is-editor-preview,
.moz-hero-track.is-editor-preview {
	height: min(100vh, 720px) !important;
	min-height: min(100vh, 720px) !important;
	margin-top: 0 !important;
	padding-top: 0 !important;
	position: relative !important;
}

.moz-hero-media {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	overflow: hidden;
	background: #14120E;
}

.moz-hero-media.is-flat {
	background: var(--moz-overlay-full, #14120e);
}

.moz-hero-media img.moz-hero-poster,
.moz-hero-media img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	min-width: 100%;
	min-height: 100%;
	max-width: none;
	max-height: none;
	transform: translate(-50%, -50%);
	object-fit: cover;
	object-position: center;
	display: block;
	z-index: 0;
}

.moz-hero-media video.moz-hero-video,
.moz-hero-media video {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	min-width: 100%;
	min-height: 100%;
	max-width: none;
	max-height: none;
	transform: translate(-50%, -50%);
	object-fit: cover;
	object-position: center;
	display: block;
	z-index: 1;
	opacity: 0;
	transition: opacity 0.8s ease-in-out;
}

.moz-hero-media video.moz-hero-video.is-playing {
	opacity: 1;
}

.moz-hero-sound-wrap {
	position: absolute;
	bottom: 24px;
	right: var(--moz-gutter, 32px);
	z-index: 10;
	will-change: transform, opacity;
}

@media (max-width: 768px) {
	.moz-hero-sound-wrap {
		bottom: 16px;
		right: 16px;
	}
}

.moz-hero-sound-toggle {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 16px;
	background: rgba(20, 18, 14, 0.65);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border: 1px solid rgba(255, 234, 204, 0.25);
	border-radius: 9999px;
	color: #ffeacc;
	font-family: inherit;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
}

.moz-hero-sound-toggle:hover {
	background: rgba(160, 82, 45, 0.85);
	border-color: #A0522D;
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 6px 24px rgba(160, 82, 45, 0.4);
}

.moz-hero-sound-toggle .moz-sound-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.moz-hero-sound-toggle.is-unmuted .moz-sound-on {
	display: inline-flex !important;
}

.moz-hero-sound-toggle.is-unmuted .moz-sound-off {
	display: none !important;
}

.moz-hero-sound-toggle:not(.is-unmuted) .moz-sound-on {
	display: none !important;
}

.moz-hero-sound-toggle:not(.is-unmuted) .moz-sound-off {
	display: inline-flex !important;
}

.moz-hero-overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	background: linear-gradient(
		to top,
		var(--moz-overlay-full, #14120e) 0%,
		var(--moz-overlay-mid, rgba(20, 18, 14, 0.3)) 55%,
		var(--moz-overlay-none, transparent) 100%
	);
	pointer-events: none;
}

.moz-hero-content {
	position: relative;
	z-index: 2;
	max-width: 1800px;
	width: 100%;
	margin: 0 auto;
	padding: 0 var(--moz-gutter) 64px;
	display: grid;
	grid-template-columns: 1fr;
	gap: 40px;
	align-items: end;
	will-change: transform, opacity;
}

@media (min-width: 1024px) {
	.moz-hero-content {
		grid-template-columns: 8fr 4fr;
		padding-bottom: 96px;
	}
}

.moz-hero-main {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.moz-hero-eyebrow {
	display: inline-block;
	font-size: 12px;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: #FFFFFF !important;
	font-weight: 600;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.35);
}

.moz-hero-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(3rem, 5.5vw, 4.5rem);
	font-weight: 400;
	line-height: 1.05;
	letter-spacing: -0.025em;
	color: #ffeacc;
	margin: 0;
}

.moz-hero-title em {
	color: var(--moz-earth-100);
	font-style: italic;
}

.moz-hero-desc {
	color: var(--moz-earth-200);
	font-weight: 300;
	max-width: 36rem;
	font-size: 0.875rem;
	line-height: 1.625;
	margin: 0;
}

@media (min-width: 1024px) {
	.moz-hero-desc {
		font-size: 1rem;
	}
}

.moz-hero-actions {
	display: flex;
}

.moz-hero-buttons {
	display: flex;
	flex-direction: column;
	gap: 16px;
	width: 100%;
}

@media (min-width: 640px) {
	.moz-hero-buttons {
		flex-direction: row;
	}
}

@media (min-width: 1024px) {
	.moz-hero-actions {
		justify-content: flex-end;
	}

	.moz-hero-buttons {
		width: auto;
	}
}

.moz-btn {
	display: inline-block;
	padding: 20px 32px;
	font-size: 12px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	font-weight: 600;
	border-radius: 2px;
	text-align: center;
	text-decoration: none;
	transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.moz-btn.is-filled {
	background: var(--btn-bg, var(--moz-sienna-500));
	color: var(--btn-color, var(--moz-earth-100));
}

.moz-btn.is-filled:hover {
	filter: brightness(0.9);
}

.moz-btn.is-outline {
	border: 1px solid var(--btn-border, var(--moz-earth-300));
	color: var(--btn-color, var(--moz-earth-100));
	background: transparent;
}

.moz-btn.is-outline:hover {
	background: color-mix(in srgb, var(--btn-color, var(--moz-earth-100)) 10%, transparent);
}

/* ============================================================
   Split Feature block (story/heritage section)
   ============================================================ */

.moz-split {
	background: var(--moz-split-bg, #f4efe6);
	border-bottom: 1px solid var(--moz-earth-200);
	padding: 128px 0;
}

.moz-split.is-editor-preview {
	padding: 64px 0;
}

.moz-split-inner {
	max-width: var(--moz-container);
	margin: 0 auto;
	padding: 0 var(--moz-gutter);
	display: grid;
	grid-template-columns: 1fr;
	gap: 64px;
	align-items: center;
}

@media (min-width: 1024px) {
	.moz-split-inner {
		grid-template-columns: 6fr 6fr;
	}
}

.moz-split-main {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.moz-split-eyebrow {
	display: block;
	font-size: 12px;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--moz-split-eyebrow, var(--moz-sienna-500));
	font-weight: 600;
}

.moz-split-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(2.25rem, 4vw, 3rem);
	font-weight: 400;
	line-height: 1.2;
	color: var(--moz-split-heading, var(--moz-earth-900));
	margin: 0;
}

.moz-split-text {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.moz-split-text p {
	color: var(--moz-split-text, var(--moz-earth-600));
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.625;
	margin: 0;
}

@media (min-width: 1024px) {
	.moz-split-text p {
		font-size: 1rem;
	}
}

.moz-split-text strong {
	font-weight: 600;
	color: var(--moz-split-heading, var(--moz-earth-900));
}

.moz-split-link-wrap {
	padding-top: 16px;
}

.moz-split-link {
	font-size: 12px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--moz-split-link, var(--moz-earth-900));
	text-decoration: none;
	border-bottom: 1px solid var(--moz-split-link, var(--moz-earth-900));
	padding-bottom: 4px;
	transition: color 0.3s var(--moz-ease), border-color 0.3s var(--moz-ease);
}

.moz-split-link:hover {
	color: var(--moz-sienna-500);
	border-color: var(--moz-sienna-500);
}

.moz-split-media {
	position: relative;
}

.moz-split-image {
	margin: 0;
	aspect-ratio: 4 / 5;
	background: var(--moz-earth-200);
	overflow: hidden;
	border-radius: 2px;
	box-shadow: 0 20px 40px rgba(20, 18, 14, 0.18);
}

.moz-split-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.moz-split-image.is-empty {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--moz-earth-400);
}

.moz-split-card {
	position: absolute;
	bottom: 32px;
	left: -32px;
	background: var(--moz-card-bg, var(--moz-earth-900));
	color: var(--moz-card-text, var(--moz-earth-100));
	padding: 24px;
	max-width: 320px;
	border-radius: 2px;
	box-shadow: 0 30px 60px rgba(20, 18, 14, 0.35);
	display: none;
}

@media (min-width: 640px) {
	.moz-split-card {
		display: block;
	}
}

.moz-split-card-eyebrow {
	display: block;
	font-size: 10px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-card-accent, var(--moz-sienna-500));
	font-weight: 600;
	margin-bottom: 8px;
}

.moz-split-card-quote {
	font-family: 'Cormorant Garamond', serif;
	font-size: 18px;
	line-height: 1.3;
	color: var(--moz-card-text, var(--moz-earth-100));
	margin: 0 0 16px;
}

.moz-split-card-attr {
	font-size: 12px;
	font-weight: 300;
	color: color-mix(in srgb, var(--moz-card-text, var(--moz-earth-100)) 65%, transparent);
}

/* ============================================================
   Editor canvas: let full-bleed sections bleed to the canvas
   edges (the live site has no page padding; the editor does).
   ============================================================ */

.moz-hero.is-editor-preview,
.moz-split.is-editor-preview,
.moz-cats.is-editor-preview {
	margin-left: calc(-1 * var(--wp--style--root--padding-left, 0px));
	margin-right: calc(-1 * var(--wp--style--root--padding-right, 0px));
	padding-left: var(--wp--style--root--padding-left, 0px);
	padding-right: var(--wp--style--root--padding-right, 0px);
}

/* ============================================================
   Category Grid + Category Card blocks
   ============================================================ */

.moz-cats {
	background: var(--moz-cats-bg, #faf8f5);
	padding: 128px 0;
}

/* The section is a child of a flow container — beat the global 24px margin. */
section.moz-cats {
	margin-block-start: 0;
}

/* Kill WP's global flow margins (:root :where(.is-layout-flow) > * → 24px).
   Higher specificity than the inline stylesheet rule. */
.moz-cats .moz-cats-inner > *,
.moz-cats .moz-cats-header > *,
.moz-cats .moz-cats-grid > * {
	margin-block-start: 0;
}

.moz-cats.is-editor-preview {
	padding: 64px 0;
}

.moz-cats-inner {
	max-width: var(--moz-container);
	margin: 0 auto;
	padding: 0 var(--moz-gutter);
}

.moz-cats-header {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
	gap: 24px;
	margin-bottom: 64px;
}

@media (min-width: 768px) {
	.moz-cats-header {
		flex-direction: row;
		align-items: flex-end;
	}
}

.moz-cats-header-left {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.moz-cats-eyebrow {
	display: block;
	font-size: 12px;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--moz-cats-eyebrow, var(--moz-sienna-500));
	font-weight: 600;
}

.moz-cats-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(2.25rem, 4vw, 3rem);
	font-weight: 400;
	line-height: 1.2;
	color: var(--moz-cats-title, var(--moz-earth-900));
	margin: 0;
}

.moz-cats-desc {
	color: var(--moz-cats-desc, var(--moz-earth-500));
	font-weight: 300;
	max-width: 24rem;
	font-size: 0.875rem;
	line-height: 1.625;
	margin: 0;
}

.moz-cats-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px;
}

@media (min-width: 768px) {
	.moz-cats-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 40px 48px;
	}
}

@media (min-width: 1024px) {
	.moz-cats-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 48px 64px;
	}
}

/* Fallback hiding rules for bar-cabinets and monolithic-tables */
.moz-cats-grid a[href*="bar-cabinets"],
.moz-cats-grid a[href*="monolithic-tables"],
.moz-cats-grid a#cabinets,
.moz-cats-grid a#tables-chairs {
	display: none !important;
}

/* In the editor, inner blocks sit inside an extra wrapper */
.moz-cats.is-editor-preview .moz-cats-grid {
	display: block;
}

.moz-cats.is-editor-preview .block-editor-block-list__layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px;
}

@media (min-width: 768px) {
	.moz-cats.is-editor-preview .block-editor-block-list__layout {
		grid-template-columns: repeat(2, 1fr);
		gap: 40px 48px;
	}
}

@media (min-width: 1024px) {
	.moz-cats.is-editor-preview .block-editor-block-list__layout {
		grid-template-columns: repeat(2, 1fr);
		gap: 48px 64px;
	}
}

/* Category card */
.moz-cat-card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	border-bottom: 1px solid var(--moz-earth-200);
	padding-bottom: 32px;
	text-decoration: none;
	color: inherit;
}

.moz-cat-media {
	margin: 0 0 24px;
	aspect-ratio: auto !important;
	height: auto !important;
	background: transparent;
	overflow: hidden;
	border-radius: 2px;
}

.moz-cat-media img {
	width: 100%;
	height: auto;
	object-fit: contain !important;
	display: block;
	transition: transform 0.5s var(--moz-ease);
}

.moz-cat-card:hover .moz-cat-media img {
	transform: scale(1.02);
}

.moz-cat-head {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 8px;
	gap: 12px;
}

.moz-cat-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 24px;
	font-weight: 400;
	line-height: 1.2;
	color: var(--moz-cat-title, var(--moz-earth-900));
	margin: 0;
}

.moz-cat-count {
	font-size: 12px;
	color: var(--moz-cat-count, var(--moz-earth-400));
	white-space: nowrap;
}

.moz-cat-desc {
	font-size: 12px;
	font-weight: 300;
	line-height: 1.625;
	color: var(--moz-cat-desc, var(--moz-earth-500));
	margin: 0 0 24px;
}

.moz-cat-link-wrap {
	margin-top: auto;
}

.moz-cat-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--moz-cat-link, var(--moz-earth-900));
	text-decoration: none;
	transition: color 0.3s var(--moz-ease);
}

.moz-cat-card:hover .moz-cat-link,
.moz-cat-link:hover {
	color: var(--moz-sienna-500);
}

/* ============================================================
   Featured Product block (spotlight)
   ============================================================ */

.moz-fp {
	background: var(--moz-fp-bg, #eadec9);
	border-top: 1px solid var(--moz-earth-300);
	border-bottom: 1px solid var(--moz-earth-300);
	padding: 128px 0;
}

/* Beat WP's global 24px flow margin on the section and its children. */
section.moz-fp {
	margin-block-start: 0;
}

.moz-fp .moz-fp-inner > *,
.moz-fp .moz-fp-main > * {
	margin-block-start: 0;
}

.moz-fp.is-editor-preview {
	padding: 64px 0;
}

.moz-fp-inner {
	max-width: var(--moz-container);
	margin: 0 auto;
	padding: 0 var(--moz-gutter);
	display: grid;
	grid-template-columns: 1fr;
	gap: 64px;
	align-items: center;
}

@media (min-width: 1024px) {
	.moz-fp-inner {
		grid-template-columns: 7fr 5fr;
	}
}

.moz-fp-media {
	margin: 0;
	overflow: hidden;
	border-radius: 2px;
	box-shadow: 0 20px 45px rgba(20, 18, 14, 0.22);
	display: flex;
	align-items: center;
	justify-content: center;
}

.moz-fp-media img {
	width: 100%;
	height: auto;
	object-fit: contain;
	display: block;
}

.moz-fp-main {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.moz-fp-badge {
	align-self: flex-start;
	display: inline-block;
	padding: 4px 12px;
	background: color-mix(in srgb, var(--moz-fp-badge, var(--moz-sienna-500)) 10%, transparent);
	color: var(--moz-fp-badge, var(--moz-sienna-500));
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	border-radius: 2px;
}

.moz-fp-head {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.moz-fp-eyebrow {
	display: block;
	font-size: 12px;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--moz-fp-eyebrow, var(--moz-earth-500));
	font-weight: 400;
}

.moz-fp-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(2.25rem, 4vw, 3rem);
	font-weight: 400;
	line-height: 1.2;
	color: var(--moz-fp-title, var(--moz-earth-900));
	margin: 0;
}

.moz-fp-desc {
	color: var(--moz-fp-text, var(--moz-earth-600));
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.625;
	margin: 0;
}

@media (min-width: 1024px) {
	.moz-fp-desc {
		font-size: 1rem;
	}
}

.moz-fp-pricebox {
	border-top: 1px solid var(--moz-earth-300);
	padding-top: 24px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.moz-fp-price-row {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 16px;
}

.moz-fp-price-label {
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-fp-price-label, var(--moz-earth-500));
}

.moz-fp-price {
	font-size: 24px;
	font-weight: 300;
	color: var(--moz-fp-price, var(--moz-earth-900));
}

.moz-fp-buttons {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

@media (min-width: 640px) {
	.moz-fp-buttons {
		flex-direction: row;
	}
}

.moz-fp-btn {
	display: inline-block;
	padding: 16px 24px;
	font-size: 12px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	font-weight: 600;
	border-radius: 2px;
	text-align: center;
	text-decoration: none;
	transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.moz-fp-btn.is-filled {
	flex-grow: 1;
	background: var(--moz-fp-btn1-bg, var(--moz-earth-900));
	color: var(--moz-fp-btn1-color, var(--moz-earth-100));
}

.moz-fp-btn.is-filled:hover {
	filter: brightness(1.2);
}

.moz-fp-btn.is-outline {
	flex-grow: 0;
	border: 1px solid var(--moz-fp-btn2-border, var(--moz-earth-400));
	color: var(--moz-fp-btn2-color, var(--moz-earth-900));
	background: transparent;
}

.moz-fp-btn.is-outline:hover {
	border-color: var(--moz-fp-btn2-color, var(--moz-earth-900));
}

/* ============================================================
   Product archive / collection page (SubCat design)
   ============================================================ */

.moz-cat-banner {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: 45vh;
	min-height: min(45vh, 700px);
	background-color: var(--moz-earth-900);
	background-size: cover;
	background-position: center;
	margin-top: calc(-1 * var(--moz-main-offset, 120px));
	overflow: hidden;
}

/* Beat WordPress global styles (:where(...) > * and :first-child margin
   resets) so the banner tucks up behind the fixed header. */
main.moz-main .moz-cat-banner {
	margin-top: calc(-1 * var(--moz-main-offset, 120px));
}

.moz-cat-banner::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(
		to top,
		rgba(20, 18, 14, 0.95) 0%,
		rgba(20, 18, 14, 0.4) 55%,
		rgba(20, 18, 14, 0) 100%
	);
}

.moz-cat-banner-inner {
	position: relative;
	z-index: 2;
	max-width: var(--moz-container);
	width: 100%;
	margin: 0 auto;
	padding: calc(var(--moz-main-offset, 120px) + 24px) var(--moz-gutter) 64px;
}

.moz-cat-eyebrow {
	font-size: 12px;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--moz-sienna-500);
	font-weight: 600;
	margin: 0 0 8px;
}

.moz-cat-banner .wp-block-query-title,
.moz-cat-banner .wp-block-post-title,
.moz-cat-banner h1 {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(2.5rem, 5vw, 3.5rem);
	font-weight: 400;
	line-height: 1.15;
	color: var(--moz-earth-100);
	margin: 0;
}

.moz-cat-banner .wp-block-term-description p {
	color: var(--moz-earth-300);
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.625;
	max-width: 36rem;
	margin: 12px 0 0;
}

.moz-shop-body {
	max-width: var(--moz-container);
	margin: 0 auto;
	padding: 48px var(--moz-gutter) 96px;
}

.moz-shop-main .moz-shop-toolbar:not(.moz-sofa-filter-toolbar),
.moz-shop-toolbar-inner:not(.moz-static-toolbar-inner) {
	display: none !important;
}

.moz-shop-main .moz-shop-sidebar {
	display: none !important;
}

.moz-shop-toolbar {
	background: var(--moz-earth-50);
	border-bottom: 1px solid var(--moz-earth-200);
	padding: 32px 0;
}

/* Beat WP's global 24px flow margin (higher specificity than the inline rule). */
.moz-main .moz-shop-toolbar {
	margin-block-start: 0;
}

.moz-shop-toolbar .moz-shop-toolbar-inner {
	margin-block-start: 0;
}

.moz-shop-toolbar .moz-shop-toolbar-inner > * {
	margin-block-start: 0;
}

.moz-shop-toolbar-inner {
	max-width: var(--moz-container);
	margin: 0 auto;
	padding: 0 var(--moz-gutter);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
}

/* Mobile: keep items top-aligned (beats the flex container class). */
.wp-block-group.moz-shop-toolbar-inner,
.moz-shop-toolbar .moz-shop-toolbar-inner {
	align-items: flex-start;
}

@media (min-width: 768px) {
	.moz-shop-toolbar-inner {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
	}
}

.moz-cat-search {
	width: 100%;
	max-width: 440px;
	margin: 0;
}

.moz-cat-search .wp-block-search__inside-wrapper {
	width: 100%;
	position: relative;
	display: flex;
	align-items: center;
	padding: 0;
	background: transparent;
	border: none;
}

.moz-cat-search .wp-block-search__input {
	background: transparent;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238C8275' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left 0 center;
	background-size: 16px 16px;
	border: none;
	border-bottom: 1px solid var(--moz-earth-300, #E0DBD3);
	border-radius: 0;
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 1.25rem;
	font-style: italic;
	font-weight: 400;
	letter-spacing: 0.02em;
	color: var(--moz-earth-900, #1A1A1A);
	padding: 8px 12px 8px 28px;
	outline: none;
	width: 100%;
	box-shadow: none;
	transition: border-color 0.25s ease, background-image 0.25s ease;
}

.moz-cat-search .wp-block-search__input::placeholder {
	color: var(--moz-earth-400, #99938A);
	font-style: italic;
	opacity: 0.9;
	transition: opacity 0.2s ease;
}

.moz-cat-search .wp-block-search__input:focus {
	border-bottom-color: var(--moz-earth-900, #1A1A1A);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
}

.moz-cat-search .wp-block-search__input:focus::placeholder {
	opacity: 0.5;
}

.moz-shop-toolbar-inner > .wp-block-group {
	gap: 16px;
	align-items: center;
	flex-wrap: wrap;
}

.moz-shop-toolbar .woocommerce-product-results-count,
.moz-shop-toolbar .wp-block-woocommerce-product-results-count {
	margin: 0;
}

.moz-shop-toolbar .woocommerce-result-count {
	font-size: 12px !important;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--moz-sienna-500);
	font-weight: 600;
	margin: 0;
}

.moz-shop-toolbar .woocommerce-ordering select,
.moz-shop-toolbar .wp-block-woocommerce-catalog-sorting select {
	background: transparent;
	border: none;
	border-bottom: 1px solid var(--moz-earth-300);
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-600);
	padding: 4px 24px 4px 0;
	outline: none;
	cursor: pointer;
}

.moz-shop-layout {
	display: block;
	width: 100%;
	padding-bottom: 96px;
}

.moz-shop-layout:has(.moz-shop-sidebar:not([style*="display: none"]):not([style*="display:none"])) {
	display: grid;
	grid-template-columns: 1fr;
	gap: 48px;
	padding-bottom: 128px;
}

@media (min-width: 1024px) {
	.moz-shop-layout:has(.moz-shop-sidebar:not([style*="display: none"]):not([style*="display:none"])) {
		grid-template-columns: 300px 1fr;
		gap: 64px;
	}
}

.moz-shop-sidebar,
aside.moz-shop-sidebar,
.wp-block-group.moz-shop-sidebar {
	align-self: start;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding-right: 8px;
	overflow: visible !important;
	overflow-x: visible !important;
	overflow-y: visible !important;
}

@media (min-width: 1024px) {
	.moz-shop-sidebar,
	aside.moz-shop-sidebar,
	.wp-block-group.moz-shop-sidebar {
		position: sticky;
		top: 140px;
		overflow: visible !important;
		overflow-x: visible !important;
		overflow-y: visible !important;
	}
}

.moz-shop-sidebar .wp-block-woocommerce-product-filters,
.moz-shop-sidebar .wc-block-product-filters,
.moz-shop-sidebar .wc-block-product-filters__overlay,
.moz-shop-sidebar .wc-block-product-filters__overlay-wrapper,
.moz-shop-sidebar .wc-block-product-filters__overlay-dialog,
.moz-shop-sidebar .wc-block-product-filters__overlay-content {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	min-inline-size: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Kill the browser's default <fieldset> border/padding (UA stylesheet). */
.moz-shop-sidebar fieldset,
.moz-shop-sidebar .wp-block-woocommerce-product-filter-checkbox-list fieldset {
	border: none;
	padding: 0;
	margin: 0 0 20px;
	min-inline-size: 0;
	display: block;
}

/* The filters render inside WC's overlay wrapper (desktop shows it inline).
   Each category = heading + filter block, one border after the group. */
.moz-shop-sidebar .wc-block-product-filters__overlay-content > h4 {
	padding-bottom: 0;
	border-bottom: none;
}

.moz-shop-sidebar .wc-block-product-filters__overlay-content
	> .wp-block-woocommerce-product-filter-taxonomy,
.moz-shop-sidebar .wc-block-product-filters__overlay-content
	> .wp-block-woocommerce-product-filter-price,
.moz-shop-sidebar .wc-block-product-filters__overlay-content
	> .wp-block-woocommerce-product-filter-active {
	border-bottom: 1px solid var(--moz-earth-200);
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

.moz-shop-sidebar .wc-block-product-filters__overlay-content
	> .wp-block-woocommerce-product-filter-active {
	border-bottom: none;
	padding-bottom: 0;
}

.moz-filter-title {
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-900);
	font-weight: 600;
	margin: 0 0 8px;
}

.moz-filter-group {
	border-bottom: 1px solid var(--moz-earth-200);
	padding: 24px 0;
}

.moz-filter-label {
	font-family: 'Inter', sans-serif;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-900);
	font-weight: 600;
	margin: 0;
}

.moz-filter-group .wc-block-components-checkbox,
.moz-filter-group .wc-block-components-checkbox-list-item {
	margin-bottom: 10px;
}

.moz-filter-group .wc-block-components-checkbox__label {
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--moz-earth-600);
	cursor: pointer;
}

.moz-filter-group .wc-block-components-checkbox__input:checked + .wc-block-components-checkbox__mark {
	fill: var(--moz-sienna-500);
}

/* Custom-box checkboxes (matches the HTML design) */
.wc-block-product-filter-checkbox-list__item {
	margin-bottom: 12px;
}

.wc-block-product-filter-checkbox-list__label {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-600);
	cursor: pointer;
	transition: color 0.3s var(--moz-ease);
}

.wc-block-product-filter-checkbox-list__label:hover {
	color: var(--moz-earth-900);
}

.wc-block-product-filter-checkbox-list__input {
	appearance: none;
	-webkit-appearance: none;
	width: 16px !important;
	height: 16px !important;
	border: 1px solid rgba(20, 18, 14, 0.2) !important;
	border-radius: 2px;
	position: relative;
	flex: 0 0 auto;
	margin: 0;
	padding: 0;
	background: transparent;
	transition: all 0.3s var(--moz-ease);
}

.wc-block-product-filter-checkbox-list__input:checked {
	background-color: var(--moz-sienna-500);
	border-color: var(--moz-sienna-500);
}

.wc-block-product-filter-checkbox-list__input:checked::after {
	content: "";
	position: absolute;
	left: 4px;
	top: 1px;
	width: 4px;
	height: 8px;
	border: solid var(--moz-earth-100);
	border-width: 0 1.5px 1.5px 0;
	transform: rotate(45deg);
}

.wc-block-product-filter-checkbox-list__mark {
	display: none;
}

/* Budget: interactive price range slider */
.wp-block-woocommerce-product-filter-price-slider,
.wc-block-product-filter-price-slider {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.wc-block-product-filter-price-slider__content,
.wc-block-product-filter-price-slider__content--inline {
	display: grid !important;
	grid-template-areas:
		"price-slider price-slider"
		"left-input   right-input" !important;
	grid-template-columns: 1fr 1fr !important;
	column-gap: 16px !important;
	row-gap: 12px !important;
	align-items: center !important;
	margin-top: 14px !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

.wc-block-product-filter-price-slider__range {
	grid-area: price-slider !important;
	position: relative;
	height: 18px;
	display: flex;
	align-items: center;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	box-sizing: border-box;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	--range-color: var(--moz-earth-900, #1A1A1A);
	--wc-product-filter-price-slider-handle: #ffffff;
	--wc-product-filter-price-slider-handle-border: var(--moz-earth-900, #1A1A1A);
}

.wc-block-product-filter-price-slider__range:before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	height: 2px;
	transform: translateY(-50%);
	background: var(--moz-earth-300, #D1CAC0);
	border-radius: 1px;
	opacity: 1;
	border: none !important;
}

.wc-block-product-filter-price-slider__range .range-bar {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	height: 2px;
	left: var(--low, 0%);
	right: calc(100% - var(--high, 100%));
	background: var(--moz-earth-900, #1A1A1A);
	border-radius: 1px;
	z-index: 1;
	border: none !important;
}

.wc-block-product-filter-price-slider__range input[type="range"] {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0 !important;
	background: transparent;
	appearance: none;
	-webkit-appearance: none;
	pointer-events: none;
	outline: none !important;
	border: none !important;
	box-sizing: border-box;
	z-index: 2;
}

.wc-block-product-filter-price-slider__range input[type="range"]::-webkit-slider-thumb {
	appearance: none;
	-webkit-appearance: none;
	pointer-events: auto;
	cursor: grab;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #ffffff;
	border: 1.5px solid var(--moz-earth-900, #1A1A1A);
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
	transition: transform 0.15s ease, background-color 0.15s ease;
}

.wc-block-product-filter-price-slider__range input[type="range"]::-webkit-slider-thumb:hover,
.wc-block-product-filter-price-slider__range input[type="range"]::-webkit-slider-thumb:active {
	background: var(--moz-earth-900, #1A1A1A);
	cursor: grabbing;
	transform: scale(1.2);
}

.wc-block-product-filter-price-slider__range input[type="range"]::-moz-range-thumb {
	appearance: none;
	pointer-events: auto;
	cursor: grab;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #ffffff;
	border: 1.5px solid var(--moz-earth-900, #1A1A1A);
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
	transition: transform 0.15s ease, background-color 0.15s ease;
}

.wc-block-product-filter-price-slider__range input[type="range"]::-moz-range-thumb:hover,
.wc-block-product-filter-price-slider__range input[type="range"]::-moz-range-thumb:active {
	background: var(--moz-earth-900, #1A1A1A);
	cursor: grabbing;
	transform: scale(1.2);
}

.wc-block-product-filter-price-slider__left,
.wc-block-product-filter-price-slider__right,
.wp-block-woocommerce-product-filter-price-slider .wc-block-product-filter-price-slider__left,
.wp-block-woocommerce-product-filter-price-slider .wc-block-product-filter-price-slider__right,
.wp-block-woocommerce-product-filter-price-slider .text,
.wc-block-product-filter-price-slider .text,
.moz-shop-sidebar .text {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

.wc-block-product-filter-price-slider__left,
.wp-block-woocommerce-product-filter-price-slider .wc-block-product-filter-price-slider__left {
	grid-area: left-input !important;
	text-align: left !important;
}

.wc-block-product-filter-price-slider__right,
.wp-block-woocommerce-product-filter-price-slider .wc-block-product-filter-price-slider__right {
	grid-area: right-input !important;
	text-align: right !important;
}

.wp-block-woocommerce-product-filter-price-slider input[type="text"],
.wp-block-woocommerce-product-filter-price-slider input.min,
.wp-block-woocommerce-product-filter-price-slider input.max,
.wp-block-woocommerce-product-filter-price-slider .wc-block-product-filter-price-slider__left input,
.wp-block-woocommerce-product-filter-price-slider .wc-block-product-filter-price-slider__right input,
.wp-block-woocommerce-product-filter-price-slider .text input,
.wc-block-product-filter-price-slider input.min,
.wc-block-product-filter-price-slider input.max,
.wc-block-product-filter-price-slider .wc-block-product-filter-price-slider__left input,
.wc-block-product-filter-price-slider .wc-block-product-filter-price-slider__right input,
.wc-block-product-filter-price-slider .text input,
.wc-block-product-filter-price-slider input[type="text"],
.moz-shop-sidebar input[type="text"].min,
.moz-shop-sidebar input[type="text"].max {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	height: auto !important;
	line-height: 1.4 !important;
	box-sizing: border-box !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	padding: 2px 0 !important;
	font-family: 'Inter', -apple-system, sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	letter-spacing: 0.02em !important;
	color: var(--moz-earth-800, #2C2825) !important;
	outline: none !important;
	box-shadow: none !important;
	min-height: 0 !important;
	margin: 0 !important;
}

.wp-block-woocommerce-product-filter-price-slider input.min,
.wc-block-product-filter-price-slider input.min,
.wc-block-product-filter-price-slider__left input,
.wp-block-woocommerce-product-filter-price-slider .wc-block-product-filter-price-slider__left input {
	text-align: left !important;
}

.wp-block-woocommerce-product-filter-price-slider input.max,
.wc-block-product-filter-price-slider input.max,
.wc-block-product-filter-price-slider__right input,
.wp-block-woocommerce-product-filter-price-slider .wc-block-product-filter-price-slider__right input {
	text-align: right !important;
}

.wp-block-woocommerce-product-filter-price-slider input[type="text"]:focus,
.wp-block-woocommerce-product-filter-price-slider input.min:focus,
.wp-block-woocommerce-product-filter-price-slider input.max:focus,
.wp-block-woocommerce-product-filter-price-slider .wc-block-product-filter-price-slider__left input:focus,
.wp-block-woocommerce-product-filter-price-slider .wc-block-product-filter-price-slider__right input:focus,
.wp-block-woocommerce-product-filter-price-slider .text input:focus,
.wc-block-product-filter-price-slider input.min:focus,
.wc-block-product-filter-price-slider input.max:focus,
.wc-block-product-filter-price-slider .wc-block-product-filter-price-slider__left input:focus,
.wc-block-product-filter-price-slider .wc-block-product-filter-price-slider__right input:focus,
.wc-block-product-filter-price-slider .text input:focus,
.wc-block-product-filter-price-slider input[type="text"]:focus {
	background: transparent !important;
	outline: none !important;
	box-shadow: none !important;
	color: var(--moz-earth-900, #1A1A1A) !important;
}

.moz-shop-results {
	min-width: 0;
}

/* Product cards inside the collection */
.wp-block-woocommerce-product-collection .wc-block-product-template {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px;
	list-style: none;
	margin: 0;
	padding: 0;
}

@media (min-width: 640px) {
	.wp-block-woocommerce-product-collection .wc-block-product-template {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.wp-block-woocommerce-product-collection .wc-block-product-template,
	.wp-block-woocommerce-product-collection .wc-block-product-template.columns-2,
	.wp-block-woocommerce-product-collection .wc-block-product-template.columns-3,
	.moz-shop-results .wc-block-product-template {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

.wp-block-woocommerce-product-collection .wc-block-product-template > li {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 8px 16px;
	align-items: baseline;
	border-bottom: 1px solid var(--moz-earth-200);
	padding-bottom: 32px;
	margin: 0;
}

.wp-block-woocommerce-product-collection .wc-block-product-template > li > .wc-block-components-product-image,
.wp-block-woocommerce-product-collection .wc-block-product-template > li > .wp-block-woocommerce-product-image {
	grid-column: 1 / -1;
	margin: 0 0 16px;
}

.wc-block-components-product-image img {
	width: 100%;
	aspect-ratio: auto !important;
	height: auto !important;
	object-fit: contain !important;
	border-radius: 2px;
	background: transparent;
}

.wp-block-woocommerce-product-collection .wc-block-components-product-image img {
	aspect-ratio: auto !important;
	height: auto !important;
	object-fit: contain !important;
}

.wp-block-woocommerce-product-collection .wc-block-components-product-title,
.wp-block-woocommerce-product-collection .wp-block-post-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 24px;
	font-weight: 400;
	color: var(--moz-earth-900);
	margin: 0;
}

.wp-block-woocommerce-product-collection .wc-block-components-product-title a,
.wp-block-woocommerce-product-collection .wp-block-post-title a {
	color: var(--moz-earth-900);
	text-decoration: none;
}

.wp-block-woocommerce-product-collection .wc-block-components-product-title a:hover,
.wp-block-woocommerce-product-collection .wp-block-post-title a:hover {
	color: var(--moz-sienna-500);
}

.wp-block-woocommerce-product-collection .wc-block-components-product-price {
	font-size: 18px;
	font-weight: 300;
	color: var(--moz-earth-900);
}

.wp-block-woocommerce-product-collection .wc-block-components-product-button {
	grid-column: 1 / -1;
	margin-top: 8px;
}

.wp-block-woocommerce-product-collection .wc-block-components-product-button .wp-block-button__link {
	background: var(--moz-sienna-500);
	color: var(--moz-earth-100);
	font-size: 12px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	font-weight: 600;
	padding: 12px 24px;
	border-radius: 2px;
	transition: background 0.3s var(--moz-ease);
}

.wp-block-woocommerce-product-collection .wc-block-components-product-button .wp-block-button__link:hover {
	background: var(--moz-sienna-600);
}

/* Pagination */
.wp-block-woocommerce-product-collection .wp-block-query-pagination {
	margin-top: 64px;
	justify-content: center;
}

.wp-block-woocommerce-product-collection .wp-block-query-pagination a,
.wp-block-woocommerce-product-collection .wp-block-query-pagination .page-numbers {
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-600);
	text-decoration: none;
}

.wp-block-woocommerce-product-collection .wp-block-query-pagination .page-numbers.current {
	color: var(--moz-sienna-500);
	font-weight: 600;
}

.moz-shop-noresults {
	text-align: center;
	padding: 48px 0;
}

.moz-shop-noresults h4 {
	font-size: 28px;
	margin-bottom: 8px;
}

.moz-muted {
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-500);
}

/* ============================================================
   Single product page (Product.html configurator design)
   ============================================================ */

.moz-product-wrap {
	max-width: var(--moz-container);
	margin: 0 auto;
	padding: 0 var(--moz-gutter);
}

.moz-product-toolbar {
	border-bottom: 1px solid var(--moz-earth-200);
	padding: 24px 0;
	gap: 16px;
	align-items: center;
}

.moz-product-toolbar .woocommerce-breadcrumb,
.moz-product-toolbar nav.woocommerce-breadcrumb {
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-500);
	margin: 0;
}

.moz-product-toolbar .woocommerce-breadcrumb a {
	color: var(--moz-earth-500);
	text-decoration: none;
}

.moz-product-toolbar .woocommerce-breadcrumb a:hover {
	color: var(--moz-earth-900);
}

.moz-back-link {
	margin: 0;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.moz-back-link a {
	color: var(--moz-earth-500);
	text-decoration: none;
}

.moz-back-link a:hover {
	color: var(--moz-earth-900);
}

.moz-product-layout {
	display: flex;
	flex-direction: column;
	gap: 0;
}

@media (max-width: 1023px) {
	.moz-product-layout {
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;
	}

	/* On mobile, unwrap gallery col so right-side configurator sits directly below gallery */
	.moz-product-gallery-col {
		display: contents !important;
	}

	.moz-product-gallery-col > .wp-block-woocommerce-product-image-gallery,
	.moz-product-gallery-col > .woocommerce-product-gallery {
		order: 1 !important;
		width: 100% !important;
		min-width: 0 !important;
	}

	.moz-product-config-col {
		order: 2 !important;
		width: 100% !important;
		min-width: 0 !important;
		margin-top: 24px !important;
	}

	.moz-product-gallery-col > .moz-product-editorial,
	.moz-product-gallery-col > .moz-product-specs-grid,
	.moz-product-gallery-col > .moz-product-disclaimers,
	.moz-product-gallery-col > *:not(.wp-block-woocommerce-product-image-gallery):not(.woocommerce-product-gallery) {
		order: 3 !important;
		width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box !important;
	}

	.moz-product-gallery-col > .moz-product-editorial {
		margin-top: 48px !important;
	}

	/* Accordions placed LAST on mobile (Phone view) */
	.moz-accordions,
	.wp-block-mozambeak-product-accordions {
		order: 4 !important;
		width: 100% !important;
		margin-top: 48px !important;
		padding-top: 32px !important;
		border-top: 1px solid var(--moz-earth-200, #EAE6DF) !important;
		box-sizing: border-box !important;
	}
}

@media (min-width: 1024px) {
	.moz-product-layout {
		display: grid !important;
		grid-template-columns: 7fr 5fr !important;
		gap: 64px !important;
		align-items: start !important;
		padding: 48px 0 96px !important;
	}

	.moz-product-gallery-col {
		display: block !important;
		min-width: 0 !important;
	}

	.moz-product-config-col {
		order: unset !important;
		position: sticky !important;
		top: 140px !important;
		align-self: start !important;
		min-width: 0 !important;
		margin-top: 0 !important;
	}
}

.moz-product-gallery-col {
	min-width: 0;
}

/* Gallery — custom layout matching Product.html */
.woocommerce .moz-product-gallery-col .wp-block-woocommerce-product-image-gallery {
	max-width: none;
}

.woocommerce-product-gallery {
	background: transparent;
}

.moz-gal-main {
	position: relative;
	width: 100%;
	aspect-ratio: auto;
	min-height: 0 !important;
	background: var(--moz-earth-100, #F4EFE6);
	overflow: hidden;
	border-radius: 2px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: aspect-ratio 0.25s ease;
}

@media (min-width: 1024px) {
	.moz-gal-main {
		min-height: 0 !important;
	}
}

.moz-gal-main .woocommerce-product-gallery__image {
	margin: 0;
}

.moz-gal-main .woocommerce-product-gallery__image.moz-gal-img {
	height: 100%;
}

/* Neutralize the classic WC 25% grid rule for gallery images
   (.woocommerce-product-gallery__image:nth-child(n+2) → width:25%).
   Marker class wins the specificity tie since woocommerce.css
   loads after our theme stylesheet. */
.woocommerce div.product div.images .woocommerce-product-gallery__image.moz-gal-img:nth-child(n+2) {
	width: 100%;
	display: block;
}

/* Sliding track */
.moz-gal-track {
	position: absolute;
	inset: 0;
	display: flex;
	height: 100%;
	width: 100%;
	transition: transform 0.55s cubic-bezier(0.16, 1, 0.3, 1);
	will-change: transform;
}

.moz-gal-slide {
	flex: 0 0 100%;
	height: 100%;
	width: 100%;
}

.moz-gal-slide {
	flex: 0 0 100%;
	height: 100%;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.moz-gal-slide img,
.moz-gal-main img,
.moz-gal-wc-target {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
	display: block;
}

.moz-gal-tag {
	background: rgba(20, 18, 14, 0.9);
	color: var(--moz-earth-100);
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	padding: 8px 16px;
	border-radius: 2px;
}

.moz-gal-secondary,
.moz-gal-secondary > div {
	display: none;
}

/* Thumbnail strip */
.moz-gal-thumbs {
	display: flex;
	gap: 12px;
	margin-top: 24px;
	overflow-x: auto;
	padding: 4px 0;
	scrollbar-width: none;
	-webkit-mask-image: linear-gradient(to right, #000 88%, transparent 100%);
	mask-image: linear-gradient(to right, #000 88%, transparent 100%);
}

.moz-gal-thumbs::-webkit-scrollbar {
	display: none;
}

.moz-gal-thumb {
	flex: 0 0 88px !important;
	width: 88px !important;
	height: 88px !important;
	aspect-ratio: 1 / 1 !important;
	padding: 4px;
	border: 1.5px solid var(--moz-earth-200);
	border-radius: 2px;
	overflow: hidden;
	background: var(--moz-earth-100, #F4EFE6);
	cursor: pointer;
	opacity: 0.65;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity 0.3s var(--moz-ease), border-color 0.3s var(--moz-ease);
}

.moz-gal-thumb:hover {
	opacity: 1;
}

.moz-gal-thumb.is-active {
	border-color: var(--moz-sienna-500) !important;
	opacity: 1;
}

.moz-gal-thumb img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
	display: block;
}

/* Prev / next arrows */
.moz-gal-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 20;
	width: 44px;
	height: 44px;
	border-radius: 999px;
	background: rgba(20, 18, 14, 0.45);
	color: var(--moz-earth-100);
	border: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.3s var(--moz-ease);
}

.moz-gal-arrow:hover {
	background: rgba(20, 18, 14, 0.75);
}

.moz-gal-arrow.is-prev {
	left: 16px;
}

.moz-gal-arrow.is-next {
	right: 16px;
}

/* Utility classes used by the gallery template */
.aspect-4-3 {
	aspect-ratio: 4 / 3;
}

.aspect-square {
	aspect-ratio: 1 / 1;
}

.bg-earth-200 {
	background-color: var(--moz-earth-200);
}

.absolute {
	position: absolute;
}

.inset-0 {
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.z-10 {
	z-index: 10;
}

.z-20 {
	z-index: 20;
}

.pointer-events-none {
	pointer-events: none;
}

.overflow-hidden {
	overflow: hidden;
}

.grid {
	display: grid;
}

.grid-cols-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gap-6 {
	gap: 24px;
}

.bottom-6 {
	bottom: 24px;
}

.left-6 {
	left: 24px;
}

.px-4 {
	padding-left: 16px;
	padding-right: 16px;
}

.py-2 {
	padding-top: 8px;
	padding-bottom: 8px;
}

.text-xs {
	font-size: 12px;
}

.uppercase {
	text-transform: uppercase;
}

.tracking-widest {
	letter-spacing: 0.1em;
}

.rounded-sm {
	border-radius: 2px;
}

.w-full {
	width: 100%;
}

.h-full {
	height: 100%;
}

.object-cover {
	object-fit: contain !important;
}

.object-contain {
	object-fit: contain !important;
}

.transition-all {
	transition: all 0.7s cubic-bezier(0.16, 1, 0.3, 1);
}

.duration-700 {
	transition-duration: 700ms;
}

.ease-out {
	transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
}

/* Editorial close-up */
.moz-product-editorial {
	border-top: 1px solid var(--moz-earth-200);
	padding-top: 48px;
}

@media (min-width: 1024px) {
	.moz-product-editorial {
		margin-top: 64px;
	}
}

.moz-product-editorial-title {
	font-size: clamp(1.75rem, 3vw, 2rem);
	color: var(--moz-earth-900);
	margin: 0 0 16px;
}

.moz-product-editorial-text {
	color: var(--moz-earth-500);
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.625;
	max-width: 36rem;
	margin: 0;
}

/* Configurator column */
.moz-product-config-col {
	min-width: 0;
}

.moz-product-config-col.is-layout-flow > * + * {
	margin-block-start: 32px;
}

@media (min-width: 1024px) {
	.moz-product-config-col {
		position: sticky;
		top: 140px;
		align-self: start;
	}
}

.moz-signature-line {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.25em;
	text-transform: uppercase;
	color: var(--moz-sienna-500);
	margin: 0 0 8px;
}

.moz-product-title {
	font-size: clamp(2.25rem, 4vw, 3rem);
	color: var(--moz-earth-900);
	margin: 0 0 8px;
}


.moz-price-tier del,
.moz-price-tier del .woocommerce-Price-amount {
	color: var(--moz-earth-400, #99938A) !important;
	font-size: 19px !important;
	font-weight: 400 !important;
	text-decoration: line-through !important;
	opacity: 0.85;
	margin-right: 6px;
}

.moz-price-tier ins,
.moz-price-tier ins .woocommerce-Price-amount {
	color: var(--moz-earth-900, #111111) !important;
	font-size: 26px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}

.moz-product-subtitle {
	color: var(--moz-earth-500);
	font-weight: 300;
	font-size: 0.875rem;
	margin: 0;
}

/* Price tier */
.moz-price-tier {
	border-top: 1px solid var(--moz-earth-200);
	border-bottom: 1px solid var(--moz-earth-200);
	padding: 24px 0;
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 24px;
	margin: 0 0 8px;
}

.moz-price-tier-label {
	display: block;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-500);
	margin-bottom: 4px;
}

.moz-price-tier .woocommerce-variation-price {
	margin: 0;
}

.moz-price-tier .woocommerce-variation-price .price {
	font-size: 30px;
	font-weight: 300;
	letter-spacing: 0.025em;
	color: var(--moz-earth-900);
}

.moz-price-tier-right {
	display: none !important;
}

.moz-price-tier-guarantee {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-sienna-500);
}

.moz-price-tier-note {
	font-size: 11px;
	color: var(--moz-earth-500);
}

/* Variation form */
form.variations_form .variations {
	border: none;
	margin: 0;
	display: block;
}

form.variations_form .variations tbody,
form.variations_form .variations tr {
	display: block;
}

form.variations_form .variations tr,
form.variations_form .variations td,
form.variations_form .variations th {
	border: none;
}

form.variations_form .variations td.label,
form.variations_form .variations th.label {
	display: block;
	padding: 24px 0 0;
	vertical-align: middle;
}

form.variations_form .variations td.value {
	display: block;
	padding: 0;
}

form.variations_form .variations td.label label,
form.variations_form .variations th.label label {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-900);
	margin: 0;
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
	width: 100%;
}

.moz-var-value {
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	color: var(--moz-earth-500);
}

.moz-var-value.is-colorway-value {
	color: var(--moz-sienna-500);
}

form.variations_form .variations td.value {
	padding: 0;
}

.moz-var-select {
	position: absolute;
	opacity: 0;
	pointer-events: none;
	height: 0;
	width: 0;
}

.moz-var-options {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(115px, 1fr));
	gap: 10px;
	margin-top: 14px;
	width: 100%;
	box-sizing: border-box;
}

.moz-var-options.is-colorway {
	display: flex;
	gap: 16px;
	margin-top: 16px;
}

.moz-var-btn {
	border: 1px solid var(--moz-earth-300, #DCD7CE);
	background: #FAF8F5;
	color: var(--moz-earth-900, #14120E);
	padding: 14px;
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-align: left;
	border-radius: 3px;
	cursor: pointer;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
	box-sizing: border-box;
}

.moz-var-btn.is-centered {
	padding: 12px;
	text-align: center;
	letter-spacing: 0.1em;
}

.moz-var-btn:hover {
	border-color: var(--moz-earth-500, #8A7A64);
	background: #F4EFE6;
}

.moz-var-btn.is-active {
	background: var(--moz-earth-900, #14120E);
	color: var(--moz-earth-100, #F4EFE6);
	border-color: var(--moz-earth-900, #14120E);
}

.moz-var-btn.has-media {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 14px 10px 12px;
	text-align: center;
	background: #FAF8F5;
	border: 1px solid rgba(20, 18, 14, 0.14);
	border-radius: 3px;
	min-height: 76px;
	box-sizing: border-box;
}

.moz-var-btn.has-media:hover {
	border-color: #8A7A64;
	background: #F4EFE6;
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(20, 18, 14, 0.05);
}

.moz-var-btn.has-media.is-active {
	background: #14120E;
	color: #F4EFE6;
	border-color: #14120E;
	box-shadow: 0 4px 14px rgba(20, 18, 14, 0.16);
}

.moz-var-btn-media {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 48px;
	height: 30px;
	background: transparent;
	border: none;
	padding: 0;
	margin: 0;
	overflow: visible;
}

.moz-var-btn-media svg {
	width: 100%;
	height: 100%;
	display: block;
	transition: transform 0.25s ease;
}

.moz-var-btn-media img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: 100%;
	object-fit: contain;
	display: block;
	transition: transform 0.25s ease, filter 0.25s ease;
}

.moz-var-btn.has-media:hover .moz-var-btn-media svg,
.moz-var-btn.has-media:hover .moz-var-btn-media img {
	transform: scale(1.05);
}

.moz-var-btn.has-media.is-active .moz-var-btn-media img {
	filter: invert(1) brightness(1.8);
}

.moz-var-btn-text {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	min-width: 0;
	width: 100%;
}

.moz-var-btn-title {
	font-family: inherit;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: inherit;
	line-height: 1.2;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.moz-var-btn-sub {
	font-size: 9.5px;
	letter-spacing: 0.04em;
	opacity: 0.65;
	font-weight: 400;
	line-height: 1.2;
}

.moz-var-btn.has-sub {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.moz-var-btn-title {
	display: block;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.moz-var-btn-sub {
	display: block;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	opacity: 0.7;
}

.moz-var-btn.is-active .moz-var-btn-sub {
	opacity: 0.6;
}

.moz-var-btn.is-swatch {
	width: 40px;
	height: 40px;
	padding: 0;
	border-radius: 999px;
	border: 1px solid rgba(20, 18, 14, 0.15);
}

.moz-var-options.is-colorway .moz-var-btn.is-swatch {
	width: 86px;
	height: 100px;
	border-radius: 0;
}

.moz-var-btn.is-swatch.is-image-swatch {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.moz-var-btn.is-swatch:hover {
	box-shadow: 0 0 0 2px var(--moz-earth-100), 0 0 0 4px var(--moz-earth-400);
	border-color: transparent;
}

.moz-var-btn.is-swatch.is-active {
	box-shadow: 0 0 0 2px var(--moz-earth-100), 0 0 0 4px var(--moz-sienna-500);
	border-color: transparent;
}

form.variations_form .reset_variations {
	display: none !important;
}

.woocommerce-variation-availability {
	margin: 8px 0 0;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

/* The design has no quantity stepper — keep qty at 1 (hidden). */
.woocommerce-variation-add-to-cart .quantity,
.single-product .quantity {
	display: none !important;
}

form.variations_form,
form.cart,
.single_variation_wrap,
.woocommerce-variation-add-to-cart,
.woocommerce-variation-add-to-cart.variations_button {
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
	box-sizing: border-box !important;
}

form.variations_form .single_add_to_cart_button,
.woocommerce-variation-add-to-cart .single_add_to_cart_button,
button.single_add_to_cart_button {
	width: 100% !important;
	max-width: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	height: 52px !important;
	padding: 0 20px !important;
	background: var(--moz-sienna-500, #964F2E) !important;
	color: #ffffff !important;
	font-family: 'Inter', -apple-system, sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.15em !important;
	text-transform: uppercase !important;
	border: none !important;
	border-radius: 2px !important;
	cursor: pointer !important;
	transition: background-color 0.25s ease !important;
	margin: 0 !important;
}

form.variations_form .single_add_to_cart_button:hover,
.woocommerce-variation-add-to-cart .single_add_to_cart_button:hover,
button.single_add_to_cart_button:hover {
	background: var(--moz-sienna-600, #7E3F22) !important;
}

.woocommerce-variation-add-to-cart {
	margin-top: 24px;
}

/* Secondary action buttons (Schedule a call & Chat with us) directly under Add to Cart */
.moz-product-secondary-actions {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr) !important;
	gap: 12px !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	margin-top: 12px !important;
	margin-bottom: 24px !important;
}

.moz-product-secondary-actions .moz-sec-btn {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	width: 100% !important;
	height: 46px !important;
	box-sizing: border-box !important;
	background: transparent !important;
	border: 1px solid var(--moz-earth-300, #D1CAC0) !important;
	border-radius: 2px !important;
	color: var(--moz-earth-900, #1A1A1A) !important;
	font-family: 'Inter', -apple-system, sans-serif !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	text-align: center !important;
	padding: 0 12px !important;
	cursor: pointer !important;
	transition: all 0.25s ease !important;
}

.moz-product-secondary-actions .moz-sec-btn .moz-sec-btn-icon {
	flex-shrink: 0 !important;
	display: inline-block !important;
	vertical-align: middle !important;
	transition: transform 0.25s ease, fill 0.25s ease, stroke 0.25s ease !important;
}

.moz-product-secondary-actions .moz-sec-btn:hover {
	background: var(--moz-earth-900, #1A1A1A) !important;
	color: #ffffff !important;
	border-color: var(--moz-earth-900, #1A1A1A) !important;
}

.moz-product-secondary-actions .moz-sec-btn:hover .moz-sec-btn-icon {
	stroke: #ffffff !important;
}

.moz-product-secondary-actions .moz-sec-btn:hover .moz-sec-btn-icon.moz-icon-wa {
	fill: #25D366 !important;
	stroke: none !important;
}

@media (max-width: 480px) {
	.moz-product-secondary-actions {
		grid-template-columns: 1fr !important;
		gap: 10px !important;
	}
}

.moz-mini-btn .wp-block-button__link {
	background: transparent;
	color: var(--moz-earth-900);
	border: 1px solid var(--moz-earth-400);
	font-size: 11px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-weight: 600;
	padding: 12px 8px;
	border-radius: 2px;
	transition: all 0.3s var(--moz-ease);
	text-align: center;
}

.moz-mini-btn .wp-block-button__link:hover {
	border-color: var(--moz-earth-900);
}

/* Accordions (Materials / Dimensions) */
.moz-accordions {
	border-top: 1px solid var(--moz-earth-200);
	padding-top: 8px;
}

.moz-acc-item {
	border-bottom: 1px solid var(--moz-earth-200);
	padding: 4px 0;
	margin: 0;
}

.moz-acc-item summary {
	list-style: none;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-900);
	padding: 16px 0;
	user-select: none;
}

.moz-acc-item summary::-webkit-details-marker {
	display: none;
}

.moz-acc-icon {
	position: relative;
	width: 12px;
	height: 12px;
	flex: 0 0 auto;
}

.moz-acc-icon::before,
.moz-acc-icon::after {
	content: "";
	position: absolute;
	background: var(--moz-earth-400);
	transition: transform 0.3s var(--moz-ease);
}

.moz-acc-icon::before {
	left: 0;
	right: 0;
	top: 50%;
	height: 1.5px;
	transform: translateY(-50%);
}

.moz-acc-icon::after {
	top: 0;
	bottom: 0;
	left: 50%;
	width: 1.5px;
	transform: translateX(-50%);
}

.moz-acc-item[open] .moz-acc-icon::after {
	transform: translateX(-50%) rotate(90deg) scaleY(0);
}

.moz-acc-item > *:not(summary) {
	padding: 0 0 20px;
	color: var(--moz-earth-600);
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.625;
}

.moz-acc-body p {
	margin: 0 0 8px;
}

.moz-acc-item ul,
.moz-acc-item .moz-acc-list {
	margin: 0;
	list-style: none;
	padding-left: 0;
}

.moz-acc-item li {
	margin-bottom: 8px;
	position: relative;
	padding-left: 16px;
}

.moz-acc-item li::before {
	content: "•";
	position: absolute;
	left: 0;
	color: var(--moz-sienna-500);
}

.moz-acc-item li strong {
	color: var(--moz-earth-900);
	font-weight: 600;
}

/* Related / pairings */
.moz-product-related {
	display: none !important;
	background: #eaeadf;
	padding: 26px 0;
	margin-top: 46px;
}

.moz-product-related-inner {
	max-width: var(--moz-container);
	margin: 0 auto;
	padding: 0 var(--moz-gutter);
}

.moz-related-header {
	margin-bottom: 48px;
	align-items: flex-end;
	gap: 24px;
}

.moz-related-eyebrow {
	font-size: 12px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--moz-sienna-500);
	font-weight: 600;
	margin: 0 0 8px;
}

.moz-related-title {
	font-size: clamp(1.75rem, 3vw, 2.25rem);
	color: var(--moz-earth-900);
	margin: 0;
}

/* Beat WC's block CSS: .wp-block-woocommerce-product-collection h2.wp-block-heading
   forces font-size: small (13px) inside product collections. */
.wp-block-woocommerce-product-collection h2.moz-related-title {
	font-size: clamp(1.75rem, 3vw, 2.25rem);
}

.moz-related-link {
	margin: 0;
}

.moz-related-link a {
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--moz-earth-900);
	text-decoration: none;
	border-bottom: 1px solid var(--moz-earth-900);
	padding-bottom: 4px;
	transition: color 0.3s var(--moz-ease), border-color 0.3s var(--moz-ease);
}

.moz-related-link a:hover {
	color: var(--moz-sienna-500);
	border-color: var(--moz-sienna-500);
}

/* Related cards */
.moz-product-related .wc-block-product-template {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px;
	list-style: none;
	margin: 0;
	padding: 0;
}

@media (min-width: 768px) {
	.moz-product-related .wc-block-product-template {
		grid-template-columns: repeat(3, 1fr);
	}
}

.moz-product-related .wc-block-product-template > li {
	display: block;
	border-bottom: none;
	padding-bottom: 0;
}

.moz-product-related .wc-block-components-product-image {
	margin: 0 0 16px !important;
}

.moz-product-related .wc-block-components-product-image img {
	width: 100% !important;
	aspect-ratio: auto !important;
	height: auto !important;
	object-fit: contain !important;
	background: transparent;
	border-radius: 2px;
	transition: transform 0.5s var(--moz-ease);
}

.moz-product-related .wc-block-product:hover .wc-block-components-product-image img {
	transform: scale(1.02);
}

.moz-product-related .wc-block-components-product-title,
.moz-product-related .wp-block-post-title {
	font-size: 20px;
	font-weight: 300;
	margin: 0;
	display: inline;
}

.moz-product-related .wc-block-components-product-price {
	display: inline;
	float: right;
}

.moz-product-related .wc-block-components-product-price .woocommerce-Price-amount {
	font-size: 14px;
	font-weight: 400;
	color: var(--moz-earth-500);
}

.moz-product-related .wc-block-components-product-price .screen-reader-text,
.moz-product-related .wc-block-components-product-price .price-range-extra {
	display: none;
}

/* ============================================================
   Cart page
   ============================================================ */

.moz-banner-desc {
	color: var(--moz-earth-300);
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.625;
	max-width: 36rem;
	margin: 12px 0 0;
}

.moz-cart-content {
	max-width: var(--moz-container);
	margin: 0 auto;
	padding: 64px var(--moz-gutter) 128px;
}

.wp-block-woocommerce-cart {
	display: block;
}

/* WC's cart grid wrapper (.wc-block-cart sidebar-layout) flexes items to
   content width — force a real 2-column grid that fills the container. */
.wp-block-woocommerce-cart .wc-block-cart {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 48px;
	align-items: start;
}

@media (min-width: 1024px) {
	.wp-block-woocommerce-cart .wc-block-cart {
		grid-template-columns: 1.6fr 1fr;
	}
}

.wp-block-woocommerce-cart .wc-block-components-main,
.wp-block-woocommerce-cart .wc-block-components-sidebar {
	width: 100% !important;
	min-width: 0;
}

/* Cart items */
.wp-block-woocommerce-cart-items-block {
	background: var(--moz-earth-50);
	border: 1px solid var(--moz-earth-200);
	border-radius: 2px;
	padding: 8px 32px 32px;
}

.wc-block-cart__main .wc-block-cart-items__row td {
	padding: 24px 16px;
	vertical-align: top;
}

/* Responsive rows (medium/mobile/small): WC drops the table layout for a
   grid with 16px 0 padding — add side padding too. */
.wp-block-woocommerce-cart
	.is-medium
	table.wc-block-cart-items
	.wc-block-cart-items__row,
.wp-block-woocommerce-cart
	.is-mobile
	table.wc-block-cart-items
	.wc-block-cart-items__row,
.wp-block-woocommerce-cart
	.is-small
	table.wc-block-cart-items
	.wc-block-cart-items__row {
	padding: 16px 16px;
}

.wc-block-cart-items__row {
	border-bottom: 1px solid var(--moz-earth-200);
}

.wc-block-cart-items__row:last-child {
	border-bottom: none;
}

.wc-block-cart-item__image img {
	border-radius: 2px;
	background: var(--moz-earth-200);
}

.wc-block-components-product-name {
	font-family: 'Cormorant Garamond', serif;
	font-size: 22px !important;
	font-weight: 400;
	color: var(--moz-earth-900);
	text-decoration: none;
}

.wc-block-components-product-name:hover {
	color: var(--moz-sienna-500);
}

.wc-block-components-product-price .wc-block-components-product-price__value {
	font-size: 18px;
	font-weight: 300;
	color: var(--moz-earth-900);
}

.wc-block-cart-item__prices {
	gap: 8px;
}

/* Quantity selector */
.wc-block-components-quantity-selector {
	border: 1px solid var(--moz-earth-300) !important;
	border-radius: 2px !important;
	background: transparent !important;
}

.wc-block-components-quantity-selector__button {
	color: var(--moz-earth-900) !important;
}

.wc-block-components-quantity-selector__input {
	color: var(--moz-earth-900) !important;
}

/* Remove link */
.wc-block-cart-item__remove-link {
	font-size: 11px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-sienna-500) !important;
	text-decoration: none;
}

.wc-block-cart-item__remove-link:hover {
	color: var(--moz-sienna-600) !important;
}

/* Totals */
.wp-block-woocommerce-cart-totals-block {
	background: var(--moz-earth-100);
	border: 1px solid var(--moz-earth-200);
	border-radius: 2px;
	padding: 32px;
}

.wp-block-woocommerce-cart-order-summary-heading-block h2,
.wc-block-cart__totals-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 28px;
	font-weight: 400;
	color: var(--moz-earth-900);
	margin: 0 0 24px;
}

.wp-block-woocommerce-cart-order-summary-block .wc-block-components-totals-wrapper,
.wc-block-cart__totals .wc-block-components-totals-wrapper {
	border-top: 1px solid var(--moz-earth-200);
	padding: 16px 12px;
}

.wp-block-woocommerce-cart-order-summary-block .wc-block-components-totals-item,
.wc-block-cart__totals .wc-block-components-totals-item {
	padding: 6px 0;
}

.wc-block-components-totals-item__label {
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-600);
	font-weight: 600;
}

.wc-block-components-totals-item__value {
	font-size: 16px;
	font-weight: 400;
	color: var(--moz-earth-900);
}

.wc-block-components-totals-shipping__fieldset {
	border: none;
	padding: 0;
}

.wc-block-components-totals-shipping__options {
	margin-top: 8px;
}

/* Proceed to checkout */
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button,
.wp-block-woocommerce-proceed-to-checkout-block .checkout-button,
.wp-block-woocommerce-proceed-to-checkout-block a[href*="checkout"] {
	width: 100%;
	background: var(--moz-sienna-500) !important;
	color: var(--moz-earth-100) !important;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	padding: 16px;
	border-radius: 2px;
	transition: background 0.3s var(--moz-ease);
}

.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block .checkout-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block a[href*="checkout"]:hover {
	background: var(--moz-sienna-600) !important;
}

/* Coupon + notices */
.wp-block-woocommerce-cart-order-summary-coupon-form-block .wc-block-components-totals-coupon-link,
.wc-block-components-totals-coupon-link {
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-sienna-500);
	text-decoration: none;
}

.wc-block-components-text-input input,
.wc-block-components-text-input textarea {
	border: 1px solid var(--moz-earth-300) !important;
	border-radius: 2px !important;
	font-size: 14px;
}

.wc-block-components-button {
	border-radius: 2px !important;
	font-size: 12px !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
}

.wc-block-components-notice-banner {
	border-radius: 2px;
	font-size: 13px;
}

/* Empty cart */
.wc-block-cart__empty-cart__title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 32px;
	font-weight: 400;
	color: var(--moz-earth-900);
}

.wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new {
	margin-top: 32px;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 18px;
}

/* ============================================================
   My Account page
   ============================================================ */

/* ============================================================
   My Account / Atelier Client Portal
   ============================================================ */

.moz-account-main {
	background: #FAF8F5 !important;
	min-height: 80vh;
}

.moz-account-content,
.wp-block-group.moz-account-content {
	max-width: var(--moz-container, 1440px) !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 48px var(--moz-gutter, 32px) 120px !important;
	box-sizing: border-box !important;
}

.moz-account-content > .entry-content,
.moz-account-content > .wp-block-post-content,
.moz-account-content .woocommerce {
	max-width: 100% !important;
	width: 100% !important;
}

/* Clear WooCommerce floats and force modern 2-column Grid */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-page .woocommerce-MyAccount-navigation,
.woocommerce .moz-account-layout .woocommerce-MyAccount-navigation {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 28px !important;
	background: #FFFFFF !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-radius: 4px !important;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03) !important;
	box-sizing: border-box !important;
	position: sticky;
	top: 100px;
}

.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-page .woocommerce-MyAccount-content,
.woocommerce .moz-account-layout .woocommerce-MyAccount-content {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

.moz-account-layout,
.woocommerce-account .moz-account-layout,
.woocommerce-page .moz-account-layout {
	display: grid !important;
	grid-template-columns: 320px 1fr !important;
	gap: 40px !important;
	align-items: flex-start !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

@media (max-width: 1024px) {
	.moz-account-layout,
	.woocommerce-account .moz-account-layout,
	.woocommerce-page .moz-account-layout {
		grid-template-columns: 280px 1fr !important;
		gap: 28px !important;
	}
}

/* User Profile Header Card in Sidebar */
.moz-account-user-card {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	padding-bottom: 20px !important;
	margin-bottom: 20px !important;
	border-bottom: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.moz-account-avatar {
	width: 52px !important;
	height: 52px !important;
	min-width: 52px !important;
	border-radius: 50% !important;
	background: #FAF3EC !important;
	border: 1.5px solid #A0522D !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #A0522D !important;
	font-weight: 700 !important;
	font-size: 20px !important;
	flex-shrink: 0 !important;
	letter-spacing: 0.05em !important;
	line-height: 1 !important;
}

.moz-account-user-info {
	display: flex !important;
	flex-direction: column !important;
	gap: 3px !important;
	min-width: 0 !important;
	flex: 1 !important;
	overflow: hidden !important;
}

.moz-account-user-name {
	margin: 0 !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	color: var(--moz-earth-900, #14120E) !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	line-height: 1.3 !important;
}

.moz-account-user-email {
	font-size: 12px !important;
	color: var(--moz-earth-500, #8A7A64) !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	line-height: 1.3 !important;
}

.moz-account-user-tier {
	display: inline-block !important;
	background: #A0522D !important;
	color: #FFFFFF !important;
	font-size: 9.5px !important;
	font-weight: 600 !important;
	letter-spacing: 0.15em !important;
	text-transform: uppercase !important;
	padding: 3px 8px !important;
	border-radius: 2px !important;
	margin-top: 4px !important;
	width: fit-content !important;
	line-height: 1.2 !important;
}

/* Nav Menu List (Desktop) */
.woocommerce-MyAccount-navigation ul.moz-account-nav-list,
.moz-account-nav .moz-account-nav-list,
.woocommerce-MyAccount-navigation ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
	border: none !important;
}

.woocommerce-MyAccount-navigation ul.moz-account-nav-list li,
.moz-account-nav .moz-account-nav-list li,
.woocommerce-MyAccount-navigation ul li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
}

.woocommerce-MyAccount-navigation ul.moz-account-nav-list li a,
.moz-account-nav .moz-account-nav-list li a,
.woocommerce-MyAccount-navigation ul li a {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	padding: 12px 14px !important;
	border-radius: 3px !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--moz-earth-700, #4A4036) !important;
	text-decoration: none !important;
	transition: all 0.25s var(--moz-ease) !important;
	background: transparent !important;
	border: none !important;
	border-left: 3px solid transparent !important;
	box-sizing: border-box !important;
}

.woocommerce-MyAccount-navigation ul.moz-account-nav-list li a:hover,
.moz-account-nav .moz-account-nav-list li a:hover,
.woocommerce-MyAccount-navigation ul li a:hover {
	background: rgba(160, 82, 45, 0.06) !important;
	color: #A0522D !important;
	border-left-color: rgba(160, 82, 45, 0.3) !important;
}

.woocommerce-MyAccount-navigation ul.moz-account-nav-list li.is-active a,
.moz-account-nav .moz-account-nav-list li.is-active a,
.woocommerce-MyAccount-navigation ul li.is-active a {
	background: #F4EFE6 !important;
	color: #A0522D !important;
	font-weight: 600 !important;
	border-left: 3px solid #A0522D !important;
}

.moz-nav-icon {
	display: flex !important;
	align-items: center !important;
	color: currentColor !important;
	opacity: 0.85 !important;
	flex-shrink: 0 !important;
}

.moz-nav-label {
	flex-grow: 1 !important;
}

.moz-nav-arrow {
	font-size: 14px !important;
	opacity: 0 !important;
	transform: translateX(-4px) !important;
	transition: all 0.25s var(--moz-ease) !important;
}

.moz-account-nav-list li a:hover .moz-nav-arrow,
.moz-account-nav-list li.is-active a .moz-nav-arrow {
	opacity: 1 !important;
	transform: translateX(0) !important;
}

.moz-account-nav-footer {
	margin-top: 24px !important;
	padding-top: 16px !important;
	border-top: 1px solid var(--moz-earth-200, #EAE6DF) !important;
}

.moz-account-concierge-pill {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	color: #685A48 !important;
	background: #FAF8F5 !important;
	padding: 8px 12px !important;
	border-radius: 3px !important;
	border: 1px solid #EAE6DF !important;
}

.moz-concierge-dot {
	width: 7px !important;
	height: 7px !important;
	border-radius: 50% !important;
	background: #2E7D32 !important;
	box-shadow: 0 0 0 2px rgba(46, 125, 50, 0.2) !important;
	flex-shrink: 0 !important;
}

/* ============================================================
   MOBILE & TABLET RESPONSIVE NAVIGATION (<= 860px)
   ============================================================ */
@media (max-width: 860px) {
	.moz-account-layout,
	.woocommerce-account .moz-account-layout,
	.woocommerce-page .moz-account-layout {
		display: flex !important;
		flex-direction: column !important;
		gap: 20px !important;
	}

	.moz-account-content,
	.wp-block-group.moz-account-content {
		padding: 20px var(--moz-gutter, 16px) 80px !important;
	}

	/* Sticky Compact Luxury Tab Bar on Mobile */
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-page .woocommerce-MyAccount-navigation,
	.woocommerce .moz-account-layout .woocommerce-MyAccount-navigation {
		position: sticky !important;
		top: calc(var(--moz-header-h, 60px) + 6px) !important;
		z-index: 45 !important;
		padding: 12px 14px 10px !important;
		background: rgba(255, 255, 255, 0.97) !important;
		-webkit-backdrop-filter: blur(12px) !important;
		backdrop-filter: blur(12px) !important;
		border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
		border-radius: 6px !important;
		box-shadow: 0 6px 20px rgba(20, 18, 14, 0.08) !important;
		margin: 0 0 4px 0 !important;
	}

	/* Compact Mobile User Header */
	.moz-account-user-card {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 10px !important;
		padding-bottom: 10px !important;
		margin-bottom: 10px !important;
		border-bottom: 1px solid #F0ECE6 !important;
	}

	.moz-account-avatar {
		width: 34px !important;
		height: 34px !important;
		min-width: 34px !important;
		font-size: 14px !important;
	}

	.moz-account-user-info {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: space-between !important;
		width: 100% !important;
		gap: 8px !important;
	}

	.moz-account-user-name {
		font-size: 13.5px !important;
		max-width: 140px !important;
	}

	.moz-account-user-email {
		display: none !important;
	}

	.moz-account-user-tier {
		margin-top: 0 !important;
		font-size: 8.5px !important;
		padding: 2px 6px !important;
		letter-spacing: 0.1em !important;
	}

	/* Horizontal Smooth-Scrollable Pill Tabs */
	.woocommerce-MyAccount-navigation ul.moz-account-nav-list,
	.moz-account-nav .moz-account-nav-list,
	.woocommerce-MyAccount-navigation ul {
		display: flex !important;
		flex-direction: row !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		white-space: nowrap !important;
		gap: 8px !important;
		padding: 2px 2px 4px !important;
		margin: 0 !important;
		scrollbar-width: none !important;
		-ms-overflow-style: none !important;
		-webkit-overflow-scrolling: touch !important;
		scroll-snap-type: x mandatory !important;
	}

	.woocommerce-MyAccount-navigation ul.moz-account-nav-list::-webkit-scrollbar,
	.moz-account-nav .moz-account-nav-list::-webkit-scrollbar,
	.woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
		display: none !important;
		width: 0 !important;
		height: 0 !important;
	}

	.woocommerce-MyAccount-navigation ul.moz-account-nav-list li,
	.moz-account-nav .moz-account-nav-list li,
	.woocommerce-MyAccount-navigation ul li {
		flex-shrink: 0 !important;
		scroll-snap-align: start !important;
	}

	.woocommerce-MyAccount-navigation ul.moz-account-nav-list li a,
	.moz-account-nav .moz-account-nav-list li a,
	.woocommerce-MyAccount-navigation ul li a {
		display: inline-flex !important;
		align-items: center !important;
		gap: 6px !important;
		padding: 7px 13px !important;
		border-radius: 20px !important;
		font-size: 11px !important;
		font-weight: 500 !important;
		letter-spacing: 0.08em !important;
		text-transform: uppercase !important;
		background: #FAF8F5 !important;
		border: 1px solid #EAE6DF !important;
		border-left: 1px solid #EAE6DF !important;
		color: var(--moz-earth-700, #4A4036) !important;
		white-space: nowrap !important;
	}

	.woocommerce-MyAccount-navigation ul.moz-account-nav-list li a:hover,
	.moz-account-nav .moz-account-nav-list li a:hover,
	.woocommerce-MyAccount-navigation ul li a:hover {
		background: #F4EFE6 !important;
		border-color: #A0522D !important;
		border-left-color: #A0522D !important;
		color: #A0522D !important;
	}

	.woocommerce-MyAccount-navigation ul.moz-account-nav-list li.is-active a,
	.moz-account-nav .moz-account-nav-list li.is-active a,
	.woocommerce-MyAccount-navigation ul li.is-active a {
		background: #A0522D !important;
		color: #FFFFFF !important;
		border-color: #A0522D !important;
		border-left-color: #A0522D !important;
		box-shadow: 0 2px 8px rgba(160, 82, 45, 0.3) !important;
		font-weight: 600 !important;
	}

	.moz-nav-icon svg {
		width: 14px !important;
		height: 14px !important;
	}

	.moz-nav-arrow {
		display: none !important;
	}

	.moz-account-nav-footer {
		display: none !important;
	}
}

/* Dashboard Content Area */
.moz-account-dashboard {
	display: flex !important;
	flex-direction: column !important;
	gap: 32px !important;
	width: 100% !important;
}

.moz-dash-welcome {
	background: linear-gradient(135deg, #FFFFFF 0%, #FAF8F5 100%) !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-radius: 4px !important;
	padding: 32px !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: flex-start !important;
	gap: 24px !important;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02) !important;
	box-sizing: border-box !important;
}

@media (max-width: 640px) {
	.moz-dash-welcome {
		flex-direction: column !important;
		padding: 24px 20px !important;
	}
}

.moz-dash-eyebrow {
	font-size: 11px !important;
	letter-spacing: 0.25em !important;
	text-transform: uppercase !important;
	font-weight: 600 !important;
	color: #A0522D !important;
	display: block !important;
	margin-bottom: 6px !important;
}

.moz-dash-title {
	font-family: 'Cormorant Garamond', serif !important;
	font-size: clamp(1.75rem, 3vw, 2.25rem) !important;
	font-weight: 400 !important;
	color: var(--moz-earth-900, #14120E) !important;
	margin: 0 0 10px !important;
	line-height: 1.2 !important;
}

.moz-dash-title em {
	font-style: italic !important;
	color: #A0522D !important;
}

.moz-dash-desc {
	font-size: 14px !important;
	line-height: 1.6 !important;
	color: var(--moz-earth-600, #685A48) !important;
	margin: 0 !important;
	max-width: 640px !important;
}

.moz-dash-welcome-badge {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	background: #14120E !important;
	color: #F4EFE6 !important;
	padding: 8px 14px !important;
	border-radius: 20px !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	flex-shrink: 0 !important;
}

.moz-dash-status-dot {
	width: 6px !important;
	height: 6px !important;
	border-radius: 50% !important;
	background: #A0522D !important;
}

/* Quick Hub 4-card Grid */
.moz-dash-grid {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr) !important;
	gap: 20px !important;
	width: 100% !important;
}

@media (max-width: 640px) {
	.moz-dash-grid {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}
}

.moz-dash-card {
	background: #FFFFFF !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-radius: 4px !important;
	padding: 24px !important;
	text-decoration: none !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: space-between !important;
	transition: transform 0.3s var(--moz-ease), box-shadow 0.3s var(--moz-ease), border-color 0.3s var(--moz-ease) !important;
	box-sizing: border-box !important;
}

.moz-dash-card:hover {
	transform: translateY(-3px) !important;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06) !important;
	border-color: #A0522D !important;
}

.moz-dash-card-header {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	margin-bottom: 16px !important;
}

.moz-dash-card-icon {
	width: 40px !important;
	height: 40px !important;
	border-radius: 4px !important;
	background: #FAF8F5 !important;
	color: #A0522D !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.moz-dash-card-stat {
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: #A0522D !important;
}

.moz-dash-card-body {
	margin-bottom: 20px !important;
}

.moz-dash-card-title {
	font-family: 'Cormorant Garamond', serif !important;
	font-size: 20px !important;
	font-weight: 500 !important;
	color: var(--moz-earth-900, #14120E) !important;
	margin: 0 0 6px !important;
}

.moz-dash-card-desc {
	font-size: 13px !important;
	color: var(--moz-earth-600, #685A48) !important;
	line-height: 1.5 !important;
	margin: 0 !important;
}

.moz-dash-card-action {
	font-size: 11.5px !important;
	font-weight: 600 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: #A0522D !important;
	display: flex !important;
	align-items: center !important;
	gap: 6px !important;
}

.moz-dash-card-accent {
	border-color: #C8B8A6 !important;
	background: #FAF8F5 !important;
}

/* Recent Commissions Section */
.moz-dash-section {
	background: #FFFFFF !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-radius: 4px !important;
	padding: 32px !important;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02) !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

@media (max-width: 640px) {
	.moz-dash-section {
		padding: 24px 18px !important;
	}
}

.moz-dash-section-header {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	margin-bottom: 24px !important;
	padding-bottom: 16px !important;
	border-bottom: 1px solid #F0ECE6 !important;
}

.moz-dash-section-title {
	font-family: 'Cormorant Garamond', serif !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	color: var(--moz-earth-900, #14120E) !important;
	margin: 0 !important;
}

.moz-dash-section-link {
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: #A0522D !important;
	text-decoration: none !important;
}

.moz-dash-section-link:hover {
	text-decoration: underline !important;
}

/* Orders Table */
.moz-dash-orders-table-wrap,
.moz-orders-list-wrap {
	overflow-x: auto !important;
	width: 100% !important;
}

.moz-dash-orders-table,
.woocommerce-orders-table {
	width: 100% !important;
	border-collapse: collapse !important;
	font-size: 13.5px !important;
}

.moz-dash-orders-table th,
.woocommerce-orders-table th {
	text-align: left !important;
	padding: 12px 16px !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: #8A7A64 !important;
	border-bottom: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	background: #FAF8F5 !important;
}

.moz-dash-orders-table td,
.woocommerce-orders-table td {
	padding: 18px 16px !important;
	border-bottom: 1px solid #F0ECE6 !important;
	color: var(--moz-earth-800, #2C2620) !important;
	vertical-align: middle !important;
}

.moz-dash-orders-table tr:last-child td,
.woocommerce-orders-table tr:last-child td {
	border-bottom: none !important;
}

.moz-order-item-count {
	display: block !important;
	font-size: 12px !important;
	color: #8A7A64 !important;
	font-weight: 400 !important;
	margin-top: 2px !important;
}

.moz-order-status-badge {
	display: inline-block !important;
	padding: 4px 10px !important;
	border-radius: 3px !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
}

.moz-status-completed {
	background: #E8F5E9 !important;
	color: #2E7D32 !important;
	border: 1px solid #C8E6C9 !important;
}

.moz-status-processing {
	background: #FFF3E0 !important;
	color: #E65100 !important;
	border: 1px solid #FFE0B2 !important;
}

.moz-status-on-hold,
.moz-status-pending {
	background: #F3E5F5 !important;
	color: #7B1FA2 !important;
	border: 1px solid #E1BEE7 !important;
}

.moz-status-cancelled,
.moz-status-failed {
	background: #FFEBEE !important;
	color: #C62828 !important;
	border: 1px solid #FFCDD2 !important;
}

.moz-order-view-btn {
	display: inline-block !important;
	padding: 8px 16px !important;
	border: 1px solid var(--moz-earth-900, #14120E) !important;
	border-radius: 2px !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: var(--moz-earth-900, #14120E) !important;
	text-decoration: none !important;
	transition: all 0.25s var(--moz-ease) !important;
}

.moz-order-view-btn:hover {
	background: var(--moz-earth-900, #14120E) !important;
	color: #FFFFFF !important;
}

.moz-align-right {
	text-align: right !important;
}

/* Orders Table In-Row Tracker */
tr.woocommerce-orders-table__row td {
	border-bottom: none !important;
}

tr.moz-orders-table__tracker-row td.moz-orders-table__tracker-cell {
	padding: 8px 24px 24px 24px !important;
	background: #FAF8F5 !important;
	border-bottom: 2px solid var(--moz-earth-200, #EAE6DF) !important;
}

.moz-order-table-tracker {
	width: 100% !important;
	box-sizing: border-box !important;
}

.moz-tracker-timeline--table {
	position: relative !important;
	margin: 8px 0 4px 0 !important;
	padding: 0 16px !important;
}

.moz-tracker-timeline--table .moz-timeline-track {
	position: absolute !important;
	top: 16px !important;
	left: 36px !important;
	right: 36px !important;
	height: 3px !important;
	background: #EAE5DE !important;
	z-index: 1 !important;
}

.moz-tracker-timeline--table .moz-timeline-progress {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	height: 100% !important;
	background: var(--moz-sienna-500, #A0522D) !important;
	transition: width 0.4s ease !important;
}

.moz-tracker-timeline--table .moz-timeline-steps-grid {
	display: grid !important;
	grid-template-columns: repeat(6, 1fr) !important;
	position: relative !important;
	z-index: 2 !important;
	gap: 8px !important;
}

.moz-tracker-timeline--table .moz-timeline-step {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
}

.moz-tracker-timeline--table .moz-step-circle {
	width: 32px !important;
	height: 32px !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	position: relative !important;
	background: #FFFFFF !important;
	transition: all 0.3s ease !important;
}

.moz-tracker-timeline--table .moz-timeline-step.is-completed .moz-step-circle {
	background: #2D6A4F !important;
	color: #FFFFFF !important;
	box-shadow: 0 2px 6px rgba(45, 106, 79, 0.25) !important;
}

.moz-tracker-timeline--table .moz-timeline-step.is-active .moz-step-circle {
	background: var(--moz-sienna-500, #A0522D) !important;
	color: #FFFFFF !important;
	box-shadow: 0 0 0 4px rgba(160, 82, 45, 0.18), 0 3px 10px rgba(160, 82, 45, 0.3) !important;
}

.moz-tracker-timeline--table .moz-timeline-step.is-upcoming .moz-step-circle {
	background: #FAF8F5 !important;
	border: 2px solid #DCD5CB !important;
	color: #8A7A64 !important;
}

.moz-tracker-timeline--table .moz-step-name {
	font-size: 11px !important;
	line-height: 1.35 !important;
	color: #6C6257 !important;
	margin-top: 8px !important;
	font-weight: 500 !important;
	max-width: 100px !important;
}

.moz-tracker-timeline--table .moz-timeline-step.is-active .moz-step-name {
	color: #14120E !important;
	font-weight: 700 !important;
}

.moz-tracker-timeline--table .moz-timeline-step.is-completed .moz-step-name {
	color: #2D6A4F !important;
	font-weight: 600 !important;
}

@media (max-width: 768px) {
	.moz-orders-table__tracker-row {
		display: block !important;
		width: 100% !important;
	}

	.moz-orders-table__tracker-row td.moz-orders-table__tracker-cell {
		display: block !important;
		width: 100% !important;
		padding: 16px 14px 20px 14px !important;
		box-sizing: border-box !important;
	}

	.moz-tracker-timeline--table {
		padding: 0 !important;
	}

	.moz-tracker-timeline--table .moz-timeline-track {
		display: none !important;
	}

	.moz-tracker-timeline--table .moz-timeline-steps-grid {
		display: flex !important;
		flex-direction: column !important;
		gap: 12px !important;
		align-items: flex-start !important;
		position: relative !important;
		padding-left: 10px !important;
	}

	.moz-tracker-timeline--table .moz-timeline-steps-grid::before {
		content: '' !important;
		position: absolute !important;
		top: 14px !important;
		bottom: 14px !important;
		left: 24px !important;
		width: 2px !important;
		background: #EAE4DC !important;
	}

	.moz-tracker-timeline--table .moz-timeline-step {
		flex-direction: row !important;
		gap: 12px !important;
		align-items: center !important;
		text-align: left !important;
	}

	.moz-tracker-timeline--table .moz-step-circle {
		width: 28px !important;
		height: 28px !important;
		flex-shrink: 0 !important;
		font-size: 11px !important;
	}

	.moz-tracker-timeline--table .moz-step-name {
		margin-top: 0 !important;
		max-width: none !important;
		font-size: 12px !important;
	}
}

/* Empty State */
.moz-dash-empty-state {
	text-align: center !important;
	padding: 48px 24px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
}

.moz-empty-icon {
	width: 64px !important;
	height: 64px !important;
	border-radius: 50% !important;
	background: #FAF8F5 !important;
	color: #A0522D !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-bottom: 20px !important;
}

.moz-empty-title {
	font-family: 'Cormorant Garamond', serif !important;
	font-size: 24px !important;
	font-weight: 400 !important;
	color: var(--moz-earth-900, #14120E) !important;
	margin: 0 0 8px !important;
}

.moz-empty-desc {
	font-size: 14px !important;
	color: var(--moz-earth-600, #685A48) !important;
	max-width: 480px !important;
	line-height: 1.6 !important;
	margin: 0 0 24px !important;
}

.moz-empty-actions {
	display: flex !important;
	gap: 16px !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
}

/* Subpages: Header */
.moz-account-page-header {
	margin-bottom: 28px !important;
}

.moz-account-page-eyebrow {
	font-size: 11px !important;
	letter-spacing: 0.25em !important;
	text-transform: uppercase !important;
	font-weight: 600 !important;
	color: #A0522D !important;
	display: block !important;
	margin-bottom: 4px !important;
}

.moz-account-page-title {
	font-family: 'Cormorant Garamond', serif !important;
	font-size: 28px !important;
	font-weight: 400 !important;
	color: var(--moz-earth-900, #14120E) !important;
	margin: 0 0 6px !important;
}

.moz-account-page-desc {
	font-size: 14px !important;
	color: var(--moz-earth-600, #685A48) !important;
	margin: 0 !important;
}

/* Addresses Grid */
.moz-addresses-grid {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr) !important;
	gap: 24px !important;
	width: 100% !important;
}

@media (max-width: 768px) {
	.moz-addresses-grid {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}
}

.moz-address-card {
	background: #FFFFFF !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-radius: 4px !important;
	padding: 28px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: space-between !important;
	box-sizing: border-box !important;
}

@media (max-width: 640px) {
	.moz-address-card {
		padding: 22px 18px !important;
	}
}

.moz-address-card-header {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	padding-bottom: 16px !important;
	margin-bottom: 16px !important;
	border-bottom: 1px solid #F0ECE6 !important;
}

.moz-address-type-wrap {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
}

.moz-address-icon {
	color: #A0522D !important;
	display: flex !important;
	align-items: center !important;
}

.moz-address-card-title {
	font-size: 15px !important;
	font-weight: 600 !important;
	color: var(--moz-earth-900, #14120E) !important;
	margin: 0 !important;
}

.moz-address-edit-link {
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: #A0522D !important;
	text-decoration: none !important;
}

.moz-address-content {
	font-style: normal !important;
	font-size: 14px !important;
	line-height: 1.65 !important;
	color: var(--moz-earth-700, #4A4036) !important;
}

.moz-address-empty {
	color: #8A7A64 !important;
	font-style: italic !important;
}

/* Edit Account Form */
.moz-form-card {
	background: #FFFFFF !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-radius: 4px !important;
	padding: 32px !important;
	margin-bottom: 24px !important;
	box-sizing: border-box !important;
}

@media (max-width: 640px) {
	.moz-form-card {
		padding: 24px 18px !important;
	}
}

.moz-form-card-title {
	font-family: 'Cormorant Garamond', serif !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	color: var(--moz-earth-900, #14120E) !important;
	margin: 0 0 20px !important;
	padding-bottom: 12px !important;
	border-bottom: 1px solid #F0ECE6 !important;
}

.moz-form-grid-2 {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 20px !important;
	width: 100% !important;
}

@media (max-width: 640px) {
	.moz-form-grid-2 {
		grid-template-columns: 1fr !important;
		gap: 0 !important;
	}
}

.moz-form-grid-2 .moz-form-row,
.moz-form-grid-2 .form-row,
.moz-form-grid-2 .form-row-first,
.moz-form-grid-2 .form-row-last,
.moz-form-grid-2 .form-row-wide,
.moz-edit-account-form .form-row,
.moz-edit-account-form .form-row-first,
.moz-edit-account-form .form-row-last,
.moz-edit-account-form .form-row-wide,
.moz-form-row {
	margin: 0 0 18px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
	width: 100% !important;
	float: none !important;
	box-sizing: border-box !important;
}

.moz-form-row label {
	font-size: 11.5px !important;
	font-weight: 600 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--moz-earth-900, #14120E) !important;
}

.moz-form-row input.input-text,
.moz-edit-account-form input.input-text,
.moz-edit-account-form input[type="text"],
.moz-edit-account-form input[type="email"],
.moz-edit-account-form input[type="password"] {
	background: #FAF8F5 !important;
	border: 1px solid #D5D0C8 !important;
	border-radius: 3px !important;
	padding: 12px 14px !important;
	font-size: 14px !important;
	color: var(--moz-earth-900, #14120E) !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	transition: border-color 0.2s, background 0.2s !important;
}

.moz-form-row input.input-text:focus,
.moz-edit-account-form input.input-text:focus,
.moz-edit-account-form input[type="text"]:focus,
.moz-edit-account-form input[type="email"]:focus,
.moz-edit-account-form input[type="password"]:focus {
	background: #FFFFFF !important;
	border-color: #A0522D !important;
	outline: 2px solid rgba(160, 82, 45, 0.2) !important;
}

.moz-edit-account-form span.password-input {
	display: block !important;
	position: relative !important;
	width: 100% !important;
}

.moz-edit-account-form span.password-input input {
	width: 100% !important;
	padding-right: 42px !important;
}

.moz-edit-account-form span.password-input .show-password-input {
	position: absolute !important;
	right: 12px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	cursor: pointer !important;
}

.moz-input-help {
	font-size: 12px !important;
	color: #8A7A64 !important;
	margin-top: 2px !important;
}

.moz-form-actions {
	margin-top: 24px !important;
}

/* Authentication container for My Account page (Luxury Centered Card matching Auth Popup) */
.moz-account-auth-container {
	max-width: 460px !important;
	margin: 24px auto 80px !important;
	width: 100% !important;
	box-sizing: border-box !important;
	padding: 0 16px !important;
}

.moz-account-auth-card {
	background: #FFFFFF !important;
	border-radius: 4px !important;
	overflow: hidden !important;
	box-shadow: 0 20px 60px rgba(18, 14, 10, 0.12), 0 4px 16px rgba(18, 14, 10, 0.05) !important;
	border: 1px solid rgba(210, 193, 165, 0.35) !important;
	box-sizing: border-box !important;
	width: 100% !important;
	margin: 0 auto !important;
}

.moz-account-auth-card .moz-auth-header-card {
	background: linear-gradient(135deg, #1C1713 0%, #352B23 60%, #4D382B 100%) !important;
	padding: 34px 32px 28px !important;
	color: #FAF8F5 !important;
	position: relative !important;
	box-sizing: border-box !important;
}

.moz-account-auth-card .moz-auth-body {
	padding: 28px 32px 32px !important;
	background: #FFFFFF !important;
	box-sizing: border-box !important;
}

@media (max-width: 480px) {
	.moz-account-auth-card .moz-auth-header-card {
		padding: 26px 20px 22px !important;
	}
	.moz-account-auth-card .moz-auth-body {
		padding: 22px 20px 24px !important;
	}
}

.moz-account-auth-card .woocommerce-form-login__submit,
.moz-account-auth-card .woocommerce-form-register__submit,
.moz-account-auth-card .moz-auth-submit-btn {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 46px !important;
	padding: 0 !important;
	background: var(--moz-sienna-500, #A35C37) !important;
	color: #FAF8F5 !important;
	border: none !important;
	border-radius: 2px !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	box-shadow: none !important;
	transition: background-color 0.3s var(--moz-ease), transform 0.15s var(--moz-ease) !important;
}

.moz-account-auth-card .moz-auth-submit-btn:hover {
	background: var(--moz-sienna-600, #8B4A29) !important;
}

.moz-account-auth-card .moz-auth-submit-btn:active {
	transform: scale(0.99) !important;
}

/* Ensure WooCommerce notices display as luxury alert above the card */
.moz-account-auth-container .woocommerce-notices-wrapper,
.moz-account-content .woocommerce-notices-wrapper {
	max-width: 460px !important;
	margin: 0 auto 24px !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info {
	background: #FDF2F0 !important;
	border: 1px solid #F3C2BC !important;
	color: #B3261E !important;
	padding: 12px 18px !important;
	border-radius: 2px !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
	list-style: none !important;
	margin: 0 0 16px !important;
	box-sizing: border-box !important;
}

.woocommerce-notices-wrapper .woocommerce-message {
	background: #F0F9F3 !important;
	border-color: #B8E4C9 !important;
	color: #1B7943 !important;
}

.woocommerce-notices-wrapper .woocommerce-info {
	background: #F4EFE6 !important;
	border-color: #D2C1A5 !important;
	color: #1F1A14 !important;
}

.woocommerce-notices-wrapper li {
	margin: 0 !important;
	padding: 0 !important;
}

/* Lost Password */
.moz-lost-password-container {
	max-width: 540px !important;
	margin: 0 auto !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.moz-lost-password-card {
	background: #FFFFFF !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-radius: 4px !important;
	padding: 40px !important;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03) !important;
	box-sizing: border-box !important;
}

@media (max-width: 640px) {
	.moz-lost-password-card {
		padding: 24px 20px !important;
	}
}

/* ============================================================
   Consultation popup
   ============================================================ */

.moz-popup-overlay {
	position: fixed;
	inset: 0;
	z-index: 99999;
	background: rgba(20, 18, 14, 0.65);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.3s var(--moz-ease), visibility 0.3s;
}

.moz-popup-overlay.is-open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.moz-popup {
	background: var(--moz-earth-100);
	max-width: 640px;
	width: 100%;
	max-height: calc(100vh - 48px);
	overflow-y: auto;
	padding: 48px;
	position: relative;
	border-radius: 2px;
	box-shadow: 0 40px 80px rgba(20, 18, 14, 0.45);
	transform: translateY(12px);
	transition: transform 0.3s var(--moz-ease);
}

.moz-popup-overlay.is-open .moz-popup {
	transform: translateY(0);
}

.moz-popup-close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: 1px solid var(--moz-earth-300);
	border-radius: 999px;
	color: var(--moz-earth-900);
	cursor: pointer;
	transition: all 0.3s var(--moz-ease);
}

.moz-popup-close:hover {
	border-color: var(--moz-earth-900);
}

.moz-popup-eyebrow {
	display: block;
	font-size: 12px;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--moz-sienna-500);
	font-weight: 600;
	margin-bottom: 12px;
}

.moz-popup-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(1.75rem, 3vw, 2.25rem);
	font-weight: 400;
	color: var(--moz-earth-900);
	margin: 0 0 12px;
}

.moz-popup-desc {
	color: var(--moz-earth-600);
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.625;
	margin: 0 0 24px;
}

.moz-popup-form {
	margin-top: 8px;
}

/* WPForms inside the popup */
.moz-popup .wpforms-container {
	margin: 0;
}

.moz-popup .wpforms-field {
	margin-bottom: 20px;
	padding: 0;
}

.moz-popup .wpforms-field-label {
	font-size: 12px !important;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-weight: 600 !important;
	color: var(--moz-earth-900) !important;
	margin-bottom: 8px !important;
}

.moz-popup .wpforms-field input[type="text"],
.moz-popup .wpforms-field input[type="email"],
.moz-popup .wpforms-field input[type="tel"],
.moz-popup .wpforms-field select,
.moz-popup .wpforms-field textarea {
	background: transparent !important;
	border: none !important;
	border-bottom: 1px solid var(--moz-earth-300) !important;
	border-radius: 0 !important;
	padding: 0 !important;
	font-size: 14px !important;
	color: var(--moz-earth-900) !important;
	outline: none !important;
	width: 100% !important;
	box-shadow: none !important;
	height: 40px !important;
}

.moz-popup .wpforms-field input[type="text"],
.moz-popup .wpforms-field input[type="email"],
.moz-popup .wpforms-field input[type="tel"],
.moz-popup .wpforms-field select {
	line-height: 40px !important;
}

.moz-popup .wpforms-field textarea {
	height: 90px !important;
	line-height: 1.5 !important;
	resize: vertical;
	min-height: 56px;
}

.moz-popup .wpforms-field.moz-hidden-field,
.moz-popup .wpforms-field.wpforms-field-hidden,
.moz-popup .moz-hidden-field {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.moz-popup .wpforms-field input:focus,
.moz-popup .wpforms-field select:focus,
.moz-popup .wpforms-field textarea:focus {
	border-color: var(--moz-sienna-500) !important;
}

.moz-popup .wpforms-submit-container {
	padding: 16px 0 0;
	text-align: left;
}

.moz-popup .wpforms-submit {
	background: var(--moz-sienna-500) !important;
	color: var(--moz-earth-100) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	padding: 16px 32px !important;
	border-radius: 2px !important;
	width: 100%;
	transition: background 0.3s var(--moz-ease);
}

.moz-popup .wpforms-submit:hover {
	background: var(--moz-sienna-600) !important;
}

.moz-popup .wpforms-confirmation-container-full {
	background: var(--moz-earth-50);
	border: 1px solid var(--moz-earth-200);
	border-radius: 2px;
	color: var(--moz-earth-600);
	font-size: 14px;
	line-height: 1.625;
}

/* Contact Form 7 inside the popup */
.moz-popup .wpcf7 {
	margin: 0;
}

.moz-popup .wpcf7 p {
	margin: 0 0 20px;
	padding: 0;
}

.moz-popup .wpcf7 label {
	display: block;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--moz-earth-900);
	margin-bottom: 8px;
}

.moz-popup .wpcf7 .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

.moz-popup .wpcf7 input[type="text"],
.moz-popup .wpcf7 input[type="email"],
.moz-popup .wpcf7 input[type="tel"],
.moz-popup .wpcf7 input[type="url"],
.moz-popup .wpcf7 select,
.moz-popup .wpcf7 textarea {
	background: transparent;
	border: none;
	border-bottom: 1px solid var(--moz-earth-300);
	border-radius: 0;
	padding: 0;
	font-size: 14px;
	color: var(--moz-earth-900);
	outline: none;
	width: 100%;
	box-shadow: none;
	height: 40px;
	line-height: 40px;
	font-weight: 300;
}

.moz-popup .wpcf7 textarea {
	height: 90px;
	line-height: 1.5;
	resize: vertical;
	min-height: 56px;
}

.moz-popup .wpcf7 input:focus,
.moz-popup .wpcf7 select:focus,
.moz-popup .wpcf7 textarea:focus {
	border-color: var(--moz-sienna-500);
}

.moz-popup .wpcf7 .moz-cf7-product-context {
	font-size: 13px;
	font-weight: 300;
	color: var(--moz-earth-600);
	letter-spacing: 0.02em;
	text-transform: none;
	margin-bottom: 4px;
}

.moz-popup .wpcf7 .moz-cf7-product-context strong {
	font-weight: 500;
	color: var(--moz-earth-900);
}

.moz-popup .wpcf7 input[type="submit"] {
	background: var(--moz-sienna-500);
	color: var(--moz-earth-100);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	padding: 16px 32px;
	border-radius: 2px;
	border: none;
	width: 100%;
	cursor: pointer;
	transition: background 0.3s var(--moz-ease);
	margin-top: 8px;
}

.moz-popup .wpcf7 input[type="submit"]:hover,
.moz-popup .wpcf7 input[type="submit"]:focus {
	background: var(--moz-sienna-600);
}

.moz-popup .wpcf7 .wpcf7-response-output {
	background: var(--moz-earth-50);
	border: 1px solid var(--moz-earth-200);
	border-radius: 2px;
	color: var(--moz-earth-600);
	font-size: 14px;
	line-height: 1.625;
	margin: 16px 0 0;
	padding: 16px;
}

.moz-popup .wpcf7 .wpcf7-not-valid {
	border-color: #c0392b;
}

.moz-popup .wpcf7 .wpcf7-not-valid-tip {
	color: #c0392b;
	font-size: 12px;
	margin-top: 6px;
}

/* Conditional BIM/CAD download reveal inside the BIM popup */
.moz-bim-download {
	margin-top: 24px;
	padding-top: 24px;
	border-top: 1px solid var(--moz-earth-200);
}

.moz-bim-download-intro {
	font-size: 13px;
	font-weight: 300;
	color: var(--moz-earth-600);
	margin: 0 0 12px;
}

.moz-bim-download-link {
	display: inline-block;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--moz-earth-100);
	background: var(--moz-earth-900);
	padding: 12px 20px;
	border-radius: 2px;
	text-decoration: none;
	margin: 0 8px 8px 0;
	transition: background 0.3s var(--moz-ease);
}

.moz-bim-download-link:hover,
.moz-bim-download-link:focus {
	background: var(--moz-sienna-500);
	color: var(--moz-earth-100);
}

.moz-bim-download[hidden] {
	display: none;
}

/* ============================================================
   Materials Index block
   ============================================================ */

.moz-mat {
	background: var(--moz-earth-900);
	color: var(--moz-earth-100);
	padding: 128px 0;
}

/* Beat WP's global 24px flow margin on the section and its children. */
section.moz-mat {
	margin-block-start: 0;
}

.moz-mat .moz-mat-inner > *,
.moz-mat .moz-mat-left > *,
.moz-mat .moz-mat-content > * {
	margin-block-start: 0;
}

.moz-mat.is-editor-preview {
	padding: 64px 0;
}

.moz-mat-inner {
	max-width: var(--moz-container);
	margin: 0 auto;
	padding: 0 var(--moz-gutter);
	display: grid;
	grid-template-columns: 1fr;
	gap: 64px;
}

@media (min-width: 1024px) {
	.moz-mat-inner {
		grid-template-columns: 4fr 8fr;
	}
}

.moz-mat-left {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.moz-mat-eyebrow {
	display: block;
	font-size: 12px;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--moz-sienna-500);
	font-weight: 600;
}

.moz-mat-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(2.25rem, 4vw, 3rem);
	font-weight: 400;
	line-height: 1.2;
	color: var(--moz-earth-100);
	margin: 0;
}

.moz-mat-desc {
	color: var(--moz-earth-400);
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.625;
	margin: 0;
}

@media (min-width: 1024px) {
	.moz-mat-desc {
		font-size: 1rem;
	}
}

.moz-mat-tabs {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 8px;
}

.moz-mat-tab {
	text-align: left;
	padding: 16px 24px;
	border: none;
	border-left: 2px solid transparent;
	background: transparent;
	color: var(--moz-earth-400);
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-weight: 600;
	border-radius: 2px;
	cursor: pointer;
	transition: all 0.3s var(--moz-ease);
}

.moz-mat-tab:hover {
	color: var(--moz-earth-100);
}

.moz-mat-tab.is-active {
	border-left-color: var(--moz-sienna-500);
	color: var(--moz-earth-100);
	background: rgba(47, 39, 30, 0.5);
}

.moz-mat-panel {
	background: var(--moz-earth-800);
	padding: 32px;
	border: 1px solid rgba(77, 66, 52, 0.5);
	border-radius: 2px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

@media (min-width: 1024px) {
	.moz-mat-panel {
		padding: 48px;
	}
}

.moz-mat-content {
	display: none;
}

.moz-mat-content.is-active {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.moz-mat-image {
	margin: 0;
	aspect-ratio: 16 / 9;
	background: var(--moz-earth-900);
	overflow: hidden;
	border-radius: 2px;
}

.moz-mat-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.moz-mat-body {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px;
	padding-top: 16px;
}

.moz-mat-body.has-no-specs {
	grid-template-columns: 1fr !important;
}

@media (min-width: 768px) {
	.moz-mat-body {
		grid-template-columns: 1fr 1fr;
	}
}

.moz-mat-body-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 24px;
	font-weight: 400;
	color: var(--moz-earth-100);
	margin: 0 0 8px;
}

.moz-mat-body-desc {
	color: var(--moz-earth-400);
	font-weight: 300;
	font-size: 0.75rem;
	line-height: 1.625;
	margin: 0;
}

@media (min-width: 1024px) {
	.moz-mat-body-desc {
		font-size: 0.875rem;
	}
}

.moz-mat-specs {
	border-left: 1px solid var(--moz-earth-700);
	padding-left: 32px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.moz-mat-spec {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.moz-mat-spec-label {
	font-size: 10px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-sienna-500);
	font-weight: 600;
}

.moz-mat-spec-value {
	font-size: 14px;
	color: var(--moz-earth-200);
}

/* ============================================================
   Atelier Consultation block
   ============================================================ */

.moz-cons {
	background: var(--moz-earth-100);
	padding: 128px 0;
}

.moz-cons.is-editor-preview {
	padding: 64px 0;
}

.moz-cons-inner {
	max-width: var(--moz-container);
	margin: 0 auto;
	padding: 0 var(--moz-gutter);
	display: grid;
	grid-template-columns: 1fr;
	gap: 64px;
	align-items: center;
}

@media (min-width: 1024px) {
	.moz-cons-inner {
		grid-template-columns: 5fr 7fr;
	}
}

.moz-cons-left {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.moz-cons-eyebrow {
	display: block;
	font-size: 12px;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--moz-sienna-500);
	font-weight: 600;
}

.moz-cons-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(2.25rem, 4vw, 3rem);
	font-weight: 400;
	line-height: 1.2;
	color: var(--moz-earth-900);
	margin: 0;
}

.moz-cons-desc {
	color: var(--moz-earth-600);
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.625;
	margin: 0;
}

@media (min-width: 1024px) {
	.moz-cons-desc {
		font-size: 1rem;
	}
}

.moz-cons-showrooms {
	border-top: 1px solid var(--moz-earth-200);
	padding-top: 24px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.moz-cons-showroom {
	display: flex;
	align-items: center;
	gap: 16px;
}

.moz-cons-dot {
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: var(--moz-sienna-500);
	flex: 0 0 auto;
}

.moz-cons-showroom-label {
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-700);
}

/* Form panel */
.moz-cons-form {
	background: var(--moz-earth-200);
	padding: 32px;
	border: 1px solid var(--moz-earth-300);
	border-radius: 2px;
	box-shadow: 0 30px 60px rgba(20, 18, 14, 0.18);
}

.moz-cons-form-placeholder {
	border: 1px dashed var(--moz-earth-400);
	border-radius: 2px;
	padding: 40px 24px;
	text-align: center;
}

.moz-cons-form-placeholder span {
	display: block;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--moz-earth-700);
	margin-bottom: 8px;
}

.moz-cons-form-placeholder small {
	font-size: 12px;
	color: var(--moz-earth-500);
}

@media (min-width: 1024px) {
	.moz-cons-form {
		padding: 48px;
	}
}

/* WPForms inside the consultation section */
.moz-cons-form .wpforms-container {
	margin: 0;
}

.moz-cons-form .wpforms-field-container {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
}

@media (min-width: 640px) {
	.moz-cons-form .wpforms-field-container {
		grid-template-columns: 1fr 1fr;
		gap: 24px;
	}
}

.moz-cons-form .wpforms-field {
	margin-bottom: 0;
	padding: 0;
	min-width: 0;
}

@media (min-width: 640px) {
	.moz-cons-form .wpforms-field-textarea,
	.moz-cons-form .wpforms-submit-container,
	.moz-cons-form .wpforms-confirmation-container-full {
		grid-column: 1 / -1;
	}
}

.moz-cons-form .wpforms-field-label {
	font-size: 12px !important;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-weight: 600 !important;
	color: var(--moz-earth-700) !important;
	margin-bottom: 8px !important;
	display: block;
}

.moz-cons-form .wpforms-field input[type="text"],
.moz-cons-form .wpforms-field input[type="email"],
.moz-cons-form .wpforms-field input[type="tel"],
.moz-cons-form .wpforms-field select,
.moz-cons-form .wpforms-field textarea {
	background: transparent !important;
	border: none !important;
	border-bottom: 1px solid var(--moz-earth-400) !important;
	border-radius: 0 !important;
	padding: 8px 0 !important;
	font-size: 14px !important;
	color: var(--moz-earth-900) !important;
	outline: none !important;
	width: 100% !important;
	box-shadow: none !important;
	height: 36px !important;
}

.moz-cons-form .wpforms-field select {
	line-height: 20px !important;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238A7A64' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 4px center;
	padding-right: 24px !important;
}

.moz-cons-form .wpforms-field textarea {
	height: 90px !important;
	line-height: 1.5 !important;
	resize: vertical;
	min-height: 56px;
}

.moz-cons-form .wpforms-field input:focus,
.moz-cons-form .wpforms-field select:focus,
.moz-cons-form .wpforms-field textarea:focus {
	border-color: var(--moz-sienna-500) !important;
}

.moz-cons-form .wpforms-submit-container {
	padding: 0;
	text-align: left;
}

.moz-cons-form .wpforms-submit {
	background: var(--moz-sienna-500) !important;
	color: var(--moz-earth-100) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	padding: 16px 32px !important;
	border-radius: 2px !important;
	width: 100%;
	transition: background 0.3s var(--moz-ease);
}

.moz-cons-form .wpforms-submit:hover {
	background: var(--moz-sienna-600) !important;
}

.moz-cons-form .wpforms-confirmation-container-full {
	background: var(--moz-earth-100);
	border: 1px solid var(--moz-earth-300);
	border-radius: 2px;
	color: var(--moz-earth-600);
	font-size: 14px;
	line-height: 1.625;
}

/* Contact Form 7 inside the consultation section */
.moz-cons-form .wpcf7 {
	margin: 0;
}

.moz-cons-form .wpcf7 p {
	margin: 0 0 24px;
	padding: 0;
}

.moz-cons-form .wpcf7 label {
	display: block;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--moz-earth-700);
	margin-bottom: 8px;
}

.moz-cons-form .wpcf7 .wpcf7-form-control-wrap {
	display: block;
	min-width: 0;
}

.moz-cons-form .wpcf7 form {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
}

@media (min-width: 640px) {
	.moz-cons-form .wpcf7 form {
		grid-template-columns: 1fr 1fr;
		column-gap: 24px;
	}

	.moz-cons-form .wpcf7 form > p:last-of-type,
	.moz-cons-form .wpcf7 form input[type="submit"] {
		grid-column: 1 / -1;
	}
}

.moz-cons-form .wpcf7 input[type="text"],
.moz-cons-form .wpcf7 input[type="email"],
.moz-cons-form .wpcf7 select,
.moz-cons-form .wpcf7 textarea {
	background: transparent;
	border: none;
	border-bottom: 1px solid var(--moz-earth-400);
	border-radius: 0;
	padding: 8px 0;
	font-size: 14px;
	color: var(--moz-earth-900);
	outline: none;
	width: 100%;
	box-shadow: none;
	height: 36px;
	line-height: 20px;
	font-weight: 300;
}

.moz-cons-form .wpcf7 select {
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238A7A64' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 4px center;
	padding-right: 24px;
}

.moz-cons-form .wpcf7 textarea {
	height: 90px;
	line-height: 1.5;
	resize: vertical;
	min-height: 56px;
}

.moz-cons-form .wpcf7 input:focus,
.moz-cons-form .wpcf7 select:focus,
.moz-cons-form .wpcf7 textarea:focus {
	border-color: var(--moz-sienna-500);
}

.moz-cons-form .wpcf7 input[type="submit"] {
	background: var(--moz-sienna-500);
	color: var(--moz-earth-100);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	padding: 16px 32px;
	border-radius: 2px;
	border: none;
	width: 100%;
	cursor: pointer;
	transition: background 0.3s var(--moz-ease);
	margin-top: 8px;
}

.moz-cons-form .wpcf7 input[type="submit"]:hover,
.moz-cons-form .wpcf7 input[type="submit"]:focus {
	background: var(--moz-sienna-600);
}

.moz-cons-form .wpcf7 .wpcf7-response-output {
	background: var(--moz-earth-100);
	border: 1px solid var(--moz-earth-300);
	border-radius: 2px;
	color: var(--moz-earth-600);
	font-size: 14px;
	line-height: 1.625;
	margin: 16px 0 0;
	padding: 16px;
}

.moz-cons-form .wpcf7 .wpcf7-not-valid {
	border-color: #c0392b;
}

.moz-cons-form .wpcf7 .wpcf7-not-valid-tip {
	color: #c0392b;
	font-size: 12px;
	margin-top: 6px;
}

/* ============================================================
   Product card (archive — matches SubCat.html)
   ============================================================ */

/* Neutralize WC's grid layout inside the loop li; the card owns its look. */
.wp-block-woocommerce-product-collection .wc-block-product-template > li {
	display: block;
	border-bottom: none;
	padding-bottom: 0;
	margin: 0;
}

.moz-product-card {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	background: #FAF8F5;
	border: 1px solid var(--moz-earth-200, #EAE6DF);
	border-radius: 4px;
	padding: 20px;
	box-sizing: border-box;
	height: 100%;
	transition: transform 0.35s var(--moz-ease), box-shadow 0.35s var(--moz-ease), border-color 0.35s var(--moz-ease);
}

.moz-product-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 36px rgba(20, 18, 14, 0.08);
	border-color: rgba(160, 82, 45, 0.35);
}

.moz-card-badge {
	position: absolute;
	top: 16px;
	left: 16px;
	right: auto;
	z-index: 20;
	background: var(--moz-earth-900, #14120E);
	color: #F4EFE6;
	font-size: 9.5px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	padding: 5px 12px;
	border-radius: 2px;
}

.moz-card-wishlist-btn {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 25;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border: 1px solid rgba(20, 18, 14, 0.08);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--moz-earth-800, #2C2720);
	cursor: pointer;
	padding: 0;
	transition: all 0.25s var(--moz-ease);
}

.moz-card-wishlist-btn:hover {
	transform: scale(1.08);
	background: #FFFFFF;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
	color: var(--moz-sienna-500, #A0522D);
}

.moz-card-wishlist-btn svg {
	width: 18px;
	height: 18px;
	stroke: currentColor;
	fill: transparent;
	display: block;
	flex-shrink: 0;
	transition: fill 0.25s ease, stroke 0.25s ease, transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.moz-card-wishlist-btn:active svg {
	transform: scale(0.85);
}

.moz-card-wishlist-btn.is-active {
	color: var(--moz-sienna-500, #A0522D);
	background: #FFFFFF;
	border-color: rgba(160, 82, 45, 0.25);
	box-shadow: 0 2px 10px rgba(160, 82, 45, 0.18);
}

.moz-card-wishlist-btn.is-active svg {
	fill: var(--moz-sienna-500, #A0522D);
	stroke: var(--moz-sienna-500, #A0522D);
}

.moz-card-media {
	position: relative;
	aspect-ratio: auto !important;
	width: 100%;
	overflow: hidden;
	background: transparent;
	border-radius: 3px;
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.moz-card-media-link {
	display: block;
	width: 100%;
	height: auto;
}

.moz-card-media img {
	width: 100% !important;
	height: auto !important;
	max-height: none !important;
	aspect-ratio: auto !important;
	object-fit: contain !important;
	display: block;
	transition: transform 0.5s var(--moz-ease);
}

.moz-product-card:hover .moz-card-media img {
	transform: scale(1.04);
}

.moz-card-swatches {
	position: absolute;
	bottom: 16px;
	left: 16px;
	z-index: 20;
	display: flex;
	gap: 8px;
	opacity: 0;
	transform: translateY(8px);
	transition: opacity 0.3s var(--moz-ease), transform 0.3s var(--moz-ease);
}

.moz-product-card:hover .moz-card-swatches {
	opacity: 1;
	transform: translateY(0);
}

.moz-card-swatch {
	width: 30px;
	height: 30px;
	border-radius: 999px;
	border: 2px solid #FFFFFF;
	box-shadow: 0 2px 8px rgba(20, 18, 14, 0.3);
	display: block;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.moz-card-body {
	padding-bottom: 8px;
}

.moz-card-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 8px;
}

.moz-card-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.2;
	margin: 0;
	color: var(--moz-earth-900, #14120E);
	flex: 1;
}

.moz-card-title a {
	color: var(--moz-earth-900, #14120E);
	text-decoration: none;
	transition: color 0.25s var(--moz-ease);
}

.moz-card-title a:hover {
	color: var(--moz-sienna-500, #A0522D);
}

.moz-card-price {
	text-align: right;
	flex: 0 0 auto;
	white-space: nowrap;
}

.moz-card-price-value {
	display: block;
	font-size: 18px;
	font-weight: 600;
	color: var(--moz-earth-900, #14120E);
}

.moz-card-price-label {
	display: block;
	font-size: 9.5px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-600, #685A48);
	font-weight: 500;
}

.moz-card-meta-line {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 4px;
	margin-bottom: 14px;
	font-size: 11px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-weight: 600;
	line-height: 1.3;
}

.moz-card-seater-tag {
	color: var(--moz-earth-900, #14120E);
	background: rgba(160, 82, 45, 0.08);
	border: 1px solid rgba(160, 82, 45, 0.24);
	padding: 2.5px 7.5px;
	border-radius: 2px;
	font-size: 10px;
	letter-spacing: 0.14em;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	line-height: 1;
}

.moz-card-meta-sep {
	color: var(--moz-earth-400, #A39682);
	font-size: 9px;
	opacity: 0.8;
}

.moz-card-meta-line .moz-card-material {
	display: inline;
	margin-bottom: 0;
}

.moz-card-footer-seater {
	font-size: 11px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--moz-earth-700, #4A3E2F);
	display: inline-flex;
	align-items: center;
}

.moz-card-badge-seater {
	background: var(--moz-earth-900, #14120E);
	color: #FAF8F5;
	font-size: 9.5px;
	letter-spacing: 0.16em;
	font-weight: 700;
	padding: 4px 9px;
	border-radius: 2px;
	text-transform: uppercase;
	position: absolute;
	top: 14px;
	left: 14px;
	z-index: 3;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
}

.moz-card-material {
	display: block;
	font-size: 11.5px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--moz-sienna-500, #A0522D);
	font-weight: 600;
	margin-bottom: 14px;
}

.moz-card-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	color: var(--moz-earth-600, #685A48);
	border-top: 1px solid rgba(234, 222, 201, 0.7);
	padding-top: 14px;
	margin-top: auto;
}

.moz-card-footer a {
	font-weight: 600;
	color: var(--moz-earth-900, #14120E);
	text-decoration: none;
	transition: color 0.25s var(--moz-ease);
	white-space: nowrap;
	font-size: 11px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.moz-card-footer a:hover {
	color: var(--moz-sienna-500, #A0522D);
}

@media (max-width: 640px) {
	.moz-product-card {
		padding: 14px;
	}

	.moz-card-badge {
		top: 12px;
		left: 12px;
	}

	.moz-card-wishlist-btn {
		top: 12px;
		right: 12px;
		width: 32px;
		height: 32px;
	}

	.moz-card-wishlist-btn svg {
		width: 16px;
		height: 16px;
	}

	.moz-card-title {
		font-size: 20px;
	}

	.moz-card-price-value {
		font-size: 16px;
	}

	.moz-card-media {
		margin-bottom: 14px;
	}
}

/* ============================================================
   Footer
   ============================================================ */

.moz-footer {
	background: var(--moz-earth-900);
	color: var(--moz-earth-400);
	border-top: 1px solid var(--moz-earth-800);
	padding-top: 80px;
}

.moz-footer-inner {
	max-width: var(--moz-container);
	margin: 0 auto;
	padding: 0 var(--moz-gutter);
}

.moz-footer-grid {
	border-bottom: 1px solid var(--moz-earth-800);
	padding-bottom: 64px;
	margin-bottom: 0;
}

.moz-footer .wp-block-columns {
	gap: 48px;
}

.moz-footer-brand {
	margin: 0 0 16px;
	font-size: 24px;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	font-weight: 400;
}

.moz-footer-brand a {
	color: var(--moz-earth-100);
	text-decoration: none;
	transition: opacity 0.3s var(--moz-ease);
}

.moz-footer-brand a:hover {
	opacity: 0.8;
}

.moz-footer-desc {
	color: var(--moz-earth-500);
	font-weight: 300;
	line-height: 1.6;
	max-width: 280px;
	margin: 0;
}

.moz-footer-socials {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 24px;
}

.moz-footer-social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: var(--moz-earth-800, #262420);
	color: var(--moz-earth-400, #a8a29e);
	border: 1px solid var(--moz-earth-700, #38352f);
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
	text-decoration: none;
}

.moz-footer-social-link:hover {
	background: #964F2E;
	color: #ffffff;
	border-color: #964F2E;
	transform: translateY(-2px);
	box-shadow: 0 4px 14px rgba(150, 79, 46, 0.35);
}

.moz-footer-social-link svg {
	display: block;
}


.moz-footer-title {
	font-family: 'Inter', sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-100);
	margin: 0 0 16px;
}

.moz-footer-title a {
	color: inherit;
	text-decoration: none;
	transition: color 0.3s var(--moz-ease);
}

.moz-footer-title a:hover {
	color: var(--moz-sienna-500, #A0522D);
}

.moz-footer-links {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.moz-footer-links li::marker {
	content: none;
}

.moz-footer-links a {
	font-size: 0.875rem;
	font-weight: 300;
	color: var(--moz-earth-500);
	text-decoration: none;
	transition: color 0.3s var(--moz-ease);
}

.moz-footer-links a:hover {
	color: var(--moz-earth-100);
}

.moz-footer-bottom {
	padding-top: 32px;
	padding-bottom: 80px;
	gap: 16px;
}

.moz-footer-copy,
.moz-footer-vat {
	color: var(--moz-earth-600);
	font-size: 12px;
	margin: 0;
}


/* Responsive Single Product & Variations Fixes */
.moz-product-wrap,
.moz-product-layout,
.moz-product-gallery-col,
.moz-product-config-col,
.wp-block-woocommerce-add-to-cart-form,
form.variations_form,
table.variations,
table.variations tbody,
table.variations tr,
table.variations td.value {
	max-width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

.moz-price-tier {
	flex-wrap: wrap !important;
	gap: 16px !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

@media (max-width: 640px) {
	.moz-price-tier {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 12px !important;
		padding: 16px 0 !important;
	}
	.moz-price-tier-right {
		text-align: left !important;
	}
}

.moz-var-options {
	width: 100% !important;
	box-sizing: border-box !important;
}

@media (max-width: 480px) {
	.moz-var-options {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 6px !important;
	}
	.moz-var-btn.has-media {
		padding: 10px 4px 8px !important;
		min-height: 66px !important;
		gap: 6px !important;
	}
	.moz-var-btn-media {
		width: 38px !important;
		height: 24px !important;
	}
	.moz-var-btn-title {
		font-size: 9.5px !important;
		letter-spacing: 0.05em !important;
	}
}

.moz-var-options.is-colorway {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	margin-top: 16px !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

.moz-var-options.is-colorway .moz-var-btn.is-swatch {
	width: clamp(68px, 20vw, 86px) !important;
	height: clamp(80px, 24vw, 100px) !important;
	flex: 0 0 auto !important;
	border-radius: 0 !important;
	box-sizing: border-box !important;
}

.moz-linked-swatches-container {
	margin: 18px 0 22px !important;
	padding-top: 0 !important;
	padding-bottom: 22px !important;
	border-top: none !important;
	border-bottom: 1px solid var(--moz-earth-200) !important;
	clear: both !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	min-width: 0 !important;
}

.moz-swatches-list {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	align-items: center !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

.moz-swatch-item {
	display: block !important;
	position: relative !important;
	width: clamp(70px, 20vw, 100px) !important;
	height: clamp(70px, 20vw, 100px) !important;
	flex: 0 0 auto !important;
	box-sizing: border-box !important;
}

form.variations_form .single_add_to_cart_button {
	width: 100% !important;
	padding: 16px 14px !important;
	white-space: normal !important;
	word-break: break-word !important;
	text-align: center !important;
	line-height: 1.4 !important;
	box-sizing: border-box !important;
}

@media (max-width: 480px) {
	.moz-product-actions .wp-block-buttons {
		grid-template-columns: 1fr !important;
	}
}


/* Moz Swatches Header — Exact match with .moz-var-label */
.moz-swatches-header {
	display: flex !important;
	justify-content: space-between !important;
	align-items: baseline !important;
	gap: 12px !important;
	width: 100% !important;
	margin: 0 0 12px 0 !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--moz-earth-900) !important;
}

.moz-swatches-header > span:first-child {
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--moz-earth-900) !important;
}

.moz-swatch-current-label {
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--moz-sienna-500) !important;
	font-size: 12px !important;
}

.moz-swatch-item:hover {
	border-color: var(--moz-sienna-500) !important;
	box-shadow: 0 6px 18px rgba(160, 82, 45, 0.2) !important;
}

.moz-swatch-item.is-active {
	border-color: var(--moz-sienna-500) !important;
	border-width: 3px !important;
	box-shadow: 0 6px 20px rgba(160, 82, 45, 0.25) !important;
}

/* ============================================================
   Floating Action Widget (Urban Ladder style quick actions)
   ============================================================ */

.moz-floating-widget {
	position: fixed;
	bottom: 2.5rem;
	right: 2.5rem;
	z-index: 9990;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 12px;
	pointer-events: none;
	font-family: var(--moz-font-body, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
}

.moz-floating-trigger {
	pointer-events: auto;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: #964F2E;
	color: #ffffff;
	border: 1.5px solid rgba(255, 255, 255, 0.25);
	box-shadow: 0 8px 26px rgba(150, 79, 46, 0.4), 0 2px 8px rgba(0, 0, 0, 0.1);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	position: relative;
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), background 0.25s ease, box-shadow 0.25s ease;
	outline: none;
	padding: 0;
	margin: 0;
	-webkit-tap-highlight-color: transparent;
}

.moz-floating-trigger:hover {
	transform: scale(1.06);
	background: #844325;
	box-shadow: 0 8px 28px rgba(150, 79, 46, 0.45), 0 4px 10px rgba(0, 0, 0, 0.12);
}

.moz-floating-trigger:active {
	transform: scale(0.95);
}

.moz-floating-widget.is-open .moz-floating-trigger {
	background: #ffffff;
	color: #1a1a1a;
	border-color: rgba(0, 0, 0, 0.12);
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.16), 0 2px 6px rgba(0, 0, 0, 0.08);
}

.moz-floating-widget.is-open .moz-floating-trigger:hover {
	background: #f7f5f2;
	color: #964F2E;
}

.moz-trigger-icon {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity 0.25s cubic-bezier(0.16, 1, 0.3, 1), transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.moz-icon-open {
	opacity: 1;
	transform: rotate(0deg) scale(1);
}

.moz-icon-close {
	opacity: 0;
	transform: rotate(-90deg) scale(0.6);
}

.moz-floating-widget.is-open .moz-icon-open {
	opacity: 0;
	transform: rotate(90deg) scale(0.6);
}

.moz-floating-widget.is-open .moz-icon-close {
	opacity: 1;
	transform: rotate(0deg) scale(1);
}

.moz-floating-menu {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 10px;
	pointer-events: none;
	visibility: hidden;
	opacity: 0;
	transform: translateY(16px) scale(0.96);
	transform-origin: bottom right;
	transition: opacity 0.25s cubic-bezier(0.16, 1, 0.3, 1), transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.25s;
}

.moz-floating-widget.is-open .moz-floating-menu {
	pointer-events: auto;
	visibility: visible;
	opacity: 1;
	transform: translateY(0) scale(1);
}

.moz-floating-item {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	background: #ffffff;
	color: #1a1a1a;
	text-decoration: none;
	padding: 9px 20px 9px 10px;
	border-radius: 999px;
	border: 1px solid rgba(0, 0, 0, 0.08);
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.04);
	font-size: 13.5px;
	font-weight: 500;
	letter-spacing: 0.01em;
	white-space: nowrap;
	cursor: pointer;
	transform: translateY(10px);
	opacity: 0;
	transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.25s ease, background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.25s ease, color 0.2s ease;
	-webkit-tap-highlight-color: transparent;
}

.moz-floating-widget.is-open .moz-floating-item {
	transform: translateY(0);
	opacity: 1;
}

.moz-floating-widget.is-open .moz-floating-item:nth-child(1) {
	transition-delay: 0.04s;
}

.moz-floating-widget.is-open .moz-floating-item:nth-child(2) {
	transition-delay: 0.08s;
}

.moz-floating-widget.is-open .moz-floating-item:nth-child(3) {
	transition-delay: 0.12s;
}

.moz-floating-item:hover {
	background: #faf8f5;
	border-color: rgba(150, 79, 46, 0.35);
	color: #964F2E;
	box-shadow: 0 6px 22px rgba(150, 79, 46, 0.12), 0 2px 6px rgba(0, 0, 0, 0.06);
	transform: translateY(-2px);
}

.moz-floating-icon {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: rgba(150, 79, 46, 0.08);
	color: #964F2E;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.25s ease;
}

.moz-floating-item:hover .moz-floating-icon {
	background: #964F2E;
	color: #ffffff;
	transform: scale(1.08);
}

.moz-floating-label {
	line-height: 1;
	margin-right: 2px;
}

@media (max-width: 768px) {
	.moz-floating-widget {
		bottom: 1.5rem;
		right: 1.25rem;
		gap: 10px;
	}
	.moz-floating-trigger {
		width: 50px;
		height: 50px;
	}
	.moz-floating-item {
		padding: 8px 16px 8px 8px;
		font-size: 13px;
	}
	.moz-floating-icon {
		width: 30px;
		height: 30px;
	}
	.moz-floating-icon svg {
		width: 16px;
		height: 16px;
	}
}

/* ==========================================================================
   Auth Modal & Account Styles
   ========================================================================== */

/* Auth Popup Modal */
.moz-popup.moz-auth-modal {
	max-width: 440px;
	padding: 0;
	overflow: hidden;
	border-radius: 4px;
	background: #FFFFFF;
	box-shadow: 0 30px 70px rgba(18, 14, 10, 0.4);
}

.moz-auth-modal .moz-popup-close {
	top: 14px;
	right: 14px;
	z-index: 10;
	background: rgba(255, 255, 255, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.25);
	color: #FAF8F5;
	backdrop-filter: blur(4px);
}

.moz-auth-modal .moz-popup-close:hover {
	background: rgba(255, 255, 255, 0.3);
	color: #FFFFFF;
	border-color: rgba(255, 255, 255, 0.5);
}

/* Top Header Card / Editorial Banner */
.moz-auth-header-card {
	background: linear-gradient(135deg, #1C1713 0%, #352B23 60%, #4D382B 100%);
	padding: 34px 32px 28px;
	color: #FAF8F5;
	position: relative;
}

.moz-auth-badge {
	display: inline-block;
	font-size: 10px;
	letter-spacing: 0.25em;
	text-transform: uppercase;
	font-weight: 600;
	color: #D2C1A5;
	margin-bottom: 8px;
}

.moz-auth-headline {
	font-family: var(--moz-font-serif, 'Cormorant Garamond', Georgia, serif);
	font-size: 26px;
	line-height: 1.15;
	font-weight: 400;
	color: #FAF8F5;
	margin: 0 0 8px;
}

.moz-auth-subhead {
	font-size: 12px;
	line-height: 1.55;
	font-weight: 300;
	color: #D6CEC5;
	margin: 0;
}

/* Auth Body */
.moz-auth-body {
	padding: 28px 32px 32px;
	background: #FFFFFF;
}

/* Tabs */
.moz-auth-tabs {
	display: flex;
	border-bottom: 1px solid var(--moz-earth-200, #E8E2D9);
	margin-bottom: 22px;
	gap: 20px;
}

.moz-auth-tab {
	background: none;
	border: none;
	padding: 0 0 10px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--moz-earth-600, #6F675B);
	cursor: pointer;
	position: relative;
	transition: color 0.3s var(--moz-ease);
}

.moz-auth-tab:hover {
	color: var(--moz-earth-900, #1F1A14);
}

.moz-auth-tab.is-active {
	color: var(--moz-earth-900, #1F1A14);
}

.moz-auth-tab.is-active::after {
	content: '';
	position: absolute;
	bottom: -1px;
	left: 0;
	right: 0;
	height: 2px;
	background: var(--moz-sienna-500, #A35C37);
}

/* Alert Notification Box */
.moz-auth-alert {
	padding: 10px 14px;
	border-radius: 2px;
	font-size: 13px;
	line-height: 1.4;
	margin-bottom: 18px;
}

.moz-auth-alert.is-error {
	background: #FDF2F0;
	border: 1px solid #F3C2BC;
	color: #B3261E;
}

.moz-auth-alert.is-success {
	background: #F0F9F3;
	border: 1px solid #B8E4C9;
	color: #1B7943;
}

/* Field Groups & Labels */
.moz-auth-field-group {
	margin-bottom: 18px;
}

.moz-auth-label {
	display: block;
	font-size: 11px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--moz-earth-900, #1F1A14);
	margin-bottom: 6px;
}

.moz-auth-label .moz-req {
	color: var(--moz-sienna-500, #A35C37);
}

.moz-auth-label-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 6px;
}

.moz-auth-label-row .moz-auth-label {
	margin-bottom: 0;
}

.moz-auth-link-subtle {
	font-size: 11px;
	color: var(--moz-earth-600, #6F675B);
	text-decoration: none;
	transition: color 0.2s var(--moz-ease);
}

.moz-auth-link-subtle:hover {
	color: var(--moz-sienna-500, #A35C37);
	text-decoration: underline;
}

/* Inputs & Wrappers */
.moz-auth-input-wrap {
	position: relative !important;
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.moz-auth-input-wrap .password-input,
.moz-account-auth-card span.password-input,
span.password-input {
	display: block !important;
	width: 100% !important;
	position: relative !important;
	box-sizing: border-box !important;
}

.moz-auth-input-wrap .password-input input,
.moz-account-auth-card span.password-input input {
	width: 100% !important;
	display: block !important;
	box-sizing: border-box !important;
}

/* Hide WooCommerce native injected show-password-input button */
.moz-account-auth-card .show-password-input,
.moz-auth-input-wrap .show-password-input,
button.show-password-input {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.moz-auth-input {
	width: 100% !important;
	display: block !important;
	height: 44px;
	padding: 0 14px;
	background: #FAF9F5 !important;
	border: 1px solid var(--moz-earth-300, #D2C1A5) !important;
	border-radius: 2px !important;
	font-size: 13px !important;
	color: var(--moz-earth-900, #1F1A14) !important;
	outline: none !important;
	transition: border-color 0.2s var(--moz-ease), background-color 0.2s var(--moz-ease);
	box-sizing: border-box !important;
}

.moz-auth-input:focus {
	border-color: var(--moz-sienna-500, #A35C37) !important;
	background: #FFFFFF !important;
}

.moz-auth-input-pass {
	padding-right: 44px !important;
}

.moz-pw-toggle {
	position: absolute !important;
	right: 0 !important;
	top: 0 !important;
	bottom: 0 !important;
	height: 100% !important;
	width: 42px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: transparent !important;
	border: none !important;
	color: var(--moz-earth-600, #6F675B) !important;
	cursor: pointer !important;
	transition: color 0.2s !important;
	z-index: 5 !important;
}

.moz-pw-toggle:hover {
	color: var(--moz-earth-900, #1F1A14) !important;
}

/* Remember Me Checkbox */
.moz-auth-remember-row {
	margin-bottom: 18px;
}

.moz-auth-checkbox-label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	color: var(--moz-earth-600, #6F675B);
	cursor: pointer;
	user-select: none;
}

.moz-auth-checkbox-label input[type="checkbox"] {
	accent-color: var(--moz-sienna-500, #A35C37);
	width: 15px;
	height: 15px;
	margin: 0;
}

/* Submit Buttons */
.moz-auth-submit-wrap {
	margin-top: 20px;
}

.moz-auth-submit-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	height: 46px;
	background: var(--moz-sienna-500, #A35C37);
	color: #FAF8F5;
	border: none;
	border-radius: 2px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background-color 0.3s var(--moz-ease), transform 0.15s var(--moz-ease);
}

.moz-auth-submit-btn:hover {
	background: var(--moz-sienna-600, #8B4A29);
}

.moz-auth-submit-btn:active {
	transform: scale(0.99);
}

.moz-auth-submit-btn:disabled {
	opacity: 0.7;
	cursor: not-allowed;
}

.moz-btn-spinner {
	display: inline-block;
	width: 16px;
	height: 16px;
	border: 2px solid rgba(255, 255, 255, 0.3);
	border-radius: 50%;
	border-top-color: #FFFFFF;
	animation: mozSpin 0.7s linear infinite;
}

@keyframes mozSpin {
	to { transform: rotate(360deg); }
}

.moz-auth-panel-hint {
	font-size: 13px;
	line-height: 1.5;
	color: var(--moz-earth-600, #6F675B);
	margin: 0 0 16px;
}

.moz-auth-switch-back {
	margin-top: 14px;
	text-align: center;
}

/* Divider */
.moz-auth-divider {
	display: flex;
	align-items: center;
	text-align: center;
	margin: 22px 0 18px;
}

.moz-auth-divider::before,
.moz-auth-divider::after {
	content: '';
	flex: 1;
	border-bottom: 1px solid var(--moz-earth-200, #E8E2D9);
}

.moz-auth-divider span {
	padding: 0 12px;
	font-size: 11px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--moz-earth-400, #A0988A);
}

/* Google Social Button */
.moz-google-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	width: 100%;
	height: 44px;
	background: #FFFFFF;
	border: 1px solid #D2C1A5;
	border-radius: 2px;
	color: #3C4043;
	font-size: 13px;
	font-weight: 500;
	text-decoration: none;
	box-shadow: 0 1px 2px rgba(0,0,0,0.04);
	transition: background-color 0.2s, border-color 0.2s, box-shadow 0.2s;
	cursor: pointer;
}

.moz-google-btn:hover {
	background: #F9F9F9;
	border-color: #A0988A;
	box-shadow: 0 2px 4px rgba(0,0,0,0.08);
	color: #202124;
}

.moz-google-icon {
	width: 18px;
	height: 18px;
	display: block;
}

/* Legal text */
.moz-auth-legal {
	margin: 18px 0 0;
	text-align: center;
	font-size: 11px;
	line-height: 1.5;
	color: var(--moz-earth-600, #6F675B);
}

.moz-auth-legal a {
	color: var(--moz-earth-900, #1F1A14);
	text-decoration: underline;
	transition: color 0.2s;
}

.moz-auth-legal a:hover {
	color: var(--moz-sienna-500, #A35C37);
}




/* ============================================================
   Atelier Furniture Consultation Modal (AI-Enhanced Clean Theme)
   ============================================================ */

.moz-consult-modal {
	background: #F4EFE6 !important;
	max-width: 580px !important;
	width: 100% !important;
	padding: 42px 46px !important;
	border-radius: 4px !important;
	position: relative !important;
	box-shadow: 0 32px 70px rgba(20, 18, 14, 0.4) !important;
	box-sizing: border-box !important;
}

.moz-consult-close {
	position: absolute !important;
	top: 18px !important;
	right: 18px !important;
	width: 36px !important;
	height: 36px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: transparent !important;
	border: 1px solid #D0C9BD !important;
	border-radius: 50% !important;
	color: #14120E !important;
	cursor: pointer !important;
	transition: all 0.25s var(--moz-ease) !important;
	padding: 0 !important;
	z-index: 10 !important;
}

.moz-consult-close:hover {
	border-color: #14120E !important;
	background: rgba(20, 18, 14, 0.05) !important;
}

.moz-consult-header {
	margin-bottom: 24px !important;
}

.moz-consult-eyebrow {
	display: block !important;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
	font-size: 11px !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	color: var(--moz-sienna-500, #a0522d) !important;
	font-weight: 600 !important;
	margin-bottom: 10px !important;
}

.moz-consult-title {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-size: clamp(1.85rem, 2.5vw, 2.35rem) !important;
	font-weight: 400 !important;
	color: #14120E !important;
	margin: 0 0 10px 0 !important;
	line-height: 1.15 !important;
}

.moz-consult-desc {
	font-family: 'Inter', -apple-system, sans-serif !important;
	font-size: 13.5px !important;
	line-height: 1.55 !important;
	color: #686156 !important;
	font-weight: 300 !important;
	margin: 0 !important;
}

.moz-consult-grid {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 16px 18px !important;
	margin-bottom: 16px !important;
}

.moz-consult-field {
	display: flex !important;
	flex-direction: column !important;
	margin-bottom: 0 !important;
}

.moz-consult-field-full {
	margin-bottom: 20px !important;
}

.moz-consult-label {
	font-family: 'Inter', -apple-system, sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	color: #282420 !important;
	margin-bottom: 6px !important;
	display: flex !important;
	align-items: center !important;
}

.moz-consult-label .moz-req {
	color: var(--moz-sienna-500, #a0522d) !important;
	font-weight: 600 !important;
	margin-left: 2px !important;
}

.moz-consult-label .moz-opt {
	color: #8C8477 !important;
	font-weight: 400 !important;
	font-size: 11px !important;
	margin-left: 4px !important;
}

.moz-consult-input,
.moz-consult-select,
.moz-consult-textarea {
	background: #FFFFFF !important;
	border: 1px solid #D5CFC3 !important;
	border-radius: 3px !important;
	padding: 11px 14px !important;
	font-size: 13.5px !important;
	color: #14120E !important;
	width: 100% !important;
	box-sizing: border-box !important;
	font-family: 'Inter', -apple-system, sans-serif !important;
	transition: border-color 0.2s, box-shadow 0.2s !important;
	outline: none !important;
	box-shadow: none !important;
}

.moz-consult-input::placeholder,
.moz-consult-textarea::placeholder {
	color: #9C9488 !important;
	font-weight: 300 !important;
}

.moz-consult-input:focus,
.moz-consult-select:focus,
.moz-consult-textarea:focus {
	border-color: var(--moz-sienna-500, #a0522d) !important;
	box-shadow: 0 0 0 1px var(--moz-sienna-500, #a0522d) !important;
}

.moz-consult-select-wrap {
	position: relative !important;
	width: 100% !important;
}

.moz-consult-select {
	appearance: none !important;
	-webkit-appearance: none !important;
	padding-right: 32px !important;
	cursor: pointer !important;
	background: #FFFFFF !important;
	height: 42px !important;
}

.moz-consult-select-arrow {
	position: absolute !important;
	right: 12px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	pointer-events: none !important;
	color: #7A7268 !important;
	display: flex !important;
	align-items: center !important;
}

.moz-consult-textarea {
	min-height: 84px !important;
	resize: vertical !important;
	line-height: 1.5 !important;
}

.moz-consult-submit-wrap {
	margin-top: 6px !important;
}

.moz-consult-submit-btn {
	background: #252D24 !important;
	color: #F4EFE6 !important;
	border: none !important;
	border-radius: 3px !important;
	padding: 15px 24px !important;
	font-size: 13.5px !important;
	font-weight: 500 !important;
	font-family: 'Inter', -apple-system, sans-serif !important;
	letter-spacing: 0.02em !important;
	width: 100% !important;
	cursor: pointer !important;
	transition: background 0.25s var(--moz-ease), transform 0.15s !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	box-sizing: border-box !important;
}

.moz-consult-submit-btn:hover {
	background: var(--moz-sienna-500, #a0522d) !important;
}

.moz-consult-submit-btn:active {
	transform: scale(0.99) !important;
}

.moz-consult-submit-btn[disabled] {
	opacity: 0.65 !important;
	cursor: not-allowed !important;
}

.moz-consult-disclaimer {
	font-family: 'Inter', -apple-system, sans-serif !important;
	font-size: 11px !important;
	color: #7D756A !important;
	text-align: left !important;
	margin: 14px 0 0 !important;
	line-height: 1.45 !important;
}

.moz-consult-alert {
	padding: 12px 16px !important;
	border-radius: 3px !important;
	font-size: 13px !important;
	margin-bottom: 16px !important;
	line-height: 1.45 !important;
	font-family: 'Inter', -apple-system, sans-serif !important;
}

.moz-consult-alert.is-success {
	background: #EBF4E9 !important;
	color: #26541E !important;
	border: 1px solid #C4DFC0 !important;
}

.moz-consult-alert.is-error {
	background: #FDF0EE !important;
	color: #9C2E24 !important;
	border: 1px solid #F5C6C1 !important;
}

@media (max-width: 580px) {
	.moz-consult-modal {
		padding: 32px 24px !important;
	}
	.moz-consult-grid {
		grid-template-columns: 1fr !important;
		gap: 14px !important;
	}
}



/* Design & Blueprint Attachment Field (Consultation Form & Popup) */
div.wpforms-container-full .moz-wpforms-attachment-field,
.moz-cons-form .moz-wpforms-attachment-field,
.moz-wpforms-attachment-field {
	grid-column: 1 / -1 !important;
	width: 100% !important;
	margin-top: 6px !important;
	margin-bottom: 6px !important;
	clear: both !important;
}

div.wpforms-container-full .moz-wpforms-attachment-field .moz-file-upload-wrap,
.moz-cons-form .moz-file-upload-wrap,
.moz-file-upload-wrap {
	position: relative !important;
	width: 100% !important;
	margin-top: 6px !important;
}

div.wpforms-container-full .moz-file-input,
.moz-file-input {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	border: 0 !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

div.wpforms-container-full .moz-file-dropzone,
.moz-cons-form .moz-file-dropzone,
.moz-file-dropzone {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: wrap !important;
	gap: 16px !important;
	padding: 14px 18px !important;
	background: rgba(20, 18, 14, 0.04) !important;
	border: 1px dashed var(--moz-earth-500, #8A7A64) !important;
	border-radius: 2px !important;
	cursor: pointer !important;
	transition: all 0.25s ease !important;
	box-sizing: border-box !important;
	width: 100% !important;
}

div.wpforms-container-full .moz-file-dropzone:hover,
div.wpforms-container-full .moz-file-dropzone.is-dragover,
.moz-cons-form .moz-file-dropzone:hover,
.moz-cons-form .moz-file-dropzone.is-dragover,
.moz-file-dropzone:hover,
.moz-file-dropzone.is-dragover {
	background: rgba(20, 18, 14, 0.08) !important;
	border-color: var(--moz-sienna-500, #A0522D) !important;
}

div.wpforms-container-full .moz-file-icon,
.moz-cons-form .moz-file-icon,
.moz-file-icon {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 42px !important;
	height: 42px !important;
	border-radius: 2px !important;
	background: #FAF8F5 !important;
	color: var(--moz-sienna-500, #A0522D) !important;
	border: 1px solid var(--moz-earth-300, #D1CAC0) !important;
	flex-shrink: 0 !important;
	transition: all 0.25s ease !important;
}

div.wpforms-container-full .moz-file-dropzone:hover .moz-file-icon,
.moz-cons-form .moz-file-dropzone:hover .moz-file-icon {
	background: var(--moz-sienna-500, #A0522D) !important;
	color: #FFFFFF !important;
	border-color: var(--moz-sienna-500, #A0522D) !important;
}

div.wpforms-container-full .moz-file-info,
.moz-cons-form .moz-file-info,
.moz-file-info {
	display: flex !important;
	flex-direction: column !important;
	gap: 3px !important;
	flex: 1 !important;
	min-width: 0 !important;
	text-align: left !important;
}

div.wpforms-container-full .moz-file-title,
.moz-cons-form .moz-file-title,
.moz-file-title {
	font-family: 'Inter', -apple-system, sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	color: var(--moz-earth-900, #14120E) !important;
	line-height: 1.35 !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
}

div.wpforms-container-full .moz-file-hint,
.moz-cons-form .moz-file-hint,
.moz-file-hint {
	font-family: 'Inter', -apple-system, sans-serif !important;
	font-size: 11px !important;
	letter-spacing: 0.02em !important;
	color: var(--moz-earth-600, #685A48) !important;
	line-height: 1.4 !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

div.wpforms-container-full .moz-file-badge,
.moz-cons-form .moz-file-badge,
.moz-file-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-family: 'Inter', -apple-system, sans-serif !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	padding: 10px 18px !important;
	background: var(--moz-earth-900, #14120E) !important;
	color: #FAF8F5 !important;
	border: 1px solid var(--moz-earth-900, #14120E) !important;
	border-radius: 2px !important;
	flex-shrink: 0 !important;
	white-space: nowrap !important;
	transition: all 0.25s ease !important;
}

div.wpforms-container-full .moz-file-dropzone:hover .moz-file-badge,
.moz-cons-form .moz-file-dropzone:hover .moz-file-badge {
	background: var(--moz-sienna-500, #A0522D) !important;
	border-color: var(--moz-sienna-500, #A0522D) !important;
	color: #FFFFFF !important;
}

div.wpforms-container-full .moz-file-selected,
.moz-cons-form .moz-file-selected,
.moz-file-selected {
	display: none !important;
	align-items: center !important;
	justify-content: space-between !important;
	padding: 12px 18px !important;
	background: rgba(20, 18, 14, 0.05) !important;
	border: 1px solid var(--moz-sienna-500, #A0522D) !important;
	border-radius: 2px !important;
	margin-top: 10px !important;
	box-sizing: border-box !important;
	width: 100% !important;
}

div.wpforms-container-full .moz-file-selected.is-active,
.moz-cons-form .moz-file-selected.is-active,
.moz-file-selected.is-active,
div.wpforms-container-full .moz-file-upload-wrap.has-file .moz-file-selected,
.moz-cons-form .moz-file-upload-wrap.has-file .moz-file-selected,
.moz-file-upload-wrap.has-file .moz-file-selected {
	display: flex !important;
}

div.wpforms-container-full .moz-file-selected-name,
.moz-cons-form .moz-file-selected-name,
.moz-file-selected-name {
	font-family: 'Inter', -apple-system, sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.04em !important;
	color: var(--moz-earth-900, #14120E) !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
}

div.wpforms-container-full .moz-file-selected-name::before,
.moz-file-selected-name::before {
	content: '✓' !important;
	color: #2e7d32 !important;
	font-weight: bold !important;
	font-size: 14px !important;
}

div.wpforms-container-full .moz-file-remove-btn,
.moz-cons-form .moz-file-remove-btn,
.moz-file-remove-btn {
	background: transparent !important;
	border: none !important;
	font-size: 20px !important;
	line-height: 1 !important;
	color: var(--moz-earth-600, #685A48) !important;
	cursor: pointer !important;
	padding: 0 4px !important;
	transition: color 0.2s ease !important;
}

div.wpforms-container-full .moz-file-remove-btn:hover,
.moz-file-remove-btn:hover {
	color: #d32f2f !important;
}

/* ==========================================================================
   Mobile & Narrow Viewport Adjustments for File Dropzone
   ========================================================================== */
@media (max-width: 640px) {
	.moz-cons-form {
		padding: 24px 16px !important;
	}

	div.wpforms-container-full .moz-file-dropzone,
	.moz-cons-form .moz-file-dropzone,
	.moz-file-dropzone {
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		text-align: center !important;
		padding: 18px 16px !important;
		gap: 10px !important;
	}

	div.wpforms-container-full .moz-file-icon,
	.moz-cons-form .moz-file-icon,
	.moz-file-icon {
		margin: 0 auto !important;
		width: 44px !important;
		height: 44px !important;
	}

	div.wpforms-container-full .moz-file-info,
	.moz-cons-form .moz-file-info,
	.moz-file-info {
		align-items: center !important;
		text-align: center !important;
		width: 100% !important;
		min-width: 0 !important;
		flex: 0 0 auto !important;
		gap: 4px !important;
	}

	div.wpforms-container-full .moz-file-title,
	.moz-cons-form .moz-file-title,
	.moz-file-title {
		text-align: center !important;
		font-size: 12.5px !important;
		line-height: 1.4 !important;
		letter-spacing: 0.06em !important;
		word-break: normal !important;
		overflow-wrap: normal !important;
		white-space: normal !important;
		hyphens: none !important;
	}

	div.wpforms-container-full .moz-file-hint,
	.moz-cons-form .moz-file-hint,
	.moz-file-hint {
		text-align: center !important;
		font-size: 11px !important;
		line-height: 1.45 !important;
		max-width: 290px !important;
		margin: 0 auto !important;
		word-break: normal !important;
		overflow-wrap: normal !important;
	}

	div.wpforms-container-full .moz-file-badge,
	.moz-cons-form .moz-file-badge,
	.moz-file-badge {
		margin-top: 4px !important;
		padding: 10px 24px !important;
		font-size: 11px !important;
		letter-spacing: 0.12em !important;
		width: auto !important;
		min-width: 140px !important;
		justify-content: center !important;
		text-align: center !important;
	}

	div.wpforms-container-full .moz-file-selected,
	.moz-cons-form .moz-file-selected,
	.moz-file-selected {
		padding: 10px 14px !important;
		font-size: 11.5px !important;
	}
}


.moz-icon-open svg {
	width: 30px !important;
	height: 30px !important;
}

.moz-icon-close svg {
	width: 22px !important;
	height: 22px !important;
}


/* ==========================================================================
   Static Sofas Showcase Page (/sofas) - 3 Cards Per Row
   ========================================================================== */
.moz-static-sofas-container {
	width: 100%;
}

.moz-static-toolbar-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 18px var(--moz-gutter, 32px);
	border-bottom: 1px solid var(--moz-earth-200, #EAE6DF);
	max-width: var(--moz-container, 1440px);
	margin: 0 auto;
	box-sizing: border-box;
}

.moz-static-subtitle {
	font-size: 11px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--moz-earth-500, #8A7A64);
	font-weight: 500;
}

.moz-static-count {
	font-size: 11px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--moz-earth-900, #14120E);
	font-weight: 600;
}

.moz-static-sofas-wrap {
	max-width: var(--moz-container, 1440px);
	width: 100%;
	margin: 0 auto;
	padding: 56px var(--moz-gutter, 32px) 100px;
	box-sizing: border-box;
}

.moz-static-sofas-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 48px 30px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.moz-static-sofa-item {
	list-style: none;
	margin: 0;
	padding: 0;
}

.moz-static-sofa-item .moz-product-card {
	padding-bottom: 24px;
}

.moz-static-sofa-item .moz-card-title {
	font-size: 21px;
}

.moz-static-sofa-item .moz-card-price-value {
	font-size: 16px;
}

@media (max-width: 1080px) {
	.moz-static-sofas-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 40px 24px;
	}
}

@media (max-width: 640px) {
	.moz-static-toolbar-inner {
		flex-direction: column;
		align-items: flex-start;
		gap: 6px;
		padding: 14px var(--moz-gutter, 20px);
	}
	.moz-static-sofas-wrap {
		padding: 36px var(--moz-gutter, 20px) 72px;
	}
	.moz-static-sofas-grid {
		grid-template-columns: 1fr;
		gap: 36px;
	}
	.moz-static-sofa-item .moz-card-title {
		font-size: 22px;
	}
}

/* ==========================================================================
   BANGALORE-ONLY DELIVERY & OUT-OF-BANGALORE ORDER INQUIRY
   ========================================================================== */

/* 1. Single Product Interactive Pincode Delivery Checker */
.moz-pincode-checker {
	margin: 22px 0 26px 0;
	background: #FAF8F5;
	border: 1px solid #EAE4DC;
	border-radius: 8px;
	padding: 18px 20px;
	box-sizing: border-box;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.moz-pincode-checker:focus-within {
	border-color: #D5C7B0;
	box-shadow: 0 4px 14px rgba(20, 18, 14, 0.04);
}

.moz-pincode-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
}

.moz-pincode-title-wrap {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #14120E;
}

.moz-pincode-title-wrap svg {
	color: #A0522D;
	flex-shrink: 0;
}

.moz-pincode-title {
	font-family: inherit;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #14120E;
}

.moz-pincode-tag {
	display: inline-flex;
	align-items: center;
	padding: 3px 9px;
	background: rgba(160, 82, 45, 0.08);
	color: #A0522D;
	border-radius: 20px;
	font-size: 10.5px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.moz-pincode-form-row {
	margin-bottom: 14px;
}

.moz-pincode-input-wrap {
	display: flex;
	align-items: center;
	gap: 8px;
}

.moz-pincode-input {
	flex: 1;
	height: 42px;
	padding: 0 14px;
	background: #FFFFFF;
	border: 1px solid #D8CFBE;
	border-radius: 4px;
	font-family: inherit;
	font-size: 13.5px;
	letter-spacing: 0.04em;
	font-weight: 500;
	color: #14120E;
	outline: none;
	transition: all 0.2s ease;
	box-sizing: border-box;
}

.moz-pincode-input::placeholder {
	color: #9C9385;
	font-weight: 400;
	font-size: 13px;
}

.moz-pincode-input:focus {
	border-color: #A0522D;
	box-shadow: 0 0 0 2px rgba(160, 82, 45, 0.12);
}

.moz-pincode-btn {
	height: 42px;
	padding: 0 20px;
	background: #14120E;
	color: #FAF8F5;
	border: 1px solid #14120E;
	border-radius: 4px;
	font-family: inherit;
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	cursor: pointer;
	white-space: nowrap;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.moz-pincode-btn:hover {
	background: #A0522D;
	border-color: #A0522D;
	color: #FFFFFF;
}

.moz-pincode-error {
	margin-top: 6px;
	font-size: 12px;
	color: #C0392B;
	font-weight: 500;
}

.moz-pincode-result {
	border-top: 1px solid #EAE4DC;
	padding-top: 14px;
}

.moz-pincode-status-header {
	margin-bottom: 8px;
}

.moz-pincode-status-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 10px;
	border-radius: 4px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.02em;
}

.moz-pincode-status-badge.is-success {
	background: #E8F5E9;
	color: #2E7D32;
}

.moz-pincode-status-badge.is-warning {
	background: #FFF3E0;
	color: #D35400;
}

.moz-pincode-time-box {
	display: flex;
	align-items: baseline;
	gap: 8px;
	margin-bottom: 8px;
	font-size: 14px;
	color: #14120E;
}

.moz-pincode-time-label {
	font-weight: 600;
	color: #685A48;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.moz-pincode-time-val {
	font-size: 15px;
	font-weight: 700;
	color: #14120E;
}

.moz-pincode-city-tag {
	font-size: 12.5px;
	color: #8A7A64;
	font-weight: 400;
}

.moz-pincode-perks {
	list-style: none;
	padding: 0;
	margin: 10px 0 0 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.moz-pincode-perks li {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 12.5px;
	color: #554D43;
	line-height: 1.4;
}

.moz-pincode-perks li svg {
	color: #2E7D32;
	flex-shrink: 0;
}

.moz-pincode-out-desc {
	font-size: 13px;
	color: #554D43;
	line-height: 1.5;
	margin: 8px 0 14px 0;
}

.moz-pincode-out-desc strong {
	color: #14120E;
}

.moz-pincode-hint-text {
	font-size: 12.5px;
	color: #7A6F60;
	margin: 4px 0 0 0;
	line-height: 1.45;
}

.moz-pincode-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 12px;
}

.moz-pincode-action-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 9px 16px;
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	border-radius: 4px;
	cursor: pointer;
	text-decoration: none;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
	border: 1px solid transparent;
}

.moz-pincode-action-btn.is-filled {
	background: #14120E;
	color: #FAF8F5;
	border-color: #14120E;
}

.moz-pincode-action-btn.is-filled:hover {
	background: #A0522D;
	border-color: #A0522D;
	color: #FFFFFF;
	transform: translateY(-1px);
	box-shadow: 0 3px 10px rgba(160, 82, 45, 0.25);
}

.moz-pincode-action-btn.is-outline {
	background: transparent;
	color: #14120E;
	border-color: #D5C7B0;
}

.moz-pincode-action-btn.is-outline:hover {
	border-color: #14120E;
	background: #F0EAE1;
}

@media (max-width: 600px) {
	.moz-pincode-input-wrap {
		flex-direction: column;
		align-items: stretch;
	}
	.moz-pincode-btn {
		width: 100%;
	}
	.moz-pincode-actions {
		flex-direction: column;
	}
	.moz-pincode-action-btn {
		width: 100%;
		text-align: center;
	}
}

/* Legacy wrapper fallback */
.moz-product-delivery-badge {
	margin: 22px 0 26px 0;
	background: #FAF8F5;
	border: 1px solid #EAE4DC;
	border-radius: 6px;
	padding: 18px 20px;
	box-sizing: border-box;
}

.moz-prod-deliv-row {
	display: flex;
	align-items: center;
	gap: 14px;
}

.moz-prod-deliv-bangalore {
	border-bottom: 1px dashed #E2D9CE;
	padding-bottom: 14px;
	margin-bottom: 14px;
}

.moz-prod-deliv-icon {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: #F0EAE1;
	color: #A0522D;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.moz-prod-deliv-icon-out {
	background: #F6ECE6;
	color: #8D5B4C;
}

.moz-prod-deliv-info {
	flex: 1;
	min-width: 0;
}

.moz-prod-deliv-heading {
	display: block;
	font-family: var(--font-sans, inherit);
	font-size: 13.5px;
	font-weight: 600;
	letter-spacing: 0.03em;
	color: #14120E;
	text-transform: uppercase;
}

.moz-prod-deliv-sub {
	display: block;
	font-size: 12.5px;
	color: #6C6257;
	line-height: 1.45;
	margin-top: 3px;
}

.moz-btn-contact-order {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: #14120E;
	color: #FAF8F5;
	font-family: inherit;
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 9px 18px;
	border: 1px solid #14120E;
	border-radius: 3px;
	cursor: pointer;
	white-space: nowrap;
	text-decoration: none;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
	box-shadow: 0 1px 3px rgba(0,0,0,0.08);
	margin-top: 2px;
}

.moz-btn-contact-order:hover {
	background: #A0522D;
	border-color: #A0522D;
	color: #FFFFFF;
	transform: translateY(-1px);
	box-shadow: 0 3px 10px rgba(160, 82, 45, 0.25);
}

/* 2. Cart Delivery Card */
.moz-cart-delivery-card {
	background: #FAF8F5;
	border: 1px solid #EAE4DC;
	border-radius: 6px;
	padding: 16px 20px;
	margin-bottom: 24px;
	box-sizing: border-box;
}

.moz-cart-deliv-header {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #A0522D;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.moz-cart-deliv-text {
	font-size: 13px;
	color: #554D43;
	margin: 6px 0 0 0;
	line-height: 1.5;
}

.moz-btn-contact-order-text {
	background: none;
	border: none;
	color: #A0522D;
	font-weight: 600;
	text-decoration: underline;
	cursor: pointer;
	padding: 0 4px;
	font-family: inherit;
	font-size: inherit;
}

.moz-btn-contact-order-text:hover {
	color: #14120E;
}

/* 3. Checkout Real-Time Delivery Status Card */
.moz-checkout-delivery-card {
	margin: 20px 0 24px 0;
	border-radius: 6px;
	padding: 18px 22px;
	box-sizing: border-box;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.moz-deliv-card-header {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.moz-deliv-card-icon {
	flex-shrink: 0;
	margin-top: 2px;
}

.moz-deliv-card-title {
	font-family: var(--font-sans, inherit);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	display: block;
}

.moz-deliv-card-desc {
	font-size: 13px;
	line-height: 1.5;
	margin: 4px 0 0 0;
}

.moz-checkout-delivery-card.is-bangalore {
	background: #F3F8F4;
	border: 1px solid #B8DCBD;
}

.moz-checkout-delivery-card.is-bangalore .moz-deliv-card-icon {
	color: #2D6A4F;
}

.moz-checkout-delivery-card.is-bangalore .moz-deliv-card-title {
	color: #1B4332;
}

.moz-checkout-delivery-card.is-bangalore .moz-deliv-card-desc {
	color: #2D6A4F;
}

.moz-checkout-delivery-card.is-out-of-bangalore {
	background: #FFF7F2;
	border: 1px solid #F0C4A4;
}

.moz-checkout-delivery-card.is-out-of-bangalore .moz-deliv-card-icon {
	color: #C85A17;
}

.moz-checkout-delivery-card.is-out-of-bangalore .moz-deliv-card-title {
	color: #8B3A08;
}

.moz-checkout-delivery-card.is-out-of-bangalore .moz-deliv-card-desc {
	color: #74421E;
	margin-bottom: 12px;
}

.moz-deliv-card-action {
	margin-top: 12px;
}

.moz-checkout-contact-btn {
	background: #A0522D;
	border-color: #A0522D;
	color: #FFFFFF;
	padding: 10px 22px;
	font-size: 12px;
	box-shadow: 0 2px 8px rgba(160, 82, 45, 0.25);
}

.moz-checkout-contact-btn:hover {
	background: #843E1D;
	border-color: #843E1D;
}

.moz-checkout-delivery-card.is-neutral,
.moz-checkout-delivery-card.is-unverified {
	background: #FAF8F5;
	border: 1px solid #EAE4DC;
}

.moz-checkout-delivery-card.is-neutral .moz-deliv-card-icon,
.moz-checkout-delivery-card.is-unverified .moz-deliv-card-icon {
	color: #A0522D;
}

.moz-checkout-delivery-card.is-neutral .moz-deliv-card-title,
.moz-checkout-delivery-card.is-unverified .moz-deliv-card-title {
	color: #14120E;
}

.moz-checkout-delivery-card.is-neutral .moz-deliv-card-desc,
.moz-checkout-delivery-card.is-unverified .moz-deliv-card-desc {
	color: #6C6257;
}

.moz-link-contact {
	background: none;
	border: none;
	color: #A0522D;
	font-weight: 600;
	text-decoration: underline;
	cursor: pointer;
	padding: 0;
	font-family: inherit;
	font-size: inherit;
}

/* Notice button styling inside WooCommerce errors */
.woocommerce-error .moz-error-contact-btn,
.moz-error-contact-btn {
	display: inline-flex;
	align-items: center;
	margin-left: 8px;
	background: #A0522D;
	color: #FFFFFF;
	font-family: inherit;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	padding: 5px 12px;
	border: none;
	border-radius: 3px;
	cursor: pointer;
	vertical-align: middle;
	text-decoration: none;
}

.woocommerce-error .moz-error-contact-btn:hover,
.moz-error-contact-btn:hover {
	background: #7E3F20;
}

@media (max-width: 640px) {
	.moz-prod-deliv-outstation {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}
	.moz-prod-deliv-outstation .moz-btn-contact-order {
		width: 100%;
		justify-content: center;
	}
	.moz-checkout-delivery-card {
		padding: 16px;
	}
	.moz-checkout-contact-btn {
		width: 100%;
		justify-content: center;
	}
}

/* ==========================================================================
   ATELIER PRODUCTION & WHITE-GLOVE SHIPPING TRACKER & VIEW ORDER
   ========================================================================== */

/* Status Badges in Tables & Headers */
.moz-order-status-col {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.moz-order-status-sub {
	font-size: 11px;
	color: #8A7A64;
	letter-spacing: 0.02em;
}

.moz-atelier-status-badge {
	display: inline-flex;
	align-items: center;
	padding: 4px 10px;
	border-radius: 4px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	line-height: 1.3;
	white-space: nowrap;
}

.moz-atelier-status-confirmed {
	background: #EFECE7;
	color: #4A4036;
	border: 1px solid #DDD6CB;
}

.moz-atelier-status-making_started {
	background: #FAF0EB;
	color: #A0522D;
	border: 1px solid #ECCDC0;
}

.moz-atelier-status-upholstery_polishing {
	background: #FCF4EB;
	color: #B86B35;
	border: 1px solid #F2DEC9;
}

.moz-atelier-status-quality_check {
	background: #EDF5FA;
	color: #2A6F97;
	border: 1px solid #CDE2EE;
}

.moz-atelier-status-shipping {
	background: #EAF0F8;
	color: #1D3557;
	border: 1px solid #C7D7EC;
}

.moz-atelier-status-delivered {
	background: #EDF7F1;
	color: #2D6A4F;
	border: 1px solid #C4E4D0;
}

/* Master Tracker Card */
.moz-atelier-tracker-card {
	background: #FFFFFF;
	border: 1px solid #EAE4DC;
	border-radius: 8px;
	padding: 28px 32px;
	margin: 24px 0 36px 0;
	box-shadow: 0 4px 20px rgba(0,0,0,0.03);
	box-sizing: border-box;
}

.moz-tracker-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 16px;
	padding-bottom: 24px;
	border-bottom: 1px solid #F0ECE6;
	margin-bottom: 28px;
}

.moz-tracker-eyebrow {
	display: block;
	font-size: 11px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #A0522D;
	font-weight: 600;
	margin-bottom: 4px;
}

.moz-tracker-title {
	font-family: var(--font-serif, "Playfair Display", Georgia, serif);
	font-size: 22px;
	font-weight: 400;
	color: #14120E;
	margin: 0;
}

/* Horizontal Timeline */
.moz-tracker-timeline {
	position: relative;
	margin: 10px 0 32px 0;
	padding: 0 10px;
}

.moz-timeline-track {
	position: absolute;
	top: 18px;
	left: 36px;
	right: 36px;
	height: 3px;
	background: #EAE5DE;
	z-index: 1;
}

.moz-timeline-progress {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	background: #A0522D;
	transition: width 0.4s ease;
}

.moz-timeline-steps-grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	position: relative;
	z-index: 2;
	gap: 8px;
}

.moz-timeline-step {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.moz-step-circle {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 600;
	position: relative;
	transition: all 0.3s ease;
	background: #FFFFFF;
}

.moz-timeline-step.is-completed .moz-step-circle {
	background: #2D6A4F;
	color: #FFFFFF;
	box-shadow: 0 2px 6px rgba(45, 106, 79, 0.25);
}

.moz-timeline-step.is-active .moz-step-circle {
	background: #A0522D;
	color: #FFFFFF;
	box-shadow: 0 0 0 4px rgba(160, 82, 45, 0.18), 0 3px 10px rgba(160, 82, 45, 0.3);
}

.moz-timeline-step.is-upcoming .moz-step-circle {
	background: #FAF8F5;
	border: 2px solid #DCD5CB;
	color: #8A7A64;
}

.moz-step-pulse {
	position: absolute;
	top: -4px;
	left: -4px;
	right: -4px;
	bottom: -4px;
	border-radius: 50%;
	border: 2px solid rgba(160, 82, 45, 0.4);
	animation: mozPulse 2s infinite cubic-bezier(0.24, 0, 0.38, 1);
}

@keyframes mozPulse {
	0% {
		transform: scale(0.95);
		opacity: 0.8;
	}
	70% {
		transform: scale(1.3);
		opacity: 0;
	}
	100% {
		transform: scale(1.3);
		opacity: 0;
	}
}

.moz-step-name {
	font-size: 11.5px;
	line-height: 1.35;
	color: #6C6257;
	margin-top: 10px;
	font-weight: 500;
	max-width: 110px;
}

.moz-timeline-step.is-active .moz-step-name {
	color: #14120E;
	font-weight: 700;
}

.moz-timeline-step.is-completed .moz-step-name {
	color: #2D6A4F;
	font-weight: 600;
}

/* Status Box Inner */
.moz-tracker-status-box {
	background: #FAF8F5;
	border: 1px solid #EAE4DC;
	border-radius: 6px;
	padding: 22px 26px;
}

.moz-status-box-header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 8px;
}

.moz-status-step-pill {
	background: #A0522D;
	color: #FFFFFF;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 3px 8px;
	border-radius: 3px;
}

.moz-status-main-heading {
	margin: 0;
	font-size: 16px;
	font-weight: 600;
	color: #14120E;
}

.moz-status-main-desc {
	font-size: 13.5px;
	line-height: 1.6;
	color: #4A4036;
	margin: 0 0 16px 0;
}

.moz-status-meta-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	padding: 14px 0;
	border-top: 1px solid #EBE4DB;
	border-bottom: 1px solid #EBE4DB;
	margin-bottom: 18px;
}

.moz-status-meta-item {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
}

.moz-meta-label {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #8A7A64;
	font-weight: 500;
}

.moz-meta-val {
	color: #14120E;
	font-weight: 600;
}

.moz-tracker-actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.moz-btn-tracker-wa {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #25D366;
	color: #FFFFFF;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	padding: 9px 18px;
	border-radius: 4px;
	text-decoration: none;
	transition: all 0.2s ease;
}

.moz-btn-tracker-wa:hover {
	background: #1EBE5D;
	color: #FFFFFF;
	transform: translateY(-1px);
	box-shadow: 0 3px 10px rgba(37, 211, 102, 0.3);
}

.moz-btn-tracker-consult {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #14120E;
	color: #FAF8F5;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	padding: 9px 18px;
	border-radius: 4px;
	text-decoration: none;
	cursor: pointer;
	border: none;
	transition: all 0.2s ease;
}

.moz-btn-tracker-consult:hover {
	background: #A0522D;
	color: #FFFFFF;
	transform: translateY(-1px);
}

/* View Order Page Specifics */
.moz-view-order-page {
	padding: 10px 0 40px;
}

.moz-view-order-toolbar {
	margin-bottom: 20px;
}

.moz-view-order-toolbar .moz-back-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #8A7A64;
	text-decoration: none;
	font-weight: 600;
	transition: color 0.2s ease;
}

.moz-view-order-toolbar .moz-back-link:hover {
	color: #A0522D;
}

.moz-view-order-title {
	font-family: var(--font-serif, "Playfair Display", Georgia, serif);
	font-size: 28px;
	font-weight: 400;
	color: #14120E;
	margin: 4px 0 6px;
}

.moz-view-order-meta {
	font-size: 13.5px;
	color: #6C6257;
	margin: 0;
}

.moz-view-order-section {
	background: #FFFFFF;
	border: 1px solid #EAE4DC;
	border-radius: 8px;
	padding: 28px 32px;
	margin-bottom: 28px;
	box-shadow: 0 2px 10px rgba(0,0,0,0.02);
}

.moz-view-order-section-title {
	font-family: var(--font-serif, "Playfair Display", Georgia, serif);
	font-size: 20px;
	font-weight: 400;
	color: #14120E;
	margin: 0 0 20px;
	padding-bottom: 14px;
	border-bottom: 1px solid #F0ECE6;
}

.moz-order-items-table {
	width: 100%;
	border-collapse: collapse;
}

.moz-order-items-table th {
	font-size: 11px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #8A7A64;
	font-weight: 600;
	padding: 10px 14px;
	border-bottom: 1px solid #EAE4DC;
	text-align: left;
}

.moz-order-item-row td {
	padding: 18px 14px;
	border-bottom: 1px solid #F2EDE6;
	vertical-align: top;
}

.moz-order-item-main {
	display: flex;
	gap: 16px;
	align-items: flex-start;
}

.moz-order-item-thumb {
	width: 64px;
	height: 64px;
	object-fit: cover;
	border-radius: 4px;
	border: 1px solid #EAE4DC;
	background: #FAF8F5;
}

.moz-order-item-name {
	font-size: 14.5px;
	font-weight: 600;
	margin: 0 0 6px;
	color: #14120E;
}

.moz-order-item-name a {
	color: #14120E;
	text-decoration: none;
}

.moz-order-item-name a:hover {
	color: #A0522D;
}

.moz-order-item-specs {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 12px;
	color: #6C6257;
	line-height: 1.5;
}

.moz-spec-label {
	font-weight: 600;
	color: #4A4036;
}

.moz-order-item-qty {
	font-size: 13.5px;
	font-weight: 600;
	color: #6C6257;
}

.moz-order-item-total {
	font-size: 14.5px;
	font-weight: 600;
	color: #14120E;
}

.moz-order-total-row th {
	padding: 10px 14px;
	font-size: 13px;
	font-weight: 500;
	color: #554D43;
	border: none;
	text-align: right;
}

.moz-order-total-row td {
	padding: 10px 14px;
	font-size: 14px;
	font-weight: 600;
	color: #14120E;
	border: none;
}

.moz-total-order_total th,
.moz-total-order_total td {
	font-size: 16px;
	font-weight: 700;
	color: #14120E;
	border-top: 1px solid #EAE4DC;
	padding-top: 16px;
}

.moz-view-order-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
	margin-bottom: 28px;
}

.moz-view-order-card {
	background: #FAF8F5;
	border: 1px solid #EAE4DC;
	border-radius: 8px;
	padding: 24px 28px;
}

.moz-card-header-icon {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #A0522D;
	margin-bottom: 12px;
}

.moz-card-heading {
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #14120E;
	margin: 0;
}

.moz-view-order-address {
	font-style: normal;
	font-size: 13.5px;
	line-height: 1.6;
	color: #554D43;
}

.moz-address-phone,
.moz-address-email {
	margin: 4px 0 0;
	font-size: 13px;
	color: #776E65;
}

/* Responsive Mobile Rules for Tracker */
@media (max-width: 768px) {
	.moz-atelier-tracker-card {
		padding: 20px 16px;
	}
	.moz-tracker-timeline {
		padding: 0;
	}
	.moz-timeline-track {
		display: none;
	}
	.moz-timeline-steps-grid {
		display: flex;
		flex-direction: column;
		gap: 14px;
		align-items: flex-start;
		position: relative;
		padding-left: 20px;
	}
	.moz-timeline-steps-grid::before {
		content: '';
		position: absolute;
		top: 16px;
		bottom: 16px;
		left: 36px;
		width: 2px;
		background: #EAE4DC;
	}
	.moz-timeline-step {
		flex-direction: row;
		gap: 12px;
		align-items: center;
		text-align: left;
	}
	.moz-step-name {
		margin-top: 0;
		max-width: none;
		font-size: 12.5px;
	}
	.moz-tracker-status-box {
		padding: 16px;
	}
	.moz-status-meta-grid {
		flex-direction: column;
		gap: 10px;
	}
	.moz-tracker-actions a,
	.moz-tracker-actions button {
		width: 100%;
		justify-content: center;
	}
	.moz-view-order-grid {
		grid-template-columns: 1fr;
	}
	.moz-view-order-section {
		padding: 20px 16px;
	}
	.moz-order-item-main {
		flex-direction: column;
		gap: 10px;
	}
}

/* Replacement Primary Contact Button for Out of Bangalore Checkout */
.moz-checkout-main-action-btn,
button.moz-checkout-main-action-btn {
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
	padding: 18px 24px !important;
	background: #14120E !important;
	color: #FAF8F5 !important;
	font-family: inherit !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	border: 1px solid #14120E !important;
	border-radius: 3px !important;
	text-align: center !important;
	cursor: pointer !important;
	margin-top: 16px !important;
	margin-bottom: 8px !important;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
	box-shadow: 0 4px 14px rgba(0,0,0,0.12) !important;
	line-height: 1.4 !important;
}

.moz-checkout-main-action-btn:hover,
button.moz-checkout-main-action-btn:hover {
	background: #A0522D !important;
	border-color: #A0522D !important;
	color: #FFFFFF !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 6px 20px rgba(160, 82, 45, 0.3) !important;
}

/* ============================================================
   Policy & Governance Pages (Privacy, Return, Maintenance)
   ============================================================ */
.moz-policy-main {
	background: #FAF8F5;
	min-height: 100vh;
	padding-top: var(--moz-main-offset, 120px);
	padding-bottom: 96px;
}

.moz-policy-container {
	max-width: 1040px;
	margin: 0 auto;
	padding: 32px var(--moz-gutter, 24px) 64px;
}

.moz-policy-hero {
	text-align: center;
	margin-bottom: 40px;
	padding: 48px 32px;
	background: #14120E;
	border-radius: 4px;
	color: #F4EFE6;
	box-shadow: 0 12px 32px rgba(20, 18, 14, 0.2);
}

.moz-policy-eyebrow {
	font-size: 11px;
	letter-spacing: 0.25em;
	text-transform: uppercase;
	color: #A0522D;
	font-weight: 600;
	margin-bottom: 12px;
}

.moz-policy-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(2.4rem, 4.5vw, 3.6rem);
	font-weight: 400;
	line-height: 1.1;
	color: #FFEACC;
	margin: 0 0 16px;
}

.moz-policy-subtitle {
	font-size: 15px;
	line-height: 1.65;
	color: #C2B8AA;
	max-width: 680px;
	margin: 0 auto 24px;
	font-weight: 300;
}

.moz-policy-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
	margin-bottom: 28px;
}

.moz-policy-meta-pill {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	padding: 4px 12px;
	background: rgba(255, 234, 204, 0.08);
	border: 1px solid rgba(255, 234, 204, 0.15);
	border-radius: 9999px;
	color: #FFEACC;
}

.moz-policy-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
	margin-top: 12px;
	padding-top: 24px;
	border-top: 1px solid rgba(255, 234, 204, 0.12);
}

.moz-policy-nav-link {
	display: inline-flex;
	align-items: center;
	padding: 10px 20px;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-weight: 600;
	border-radius: 2px;
	text-decoration: none;
	transition: all 0.3s ease;
	background: rgba(255, 255, 255, 0.06);
	color: #E6DFD5;
	border: 1px solid rgba(255, 255, 255, 0.12);
}

.moz-policy-nav-link:hover,
.moz-policy-nav-link.is-active {
	background: #A0522D;
	border-color: #A0522D;
	color: #FFFFFF;
	box-shadow: 0 4px 16px rgba(160, 82, 45, 0.4);
}

.moz-policy-content {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.moz-policy-card {
	background: #FFFFFF;
	border: 1px solid #E8E2D9;
	border-radius: 4px;
	padding: 40px 48px;
	box-shadow: 0 4px 20px rgba(20, 18, 14, 0.03);
}

@media (max-width: 768px) {
	.moz-policy-card {
		padding: 28px 20px;
	}
	.moz-policy-hero {
		padding: 36px 20px;
	}
}

.moz-policy-badge {
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #A0522D;
	margin-bottom: 8px;
}

.moz-policy-heading {
	font-family: 'Cormorant Garamond', serif;
	font-size: 26px;
	font-weight: 500;
	color: #14120E;
	margin: 0 0 16px;
}

.moz-policy-card p {
	font-size: 15px;
	line-height: 1.75;
	color: #4A443E;
	margin: 0 0 16px;
}

.moz-policy-card p:last-child {
	margin-bottom: 0;
}

.moz-policy-list {
	margin: 16px 0 20px;
	padding-left: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.moz-policy-list li {
	position: relative;
	padding-left: 24px;
	font-size: 14.5px;
	line-height: 1.7;
	color: #4A443E;
}

.moz-policy-list li::before {
	content: "";
	position: absolute;
	left: 4px;
	top: 9px;
	width: 6px;
	height: 6px;
	background: #A0522D;
	border-radius: 50%;
}

.moz-policy-list li strong {
	color: #14120E;
	font-weight: 600;
}

.moz-policy-highlight {
	background: #FDF9F3;
	border-left: 4px solid #A0522D;
	padding: 20px 24px;
	border-radius: 0 4px 4px 0;
	margin: 20px 0;
}

.moz-highlight-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 20px;
	font-weight: 600;
	color: #14120E;
	margin: 0 0 8px;
}

.moz-policy-cta {
	background: #14120E;
	color: #F4EFE6;
	border-radius: 4px;
	padding: 40px 48px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
	margin-top: 16px;
}

@media (max-width: 860px) {
	.moz-policy-cta {
		flex-direction: column;
		text-align: center;
		padding: 32px 20px;
	}
}

.moz-policy-cta-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 26px;
	font-weight: 400;
	color: #FFEACC;
	margin: 0 0 8px;
}

.moz-policy-cta-desc {
	font-size: 14px;
	color: #C2B8AA;
	margin: 0;
	max-width: 540px;
	line-height: 1.6;
}

.moz-policy-cta-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	flex-shrink: 0;
}

.moz-btn-cta {
	display: inline-block;
	background: #A0522D;
	color: #F4EFE6;
	border: 1px solid #A0522D;
	padding: 14px 24px;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.16em;
	font-weight: 600;
	border-radius: 2px;
	text-decoration: none;
	transition: all 0.3s ease;
	cursor: pointer;
}

.moz-btn-cta:hover {
	background: #853F1F;
	border-color: #853F1F;
	color: #FFFFFF;
	transform: translateY(-1px);
	box-shadow: 0 4px 16px rgba(160, 82, 45, 0.4);
}

.moz-btn-outline-cta {
	display: inline-block;
	background: transparent;
	color: #FFEACC;
	border: 1px solid rgba(255, 234, 204, 0.3);
	padding: 14px 24px;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.16em;
	font-weight: 600;
	border-radius: 2px;
	text-decoration: none;
	transition: all 0.3s ease;
}

.moz-btn-outline-cta:hover {
	border-color: #FFEACC;
	background: rgba(255, 234, 204, 0.1);
	color: #FFFFFF;
}

/* ============================================================
   Wishlist Grid & Card Styling
   ============================================================ */
.moz-wishlist-content-wrap {
	max-width: var(--moz-container, 1440px);
	margin: 0 auto;
	padding: 48px var(--moz-gutter, 32px) 80px;
}

.moz-wishlist-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
}

@media (min-width: 640px) {
	.moz-wishlist-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (min-width: 1024px) {
	.moz-wishlist-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

.moz-wishlist-card {
	background: #FFFFFF;
	border: 1px solid var(--moz-earth-200, #EADEC9);
	border-radius: 4px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: all 0.3s var(--moz-ease);
}

.moz-wishlist-card:hover {
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08);
	transform: translateY(-2px);
}

.moz-wishlist-img-wrap {
	position: relative;
	display: block;
	aspect-ratio: auto !important;
	height: auto !important;
	background: transparent;
	overflow: hidden;
}

.moz-wishlist-img-wrap img {
	width: 100% !important;
	height: auto !important;
	object-fit: contain !important;
	display: block;
	transition: transform 0.6s var(--moz-ease);
}

.moz-wishlist-card:hover .moz-wishlist-img-wrap img {
	transform: scale(1.04);
}

.moz-wishlist-card-body {
	padding: 20px;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	justify-content: space-between;
}

.moz-wishlist-card-title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 20px;
	font-weight: 500;
	color: var(--moz-earth-900, #14120E);
	margin: 0 0 8px;
	line-height: 1.3;
}

.moz-wishlist-card-title a {
	color: inherit;
	text-decoration: none;
}

.moz-wishlist-card-price {
	font-size: 15px;
	font-weight: 600;
	color: var(--moz-sienna-600, #8A3B14);
	margin-bottom: 16px;
}

.moz-wishlist-card-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding-top: 12px;
	border-top: 1px solid var(--moz-earth-100, #F4EFE6);
}

.moz-wishlist-remove-btn {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--moz-earth-100, #F4EFE6);
	border: none;
	color: var(--moz-earth-600, #685A48);
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s ease;
}

.moz-wishlist-remove-btn:hover {
	background: #FFECEC;
	color: #D32F2F;
}

.moz-wishlist-empty {
	text-align: center;
	padding: 80px 20px;
	max-width: 500px;
	margin: 0 auto;
}

.moz-wishlist-empty-icon {
	width: 72px;
	height: 72px;
	margin: 0 auto 20px;
	border-radius: 50%;
	background: var(--moz-earth-100, #F4EFE6);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--moz-earth-400, #8A7A64);
}

.moz-wishlist-empty h3 {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 28px;
	font-weight: 400;
	color: var(--moz-earth-900, #14120E);
	margin: 0 0 12px;
}

.moz-wishlist-empty p {
	font-size: 14px;
	color: var(--moz-earth-600, #685A48);
	margin: 0 0 24px;
	line-height: 1.6;
}

/* Wishlist Heart button active state */
[data-moz-wishlist-id].is-active svg {
	fill: #A0522D;
	stroke: #A0522D;
}

/* My Account Dashboard Account Details Info List */
.moz-dash-details-list {
	list-style: none !important;
	padding: 0 !important;
	margin: 8px 0 0 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
}

.moz-dash-details-list li {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	font-size: 12.5px !important;
	color: var(--moz-earth-600, #685A48) !important;
	border-bottom: 1px dashed #F0ECE6 !important;
	padding-bottom: 4px !important;
}

.moz-dash-details-list li:last-child {
	border-bottom: none !important;
	padding-bottom: 0 !important;
}

.moz-dash-details-label {
	font-weight: 600 !important;
	color: #14120E !important;
	font-size: 11px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
}

.moz-dash-details-val {
	color: #685A48 !important;
	max-width: 62% !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
	text-align: right !important;
	font-weight: 500 !important;
}

/* 3-column Form Grid */
.moz-form-grid-3 {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 16px !important;
	width: 100% !important;
}

@media (max-width: 768px) {
	.moz-form-grid-3 {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}
}

/* ============================================================
   Luxury First-Time Signup Welcome Modal
   ============================================================ */

.moz-welcome-popup-overlay {
	background: rgba(14, 12, 9, 0.84) !important;
	backdrop-filter: blur(12px) !important;
	-webkit-backdrop-filter: blur(12px) !important;
}

.moz-welcome-modal {
	background: linear-gradient(165deg, #1C1914 0%, #12100D 100%) !important;
	border: 1px solid rgba(212, 175, 55, 0.35) !important;
	box-shadow: 0 32px 90px rgba(0, 0, 0, 0.65), 0 0 0 1px rgba(255, 234, 204, 0.08) !important;
	border-radius: 6px !important;
	max-width: 620px !important;
	width: 100% !important;
	padding: 46px 40px 38px !important;
	position: relative !important;
	text-align: center !important;
	color: #F4EFE6 !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
}

.moz-welcome-modal::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 2px;
	background: linear-gradient(90deg, transparent, #D4AF37, #F5D77F, #D4AF37, transparent);
	opacity: 0.8;
}

.moz-welcome-close {
	position: absolute !important;
	top: 18px !important;
	right: 18px !important;
	background: rgba(255, 255, 255, 0.05) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 50% !important;
	width: 36px !important;
	height: 36px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #B09E83 !important;
	cursor: pointer !important;
	transition: all 0.25s ease !important;
	padding: 0 !important;
}

.moz-welcome-close:hover {
	background: rgba(255, 255, 255, 0.12) !important;
	color: #FFFFFF !important;
	transform: scale(1.06) !important;
	border-color: rgba(212, 175, 55, 0.4) !important;
}

.moz-welcome-crest {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: 20px;
}

.moz-welcome-crest-ring {
	margin-bottom: 12px;
	filter: drop-shadow(0 4px 12px rgba(212, 175, 55, 0.2));
	animation: mozCrestPulse 3s ease-in-out infinite alternate;
}

@keyframes mozCrestPulse {
	0% { transform: scale(1); filter: drop-shadow(0 4px 12px rgba(212, 175, 55, 0.2)); }
	100% { transform: scale(1.03); filter: drop-shadow(0 6px 18px rgba(212, 175, 55, 0.35)); }
}

.moz-welcome-house-tag {
	font-size: 11px;
	letter-spacing: 0.26em;
	text-transform: uppercase;
	color: #E2BC82;
	font-weight: 600;
	margin-bottom: 4px;
}

.moz-welcome-eyebrow {
	font-size: 9px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: #8C7D6B;
	font-weight: 500;
}

.moz-welcome-title {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-size: 33px !important;
	font-weight: 400 !important;
	line-height: 1.22 !important;
	color: #FFFFFF !important;
	margin: 0 0 6px 0 !important;
	letter-spacing: 0.01em !important;
}

.moz-welcome-name {
	color: #E5BE7A !important;
	font-style: italic !important;
	font-weight: 500 !important;
	display: inline-block !important;
}

.moz-welcome-ornament {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin: 14px 0 20px;
}

.moz-ornament-line {
	height: 1px;
	width: 50px;
	background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.45), transparent);
}

.moz-ornament-diamond {
	font-size: 8px;
	color: #D4AF37;
	opacity: 0.8;
}

.moz-welcome-prose-lead {
	font-size: 14.5px !important;
	line-height: 1.62 !important;
	color: #F0E6D8 !important;
	margin: 0 0 10px 0 !important;
	font-weight: 400 !important;
}

.moz-welcome-prose-sub {
	font-size: 13px !important;
	line-height: 1.65 !important;
	color: #9C8E7D !important;
	margin: 0 0 28px 0 !important;
}

.moz-welcome-privileges {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
	margin-bottom: 28px;
}

.moz-privilege-item {
	background: rgba(255, 255, 255, 0.025);
	border: 1px solid rgba(255, 255, 255, 0.07);
	border-radius: 4px;
	padding: 18px 12px;
	text-align: center;
	transition: all 0.3s var(--moz-ease);
}

.moz-privilege-item:hover {
	background: rgba(212, 175, 55, 0.05);
	border-color: rgba(212, 175, 55, 0.25);
	transform: translateY(-2px);
}

.moz-privilege-icon {
	margin-bottom: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.moz-privilege-title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 16px;
	font-weight: 600;
	color: #FFFFFF;
	margin: 0 0 6px 0;
	line-height: 1.25;
}

.moz-privilege-desc {
	font-size: 11px;
	line-height: 1.45;
	color: #8C7D6B;
	margin: 0;
}

.moz-welcome-actions {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
}

.moz-welcome-cta-btn {
	width: 100%;
	padding: 16px 32px;
	background: linear-gradient(135deg, #A0522D 0%, #853E1B 100%);
	border: 1px solid rgba(255, 234, 204, 0.25);
	color: #FFFFFF;
	font-size: 11.5px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-weight: 600;
	border-radius: 3px;
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow: 0 8px 24px rgba(160, 82, 45, 0.35);
}

.moz-welcome-cta-btn:hover {
	background: linear-gradient(135deg, #B56037 0%, #944621 100%);
	transform: translateY(-1px);
	box-shadow: 0 12px 32px rgba(160, 82, 45, 0.45);
	border-color: rgba(255, 234, 204, 0.4);
}

.moz-welcome-sub-link {
	font-size: 11.5px;
	letter-spacing: 0.1em;
	color: #B09E83;
	text-decoration: none;
	border-bottom: 1px solid rgba(176, 158, 131, 0.3);
	padding-bottom: 2px;
	transition: all 0.25s ease;
}

.moz-welcome-sub-link:hover {
	color: #FFFFFF;
	border-color: #FFFFFF;
}

@media (max-width: 640px) {
	.moz-welcome-modal {
		padding: 34px 20px 28px !important;
		margin: 16px !important;
	}

	.moz-welcome-title {
		font-size: 26px !important;
	}

	.moz-welcome-privileges {
		grid-template-columns: 1fr;
		gap: 10px;
		margin-bottom: 22px;
	}

	.moz-privilege-item {
		padding: 12px 14px;
		text-align: left;
		display: flex;
		align-items: flex-start;
		gap: 12px;
	}

	.moz-privilege-icon {
		margin-bottom: 0;
		flex-shrink: 0;
	}

	.moz-privilege-title {
		font-size: 15px;
		margin-bottom: 3px;
	}
}

/* ==========================================================================
   Order Received / Thank You Page - Atelier Luxury Edition
   ========================================================================== */

/* Main Page Container */
body.woocommerce-order-received,
body.woocommerce-checkout.woocommerce-order-received {
	background-color: #FAF8F5 !important;
}

body.woocommerce-order-received main.moz-main,
body.woocommerce-order-received .moz-main,
body.woocommerce-order-received .moz-checkout-main,
body.woocommerce-order-received .moz-thankyou-main,
body.woocommerce-order-received .moz-checkout-content,
body.woocommerce-order-received .moz-thankyou-content,
body.woocommerce-order-received .entry-content,
body.woocommerce-order-received .woocommerce,
body.woocommerce-order-received .woocommerce-order,
body.woocommerce-order-received main.wp-block-group,
body.woocommerce-order-received main,
.moz-thankyou-container {
	max-width: 980px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

body.woocommerce-order-received main.moz-main,
body.woocommerce-order-received .moz-main,
body.woocommerce-order-received .moz-checkout-main,
body.woocommerce-order-received .moz-thankyou-main,
body.woocommerce-order-received main.wp-block-group,
body.woocommerce-order-received main {
	padding: calc(var(--moz-main-offset, 145px) + 32px) 24px 120px !important;
}

/* Hide default page title on order received */
body.woocommerce-order-received .wp-block-post-title,
body.woocommerce-order-received .moz-banner-title,
body.woocommerce-order-received .moz-cat-banner {
	display: none !important;
}

/* 1. Thank You Header Banner */
.woocommerce-thankyou-order-received,
.wc-block-order-confirmation-status,
.wp-block-woocommerce-order-confirmation-status,
.moz-thankyou-hero,
body.woocommerce-order-received .woocommerce-notice--success {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 0 32px !important;
	color: #14120E !important;
	position: relative !important;
	text-align: left !important;
}

.moz-thankyou-eyebrow {
	display: block !important;
	font-family: var(--moz-font-sans, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif) !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	color: var(--moz-sienna-500, #A35C37) !important;
	margin-bottom: 12px !important;
}

.woocommerce-thankyou-order-received::before,
.wc-block-order-confirmation-status::before,
.wp-block-woocommerce-order-confirmation-status::before {
	content: none !important;
	display: none !important;
}

.woocommerce-thankyou-order-received,
.wc-block-order-confirmation-status h1,
.wp-block-woocommerce-order-confirmation-status h1,
.moz-thankyou-title {
	font-family: var(--moz-font-serif, 'Cormorant Garamond', Georgia, serif) !important;
	font-size: clamp(32px, 4.5vw, 44px) !important;
	font-weight: 400 !important;
	line-height: 1.15 !important;
	color: var(--moz-earth-900, #14120E) !important;
	margin: 0 0 8px !important;
	letter-spacing: -0.01em !important;
}

.wc-block-order-confirmation-status p,
.wp-block-woocommerce-order-confirmation-status p,
.moz-thankyou-desc {
	font-family: var(--moz-font-sans, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif) !important;
	font-size: 15px !important;
	line-height: 1.6 !important;
	color: var(--moz-earth-600, #6F675B) !important;
	margin: 0 0 28px !important;
}

.wc-block-order-confirmation-status-description {
	background: #FFFFFF !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-left: 3px solid var(--moz-sienna-500, #A35C37) !important;
	border-radius: 4px !important;
	padding: 18px 24px !important;
	margin: 0 0 32px !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	color: var(--moz-earth-700, #4A4036) !important;
	box-shadow: 0 2px 10px rgba(20, 18, 14, 0.02) !important;
}

.wc-block-order-confirmation-status-description a.button {
	display: inline-block !important;
	background: #14120E !important;
	color: #FFFFFF !important;
	padding: 8px 18px !important;
	font-size: 11px !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	border-radius: 2px !important;
	margin-left: 8px !important;
	text-decoration: none !important;
	vertical-align: middle !important;
	transition: background 0.2s ease !important;
}

.wc-block-order-confirmation-status-description a.button:hover {
	background: var(--moz-sienna-500, #A35C37) !important;
}

/* 2. Order Metadata Overview Grid */
.woocommerce-order-overview.woocommerce-thankyou-order-details,
ul.order_details,
.wc-block-order-confirmation-summary,
.wp-block-woocommerce-order-confirmation-summary,
.moz-thankyou-summary-grid {
	background: #FFFFFF !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-radius: 4px !important;
	padding: 26px 30px !important;
	margin: 0 0 36px !important;
	box-shadow: 0 4px 20px rgba(20, 18, 14, 0.03) !important;
	box-sizing: border-box !important;
}

.woocommerce-order-overview.woocommerce-thankyou-order-details,
ul.order_details,
ul.wc-block-order-confirmation-summary-list,
.moz-thankyou-summary-grid {
	display: grid !important;
	grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
	gap: 20px !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.woocommerce-order-overview.woocommerce-thankyou-order-details li,
ul.order_details li,
li.wc-block-order-confirmation-summary-list-item {
	float: none !important;
	margin: 0 !important;
	padding: 0 16px 0 0 !important;
	border: none !important;
	border-right: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
	box-sizing: border-box !important;
}

.woocommerce-order-overview.woocommerce-thankyou-order-details li:last-child,
ul.order_details li:last-child,
li.wc-block-order-confirmation-summary-list-item:last-child {
	border-right: none !important;
	padding-right: 0 !important;
}

.woocommerce-order-overview.woocommerce-thankyou-order-details li,
ul.order_details li,
.wc-block-order-confirmation-summary-list-item__key {
	font-family: var(--moz-font-sans, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif) !important;
	font-size: 11px !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	font-weight: 600 !important;
	color: var(--moz-earth-500, #8A7A64) !important;
	display: block !important;
}

.woocommerce-order-overview.woocommerce-thankyou-order-details li strong,
ul.order_details li strong,
.wc-block-order-confirmation-summary-list-item__value,
.moz-thankyou-summary-grid li strong {
	font-family: var(--moz-font-sans, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	color: var(--moz-earth-900, #14120E) !important;
	word-break: break-word !important;
	line-height: 1.4 !important;
	display: block !important;
}

.woocommerce-order-overview.woocommerce-thankyou-order-details li.total strong,
ul.order_details li.total strong,
li.wc-block-order-confirmation-summary-list-item:nth-child(3) .wc-block-order-confirmation-summary-list-item__value,
.moz-highlight-price {
	color: var(--moz-sienna-500, #A35C37) !important;
	font-size: 17px !important;
	font-weight: 700 !important;
}

/* 3. Section Headings */
body.woocommerce-order-received h2,
body.woocommerce-order-received h3,
body.woocommerce-order-received .wp-block-heading,
.wc-block-order-confirmation-totals-wrapper h2,
.wc-block-order-confirmation-address-wrapper h2,
.woocommerce-order-details__title,
.woocommerce-order-details h2,
.woocommerce-customer-details h2,
.woocommerce-column__title {
	font-family: var(--moz-font-serif, 'Cormorant Garamond', Georgia, serif) !important;
	font-size: 26px !important;
	font-weight: 400 !important;
	color: var(--moz-earth-900, #14120E) !important;
	letter-spacing: -0.01em !important;
	margin: 36px 0 16px !important;
	padding: 0 !important;
	border: none !important;
}

/* 4. Order Details Section & Line Items Table */
.woocommerce-order-details,
.wc-block-order-confirmation-totals,
.wp-block-woocommerce-order-confirmation-totals {
	background: #FFFFFF !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-radius: 4px !important;
	overflow: hidden !important;
	box-shadow: 0 4px 20px rgba(20, 18, 14, 0.03) !important;
	margin: 0 0 36px !important;
	box-sizing: border-box !important;
}

.woocommerce-order-details {
	padding: 32px 36px !important;
}

.woocommerce-order-details__title {
	margin: 0 0 20px !important;
	padding: 0 0 14px !important;
	border-bottom: 1px solid var(--moz-earth-200, #EAE6DF) !important;
}

table.woocommerce-table--order-details,
table.order_details,
table.wc-block-order-confirmation-totals__table {
	width: 100% !important;
	border-collapse: collapse !important;
	border: none !important;
	margin: 0 !important;
	font-size: 14px !important;
	background: transparent !important;
}

table.woocommerce-table--order-details thead th,
table.order_details thead th,
table.wc-block-order-confirmation-totals__table thead th {
	background: #FAF8F5 !important;
	padding: 16px 24px !important;
	font-family: var(--moz-font-sans, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif) !important;
	font-size: 11px !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	font-weight: 700 !important;
	color: var(--moz-earth-500, #8A7A64) !important;
	border: none !important;
	border-bottom: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	text-align: left !important;
}

table.woocommerce-table--order-details thead th:last-child,
table.order_details thead th:last-child,
table.wc-block-order-confirmation-totals__table thead th:last-child,
th.wc-block-order-confirmation-totals__total {
	text-align: right !important;
}

table.woocommerce-table--order-details tbody td,
table.order_details tbody td,
table.wc-block-order-confirmation-totals__table tbody td {
	padding: 22px 24px !important;
	border: none !important;
	border-bottom: 1px solid #F0ECE6 !important;
	vertical-align: top !important;
	color: var(--moz-earth-900, #14120E) !important;
	font-size: 15px !important;
	line-height: 1.5 !important;
}

table.woocommerce-table--order-details tbody td:last-child,
table.order_details tbody td:last-child,
table.wc-block-order-confirmation-totals__table tbody td:last-child,
td.wc-block-order-confirmation-totals__total {
	text-align: right !important;
	font-weight: 600 !important;
	white-space: nowrap !important;
}

table.woocommerce-table--order-details tbody tr:last-child td,
table.order_details tbody tr:last-child td {
	border-bottom: 1px solid var(--moz-earth-200, #EAE6DF) !important;
}

table.woocommerce-table--order-details .product-name a,
table.order_details .product-name a,
table.wc-block-order-confirmation-totals__table a {
	color: var(--moz-earth-900, #14120E) !important;
	text-decoration: none !important;
	font-weight: 600 !important;
	font-size: 15px !important;
	line-height: 1.4 !important;
	transition: color 0.2s var(--moz-ease) !important;
}

table.woocommerce-table--order-details .product-name a:hover,
table.order_details .product-name a:hover,
table.wc-block-order-confirmation-totals__table a:hover {
	color: var(--moz-sienna-500, #A35C37) !important;
}

table.woocommerce-table--order-details .product-quantity,
table.order_details .product-quantity,
table.wc-block-order-confirmation-totals__table .product-quantity {
	font-weight: 400 !important;
	color: var(--moz-earth-500, #8A7A64) !important;
	font-size: 13.5px !important;
	margin-left: 6px !important;
}

table.woocommerce-table--order-details ul.wc-item-meta,
table.order_details ul.wc-item-meta,
table.wc-block-order-confirmation-totals__table ul.wc-item-meta {
	list-style: none !important;
	margin: 8px 0 0 !important;
	padding: 0 !important;
	font-size: 12.5px !important;
	color: var(--moz-earth-600, #6F675B) !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 4px !important;
}

table.woocommerce-table--order-details ul.wc-item-meta li,
table.order_details ul.wc-item-meta li,
table.wc-block-order-confirmation-totals__table ul.wc-item-meta li {
	margin: 0 !important;
	padding: 0 !important;
}

table.woocommerce-table--order-details ul.wc-item-meta strong,
table.order_details ul.wc-item-meta strong,
table.wc-block-order-confirmation-totals__table ul.wc-item-meta strong {
	font-weight: 600 !important;
	color: var(--moz-earth-900, #14120E) !important;
}

/* Financial Footer Rows */
table.woocommerce-table--order-details tfoot th,
table.order_details tfoot th,
table.wc-block-order-confirmation-totals__table tfoot th {
	padding: 14px 24px !important;
	font-size: 13.5px !important;
	font-weight: 500 !important;
	color: var(--moz-earth-600, #6F675B) !important;
	border: none !important;
	border-bottom: 1px solid #F5F1EC !important;
	text-align: left !important;
	background: transparent !important;
}

table.woocommerce-table--order-details tfoot td,
table.order_details tfoot td,
table.wc-block-order-confirmation-totals__table tfoot td {
	padding: 14px 24px !important;
	font-size: 14.5px !important;
	font-weight: 600 !important;
	color: var(--moz-earth-900, #14120E) !important;
	border: none !important;
	border-bottom: 1px solid #F5F1EC !important;
	text-align: right !important;
	background: transparent !important;
	white-space: nowrap !important;
}

table.woocommerce-table--order-details tfoot tr:last-child th,
table.order_details tfoot tr:last-child th,
table.wc-block-order-confirmation-totals__table tfoot tr:last-child th {
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	color: var(--moz-earth-900, #14120E) !important;
	border-top: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-bottom: none !important;
	background: #FAF8F5 !important;
	padding: 18px 24px !important;
}

table.woocommerce-table--order-details tfoot tr:last-child td,
table.order_details tfoot tr:last-child td,
table.wc-block-order-confirmation-totals__table tfoot tr:last-child td {
	font-size: 18px !important;
	font-weight: 700 !important;
	color: var(--moz-sienna-500, #A35C37) !important;
	border-top: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-bottom: none !important;
	background: #FAF8F5 !important;
	padding: 18px 24px !important;
}

/* 5. Customer Details / Billing & Shipping Card */
.woocommerce-columns--addresses,
.wc-block-order-confirmation-address-wrapper {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
	gap: 24px !important;
	margin: 0 0 36px !important;
}

/* Hide empty Gutenberg column if shipping is absent */
.wc-block-order-confirmation-address-wrapper > .wp-block-column:not(:has(.wc-block-order-confirmation-billing-wrapper)):not(:has(.wc-block-order-confirmation-shipping-wrapper)) {
	display: none !important;
}

.wc-block-order-confirmation-address-wrapper > .wp-block-column {
	width: 100% !important;
	margin: 0 !important;
}

.woocommerce-customer-details,
.woocommerce-column--billing-address,
.woocommerce-column--shipping-address,
.wc-block-order-confirmation-billing-wrapper,
.wc-block-order-confirmation-shipping-wrapper {
	background: #FFFFFF !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-radius: 4px !important;
	padding: 26px 30px !important;
	box-shadow: 0 4px 20px rgba(20, 18, 14, 0.03) !important;
	box-sizing: border-box !important;
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
}

.wc-block-order-confirmation-billing-wrapper h2,
.wc-block-order-confirmation-shipping-wrapper h2,
.woocommerce-customer-details h2,
.woocommerce-customer-details .woocommerce-column__title {
	font-family: var(--moz-font-serif, 'Cormorant Garamond', Georgia, serif) !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	color: var(--moz-earth-900, #14120E) !important;
	margin: 0 0 16px !important;
	padding: 0 0 10px !important;
	border-bottom: 1px solid var(--moz-earth-100, #F3EFE9) !important;
	letter-spacing: -0.01em !important;
}

body.woocommerce-order-received address,
.wc-block-order-confirmation-address-wrapper address,
.woocommerce-customer-details address {
	font-style: normal !important;
	font-family: var(--moz-font-sans, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif) !important;
	font-size: 14.5px !important;
	line-height: 1.8 !important;
	color: var(--moz-earth-700, #4A4036) !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.woocommerce-customer-details--phone,
.woocommerce-customer-details--email {
	margin-top: 10px !important;
	font-weight: 500 !important;
	color: var(--moz-earth-900, #14120E) !important;
}

/* 6. Payment Instructions / Notice */
.wc-block-order-confirmation-additional-information {
	margin-top: 10px !important;
	margin-bottom: 36px !important;
}

body.woocommerce-order-received .woocommerce-order > p:not(.woocommerce-notice),
body.woocommerce-order-received .woocommerce-order > div > p:not(.woocommerce-notice),
.wc-block-order-confirmation-additional-information > p {
	background: #FFFFFF !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-left: 3px solid var(--moz-sienna-500, #A35C37) !important;
	border-radius: 4px !important;
	padding: 16px 22px !important;
	margin: 16px 0 28px !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	color: var(--moz-earth-800, #2C2620) !important;
	box-shadow: 0 2px 12px rgba(20, 18, 14, 0.02) !important;
	box-sizing: border-box !important;
}

/* 7. Footer CTA Navigation */
.moz-thankyou-footer-actions {
	display: flex !important;
	gap: 16px !important;
	align-items: center !important;
	margin-top: 36px !important;
	flex-wrap: wrap !important;
}

.moz-thankyou-footer-actions .moz-btn {
	padding: 16px 28px !important;
	font-size: 11px !important;
	letter-spacing: 0.16em !important;
	font-weight: 600 !important;
	border-radius: 2px !important;
	text-decoration: none !important;
	text-align: center !important;
}

/* 8. Failed Order Card */
.moz-thankyou-failed-card {
	background: #FFFFFF !important;
	border: 1px solid #F3C2BC !important;
	border-top: 3px solid #B3261E !important;
	border-radius: 4px !important;
	padding: 32px 36px !important;
	margin: 0 0 36px !important;
	box-shadow: 0 4px 20px rgba(20, 18, 14, 0.04) !important;
}

.moz-is-failed {
	color: #B3261E !important;
}

/* 9. Mobile & Tablet Responsiveness */
@media (max-width: 1024px) {
	.woocommerce-order-overview.woocommerce-thankyou-order-details,
	ul.order_details,
	ul.wc-block-order-confirmation-summary-list,
	.moz-thankyou-summary-grid {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 16px !important;
	}

	li.wc-block-order-confirmation-summary-list-item:nth-child(3) {
		border-right: none !important;
	}
}

@media (max-width: 768px) {
	body.woocommerce-order-received main.moz-main,
	body.woocommerce-order-received .moz-main,
	body.woocommerce-order-received .moz-checkout-main,
	body.woocommerce-order-received .moz-thankyou-main,
	body.woocommerce-order-received main.wp-block-group,
	body.woocommerce-order-received main {
		padding: calc(var(--moz-main-offset, 90px) + 20px) 16px 60px !important;
	}

	.woocommerce-thankyou-order-received,
	.wc-block-order-confirmation-status h1,
	.wp-block-woocommerce-order-confirmation-status h1,
	.wc-block-order-confirmation-status p,
	.wp-block-woocommerce-order-confirmation-status p,
	.moz-thankyou-title {
		font-size: 28px !important;
	}

	.woocommerce-order-overview.woocommerce-thankyou-order-details,
	ul.order_details,
	ul.wc-block-order-confirmation-summary-list,
	.moz-thankyou-summary-grid {
		grid-template-columns: 1fr 1fr !important;
		padding: 20px 18px !important;
		gap: 16px !important;
	}

	.woocommerce-order-overview.woocommerce-thankyou-order-details li,
	ul.order_details li,
	li.wc-block-order-confirmation-summary-list-item {
		border-right: none !important;
		padding-right: 0 !important;
		border-bottom: 1px solid var(--moz-earth-100, #F3EFE9) !important;
		padding-bottom: 12px !important;
	}

	.woocommerce-order-overview.woocommerce-thankyou-order-details li:last-child,
	ul.order_details li:last-child,
	li.wc-block-order-confirmation-summary-list-item:last-child {
		border-bottom: none !important;
		padding-bottom: 0 !important;
	}

	.woocommerce-order-details,
	.wc-block-order-confirmation-totals,
	.wp-block-woocommerce-order-confirmation-totals,
	.woocommerce-customer-details,
	.wc-block-order-confirmation-billing-wrapper,
	.wc-block-order-confirmation-shipping-wrapper,
	.moz-production-tracker,
	.moz-atelier-tracker-card {
		padding: 22px 18px !important;
	}

	table.woocommerce-table--order-details thead th,
	table.order_details thead th,
	table.wc-block-order-confirmation-totals__table thead th,
	table.woocommerce-table--order-details tbody td,
	table.order_details tbody td,
	table.wc-block-order-confirmation-totals__table tbody td,
	table.woocommerce-table--order-details tfoot th,
	table.order_details tfoot th,
	table.wc-block-order-confirmation-totals__table tfoot th,
	table.woocommerce-table--order-details tfoot td,
	table.order_details tfoot td,
	table.wc-block-order-confirmation-totals__table tfoot td {
		padding: 12px 14px !important;
	}

	table.woocommerce-table--order-details .product-name a,
	table.order_details .product-name a,
	table.wc-block-order-confirmation-totals__table a {
		font-size: 13.5px !important;
	}

	.moz-thankyou-footer-actions {
		flex-direction: column !important;
		width: 100% !important;
	}

	.moz-thankyou-footer-actions .moz-btn {
		width: 100% !important;
		box-sizing: border-box !important;
	}
}

@media (max-width: 480px) {
	.woocommerce-order-overview.woocommerce-thankyou-order-details,
	ul.order_details,
	ul.wc-block-order-confirmation-summary-list,
	.moz-thankyou-summary-grid {
		grid-template-columns: 1fr !important;
	}

	.woocommerce-thankyou-order-received,
	.wc-block-order-confirmation-status h1,
	.wp-block-woocommerce-order-confirmation-status h1,
	.wc-block-order-confirmation-status p,
	.wp-block-woocommerce-order-confirmation-status p,
	.moz-thankyou-title {
		font-size: 24px !important;
	}
}
/* ============================================================
   Global Uncropped Product & Gallery Images (Contain / Natural)
   ============================================================ */
.moz-product-card .moz-card-media,
.moz-card-media,
.moz-static-card .moz-card-media,
.moz-wishlist-img-wrap,
.moz-product-related .wc-block-components-product-image,
.wp-block-woocommerce-product-image,
.wc-block-components-product-image {
	aspect-ratio: auto !important;
	height: auto !important;
	background: transparent !important;
}

.moz-product-card .moz-card-media img,
.moz-card-media img,
.moz-static-card .moz-card-media img,
.moz-wishlist-img-wrap img,
.moz-product-related .wc-block-components-product-image img,
.wc-block-components-product-image img,
.wp-block-woocommerce-product-image img,
.wc-block-grid__product-image img,
.woocommerce ul.products li.product a img,
.attachment-woocommerce_thumbnail {
	width: 100% !important;
	height: auto !important;
	max-height: none !important;
	aspect-ratio: auto !important;
	object-fit: contain !important;
	display: block !important;
}

.moz-gal-main img,
.moz-gal-slide img,
.moz-gal-thumb img,
.moz-zoom-thumb img,
.moz-zoom-img,
#moz-gal-track img,
.woocommerce-product-gallery__wrapper img {
	object-fit: contain !important;
}

/* Simple Product Price Tier (Chairs, etc.) */
.moz-price-tier .moz-simple-price-wrap {
	display: flex;
	align-items: baseline;
	gap: 8px;
	flex-wrap: wrap;
	line-height: 1;
}

.moz-price-tier .moz-simple-price-wrap,
.moz-price-tier .moz-simple-price-wrap .price,
.moz-price-tier .moz-simple-price-wrap > .woocommerce-Price-amount,
.moz-price-tier .moz-simple-price-wrap bdi {
	color: var(--moz-earth-900, #111111) !important;
	font-size: 26px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	line-height: 1;
}

.moz-price-tier .moz-simple-price-wrap del,
.moz-price-tier .moz-simple-price-wrap del .woocommerce-Price-amount,
.moz-price-tier .moz-simple-price-wrap del bdi {
	color: var(--moz-earth-400, #99938A) !important;
	font-size: 19px !important;
	font-weight: 400 !important;
	text-decoration: line-through !important;
	opacity: 0.85;
	margin-right: 6px;
	line-height: 1;
}

.moz-price-tier .moz-simple-price-wrap ins,
.moz-price-tier .moz-simple-price-wrap ins .woocommerce-Price-amount,
.moz-price-tier .moz-simple-price-wrap ins bdi {
	color: var(--moz-earth-900, #111111) !important;
	font-size: 26px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	line-height: 1;
}

.moz-price-tier + form.cart {
	margin-top: 24px !important;
}


/* ==========================================================================
   Order-Pay / Payment Gateway Transition Page
   ========================================================================== */
body.woocommerce-order-pay .moz-checkout-content {
	max-width: 680px !important;
	margin: 40px auto 100px !important;
	padding: 0 20px !important;
}

body.woocommerce-order-pay #order_review,
body.woocommerce-order-pay .woocommerce > form#order_review {
	background: #ffffff !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-radius: 4px !important;
	padding: 36px 32px !important;
	box-shadow: 0 12px 36px rgba(0, 0, 0, 0.05) !important;
	margin-top: 24px !important;
}

body.woocommerce-order-pay ul.order_details {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 16px 24px !important;
	background: #fbf9f6 !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-radius: 4px !important;
	padding: 20px 24px !important;
	list-style: none !important;
	margin: 0 0 28px !important;
}

body.woocommerce-order-pay ul.order_details li {
	font-size: 11.5px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
	color: #777777 !important;
	border-right: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	padding-right: 20px !important;
	margin: 0 !important;
}

body.woocommerce-order-pay ul.order_details li:last-child {
	border-right: none !important;
	padding-right: 0 !important;
}

body.woocommerce-order-pay ul.order_details li strong {
	display: block !important;
	font-size: 15px !important;
	color: #1a1a1a !important;
	font-weight: 600 !important;
	margin-top: 4px !important;
	text-transform: none !important;
	letter-spacing: normal !important;
}

body.woocommerce-order-pay #payment {
	background: transparent !important;
	padding: 0 !important;
	border: none !important;
	text-align: center !important;
}

body.woocommerce-order-pay #payment p,
body.woocommerce-order-pay p:has(#btn-razorpay) {
	font-size: 14px !important;
	color: #555555 !important;
	margin: 18px 0 !important;
	line-height: 1.5 !important;
}

body.woocommerce-order-pay #btn-razorpay,
body.woocommerce-order-pay button#place_order {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: #1a1a1a !important;
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	padding: 16px 36px !important;
	border-radius: 2px !important;
	border: none !important;
	cursor: pointer !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12) !important;
	transition: background 0.25s ease, transform 0.15s ease !important;
}

body.woocommerce-order-pay #btn-razorpay:hover,
body.woocommerce-order-pay button#place_order:hover {
	background: #333333 !important;
	transform: translateY(-1px) !important;
}

body.woocommerce-order-pay #btn-razorpay-cancel {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: transparent !important;
	color: #666666 !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	padding: 15px 26px !important;
	border: 1px solid var(--moz-earth-300, #d5cfc5) !important;
	border-radius: 2px !important;
	cursor: pointer !important;
	margin-left: 12px !important;
	transition: all 0.2s ease !important;
}

body.woocommerce-order-pay #btn-razorpay-cancel:hover {
	color: #1a1a1a !important;
	border-color: #1a1a1a !important;
}

body.woocommerce-order-pay #msg-razorpay-success {
	background: #faf8f5 !important;
	border: 1px solid var(--moz-earth-200, #EAE6DF) !important;
	border-left: 3px solid #1a1a1a !important;
	color: #333333 !important;
	font-size: 13.5px !important;
	border-radius: 2px !important;
	margin: 20px 0 !important;
	padding: 14px 20px !important;
}


/* ============================================================
   HOUSE OF MOZAMBEAK — LUXURY BESPOKE CHECKOUT EXPERIENCE
   ============================================================ */

/* 1. Page Background & Container */
.moz-checkout-main {
	background-color: #EFE9DF !important;
	background-image: 
		radial-gradient(ellipse at 10% 20%, rgba(255, 255, 255, 0.75) 0%, rgba(255, 255, 255, 0) 50%),
		radial-gradient(ellipse at 90% 80%, rgba(206, 194, 178, 0.45) 0%, rgba(206, 194, 178, 0) 60%),
		linear-gradient(180deg, #F3EEE6 0%, #E8E1D5 100%) !important;
	min-height: 100vh !important;
	padding-top: 220px !important;
	padding-bottom: 96px !important;
	position: relative !important;
	box-sizing: border-box !important;
}

@media (max-width: 768px) {
	.moz-checkout-main {
		padding-top: 140px !important;
		padding-bottom: 60px !important;
	}
}

.moz-checkout-header-bar {
	max-width: 1200px !important;
	margin: 0 auto 24px auto !important;
	padding: 0 var(--moz-gutter, 24px) !important;
	box-sizing: border-box !important;
}

.moz-checkout-page-title {
	font-family: var(--moz-font-serif, 'Cormorant Garamond', Georgia, serif) !important;
	font-size: 46px !important;
	font-weight: 400 !important;
	color: #14120E !important;
	margin: 0 0 6px 0 !important;
	letter-spacing: -0.01em !important;
	line-height: 1.15 !important;
}

.moz-checkout-page-subtitle {
	font-family: var(--moz-font-sans, 'Inter', sans-serif) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.26em !important;
	text-transform: uppercase !important;
	color: #766E62 !important;
	margin: 0 !important;
}

.moz-checkout-content {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 var(--moz-gutter, 24px) !important;
	box-sizing: border-box !important;
}

/* 2. Full-Width Delivery Notice Banner */
.moz-checkout-delivery-card {
	width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 0 32px 0 !important;
	background: #EAE4D8 !important;
	border: 1px solid #DFD7CB !important;
	border-radius: 14px !important;
	padding: 16px 22px !important;
	box-shadow: 0 2px 10px rgba(0,0,0,0.02) !important;
}

.moz-deliv-card-header {
	display: flex !important;
	align-items: flex-start !important;
	gap: 16px !important;
}

.moz-deliv-card-check-icon,
.moz-deliv-card-icon {
	flex-shrink: 0 !important;
	margin-top: 2px !important;
}

.moz-deliv-card-title {
	font-family: var(--moz-font-sans, 'Inter', sans-serif) !important;
	font-size: 12.5px !important;
	font-weight: 700 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	color: #1A1815 !important;
	display: block !important;
	margin-bottom: 4px !important;
}

.moz-deliv-card-desc {
	font-family: var(--moz-font-sans, 'Inter', sans-serif) !important;
	font-size: 12px !important;
	line-height: 1.5 !important;
	color: #6C6457 !important;
	margin: 0 !important;
}

.moz-checkout-delivery-card.is-bangalore,
.moz-checkout-delivery-card.is-neutral {
	background: #EAE4D8 !important;
	border-color: #DCD4C6 !important;
}

/* 3. Reversing Column Grid Layout (Left: Summary, Right: Fields) */
.wc-block-checkout.wc-block-components-sidebar-layout {
	display: grid !important;
	grid-template-columns: 410px minmax(0, 1fr) !important;
	gap: 48px !important;
	align-items: start !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.wc-block-checkout__sidebar {
	order: 1 !important;
	width: 100% !important;
	max-width: 410px !important;
	margin: 0 !important;
	position: sticky !important;
	top: calc(var(--moz-header-height, 120px) + 24px) !important;
	background: #FFFFFF !important;
	border-radius: 16px !important;
	padding: 24px 28px !important;
	border: 1px solid #ECE7E0 !important;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04) !important;
	box-sizing: border-box !important;
}

.wc-block-checkout__main {
	order: 2 !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

@media (max-width: 1024px) {
	.wc-block-checkout.wc-block-components-sidebar-layout {
		display: flex !important;
		flex-direction: column !important;
		gap: 32px !important;
	}
	.wc-block-checkout__sidebar {
		order: 1 !important;
		max-width: 100% !important;
		position: static !important;
	}
	.wc-block-checkout__main {
		order: 2 !important;
		max-width: 100% !important;
	}
}

/* 4. Left Column: Order Summary Content */
.wp-block-woocommerce-checkout-order-summary-block {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.wc-block-components-checkout-order-summary__title {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	padding-bottom: 16px !important;
	border-bottom: 1px solid #EFEAE3 !important;
	margin-bottom: 16px !important;
}

.wc-block-components-checkout-order-summary__title-text {
	font-family: var(--moz-font-sans, 'Inter', sans-serif) !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: #14120E !important;
	margin: 0 !important;
}

.wc-block-components-checkout-order-summary__title-price,
.wc-block-components-checkout-order-summary__title-icon {
	display: none !important;
}

.moz-order-summary-count-badge {
	font-family: var(--moz-font-sans, 'Inter', sans-serif) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	color: #8C8478 !important;
	text-transform: uppercase !important;
}

.wc-block-components-order-summary-item {
	display: flex !important;
	align-items: flex-start !important;
	gap: 16px !important;
	padding: 16px 0 !important;
	border-bottom: 1px solid #EFEAE3 !important;
}

.wc-block-components-order-summary-item__image {
	width: 68px !important;
	height: 68px !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	flex-shrink: 0 !important;
	border: 1px solid #EAE4DC !important;
	background: #FBF8F4 !important;
}

.wc-block-components-order-summary-item__image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	border-radius: 8px !important;
}

.wc-block-components-order-summary-item__description {
	flex: 1 !important;
}

.wc-block-components-product-name {
	font-family: var(--moz-font-sans, 'Inter', sans-serif) !important;
	font-size: 14.5px !important;
	font-weight: 700 !important;
	color: #14120E !important;
	margin: 0 0 4px 0 !important;
	line-height: 1.3 !important;
}

.wc-block-components-product-metadata {
	font-size: 11.5px !important;
	color: #7A7268 !important;
	line-height: 1.4 !important;
	margin-bottom: 6px !important;
}

.wc-block-components-order-summary-item__individual-prices {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #14120E !important;
}

.wc-block-components-order-summary-item__quantity {
	display: inline-block !important;
	font-size: 11.5px !important;
	color: #8A8275 !important;
	margin-left: 8px !important;
}

/* Totals rows */
.wc-block-components-totals-item,
.moz-custom-shipping-row {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	padding: 8px 0 !important;
	font-size: 13.5px !important;
	color: #554E45 !important;
}

.wc-block-components-totals-item--total {
	border-top: 1px solid #EFEAE3 !important;
	margin-top: 12px !important;
	padding-top: 16px !important;
	font-size: 15.5px !important;
	font-weight: 700 !important;
	color: #14120E !important;
}

/* Trust Badges */
.moz-order-trust-badges {
	margin-top: 24px !important;
	padding-top: 20px !important;
	border-top: 1px solid #EFEAE3 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
}

.moz-trust-item {
	display: flex !important;
	align-items: flex-start !important;
	gap: 14px !important;
}

.moz-trust-icon {
	width: 22px !important;
	height: 22px !important;
	flex-shrink: 0 !important;
	color: #8A4B29 !important;
	margin-top: 2px !important;
}

.moz-trust-body {
	display: flex !important;
	flex-direction: column !important;
	gap: 2px !important;
}

.moz-trust-title {
	font-family: var(--moz-font-sans, 'Inter', sans-serif) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	color: #14120E !important;
}

.moz-trust-desc {
	font-family: var(--moz-font-sans, 'Inter', sans-serif) !important;
	font-size: 11.5px !important;
	color: #7A7268 !important;
	line-height: 1.35 !important;
}

/* 5. Right Column: Contact Information */
.wc-block-checkout__contact-fields {
	margin-bottom: 24px !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	width: 100% !important;
}

.wc-block-checkout__contact-fields .wc-block-components-checkout-step__title {
	font-family: var(--moz-font-sans, 'Inter', sans-serif) !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: #14120E !important;
	margin-bottom: 12px !important;
}

#contact.wc-block-components-address-form,
.wc-block-checkout__contact-fields .wc-block-components-address-form {
	display: block !important;
	width: 100% !important;
}

.wc-block-components-address-form__email {
	width: 100% !important;
	display: block !important;
	margin-bottom: 8px !important;
}

.wc-block-components-text-input input,
.wc-blocks-components-select__select,
.wc-block-components-country-input select {
	background: #FFFFFF !important;
	border: 1px solid #D5CEBF !important;
	border-radius: 10px !important;
	padding: 12px 16px !important;
	font-size: 14px !important;
	color: #14120E !important;
	box-shadow: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
	box-sizing: border-box !important;
	height: auto !important;
	width: 100% !important;
}

.wc-block-components-text-input input:focus,
.wc-blocks-components-select__select:focus {
	border-color: #8A4B29 !important;
	outline: none !important;
	box-shadow: 0 0 0 2px rgba(138, 75, 41, 0.15) !important;
}

.wc-block-checkout__guest-checkout-notice {
	font-size: 12px !important;
	color: #7A7268 !important;
	margin-top: 8px !important;
}

.wc-block-checkout__guest-checkout-notice a,
.wc-block-checkout__guest-checkout-notice button {
	color: #8A4B29 !important;
	text-decoration: underline !important;
	font-weight: 600 !important;
}

/* 6. Right Column: Delivery Address Card */
.moz-delivery-address-card,
.wc-block-checkout__billing-fields,
.wc-block-checkout__shipping-fields {
	background: #FAF7F2 !important;
	border: 1px solid #EBE4D8 !important;
	border-radius: 16px !important;
	padding: 24px 28px !important;
	margin: 24px 0 !important;
	box-sizing: border-box !important;
	display: flex !important;
	flex-direction: column !important;
}

.wc-block-components-checkout-step__heading-container {
	display: none !important;
}

.moz-deliv-card-custom-header {
	order: 1 !important;
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	margin-bottom: 22px !important;
	padding-bottom: 14px !important;
	border-bottom: 1px solid #EBE4D8 !important;
	width: 100% !important;
}

.moz-deliv-badge-icon {
	width: 36px !important;
	height: 36px !important;
	border-radius: 50% !important;
	background: #F1E9DE !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0 !important;
	color: #8A4B29 !important;
}

.moz-deliv-custom-title {
	font-family: var(--moz-font-sans, 'Inter', sans-serif) !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: #8A4B29 !important;
	margin: 0 0 2px 0 !important;
}

.moz-deliv-custom-subtitle {
	font-family: var(--moz-font-serif, 'Cormorant Garamond', Georgia, serif) !important;
	font-style: italic !important;
	font-size: 14px !important;
	color: #7A7268 !important;
	margin: 0 !important;
}

.wc-block-components-checkout-step__content {
	order: 2 !important;
	width: 100% !important;
}

/* Address Fields Layout: Scoped ONLY to Delivery Address card */
.wc-block-checkout__billing-fields .wc-block-components-address-form,
.wc-block-checkout__shipping-fields .wc-block-components-address-form {
	display: grid !important;
	grid-template-columns: 28px repeat(6, 1fr) !important;
	column-gap: 14px !important;
	row-gap: 16px !important;
	align-items: center !important;
}

/* Row 1: Country */
.moz-icon-country { grid-column: 1; grid-row: 1; }
.wc-block-checkout__billing-fields .wc-block-components-address-form__country,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__country { grid-column: 2 / 8; grid-row: 1; margin: 0 !important; }

/* Row 2: Names */
.moz-icon-name { grid-column: 1; grid-row: 2; }
.wc-block-checkout__billing-fields .wc-block-components-address-form__first_name,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__first_name { grid-column: 2 / 5; grid-row: 2; margin: 0 !important; }
.wc-block-checkout__billing-fields .wc-block-components-address-form__last_name,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__last_name { grid-column: 5 / 8; grid-row: 2; margin: 0 !important; }

/* Row 3: Address 1 */
.moz-icon-house { grid-column: 1; grid-row: 3; }
.wc-block-checkout__billing-fields .wc-block-components-address-form__address_1,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__address_1 { grid-column: 2 / 8; grid-row: 3; margin: 0 !important; }

/* Row 4: Address 2 / Apartment toggle */
.moz-icon-pin { grid-column: 1; grid-row: 4; }
.wc-block-checkout__billing-fields .wc-block-components-address-form__address_2-toggle,
.wc-block-checkout__billing-fields .wc-block-components-address-form__address_2-hidden-input,
.wc-block-checkout__billing-fields .wc-block-components-address-form__address_2,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__address_2-toggle,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__address_2-hidden-input,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__address_2 { grid-column: 2 / 8; grid-row: 4; margin: 0 !important; }

/* Row 5: City, State, Postcode */
.moz-icon-building { grid-column: 1; grid-row: 5; }
.wc-block-checkout__billing-fields .wc-block-components-address-form__city,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__city { grid-column: 2 / 4; grid-row: 5; margin: 0 !important; }
.wc-block-checkout__billing-fields .wc-block-components-address-form__state,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__state { grid-column: 4 / 6; grid-row: 5; margin: 0 !important; }
.wc-block-checkout__billing-fields .wc-block-components-address-form__postcode,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__postcode { grid-column: 6 / 8; grid-row: 5; margin: 0 !important; }

/* Row 6: Phone */
.moz-icon-phone { grid-column: 1; grid-row: 6; }
.wc-block-checkout__billing-fields .wc-block-components-address-form__phone,
.wc-block-checkout__shipping-fields .wc-block-components-address-form__phone { grid-column: 2 / 8; grid-row: 6; margin: 0 !important; }

@media (max-width: 768px) {
	.wc-block-checkout__billing-fields .wc-block-components-address-form,
	.wc-block-checkout__shipping-fields .wc-block-components-address-form {
		grid-template-columns: 24px 1fr 1fr !important;
		row-gap: 12px !important;
	}
	.moz-icon-country { grid-column: 1; grid-row: 1; }
	.wc-block-checkout__billing-fields .wc-block-components-address-form__country { grid-column: 2 / 4; grid-row: 1; }

	.moz-icon-name { grid-column: 1; grid-row: 2; }
	.wc-block-checkout__billing-fields .wc-block-components-address-form__first_name { grid-column: 2 / 3; grid-row: 2; }
	.wc-block-checkout__billing-fields .wc-block-components-address-form__last_name { grid-column: 3 / 4; grid-row: 2; }

	.moz-icon-house { grid-column: 1; grid-row: 3; }
	.wc-block-checkout__billing-fields .wc-block-components-address-form__address_1 { grid-column: 2 / 4; grid-row: 3; }

	.moz-icon-pin { grid-column: 1; grid-row: 4; }
	.wc-block-checkout__billing-fields .wc-block-components-address-form__address_2-toggle,
	.wc-block-checkout__billing-fields .wc-block-components-address-form__address_2 { grid-column: 2 / 4; grid-row: 4; }

	.moz-icon-building { grid-column: 1; grid-row: 5; }
	.wc-block-checkout__billing-fields .wc-block-components-address-form__city { grid-column: 2 / 4; grid-row: 5; }
	.wc-block-checkout__billing-fields .wc-block-components-address-form__state { grid-column: 2 / 4; grid-row: 6; }
	.wc-block-checkout__billing-fields .wc-block-components-address-form__postcode { grid-column: 2 / 4; grid-row: 7; }

	.moz-icon-phone { grid-column: 1; grid-row: 8; }
	.wc-block-checkout__billing-fields .wc-block-components-address-form__phone { grid-column: 2 / 4; grid-row: 8; }
}

.moz-addr-grid-icon {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 28px !important;
	height: 28px !important;
	color: #8A4B29 !important;
}

.moz-deliv-card-custom-footer {
	order: 3 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 16px !important;
	margin-top: 20px !important;
	padding-top: 16px !important;
	border-top: 1px solid #EBE4D8 !important;
	font-size: 12px !important;
	color: #6C6457 !important;
	width: 100% !important;
}

.moz-save-addr-label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-weight: 500 !important;
	cursor: pointer !important;
}

.moz-save-addr-label input[type="checkbox"] {
	accent-color: #8A4B29 !important;
	width: 15px !important;
	height: 15px !important;
}

.moz-deliv-footer-sep {
	color: #D5CEBF !important;
}

.moz-whiteglove-coord-msg {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
}

/* 7. Right Column: Payment Options */
.wc-block-checkout__payment-method {
	margin: 28px 0 20px 0 !important;
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
}

.wc-block-checkout__payment-method .wc-block-components-checkout-step__title {
	font-family: var(--moz-font-sans, 'Inter', sans-serif) !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: #14120E !important;
	margin-bottom: 12px !important;
}

.wc-block-components-radio-control-accordion-option {
	background: #FAF7F2 !important;
	border: 1px solid #DCD5C9 !important;
	border-radius: 12px !important;
	padding: 14px 18px !important;
	margin-bottom: 10px !important;
	transition: border-color 0.2s ease !important;
}

.wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.wc-block-components-radio-control-accordion-option:hover {
	border-color: #8A4B29 !important;
	background: #FAF7F2 !important;
}

.wc-block-components-radio-control__option {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	width: 100% !important;
}

/* Hide COD on luxury checkout */
.wc-block-components-radio-control-accordion-option:has(input[value*="cod"]),
.wc-block-components-radio-control-accordion-option:has(input[id*="cod"]) {
	display: none !important;
}

.moz-payment-gateways-logos {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	margin-left: auto !important;
}

.moz-pay-logo {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	padding: 3px 6px !important;
	border-radius: 4px !important;
	background: #FFFFFF !important;
	border: 1px solid #E2DCD2 !important;
	line-height: 1 !important;
}

.moz-pay-visa { color: #1A1F71 !important; font-style: italic !important; font-family: sans-serif !important; }
.moz-pay-rupay { color: #097938 !important; }
.moz-pay-upi { color: #5F259F !important; }
.moz-pay-applepay { color: #14120E !important; font-weight: 600 !important; }
.moz-pay-mc {
	display: inline-flex !important;
	align-items: center !important;
	padding: 3px 5px !important;
}
.moz-pay-mc .mc-red {
	width: 12px;
	height: 12px;
	background: #EB001B;
	border-radius: 50%;
	display: inline-block;
}
.moz-pay-mc .mc-orange {
	width: 12px;
	height: 12px;
	background: #F79E1B;
	border-radius: 50%;
	display: inline-block;
	margin-left: -6px;
	opacity: 0.9;
}

/* 8. Primary CTA Button (Proceed to Payment) */
.wc-block-checkout__actions,
.wc-block-checkout__actions_row {
	margin-top: 20px !important;
	width: 100% !important;
}

.wc-block-components-checkout-place-order-button,
#place_order,
button.wc-block-components-checkout-place-order-button {
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
	padding: 18px 24px !important;
	background: #5C321E !important;
	color: #FFFFFF !important;
	font-family: var(--moz-font-sans, 'Inter', sans-serif) !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	border: none !important;
	border-radius: 8px !important;
	text-align: center !important;
	cursor: pointer !important;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
	box-shadow: 0 4px 14px rgba(92, 50, 30, 0.25) !important;
}

.wc-block-components-checkout-place-order-button:hover,
#place_order:hover,
button.wc-block-components-checkout-place-order-button:hover {
	background: #462413 !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 6px 20px rgba(92, 50, 30, 0.35) !important;
}
