/* 
Farben:
Grau:      #a09b85
Hellgrau:  #f0efeb
Gruen:     #87c06a
Hellgruen: #dbecd2
Blau:      #526ca2
Hellblau:  #526ca2
Rot:       #ad2923
*/

body {
	color: black;
	font-size: 0.75em;
	font-family: "Lucida Grande", Geneva, Verdana, Helvetica, Arial, sans-serif;
	line-height: 1.4em;
}

h1 { /* Ohne Verwendung */
	font-weight: normal;
	font-size: 1.7em;
	margin: 0 auto 0.5em auto;
}

h2 { /* Grosse Themenueberschriften */
	font-weight: normal;
	font-size: 1.7em;
	line-height: 1.2em;
	margin: 0 auto 0.6em auto;
}

h3 { /* Kleine Themenueberschriften */
	font-size: 1.2em;
	line-height: 1.2em;
	margin: 0 auto 0.8em auto;
}

h4 { /* Zwischenueberschriften im Text, mit Abstand danach */
	font-size: 1em;
	margin: 0 auto 0.8em auto;
}

h5 { /* Zwischenueberschriften im Text, ohne Abstand danach */
	margin: 0 auto 0.1em auto;
	font-size: 0.9em;
	font-weight: bold;
}

p {
	margin: 0 auto 0.8em auto;
}

form {
	/* margin: 0 auto 0.8em auto; */
}

li {
	margin: 0 auto 0.4em auto;
}

