/* =========================================================================
   Axil Header + responsive navigation.
   ========================================================================= */

.axil-header {
	position: sticky;
	top: 0;
	z-index: var(--axil-z-header);
	background: rgba(255, 255, 255, 0.92);
	backdrop-filter: saturate(180%) blur(10px);
	border-bottom: 1px solid var(--axil-line);
	transition: box-shadow var(--axil-transition), background-color var(--axil-transition);
}

/* Subtle elevation once the page is scrolled (toggled by theme.js). */
.axil-header.is-scrolled {
	box-shadow: var(--axil-shadow-sm);
}

.axil-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--axil-space-3);
	min-height: 72px;
}

/* ---- Brand ---- */
.axil-header__brand {
	display: flex;
	align-items: center;
}

.axil-header__brand img,
.axil-header__brand .custom-logo {
	max-height: 44px;
	width: auto;
}

@media (max-width: 600px) {
	.axil-header__brand img,
	.axil-header__brand .custom-logo {
		max-height: 36px;
	}
}

.axil-site-title {
	font-family: var(--axil-font-heading);
	font-weight: var(--axil-fw-extrabold);
	font-size: var(--axil-fs-400);
	letter-spacing: -0.02em;
	color: var(--axil-navy-900);
}

.axil-site-title:hover {
	color: var(--axil-cyan-600);
}

/* ---- Navigation ---- */
.axil-nav {
	display: flex;
	align-items: center;
	gap: var(--axil-space-4);
}

.axil-nav__menu {
	display: flex;
	align-items: center;
	gap: var(--axil-space-3);
	list-style: none;
	margin: 0;
	padding: 0;
}

.axil-nav__menu li {
	position: relative;
}

.axil-nav__menu a {
	font-family: var(--axil-font-heading);
	font-weight: var(--axil-fw-medium);
	font-size: var(--axil-fs-200);
	color: var(--axil-navy-800);
	padding: 0.5rem 0;
	display: inline-block;
}

.axil-nav__menu a:hover,
.axil-nav__menu .current-menu-item > a,
.axil-nav__menu .current_page_item > a {
	color: var(--axil-cyan-600);
}

/* Underline accent on hover/active. */
.axil-nav__menu > li > a::after {
	content: "";
	display: block;
	height: 2px;
	width: 0;
	margin-top: 4px;
	background: var(--axil-cyan);
	transition: width var(--axil-transition);
}

.axil-nav__menu > li > a:hover::after,
.axil-nav__menu > li.current-menu-item > a::after,
.axil-nav__menu > li.current_page_item > a::after {
	width: 100%;
}

/* ---- Submenus (basic dropdown) ---- */
.axil-nav__menu ul.sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 220px;
	background: var(--axil-white);
	border: 1px solid var(--axil-line);
	border-radius: var(--axil-radius-md);
	box-shadow: var(--axil-shadow-md);
	padding: 0.5rem;
	list-style: none;
	margin: 0.5rem 0 0;
	opacity: 0;
	visibility: hidden;
	transform: translateY(6px);
	transition: opacity var(--axil-transition), transform var(--axil-transition),
		visibility var(--axil-transition);
}

.axil-nav__menu li:hover > ul.sub-menu,
.axil-nav__menu li:focus-within > ul.sub-menu {
	opacity: 1;
	visibility: visible;
	transform: none;
}

.axil-nav__menu ul.sub-menu a {
	display: block;
	padding: 0.6rem 0.75rem;
	border-radius: var(--axil-radius-sm);
}

.axil-nav__menu ul.sub-menu a:hover {
	background: var(--axil-cloud);
}

/* ---- Header CTA ---- */
.axil-header__cta {
	display: inline-flex;
}

/* ---- Mobile toggle ---- */
.axil-nav-toggle {
	display: none;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	width: 44px;
	height: 44px;
	padding: 0;
	background: transparent;
	border: 1px solid var(--axil-line);
	border-radius: var(--axil-radius-sm);
	cursor: pointer;
}

.axil-nav-toggle span {
	display: block;
	width: 20px;
	height: 2px;
	margin-inline: auto;
	background: var(--axil-navy-900);
	transition: transform var(--axil-transition), opacity var(--axil-transition);
}

.axil-nav-toggle[aria-expanded="true"] span:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.axil-nav-toggle[aria-expanded="true"] span:nth-child(2) {
	opacity: 0;
}

.axil-nav-toggle[aria-expanded="true"] span:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

/* ---- Responsive: collapse to mobile nav ---- */
@media (max-width: 1024px) {
	.axil-nav-toggle {
		display: flex;
	}

	.axil-nav {
		position: fixed;
		inset: 72px 0 auto 0;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		background: var(--axil-white);
		border-bottom: 1px solid var(--axil-line);
		box-shadow: var(--axil-shadow-md);
		padding: var(--axil-space-3) var(--axil-gutter) var(--axil-space-4);
		max-height: calc(100vh - 72px);
		overflow-y: auto;
		transform: translateY(-12px);
		opacity: 0;
		visibility: hidden;
		transition: opacity var(--axil-transition), transform var(--axil-transition),
			visibility var(--axil-transition);
	}

	.axil-nav.is-open {
		transform: none;
		opacity: 1;
		visibility: visible;
	}

	.axil-nav__menu {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		width: 100%;
	}

	.axil-nav__menu li {
		border-bottom: 1px solid var(--axil-line);
	}

	.axil-nav__menu a {
		display: block;
		padding: 0.9rem 0;
	}

	.axil-nav__menu > li > a::after {
		display: none;
	}

	/* Static submenus on mobile. */
	.axil-nav__menu ul.sub-menu {
		position: static;
		opacity: 1;
		visibility: visible;
		transform: none;
		box-shadow: none;
		border: 0;
		padding: 0 0 0 var(--axil-space-2);
		margin: 0;
	}

	.axil-header__cta {
		margin-top: var(--axil-space-3);
	}

	.axil-header__cta .axil-btn {
		width: 100%;
	}
}
