/* Region-first Destinations navigation for Olga's desktop and mobile header. */
.bt-destinations-navigation > .wp-block-navigation__submenu-container {
	min-width: 13.5rem;
}

.bt-destinations-navigation__region {
	position: relative;
}

.bt-destinations-navigation__region > .wp-block-navigation-item__content {
	padding-right: 2.6rem !important;
}

.bt-destinations-navigation__region > .wp-block-navigation__submenu-icon {
	right: .8rem;
}

.bt-destinations-navigation__region > .wp-block-navigation__submenu-container {
	top: -1px;
	left: 100%;
	min-width: 15.5rem;
	max-height: min(74vh, 44rem);
	overflow-y: auto;
	overscroll-behavior: contain;
}

.bt-destinations-navigation__region > .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	white-space: nowrap;
}

@media (min-width: 721px) {
	.bt-destinations-navigation[data-bt-navigation-expanded="true"] > .wp-block-navigation-item__content,
	.bt-destinations-navigation[data-bt-navigation-expanded="true"] > .wp-block-navigation__submenu-icon {
		color: var(--wp--preset--color--accent) !important;
	}

	.bt-destinations-navigation > .wp-block-navigation__submenu-container {
		width: 18.5rem !important;
		min-width: 18.5rem !important;
		padding-block: .55rem;
	}

	.bt-destinations-navigation__region > .wp-block-navigation-item__content {
		display: flex;
		align-items: center;
		min-height: 3.875rem;
		padding: 1rem 3.75rem 1rem 1.4rem !important;
	}

	.bt-destinations-navigation__region:not(:last-child) {
		border-bottom: 1px solid #e4ded5;
	}

	.bt-destinations-navigation__region:hover,
	.bt-destinations-navigation__region:focus-within,
	.bt-destinations-navigation__region[data-bt-desktop-expanded="true"] {
		background: color-mix(in srgb, var(--wp--preset--color--accent) 12%, var(--wp--preset--color--base)) !important;
	}

	.bt-destinations-navigation__region:hover > .wp-block-navigation-item__content,
	.bt-destinations-navigation__region:hover > .wp-block-navigation__submenu-icon,
	.bt-destinations-navigation__region:focus-within > .wp-block-navigation-item__content,
	.bt-destinations-navigation__region:focus-within > .wp-block-navigation__submenu-icon,
	.bt-destinations-navigation__region[data-bt-desktop-expanded="true"] > .wp-block-navigation-item__content,
	.bt-destinations-navigation__region[data-bt-desktop-expanded="true"] > .wp-block-navigation__submenu-icon {
		color: var(--wp--preset--color--accent) !important;
	}

	.bt-destinations-navigation__region > .wp-block-navigation__submenu-icon {
		right: auto;
		margin-right: 2rem !important;
		transform: none;
	}

	.bt-destinations-navigation__region > .wp-block-navigation__submenu-icon svg {
		width: .72rem;
		height: .72rem;
		transform: rotate(-90deg) !important;
	}

	.bt-destinations-navigation__region > .wp-block-navigation__submenu-container {
		width: 20rem !important;
		min-width: 20rem !important;
		max-height: min(82vh, 48rem);
		max-height: min(82dvh, 48rem);
		padding-block: .55rem;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		scrollbar-gutter: stable;
	}

	.bt-destinations-navigation__region > .wp-block-navigation__submenu-container,
	.bt-destinations-navigation__region > .wp-block-navigation__submenu-container > .wp-block-navigation-item {
		background: var(--wp--preset--color--base) !important;
		color: var(--wp--preset--color--contrast) !important;
	}

	.bt-destinations-navigation__region:nth-child(4) > .wp-block-navigation__submenu-container {
		max-height: min(82vh, calc(100vh - 18rem));
		max-height: min(82dvh, calc(100dvh - 18rem));
	}

	.bt-destinations-navigation__region:nth-last-child(-n + 2) > .wp-block-navigation__submenu-container {
		top: auto !important;
		bottom: -1px;
	}

	.bt-destinations-navigation__region > .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		align-items: center;
		min-height: 3.125rem;
		padding: .85rem 1.45rem !important;
		line-height: 1.35;
	}

	.bt-destinations-navigation__region > .wp-block-navigation__submenu-container > .wp-block-navigation-item:not(:last-child) {
		border-bottom: 1px solid #e4ded5;
	}
}

@media (min-width: 721px) and (max-width: 980px) {
	.bt-destinations-navigation > .wp-block-navigation__submenu-container {
		width: 16rem !important;
		min-width: 16rem !important;
	}

	.bt-destinations-navigation__region > .wp-block-navigation-item__content {
		min-height: 3.5rem;
	}

	.bt-destinations-navigation__region > .wp-block-navigation__submenu-container {
		width: 18rem !important;
		min-width: 18rem !important;
	}

	.bt-destinations-navigation__region > .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		min-height: 2.875rem;
	}
}

@media (max-width: 720px) {
	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation {
		align-items: stretch;
		width: min(100%, 24rem);
	}

	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation > .wp-block-navigation__submenu-container {
		display: flex !important;
		align-items: stretch !important;
		width: 100% !important;
		gap: 0 !important;
		padding: .75rem 0 0 !important;
	}

	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation__region {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) 2.75rem;
		width: 100%;
		border-top: 1px solid var(--wp--preset--color--surface);
	}

	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation__region > .wp-block-navigation-item__content {
		justify-content: flex-start !important;
		padding: .9rem .25rem !important;
		text-align: left;
	}

	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation__region > .wp-block-navigation__submenu-icon {
		position: static;
		display: grid !important;
		place-items: center;
		width: 2.75rem;
		height: 100%;
		margin: 0;
		transform: none;
	}

	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation__region > .wp-block-navigation__submenu-icon svg {
		width: 14px !important;
		height: 14px !important;
		transition: transform .2s ease;
	}

	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation__region[data-bt-mobile-expanded="true"] > .wp-block-navigation__submenu-icon svg {
		transform: rotate(180deg);
	}

	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation__region[data-bt-mobile-expanded="true"] {
		background: color-mix(in srgb, var(--wp--preset--color--accent) 12%, var(--wp--preset--color--base)) !important;
		color: var(--wp--preset--color--accent) !important;
	}

	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation__region > .wp-block-navigation__submenu-container {
		position: static !important;
		grid-column: 1 / -1;
		display: none !important;
		width: 100% !important;
		min-width: 0 !important;
		max-height: none;
		padding: 0 0 .75rem 1rem !important;
		border: 0 !important;
		box-shadow: none !important;
		overflow: visible;
	}

	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation__region[data-bt-mobile-expanded="true"] > .wp-block-navigation__submenu-container {
		display: flex !important;
		align-items: flex-start !important;
		gap: 0 !important;
		background: var(--wp--preset--color--base) !important;
		color: var(--wp--preset--color--contrast) !important;
	}

	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation__region[data-bt-mobile-expanded="true"] > .wp-block-navigation__submenu-container > .wp-block-navigation-item {
		background: var(--wp--preset--color--base) !important;
		color: var(--wp--preset--color--contrast) !important;
	}

	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation__region > .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		justify-content: flex-start !important;
		padding: .55rem .25rem !important;
		font-size: .82rem;
		letter-spacing: .09em;
		text-align: left;
	}
}

@media (prefers-reduced-motion: reduce) {
	.wp-block-navigation__responsive-container.is-menu-open .bt-destinations-navigation__region > .wp-block-navigation__submenu-icon svg {
		transition: none;
	}
}
