:root {
	--so-nav-forest: #123d2a;
	--so-nav-green: #2f9545;
	--so-nav-green-soft: #edf8ef;
	--so-nav-yellow: #ffc61a;
	--so-nav-ink: #17211b;
	--so-nav-muted: #56645c;
	--so-nav-line: #dbe6df;
}

body .lp-header.style-v2 {
	position: relative;
	z-index: 1000;
}

body .lp-header.style-v2 .lp-header-middle {
	background: #fff !important;
	border-bottom: 1px solid var(--so-nav-line);
	box-shadow: 0 8px 24px rgba(18, 61, 42, 0.06);
}

body .lp-header.style-v2 .lp-header-overlay,
body .lp-header.style-v2 .lp-header-user-nav {
	display: none !important;
}

@media (min-width: 1181px) {
	body .lp-header.style-v2 .lp-header-middle.fullwidth-header .container-fluid {
		max-width: 1320px;
		padding-inline: 28px;
	}

	body .lp-header.style-v2 .lp-header-middle.fullwidth-header .container-fluid > .row {
		height: 88px;
		min-height: 88px;
	}

	body .lp-header.style-v2 .lp-logo-header4-sts {
		flex: 0 0 190px;
		max-width: 190px;
		min-height: 88px;
		margin: 0 !important;
		padding: 0 !important;
	}

	body .lp-header.style-v2 .lp-header-logo,
	body .lp-header.style-v2 .lp-header-logo > a {
		display: inline-flex;
		width: auto;
		height: 76px;
		align-items: center;
	}

	body .lp-header.style-v2 .lp-header-logo img {
		width: 128px;
		height: auto;
		max-height: 76px;
		object-fit: contain;
	}

	body .lp-header.style-v2 .lp-menu-header4-sts-icon {
		min-height: 88px;
		flex-direction: row;
		align-items: center;
		margin: 0 !important;
		padding: 0 !important;
	}

	body .lp-header.style-v2 .header-main-menu {
		min-height: 88px;
		order: initial;
	}

	body .lp-header.style-v2 .mobile-nav-icon {
		display: none !important;
	}

	body #mega-menu-wrap-primary,
	body #mega-menu-wrap-primary #mega-menu-primary {
		background: transparent !important;
	}

	body #mega-menu-wrap-primary #mega-menu-primary {
		gap: 2px;
	}

	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item {
		position: relative !important;
	}

	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link,
	body.home #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
		position: relative;
		display: inline-flex !important;
		height: 88px !important;
		min-height: 48px;
		align-items: center;
		gap: 7px;
		border-radius: 10px;
		background: transparent !important;
		color: var(--so-nav-forest) !important;
		padding: 0 11px !important;
		font-family: inherit !important;
		font-size: 15px !important;
		font-weight: 650 !important;
		line-height: 1.2 !important;
		transition: color 160ms ease, background-color 160ms ease;
	}

	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link::after {
		position: absolute;
		right: 11px;
		bottom: 15px;
		left: 11px;
		height: 2px;
		border-radius: 2px;
		background: var(--so-nav-green);
		content: "";
		opacity: 0;
		transform: scaleX(0.4);
		transition: opacity 160ms ease, transform 160ms ease;
	}

	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item:hover > a.mega-menu-link,
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item:focus-within > a.mega-menu-link,
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-current-menu-item > a.mega-menu-link {
		color: var(--so-nav-green) !important;
	}

	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item:hover > a.mega-menu-link::after,
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item:focus-within > a.mega-menu-link::after,
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-current-menu-item > a.mega-menu-link::after {
		opacity: 1;
		transform: scaleX(1);
	}

	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus-visible {
		outline: 3px solid rgba(47, 149, 69, 0.35) !important;
		outline-offset: -4px;
	}

	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-join-now > a.mega-menu-link,
	body.home #mega-menu-wrap-primary #mega-menu-primary > li.mega-join-now > a.mega-menu-link {
		height: 46px !important;
		margin-left: 8px;
		border-radius: 999px;
		background: var(--so-nav-yellow) !important;
		color: #302600 !important;
		padding-inline: 22px !important;
		font-weight: 750 !important;
		box-shadow: 0 9px 20px rgba(149, 107, 0, 0.16);
	}

	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-join-now > a.mega-menu-link::after {
		display: none;
	}

	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-join-now > a.mega-menu-link:hover,
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-join-now > a.mega-menu-link:focus-visible {
		background: #ffd24f !important;
		color: #241c00 !important;
	}

	body.so-nav-ready #mega-menu-item-31937 > .mega-sub-menu,
	body.so-nav-ready #mega-menu-item-10580 > .mega-sub-menu {
		--so-panel-x: -24%;
		position: absolute !important;
		top: calc(100% - 5px) !important;
		left: 50% !important;
		display: grid !important;
		width: 458px !important;
		max-width: min(458px, calc(100vw - 32px));
		gap: 4px;
		visibility: hidden !important;
		opacity: 0 !important;
		z-index: 1002 !important;
		border: 1px solid var(--so-nav-line) !important;
		border-radius: 16px !important;
		background: #fff !important;
		padding: 16px !important;
		box-shadow: 0 18px 42px rgba(18, 61, 42, 0.14) !important;
		pointer-events: none;
		transform: translate(var(--so-panel-x), 10px);
		transition: opacity 180ms ease, transform 180ms cubic-bezier(0.22, 1, 0.36, 1), visibility 180ms ease !important;
	}

	body.so-nav-ready #mega-menu-item-10580 > .mega-sub-menu {
		--so-panel-x: -54%;
		width: 430px !important;
	}

	body.so-nav-ready #mega-menu-primary > li:hover > .mega-sub-menu,
	body.so-nav-ready #mega-menu-primary > li:focus-within > .mega-sub-menu,
	body.so-nav-ready #mega-menu-primary > li.mega-toggle-on > .mega-sub-menu {
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto;
		transform: translate(var(--so-panel-x), 0);
	}

	body.so-nav-ready .so-nav-panel__item {
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	body.so-nav-ready .so-nav-panel__link {
		display: grid !important;
		grid-template-columns: 44px minmax(0, 1fr);
		grid-template-areas: "icon title" "icon description";
		column-gap: 13px;
		align-items: center;
		min-height: 62px;
		border-radius: 12px !important;
		background: transparent !important;
		padding: 8px !important;
		text-decoration: none !important;
		transition: background-color 150ms ease, color 150ms ease !important;
	}

	body.so-nav-ready .so-nav-panel__link:hover,
	body.so-nav-ready .so-nav-panel__link:focus-visible {
		background: var(--so-nav-green-soft) !important;
		outline: none !important;
	}

	body.so-nav-ready .so-nav-panel__icon {
		grid-area: icon;
		display: inline-flex;
		width: 44px;
		height: 44px;
		align-items: center;
		justify-content: center;
		border-radius: 12px;
		background: var(--so-nav-green-soft);
		color: var(--so-nav-green);
	}

	body.so-nav-ready .so-nav-panel__icon svg {
		width: 21px;
		height: 21px;
		fill: none;
		stroke: currentColor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1.8;
	}

	body.so-nav-ready .so-nav-panel__title {
		grid-area: title;
		align-self: end;
		color: var(--so-nav-forest) !important;
		font-size: 15px;
		font-weight: 750;
		line-height: 1.25;
	}

	body.so-nav-ready .so-nav-panel__description {
		grid-area: description;
		align-self: start;
		margin-top: 2px;
		color: var(--so-nav-muted) !important;
		font-size: 13px;
		font-weight: 450;
		line-height: 1.35;
	}
}

