@charset "utf-8";
/* CSS Document */


/* Fonts */
@import url('fonts/Lato/stylesheet.css');
@import url('fonts/News_Cycle/stylesheet.css');
@import url('fonts/fontello.css');


/* Standard */
* { margin: 0px; padding: 0px; box-sizing: border-box; }

html { }
body { background: #F0F0F0; }
body,td,th { font-family: 'News Cycle', sans-serif; font-size: 17px; color: #444; line-height: 1.5; -webkit-hyphens: auto; -moz-hyphens: auto; -ms-hyphens: auto; hyphens: auto; }

#clearing, .clearing { clear: both; font-size: 0px; }
#clearleft, .clearleft { clear: left; font-size: 0px; }
#clearright, .clearright { clear: right; font-size: 0px; }
#clearfix, .clearfix { display: block !important; width: 100% !important; height: 0px !important; overflow: hidden !important; font-size: 0px !important; float: none !important; }
	#clearfix:after, .clearfix:after {
		content: ".";
		display: inline-block !important;
		height: 0px !important;
		width: 100% !important;
		clear: both;
		visibility: hidden !important;
		padding: 0px !important;
		margin: 0px !important;
		font-size: 0px !important;
	}


/* CTH Imprint */
.cthwebdesign { text-transform: uppercase; font-size: 11px; text-align: center; }
	.cthwebdesign a { text-decoration: none !important; }
	
.sr-only { position: absolute; top: auto; left: -10000em; border: 0; clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; width: 1px; }



/* Allgemein */
h1, h2, h3, h4, h5, h6 {
	font-size: 29px;
	color: #959f78;
	margin: 0px 0px 30px 0px;
	font-weight: 300;
	line-height: 1.2;
}
/* h1:after, h2:after, h3:after, h4:after, h5:after, h6:after { content: ''; display: block; border-bottom: 1px solid #aebd83; width: 80px; margin: 5px auto 0px; border-radius: 5px; } */

h2, h3, h4, h5, h6 { margin-bottom: 30px; }
h2 { font-size: 26px; }
h3 { font-size: 22px; }
h4 { font-size: 20px; }
h5, h6 { font-size: 18px; }


h1.seitenueberschrift { font-family: 'Lato', sans-serif; font-size: 31px; font-weight: 300; text-transform: uppercase; text-align: left; padding: 0px; margin: 0px 0px 37px 0px; color: #018836; }
	h1.seitenueberschrift span { display: block; font-size: 20px; margin: 2px 0px 0px; color: #666; text-transform: none; }
	h1.seitenueberschrift:after {  content: ''; display: block; height: 4px; background: #018836; width: 120px; margin: 32px auto 0px; border-radius: 5px; box-shadow: rgba(0, 0, 0, 0.07) 0px 1px 2px, rgba(0, 0, 0, 0.07) 0px 2px 4px, rgba(0, 0, 0, 0.07) 0px 4px 8px, rgba(0, 0, 0, 0.07) 0px 8px 16px, rgba(0, 0, 0, 0.07) 0px 16px 32px, rgba(0, 0, 0, 0.07) 0px 32px 64px; }
h1.seitenueberschrift.left { text-align: left; }
h1.seitenueberschrift.center { text-align: center; }
h1.seitenueberschrift.right { text-align: right; }

h1.left:after, h2.left:after, h3.left:after, h4.left:after, h5.left:after, h6.left:after{ margin-left: 15px; }
h1.right:after, h2.right:after, h3.right:after, h4.right:after, h5.right:after, h6.right:after{ margin-right: 15px; }
h1.seitenueberschrift.left:after { margin-left: -20px; }
h1.seitenueberschrift.right:after { margin-right: -20px;  }

.ueberschrift h1, .ueberschrift h2, .ueberschrift h3, .ueberschrift h4, .ueberschrift h5, .ueberschrift h6 { }


p { margin-bottom: 15px; min-height: 1px; }

a { color: #666; -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -ms-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; }
a:hover { text-decoration: none; }
a img { border: none; }

hr { height: 0px; width: 100%; text-decoration: none; text-align: center; border-top-width: 1px; border-top-style: dotted; border-top-color: #999999; margin: 20px 0px; }

ul { list-style-type: square; margin-left: 25px; line-height: 1.25; margin-bottom: 15px; }
li { margin-bottom: 4px; }
ol { margin-left: 25px; line-height: 1.25; list-style-position: inside; }




/* Blöcke */
main, header, section, nav, article, footer, .slider { display: block; position: relative; }
.inner { max-width: 1150px; margin: 0px auto; position: relative; }


/*main { max-width: 1000px; margin: 0px auto; }*/

header { background: #FFF; z-index: 100; padding: 0px 20px; text-align: left; }
	header .inner { max-width: 1150px; padding: 0px; display: table; width: 100%; }
	header .inner > div { display: table-cell; vertical-align: top; }
	
.logo { display: inline-block; padding: 30px 0px 28px; }
	.logo img { width: auto; max-height: 77px; }
	.logo.alwayscenter { text-align: center !important; }
.quickcontacts { text-align: right; }
.quickcontact { position: relative; display: inline-block; margin: 0px 0px 0px 60px; padding-top: 60px; text-align: left; font-size: 14px; font-weight: normal; color: #000; vertical-align: top; }
	.quickcontact i { position: absolute; left: -27px; top: -8px; font-size: 95px; color: #aebd83; z-index: 0; opacity: 0.3; }
		.quickcontact i:before { width: auto; margin: 0px; }
	.quickcontact a { text-decoration: none; color: #000; position: relative; z-index: 5; }
	.qc-location { padding-top: 25px; line-height: 1.4; }
	.qc-phone i { }
	.qc-trenner { display: block; height: 10px; }

.navopener, #mobileNav { display: none; }
#mobileNav { position: fixed; top: 0px; right: -250px; }

nav { font-family: 'News Cycle', sans-serif; font-size: 20px; font-weight: 400; color: #FFF; text-transform: uppercase; text-align: left; padding: 0px 20px; background: #018836; z-index: 100; }
	nav:before { content: ''; position: absolute; top: 0px; left: 0px; width: 100%; height: 7px; box-shadow: inset 0 4px 4px 0 rgba(0,0,0,0.65); z-index: 10; pointer-events: none; }
	nav.fixto-fixed { box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px; }
nav ul { list-style-type: none; line-height: normal; margin: 0px auto; padding: 0px; max-width: 1150px; }
nav li { display: inline-block; margin: 0px; position: relative; }
	nav li:first-child { border: none; }
nav li a { color: #FFF; background: none; display: block; text-decoration: none; padding: 13px 20px; position: relative; z-index: 5; transition: none; }
nav li a:not(.nav-home):hover, nav li a.selected { color: #000; background-color: #ccd9bf; }
nav li.markit a { }
nav ul ul ul { display: none; }


/* Klappmenüsteuerung CSS-Klappmenü */
/* 
==================================================================
This copyright notice must be untouched at all times. The original version of this stylesheet and the associated (x)html is available at http://www.cssplay.co.uk/menus/dd_valid.html
Copyright (c) 2005-2007 Stu Nicholls. All rights reserved. This stylesheet and the assocaited (x)html may be modified in any way to fit your requirements.
==================================================================
*/

/* Anpassung der Hauptebene - Klappmenü-Opener */
ul.dropdown { z-index: 100 !important; position: relative; }
ul.dropdown li { position: relative; }
ul.dropdown li.haschilds > a { background-image: url(nav-haschilds.png); background-position: right center; background-repeat: no-repeat; padding-right: 25px; }
ul.dropdown li.haschilds:hover { }
ul.dropdown > li:hover > a:not(.nav-home) { background-color: #ccd9bf; color: #000; }

/* Design des Klappmenüs */
ul.dropdown ul { visibility: hidden; position: absolute; transform: translateY(30px); transition: all 0.25s ease-in-out; top: 54px; left: 0%; float: none; margin: 0px 0px 0px 0px; padding: 5px 0px 0px; z-index: 10000 !important; width: 200px; height: auto; text-transform: none; opacity: 0; background: none; }
	ul.dropdown ul:after { content:''; position: absolute; z-index: 0; top: 5px; left: 0px; right: 0px; bottom: 0px; box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px; }
ul.dropdown ul li { margin: 0px; padding: 0px; display: block; float: none; height: auto; min-height: 0px; width: auto; border: none; background-color: #ccd9bf; }		
ul.dropdown ul li.first { }

/* links */
ul.dropdown li:hover ul li a.hide { color: #000; background: none; }
ul.dropdown li:hover ul li:hover a.hide { background: none; color: #FFF; }
ul.dropdown ul li a, ul.dropdown li:hover ul li a { display: block; color: #000; margin: 0px; padding: 10px 15px; height: auto; font-family: 'Lato', sans-serif; font-size: 14px; text-transform: uppercase; }
ul.dropdown ul li a.first { border: none !important; }
ul.dropdown ul li a:hover, ul.dropdown ul li a.selected { background: #adbc82; color: #FFF; }

/* show + hide Status */
ul.dropdown li:hover ul, ul.dropdown a:hover ul {
	/* show */
	visibility: visible; opacity: 1; transition: all .25s ease-in-out; transform: translateY(0px); }
ul.dropdown:hover ul ul, ul.dropdown:hover ul:hover ul ul, ul.dropdown:hover ul:hover ul, ul.dropdown:hover ul:hover ul:hover ul {
	/* hide */
	visibility: hidden; opacity: 0; transition: all .25s ease-in-out; transform: translateY(30px); }	

/* Klappmenü - ENDE */


.navopener, .navcloser { display: none; }
.navtop { position: fixed; bottom: 32px; right: -50px; z-index: 1000; display: block; width: 40px; height: 40px; margin: 0px auto; cursor: pointer; background: #018836; border-radius: 50%; text-align: center; color: #FFF; font-size: 25px; line-height: 32px; vertical-align: middle; text-align: center;
	-webkit-transition: all 350ms cubic-bezier(0.600, 0, 0.735, 0.045); transition: all 350ms cubic-bezier(0.600, -0.280, 0.735, 0.045); 				/* easeInBack */
	-webkit-transition-timing-function: cubic-bezier(0.600, 0, 0.735, 0.045); transition-timing-function: cubic-bezier(0.600, -0.280, 0.735, 0.045); 	/* easeInBack */
}
	.navtop:hover { background: #FFF; color: #000; box-shadow: 2px 2px 7px 0px rgba(0,0,0, 0.35); }
	.navtop span { display: none; }
.navtop.ntshow { right: 20px;
	-webkit-transition: all 350ms cubic-bezier(0.175, 0.885, 0.320, 1); transition: all 350ms cubic-bezier(0.175, 0.885, 0.320, 1.275); 				/* easeOutBack */
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.275);		/* easeOutBack */
}


.slider-wrapper { position: relative; max-width: 1150px; margin: 0px auto; }
	.slider-wrapper:before, .slider-wrapper:after { content: ''; position: absolute; bottom: -10px; left: -10px; z-index: 10; width: 0px; height: 0px; border-style: solid; border-width: 0 10px 10px 0; border-color: transparent #000000 transparent transparent; }
	.slider-wrapper:after { left: auto; right: -10px; border-width: 10px 10px 0 0; border-color: #000000 transparent transparent transparent; }

.slider { /*width: 100%;*/ height: 300px; overflow: hidden; background: rgba(0,0,0, 0.1); z-index: 5; margin: 0px -10px; }
#mainSlider, .sliderBackgroundImage { width: 100%; height: 100%; position: relative; }	/*, #mainSlider > div*/
	#mainSlider .slick-list, #mainSlider .slick-track { height: 100%; }
	#mainSlider .slick-slide { background-size: cover; background-position: center center; }
	#mainSlider .slick-dots { position: absolute; bottom: 5px; left: 9px; list-style-type: none; line-height: normal; margin: 0px; padding: 0px; }
		#mainSlider .slick-dots li { display: inline-block; width: 10px; height: 10px; margin: 0px 5px 0px 0px; background: rgba(255,255,255, 0.8); border: none; border-radius: 50%; }
			#mainSlider .slick-dots li.slick-active { background: rgba(255,255,255, 0.5); }
		#mainSlider .slick-dots button { display: none; }
.sliderBackgroundImage { background-size: cover; background-position: center center; }


.content-wrapper { position: relative; background: #F0F0F0; padding: 30px 30px 100px; }
	.content-wrapper:before { content: ''; position: absolute; top: 0px; left: 0px; width: 100%; height: 360px; z-index: 1; 
		background: #dde1e6;
		background: -moz-linear-gradient(top, #ccd9bf 0%, #adbc82 100%);
		background: -webkit-linear-gradient(top, #ccd9bf 0%,#adbc82 100%);
		background: linear-gradient(to bottom, #ccd9bf 0%,#adbc82 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ccd9bf', endColorstr='#adbc82',GradientType=0 );
	}
section { max-width: 1150px; margin: 0px auto; padding: 55px 50px 0px; letter-spacing: 0.02em; background: #FFF; word-wrap: break-word; z-index: 5; box-shadow: rgba(0, 0, 0, 0.2) 0px 60px 40px -7px; }
.content img { max-width: 100%; height: auto; }		/* maximale Bildbreite bei mobiler Ansicht für Inhaltsbilder */


footer { max-width: 1150px; margin: 0px auto; padding: 80px 0px 30px; font-size: 16px; font-weight: 300; color: #666; letter-spacing: 0.02em; text-align: center; /*background: #FFF;*/ }
footer .inner { padding: 30px 0px 20px; border-top: 1px solid #CCC; }
footer a { color: #666; text-decoration: none; }
	footer a:hover { color: #000; }
	
.footerline { padding: 0px 20px; }

footer nav { background: none; font-size: 14px; text-transform: uppercase; padding: 0px; text-align: center; }
	footer nav:before { display: none; }
footer nav ul { list-style-type: none; line-height: 2; margin: 0px; padding: 0px; }
footer nav li { display: inline-block; padding: 0px; margin: 0px 15px; line-height: normal; border: none; background: none; }
	footer nav li:before { display: none; }
footer nav li a { color: #666; background: none; padding: 0px; }
footer nav li a:hover, footer nav li a.selected { color: #000; background: none !important; text-decoration: underline; }

.fbox { position: relative; z-index: 5; display: inline-block; width: auto; width: 300px; vertical-align: top; margin: 0px 40px; }
.fbox span { display: block; text-transform: uppercase; font-weight: bold; margin: 0px 0px 25px; }
	/*.fbox span:after { content: ""; display: block; width: 50px; height: 3px; background: #31589D; margin: 14px 0px 15px; }*/


#directMap { position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; overflow: hidden; background: url(mapsdummy.jpg) center center no-repeat; background-size: cover; }
#directMap button { position: absolute; left: 50%; top: 50%; background: #FFF; border: 1px solid #EEE; border-bottom: 4px solid #CCC; padding: 10px 10px; border-radius: 6px; cursor: pointer; box-shadow: 2px 2px 5px 0px rgba(0,0,0, 0.25); transition: all 0.5s ease; }
	#directMap button:hover { box-shadow: 0px 0px 15px 0px rgba(0,0,0, 0.4); }
#directMap iframe { width: 100%; height: 100%; border: none; }



/* Content / Inhalte */
/* Modul: Cookinote */
#cookienote { display: none; position: fixed; z-index: 10000; top: 0px; left: 0px; right: 0px; padding: 12px 160px 12px 14px; background: #333; color: #FFF; font-size: 13px; box-shadow: 0px 2px 10px 0px #666; min-height: 62px; }
#cookienote a { color: #FFF; }
#cookienote a.cookienoteCloser { position: absolute; top: 13px; right: 13px; padding: 5px 10px; font-size: 16px; font-weight: bold; background: #FC0; color: #000; border-bottom: 4px solid #F90; text-decoration: none; border-radius: 6px; cursor: pointer; }
	#cookienote a.cookienoteCloser:hover { background: #FFF; }


/* Modul: Texte & Bilder Mehrspalter */
.multicol-wrapper { margin-bottom: 25px; display: block; }
.multicol-wrapper > div { display: inline-block; vertical-align: top; }
.multicol-inner { }
.multicol-clearing { clear: both; display: inline-block; width: 100%; height: 0px; visibility: hidden; padding: 0px; margin: 0px; }
.multicol-100 .multicol-col1 { float: none; display: block; }
.multicol-5050 > div { width: 50%; }
	.multicol-5050 .multicol-col1 > div { margin-right: 15px; }
	.multicol-5050 .multicol-col2 > div { margin-left: 15px; }
.multicol-7030 .multicol-col1 { width: 70%; }
	.multicol-7030 .multicol-col1 > div { margin-right: 15px; }
.multicol-7030 .multicol-col2 { width: 30%;}
	.multicol-7030 .multicol-col2 > div { margin-left: 15px; }
.multicol-3070 .multicol-col1 { width: 30%; }
	.multicol-3070 .multicol-col1 > div { margin-right: 15px; }
.multicol-3070 .multicol-col2 { width: 70%;}
	.multicol-3070 .multicol-col2 > div { margin-left: 15px; }
.multicol-333333 .multicol-col1, .multicol-333333 .multicol-col3 { width: 33%; }
	.multicol-333333 .multicol-col1 > div { margin-right: 15px; }
.multicol-333333 .multicol-col2 { width: 34%;}
	.multicol-333333 .multicol-col2 > div { margin: 0px 15px; }
	.multicol-333333 .multicol-col3 > div { margin-left: 15px; }
.multicol-502525 .multicol-col1 { width: 50%; }
	.multicol-502525 .multicol-col1 > div { margin-right: 15px; }
.multicol-502525 .multicol-col2, .multicol-502525 .multicol-col3 { width: 25%;}
	.multicol-502525 .multicol-col2 > div { margin: 0px 15px; }
	.multicol-502525 .multicol-col3 > div { margin-left: 15px; }
.multicol-255025 .multicol-col1, .multicol-255025 .multicol-col3 { width: 25%; }
	.multicol-255025 .multicol-col1 > div { margin-right: 15px; }
.multicol-255025 .multicol-col2 { width: 50%;}
	.multicol-255025 .multicol-col2 > div { margin: 0px 15px; }
	.multicol-255025 .multicol-col3 > div { margin-left: 15px; }
.multicol-252550 .multicol-col1, .multicol-252550 .multicol-col2 { width: 25%; }
	.multicol-252550 .multicol-col1 > div { margin-right: 15px; }
	.multicol-252550 .multicol-col2 > div { margin: 0px 15px; }
.multicol-252550 .multicol-col3 { width: 50%;}
	.multicol-252550 .multicol-col3 > div { margin-left: 15px; }
.multicol-25252525 > div { width: 25%; }
	.multicol-25252525 .multicol-col1 > div { margin-right: 15px; }
	.multicol-25252525 .multicol-col2 > div, .multicol-25252525 .multicol-col3 > div { margin: 0px 15px; }
	.multicol-25252525 .multicol-col4 > div { margin-left: 15px; }
.multicol-2020202020 > div { width: 20%; }
	.multicol-2020202020 .multicol-col1 > div { margin-right: 15px; }
	.multicol-2020202020 .multicol-col2 > div, .multicol-2020202020 .multicol-col3 > div, .multicol-2020202020 .multicol-col4 > div { margin: 0px 15px; }
	.multicol-2020202020 .multicol-col5 > div { margin-left: 15px; }

@media screen and (max-width:800px){
	.multicol-2020202020 > div { width: 33% !important; }
		.multicol-2020202020 > div > div { margin: 0px 15px 15px 0px !important; }
}
@media screen and (max-width:700px){
	.multicol-25252525 > div, .multicol-2020202020 > div { width: 50% !important; }
		.multicol-25252525 > div > div, .multicol-2020202020 > div > div { margin: 0px 15px 15px !important; }
}
@media screen and (max-width:600px){
	.multicol-333333 > div, .multicol-502525 > div, .multicol-255025 > div, .multicol-252550 > div, .multicol-25252525 > div, .multicol-2020202020 > div { display: block; width: auto !important; }
		.multicol-333333 > div > div, .multicol-502525 > div > div, .multicol-255025 > div > div, .multicol-252550 > div > div, .multicol-25252525 > div, .multicol-2020202020 > div > div { margin: 0px 0px 15px !important; }
}
@media screen and (max-width:550px){
	.multicol-5050 > div, .multicol-7030 > div, .multicol-3070 > div { display: block; width: auto !important; }
		.multicol-5050 > div > div, .multicol-7030 > div > div, .multicol-3070 > div > div { margin: 0px 0px 15px !important; }
}


/* Modul: Bildergalerie (Lightbox) */
.lbGalerie { display: block; margin: 0px; text-align: left; max-width: 800px; }
.lbGalerie .lbThumb { display: inline-block; background: #F8F8F8; margin: 4px 4px; border: 5px solid #CCC; vertical-align: top; transition: all 0.25s ease; }
	.lbGalerie .lbThumb:hover { /*box-shadow: 0px 0px 0px 7px #DDD;*/ }
	.lbGalerie .lbThumb a { display: block; width: 180px; height: 180px; background: no-repeat center center; background-size: cover; margin: 0px; padding: 0px; overflow: hidden; text-decoration: none; }
	.lbGalerie .lbThumb a img { margin: 0px; padding: 0px; visibility: hidden; }
.lbGalerie.left { margin: 0px auto 0px 0px; }
.lbGalerie.center { margin: 0px auto; }
.lbGalerie.right { margin: 0px 0px 0px auto; }
.lbGalerie-block { margin-bottom: 5px; }
.lbGalerie-block h3 { font-size: 17px; font-style: normal; line-height: 21px; font-weight: normal; margin: 0px; text-decoration: none; background-image: url(lbgalerie-block.png); background-repeat: no-repeat; background-position: left 1px; padding-left: 27px; vertical-align: middle; cursor: pointer; }
	.lbGalerie-block h3:after { display: none; }
.lbGalerie-block h3.active { color: #999; background-position: left -49px; }
.lbGalerie-block div { padding: 5px 0px 12px 11px; }
.lbGalerie-content a { color: #999; }


/* Modul: Formulargenerator */
.content form { margin: 0px auto; display: block; max-width: 1000px; }
.content form p { margin: 0px; }
.content form h5 { font-size: 13px; margin-bottom: 5px; }

.content label { display: none; width: 170px; margin: 0px 20px 0px 0px; text-align: left; }
.content input, .content textarea, .content select, .form-check-group { display: block; width: 100%; padding: 5px 10px; font-size: 17px; margin: 0px; color: #666; background: #eff3ec; border: 5px solid #eff3ec; color: #000; outline: none; border-radius: 5px; font-family: 'News Cycle', sans-serif; }
.content textarea { height: 100px; }
.content select { padding: 4px 10px; }

.content .form-group, .form-check-group { margin-bottom: 2%; }
.content .form-check-group label, .form-check-group .radio { display: inline-block; }
.content .form-check-group input { display: inline; margin-right: 5px; }
.content .form-check-group .radio { padding: 2px 0px; }

.content .form-miniheader { display: block; margin-bottom: 4px; }
.content .form2spalter { display: flex; justify-content: space-between; width: 100%; margin: 0px; }
.content .form2spalter > div { width: 49%; }

.content input.captcha { display: block; width: 112px; margin: 3px 0px 10px 190px; text-align: center; }
.content input.short { width: 60px; margin-right: 5px; }
.content input.half { width: 220px; }
.content input.auto { width: auto; }
.content select.half { width: 125px; }
.content input.inp50 { width: 50px; }
.content input.inpShorter { width: 238px; }

.content .form-captcha input { display: block; width: 112px; margin: 3px 0px 10px 190px; text-align: center; }
.content .form-captcha .input-group-btn { display: none; }

div.formSubmit { text-align: center; margin-top: 50px; }
.content button[type=submit] {	
	font-weight: bold;
	padding: 12px 20px; margin: 0px;
	width: 100%;
	max-width: 300px; 
	cursor: pointer;
	font-size: 15px;
	color: #FFF;
	background: #018836;
	border: none;
	text-transform: uppercase;
}
	.content button[type=submit]:hover { background: #808080; }

.content div.form-group { clear:both; }
.content p.formsubmit { padding-left: 190px; margin-left: 0px; }
.content p.formcaptcha { margin-top: 15px; }
.content div.radio-group > label { margin-bottom: 10px; }
.content div.radios { padding-bottom: 3px; }
.content div.radio label { margin-top: 0px; width: auto; }
.content div.radio input { width: auto; }
.content p.radio { display: inline; margin-right: 10px; }
.content p.radio input { width: auto; }
.content p.radio label { width: auto; float: none; text-align: left; margin: 0px 7px 0px 3px; }
.content label.checkbox { float: none; width: auto; }
.content input.checkbox { width: auto; -webkit-baseline-middle; }

.content .alert ul { color: #900; font-weight: bold; font-size: 14px; margin: 20px auto 40px auto; border: 1px solid #990000; padding: 10px 20px 10px 30px; -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2); box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2); background-color: #FAE7E7; }
.content .has-error input, .content .has-error select, .content .has-error textarea { background: #FAE7E7; }
.content .error, .content .has-error label { color: #900; }

.content p.formdse { display: inline; }
.content #yform-formular-kon_dse { padding: 0px; background: none; border: none; padding: 0px; }
.content #yform-formular-kon_dse label { display: inline; width: auto; margin: 0px; float: none; }
.content #yform-formular-kon_dse input { width: auto; padding: 0px; margin: 0px 5px 0px 0px; }

	
/* Modul: FAQ */
.faq { padding: 0px; margin: 0px auto 5px; position: relative; /*max-width: 850px;*/ }
.faq > h3 { font-size: 19px; font-style: normal; font-weight: 300; color: #FFF; text-align: left; vertical-align: middle; margin: 0px; line-height: 25px; text-decoration: none; background-image: url(faq-block.png); background-repeat: no-repeat; background-position: 10px 10px; padding: 10px 10px 10px 50px; cursor: pointer; background-color: #aebd83; }
	.faq > h3:hover { background-color: #808080; }
	.faq > h3:after { display: none; }
.faq > h3.active { background-position: 10px -130px; font-weight: 400; }
.faq > div { padding: 20px 24px; height: 0px; position: relative; background: rgba(204,217,191, 0.3); }
.faq .faq_spacer { display: block; height: 6px; }


/* Modul: Teamblock */
.teamblock { /*margin-bottom: 15px;*/ }
.tb-separator { display: none; height: 0px; overflow: hidden; }
.tb-box { position: relative; display: inline-block; width: 47%; height: 152px; overflow: hidden; margin: 0px 5% 45px 0px; vertical-align: top; background-color: #018836; padding: 0px; }
	.tb-box:last-child, .tb-box:nth-child(2) { margin-right: 0px; }
	.tb-box a { color: #FFF; text-decoration: none; }
	
.tb-box .tb-wrapper { display: table; table-layout: fixed; width: 100%; height: 100%; }
	.tb-box .tb-wrapper > div { display: table-cell; vertical-align: top; }
	
.tb-box .tb-img { position: relative; width: 109px; height: 100%; overflow: hidden; margin: 0px; }
	.tb-box .tb-img .tb-imgbg { width: 100%; height: 100%; background-size: cover; background-position: center center; background-image: url(teamblock-dummy.jpg); }
	.tb-box .tb-img a { position: absolute; top: 0px; left: 0px; z-index: 10; width: 100%; height: 100%; }
	.tb-box img { display: none !important; }
		.team-nopics .tb-box .tb-img { height: 70px; background: #3B6BA5; }
	.tb-box .tb-img .tb-name { display: none; }
		
.tb-box .tb-name { line-height: 25px; vertical-align: middle; color: #FFF; text-transform: uppercase; font-size: 18px; font-weight: 500; text-align: left; }
	
.tb-box .tb-cnt { position: relative; color: #FFF; text-align: left; padding: 15px; }
	.tb-box .tb-cnt .tb-name { display: block; }
	.tb-box .tb-info { display: block; /*height: 42px;*/ padding-bottom: 13px; overflow: hidden; }
	.tb-box .symbol { display: none; }
	.tb-box .tb-fon, .tb-box .tb-mail { overflow: hidden; }
.team-left { text-align: left; }
.team-center { text-align: center; }
.team-right { text-align: right; }


/* Modul: Einzelbild */
.singleImage {}
.singleImage-left { text-align: left; }
.singleImage-center { text-align: center; }
.singleImage-right { text-align: right; }


/* Modul: Youtube-Video */
.video-container { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; }
.video-container iframe, .video-container object, .video-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


/* Modul: Galerieübersicht */
.galpreview { display: inline-block; width: 225px; margin: 0px 30px 40px 0px; position: relative; vertical-align: top; }
.galpreview .gp-img { height: 165px; background-position: center center; background-size: cover; border: 5px solid #CCC; }
	.galpreview img { display: none; }
.galpreview span { display: block; font-size: 16px; font-weight: 500; color: #0A51A1; margin: 7px 0px 0px; }
.galpreview a { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }


/* Modul: Angebotsblöcke */
.offerbox { position: relative; max-width: 1155px; margin: 0px auto; text-align: center; font-size: 13px; line-height: 1.4; }
 	.offerbox.left { text-align: left; }
	.offerbox.center { text-align: center; }
	.offerbox.right { text-align: right; }
.offer { position: relative; display: inline-block; background: #FFF; width: 27%; height: auto; min-height: 200px; padding: 20px; transition: all 0.5s ease; cursor: default; text-align: left; vertical-align: top; box-shadow: 0px 8px 30px 3px rgba(0,0,0, 0.125); margin: 0px 3% 6%; }
	.offer:hover { transform: translateY(-15px); box-shadow: 0px 14px 30px 0px rgba(0,0,0, 0.20); }
.offer-image { text-align: center; font-size: 80px; color: #A6EBFF; padding: 5px 0px 0px; }
	.offer.hasnoimg .offer-image { display: none; }
.offer-head { font-size: 23px; font-weight: 900; color: #333; text-align: center; padding: 10px 0px 0px; line-height: 1.25; }
	.offer.hasnoimg .offer-head { padding-top: 0px; }
.offer-text { margin-top: 15px; color: #999; font-size: 16px; text-align: center; line-height: 1.6; }
.offer a { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }

.offerbox-pdf .offer {}
.offerbox-pdf .offer-image { background: center top; background-size: cover; padding: 0px; position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; z-index: 1; }
	.offerbox-pdf .offer-image img { display: none; }
.offerbox-pdf a { z-index: 5; }


/* Modul: Sitemap */
ul.sitemap { list-style-type: none; padding-left: 0px; margin: 0px; }
ul.sitemap-2spaltig > li { float: left;	margin-right: 5% !important; width: 45%; }
ul.sitemap li { display: block; padding: 2px 0px 0px 0px; margin: 0px 0px 30px 0px; font-size: 18px; }
ul.sitemap li a { display: block; padding: 0px 10px 3px 0px; text-decoration: none; border-bottom: 1px dotted #CCC; }
ul.sitemap li a:hover { text-decoration: underline; }
ul.sitemap li.spacer { list-style-image: none; list-style-type: none; }
ul.sitemap ul { margin: 3px 0px 0px 10px; }
ul.sitemap ul li { margin: 4px 0px 0px 0px; padding: 0px; font-size: 15px;  }	
ul.sitemap ul li a { color: #666; border: none; }
ul.sitemap ul li a:hover { }
ul.sitemap ul ul li { }
ul.sitemap ul ul li a { }


/* Modul: Produktliste */
.productlist {}
.productlist table { width: 100%; border: none; vertical-align: top; border-collapse: collapse; /*display: block;*/ /*overflow-x: auto;*/ }
.productlist table th { padding: 10px 10px; text-align: left; background: #aebd83; color: #FFF; vertical-align: bottom; word-break: break-all; }
.productlist table tr {}
	.productlist table tr:nth-child(odd) { background: rgba(204,217,191, 0.1); }
	.productlist table tr:nth-child(even) { background: rgba(204,217,191, 0.3); }
.productlist table td { padding: 7px 10px; vertical-align: top; text-align: left; border-right: 1px dotted rgba(198,208,215, 0.75); width: 150px; /*font-size: 0.9em;*/ word-break: break-all; }
	.productlist table td:nth-child(1) { display: flex; justify-content: space-between; width: auto; /*padding-right: 70px;*/ position: relative; }
	.productlist table td:last-child { width: 100px; border-right: none; text-align: right; }
.productlist span { display: block; }
	.productlist span.hide { display: none; }
	.productlist span.pl-title { margin-bottom: 7px; font-weight: bold; font-size: 1.1em; }
	.productlist span.pl-text { font-size: 0.9em; }
	.productlist span.pl-image { position: relative; display: inline-block; min-width: 50px; width: 50px; height: 50px; margin-left: 10px;	/*position: absolute; top: 7px; right: 7px; bottom: 7px;*/ border-radius: 5px; background-position: center center; background-size: cover; }
		.productlist span.pl-image a { display: block; width: 100%; height: 100%; background: none; margin: 0px; padding: 0px; }
.productlist a { background: #018836; color: #FFF; padding: 2px 8px; margin: 5px 1px; display: block; text-align: center; text-decoration: none; font-size: 0.9em; }
	.productlist a:hover { background: #808080; }
	.productlist a.ref-link {}
	.productlist a.ref-gallery {}


/* Responsive Tabellen */
.tablescroll { display: block; overflow: auto; overflow-x: auto; overflow-y: hidden; margin-bottom: 1em !important; }
.tablescroll::-webkit-scrollbar { -webkit-appearance: none; width: 14px; height: 14px; }
.tablescroll::-webkit-scrollbar-thumb { border-radius: 0px; border: 3px solid #FFF; border-left: none; border-right: none; background-color: rgba(0,0,0, 0.2); }



/* Sonstiges */
img.bild_links_mit_textfluss { text-align: left; margin-right: 20px; margin-bottom: 20px; float: left; }
img.bild_rechts_mit_textfluss { text-align: right; margin-bottom: 20px; margin-left: 20px; float: right; }
img.bild_links_mit_textfluss_und_rahmen { text-align: left; margin-right: 20px; margin-bottom: 20px; border: 7px solid #DDD; float: left; }
img.bild_rechts_mit_textfluss_und_rahmen { text-align: right; margin-bottom: 20px; margin-left: 20px; border: 7px solid #DDD; float: right; }
img.bild_rahmen { border: 7px solid #DDD; }

.text_standard { color: #444; text-decoration: none; font-style: normal; font-variant: normal; font-size: 1em; }
	.text_standard:hover { font-style: normal; }
.text_klein { text-decoration: none; font-style: normal; font-variant: normal; font-size: 0.75em; }
.text_grossbuchstaben { text-transform: uppercase; }
.text_einrueckung { margin-left: 1em; }

ul.liste_links, ol.liste_links { display: table; margin-left: 25px; margin-right: auto; }
ul.liste_mittig, ol.liste_mittig { display: table; margin-left: auto; margin-right: auto; }
ul.liste_rechts, ol.liste_rechts { display: table; margin-left: auto; margin-right: 0px; }

table.tabelle_links { margin-left: 0px; margin-right: auto; }
table.tabelle_mittig { margin-left: auto; margin-right: auto; }
table.tabelle_rechts { margin-left: auto; margin-right: 0px; }


a.link-historyback { padding: 25px 0px; }
.hide, .content-hide { display: none; }
.moveitout { position: absolute; top: -3000px; left: -3000px; }

.left { text-align: left; }
.center { text-align: center; }
.right { text-align: right; }
.justify { text-align: justify; }

.textfarbe_gruen { color: #018836; }
.textfarbe_grau { color: #808080; }

a.linkbox-gruen, a.linkbox-grau { text-decoration: none; text-transform: uppercase; font-size: 15px; margin: 0px 5px 5px 0px; padding: 12px 40px; background: #018836; font-weight: bold; color: #FFF; text-align: center; line-height: 1.75; }
	a.linkbox-gruen:hover { background: #808080; }
a.linkbox-grau { background: #808080; }
	a.linkbox-grau:hover { background: #444; }



/* TinyMCE Breitenbeschränkunen */
.maxwidth500 { max-width: 500px; margin: 0px auto; }
.maxwidth600 { max-width: 600px; margin: 0px auto; }
.maxwidth700 { max-width: 700px; margin: 0px auto; }
.maxwidth800 { max-width: 800px; margin: 0px auto; }
.maxwidth900 { max-width: 900px; margin: 0px auto; }
.maxwidth1000 { max-width: 1000px; margin: 0px auto; }
.maxwidth1100 { max-width: 1100px; margin: 0px auto; }
.maxwidth1200 { max-width: 1200px; margin: 0px auto; }
.maxwidth1300 { max-width: 1300px; margin: 0px auto; }
.maxwidth1400 { max-width: 1400px; margin: 0px auto; }
.maxwidth1500 { max-width: 1500px; margin: 0px auto; }



/* CTH Imprint */
.cthwebdesign { display: inline-block; text-transform: uppercase; font-size: 11px; text-align: center; }
	.cthwebdesign a { color: rgba(255,255,255, 0.5); text-decoration: none !important; }
	.cthwebdesign a:hover { color: rgba(255,255,255, 1); }


/* Hacks */
.ipad .content { }

#imagelightbox-overlay { background: rgba(0,0,0,0.65) !important; }
#imagelightbox-close { background: #CC0918 !important; border: none; top: 15px !important; right: 15px !important; width: 40px !important; height: 40px !important; border-radius: 0px !important; border: 5px solid #555; }
#imagelightbox-close:after, #imagelightbox-close:before { top: 33% !important; bottom: 33% !important; }
.imagelightbox-arrow, .imagelightbox-arrow:focus, .imagelightbox-arrow:hover { background: none !important; border: none; }


/*
.consent_manager-wrapper, .consent_manager-cookie-link-privacy-policy a { color: #333; } .pretty.p-icon .state label:before { margin-top: 0; } .consent_manager-buttons a, #consent_manager-toggle-details, a.ct-privacy-accept, a.consent_manager-show-box-reload { cursor: pointer; }
div.ct-privacy { position: relative; background-position: center center; background-size: cover; }
.video-container div.ct-privacy { position: absolute; top: 0; left: 0; }
a.ct-privacy-accept { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); display: inline-block; width: auto; height: auto; background: #900; color: #FFF; border-radius: 3px; padding: 5px 10px 6px; font-size: 14px; box-shadow: 2px 2px 5px 0px rgba(0,0,0, 0.3); text-align: center; }
	a.ct-privacy-accept:hover { background: #FFF; color: #000;}
a.consent_manager-close-box::before { left: 9px !important; }
*/

/*.consent_manager-save-selection, .consent_manager-accept-all { background: green !important; border-color: green !important; color: #FFF !important; }*/

.consent_manager-reopen { box-sizing: border-box; position: fixed; left: 10px; bottom: 10px; z-index: 10; width: 40px; height: 40px; background: #dbe8e9 center center; background-size: cover; border-radius: 50%; box-shadow: 1px 1px 4px 0px rgb(0 0 0 / 40%); overflow: hidden; cursor: pointer; opacity: 0; transition: opacity .25s ease-in-out; }
.consent_manager-reopen img { width: 70%; height: auto; display: inline-block; margin: 15%; opacity: 0.75; }
.cmcookieset .consent_manager-reopen { opacity: 1; }

.dcalendarpicker section { margin: 0px; padding: 0px; }