@charset "UTF-8";


* {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	vertical-align:baseline;
	text-decoration: none;
	-webkit-text-size-adjust: none; 
	/* -webkit-font-smoothing: antialiased; */
	-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
}

html {overflow-x: auto; overflow-y: scroll; height:100%; }
body { height:100%; font-family: 'Roboto', Helvetica, Arial, sans-serif; font-size: 14px; line-height: 22px;  }


/*
#fader { position: fixed; width: 100%; height: 100%; left : 0px; top: 0px; background: #bf2446; z-index: 999; display: none; }
#fader span { position: absolute; width: 100%; height: 90%; min-height: 15px; top: 0px; left: 0px; background: url('../img/loader.gif') no-repeat center center; display: block; }
*/

#fader { position: fixed; width: 100%; height: 100%; left : 0px; top: 0px; background: #ffffff; z-index: 999; display: none; }
#fader span { position: absolute; width: 100%; height: 90%; min-height: 15px; top: 0px; left: 0px; background: url('../img/loader.circle.svg') no-repeat center center; display: block; }



#site {
	position:relative;
	height:auto !important;
	min-height:100%;
	width: 100%;
	min-width: 768px;
}	
.wrapper {
	position:relative; 
	margin:0 auto;
	width: 100%;
}
@media (max-width: 768px) {	
#site {
	width: 100%;
}
}




.elementor-section .elementor-column-gap-default > .elementor-column > .elementor-element-populated {
    padding: 0px !important;
}
.elementor-section-full_width .elementor-column-gap-default .elementor-row .elementor-column .elementor-element-populated {
    padding: 0px !important;
}
.elementor-section-boxed .elementor-column-gap-default .elementor-row .elementor-column .elementor-element-populated {
    padding: 0px 0px 0px 0px !important;
}

@media (max-width: 1023px) {
	.elementor-section-boxed .elementor-column-gap-default .elementor-row .elementor-column .elementor-element-populated {
		padding: 0px 0px 0px 0px !important;
	}
}
@media (max-width: 767px) {

}
.elementor-column-gap-default .elementor-row .elementor-column .elementor-element-populated .elementor-element-populated {
	padding: 0px !important;
}














.logo { position: relative; text-align: left; padding: 10px 20px 10px 20px; }
.logo a {position: relative; display: block; margin: 0 auto; }	
.logo img {	position: relative; }







#menu-main-navigation {position: relative; width: 100%; line-height: 0; }

#menu-main ul {
    display: none;
    position: absolute;
    top: calc(100%);
    left: 0;
    z-index: 99999;
    width: 100%;
    background: #fff;
    box-shadow: 0px 3px 3px rgba(0,0,0,0.2);
}
#menu-main li:hover > ul {
    display: block;
}
#menu-main {
	display: table;
}


#menu-main { position: relative; list-style: none; width: 100%; vertical-align: bottom; }
#menu-main > li { background-color: transparent; float: left; width: 20%; padding: 0px 0px 0px 0px; text-align: center;  height: 100%; 	
	-webkit-transition: all 0.1s;
	-moz-transition: all 0.1s;
	-o-transition: all 0.1s;
	transition: all 0.1s; }

#menu-main > li > .li-container { position: relative; display: block; width: 100%; text-align: center; }
#menu-main > li > .li-container .li-box { position: relative; display: inline-block; width: 100%; vertical-align: top; text-align: center;  }
#menu-main > li > .li-container .li-box a {
	position: relative;
	display: inline-block;
	width: 100%;
	text-align: center; 
    white-space: pre-wrap; /* css-3 */
    white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
    white-space: -pre-wrap; /* Opera 4-6 */
    white-space: -o-pre-wrap; /* Opera 7 */
    word-wrap: break-word; /* Internet Explorer 5.5+ */
}

#menu-main li {
    position: relative;
	display: table-cell;
	float: none;
	line-height: 0;
}
#menu-main li .li-container {
	line-height: 0;
}
#menu-main ul li {
    position: relative;
	display: inline-block;
}

#menu-main a {
	color: #000; 
	font-weight: 400;
	font-size: 14px; 
	line-height: 20px;
	text-decoration: none; 
	text-transform: uppercase;
	/* text-shadow: #fff 0 0 10px; */
}

.sf-menu > li > .li-container a { padding: 6px 0px 6px 0px; }
 .sf-menu > li > .li-container a { padding: 10px 0px 10px 0px; }
 
 
#menu-main > li > .li-container .icon { position: relative; width: 100%; text-align: center; } 
#menu-main > li > .li-container .icon img { height: 70px; width: auto; } 
#menu-main > li > .li-container .icon svg { height: 70px; width: auto; fill: #bf2446; } 




#menu-main li.current_page_item a, 
.no-touch #menu-main1 li:hover a { font-weight: 400; } 

@media (max-width: 768px) {	
	#menu-main li { background-color: transparent; float: none; height: auto; width: 100%; padding: 5px 20px 5px 20px; text-align: center; }
	#menu-main li .icon { display: none; }
}


#menu-main ul li { display: block; background-color: #fff; /* height: 28px; */  }
#menu-main ul li a { padding: 10px 20px 10px 20px; }


#menu-main a { text-decoration: none; /* border-left: #fff 0px solid; */ display: block; }
#menu-main > li > a { text-align: center; }


#menu-main ul li:hover { background-color: #eee; }

#menu-main ul li:hover { background-color: #bf2446; }
#menu-main ul li:hover a { color: #fff; }



#menu-main ul li {
	border-top: 1px solid rgba(194,194,192,.4);
	/*
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	*/
}
#menu-main ul li:first-child {border-top: 0px #000 solid; }
#menu-main ul li > a {
	color: #000;
	font-size: 14px;
}
#menu-main-navigation ul > li:hover > a {  }
#menu-main-navigation ul ul > li:hover > a {color: #fff; background-color: #bf2446;}
#menu-main-navigation ul li:first-child a, #menu-main ul ul li a { /* border-left: #000 0px solid; */ }

