/*
 * Site-wide Wise Pilot navigation treatment.
 *
 * Astra and WordPress retain ownership of menu rendering, hierarchy, active
 * states, dropdown controls, links, and mobile accordion behavior.
 */

.wpilot-navigation {
	--wpilot-nav-navy: #07294d;
	--wpilot-nav-navy-deep: #041d36;
	--wpilot-nav-blue: #0071dc;
	--wpilot-nav-yellow: #ffc221;
	--wpilot-nav-white: #ffffff;
	--wpilot-nav-muted: #b8c9d9;
	--wpilot-nav-line: rgba(255, 255, 255, 0.14);
}

.wpilot-navigation .site-header {
	position: relative !important;
	z-index: 100;
	border: 0 !important;
	background: var(--wpilot-nav-navy) !important;
	box-shadow: none !important;
}

.wpilot-navigation .site-header *,
.wpilot-navigation .site-header *::before,
.wpilot-navigation .site-header *::after {
	box-sizing: border-box;
}

.wpilot-navigation .site-header .ast-primary-header-bar,
.wpilot-navigation .site-header .main-header-bar,
.wpilot-navigation .site-header .main-header-bar-wrap {
	border: 0 !important;
	background: transparent !important;
}

.wpilot-navigation .site-header .ast-builder-grid-row,
.wpilot-navigation .site-header .main-header-container {
	min-height: 76px;
}

.wpilot-navigation .site-header .site-title a,
.wpilot-navigation .site-header .custom-logo-link {
	color: var(--wpilot-nav-white) !important;
}

.wpilot-navigation .site-header .custom-logo-link {
	display: block !important;
	width: 150px !important;
	height: 68px !important;
	overflow: hidden;
	background: url("../images/wise-pilot-logo-white.webp") left center / contain no-repeat !important;
	font-size: 0 !important;
	line-height: 0 !important;
}

.wpilot-navigation .wpilot-footer .wpilot-footer__wordmark {
	display: block;
	width: 180px;
	height: 102px;
	overflow: hidden;
	background: url("../images/wise-pilot-logo-white.webp") left center / contain no-repeat;
	font-size: 0;
	line-height: 0;
}

.wpilot-navigation .site-header .main-header-menu > .menu-item > .menu-link,
.wpilot-navigation .site-header .main-header-menu > .menu-item > .ast-menu-toggle {
	color: var(--wpilot-nav-white) !important;
}

.wpilot-navigation .site-header .main-header-menu > .menu-item:hover > .menu-link,
.wpilot-navigation .site-header .main-header-menu > .menu-item:focus-within > .menu-link,
.wpilot-navigation .site-header .main-header-menu > .current-menu-item > .menu-link,
.wpilot-navigation .site-header .main-header-menu > .current-menu-ancestor > .menu-link {
	color: var(--wpilot-nav-yellow) !important;
}

.wpilot-navigation .site-header .main-header-menu > .menu-item > .menu-link::after {
	background: var(--wpilot-nav-yellow) !important;
}

.wpilot-navigation .site-header .main-header-menu .menu-link[href*="pilotlogin"],
.wpilot-navigation .site-header .main-header-menu .menu-link[href*="/my-account/"],
.wpilot-navigation .site-header .main-header-menu .uo-login-logout-menu-item > .menu-link {
	background: transparent !important;
	color: var(--wpilot-nav-white) !important;
}

.wpilot-navigation .site-header .main-header-menu .menu-link[href*="pilotlogin"]:hover,
.wpilot-navigation .site-header .main-header-menu .menu-link[href*="pilotlogin"]:focus-visible,
.wpilot-navigation .site-header .main-header-menu .menu-link[href*="/my-account/"]:hover,
.wpilot-navigation .site-header .main-header-menu .menu-link[href*="/my-account/"]:focus-visible,
.wpilot-navigation .site-header .main-header-menu .uo-login-logout-menu-item > .menu-link:hover,
.wpilot-navigation .site-header .main-header-menu .uo-login-logout-menu-item > .menu-link:focus-visible {
	color: var(--wpilot-nav-yellow) !important;
}

