body.twd-navigation {
	--twd-color-navy: #071024;
	--twd-color-green: #356b50;
	--twd-color-cream: #f7f4ed;
	--twd-color-gold: #b9975b;
	--twd-color-white: #ffffff;
	--twd-header-height: 78px;
}

body.twd-navigation .site-header {
	position: sticky;
	top: 0;
	width: 100%;
	z-index: 999;
}

body.twd-navigation.admin-bar .site-header {
	top: 32px;
}

body.twd-transparent-header .site-header {
	left: 0;
	position: fixed;
	right: 0;
}

/* Heroes break out of the Elementor content container to span the viewport. */
body.twd-navigation #page {
	overflow-x: clip;
}

/* Elementor pads its first container, which would show a strip above the hero. */
body.twd-transparent-header .elementor > .elementor-element:first-child,
body.twd-transparent-header .elementor > .elementor-element:first-child > .e-con-inner {
	padding-top: 0;
}

/* Page wrappers clip their overflow, which would crop a full-bleed hero. */
body.twd-navigation .twd-home-wrapper,
body.twd-navigation .twd-about-page,
body.twd-navigation .twd-gallery-wrapper,
body.twd-navigation .twd-treks-wrapper,
body.twd-navigation .twd-destinations-wrapper,
body.twd-navigation .twd-destination-page,
body.twd-navigation .twd-trek-page {
	overflow: visible;
}

body.twd-navigation .twd-home-hero,
body.twd-navigation .twd-about-hero,
body.twd-navigation .twd-gallery-hero,
body.twd-navigation .twd-treks-hero,
body.twd-navigation .twd-destinations-hero,
body.twd-navigation .twd-destination-hero,
body.twd-navigation .twd-trek-hero {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: 100vw;
	width: 100vw;
}

body.twd-navigation .ast-primary-header-bar {
	background: rgba(247, 244, 237, 0.97);
	border-bottom: 1px solid rgba(7, 16, 36, 0.1);
	box-shadow: 0 8px 30px rgba(7, 16, 36, 0.06);
	min-height: var(--twd-header-height);
	transition:
		background-color 220ms ease,
		border-color 220ms ease,
		box-shadow 220ms ease,
		color 220ms ease;
}

body.twd-navigation .ast-primary-header-bar .site-primary-header-wrap,
body.twd-navigation .ast-mobile-header-wrap .ast-primary-header-bar {
	min-height: var(--twd-header-height);
}

body.twd-navigation .ast-site-identity {
	padding-block: 8px;
}

body.twd-navigation .site-logo-img,
body.twd-navigation .custom-logo-link {
	display: block;
	line-height: 0;
}

body.twd-navigation .site-logo-img img {
	display: block;
	height: auto;
	max-height: 62px;
	transition: filter 220ms ease;
	width: auto;
}

/* The logo is a full lockup, so the text title would duplicate the wordmark. */
body.twd-navigation .ast-site-title-wrap {
	display: none;
}

body.twd-navigation .main-header-menu > .menu-item > .menu-link {
	color: var(--twd-color-navy);
	font-size: 0.76rem;
	font-weight: 700;
	height: var(--twd-header-height);
	letter-spacing: 0.075em;
	padding-inline: 14px;
	position: relative;
	text-transform: uppercase;
	transition: color 180ms ease;
}

body.twd-navigation .main-header-menu > .menu-item > .menu-link:hover,
body.twd-navigation .main-header-menu > .menu-item.focus > .menu-link {
	color: var(--twd-color-green);
}

body.twd-navigation .main-header-menu > .menu-item > .ast-menu-toggle,
body.twd-navigation .main-header-menu > .menu-item > .menu-link .ast-header-navigation-arrow {
	color: currentColor;
}

body.twd-navigation .main-header-menu > .menu-item.current-menu-item > .menu-link,
body.twd-navigation .main-header-menu > .menu-item.current-menu-ancestor > .menu-link,
body.twd-navigation .main-header-menu > .menu-item.current-menu-parent > .menu-link {
	color: var(--twd-color-green);
}

body.twd-navigation .main-header-menu > .menu-item.current-menu-item > .menu-link::after,
body.twd-navigation .main-header-menu > .menu-item.current-menu-ancestor > .menu-link::after,
body.twd-navigation .main-header-menu > .menu-item.current-menu-parent > .menu-link::after {
	background: var(--twd-color-gold);
	border-radius: 999px;
	bottom: 17px;
	content: "";
	height: 2px;
	left: 14px;
	position: absolute;
	right: 14px;
}

