/* generic */

html {
	height: 100%;
}

body {
	margin: 0;					/* #### Webseiten-Abstand zum Browserfenster (auch margin-top, bottom, left, right möglich)*/
	padding: 0;
/*	background-image: url(../img/background.jpg);			/* #### background-Bild */
/*	background-size: 100%; */
/*	background-attachment: fixed;
/*	background-position: center top;						/* #### oder: center top bottom left right */
/*	background-repeat: repeat;								/* #### no-repeat hier eintragen bei grossem Hintergrundbild */
	color: #ffffff;				/* #### Textfarbe "(Fehler)meldungen" Kontaktformular" */
	font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
	text-decoration: none;
	height: 100%;
}

/* Ueberschriften h1 - h3 */
h1 {
	color: #ffffff;
	font-size: 16px;
	margin: 0;
	padding: 0;
	margin-bottom: 16px;
}

h2 {
	
}

h3 {
	margin-bottom: 4px;
	padding-bottom: 0;
}

/* überschriften:	bezieht sich auf "tiniEditor" wenn dort "überschrift 1" ausgewählt wird */
div.contentColumn h1 {
	color: #ffffff;				/* #### Überschrift 1 "Farbe" */
	text-shadow: 0px 0px 5px rgba(0,0,0,0.9);
	font-weight: 500;
	font-size: 26px;
	margin: 0;
	padding: 0;
	margin-bottom: 16px;
}

/* überschriften:	bezieht sich auf "tiniEditor" wenn dort "überschrift 2" ausgewählt wird */
div.contentColumn h2 {
	color: #ffffff;				/* #### Überschrift 2 "Farbe" */
	text-shadow: 0px 0px 5px rgba(0,0,0,0.9);
	font-weight: 500;
	font-size: 24px;
	margin: 0;
	padding: 0;
	margin-bottom: 16px;
}

/* überschriften:	bezieht sich auf "tiniEditor" wenn dort "überschrift 3" ausgewählt wird */
div.contentColumn h3 {
	color: #ffffff;				/* #### Überschrift 2 "Farbe" */
	text-shadow: 0px 0px 5px rgba(0,0,0,0.9);
	font-weight: 500;
	font-size: 24px;
	margin: 0;
	padding: 0;
	margin-bottom: 16px;
}

a {
	color: #00ccff;
	text-shadow: 0px 0px 5px rgba(0,0,0,0.9);
	font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
	text-decoration: underline;		/* #### Textunterstreichung "normaler Text" (verlinkter Text im Contentbereich) */
}

a:hover   {
	color: #dddddd;				/* #### Textfarbe "hover" (verlinkter Text im Contentbereich) */
	text-shadow: 0px 0px 5px rgba(0,0,0,0.9);
	font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
	text-decoration: underline;	/* #### Textunterstreichung "hover" (verlinkter Text im Contentbereich) */
}

a:active {
	color: #dddddd;
	text-shadow: 0px 0px 5px rgba(0,0,0,0.9);
	font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
	text-decoration: none;
}

p {
	color: #dddddd;				/* #### Textfarbe (normaler Text im Contentbereich) */
	text-shadow: 0px 0px 5px rgba(0,0,0,0.9);
	font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
	font-size: 18px;			/* #### Schriftgröße auch "27 Zeilen höher" auf dieselbe Schriftgröße einstellen */
/*	line-height: 20px;	*/		/* #### Zeilenhöhe ggf. hier für "Contenttext" einstellen */
	text-decoration: none;
	margin-top: 0;
	padding-top: 0;
}

td {
	vertical-align: top;
	color: #dddddd;				/* #### Textfarbe über "Kontaktformular-Eingabefelder" */
	text-shadow: 0px 0px 5px rgba(0,0,0,0.9);
	font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
	text-decoration: none;
}

form {
	margin: 0;
	padding: 0;
}

.pageWrapper {
	min-height: 100%;
	position: relative;
}

.upperWrapper {
	background-image: url(../img/background.jpg);
	background-size: 100%;
	background-attachment: local;
	background-position: center top;						/* #### oder: center top bottom left right */
	background-repeat: repeat;
}

.upperWrapper, .footer {
	width: 100%;				/* #### footer-Breite (des gesamten "footer-Bereich")*/
	margin-left: auto;
	margin-right: auto;
}

.header {
	background-image: url(../img/background.jpg);			/* #### header-Erweiterung-Bild */
	background-position: center top;
	height: auto;				/* #### Höhe "header" und gleichzeitig "Abstand Hauptmenü" von oben */
	position: relative;
}

.headerLogo {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	background-image: url(../img/topheaderBackground.gif);
	background-repeat: repeat;
	background-position: center;
}

