/* Haupt-CSS */

html, body {
	background-color: #003d8f;
	background-image: url(../layout/body_hg.jpg);
	background-repeat: no-repeat;
	background-position: bottom left;
	background-attachment: fixed;
	font-family: Arial, sans-serif;
	font-size: small;
	margin: 0;
	padding: 0;
}

/* Allgemein ********************************************** */

/* Elemente fuer Druck und Screenreader standardmaessig ausblenden*/
.print,
.screenreader {
	display: none;
}

.float-right {
	float: right;
	margin-left: 0.5em;
}

.float-left {
	float: left;
	margin-right: 0.5em;
}

/* Listenelemente */
ul {
	margin: 0;
	padding: 0 0 0 1em;
	list-style-type: none;
}

ul li {
	padding-bottom: 0.5em;
}

ul.abstand_klein li {
	padding-bottom: 0.25em;
}

ul.abstand_klein li:last-child {
	padding-bottom: 0.5em;
}

/* Ueberschriften */

h1, h2, h3 {
	color: #f05500;
	padding: 0;
}

h1 {
	font-size: 1.5em;
	margin: 0;
}

h2 {
	font-size: 1.2em;
	margin: 1em 0 0.5em 0;
}

h3 {
	font-size: 1.0em;
	margin: 0 0 0.5em 0;
}

/* Klassen fuer TYPO3-Contentrahmen */

.csc-frame-highlightlast {
	border-bottom: 1px solid #ccc;
	margin-bottom: 1em;
}

.csc-frame-highlightlast p:last-child,
.csc-frame-highlightlast h1:last-child,
.csc-frame-highlightlast h2:last-child,
.csc-frame-highlightlast h3:last-child {
	line-height: 1.5em;
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.csc-frame-rulerBefore {
	border-top: 1px solid #ddd;
}

/* Wrapper ************************************************ */

#wrapper_outer {
	background-image: url(../layout/wrapper_outer_hg.jpg);
	background-repeat: no-repeat;
	background-position: top;
	position: relative;
	width: 948px;
	max-width: 1200px;
}

#wrapper_navigation {
	float: left;
	margin-top: 12px;
	width: 240px;
}

/* Hauptnavigation **************************************** */

#nav_logo img {
	border: 0;
	display: block;
}

#nav_haupt {
	background-image: url(../layout/nav_haupt_hg.png);
	background-repeat: repeat-y;
	overflow: auto;
	padding: 2em 0 0 0;
}

#nav_haupt_inner {
	list-style-type: none;
	margin: 0 28px 0 36px;
	padding: 0;
}

#nav_haupt_inner li {
	font-size: 1.1em;
	text-transform: uppercase;
	padding: 0.35em 0 0.35em 1em;
}

#nav_haupt_inner li.current {
	background-color: #1152a8;
}

#nav_haupt_inner li a {
	color: #fff;
	text-decoration: none;
}

#nav_haupt_inner li a:hover {
	text-decoration: underline !important;
}

#nav_haupt_inner li.current a {
	color: #ea651f;
	font-weight: bold;
}

/* Hauptnavigation: zweite Ebene -------------------------- */

#nav_haupt_inner li.current ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

#nav_haupt_inner li.current li {
	font-size: 0.91em;
	padding: 0.2em 0 0.2em 0;
	text-transform: none;
}

#nav_haupt_inner li.current li a {
	background-image: url(../layout/nav_haupt_inner_li_2.png);
	background-repeat: no-repeat;
	background-position: left;
	color: #fff;
	font-weight: normal;
	padding-left: 7px;
}

#nav_haupt_inner li.current li.current a {
	text-decoration: underline;
}

/* Hauptnavigation: dritte Ebene -------------------------- */

#nav_haupt_inner li.current li.current ul {
	padding-top: 0.4em;
	padding-bottom: 0.4em;
}

#nav_haupt_inner li.current li.current li,
#nav_haupt_inner li.current li.current li.current {
	padding: 0 0 0 1em;
}

#nav_haupt_inner li.current li.current li a {
	background-image: url(../layout/nav_haupt_inner_li_3.png);
	text-decoration: none;
}

#nav_haupt_inner li.current li.current li.current a {
	background-image: url(../layout/nav_haupt_inner_li_3.png);
	text-decoration: underline;
}

/* Hauptnavigation: Verlauf ------------------------------- */

#nav_bottom {
	background-color: transparent;
	background-image: url(../layout/nav_haupt_bottom.png);
	background-position: top;
	background-repeat: no-repeat;
	padding: 80px 26px 0 34px;
}

