:root {
	/* Header Heights */
	--header-height: 10rem;
	--header-height-sticky: 5rem;
	/* Burger Menu */
	--sh-burger-button-width: 3rem;
	--sh-burger-button-height: 3rem;
	--sh-burger-icon-width: 2.25rem;
	--sh-burger-icon-height: 1.5rem;
	--sh-burger-stroke-width: 2px;
}

@media only screen and (max-width: 1239px) {
	:root {
		/* Header Heights */
		--header-height: 4.5rem;
		--header-height-sticky: 4.5rem;
	}
}

#content {
	min-height: calc(100vh - var(--header-height));
	/* Prevents jumps in the content width if the content is not loaded immediately and the scroll bar is inserted later  */
}

.sh-header {
	display: flex;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	max-width: 100vw;
	z-index: 100;
	will-change: transform;
	transition: height .35s ease, background-color .35s ease, box-shadow .35s ease;
}

.sh-header__inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 100%;
	max-width: var(--cw-lg);
	margin: 0 auto;
}

/* ===========================================
  Header placeholder 
  - necessary for smooth transitions
  - position absolute for transparent header
  =========================================== */

.sh-header__placeholder {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	pointer-events: none;
	transition: background-color 0.35s ease;
}

.sh-header__placeholder::before {
    content: "";
    position: absolute;
	pointer-events: none;
}

.sh-header__placeholder::before,
.sh-header__placeholder::after {
    content: "";
    position: absolute;
	pointer-events: none;
    top: 0;	
    left: 0;
    right: 0;
	height: 30rem;
	z-index: 1;
	background: linear-gradient(to right,  rgba(0,130,250,1) 0%,rgba(63,80,210,1) 50%,rgba(186,2,152,1) 100%);
}

.sh-header__placeholder::after {
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 25%,rgba(255,255,255,1) 100%);
}

.sh-header,
.sh-header__placeholder {
	height: var(--header-height);
}

.sh-header__sticky-placeholder {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: var(--header-height-sticky);
	opacity: 0;
	pointer-events: none;
}

body .sh-header::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
	background-color: var(--clr-accent-2);
	transform-origin: 50% 0%;
	transform: scale3d(1, 0, 1);
	transition: transform .35s ease;
}

body.sh-header--sticky .sh-header::before {
	transform: scale3d(1, 1, 1);
}

/* ===========================================
   Background Circle
=========================================== */

.sh-header__circle_wrapper {
    position: absolute;
	pointer-events: none;
    top: -3rem;	
    left: 0;
    right: 0;
	height: 58rem;
	max-height: 100vw;
	overflow: hidden;
}

.sh-header__circle {
    position: absolute;
    pointer-events: none;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: .5;
    mix-blend-mode: multiply;
    z-index: 2;
    background-image: url(../../../../uploads/2025/02/combyn-circle.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: auto 94%;
	/*
    -webkit-animation: sh-spin 8s linear infinite;
    -moz-animation: sh-spin 8s linear infinite;
    animation: sh-spin 8s linear infinite;
	*/
}

.e-con.e-child {
	z-index: 3;
}

/* Footer Circle */
/*
.site-footer {
	margin-top: -21rem;	
}
.site-footer .sh-header__circle_wrapper {
	position: relative;
	margin-bottom: -38rem;
	top: unset;
	width: 59rem;
	max-width: 100vw;
	margin-left: auto;
	margin-right: calc(0.5 * (100vw - var(--cw-lg) - var(--sb-width)));
}

@media only screen and (max-width: 1239px) {
	.site-footer {
		margin-top: -33.33vw;
	}
	.site-footer .sh-header__circle_wrapper {
		margin-left: auto;
		margin-right: auto;
		margin-bottom: -66.66vw;
	}
}
*/

/* Circle animation */
@-moz-keyframes sh-spin { 
	100% { 
		-moz-transform: rotate(360deg);
	} 
}

@-webkit-keyframes sh-spin { 
	100% { 
		-webkit-transform: rotate(360deg); 
	} 
}

@keyframes sh-spin { 
	100% { 
	-webkit-transform: rotate(360deg); 
	transform: rotate(360deg); 
	}
}

@media (prefers-reduced-motion) {
	.sh-header__circle  {
		-webkit-animation: unset;
		   -moz-animation: unset;
				animation: unset;
	}
}

/* ===========================================
  Simple Sticky Header
  =========================================== */

/*
  .sh-header {
  position: fixed;
  top: 0;
  }
  
  body.sh-header--sticky .sh-header {
  height: var(--header-height-sticky);
  background-color: var(--clr-accent-2);
  }
  */

/* ===========================================
  Sticky Reveal Header
  =========================================== */

/*
  body.sh-header--sticky .sh-header {
  position: fixed;
  top: calc(-1 * var(--header-height-sticky));
  margin-top: -.5px;
  height: var(--header-height-sticky);
  transform: translate3d(0, 100%, 0);
  transition: transform .35s ease;
  }
  */


/* ===========================================
  Sticky Scroll Direction Header
  =========================================== */

body.sh-header--sticky .sh-header {
	position: fixed;
	height: var(--header-height-sticky);
	top: calc(-1 * var(--header-height-sticky));
	margin-top: -.5px;
	transition: transform .35s ease;
}

body.sh-header--sticky.sh-header--reveal .sh-header {
	transform: translate3d(0, 100%, 0);
}

body.sh-header--sticky .sh-header:focus-within {
	transform: translate3d(0, 100%, 0);
}

.sh-header__placeholder {
	height: calc(4 * var(--header-height));
	margin-bottom: calc(-3 * var(--header-height));
}

/* ===========================================
  Logo
  =========================================== */

.sh-header__logo {
	z-index: 3;
	position: relative;
	display: block;
}

#sh-svg-logo-header {
	display: inline-block;
	vertical-align: middle;
	fill: var(--clr-white);
	width: 11rem;
	height: auto;
	overflow: visible;
	transform-origin: 0% 0%;
	transition: fill .35s ease, opacity .35s ease, transform .35s ease;
}

