/* Shared storefront styling. All content and commerce behavior stay with Woodmart and WooCommerce. */
body.fro-sitewide-design {
	--fro-orange: #f15a22;
	--fro-ink: #141414;
	--fro-cream: #f7f3ef;
	--fro-line: #e6ded6;
	--fro-page-gutter: clamp(16px, 2.5vw, 40px);
	--wd-primary-color: #f15a22;
	--wd-text-font: "Montserrat", sans-serif;
	--wd-title-font: "Barlow Condensed", "Arial Narrow", sans-serif;
	--wd-title-font-weight: 900;
	--wd-title-font-style: italic;
	--btn-accented-bgcolor: #f15a22;
	--btn-accented-bgcolor-hover: #141414;
	--btn-accented-color: #141414;
	--btn-accented-color-hover: #fff;
	--btn-accented-brd-radius: 24px;
	--btn-accented-font-family: "Montserrat", sans-serif;
	--btn-accented-font-weight: 800;
	--btn-accented-font-style: normal;
	background: var(--fro-cream);
	color: #5a5650;
	font-family: "Montserrat", sans-serif;
}

.fro-sitewide-announcement { background: #141414; color: #fff; font-size: 12px; font-weight: 800; line-height: 1.4; overflow-wrap: anywhere; padding: 10px 16px; text-align: center; text-transform: uppercase; }
.fro-sitewide-announcement a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.fro-sitewide-announcement a:hover { color: #ffb290; }
.fro-sitewide-announcement a:focus-visible { outline: 3px solid #f15a22; outline-offset: 3px; }

.fro-sitewide-design .main-page-wrapper {
	background: var(--fro-cream);
}

/* Existing tracking and affiliate content remains editable in its page widgets. */
.fro-sitewide-design .track-search-container,
.fro-sitewide-design .affiliate-container.affiliate-faq {
	width: 100%;
	max-width: none;
	font-family: "Montserrat", sans-serif;
}
.fro-sitewide-design .track-search-container {
	background: #fff;
	border: 1px solid var(--fro-line);
	border-radius: 16px;
	box-shadow: none;
	padding: clamp(20px, 3vw, 40px);
}
.fro-sitewide-design .track-search-container .track-title,
.fro-sitewide-design .affiliate-container.affiliate-faq h3 {
	color: var(--fro-ink);
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-size: clamp(32px, 4vw, 52px);
	font-style: italic;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}
.fro-sitewide-design .track-search-container .track-input { min-width: 0; }
.fro-sitewide-design .affiliate-container.affiliate-faq summary:focus-visible {
	outline: 3px solid var(--fro-orange);
	outline-offset: 2px;
}
.fro-sitewide-design .track-search-container .track-btn { background: var(--fro-ink); color: #fff; }
.fro-sitewide-design .track-search-container .track-btn:hover { background: var(--fro-orange); color: var(--fro-ink); opacity: 1; }
.fro-sitewide-design .affiliate-container.affiliate-faq details {
	background: #fff;
	border-color: var(--fro-line);
	border-radius: 12px;
}
.fro-sitewide-design .affiliate-container.affiliate-faq details[open] { border-color: var(--fro-orange); }
.fro-sitewide-design .affiliate-container.affiliate-faq summary { color: var(--fro-ink); }
.fro-sitewide-design .affiliate-container.affiliate-faq summary::after { color: var(--fro-orange); }
.fro-sitewide-design .affiliate-container.affiliate-faq .content-body { color: #5a5650; }
/* Use the reference's dark sale badge while keeping WooCommerce's label text. */
.fro-sitewide-design .product-label.onsale,
.fro-sitewide-design .product-labels .product-label.onsale {
	background-color: var(--fro-ink);
	color: #fff;
}
/* Match the review stars used throughout the reference design. */
.fro-sitewide-design .star-rating {
	--wd-star-color: #b23a0c;
}
/* Keep WooCommerce success notices readable in the storefront palette. */
.fro-sitewide-design .woocommerce-message {
	background-color: var(--fro-ink);
	border-radius: 16px;
	color: #fff;
}
.fro-sitewide-design .woocommerce-message::before {
	color: var(--fro-orange);
}
.fro-sitewide-design .woocommerce-message a {
	color: #fff;
}
.fro-sitewide-design .woocommerce-message a:focus-visible {
	outline: 3px solid var(--fro-orange);
	outline-offset: 3px;
}
.fro-sitewide-design .wd-compare-table:focus-visible { outline: 2px solid var(--fro-orange); outline-offset: 2px; }
.fro-sitewide-design .fro-product-search-heading {
	color: var(--fro-ink);
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-size: clamp(36px, 4vw, 60px);
	font-style: italic;
	font-weight: 900;
	line-height: 1.05;
	margin: 0;
	overflow-wrap: anywhere;
	padding: 32px 0 0;
	text-transform: uppercase;
}
.fro-sitewide-design:is(.post-type-archive-product, .tax-product_cat, .tax-product_tag, .tax-product_brand) .main-page-wrapper .elementor-widget-text-editor h1 {
	color: var(--fro-ink);
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-size: clamp(40px, 5vw, 68px);
	font-style: italic;
	font-weight: 900;
	line-height: 1;
	overflow-wrap: anywhere;
	text-transform: uppercase;
}
.fro-sitewide-design.page .main-page-wrapper h1.woodmart-title-container {
	color: var(--fro-ink);
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-size: clamp(40px, 5vw, 68px);
	font-style: italic;
	font-weight: 900;
	line-height: 1;
	overflow-wrap: anywhere;
	text-transform: uppercase;
}

/* Keep an image swatch identifiable when its image cannot be loaded. */
.fro-sitewide-design.single-product .variations_form .wd-swatch.wd-bg.fro-swatch-image-failed .wd-swatch-bg {
	display: none;
}
.fro-sitewide-design.single-product .variations_form .wd-swatch.wd-bg.fro-swatch-image-failed .wd-swatch-text {
	display: block;
	padding: 4px;
	color: var(--fro-ink);
	font-size: 12px;
	line-height: 1.2;
	overflow-wrap: anywhere;
}

.fro-sitewide-design .wd-wishlist-content .wd-wishlist-head > .title {
	color: var(--fro-ink);
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-size: clamp(36px, 4vw, 56px);
	font-style: italic;
	font-weight: 900;
	line-height: 1;
	overflow-wrap: anywhere;
	text-transform: uppercase;
}

/* Expand a single comparison column while keeping its image and prose readable. */
@media (min-width: 769px) {
	.fro-sitewide-design .wd-compare-table tr > td:only-of-type { max-width: none; }
	.fro-sitewide-design .wd-compare-table .compare-basic > td:only-of-type .product-image { max-width: 320px; }
	.fro-sitewide-design .wd-compare-table .compare-description > td:only-of-type > * { max-width: 70ch; }
}

/* Keep the age cards and immediately following category navigation together. */
@media (min-width: 1181px) {
	.fro-sitewide-design .fro-ed-age-categories:not(.is-compact) .fro-ed-category-grid {
		grid-template-columns: repeat(var(--fro-age-columns, 5), minmax(0, 1fr));
	}
}
.fro-sitewide-design .elementor-top-section:has(.elementor-widget-fro-homepage-age-categories):has(+ .elementor-top-section .elementor-widget-fro-homepage-product-type-bar) .fro-ed-age-categories {
	margin-bottom: 8px;
}
.fro-sitewide-design .elementor-top-section:has(.elementor-widget-fro-homepage-age-categories) + .elementor-top-section:has(.elementor-widget-fro-homepage-product-type-bar) .fro-ed-term-bar {
	margin-top: 0;
}
/* Avoid stacking two large margins when the brand strip precedes the story. */
.fro-sitewide-design .elementor-top-section:has(.elementor-widget-fro-homepage-brand-bar):has(+ .elementor-top-section .elementor-widget-fro-homepage-story-badges) .fro-ed-brands {
	margin-bottom: 0;
}

.fro-sitewide-design .main-page-wrapper > .container > .elementor > .elementor-top-section > .elementor-container > .elementor-col-100 > .elementor-widget-wrap > .elementor-widget-fro-homepage-story-badges .fro-ed-story {
	background: #fff;
	border-block: 1px solid var(--fro-line);
	margin-inline: calc(-1 * var(--fro-page-gutter));
	padding: 72px var(--fro-page-gutter);
}
.fro-sitewide-design .fro-ed-story-main:not(.is-without-image) { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); }
.fro-sitewide-design .fro-ed-story .fro-ed-button { background: var(--fro-ink); color: #fff !important; }
@media (max-width: 960px) {
	.fro-sitewide-design .fro-ed-story-main:not(.is-without-image) { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
	.fro-sitewide-design .main-page-wrapper > .container > .elementor > .elementor-top-section > .elementor-container > .elementor-col-100 > .elementor-widget-wrap > .elementor-widget-fro-homepage-story-badges .fro-ed-story { padding-block: 48px; }
}

.fro-sitewide-design.fro-show-page-title .main-page-wrapper > .wd-page-title {
	background: var(--fro-cream);
	display: block !important;
	height: auto !important;
	margin: 0 !important;
	padding: 40px var(--fro-page-gutter) 0 !important;
}
.fro-sitewide-design.fro-show-page-title .wd-page-title > .container {
	max-width: none;
	padding: 0;
	width: 100%;
}
.fro-sitewide-design.fro-show-page-title.blog .wd-page-title > .container {
	align-items: flex-start;
	text-align: left;
}
.fro-sitewide-design.fro-show-page-title .wd-page-title .entry-title {
	color: var(--fro-ink);
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-style: italic;
	font-weight: 900;
}
.fro-sitewide-design.fro-show-page-title .wd-page-title .wd-breadcrumbs { color: var(--fro-ink); }
.fro-sitewide-design.fro-show-page-title .wd-page-title .wd-breadcrumbs :is(a, .wd-last, .wd-delimiter) {
	color: var(--fro-ink);
}

/* Target outer containers only; menu dropdowns and forms retain their own widths. */
.fro-sitewide-design .main-page-wrapper > .container,
.fro-sitewide-design .wd-footer > .container,
.fro-sitewide-design .wd-copyrights > .container,
.fro-sitewide-design .whb-row > .container {
	width: 100%;
	max-width: none;
	padding-inline: var(--fro-page-gutter);
}
/* Woodmart's full-width header otherwise caps the inner row at 95%. */
.fro-sitewide-design .whb-full-width .whb-row > .container,
.fro-sitewide-design .whb-full-width + .whb-clone .whb-row > .container {
	max-width: none;
	width: 100%;
}

.fro-sitewide-design .main-page-wrapper > .container:has(> .elementor .elementor-widget-fro-home-hero) {
	padding-top: 0;
}
body.fro-sitewide-design:not(.elementor-editor-active) .main-page-wrapper > .container > .elementor:has(.elementor-widget-fro-home-hero) > .elementor-top-section:first-child:has(.elementor-widget-wrap):not(:has(.elementor-widget-wrap > *)) {
	display: none;
}
.fro-sitewide-design .main-page-wrapper > .container > .elementor > .elementor-top-section > .elementor-container > .elementor-col-100 > .elementor-widget-wrap:has(> :is(.elementor-widget-fro-home-hero, .elementor-widget-fro-home-trust-bar)) {
	padding-block: 0;
}
.fro-sitewide-design .elementor .elementor-widget-fro-home-hero .fro-home-hero__controls button.fro-home-hero__dot {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
}
.fro-sitewide-design .elementor .elementor-widget-fro-home-hero .fro-home-hero__controls button.fro-home-hero__toggle {
	background: rgba(20, 20, 20, .42);
	border: 2px solid #fff;
	border-radius: 50%;
	box-shadow: none;
	color: #fff;
	padding: 0;
}

/* Full-width Elementor sections inside the padded outer content container. */
.fro-sitewide-design .main-page-wrapper > .container > .elementor > .elementor-top-section > .elementor-container > .elementor-col-100 > .elementor-widget-wrap > :is(.elementor-widget-fro-home-hero, .elementor-widget-fro-home-announcement, .elementor-widget-fro-home-trust-bar, .elementor-widget-fro-homepage-marquee) > .elementor-widget-container > :is(.fro-home-hero, .fro-home-announcement, .fro-home-trust, .fro-ed-marquee) {
	width: calc(100% + var(--fro-page-gutter) + var(--fro-page-gutter));
	max-width: none;
	margin-inline: calc(0px - var(--fro-page-gutter));
}

/* Elementor 4.x containers place boxed content in .e-con-inner and full-width
   content directly in .e-con. Keep the editable container as the layout owner. */
body.fro-sitewide-design:not(.elementor-editor-active) .main-page-wrapper > .container > .elementor:has(.elementor-widget-fro-home-hero) > .e-con.e-parent:first-child:not(:has(.elementor-widget, .e-con, .elementor-background-video-container, .elementor-background-slideshow, .elementor-shape)) {
	display: none;
}
.fro-sitewide-design .main-page-wrapper > .container > .elementor:has(.elementor-widget-fro-home-hero) .e-con:has(> .e-con-inner > :is(.elementor-widget-fro-home-hero, .elementor-widget-fro-home-announcement, .elementor-widget-fro-home-trust-bar, .elementor-widget-fro-homepage-marquee)) > .e-con-inner {
	width: calc(100% + var(--fro-page-gutter) + var(--fro-page-gutter));
	max-width: none;
	margin-inline: calc(0px - var(--fro-page-gutter));
	padding-inline: 0;
}
.fro-sitewide-design .main-page-wrapper > .container > .elementor:has(.elementor-widget-fro-home-hero) .e-con:has(> .e-con-inner > :is(.elementor-widget-fro-home-hero, .elementor-widget-fro-home-announcement, .elementor-widget-fro-home-trust-bar, .elementor-widget-fro-homepage-marquee)),
.fro-sitewide-design .main-page-wrapper > .container > .elementor:has(.elementor-widget-fro-home-hero) .e-con:has(> :is(.elementor-widget-fro-home-hero, .elementor-widget-fro-home-announcement, .elementor-widget-fro-home-trust-bar, .elementor-widget-fro-homepage-marquee)) {
	padding-inline: 0;
}
.fro-sitewide-design .main-page-wrapper > .container > .elementor:has(.elementor-widget-fro-home-hero) .e-con:has(> .e-con-inner > :is(.elementor-widget-fro-home-hero, .elementor-widget-fro-home-trust-bar)) > .e-con-inner,
.fro-sitewide-design .main-page-wrapper > .container > .elementor:has(.elementor-widget-fro-home-hero) .e-con:has(> :is(.elementor-widget-fro-home-hero, .elementor-widget-fro-home-trust-bar)) {
	padding-block: 0;
}
.fro-sitewide-design .main-page-wrapper > .container > .elementor:has(.elementor-widget-fro-home-hero) .e-con > .e-con-inner > :is(.elementor-widget-fro-home-hero, .elementor-widget-fro-home-announcement, .elementor-widget-fro-home-trust-bar, .elementor-widget-fro-homepage-marquee) > .elementor-widget-container > :is(.fro-home-hero, .fro-home-announcement, .fro-home-trust, .fro-ed-marquee) {
	width: 100%;
	max-width: none;
	margin-inline: 0;
}
.fro-sitewide-design .main-page-wrapper > .container > .elementor:has(.elementor-widget-fro-home-hero) .e-con > :is(.elementor-widget-fro-home-hero, .elementor-widget-fro-home-announcement, .elementor-widget-fro-home-trust-bar, .elementor-widget-fro-homepage-marquee) > .elementor-widget-container > :is(.fro-home-hero, .fro-home-announcement, .fro-home-trust, .fro-ed-marquee) {
	width: calc(100% + var(--fro-page-gutter) + var(--fro-page-gutter));
	max-width: none;
	margin-inline: calc(0px - var(--fro-page-gutter));
}

.fro-sitewide-design .whb-header .whb-general-header,
.fro-sitewide-design .whb-header .whb-sticky-row,
.fro-sitewide-design .whb-clone .whb-general-header,
.fro-sitewide-design .whb-clone .whb-sticky-row {
	background-color: var(--fro-orange);
}
/* Racing checker stripe directly below the existing editable header. */
.fro-sitewide-design .whb-header > .whb-main-header::after,
.fro-sitewide-design .whb-clone.whb-main-header::after {
	content: "";
	display: block;
	height: 16px;
	background: repeating-conic-gradient(var(--fro-ink) 0 25%, #fff 0 50%) 0 0 / 16px 16px;
	pointer-events: none;
}
.fro-sitewide-design .whb-header .wd-nav-header > li > a,
.fro-sitewide-design .whb-header .wd-tools-element > a,
.fro-sitewide-design .whb-header .wd-header-mobile-nav > a,
.fro-sitewide-design .whb-clone .wd-nav-header > li > a,
.fro-sitewide-design .whb-clone .wd-tools-element > a,
.fro-sitewide-design .whb-clone .wd-header-mobile-nav > a {
	color: var(--fro-ink);
}
.fro-sitewide-design :is(.whb-header, .whb-clone) .wd-nav-header > li > a {
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 800;
	letter-spacing: .03em;
	text-transform: uppercase;
}
/* Woodmart can be configured to display its full-screen search opener as a form. */
.fro-sitewide-design :is(.whb-header, .whb-clone) .wd-header-search-form input.s {
	background-color: #fff;
	border: 2px solid var(--fro-ink);
	border-radius: 24px;
	color: var(--fro-ink);
}
.fro-sitewide-design :is(.whb-header, .whb-clone) .wd-header-search-form input.s::placeholder {
	color: #5a5650;
	opacity: 1;
}
.fro-sitewide-design :is(.whb-header, .whb-clone) .wd-header-search-form .searchsubmit {
	color: var(--fro-ink);
}
@media (min-width: 1440px) {
	.fro-sitewide-design .whb-flex-row:has(.wd-header-search-form) > .whb-col-left.whb-visible-lg { flex: 0 0 160px; min-width: 0; }
	.fro-sitewide-design .whb-flex-row:has(.wd-header-search-form) > .whb-col-center.whb-visible-lg { flex: 1 1 0; min-width: 0; }
	.fro-sitewide-design .whb-flex-row:has(.wd-header-search-form) > .whb-col-right.whb-visible-lg { flex: 0 0 auto; }
	.fro-sitewide-design .whb-col-right:has(.wd-header-search-form) > .whb-space-element { display: none; }
	.fro-sitewide-design .whb-flex-row:has(.wd-header-search-form) .wd-header-search-form { width: clamp(250px, 16vw, 290px); }
	.fro-sitewide-design .whb-flex-row:has(.wd-header-search-form) .wd-header-search-form form,
	.fro-sitewide-design .whb-flex-row:has(.wd-header-search-form) .wd-header-search-form input.s { width: 100%; min-width: 0; }
	.fro-sitewide-design .whb-flex-row:has(.wd-header-search-form) .wd-nav-header { column-gap: 8px; }
	.fro-sitewide-design .whb-flex-row:has(.wd-header-search-form) .wd-nav-header > li > a { font-size: 12px; }
}
@media (min-width: 1025px) and (max-width: 1500px) {
	.fro-sitewide-design :is(.whb-header, .whb-clone) .wd-nav-header { column-gap: 6px; }
	.fro-sitewide-design :is(.whb-header, .whb-clone) .wd-nav-header > li > a { font-size: 12px; }
}
@media (min-width: 1025px) and (max-width: 1200px) {
	.fro-sitewide-design :is(.whb-header, .whb-clone) .whb-column.whb-visible-lg { display: none; }
	.fro-sitewide-design :is(.whb-header, .whb-clone) .whb-column.whb-hidden-lg { display: flex; }
}
/* A form opener needs more space than the icon. Use the existing mobile menu
   at intermediate widths when that option is selected in Header Builder. */
@media (min-width: 1201px) and (max-width: 1439px) {
	.fro-sitewide-design:has(.whb-header .wd-header-search-form) :is(.whb-header, .whb-clone) .whb-column.whb-visible-lg { display: none; }
	.fro-sitewide-design:has(.whb-header .wd-header-search-form) :is(.whb-header, .whb-clone) .whb-column.whb-hidden-lg { display: flex; }
}
.fro-sitewide-design .whb-header .wd-nav-header > li > a:hover,
.fro-sitewide-design .whb-header .wd-tools-element > a:hover,
.fro-sitewide-design .whb-clone .wd-nav-header > li > a:hover,
.fro-sitewide-design .whb-clone .wd-tools-element > a:hover {
	color: #fff;
}

.fro-sitewide-design .wd-footer,
.fro-sitewide-design .wd-copyrights {
	background-color: var(--fro-ink);
	color: #e9e5e1;
}
.fro-sitewide-design .wd-footer {
	background-image: repeating-conic-gradient(#f15a22 0 25%, #141414 0 50%);
	background-size: 16px 16px;
	background-position: left top;
	background-repeat: repeat-x;
	padding-top: 16px;
}
/* The existing Elementor footer has an opaque blue overlay on its outer container. */
.fro-sitewide-design .wd-footer .e-con.e-parent::before {
	background-color: transparent;
	background-image: none;
}
.fro-sitewide-design .wd-footer :is(h2, h3, h4, h5, .widget-title) {
	color: var(--fro-orange);
}
.fro-sitewide-design .wd-footer .wd-el-toggle-title {
	color: var(--fro-orange);
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.fro-sitewide-design .wd-footer .elementor .elementor-element .wd-el-toggle-title {
	color: var(--fro-orange);
}
.fro-sitewide-design .wd-footer .elementor .elementor-element .info-box-title {
	font-family: "Montserrat", sans-serif;
	font-style: normal;
	line-height: 1.5;
}
.fro-sitewide-design .wd-footer .fluentform-widget-wrapper input[type="email"].ff-el-form-control {
	background: #232426;
	border: 2px solid #6b6c6e;
	border-radius: 26px;
	color: #fff;
	min-height: 52px;
	padding-inline: 20px;
}
.fro-sitewide-design .wd-footer .fluentform-widget-wrapper input[type="email"].ff-el-form-control::placeholder {
	color: #d9d4cf;
	opacity: 1;
}
.fro-sitewide-design .wd-footer .fluentform-widget-wrapper input[type="email"].ff-el-form-control:focus-visible {
	border-color: var(--fro-orange);
	outline: 2px solid var(--fro-orange);
	outline-offset: 2px;
}
.fro-sitewide-design .wd-footer .ff-btn-submit {
	background: var(--fro-orange);
	border: 2px solid var(--fro-orange);
	border-radius: 24px;
	color: var(--fro-ink);
	font-weight: 800;
}
.fro-sitewide-design .wd-footer .elementor .elementor-element .fluentform-widget-wrapper .ff-el-group .ff-btn-submit {
	background-color: var(--fro-orange) !important;
	border-color: var(--fro-orange) !important;
	color: var(--fro-ink) !important;
}
.fro-sitewide-design .wd-footer a {
	color: #f2eeea;
}
.fro-sitewide-design .wd-footer a:hover {
	color: #ffb290;
}

.fro-sitewide-design .fro-content {
	max-width: none;
}

.fro-sitewide-design .fro-404-page {
	margin: 0 auto;
	max-width: 760px;
	padding: clamp(56px, 8vw, 110px) 0;
	text-align: center;
}
.fro-sitewide-design .fro-404-page h1 {
	color: var(--fro-orange);
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-size: clamp(54px, 7vw, 88px);
	font-style: italic;
	font-weight: 900;
	text-transform: uppercase;
}
.fro-sitewide-design .fro-404-page .wp-block-search {
	margin: 24px auto 0;
	max-width: 440px;
	text-align: left;
}

/* Carry the guide-card treatment through to the existing blog archive. */
.fro-sitewide-design.woodmart-archive-blog .blog-post-loop .wd-post-inner {
	border: 1px solid var(--fro-line);
	border-radius: 22px;
	overflow: hidden;
}
.fro-sitewide-design.woodmart-archive-blog .blog-post-loop .wd-post-thumb {
	border-radius: 21px 21px 0 0;
}
.fro-sitewide-design.woodmart-archive-blog .blog-post-loop :is(.wd-post-content, .wd-post-excerpt) {
	text-align: left;
}

/* Article and product titles use the storefront display type. */
.fro-sitewide-design.single-product h1.product_title,
.fro-sitewide-design.single-post h1.wd-post-title {
	color: var(--fro-ink);
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-style: italic;
	font-weight: 900;
	line-height: 1.05;
	overflow-wrap: anywhere;
	text-transform: uppercase;
}

/* Keep Woodmart's category links and carousel while matching the storefront cards. */
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) :is(.e-con, .e-con-inner):has(> .elementor-widget-wd_product_categories) > .elementor-widget-heading {
	align-self: stretch;
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) :is(.e-con, .e-con-inner):has(> .elementor-widget-wd_product_categories) > .elementor-widget-heading .elementor-heading-title {
	color: var(--fro-ink);
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-size: clamp(40px, 5vw, 68px);
	font-style: italic;
	font-weight: 900;
	line-height: .95;
	overflow-wrap: anywhere;
	text-align: left;
	text-transform: uppercase;
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .elementor-widget-wd_product_categories .cat-design-zoom-out .wd-cat-inner {
	background: #fff;
	border: 2px solid var(--fro-ink);
	border-radius: 22px;
	display: flex;
	flex-direction: column;
	height: 100%;
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .elementor-widget-wd_product_categories .cat-design-zoom-out .wd-cat-inner:focus-within {
	outline: 3px solid var(--fro-orange);
	outline-offset: -5px;
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .elementor-widget-wd_product_categories .cat-design-zoom-out .wd-cat-image {
	aspect-ratio: 1 / .83;
	overflow: hidden;
	transform: none;
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .elementor-widget-wd_product_categories .cat-design-zoom-out .wd-cat-image img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .elementor-widget-wd_product_categories .cat-design-zoom-out .wd-cat-content {
	background: #fff1e9;
	border-top: 2px solid var(--fro-ink);
	display: block;
	flex: 1 0 auto;
	padding: 14px 16px;
	position: static;
	text-align: left;
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .elementor-widget-wd_product_categories .cat-design-zoom-out .wd-cat-header,
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .elementor-widget-wd_product_categories .cat-design-zoom-out .wd-cat-count {
	opacity: 1;
	transform: none;
}

.fro-sitewide-design .wd-product.product-grid-item .wd-product-wrapper {
	background: #fff;
	border: 1px solid var(--fro-line);
	border-radius: 22px;
}
.fro-sitewide-design .wd-product.product-grid-item .wd-product-thumb {
	border-radius: 21px 21px 0 0;
}
.fro-sitewide-design .wd-product.product-grid-item .product-element-bottom {
	border-top: 1px solid var(--fro-line);
	padding: 12px;
}
.fro-sitewide-design .wd-product.product-grid-item .wd-entities-title {
	font-weight: 800;
}
@media (min-width: 1025px) {
	.fro-sitewide-design .wd-product.wd-hover-icons:focus-within .wrapp-buttons {
		opacity: 1;
		transform: translate3d(0, 0, 0);
		visibility: visible;
	}
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .elementor-widget-wd_product_categories .cat-design-zoom-out .wd-entities-title {
	background: transparent;
	border-radius: 0;
	display: block;
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 800;
	margin: 0;
	padding: 0;
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .elementor-widget-wd_product_categories .cat-design-zoom-out .wd-cat-count {
	color: #5a5650;
	font-size: 13px;
	margin-top: 4px;
}

/* Contain the archive description and keep its expand control above following content. */
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .wd-collapsible-content.e-con:not(.wd-opened) {
	max-height: 276px !important;
	overflow: hidden;
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .wd-collapsible-content.e-con:not(.wd-opened) > .e-con-inner {
	padding-bottom: 76px;
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .wd-collapsible-content.e-con.wd-opened {
	max-height: none !important;
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .wd-collapsible-content.e-con:not(.wd-opened) .elementor-widget-wd_button:last-child {
	background: var(--fro-cream);
	bottom: 0;
	box-shadow: 0 -10px 12px var(--fro-cream);
	inset-inline: 0;
	position: absolute;
	z-index: 11;
}
.fro-sitewide-design:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) .wd-collapsible-content.e-con:not(.wd-opened):after {
	height: 18px;
	color: var(--fro-cream);
}

/* Existing FAQ markup and the support portal retain their own content and behavior. */
.fro-sitewide-design .fro-faq nav a {
	background: #fff;
	border: 1px solid var(--fro-line);
	color: var(--fro-ink);
}
.fro-sitewide-design .fro-faq nav a:hover,
.fro-sitewide-design .fro-faq nav a:focus-visible {
	background: var(--fro-orange);
	border-color: var(--fro-ink);
	color: var(--fro-ink);
}
.fro-sitewide-design .fro-faq details summary::after {
	color: var(--fro-orange);
}
.fro-sitewide-design .main-page-wrapper #loginform .login-submit #wp-submit {
	background: var(--fro-orange);
	border: 2px solid var(--fro-ink);
	border-radius: 24px;
	color: var(--fro-ink);
	font-family: "Montserrat", sans-serif;
	font-weight: 800;
}
.fro-sitewide-design .main-page-wrapper #loginform .login-submit #wp-submit:hover {
	background: var(--fro-ink);
	color: #fff;
}
.fro-sitewide-design .main-page-wrapper :is(.fst_registration_wrapper .fs_registration_form #fst_submit, .fst_reset_pass_wrapper .fs_reset_pass_form #fst_reset_pass) {
	background: var(--fro-orange);
	border: 2px solid var(--fro-ink);
	border-radius: 24px;
	color: var(--fro-ink);
	font-family: "Montserrat", sans-serif;
	font-weight: 800;
}
.fro-sitewide-design .main-page-wrapper :is(.fst_registration_wrapper .fs_registration_form #fst_submit, .fst_reset_pass_wrapper .fs_reset_pass_form #fst_reset_pass):not(.loading):hover {
	background: var(--fro-ink);
	color: #fff;
}
.fro-sitewide-design .main-page-wrapper :is(.fst_registration_wrapper .fs_registration_form #fst_submit, .fst_reset_pass_wrapper .fs_reset_pass_form #fst_reset_pass).loading {
	background: var(--fro-orange);
	opacity: .7;
}
.fro-sitewide-design .main-page-wrapper :is(.fst_registration_wrapper .fs_registration_form #fst_submit, .fst_reset_pass_wrapper .fs_reset_pass_form #fst_reset_pass).loading svg :is(path, rect) {
	fill: var(--fro-ink);
}
.fro-sitewide-design .main-page-wrapper :is(.fst_registration_wrapper .fs_registration_form #fst_submit, .fst_reset_pass_wrapper .fs_reset_pass_form #fst_reset_pass):focus-visible {
	outline: 3px solid var(--fro-orange);
	outline-offset: 3px;
}

.fro-sitewide-design .footer-container .elementor-widget-wd_infobox img[src*="/w-bcs-newslatter.svg"] {
	filter: hue-rotate(165deg) saturate(1.4) brightness(1.25);
}
/* Keep the closed CookieYes sidebar out of the focus order. */
.fro-sitewide-design .cky-modal.cky-sidebar-left:not(.cky-modal-open) {
	visibility: hidden;
}
/* CookieYes writes button colors inline. */
.fro-sitewide-design .cky-btn:is(.cky-btn-customize, .cky-btn-accept, .cky-btn-reject, .cky-btn-preferences) {
	background-color: #fff !important;
	border-color: var(--fro-ink) !important;
	border-radius: 24px;
	color: var(--fro-ink) !important;
	font-weight: 800;
}
.fro-sitewide-design .cky-btn:is(.cky-btn-customize, .cky-btn-accept, .cky-btn-reject, .cky-btn-preferences):is(:hover, :focus-visible) {
	background-color: var(--fro-orange) !important;
	color: var(--fro-ink) !important;
}
.fro-sitewide-design .cky-btn:focus-visible,
.fro-sitewide-design .fro-faq nav a:focus-visible,
.fro-sitewide-design .main-page-wrapper #loginform #wp-submit:focus-visible {
	outline: 3px solid var(--fro-orange);
	outline-offset: 3px;
}

.fro-sitewide-design.woocommerce .single_add_to_cart_button,
.fro-sitewide-design.woocommerce .woocommerce-form-login__submit,
.fro-sitewide-design.woocommerce .woocommerce-form-register__submit,
.fro-sitewide-design.woocommerce .wc-backward,
.fro-sitewide-design.woocommerce #place_order {
	background-color: var(--fro-orange);
	border: 2px solid var(--fro-ink);
	border-radius: 24px;
	color: var(--fro-ink);
	font-family: "Montserrat", sans-serif;
	font-weight: 800;
}
.fro-sitewide-design.woocommerce .wd-buy-now-btn {
	background-color: var(--fro-ink);
	border: 2px solid var(--fro-ink);
	border-radius: 24px;
	color: #fff;
}
.fro-sitewide-design.woocommerce :is(.single_add_to_cart_button, .woocommerce-form-login__submit, .woocommerce-form-register__submit, .wc-backward, #place_order):not(:disabled):not(.disabled):hover {
	background-color: var(--fro-ink);
	color: #fff;
}
.fro-sitewide-design.woocommerce .wd-buy-now-btn:not(:disabled):not(.disabled):hover {
	background-color: var(--fro-orange);
	color: var(--fro-ink);
}
.fro-sitewide-design.woocommerce-account .wd-register-tabs.active-register .col-register-text:not(:has(.login-info)) :is(h2, .registration-info) {
	display: none;
}

/* Account headings and the existing form switch use the storefront hierarchy. */
.fro-sitewide-design.woocommerce-account .wd-registration-page .wd-login-title {
	color: var(--fro-ink);
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-size: clamp(32px, 3vw, 44px);
	font-style: italic;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}
.fro-sitewide-design.woocommerce-account .wd-registration-page .wd-switch-to-register {
	background: var(--fro-ink);
	border-radius: 24px;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-weight: 800;
}
.fro-sitewide-design.woocommerce-account .wd-registration-page .wd-switch-to-register:hover {
	background: var(--fro-orange);
	color: var(--fro-ink);
}
.fro-sitewide-design.woocommerce :is(.single_add_to_cart_button, .wd-buy-now-btn):is(:disabled, .disabled) {
	opacity: .55 !important;
}

.fro-sitewide-design :is(.wd-content-area, .elementor-widget-woocommerce-cart, .elementor-widget-woocommerce-checkout) :focus-visible {
	outline: 3px solid var(--fro-orange);
	outline-offset: 3px;
}

/* Some cart templates wrap each quantity control in a paragraph. */
.fro-sitewide-design:is(.woocommerce-cart, .woocommerce-checkout) .cart_item .quantity {
	display: inline-flex;
	flex-wrap: nowrap;
}
.fro-sitewide-design:is(.woocommerce-cart, .woocommerce-checkout) .cart_item .quantity > p {
	display: contents;
}
.fro-sitewide-design:is(.woocommerce-cart, .woocommerce-checkout) .cart_item .quantity > p > br {
	display: none;
}
.fro-sitewide-design.woocommerce-cart .cart-actions > p:has(> button[name="update_cart"].wd-hide),
.fro-sitewide-design.woocommerce-cart .cart-actions > p:has(> input[type="hidden"]):not(:has(button, input:not([type="hidden"]), select, textarea)) {
	display: contents;
}
.fro-sitewide-design.woocommerce-cart .cart-actions .coupon > br,
.fro-sitewide-design.woocommerce-cart .cart-actions .coupon > button > br {
	display: none;
}
.fro-sitewide-design:is(.woocommerce-cart, .woocommerce-checkout) .fro-policy-summary .wd-text-block > div {
	background: #fff !important;
	border: 1px solid var(--fro-line);
	color: var(--fro-ink) !important;
}
.fro-sitewide-design .track-search-container #YQContainer:empty { margin-top: 0; min-height: 0; }
.fro-sitewide-design .track-search-container .track-input { min-height: 50px; }
.fro-sitewide-design .track-search-container .track-input:focus-visible,
.fro-sitewide-design .track-search-container .track-btn:focus-visible {
	outline: 3px solid var(--fro-orange);
	outline-offset: -3px;
}
@media (max-width: 768px) {
	.fro-sitewide-design .track-search-container .track-input {
		flex: none;
		width: 100%;
	}
}

.fro-sitewide-design.single-post :is(.wd-entry-content, .entry-content) figure.wp-block-table {
	max-width: 100%;
	overflow-x: auto;
}
.fro-sitewide-design.single-post figure.wp-block-table[data-fro-table-focus]:focus-visible {
	outline: 3px solid var(--fro-orange);
	outline-offset: 2px;
}

/* Preserve the existing Elementor video, description and product link groups. */
.fro-sitewide-design .main-page-wrapper:has(.fro-home-hero) .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-wd_video):has(> .elementor-widget-wrap > .elementor-widget-text-editor):has(> .elementor-widget-wrap > .elementor-widget-wd_button) {
	padding: 8px;
}
.fro-sitewide-design .main-page-wrapper:has(.fro-home-hero) .elementor-widget-wrap:has(> .elementor-widget-wd_video):has(> .elementor-widget-text-editor):has(> .elementor-widget-wd_button) {
	align-content: start;
	background: #fff;
	border: 1px solid var(--fro-line);
	border-radius: 22px;
	overflow: hidden;
	padding: 0;
}
.fro-sitewide-design .main-page-wrapper:has(.fro-home-hero) .elementor-widget-wrap:has(> .elementor-widget-wd_video):has(> .elementor-widget-text-editor):has(> .elementor-widget-wd_button) > .elementor-widget-wd_video {
	margin-bottom: 0;
}
.fro-sitewide-design .main-page-wrapper:has(.fro-home-hero) .elementor-widget-wrap:has(> .elementor-widget-wd_video):has(> .elementor-widget-text-editor):has(> .elementor-widget-wd_button) > .elementor-widget-text-editor {
	color: var(--fro-ink);
	margin-bottom: 0;
	padding: 18px 20px 12px;
}
.fro-sitewide-design .main-page-wrapper:has(.fro-home-hero) .elementor-widget-wrap:has(> .elementor-widget-wd_video):has(> .elementor-widget-text-editor):has(> .elementor-widget-wd_button) > .elementor-widget-wd_button {
	padding: 0 20px 20px;
}
.fro-sitewide-design .main-page-wrapper:has(.fro-home-hero) .e-con.e-parent:has(> .e-con-inner > .elementor-widget-wd_video):has(> .e-con-inner > .elementor-widget-text-editor):has(> .e-con-inner > .elementor-widget-wd_button) {
	padding: 8px;
}
.fro-sitewide-design .main-page-wrapper:has(.fro-home-hero) :is(.e-con, .e-con-inner):has(> .elementor-widget-wd_video):has(> .elementor-widget-text-editor):has(> .elementor-widget-wd_button) {
	align-content: start;
	background: #fff;
	border: 1px solid var(--fro-line);
	border-radius: 22px;
	overflow: hidden;
	padding: 0;
}
.fro-sitewide-design .main-page-wrapper:has(.fro-home-hero) :is(.e-con, .e-con-inner):has(> .elementor-widget-wd_video):has(> .elementor-widget-text-editor):has(> .elementor-widget-wd_button) > .elementor-widget-wd_video {
	margin-bottom: 0;
}
.fro-sitewide-design .main-page-wrapper:has(.fro-home-hero) :is(.e-con, .e-con-inner):has(> .elementor-widget-wd_video):has(> .elementor-widget-text-editor):has(> .elementor-widget-wd_button) > .elementor-widget-text-editor {
	color: var(--fro-ink);
	margin-bottom: 0;
	padding: 18px 20px 12px;
}
.fro-sitewide-design .main-page-wrapper:has(.fro-home-hero) :is(.e-con, .e-con-inner):has(> .elementor-widget-wd_video):has(> .elementor-widget-text-editor):has(> .elementor-widget-wd_button) > .elementor-widget-wd_button {
	padding: 0 20px 20px;
}
/* Keep horizontal touch scrolling available without visible bars on phones. */
@media (max-width: 767px) {
	html::-webkit-scrollbar:horizontal,
	body.fro-sitewide-design *::-webkit-scrollbar:horizontal { display: none !important; height: 0 !important; }
	body.fro-sitewide-design * { scrollbar-width: none !important; }
}

/* Keep floating launchers from covering the open navigation drawer. */
@media (max-width: 1024px) {
	body.fro-sitewide-design:has(.wd-side-hidden-nav.wd-opened) :is(#tidio-chat, .cky-btn-revisit-wrapper) {
		visibility: hidden !important;
	}
}
