/* CSS Document */
html, body{
	margin:0;
	padding:0;
	font:12px Arial, Helvetica, sans-serif;
	color:#3e3d40;
}

a{
	color:#002d6a;
	text-decoration:none;	
}

img{
	border:none;
	display:block;	
}

header, section, footer, nav{
	display:block;
}

h1, h2, h3, h4, h5, h6, p, div, input, textarea, form, img{
	margin:0;
	padding:0;
}

.clear{
	clear:both;
}

#bg-image{
	width:100%;
	height:420px;
}

#logo-wrapper{
	height:100px;
	width:100%;
	position:absolute;
	z-index:10;
	background:url(../images/templates/bg-logo-long.png) no-repeat 0 0;
}

#logo{
	height:100px;
	width:340px;
	position:relative;
	left:50%;
	margin:0 0 0 -490px;
}

#logo img{
	margin:15px 0 0 15px;	
}

#info-slider{
	width:320px;
	position:absolute;
	z-index:15;
	left:50%;
	margin:100px 0 0 170px;
	/*background:url(../images/templates/bg-white-90.png);*/	
}

#info-slider .content{
	width:300px;
	height:180px;
	padding:3px 10px 10px 10px;
}

#info-slider .content h3{
	font-family:'Neuton', Arial, Helvetica, sans-serif;
	font-size:25px;
	line-height:25px;
	color:#002d6a;
	padding-bottom:10px;
	text-shadow:1px 1px 3px #888;
}

#nav-wrapper{
	width:100%;
	height:30px;
	background:transparent url(../images/templates/bg-navi.png);
	position:absolute;
	bottom:0;	
}

#nav-wrapper nav{
	width:980px;
	height:30px;
	margin:0 auto 0 auto;	
}

#nav-wrapper nav ul{
	margin:1px 0 0 5px;
	padding:0;
	list-style:none;	
}

#nav-wrapper nav ul li{
	float:left;
	margin-right:50px;
}

#nav-wrapper nav ul li.last-child{
	margin-right:0;	
}

#nav-wrapper a:link, #nav-wrapper a:visited{
	color:#fff;
	font-weight:bold;
	text-decoration:none;
	font-size:16px;
	line-height:16px;
	padding:6px 0 8px 0;
	display:block;
	word-wrap:break-word;
}

#nav-wrapper a:hover{
	color:#78b8c6;
	/*background:transparent url(../images/templates/arrow-navi-mirror.png) no-repeat bottom;*/
}

#nav-wrapper nav ul.sub{
	position:absolute;
	top:37px;
	margin:0 0 0 -45px;
	padding:0;
	display:none;
}

#nav-wrapper nav ul.sub li.arrow{
	width:100%;
	height:7px;
	line-height:7px;
	background:transparent url(../images/templates/arrow-subnavi-mirror.png) no-repeat top center;
	position:absolute;
	top:-7px;	
}

#nav-wrapper nav .heizung{
	margin:0 0 0 -45px !important;	
}

#nav-wrapper nav .wasser{
	margin:0 0 0 -48px !important;	
}

#nav-wrapper nav .solar{
	margin:0 0 0 -55px !important;	
}

#nav-wrapper nav .haustechnik{
	margin:0 0 0 -30px !important;	
}

#nav-wrapper nav .service-kontakt{
	margin:0 0 0 -11px !important;	
}

#nav-wrapper nav ul.sub li{
	float:none;	
	margin:0;
	padding:0;
}

#nav-wrapper nav ul.sub a:link, #nav-wrapper nav ul.sub a:visited{
	color:#fff;
	font-weight:normal;
	text-decoration:none;
	font-size:12px;
	width:150px;
	padding:5px 0 5px 0;
	display:block;
	text-align:center;
	background:transparent url(../images/templates/bg-navi.png);
}

#nav-wrapper nav ul.sub a:hover{
	color:#78b8c6;
	background:#000;
}

#content-wrapper{
	width:100%;
	min-height:530px;
	background:#fff url(../images/templates/bg-content.jpg) no-repeat top center;	
}

#content{
	width:980px;
	margin:0 auto 0 auto;
	padding-top:10px;
	padding-bottom:20px;
}

#footer{
	padding-top:10px;
	font-size:11px;	
}

#footer p{
	text-align:center;	
}

#content h1{
	font-family:'Neuton', Arial, Helvetica, sans-serif;
	font-size:25px;
	color:#002d6a;
	padding-bottom:10px;
	text-shadow:1px 1px 3px #888;
}

#content h3{
	font-family:'Neuton', Arial, Helvetica, sans-serif;
	font-size:20px;
	color:#002d6a;
	padding-bottom:10px;
	text-shadow:1px 1px 3px #888;	
}

#content ul{
	margin:0;
	padding:0 0 0 10px;
	list-style:none;
}

article li{
	padding-left:13px;
	background:url(../images/templates/ul-bullet.png) no-repeat 0 5px;
}

