/*Google Fonts */

/* montserrat-regular - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/montserrat-v25-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/montserrat-v25-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/montserrat-v25-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/montserrat-v25-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/montserrat-v25-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/montserrat-v25-latin-regular.svg#Montserrat') format('svg'); /* Legacy iOS */
}
/* montserrat-600 - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/montserrat-v25-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/montserrat-v25-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/montserrat-v25-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/montserrat-v25-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/montserrat-v25-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/montserrat-v25-latin-600.svg#Montserrat') format('svg'); /* Legacy iOS */
}
/* montserrat-700 - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/montserrat-v25-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/montserrat-v25-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/montserrat-v25-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/montserrat-v25-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/montserrat-v25-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/montserrat-v25-latin-700.svg#Montserrat') format('svg'); /* Legacy iOS */
}
/* montserrat-italic - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/montserrat-v25-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/montserrat-v25-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/montserrat-v25-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/montserrat-v25-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/montserrat-v25-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/montserrat-v25-latin-italic.svg#Montserrat') format('svg'); /* Legacy iOS */
}
/* montserrat-600italic - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 600;
  src: url('../fonts/montserrat-v25-latin-600italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/montserrat-v25-latin-600italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/montserrat-v25-latin-600italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/montserrat-v25-latin-600italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/montserrat-v25-latin-600italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/montserrat-v25-latin-600italic.svg#Montserrat') format('svg'); /* Legacy iOS */
}
/* montserrat-700italic - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/montserrat-v25-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/montserrat-v25-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/montserrat-v25-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/montserrat-v25-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/montserrat-v25-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/montserrat-v25-latin-700italic.svg#Montserrat') format('svg'); /* Legacy iOS */
}

/* roboto-slab-regular - latin */
@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/roboto-slab-v24-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-slab-v24-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-slab-v24-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-slab-v24-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-slab-v24-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-slab-v24-latin-regular.svg#RobotoSlab') format('svg'); /* Legacy iOS */
}
/* roboto-slab-600 - latin */
@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/roboto-slab-v24-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-slab-v24-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-slab-v24-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-slab-v24-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-slab-v24-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-slab-v24-latin-600.svg#RobotoSlab') format('svg'); /* Legacy iOS */
}
/* roboto-slab-700 - latin */
@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/roboto-slab-v24-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-slab-v24-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-slab-v24-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-slab-v24-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-slab-v24-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-slab-v24-latin-700.svg#RobotoSlab') format('svg'); /* Legacy iOS */
}



/*Allgemein*/
* {
    box-sizing: border-box;
}

textarea,
input[type="text"],
input[type="button"],
input[type="submit"],
input[type="reset"],
input[type="search"] {
    -webkit-appearance: none;
    border-radius: 0;
}

.invisible {
    display: none;
}

body {
    background-color: #fff;
    font-family: 'Roboto Slab';
    line-height: 1.5em;
    color: #666;
    min-width: 320px;
    font-size: 1.0em;
    font-weight: normal;
}



@media only screen and (max-width: 1279px) {
body {
	font-size: 0.9em;
	}
}

@media only screen and (max-width: 767px) {
body {
	font-size: 0.8em;
	}
}


/*Layout*/

#container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    max-width: 1280px;
    margin: 0 auto;
}

@media only screen and (max-width: 1023px) {
    #container {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.home #container {
    margin-top: -15em;
}

@media only screen and (max-width: 1279px){
.home #container {
	margin-top: -12em;
}
}

@media only screen and (max-width: 1023px){
.home #container {
	margin-top: 1em;
}
}

#container #main {
    width: 75%;
    padding: 1em 2em;
}

.wide #container #main {
    width: 100%;
    padding-top: 0px;
}

@media only screen and (max-width: 1023px) {
    #container #main {
        width: 100%;
        padding: 1em;
    }
}

#container #right {
    width: 25%;
    padding: 1.5em;
    border-left: 1px solid #eee;
}

@media only screen and (max-width: 1023px) {
    #container #right {
        width: 100%;
    }
}

#container #right .level_1 li {
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    border-bottom: 1px solid #eee;
}

