@import url("sm-core-css.css");
/*Toggle Menü*/
.nav-toggle{
	color: #3366CC;
	outline: none;
	border: none !important;
	position: relative;
	padding: 0.1em 0.8em 0.35em 2.3em;
	text-align: left;
	background: #fff;
	font-size: 1.1em;
	font-weight: bold;
}
.nav-toggle:before, 
.nav-toggle:after,
.nav-toggle i,
#men-close:before,
#men-close:after {
	background: #3366CC;
	content: '';
	display: block;
	width: 1em;
	height: 3px;
	position: absolute;
	left: 0.8em;
}
.nav-toggle:before{
	top: 0.35em;
}
.nav-toggle i{
	top: 0.7em;
}
/*@media screen and (max-width: 949px){
	.nav-toggle i{
		top: 0.7em;
	}
}*/
.nav-toggle:after{
	top: 1.05em;
}
.nav-toggle:before,
.nav-toggle:after,
.nav-toggle i{
	-o-transition: none 0.5s ease 0.5s;
	-moz-transition: none 0.5s ease 0.5s;
	-webkit-transition: none 0.5s ease 0.5s;
	transition: none 0.5s ease 0.5s;
	-o-transition-property: transform, top, bottom, left, opacity;
	-moz-transition-property: transform, top, bottom, left, opacity;
	-webkit-transition-property: transform, top, bottom, left, opacity;
	transition-property: transform, top, bottom, left, opacity;
}
.nav-open.nav-toggle:before, 
.nav-open.nav-toggle:after, 
#men-close:before,
#men-close:after { 
	top: 0.95em; 
}
.nav-open.nav-toggle i{ 
	left: -50px; 
	opacity: 0; 
}
.nav-open.nav-toggle:before, 
#men-close:before {
	-o-transform: rotate( 45deg );
	-ms-transform: rotate( 45deg );
	-moz-transform: rotate( 45deg );
	-webkit-transform: rotate( 45deg );
	transform: rotate( 45deg );
}
.nav-open.nav-toggle:after, 
#men-close:after {
	-o-transform: rotate( -45deg );
	-ms-transform: rotate( -45deg );
	-moz-transform: rotate( -45deg );
	-webkit-transform: rotate( -45deg );
	transform: rotate( -45deg );
}
#menu-desktop,
#men-close{
	display: none;
}
/*Menü*/
#main-menu{ 
	margin: 0; 
	font-family: 'Spline Sans', sans-serif;
	font-weight: normal;
	font-style: normal;
}