#content a{
	/*font-weight:bold;*/	
}

#content a:hover{
	text-decoration:underline;	
}

.box{
	width:320px;
	margin-right:10px;
	float:left;
}

.box-border{
	border-top:1px solid #9ba7cc;
	border-bottom:1px solid #9ba7cc;
}

.box .box-content{
	background:transparent url(../images/templates/bg-box.png) no-repeat top;
	padding:0 10px 10px 10px;	
}

.bb-heizung{
	height:386px;
	background:transparent url(../images/templates/bb-heizung.jpg) no-repeat top;
}

.sb-heizung{
	height:150px;
	background:transparent url(../images/templates/sb-heizung.jpg) no-repeat top;
}

.bb-heizung p,
.sb-heizung p{
	border-left:1px solid #e31b22;
	padding:0 10px 0 10px;	
}

.bb-wasser{
	height:386px;
	background:transparent url(../images/templates/bb-wasser.jpg) no-repeat top;
}

.sb-wasser{
	height:150px;
	background:transparent url(../images/templates/sb-wasser.jpg) no-repeat top;
}

.bb-wasser p,
.sb-wasser p{
	border-left:1px solid #002d6a;
	padding:0 10px 0 10px;	
}

.bb-solar{
	height:386px;
	background:transparent url(../images/templates/bb-solar.jpg) no-repeat top;
}

.sb-solar{
	height:150px;
	background:transparent url(../images/templates/sb-solar.jpg) no-repeat top;
}

.bb-solar p,
.sb-solar p{
	border-left:1px solid #fdc700;
	padding:0 10px 0 10px;	
}

.bb-content{
	margin-top:109px;	
}

.bb-content h1,
.sb-content h1{
	padding:0 0 7px 10px !important;
	color:#fff !important;
	text-shadow:0px 0px 2px #666 !important;
}

.bb-text-top,
.sb-text-top{
	width:100%;
	height:10px;
	background:transparent url(../images/templates/bg-box-45.png) no-repeat;
}

.bb-text-middle,
.sb-text-middle{
	background:transparent url(../images/templates/bg-white-90.png);	
}

.bb-text-middle a.arrow,
.sb-text-middle a.arrow{
	width:100%;
	height:9px;
	display:block;
	text-align:center;
	margin-top:10px;
	background:transparent url(../images/templates/box-arrows.png) no-repeat;	
}

.bb-text-middle .a-heizung,
.sb-text-middle .a-heizung{
	background-position:top center !important;	
}

.bb-text-middle .a-wasser,
.sb-text-middle .a-wasser{
	background-position:center -9px !important;	
}

.bb-text-middle .a-solar,
.sb-text-middle .a-solar{
	background-position:center -18px !important;	
}

.bb-text-bottom,
.sb-text-bottom{
	width:100%;
	height:10px;
	background:transparent url(../images/templates/bg-white-90.png);	
}

.last-child{
	margin-right:0;	
}

article{
	border-bottom:1px solid #004489;
	padding-bottom:15px;
}

article h1{
	border-bottom:1px solid #004489;
	margin-bottom:15px;
}

article p,
article li{
	font-size:14px;
	line-height:20px;
}

.imprint table{
	margin:0;
	padding:0;	
	border-collapse:collapse;
	border-spacing:0;
	font-size:14px;	
}

.imprint table td{
	vertical-align:top;
	padding-right:15px;
	line-height:20px;
}

.imprint table tr.spacer{
	height:15px;
	line-height:15px;
}

.imprint table td.td-200{
	width:200px;	
}

.imprint table td.td-300{
	width:300px;	
}

.frm-wrapper-left{
	width:300px;
	float:left;	
}

.frm-wrapper-right{
	width:600px;
	float:right;	
}

#map-holder{
	width:578px;
	height:400px;	
	padding:10px;
	border:1px solid #004489;
}

#map{
	width:100%;
	height:100%;	
}

#directions{
	width:600px;
	font-size:14px;
	border-bottom-width:600px;
	display:none;
}

#directions .adp-placemark{
	background:#fff;
	border:1px solid #004489;	
}

#directions .adp-marker{
	padding:10px;	
}

.form{
	font-size:14px;	
}

.form .frm-left{
	width:290px;
	float:left;	
}

.form .frm-right{
	width:290px;
	float:right;	
}

.form .btn-form{
	background:#004489;	
	color:#fff;
	float:right;
	width:290px;
	cursor:pointer;
	margin-bottom:0;
	border:1px solid #004489;
}

.form .btn-form:hover{
	background:#fff;
	color:#004489;
}

input,
select,
textarea{
	font-family:Arial, Helvetica, sans-serif;
	color:#3e3d40;
	border:1px solid #004489;
	padding:4px;
	margin-bottom:10px;
	width:280px;
}

textarea{
	font-size:14px;
	width:590px;
}

input.long{
	width:590px;	
}

select{
	width:290px;	
}