#container #right .level_1 li:last-child {
    border-bottom: 0px;
}

#container #right .level_2 {
    padding-left: 1em;
    margin-top: 0.5em;

}


#container #right .level_2 li {
    padding-top: 0.2em;
    padding-bottom: 0.2em;
    font-size: 0.85em;
    border-bottom: 0px;
}

#container #right .level_2 li:before {
     display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-family: "Font Awesome 5 Free";
    font-weight: 800;
    content: "\f0da";
    color: #008080;

    width: 20px;
}

.fullwidth #container #main {
    width: 100%;
    padding: 1em 2em;
}

.fullwidth #container #right {
    width: 0;
    padding: 1.5em;
    background-color: #efefef;
}








#header .inside {
    max-width: 1280px;
    margin: 0 auto;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 0.5em;
    padding-right: 0.5em;
    padding-top: 1.0em;
    padding-bottom: 1.0em;
    padding-left: 1em;
    padding-right: 1em;
}


#logo img {
    width: 100%;
    height: auto;
    max-width: 70px;
}

@media only screen and (max-width: 767px) { 
	#logo img { 
	width: 80%;
	}
	}

#logo .caption {
    padding-left: 1em;
    font-size: 0.9em;
}

#logo .caption span {
    display: block;
    font-size: 1.5em;
    font-family: "Montserrat";
    font-weight: 400;
    line-height: 1.3em;
}

@media only screen and (max-width: 767px) {
	
	#logo .caption span { 
		font-size: 1.2em;
		}
	 }


#logo .image_container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.kontaktdaten {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}
@media only screen and (max-width: 767px) {
.kontaktdaten {
	margin-top: 1em;
	width: 100%;
}}

.kontaktdaten .kontaktdaten-detail {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 0.8em;
    font-weight: 400;
    line-height: 1.5em;
    font-family: 'Montserrat';
}

@media only screen and (max-width: 1279px) {
	#header .kontaktdaten .kontaktdaten-detail {
		display: block;
		text-align: center;
	}
	}


#footer .kontaktdaten .kontaktdaten-detail {
    -webkit-justify-content: left;
    -ms-flex-pack: left;
    justify-content: left;

}


@media only screen and (max-width: 1279px) { 
	#header .kontaktdaten .kontaktdaten-detail 
	{
		margin-left: 1em;
		margin-right: 1em;
	}
	
	}
	
#footer .logos {
	max-width: 300px;
	margin-top: 2em;
}

#footer .logos img {
	max-width: 60px;
	height: auto;
}
#footer .logos li {
	width: 33% !important;
	float: left;
}


.kontaktdaten .kontaktdaten-detail span {
    font-weight: 400;
}
@media only screen and (max-width: 1023px) { 
	#header .kontaktdaten .kontaktdaten-detail span {
    display: none;
}
}

.kontaktdaten .kontaktdaten-detail i {
    border: 2px solid #eee;
    font-size: 1.5em;
    padding: 0.8em;
    margin-right: 0.5em;
    margin-left: 1em;
    color: #008080;
}

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

#header .kontaktdaten .kontaktdaten-detail i {
	display: table;
	margin: 0 auto;
	margin-bottom: 0.5em;
}
	
	}





.w50 {
    width: 48% !important;
}

.w33 {
    width: 31% !important;
}

@media only screen and (max-width: 767px) {
    .w33 {
        width: 48% !important;
    }
}

.w25 {
    width: 23% !important;
}

.team .w25 {
	width: 48% !important;
	background-color: #f8f9f9;
	border: 1px solid #eee;
}
.team .w25 h3, 
.team .w25 p {
	padding-left: 2em;
	padding-right: 2em;

}

@media only screen and (max-width: 1023px) {
	.w25 {
    width: 48% !important;
}
}

@media only screen and (max-width: 767px) {
	.w25 {
    width: 100% !important;
}
}



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

    .w33,
    .w50,
    .team .w25 {
        width: 100% !important;
    }
}


/*Navigation*/



#navigationsleiste {
    background-color: #353d47;
}

@media only screen and (max-width: 1023px) {
    #navigationsleiste {
        display: none;
    }
}