@media only screen and (min-width: 1240px) {
	#sh-svg-logo-header {
		width: 17rem;
	}
}

/* ===========================================
   Logo Sticky Header
=========================================== */

@media only screen and (min-width: 1240px) {
	.sh-header--sticky #sh-svg-logo-header {
		transform: scale3d(.7, .7, 1) translate3d(0, 19%, 0);
		transition: fill 0s ease, opacity 0s ease, transform 0s ease;
	}
}

/* ===========================================
  Menu Items
  =========================================== */

.sh-header__nav {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
}

.sh-header__menu {
	display: flex;
	flex-direction: column;
	margin: 0 0 2rem;
	list-style: none;
}

.sh-header__menu .sh-nav__item {
	position: relative;
}

.sh-header__menu>.sh-nav__item:not(.sh-fm) {
	display: flex;
	flex-wrap: wrap;
}

.sh-header__menu .sh-nav__link {
	position: relative;
	display: flex;
	align-items: center;
	padding: .5rem 0;
	color: var(--clr-white);
	font-weight: 400;
	cursor: pointer;

	z-index: 99;
}

.sh-nav__link,
.sh-header__menu .sh-nav__link {
	transition: font-weight .35s ease, color .35s ease, border-color .35s ease, background-color .35s ease, background-size .35s ease;	
}

/* Current Menu Item */
.sh-header__menu .sh-nav__item--current:not(.sh-nav__item--cta)>.sh-nav__link {
	color: var(--clr-white);
}

.sh-header__menu .sh-nav__item--current:not(.sh-nav__item--cta)>.sh-nav__link::after {
	transform: scale3d(1, 1, 1) !important;
	margin-right: .05em !important;
}

/* Lvl 1 */
.sh-header__menu>.sh-nav__item {
	padding-left: 1rem;
	padding-right: 1rem;
}

.sh-header__menu>.sh-nav__item>.sh-nav__link {
	font-size: var(--fs-0);
}

/* Lvl 2 */
.sh-header__menu>.sh-nav__item>.sh-nav__submenu>.sh-nav__item {
	display: block;
	position: relative;
}
.sh-header__menu>.sh-nav__item>.sh-nav__submenu>.sh-nav__item>.sh-nav__link {
	font-size: var(--fs-0);
	color: var(--clr-black);
}

