html.has-modal-open {
	#wpadminbar {
		display: none;
	}
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 99991;

	@media screen and (min-width: 601px) {
		top: var(--wp-admin--admin-bar--height, 0px);
	}

	/* When page is scrolled, make the navbar smaller */
	html:not(.scroll-top):where(.scroll-is-scrolling, .scroll-bottom) & {

		.scroll-reduce-padding-y,
		.wp-block-navigation__responsive-container-content > ul > li > .wp-block-navigation-item__content {
			padding-top: 1.5rem !important;
			padding-bottom: 1.5rem !important;
		}
	}
}

/* Reset breakpoint for navigation block */
@media screen and (min-width: 600px) and (max-width: 1000px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: block;
	}

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

	header .wp-block-navigation {
		justify-content: flex-end;
	}
}

/** wp-block-navigation__responsive-container-content */

.wp-block-navigation__responsive-container {
	--wp--style--root--padding-top: var(--wp--preset--spacing--10);
	--wp--style--root--padding-bottom: var(--wp--preset--spacing--10);
}

/* Desktop Navigation
--------------------------------------------- */
.wp-block-navigation__responsive-container:not(.is-menu-open.has-modal-open) {


	--breakpoint-scale: 1.15vw;
	--wp--preset--font-size--10: clamp(0.7rem, var(--breakpoint-scale), 1rem);
	--wp--preset--font-size--08: clamp(0.5rem, var(--breakpoint-scale), 0.875rem);
	--wp--custom--block-gap--default:clamp(0.5rem, var(--breakpoint-scale), 1.2rem);

	/** Gloabl sub-menus */
	.wp-block-navigation-submenu {
		border: none;

		.wp-block-navigation__submenu-icon {
			--dropdown--icon--size: 1em;
			height: var(--dropdown--icon--size);
			width: var(--dropdown--icon--size);
			position: relative;
			top: -2px;

			svg {
				color: var(--wp--preset--color--neutral-light);
				fill: currentColor;
			}
		}
	}

	/** Global menu item */
	.wp-block-navigation-item__content {
		padding-top: calc(var(--wp--custom--block-gap--default) / 3);
		padding-bottom: calc(var(--wp--custom--block-gap--default) / 3);
		padding-left: 0.5rem;
		padding-right: 0.5rem;
		transition: var(--wp--custom--transition--default);

		&[href="#"] {
			&:focus, &:hover {
				text-decoration: none;
				cursor: default;
			}
		}
	}

	.wp-block-navigation__responsive-container-content>.wp-block-navigation__container {
		gap: var(--wp--custom--block-gap--default) !important;
	}

	.wp-block-navigation__responsive-container-content>.wp-block-navigation__container>li.wp-block-navigation-item {
		&:hover, &:focus {
			> .wp-block-navigation-item__content {
				color: var(--wp--preset--color--accent);
			}
		}
	}

	/** Top level menu item */
	.wp-block-navigation__responsive-container-content>.wp-block-navigation__container>li.wp-block-navigation-item.has-child>.wp-block-navigation-item__content {
		padding-top: var(--wp--preset--spacing--31);
		padding-bottom: var(--wp--preset--spacing--31);

		+.wp-block-navigation__submenu-icon {
			margin-left: 0;
		}
	}

	/** First level sub-menu */
	.wp-block-navigation__responsive-container-content>.wp-block-navigation__container>li.wp-block-navigation-item.has-child>.wp-block-navigation-submenu {
		position: fixed;
		left: 50%;
		right: 0;
		top: calc(var(--navbar-size) - 2px);
		flex-direction: row;
		max-width: calc(var(--wp--style--global--content-size) - var(--wp--style--root--padding-right) - var(--wp--style--root--padding-left) - 1rem);
		width: 100%;
		transform: translateX(-50%);
		z-index: 99999;
		padding: var(--wp--style--root--padding-top) var(--wp--style--root--padding-right);
		gap: calc(var(--wp--custom--block-gap--default) * 2);
		display: flex;
		grid-template-columns: repeat(4, 1fr);
		justify-content: end;

		&::after {
			content: '';
			position: absolute;
			top: 0;
			left: -50vw;
			width: 150vw;
			height: 100%;
			background: var(--wp--preset--color--black);
			opacity: 0.9;
			z-index: -1;
		}

		&, .wp-block-navigation__submenu-container, .wp-block-navigation-submenu {
			background-color: transparent !important;
		}

		/** First level sub-menu item */
		.wp-block-navigation-item {
			display: block;
			min-width: unset !important;
			
			>.wp-block-navigation__submenu-icon {
				display: none;
			}
			
			>.wp-block-navigation-item__content {
				font-weight: 500;
				font-size: var(--wp--preset--font-size--10);
			}

			/** Global sub-sub menus */
			.wp-block-navigation-submenu {
				opacity: 1;
				overflow: visible;
				visibility: visible;
				position: unset;
				height: auto;
				width: auto;
				min-width: unset !important;

				/** Sub-menu links */
				.wp-block-navigation-item__content {
					font-size: var(--wp--preset--font-size--08);
					min-width: unset;
				}

				.wp-block-navigation-submenu {
					margin-left: calc(var(--wp--custom--block-gap--default) / 3);
				}
			}
		}
	}

}

