/*** Kundenspezifische home Startseite CSS ***/


/* ------------- Reset von Rändern und Abständen ---------------- */

html { box-sizing: border-box; margin: 0; padding: 0; font-family: RotisSansSerifPro, sans-serif;}

*, ::before, ::after { box-sizing: inherit;  margin: 0; padding: 0;}

body { font-family: RotisSansSerifPro, sans-serif; font-size: 100%;}

ul, ol, dl {     margin: 0 0 0 0; }

a { font-family: RotisSansSerifPro, sans-serif; text-decoration: none; }

br.clearDvv { display: none;}


/* ------------- Grundraster ---------------- */
.the-wrapper { max-width: 100%; margin: 0px auto; width: 100%; }


#quickLink1 { position: relative; z-index: 2000;}


/* Hausschrift */
@font-face { font-family: RotisSansSerifPro; src: url('fonts/RotisSansSerifPro.otf') format('opentype'); }
@font-face { font-family: RotisSansSerifPro-ExtraBold; src: url('fonts/RotisSansSerifPro-ExtraBold.otf') format('opentype'); }
@font-face { font-family: RotisSansSerifPro-Bold; src: url('fonts/RotisSansSerifPro-Bold.otf') format('opentype'); }
@font-face { font-family: RotisSansSerifPro-Italic; src: url('fonts/RotisSansSerifPro-Italic.otf') format('opentype'); }
@font-face { font-family: RotisSansSerifPro-Light; src: url('fonts/RotisSansSerifPro-Light') format('opentype'); }



@font-face {
font-family: 'FontAwesome Light';
font-style: normal;
font-weight: 300;
src: url('fonts/fa-light-300.eot');
src: url('fonts/fa-light-300.eot?#iefix') format('embedded-opentype'),
url('fonts/fa-light-300.woff2') format('woff2'),
url('fonts/fa-light-300.woff') format('woff'),
url('fonts/fa-light-300.ttf') format('truetype'),
url('fonts/fa-light-300.svg#fontawesome') format('svg');
  }
  @font-face {
font-family: 'FontAwesome Regular';
font-style: normal;
font-weight: 400;
src: url('fonts/fa-regular-400.eot');
src: url('fonts/fa-regular-400.eot?#iefix') format('embedded-opentype'),
url('fonts/fa-regular-400.woff2') format('woff2'),
url('fonts/fa-regular-400.woff') format('woff'),
url('fonts/fa-regular-400.ttf') format('truetype'),
url('fonts/fa-regular-400.svg#fontawesome') format('svg');
  }
  @font-face {
font-family: 'FontAwesome';
font-style: normal;
font-weight: 900;
src: url('fonts/fa-solid-900.eot');
src: url('fonts/fa-solid-900.eot?#iefix') format('embedded-opentype'),
url('fonts/fa-solid-900.woff2') format('woff2'),
url('fonts/fa-solid-900.woff') format('woff'),
url('fonts/fa-solid-900.ttf') format('truetype'),
url('fonts/fa-solid-900.svg#fontawesome') format('svg');
  }

#main { max-width: 1920px;  overflow: hidden;} 

/* ------------- header ---------------- */

#header { max-width: 100%; margin: 0px auto; position: relative;}
#header .top-content { position: absolute; z-index: 5; height: 100%; width: 100%; margin: 0px auto;top: 0px;}
#header .top-content-inner { position: relative; z-index: 5; height: 100%; width: 1670px; margin: 0px auto;max-width: 90%;display: flex;}


.topzeile { width: 100%;display: flex; justify-content: space-between;}

#header .top-content { background-image: linear-gradient(to bottom, black 0%, rgba(168, 185, 209, 0.0) 40%);}

#header .toplinks ul {  list-style-type: none;  text-align: right; }

#header .logo { position: relative; z-index: 3; }

#header #nav { position: relative;top: 55px; flex-basis: 50%;}

#header .fb-icon { margin-top: 55px;}
#header a.fb img { width: 50px; color: #fff; filter: invert(1); margin-left: 10px;}
#header a.gs img { width: auto; color: #fff; margin-right: 20px; }


/* Headerbild */
.headerbild {
    /*! overflow: hidden; */
    position: relative;
    top: 0px;
    width: 100%;
	  z-index: 0;
    text-align: center; 
}

.headerbild img { margin: 0px auto;display: block;width: 100%;} 




.ym-cbox {    padding: 0 0px; }

