.wpkea-smart-header,
.wpkea-header-role-root {
	--wpkea-header-gap: 24px;
	--wpkea-header-row-height: 72px;
	--wpkea-header-wrap: nowrap;
	--wpkea-sticky-top: 0px;
	--wpkea-sticky-duration: 300ms;
	--wpkea-sticky-z: 999;
	--wpkea-admin-bar-offset: 0px;
	width: 100%;
	min-width: 0;
	transition: background-color var(--wpkea-sticky-duration) ease, box-shadow var(--wpkea-sticky-duration) ease, opacity var(--wpkea-sticky-duration) ease, transform var(--wpkea-sticky-duration) ease;
}

.elementor-control-wpkea_editor_preview_state.elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
	width: 100%;
}

.elementor-control-wpkea_editor_preview_state .elementor-visual-choice-choices {
	display: grid;
	grid-template-columns: repeat(var(--elementor-visual-choice-columns, 3), minmax(0, 1fr));
	gap: 0;
	width: 100%;
	border: 1px solid #d5dae0;
	border-radius: 8px;
	overflow: hidden;
	background: #fff;
}

.elementor-control-wpkea_editor_preview_state .elementor-visual-choice-element-button {
	grid-column: auto;
	margin: 0;
}

.elementor-control-wpkea_editor_preview_state .elementor-visual-choice-element-button .elementor-visual-choice-label {
	display: block;
	padding: 0;
	border: 0;
	border-right: 1px solid #d5dae0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	box-sizing: border-box;
}

.elementor-control-wpkea_editor_preview_state .elementor-visual-choice-element-button:last-child .elementor-visual-choice-label {
	border-right: 0;
}

.elementor-control-wpkea_editor_preview_state .elementor-visual-choice-element-button .elementor-button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 45px;
	padding: 0 10px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	box-sizing: border-box;
	color: #5f6670;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
}

.elementor-control-wpkea_editor_preview_state .elementor-visual-choice-element-button input:hover + .elementor-visual-choice-label {
	background: #f5f6f7;
}

.elementor-control-wpkea_editor_preview_state .elementor-visual-choice-element-button input:hover + .elementor-visual-choice-label .elementor-button {
	color: #4f5661;
}

.elementor-control-wpkea_editor_preview_state .elementor-visual-choice-element-button input:checked + .elementor-visual-choice-label {
	background: #535a64;
}

.elementor-control-wpkea_editor_preview_state .elementor-visual-choice-element-button input:checked + .elementor-visual-choice-label .elementor-button {
	color: #fff;
}

.wpkea-header-role-root.wpkea-header-overflow-yes,
.wpkea-header-role-row.wpkea-header-overflow-yes,
.wpkea-smart-header.wpkea-header-overflow-yes,
.wpkea-smart-header__row.wpkea-header-overflow-yes {
	overflow-x: clip;
}

.wpkea-smart-header__row,
.wpkea-header-role-row {
	min-width: 0;
	min-height: var(--wpkea-header-row-height);
	transition: min-height var(--wpkea-sticky-duration) ease, background-color var(--wpkea-sticky-duration) ease, border-color var(--wpkea-sticky-duration) ease, box-shadow var(--wpkea-sticky-duration) ease;
}

.wpkea-smart-header__row.wpkea-header-content-full > .e-con-inner,
.wpkea-header-role-row.wpkea-header-content-full > .e-con-inner {
	max-width: none;
}

.wpkea-smart-header__row--natural:not(.e-con-boxed),
.wpkea-header-role-row.wpkea-header-layout-natural:not(.e-con-boxed),
.wpkea-smart-header__row--natural > .e-con-inner,
.wpkea-header-role-row.wpkea-header-layout-natural > .e-con-inner {
	display: flex;
	flex-flow: row var(--wpkea-header-wrap);
	justify-content: space-between;
}

.wpkea-smart-header__zone,
.wpkea-header-role-zone {
	--container-widget-width: auto;
	--container-widget-flex-grow: 0;
	flex: 1 1 0;
	min-width: 0;
	width: 100%;
}

.wpkea-smart-header .wpkea-smart-header__zone,
.wpkea-header-role-root .wpkea-header-role-zone {
	display: flex;
	flex-direction: row;
	flex-wrap: var(--wpkea-header-wrap);
	gap: var(--wpkea-header-gap);
	align-items: center;
}

