#site-header {
	position:fixed;
	left: 50%;
    top: 0;
    padding-top: 27px;
    transform: translateX(-50%);
	transition: .4s all ease-out, .4s box-shadow ease-out 0s, 0s height ease-out 0s;
}
#site-header > div {
    display: flex;
    align-items: center;
    padding-top: 45px;
    padding-top: 22px;
    padding-bottom: 22px;
}
#site-header.off-screen {
    top: 0;
    padding-top: 0;
    transform: translate(-50%,-100%);
    box-shadow: 0 22px 50px -10px rgba(0,0,31,.1);
    transition: .4s all ease-out, .4s box-shadow ease-out .4s;
}
#site-header.off-screen.fixed {
    transform: translate(-50%,0%);
    background-color: var(--color-bg);
}
#site-header.off-screen a.site-title {
    top: 0px;
}
#site-header.off-screen a.site-title .site-logo {
    transition-delay: .6s;
    height: auto;
    width: 180px;
}
#site-header.off-screen #language-selection {
    top: 28px;
}
.open-menu {
	display:none;
}

/* Navigation Menu */
#site-navigation-wrap {
    position: relative;
	margin: 0 20px 0 auto;
    padding: 2px 0 0px 0;
}
#site-header.fixed #site-navigation-wrap {
}
#site-navigation-wrap > div {
	width:100%;
    display:flex;
    justify-content:space-between;
	align-items:center;
}
.main-navigation ul.nav-menu {
	display:inline-block;
	padding:0;
	margin:0;
	list-style:none;
}
.main-navigation li {
	display:inline-block;
	position:relative;
	text-decoration:none;
	padding:0px 0px;
    line-height: 1;
	vertical-align:middle;
	margin-left: clamp(15px, 2.6vw, 50px);
}
.main-navigation li:first-of-type {
	margin-left:0px;
}
.main-navigation li.menu-item-has-children + li {
	margin-left: clamp(20px, 3vw, 65px);
}
.nav-menu li.menu-item-has-children i.arrow {
	display:none;
}
.nav-menu > li > a {
	font-family:var(--font-family-title);
	font-weight:400;
	color:#222222;
	font-size:19px;
	line-height:1;
	display:inline-block;
	position:relative;
    letter-spacing: 0px;
	padding: 7px 0px 6px 0px;
	text-decoration:none;
    z-index: 101;
}
/*.home #site-header:not(.fixed) .nav-menu > li > a,
.has-post-thumbnail:not(.single-post) #site-header:not(.fixed) .nav-menu > li > a {
	color:var(--color-bg);
}*/
.nav-menu > li.menu-item-contact > a {
	background-color: var(--color-link);
    color:var(--color-bg);
    border-radius: 25px;
    padding: 11px 20px;
}
.nav-menu > li > a:before {
    content: '';
    position: absolute;
    left: 1px;
    top: -14px;
    z-index: -1;
    width: 0px;
    height: 11px;
    background-color: var(--color-link);
    -webkit-transition: all 0.3s; 
	transition: all 0.3s var(--transition);
    clip-path: polygon(5px 0, 100% 0, 100% 100%, 0% 100%);
}
.nav-menu > li.menu-item-has-children > a:after {
    position: absolute;
    font-family:"Font Awesome 6 Free";
	font-weight:900;
    content: '\f0dd';
    font-size: 13px;
    top: 45%;
    right: -16px;
    transform: translateY(-50%);
    color: var(--color-link);
}
#site-header:not(.fixed) .nav-menu > li.menu-item-has-children > a:after {  
}
.nav-menu > li.menu-item-contact > a:before {
    display: none;
}
.nav-menu > li > a:hover, .nav-menu > li.current-menu-item > a, .nav-menu > li.current-menu-ancestor > a {
    color:#222222;
	text-decoration:none;
}
.fixed .nav-menu > li > a:hover, .fixed .nav-menu > li.current-menu-item > a, .fixed .nav-menu > li.current-menu-ancestor > a {
	/*color:var(--color-link);*/
}
.nav-menu > li > a:hover:before, .nav-menu > li.current-menu-item > a:before, .nav-menu > li.current-menu-ancestor > a:before {
    width: 23px;
}
.nav-menu > li.menu-item-contact > a:hover {
	background-color: var(--color-title);
    color:var(--color-bg);
}
@media only screen and (min-width: 1080px){
.nav-menu > li > ul {
	position:absolute;
	left:-20px;
	top:33px;
    opacity: 0;
	width:auto;
	min-width:245px;
	z-index:100;
	display:none;
    border-radius: 0px;
	padding:25px 30px 15px 20px;
    background-color: var(--color-bg);
    /*box-shadow: 0 5px 14px 0 rgba(0,0,0,.08);*/
    clip-path: polygon(0 0, 100% 0, 95% 100%, 0% 100%);
    -webkit-transition: all .4s var(--transition);
    -o-transition: all .4s var(--transition);
    transition: all .4s var(--transition);
}
.nav-menu > li > ul:before {
    position: absolute;
    content: '';
    left: 0px;
    top: -20px;
    width: 100%;
    height: 45px;
}
.nav-menu > li > ul > li, .nav-menu > li > ul > li > ul > li {
	display:block;
	margin:0;
	padding:0 0 15px 0;
}
.nav-menu > li > ul li a {
    font-family:var(--font-family-title);
	font-weight:400;
    font-size: 16px;
    line-height: 1.1;
    color:var(--color-title);
    text-decoration: none;
	display:block;
}
.nav-menu > li > ul li a:hover {
    color:var(--color-link);
}
.nav-menu > li > ul li.menu-item-has-children > a:after {
	display:inline-block;
	font-family:"Font Awesome 5 Free";
	content:"\f105";
	font-weight:900;
	color:#848484;
	font-size:10px;
	float:right;
}
.nav-menu > li > ul, .nav-menu > li > ul > li > ul {
    display: block;
    visibility: hidden;
    opacity: 0;
}
.nav-menu > li.menu-item-has-children:hover > ul {
    visibility: visible;
    opacity: 1;
    top:43px;
    display: block !important;
    margin-top: 0px;
}
.nav-menu > li > ul > li > ul {
    position: absolute;
    left: 100%;
    top: 0px;
    width: 320px;
    z-index: 100;
    display: none;
    padding: 5px 20px;
    background:var(--color-bg);
}
.nav-menu li > ul > li.menu-item-has-children:hover > ul {
    visibility: visible;
    opacity: 1;
    top: 0px;
    display: block;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}
}