a { text-decoration: none; }
a:link, a:visited { color: #ad2923; }
a:hover, a:focus { text-decoration: underline; color: #ad2923; }
a:active { color: #e66600; }

h2 a { text-decoration: none; }
h2 a:link, h2 a:visited { color: black; }
h2 a:hover, h2 a:focus { text-decoration: underline; color: black; }
h2 a:active { color: #e66600; }

h3 a { text-decoration: none; }
h3 a:link, h3 a:visited { color: black; }
h3 a:hover, h3 a:focus { text-decoration: underline; color: black; }
h3 a:active { color: #e66600; }

input, select, textarea, button {
	color: black;
	font-size: 1em;
}

em { font-style: normal; }

img, a { border: none; }

button {
	color: #ad2923; text-decoration: none;
	background: none;
	border: 0; margin: 0; padding: 0;
	width: auto; overflow: visible; /* fuer IE */
	cursor: pointer;
}

button:hover, button:focus { text-decoration: underline; color: #ad2923;  }
button:active { color: #e66600;  }

/* Uebergreifende Elemente und Klassen */

/* Philipp */
ul.csc-bulletlist li {
	font-weight: bold;
}

.inhalt img, .randspalte img {
	margin: 0.5em 0 1.25em 0;
}

.kleingedrucktes {
	font-size: 0.8em;
	color: #a09b85;
}

/* Navigation */

.navigation {
	font-size: 0.8em;
}

.navigation a { text-decoration: none; }
.navigation a:link, .navigation a:visited { color: black; }
.navigation a:hover, .navigation a:focus { text-decoration: underline; color: #ad2923; }
.navigation a:active { color: #e66600; }

.navigation.unten a { text-decoration: none; }
.navigation.unten a:link, .navigation.unten a:visited { color: #ad2923; }
.navigation.unten a:hover, .navigation.unten a:focus { text-decoration: underline; color: #ad2923; }
.navigation.unten a:active { color: #e66600; }

#navigation .gruppe li {
	font-weight: bold;
	line-height: 1.2em;
}

#navigation .gruppe ul ul li {
	font-weight: normal;
}

#navigation .mehr {
	font-size: 0.8em;
}

#navigation li a { text-decoration: none; }
#navigation li a:link, #navigation li a:visited { color: black; }
#navigation li a:hover, #navigation li a:focus { text-decoration: underline; color: #ad2923; }
#navigation li a:active { color: #e66600; }

#navigation ul ul li a:link, #navigation ul ul li a:visited { color: #333333; }
#navigation ul ul li a:hover, #navigation ul ul li a:focus { text-decoration: underline; color: #ad2923; }
#navigation ul ul li a:active { color: #e66600; }

#navigation input {
	text-align: right;
}

/* Kopf */

#kopf .navigation {
	text-align: right;
	color: white;
}

#kopf a { text-decoration: none; }
#kopf a:link, #kopf a:visited { color: white; }
#kopf a:hover, #kopf a:focus { text-decoration: underline; color: #ad2923; }
#kopf a:active { color: #e66600; }

/* Inhalt */

.inhalt h2 { /* Grosse Themenueberschriften */
	margin-top: 0.7em;
	margin-top: 0;
	padding-top: 0.3em;
}

.inhalt h3 { /* Kleine Themenueberschriften */
	font-size: 1.2em;
	margin: 0 auto 0.5em auto;
	padding-bottom: 0.4em;
	border-bottom: 1px solid #a09b85;
}

.block h2 {
	color: white;
	font-size: 1.2em;
	font-weight: bold;
	background-color: #a09b85;
	height: 26px; line-height: 26px;
	padding: 0 0.5em;
}

.gaeste h2 { background-color: #87c06a; }
.buerger h2 { background-color: #526ca2; }

/* Randspalte */

.randspalte h3 {
	font-size: 1em;
}

/* Terminkalender */

.tx-cal-controller h4 {
	margin-bottom: 0.1em;
}

/* Google-Anzeigen */

.anzeigen h3 {
	font-size: 1em;
	margin-bottom: 0;
}

.anzeigen p {
	margin-bottom: 0;
}

.anzeigen h5 {
	font-size: 0.8em;
	font-weight: normal;
	padding-bottom: 0.8em;
}

.anzeigen p.navigation a:link, .anzeigen p.navigation a:visited { color: black; }
.anzeigen p.navigation a:hover, .anzeigen p.navigation a:focus { text-decoration: underline; color: #ad2923; }
.anzeigen p.navigation a:active { color: #e66600; }

.anzeigen p a:link, .anzeigen a:visited { color: black; }
.anzeigen p a:hover, .anzeigen a:focus { text-decoration: none; color: black; }
.anzeigen p a:active { color: black; }

.anzeigen h5 a:link, .anzeigen h5 a:visited { color: black; }
.anzeigen h5 a:hover, .anzeigen h5 a:focus { text-decoration: underline; color: #ad2923; }
.anzeigen h5 a:active { color: #e66600; }

/********************/
/***** Struktur *****/
/********************/

body   {
	background: white url("/fileadmin/images/bkg_body.gif") repeat-y center top;
	text-align: center;
	margin: 0 auto
	}


#rahmen {
	margin: 0 auto;
	width: 970px; /* 910px */
}

#spalte_navigation  {
	background: url("/fileadmin/images/bkg_navigation.gif") no-repeat right top;
	text-align: right;
	width: 200px;
	height: auto !important;
	min-height: 470px;
	float: left
}


#spalte_inhalt  {
	background: url("/fileadmin/images/bkg_inhalt.gif") no-repeat left top;
	text-align: left;
	margin: 0;
	padding: 0 0 0 28px;
	width: 742px;
	height: auto !important;
	min-height: 470px;
	float: left
	}


/***** Uebergreifende Klassen und Elemente *****/

.links { float: left; }
.rechts { float: right; }

.clear { /* Wird Float benotigt, um den unteren Rand einer Box richtig darzustellen; */
	clear: both;
}

/* Listen */

ul {
	list-style: square outside;
	padding-left: 1.5em;
	margin-left: 0;
}

/* Philipp */
ul.csc-bulletlist  {
	list-style-image: url("/fileadmin/images/pfeil_vor.gif")
	}


/* Formulare */

form .pflicht { font-weight: bold; }

fieldset {
	border: none;
	margin: 0;
	padding: 0.8em 0 0 0;
	border-top: 1px solid #a09b85;
}

select {
	margin: 0.3em 0 0.3em -1px;
}

input.textfield, textarea {
	width: 100%; display: block;
}

input.radio, input.checkbox {
	margin: 0 0.5em 0 0;
}

.hervorhebung {
	background-color: #f0efeb;
	padding: 0.8em 0.9em 0.1em 0.9em;
	margin-bottom: 0.75em;
	border-left: 5px solid #ad2923;
}

form .fehlerhaft {
	color: #ad2923;
	border-left: 5px solid #ad2923;
	padding-left: 0.9em;
}

.fehlerhaft input.textfield, form .fehlerhaft textarea {
	background-color: #f0efeb;
}

/* Navigation */

#navigation {
	float: right;
	text-align: right;
	margin: 106px 0 0 0;
}

#navigation .gruppe  {
	background: #e2e1da url("/fileadmin/images/navigation/bkg_grau_0.gif") repeat-y right top;
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #efeeea
}


#navigation .gruppe#nav_gaeste  {
	background-image: url("/fileadmin/images/navigation/bkg_gruen_0.gif")
	}


#navigation .gruppe#nav_buerger  {
	background-image: url("/fileadmin/images/navigation/bkg_blau_0.gif")
	}


#navigation .abschluss  {
	background: url("/fileadmin/images/navigation/abschluss.gif") no-repeat right top;
	height: 92px
	}


#navigation .abschluss.mitte_1  {
	background-image: url("/fileadmin/images/navigation/abschluss_1.gif");
	height: 24px
	}


#navigation .abschluss.mitte_2  {
	background-image: url("/fileadmin/images/navigation/abschluss_2.gif");
	height: 24px
	}


#navigation h3 {
	height: 26px; line-height: 26px;
	border-bottom: 1px solid white;
	padding: 0 18px 0 6px;
	margin: 0;
}

#navigation ul {
	position: relative; /* wird fuer Bestimmung der Hoehe benoetigt */
	list-style: none outside;
	height: auto;
	overflow: hidden;
	margin: 0;
	padding: 0 18px 0 6px;
}

#navigation ul ul {
	list-style: none outside;
	overflow: hidden;
	margin: 0 0 0 1em;
	padding: 0 0.4em 0 0;
	height: auto;
	border-right: 2px solid #a09b85;
	/* Darstellungsfehler im IE */
	border-bottom: 0 !important; 
	border-bottom: 1px solid #e2e1da; 
}