.headerLogo img {
	height: 0px;				/* #### topheader aktivieren: feste höhe  "height: 70px;"  --- oder --- variable bildgröße:  "width: 100%; height:100%;"  hier eintragen */
	margin-left: auto;
	margin-right: auto;
	display: block;	
}

.menu {
	background-image: url(../img/background.jpg);			/* #### menu-Erweiterung-Bild */
	background-position: center top;
}

.menuToggleWrapper {
		
}

.menuIcon {
	width: 20px;
	height: 17px;
	display: inline-block;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url(../img/menuOpen.gif);
}

.closeMenuIcon {
	background-image: url(../img/menuClose.gif) !important;
}

								/* #### WEBSEITEN-ABSTÄNDE */
.content {						
	min-height: 0px;			/* #### Bereich Unterkante Hauptmenü bis Oberkante Fußzeile */
	padding-top: 0px;			/* #### Abstand von oben (ausgehend von Hauptmenü) */
	padding-left: 0px;			/* #### Abstand von links */
	padding-bottom: 560px;		/* #### Höhe "footer"  2x eintragen, siehe 6 Zeilen tiefer */
}

.footer {
	padding-top: 74px;			/* #### Textzeile im "footer" Abstand von oben */
	padding-left: 16px;			/* #### Textzeile im "footer" Abstand von links */
	padding-right: 16px;			/* #### Textzeile im "footer" Abstand von rechts */
	background-image: url(../img/footer.jpg);				/* #### footer-Bild */
	background-position: center bottom;
	height: 560px;				/* #### Höhe "footer"  2x eintragen, siehe 6 Zeilen höher (und auch 35 Zeilen tiefer, das spielt zusammen) */
	color: #dddddd;				/* #### Textfarbe "2015" "footer" */
	font-size: 10px;			/* #### Schriftgröße innerhalb der Fußzeile */
	position: relative;
	box-sizing: border-box;
}

.footerWrapper {
	position: absolute;
	width: 100%;
	bottom: 0px;
	left: 0px;
	/*
	background-image: url("../img/footer.jpg");				/* #### footer-Erweiterung-Bild */
	background-position: center bottom;
	*/
}

.footerWrapper a {
	color: #dddddd;				/* #### Textfarbe "©" "footer" */ 
}

.upperFooter {
	padding-top: 20px;
	padding-bottom: 20px
}

.upperFooter p {
	color: #dddddd;				/* #### Textfarbe "Anfahrt" "footer" */
	font-size: 18px;
}

.mapWrapper {
	padding-top: 20px;
	padding-bottom: 240px;
	text-align: center;	
}
/*
.footerMap {
	width: 100%;
	height: 30px;				/* #### Höhe "footer" im Bereich der Karte, siehe auch 35 Zeilen höher, das spielt zusammen */
/*	background-image: url(../img/karte.gif);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}	*/

.socialLinks {
	margin-top: 0px;
	margin-bottom: 105px;
}

.socialLinks div {
	width: 33%;
	min-width: 60px;
	float: left;
	text-align: center;
}

.socialLinks img {
	width: 50px;
}

.lowerFooter {
	padding-top: 20px;
	padding-bottom: 20px;
}

.footerLinks {
	float: right;
	margin-left: 1px;			/* #### Abstand der "socialbuttons" von links */
	color: #dddddd;
}

.footerLinks a {
	margin: 0 10px;				/* #### Abstände zwischen Text und Trennstrichen */
	color: #dddddd;				/* #### Textfarbe "Impressum/Datenschutz" "footer" */
}

.footerCopyright {
	float: left;				/* #### copyright-text links/rechts */
}

/* newsdesign hauptbild hintergrundfarbe */
body.popup {
	background-image: url(../img/verlauf-newsbild.jpg);
	text-align: center;
}
/* newsdesign hauptbild umrandung */
body.popup img {
	border: 1px solid #000000;
}
/* newsdesign hauptbild hover umrandung */
body.popup img:hover {
	border: 1px solid #ffffff;
	cursor: pointer
}

/* untermenü position + abstand nach rechts zu tumbnail oder text (einstellungen aus früherer cms-Version) */
div.naviColumn {
	margin-top: 0px;
	margin-left: 0px;
	width: 133px;
	float: left;
	margin-right: 7px;
	overflow: hidden;
}





/**** Kontaktformular ****/

/* kontaktformular */
.contactFormLeft {
	padding-bottom: 30px;
	padding-top: 16px;			/* #### Abstand von oben  "oberer kontaktformular-teil" (generelle abstände können für alle module gleichzeitig in "public.css" eingestellt werden) */
	margin-left: 16px;			/* #### Abstand von links "oberer kontaktformular-teil" (siehe auch 13 zeilen tiefer) */
	margin-bottom: 30px;
	position: relative;
/*	border-bottom: 1px solid #9f9f9f; */ 					/* #### Trennlinie im Kontaktformular */
}