#menu-main li.current_page_item a {  }


#menu-main > li.current_page_ancestor > a {}
#menu-main li.current-menu-item > a, 
#menu-main ul .current-menu-item > a, 
#menu ul .current-menu-ancestor > a {color: #000;} 

#menu-main ul .current-menu-item > a { background-color: #bf2446; }

.no-touch #menu-main > li:hover > a,
#menu-main > li.current-menu-item > a { color: rgba(0,0,0,0); } 

#menu-main > li:hover { background-color: #bf2446; }
#menu-main > li:hover > .li-container {  }
#menu-main > li:hover > .li-container .icon svg { fill: #ffffff; }
#menu-main > li:hover > .li-container .li-box > a { color: #fff; }

#menu-main li ul li:first-child { border-top: 1px solid #bf2446; }
#menu-main li:hover ul li:first-child { border-top: 1px solid #fff; }




.page { position: relative; padding-bottom: 0px; }
.page .wrapper { padding: 0px 0px 0px 0px; } 

.page .page-content { 	
	position: relative;
    max-width: 1140px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;  
	padding-right: 20px; }
	
.page .elementor-column-gap-default { padding-left: 10px;  padding-right: 10px; }
.page .post-content {
	position: relative;
    max-width: 1140px;
	margin-left: auto;
	margin-right: auto;
	border: 1px solid #bf2446; 
	padding: 10px;
}
}

@media (max-width: 768px) {	
.page .post-content { margin-left: 10px;  margin-right: 10px; }

.page .page-content { padding-left: 10px;  padding-right: 10px; }
.page .elementor-column-gap-default { padding-left: 0px;  padding-right: 0px; }
}



p { font-size: 14px; line-height: 20px; }



