/* Commerce rows in the site's Elementor header layouts. */
.top_panel:has(.cx-header-topbar) {
	--cx-head-orange: #f4a14c;
	--cx-head-dark: #242424;
	--cx-head-light: #fff8ed;
	--cx-head-pad: clamp(22px, 4.4vw, 72px);
	position: relative;
	z-index: 55;
	overflow: visible;
}
.top_panel .cx-header-topbar,
.top_panel .cx-header-main, .top_panel .cx-header-nav,
.top_panel .cx-header-mobile, .top_panel .cx-header-mobile-search, .top_panel .cx-header-sticky {
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible;
}
.top_panel .cx-header-topbar {
	background: var(--cx-head-orange) !important;
}
.top_panel :is(.cx-header-topbar,.cx-header-main,.cx-header-nav,.cx-header-mobile,.cx-header-mobile-search,.cx-header-sticky) > .elementor-container {
	box-sizing: border-box;
	width: 100%;
	max-width: 1510px;
	min-height: 0;
	margin: 0 auto;
	padding: 0 var(--cx-head-pad);
}
.top_panel :is(.cx-header-topbar,.cx-header-main,.cx-header-nav,.cx-header-mobile,.cx-header-mobile-search,.cx-header-sticky) .elementor-widget-wrap {
	padding: 0 !important;
}
.top_panel :is(.cx-header-topbar-widget,.cx-header-search-widget,.cx-header-actions-widget) {
	margin: 0 !important;
	min-width: 0;
}
.top_panel :is(.cx-header-topbar-widget,.cx-header-search-widget,.cx-header-actions-widget) > .elementor-widget-container {padding: 0 !important; margin: 0 !important;}
.cx-showroom-bar, .cx-showroom-contact, .cx-showroom-bar a, .cx-showroom-hours {
	display: flex;
	align-items: center;
}
.cx-showroom-bar {
	width: 100%;
	min-height: 34px;
	justify-content: space-between;
	gap: 12px;
	color: #241d17;
	font: 600 13px/1.3 Arial, sans-serif;
	letter-spacing: .01em;
}
.top_panel .cx-showroom-bar a {color: #241d17 !important; text-decoration: none; white-space: nowrap; gap: 7px; min-height: 32px;}
.top_panel .cx-showroom-bar a:hover {text-decoration: underline; text-underline-offset: 3px;}
.cx-showroom-bar svg {width: 15px; height: 15px; flex-shrink: 0;}
.cx-showroom-contact {gap: 24px;}
.cx-showroom-hours {gap: 7px; white-space: nowrap;}
.top_panel .cx-header-main, .top_panel .cx-header-mobile,
.top_panel .cx-header-mobile-search, .top_panel .cx-header-sticky { background: var(--cx-head-dark) !important; animation: none !important; }
.top_panel .cx-header-nav {background: #2d2c2b !important; border-top: 1px solid #44413d; z-index: 2;}
.top_panel .cx-header-main {z-index: 4;}
.top_panel .cx-header-main > .elementor-container {
	display: grid;
	grid-template-columns: minmax(135px, 1fr) minmax(300px, 620px) minmax(213px, 1fr);
	gap: clamp(22px, 3.5vw, 62px);
	align-items: center;
	min-height: 90px;
}
.top_panel .cx-header-main .elementor-column,
.top_panel .cx-header-sticky .elementor-column {width: 100% !important; min-width: 0; }
.top_panel .cx-header-logo-col .sc_layouts_logo {display: inline-flex; align-items: center; vertical-align: middle;}
.top_panel .cx-header-main .cx-header-logo-col img {display:block; width:auto!important; max-height:72px!important; max-width:135px;}
.top_panel .cx-header-logo-col .elementor-widget-trx_sc_layouts_logo {margin: 0;}
.top_panel .cx-header-search-col .elementor-widget-wrap,
.top_panel .cx-header-actions-col .elementor-widget-wrap {align-content: center; align-items:center;}
.top_panel .cx-header-search-widget {width: 100% !important; max-width:none !important;}
.top_panel .cx-header-actions-col .elementor-widget-wrap {justify-content: flex-end;}
.top_panel .cx-header-actions-widget {width: auto !important;}
.cx-header-controls {display: flex; align-items: center; justify-content:flex-end; gap: 14px; white-space:nowrap; font: 600 14px/1.25 Arial, sans-serif;}
.top_panel .cx-header-controls a,.top_panel .cx-header-controls summary {display: inline-flex; align-items: center; justify-content:center; gap: 7px; min-height:44px; color:var(--cx-head-light) !important; text-decoration:none; cursor:pointer; padding:0 3px;}
.top_panel .cx-header-controls a:hover,.top_panel .cx-header-controls summary:hover {color:var(--cx-head-orange) !important;}
.top_panel :is(.cx-header-controls,.cx-showroom-bar) :is(a, summary):focus-visible {outline: 2px solid currentColor; outline-offset: 2px; border-radius: 2px;}
.cx-header-controls svg {flex-shrink:0; width:22px; height:22px;}
.cx-bag-wrap {display:inline-flex; position:relative;}
.cx-cart-count {position:absolute; top:-7px; inset-inline-end:-8px; border-radius:15px; min-width:16px; height:16px; padding:0 3px; box-sizing:border-box; background:var(--cx-head-orange); color:#1f1a14; text-align:center; font:700 10px/16px Arial,sans-serif;}
.cx-cart-count[hidden] {display:none!important;}
.top_panel .cx-header-nav > .elementor-container {min-height:46px; align-items:center;}
.top_panel .cx-header-nav-col .elementor-widget-wrap {justify-content:flex-start;}
.top_panel .cx-header-nav .sc_layouts_menu {display:block;margin:0;}
.top_panel .cx-header-nav .sc_layouts_menu_nav {display:flex; align-items:center; justify-content:flex-start; gap:clamp(10px,1.3vw,24px); margin:0; width:max-content;}
.top_panel .cx-header-nav .sc_layouts_menu_nav > li {margin:0;}
.top_panel .cx-header-nav .sc_layouts_menu_nav > li > a {padding:13px 0;line-height:1.25;}
.top_panel .cx-header-nav .sc_layouts_menu_nav > li.menu-item-has-children > a {padding-right:.85em;}
.top_panel .cx-header-sticky:not(.elementor-sticky__spacer) {
	position:fixed !important; inset:var(--wp-admin--admin-bar--height,0px) 0 auto !important;
	width:100% !important; z-index:100; visibility:hidden; pointer-events:none;
	transform:translateY(-110%) !important; transition:transform .18s ease!important;
}
body.cx-header-scrolled .top_panel .cx-header-sticky:not(.elementor-sticky__spacer) {visibility:visible; pointer-events:auto; transform:translateY(0)!important;}
.top_panel .cx-header-sticky.elementor-sticky__spacer {display:none!important;}
.top_panel .cx-header-sticky > .elementor-container {display:grid;grid-template-columns:minmax(76px,.7fr) auto minmax(136px,.7fr); gap:16px;min-height:66px;align-items:center;}
.top_panel .cx-header-sticky .cx-header-logo-col img {width:auto!important;max-height:51px!important;}
.top_panel .cx-header-sticky .sc_layouts_menu_nav > li > a {padding-inline:.56em;}
.top_panel .cx-header-sticky .cx-control-label {display:none;}
.cx-header-search-popover {position:relative;margin:0;}
.cx-header-search-popover summary {list-style:none;min-width:36px;}
.cx-header-search-popover summary::-webkit-details-marker {display:none;}
.cx-header-popover-body {position:absolute; right:0; top:calc(100% + 4px); z-index:9; width:min(430px,80vw); min-width:300px; padding:10px; border:1px solid #4b4743; border-radius:6px; background:#242424; box-shadow:0 6px 20px #0003;}
.top_panel .cx-header-mobile-search, .top_panel .cx-header-mobile {display:none !important;}
@media (max-width:1099px) {
	.top_panel:has(.cx-header-topbar) {--cx-head-pad:clamp(14px,4vw,34px);}
	.top_panel :is(.cx-header-main,.cx-header-sticky,.cx-header-nav) {display:none !important;}
	.top_panel .cx-header-mobile:not(.elementor-sticky__spacer), .top_panel .cx-header-mobile-search {display:block !important;position:relative!important;left:0!important;top:auto!important;transform:none!important;z-index:5;}
	.top_panel .cx-header-mobile.elementor-sticky__spacer {display:none!important;}
	.top_panel .cx-header-mobile-search {z-index:6; padding-bottom:10px!important;}
	.top_panel .cx-header-mobile > .elementor-container {display:flex!important;align-items:center;justify-content:space-between;min-height:58px;}
	.top_panel .cx-header-mobile .cx-header-logo-col {flex:none;width:auto!important;}
	.top_panel .cx-header-mobile .cx-header-logo-col img {width:auto!important;max-height:50px!important;max-width:100px;}
	.top_panel .cx-header-mobile .cx-header-mobile-tools {width:auto!important;flex:1 1 auto;min-width:0;}
	.top_panel .cx-header-mobile-tools > .elementor-widget-wrap {display:flex!important;flex-flow:row nowrap!important;align-items:center;justify-content:flex-end!important;gap:4px;}
	.top_panel .cx-header-mobile-tools .elementor-widget-trx_sc_layouts_menu {width:auto!important; margin:0!important; display:inline-block!important;}
	.top_panel .cx-header-mobile-tools .sc_layouts_menu_mobile_button {display:block!important;}
	.top_panel .cx-header-mobile-tools .sc_layouts_item_icon {font-size:23px;}
	.top_panel .cx-header-mobile-tools .sc_layouts_menu_mobile_button a {display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:40px;}
	.cx-header-controls-compact {gap:0;}
	.top_panel .cx-header-controls-compact a {min-width:41px;padding:0;}
	.cx-header-controls-compact .cx-control-label {display:none;}
	.top_panel .cx-header-mobile-search > .elementor-container {min-height:0;}
	.top_panel .cx-header-mobile-search .cx-header-search-col {width:100%!important;}
	/* Legacy mobile spacing compensated for an out-of-flow header. */
	@supports selector(.top_panel:has(.cx-header-topbar)) {
		.top_panel:has(.cx-header-topbar) ~ .page_content_wrap {padding-top:clamp(1.25rem,4vw,3rem)!important;}
		body.frontpage .top_panel:has(.cx-header-topbar) ~ .page_content_wrap,
		body.home .top_panel:has(.cx-header-topbar) ~ .page_content_wrap {padding-top:0!important;}
	}
}
@media (max-width:767px) {
	.top_panel:has(.cx-header-topbar) {position:sticky;top:calc(var(--wp-admin--admin-bar--height,0px) - 32px);}
	.cx-showroom-hours,.cx-showroom-street {display:none;}
	.cx-showroom-bar {min-height:32px;font-size:12px;}
	.cx-showroom-contact {gap:0;}
}
@media (prefers-reduced-motion:reduce) {
	.top_panel .cx-header-sticky:not(.elementor-sticky__spacer){transition:none!important;}
}


/* Fabric gives inline layouts an automatic flex basis; the live search needs the entire middle column. */
.top_panel .cx-header-main .cx-header-search-col > .elementor-widget-wrap > .cx-header-search-widget {
	display: block !important; flex: 1 1 100% !important; width: 100% !important; max-width: none !important; min-width: 0 !important;
}
.top_panel .cx-header-search-col .cx-header-search-widget :is(.elementor-widget-container,.elementor-shortcode,.cx-product-search) {display:block;width:100%;max-width:none;min-width:0;}
@media (min-width:768px) and (max-width:1099px) {
	.top_panel:has(.cx-header-topbar) {position:sticky;top:calc(var(--wp-admin--admin-bar--height,0px) - 34px);}
}


/* The original homepage reserved room for Fabric's fixed mobile header. */
@media (max-width:1099px) {
	body.home:has(.cx-header-mobile) .elementor-18023 > .elementor-element-3f6ee07 {margin-top:0!important;}
}
@media (max-width:767px) {
	body.home:has(.cx-header-mobile) .elementor-element-3f6ee07 .elementor-element-0d02139 > .elementor-widget-wrap {margin-top:0!important;}
}


/* Keep product-card hover overlays below the sticky header on touch devices. */
body.woocommerce .list_products ul.products li.product .post_item {isolation:isolate;}
