html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
        margin: 0;
        padding: 0;
        border: 0;
        outline: 0;
        font-weight: inherit;
        font-style: inherit;
        font-size: 100,01%;
        font-family: inherit;
        vertical-align: baseline;
        list-style: none;
}

:focus {
        outline: 0;
}

html, body {
        height: 100%;

}

body {
        color: #000000;
        font-family: 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', 'Trebuchet MS', sans-serif;
        font-size: 0.8em;
        line-height: 1.5;
		background-image:url(images/bg.jpg); background-repeat:repeat;
		margin-top:0px;
		overflow: scroll;
}

h1 {
        text-indent: -9999em;
		float: left;
		width: 580px;
		height: 200px;
		background:url(images/logo.png) no-repeat 240px 30px; 
}

p {
	font-size: 1.0em;
	color:#333;
	padding-bottom: 35px;
}

a { 
	color: #000000;
	text-decoration: underline;
}

a:hover,
a:focus {
	color: #666;
	text-decoration: none;
}

strong {
	font-weight: bold;
}

em {
	font-style: italic;
}

.circle li {
		list-style: circle;
		color: #666;
		margin-left: 16px;
		padding-left: 10px;
}

.diac li {
		list-style: disc;
		color: #666;
		margin-left: 16px;
		padding-left: 10px;
}

img {
	-moz-box-shadow: 1px 5px 5px #ddd;
   	-webkit-box-shadow: 1px 5px 5px #ddd;
   	box-shadow: 1px 5px 5px #ddd;
}


.wrapper {
		width:940px;
		margin: 0 auto 35px;
		-moz-box-shadow: 1px 5px 15px #ddd;
   		-webkit-box-shadow: 1px 5px 15px #ddd;
}



/*------------------------------------------------------Header + Navi-----------------------------------------------------------*/


.header {
		border: 0px solid #900;
		width:938px;
		padding-top:20px;
}


.piano {
		background:url(images/header.png) no-repeat 2px 0;
		width:938px;
		height:218px;
}

#navi {
	position:relative;
	height: 220px;
	width:340px;
	float: left;
}

#navi li {
	width:104px;
	height:104px;
	position:absolute;
}

#navi li a {
		width: 100%;
		height: 100%;
		display: block;
}

#navi span {
        text-indent: -9999em;
		display:block;
} 

.red {left: 21px; top: 32px;}
.red a { background:url(images/navi-dot-red.png) no-repeat 4px -1px;}
.red a:hover {background:url(images/navi-dot-red.png) no-repeat -97px -1px;}
.red-active {background:url(images/navi-dot-red.png) no-repeat -97px -1px; width:100%; height:100%;}


.blue {left: 176px; top: 98px;}
.blue a { background:url(images/navi-dot-blue.png) no-repeat 2px -1px;}
.blue a:hover {background:url(images/navi-dot-blue.png) no-repeat -97px -1px;}
.blue-active {background:url(images/navi-dot-blue.png) no-repeat -97px -1px; width:100%; height:100%;}


 
.green {left: 219px; top: 9px;}
.green a { background:url(images/navi-dot-green.png) no-repeat 2px -1px;}
.green a:hover {background:url(images/navi-dot-green.png) no-repeat -97px -1px;}
.green-active {background:url(images/navi-dot-green.png) no-repeat -97px -1px; width:100%; height:100%;}






/*-----------------------------------------------Inhaltsbereich-----------------------------------------------------------*/


.content { 
		width:750px; 
		padding: 0px 95px 40px 95px;
}

.red-headline {
	background:url(images/red-dot-mini.png) no-repeat left;
	padding-left: 40px;
	font-size:1.2em;
	height: 31px;
	margin-bottom:15px;
	color:#333;
}

.top-full {
		margin: 5px 0 0 0;
		float: left;
} 

.img-left {
		margin: 0 50px 0 0;
		float: left;
}

.txt-right {
		float: left;
		width: 350px;
}

.bottom {
		padding: 45px 0 45px 0;
		clear:both;

}

.bottom-left {
		width: 45%;
		float:left;
}

.bottom-right {
		width: 45%;
		float:left;
		margin-left: 70px;
}


.blue-headline {
	background:url(images/blue-dot-mini.png) no-repeat left;
	padding-left: 40px;
	font-size:1.2em;
	height: 31px;
	margin-bottom:15px;
	color:#333;
}

txt-full {
	float:left;
	width: 740px;

}

.green-headline {
	background:url(images/green-dot-mini.png) no-repeat left;
	padding-left: 40px;
	font-size:1.2em;
	height: 28px;
	margin-bottom:15px;
	color:#333;
}