body.twd-navigation .main-header-menu .sub-menu {
	background: var(--twd-color-white);
	border: 1px solid rgba(7, 16, 36, 0.08);
	border-radius: 14px;
	box-shadow: 0 18px 50px rgba(7, 16, 36, 0.16);
	min-width: 210px;
	overflow: hidden;
	padding: 9px;
}

body.twd-navigation .main-header-menu .sub-menu .menu-item {
	background: transparent;
}

body.twd-navigation .main-header-menu .sub-menu .menu-link {
	border-radius: 9px;
	color: var(--twd-color-navy);
	font-size: 0.82rem;
	font-weight: 650;
	letter-spacing: 0.035em;
	line-height: 1.4;
	min-height: 44px;
	padding: 11px 14px;
	transition: background-color 160ms ease, color 160ms ease;
}

body.twd-navigation .main-header-menu .sub-menu .menu-link:hover,
body.twd-navigation .main-header-menu .sub-menu .menu-link:focus,
body.twd-navigation .main-header-menu .sub-menu .current-menu-item > .menu-link {
	background: rgba(53, 107, 80, 0.09);
	color: var(--twd-color-green);
}

body.twd-navigation .twd-menu-cta {
	margin-left: 10px;
}

body.twd-navigation .main-header-menu > .twd-menu-cta > .menu-link {
	align-self: center;
	background: var(--twd-color-green);
	border: 1px solid var(--twd-color-green);
	border-radius: 999px;
	color: var(--twd-color-white);
	height: 42px;
	padding-inline: 21px;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

body.twd-navigation .main-header-menu > .twd-menu-cta > .menu-link:hover,
body.twd-navigation .main-header-menu > .twd-menu-cta > .menu-link:focus {
	background: var(--twd-color-navy);
	border-color: var(--twd-color-navy);
	color: var(--twd-color-white);
	transform: translateY(-1px);
}

body.twd-navigation .main-header-menu > .twd-menu-cta > .menu-link::after {
	content: none;
}

body.twd-navigation .main-header-menu .menu-link:focus-visible,
body.twd-navigation .ast-menu-toggle:focus-visible,
body.twd-navigation .main-header-menu-toggle:focus-visible,
body.twd-navigation .custom-logo-link:focus-visible {
	border-radius: 6px;
	outline: 3px solid var(--twd-color-gold);
	outline-offset: 3px;
}

body.twd-transparent-header:not(.twd-header-scrolled) .ast-primary-header-bar {
	background: transparent;
	border-bottom-color: rgba(255, 255, 255, 0.16);
	box-shadow: none;
}

body.twd-transparent-header:not(.twd-header-scrolled) #ast-desktop-header .main-header-menu > .menu-item:not(.twd-menu-cta) > .menu-link,
body.twd-transparent-header:not(.twd-header-scrolled) .ast-header-search .astra-search-icon,
body.twd-transparent-header:not(.twd-header-scrolled) [data-section="section-header-mobile-trigger"] .mobile-menu-wrap .mobile-menu {
	color: var(--twd-color-white);
}

body.twd-transparent-header:not(.twd-header-scrolled) [data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg {
	fill: var(--twd-color-white);
}

/* The navy lockup loses contrast on hero photography, so it turns white there. */
body.twd-transparent-header:not(.twd-header-scrolled) .site-logo-img img {
	filter: brightness(0) invert(1) drop-shadow(0 2px 12px rgba(7, 16, 36, 0.45));
}

body.twd-transparent-header:not(.twd-header-scrolled) #ast-desktop-header .main-header-menu > .menu-item.current-menu-item > .menu-link,
body.twd-transparent-header:not(.twd-header-scrolled) #ast-desktop-header .main-header-menu > .menu-item.current-menu-ancestor > .menu-link,
body.twd-transparent-header:not(.twd-header-scrolled) #ast-desktop-header .main-header-menu > .menu-item.current-menu-parent > .menu-link,
body.twd-transparent-header:not(.twd-header-scrolled) #ast-desktop-header .main-header-menu > .menu-item:not(.twd-menu-cta) > .menu-link:hover,
body.twd-transparent-header:not(.twd-header-scrolled) #ast-desktop-header .main-header-menu > .menu-item:not(.twd-menu-cta).focus > .menu-link {
	color: var(--twd-color-white);
}

body.twd-transparent-header:not(.twd-header-scrolled) #ast-desktop-header .main-header-menu > .menu-item.current-menu-item > .menu-link::after,
body.twd-transparent-header:not(.twd-header-scrolled) #ast-desktop-header .main-header-menu > .menu-item.current-menu-ancestor > .menu-link::after,
body.twd-transparent-header:not(.twd-header-scrolled) #ast-desktop-header .main-header-menu > .menu-item.current-menu-parent > .menu-link::after {
	background: var(--twd-color-gold);
}