#navigationsleiste .inside {
    max-width: 1280px;
    margin: 0 auto;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
	padding: 1em;
	padding-top: 0.75em;
	padding-bottom: 0.75em;
    height: 4.5em;

}

#navigationsleiste .inside ul {}

#navigationsleiste .inside ul li {
    display: inline-block;
    text-transform: uppercase;
    font-family: 'Montserrat';
    font-size: 0.9em;
}

@media only screen and (max-width: 1279px) {
	#navigationsleiste .inside ul li {
		font-size: 0.85em;
	}
}

#navigationsleiste .inside ul li a,
#navigationsleiste .inside ul li .active,
#navigationsleiste .inside ul li .forward
  {
    padding-top: 1.3em;
    padding-bottom: 1.3em;
    padding-left: 1em;
    padding-right: 1em;
    text-decoration: none;
    color: #efefef;

}

@media only screen and (max-width: 1279px) {
#navigationsleiste .inside ul li a,
#navigationsleiste .inside ul li .active,
#navigationsleiste .inside ul li .forward {
	padding-left: 0.9em;
    padding-right: 0.9em;
	
}}

#navigationsleiste input {
    border: 0px;
    font-size: 1em;
    padding: 0.4em;
    background-color: #353d47;
    border-bottom: 1px solid #bbb;
    color: #eee;
    border-radius: 0px !important;
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    -moz-transition: all .15s linear;
    -webkit-transition: all .15s linear;
    -o-transition: all .15s linear;
    transition: all .15s linear;
    -moz-box-sizing: inherit !important;
    -webkit-box-sizing: inherit !important;
    box-sizing: inherit !important;
    width: inherit !important;
}

.widget {
	margin-bottom: 0px !important;
}



#navigationsleiste .widget:before {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-family: "Font Awesome 5 Free";
    font-weight: 800;
    content: "\f002";
    padding-left: 1em;
    color: #bbb;
}

#headerline {
    width: 100%;
    margin-bottom: 1em;
    border-bottom: 1px solid #eee;
    text-align: center;

}

#headerline .image_container {
    background-color: #F8FAF9;
    position: relative;
}
@media only screen and (max-width: 767px) {
#headerline .image_container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
}

#headerline img {
    width: 100%;
    max-width: 1280px !important;
    height: auto;
    margin: 0 auto;
    text-align: center;
    padding-left: 2em;
    padding-right: 2em;
    display: block;
}

@media only screen and (max-width: 767px) { 
	#headerline img {
		padding-left: 0em;
		padding-right: 0em;
}}

#headerline h1 {
    font-weight: 400;
    background-color: #f8f9f9;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    border-bottom: 1px solid #eee;
    text-align: center;
    margin: 0 auto;
    color: #000;
}


#headerline .mod_breadcrumb {
    max-width: 1280px;
    margin: 0 auto;
    padding-top: 1em;
    padding-bottom: 1em;
    padding-left: 2em;
    padding-right: 2em;
    font-family: 'Montserrat';
    font-size: 0.9em;
    text-align: left;
}

#headerline .mod_breadcrumb ul li {
    display: inline-block;

}

#headerline .mod_breadcrumb ul li:after {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-family: "Font Awesome 5 Free";
    font-weight: 800;
    content: "\f105";
    padding-left: 1em;
    padding-right: 1em;
    color: #666;
}

#headerline .mod_breadcrumb ul li:last-child:after {
    content: "";
}

.custom #team {
    background-color: #f8f9f9;
    padding-top: 3em;
    padding-bottom: 3em;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

.custom #team .inside .mod_article {
    padding-left: 2em;
    padding-right: 2em;
}



.custom #kontakt {
    padding-top: 3em;
    padding-bottom: 3em;
}

.custom #kontakt .inside .mod_article {
    padding-left: 2em;
    padding-right: 2em;
}

#footer {
    background-color: #f8f9f9;
    padding-top: 2em;
    padding-bottom: 3em;
    border-top: 1px solid #eee;
}

#footer .inside {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    max-width: 1280px;
    margin: 0 auto;
    padding-left: 2em;
    padding-right: 2em;
}