label{
	display:block;	
	font-weight:bold;
	margin-bottom:10px;
}

.form input.error,
.form select.error,
.form textarea.error{
	border:1px solid #ff0000;
}

.error-container{
	padding:10px;
	border:2px solid #ff0000;
	display:none;
	background:#fff;
	margin-bottom:10px;
}

.error-container label{
	margin:0;
	font-size:14px;
	border:none;
	font-weight:normal;
}

.error-container ul{
	margin:10px 0 0 10px;
	padding:0;
	list-style:none;
}

.error-container ul li{
	padding-bottom:5px;
}

#loader-frm{
	width:100%;
	height:100px;
	background:#fff url(../images/templates/ajax-loader.gif) no-repeat center 15px;
	position:relative;
	margin-bottom:15px;
	border:2px solid #004489;
}

#loader-frm div{
	width:100%;
	font-size:14px;
	position:absolute;
	bottom:5px;
	text-align:center;
	padding-bottom:10px;
}

#sitemap .wrapper{
	float:left;
	margin:0 20px 10px 0;
	width:230px;
}

#sitemap .last-child{
	margin-right:0;	
}

#sitemap ul li{
	/*float:left;
	margin-right:10px;*/
}

#sitemap a{
	color:#004489;
	text-decoration:none;
}

#sitemap a:hover{
	text-decoration:underline;	
}

table{
	margin:0;
	padding:0;	
	border-collapse:collapse;
	border-spacing:0;	
}

tr, td{
	margin:0;
	padding:0;	
}

th{
	background:#4f80b3;
	height:30px;
	border:1px solid #004489;
	color:#fff;
	padding:5px;
}

table.energy{
	width:980px;
	font-size:14px;
	border:1px solid #004489;
}

table.energy td{
	border:1px solid #004489;
	padding:5px;	
}

table.energy td.center{
	text-align:center;	
}

#ref-left{
	width:320px;
	float:left;	
	position:relative;
}

#ref-right{
	width:650px;
	float:right;
}

#ref-right .ref-image-wrapper{
	width:180px;
	height:110px;
	float:left;
	background:#fff;
	margin-right:25px;
	margin-bottom:25px;
	-webkit-box-shadow:0px 0px 3px 0px rgba(0, 0, 0, 0.5);
	box-shadow:0px 0px 3px 0px rgba(0, 0, 0, 0.5);
	-webkit-border-radius:5px;
	border-radius:5px;
	padding:10px;
}

#ref-right .last-child{
	margin-right:0;	
}

#ref-right .ref-image{
	width:180px;
	height:110px;
	overflow:hidden;	
}

#ref-left ul{
	margin:0;
	padding:0;	
}

#ref-left ul li{
	background:none;
	padding:0;
	height:50px;	
}

.carousel{
	width:280px;
	height:352px;
	position:relative;
	overflow:hidden;
	margin:40px 0 10px 0;	
}

.carousel ul{
	position:relative;
	margin:0;
	padding:0;
}

.carousel li{
	background:#fff url(../images/templates/ref-over.png) no-repeat 260px -49px !important;
	margin-bottom:10px;
}

.carousel li .item{
	padding:5px;
	border:1px solid #004489;
	cursor:pointer;
	height:40px;
}

.carousel .over,
.carousel .active{
	background:#4f80b3 url(../images/templates/ref-over.png) no-repeat 260px 10px;
	color:#fff;
}

.carousel .over strong,
.carousel .active strong{
	color:#fff !important;	
}

.carousel li .item strong{
	color:#004489;	
}

.cButton{
	width:135px;
	height:30px;
	background:url(../images/templates/carousel-buttons.png) no-repeat;
	display:block;
	cursor:pointer;
	position:absolute;
}

.cButton.up{
	left:0;
}

.cButton.up:hover{
	background-position:0 -30px;	
}

.cButton.down{
	right:40px;
	background-position:0 -60px;	
}

.cButton.down:hover{
	background-position:0 -90px;	
}

#loader-ref{
	width:100%;
	height:200px;
	background:#fff url(../images/templates/ajax-loader.gif) no-repeat center 83px;
	position:relative;
	margin-bottom:15px;
	border:2px solid #004489;
	display:none;
}

#loader-ref div{
	width:100%;
	font-size:14px;
	position:absolute;
	bottom:30px;
	text-align:center;
	padding-bottom:10px;
}

.news-wrapper{
	border-bottom:1px solid #004489;
	padding-bottom:20px;	
	margin-bottom:20px;
}

.news-left{
	width:320px;
	float:left;	
}

.news-right{
	width:640px;
	float:right;	
}

.news-last-child{
	margin-bottom:0;
	padding-bottom:0;
	border-bottom:none;	
}

.img-wrapper{
	width:300px;
	border:1px solid #004489;
	padding:5px;
	float:right;
	margin:0 0 15px 15px;
}

.img-wrapper .c-image{
	background:#fff;	
}