.menu-fixed #site-navigation-wrap {
	/*margin-top:50px;*/
}
.menu-fixed #site-header a.site-title {
    width: 90px;
}
.menu-fixed #site-header a.site-title .site-description {
    display:none;
}
.menu-fixed .nav-menu > li:after {
	bottom:0px;
}
.menu-fixed .nav-menu > li > ul {
    display: block !important;
}

@media only screen and (max-width: 1080px){
.main-navigation li {
    margin-left: 25px;
}
}
@media only screen and (min-width: 1080px){
.menu-fixed .nav-menu > li.menu-item-has-children > a:after {
	border-color:var(--color-text);
}
.menu-fixed .nav-menu > li.menu-item-has-children:hover > ul {
	top:25px;
}
.menu-fixed .nav-menu > li > ul li a {
	color:var(--color-link);
}
.menu-fixed .nav-menu > li > ul li a:hover {
	color:var(--color-link-hover);
}
}
@media only screen and (max-width: 1080px){
body.menu-open {
    overflow: hidden;
}
#site-header {
	position:absolute;
}
.open-menu {
    display:block;
	right:30px;
	top:40px;
}
#language-selection {
    opacity: 0;
    pointer-events: none;
    transition: right 0s, opacity .3s var(--transition) 0;
}
.menu-open #language-selection {
	opacity: 1;
    pointer-events: all;
    z-index: 103;
    right: calc(max(350px,50%) - 22px);
    position: fixed;
    margin-right: -78px;
    /*transform: translateX(100%);*/
    transition: right 0s, opacity .3s var(--transition) .5s;
}
.menu-open .open-menu {
	position:fixed;
}
#site-navigation-wrap {
    position: fixed;
    top: 0;
    right: 0;
	float:none;
    text-align:left;
    background-color:transparent;
    margin: 0;
}
.menu-open #site-navigation-wrap {
    z-index: 102;
    width: 100%;
}
#site-navigation-wrap:before {
    position: absolute;
    content: "";
    top: 0;
    left: -1px;
    width: 100%;
    height: 100vh;
    background-color: #000;
    opacity: 0;
    z-index: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.5s var(--transition);
    -o-transition: opacity 0.5s var(--transition);
    transition: opacity 0.5s var(--transition);
}
.menu-open #site-navigation-wrap:before {
    opacity: .6;
}
#site-navigation {
	display:flex;
	flex-direction:column;
	justify-content: flex-start;
	position:absolute;
	width:50%;
    min-width: 350px;
	right:0;
	top:0;
	background-color: var(--color-bg);
	z-index:100;
	padding:120px 20px 0 22px;
	-webkit-transition: all 0.5s var(--transition);
    -o-transition: all 0.5s var(--transition);
    transition: all 0.5s var(--transition);
    min-height:calc(100 * var(--vh, 1vh));
	-webkit-transform:translateX(100%);
	-ms-transform:translateX(100%);
	transform:translateX(100%);
}
.menu-open #site-navigation {
	-webkit-transform:translateX(0);
	-ms-transform:translateX(0);
	transform:translateX(0);
}
.main-navigation ul.nav-menu {
    display:block;
}
.main-navigation .nav-menu > li {
    display:block;
	margin-left:0 !important;
	/*text-align:right;*/
    padding: 0 0 10px 0;
    opacity: 0;
    -webkit-transition: all 0.5s var(--transition);
    -o-transition: all 0.5s var(--transition);
    transition: all 0.5s var(--transition);
	-webkit-transform:translateX(100%);
	-ms-transform:translateX(50px);
	transform:translateX(50px);
}
.menu-open .main-navigation .nav-menu > li {
    opacity: 1;
    -webkit-transform:translateX(0px);
	-ms-transform:translateX(0px);
	transform:translateX(0px);
}
.menu-open .main-navigation .nav-menu > li:nth-of-type(1) {transition-delay: .2s;}
.menu-open .main-navigation .nav-menu > li:nth-of-type(2) {transition-delay: .3s;}
.menu-open .main-navigation .nav-menu > li:nth-of-type(3) {transition-delay: .4s;}
.menu-open .main-navigation .nav-menu > li:nth-of-type(4) {transition-delay: .5s;}
.menu-open .main-navigation .nav-menu > li:nth-of-type(5) {transition-delay: .6s;}
.menu-open .main-navigation .nav-menu > li:nth-of-type(6) {transition-delay: .7s;}
.menu-open .main-navigation .nav-menu > li:nth-of-type(7) {transition-delay: .8s;}
.menu-open .main-navigation .nav-menu > li:nth-of-type(8) {transition-delay: .9s;}
    