#footer .inside .footerkontakt {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    border-bottom: 1px solid #eee;
    padding-bottom: 2em;
    margin-bottom: 2em;
    width: 100%;
}

#footer .inside .footerkontakt .kontaktdaten {
    display: block;
    flex: none;
    text-align: left;
}

#footer .inside .kontaktdaten .kontaktdaten-detail i {
    margin-left: 0px;
    margin-bottom: 0.5em;
}

#footer .inside .footerkontakt .sp-footer {
    max-width: 50%;
}
@media only screen and (max-width: 1023px) {

#footer .inside .footerkontakt .sp-footer {
	max-width: 40%;
}
}

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

#footer .inside .footerkontakt .sp-footer {
	max-width: 100%;
	width: 100%;
	margin-bottom: 2em;
}
}

#footer .inside .footerkontakt .sp-footer .ue {
    font-size: 1.2em;
    color: #000;
    text-transform: uppercase;
    display: inline-block;
    position: relative;
    margin-bottom: 2em;
    font-family: 'Montserrat';

}


#footer .inside .footerkontakt .sp-footer .ue:after {
    background-color: #008080;
    bottom: -18px;
    content: "";
    left: 0;
    height: 3px;
    position: absolute;
    width: 75px;
    box-sizing: border-box;
}

#footer .mod_navigation {
    font-family: "Montserrat";
    font-size: 0.8em;
}

#footer .mod_navigation li {
    padding-bottom: 0.5em;
}

#footer .mod_navigation li a:before,
#footer .mod_navigation li .active:before {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-family: "Font Awesome 5 Free";
    font-weight: 800;
    content: "\f105";
    padding-right: 0.5em;
    color: #666;
}


#footer .inside .mod_customnav ul li {
    display: inline-block;
    padding-right: 1.5em;



}

#footer .inside .mod_customnav ul li:last-child {
    padding-right: 0em;
}

#footer .inside .mod_customnav ul li a {
    font-family: "Montserrat";
    font-size: 0.8em;
}


/*fonts allgemein*/

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Montserrat';
    text-transform: none;
}

a {
    color: #666;
    text-decoration: none;
}


/*fonts main */

#container #main .inside .block {
    margin-bottom: 2em;
}


/*Module */

/*Sitemap*/

.mod_sitemap .level_2 li, .mod_sitemap .level_3 li {
	list-style: disc;
}

.mod_sitemap .level_2 {
	padding-left: 2em;
}

.mod_sitemap .level_3 {
	padding-left: 2em;
}

/** mod_search **/

.mod_search .header {
    font-size: 13px;
    margin-bottom: 13px;
}
.mod_search .header strong {
    font-weight: bold;
}
.mod_search div {
    margin-bottom: 20px;
}
#header .mod_search div {
    margin-bottom: 0px;
}
.mod_search .context {
    font-size: 12px;
    line-height: 17px;
}
.mod_search h3 {
    padding-bottom: 5px;
    color: #2555a6;
}
.mod_search .relevance {
    font-size: 14px;
    color: #666;
}
.mod_search .url {
    color: #2555a6;
    font-size: 12px;
}
.mod_search .pagination ul {
    text-align: center;
}
.mod_search .pagination p {
    margin-bottom: 25px;
    font-size: 13px;
}
.mod_search .pagination ul li {
    display: inline;
}
.mod_search .pagination ul .first,
.mod_search .pagination ul .previous {
    margin-right: 5px;
}
.mod_search .pagination ul .next,
.mod_search .pagination ul .last {
    margin-left: 5px;
}
.mod_search .link {
    background-color: #efefef;
    padding: 5px;
    padding-left: 10px;
    padding-right: 10px;
    border: 1px solid #efefef;
}
.mod_search .active {
    padding: 5px;
    padding-left: 8px;
    padding-right: 8px;
    border: 1px solid #efefef;
}
.mod_search .pagination {
    text-align: center;
}

.mod_search .info {
	margin-bottom: 2em;}




