/* ----- BEGIN Lots of navigation styles ----- */


@media (min-width: 600px) and (max-width: 959px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: block !important;
	}

	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		display: none !important;
	}
}


/* long menu items */
.wp-block-navigation .has-child:not(.open-on-click):hover > .wp-block-navigation__submenu-container {
	min-width: 260px;
}

/* reset parent theme mobile nav */
@media (max-width: 390px) {
	.wp-block-site-logo {
		max-width: 180px;
	}
}

html:not(.has-modal-open) .open-menu-dont-hide {
	display: none;
}

.wp-block-navigation__responsive-container.is-menu-open {
	padding: 2rem !important;
}

@media (max-width: 781px) {
	.has-modal-open .wp-block-navigation__responsive-container-open {
		position: absolute;
		top: 34px;
		right: 15px;
	}
	html:not(.has-modal-open) .nav-main {
		position: absolute;
		right: 15px;
	}
}

/*@media (max-width: 781px) {*/
@media (max-width: 959px) {

	/* Safari double-click zoom fix */
	button { touch-action: manipulation; }

	.main-menu {
		justify-content: flex-end !important;
	}

	.desktop-center-next-item + .wp-block-navigation-item {
		order: -1;
	}

	.custom-logo-link:focus {
		outline: none;
	}

	.has-modal-open .admin-bar .is-menu-open .wp-block-navigation__responsive-dialog {
		margin-top: 0;
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		padding-top: 0;
	}

	/* How mobile wp block nav should work */
	.has-modal-open .wp-block-navigation__responsive-container-close {
		top: 0;
	}
	.has-modal-open .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon {
		display: block; /* override block css */
		position: absolute;
		right: 0;
		width: 20px;
		height: 15px;
	}
	.has-modal-open .wp-block-navigation .wp-block-navigation-item {
		min-width: 260px;
		max-width: 260px;
	}
	.has-modal-open .wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item {
		min-width: 220px;
		max-width: 220px;
		padding: 5px 0;
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
		align-items: normal;
		background-color: inherit;
		color: inherit;
		display: flex;
		flex-direction: column;
		height: 0;
		left: -1px;
		opacity: 0;
		overflow: hidden;
		position: absolute;
		top: 100%;
		transition: opacity .1s linear;
		visibility: hidden;
		width: 0;
		z-index: 2;
	}
	.wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true] + .wp-block-navigation__submenu-container {
		border: none;
		height: auto;
		min-width: 200px;
		opacity: 1;
		overflow: initial;
		padding-left: 2rem;
		padding-right: 2rem;
		position: static;
		visibility: visible;
		width: auto;
	}

}

@media (min-width: 960px) {
	.main-menu {
		min-height: 220px;
	}
	.desktop-margin-left-auto {
		margin-left: auto;
	}
	/* classes on site logo in navigation are applied not on <li> but the child of that. */
	.desktop-center-next-item + .wp-block-navigation-item {
		position: absolute;
		margin-left: 50%;
		transform: translateX(-50%);
	}
}


.nav-button a {
	border: 1px solid #000;
	min-width: 140px;
	padding: 10px 12px !important;
	text-align: center;
}


/* WP 6.3 Lacking: Can't set nav link hover color */
.wp-block-navigation-item:not(.menu-button) a:hover {
	color: var(--wp--preset--color--dark-gray);
}

.wp-block-navigation__responsive-container-close {
	right: -20px;
	top: 20px;
}


/*--- END Main menu / navigation customization --- */
