/*
 * Site header styling. Appearance only: no size, spacing, font size or position
 * changes, so every header item stays exactly where it is.
 */
.elementor-location-header {
	--ffu-blue: #0057b7;
	--ffu-blue-dark: #00408a;
	--ffu-yellow: #ffd500;
	--ffu-ink: #1a1f36;
	--ffu-muted: #5b6275;
	--ffu-line: #e4e7ee;
	--ffu-soft: #f3f6fb;
	position: relative;
	z-index: 50;
}

.elementor-location-header > .elementor-section {
	position: relative;
	background: #fff;
	box-shadow: 0 6px 20px rgba(26, 31, 54, 0.06);
}

/* Ukraine-colored line along the bottom. Drawn on top, so it takes up no space. */
.elementor-location-header > .elementor-section::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 3px;
	background: linear-gradient(90deg, var(--ffu-blue) 0 50%, var(--ffu-yellow) 50% 100%);
	pointer-events: none;
}

.elementor-location-header img {
	border-radius: 10px;
}

/* Menu links */
.elementor-location-header #menu-main-menu > li > a {
	color: var(--ffu-ink) !important;
	transition: color 0.15s ease;
}

.elementor-location-header #menu-main-menu > li > a:hover,
.elementor-location-header #menu-main-menu > li > a:focus-visible,
.elementor-location-header #menu-main-menu > li > a.eael-item-active,
.elementor-location-header #menu-main-menu > li.current-menu-ancestor > a {
	color: var(--ffu-blue) !important;
}

.elementor-location-header #menu-main-menu a:focus-visible,
.elementor-location-header .elementor-social-icon:focus-visible,
.elementor-location-header .eael-simple-menu-toggle:focus-visible {
	outline: 3px solid var(--ffu-yellow);
	outline-offset: 2px;
}

@media (min-width: 1025px) {
	.elementor-location-header #menu-main-menu > li > a {
		position: relative;
	}

	.elementor-location-header #menu-main-menu > li > a::after {
		content: "";
		position: absolute;
		right: 16%;
		bottom: 8px;
		left: 16%;
		height: 3px;
		border-radius: 2px;
		background: var(--ffu-yellow);
		opacity: 0;
		transition: opacity 0.15s ease;
		pointer-events: none;
	}

	.elementor-location-header #menu-main-menu > li > a:hover::after,
	.elementor-location-header #menu-main-menu > li > a:focus-visible::after,
	.elementor-location-header #menu-main-menu > li > a.eael-item-active::after,
	.elementor-location-header #menu-main-menu > li.current-menu-ancestor > a::after {
		opacity: 1;
	}

	/* Dropdown */
	.elementor-location-header #menu-main-menu .sub-menu {
		overflow: hidden;
		border-radius: 12px;
		background: #fff !important;
		box-shadow: 0 14px 32px rgba(26, 31, 54, 0.14);
	}
}

.elementor-location-header #menu-main-menu .sub-menu a {
	color: var(--ffu-ink) !important;
	background: transparent !important;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.elementor-location-header #menu-main-menu .sub-menu a:hover,
.elementor-location-header #menu-main-menu .sub-menu a:focus-visible {
	color: var(--ffu-blue) !important;
	background: var(--ffu-soft) !important;
}

/* Search */
.elementor-location-header .elementor-search-form__container {
	border-color: var(--ffu-line) !important;
	border-radius: 12px !important;
	background: var(--ffu-soft) !important;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.elementor-location-header .elementor-search-form__container:focus-within {
	border-color: var(--ffu-blue) !important;
	background: #fff !important;
	box-shadow: 0 0 0 3px rgba(0, 87, 183, 0.16);
}

.elementor-location-header .elementor-search-form__input,
.elementor-location-header .elementor-search-form__input:focus {
	color: var(--ffu-ink) !important;
	background: transparent !important;
	outline: 0;
}

.elementor-location-header .elementor-search-form__input::placeholder {
	color: var(--ffu-muted) !important;
	opacity: 1;
}

.elementor-location-header .elementor-search-form__submit,
.elementor-location-header .elementor-search-form__submit:hover,
.elementor-location-header .elementor-search-form__submit:focus {
	background: transparent !important;
	color: var(--ffu-blue) !important;
}

.elementor-location-header .elementor-search-form__submit svg {
	fill: var(--ffu-blue) !important;
}

/* Facebook and account icons */
.elementor-location-header .elementor-social-icon {
	background: var(--ffu-soft) !important;
	box-shadow: inset 0 0 0 1px var(--ffu-line);
	transition: background-color 0.15s ease, box-shadow 0.15s ease;
}

.elementor-location-header .elementor-social-icon svg {
	fill: var(--ffu-blue) !important;
	transition: fill 0.15s ease;
}

.elementor-location-header .elementor-social-icon:hover,
.elementor-location-header .elementor-social-icon:focus-visible {
	background: var(--ffu-blue) !important;
	box-shadow: none;
}

.elementor-location-header .elementor-social-icon:hover svg,
.elementor-location-header .elementor-social-icon:focus-visible svg {
	fill: #fff !important;
}

/* Mobile menu button */
.elementor-location-header .eael-simple-menu-toggle {
	border-radius: 12px !important;
	background: var(--ffu-blue) !important;
	transition: background-color 0.15s ease;
}

.elementor-location-header .eael-simple-menu-toggle:hover {
	background: var(--ffu-blue-dark) !important;
}

/* Open mobile menu: white panel, so the dark links stay readable. */
@media (max-width: 1024px) {
	.elementor-location-header #menu-main-menu,
	.elementor-location-header #menu-main-menu li,
	.elementor-location-header #menu-main-menu .sub-menu {
		background: #fff !important;
	}

	.elementor-location-header #menu-main-menu {
		box-shadow: 0 14px 32px rgba(26, 31, 54, 0.16);
	}

	.elementor-location-header #menu-main-menu > li > a {
		background: #fff !important;
	}

	.elementor-location-header #menu-main-menu > li > a:hover,
	.elementor-location-header #menu-main-menu > li > a:focus-visible {
		background: var(--ffu-soft) !important;
	}

	.elementor-location-header #menu-main-menu .eael-simple-menu-indicator {
		border-color: var(--ffu-line) !important;
		background: var(--ffu-soft) !important;
		color: var(--ffu-blue) !important;
	}

	.elementor-location-header #menu-main-menu .eael-simple-menu-indicator svg {
		fill: var(--ffu-blue) !important;
	}
}