/*Inhaltselemente */
#main .inside .mod_article,
.custom .inside .mod_article {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    text-align: left;
    max-width: 1280px;
    margin: 0 auto;
}



/* Headline (ce_headline)*/

h2.ce_headline {
	font-size: 1.5em;
    color: #000;
    display: inline-block;
    position: relative;
    margin-bottom: 2em;
}

h2.ce_headline:after {
    background-color: #008080;
    bottom: -18px;
    content: "";
    left: 0;
    height: 3px;
    position: absolute;
    width: 75px;
    box-sizing: border-box;
}

h3.ce_headline {
    font-size: 1.1em;
    color: #008080;
    font-weight: 400;
    margin-bottom: 0.5em;
}

h4.ce_headline {
    font-size: 1.0em;
    color: #000;
    font-weight: 400;
}

h5.ce_headline {
    font-size: 1.0em;
    color: #000;
}

h6.ce_headline {
    font-size: 1.0em;
    color: #000;
}




/* Text (ce_text)*/

.ce_text {
	width: 100%;
}

.ce_text h2 {
    font-size: 1.5em;
    line-height: 1.3em;
    color: #000;
    display: inline-block;
    position: relative;
    margin-bottom: 2em;

}

.ce_text h2:after {
    background-color: #008080;
    bottom: -18px;
    content: "";
    left: 0;
    height: 3px;
    position: absolute;
    width: 75px;
    box-sizing: border-box;
}

.ce_text h3 {
    font-size: 1.1em;
    color: #008080;
    font-weight: 400;
    margin-bottom: 0.5em;
}

.ce_text h4 {
    font-size: 1.0em;
    color: #000;
    font-weight: 400;
}

.ce_text h5 {
    font-size: 1.0em;
    color: #000;
}

.ce_text h6 {
    font-size: 1.0em;
    color: #000;
}

.ce_text p {
    font-size: 1em;
    line-height: 1.7em;
    margin-bottom: 1em;
}

.ce_text strong {
    font-weight: 400er;
    color: #000;
}

.ce_text em {
    font-style: italic;
}

.ce_text a {
    border-bottom: 1px dashed #000;
}

.ce_text a:hover {
    color: #008080;
    border-bottom: 1px dashed #008080;
}

.ce_text ul {
    margin-bottom: 1em;
}

.ce_text ul li {
    line-height: 1.7em;
    margin-left: 2em;
}

.ce_text ul li:before {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-family: "Font Awesome 5 Free";
    font-weight: 800;
    content: "\f30b";
    padding-right: 0.5em;
    color: #008080;
    margin-left: -1.8em;
    width: 20px;
}


.ce_text .float_above img {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 2em;
}

.ce_text .float_left img {
    width: 100%;
    max-width: 25%;
    height: auto;
    display: block;
    float: left;
    padding-right: 2em;
    padding-bottom: 1em;
}

.ce_text .float_right img {
    width: 100%;
    max-width: 25%;
    height: auto;
    display: block;
    float: right;
    padding-left: 2em;
    padding-bottom: 1em;
}

.ce_text .float_below img {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 2em;
}


.ce_text pre {
    white-space: normal;
    padding-left: 2em;
    padding-right: 2em;
    margin-bottom: 1em;
}


.ce_text table tr {
	border-bottom: 1px solid #eee;

}

.ce_text table tr td{
	padding: 0.5em;
	width: 100%;
}



/* Bild (ce_image) */


.ce_image .image_container {
    overflow: hidden;
    position: relative;
    display: block;
    text-align: center;
    margin: 0 auto;
}

.ce_image .image_container img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform .5s ease;
}

.ce_image .image_container img:hover {
    transform: scale(1.1);
}

.ce_image .image_container .caption {
    position: absolute;
    bottom: 0;
    padding: 0.4em;
    color: #fff;
    width: 100%;
    font-size: 1em;
    font-family: "Montserrat";
    font-weight: 400;
    background-color: #353d47;
    opacity: 0.80;
}

/* Slider (ce_sliderStart)*/

.ce_sliderStart .slider-control .slider-prev,
.ce_sliderStart .slider-control .slider-next {
	display: none;}