.wpkea-smart-header__zone > .elementor-element,
.wpkea-header-role-zone > .elementor-element,
.wpkea-smart-header__zone > .e-con-inner > .elementor-element,
.wpkea-header-role-zone > .e-con-inner > .elementor-element {
	--container-widget-width: auto;
	--container-widget-flex-grow: 0;
	flex: 0 1 auto;
	width: auto;
	max-width: 100%;
}

.wpkea-smart-header__zone--left,
.wpkea-header-role-zone.wpkea-header-zone-left {
	justify-content: flex-start;
}

.wpkea-smart-header__zone--center,
.wpkea-header-role-zone.wpkea-header-zone-center {
	justify-content: center;
}

.wpkea-smart-header__zone--right,
.wpkea-header-role-zone.wpkea-header-zone-right {
	justify-content: flex-end;
}

.wpkea-header-layout-natural > .wpkea-header-zone-center,
.wpkea-smart-header__row--natural > .wpkea-smart-header__zone--center,
.wpkea-header-layout-natural > .e-con-inner > .wpkea-header-zone-center,
.wpkea-smart-header__row--natural > .e-con-inner > .wpkea-smart-header__zone--center {
	flex: 1 1 auto;
}

body:not(.elementor-editor-active) .wpkea-smart-header__row--empty,
body:not(.elementor-editor-active) .wpkea-smart-header__zone--empty {
	display: none !important;
}

body.elementor-editor-active .wpkea-header-role-row {
	position: relative;
	gap: 0;
	padding-top: 20px;
	outline: 1px dashed #b7c1ce;
}

body.elementor-editor-active .wpkea-header-role-row::before {
	position: absolute;
	top: 3px;
	left: 50%;
	z-index: 2;
	padding: 2px 7px;
	border: 1px solid #d5dae0;
	background: #fff;
	color: #0b57d0;
	font: 600 11px/1.4 Arial, sans-serif;
	transform: translateX(-50%);
}

body.elementor-editor-active .wpkea-header-row-top::before { content: "Top Row"; }
body.elementor-editor-active .wpkea-header-row-main::before { content: "Main Row"; }
body.elementor-editor-active .wpkea-header-row-bottom::before { content: "Bottom Row"; }

body.elementor-editor-active .wpkea-header-role-zone {
	position: relative;
	min-width: 120px;
	min-height: 56px;
	padding: 20px 12px 8px;
	border: 1px dashed #c4cad2;
	background: rgb(247 248 250 / 65%);
}

body.elementor-editor-active .wpkea-header-role-zone + .wpkea-header-role-zone {
	border-left-width: 0;
}

body.elementor-editor-active .wpkea-header-role-zone::before {
	position: absolute;
	top: 4px;
	left: 8px;
	z-index: 1;
	color: #69727d;
	font: 600 10px/1.2 Arial, sans-serif;
	pointer-events: none;
}

body.elementor-editor-active .wpkea-header-zone-left::before { content: "LEFT"; }
body.elementor-editor-active .wpkea-header-zone-center::before { content: "CENTER"; }
body.elementor-editor-active .wpkea-header-zone-right::before { content: "RIGHT"; }

.wpkea-smart-logo {
	--wpkea-smart-logo-sticky-scale: 0.85;
	display: block;
	line-height: 0;
}

.wpkea-smart-logo__link,
.wpkea-smart-logo__picture {
	display: inline-block;
	line-height: 0;
}

.wpkea-smart-logo__image {
	display: block;
	max-width: 100%;
	height: auto;
	object-fit: contain;
	transition: transform 200ms ease;
}

.wpkea-smart-logo__picture--transparent,
.wpkea-smart-logo__picture--sticky {
	display: none;
}

.wpkea-smart-logo__placeholder {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 96px;
	height: 40px;
	border: 1px solid #d5dae0;
	border-radius: 3px;
	background: #f5f7fa;
	color: #69727d;
	vertical-align: middle;
}

.wpkea-smart-logo__placeholder-icon {
	position: relative;
	display: block;
	width: 28px;
	height: 20px;
	border: 2px solid currentColor;
	border-radius: 2px;
}