/* Metanavigation ***************************************** */

#nav_meta {
	overflow: auto;
}

#nav_meta ul {
	float: right;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

#nav_meta li {
	background-image: url(../layout/nav_meta_li_hg.png);
	background-repeat: repeat-x;
	float: left;
	margin-right: 3px;
	min-height: 54px;
	min-width: 46px;
	padding: 10px 4px 0 4px;
}

#nav_meta li a {
	background-repeat: no-repeat;
	background-position: center top;
	color: #fff;
	display: block;
	font-family: Tahoma, sans-serif;
	font-size: 0.8em;
	padding: 12px 0 0 0;
	text-align: center;
	text-decoration: none;
}

#nav_meta li a:hover {
	text-decoration: underline;
}

/* Metanavigation: Buttons -------------------------------- */

#nav_meta li.suche a {     background-image: url(../layout/nav_meta_li_suche.png);}
#nav_meta li.sitemap a {   background-image: url(../layout/nav_meta_li_sitemap.png);}
#nav_meta li.anfahrt a {   background-image: url(../layout/nav_meta_li_anfahrt.png);}
#nav_meta li.kontakt a {   background-image: url(../layout/nav_meta_li_kontakt.png);}
#nav_meta li.impressum a { background-image: url(../layout/nav_meta_li_impressum.png);}

/* Innerer Wrapper **************************************** */

#wrapper_inner {
	/*clear: right;*/
	min-width: 708px;
	margin-left: 240px;
	padding-top: 25px;
	position: relative;
}

/* Header ************************************************* */

#header {
	background-image: url(../layout/header_hg.png);
	background-repeat: no-repeat;
	background-position: right;
	height: 135px;
	margin: 0 0 12px 0;
	padding: 6px 0 2px 2px;
	position: relative;
}

#header div#header_crop {
	display: block;
	overflow: hidden;
	position: relative;
	width: 95%;
	height: 100%;
}

#header #header_overlay {
	bottom: 0;
	position: absolute;
	right: 0;
	z-index: 2;
}

/* Inhaltsbereich ***************************************** */

#content {
	background-color: #fff;
	color: #434343;
	padding: 0.8em 1em;
	margin-right: 240px;
}

#content_inner {
	overflow: hidden;
}

#content h3 {
	line-height: 1.4em;
}

#content p {
	margin: 0;
	line-height: 1.4em;
	padding: 0 0 1em 0;
}

#content a {
	color: #f05500;
}

#content .fce_textkasten_wrapper {
	display: none;
}

#content .fce_startseite_einleitung_wrapper {
	display: none;
}

#content .fce_startseite_einleitung_wrapper .csc-textpic-caption {
	color: #434343;
}

#content ul li,
#content_rechts ul li {
	list-style-image: url(../layout/li_punkt.png);
}

#content .csc-textpic-image {
	border: 0;
}

#content .csc-textpic-imagewrap {
}

#content .csc-textpic-border .csc-textpic-imagewrap {
}

#content .csc-textpic-border .csc-textpic-image img,
#content div.csc-textpic div.csc-textpic-single-image img {
	border: 3px solid #dcdcdc;
}

#content .csc-textpic-caption {
	background-color: #dcdcdc;
	font-size: 0.8em;
	padding: 0 0.2em 0.2em 0.2em;
}

#content .csc-textpic-border .csc.textpic-caption {
	border: 3px solid #dcdcdc;
}

#content .csc-textpic-imagecolumn ul {
	margin-left: 0;
}

#content ul {
	margin: 0 0 0 1em;
	padding: 0;
}

/* Tabellen ----------------------------------------------- */

#content table {
	/*border-top: 1px solid #ddd;*/
	width: 100%;
}

#content table td,
#content table th {
	border-bottom: 1px solid #ddd;
	vertical-align: top;
}

#content table td p,
#content table th p {
	margin: 0;
	padding: 0;
}

#content table thead,
#content table th {
	font-weight: bold;
	text-align: left;
}

#content table thead th {
	background-color: #f0f0f0;
	border: 0;
	height: 1.75em;
	vertical-align: middle;
}

#content table th {
	width: 35%;
}

#content table td {
	width: 65%;
}

/* Rechte Spalte ****************************************** */

#content_rechts {
	color: #fff;
	float: right;
	width: 228px;
}

#content_rechts .csc-textpic-image {
	margin-left: 0;
}

#content_rechts h1 {
}

#content_rechts h1:first-child,
#content_rechts h2:first-child,
#content_rechts h3:first-child {
	margin-top: 0;
}