h1 { font-size: 22px; line-height: 28px; font-weight: 700; color: #bf2446; }
h2 { font-size: 18px; line-height: 24px; font-weight: 700; color: #bf2446; }
h3 { font-size: 14px; line-height: 20px; font-weight: 700; color: #bf2446; }
h4 { font-size: 14px; line-height: 20px; font-weight: 700; }
h5 { font-size: 14px; line-height: 20px; font-weight: 700; }
h6 { font-size: 14px; line-height: 20px; font-weight: 700; }




p,
a:not(.elementor-button),
.elementor a:not(.elementor-button) { font-size: 14px; line-height: 22px; font-weight: 400; color: #000000; text-decoration: none; }
@media (max-width: 1024px) {

}
@media (max-width: 767px) {

}

/*
a:hover,
.elementor a:hover { color: #bf2446; text-decoration: none; }
*/

p b,
p strong { font-weight: 700; }

.light,
.elementor-widget.light p,
.elementor-widget.light a,
.elementor-widget-text-editor.light p,
.elementor-widget-text-editor.lighta { 
    font-weight: 300;
}

.medium,
.elementor-widget.medium p,
.elementor-widget.medium a,
.elementor-widget-text-editor.medium p,
.elementor-widget-text-editor.medium a { 
    font-weight: 500;
}

.demibold,
.elementor-widget.demibold p,
.elementor-widget.demibold a,
.elementor-widget-text-editor.demibold p,
.elementor-widget-text-editor.demibold a { 
    font-weight: 600;
}

.bold,
.elementor-widget.bold p,
.elementor-widget.bolda,
.elementor-widget-text-editor.bold p,
.elementor-widget-text-editor.bold a { 
    font-weight: 700;
}

.large,
.elementor-widget.large p,
.elementor-widget-text-editor.large p,
.large a,
.elementor-widget.large p a,
.elementor-widget-text-editor.large p a,
.large a:hover,
.elementor-widget.largem p a:hover,
.elementor-widget-text-editor.large p a:hover  {
    font-size: 35px; 
    line-height: 45px; 
}
@media (max-width: 1024px) {
	.large,
	.elementor-widget.large p,
	.elementor-widget-text-editor.large p,
	.large a,
	.elementor-widget.large p a,
	.elementor-widget-text-editor.large p a,
	.large a:hover,
	.elementor-widget.largem p a:hover,
	.elementor-widget-text-editor.large p a:hover  {
		font-size: 25px; 
		line-height: 33px; 
	}
}
@media (max-width: 767px) {
	.large,
	.elementor-widget.large p,
	.elementor-widget-text-editor.large p,
	.large a,
	.elementor-widget.large p a,
	.elementor-widget-text-editor.large p a,
	.large a:hover,
	.elementor-widget.largem p a:hover,
	.elementor-widget-text-editor.large p a:hover  {
		font-size: 20px; 
		line-height: 24px; 
	}
}

.uppercase,
.elementor-widget.uppercase p,
.elementor-widget-text-editor.uppercase p { text-transform: uppercase; }

p { padding-bottom: 20px; }
@media (max-width: 1024px) {
	p { padding-bottom: 20px; }
}
@media (max-width: 767px) {

}



h1,
h1 a,
.elementor h1,
.elementor h1 a,
.elementor h1 a:hover  { font-size: 24px; line-height: 28px !important; font-weight: 700; color: #000000; text-transform: uppercase;  }

h2,
h2 a,
.elementor h2,
.elementor h2 a,
.elementor h2 a:hover  { font-size: 24px; line-height: 28px !important; font-weight: 700; color: #000000; }

h3,
h3 a,
.elementor h3,
.elementor h3 a,
.elementor h3 a:hover  { font-size: 24px; line-height: 28px !important; font-weight: 400; color: #bf2446; }

h4,
h4 a,
.elementor h4,
.elementor h4 a,
.elementor h4 a:hover  { font-size: 20px; line-height: 24px !important; font-weight: 700; color: #000000; text-transform: uppercase;  }

h5,
h5 a,
.elementor h5,
.elementor h5 a,
.elementor h5 a:hover  { font-size: 20px; line-height: 24px !important; font-weight: 600; color: #000000;  }

h6,
h6 a,
.elementor h6,
.elementor h6 a,
.elementor h6 a:hover  { font-size: 20px; line-height: 24px !important; font-weight: 700; color: #000000; }

@media (max-width: 1024px) {

}
@media (max-width: 767px) {

}


img { max-width: 100%; height: auto; }



ul {
  margin: 0;
}
ul.dashed {
  margin-left: 10px;
  list-style-type: none;
}
ul.dashed > li {
  text-indent: -10px;
}
ul.dashed > li:before {
  content: "- "; 
  text-indent: -10px;
}

.elementor-element.elementor-widget-text-editor ul {
  margin-left: 1em;
}





/*

.panel-grid { padding-bottom: 70px }
.panel-grid:last-child { padding-bottom: 0px }
#pg-9-2 { padding-bottom: 0px; }

.scroll-to-top { width: 100%; padding-bottom: 70px; text-align: center; }
.scroll-to-top a { display: inline-block; width: auto; }




.contact { position: relative; padding-left: 405px; padding-right: 40px; padding-top: 60px; padding-bottom: 80px; color: #fff; font-size: 24px; line-height: 30px; font-weight: 500; font-style: normal; text-decoration: none; }
a, .contact  a { color: #000; font-size: 14px; line-height: 20px; font-weight: 400; font-style: normal; text-decoration: none; }
a:hover, .contact  a:hover {color: #000; text-decoration: underline;}

h4 { font-size: 14px; line-height: 20px; font-weight: 700; padding-bottom: 20px; }

p { padding-bottom: 20px; }


.page-content img {
    box-sizing: border-box;
    height: auto;
	padding: 0;
	margin: 0px; 
    max-width: 100%;}
.page-content .alignright, .page-content img.alignright {
    display: inline;
    float: right;
    padding: 4px 0px 20px 17px; }
.page-content .alignleft, .page-content img.alignleft {
    display: inline;
    float: left;
    padding: 4px 17px 20px 0px; }
.page-content .aligncenter, .page-content img.aligncenter {
	clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
	padding: 4px 0px 20px 0px; }
*/






/* 
6.0 Search 
-----------------------------------
*/
.site-search { position: relative; width: 100%; text-align: right; line-height: 0; }
.site-search .search { position: relative; display: inline-block; width: 140px; text-align: left; line-height: 0; }

.site-search .search form { border: 1px solid #bf2446;  border: 1px solid #ddd; border-radius: 0px; }
.site-search .search form > div { position: relative; width: 100%; height: 22px; }
.site-search .search .search-input { position: absolute; display: block; top: 0px; left: 0px; }

.site-search .search .search-input input[type=text]::placeholder,
.site-search .search .search-input input[type=text]::-moz-placeholder,
.site-search .search .search-input input[type=text]::-webkit-input-placeholder {
  color: #ddd;
  opacity: 1; 
}
.site-search .search .search-input input[type=text]:-ms-input-placeholder {
  color: #ddd;
  opacity: 1; 
}


.site-search .search .search-input input[type=text] {	  
	display: block; 
	width: 100%;
	padding: 0px 5px 0px 5px; 
	background-color: #fff;
	color: #000;
	font-size: 14px; 
	line-height: 20px;
	font-weight: 400; 
	font-style: normal; 
	text-decoration: none; }

.site-search .search .search-submit { position: absolute; display: block; width: 22px; height: 22px; top: 0px; right: 0px; }
.site-search .search .search-submit button { background-color: #fff; cursor: pointer; }
.site-search .search .search-submit .fa-search { font: normal normal normal 14px/1 FontAwesome; color: #bf2446; font-size: 20px; line-height: 22px; }



@media (max-width: 768px) {	
	.site-search { padding-right: 0px; }
}





/* 
7.0 Pagination 
-----------------------------------
*/
.pagination {position: relative; width: 100%; padding: 10px 10px 10px 10px; }
.page-numbers {display: inline-block; color:#000; padding: 0px 5px 0px 0px; position: relative; }
.page-numbers:hover {color: #ab2724; padding: 0px 5px 0px 0px; }
.page-numbers.current {color: #ab2724; padding: 0px 5px 0px 0px; }
.pagination .prev {padding-left: 0px;}
.pagination .next {padding-right: 0px;}






.search .search-container {
	position: relative;
	margin: 0 auto;
	width: 100%;
	max-width: 640px;	
	padding-top: 90px; 
}
.search .search-container .text {
	padding: 5px 5px 10px 5px;
	font-size: 16px;
	line-height: 20px; 
	font-weight: 400;
	color: #fff;
	position: relative;
	width: 320px;
	margin: 0 auto;
}
.search .search-container .text-hilfe {
	padding-top: 20px;
}
.search .search-container .input-container {
	padding-top: 10px; 
	text-align: center;	
}
.search .search-container .input {
	position: relative;
	width: 100%;
	max-width: 640px;
	padding: 0px 20px 0px 20px;
	display: inline-block;
}
.search .search-container .input-text,
.search .search-container .input-submit {
	float: left;
}
.search .search-container .input-text {
	width: calc(100% - 40px);
}
.search .search-container .input-submit { 
	height: 39px;
	background-color: #fff;
	border-radius: 0px 5px 5px 0px; 
}

.search input[type='text'] {
	display: inline-block; 
	width: 100%;
	font-size: 16px;
	line-height: 16px;
	font-weight: 400;
	padding: 10px;	
	background-color: #fff; 
	border-radius: 5px 0px 0px 5px;	 
}
.search button {
	height: 100%;
	width: 40px;
    background-color: transparent; 
	cursor: pointer;
}
.search button i {
	font-size: 21px;
	line-height: 21px;
	color: #000;
}







/*----------------------------------------------------------------------------------------------------------------------------
Popup
----------------------------------------------------------------------------------------------------------------------------*/


.popup-layer { position: absolute; display: table; height: auto; min-height: 100%; width: 100%; left: 0; top: 0; }
.popup-background { position: fixed; height: 100%; width: 100%; left: 0; top: 0; background-color: rgba(0,0,0,0.3); z-index: 10; }
.popup-layer .wrapper	 			{ 
	position: absolute;
	left: 50%;
	top: 100px;
	-ms-transform: translate(-50%, 0px);
	transform: translate(-50%, 0px); 
	width:720px; 
	margin: 0 auto; padding-bottom: 40px; z-index: 10; }
.popup-layer-fullwidth .wrapper	{	
	width: 100%; 
}	
.popup 	{
	position: relative; 
	background: #ffffff; 
	margin: 0px; 
	padding: 0px; 
	border: 1px solid #666;
	-moz-box-shadow: 1px 1px 7px #ccc;
	-webkit-box-shadow: 1px 1px 7px #ccc;
	box-shadow:1px 1px 7px #ccc;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	border-radius: 8px;	}
.popup-top {
	position: relative;	
	padding: 20px 20px 20px 20px;
	background-color: #f8f8f8;	
	border-bottom: 1px solid #ddd;			
	-moz-border-radius-topright: 8px;	
	-webkit-border-top-right-radius: 8px;
	border-top-right-radius: 8px;	
	-moz-border-radius-topleft: 8px; 	
	-webkit-border-top-left-radius: 8px;
	border-top-left-radius: 8px; }
.popup-bottom {
	position: relative;
	padding: 20px 20px 20px 20px;
	background-color: #f8f8f8;
	border-top: 1px solid #ddd;		
	-moz-border-radius-bottomright: 8px;	
	-webkit-border-bottom-right-radius: 8px;
	border-bottom-right-radius: 8px;
	-moz-border-radius-bottomleft: 8px; 	
	-webkit-border-bottom-left-radius: 8px;
	border-bottom-left-radius: 8px; }
.popup-top h1 { font-size: 25px; line-height: 30px; font-weight: 400; text-transform: none; }
.popup-top h1 span { display: inline-block; padding-left: 20px; font-size: 16px; line-height: 20px; text-transform: none; }



a.button {position: relative; }	
a.button span {	
	color: #ffffff;	
	font-size: 14px; 
	line-height: 14px; 
	background: linear-gradient(#0099CC, #006699) repeat scroll 0 0 transparent;
    border: 1px solid #004466;
	display: inline-block; 
	
    padding: 6px 20px 8px 20px;
	text-align: center;		
	
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;

	-moz-box-shadow: 0px 0px 3px #fff inset;
	-webkit-box-shadow: 0px 0px 3px #fff inset;
	box-shadow: 0px 0px 3px #fff inset;	}
a.button:hover span  { 
	background: none repeat scroll 0 0 #006699;
    border: 1px solid rgba(0,0,0,0.1) !important;}	

a.popup-button { position: relative; }	
a.popup-button span { background: linear-gradient(#0099CC, #006699) repeat scroll 0 0 transparent; }
a.popup-button:hover span  { background: none repeat scroll 0 0 #006699; }	

a.popup-button-close { position: absolute; top: 20px; right: 20px; }	
a.popup-button-close span { background: linear-gradient(#ef1414, #d11414) repeat scroll 0 0 transparent; }
a.popup-button-close:hover span  { background: none repeat scroll 0 0 #d11414; }	
	
	

select { font-size: 14px; line-height: 22px; font-weight: 400;
	border: solid 1px #E5E5E5;
  background: #FFFFFF;
  padding: 5px 4px 4px 0px;
  background: -webkit-gradient( linear, left top, left 16, from(#FFFFFF), color-stop(4%, #EEEEEE), to(#FFFFFF) );
  background: -moz-linear-gradient( top, #FFFFFF, #EEEEEE 1px, #FFFFFF 16px );
  -moz-box-shadow: 0px 0px 8px #f0f0f0;
  -webkit-box-shadow: 0px 0px 8px #f0f0f0;
  box-shadow: 0px 0px 8px #f0f0f0;
}


.popup-content { position: relative; padding: 30px 20px 20px 20px;}
.popup-content span { display: inline-block; }


.popup-content input,
.popup-content textarea {
	font-size: 14px;
	line-height: 22px;
	font-weight: 400; }

.popup-content .span-first { width: 160px; }
.popup-content input.input-fullwidth { width: 516px; }
.popup-content input.input-halfwidth { width: 256px; }

.popup-content input.input-long { width: 320px; }
.popup-content input.input-middle { width: 240px; }
.popup-content input.input-short { width: 160px; }
.popup-content input.input-small { width: 80px; }
 
.popup-content input[type="text"],
.popup-content input[type="password"],
.popup-content textarea {
	border: solid 1px #E5E5E5;
	background: #FFFFFF;
	padding: 2px 4px 2px 4px;
	background: 
		-webkit-gradient(
			linear,
			left top,
			left 16,
			from(#FFFFFF),
			color-stop(4%, #EEEEEE),
			to(#FFFFFF)
		);
	background: 
		-moz-linear-gradient(
			top,
			#FFFFFF,
			#EEEEEE 1px,
			#FFFFFF 16px
			);
	-moz-box-shadow: 0px 0px 8px #f0f0f0;
	-webkit-box-shadow: 0px 0px 8px #f0f0f0;
	box-shadow: 0px 0px 8px #f0f0f0;
}
			
.popup-user-new { width: 160px;}			
.popup-content input[type="text"].input-user-new,
.popup-content input[type="password"].input-user-new  {
	border: solid 1px #E5E5E5;
	background: #FFFFFF;
	padding: 2px 4px 2px 4px;
	width: 400px;
	background: 
		-webkit-gradient(
			linear,
			left top,
			left 16,
			from(#FFFFFF),
			color-stop(4%, #EEEEEE),
			to(#FFFFFF)
		);
	background: 
		-moz-linear-gradient(
			top,
			#FFFFFF,
			#EEEEEE 1px,
			#FFFFFF 16px
			);
	-moz-box-shadow: 0px 0px 8px #f0f0f0;
	-webkit-box-shadow: 0px 0px 8px #f0f0f0;
	box-shadow: 0px 0px 8px #f0f0f0;
}

.popup-content input[type="text"]:focus,
.popup-content input[type="password"]:focus,
.popup-content textarea:focus{
	background:#feffef;
}

.bottom-10 {padding: 0px 0px 10px 0px;}
.bottom-80 {padding: 0px 0px 80px 0px;}








.builder-popup-layer	 			{position: absolute; width:1162px; top: 90px; left: 220px; padding-right: 20px; z-index: 10;}
.builder-popup 						{position: relative; background: #ffffff; margin: 0px; padding: 0px; border: 1px solid #666;
	-moz-box-shadow:1px 1px 7px #ccc;
	-webkit-box-shadow:1px 1px 7px #ccc;
	box-shadow:1px 1px 7px #ccc;
	
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	border-radius: 8px;	

}







/*----------------------------------------------------------------------------------------------------------------------------
List
----------------------------------------------------------------------------------------------------------------------------*/



	
.list-select {position: relative; display: block;}
.list-neu, .list-sort  {width: 300px; display: inline-block; padding: 15px 0px 15px 0px;}
.list-sort {position: absolute; bottom: 0px; right: 0px; text-align: right;}


.list-border	{border-top: 1px #999 solid; height: 0px; width: 100%;  display: block; }


.list {
	position: relative; padding: 0px;
	border-left: 1px solid #999;
	border-right: 1px solid #999;
}	

.list-box-1			{position: relative; background:#ffffff; }
.list-box-2    		{position: relative; background:#f8f8f8; }

.list-td-1 {position: absolute; top: 0px; left: 0px; height: 65px; display: block; width: 25px; vertical-align: middle; border-right: 1px dotted #ddd; }
.list-td-2 {position: relative; display: block; height: 65px; vertical-align: middle; margin-left: 25px; margin-right: 50px;}
.list-td-3 {position: absolute; top: 0px; right: 25px; height: 65px; display: block; width: 25px; vertical-align: middle; border-left: 1px dotted #ddd; }
.list-td-4 {position: absolute; top: 0px; right: 0px; height: 65px; display: block; width: 25px; vertical-align: middle; border-left: 1px dotted #ddd; }

.list-content-container {position: relative; display: block; height: 100%; width: 100%;}
.list-content-container .list-content-bg {position: absolute; height: 100%; width: 100%;}
.list-content-container:hover .list-content-bg {background-color: #006699; opacity:0.2;filter:alpha(opacity=20); }

.list-content {position: relative; display: inline-block; /* height: 20px; */ padding-left: 5px; overflow: hidden; width: 100%;
			   color: #666666; font-size: 12px; line-height: 18px; font-style: normal; font-weight: normal; text-decoration: none;}
.list-content-first { /* height: 25px; */ padding-top: 5px; font-weight: bold; }
.list-content-copy	{font-size: 10px; }

a.list-online {display: block; position: absolute; top: 5px; left: 5px;}
a.list-up {display: block; position: absolute; left: 5px; bottom: 25px;}
a.list-down {display: block; position: absolute; left: 5px; bottom: 5px;}
a.list-delete {display: block; position: absolute; top: 5px; right: 5px;}
a.list-edit {display: block; position: absolute; bottom: 5px; right: 5px;}
a.list-plus {display: block; position: absolute; bottom: 25px; right: 5px;}








.rubrik-list {	
	position: relative; padding: 0px;	
	border-left: 1px solid #999;
	border-right: 1px solid #999;
}

.rubrik-list .list-td-1,
.rubrik-list .list-td-2,
.rubrik-list .list-td-3,
.rubrik-list .list-td-4 {height: 45px;}




.user-list {position: relative; padding: 0px 20px 20px 20px;}

.user-list .list-td-2 {position: relative; display: block; height: 25px; vertical-align: middle; margin-left: 0px; margin-right: 25px;}
.user-list .list-td-4 {position: absolute; top: 0px; right: 0px; height: 25px; display: block; width: 25px; vertical-align: middle; border-left: 1px dotted #ddd; }

.user-list .list-content {line-height: 25px; padding-top: 0px;}
.user-list .list-content span {display: inline-block; padding-left: 5px; font-weight: normal;}
.user-list .list-content span.first {padding-left: 5px; border-right: 1px dotted #ddd; width: 200px; font-weight: bold; }



/* List Typ: Box */
.list-typ-box {
	position: relative; padding: 0px;
	border-left: 0px solid #999;
	border-right: 0px solid #999;
}	

.list-typ-box .list-box-1, .list-typ-box .list-box-2 {	
	position: relative; 	
	border: 1px solid #999;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;	}
.list-typ-box .list-box-1			{background:#ffffff; }
.list-typ-box .list-box-2    		{background:#f8f8f8; }

.list-typ-box a.list-up {display: block; position: absolute; left: 5px; top: 5px;}

.list-typ-box .list-border { border-top: 0px #999 solid; height: 5px; width: 100%;  display: block;}



/* List Typ: image */
.list-typ-image {
	position: relative; padding: 0px;
	border-left: 0px solid #999;
	border-right: 0px solid #999;
}	

.list-typ-image .list-box-1, .list-typ-image .list-box-2 {	
	position: relative; width: 317px; height: 152px; display: inline-block;
	border: 1px solid #999;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;	margin-bottom: 5px; margin-right: 2px;}
.list-typ-image .list-box-1			{background:#ffffff; }
.list-typ-image .list-box-2    		{background:#f8f8f8; }

.list-typ-image a.list-up {display: block; position: absolute; left: 5px; top: 5px;}

.list-typ-image .list-border { border-top: 0px #999 solid; height: 5px; width: 100%;  display: block; display: none; }

.list-typ-image .list-td-1 {position: absolute; top: 0px; left: 0px; height: 150px; display: block; width: 25px; vertical-align: middle; border-right: 1px dotted #ddd; }
.list-typ-image .list-td-2 {position: relative; display: block; height: 150px; vertical-align: middle; margin-left: 25px; margin-right: 50px;}
.list-typ-image .list-td-3 {position: absolute; top: 0px; right: 25px; height: 150px; display: block; width: 25px; vertical-align: middle; border-left: 1px dotted #ddd; }
.list-typ-image .list-td-4 {position: absolute; top: 0px; right: 0px; height: 150px; display: block; width: 25px; vertical-align: middle; border-left: 1px dotted #ddd; }


.list-typ-image .list-content-container .list-content-bg {position: absolute; height: 100%; width: 100%; background-color: #006699; opacity:1.0;filter:alpha(opacity=100); overflow: hidden;}
.list-typ-image .list-content-container:hover .list-content-bg {background-color: #006699; opacity:0.8;filter:alpha(opacity=80); }

.list-typ-image .list-content {background-color: rgba(100,100,100,0.7);}
.list-typ-image .list-content {position: relative; display: block; height: 25px; padding-left: 5px; overflow: hidden; width: 100%;
			   color: #fff; font-size: 12px; line-height: 18px; font-style: normal; font-weight: normal; text-decoration: none;}
.list-typ-image .list-content-first { height: 25px; padding-top: 5px; font-weight: bold; }

.list-typ-image .list-content-box {position: absolute; bottom: 0px; display: block; width: 240px; }




/* List Typ: artikel */
.list-typ-artikel {
	position: relative; padding: 0px;
	border-left: 0px solid #999;
	border-right: 0px solid #999;
}	

.list-typ-artikel .list-box-1, .list-typ-artikel .list-box-2 {	
	position: relative; width: 317px; height: 152px; display: inline-block;
	border: 1px solid #999;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;	margin-bottom: 5px; margin-right: 2px; overflow: hidden;}
.list-typ-artikel .list-box-1			{background:#ffffff; }
.list-typ-artikel .list-box-2    		{background:#f8f8f8; }

.list-typ-artikel a.list-up {display: block; position: absolute; left: 5px; top: 5px;}

.list-typ-artikel .list-border { border-top: 0px #999 solid; height: 5px; width: 100%;  display: block; display: none; }

.list-typ-artikel .list-td-1 {position: absolute; top: 0px; left: 0px; height: 150px; display: block; width: 25px; vertical-align: middle; border-right: 1px dotted #ddd; }
.list-typ-artikel .list-td-2 {position: relative; display: block; height: 150px; vertical-align: middle; margin-left: 25px; margin-right: 50px;}
.list-typ-artikel .list-td-3 {position: absolute; top: 0px; right: 25px; height: 150px; display: block; width: 25px; vertical-align: middle; border-left: 1px dotted #ddd; }
.list-typ-artikel .list-td-4 {position: absolute; top: 0px; right: 0px; height: 150px; display: block; width: 25px; vertical-align: middle; border-left: 1px dotted #ddd; }


.list-typ-artikel .list-content-container .list-content-bg {position: absolute; height: 100%; width: 100%; background-color: #006699; opacity:1.0;filter:alpha(opacity=100); overflow: hidden;}
.list-typ-artikel .list-content-container:hover .list-content-bg {background-color: #006699; opacity:0.8;filter:alpha(opacity=80); }

.list-typ-artikel .list-content {background-color: rgba(100,100,100,0.7);}
.list-typ-artikel .list-content {position: relative; display: inline-block; padding-left: 5px; overflow: hidden; width: 100%;
			   color: #fff; font-size: 12px; line-height: 16px; padding-bottom: 2px; font-style: normal; font-weight: normal; text-decoration: none;}
.list-typ-artikel .list-content-first { /* height: 25px; */ padding-top: 5px; font-weight: bold; }

.list-typ-artikel .list-content-box {position: absolute; bottom: 0px; display: inline-block; width: 240px; }

.list-typ-artikel .list-content-copy { color: #fff; font-size: 10px; line-height: 14px; font-style: normal; font-weight: normal; text-decoration: none;}


















  .menu-mobile-btn-box {
    position: relative;
    display: block;
	padding: 5px 0px 5px 0px; 
    z-index: 1000;
  }  
  .menu-mobile-btn {
    position: relative;
    display: block;
    width: 35px;
    height: 19px;
	
	width: 25px;
    height: 21px;
	
	-webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    cursor: pointer;
  }
  .menu-mobile-btn span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    background-color: #fff;
    border-radius: 0px;
    opacity: 1;
    right: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.25s ease-in-out;
    -moz-transition: 0.25s ease-in-out;
    -o-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out;
  }
  /*
  .menu-mobile-btn span:nth-child(1) {
    top: 0px;
	width: 35px;
  }
  .menu-mobile-btn span:nth-child(2) {
    top: 8px;
	width: 27px;
  }
  .menu-mobile-btn span:nth-child(3) {
    top: 8px;
	width: 27px;
  }
  .menu-mobile-btn span:nth-child(4) {
    top: 16px;
	width: 18px;
  }
  .menu-mobile-btn:hover span {
    background-color: #fff;
  }
  .menu-mobile-btn:hover span:nth-child(1) {
    top: 0px;
	width: 35px;
  }
  .menu-mobile-btn:hover span:nth-child(2) {
    top: 8px;
	width: 35px;
  }
  .menu-mobile-btn:hover span:nth-child(3) {
    top: 8px;
	width: 35px;
  }
  .menu-mobile-btn:hover span:nth-child(4) {
    top: 16px;
	width: 35px;
  }
  */
  
.menu-mobile-btn span:nth-child(1) {
  top: 0px;
  width: 25px;
}
.menu-mobile-btn span:nth-child(2) {
  top: 9px;
  width: 25px;
}
.menu-mobile-btn span:nth-child(3) {
  top: 9px;
  width: 25px;
}
.menu-mobile-btn span:nth-child(4) {
  top: 18px;
  width: 25px;
}

.menu-mobile-btn:hover span:nth-child(1) {
  top: 0px;
  width: 25px;
}
.menu-mobile-btn:hover span:nth-child(2) {
  top: 9px;
  width: 25px;
}
.menu-mobile-btn:hover span:nth-child(3) {
  top: 9px;
  width: 25px;
}
.menu-mobile-btn:hover span:nth-child(4) {
  top: 18px;
  width: 25px;
}  
  
  
   
  


  .menu-close-btn-box {
    position: absolute;
    display: block;	
	width: 35px;
	height: 29px;
	
	width: 25px;
    height: 25px;

	top: 20px;
	right: 20px;
	padding: 5px 0px 5px 0px;
	padding: 0px;
    z-index: 1000;
  }  
  .menu-close-btn {
    position: relative;
    display: block;
    width: 35px;
    height: 19px;
	
	width: 25px;
    height: 25px;
	
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    cursor: pointer;
  }
  .menu-close-btn span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
	top: 0px;
	left: 0;
    background-color: #fff;
    border-radius: 0px;
    opacity: 1;
    right: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.25s ease-in-out;
    -moz-transition: 0.25s ease-in-out;
    -o-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out;
  }
  
  /*
  
  .menu-close-btn span:nth-child(1) {
    top: 5px;
    width: 0%;
    left: 50%;
  }
  .menu-close-btn span:nth-child(2) {
    top: 8px;
	width: 35px;
    -webkit-transform: rotate(30deg);
    -moz-transform: rotate(30deg);
    -o-transform: rotate(30deg);
    transform: rotate(30deg);
  }
  .menu-close-btn span:nth-child(3) {
	top: 8px;
	width: 35px;
    -webkit-transform: rotate(-30deg);
    -moz-transform: rotate(-30deg);
    -o-transform: rotate(-30deg);
    transform: rotate(-30deg);
  }
  .menu-close-btn span:nth-child(4) { 
    top: 5px;
    width: 0%;
    left: 50%;
  }
*/

.menu-close-btn span:nth-child(1) {
  top: 10px;
  width: 0%;
  left: 50%;
}
.menu-close-btn span:nth-child(2) {
  top: 10px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.menu-close-btn span:nth-child(3) {
   top: 10px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.menu-close-btn span:nth-child(4) {
  top: 10px;
  width: 0%;
  left: 50%;
}







#footer { position: relative; width: 100%; 
	color: #000; font-size: 16px; line-height: 20px;
	z-index: 90;
}
#site #footer { position: absolute; bottom: 0; }

.footer-content { position: relative; width: 100%; padding: 10px 0px 0px 0px; }

.footer-content .column { position: relative; width: 33.3%; float: left; padding: 0px 20px 40px 20px; }

.footer-content .column:last-child { position: relative; }



.footer-menu { list-style: none; }
.footer-menu li { }


#menu-footer a {
	color: #000; 
	font-weight: 400;
	font-size: 14px; 
	line-height: 20px;
	text-decoration: none;
	text-transform: uppercase;
	/* text-shadow: #fff 0 0 10px; */
}
#menu-footer li.current_page_item a, 
.no-touch #footer-menu li:hover a { font-weight: 700; } 

.social { display: inline-block; position: relative; font-size: 14px; text-transform: uppercase; }
.social .text-facebook { padding-bottom: 0px; }
.social a { display: block; background-color: #bf2446; color: #fff; font-size: 20px; font-weight: 700; padding: 10px 20px 10px 20px; text-align: center; }
.social a:hover { text-decoration: none; }


@media (max-width: 768px) {	
	.footer-content .column { width: 100%; }
	.footer-content .column:last-child { position: relative; text-align: center; }

}











.logo-desktop { display: block; }
.logo-tablet { display: none; }
.logo-mobile { display: none; }


.desktop { display: block; }
.mobile { display: none; }

@media (max-width: 768px) {	
	.desktop { display: none; }
	.mobile { display: block; }
}






@media (max-width: 768px){	
	.logo-desktop { display: none; }
	.logo-mobile { display: block; }	

	.wrapper { 
		min-width: 320px; 
	}

.page {
    padding-bottom: 20px;
}


.post-image { position: relative; max-width: 320px; width: auto; float: left; padding: 0px 20px 20px 20px; }

#site #footer { position: relative; bottom: 0;}
#menu-footer li { background-color: transparent; float: left; height: auto; width: 100%; padding: 5px 20px 5px 20px; text-align: center; }

}


.elementor-icon-list-text { font-size: 14px; line-height: 22px; }



#site .eihe-box,
#site .eihe-box::before {
	background-color: #bf2446;
}
#site .eihe-title {
	font-size: 24px; 
}

/*
span.column-phone {    
	font-size: 14px;
    line-height: 20px;
}
span.column-phone {display: block; width: 100%; }
span.column-phone .column-1 {display: inline-block; width: 80px; padding: 0; }
span.column-phone .column-2 {display: inline-block; width: calc(100% - 80px); padding: 0; }


.elementor-text-editor ul,
.elementor-text-editor ol {
	margin-left: 15px;
}
.elementor-text-editor ul li,
.elementor-text-editor ol li { 
	font-size: 14px;
	line-height: 20px;
}
*/


/*
.elementor a { color: #808080; }
.elementor a:hover { text-decoration: underline; }
*/

.elementor .elementor-widget-text-editor a { text-decoration: underline; }
.elementor .elementor-widget-text-editor a:hover { color: #bf2446; }

.elementor-widget-heading a { }



.elementor-button {
	padding: 5px 10px 5px 10px;
	border-radius: 3px;
	transition: all .0s;
}
.elementor-button:hover {

}


.swb-button .elementor-button,
.swb-button .elementor-button:focus, 
.swb-button .elementor-button:hover {
	background-color: #bf2446;
	color: #fff;
	text-align: left;
	font-size: 14px;
	line-height: 22px;
	font-weight: 400;
	/*
	font-weight: 700;
	text-transform: uppercase;
	*/
}
@media (max-width: 1024px) {
}
@media (max-width: 767px) {

}

.elementor-widget-divider { }
.elementor-widget-divider .elementor-divider {}
.swb-divider.elementor-widget-divider .elementor-divider-separator { border-top: dotted 1px #000 !important; }

.elementor-widget-icon-list a:hover .elementor-icon-list-text,
.elementor-widget-icon-list a:hover .elementor-icon-list-icon i {
	color: #bf2446;
}


.swb-tabelle .elementor-inner-section .elementor-column-gap-default {
  padding-left: 0px !important;
  padding-right: 0px !important;
}
.swb-tabelle .elementor-inner-section  .elementor-column { border-top: #000 1px solid; border-left: #000 1px solid; }
.swb-tabelle .elementor-inner-section  .elementor-column:last-child { border-right: 1px solid #000; }
.swb-tabelle .elementor-inner-section:last-child  .elementor-column { border-bottom: 1px solid #000; }

@media (max-width: 767px) {
	.swb-tabelle .elementor-inner-section .elementor-column-gap-default {
		padding-left: 0px !important;
		padding-right: 0px !important;
	}
	.swb-tabelle .elementor-inner-section  .elementor-column { border-top: #000 1px solid; border-left: #000 1px solid; border-right: 1px solid #000; }
	.swb-tabelle .elementor-inner-section:last-child  .elementor-column { border-bottom: 0px solid #000; }
	.swb-tabelle .elementor-inner-section:last-child  .elementor-column:last-child { border-bottom: 1px solid #000; }
}


.no-padding p:last-child { padding-bottom: 0px; }



/*----------------------------------------------------------------------------------------------------------------------------
Login 
----------------------------------------------------------------------------------------------------------------------------*/
.login-form {
	width: 100%;
	padding: 0px 10px 0px 10px;
}
.login-form .wrapper {
	width: 100%;
	max-width: 550px;
	margin: 0px auto;
	padding-top: 120px;
}
.login-box{
	background:#fff;
	border:1px solid #ddd;
	margin:0 auto;
	width: 100%;
	color: #666;
	font-size:16px;		
	-moz-box-shadow:1px 1px 7px #ccc;
	-webkit-box-shadow:1px 1px 7px #ccc;
	box-shadow:1px 1px 7px #ccc;	
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	border-radius: 8px;	
}
.login-box-top{	
	/* text-transform:uppercase; */	
	padding:20px 30px 20px 30px;
	background-color: #f8f8f8;
	font-size:24px;
	line-height: 30px; 
	border-bottom:1px solid #ddd;			
	-moz-border-radius-topright: 8px;	
	-webkit-border-top-right-radius: 8px;
	border-top-right-radius: 8px;	
	-moz-border-radius-topleft: 8px; 	
	-webkit-border-top-left-radius: 8px;
	border-top-left-radius: 8px;
}
.login-box-top span{
	font-size:16px;
	line-height: 22px; 
	display: block;
}
.login-box-middle {
	padding: 0px 30px 10px 30px;
}
.login-box-bottom{
	width: 100%;
	text-align: right;
	background-color: #f8f8f8;
	border-top:1px solid #ddd;
	text-shadow:1px 1px 1px #000;
	padding: 20px 30px 15px 10px;
	-moz-border-radius-bottomright: 4px;	
	-webkit-border-bottom-right-radius: 4px;
	border-bottom-right-radius: 4px;	
	-moz-border-radius-bottomleft: 4px; 	
	-webkit-border-bottom-left-radius: 4px;
	border-bottom-left-radius: 4px; 
}
.login-form label{
	display:block;
	padding:10px 0px 0px 0px;
	margin: 0px;
}
.login-form input[type="text"],
.login-form input[type="password"]{
	border: solid 1px #E5E5E5;
	background: #FFFFFF;
	color: #666;
	padding: 9px;
	display:block;
	font-size:16px;
	width: 100%;
	background: 
		-webkit-gradient(
			linear,
			left top,
			left 25,
			from(#FFFFFF),
			color-stop(4%, #EEEEEE),
			to(#FFFFFF)
		);
	background: 
		-moz-linear-gradient(
			top,
			#FFFFFF,
			#EEEEEE 1px,
			#FFFFFF 25px
			);
	-moz-box-shadow: 0px 0px 8px #f0f0f0;
	-webkit-box-shadow: 0px 0px 8px #f0f0f0;
	box-shadow: 0px 0px 8px #f0f0f0;
}
.login-form input[type="text"]:focus,
.login-form input[type="password"]:focus{
	background:#feffef;
}

.login-box-bottom a.login-button {
	display: inline-block;
	
}
.login-box-bottom a.login-button, 
.login-box-bottom a.login-button span {	
	color: #ffffff;	
	font-size: 18px; 
	line-height: 24px; 
	font-style: normal; 
	font-weight : normal; 
	text-decoration: none;
	text-shadow: none;}
.login-box-bottom a.login-button span  {	
	/*top: 0px; right: 0px;*/ 	
	background: linear-gradient(#0099CC, #006699) repeat scroll 0 0 transparent;
    border: 1px solid #004466;
	display: block; 	
    padding: 8px 0 9px;
	text-align: center;
	/* margin:20px 30px 15px 10px; */	
	width: 150px;
	cursor:pointer;
	/* float: right; */ 	
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	-moz-box-shadow: 0px 0px 3px #fff inset;
	-webkit-box-shadow: 0px 0px 3px #fff inset;
	box-shadow: 0px 0px 3px #fff inset;
}
.login-box-bottom a.login-button:hover span { 
	background: none repeat scroll 0 0 #006699;
}	





/* Clearfix */
.clearfix:after {
   content: ".";
   display: block;
   clear: both;
   visibility: hidden;
   line-height: 0;
   height: 0;
}
.clearfix {
   display: inline-block;
}
html[xmlns] .clearfix {
   display: block;
}
* html .clearfix {
   height: 1%;
   overflow: visible;
}