body.twd-header-scrolled .ast-primary-header-bar {
	backdrop-filter: blur(14px);
	background: rgba(247, 244, 237, 0.96);
	border-bottom-color: rgba(7, 16, 36, 0.1);
	box-shadow: 0 10px 35px rgba(7, 16, 36, 0.1);
}

body.twd-navigation .ast-mobile-header-content {
	background: var(--twd-color-white);
	border-radius: 0 0 16px 16px;
	box-shadow: 0 18px 45px rgba(7, 16, 36, 0.16);
	max-height: calc(100vh - var(--twd-header-height));
	overflow-y: auto;
}

body.twd-navigation .ast-builder-menu-mobile .main-navigation .main-header-menu,
body.twd-navigation .ast-builder-menu-mobile .main-navigation .main-header-menu .sub-menu {
	background: var(--twd-color-white);
}

body.twd-navigation .ast-builder-menu-mobile .main-navigation .menu-item > .menu-link {
	align-items: center;
	color: var(--twd-color-navy);
	display: flex;
	font-size: 0.9rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	min-height: 50px;
	padding: 12px 22px;
	text-transform: uppercase;
}

body.twd-navigation .ast-builder-menu-mobile .main-navigation .menu-item > .ast-menu-toggle {
	align-items: center;
	background: transparent;
	color: var(--twd-color-navy);
	display: flex;
	height: 50px;
	justify-content: center;
	min-width: 50px;
	padding: 0;
}

body.twd-navigation .ast-builder-menu-mobile .main-navigation .sub-menu .menu-link {
	background: rgba(247, 244, 237, 0.82);
	color: var(--twd-color-navy);
	font-size: 0.82rem;
	min-height: 48px;
	padding-left: 38px;
}

body.twd-navigation .ast-builder-menu-mobile .main-navigation .current-menu-item > .menu-link,
body.twd-navigation .ast-builder-menu-mobile .main-navigation .current-menu-ancestor > .menu-link {
	background: rgba(53, 107, 80, 0.09);
	color: var(--twd-color-green);
}

body.twd-navigation [data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-minimal {
	align-items: center;
	background: transparent;
	border: 0;
	display: flex;
	height: 48px;
	justify-content: center;
	padding: 0;
	width: 48px;
}

body.twd-navigation [data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg {
	fill: var(--twd-color-navy);
	height: 24px;
	width: 24px;
}

@media (min-width: 922px) and (max-width: 1199px) {
	body.twd-navigation {
		--twd-header-height: 74px;
	}

	body.twd-navigation .main-header-menu > .menu-item > .menu-link {
		font-size: 0.68rem;
		padding-inline: 9px;
	}

	body.twd-navigation .site-logo-img img {
		max-height: 52px;
	}

	body.twd-navigation .twd-menu-cta {
		margin-left: 5px;
	}

	body.twd-navigation .main-header-menu > .twd-menu-cta > .menu-link {
		padding-inline: 15px;
	}
}

@media (min-width: 922px) {
	body.twd-navigation .site-header-primary-section-left {
		padding-left: 10px;
	}
}

@media (max-width: 921px) {
	body.twd-navigation {
		--twd-header-height: 74px;
	}

	body.twd-navigation .site-logo-img img {
		max-height: 52px;
	}

	body.twd-navigation .twd-menu-cta {
		display: none;
	}

	body.twd-navigation .ast-builder-menu-mobile .main-navigation .menu-item-has-children > .ast-menu-toggle {
		display: none !important;
	}

	body.twd-navigation .ast-builder-menu-mobile .main-navigation .menu-item-has-children > .sub-menu {
		display: block !important;
		opacity: 1;
		position: static;
		visibility: visible;
	}
}

@media (max-width: 782px) {
	body.twd-navigation.admin-bar .site-header {
		top: 46px;
	}
}

@media (max-width: 544px) {
	body.twd-navigation {
		--twd-header-height: 70px;
	}

	body.twd-navigation .site-logo-img img {
		max-height: 46px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.twd-navigation .site-header *,
	body.twd-navigation .site-header *::before,
	body.twd-navigation .site-header *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}