/* Desktop Menu Items */
@media only screen and (min-width: 1240px) {
	.sh-header__nav {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
	}

	.sh-header__menu {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		z-index: 1;
		margin: 0;
	}

	.sh-header__menu>.sh-nav__item {
		padding-left: 0;
		padding-right: 0;
	}

	.sh-header__menu .sh-nav__link {
		padding: .65rem 1rem;
	}

	.sh-header__menu>.sh-nav__item>.sh-nav__submenu-toggle {
		margin-left: -.5rem;
		margin-right: 1rem;
	}

	.sh-header__menu .sh-nav__item:not(.sh-nav__item--cta) > .sh-nav__link:not(.sh-nav__link--bold) {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	
	.sh-header__menu .sh-nav__item:not(.sh-nav__item--cta) > .sh-nav__link--bold {
		font-weight: 900;
		opacity: 0;
		color: transparent;
		pointer-events: none;
	}
	
	.sh-header__menu .sh-nav__link:hover,
	.sh-header__menu .sh-nav__item--has-children:hover>.sh-nav__link {
		color: var(--clr-white);
	}
	
	.sh-header__menu .sh-nav__item:not(.sh-nav__item--cta) > .sh-nav__link:not(.sh-nav__link--bold):hover,
	.sh-header__menu .sh-nav__item--has-children:not(.sh-nav__item--cta):hover > .sh-nav__link:not(.sh-nav__link--bold) {
		font-weight: 700;
	}

	.sh-header__menu>.sh-nav__item:not(.sh-nav__item--cta):not(.sh-nav__item--has-children)>.sh-nav__link::after {
	    content: "";
	    position: absolute;
	    bottom: .25rem;
	    left: 1rem;
	    right: 1rem;
		margin-left: -.1em;
		margin-right: -.1em;
		border-bottom: thin solid var(--clr-white);
		transition: transform .35s ease;
		transform: scale3d(0, 1, 1);
	}
	
	.sh-header__menu .sh-nav__item:not(.sh-nav__item--cta):not(.sh-nav__item--has-children) > .sh-nav__link:not(.sh-nav__link--bold):hover::after,
	.sh-header__menu .sh-nav__item--has-children:not(.sh-nav__item--cta):not(.sh-nav__item--has-children):hover > .sh-nav__link:not(.sh-nav__link--bold)::after {
		transform: scale3d(1, 1, 1);
	}

	.sh-header__menu>.sh-nav__item>.sh-nav__submenu>.sh-nav__item>.sh-nav__link {
		padding: .35rem .65rem;
		white-space: nowrap;
		border-radius: var(--br-sm);
		font-weight: 400 !important;
	}
	
	.sh-header__menu>.sh-nav__item>.sh-nav__submenu>.sh-nav__item>.sh-nav__link:hover {
		background-color: #d1e8fe;
	}
}

/* ===========================================
  Menu Items --- Sticky Header
  =========================================== */

.sh-header--sticky .sh-toggle__line {
	border-color: var(--clr-white);
}

@media only screen and (min-width: 1240px) {
	.sh-header--sticky .sh-header__menu>.sh-nav__item>.sh-nav__link {
		color: var(--clr-white);
	}

	.sh-header--sticky .sh-header__menu>.sh-nav__item>.sh-nav__link:hover {
		color: var(--clr-white);
	}

	.sh-header--sticky .sh-header__menu>.sh-nav__item--current>.sh-nav__link {
		color: var(--clr-white);
	}
}

/* ===========================================
  Menu CTA Button
  =========================================== */

.sh-nav__item--cta {
	display: flex;
	align-items: center;
}

.sh-nav__item--cta > .sh-nav__link--bold {
	display: none;
}

.sh-nav__item--cta > .sh-nav__link {
	border-radius: 2em;
	padding: .4em 1.25em .475em;
	margin: 0 0 0 1.25rem;
	font-weight: 400;
	cursor: pointer;
}

.sh-nav__item--cta-style-1 > .sh-nav__link {
	color: var(--clr-white);
	background-color: var(--clr-accent-1);	
}

.sh-nav__item--cta-style-1 > .sh-nav__link:hover {
	color: var(--clr-black);
	background-color: var(--clr-white);
}

.sh-nav__item--cta-style-2 > .sh-nav__link {
	color: var(--clr-white);
	background-color: var(--clr-black);	
}

.sh-nav__item--cta-style-2 > .sh-nav__link:hover {
	color: var(--clr-black);
	background-color: var(--clr-white);
}

/* Menu CTA Button - If Sticky Header */
.sh-header--sticky .sh-header__menu > .sh-nav__item--cta-style-1 > .sh-nav__link {
	color: var(--clr-white);
	background-color: var(--clr-accent-1);
}

.sh-header--sticky .sh-nav__item--cta-style-1 > .sh-nav__link:hover,
.sh-header--sticky .sh-header__menu > .sh-nav__item--cta-style-1 > .sh-nav__link:hover {
	color: var(--clr-white);
	background-color: var(--clr-accent-4);
}

.sh-header--sticky .sh-nav__item--cta-style-2 > .sh-nav__link,
.sh-header--sticky .sh-header__menu > .sh-nav__item--cta-style-2 > .sh-nav__link {
	color: var(--clr-black);
	background-color: var(--clr-white);
}

.sh-header--sticky .sh-nav__item--cta-style-2 > .sh-nav__link:hover,
.sh-header--sticky .sh-header__menu > .sh-nav__item--cta-style-2 > .sh-nav__link:hover {
	color: var(--clr-white);
	background-color: var(--clr-accent-4);
}

/* Menu CTA Button - Media Queries */
@media only screen and (min-width: 1240px) {
	.sh-header__inner > .sh-nav__item--cta {
		display: none;
	}
}

@media only screen and (max-width: 1239px) {
	.sh-header__nav .sh-nav__item--cta {
		padding-top: 1rem;
	}
	.sh-header__logo {
		margin-right: auto;
	}
	.sh-header__nav-mobile-toggle {
		margin-left: 1.25rem;
	}
	.sh-header__inner > .sh-nav__item--cta {
		z-index: 10;
	}
}

@media only screen and (max-width: 767px) {
	.sh-header__inner > .sh-nav__item--cta {
		display: none;
	}
}

/* ===========================================
  Menu Contact Data
  =========================================== */

.sh-header__contact {
	margin-top: auto;
}

@media only screen and (min-width: 1240px) {
	.sh-header__contact {
		display: none;
	}
}

/* ===========================================
  Menu Social Links
  =========================================== */

.sh-socials,
.sh-socials__item,
.sh-socials__link {
	display: flex;
	align-items: center;
	list-style: none;
}

.sh-socials__item,
.sh-socials__link {
	flex-direction: column;
}

.sh-socials__item:not(:first-child) {
	margin-left: .25rem;
}

.sh-socials__item:not(:last-child) {
	margin-right: .25rem;
}

.sh-socials__link {
	padding: .5rem;
	border-radius: var(--br-sm);
	border: thin solid var(--clr-accent-1);
	background-color: var(--clr-accent-1);
	transition: border-color .35s ease, background-color .35s ease;
}

.sh-socials__icon {
	width: 1.15rem;
	height: auto;
	fill: var(--clr-black);
	transition: fill .35s ease;
}

.sh-socials__link:hover {
	border-color: var(--clr-accent-1);
	background-color: var(--clr-accent-1);
}

.sh-socials__link:hover .sh-socials__icon {
	fill: var(--clr-white);
}

.sh-header__socials {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
}

.sh-header__socials-title {
	color: var(--clr-white);
	font-weight: 350;
	margin-bottom: 0 !important;
	font-size: var(--fs-2);
	opacity: .5;
}

@media only screen and (min-width: 1240px) {
	.sh-header__socials {
		display: none;
	}
}

/* ===========================================
  Sub Menus
  =========================================== */

.sh-header__menu .sh-nav__submenu {
	margin: 0;
	list-style: none;
}

.sh-header__menu>.sh-nav__item>.sh-nav__submenu {
	width: 100%;
}

@media only screen and (min-width: 1240px) {
	.sh-header__menu>.sh-nav__item:not(.sh-fm)>.sh-nav__submenu {
		position: absolute;
		background-color: var(--clr-white);
		box-shadow: 0 4px 8px rgba(25, 45, 85, .075);
		border-radius: var(--br-sm);
		padding: .5rem !important;
		height: auto !important;
		top: 100%;
		left: 50%;
		width: auto;
		max-height: 0;
		visibility: hidden;
		opacity: 0;
		pointer-events: none;
		transform: translate3d(-50%, 1rem, 0);
		transition: opacity .35s ease, transform .35s ease, padding 0s linear .35s, visibility 0s linear .35s, max-height 0s linear .35s, height 0s linear .35s;
	}

	.sh-header__menu>.sh-nav__item:not(.sh-fm):hover>.sh-nav__submenu,
	.sh-header__menu>.sh-nav__item:not(.sh-fm).sh-nav__item--active>.sh-nav__submenu {
		max-height: 100vh;
		visibility: visible;
		opacity: 1;
		pointer-events: all;
		transform: translate3d(-50%, 0, 0);
		transition: opacity .35s ease, transform .35s ease, padding 0s linear 0s, visibility 0s linear 0s, max-height 0s linear 0s, height 0s linear 0s;
	}
	.sh-header__menu>.sh-nav__item:not(.sh-fm)>.sh-nav__submenu::before {
	    content: "";
	    position: absolute;
	    top: -.2rem;
		width: 1rem;
		height: 1rem;
		left: 50%;
		margin-left: -.5rem;
	    background-color: var(--clr-white);
		border-radius: .1rem;
		transition: transform .35s ease;
		transform: translate3d(0, 1rem, 0) rotate(45deg);
	}
	.sh-header__menu>.sh-nav__item:not(.sh-fm):hover>.sh-nav__submenu::before,
	.sh-header__menu>.sh-nav__item:not(.sh-fm).sh-nav__item--active>.sh-nav__submenu::before {
		transform: translate3d(0, 0, 0) rotate(45deg);
	}
}

@media only screen and (max-width: 1239px) {
	.sh-header__menu .sh-nav__item--has-children:not(.sh-mm__inner):not(.sh-mm__col)>.sh-nav__submenu {
		overflow: hidden;
		height: 0;
		visibility: hidden;
		opacity: 0;
		will-change: height;
		transition: height .35s ease, opacity .35s ease, visibility 0s linear .35s;
	}

	.sh-header__menu .sh-nav__item--has-children.sh-nav__item--active:not(.sh-mm__inner):not(.sh-mm__col)>.sh-nav__submenu {
		height: auto;
		visibility: visible;
		opacity: 1;
		transition: height .35s ease, opacity .35s ease, visibility 0s linear 0s;
	}
}

/* ===========================================
  Sub Menus - Toggle Icons
  =========================================== */

.sh-nav__submenu-toggle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	margin: 0 0 0 auto;
	flex-shrink: 0;
	align-self: stretch;
	background-color: unset;
	border: unset;
	padding: 0;
	z-index: 100;
}

