header.wp-block-template-part{
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 1020;
	padding: 0;
	background: #fff;
	transition: transform .3s ease;
}
.scrolled header.wp-block-template-part{
	transform: translateY(-101%);
}
.scrolled.scrolling-up header.wp-block-template-part{
	transform: translateY(0%);
}
.scrolled.menu-open header.wp-block-template-part{
	transform: none;
}

header nav.navbar{
	padding: 18px 0;
	background: var(--wp--preset--color--weiss);
	box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.15); 
}

#languages_select,
.mobile-languages select{
	appearance: none;
	margin: 0 65px 0 30px;
	padding: 0 22px 0 0;
	background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="8" fill="none" viewBox="0 0 12 8"><path stroke="%23002878" stroke-linecap="round" stroke-width="2" d="m1 1.5 5 5 5-5"/></svg>') right center no-repeat;
	border: 0;
	font-size: 22px;
	color: var(--wp--preset--color--etel-blau);
	cursor: pointer;
}
.mobile-languages select{
	margin: 20px 0 0;
	filter: brightness(0) invert(1);
}

#header_search{
	position: relative;
	margin-left: auto;
}
#header_search input{
	position: absolute;
	top: 0;
	right: 0;
	width: 445px;
	height: 100%;
	padding: 10px 50px 10px 10px;
	background: var(--wp--preset--color--light-grey);
	border: 0;
	transition: all .3s ease;
	transition-property: width, opacity;
}
#header_search input:focus-visible{
	outline: none;
}
#header_search input::-moz-placeholder{
	color: var(--wp--preset--color--a-4-a-6-ac);;
	opacity: 1;
}
#header_search input::placeholder{
	color: var(--wp--preset--color--a-4-a-6-ac);;
	opacity: 1;
}
#header_search:not(.opened) input{
	pointer-events: none;
	width: 0px;
	opacity: 0;
}
#header_search button{
	position: relative;
	z-index: 1;
	padding: 10px;
	background: none;
	border: 0;
	font-size: 0;
}

header .navbar-brand{
	margin: 0;
	padding: 0;
}

button.navbar-toggler{
	--navbar-toggler-button-padding-x: 5px;
	--navbar-toggler-button-padding-y: 5px;
	--navbar-toggler-button-line-w: 36px;
	--navbar-toggler-button-line-h: 2px;
	--navbar-toggler-button-line-spacing: 8px;
	--navbar-toggler-button-line-color: #002878;
	--navbar-toggler-button-line-color-x: #002878;

	position: relative;
	z-index: 999;
	margin-right: max( var(--snap), calc( -1 * var(--navbar-toggler-button-padding-x) ) ) !important;
	padding: var(--navbar-toggler-button-padding-y) var(--navbar-toggler-button-padding-x) !important;
	border: none !important;
}
button.navbar-toggler:focus{
	box-shadow: none;
}
button.navbar-toggler span,
button.navbar-toggler:before,
button.navbar-toggler:after{
	width: var(--navbar-toggler-button-line-w);
	height: var(--navbar-toggler-button-line-h);
	border-radius: 4px;
}
button.navbar-toggler span{
	display: block;
	margin: calc( var(--navbar-toggler-button-line-h) + var(--navbar-toggler-button-line-spacing) ) 0;
	background-color: var(--navbar-toggler-button-line-color);
	opacity: 0;
	transition-delay: 300ms;
	transition: opacity 300ms ease 0ms;
}
button.navbar-toggler:before,
button.navbar-toggler:after{
	content: "";
	position: absolute;
	left: var(--navbar-toggler-button-padding-x);
	background-color: var(--navbar-toggler-button-line-color-x);
	transition: top 300ms ease 0s, bottom 300ms ease 0s, transform 300ms ease 350ms, background-color 300ms ease 350ms;
	transform-origin: center;
}
button.navbar-toggler:before{
	top: calc( var(--navbar-toggler-button-padding-y) + var(--navbar-toggler-button-line-spacing) + var(--navbar-toggler-button-line-h) );
	transform: rotate(45deg);
}
button.navbar-toggler:after{
	bottom: calc( var(--navbar-toggler-button-padding-y) + var(--navbar-toggler-button-line-spacing) + var(--navbar-toggler-button-line-h) );
	transform: rotate(-45deg);
}
button.navbar-toggler.collapsed span{
	opacity: 1;
}
button.navbar-toggler.collapsed:before,
button.navbar-toggler.collapsed:after{
	background-color: var(--navbar-toggler-button-line-color);
	transition: top 300ms ease 350ms, bottom 300ms ease 350ms, transform 300ms ease 0ms, background-color 300ms ease 0ms;
}
button.navbar-toggler.collapsed:before{
	top: var(--navbar-toggler-button-padding-y);
	transform: rotate(0deg);
}
button.navbar-toggler.collapsed:after{
	bottom: var(--navbar-toggler-button-padding-y);
	transform: rotate(0deg);
}
.navbar-collapse, .navbar-collapse.collapsing, .navbar-collapse.collapse.show{
	position: fixed;
	z-index: 1019;
	top: 100px;
	left: 0;
	width: 100%;
	height: calc( 100vh - 100px );
	height: calc( 100dvh - 100px );
	margin: 0;
	padding: 0;
	background: rgba(0, 0, 0, .252);
	border: 0;
	transition: opacity .3s ease;
}
.menu-open .navbar-collapse.collapsing{
	transition: none;
}
.navbar-collapse{
	max-height: 100vh;
	max-height: 100dvh;
	/* max-height: -webkit-fill-available; */
	overflow: auto;
}
.navbar-collapse.collapse:not(.show){
	display: none;
}
.navbar-collapse{
	opacity: 0;
}
.navbar-collapse.collapse.show{
	opacity: 1
}
.navbar-nav{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	max-width: 420px;
	min-height: 100%;
	margin: 0;
	padding: 80px !important;
	align-items: flex-start;
	gap: 20px;
	box-shadow: 2px 0px 4px rgba(0,0,0,0.25);
	transform: translateX(-100%);
	transition: transform .3s ease;
}
.navbar-collapse.collapse.show .navbar-nav{
	transform: translateX(0px);
}

