/*
 * Grillenberger General Master Stylesheet
 * (c) martinlettner.info
 */

/********************************************************************** RESET */

body, img, a,
p, h1, h2, h3, h4,
ul, ol, li, dl, dt, dd,
table, th, td {
	margin: 0;
	padding: 0;
	list-style: none;
	border: none;
	text-decoration: none;
	outline: none;
}

/******************************************************************** GENERAL */

body {
	margin: 0;
	padding: 0;
	font: normal 70%/1.5 Verdana, sans-serif;
	background: #fff6cf url(body-bg.gif) left top repeat-x;
	color: #464646;
	cursor: default;
}

#header {
	height: 395px;
	text-align: center;
	background: #fff url(body-bg.gif) left top repeat-x;
}
#header img {
	display: block;
	margin: 0 auto;
	background: url(../kopfbilder/hintergrund.jpg) 50% top no-repeat;
}

#site {
	padding-bottom: 30px;
	background: #fff;
}
#site .padding {
	width: 1000px;
	margin: 0 auto;
	background: #fff;
}

#sidebar {
	width: 240px;
	float: left;
	background: #e6f1eb url(sidebar-bg.jpg) left top repeat-x;
}
#main {
	width: 730px;
	float: right;
}

a {
	color: #353;
}

/******************************************************************** CONTENT */

#content .emphasize {
	padding: 1em 1.5em;
	background: #fff0b9;
	text-shadow: 1px 1px 2px #fff;
}
#content p {
	margin-bottom: 7px;
}
#content a {
	color: #373;
}
#content a:hover, #content a:focus {
	text-decoration: underline;
}
/*
#content a.file-pdf {
	padding: 10px 10px 10px 30px;
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	border-radius: 5px;
	-moz-border-radius: 5px;
	background: #eee url(file-pdf.png) 7px 50% no-repeat;
	line-height: 2;
}
*/
#content a.file-pdf {
	padding: 3px 5px 3px 20px;
	background: url(file-pdf.png) left 50% no-repeat;
	line-height: 2;
}
#content a.file-chart {
	padding: 3px 5px 3px 20px;
	background: url(file-chart.png) left 50% no-repeat;
	line-height: 2;
}
#content a.routenplaner {
	float: right;
	padding: 5px 10px 5px 30px;
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	border-radius: 5px;
	-moz-border-radius: 5px;
	background: #eee url(paper-plane.png) 7px 50% no-repeat;
	line-height: 2;
}
#content a.kontakt {
	float: right;
	margin: 0 0 1em 3em;
	padding: 5px 15px 5px 35px;
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	border-radius: 5px;
	-moz-border-radius: 5px;
	background: #eee url(paper-plane.png) 12px 50% no-repeat;
	line-height: 2;
}

#content h1,
#content h2,
#content h3,
#content h4,
#content h5,
#content h6 {
	margin: .5em 0;
	color: #063;
	font-weight: normal;
	font-size: 100%;
	line-height: 1.1;
}
#content h1 {
	margin: 0;
	font-size: 180%;
	text-transform: uppercase;
}
#content h2 {
	margin: .5em 0 1em;
	color: #893;
	font-size: 140%;
}
#content h3 {
	margin: 1em 0 .3em;
	font-size: 110%;
	font-weight: bold;
	line-height: 1.4;
}
#content h3,
#content h4,
#content h5,
#content h6 {
	letter-spacing: 1px;
}

#content br {
	clear: left;
}
#content hr {
	clear: both;
	margin: 1em 0 1.5em;
	border: none;
	border-bottom: solid 1px #e3e3e3;
}

#content p.info {
	padding: 1em 1.5em;
	border: 1px solid #ca0;
	background: #fff0b9;
	color: #222;
	font-weight: bold;
}
#content p img {
	margin: 0;
	padding: 3px;
	border-left:   1px solid #d9d9d9;
	border-top:    1px solid #d9d9d9;
	border-right:  1px solid #c9c9c9;
	border-bottom: 1px solid #c9c9c9;
	border-radius: 2px;
	-moz-border-radius: 2px;
}
#content p a:hover img {
	border-color: #59b27f;
}
#content .float-left {
	float: left;
	margin: 0 2em 1.5em 0;
}
#content .float-right {
	float: right;
	margin: 0 0 1.5em 2em;
}