.sh-nav__submenu-toggle-icon {
	width: 1.2rem;
	height: .7rem;
	fill: none;
	stroke: var(--clr-white);
	stroke-miterlimit: 10;
	stroke-width: 1.5px;
	overflow: visible !important;
	transition: stroke .35s ease, stroke-width .35s ease, transform .35s ease;
}

div.sh-nav__link + .sh-nav__submenu-toggle::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
	z-index: 1;
}

.sh-nav__item--active>.sh-nav__submenu-toggle .sh-nav__submenu-toggle-icon {
	transform: scale3d(1, -1, 1);
}

@media only screen and (min-width: 1240px) {
	.sh-nav__submenu-toggle {
		width: auto;
		margin-left: .5rem;
	}

	.sh-nav__submenu-toggle-icon {
		width: .8rem;
		height: .45rem;
		margin-top: .25rem;
		stroke: var(--clr-white);
		stroke-width: 1.5px;
	}

	.sh-header--sticky .sh-nav__submenu-toggle-icon {
		stroke: var(--clr-white);
	}

	.sh-nav__item--active>.sh-nav__submenu-toggle .sh-nav__submenu-toggle-icon,
	.sh-nav__item:hover .sh-nav__submenu-toggle-icon {
		stroke: var(--clr-white);
		stroke-width: 2.5px;
		transform: rotate(-180deg) translate3d(0, 5%, 0);
	}
}