.navbar-nav:before{
	content: '';
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #002878;
}
.navbar-nav .submenu-wrapper,
.navbar-nav .sub-menu.depth_1{
	position: absolute;
	z-index: -2;

	opacity: 0;
	pointer-events: none;
	transform: translateX(-100px);
	transition: all .3s ease;
	transition-property: opacity, transform;
}
.navbar-nav .sub-menu{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 15px;
	list-style: none;
	padding: 0;
}
.navbar-nav .submenu-wrapper{
	overflow: auto;
	z-index: 1;
	width: 100%;
	top: 0;
	left: 0;
	height: 100%;
	padding: 60px 40px;
	background: #f0f0f0;
	box-shadow: 2px 0px 4px rgba(0,0,0,0.25);
}
.navbar-nav .submenu-wrapper h4{
	position: relative;
	appearance: none;
	margin-bottom: 40px;
}
.navbar-nav .sub-menu.depth_1 h4{
	margin-bottom: 25px;
}
.navbar-nav > li:not(.opened-submenus) .columns-2 .sub-menu.depth_1 h4{
	margin-bottom: 40px;
}
.navbar-nav .opened .submenu-wrapper,
.navbar-nav > li:not(.opened-submenus) .opened .sub-menu.depth_1{
	z-index: 1;
	overflow: auto;
	opacity: 1;
	pointer-events: all;
	transform: translateX(0px);
}
.navbar-nav > li:not(.opened-submenus) .sub-menu.depth_1{
	white-space: nowrap;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 60px 40px;
	background: #f0f0f0;
	border-left: 1px solid var(--wp--preset--color--medium-grey);
}
.navbar-nav .columns-2 .sub-menu.depth_1,
.navbar-nav .columns-2 .sub-menu.depth_2{
	margin: 10px 0 0;
	gap: 10px;
}
.navbar-nav .columns-2 .sub-menu.depth_0,
.navbar-nav > li:not(.opened-submenus) .columns-2 .sub-menu.depth_1{
	display: inline-block;
	width: 100%;
	columns: auto;
	column-gap: 60px;
}
.navbar-nav .columns-2 .sub-menu.depth_0 > li,
.navbar-nav > li:not(.opened-submenus) .columns-2 .sub-menu.depth_1 > li{
	break-inside: avoid;
}
.navbar-nav .opened-submenus .menu-item-has-children,
.navbar-nav > li:not(.opened-submenus) .opened .sub-menu.depth_1 .menu-item-has-children{
	margin-top: 30px;
}
.navbar-nav .opened-submenus.opened .sub-menu.depth_1{
	position: static;
	opacity: 1;
	pointer-events: all;
	transform: none;
	transition: none;
}

.navbar-nav .nav-link,
.navbar-nav .nav-link:focus,
.navbar-nav .nav-link:hover{
	display: inline-block;
	padding: 0 !important;
	border-bottom: 3px solid transparent;
	font-size: 22px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3636;
	color: #fff !important;
	text-decoration: none;
	transition: border-color .3s ease;
}
.navbar-nav .nav-link[href="#"]{
	pointer-events: none;
}
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active:not([href*="#"]),
.navbar-nav .opened > .nav-link{
	border-color: #fff;
}

.navbar-nav .sub-menu.depth_0{
	position: static;
	width: 265px;
	height: auto;
}

.navbar-nav .sub-menu.depth_0 .nav-link{
	border-bottom-width: 1.5px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-grey) !important;
}
.navbar-nav .sub-menu.depth_0 .nav-link:hover,
.navbar-nav .sub-menu.depth_0 .nav-link.active:not([href*="#"]),
.navbar-nav .sub-menu.depth_0 .opened > .nav-link{
	border-color: var(--wp--preset--color--dark-grey);
}

.navbar-nav .opened-submenus .menu-item-has-children > .nav-link,
.navbar-nav > li:not(.opened-submenus) .opened .sub-menu.depth_1 .menu-item-has-children > .nav-link{
	font-weight: 700;
}

