/* Keep the active header solid so hero images never bleed behind it. */
.elementor-140 .elementor-element.elementor-element-758af0c2,
.elementor-140 .elementor-element.elementor-element-758af0c2:not(.elementor-motion-effects-element-type-background):not(.cmsmasters-bg-effect),
.elementor-140 .elementor-element.elementor-element-758af0c2 > .e-con-inner,
.elementor-140 .elementor-element.elementor-element-758af0c2 > .elementor-container,
.elementor-140 .elementor-element.elementor-element-758af0c2 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-140 .elementor-element.elementor-element-758af0c2 > .cmsmasters-bg-effects-container > .cmsmasters-bg-effects-element,
.cmsmasters-block-fixed .elementor-140 .elementor-element.elementor-element-758af0c2,
.cmsmasters-block-fixed .elementor-140 .elementor-element.elementor-element-758af0c2 > .e-con-inner,
.cmsmasters-block-fixed .elementor-140 .elementor-element.elementor-element-758af0c2 > .elementor-container {
	background-color: var( --e-global-color-alternate, #ffffff ) !important;
}

.cmsmasters-block-fixed,
.cmsmasters-header-template,
.cmsmasters-header-template > .elementor {
	background-color: var( --e-global-color-alternate, #ffffff ) !important;
}

.cmsmasters-block-fixed {
	z-index: 9998;
}

/* Prefer native scrolling inside the offcanvas to avoid PerfectScrollbar jank. */
.cmsmasters-offcanvas-content-5b03872c.elementor-widget-cmsmasters-offcanvas__content {
	background-color: var( --e-global-color-alternate, #ffffff ) !important;
	display: flex;
	flex-direction: column;
	height: 100dvh;
	overflow: hidden;
}

.cmsmasters-offcanvas-content-5b03872c .elementor-widget-cmsmasters-offcanvas__body,
.cmsmasters-offcanvas-content-5b03872c .elementor-widget-cmsmasters-offcanvas__body.ps,
.cmsmasters-offcanvas-content-5b03872c .elementor-widget-cmsmasters-offcanvas__body.luz-odara-native-scroll {
	flex: 1 1 auto;
	min-height: 0;
	height: auto;
	max-height: none;
	overflow: hidden !important;
	padding-right: 0 !important;
	scrollbar-width: auto;
	overscroll-behavior: auto;
	-webkit-overflow-scrolling: auto;
	touch-action: auto;
}

html.cmsmasters-offcanvas-content-open.cmsmasters-offcanvas-content-open-5b03872c
	.cmsmasters-offcanvas-content-5b03872c.active
	.elementor-widget-cmsmasters-offcanvas__body,
html.cmsmasters-offcanvas-content-open.cmsmasters-offcanvas-content-open-5b03872c
	.cmsmasters-offcanvas-content-5b03872c.active
	.elementor-widget-cmsmasters-offcanvas__body.ps,
html.cmsmasters-offcanvas-content-open.cmsmasters-offcanvas-content-open-5b03872c
	.cmsmasters-offcanvas-content-5b03872c.active
	.elementor-widget-cmsmasters-offcanvas__body.luz-odara-native-scroll {
	overflow-y: auto !important;
	overflow-x: hidden !important;
	scrollbar-width: thin;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	touch-action: pan-y;
}

.cmsmasters-offcanvas-content-5b03872c .ps__rail-x,
.cmsmasters-offcanvas-content-5b03872c .ps__rail-y {
	display: none !important;
}

html.cmsmasters-offcanvas-content-open .cmsmasters-block-fixed {
	margin-right: 0 !important;
	width: 100% !important;
}

html:not(.cmsmasters-offcanvas-content-open).elementor-widget-cmsmasters-offcanvas__container,
html:not(.cmsmasters-offcanvas-content-open).elementor-widget-cmsmasters-offcanvas__container > body {
	height: auto !important;
	min-height: 0 !important;
}

html:not(.cmsmasters-offcanvas-content-open) > body {
	padding-right: 0 !important;
}

html:not(.cmsmasters-offcanvas-content-open) > body#cmsmasters_body {
	height: auto !important;
	max-height: none !important;
	min-height: 0 !important;
	overflow-y: hidden !important;
	overflow-x: hidden !important;
}

html:not(.cmsmasters-offcanvas-content-open) .cmsmasters-block-fixed {
	left: 0 !important;
	margin-right: 0 !important;
	width: 100% !important;
}