/* ===========================================
  Mega Menus
  =========================================== */

.sh-mm__inner>.sh-nav__link,
.sh-mm__col>.sh-nav__link,
.sh-mm__inner>.sh-nav__submenu-toggle,
.sh-mm__col>.sh-nav__submenu-toggle {
	display: none;
	/* Hide Label Texts */
}

@media only screen and (min-width: 1240px) {
	.sh-mm {
		position: static !important;
	}

	.sh-header__menu>.sh-nav__item.sh-mm>.sh-nav__submenu {
		width: 100%;
	}

	.sh-mm__inner {
		display: block;
		max-width: var(--cw-lg);
		width: 100%;
		margin: 0 auto;
		padding: 3rem 0;
	}

	.sh-mm__inner>.sh-nav__submenu {
		display: flex;
		justify-content: space-between;
	}

	.sh-mm__col {
		width: 100%;
	}

	.sh-mm__col>.sh-nav__submenu {
		display: block !important;
	}

	/* Usability Helper - Enlarge hover area that keeps the megamenu open */
	.sh-mm:hover {
		z-index: 1;
	}

	.sh-mm>.sh-nav__link::before {
		content: "";
		position: absolute;
		top: 75%;
		height: calc(.5 * (var(--header-height)));
		left: -100%;
		right: -100%;
		z-index: -1;
		pointer-events: none;
	}

	.sh-mm:hover>.sh-nav__link::before {
		pointer-events: all;
	}

	.sh-header__menu .sh-mm__inner .sh-nav__link {
		color: var(--clr-black);
		padding: .5rem 0;
	}
}

/* ===========================================
  Fullscreen Menu
  =========================================== */

.sh-fm {
	position: static !important;
}

.sh-fm>.sh-nav__link,
.sh-fm>.sh-nav__submenu-toggle {
	display: none;
	/* Hide Label Texts */
}

.sh-fm>.sh-nav__submenu {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh !important;
	overflow-y: auto;
	padding-right: var(--sb-width);
	max-height: 0;
	visibility: hidden;
	opacity: 0;
	z-index: -1;
	/* set to positive value if siblings should NOT be visible during active fullscreen menu */
	padding-top: var(--header-height);
	background-color: var(--clr-accent-2);
	transform: translate3d(0, 0, 0);
	transition: opacity .35s ease, transform .35s ease, visibility 0s linear .35s, max-height 0s linear .35s;
}

.sh-fm .sh-mm__inner {
	padding-left: calc(.5 * (100vw - var(--cw-lg) - var(--sb-width)));
	padding-right: calc(.5 * (100vw - var(--cw-lg) - var(--sb-width)));
}

.sh-toggle--fm {
	z-index: 3;
}

.sh-fm-active .sh-fm>.sh-nav__submenu {
	max-height: 100vh;
	visibility: visible;
	opacity: 1;
	transform: translate3d(0, 0, 0);
	transition: opacity .35s ease, transform .35s ease, visibility 0s linear 0s, max-height 0s linear 0s;
}

