@charset "utf-8";

/* meta
	author: rico floss
	contact: floss@51nullacht.de
	date: 2010-01-11
	client: CMS
*/

/*
E95E27	orange		logo, callback, headlines, kontrast
383832	braun		schrift, header, border dunkel
23BAD9	hellblau	headlines
C1C2C3	grau		border standard
E9E9E7	hellgrau	border hell
*/

html * {
	padding: 0;
	margin: 0;
	border: 0;
}

body {
	text-align: center;
	background: #fff url(body_bg.png) left top repeat-x;
}

body, a, th, td, textarea {
	font-family: Arial, Verdana, Helvetica, sans-serif;
	font-size: 12px;
	color: #383832;
	text-decoration: none;
}

a {
	text-decoration: none;
}
a:hover {
	
}

address {
	font-style: normal;
}

/* ============== Container ================= */
#container {
	width: 960px;
	padding: 0 10px;
	margin: 0 auto;
	
	text-align: left;
	background: transparent url(navigation_bg.png) 0 130px no-repeat;
}

/* ============== header ================= */
#header {
	height: 130px;
	background-color: #383832;
}
/* ============== logo + claim */
#header .logo {
	margin-top: 15px;
	display: block;
	float: left;
}

/* ============== claim */
#header .headerClaim {
	float: right;
	width: 400px;
	height: 53px;
	margin-top: 1em;
	
	text-align: right;
	color: #fff;
	font-size: 25px;
	font-weight: 900;
	line-height: 1em;
}
#header .headerClaim p strong {
	font-size: 22px;
	font-weight: 100;
}


/* ============== callback */
#header .callback {
	float: right;
	width: 301px; height: 53px;
	
	background: transparent url(callback_bg.png) left top no-repeat;
}
#header .callback fieldset {
	padding: 6px 0 6px 10px;
}
#header .callback legend {
	display: none;
}
#header .callback label {
	float: left;
	margin-top: 3px;
}
#header .callback input {
	margin: 2px 5px 0 6px;
	padding: 1px;
	width: 175px;
	float: left;
	border: 1px solid #C1C2C3;
	
	color: #C1C2C3;
}
#header .callback input.button {
	margin: 0; padding: 0;
	width: 22px; height: 23px;
	border: 0;
	float: left;
	
	background-color: #E95E27;
}
#header .callback p.info {
	margin-top: 4px;
	color: #fff;
	font-size: 9px;
}
* html #header .callback p.info { margin-top: 0; }
*+html #header .callback p.info { margin-top: 0; }

/* ============== extranavigation */
#header .extraNavigation {
	clear: right;
	float: right;
	margin-top: 2em;
	
	text-align: right;
}
#header .extraNavigation .spacer {
	padding: 0 1em;
}
#header .extraNavigation a {
	color: #C1C2C3;
	margin-left: 1em;
}
#header .extraNavigation a:hover,
#header .extraNavigation a.on {
	color: #fff;
}

/* ============== navigation ================= */
#navigation {
	height: 65px;
	margin-top: 10px;
}

/* ============== mainnavigation */
#nav {
	position: relative;
	z-index: 100;
	float: left;
}
#nav,
#nav li,
#nav ul,
#nav a {
	margin: 0; padding: 0;
}
#nav li {
	float: left;
	list-style: none;
}
#nav li a {
	display: block;
	padding: 5px 10px;
	white-space: nowrap;
	
	font-size: 13px;
}

#nav li a strong {
	display: block; 
	float: left;
}
#nav li a span {
	display: block; 
	float: left;
	width: 10px;
	height: 25px;
	margin: -5px -10px -5px 0;
}

/* main */
#nav li.on a,
#nav li.off a,
#nav li.over a {
	height: 15px;
	font-weight: 900;
}
#nav li.on a,
#nav li a:hover,
#nav li:hover a,
#nav li.over a,
#nav li.on a span,
#nav li a:hover span,
#nav li:hover a span,
#nav li.over a span {
	color: #fff;
	background: transparent url(navigation_tab_bg.png) left top no-repeat;
}
#nav li.on a span,
#nav li a:hover span,
#nav li:hover a span,
#nav li.over a span {
	background-position: right top;
}
#nav li.on a {
	background-position: left -38px;
}
#nav li.on a span {
	background-position: right -38px;
}

