/**
 * Header navigation (core/navigation) and .header-row layout.
 * Footer navigation layout/colors remain in assets/css/theme.css (footer context).
 */

.header-row {
	column-gap: var(--wp--custom--spacing--flex-space-small);

	.wp-block-site-logo {
		margin-right: clamp(0.625rem, -1.25rem + 3.3333vw, 1.5625rem);
	}

	.wp-block-wex-header-phone-number,
	.wex-header-phone-number {
		margin-left: auto;
	}
}

header.wp-block-template-part,
header {
	position: sticky;
	top: 0;
	z-index: 999;
	container-type: scroll-state;
	container-name: site-header;
	background-color: var(--wp--preset--color--white);
	border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--neutral-extra-dark) 20%, transparent);
	margin-top: 0;
	padding-inline: var(--wp--custom--spacing--grid-column-gap);
	padding-block: var(--wp--custom--spacing--flex-space-small);
}

header + * {
	margin-block-start: 0;
}

header .wp-block-navigation {
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--body-xs-fixed);
	column-gap: clamp(1.25rem, -1.25rem + 4.4444vw, 2.5rem);
}

.wp-block-navigation:has(.wp-block-navigation__responsive-container.is-menu-open) {
	.wp-block-navigation__responsive-container {
		padding: var(--wp--style--root--padding-left);
	}

	.wp-block-navigation {
		width: 100%;
		font-weight: 600;
		font-size: var(--wp--preset--font-size--body-md);
		line-height: 1;
		row-gap: 0;

		li {
			padding-block: 1.25rem;
			border-bottom: 0.5px solid color-mix(in srgb, var(--wp--preset--color--neutral-extra-dark) 40%, transparent);
			width: 100%;
		}
	}

	.wp-block-buttons {
		width: 100%;
		margin-block-start: auto;

		.wp-block-button a {
			width: 100% !important;
		}
	}

	.wex-header-phone-number,
	.wp-block-wex-header-phone-number {
		width: 100%;
		margin-block-start: var(--wp--preset--spacing--step-5);

		.wex-header-phone-number__content {
			flex-direction: row;
			justify-content: center;
			column-gap: var(--wp--preset--spacing--step-5);
			font-size: var(--wp--preset--font-size--body-xs-fixed);
		}
	}

	.wp-block-navigation__responsive-close,
	.wp-block-navigation__responsive-dialog {
		height: 100%;
	}

	.wp-block-navigation__responsive-container-content {
		height: 100%;
		row-gap: 0;
		padding-block-start: var(--wp--preset--spacing--step-8);
	}
}

.header-apply-button-mobile {
	margin-left: auto !important;
}

@media (min-width: 601px) {
	.wp-block-navigation .wex-header-phone-number,
	.wp-block-navigation .wp-block-wex-header-phone-number,
	.header-apply-button-mobile,
	.mobile-nav-item {
		display: none !important;
	}
}

@media (max-width: 600px) {
	.header-row {
		justify-content: flex-start;
	}

	.header-row:has(.wp-block-navigation) .header-apply-button-desktop,
	.header-row:has(.wp-block-navigation) > .wex-header-phone-number,
	.header-row:has(.wp-block-navigation) > .wp-block-wex-header-phone-number {
		display: none !important;
	}
}

@media (min-width: 600px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: none;
	}

	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		background-color: inherit;
		display: block;
		position: relative;
		width: 100%;
		z-index: auto;
	}

	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close {
		display: none;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
		left: 0;
	}
}

@media (min-width: 900px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: none;
	}

	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		background-color: inherit;
		display: block;
		position: relative;
		width: 100%;
		z-index: auto;
	}

	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close {
		display: none;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
		left: 0;
	}
}

/*
 * Override core 600px navigation breakpoint: keep overlay menu through 899.98px.
 */
@media (min-width: 600px) and (max-width: 899.98px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex !important;
	}

	.wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none !important;
	}

	.wp-block-navigation__responsive-container.is-menu-open {
		display: block !important;
	}

	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close {
		display: block !important;
	}

	.header-row:has(.wp-block-navigation) .header-apply-button-desktop,
	.header-row:has(.wp-block-navigation) > .wex-header-phone-number,
	.header-row:has(.wp-block-navigation) > .wp-block-wex-header-phone-number {
		display: none !important;
	}

	.wp-block-navigation .wex-header-phone-number,
	.wp-block-navigation .wp-block-wex-header-phone-number,
	.header-apply-button-mobile,
	.mobile-nav-item {
		display: block !important;
	}
}