@media (max-width: 1180px) {
	body .lp-header.style-v2 .lp-header-middle,
	body .lp-header.style-v2 .lp-header-middle.fullwidth-header .container-fluid,
	body .lp-header.style-v2 .lp-header-middle.fullwidth-header .container-fluid > .row {
		width: 100% !important;
		max-width: 100% !important;
		min-height: 72px;
	}

	body .lp-header.style-v2 .lp-header-middle {
		left: auto !important;
	}

	body .lp-header.style-v2 .lp-header-middle.fullwidth-header .container-fluid {
		margin-inline: 0 !important;
		padding-inline: 18px;
	}

	body .lp-header.style-v2 .lp-header-middle.fullwidth-header .container-fluid > .row {
		position: relative;
		display: flex;
		align-items: center;
		margin: 0;
	}

	body .lp-header.style-v2 .lp-header-middle.fullwidth-header .container-fluid > .row::before,
	body .lp-header.style-v2 .lp-header-middle.fullwidth-header .container-fluid > .row::after {
		display: none;
	}

	body .lp-header.style-v2 .lp-logo-header4-sts {
		display: flex;
		flex: 0 0 auto;
		width: auto !important;
		min-height: 72px;
		align-items: center;
		justify-content: flex-start;
		padding: 0 !important;
	}

	body .lp-header.style-v2 .lp-header-logo,
	body .lp-header.style-v2 .lp-header-logo > a {
		display: inline-flex;
		width: auto;
		height: 64px;
		align-items: center;
		float: none !important;
	}

	body .lp-header.style-v2 .lp-header-logo img {
		width: 106px;
		height: auto;
		max-height: 64px;
		margin: 0 !important;
		object-fit: contain;
	}

	body .lp-header.style-v2 .lp-menu-header4-sts-icon {
		display: none !important;
	}

	body .lp-header.style-v2 .mobile-nav-icon {
		position: absolute;
		top: 12px !important;
		right: 14px !important;
		bottom: auto !important;
		left: auto !important;
		display: flex !important;
		width: 48px !important;
		height: 48px;
		align-items: center;
		justify-content: center;
		padding: 0 !important;
	}

	body .lp-header.style-v2 .nav-icon {
		display: inline-flex !important;
		width: 48px;
		height: 48px;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 5px;
		border: 1px solid #cfe3d4;
		border-radius: 12px;
		background: var(--so-nav-green-soft);
		box-shadow: none;
	}

	body .lp-header.style-v2 .nav-icon .icon-bar {
		display: block;
		width: 22px;
		height: 2px;
		margin: 0 !important;
		border-radius: 2px;
		background: var(--so-nav-green) !important;
	}

	body .lp-header.style-v2 .nav-icon:focus-visible {
		outline: 3px solid rgba(47, 149, 69, 0.35);
		outline-offset: 2px;
	}

	#menu.mm-menu {
		width: min(88vw, 360px) !important;
		min-width: 280px !important;
		max-width: 360px !important;
		border-right: 1px solid var(--so-nav-line);
		background: #fff !important;
		color: var(--so-nav-ink) !important;
		box-shadow: 18px 0 42px rgba(18, 61, 42, 0.16);
	}

	#menu .mm-navbars_top {
		border-bottom: 1px solid var(--so-nav-line);
		background: #fff;
	}

	#menu .mm-navbar_size-3 {
		height: 94px;
		padding: 10px 18px;
	}

	#menu .userimage {
		display: inline-flex;
		width: 132px;
		height: 72px;
		align-items: center;
		justify-content: flex-start;
	}

	#menu .userimage img {
		width: 106px;
		height: auto;
		max-height: 70px;
		object-fit: contain;
	}

	#menu .mm-panel {
		background: #fff;
		padding-top: 14px;
	}

	#menu .mm-listitem {
		border-color: #edf2ef;
	}

	#menu .mm-listitem__text,
	#menu .mm-navbar__title {
		display: flex;
		min-height: 52px;
		align-items: center;
		color: var(--so-nav-forest) !important;
		padding: 13px 20px;
		font-family: inherit;
		font-size: 16px;
		font-weight: 700;
		line-height: 1.35;
	}

	#menu .mm-listitem__btn,
	#menu .mm-navbar__btn {
		width: 52px;
		min-width: 52px;
		min-height: 52px;
		color: var(--so-nav-green) !important;
	}

	#menu .so-mobile-has-submenu {
		display: block;
	}

	#menu .so-mobile-has-submenu > .mm-listitem__text {
		width: 100%;
	}

	#menu .so-mobile-submenu {
		width: 100%;
		margin: 0;
		padding: 4px 12px 12px 24px;
		list-style: none;
		background: #f7faf8;
	}

	#menu .so-mobile-submenu a {
		display: flex;
		min-height: 48px;
		align-items: center;
		border-radius: 10px;
		color: var(--so-nav-forest);
		padding: 10px 14px;
		font-size: 15px;
		font-weight: 650;
		line-height: 1.3;
		text-decoration: none;
	}

	#menu .so-mobile-submenu a:hover,
	#menu .so-mobile-submenu a:focus-visible {
		background: var(--so-nav-green-soft);
		color: var(--so-nav-green);
		outline: none;
	}

	#menu .current-menu-item > .mm-listitem__text {
		background: var(--so-nav-green-soft);
		color: var(--so-nav-green) !important;
	}

	#menu .join-now {
		margin: 18px 16px 8px;
		border: 0;
	}

	#menu .join-now > .mm-listitem__text {
		justify-content: center;
		border-radius: 12px;
		background: var(--so-nav-yellow);
		color: #302600 !important;
		font-weight: 800;
	}
}

@media (prefers-reduced-motion: reduce) {
	body #mega-menu-wrap-primary #mega-menu-primary *,
	body.so-nav-ready #mega-menu-primary > li > .mega-sub-menu {
		transition-duration: 0.01ms !important;
	}
}
