@charset "utf-8";

html {  }
body { overflow-x: hidden; font-weight: 300; font-size: 18px; line-height: 1.5em; background: #ffffff; color: #484846; font-family: 'Open Sans', sans-serif; }
body.ov_hidden { overflow: hidden; }
@media only screen and (max-width: 1600px) {
}

/* Header Weiss mit blauem Border */ 
header { z-index: 2; width: 100%; padding: 0 0 0 0; position: relative; margin: 0; border-bottom: 5px solid #17406d; background: #ffffff; }
/* Header Blau */
/* header { z-index: 2; width: 100%; padding: 0 0 0 0; position: relative; margin: 0; border-bottom: 5px solid #edf0f4; background: #2067b4; } */
.clientarea header { border-bottom: 5px solid #d90026; }
main { z-index: 1; position: relative; padding: 80px 0; overflow: hidden; }
footer { } 

@media only screen and (max-width: 1024px) {
}
@media only screen and (max-width: 1020px) {
}
@media only screen and (max-width: 767px) {
	header .width_basic { background-image: none!important; }
}

h1 { margin: 0 0 1em 0; font-size: 2em; line-height: 1.2em; font-weight: 600; font-style: normal; color: #1962b2; }
h2 { margin: 0 0 1em 0; font-size: 1.5em; line-height: 1.3em; font-weight: 400; font-style: normal; color: #1962b2; }
h3 { margin: 0 0 10px 0; font-size: 1.5em; line-height: 1.2em; font-weight: normal; font-style: normal; color: #1962b2; }
h4 { margin: 0 0 0 0; font-size: 1em; line-height: 1.5em; font-weight: 700; font-style: normal; color: #1962b2; }
h5 { }
h6 { }
@media only screen and (max-width: 767px) {
	h1 { font-size: 1.8em; }
}

a { text-decoration: none; color: #484846; font-weight: 400; }
a:hover { text-decoration: none; color: #484846; }
p { margin-bottom: 1.5em; }
div { position: relative; }
img { -webkit-backface-visibility: hidden; -webkit-transform: translateZ(0); backface-visibility: hidden; transform: translateZ(0); }

blockquote { font-size: 1.5em; }
.blockquote-footer { text-align: right; color: #000000; font-size: 0.77em; }
.blockquote-footer:before { display: none; }

ul { margin-bottom: 1.68em; padding-left: 1.2em; }
ul li { }

ul.liste { padding: 0; display: block; border-top: solid 5px #f2f2f2; }
ul.liste li { list-style: none; display: block; padding: 1.5em 15px 0 15px; border-bottom: solid 5px #f2f2f2; }

ul.newsliste .btn { position: absolute; right: 0; bottom: 0; }

ol { margin-bottom: 1.68em; }
ol li {}

b, strong { font-weight: 700; color: #1962b2; }

dl.row { margin-right: 0; margin-left: 0; }
dd { margin-bottom: 0; }

.accordion, figure, .blockquote, .btn { margin-bottom: 1em; }

table { font-size: 0.9em; width: 100%; margin: 0 0 2em 0; }
table tr { border-bottom: solid 1px #c5c9d0; background: #e5e8ec; }
table tr:nth-child(odd) { background: #edf0f4; }
table th { border-right: 1px solid #c5c9d0; padding: 10px; font-weight: 700; }
table td { padding: 10px; font-weight: 400; }

.text-primary { color: #B98202!important; }
.text-secondary { color: #0069b4!important; }

/* Button bootstrap classes */
.btn { text-decoration: none; padding: 0.75em 1.4em; font-weight: 700; font-size: 0.9em; }
.btn.btn-lg { font-size: 1.33em; }

.btn-primary { background-color: #1962b2; border-color: #1962b2; }
.btn-primary:hover { background-color: #1d73d2; border-color: #1d73d2; }

.btn-primary.focus, .btn-primary:focus { box-shadow: none;  }
.btn-primary.active, .btn-primary:active { box-shadow: none!important; background-color: #8c8774!important; border-color: #8c8774!important; color: #d8d3c3!important; }

.btn-secondary { background-color: #0069b4; border-color: #0069b4; color: #ffffff; }
.btn-secondary:hover { background-color: #0078ce; border-color: #0078ce; }

.btn-secondary.focus, .btn-secondary:focus { box-shadow: none;  }
.btn-secondary.active, .btn-secondary:active { box-shadow: none!important; background-color: #0078ce!important; border-color: #0078ce!important; }

.alert-success {}
.alert-danger {}

.form-control {}
textarea.form-control { height: 180px; }

form .info { margin: 5px 0 50px 0; font-size: 0.8em; line-height: 1.4em; opacity: 0.7; font-weight: 400; }

/* Custom */
.overlay { position: absolute; left: 0; top: 0; right: 0; bottom: 0; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }

.width_basic { max-width: 1200px; padding: 0 20px; }
.content { max-width: 700px; }
.height_300 { height: 300px; }
.height_500 { height: 500px; }
@media only screen and (max-width: 767px) {
	.height_300 { height: 160px; }
	.height_500 { height: 200px; }
}

.cover { background-position: center; background-repeat: no-repeat; background-size: cover; }

.user { padding: 10px; right: 0; top: 17px; font-size: 0.9em; /*color: #ffffff;*/ position: absolute; font-weight: 400; min-width: 174px; text-align: right; }
.user span { transform: translate3d(0, 3px, 0); -webkit-transform: translate3d(0, 3px, 0); display: inline-block; font-size: 1.2em; }
.user .options { width: 100%; display: none; }
.user:hover { background: #ffffff; box-shadow: 0 0 3px rgb(0 0 0 / 10%); color: #2067b4; }
.user:hover .options { display: block; }
@media only screen and (max-width: 1024px) {
    .user { padding-left: 0; right: auto; top: 50px; bottom: auto; left: auto; position: absolute; text-align: left;}
}

#logo { float: left; padding: 20px 0; width: 227px; }
#logo img.normal { display: block; }
.kundenbereich_logo { display: none; color: #2067b4; float: left; font-size: 23px; padding: 26px 0 0 10px; font-weight: 700; }
.clientarea .kundenbereich_logo { display: block; }
@media only screen and (max-width: 1024px) {
	#logo { float: none; }
    .clientarea #logo { float: left; margin-bottom: 40px; }
}
@media only screen and (max-width: 767px) {
	#logo { width: 180px; padding: 20px 0; }
}

.back_logout { margin: 10px 0 0 0; float: right; display: none; }
.clientarea .back_logout { display: inline-block; }
@media only screen and (max-width: 1024px) {
    .clientarea .back_logout { display: none; }
}

/* Navigation in blauem Header */
/*
.mainnav { float: right; margin: 0 0 0 0; font-size: 0.9em; font-weight: 400; }
.mainnav > ul { margin: 0; padding: 0; display: block; }
.mainnav > ul > li { list-style: none; float: left; padding: 0 10px; }
.mainnav ul li a { color: #ffffff; padding: 21px 10px; display: block; border-top: solid 3px #2067b4; }
.mainnav > ul > li.active > a { border-top: solid 3px #ffffff; }
@media only screen and (max-width: 1024px) {
	.mainnav { display: none; float: none; margin: 0 0 20px 0; }
	.mainnav ul {  }
	.mainnav ul li { float: none; padding: 0; }
	.mainnav > ul > li > a { border-top: none; padding: 10px 0px; border-bottom: solid 1px #ffffff; }
    .mainnav > ul > li.active > a { border-top: none; }
}
*/

/* Navigation in weissem Header */
.mainnav { float: right; margin: 0 0 0 0; font-size: 0.9em; font-weight: 400; }
.mainnav > ul { margin: 0; padding: 0; display: block; }
.mainnav > ul > li { list-style: none; float: left; padding: 0 10px; }
.mainnav ul li a { color: #2067b4; padding: 21px 10px; display: block; border-top: solid 3px #ffffff; }
.mainnav > ul > li.active > a { border-top: solid 3px #2067b4; }
@media only screen and (max-width: 1024px) {
	.mainnav { display: none; float: none; margin: 0 0 20px 0; }
	.mainnav ul {  }
	.mainnav ul li { float: none; padding: 0; }
	.mainnav > ul > li > a { border-top: none; padding: 10px 0px; border-bottom: solid 1px #2067b4; }
}


.mainnav ul.level1 { margin: 0; padding: 0; }
.mainnav ul.level1 { box-shadow: 0 1px 3px rgba(0,0,0,0.2); display: none; position: absolute; background: #ffffff; border-top: solid 5px #17406d; width: 150px; font-size: 0.85em; }
.mainnav ul.level1 li { float: none; list-style: none; margin: 0 0 0 0; padding: 0; border-bottom: 1px solid #edf0f4; }
.mainnav ul.level1 li a { font-size: 14px; padding: 3px 10px; border-top: none; color: #2067b4; }
.mainnav ul.level1 li a:hover { background: #edf0f4; }
.mainnav ul.level1 li.active a { background: #2067b4; color: #ffffff; }
.mainnav ul li:hover ul.level1 { display: block; } 
@media only screen and (max-width: 1024px) {
    .mainnav ul.level1 { box-shadow: none; display: block; position: relative; border-top: none; width: auto; background: transparent; }
    .mainnav ul.level1 li { border-bottom: none; }
    .mainnav ul.level1 li a { color: #2067b4; }
    .mainnav ul.level1 li a:hover { background: transparent; }
    .mainnav ul.level1 li.active a { background: transparent; color: #2067b4; opacity: 0.5; }
}

.kundenbereich ul.level0 { margin: 0; padding: 0; display: block; border-top: solid 1px #2067b4; }
.kundenbereich ul.level0 li { list-style: none; border-bottom: solid 1px #2067b4; }
.kundenbereich ul.level0 li a { display: block; padding: 3px 10px; color: #2067b4; }
.kundenbereich > ul.level0 > li.active > a { background: #2067b4; color: #ffffff; }

.kundenbereich ul.level1 { margin: 0; padding: 0; border-top: solid 1px #d8d3c3; }
.kundenbereich ul.level1 li a { font-size: 0.8em; padding: 3px 10px 3px 30px; }
.kundenbereich ul.level1 li:last-child { border-bottom: none; }
@media only screen and (max-width: 1024px) {
	.kundenbereich { display: none; margin: -50px 0 50px 0; }
}

.bild_team_detail { max-width: 300px; }
.loginfenster { background: #edf0f4; padding: 40px; border-radius: 6px; }
@media only screen and (max-width: 767px) {
	.bild_team_detail { max-width: 100%; }
}

footer { background: #edf0f4; padding: 30px 0 30px; font-size: 0.8em; }

footer .span20 { width: 20%; float: left; }
footer .span20.mobilspacer { display: none; }
@media only screen and (max-width: 1024px) {
	footer .span20 { width: 33.3%; margin: 0 0 20px 0; }
	footer .span20.mobilspacer { display: block; }
}
@media only screen and (max-width: 767px) {
	footer .span20 { width: 100%; }
}

.logo_footer { width: 150px; }
.facebook { font-size: 30px; background-color: #1962b2; padding: 10px 6px; border-radius: 50%; }
.facebook i { background-color: #1962b2; color: #ffffff; padding: 10px; border-radius: 50%; }

.teaserlink { display: block; color: #484846; }
.teaserlink:hover { color: #484846; }
i.icon { padding: 45px; font-size: 90px; background: #2067b4; color: #edf0f4; border-radius: 50%;margin-bottom: 24px; display: inline-block; }
a:hover i.icon { background: #edf0f4; color: #2067b4; }
 
#news_veranstaltungen h3 { border-bottom: solid 5px #f2f2f2; padding: 0 0 5px 0; font-size: 1em; }
#news_veranstaltungen h2 { font-size: 1.3em; }
 
.news { border-bottom: solid 5px #f2f2f2; margin: 0 0 1em 0; min-height: 95px; }
 
.mitarbeiter { line-height: 1.3em; }
.mitarbeiter a { color: #484846; }
.mitarbeiter .bild { overflow: hidden; }
.mitarbeiter .bild img { transition: 500ms; transform: scale(1.0,1.0); -webkit-transform: scale(1.0,1.0); }
.mitarbeiter:hover .bild img { transform: scale(1.1,1.1); -webkit-transform: scale(1.1,1.1); }
 
.produktlink a { color: #484846; }
.produktlink .bild_container { height: 150px; overflow: hidden; }
.produktlink .bild { position: absolute; width: 100%; height: 100%; transition: 500ms; transform: scale(1.0,1.0); -webkit-transform: scale(1.0,1.0); }
.produktlink .bild_container:hover .bild { transform: scale(1.1,1.1); -webkit-transform: scale(1.1,1.1); }
 
.menuicon { display: none; position: absolute; right: 20px; top: 30px; width: 25px; height: 25px; margin: -2px 0 0 0; transition: 0ms; }
.menuicon .line { width: 25px; height: 2px; background: #2067b4; position: absolute; }
.menuicon .line:nth-of-type(1) { top: 0; }
.menuicon .line:nth-of-type(2) { top: 8px; }
.menuicon .line:nth-of-type(3) { top: 16px; }
.menuicon.active .line:nth-of-type(1) { top: 8px; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
.menuicon.active .line:nth-of-type(2) { opacity: 0.0; visibility: hidden; }
.menuicon.active .line:nth-of-type(3) { top: 8px; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
@media only screen and (max-width: 1024px) {
	.menuicon { display: block; }
}

/* ------------------------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------------------------ */

ul.square { list-style-type:square; }
ul.circle { list-style-type:circle; }
ul.square { list-style-type:square; }
ul.image { list-style-image: url('img/sqpurple.gif'); }

ol.decimal-leading-zero { list-style-type:decimal-leading-zero; }
ol.lower-alpha { list-style-type:lower-alpha; }
ol.upper-alpha { list-style-type:upper-alpha; }
ol.upper-roman { list-style-type:upper-roman; }

ul.linklist { list-style-type:none; }
ul li { position: relative; }
ul.linklist span { position: absolute; left: -20px; top: 2px; }

.custom_accordion_trigger { cursor: pointer; padding-left: 40px!important; }
.custom_accordion_trigger_icon { position: absolute; left: 3px; top: 17px; background: #1962b2; width: 25px; height: 25px; border-radius: 50%; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
.collapsed .custom_accordion_trigger_icon { -webkit-transform: rotate(-0deg); transform: rotate(-0deg); }
.custom_accordion_trigger_icon .line { width: 15px; height: 3px; background: #ffffff; top: 10px; left: 5px; }
.custom_accordion_trigger_icon .line:nth-of-type(2) { -webkit-transform: rotate(-90deg); transform: rotate(-90deg); top: 7px; }

.accordion .card { overflow: inherit; margin-bottom: 0; background: transparent; border-bottom: 1px solid #484846!important; }
.accordion .card-header { background: transparent; }
.accordion .card-body { padding: 0 0 0 40px; }

.accordion .card:first-child .card-header { border-radius: .25rem .25rem 0 0; }
.accordion .card:last-child .card-header { border-radius: 0 0 .25rem .25rem; }

.accordion-item {}

.height_250 { height: 250px; }
@media (min-width: 576px) {
	.galerieUebersicht.card-deck { -ms-flex-flow: column; flex-flow: column; margin-right: 0; margin-left: 0; }
	.galerieUebersicht.card-deck .card { margin-right: 0; margin-left: 0; margin-bottom: 15px; }
}
@media (min-width: 776px) {
	.galerieUebersicht.card-deck { -ms-flex-flow: row wrap; flex-flow: row wrap; margin-right: -15px; margin-left: -15px; }
	.galerieUebersicht.card-deck .card { margin-right: 15px; margin-left: 15px; margin-bottom: 30px; }
}

.plugin_galerie_height { height: 180px; }

.responsive-video { position: relative; padding-bottom: 56.25%; padding-top: 0px; height: 0; overflow: hidden; width: 100%; }
.responsive-video iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

figure video { width: 100%; height: auto; display: block; }

hr { margin: 0; border: 0 none; background-color: #f2f2f2; height: 1px; clear: both; opacity: 1; }
hr.space1 { height: 1px; }
hr.space2 { height: 2px; }
hr.space3 { height: 3px; }
hr.space4 { height: 4px; }
hr.space5 { height: 5px; }
hr.space10 { height: 10px; }

.plugin_customcontainer_full_width { display: block; left: 50%; position: relative; transform: translateX(-50%); width: 100vw; /* border:1px dotted blue; */ }

.stoerer { width: 160px; height: 160px; border-radius: 50%; display: block; position: absolute; right: 15%; bottom: 20px; font-size: 1.0em; line-height: 1.2em; font-weight: 400; text-decoration: none; padding: 2em 1.2em; transform: rotate(-3deg); z-index: 8; }
.stoerer i {margin-top: 0.4em;display: block;}

@media only screen and (max-width: 750px) {
	.stoerer {width: 110px; height: 110px;font-size: 0.8em; line-height: 1.2em;padding-top:2em;}
}
@media only screen and (min-width: 1650px) {
	.stoerer {width: 200px; height: 200px;font-size: 1.3em; line-height: 1.2em;padding-top:1.8em;}
}

a.stoerer:hover {background-color:#2067B4!important;}
a.stoerer:active {background-color:#2067B4!important;}