#navigation #nav_gaeste ul ul { border-right-color: #87c06a; }
#navigation #nav_buerger ul ul { border-right-color: #526ca2; }

#navigation li {
	position: relative; /* wird fuer Bestimmung der Hoehe benoetigt */
	padding: 0.3em 0;
	margin: 0;
}

#navigation li.submenue {
	display: inline;
	padding: 0; margin: 0;
}

#navigation li.hidden {
	height: 0 !important; height: 0.40em; /* 5px; /* Ausgleich fuer den IE */
	line-height: 0; width: 0;
	padding: 0; margin: 0;
	overflow: hidden;
	/* display: none; */
}

#navigation form {
	margin: 0;
	margin: 0.5em 0 0 0;
}

#navigation input {
	margin: 0 18px 0 6px;
	width: 160px;
}

#navigation button {
	height: 19px; line-height: 19px;
}

#navigation .mehr  {
	line-height: 19px;
	background: #efeeea url("/fileadmin/images/navigation/bkg_grau_1.gif") repeat-y right top;
	margin: 0.5em 0 0;
	padding: 0 18px 0 6px;
	height: 19px
	}


/***** Inhalt *****/

#spalte_inhalt .inhalt {
	/* clear: left; */
	float: left; display: inline;
	width: 402px;
	margin: 0 18px 2em 0;
}

#spalte_inhalt .randspalte {
	float: left; display: inline;
	width: 234px;
	margin: 0 18px 2em 0;
}

#spalte_inhalt .navigation {
	border-bottom: 1px solid #a09b85;
	margin: 0 88px 0.7em 0; /* rechts: 88px (28px plus 60px Rand) */
}

#spalte_inhalt .navigation.unten {
	border-bottom: none;
	margin-bottom: 0.8em;
	border-top: 1px solid #ad2923;
	margin-top: 0.7em;
}

#spalte_inhalt .navigation.unten .links  {
	background: url("/fileadmin/images/pfeil_zurueck.gif") no-repeat left center;
	padding-left: 15px
	}