/* Mobile Navigation
--------------------------------------------- */
@media screen and (max-width: 1000px) {
	.wp-block-site-logo {
		width: 185px;
	}
}

.wp-block-navigation__responsive-container.is-menu-open.has-modal-open {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	overflow: visible;
	padding: 0;

	--navigation--mobile--color: var(--wp--preset--color--contrast);
	--navigation--mobile--background: var(--wp--preset--color--base);

	.wp-block-navigation__responsive-container-close {
		position: absolute;
		color: var(--navigation--mobile--color);
		background-color: var(--navigation--mobile--background);
		/* top: -100px; */
	}

	.wp-block-navigation__responsive-dialog {
		margin-top: 0;
	}

	.wp-block-navigation__responsive-container-content {
		padding: 0;
		position: absolute;
		right: calc(-1 * var(--wp--style--root--padding-right));
		top: 2rem;
		color: var(--navigation--mobile--color);
		background-color: var(--navigation--mobile--background);
		width: 100vw;
		max-width: var(--wp--style--global--content-size);
		max-height: 75vh;
		overflow-y: auto;
		border-top: solid 1px var(--wp--preset--color--neutral-light);

		>.wp-block-navigation>.wp-block-navigation-submenu {

			border-bottom: solid 1px var(--wp--preset--color--neutral);

		}
	}

	/** Style all navigation items */
	.wp-block-navigation {
		--navigation-layout-justification-setting: flex-start;
		width: 100%;
		gap: 0 !important;

		.wp-block-navigation-item {
			align-items: stretch;
			width: 100%;
		}
	}

	.wp-block-navigation-submenu {
		padding: 0 !important;
	}

	.wp-block-navigation-item__content {
		padding: var(--wp--preset--spacing--10) var(--wp--style--root--padding-right);
	}

	/** Top level menu item */
	.wp-block-navigation__responsive-container-content>.wp-block-navigation__container>li.wp-block-navigation-item>.wp-block-navigation-item__content {

		+.wp-block-navigation__submenu-icon {
			--dropdown--icon--size: 1.25rem;
			display: block;
			height: var(--dropdown--icon--size);
			width: var(--dropdown--icon--size);
			position: absolute;
			top: calc(var(--wp--preset--spacing--06) + 10px);
			right: var(--wp--style--root--padding-right);

			svg {
				color: var(--wp--preset--color--neutral-light);
				fill: currentColor;
			}

			/** Hide sub-menus when toggle is closed */
			&[aria-expanded="false"]+.wp-block-navigation-submenu {
				display: none;
			}
		}
	}

	/** First level sub-menu */
	.wp-block-navigation__responsive-container-content>.wp-block-navigation__container>li.wp-block-navigation-item.has-child>.wp-block-navigation-submenu {
		background-color: var(--wp--preset--color--neutral-lighter) !important;

		ul.wp-block-navigation-submenu {
			padding-left: var(--wp--style--root--padding-left) !important;
		}
	}
}