/* sub */
#nav li ul {
	margin-left: -1px;
	position: absolute;
	visibility: hidden;
}
#nav li ul li {
	float: none;
	display: inline;
}
#nav li.on ul a,
#nav li.off ul a,
#nav li.over ul a {
	min-width: 150px;
	
	font-weight: 100;
	color: #fff;
	border: 1px solid #fff;
	border-top: none;
	background: transparent url(subnavi_bg.png) left top repeat-x;
}
*+html #nav li ul a {
	min-width: 215px;
}
#nav li ul a.on,
#nav li ul a:hover {
	background-position: left bottom;
}

/* ============== featured */
#featured {
	margin-bottom: 3em;
}

#featured .tabs {
	float: left;
	margin-right: 10px;
	height: 258px;
	
	background-color: #E9E9E7;
	cursor: pointer;
}
#featured .tabs.last {
	float: right;
	margin-right: 0;
}

#featured .tabs.hover,
#featured .tabs:hover {
	background: #E95E27 left top repeat-y;
}

#featured .tabs .shadowLeft {
	float: left;
	width: 15px;
	height: 100%;
	background: transparent url(tabs_left.png) left top repeat-y;
}
#featured .tabs .shadowRight {
	float: right;
	width: 15px;
	height: 100%;
	background: transparent url(tabs_right.png) right top repeat-y;
}
#featured .tabs .tabInner {
	float: left;
}
#featured .tabs .tabInner .shadowTop {
	width: 100%;
	height: 15px;
	background: transparent url(tabs_top.png) left top repeat-x;
}
#featured .tabs .tabInner .shadowBottom {
	position: relative;
	top: 228px;
	width: 100%;
	height: 15px;
	background: transparent url(tabs_bottom.png) left bottom repeat-x;
}
#featured .tabs .tabInner .tabContent {
	margin-top: -1.5em;
	width: 100%;
	overflow: hidden;
}

#featured .tabs h2 {
	color: #383832;
	font-size: 18px;
	font-weight: 900;
}
#featured .tabs.hover h2,
#featured .tabs:hover h2 {
	color: #fff;
}

#featured .tabs a {
	display: block;
}
#featured .tabs a img {
	padding-bottom: 0.5em;
}
#featured .tabs a strong {
	color: #383832;
	font-weight: 100;
}
#featured .tabs.hover a,
#featured .tabs:hover a {
	background: transparent url(tabs_arrow.png) right bottom no-repeat;
}
#featured .tabs.hover a strong,
#featured .tabs:hover a strong {
	color: #fff;
}

#featured .tabsCount-1 {		width: 960px; }	#featured .tabsCount-1 .tabInner {	width: 920px; }
#featured .tabsCount-1.hover, #featured .tabsCount-1:hover {	background-image: url(tabs_1_bg.png); }
#featured .tabsCount-2 {	 	width: 470px; }	#featured .tabsCount-2 .tabInner {	width: 440px; }
#featured .tabsCount-2.hover, #featured .tabsCount-2:hover {	background-image: url(tabs_2_bg.png); }
#featured .tabsCount-3 {	 	width: 310px; }	#featured .tabsCount-3 .tabInner {	width: 280px; }
#featured .tabsCount-3.hover, #featured .tabsCount-3:hover {	background-image: url(tabs_3_bg.png); }

/* ============== footer */
#footer {
	height: 270px;
	margin-top: 2em;
	padding-top: 2em;
	
	background: #fff url(footer_bg.png) left top repeat-x;
	text-align: center;
}
#footer .footerInner {
	width: 960px;
	margin: 0 auto;
	text-align: left;
}
#footer ul {
	list-style: none;
}