.sh-fm-active .sh-header__menu .sh-nav__link,
.sh-fm-active .sh-nav__submenu-toggle-icon,
.sh-fm-active .sh-toggle__line {
	color: var(--clr-white);
	border-color: var(--clr-white);
	stroke: var(--clr-white);
}

.sh-fm-active .sh-header__logo-img--sticky {
	opacity: 1;
}

.sh-fm-active .sh-header__logo-img--main {
	opacity: 0;
}

@media only screen and (max-width: 1239px) {
	.sh-fm {
		display: none;
	}
}

/* ===========================================
  Mobile Menu
  =========================================== */

html.sh-fm-active,
html.sh-bm-active {
	overflow: hidden;
	/* Prevent page scroll while mobile menu or fullscreen menu is active */
}

html.sh-fm-active,
html.sh-bm-active,
html.sh-fm-active .sh-header--sticky .sh-header,
html.sh-bm-active .sh-header--sticky .sh-header {
	max-width: calc(100vw - var(--sb-width));
	/* Set margin and max-width to compensate for scrollbar width */
	margin-left: 0;
}

@media only screen and (min-width: 1240px) {
	.sh-header__nav-mobile-toggle,
	.sh-header__nav-mobile-top-bar,
	.sh-header__nav-mobile-overlay {
		display: none;
	}
}

@media only screen and (max-width: 1239px) {
	.sh-header__nav {
		position: fixed;
		top: 0;
		left: 100%;
		width: 0;
		max-width: 100%;
		height: var(--vp-height);
		max-height: 100vh;
		max-height: 100dvh;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		background-color: var(--clr-accent-2);
		visibility: hidden;
		transition: transform .35s ease, visibility 0s linear .35s, width 0s linear .35s;
	}

	html.sh-bm-active .sh-header__nav {
		width: 28rem;
		visibility: visible;
		transform: translate3d(-100%, 0, 0);
		transition: transform .35s ease, visibility 0s linear 0s, width 0s linear 0s;
	}

	/* Mobile Top Bar */
	.sh-header__nav-mobile-top-bar {
		background-color: var(--clr-accent-2);
		position: sticky;
		top: 0;
		padding: .5rem 5rem .5rem 1rem;
		/* padding-right depending on close-button-width */
		margin-bottom: 1.5rem;
		display: flex;
		align-items: center;
		min-height: var(--header-height);
		z-index: 2;
	}

	/* Mobile Menu Items */
	.sh-header__menu {
		flex-direction: row;
		flex-wrap: wrap;
	}

	.sh-header__menu>.sh-nav__item {
		width: 100%;
	}
	
	.sh-header__menu>.sh-nav__item>.sh-nav__submenu>.sh-nav__item:last-child {
		margin-bottom: 1rem;
	}

	.sh-header__menu>.sh-nav__item .sh-nav__link--bold {
		display: none;
	}

	.sh-header__menu>.sh-nav__item:not(.sh-nav__item--cta)>.sh-nav__link {
		width: 100%;
	}

	.sh-header__menu>.sh-nav__item>.sh-nav__submenu-toggle {
		margin-left: -3rem;
	}

	div.sh-nav__link + .sh-nav__submenu-toggle::before {
	    bottom: auto;
		height: calc(var(--lh-1) + 1.5rem); /* Same height as sh-nav__link */
	}

	.sh-bm-active .sh-toggle__line,
	.sh-header__contact .sh-contact,
	.sh-header__contact .sh-contact a,
	.sh-header__socials .sh-socials__link,
	.sh-header__socials .sh-socials__icon {
		color: var(--clr-white) !important;
		fill: var(--clr-white);
		border-color: var(--clr-white);
	}

	.sh-header__socials .sh-socials__icon {
		fill: var(--clr-black);
	}
	
	.sh-header__socials .sh-socials__link {
		border-color: var(--clr-accent-1);
	}

	.sh-header__menu,
	.sh-header__contact,
	.sh-header__socials {
		margin-left: 1.5rem;
		margin-right: 1.5rem;
	}

	.sh-header__menu>.sh-nav__item {
		padding-left: 0;
		padding-right: 0;
	}

	.sh-header__contact .sh-contact,
	.sh-header__socials .sh-socials {
		padding: 1.5rem 0;
	}

	/* Lvl 1 */
	.sh-header__menu>.sh-nav__item:not(.sh-nav__item--cta)>.sh-nav__link {
		border-bottom: thin solid rgba(255, 255, 255, .15);
	}
	.sh-header__menu>.sh-nav__item:not(.sh-nav__item--cta):first-child>.sh-nav__link,
	.sh-header__contact,
	.sh-header__socials {
		border-top: thin solid rgba(255, 255, 255, .15);
	}

	.sh-header__menu>.sh-nav__item:not(.sh-nav__item--cta)>.sh-nav__link {
		color: var(--clr-white);
		text-transform: uppercase;
		margin: 0;
		padding-top: .75rem;
		padding-bottom: .75rem;
	}

	/* Lvl 2 */
	.sh-header__menu>.sh-nav__item>.sh-nav__submenu>.sh-nav__item .sh-nav__link {
		color: var(--clr-white);
		opacity: .5;
		padding-left: 1rem;
		text-transform: uppercase;
	}
	.sh-header__menu>.sh-nav__item>.sh-nav__submenu>.sh-nav__item:first-child {
		padding-top: .5rem;
	}
	.sh-header__menu>.sh-nav__item>.sh-nav__submenu>.sh-nav__item:last-child {
		padding-bottom: .5rem;
		border-bottom: thin solid rgba(255, 255, 255, .15);
	}

	/* CTA */
	.sh-header__menu>.sh-nav__item.sh-nav__item--cta {
		width: auto;
		flex-grow: 1;
		padding-right: .75rem;
	}
	.sh-header__menu>.sh-nav__item.sh-nav__item--cta + .sh-nav__item--cta {
		padding-left: .75rem;
		padding-right: 0;
	}
	.sh-header__menu>.sh-nav__item--cta > .sh-nav__link {
		margin-left: 0;
		width: 100%;
		justify-content: center;
	}
	.sh-header__menu>.sh-nav__item--cta-style-2 > .sh-nav__link {
		color: var(--clr-black) !important;
		background-color: var(--clr-white) !important;
	}
	.sh-header__menu>.sh-nav__item--cta-style-2 > .sh-nav__link:hover {
		color: var(--clr-white) !important;
		background-color: var(--clr-accent-1) !important;
	}

	/* Contact */
	.sh-header__contact .sh-contact {
		opacity: .5;
	}

	/* Mobile Overlay */
	.sh-header__nav-mobile-overlay {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 100%;
		background-color: #0d182f;
		z-index: -1;
		opacity: 0;
		pointer-events: none;
		transition: opacity .35s ease, height 0s ease .35s;
	}

	html.sh-bm-active .sh-header__nav-mobile-overlay {
		opacity: .5;
		height: var(--vp-height);
		pointer-events: all;
		transition: opacity .35s ease, height 0s ease 0s;
	}
}