#content_rechts a {
	color: #fff;
}

/* Fuß/Footer ********************************************* */

#footer {
	color: #58b7e7;
	clear: both;
	font-size: 0.9em;
	margin: 2em 0 10em 0;
}

#footer_rechts {
	float: right;
	margin-left: 12px;
	width: 228px;
}

#footer p {
	margin: 0 0 0.9em 0;
	padding: 0;
}

#footer a {
	color: #58b7e7;
	text-decoration: underline;
}

#footer strong {
	color: #ff5d02;
	font-weight: normal;
}

/* Werbebanner ******************************************** */

#banner {
	display: none;
}

/* Flexible Content-Elemente (FCE) ************************ */

/* FCE: Textkasten ---------------------------------------- */

.fce_textkasten {
	background-color: #1152a8;
	background-image: url(../layout/fce_textkasten_link_hg.png);
	background-repeat: no-repeat;
	background-position: right bottom;
	color: #fff;
	margin: 0 0 12px 0;
	overflow: auto;
}

.fce_textkasten a {
	color: #fff;
}

.fce_textkasten_headline {
	color: #ff5d02;
	padding: 0.6em;
}

.fce_textkasten_headline a {
	color: #ff5d02 !important;
	text-decoration: none;
}

.fce_textkasten_headline a:hover {
	text-decoration: underline;
}

.fce_textkasten_headline h2 {
	/*font-size: 1.2em;*/
	margin: 0;
	padding: 0;
}

.fce_textkasten_content {
	padding: 0 0.6em 1em 0.6em;
}

.fce_textkasten_link {
	float: right;
	padding: 0 0.3em 0.3em 0;
}

.fce_textkasten_link a {
	color: #fff;
	font-size: 0.8em;
	text-decoration: underline;
}

.fce_textkasten_content ul li {
}

.fce_textkasten_content .csc-textpic-caption,
#content_rechts .csc-textpic-caption {
	padding-top: 0.45em;
}

/* FCE: Textkasten (mit Link) ----------------------------- */



/* FCE: Anfragekasten ------------------------------------- */

.fce_anfragekasten {
	background-color: #ff5d02;
	background-image: url(../layout/fce_anfragekasten_link_hg.png);
}

.fce_anfragekasten .fce_textkasten_headline h1,
.fce_anfragekasten .fce_textkasten_headline h2,
.fce_anfragekasten .fce_textkasten_headline h3 {
	color: #003d8f;
	font-size: 1.2em;
}

.fce_anfragekasten a {
	color: #04307f !important;
}

/* Sitemap ************************************************ */

div#sitemap {
	padding: 1em 1.5em;
	line-height: 20px;
}

div#sitemap li {
	padding: 0 0 0 24px;
	margin:	0;
	list-style-type: none;
	list-style-image: none !important;
}

div#sitemap li {
	background: url(../layout/sitemap_extm.gif) no-repeat 0% 0%;
}

div#sitemap li.last {
	background: url(../layout/sitemap_exlm.gif) no-repeat 0% 0%;
}

div#sitemap li a.abschnitt {
	line-height: 15px;
	text-decoration: none;
	background: #eee;
	padding: 2px;
	border: 1px solid #ccc;
	display: block;
	width: 500px;
}

div#sitemap li > a.abschnitt {
	line-height: 14px;
}

div#sitemap li a.abschnitt:hover {
	background: #def;
	padding: 2px;
	border:	1px solid #9cf;
}

div#sitemap ul {
	padding: 0 0 0 24px;
	margin:	0 0 0 -24px;
	list-style-type: none;
}

div#sitemap ul {
	background: url(../layout/sitemap_exim.gif) repeat-y 0% 0%;
}

div#sitemap ul.first {
	background-image: none;
	padding-left: 0;
}

div#sitemap ul.last {
	background-image: none;
}

/* Anfahrtskizze (OpenStreetMap) ************************** */

#map {
	border-color: #bebebe;
	border-style: solid;
	border-width: 1px 1px 1px 1px;
	clear: none;
	color: #333;
	height: 331px;
}

#map img {
	border: 0;
}

#map a {
	color: #333;
	position: relative;
}

#map .olControlAttribution {
	background-color: #fff;
	bottom: 0;
	opacity: 0.75;
	padding: 0.2em;
	right: 0;
	text-align: right;
}

#routenplaner {
	/*border-bottom: 1px solid #bebebe;*/
	margin-top: 1em;
	width: 100%;
}


