/*
 * The header template predates the redesign and is kept as it was: a light bar
 * whose brand mark stays hidden on the home page until the hero logotype has
 * scrolled away, driven by assets/header.js.
 *
 * These are the rules that template needs, lifted from the old theme
 * stylesheet. Rules that described pages the redesign replaced were dropped.
 */

body.elementor-page .qp-native-container.e-con {
	--display: block;
	--width: auto;
	--min-height: 0;
	--gap: 0;
	--row-gap: 0;
	--column-gap: 0;
}

body.elementor-page .qp-native-container.e-atomic-element {
	padding: 0 !important;
}

body.elementor-page .qp-native-container.flex,
body.elementor-page .qp-native-container.inline-flex {
	--display: flex;
	--flex-direction: row;
	--flex-wrap: nowrap;
}

body.elementor-page .qp-native-container.flex-col {
	--flex-direction: column;
}

body.elementor-page .qp-native-container.flex-row {
	--flex-direction: row;
}

body.elementor-page .qp-native-container.flex > .qp-native-container {
	min-width: auto;
}

body.elementor-page .qp-native-container.grid {
	grid-template-rows: none !important;
}

body.elementor-page .qp-native {
	--kit-widget-spacing: 0;
	--widgets-spacing: 0;
}

body.elementor-page .qp-native-heading .elementor-heading-title {
	color: inherit;
	margin: 0;
}

body.elementor-page .qp-native-heading.e-heading-base {
	--tw-leading: 1.2;
}

body.elementor-page .elementor-widget-text-editor.qp-native-richtext,
body.elementor-page .elementor-widget-text-editor.qp-native-richtext > .elementor-widget-container {
	display: contents;
}

/*
 * Text elements inherit their type from the parent, except when they bring their
 * own: .qp-styled carries Elementor styles, .qp-text carries utility classes.
 */
body.elementor-page .qp-native-richtext:not(.qp-styled, .qp-text),
body.elementor-page .qp-native-richtext:not(.qp-styled, .qp-text) .elementor-widget-container,
body.elementor-page .qp-native-richtext-block:not(.qp-styled, .qp-text),
body.elementor-page .qp-native-richtext-block:not(.qp-styled, .qp-text) .elementor-widget-container,
body.elementor-page .qp-native-richtext-block:not(.qp-styled, .qp-text) p,
body.elementor-page .qp-native-richtext:not(.qp-styled, .qp-text) p {
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
}

body.elementor-page .qp-native-button {
	--container-widget-flex-grow: 0;
	--container-widget-width: auto;
	--width: auto;
	width: auto !important;
}

body.elementor-page .qp-native-button .elementor-button,
body.elementor-page .qp-native-button .elementor-button-content-wrapper,
body.elementor-page .qp-native-button .elementor-button-text {
	all: unset;
	display: contents;
}

/*
 * Atomic buttons ship an Elementor look of their own. Every button here is
 * styled by its own classes, so the defaults are cleared out of the way.
 */
body.elementor-page .qp-native-button.e-button-base {
	padding: 0;
	border-radius: 0;
	background-color: transparent;
}

/*
 * Stand-ins for Tailwind classes whose names Atomic rejects, so the elements
 * that need them can still be Atomic. They mirror the original utilities and
 * must sit in Tailwind's own `utilities` layer: for `!important` declarations
 * the cascade prefers earlier layers, so an unlayered rule would lose to the
 * utility it is meant to replace no matter how specific it is.
 */
@layer utilities {
	@media (min-width: 40rem) {
		body.elementor-page .qp-sm-block {
			display: block !important;
		}
	}

	body.elementor-page .qp-group-hover-cyan:is(:where(.group):hover *) {
		color: #00c4fe !important;
	}

	body.elementor-page .qp-group-hover-show:is(:where(.group):hover *) {
		opacity: 1 !important;
	}

	body.elementor-page .qp-group-hover-gap-3:is(:where(.group):hover *) {
		gap: 0.75rem !important;
	}
}

body.elementor-page .qp-native-button-dot::before {
	width: 0.375rem;
	height: 0.375rem;
	flex: none;
	border-radius: 9999px;
	background: #00c4fe;
	content: '';
}