.nav-menu > li:after {
	display:none;
}
.nav-menu li a, .nav-menu li a:focus, .nav-menu > li.current-menu-ancestor > a {
    /*font-size: clamp(28px, 3vw, 32px);*/
    font-size: 22px;
}
.nav-menu li.menu-item-has-children > a, .nav-menu li.menu-item-has-children > a:focus {
}
.nav-menu > li > a:hover, .nav-menu > li.current-menu-item > a, .nav-menu > li.current-menu-ancestor > a {
    /*color: var(--color-text);*/
}
.nav-menu > li > a:before {
    left: -34px;
    top: 15px;
}
.nav-menu > li.menu-item-has-children > a:after {
    border-width: 0 2px 2px 0;
    padding: 2px;
}
.nav-menu > li > ul li {
	padding:0px 0 5px 0;
	margin-left:0px !important;
	display:block;
}
.nav-menu > li > ul li a {
    color: #222222;
	/*font-family:var(--font-family-title);
	font-weight:400;
    font-size:24px;*/
    line-height: 1.5;
    text-decoration: none;
}
.nav-menu > li > a:hover {
	color:var(--color-text) !important;
}
.nav-menu > li > ul, .nav-menu > li > ul li ul {
	display:none;
	padding:10px 0px 0px 0;
}
.nav-menu > li > ul li ul {
	padding:8px 0 0 0px;
}
}
@media only screen and (max-width: 810px){
#site-header {
	position:absolute;
    left: 0%;
    top: 0 !important;
    transform: none;
    overflow: hidden;
}
#site-header > div {
    padding-top: 10px;
}
.menu-open #site-header {
	height:calc(100 * var(--vh, 1vh));
}
.open-menu {
    position: fixed;
    right: 15px;
    top: 22px;
}
#site-navigation {
    padding-right: 30px;
}
}
@media only screen and (max-width: 480px) {
.open-menu {
    top: 15px;
}
#site-header > div {
    padding-top: 4px;
}
}