.ce_sliderStart .slider-control{
	margin-top: -2em;
	font-family: arial;
	}
@media only screen and (max-width: 767px) {	
.ce_sliderStart .slider-control {
	margin-top: -7em;}
	}
	
.ce_sliderStart .slider-control .slider-menu {
	font-size: 2.5em;}
	
.ce_sliderStart .slider-control .slider-menu b.active {
	color: #008080;}
	
.ce_sliderStart .slider-control .slider-menu b {
	color: #ccc;
	}

/* Galerie (ce_gallery) */

.ce_gallery ul {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.ce_gallery ul li {
    padding-right: 0.5em;
    padding-left: 0.5em;
    padding-bottom: 1em;
    padding-bottom: 1em;
}

.ce_gallery ul {
    margin-left: -0.5em;
    margin-right: -0.5em;
}

.ce_gallery ul li .image_container {
    overflow: hidden;
    position: relative;
    display: inline-block;
    text-align: center;
    margin: 0 auto;
}

.ce_gallery ul li img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform .5s ease;
}

.ce_gallery ul li img:hover {
    transform: scale(1.1);
}

.ce_gallery .cols_1 li {
    width: 100%;
}

.ce_gallery .cols_2 li {
    width: 50%;
}

.ce_gallery .cols_3 li {
    width: 33.3%;
}

.ce_gallery .cols_4 li {
    width: 25%;
}

.ce_gallery .cols_5 li {
    width: 20%;
}

.ce_gallery .cols_6 li {
    width: 16.6%;
}

@media only screen and (max-width: 767px) {
	.ce_gallery .cols_3 li,
	.ce_gallery .cols_4 li,
	.ce_gallery .cols_5 li,
	.ce_gallery .cols_6 li {
    width: 50%;
}
}

.ce_gallery .caption {
    position: absolute;
    bottom: 0;
    padding: 0.2em;
    color: #fff;
    width: 100%;
    font-size: 0.9em;
    font-family: "Montserrat";
    font-weight: 400;
    background-color: #353d47;
    opacity: 0.80;
}




/*

/*Startseite*/

.home #headerline {
    background-color: #F7F9F8;
}

.home #headerline .mod_article {
	display: block;
	}

.home #headerline .caption {
    position: absolute;
    left: 50%;
    top: 30%;
    transform: translate(-50%, -50%);
    z-index: 999999;
    font-size: 1em;
    text-transform: uppercase;
    /* border: 5px solid #fff; */
    font-weight: 400;
    padding: 0.5em;
    text-align: left;
    line-height: 1.2em;
    width: 100%;
    max-width: 1280px;
    background: none !important;
    color: #333;
    bottom: inherit;
}
@media only screen and (max-width: 767px) {
	.home #headerline .caption {
	position: relative;
	left: auto;
	transform: inherit;
	padding-top: 2em;
	 }
	}

@media only screen and (max-width: 1023px) {
.home #headerline .caption {
	top: 50%;
}}

.home #headerline .caption h1 {
    text-align: left;
    font-size: 2.5em;
    line-height: 1.3em;
    font-weight: 400;
    border-bottom: 0px;
    background: none !important;
    padding-bottom: 0.2em;
    padding-top: 0em !important;
    padding-left: 0.75em;
    padding-right: 0.75em;
    color: #000;
}
@media only screen and (max-width: 1023px) {
.home #headerline .caption h1 {
	font-size: 1.8em;
}}

.home #headerline .caption h1 span {
    display: block;
    font-size: 0.7em;
    color: #008080;
}

.home #headerline .caption p {
    padding-left: 2em;
    padding-right: 2em;
    max-width: 480px;
    text-transform: none;
    line-height: 1.5em;
    margin-bottom: 3em;

}
@media only screen and (max-width: 1023px) {
.home #headerline .caption p {
	padding-left: 20px;
	}
}

.home #headerline .caption a {
    background-color: #008080;
    color: #fff;
    padding: 1em;
    margin-left: 2em;
    border-radius: 5px;
    font-family: 'Montserrat';
    font-weight: 400;
}

.home #headerline img{
	transform: none;
	}
	