.maxbreite_home1 { width: 1670px; margin: 0px auto;overflow:  hidden; margin-bottom: 200px;max-width: 90%;}
.maxbreite_home1 .ym-gl {}
.maxbreite_home1 .ym-gr { width: 47.6% !important; margin-left: 0px !important; max-height: 900px; overflow: hidden; position: relative;}
.bx-wrapper {
    -moz-box-shadow: 0 0 0px #ccc;
    -webkit-box-shadow: 0 0 0px #ccc;
    box-shadow: 0 0 0px #ccc;
    border: 0px solid #fff;
    background: #fff;
    margin-bottom: 0px;
}

.maxbreite_home1 .ym-gr figure { text-align: right;position: relative;}
.maxbreite_home1 .ym-gr figcaption { display: inline-block;  background: rgba(255,255,255,0.6); position: absolute; bottom: 0px;  padding: 5px 10px;right:  0px;}

.maxbreite_home1 .summary { color: #fff; position: relative; background: rgba(0,0,0,0.7); 
	height: 270px; padding: 60px; 
box-sizing: border-box;
}

.maxbreite_home1 .description { display: none}
.maxbreite_home1 .zmlinktodata { display: inline-block;  background: #fff; padding: 15px 12px;margin-top: 20px;}
.maxbreite_home1 .zmlinktodata a {color: #184664; }
.maxbreite_home1 .bx-pager { position: absolute; padding-top: 0px;}


.maxbreite_home1  .bx-wrapper .bx-pager, .maxbreite_home1  .bx-wrapper .bx-controls-auto {
    position: absolute;
    bottom: 30px;
    width: 100%;
}

.bx-wrapper .bx-controls-direction a {
    /*! top: 50%; */
}

.redleft { border-left: 20px solid #d83c06; padding-left: 100px; margin-top: 100px; padding-right: 110px;}
.redleft h2 {  font-size: 60px; text-transform: uppercase; line-height: 55px;}
.redleft h3 { font-size: 20px; color: #d83c06; text-transform: uppercase; line-height: 20px;}
.redleft p { margin-top: 50px;font-size: 18px;}
.redleft a.internerLink { display: inline-block; width: 150px; margin-top: 40px; text-align: center; text-transform: uppercase; text-decoration: none; color:#ffffff; padding: 15px 12px; background-color: #184664;}



.maxbreite_home2 { max-width: 1796px; margin-bottom: 240px;width: 100%;} 
.redright {  padding-left: 100px; margin-top: 0px; padding-right: 110px;/*! box-sizing: border-box; */}
.redright h2 {  font-size: 60px; text-transform: uppercase; line-height: 55px; padding-right: 100px;margin-left: -5px;}
.redright h3 { font-size: 20px; color: #d83c06; text-transform: uppercase; line-height: 20px;}
.redright p { margin-top: 50px; padding-right: 100px; font-size: 18px;}
.redright a.internerLink { display: block; width: 150px; margin-top: 40px; text-align: center; text-transform: uppercase; text-decoration: none; color:#ffffff; padding: 15px 12px; background-color: #184664;}

.maxbreite_home2  img { max-width:100%;}

.maxbreite_home2 .composedcontent-preset_zeile { display: flex;}

.maxbreite_home2 .bx-controls { display: none; }
.maxbreite_home2 .bx-wrapper {   margin-bottom: 0px; }

.maxbreite_home2 .ym-g50.ym-gr {border-right: 20px solid #d83c06;margin-left: 0px;}


/*** Bei Suche auf Startseite, keine sonstigen Inhalte anzeigen ***/
.home.body_search .maxbreite_home1{ display: none;}
.home.body_search .maxbreite_home2 { display: none;}

.home.body_search #content { padding: 40px 0px;}
.home.body_search #content a {  color: #c6846d; }

  
/*** Suche ***/

.searchDiv .ergebnisseKopf {margin: 20px 0px;}

.searchDiv ul { list-style-type: none;}
.searchDiv li { margin-left: 0px; margin-bottom: 20px;list-style:none;}

.searchDiv li.jpeg { display: none;}
.searchDiv .pbsearch-autocomplete { padding: 10px; font-size: 1.2rem;}
.searchDiv #search_form button {padding: 9px; font-size: 1.2rem;}
.searchDiv #search_form > div > span { display: none;}
.searchDiv .searchPaging { display: none;}
.searchDiv #ergebnisseRumpf li h3 { font-size: 1.3rem;}
#extendedSearchSection  { display: none;}




/***  Search ***/

#header #quicksearch { position: absolute; bottom: 0px; background: transparent; width: 1670px; /*! right: 0px; */max-width: 100%;text-align: center;/*! left: 5%; */}

#quicksearch span { display: flex; align-items:  center; justify-content: space-between;}

form.quicksearch { width: 47.6%; background: #fff; position: relative; float: right; 	min-width: 100px; padding: 0px;text-align: left;box-sizing: border-box;padding-left: 40px;}

form.quicksearch label { font-size: 0; color: transparent; display: block;}

.quicksearchtext  {
    color: #184664;
    outline: none;
    background: none 0 0 white;
    height: 120px;
    margin: 0;
    padding: 0px 10px 0px 0px;
    font-size: 60px;
	text-transform: uppercase;
    box-sizing: border-box;
    border: 0px;
	font-family: RotisSansSerifPro;
	display: inline-block;
    width: 80%;
} 


.quicksearchimg  {
	color: #184664;
	margin: 0;
	line-height: 100px;
	text-align: center;
	cursor: pointer;
	position: relative;
	top: 0px;
	font-family: FontAwesome Light;
	border: 0;
	font-size: 60px;
	font-weight: normal;
	transform: scaleX(-1);
	margin-right: 10px;
	transition: 0.2s ease all;
	background:none;
}

.quicksearchimg:hover{color: #d83c06;}

#quicksearch .nowrap:after {
	background: url("../img/Icons/lupe.svg") no-repeat scroll center center rgba(0, 0, 0, 0);
	height: 40px;
	color: #184664;
	right: 0%;
	left: 0%;
	position: absolute;
	width: 100%;
	top: 20%;
	font-size: 1.2rem; 
	font-weight: 300;
}



/*** VK ***/


[hidden] {
    display: block;
}



/* -------------- Responsive Formate ----------------------- */


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


/*** Inhaltsbereich ***/

/* Zeile 1 */
.maxbreite_home1 { width: 100%;  margin-bottom: 100px; padding: 0 5%;max-width: 100%;}
    
.redleft { padding-left: 60px; margin-top: 100px; padding-right: 110px;}  
    
.redleft h2 { font-size: 3.8vW; line-height: 3.8vW;}    
 
 /*** VK Element ***/
.maxbreite_home1 .ym-gr { width: 47.6% !important; margin-left: 0px !important;    } 
.maxbreite_home1 figcaption { display: none;}
.maxbreite_home1 figure.bild { width: 100%; /*! height: 550px; */ overflow: hidden;} 
.maxbreite_home1 .ym-gr img { width: 100%;  min-height: auto;min-width: 100%;}         

    
    
/*** Zeile 2 ***/    
.maxbreite_home2 { width: 100%; overflow: hidden; padding-right: 5%;; margin-bottom: 150px;}	
    
.redright { padding-left: 100px; margin-top: 20px; padding-right: 60px; }    
.redright h2 {  font-size: 3.8vW; line-height: 3.8vW; padding-right: 0px;}
.redright p {    margin-top: 50px;   padding-right: 5%; }
    
/*** Footer ***/    
#footer .composedcontent-preset_zeile { flex-wrap: wrap;}
#footer .composedcontent-preset_zeile .ym-g33 { float: none; flex-basis: 100%; }
#footer .composedcontent-preset_zeile .ym-g33 + .ym-g33 { float: none; flex-basis: 49%; padding: 50px 50px;}
#footer .composedcontent-preset_zeile .ym-g33 + .ym-g33 + .ym-g33 { float: none; flex-basis: 49%;  }

#footer .contentForm select { padding: 12px; width: 100%; }
#footer .contentForm input { padding: 12px; width: 100%; }
#footer .contentForm textarea {   width: 100%;}    
    
}




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

form.quicksearch { width: 45%; }
	
.quicksearchtext {
    height: 90px;
	font-size: 5vW;
}

	
/* Zeile 1 */
.redleft { padding-left: 40px; margin-top: 40px; padding-right: 30px;}  
.redleft h2 { font-size: 5vW; line-height: 5vW;}  
	
	
 /*** VK Element ***/
.maxbreite_home1 .ym-gr { width: 45% !important; margin-left: 0px !important;    }
.maxbreite_home1 figcaption { display: none;}
.maxbreite_home1 .summary {  padding: 30px;}       
.maxbreite_home1 .zmlinktodata {  padding: 10px 12px; } 
	
	
	
/*** Zeile 2 ***/    
.maxbreite_home2 { width: 100%; overflow: hidden; padding-right: 5%;; margin-bottom: 150px;}	
.maxbreite_home2 .subcl { height: 100%;}
.maxbreite_home2 .bx-wrapper { height: 100%;}
.maxbreite_home2 .bx-viewport { height: 100% !important;}
.maxbreite_home2 .bx-viewport div { height: 100% ;overflow: hidden;position: relative;}
	
.maxbreite_home2  figure { height: 100%; max-height: 100% !important; width: 100%; overflow: hidden;}
.maxbreite_home2  figure img { height: 100%; width: auto; max-width: none;max-height: 400px;}	
	
.redright { padding-left: 50px; margin-top: 20px; padding-right: 30px; }    
.redright h2 {  font-size: 40px; line-height: 40px; }
.redright p {    margin-top: 30px;   padding-right: 5%; }	
	

	
}


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

#quickLink1 li.right { display: none;}

#quicksearch .nowrap { display: flex;align-content: center; height: 100%; position: relative;}

	form.quicksearch { padding-left: 20px;}
.quicksearchtext { height: 70px;  } 
  .quicksearchimg {	 height: auto !important;    font-size: 40px; line-height:inherit;}
  

  .redright h2{margin:0px;}
	
/*** Footer ***/    
#footer .composedcontent-preset_zeile { flex-wrap: wrap; }
#footer .composedcontent-preset_zeile .ym-g33 { float: none; flex-basis: 100%; }
#footer .composedcontent-preset_zeile .ym-g33 + .ym-g33 { float: none;  flex-basis: 100%;  padding-bottom: 0px;}
#footer .composedcontent-preset_zeile .ym-g33 + .ym-g33 + .ym-g33 { float: none;  flex-basis: 100%;  padding: 0px 50px 50px 55px;}

#footer .contentForm select { padding: 12px; width: 100%; }
#footer .contentForm input { padding: 25px; width: 100%; font-size: 18px;}
#footer .contentForm textarea {   width: 100%;}    

#footer .adressblock { display: flex; justify-content:space-between;}	
	#footer .adressblock div { flex-basis: 48%;}	
	#footer .oeffnungszeiten p { margin-bottom: 10px;}
	
	#footer .footerlinks { width: 100%; text-align: center;}	
	
	
#footer .bottom .bottom-content {
    padding: 20px 40px;
}		
	
.body_search .ym-col2 { max-width: 90%; margin: 0px auto;width: 90%;margin-left: 5%;}	
	}



@media screen and ( max-width : 700px)   {
	
#quickLink1 { display: none;}
	#cmsmap {
    pointer-events: none;
}
	
	
.logo img { width: 100%;}
	
.headerbild { height: 200px; }	
.headerbild div { height: 100%;}	
.headerbild figure{ height: 100%;}
.headerbild img {
    max-width: none;
	height: 100%;
    min-width: 100%; 
}
	
	#header a.fb img {
    width: 20px;
    color: #fff;
    filter: invert(1);
		margin-top: 34px;
		margin-right: 40px;
}
	
#header a.gs img { display: none;}
	

#header	.top-content-inner { display: block;}	
#header .fb-icon {
    margin-top: 0px;
}	
	
	
form.quicksearch { width: 100%; height: 70px; display: block;}	

	.quicksearchtext {
    height: 70px;
	font-size: 8vW;
    height: 100%;
    top: 0px;
    position: relative;
    display: inline-block;
} 
	

.maxbreite_home1 { margin-bottom: 10px;}	
.maxbreite_home1 .composedcontent-preset_zeile	{ display: flex; flex-wrap: wrap;}
.maxbreite_home1 .composedcontent-preset_zeile	> div { flex-basis: 100%; float: none; width: auto !important;}
.maxbreite_home1 .composedcontent-preset_zeile .ym-gl { order: 2; }	
	
.maxbreite_home1 	.bx-wrapper {
    margin-bottom: 0px;
}


.maxbreite_home1 figure.bild {
    width: 100%;
    overflow: hidden;
}
.maxbreite_home1 .ym-gr img {
    width: 100%;
    height: auto;
}

	
.maxbreite_home1 .summary {
    color: #fff;
    position: relative;
    /*! top: -205px; */
    background: rgba(0,0,0,0.7);
    height: 200px;
 padding: 15px 30px;
}	
	
.maxbreite_home1 .composedcontent-preset_zeile .ym-gr h2 { font-size: 1.3rem;}

.maxbreite_home1 .zmlinktodata {
    margin-left: 0px;
	 padding: 4px 15px;
}	
	
.maxbreite_home1 .bx-pager {
    position: absolute;
    padding-top: 0px;
}	
	
.bx-wrapper .bx-controls-direction a {
    top: 32%;
}

	
/*** Zeile 2 ***/    
.maxbreite_home2 { width: 100%; overflow: hidden; padding: 5%;; margin-bottom: 50px;}	
.maxbreite_home2 .composedcontent-preset_zeile { flex-wrap: wrap;overflow: hidden;}
.maxbreite_home2 .composedcontent-preset_zeile	> div { flex-basis: 100%; float: none; width: auto;}	

.maxbreite_home2 .ym-gr {
    float: none;
    margin: 0 0 0 0px; margin-top: 40px;
}	
	
.maxbreite_home2 .subcl { height: 100%;}
.maxbreite_home2 .bx-wrapper { height: 100%;}
.maxbreite_home2 .bx-viewport { height: 100% !important;}
.maxbreite_home2 .bx-viewport div { height: 100% ;overflow: hidden;position: relative;}
	
.maxbreite_home2  figure { height: 100%; max-height: 100% !important; width: 100%; overflow: hidden;}
.maxbreite_home2  figure img { height: 100%; width: auto; max-width: none;max-height: 400px;}	
	
.redright { padding-left: 0px; margin-top: 20px; padding-right: 30px; }    
.redright h2 {  font-size: 40px; line-height: 40px; }
.redright p {    margin-top: 30px;   padding-right: 5%; }	
	
	
	
	
	
/*** Footer ***/    
#footer .composedcontent-preset_zeile { flex-wrap: wrap; }
#footer .composedcontent-preset_zeile .ym-g33 { float: none; flex-basis: 100%; }
#footer .composedcontent-preset_zeile .ym-g33 + .ym-g33 { float: none;  flex-basis: 100%;  padding-bottom: 0px;}
#footer .composedcontent-preset_zeile .ym-g33 + .ym-g33 + .ym-g33 { float: none;  flex-basis: 100%;  padding: 0px 50px 50px 55px;}

#footer .contentForm select { padding: 12px; width: 100%; }
#footer .contentForm input { padding: 25px; width: 100%; font-size: 18px;}
#footer .contentForm textarea {   width: 100%;}    

#footer .adressblock { display: flex; justify-content:space-between; flex-wrap: wrap;}	
#footer .adressblock div { flex-basis: 100%;}	
#footer .oeffnungszeiten p { margin-bottom: 10px;}
	
#footer .footerlinks { width: 100%; text-align: left;}	
	
	
#footer .bottom .bottom-content {
    padding: 20px 40px;
}		
	
}



@media screen and ( max-width : 500px)   {
	
.maxbreite_home1 .summary {
    height: 250px;
}	
	
.quicksearchimg { line-height: 100%; font-size:40px; }	
	
}




/* Map Anpassung FontAwesome */

#footer .map a {
    color: #184664;
}
#footer .map fa, #footer .map .fa-map-marker {
        font-family: FontAwesome Regular;
}


/* Suche Anpassung FontAwesome */
.search .wayhome{color:transparent;display: block; line-height: 1rem; font-size: 0.9rem;}
.search .wayhome a:after{font-size: 70%;font-family: 'FontAwesome Light'; color:#010101;content: "\f054";padding: 0px 0px 0px 10px;}
.search .wayhome a:last-of-type:after{content:'';}



/* Karte CCM Platzhalter */
.basecontent-dvv-karte{
    position: relative;
}
.basecontent-dvv-karte .ccm-plugin--script-placeholder {
  position: absolute;
  top: 20px;
  left: 20px;
  max-width: calc(100% - 40px);
  padding: 20px;
  border: 1px solid #ccc;
}
.basecontent-dvv-karte .ccm-plugin--script-placeholder button {
    background: #184664 !important; 
    color: white;
    padding: 10px;
    box-shadow: none;
    border: none;
    margin-top: 20px;
    cursor: pointer;
}
.basecontent-dvv-karte .ccm-plugin--script-placeholder button:hover {
    background: #153b55 !important; 
}
.basecontent-dvv-karte .ccm-plugin--script-placeholder h3 {
    margin-bottom: 20px;
}
