/* ==========================================================================
   MENU GLOBAL - Base styles, variables, structure
   ========================================================================== */

/* Variables */
body {
	--logo-width: 127px;
	--nav-gap: 3.2rem;
	--nav-item-color: var(--base);
	--nav-item-font-size: inherit;
}

@media screen and (max-width: 1025px) {
	body {
		--logo-width: 100px;
		--nav-gap: 2rem;
		--nav-item-font-size: var(--text-m);
	}
}

/* Header positioning */
header {
	position: fixed;
	top: 11px;
	left: 0;
	right: 0;
	z-index: 999;
	pointer-events: none;
	transition:
		top 0.5s ease-out 0.3s,
		background 0.3s ease-out 0s,
		opacity 0.5s ease-out;
}

/* Header inner container */
.header__inner {
	padding-inline: 1rem;
}
@media screen and (min-width: 1026px) and (max-width: 1500px) {
	.header__inner {
		padding-inline: 2rem;
	}
}
@media screen and (max-width: 1025px) {
	div.header__inner {
		padding-inline: 1rem;
	}
}

.header__inner > div {
	inline-size: 100%;
	margin-inline: auto;
	padding: 1px 2.5rem;
	max-inline-size: calc(var(--width-vp-max) + 4rem);
}

@media screen and (max-width: 1025px) {
	.header__inner > div {
		padding: 1.5rem;
	}
}

/* Nav upper wrapper */
header .nav__upper-wrapper {
	background: white;
	border-radius: var(--radius-m);
}

.nav__upper-wrapper {
	justify-content: space-between;
	align-items: center;
	transition: 0.3s ease-out;
}

/* Logo */
a.logo-link,
a.logo-link svg {
	width: var(--logo-width);
	display: flex;
}

/* Primary navigation */
header ul.primary-navigation {
	display: flex;
	flex-direction: row;
	gap: 3rem;
	align-items: center;
}

.primary-navigation {
	gap: var(--nav-gap);
	margin: 0 !important;
}

header .primary-navigation > li {
	display: flex;
	align-items: center;
	gap: 5px;
	padding-block: 15px;
	padding-inline: 1rem;
	position: relative;
}

header ul.primary-navigation > li > a,
header .menu-support a {
	transition: 0.2s ease-out;
	color: var(--nav-item-color);
	font-size: var(--nav-item-font-size);
}

li.menu-item .menu-label {
	cursor: default;
}

/* Active menu item indicator (desktop) */
@media screen and (min-width: 1026px) {
	header .primary-navigation > li::after {
		content: "";
		width: 34px;
		height: 5px;
		background-image: url("data:image/svg+xml,%3Csvg width='34' height='5' viewBox='0 0 34 5' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect y='0.0999985' width='25' height='4' fill='%23003071'/%3E%3Ccircle cx='31.1' cy='2.1' r='2.1' fill='%23003071'/%3E%3C/svg%3E");
		background-size: contain;
		background-repeat: no-repeat;
		position: absolute;
		bottom: -20px;
		left: 50%;
		transform: translateX(-50%);
		z-index: 999;
		pointer-events: none;
		opacity: 0;
		transition: 0s ease-out;
	}

	header .primary-navigation > li.mega-open::after {
		opacity: 1;
		transition: 0.35s ease-out;
	}

	.mobile-mega-header {
		display: none !important;
	}
}