@media only screen and (max-width: 767px) {	
	.home #headerline img{ margin-top: -2em;}
	}
	
.home .ce_text .float_above img {
	margin-bottom: 0em;
}

.home #container #main .inside .block {
	margin-bottom: 1em;
}


#article-1 {
    margin-top: -13em;
}

#article-1 .block {
    padding-top: 16em;

}

@media only screen and (max-width: 1279px) {
	#article-1 .block {
    padding-top: 14.5em;

}
	}
@media only screen and (max-width: 1023px) {	
	
	#article-1 .block {
		padding-top: 1em;
	}
	}

#article-1 .first {
    padding: 0px;
    position: relative;
    background-color: #008080;
    color: #fff;
}

#article-1 .first p {
    padding-left: 2em;
    padding-right: 2em;
}

#article-1 .first h2 {
    padding-top: 1.5em;
    padding-left: 1.5em;
    padding-right: 1.5em;
    color: #fff;

}

#article-1 .first h2:after {
    left: 1.5em !important;
    background-color: #EAF41D
}

#team img {

    margin-bottom: 1em;
}

#team .w25 {
    border: 1px solid #eee;
    padding-bottom: 1em;
    margin-top: 2em;
    background-color: #fff;
}

#team .w25 p,
#team h3 {
    padding-left: 1em;
    padding-right: 1em;
    margin-bottom: 0.1em;
}

#team .w25 p strong {
    font-family: 'Montserrat';
    margin-top: -0.5em;
    font-size: 0.9em;
    padding-bottom: 0.5em;
    color: #008080;
    font-weight: normal;
    color: #666;
    margin-bottom: 0.5em;
}

/*Google Maps*/

.anfahrtskarte {
	width: 100%;
}



.responsive_map iframe {
    width: 100%;
    height: 22em;
}

/*Anfrageformular*/

#kontakt h2 {
	font-size: 1.5em;
    color: #000;
    display: inline-block;
    position: relative;
    margin-bottom: 2em;
}

#kontakt h2:after {

	background-color: #008080;
    bottom: -18px;
    content: "";
    left: 0;
    height: 3px;
    position: absolute;
    width: 75px;
    box-sizing: border-box;
}

#anfrage .formbody {
    width: 100%;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

#anfrage .formbody .widget-text {
    width: 48%;
}

#anfrage .formbody .widget-textarea {
    width: 100%;
}

#anfrage .formbody input,
#anfrage .formbody .textarea {
    width: 100%;
    border: 1px solid #eee;
    font-size: 1.1em;
    background: none;
    margin-bottom: 2em;
    padding: 0.5em;
    background-color: #f8f9f9;
    font-family: Arial !important;
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

#anfrage .formbody .textarea {

    height: 200px;
}

#anfrage button {
    background: #008080 !important;
    color: #fff;
    padding: 1em;
    border-radius: 5px;
    font-family: 'Montserrat';
    font-weight: 400;
    font-size: 1em;
    text-transform: uppercase;
    border: 0px;
}



#anfrage input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    border-radius: 0;
    font-size: 1em;
    width: 100%
}

#anfrage input[type='checkbox'],
#anfrage input[type='radio'] {
    width: auto;
    float: left;
    margin-right: .75em;
    background: transparent;
    border: none;
    padding: 0px !important;
    margin: 0px !important;
}

#anfrage input[type='checkbox']:checked,
#anfrage input[type='checkbox']:not(:checked),
#anfrage input[type='radio']:checked,
#anfrage input[type='radio']:not(:checked) {
    background: transparent;
    position: relative;
    visibility: hidden;
    margin: 0;
    padding: 0;
}

#anfrage input[type='checkbox'] + label,
#anfrage input[type='radio'] + label {
    cursor: pointer;
    margin-left: -35px;
}

#anfrage input[type='checkbox']:checked + label::before,
#anfrage input[type='checkbox']:not(:checked) + label::before,
#anfrage input[type='radio']:checked + label::before,
#anfrage input[type='radio']:not(:checked) + label::before {
    content: '';
    display: inline-block;
    width: 15px;
    height: 20px;
    position: relative;
    top: 8px;
    border: 1px solid #c02525;
    background: white;
    margin-right: 1em;
    box-shadow: inset 0 1px 1px 0 rgba(0, 0, 0, .1);
    padding-bottom: 0px;
    padding-left: 2px;
    padding-right: 2px
}