.sm-ra a {
	padding: 1.4em 2em;
	color: #3366CC;
	background: transparent;
	/*text-transform: uppercase;*/
	line-height: normal;
	text-decoration: none;
}
.sm-ra > li:hover > a, 
.sm-ra > li:focus > a, 
.sm-ra > li:active > a, 
.sm-ra a:hover, 
.sm-ra a:focus, 
.sm-ra a:active, 
.is-menu a:focus, 
.is-menu a:hover, 
.is-menu:hover>a,
.sm-ra a.highlighted{
	background-color: #668CD9!important;
	color:#fff!important;
}
.sm-ra li.current-menu-item > a,
.current-menu-ancestor a{
	/*font-weight: 700;*/
	background: #3366CC;
	color: #fff;
}
.sm-ra li.current-menu-item,
.current-menu-ancestor{
	background: #3366CC;
}
.sub-menu{
	font-size: 0.8rem;
}
.sm-ra a .sub-menu {
	position: absolute;
	top: 0.7rem;
	left: auto;
	right: 1em;
	width: 2rem;
	height: 2rem;
	overflow: hidden;
	font-weight: bold;
	font-size: 1.25em;
	line-height: 1.6em;
	text-align: center;
	text-shadow: none;
	background: #fff;
	color: red;
}
.sm-ra a .sub-menu::before {
	content: '+';
}
.sm-ra a.highlighted .sub-menu::before {
	content: '-';
}
.sm-ra ul {
	background: #fff;
}
.sm-ra ul ul {
	background: transparent;
	position: relative;
	margin-left: 0!important;
    margin-top: 0!important;
}
.sm-ra ul a, 
.sm-ra ul a:hover, 
.sm-ra ul a:focus, 
.sm-ra ul a:active {
	background: transparent;
	color: #000;
}
.sm-ra ul a .sub-menu {
	background: red;
}
body .popup-search-close:before, 
body .search-close:before,
body .popup-search-close:after, 
body .search-close:after{
	border-color: #3366CC!important;
}
@media screen and (max-width: 1219px){
	#menu {
		height: 100%;
		width: 0 !important;
		position: fixed;
		z-index: 10;
		top: 0;
		right: 0;
		overflow-x: hidden;
		transition: 0.5s;
		padding-top: 60px;
		padding-left: 0;
		padding-right: 0;
		background: #fff;
		moz-box-shadow: 0px 3px 10px rgba(0,0,0,0.25); 
		-webkit-box-shadow: 0px 3px 10px rgba(0 0 0 / 25%); 
		box-shadow: 0px 3px 10px rgba(0 0 0 / 25%);
	}
	#men-close{
		width: 2em;
		height: 2em;
		background: transparent;
		position: absolute;
		top: 0.5em;
		right: 1em;
		cursor: pointer;
		font-style: normal;
		line-height: 2em;
		text-align: center;
		color: #031C47;
	}
	#men-close:before,
	#men-close:after {
		background: #3366CC;
		left: 0;
		top: 1em;
		width: 2em;
		height: 4px;
	}
	body.menu-open #menu { 
		width: 340px !important;
		padding-left: 1em;
		padding-right: 1em;
	}	
	body.menu-open #menu-desktop,
	body.menu-open #men-close{ 
		display: block !important;
	}
	.sm-ra a {
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	/*.sm-ra > li.menu-item:last-of-type > a {
		margin-left: 0;
		display: inline-block;
	}
	.sm-ra > li.menu-item:last-of-type > a:hover {
		padding-left: 0.5em;
	}
	.sm-ra a , .sm-ra > li.menu-item:last-of-type {
		padding-left: 0.5em;
	}	
	.sm-ra .has-submenu.highlighted {
		color: #3366CC;
	}*/
	.sm-ra ul {
		background: transparent;
		font-size: 0.9em;
		margin-bottom: 1.5em;
	}
	.sm-ra ul li {
		border-top: 1px solid #fff;
		background: rgba(0,0,0,0.2);
	}
	/*.sm-ra ul a, 
	.sm-ra ul a:hover, 
	.sm-ra ul a:focus, 
	.sm-ra ul a:active {
		color: #fff !important;
	}*/
	.sub-arrow:before {
		content: "+";
        display: block;
        width: 1.1em;
        height: 1.1em;
        background: #3366CC;
        color: #fff;
        position: absolute;
        right: 1em;
        top: 35%;
        text-align: center;
        font-size: 1em;
        line-height: 1.1em;
	}
	.has-submenu.highlighted .sub-arrow:before {
		content: "-"; 
		line-height: 1.2em; 
	}	
	.astm-search-menu a{
		width: 100%;
		padding-left: 3.5em!important;
	}
	.astm-search-menu a:after{
		left: 2em!important;
	}
	.is-menu.is-dropdown .search-close{
		right: auto;
		left: 0.25em;
	}
}
@media (min-width: 1220px) {
	.sm-ra > li:first-child{
		display: none;
	}
	/*Toggle Menü*/
	.nav-toggle{
		display: none !important;
	}
	#menu-desktop{
		display: block !important;
	}
  /* Switch to desktop layout
  -----------------------------------------------
     These transform the menu tree from
     collapsible to desktop (navbar + dropdowns)
  -----------------------------------------------*/
	/* start... (it's not recommended editing these rules) */
	.sm-ra ul {
		position: absolute;
		/*width: 18em;*/
	}
	.sm-ra li {
		float: left;
	}
	.sm-ra a, 
	.sm-ra a:hover,
	.sm-ra a:focus, 
	.sm-ra a:active,
	.sm-ra a.highlighted {
		padding: 2.8125rem 1.55rem;
	}
	.sm-ra.sm-rtl li {
		float: right;
	}
	.sm-ra ul li,
	.sm-ra.sm-rtl ul li,
	.sm-ra.sm-vertical li {
		float: none;
	}
	.sm-ra a {
		white-space: nowrap;
	}
	.sm-ra li, .sm-ra li a{
		position: relative;
		/*font-size: 1em;*/
	}
	.current-menu-ancestor:after,
	.current-menu-item:after,
	.sm-ra li:not(:last-child):hover:after{
		height: 100%!important;
	}
	.sub-menu li a:before{
		left: 3em;
	}
	.current-menu-ancestor a:before,
	.current-menu-item a:before,
	.sm-ra li a:hover:before{
		height: 8px!important;
	}
	.sm-ra ul a, 
	.sm-ra.sm-vertical a {
		white-space: normal;
	}
	.sm-ra .sm-nowrap > li > a, 
	.sm-ra .sm-nowrap > li > :not(ul) a {
		white-space: nowrap;
	}
	/* ...end */
	/*.sm-ra li .sub-menu li:hover a,
	.sm-ra li .sub-menu li.current-menu-item a{
		background: #eeeeee;
	}
	.sm-ra .menu-item-has-children > a:after{
		content:""; background: url("../../images/arrow-weiss.png");
		background-repeat: no-repeat;
		padding: 0 12px;
		margin-left: 0.5em;
	}
	.sm-ra .menu-item-has-children > a:hover:after, 
	.sm-ra .menu-item-has-children > a:focus:after,
	.sm-ra .menu-item-has-children > a:active:after,
	.sm-ra .menu-item-has-children.current_page_item > a:after,
	.sm-ra .current-menu-parent > a:after{ 
		background: url("../../images/arrow-gelb.png");
		background-repeat: no-repeat;
	}*/
	.sm-ra a .sub-menu {
		background: none;
		width: 0;
		height: 0;
		border-style: solid dashed none dashed;
		border-color: #fff transparent transparent transparent;
		border-width: 0.45rem 0.35rem 0rem 0.35rem;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	.menu-item-has-children:hover ul.sub-menu {
		display: flex!important;
	}
	/*Zeite + weitere Ebenen*/
	.sm-ra ul {
		padding: 0;
		/*background: rgba(51,102,204,0.95);
		box-shadow: 0 5px 12px rgb(0 0 0 / 20%);
		background: #668CD9;*/
		background: rgba(102,140,217,0.95);
		
	}
	.sm-ra > li > ul.sub-menu{
		width: max-content;
	}
	.sm-ra > li > ul.sub-menu > li:not(:last-child){
		border-right: 2px solid rgba(255,255,255,0.1);
	}
	/*.sm-ra > li > ul.sub-menu > li > ul{
		padding-bottom: 1rem;
	}*/
	.sm-ra > li > ul.sub-menu > li > a {
		color: #FFFFFF!important;
		font-weight: bold;
	}
	.sm-ra > li > ul.sub-menu > li > a:before {
		height: 8px;
		background: #3366CC;
	}
	.sm-ra > li > ul.sub-menu > li > ul.sub-menu{
		display: inline-block !important;
		width: 100%;
	}
	ul.sub-menu > li:after,
	ul.sub-menu > li > a:after,
	.sm-ra > li > ul.sub-menu > li > ul.sub-menu > li > a:before{
		display: none;
	}
	.sm-ra > li > ul.sub-menu > li > ul.sub-menu > li > a{
		color: #FFFFFF!important;
		padding-top: 1rem;
		padding-bottom: 1rem;
	}
	.sm-ra > li > ul.sub-menu > li > ul.sub-menu > li.current_page_item > a,
	.sm-ra > li > ul.sub-menu > li > ul.sub-menu > li > a:hover,
	.sm-ra > li > ul.sub-menu > li > a:hover{
		color: #3366CC!important;
		background: #F5F5F5!important;
	}
	.is-menu.is-dropdown form{
		min-width: auto;
		top: 68%;
	}
	.is-form-style input.is-search-submit, 
	.is-search-icon{
		color: #fff!important;
		background: #3366CC;
		border: none;
		-moz-transition: background 0.2s linear;
		-webkit-transition: background 0.2s linear;
		-ms-transition: background 0.2s linear;
		-o-transition: background 0.2s linear;
		transition: background 0.2s linear;
	}
	.is-search-icon:hover, 
	form.is-form-style input.is-search-submit:hover{
		background: rgba(85, 140, 190, 0.8);
	}
	.is-search-icon svg{
		display: none;
	}
	.is-search-icon{
		content: url("../../images/arrow-suche.png");
		width: 100%;
		height: 100%;
	}
	.is-menu.is-dropdown .search-close{
		top: calc(100% - 63px);
	}
	.search-close{
		right: 8px;
	}
	#main-menu >li > .sub-menu {
		right: 0;
	}
}
@media screen and (min-width: 1280px){
	.sm-ra a, 
	.sm-ra a:hover, 
	.sm-ra a:focus,
	.sm-ra a:active,
	.sm-ra a.highlighted{
		padding: 2.8125rem 1.8rem;
	}
	.sm-ra .sub-menu a, 
	.sm-ra .sub-menu a:hover, 
	.sm-ra .sub-menu a:focus,
	.sm-ra .sub-menu a:active,
	.sm-ra .sub-menu a.highlighted{
		padding: 1.8rem 2.5rem;
	}
}
@media screen and (min-width: 1350px){
	.sm-ra a, 
	.sm-ra a:hover, 
	.sm-ra a:focus,
	.sm-ra a:active,
	.sm-ra a.highlighted{
		font-size: 1em;
		padding: 3.1111rem 3.6111rem;
	}
	#main-menu >li > .sub-menu {
		right: -50%;
	}
}
@media screen and (min-width: 1430px){
	.sm-ra a,
	.sm-ra a:hover, 
	.sm-ra a:focus,
	.sm-ra a:active, 
	.sm-ra a.highlighted {
		font-size: 1.1em;
	}
}
@media screen and (min-width: 1530px){
	.sm-ra a,
	.sm-ra a:hover, 
	.sm-ra a:focus,
	.sm-ra a:active, 
	.sm-ra a.highlighted {
		font-size: 1.3333em;
	}
	.sub-menu{
		font-size: 0.85em;
	}
	#main-menu >li > .sub-menu {
		right: -30%;
	}
}
@media screen and (min-width: 1650px){
	#main-menu >li > .sub-menu {
		right: -12em;
	}
}