#spalte_inhalt .navigation.unten .rechts  {
	background: url("/fileadmin/images/pfeil_vor.gif") no-repeat right center;
	text-align: right;
	padding-right: 15px
	}


#spalte_inhalt .inhalt .navigation, #spalte_inhalt .randspalte .navigation {
	margin-left: 0;	margin-right: 0;
}

#spalte_inhalt .gaeste .navigation { border-color: #87c06a; }
#spalte_inhalt .buerger .navigation { border-color: #526ca2; }

#spalte_inhalt .zweispaltig { width: 150px; }
#spalte_inhalt .dreispaltig { width: 234px; }
#spalte_inhalt .vierspaltig { width: 318px; }
#spalte_inhalt .fuenfspaltig { width: 402px; }
#spalte_inhalt .sechsspaltig { width: 486px; }
#spalte_inhalt .achtspaltig { width: 654px; }

#spalte_inhalt .block {
	margin: 0 0 1em 0;
	border-bottom: 1px solid white; /* Sonst entsteht eine Luecke */
}

#spalte_inhalt .abschluss  {
	background: url("/fileadmin/images/logo.gif") no-repeat left top;
	margin: 0 0 0 550px;
	height: 124px;
	clear: both
	}


#spalte_inhalt .mit_vorschau img {
	float: left; display: inline;
	background-color: #eeeeee;
}

#spalte_inhalt .mit_vorschau .text {
	float: right; display: inline;
}

/* Philipp */
ul.browsebox {
	list-style: none;
}

/* Philipp */
ul.browsebox li {
	margin-left: 5px;
	margin-right: 5px;
	float:left; 
}

/* Philipp */
.tx-indexedsearch-res {
	margin-top: 50px;
}

/* Teaser auf der Startseite */

#spalte_inhalt .teaser {
	background-color: #dbecd2;
	margin: 0 0 2em 0;
	padding: 0 12px 4px 12px; 
}

#spalte_inhalt .teaser img {
	margin: 0 -12px 0 -12px;
}

#spalte_inhalt .teaser h2, #spalte_inhalt .teaser h4 {
	font-size: 1.5em;
	margin-bottom: 0.2em;
}

/*Kopf */

#kopf  {
	background: white url("/fileadmin/images/bkg_kopf.gif") no-repeat left top;
	margin-left: -28px;
	padding: 0;
	width: 710px;
	height: 304px
	}


#kopf .navigation {
	height: 21px;
	margin: 0;
	padding: 2px 1em 0 0;
	border: none;
}

#kopf .logo {
	height: 58px; width: 360px;
	overflow: hidden;
	margin-left: 26px; padding: 0;
}

#kopf .bild  {
	background: url("/fileadmin/images/bkg_bild.jpg") no-repeat left top;
	width: 710px;
	height: 212px;
	overflow: hidden
	}


/* Randspalte */

#spalte_inhalt .randspalte .block.allgemein { background-color: #f0efeb; padding: 0 12px; } 
#spalte_inhalt .randspalte .block.gaeste { background-color: #dbecd2; padding: 0 12px; }
#spalte_inhalt .randspalte .block.buerger { background-color: #cbd3e3; padding: 0 12px; }

#spalte_inhalt .randspalte .block.allgemein h2, #spalte_inhalt .randspalte .block.gaeste h2, #spalte_inhalt .randspalte .block.buerger h2 {
	margin: 0 -12px 10px -12px;
}

#spalte_inhalt .randspalte input.text {
	float: left; display: inline;
	width: 208px;
	vertical-align: middle;
}

#spalte_inhalt .randspalte .block.allgemein input.text,
#spalte_inhalt .randspalte .block.gaeste input.text,
#spalte_inhalt .randspalte .block.buerger input.text { width: 184px; }

#spalte_inhalt .randspalte input.image {
	float: right; display: inline;
	width: 19px; height: 19px;
	vertical-align: middle;
	margin-bottom: 0.8em;
}

/* Philipp */
.fehler_ausblenden {
	visibility: hidden;
}