.wpilot-navigation .site-header .main-header-menu .menu-link:focus-visible,
.wpilot-navigation .site-header .main-header-menu .ast-menu-toggle:focus-visible,
.wpilot-navigation .site-header .menu-toggle:focus-visible,
.wpilot-navigation .site-header .cart-container:focus-visible {
	outline: 3px solid var(--wpilot-nav-yellow);
	outline-offset: 2px;
}

.wpilot-navigation .site-header .ast-site-header-cart .ast-cart-menu-wrap,
.wpilot-navigation .site-header .ast-site-header-cart .ast-cart-menu-wrap .count {
	color: var(--wpilot-nav-white) !important;
}

.wpilot-navigation .site-header .ast-site-header-cart .ast-cart-menu-wrap .count,
.wpilot-navigation .site-header .ast-site-header-cart .ast-cart-menu-wrap .count::after {
	border-color: var(--wpilot-nav-white) !important;
}

.wpilot-navigation .site-header .ast-button-wrap .menu-toggle,
.wpilot-navigation .site-header .menu-toggle {
	min-width: 46px;
	min-height: 46px;
	border: 1px solid var(--wpilot-nav-line) !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--wpilot-nav-white) !important;
}

@media (min-width: 922px) {
	.wpilot-navigation .site-header .main-header-container,
	.wpilot-navigation .site-header .ast-builder-grid-row {
		position: relative !important;
	}

	.wpilot-navigation .site-header .main-header-menu > .menu-item > .menu-link {
		display: flex;
		align-items: center;
		min-height: 76px;
	}

	.wpilot-navigation .site-header .main-header-bar-navigation,
	.wpilot-navigation .site-header .main-header-menu,
	.wpilot-navigation .site-header .wpilot-mega-menu {
		position: static !important;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu {
		top: calc(50% + 32px) !important;
		right: 0 !important;
		left: 0 !important;
		display: grid !important;
		grid-template-columns: repeat(6, minmax(0, 1fr));
		align-items: stretch;
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
		padding: 0 !important;
		overflow: hidden !important;
		border: 1px solid var(--wpilot-nav-line) !important;
		border-top: 0 !important;
		border-radius: 0 !important;
		background: var(--wpilot-nav-navy-deep) !important;
		box-shadow: 0 24px 64px rgba(0, 0, 0, 0.28) !important;
		transform: none !important;
		transition: visibility 0.15s ease, opacity 0.15s ease !important;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu:hover > .sub-menu,
	.wpilot-navigation .site-header .wpilot-mega-menu:focus-within > .sub-menu {
		visibility: visible !important;
		opacity: 1 !important;
		transform: none !important;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__group {
		position: relative;
		display: block !important;
		align-self: stretch;
		justify-content: flex-start !important;
		min-width: 0;
		padding: 1.35rem 1.35rem 1.5rem;
		border-right: 1px solid var(--wpilot-nav-line);
		background: transparent;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__group--ground-schools {
		grid-column: 1;
		grid-row: 1;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__group--question-banks {
		grid-column: 2;
		grid-row: 1;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__group--flight-test-guides {
		grid-column: 3;
		grid-row: 1;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__group--conversion-courses {
		grid-column: 4;
		grid-row: 1;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__group--free-courses {
		grid-column: 5;
		grid-row: 1;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__group > .menu-link {
		align-items: flex-start;
		min-height: 0;
		padding: 0 0 0.9rem;
		background: transparent !important;
		color: var(--wpilot-nav-yellow) !important;
		font-size: 0.75rem;
		font-weight: 800;
		letter-spacing: 0.075em;
		line-height: 1.35;
		text-transform: uppercase;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__group > .menu-link::after {
		display: none !important;
		content: none !important;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__group > .menu-link:hover,
	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__group > .menu-link:focus-visible {
		color: var(--wpilot-nav-white) !important;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu__group > .menu-link .dropdown-menu-toggle,
	.wpilot-navigation .site-header .wpilot-mega-menu__group > .ast-menu-toggle {
		display: none !important;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu__group > .sub-menu {
		position: static !important;
		display: block !important;
		visibility: visible !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
		padding: 0 !important;
		margin: 0 !important;
		overflow: visible !important;
		border: 0 !important;
		border-radius: 0 !important;
		opacity: 1 !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: none !important;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu__group > .sub-menu .menu-item {
		background: transparent !important;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu__group > .sub-menu .menu-link {
		min-height: 38px;
		padding: 0.45rem 0.5rem;
		background: transparent !important;
		color: var(--wpilot-nav-white) !important;
		font-size: 0.84rem;
		font-weight: 650;
		letter-spacing: 0.01em;
		line-height: 1.25;
		text-transform: none;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu__group > .sub-menu .menu-item:hover > .menu-link,
	.wpilot-navigation .site-header .wpilot-mega-menu__group > .sub-menu .menu-item:focus-within > .menu-link,
	.wpilot-navigation .site-header .wpilot-mega-menu__group > .sub-menu .current-menu-item > .menu-link {
		background: rgba(0, 113, 220, 0.2) !important;
		color: var(--wpilot-nav-yellow) !important;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__booking {
		grid-column: 6;
		grid-row: 1;
		display: block !important;
		min-width: 0;
		padding: 1.35rem 1.35rem 1.5rem;
		background: transparent !important;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__booking::before {
		display: block;
		padding: 0 0 0.9rem;
		color: var(--wpilot-nav-yellow);
		content: "Exam Bookings";
		font-size: 0.75rem;
		font-weight: 800;
		letter-spacing: 0.075em;
		line-height: 1.35;
		text-transform: uppercase;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__booking > .menu-link {
		min-height: 38px;
		padding: 0.45rem 0.5rem;
		background: transparent !important;
		color: var(--wpilot-nav-white) !important;
		font-size: 0.84rem;
		font-weight: 650;
		letter-spacing: 0.01em;
		line-height: 1.25;
		text-transform: none;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__booking > .menu-link:hover,
	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu > .wpilot-mega-menu__booking > .menu-link:focus-visible {
		background: rgba(0, 113, 220, 0.2) !important;
		color: var(--wpilot-nav-yellow) !important;
	}
}

@media (max-width: 921px) {
	.wpilot-navigation .site-header .ast-builder-grid-row,
	.wpilot-navigation .site-header .main-header-container {
		min-height: 68px;
	}

	.wpilot-navigation .site-header .main-header-bar-navigation,
	.wpilot-navigation .site-header .main-header-menu {
		background: var(--wpilot-nav-navy) !important;
	}

	.wpilot-navigation .site-header .main-header-menu .menu-item > .menu-link {
		min-height: 44px;
		color: var(--wpilot-nav-white) !important;
	}

	.wpilot-navigation .site-header .main-header-menu .menu-item > .ast-menu-toggle {
		color: var(--wpilot-nav-yellow) !important;
	}

	.wpilot-navigation .site-header .main-header-menu .sub-menu,
	.wpilot-navigation .site-header .main-header-menu .sub-menu .sub-menu {
		border: 0 !important;
		border-left: 2px solid var(--wpilot-nav-yellow) !important;
		border-radius: 0 !important;
		background: var(--wpilot-nav-navy-deep) !important;
		box-shadow: none !important;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu__group > .menu-link {
		color: var(--wpilot-nav-yellow) !important;
		font-size: 0.76rem;
		font-weight: 800;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu__course > .menu-link {
		color: var(--wpilot-nav-white) !important;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu__booking {
		padding: 0;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu__booking::before {
		display: block;
		min-height: 44px;
		padding: 0.75rem 1rem;
		color: var(--wpilot-nav-yellow);
		content: "Exam Bookings";
		font-size: 0.76rem;
		font-weight: 800;
		letter-spacing: 0.06em;
		line-height: 1.4;
		text-transform: uppercase;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu__booking > .menu-link {
		padding-inline: 1.25rem !important;
		background: transparent !important;
		color: var(--wpilot-nav-white) !important;
		font-size: 0.84rem;
		font-weight: 650;
		letter-spacing: 0.01em;
		text-transform: none;
	}

	.wpilot-navigation .site-header .wpilot-mega-menu__booking > .menu-link::after {
		display: none !important;
		content: none !important;
	}

	.wpilot-navigation .site-header .custom-logo-link {
		width: 112px !important;
		height: 56px !important;
	}

	.wpilot-navigation .wpilot-footer .wpilot-footer__wordmark {
		width: 150px;
		height: 84px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.wpilot-navigation .site-header .wpilot-mega-menu > .sub-menu,
	.wpilot-navigation .site-header .main-header-menu .menu-link {
		transition: none !important;
	}
}