.karte {
	position: absolute;			/* #### Position der "karte.jpg" im Kontaktformular */
	right: 154px;
	top: 121px;
}

.contactFormRight {
	margin-left: 16px;			/* #### Abstand von links "unterer kontaktformular-teil" (siehe auch 13 zeilen höher) */
	margin-right: 16px;
}

/* kontaktformular fehlermeldungen */
.errormsg {
	background-color: #FF6666;	/* #### Farbe des "Umrandungskasten" der Fehlermeldungen im Kontaktformular */
	width: 100%;
	padding: 2px 4px 2px 4px;	/* #### Größe des "Umrandungskasten" der Fehlermeldungen im Kontaktformular */
	margin: 0px;				/* #### Abstand von links des "Umrandungskasten" der Fehlermeldungen im Kontaktformular */
	font-size: 13px;			/* #### Größe der Schrift im "Umrandungskasten" der Fehlermeldungen im Kontaktformular */
}

table.contactTable {
	width: 100%;				/* #### Weite des "Eingabehhauptfeld" im Kontaktformular */
	border-collapse: collapse;
	border-spacing: 0;
	border: 0;
	border-width: 0;
	outline: 0;
	padding: 0;
	margin: 0 0 30px;
}

/* kontaktformular abstände gesamtgerüst*/
table.contactTable td {
	padding: 0 0 9px 0;			/* #### Abstand zwischen Eingabefeldern vertikal */
	margin: 0;
	font-size: 15px;			/* #### Schriftgröße "Text links neben Eingabefelder" */
	
	border: 0;
	border-width: 0;
	outline: 0;
}

/* kontaktformular weite komplett*/
table.contactTable td.fieldCol {
	width: 100%;
	margin: 0px;
}

/* kontaktformular eingabefelder padding:rahmenabstände nach innen*/
input.contactField {
	width: 100%;				/* #### Weite der oberen Eingabefelder */
	height: 26px;				/* #### Höhe der oberen Eingabefelder */
	border: 1px solid #404040;	/* #### Umrandung und Farbe der oberen Eingabefelder */
	padding: 1px 1px 1px 3px;	/* #### Größe der oberen Eingabefelder */
	margin: 0;
	box-sizing: border-box;
}

/* kontaktformular eingabefeld telefon padding:rahmenabstände nach innen*/
input.contactTelField {
	width: 129px;
	height: 26px;
	border: 1px solid #404040;
	padding: 1px 1px 1px 3px;
	margin: 0;
	box-sizing: border-box;
}

/* kontaktformular eingabehauptfeld padding:rahmenabstände nach innen*/
.contactMessage {
	width: 100%;
	height: 145px;
	padding: 1px 1px 1px 3px;
	border: 1px solid #404040;
	font-family: Arial,Helvetica;
	font-size: 13px;
	margin: 0;
	box-sizing: border-box;
}

/* kontaktformular absendebutton*/
.contactSubmit {
	margin-top: 10px;
	width: 100%;
	height: 30px;
	background-color: #0060ff;	/* #### senden-button farbe */
	border: 1px solid #000000;
	color: #ffffff;
}





/**** Adressblock und impressumLink ****/

/* adressblock links und rechts*/
a.mailLinkFarbe:hover {
	color: #ff0000;
	text-decoration: underline;
}

a.linkFarbe:hover {
	color: #ff0000;
	text-decoration: underline;
}

/* adressblock 3fach */
div.addressBlock p {
	margin: 0;
	padding: 0;
	margin-bottom: 4px;
	font-size: 12px;
}

div.addressLeft {
	float: left;
	width: 170px;
	margin-right: 20px;
}

div.addressRight {
	float: left;
	width: 150px;
}

div.addressRight a {
	color: #03459d;
}

div.addressRight a:hover {
	color: #03459d;
	text-decoration: underline;
}

div.addressBottom {
	margin-top: 20px;
}

div.addressBottom p {
	text-align: justify;
}

.thumbsTable {
	border-spacing: 0;
}

a.impressumLink {
	color: #000000;
	font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
	text-decoration: none;
}

a.impressumLink:hover {
	color: #000000;
	font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
	text-decoration: underline;
}

.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	/* padding-top: 25px; */
	height: 0;
}

.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.galerie-01, .galerie-02, .text-01, .text-02, .lightbox-01, .lightbox-02 {
	background-repeat: no-repeat;
	background-size: 100% auto;
}

.emptypage {
	background-image: url(../img/emptypage.jpg);
	background-size: 100%;
	background-attachment: local;
	background-position: center top;						/* #### oder: center top bottom left right */
	background-repeat: repeat;
}

.emptypage .content {
	padding-bottom: 0;
}

.emptypage .upperWrapper {
	background: none;
}