.red-headline-impr {
	background:url(images/red-dot-mini.png) no-repeat left;
	padding-left: 40px;
	font-size:1.2em;
	height: 28px;
	margin-bottom:15px;
	color:#333;
	float:right;
}

.blue-headline-impr {
	background:url(images/blue-dot-mini.png) no-repeat left;
	padding-left: 40px;
	font-size:1.2em;
	height: 28px;
	margin-bottom:15px;
	color:#333;
	float:right;
}

.contact-left {
		width: 70%;
		float:left;
}

.contact-right {
		width: 26%;
		float:right;
		margin-left: 25px;
}

.impressum {
	text-align:right;
	float:right;
}

#anfahrt {
    background: #8ab969;;
	color: #DEE4C3;
    float: right;
    margin-top: 10px;
    padding: 10px;
    text-decoration: none;
	box-shadow:-2px 1px 4px #bdbdb9;
}

#anfahrt:hover,
#anfahrt:focus {
	background: #699948;
}

/*-----------------------------------------------------Kontaktformular-----------------------------------------------------------*/

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

div.mail_header {
 margin-left: -45px;
 float: left;
 padding-left:0px;
}

div.mail_header p { padding-top: 0; }

div.mail_important {
 margin: 10px 0 0 0;
 width: 200px;
  border:0px solid #C60;
}

div.mail_failure{ 
 width: 257px; 
 margin: 10px 0px 10px 116px;
 padding: 5px 5px 5px 0px;
 float: left;
 background:#D5D5D5;
 vertical-align:middle;
}

div.mail_success {
 width: 257px; 
 margin: 10px 0px 10px 116px;
 padding: 5px 5px 5px 0px;
 float: left;
 color:#fff;
 background:#8ab969;
}


div.mail_failure p {
margin-left:0px;
color:#666;
padding: 5px 5px 5px 10px;
font-size: 0.9em;
line-height: 1.2em;
}


div.mail_success p {
margin-left:0px;
color:#FFF;
padding: 5px 5px 5px 10px;
font-size: 0.9em;
line-height: 1.2em;
}


div.mail_important { margin-left: 116px; }

#kontakt {
padding-top: 25px;
margin-left:0px;
width:750px;
border:0px solid #090;
}

#kontakt fieldset {
 	border: none;
 	clear: both;
	border:0px solid #090;
	margin-left:25px;
}

#kontakt fieldset ol li label {
 float: left;
 width: 75px;
 text-align: left;
 color:#666;
}

#kontakt fieldset ol li label.error {
 width: auto;
}

#kontakt fieldset ol li {
 padding-bottom: 6px;
}

#kontakt fieldset ol li input, #kontakt fieldset ol li label, #kontakt fieldset ol li textarea, #kontakt fieldset ol li input.formular_absenden {
 padding: 8px;
 font-family: 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', 'Trebuchet MS', sans-serif;
 font-size:1.0em;
 float: left;
}

#kontakt fieldset ol li input.formular_absenden {
 margin-right: 0px;
 float:right;
 border: none;
 background:#8ab969;
padding-left:12px;
padding-right:10px;
padding-top:10px;
padding-bottom:10px;
 margin-bottom:15px;
 color: #666;
 width: 100px !important;
}


#kontakt fieldset ol li input, #kontakt fieldset ol li textarea {
 border: none;
 background: #f9f9f7;
 color: #666;
 width: 400px !important;
   border:1px solid #d5d5d5;
}

#kontakt fieldset ol li textarea {
 font-size: 1.0em;
 line-height: 1.3;
 max-height: 300px;
  min-height: 135px;
  width: 616px !important;
}

#kontakt fieldset ol li textarea:hover, #kontakt fieldset ol li textarea:focus, #kontakt fieldset ol li input:hover, #kontakt fieldset ol li input:focus
 {
 background: #eefde2;

}
  

#kontakt fieldset ol li input.formular_absenden, #kontakt fieldset ol li input.formular_absenden {
 	background: #8ab969;
  	background-image:url(images/mini-stecker.png); background-repeat:no-repeat; background-position:left;
	box-shadow:-2px 1px 4px #bdbdb9;

}

#kontakt fieldset ol li input.formular_absenden:hover, #kontakt fieldset ol li input.formular_absenden:focus {
 	background: #699948;
   	background-image:url(images/mini-stecker.png); background-repeat:no-repeat; background-position:left;
	box-shadow:-2px 1px 4px #bdbdb9;

}
 