/* WorkStyle header/footer — loads via MU plugin with parent WoodMart */
/* ==========================================================================
   WorkStyle — Site header & footer (loads on every page)
   Brand source: J & P Workstyles_Identity_Style Sheet (Jan 2022)
   ========================================================================== */

@font-face {
	font-family: 'Black Signature';
	src: url('../fonts/BlackSignature-Regular.otf') format('opentype');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

/*
 * Brand type (web):
 * - Header / headings: Space Grotesk
 * - Body / UI text: Inter
 * - Script accents: Black Signature (licensed, loaded above)
 *
 * Official brand colors (Identity Style Sheet):
 * - Purple #6A4972 · Dark Blue #1F2641 · Nude #E2D9CA · Blue Gray #4A94A8 · White #FFF
 */
:root {
	--wds-color-primary: #6A4972;
	--wds-color-primary-dark: #553A5C;
	--wds-color-secondary: #1F2641;
	--wds-color-navy: #1F2641;
	--wds-color-nude: #E2D9CA;
	--wds-color-blue-gray: #4A94A8;
	--wds-color-white: #FFFFFF;
	--wds-color-light: #F7F7FA;
	--wds-color-text: #3A3A3A;
	--wds-color-text-muted: #6B6B76;
	--wds-color-border: #E5E5EA;
	--wds-color-announcement-bg: #1F2641;
	--wds-font-heading: 'Space Grotesk', sans-serif;
	--wds-font-body: 'Inter', sans-serif;
	--wds-font-script: 'Black Signature', cursive;
	/* Beat WoodMart theme settings (Jost / Lora) */
	--wd-text-font: 'Inter', sans-serif;
	--wd-title-font: 'Space Grotesk', sans-serif;
	--wd-entities-title-font: 'Space Grotesk', sans-serif;
	--wd-widget-title-font: 'Space Grotesk', sans-serif;
	--wd-alternative-font: 'Space Grotesk', sans-serif;
	--wd-header-el-font: 'Space Grotesk', sans-serif;
	--wds-container-max: 100%;
	--wds-container-gutter: clamp(18px, 2.5vw, 48px);
	--wds-transition: 300ms ease;
}

* {
	box-sizing: border-box;
}

body {
	font-family: var(--wds-font-body);
	color: var(--wds-color-text);
	margin: 0;
	width: 100%;
	overflow-x: hidden;
}

/*
 * Site-wide type lock:
 * - Headers / nav / titles → Space Grotesk
 * - Body / forms / UI text → Inter
 * (Logo script Black Signature stays on brand wordmarks only.)
 */
body,
p,
li,
td,
th,
label,
input,
textarea,
select,
button,
.button,
.btn,
.elementor-button,
.elementor-button-text,
.elementor-widget-text-editor,
.elementor-widget-text-editor p,
.woocommerce,
.woocommerce-page,
.woocommerce-info,
.woocommerce-message,
.woocommerce-error,
.wd-nav-mobile,
.mobile-nav,
.wd-search-dropdown,
.wpcf7,
.wpcf7 input,
.wpcf7 textarea,
.wpcf7 select,
.wpcf7 label {
	font-family: var(--wds-font-body), 'Inter', sans-serif !important;
}

h1, h2, h3, h4, h5, h6,
.elementor-heading-title,
.title,
.wd-entities-title,
.wd-el-title,
.product-title,
.woocommerce-loop-product__title,
.woocommerce-Tabs-panel h2,
.related.products > h2,
.upsells.products > h2,
.cart-collaterals h2,
.whb-general-header .wd-nav > li > a,
.whb-general-header .wd-nav > li > a .nav-link-text,
.whb-general-header .wd-header-nav .wd-nav > li > a,
.wd-nav-fs > li > a,
.whb-for_business_btn a.btn,
.whb-for_business_btn a.btn .btn-text {
	font-family: var(--wds-font-heading), 'Space Grotesk', sans-serif !important;
}

/* Keep brand script accents (logo wordmarks) on Black Signature */
.wds-brand__word,
.wds-footer-brand-mark .wds-brand__word,
.wds-store-card__script,
[class*="black-signature"],
.rjw-script,
.font-script {
	font-family: var(--wds-font-script), 'Black Signature', cursive !important;
}

.wds-announcement {
	background: var(--wds-color-announcement-bg);
	color: var(--wds-color-white);
	text-align: center;
	font-family: var(--wds-font-body);
	font-size: 14px;
	line-height: 1.35;
	padding: 10px 16px;
}

.wds-site-header {
	background: var(--wds-color-white);
	border-bottom: 1px solid #EEE;
}

.wds-site-header__row {
	width: 100%;
	max-width: var(--wds-container-max);
	margin-inline: auto;
	min-height: 82px;
	padding: 14px var(--wds-container-gutter);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.wds-brand {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	text-decoration: none;
	color: var(--wds-color-secondary);
	min-width: 178px;
}

.wds-brand__icon {
	width: 38px;
	height: 40px;
	object-fit: contain;
	flex-shrink: 0;
}

.wds-brand__word {
	font-family: var(--wds-font-script);
	font-size: 36px;
	line-height: 1;
	color: var(--wds-color-primary);
}

.wds-nav__list {
	display: flex;
	align-items: center;
	gap: 28px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.wds-nav__link {
	font-family: var(--wds-font-body);
	font-size: 16px;
	font-weight: 500;
	color: var(--wds-color-secondary);
	text-decoration: none;
	transition: color var(--wds-transition);
}

.wds-nav__link:hover {
	color: var(--wds-color-primary);
}

.wds-site-header__actions {
	display: flex;
	align-items: center;
	gap: 20px;
}

.wds-btn-business {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 42px;
	padding: 0 22px;
	background: var(--wds-color-primary);
	color: var(--wds-color-white);
	font-family: var(--wds-font-heading);
	font-size: 15px;
	font-weight: 500;
	text-decoration: none;
	border-radius: 0;
	transition: background-color var(--wds-transition);
}

.wds-btn-business:hover {
	background: var(--wds-color-primary-dark);
}

.wds-icon-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	color: var(--wds-color-secondary);
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	position: relative;
	text-decoration: none;
}

.wds-icon-btn svg {
	width: 100%;
	height: 100%;
}

.wds-icon-btn__count {
	position: absolute;
	top: -6px;
	right: -8px;
	min-width: 16px;
	height: 16px;
	padding: 0 3px;
	border-radius: 8px;
	background: var(--wds-color-primary);
	color: var(--wds-color-white);
	font-size: 10px;
	line-height: 16px;
	text-align: center;
	font-family: var(--wds-font-body);
}

.wds-mobile-toggle {
	display: none;
	background: none;
	border: none;
	cursor: pointer;
	padding: 4px;
}

.wds-mobile-toggle svg {
	width: 26px;
	height: 26px;
}

.wds-site-footer {
	background: #F8F8FC;
	color: var(--wds-color-text);
	padding: 58px 0 0;
	font-family: var(--wds-font-body);
}

.wds-site-footer__row {
	max-width: var(--wds-container-max);
	margin-inline: auto;
	padding: 0 var(--wds-container-gutter);
	display: grid;
	grid-template-columns: 1.7fr 1fr 1.25fr 1fr;
	gap: 44px;
	padding-bottom: 46px;
}

.wds-site-footer__brand .wds-brand__word {
	color: var(--wds-color-primary);
}

.wds-site-footer__tagline {
	margin-top: 20px;
	font-family: var(--wds-font-heading);
	font-size: 24px;
	line-height: 1.35;
	color: var(--wds-color-secondary);
}

.wds-site-footer h4 {
	color: var(--wds-color-primary);
	font-family: var(--wds-font-heading);
	font-weight: 500;
	font-size: 15px;
	margin: 0 0 16px;
}

.wds-site-footer__subheading {
	margin-top: 28px;
}

.wds-site-footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.wds-site-footer li {
	margin-bottom: 10px;
}

.wds-site-footer a {
	color: var(--wds-color-text-muted);
	text-decoration: none;
	font-size: 13px;
	line-height: 1.45;
	transition: color var(--wds-transition);
}

.wds-site-footer a:hover {
	color: var(--wds-color-primary);
}

.wds-site-footer__stores {
	display: flex;
	background: var(--wds-color-light);
	border-top: 1px solid var(--wds-color-border);
}

.wds-site-footer__store {
	flex: 1;
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 20px var(--wds-container-gutter);
	text-decoration: none;
	color: var(--wds-color-text);
}

.wds-site-footer__store:first-child {
	border-right: 1px solid var(--wds-color-border);
}

.wds-footer-brand-mark--store {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	font-family: var(--wds-font-heading);
	font-weight: 500;
	font-size: 13px;
	letter-spacing: 0.04em;
	flex-shrink: 0;
}

.wds-footer-brand-mark.wds-footer-brand-mark--store {
	/* .wds-footer-brand-mark (homepage-phase2.css, loads later) sets a pale
	   lavender color meant for the main footer wordmark; this two-class
	   selector out-specifies it so the store marks stay solid purple. */
	color: var(--wds-color-primary);
}

.wds-footer-brand-mark--store .wds-store-card__word,
.wds-footer-brand-mark--store .wds-store-card__script {
	/* .wds-store-card__word/__script are hardcoded white for overlay-on-photo
	   use (the "Prefer to Try It On First" cards); the footer reuses the same
	   markup on a light background, so restore the purple footer color here. */
	color: inherit;
}

.wds-footer-brand-mark--store svg {
	width: 22px;
	height: 22px;
}

.wds-footer-brand-mark__icon {
	width: 52px;
	height: 56px;
	object-fit: contain;
}

.wds-footer-brand-mark--store .wds-footer-brand-mark__icon {
	width: 24px;
	height: 26px;
}

.wds-site-footer__store-address {
	font-size: 14px;
	line-height: 1.4;
	color: var(--wds-color-text);
}

.wds-site-footer__bottom {
	max-width: var(--wds-container-max);
	margin: 0 auto;
	padding: 20px var(--wds-container-gutter);
	font-size: 13px;
	text-align: center;
	color: var(--wds-color-text-muted, #6B6B6B);
}

@media (max-width: 1024px) {
	.wds-nav__list {
		gap: 20px;
	}

	.wds-site-header__row {
		min-height: 72px;
	}

	.wds-site-footer__row {
		grid-template-columns: 1fr 1fr;
	}
}

/* ==========================================================================
   WoodMart Header Builder — Figma Frame 43 (1920 × 97.22)
   Pad 20 / 58 / 20 / 43 · Nav centered · Space Grotesk 20/500 · gap 20px
   Promo bar #1F2641 left-aligned · For Business radius 0 / Space Grotesk 20 / h 44
   ========================================================================== */

/*
 * Sticky spacer (--wd-header-h) must match the real header height.
 * Theme default general header is 70px; Figma row is 97px. Without this,
 * product breadcrumbs / page-title sit under the absolute sticky header.
 */
:root {
	--wd-header-general-h: 97px;
	--wd-header-general-sticky-h: 97px;
	--wd-header-general-sm-h: 72px;
}

/* ---- Promo / discount bar (Figma: left-aligned, thin navy, header inset) ---- */
:root {
	--wd-hb-opt-h: 36px;
}

.wd-hb-wrapp.wd-display,
.wd-hb-wrapp.wd-display ~ .wd-page-wrapper {
	--wd-hb-h: 36px !important;
}

.header-banner.wd-hb,
.wd-hb-wrapp .header-banner.wd-hb,
.wd-hb {
	background: #1F2641 !important;
	color: #FFFFFF !important;
	font-family: 'Inter', var(--wds-font-body), sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	text-align: left !important;
	padding: 0 58px 0 43px !important; /* match Frame 43 side insets */
	border: none !important;
	min-height: 36px !important;
	height: 36px !important;
	max-height: 36px !important;
	display: flex !important;
	align-items: center !important;
	box-sizing: border-box !important;
}

.header-banner.wd-hb .container,
.header-banner.wd-hb .e-con,
.header-banner.wd-hb .e-con-inner,
.header-banner.wd-hb .elementor-element,
.header-banner.wd-hb .elementor-widget-container,
.header-banner.wd-hb .wd-carousel-container,
.header-banner.wd-hb .wd-carousel-inner,
.header-banner.wd-hb .wd-carousel,
.header-banner.wd-hb .wd-carousel-wrap,
.header-banner.wd-hb .wd-carousel-item {
	min-height: 0 !important;
	height: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	margin-inline: 0 !important;
	--min-height: 0px !important;
	--content-width: 100% !important;
	--justify-content: flex-start !important;
	--padding-top: 0px !important;
	--padding-bottom: 0px !important;
	--padding-left: 0px !important;
	--padding-right: 0px !important;
	max-width: none !important;
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
}

/* Kill Elementor post-1008: --content-width:500px + text-center + margin-inline:auto */
.header-banner.wd-hb .wd-text-block,
.header-banner.wd-hb .wd-text-block.reset-last-child,
.header-banner.wd-hb .wd-text-block.text-center,
.header-banner.wd-hb .wd-text-block:not(.inline-element),
.header-banner.wd-hb .wd-text-block:not(.inline-element).text-center,
.header-banner.wd-hb .elementor-widget-wd_text_block,
.header-banner.wd-hb .text-center,
.header-banner.wd-hb a,
.header-banner.wd-hb .wd-hb {
	color: #FFFFFF !important;
	font-family: 'Inter', var(--wds-font-body), sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	--text-align: left !important;
	--wd-align: flex-start !important;
	--content-align: flex-start !important;
	--content-width: 100% !important;
	text-align: left !important;
	margin: 0 !important;
	margin-inline: 0 !important;
	padding: 0 !important;
	text-decoration: none !important;
	max-width: none !important;
	width: 100% !important;
}

.header-banner.wd-hb .wd-text-block p {
	color: #FFFFFF !important;
	font-family: 'Inter', var(--wds-font-body), sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	text-align: left !important;
	margin: 0 !important;
}

.header-banner.wd-hb .wd-carousel-dots,
.header-banner.wd-hb .wd-nav-arrows,
.header-banner.wd-hb .wd-slider-arrows {
	display: none !important;
}

@media (max-width: 768px) {
	:root {
		--wd-hb-opt-h: 40px;
	}

	.header-banner.wd-hb,
	.wd-hb-wrapp .header-banner.wd-hb,
	.wd-hb {
		height: 40px !important;
		min-height: 40px !important;
		max-height: 40px !important;
		padding: 0 18px !important;
		font-size: 12px !important;
	}
}

.whb-header,
.whb-main-header {
	background: #FFFFFF !important;
}

.whb-general-header {
	background: #FFFFFF !important;
	border-bottom: 1px solid #EEEEEE !important;
	box-shadow: none !important;
}

/* Figma Frame 43 insets: 43 left / 58 right */
.whb-general-header .container {
	max-width: none !important;
	width: 100% !important;
	padding-left: 43px !important;
	padding-right: 58px !important;
	box-sizing: border-box !important;
}

.whb-general-header-inner {
	min-height: 97px !important;
	height: 97px !important;
	max-height: 97px !important;
	align-items: center !important;
	padding-block: 20px !important;
	padding-inline: 0 !important;
	gap: 0 !important;
	display: grid !important;
	grid-template-columns: 1fr auto 1fr !important;
	flex-wrap: nowrap !important;
	justify-content: stretch !important;
	width: 100% !important;
	box-sizing: border-box !important;
	overflow: visible !important;
}

/* Logo left · Nav true-center · Actions right */
.whb-general-header .whb-col-left {
	flex: none !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	justify-self: start !important;
	/* Kill WoodMart -10px compensate-for-logo-padding (we zero that padding) */
	margin: 0 !important;
	margin-left: 0 !important;
	grid-column: 1 !important;
}

.whb-general-header .whb-col-center {
	flex: none !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	justify-self: center !important;
	margin: 0 !important;
	grid-column: 2 !important;
	overflow: visible !important;
}

.whb-general-header .whb-col-right {
	flex: none !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	justify-self: end !important;
	margin: 0 !important;
	margin-right: 0 !important;
	/* Figma Frame 2 / actions cluster gap ~26px */
	gap: 26px !important;
	grid-column: 3 !important;
	overflow: visible !important;
	position: relative !important;
}

/* ---- Logo lockup (Figma ~208.7 × 51.28) ----
 * WoodMart defaults that fight us:
 *   .site-logo { padding-inline: 10px }
 *   .wd-logo img { padding-top/bottom: 5px }
 *   .whb-col-left { margin-left: -10px }
 * Those shift the mark off the promo-bar inset and off the vertical axis.
 */
.whb-general-header .site-logo {
	display: flex !important;
	align-items: center !important;
	padding: 0 !important;
	padding-inline: 0 !important;
	margin: 0 !important;
	line-height: 0 !important;
	max-height: none !important;
	height: auto !important;
}

.whb-general-header .site-logo .wd-logo,
.whb-general-header .site-logo a.wd-logo,
.whb-general-header .site-logo a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 0 !important;
	max-height: none !important;
	height: auto !important;
}

.whb-general-header .site-logo img,
.whb-general-header .site-logo .wd-logo img,
.whb-general-header .wd-logo img,
.whb-general-header .wd-logo img[width]:not([src$=".svg"]) {
	/* Exact Figma lockup; also beats theme inline max-width:236px */
	width: 209px !important;
	max-width: 209px !important;
	min-width: 209px !important;
	height: 51px !important;
	max-height: 51px !important;
	padding: 0 !important;
	margin: 0 !important;
	object-fit: contain !important;
	object-position: left center !important;
	transform: none !important;
}

.whb-general-header .wd-header-main-nav {
	width: auto !important;
}

.whb-general-header .wd-nav,
.whb-general-header .wd-header-main-nav .wd-nav {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 20px !important; /* Figma Frame 1 gap */
	flex-wrap: nowrap !important;
}

.whb-general-header .wd-nav > li {
	margin: 0 !important;
	padding: 0 !important;
}

/* Header type: Space Grotesk 20 / Medium 500 / #1F2641 */
.whb-general-header .wd-nav > li > a,
.whb-general-header .wd-nav > li > a .nav-link-text,
.whb-general-header .wd-header-nav .wd-nav > li > a,
.whb-general-header .wd-header-nav .wd-nav > li > a .nav-link-text {
	font-family: var(--wds-font-heading), 'Space Grotesk', sans-serif !important;
	font-size: 20px !important;
	font-weight: 500 !important;
	line-height: 1 !important;
	color: #1F2641 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	padding: 0 !important;
	white-space: nowrap !important;
}

.whb-general-header .wd-nav > li > a:hover,
.whb-general-header .wd-nav > li > a:hover .nav-link-text {
	color: var(--wds-color-primary) !important;
}

.whb-for_business_btn {
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	--btn-brd-radius: 0 !important;
	--btn-default-brd-radius: 0 !important;
	--btn-accented-brd-radius: 0 !important;
}

/* Figma Frame 44 (selected): radius 0 (choras) · pad 10/20 · hug ~160×44 · Inter 20 · #6A4972 / #EFEFFF
 * Sharp choras corners (radius 0) — NOT WoodMart pill (btn-shape-round → 35px).
 * Force every radius channel so theme/vars/shape classes cannot win. */
.whb-for_business_btn .btn,
.whb-for_business_btn a.btn,
.whb-general-header .whb-for_business_btn a.btn,
.whb-general-header .whb-for_business_btn .btn,
.whb-column .whb-for_business_btn a.btn,
.whb-for_business_btn a.btn.btn-style-default,
.whb-for_business_btn a.btn.btn-shape-rectangle,
.whb-for_business_btn a.btn.btn-shape-round,
.whb-for_business_btn a.btn.btn-shape-semi-round,
.whb-for_business_btn a.btn.btn-size-default,
.whb-general-header .whb-for_business_btn a.btn.btn-style-default.btn-shape-rectangle,
.whb-general-header .whb-for_business_btn a.btn.btn-style-default.btn-shape-round {
	--btn-brd-radius: 0 !important;
	--btn-default-brd-radius: 0 !important;
	--btn-accented-brd-radius: 0 !important;
	--btn-transform: none !important;
	--btn-font-weight: 400 !important;
	--btn-color: #EFEFFF !important;
	--btn-color-hover: #FFFFFF !important;
	--btn-height: 44px !important;
	--btn-padding: 10px 20px !important;
	background: #6A4972 !important;
	background-color: #6A4972 !important;
	border: none !important;
	border-width: 0 !important;
	border-style: none !important;
	border-color: transparent !important;
	/* Sharp corners — beats var(--btn-brd-radius) and 35px round shape */
	border-radius: 0 !important;
	border-top-left-radius: 0 !important;
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
	-webkit-border-radius: 0 !important;
	min-height: 44px !important;
	height: 44px !important;
	max-height: 44px !important;
	min-width: 0 !important;
	padding: 10px 20px !important;
	font-family: var(--wds-font-heading), 'Space Grotesk', sans-serif !important;
	font-size: 20px !important;
	font-weight: 400 !important;
	color: #EFEFFF !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	box-shadow: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	line-height: 1 !important;
	white-space: nowrap !important;
	box-sizing: border-box !important;
	vertical-align: middle !important;
	overflow: hidden !important;
}

.whb-for_business_btn .btn:hover,
.whb-for_business_btn a.btn:hover,
.whb-general-header .whb-for_business_btn a.btn:hover,
.whb-general-header .whb-for_business_btn a.btn.btn-style-default:hover {
	background: #553A5C !important;
	background-color: #553A5C !important;
	border-color: #553A5C !important;
	color: #FFFFFF !important;
	border-radius: 0 !important;
}

/* ------------------------------------------------------------
 * Header search — inline expand in the header (desktop)
 * Mobile: fixed glass pill under the header
 * ------------------------------------------------------------ */

/* Allow dropdown to escape header chrome */
.whb-main-header,
.whb-general-header,
.whb-general-header .container,
.whb-general-header-inner {
	overflow: visible !important;
}

/* Search — icon only (hide "Search" label + native tooltip clutter) */
.whb-general-header .wd-header-search .wd-tools-text {
	display: none !important;
}

.whb-general-header .wd-header-search {
	margin: 0 !important;
	position: relative !important;
	overflow: visible !important;
}

.whb-general-header .wd-header-search > a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 29px !important;
	height: 29px !important;
	transition: color 0.2s ease, opacity 0.18s ease, transform 0.18s ease !important;
}

.whb-general-header .wd-header-search.wd-opened > a,
.whb-general-header .wd-header-search.wd-display-dropdown.wd-opened > a {
	color: #6B4C72 !important;
}

.whb-general-header .wd-header-search.wd-display-dropdown .searchform {
	--wd-form-color: #1F2641 !important;
	--wd-form-placeholder-color: rgba(31, 38, 65, 0.42) !important;
	--wd-form-brd-color: transparent !important;
	--wd-form-brd-color-focus: transparent !important;
	overflow: visible !important;
}

.whb-general-header .wd-header-search.wd-display-dropdown .searchsubmit {
	color: rgba(31, 38, 65, 0.55) !important;
	background: transparent !important;
	box-shadow: none !important;
	transition: color 0.2s ease, background-color 0.2s ease !important;
}

.whb-general-header .wd-header-search.wd-display-dropdown .searchsubmit:hover {
	color: #6B4C72 !important;
	background: transparent !important;
}

/* Open state shared (desktop/mobile JS adds .wd-opened) */
.whb-general-header .wd-header-search.wd-display-dropdown.wd-opened > .wd-search-dropdown,
.whb-general-header .wd-header-search.wd-display-dropdown .wd-search-dropdown.wd-opened {
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

/* When search is open: soften For Business so the bar can own that zone */
@media (min-width: 768px) {
	html.rjw-search-inline-open .whb-general-header .whb-for_business_btn {
		opacity: 0 !important;
		transform: translateX(8px) !important;
		pointer-events: none !important;
		transition: opacity 0.18s ease, transform 0.18s ease !important;
	}

	.whb-general-header .whb-for_business_btn {
		transition: opacity 0.18s ease, transform 0.18s ease !important;
	}

	/* Hide the trigger icon while the bar is open (searchsubmit replaces it) */
	.whb-general-header .wd-header-search.wd-display-dropdown.wd-opened > a {
		opacity: 0 !important;
		transform: scale(0.6) !important;
		pointer-events: none !important;
	}

	/* Kill WoodMart hover-open — click only (JS) */
	.whb-general-header .wd-header-search.wd-display-dropdown:hover > .wd-search-dropdown:not(.wd-opened) {
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
	}

	/* Inline bar — sits in the header tools row, expands left from the icon */
	.whb-general-header .wd-header-search.wd-display-dropdown .wd-search-dropdown {
		position: fixed !important;
		top: var(--rjw-search-dd-top, 50%) !important;
		left: auto !important;
		right: var(--rjw-search-dd-right, 120px) !important;
		width: var(--rjw-search-dd-width, 340px) !important;
		max-width: calc(100vw - 48px) !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		box-sizing: border-box !important;
		z-index: 520 !important;
		opacity: 0 !important;
		visibility: hidden !important;
		pointer-events: none !important;
		transform: translateX(12px) scaleX(0.92) !important;
		transform-origin: right center !important;
		transition:
			opacity 0.22s cubic-bezier(0.22, 1, 0.36, 1),
			visibility 0.22s cubic-bezier(0.22, 1, 0.36, 1),
			transform 0.26s cubic-bezier(0.22, 1, 0.36, 1) !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown.wd-opened > .wd-search-dropdown,
	.whb-general-header .wd-header-search.wd-display-dropdown .wd-search-dropdown.wd-opened {
		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto !important;
		transform: translateX(0) scaleX(1) !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .wd-search-dropdown:before,
	.whb-general-header .wd-header-search.wd-display-dropdown .wd-search-dropdown:after {
		content: none !important;
		display: none !important;
	}

	/* Slim filled pill — readable on white header (no weak glass) */
	.whb-general-header .wd-header-search.wd-display-dropdown .searchform {
		--wd-form-height: 40px !important;
		--wd-form-bg: #F6F4F8 !important;
		--wd-form-color: #1F2641 !important;
		--wd-form-placeholder-color: rgba(31, 38, 65, 0.42) !important;
		position: relative !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		overflow: visible !important;
		border: 1px solid rgba(107, 76, 114, 0.22) !important;
		border-radius: 999px !important;
		background: #F6F4F8 !important;
		box-shadow:
			0 1px 0 rgba(255, 255, 255, 0.85) inset,
			0 6px 18px rgba(31, 38, 65, 0.06) !important;
		transition:
			border-color 0.2s ease,
			box-shadow 0.2s ease,
			background-color 0.2s ease !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .searchform:before {
		content: none !important;
		display: none !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .searchform:focus-within {
		background: #FFFFFF !important;
		border-color: #6B4C72 !important;
		box-shadow:
			0 0 0 3px rgba(107, 76, 114, 0.14),
			0 8px 20px rgba(31, 38, 65, 0.08) !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown input.s,
	.whb-general-header .wd-header-search.wd-display-dropdown input[type="text"] {
		height: 40px !important;
		min-height: 40px !important;
		max-height: 40px !important;
		min-width: 0 !important;
		width: 100% !important;
		padding: 0 44px 0 16px !important;
		border: 0 !important;
		border-radius: 999px !important;
		background: transparent !important;
		box-shadow: none !important;
		outline: none !important;
		font-family: 'Inter', var(--wds-font-body), sans-serif !important;
		font-size: 14px !important;
		font-weight: 500 !important;
		letter-spacing: -0.01em !important;
		line-height: 1.3 !important;
		color: #1F2641 !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown input.s::placeholder,
	.whb-general-header .wd-header-search.wd-display-dropdown input[type="text"]::placeholder {
		color: rgba(31, 38, 65, 0.4) !important;
		opacity: 1 !important;
		font-weight: 400 !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .searchsubmit {
		width: 36px !important;
		height: 36px !important;
		inset-inline-end: 2px !important;
		border-radius: 999px !important;
		color: #6B4C72 !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .searchform:focus-within .searchsubmit {
		color: #6B4C72 !important;
		background: rgba(107, 76, 114, 0.1) !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .searchsubmit:after {
		font-size: 15px !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .wd-clear-search {
		color: rgba(31, 38, 65, 0.4) !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .wd-search-results-wrapper,
	.whb-general-header .wd-header-search.wd-display-dropdown .wd-dropdown-results {
		max-width: none !important;
		width: 100% !important;
		margin: 0 !important;
		inset-inline: auto !important;
		right: auto !important;
		left: auto !important;
		position: relative !important;
	}

	/* Results drop below the header bar */
	.whb-general-header .wd-header-search.wd-display-dropdown .wd-dropdown-results {
		margin-top: 10px !important;
		padding: 6px !important;
		border: 1px solid rgba(107, 76, 114, 0.14) !important;
		border-radius: 16px !important;
		background: #FFFFFF !important;
		box-shadow: 0 16px 36px rgba(31, 38, 65, 0.12) !important;
		overflow: hidden !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .wd-dropdown-results .wd-suggestion {
		padding: 10px 10px !important;
		border-color: #EDEAF4 !important;
		border-radius: 12px !important;
		background: transparent !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .wd-dropdown-results .wd-suggestion:hover {
		background: #F6F4F8 !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .wd-dropdown-results .wd-suggestion-thumb {
		max-width: 48px !important;
		border-radius: 10px !important;
		overflow: hidden !important;
	}
}

/*
 * Mobile search dropdown:
 * - Do NOT override header position (breaks sticky → first-tap whitespace).
 * - Panel is position:fixed and opened via click JS.
 */
@media (max-width: 767px) {
	.whb-main-header,
	.whb-general-header,
	.whb-general-header .container,
	.whb-general-header-inner,
	.whb-general-header .whb-col-right {
		overflow: visible !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown {
		position: relative !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .wd-search-dropdown {
		position: fixed !important;
		top: var(--rjw-search-dd-top, 110px) !important;
		left: 16px !important;
		right: 16px !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		border-radius: 0 !important;
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: translateY(-4px) scale(0.98) !important;
		transform-origin: top center !important;
		z-index: 1000 !important;
		box-sizing: border-box !important;
		transition:
			opacity 0.2s cubic-bezier(0.22, 1, 0.36, 1),
			visibility 0.2s cubic-bezier(0.22, 1, 0.36, 1),
			transform 0.2s cubic-bezier(0.22, 1, 0.36, 1) !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .searchform {
		--wd-form-height: 48px !important;
		--wd-form-bg: #F6F4F8 !important;
		border: 1px solid rgba(107, 76, 114, 0.2) !important;
		border-radius: 999px !important;
		background: #F6F4F8 !important;
		box-shadow:
			0 1px 0 rgba(255, 255, 255, 0.7) inset,
			0 14px 32px rgba(31, 38, 65, 0.12) !important;
		transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown input.s,
	.whb-general-header .wd-header-search.wd-display-dropdown input[type="text"] {
		height: 48px !important;
		min-height: 48px !important;
		border: 0 !important;
		border-radius: 999px !important;
		background: transparent !important;
		font-family: 'Inter', var(--wds-font-body), sans-serif !important;
		font-size: 14px !important;
		font-weight: 500 !important;
		letter-spacing: -0.01em !important;
		color: #1F2641 !important;
		padding-inline-start: 18px !important;
		padding-inline-end: 48px !important;
		box-shadow: none !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .searchform:focus-within {
		background: #FFFFFF !important;
		border-color: #6B4C72 !important;
		box-shadow:
			0 0 0 3px rgba(107, 76, 114, 0.14),
			0 14px 32px rgba(31, 38, 65, 0.12) !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .searchform:focus-within .searchsubmit {
		color: #6B4C72 !important;
		background: rgba(107, 76, 114, 0.1) !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown .wd-dropdown-results {
		margin-top: 8px !important;
		padding: 6px !important;
		border-radius: 16px !important;
		border: 1px solid rgba(107, 76, 114, 0.14) !important;
		background: #FFFFFF !important;
		box-shadow: 0 12px 28px rgba(31, 38, 65, 0.1) !important;
		overflow: hidden !important;
	}

	.whb-general-header .wd-header-search.wd-display-dropdown.wd-opened > .wd-search-dropdown,
	.whb-general-header .wd-header-search.wd-display-dropdown .wd-search-dropdown.wd-opened {
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		transform: translateY(0) scale(1) !important;
	}

	/* Kill sticky :hover open on touch — only .wd-opened counts */
	.whb-general-header .wd-header-search.wd-display-dropdown:not(.wd-opened) > .wd-search-dropdown:not(.wd-opened) {
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
	}
}

/* Figma has no wishlist in header */
.whb-general-header .wd-header-wishlist,
.whb-general-header .wd-header-wishlist.wd-tools-element {
	display: none !important;
}

.whb-general-header .wd-tools-element {
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
}

.whb-general-header .wd-header-wishlist.wd-tools-element {
	display: none !important;
}

.whb-general-header .whb-col-right > .wd-header-search,
.whb-general-header .whb-col-right > .wd-header-my-account,
.whb-general-header .whb-col-right > .wd-header-cart,
.whb-general-header .whb-col-right > .whb-for_business_btn {
	margin: 0 !important;
}

/* Gap already handles CTA → icons rhythm; no extra margin */
.whb-general-header .whb-for_business_btn {
	margin-right: 0 !important;
}

.whb-general-header .wd-tools-element .wd-tools-icon,
.whb-general-header .wd-tools-element > a {
	color: #1F2641 !important;
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 29px !important;
	height: 29px !important;
}

.whb-general-header .wd-tools-element .wd-tools-icon:before,
.whb-general-header .wd-tools-element .wd-tools-icon:after {
	/* Keep WoodMart icon fonts optically centered in the 29 box */
	line-height: 1 !important;
}

/* Cart count badge — digit perfectly centered in brand purple circle */
.whb-general-header .wd-header-cart .wd-tools-icon {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.whb-general-header .wd-header-cart .wd-cart-number > span,
.whb-general-header .wd-header-cart .wd-tools-text {
	display: none !important;
}

.whb-general-header .wd-header-cart .wd-tools-count,
.whb-general-header .wd-header-cart .wd-cart-number {
	position: absolute !important;
	top: -6px !important;
	right: -8px !important;
	min-width: 16px !important;
	width: auto !important;
	height: 16px !important;
	padding: 0 4px !important;
	border-radius: 999px !important;
	background: #6A4972 !important;
	color: #FFFFFF !important;
	font-size: 10px !important;
	line-height: 1 !important;
	font-family: 'Inter', var(--wds-font-body), sans-serif !important;
	font-weight: 600 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	visibility: visible !important;
	opacity: 1 !important;
	z-index: 3 !important;
	box-sizing: border-box !important;
	white-space: nowrap !important;
	text-align: center !important;
}

/* Kill broken data-count ::after hack if present elsewhere */
.whb-general-header .wd-header-cart .wd-cart-number::after {
	content: none !important;
	display: none !important;
}

@media (max-width: 1199px) {
	.whb-general-header .container {
		padding-left: 24px !important;
		padding-right: 24px !important;
	}

	.whb-general-header-inner {
		display: flex !important;
		grid-template-columns: none !important;
	}

	.whb-general-header .whb-col-left,
	.whb-general-header .whb-col-center,
	.whb-general-header .whb-col-right {
		grid-column: auto !important;
		justify-self: auto !important;
	}

	.whb-general-header .whb-col-center {
		margin-left: 24px !important;
		justify-content: flex-start !important;
	}

	.whb-general-header .wd-nav > li > a,
	.whb-general-header .wd-nav > li > a .nav-link-text {
		font-size: 16px !important;
	}

	.whb-for_business_btn .btn,
	.whb-for_business_btn a.btn,
	.whb-general-header .whb-for_business_btn a.btn {
		--btn-brd-radius: 0 !important;
		border-radius: 0 !important;
		border-top-left-radius: 0 !important;
		border-top-right-radius: 0 !important;
		border-bottom-right-radius: 0 !important;
		border-bottom-left-radius: 0 !important;
		font-size: 14px !important;
		padding: 8px 16px !important;
		height: 40px !important;
		min-height: 40px !important;
		max-height: 40px !important;
	}
}

/* Landscape tablet still uses the Figma desktop header, just scaled.
 * Keep the official wordmark legible and prevent the CTA from reverting
 * to the smaller, pill-like WoodMart treatment. */
@media (min-width: 769px) and (max-width: 1199px) {
	.whb-general-header .site-logo img,
	.whb-general-header .wd-logo img {
		width: 148px !important;
		max-width: 148px !important;
		min-width: 148px !important;
		height: 36px !important;
		max-height: 36px !important;
		padding: 0 !important;
	}

	.whb-for_business_btn .btn,
	.whb-for_business_btn a.btn,
	.whb-general-header .whb-for_business_btn a.btn {
		--btn-brd-radius: 0 !important;
		border-radius: 0 !important;
		border-top-left-radius: 0 !important;
		border-top-right-radius: 0 !important;
		border-bottom-right-radius: 0 !important;
		border-bottom-left-radius: 0 !important;
		min-height: 44px !important;
		height: 44px !important;
		max-height: 44px !important;
		padding: 10px 20px !important;
		font-size: 16px !important;
	}
}

/* ==========================================================================
   Elementor Footer — post 1007 (Figma Group 41)
   Brand | Discount+Guides | Business+Embroidery | Get Help+Legal
   Store bar: Visit | Palmetto lockup + addr | divider | addr + Jackie lockup
   ========================================================================== */

.wd-footer.footer-container,
.footer-container.wd-footer {
	background: #FFFFFF !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
}

.wd-footer .container.main-footer {
	max-width: none !important;
	width: 100% !important;
	padding: 0 !important;
}

.elementor-1007 {
	--wds-footer-gutter: 53px;
	--wds-footer-store-bg: #F0EFFF;
	background: #FFFFFF !important;
}

@media (max-width: 1199px) {
	.elementor-1007 {
		--wds-footer-gutter: clamp(18px, 2.5vw, 48px);
	}
}

/*
 * Main link grid — Figma Group 41 / Group 37
 * Brand zone ≈ left 50% (logo left-aligned inside it).
 * Links zone ≈ right 50% (Group 37 ≈ 840×365 @ x=1003 on 1920 artboard).
 * 3627545 is e-con-full — four columns are direct children.
 */
.elementor-1007 .elementor-element-3627545 {
	background: #FFFFFF !important;
	display: grid !important;
	/* brand ≈55% of fr track so links start near Figma x≈1003 on 1920 */
	grid-template-columns:
		minmax(0, 1.15fr)
		minmax(0, 0.31fr)
		minmax(0, 0.38fr)
		minmax(0, 0.26fr) !important;
	column-gap: 28px !important;
	row-gap: 0 !important;
	padding: 72px var(--wds-footer-gutter) 64px !important;
	align-items: start !important;
	max-width: none !important;
	width: 100% !important;
	box-sizing: border-box !important;
	--display: grid !important;
	border-top: 1px solid #E8E4F0 !important;
}

.elementor-1007 .elementor-element-3627545 > .e-con-inner {
	display: contents !important;
}

/* Kill Elementor % widths / flex that create a dead center gap */
.elementor-1007 .elementor-element-3627545 > .e-con,
.elementor-1007 .elementor-element-3627545 > .e-con-inner > .e-con {
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	flex: none !important;
	margin: 0 !important;
	--width: auto !important;
	padding: 0 !important;
	--padding-top: 0px !important;
	--padding-bottom: 0px !important;
	--padding-left: 0px !important;
	--padding-right: 0px !important;
}

.elementor-1007 .elementor-element-89ee6b9 > .e-con-inner,
.elementor-1007 .elementor-element-53851ae > .e-con-inner,
.elementor-1007 .elementor-element-343c507 > .e-con-inner,
.elementor-1007 .elementor-element-b848190 > .e-con-inner,
.elementor-1007 .elementor-element-89ee6b9,
.elementor-1007 .elementor-element-53851ae,
.elementor-1007 .elementor-element-343c507,
.elementor-1007 .elementor-element-b848190 {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	gap: 0 !important;
	padding: 0 !important;
	height: auto !important;
}

/* Brand stays top-aligned in its 50% half (Figma — not vertically centered) */
.elementor-1007 .elementor-element-89ee6b9 {
	gap: 18px !important;
	padding-right: 12px !important;
}

/* Figma logo lockup ≈ 360–390 × 100 on 1920 artboard */
.elementor-1007 .elementor-element-baa3746 {
	width: 100% !important;
	max-width: 360px !important;
}

.elementor-1007 .elementor-element-baa3746 img {
	width: 360px !important;
	max-width: 360px !important;
	height: auto !important;
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
}

.elementor-1007 .elementor-element-cd6268c .elementor-heading-title {
	font-family: var(--wds-font-heading), 'Space Grotesk', sans-serif !important;
	font-size: 28px !important;
	font-weight: 600 !important;
	line-height: 1.28 !important;
	color: #1F2641 !important;
	margin: 0 !important;
}

.elementor-1007 .elementor-element-26e72ab .elementor-heading-title,
.elementor-1007 .elementor-element-2ee174e .elementor-heading-title,
.elementor-1007 .elementor-element-68e129e .elementor-heading-title,
.elementor-1007 .elementor-element-e8b71c2 .elementor-heading-title,
.elementor-1007 .elementor-element-0997b51 .elementor-heading-title,
.elementor-1007 .elementor-element-60a7ccd .elementor-heading-title {
	font-family: var(--wds-font-heading), 'Space Grotesk', sans-serif !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	color: #1F2641 !important;
	margin: 0 0 16px !important;
}

/* Guides / Legal / Embroidery sit under the first group in the same column (Figma) */
.elementor-1007 .elementor-element-2ee174e {
	margin-top: 36px !important;
}

.elementor-1007 .elementor-element-e8b71c2 {
	margin-top: 36px !important;
}

.elementor-1007 .elementor-element-60a7ccd {
	margin-top: 36px !important;
}

.elementor-1007 .elementor-element-95a1614,
.elementor-1007 .elementor-element-95a1614 p,
.elementor-1007 .elementor-element-95a1614 a,
.elementor-1007 .elementor-element-20e59df,
.elementor-1007 .elementor-element-20e59df p,
.elementor-1007 .elementor-element-20e59df a,
.elementor-1007 .elementor-element-9270f30,
.elementor-1007 .elementor-element-9270f30 p,
.elementor-1007 .elementor-element-9270f30 a,
.elementor-1007 .elementor-element-e8b71c3,
.elementor-1007 .elementor-element-e8b71c3 p,
.elementor-1007 .elementor-element-e8b71c3 a,
.elementor-1007 .elementor-element-a754e15,
.elementor-1007 .elementor-element-a754e15 p,
.elementor-1007 .elementor-element-a754e15 a {
	font-family: 'Inter', var(--wds-font-body), sans-serif !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #454747 !important;
	margin: 0 !important;
	text-decoration: none !important;
}

/* Kill bullets, + icons, underlines (WoodMart defaults) */
.elementor-1007 ul,
.elementor-1007 .wds-footer-links,
.elementor-1007 .elementor-widget-text-editor ul,
.elementor-1007 .elementor-widget-text-editor .elementor-widget-container ul {
	list-style: none !important;
	list-style-type: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.elementor-1007 ul li,
.elementor-1007 .wds-footer-links li,
.elementor-1007 .elementor-widget-text-editor ul li {
	list-style: none !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	position: relative !important;
}

.elementor-1007 ul li::before,
.elementor-1007 ul li::after,
.elementor-1007 .wds-footer-links li::before,
.elementor-1007 .wds-footer-links li::after,
.elementor-1007 .elementor-widget-text-editor ul li::before,
.elementor-1007 .elementor-widget-text-editor ul li::after {
	content: none !important;
	display: none !important;
}

.elementor-1007 ul li::marker,
.elementor-1007 .wds-footer-links li::marker {
	content: '' !important;
	font-size: 0 !important;
	color: transparent !important;
}

.elementor-1007 ul li:last-child,
.elementor-1007 .wds-footer-links li:last-child {
	margin-bottom: 0 !important;
}

.elementor-1007 a,
.elementor-1007 .elementor-widget-text-editor a {
	text-decoration: none !important;
	box-shadow: none !important;
	border: none !important;
	color: #454747 !important;
}

.elementor-1007 .elementor-element-95a1614 a:hover,
.elementor-1007 .elementor-element-20e59df a:hover,
.elementor-1007 .elementor-element-9270f30 a:hover,
.elementor-1007 .elementor-element-a754e15 a:hover {
	color: var(--wds-color-primary) !important;
}

/* Store locations bar — Figma: Visit (left) | Palmetto+addr | divider | addr+Jackie (right) */
.elementor-1007 .elementor-element-95aa0eb {
	background: var(--wds-footer-store-bg) !important;
	position: relative !important;
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 40px !important;
	padding: 32px var(--wds-footer-gutter) !important;
	min-height: 112px !important;
	box-sizing: border-box !important;
	width: 100% !important;
	--display: flex !important;
	--flex-wrap: nowrap !important;
	--align-items: center !important;
	--justify-content: flex-start !important;
	--padding-top: 32px !important;
	--padding-bottom: 32px !important;
	--padding-left: var(--wds-footer-gutter) !important;
	--padding-right: var(--wds-footer-gutter) !important;
	border-top: 1px solid #E4E0F0 !important;
}

.elementor-1007 .elementor-element-95aa0eb > .e-con-inner {
	display: contents !important;
}

.elementor-1007 .elementor-element-visitstr {
	margin-right: auto !important;
	flex: 0 0 auto !important;
	align-self: center !important;
	display: flex !important;
	align-items: center !important;
}

.elementor-1007 .elementor-element-visitstr .elementor-heading-title {
	font-family: var(--wds-font-heading), 'Space Grotesk', sans-serif !important;
	font-size: 20px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	color: #2F3131 !important;
	margin: 0 !important;
	padding: 0 !important;
	white-space: nowrap !important;
}

.elementor-1007 .elementor-element-ec644a8,
.elementor-1007 .elementor-element-d6dbc12 {
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	--width: auto !important;
	align-self: center !important;
}

.elementor-1007 .elementor-element-ec644a8 > .e-con-inner,
.elementor-1007 .elementor-element-d6dbc12 > .e-con-inner,
.elementor-1007 .elementor-element-ec644a8,
.elementor-1007 .elementor-element-d6dbc12 {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 14px !important;
	padding: 0 !important;
	width: auto !important;
	min-height: 56px !important;
	--flex-direction: row !important;
	--flex-wrap: nowrap !important;
	--align-items: center !important;
}

.elementor-1007 .elementor-element-d6dbc12 {
	padding-left: 40px !important;
	border-left: 1px solid #D2D0DE !important;
	margin-left: 0 !important;
}

.elementor-1007 .elementor-element-41e75c6,
.elementor-1007 .elementor-element-93442c4 {
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	align-self: center !important;
	display: flex !important;
	align-items: center !important;
}

.elementor-1007 .elementor-element-41e75c6 .elementor-widget-container,
.elementor-1007 .elementor-element-93442c4 .elementor-widget-container {
	width: auto !important;
	max-width: none !important;
	line-height: 0 !important;
}

.elementor-1007 .elementor-element-41e75c6 img,
.elementor-1007 .elementor-element-93442c4 img {
	/* Primary horizontal lockups — Figma-scale */
	max-height: 56px !important;
	width: auto !important;
	max-width: 200px !important;
	height: 56px !important;
	display: block !important;
	object-fit: contain !important;
	object-position: left center !important;
	opacity: 1 !important;
	visibility: visible !important;
}

.elementor-1007 .elementor-element-6d7541a,
.elementor-1007 .elementor-element-e53cadb {
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	align-self: center !important;
	display: flex !important;
	align-items: center !important;
}

.elementor-1007 .elementor-element-6d7541a .elementor-widget-container,
.elementor-1007 .elementor-element-e53cadb .elementor-widget-container {
	width: auto !important;
}

.elementor-1007 .elementor-element-6d7541a,
.elementor-1007 .elementor-element-6d7541a p,
.elementor-1007 .elementor-element-e53cadb,
.elementor-1007 .elementor-element-e53cadb p {
	font-family: 'Inter', var(--wds-font-body), sans-serif !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #2F3131 !important;
	margin: 0 !important;
	max-width: 260px !important;
	white-space: normal !important;
}

/* Copyright — separate thin strip under stores */
.elementor-1007 .elementor-element-25e12df {
	background: #EBE8F5 !important;
	border-top: none !important;
}

.elementor-1007 .elementor-element-25e12df > .e-con-inner,
.elementor-1007 .elementor-element-25e12df {
	padding: 12px var(--wds-footer-gutter) !important;
	box-sizing: border-box !important;
	min-height: 0 !important;
	display: flex !important;
	align-items: center !important;
}

.elementor-1007 .elementor-element-27d33b9,
.elementor-1007 .elementor-element-27d33b9 p {
	font-family: 'Inter', var(--wds-font-body), sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
	color: #8A8A96 !important;
	margin: 0 !important;
	text-align: left !important;
	width: 100% !important;
}

.elementor-1007 .elementor-element-25e12df,
.elementor-1007 .elementor-element-25e12df > .e-con-inner {
	justify-content: flex-start !important;
	--justify-content: flex-start !important;
	text-align: left !important;
}

@media (max-width: 1024px) {
	.whb-general-header-inner {
		min-height: 72px !important;
		height: 72px !important;
		max-height: 72px !important;
		padding-block: 12px !important;
	}

	.whb-col-right {
		gap: 18px !important;
	}

	.elementor-1007 .elementor-element-3627545 {
		grid-template-columns: 1fr 1fr !important;
		column-gap: 32px !important;
		row-gap: 36px !important;
		padding: 48px var(--wds-footer-gutter) 40px !important;
	}

	.elementor-1007 .elementor-element-3627545 > .e-con-inner {
		display: contents !important;
	}

	.elementor-1007 .elementor-element-95aa0eb {
		flex-wrap: wrap !important;
		gap: 24px 32px !important;
		padding: 28px var(--wds-footer-gutter) !important;
		min-height: 0 !important;
	}

	.elementor-1007 .elementor-element-95aa0eb > .e-con-inner,
	.elementor-1007 .elementor-element-95aa0eb.e-con-full {
		flex-wrap: wrap !important;
		justify-content: flex-start !important;
		gap: 20px !important;
	}

	.elementor-1007 .elementor-element-visitstr {
		width: 100% !important;
		margin-right: 0 !important;
	}

	.elementor-1007 .elementor-element-d6dbc12 {
		padding-left: 0 !important;
		border-left: none !important;
	}

	.elementor-1007 .elementor-element-41e75c6 img,
	.elementor-1007 .elementor-element-93442c4 img {
		max-height: 48px !important;
		height: 48px !important;
		max-width: 180px !important;
	}
}

@media (max-width: 768px) {
	.wds-announcement {
		font-size: 11px;
		padding: 8px 12px;
	}

	.wds-site-header__row {
		gap: 14px;
	}

	.wds-brand {
		min-width: 0;
	}

	.wds-brand__word {
		font-size: 30px;
	}

	.wds-nav {
		display: none;
	}

	.wds-btn-business,
	.wds-icon-btn[aria-label="Account"] {
		display: none;
	}

	.wds-mobile-toggle {
		display: inline-flex;
	}

	.wds-site-footer__row {
		grid-template-columns: 1fr;
	}

	.elementor-1007 .elementor-element-3627545 > .e-con-inner {
		grid-template-columns: 1fr !important;
		gap: 32px !important;
	}
}

/* WoodMart keeps the desktop navigation in the header builder on small
 * screens unless it is explicitly disabled.  It was overflowing beside the
 * logo, so leave the utility actions accessible and use the theme's mobile
 * navigation trigger instead. */
@media (max-width: 768px) {
	.whb-general-header .whb-col-center,
	.whb-general-header .wd-header-main-nav,
	.whb-general-header .whb-for_business_btn,
	.whb-general-header .whb-mobile-center,
	.whb-general-header .whb-mobile-right {
		display: none !important;
	}

	.whb-general-header-inner {
		min-height: 64px !important;
		height: 64px !important;
		max-height: 64px !important;
		justify-content: space-between !important;
	}

	.whb-general-header .whb-col-right {
		margin-left: auto !important;
		gap: 14px !important;
	}

	.whb-general-header .site-logo img,
	.whb-general-header .wd-logo img {
		width: 150px !important;
		max-width: 150px !important;
		min-width: 0 !important;
		height: 37px !important;
		max-height: 37px !important;
		padding: 0 !important;
	}
}

/* Homepage mobile navigation: give the WoodMart off-canvas menu the same
 * deliberate spacing and tap targets as the responsive homepage. */
@media (max-width: 767px) {
	body.home .mobile-nav.wd-side-hidden {
		--wd-side-hidden-w: min(88vw, 360px);
		background: #FFFFFF !important;
		box-shadow: 12px 0 32px rgba(31, 38, 65, 0.14) !important;
	}

	body.home .mobile-nav .wd-heading {
		min-height: 64px !important;
		padding: 0 20px !important;
		border-bottom: 1px solid #E4E0F0 !important;
		display: flex !important;
		align-items: center !important;
	}

	body.home .mobile-nav .wd-heading > span,
	body.home .mobile-nav .wd-heading {
		font-family: 'Inter', var(--wds-font-body), sans-serif !important;
		font-size: 15px !important;
		font-weight: 600 !important;
		letter-spacing: 0.01em !important;
		color: #1F2641 !important;
	}

	body.home .mobile-nav .wd-nav-mobile > li > a,
	body.home .mobile-nav .wd-nav-mobile > li > ul li > a {
		min-height: 54px !important;
		padding: 12px 20px !important;
		font-family: 'Inter', var(--wds-font-body), sans-serif !important;
		font-size: 16px !important;
		font-weight: 500 !important;
		line-height: 1.25 !important;
		color: #2F3131 !important;
		border-bottom-color: #EDEAF4 !important;
	}

	body.home .mobile-nav .wd-nav-opener {
		min-width: 54px !important;
		min-height: 54px !important;
		border-color: #EDEAF4 !important;
		color: #1F2641 !important;
	}

	body.home .mobile-nav .wd-nav-opener.wd-active {
		background: #4A94A8 !important;
		color: #FFFFFF !important;
	}
}

/* Mobile header — match approved reference:
 * Logo left · Search · Account · Cart · Menu (right), equal ~16px edge insets. */
@media (max-width: 767px) {
	body .whb-main-header .container {
		padding-inline: 0 !important;
	}

	body .whb-general-header-inner {
		position: relative !important;
		display: flex !important;
		align-items: center !important;
		padding: 12px 16px !important;
		gap: 12px !important;
	}

	body .whb-general-header .whb-col-left {
		flex: 0 1 auto !important;
		min-width: 0 !important;
		order: 1 !important;
	}

	body .whb-general-header .whb-col-right {
		flex: 0 0 auto !important;
		margin-left: auto !important;
		gap: 14px !important;
		order: 2 !important;
		display: flex !important;
		align-items: center !important;
	}

	/* Burger lives in WoodMart's mobile-left column — keep it after cart. */
	body .whb-general-header .whb-mobile-left {
		display: flex !important;
		flex: 0 0 auto !important;
		width: auto !important;
		min-width: 29px !important;
		order: 3 !important;
		align-items: center !important;
		justify-content: center !important;
	}

	body .whb-general-header .wd-header-mobile-nav {
		display: inline-flex !important;
		position: static !important;
		width: 29px !important;
		height: 29px !important;
		margin: 0 !important;
	}

	body .whb-general-header .wd-header-wishlist {
		display: none !important;
	}

	body .whb-general-header .wd-header-my-account {
		display: inline-flex !important;
	}

	body .whb-general-header .site-logo img,
	body .whb-general-header .wd-logo img {
		margin-left: 0 !important;
		width: 132px !important;
		max-width: 132px !important;
		min-width: 0 !important;
		height: 32px !important;
		max-height: 32px !important;
		padding: 0 !important;
	}

	body .whb-general-header .wd-header-mobile-nav > a,
	body .whb-general-header [aria-label="Open mobile menu"] {
		position: static !important;
		transform: none !important;
		left: auto !important;
		right: auto !important;
		top: auto !important;
		width: 29px !important;
		height: 29px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
	}
}

/* Homepage footer on phones: the desktop four-column grid must not be allowed
 * to compress the wordmark and link groups into overlapping narrow tracks. */
@media (max-width: 767px) {
	.elementor-1007 .elementor-element-3627545 {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		column-gap: 28px !important;
		row-gap: 36px !important;
		padding: 40px 24px 44px !important;
		width: 100% !important;
	}

	.elementor-1007 .elementor-element-3627545 > .e-con,
	.elementor-1007 .elementor-element-3627545 > .e-con-inner > .e-con {
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
	}

	.elementor-1007 .elementor-element-89ee6b9 {
		grid-column: 1 / -1 !important;
		padding-right: 0 !important;
		gap: 12px !important;
	}

	.elementor-1007 .elementor-element-baa3746,
	.elementor-1007 .elementor-element-baa3746 img {
		width: 200px !important;
		max-width: 100% !important;
		height: auto !important;
	}

	.elementor-1007 .elementor-element-cd6268c .elementor-heading-title {
		max-width: 260px !important;
		font-size: 24px !important;
		line-height: 1.2 !important;
	}

	.elementor-1007 .elementor-element-26e72ab .elementor-heading-title,
	.elementor-1007 .elementor-element-2ee174e .elementor-heading-title,
	.elementor-1007 .elementor-element-68e129e .elementor-heading-title,
	.elementor-1007 .elementor-element-0997b51 .elementor-heading-title,
	.elementor-1007 .elementor-element-60a7ccd .elementor-heading-title {
		font-size: 16px !important;
		line-height: 1.25 !important;
		margin-bottom: 12px !important;
	}

	.elementor-1007 .elementor-element-95a1614,
	.elementor-1007 .elementor-element-95a1614 p,
	.elementor-1007 .elementor-element-95a1614 a,
	.elementor-1007 .elementor-element-20e59df,
	.elementor-1007 .elementor-element-20e59df p,
	.elementor-1007 .elementor-element-20e59df a,
	.elementor-1007 .elementor-element-9270f30,
	.elementor-1007 .elementor-element-9270f30 p,
	.elementor-1007 .elementor-element-9270f30 a,
	.elementor-1007 .elementor-element-a754e15,
	.elementor-1007 .elementor-element-a754e15 p,
	.elementor-1007 .elementor-element-a754e15 a {
		font-size: 15px !important;
		line-height: 1.35 !important;
	}

	.elementor-1007 .elementor-element-2ee174e,
	.elementor-1007 .elementor-element-60a7ccd {
		margin-top: 28px !important;
	}
}

/* Mobile announcement: one-line marquee (avoid container queries — they
   collapsed the WoodMart nested-carousel width to 0 and hid the text). */
@media (max-width: 767px) {
	.header-banner .elementor,
	.header-banner .elementor > .elementor-element,
	.header-banner .wd-nested-carousel,
	.header-banner .wd-carousel-container,
	.header-banner .wd-carousel-inner,
	.header-banner .wd-carousel,
	.header-banner .wd-carousel-wrap,
	.header-banner .wd-carousel-item,
	.header-banner .wd-carousel-item > .elementor-element,
	.header-banner .wd-carousel-item .e-con-inner,
	.header-banner .elementor-element-a189688,
	.header-banner .elementor-element-a189688 .elementor-widget-container,
	.header-banner .elementor-element-a189688 .wd-text-block {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.header-banner .wd-carousel-wrap {
		transform: none !important;
	}

	.header-banner .wd-carousel-item:not(.wd-active) {
		display: none !important;
	}

	.header-banner .elementor-element-a189688,
	.header-banner .elementor-element-a189688 .elementor-widget-container,
	.header-banner .elementor-element-a189688 .wd-text-block {
		overflow: hidden !important;
		text-align: left !important;
	}

	.header-banner .elementor-element-a189688 p {
		white-space: nowrap !important;
		display: inline-block !important;
		width: max-content !important;
		max-width: none !important;
		margin: 0 !important;
		line-height: 1.35 !important;
		color: inherit !important;
		animation: rjw-announce-marquee 12s linear infinite alternate;
		will-change: transform;
	}

	.wds-announcement {
		overflow: hidden !important;
		white-space: nowrap !important;
		text-overflow: clip !important;
		text-align: left !important;
		padding-block: 8px !important;
	}

	.wds-announcement > * {
		display: inline-block !important;
		white-space: nowrap !important;
		animation: rjw-announce-marquee 12s linear infinite alternate;
	}
}

@keyframes rjw-announce-marquee {
	0%,
	12% {
		transform: translateX(0);
	}

	88%,
	100% {
		/* Scroll just enough to reveal the clipped end of the line. */
		transform: translateX(min(0px, calc(100vw - 2.5rem - 100%)));
	}
}

@media (max-width: 767px) and (prefers-reduced-motion: reduce) {
	.header-banner .elementor-element-a189688 p,
	.wds-announcement,
	.wds-announcement > * {
		animation: none !important;
		transform: none !important;
		white-space: nowrap !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}

/* -------------------------------------------------------------------------- */
/* Mobile CATEGORIES — Core Colors swatches (match desktop Shop By)              */
/* -------------------------------------------------------------------------- */

.mobile-nav .mobile-categories-menu .woodmart-nav-link:has(.ws-mega-swatch),
.mobile-nav .mobile-categories-menu a:has(.ws-mega-swatch) {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
}

.mobile-nav .mobile-categories-menu .ws-mega-swatch {
	display: inline-block !important;
	flex: 0 0 auto !important;
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	margin: 0 !important;
	border-radius: 2px !important;
	background: var(--ws-swatch, #111) !important;
	box-shadow: inset 0 0 0 1px rgba(31, 38, 65, 0.18) !important;
	vertical-align: middle;
}