#anfrage input[type=radio]:checked + label::before,
#anfrage input[type=radio]:not(:checked) + label::before {
    border-radius: 30px;
}

#anfrage input[type='checkbox']:hover + label::before,
#anfrage input[type='radio']:hover + label::before {
    background: #ddd;
    box-shadow: inset 0 0 0 2px white;
}

#anfrage input[type='checkbox']:checked + label::before,
#anfrage input[type='radio']:checked + label::before {
    box-shadow: inset 0 0 0 2px white;
    border: 1px solid #4cbb6c;
    font-family: "Font Awesome 5 Free";
    font-weight: 800;
    content: "\f00c";
    color: #4cbb6c;
}

#anfrage #ctrl_18 {
    margin-left: 25px;
    margin-top: 0px;
    margin-bottom: 1em;
}

#anfrage .widget-captcha {
    width: 100%;
}

#anfrage .widget-captcha #ctrl_17 {
    width: 50px !important;
}

#anfrage .widget-captcha label {
    float: right;
}

#anfrage a {
    color: #008080;
}

#anfrage button:hover {
    cursor: pointer;
    background-color: #333;
}



.modalitaeten {
    border: 1px solid #eee;
    padding: 2em;
    background-color: #f8f9f9;

}

.modalitaeten .formbody input,
.modalitaeten .formbody .textarea {
    background-color: #fff !important;
}

.mobilenav {
	display: none !important;
}

/*Mobile Sonderregeln */

@media only screen and (max-width: 1023px) { 
	.w100m {
		width: 100% !important;
		display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
		
	}
	.w100m .image_container,
	.w100m .vorstellung {
		width: 50%;
			}
			
	.w100m .image_container img {
		padding: 2em;
		padding-right: 0em;
	}
	
	.w100m h2 {
		width: 100%;
	}
	
	.w50m 
	{width: 50% !important; 
		padding: 1em;
		padding-bottom: 0em;
	}
	
			.mobilenav {
	display: flex !important;}
	
	#footer .mobilenav {
		display: none !important;
	}
	
	#right ul li {
		font-size: 1.2em;
		padding-bottom: 0.5em !important;
		padding-top: 0.5em !important;
	}
	
}


@media only screen and (max-width: 767px) { 
	.w50m {
		width: 100% !important;
		padding-left: 2em;
		padding-right: 2em;
	}
	
		.w100m .image_container img {
			padding: 0em;
			display: none;
	}
	
		.w100m .image_container,
	.w100m .vorstellung {
		width: 100%;
			}
			
			.home #headerline {
				margin-bottom: -0.25em;
			}
			
			.home .responsive_map {
				margin-top: 2em;
			}
			
			.home #container {
				margin-top: 0em;
			}
			
			.home #container #main {
				padding: 0em;
			}
			
			#footer .mod_navigation li {
				font-size: 1.4em;
			}
			
			.kontaktdaten .kontaktdaten-detail span {
				font-size: 1.3em;
				line-height: 1.4em;
			}
			
			#anfrage .formbody .widget-text {
				width: 100%;
			}
			
			#footer .mod_customnav {
				margin-bottom: 2em;
				font-size: 1.1em;
			}
			

}


.cookiebar {
	padding: 0.5em;
	margin: 0 auto;
	font-family: 'Montserrat';

}

.cookiebar--position-bottom {
	font-size: 0.7em;
	background-color: #353d47;
}

.cookiebar__button {
	background-color: #008080;
}

.cookiebar__button:hover {
	background-color: #333;
}

@media only screen and (max-width: 767px)  {
	.cookiebar__button {
	margin-top : 1em !important;
}
}




@media all and (-ms-high-contrast:none) {
     .mod_mmenu { display:none } /* IE10 */
     *::-ms-backdrop, .mod_mmenu { display: none } /* IE11 */
}
	
	
	


