/**
 * Sticky logo + menu bar after 100px scroll.
 * Only #main-nav is pinned — the hero inside #wrapper-navbar stays in flow.
 */

body.sln-sticky-header-enabled #main-nav.navbar {
	transition: padding 0.35s ease, background-color 0.35s ease, box-shadow 0.35s ease;
}

body.sln-sticky-header-enabled #main-nav.navbar .navbar-brand img {
	height: auto;
	transition: max-width 0.35s ease, max-height 0.35s ease;
}

body.sln-sticky-header-active #main-nav.navbar {
	background: #122346;
	box-shadow: 0 8px 28px rgba(10, 22, 40, 0.28);
	left: 0;
	padding-bottom: 0.55rem;
	padding-top: 0.55rem;
	position: fixed !important;
	right: 0;
	top: 0;
	transform: translateY(0);
	width: 100%;
	z-index: 1051;
}

body.admin-bar.sln-sticky-header-active #main-nav.navbar {
	top: 32px;
}

body.sln-sticky-header-active #main-nav.navbar .container {
	align-items: center;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

body.sln-sticky-header-active #main-nav.navbar .navbar-brand {
	margin-right: 1rem;
	padding-bottom: 0;
	padding-top: 0;
}

body.sln-sticky-header-active #main-nav.navbar .navbar-brand img {
	max-height: 52px;
	max-width: 210px;
}

body.sln-sticky-header-active #main-nav.navbar #main-menu .menu-item {
	padding-left: 1.35rem;
}

body.sln-sticky-header-active #main-nav.navbar #main-menu .menu-item a {
	font-size: 1.05rem;
	letter-spacing: 0.04em;
}

body.sln-sticky-header-active #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
	font-size: 0.95rem !important;
	height: auto !important;
	line-height: 1.3 !important;
	padding-bottom: 0.45rem !important;
	padding-top: 0.45rem !important;
}

body.sln-sticky-header-active #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item {
	margin: 0 0 0 0.35rem;
}

body.sln-sticky-header-enter #main-nav.navbar {
	animation: sln-sticky-header-in 0.38s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes sln-sticky-header-in {
	from {
		opacity: 0.65;
		transform: translateY(-110%);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (max-width: 782px) {
	body.admin-bar.sln-sticky-header-active #main-nav.navbar {
		top: 46px;
	}
}

@media (max-width: 1024px) {
	body.sln-sticky-header-active #main-nav.navbar {
		padding-bottom: 0.45rem;
		padding-top: 0.45rem;
	}

	body.sln-sticky-header-active #main-nav.navbar .navbar-brand img {
		max-height: 44px;
		max-width: 175px;
	}
}

@media (max-width: 575.98px) {
	body.sln-sticky-header-active #main-nav.navbar .navbar-brand img {
		max-height: 38px;
		max-width: 150px;
	}
}

/* Mobile overlay stays above the hero; logo + hamburger stay clickable. */
@media (max-width: 1024px) {
	body.sln-mnav-open.sln-sticky-header-active #wrapper-navbar,
	body.sln-mnav-open.sln-sticky-header-active #masthead,
	body.sln-mnav-open.sln-sticky-header-active .custom-header-media {
		z-index: auto !important;
		pointer-events: none !important;
	}

	body.sln-mnav-open.sln-sticky-header-active #main-nav,
	body.sln-mnav-open.sln-sticky-header-active #main-nav.navbar {
		z-index: 10080 !important;
		pointer-events: auto !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.sln-sticky-header-enabled #main-nav.navbar,
	body.sln-sticky-header-enabled #main-nav.navbar .navbar-brand img {
		transition: none;
	}

	body.sln-sticky-header-enter #main-nav.navbar {
		animation: none;
	}
}