body.elementor-page .qp-native-image {
	--width: auto;
	width: auto;
}

body.elementor-page .qp-native-image .elementor-widget-container {
	display: contents;
}

body.elementor-page .qp-native-image img {
	width: 100%;
	height: 100%;
	object-fit: inherit;
	object-position: inherit;
}

}

	}
}

}

.elementor-location-header .qp-native-header-brand {
	pointer-events: auto !important;
	translate: 0 0 !important;
	opacity: 1 !important;
	transition: opacity 300ms cubic-bezier(0, 0, 0.2, 1), translate 300ms cubic-bezier(0, 0, 0.2, 1) !important;
}

.page-id-6 .elementor-location-header .qp-native-header-brand,
.page-id-7 .elementor-location-header .qp-native-header-brand {
	pointer-events: none !important;
	translate: 0 0.75rem !important;
	opacity: 0 !important;
}

.page-id-6 .elementor-location-header .qp-header-brand-visible .qp-native-header-brand,
.page-id-7 .elementor-location-header .qp-header-brand-visible .qp-native-header-brand {
	pointer-events: auto !important;
	translate: 0 0 !important;
	opacity: 1 !important;
}

.elementor-location-header img.qp-native-svg-emblem,
.elementor-location-header .qp-native-svg-emblem img {
	filter: brightness(0) saturate(100%) invert(67%) sepia(92%) saturate(2812%) hue-rotate(161deg) brightness(103%) contrast(106%);
}

.elementor-location-header img.qp-native-svg-wordmark,
.elementor-location-header .qp-native-svg-wordmark img {
	filter: brightness(0) saturate(100%) invert(22%) sepia(1%) saturate(0%) hue-rotate(171deg) brightness(95%) contrast(89%);
}

.elementor-location-header .qp-native-nav-menu {
	--width: auto;
	transition: transform 300ms cubic-bezier(0, 0, 0.2, 1) !important;
}

.elementor-location-header .qp-native-nav-menu .elementor-nav-menu--dropdown {
	position: fixed !important;
	top: 73px !important;
	right: 0 !important;
	left: 0 !important;
	width: 100vw !important;
	margin-top: 0 !important;
}

@layer base {
	body.admin-bar .elementor-location-header nav {
		top: var(--wp-admin--admin-bar--height, 32px) !important;
	}
}

body.admin-bar .elementor-location-header .qp-native-nav-menu .elementor-nav-menu--dropdown {
	top: calc(73px + var(--wp-admin--admin-bar--height, 32px)) !important;
}

.elementor-location-header .qp-native-nav-menu .elementor-menu-toggle {
	border-radius: 0;
	background: transparent;
	color: #3e3e3e;
}

.elementor-location-header .qp-native-nav-menu .elementor-nav-menu--main .menu-item-language {
	display: none;
}

.elementor-location-header .qp-native-nav-menu .elementor-nav-menu--main .elementor-nav-menu {
	gap: 0.25rem;
}

.elementor-location-header .qp-native-nav-menu .elementor-item {
	padding: 0.5rem 0.75rem !important;
	color: #828282 !important;
	font-family: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji' !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.6 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-location-header .qp-native-nav-menu .elementor-item:hover {
	color: #3e3e3e !important;
}

.elementor-location-header .qp-native-nav-menu .elementor-item-active {
	color: #00c4fe !important;
}

.elementor-location-footer img.qp-native-footer-brand,
.elementor-location-footer .qp-native-footer-brand img {
	filter: brightness(0);
	opacity: 0.4;
}

.elementor-location-footer img.qp-native-footer-brand:hover,
.elementor-location-footer .qp-native-footer-brand:hover img {
	filter: brightness(0) saturate(100%) invert(67%) sepia(92%) saturate(2812%) hue-rotate(161deg) brightness(103%) contrast(106%);
	opacity: 1;
}

.elementor-location-footer .qp-native-footer-desktop {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
}

.elementor-location-footer .qp-native-footer-mobile {
	display: none !important;
}