#content ul {
	padding: 0 0 1em 2em;
}
#content ul li {
	padding: .1em 0;
	list-style: disc;
}
#content ol {
	padding: 0 0 .5em 2em;
}
#content ol li {
	padding: .1em 0;
	list-style: decimal;
	font-weight: bold;
}
#content ol li ol {
	padding-left: 1em;
}
#content ol li ol li {
	font-weight: normal;
}
#content #sitemap li {
	font-weight: bold;
	padding-bottom: 1em;
}
#content #sitemap li ul {
	padding-bottom: 0;
}
#content #sitemap li ul li {
	padding: .1em 0;
	font-weight: normal;
	list-style: circle;
}

#content dl {
	margin: 0 0 1em;
}
#content dl dt {
	margin: 1em 0 0;
	font-weight: bold;
}
#content dl dt span {
	padding-left: 1em;
	font-weight: normal;
	color: #777;
}
#content dl dd {
	margin: .2em 0;
}
#content dl.kostenvergleich {
	clear: left;
	margin-top: 2em;
}
#content a.pdf-download {
	line-height: 3.2;
	padding: .8em 2em;
	background-color: #fea;
}

#content table.vergleich {
	margin: 2em 0;
	width: auto;
}
#content table.vergleich caption {
	padding: .7em 0;
	color: #063;
	text-align: left;
	font-size: 110%;
	font-weight: bold;
}
#content table.vergleich th {
	padding: .5em 10px;
	text-align: left;
	font-weight: normal;
}
#content table.vergleich td {
	padding: 2px 10px;
}
#content table.vergleich td a {
	display: block;
	padding: 5px 15px;
	background-color: #fea;
}

#content form {
}
#content form label {
	margin: .5em 1em .5em 0;
	font-weight: bold;
}
#content form input.text {
	margin: .5em 1em .5em 0;
	padding: .5em 1em;
	border: 1px solid #fff;
	border-right-color: #ddd;
	border-bottom-color: #ddd;
	background: #f6f6f6;
	color: #222;
}
#content form textarea {
	margin: 0 0 1em;
	padding: .5em 1em;
	border: 1px solid #fff;
	border-right-color: #ddd;
	border-bottom-color: #ddd;
	background: #f6f6f6;
	color: #222;
	font: normal 110%/1.5 Verdana, sans-serif;
}
#content form input.submit {
	margin: 0;
	padding: .3em 5em;
	font-weight: bold;
}
#content form input.input-focused, #content form textarea.input-focused {
	border-color: #ca0;
}
#content form input.input-error, #content form textarea.input-error {
	border-color: #900;
	background: #fcc;
}
form p.form-notice {
	margin: 1em 0 0;
	color: #777;
}
form p.form-notice-error {
	color: #900;
	font-weight: bold;
}
form .hide-this {
	display: none;
}

/******************************************************************** SIDEBAR */

#sidebar ul {
	font-weight: bold;
}
#sidebar ul li {
	border-bottom: 1px solid #fff;
	height: auto;
}
#sidebar ul li a {
	display: block;
	padding: 8px 15px 6px;
	text-shadow: 1px 1px 1px #fff;
}
#sidebar ul li a:hover, #sidebar ul li a:focus {
	background: #bcb;
}
#sidebar ul li.active a {
	color: #fff;
	background: #00652b;
	text-shadow: 0px 1px 2px #000;
}

#sidebar ul.subpages {
	font-weight: normal;
}
#sidebar ul.subpages li {
	border-top: 1px solid #fff;
	border-bottom: none;
}
#sidebar ul.subpages li a {
	padding: 4px 15px 3px 25px;
	color: #454;
	background: #fff0b9;
	text-shadow: none;
}
#sidebar ul.subpages li a:hover, #sidebar ul.subpages li a:focus {
	background: #f2dd91;
}
#sidebar ul.subpages li.active a {
	color: #fff;
	background: #cca000;
	text-shadow: 0px 1px 2px #333;
}

/********************************************************************* FOOTER */

.clear {
	clear: both;
}

#footer {
	clear: both;
	padding: 30px 0;
	background: #fff5cf url(footer-bg.jpg) left top repeat-x;
}
#footer .inside {
	width: 1000px;
	margin: 0 auto;
}
#footer .footer-links {
	float: right;
}
#footer a:hover, #footer a:focus {
	text-decoration: underline;
}

/********************************************************************** FIXES */

* html #footer {
	height: 1px;
}


