html, body {
    color: #006;
    margin: 0; 
    min-height: 100%;
    min-width: 100%;
	overflow-y: scroll;
    padding: 0;
	font-family: 'Roboto', sans-serif !important;
	}

 body { overflow-x: hidden; overflow-y: auto;}	

	
/* FlexiBox Modell ------------------------- */ 

#container {  
	display: -webkit-flex;
    display:         flex;
    -webkit-flex-flow: row wrap;
            flex-flow: row wrap;
    margin: 40px auto;
    max-width: 1024px;
    padding: 10px;
}
/*  zur Verwendung bei Containern mit floating Elements */
.cf:before,
.cf:after { content: ""; display: table; }
.cf:after { clear: both; }
.cf       { *zoom: 1; }

/* Mobile first - alle Dokument-Blöcke bekommen 100% Breite */
.slicknav_btn { background-color: #0ad !important;}

header {background: #fff !important; height: 140px; z-index:15;}

form, div, p {  margin: 0; padding: 0;   }
td, th, p, div, span { font-size: 16px ; padding: 0 2px 0 0; }
                  
header,
article,
section,
aside,
footer {    
	border-radius: 0px 0.5em 0.5em;
	border: none;
	padding: 10px;
		-webkit-flex: 1 100%;
	flex: 1 100%;
}
header {background-color: #fff;}

.headerBild { width: 290px; margin: 0 auto;}
            

header nav{
  display: flex;
  justify-content: center;
  align-items: center; 
    flex:         0 1 auto;
	-webkit-flex: 0 1 auto;   
}

section {border-color: slateblue; }

article { border-color: #ddd; margin: 3px 0; color: #006;}

aside {    
    margin: 5px 3px 0 0;
    width: 100%;
}
.BOX_R {
    height: auto;
    line-height: 12pt;
    margin: 0;
    width: 33%; }
.BOX_M {
    height: auto;
    line-height: 12pt;
    margin: 0;
    width: 33%; } 
.BOX_L {
    height: auto;
    line-height: 12pt;
    margin: 0;
    width: 33%; }
	
.BOX_R, .BOX_M {
    clear: right;
    float: right;
    padding: 0 0 0 15px; }
.BOX_L {
    clear: left;
    float: left;
    padding: 0 10px 0 0; }
.indicators, .controls {display: none;}
footer {
	border: 1px solid #ddd;
	display: block;
    text-align: center;
    margin: 5px 0 ;
    width: 100%;
}
 footer a{color:#006; text-decoration: none;}
 footer a:hover {color: #00aa00;}

.image-caption { font-size: 8pt; padding: 5px 0 0 5px; width: auto !important;}
.feuserpermit {max-width: 67%;}
/* Smart Phones und Tablets mit mittlerer Auflösung ehemals 35EM*/

@media all and (min-width: 625px) {
	header img { margin: 0 auto 10px; max-width: 100%;}
	article { webkit-order: 2; order: 2; margin: 3px 0; }
	
	#news {
		-webkit-flex: 1 auto;
		-webkit-order: 3;
		flex: 1 auto;
		order: 3;
	}
	aside {
		/* durch auto werden die beiden asides in eine Zeile gesetzt */
		
		-webkit-flex: 1 1 auto;
		-webikit-order: 4;
		flex: 1 1 auto;
		/*order: 4;*/
	}
	footer { webkit-order: 5; order: 5; }  
	}

@media all and (min-width: 800px) {
	article {
		/* Der Article wird 2.5x so breit wie die beiden asides! */
		

    color: #006;
    flex: 5 1 0;
	-webkit-flex: 5 1 0;
	-webkit-order: 3;
    font-family: "Roboto",sans-serif;
    margin: 5px 0 0;
    order: 3;
	}
	aside {
		flex: 1.7 1 0;
		margin: 5px 3px 0 0;
	}
	#news {
		-webkit-flex: 2 1 0;
		-webkit-order: 2;
		-webkit-align-self: center;
		flex: 2 1 0;
		order: 2;
		align-self: center;
		height: 120px;
	}
	}  


/*  ---- Ueberschriften ---- */

h1, h2, h3, h4, h5, h6 { width: 100%; margin: 0; padding: 0; font-family: 'Lato', sans-serif !important; font-weight: 500 }

h1 {
    /*border-bottom: 1px solid #E3A527;
	border-left:   5px solid #E3A527;
    font-style: italic;*/
    color: #006;
    font-size: 2em !important;
    line-height: 1.2em;
    margin: 8px 5px 6px 0;
    padding: 0 0 4px 0px;
   }

h2  {
    /*background-color: #cfe7fa;*/
    color: #006;
    font-size: 1.6em !important;
    letter-spacing: 2px;
    margin: 10px 5px 15px 0;
    padding: 4px 0 2px 0px;
     }

h3  {
    border-bottom: 1px solid #e3a527;
    border-left: 0 solid #04d129;
    clear: both;
    color: #006;
    font-size: 1.5rem !important;
    letter-spacing: 2px;
    line-height: 22px;
    margin: 5px 5px 10px 0;
    padding: 1px 0 2px 0; } 
    
h4 {margin: 10px 0;
    padding: 2px 0 2px 5px;}   
td, th, p, div, span { 	
	padding: 0 2px 0 0; } 
#footerBlock {
    -webkit-border-top-right-radius: 10px;
    -khtml-border-top-right-radius: 10px;
    -moz-border-radius-topright: 10px;
    border-top-right-radius: 10px;    }
    
#footerBlock a{ color:#006600; }
#footerBlock a:hover {color:#000; }

.footer_txt { font-size: 0.8em; }
    
/* CP- Form-field-Formular -----------*/
td.formField {
padding-bottom:5px;
vertical-align:top;
}
td.formLabelRequired, td.formLabel {
font-size:9px;
font-weight:normal;
padding-right:14px;
vertical-align:top;}
/* -------- Formatierung für Kontakt --------------*/

.emailForm input[type="text"], 
.emailForm input[type="email"], 
.emailForm textarea {
    display: block;
    width: 93%;
}
.emailForm { 
    margin: 0;
    max-width: 94%;
    padding: 0;
    position: relative;}
.form-emailForm {}

td.form-label required, td.form-label,
form-label required, form-label {
    padding: 8px 10px 3px 14px;
    font-size: 0.9em;
    text-align: left;
    vertical-align: top;
    width: 100%;
    }

td.form-field {
    padding: 0 0 0 14px;
    vertical-align: top;
}
    
tr.formLabel{background-color: #EEE8AA;}
.fehlerTxt {
    background-color: red;
    color: #FFFFFF;
    font-weight: bold;
    margin-bottom: 4px;
    margin-top: 4px;
    padding: 2px 0 2px 5px;
    text-align: center;
    }

div.formLabel{background-color: #EEE8AA;}

.fehlerTxt {
    background-color: red;
    color: #FFFFFF;
    font-weight: bold;
    margin-bottom: 4px;
    margin-top: 4px;
    padding: 2px 0 2px 5px;
    text-align: center;
    }

 
.listEntry { 	margin-bottom: 10px;}

.articleText { 	margin-bottom: 3px;	text-align: justify;}
.articleCode {
	margin-bottom: 3px;
	
	font-size: 12px;
}
.articleSummary {
	
	font-size: 11px;
	color: #000000;
	line-height: 135%;
}
.articleList_toptext {
	
	font-size: 10px;
}
.articleList_listhead {
	
	font-size: 11px;
	font-weight: bold;
}
.txt_article-summary{ float:left;margin: 0 20px 20px 0; }    
.suchen {  left: 15px; position: relative; top: -5px; width: 215px; }

/*  zur Verwendung bei Containern mit floating Elements */
  
.BOX_R, .BOX_L { margin: 0 0 1em 0;} 
.spaceBeforeCP   {margin-top: 0 !important;}
.active-header, .inactive-header { font-size: 1.1em !important; }

.image_caption:before { color: #990000; content: "Abb.: "; font-size: .8em;}
.image_caption {  font-size: 0.8em; margin: 0 auto; padding: 5px 0 0 5px; 
 text-align: center !important; width: auto !important; }
.imageEntry { margin: 0 5px 5px 0 !important; /* max-width: 96%; padding: 5px;*/}

 img, .image_img, .images, .imageEntry, .image-thumb, .banner, image-article-summary 
   { display: block; height: auto !important; max-width: 100%;}
/*  zur Verwendung bei Containern mit floating Elements */
.image-with-text:before,
.image-with-text:after { content: ""; display: table; clear: both; }

.image-with-text iframe   { *zoom: 1; width: 100% }
.image-thumb {margin: 4px 0; display: block; }     
.image_img { max-width: 100%; }


.image-table { margin: 0 auto;}

.imgtable-bottom-center, .imgtable-top-center {text-align: center;}
.image-wrapper{max-width:100%;height:auto;display:block;}

.nivoSlider { margin: 0 auto !important; max-width: 500px; width:auto !important; position: relative !important;  }
.theme-default .nivo-controlNav   {display: none;}
/* Start Text mit Bild Formatierung: imagetext.tmpl! -----*/
.image_td {margin-left: 1px; text-align: center;}     
.imgtxt-top-center img, 
.imgtxt-bottom-center img { padding: 5px; text-align: center;}    
.imgtxt-left, .imgtxt-right { height: auto; max-width: 100%; }
.imgtxt-right { float: right; margin: 0 0 1em 1em !important;}
.imgtxt-top-right, .imgtxt-bottom-right { margin: 0 0 1em 1em !important; }
.form-emailForm {overflow: hidden;}
/* ----------------------------------------------------------------- */
@media screen and (max-width: 599px) { 
body{background: #fff;}
header {background: #f8f4fe !important;}
#container {border: medium none; margin: 0 auto; padding: 0 5px !important;}
.imageEntry p {}
.Boxes {display:block !important;}
.BOX_L, .BOX_M, .BOX_R { width: 100% !important; }
.BOX_M {border-left: 0 solid !important}
.BOX_R div.image-with-text { border-left: 0; padding: 0 10px 4px; }  
.imgtxt-left, .imgtxt-right,
.imgtxt-top-right, .imgtxt-bottom-right { float: none !important; }
.image-td {/*max-width: 40%;*/}
.image-thumb { margin: 0; }
.video_div { min-width: 100% !important; }
.image-with-text p { margin: 1em 0 !important; }
.image-with-text ul {list-style-position: inside;  }
.image_img { margin: 0 auto;}
.imgtxt-column-left .imgtxt-column-left-text { width: 100% !important;}
.imgtxt-column-left .imgtxt-column-left-image { margin: 0; }
.txt_article-summary {float:none !important; padding-bottom: 20px;}
   } 

/* ----------------------------------------------------------------- */
@media screen and (max-width: 1023px)
{       
header {background: #f8f4fe !important;}
}


div.cpPagination {}
a.cpPaginate, a.cpPaginateActive, a.cpPaginationPrev, a.cpPaginationNext { }
a.cpPaginateActive {}

a.cpPaginationPrev:hover, a.cpPaginationNext:hover, a.cpPaginate:hover {}

 ul { list-style-position: outside;}
.ui-content img {
    box-shadow: 5px 5px 5px #999999;
    display: block;
    margin: auto;
    padding: 0;  }
.phpwcmsSearchResult { 	margin: 15px 0 15px 0; }
.phpwcmsSearchResult h3 {
	margin: 10px 0 1px 0;
	font-size: 1.1em;
	font-weight: bold;
}
.phpwcmsSearchResult p {
	margin: 0;
}
.phpwcmsSearchResult em.highlight, em.highlight {
	background-color: #FFFF00;
	font-style:inherit;
}
.phpwcmsArticleListEntry {
	clear: both;
}
.phpwcmsArticleListImage {
	float: left;
	margin-right: 10px;
	margin-bottom: 10px;
	padding-top: 3px;
}
.phpwcmsArticleListImageCaption {
	padding-top: 5px;
}
div.cpPagination { 	margin: 10px 0 10px 0; 	text-align: right; }
a.cpPaginate, a.cpPaginateActive, a.cpPaginationPrev, a.cpPaginationNext {
	padding: 0px 3px 1px 3px;
	background-color: #FFFFFF;
	color: #BBBBBB;
	text-decoration: none;
	font-weight: bold;
	border: 1px solid #CBCBCB;
}
a.cpPaginateActive {
	background-color: #CBCBCB;
	color: #FFFFFF;
	border: 1px inset #CBCBCB;
}
a.cpPaginationPrev:hover, 
a.cpPaginationNext:hover, 
a.cpPaginate:hover {background-color: #DDDDDD; color: #666666; border: 1px inset #CBCBCB; }