@media only screen and (max-width: 1239px) and (min-width: 768px) {
	.sh-header__nav-mobile-toggle {
		z-index: 16;
	}

	.sh-header__nav {
		z-index: 15;
	}

	.sh-header__nav-mobile-overlay {
		z-index: 9;
	}
}

@media only screen and (max-width: 767px) {
	html.sh-bm-active .sh-header__nav {
		width: 100%;
	}
	.sh-header__nav-mobile-top-bar {
		margin-bottom: 2rem;
	}
}

/* ===========================================
  Mobile Menu - Fade-In Menu Items
  =========================================== */

@media only screen and (max-width: 1239px) {

	.sh-header__menu>.sh-nav__item,
	.sh-header__contact,
	.sh-header__socials .sh-socials__item {
		opacity: 0;
		transform: translate3d(0, 1rem, 0);
		transition: opacity 0s ease .35s, transform 0s ease .35s;
	}

	html.sh-bm-active .sh-header__menu>.sh-nav__item,
	html.sh-bm-active .sh-header__contact,
	html.sh-bm-active .sh-header__socials .sh-socials__item {
		opacity: 1;
		transform: translate3d(0, 0, 0);
		transition: opacity .35s ease .25s, transform .35s ease .25s;
	}

	html.sh-bm-active .sh-header__menu>.sh-nav__item:nth-child(1),
	html.sh-bm-active .sh-header__socials .sh-socials__item:nth-child(1) {
		transition-delay: .25s;
	}

	html.sh-bm-active .sh-header__menu>.sh-nav__item:nth-child(2),
	html.sh-bm-active .sh-header__socials .sh-socials__item:nth-child(2) {
		transition-delay: .35s;
	}

	html.sh-bm-active .sh-header__menu>.sh-nav__item:nth-child(3),
	html.sh-bm-active .sh-header__socials .sh-socials__item:nth-child(3) {
		transition-delay: .45s;
	}

	html.sh-bm-active .sh-header__menu>.sh-nav__item:nth-child(4),
	html.sh-bm-active .sh-header__socials .sh-socials__item:nth-child(4) {
		transition-delay: .55s;
	}

	html.sh-bm-active .sh-header__menu>.sh-nav__item:nth-child(5),
	html.sh-bm-active .sh-header__socials .sh-socials__item:nth-child(5) {
		transition-delay: .65s;
	}

	html.sh-bm-active .sh-header__menu>.sh-nav__item:nth-child(6),
	html.sh-bm-active .sh-header__socials .sh-socials__item:nth-child(6) {
		transition-delay: .75s;
	}

	html.sh-bm-active .sh-header__menu>.sh-nav__item:nth-child(7),
	html.sh-bm-active .sh-header__socials .sh-socials__item:nth-child(7) {
		transition-delay: .85s;
	}

	html.sh-bm-active .sh-header__menu>.sh-nav__item:nth-child(8),
	html.sh-bm-active .sh-header__socials .sh-socials__item:nth-child(8) {
		transition-delay: .95s;
	}

	html.sh-bm-active .sh-header__menu>.sh-nav__item:nth-child(9),
	html.sh-bm-active .sh-header__socials .sh-socials__item:nth-child(9) {
		transition-delay: 1.05s;
	}
}