.wpkea-smart-logo__placeholder-icon::before {
	position: absolute;
	right: 3px;
	bottom: 3px;
	left: 3px;
	height: 8px;
	background: linear-gradient(135deg, transparent 42%, currentColor 43% 58%, transparent 59%), linear-gradient(45deg, transparent 42%, currentColor 43% 58%, transparent 59%);
	content: "";
	opacity: 0.55;
}

.is-sticky .wpkea-smart-logo__picture--normal,
.is-sticky .wpkea-smart-logo__picture--transparent {
	display: none;
}

.is-sticky .wpkea-smart-logo__picture--sticky {
	display: inline-block;
}

body.elementor-editor-active .wpkea-editor-preview-sticky .wpkea-smart-logo__picture--normal,
body.elementor-editor-active .wpkea-editor-preview-sticky .wpkea-smart-logo__picture--transparent {
	display: none;
}

body.elementor-editor-active .wpkea-editor-preview-sticky .wpkea-smart-logo__picture--sticky {
	display: inline-block;
}

.is-sticky .wpkea-smart-logo__image {
	transform: scale(var(--wpkea-smart-logo-sticky-scale));
	transform-origin: center;
}

.wpkea-smart-logo__title {
	display: inline-block;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.2;
}

.wpkea-smart-header.is-default .wpkea-visible-default-no,
.wpkea-smart-header.is-sticky .wpkea-visible-sticky-no {
	display: none !important;
}

.wpkea-smart-header.is-sticky {
	position: fixed;
	top: calc(var(--wpkea-sticky-top) + var(--wpkea-admin-bar-offset));
	right: 0;
	left: 0;
	z-index: var(--wpkea-sticky-z);
	width: 100%;
}

.wpkea-smart-header.has-sticky.is-sticky,
body.elementor-editor-active .wpkea-smart-header.has-sticky.wpkea-editor-preview-sticky {
	background-color: #fff;
}

body.elementor-editor-active .wpkea-smart-header.has-sticky.wpkea-editor-preview-sticky {
	position: sticky !important;
	top: calc(var(--wpkea-sticky-top) + var(--wpkea-admin-bar-offset));
	z-index: var(--wpkea-sticky-z);
}

.wpkea-smart-header.is-sticky[data-wpkea-sticky-width-mode="original"] {
	right: auto;
	left: var(--wpkea-sticky-left, 0);
	width: var(--wpkea-sticky-width, 100%);
}

.wpkea-smart-header.is-sticky-hidden {
	pointer-events: none;
	transform: translateY(-110%);
}

.wpkea-smart-header.is-sticky .wpkea-sticky-row-hide,
body.elementor-editor-active .wpkea-editor-preview-sticky .wpkea-sticky-row-hide {
	display: none !important;
}

.wpkea-smart-header-placeholder {
	width: 100%;
	height: 0;
}

.wpkea-sticky-effect--slide.is-sticky {
	animation: wpkea-header-slide var(--wpkea-sticky-duration) ease both;
}

.wpkea-sticky-effect--fade.is-sticky {
	animation: wpkea-header-fade var(--wpkea-sticky-duration) ease both;
}

@keyframes wpkea-header-slide {
	from { transform: translateY(-100%); }
	to { transform: translateY(0); }
}

@keyframes wpkea-header-fade {
	from { opacity: 0; }
	to { opacity: 1; }
}

.wpkea-header-inserter {
	display: grid;
	gap: 6px;
	place-items: center;
	min-height: 96px;
	padding: 20px;
	border: 1px dashed #b7c1ce;
	background: #fff;
	color: #1f2124;
	font-family: Arial, sans-serif;
	text-align: center;
}

.wpkea-header-inserter strong {
	font-size: 15px;
	line-height: 1.3;
}

.wpkea-header-inserter__status {
	color: #69727d;
	font-size: 12px;
	line-height: 1.4;
}

@media (max-width: 767px) {
	body.elementor-editor-active .wpkea-header-role-zone {
		min-width: 72px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.wpkea-smart-logo__image,
	.wpkea-smart-header,
	.wpkea-smart-header__row {
		transition: none;
	}

	.wpkea-sticky-effect--slide.is-sticky,
	.wpkea-sticky-effect--fade.is-sticky {
		animation: none;
	}
}