/* footerNavi */
#footer ul.footerNavi li a {
	color: #6E6E63;
}
#footer ul.footerNavi li {
	padding: 0.5em 0 0 0;
}
#footer ul.footerNavi li.main {
	display: block;
	float: left;
	width: 140px;
	height: 170px;
	padding-right: 1em;
	margin-right: 1em;
	
	border-right: 1px solid #C1C2C3;
}
#footer ul.footerNavi li.last {
	border-right: none;
}

/* twitter */
#footer .twitter {
	float: right;
	width: 270px;
}
#footer .twitter h5 {
	font-size: 15px;
}
#footer .twitter ul li {
	padding: 0.5em 0 0.5em 60px;
	
	background: transparent left 0.7em no-repeat;
	font-size: 11px;
}
#footer .twitter ul li a {
	color: #E95E27;
}

#footer .twitter .twtr-ft,
#footer .twitter .twtr-hd {
	display: none;
}

/* ============== suche */
#navigation .suche {
	width: 160px;
	float: right;
}
#navigation .suche legend,
#navigation .suche label {
	display: none;
}
#navigation .suche input {
	float: left;
	margin: 0; padding: 1px;
	width: 135px;
	
	background: transparent url(suche_bg.png) left top repeat-x;
	border: 1px solid #C1C2C3;
	color: #C1C2C3;
}
#navigation .suche input.button {	
	float: right;
	margin: 0; padding: 0;
	width: 17px; height: 17px;
	
	background: #E95E27;
	border-color: #E95E27;
}

/* ============== content ================= */
#content {
	
}
#content p, #content li, #content address {
	line-height: 1.3em;
}
#content p, #content ul, #content ol, #content address {
	margin-bottom: 1em;
}
#content ul, #content ol {
	margin-left: 1em;
}

/* ============== mainContent */
#mainContent {
	float: left;
	width: 630px;
	
	border-top: 1px solid #C1C2C3;
	padding: 1em 0 0 0;
}

#mainContent h1.noShow {
	position: absolute;
	left: -9000px;
}
#mainContent iframe.googleMaps {
	width: 95%;
	height: 300px;
	margin: 0; padding: 0;
	
	border: 1px solid #C1C2C3;
}

/* ============== startseitenNews */
#startseite {
	border-top: 1px solid #fff;
}
#startseite .startseitenNews {
	float: right;
	width: 270px;
}
#startseite .startseitenNews h2 {
	font-weight: 900;
	font-size: 15px;
}
#startseite .startseitenNews h3 a {
	padding: 0; margin: 0 0 0.5em 0;
	color: #E95E27;
}
#startseite .startseitenNews p {
	margin: 0;
	border-top: 1px solid #C1C2C3;
}
#startseite .startseitenNews p.datum {
	padding-top: 1em;
}
#startseite .startseitenNews p.first {
	border-top: none;
	padding-top: 0;
}

/* ============== sidebar */
#sidebar {
	float: right;
	width: 300px;
	
	/* border-top: 1px solid #383832; */
	/* border-top: 1px solid #C1C2C3; */
	padding: 0 0 0 0;
}
#sidebar .sidebarContent {
	margin-bottom: 2em;
	padding: 1em 0 0 0;
	border-top: 1px solid #C1C2C3;
}

.sidebarKontakt {
	float: left;
	width: 300px;
	margin-left: 10px;
}
.sidebarKontakt img {
	float: right;
}

/* ============== CLEAR, SPACE ================= */
.clear {
	display: block; clear: both; font-size: 0; height: 0; padding: 0; margin: 0;
}
.clearSpace {
	display: block; clear: both; height: 1em; padding: 0; margin: 0;
}
.topSpace {
	margin-top: 0.5em;
}

/* ============== LEFT, LEFTSPACE ================= */
.left {
	float: left;
}
.leftSpace {
	float: left; margin-left: 1em;
}

/* ============== ERROR, MSG ================= */
input.error,
textarea.error {
	border-color: #700114;
}
p.error, div.error,
p.msg, div.msg {
	padding: 0.5em;
	background-color: #700114;
	color: #fff;
}
p.msg, div.msg {
	background-color: #147001;
}