/* ===========================================
  Menu Toggles - Burger Menu and Fullscreen Menu
  =========================================== */

.sh-toggle {
	position: relative;
	cursor: pointer;
	width: var(--sh-burger-button-width);
	height: var(--sh-burger-button-height);
	margin: 0 calc(-.5 * (var(--sh-burger-button-width) - var(--sh-burger-icon-width)));
	background-color: unset;
	border: unset;
}

.sh-toggle__line {
	position: absolute;
	left: calc(50% - (.5 * var(--sh-burger-icon-width)));
	width: var(--sh-burger-icon-width);
	border-bottom: var(--sh-burger-stroke-width) solid var(--clr-white);
}

.sh-toggle__line--1 {
	top: calc(50% - (var(--sh-burger-icon-height) /2));
}

.sh-toggle__line--2 {
	top: 50%;
	transform: translateY(-50%);
}

.sh-toggle__line--3 {
	bottom: calc(50% - (var(--sh-burger-icon-height) /2));
}

.sh-toggle:hover .sh-toggle__line {
	border-color: var(--clr-white);
}

/* Open and Close animation */
.sh-toggle__line--1,
.sh-toggle__line--3 {
	transition: transform .25s ease 0s, margin .2s ease .25s, border-color .3s ease 0s;
}

.sh-toggle--active .sh-toggle__line--1,
.sh-toggle--active .sh-toggle__line--3 {
	transition: transform .2s ease .25s, margin .25s ease 0s, border-color .3s ease 0s;
}

.sh-toggle--active .sh-toggle__line--1 {
	margin-top: calc((var(--sh-burger-icon-height)/2) - (.5 * var(--sh-burger-stroke-width)));
	transform: rotate(-45deg) scale3d(1, 1, 1);
}

.sh-toggle--active .sh-toggle__line--3 {
	margin-bottom: calc((var(--sh-burger-icon-height)/2) - (.25 * var(--sh-burger-stroke-width)));
	transform: rotate(45deg) scale3d(1, 1, 1);
}

.sh-toggle__line--2 {
	transition: opacity .25s ease .25s, border-color .3s ease 0s;
}

.sh-toggle--active .sh-toggle__line--2 {
	opacity: 0;
	transition: opacity .25s ease 0s, border-color .3s ease 0s;
}

/* ===========================================
  Miscellaneous
  =========================================== */

html.sh-bm-active #sh-sidebar__toggles {
	opacity: 0;
	transform: translate3d(100%, 0, 0);
}

.sh-nav__item .wp-grid-builder {
	z-index: 0;
}

/* ===========================================
   Lang Switcher
=========================================== */

.pll-parent-menu-item .sh-nav__submenu .current-lang {
	display: none !important;
}

@media only screen and (max-width: 1239px) {
	.sh-header__menu>.sh-nav__item.sh-nav__item--cta {
		min-width: 40% !important;
	}
	.sh-header__menu>.sh-nav__item.sh-nav__item--cta .sh-nav__link,
	.sh-header__menu .pll-parent-menu-item .sh-nav__link {
		padding-top: .5rem !important;
		padding-bottom: .5rem !important;
	}
	.sh-header__menu .pll-parent-menu-item .sh-nav__link {
		padding-left: .45rem !important;
		padding-right: .45rem !important;
	}
	.sh-header__menu .pll-parent-menu-item {
		width: auto !important;
		margin-left: auto;
		margin-right: auto;
		border: thin solid var(--clr-white) !important;
		border-radius: 1.25rem !important;
		padding: 0 !important;
		margin-top: 1rem;
	}
	.sh-header__menu .pll-parent-menu-item > .sh-nav__link {
		padding-right: .75rem !important;
		padding-left: 1.15rem !important;
		border: none !important;
	}
	.sh-header__menu .pll-parent-menu-item .sh-nav__submenu .sh-nav__item {
		padding: 0 !important;
		border-top: thin solid rgba(255, 255, 255, .2) !important;
	}
	.sh-header__menu .pll-parent-menu-item .sh-nav__submenu .sh-nav__link {
		width: 100% !important;
		justify-content: center !important;
		text-align: center !important;
		padding: .5rem .45rem .6rem !important;
	}
}