.navbar-nav .submenu-wrapper h4:before{
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="12" fill="none" viewBox="0 0 8 12"><path stroke="%23002878" stroke-linecap="round" stroke-width="2" d="M7 1 2 6l5 5"/></svg>');
	font-size: 0;
	position: absolute;
	top: calc( 50% - 6px );
	left: -22px;
}
.navbar-nav .opened-submenus .sub-back-wrapper{
	display: none;
}

/* @media (min-width: 1640px) and (min-height: 1150px), (min-width: 1920px) and (min-height: 1015px), (min-width: 2100px) and (min-height: 880px){
	.sub-back-wrapper{
		display: none;
	}
	.navbar-nav{
		width: auto;
	}
	.navbar-nav .columns-2 .sub-menu.depth_0, .navbar-nav > li:not(.opened-submenus) .columns-2 .sub-menu.depth_1{
		width: auto;
		columns: 2;
	}
	.navbar-nav .submenu-wrapper{
		z-index: -2;
		width: auto;
		min-width: calc( 100vw - 100% );
		padding: 80px 60px;
		left: 100%;
	}
	.navbar-nav .sub-menu.depth_0{
		position: relative;
		height: calc( 100% - 60px );
	}
	.navbar-nav .opened-submenus .menu-item-has-children, .navbar-nav > li:not(.opened-submenus) .opened .sub-menu.depth_1 .menu-item-has-children{
		margin-top: 40px;
	}
	.navbar-nav li.opened > .submenu-wrapper > h4,
	.navbar-nav li.opened > .depth_1 h4{
		pointer-events: none;
	}
	.navbar-nav .submenu-wrapper h4:before{
		display: none;
	}
	.navbar-nav > li:not(.opened-submenus) .opened .sub-menu.depth_1{
		z-index: -2;
	}
	.navbar-nav > li:not(.opened-submenus) .sub-menu.depth_1{
		left: 100%;
		width: auto;
		padding: 0 0 0 40px;
		background: none;
	}
	.navbar-nav .opened .submenu-wrapper,
	.navbar-nav > li:not(.opened-submenus) .opened .sub-menu.depth_1{
		overflow: visible;
	}
} */

/* @media (min-width: 1561px) and (min-height: 1009px){
	.navbar-nav .submenu-wrapper{
		min-width: max( min( 1210px, 100vw - 100% ), 100vw - 100% - 200px );
	}
} */

	.big-menu .sub-back-wrapper{
		display: none;
	}
	.big-menu .navbar-nav{
		width: auto;
	}
	.big-menu .navbar-nav .columns-2 .sub-menu.depth_0,
	.big-menu .navbar-nav > li:not(.opened-submenus) .columns-2 .sub-menu.depth_1{
		width: auto;
		columns: 2;
	}
	.big-menu .navbar-nav .submenu-wrapper{
		z-index: -2;
		width: auto;
		min-width: calc( 100vw - 100% - 2 * var(--scrollbar-half) );
		padding: 80px 60px;
		left: 100%;
	}
	.big-menu .navbar-nav .sub-menu.depth_0{
		position: relative;
		height: calc( 100% - 60px );
	}
	.big-menu .navbar-nav .opened-submenus .menu-item-has-children,
	.big-menu .navbar-nav > li:not(.opened-submenus) .opened .sub-menu.depth_1 .menu-item-has-children{
		margin-top: 40px;
	}
	.big-menu .navbar-nav li.opened > .submenu-wrapper > h4,
	.big-menu .navbar-nav li.opened > .depth_1 h4{
		pointer-events: none;
	}
	.big-menu .navbar-nav .submenu-wrapper h4::before{
		display: none;
	}
	.big-menu .navbar-nav > li:not(.opened-submenus) .opened .sub-menu.depth_1{
		z-index: -2;
	}
	.big-menu .navbar-nav > li:not(.opened-submenus) .sub-menu.depth_1{
		left: 100%;
		width: auto;
		padding: 0 0 0 40px;
		background: none;
	}
	.big-menu .navbar-nav .opened .submenu-wrapper,
	.big-menu .navbar-nav > li:not(.opened-submenus) .opened .sub-menu.depth_1{
		overflow: visible;
	}

@media (max-width: 767px){
	.navbar-nav{
		padding: 60px 40px !important;
	}
	.navbar-collapse, .navbar-collapse.collapsing, .navbar-collapse.collapse.show{
		top: 80px;
		height: calc( 100vh - 80px );
		height: calc( 100dvh - 80px );
	}
	header nav.navbar{
		padding: 14px 0;
	}
	header .navbar-brand{
		max-width: 154px;
	}
	#languages_select{
		display: none;
	}
	button.navbar-toggler{
		--navbar-toggler-button-line-w: 28px;
		--navbar-toggler-button-line-spacing: 6px;
	}
	#header_search{
		margin-right: 15px;
	}
	#header_search button img{
		width: 20px;
	}
	#header_search input{
		width: auto;
		padding: 10px 40px 10px 10px;
	}
}