*{
	padding:0;
	margin:0;
}

body #container{
	padding-top:150px;
	font-family:"Calibri", "Open Sans", sans-serif !important;
	
	hyphens:auto;
}

.nohyphens{
	hyphens:none !important;
	padding-right:35px !important;
}

body *{
	font-family:"Calibri", "Open Sans", sans-serif !important;
}

p, a, span, input, textarea, td, li, button, .ce_text, .caption{
	font-size:16px;
}

a, a:focus, a:active{
	color:#333 !important;
}

.cookiebar{
	z-index:50;
	background-color:rgba(42, 141, 5, 0.7);
	color:#fff;
}

.cookiebar a{
	color:#fff !important;
}

.cookiebar button{
	background-color:#fff !important;
	color:#2a8d05;
}

.cookiebar button:hover{
	opacity:0.7;
}





body .container{
	width:1500px;
	max-width:100%;
}


body .h1,body h1{
	font-size:40px;
}

body .h2, body h2{
	font-size:36px;
}

.h3, h3{
	
}

.h4, h4{
	
}

ul{
	padding-left:15px;
}

.ofv{
	overflow:visible;
}

.paddingBottom{
	padding-bottom:50px;
}

.paddingBox{
	padding:50px 0;
}

.paddingTop{
	padding-top:50px;
}

.centered{
	margin-left:50%;
	transform:translate(-50%,0);
}

.normText h1, .normText h2, .normText h3, .normText h4, .normText h1 strong, .normText h2 strong, .normText h3 strong, .normText h4 strong{
	color:#2a8d05;
	margin-bottom:20px;
	font-weight:bold;
}

.lightgrayBG{
	background-color:#e5e5e5;
}


h1 span{
	font-size:inherit;
}

.marginTop{
	margin-top:50px;
}

.marginBottom{
	margin-bottom:50px;
}

/*   ####################################################################################################*/

header{
	position: fixed;
	z-index: 1000;
	width:100%;
}

#menucontainer{
	padding-top:20px;
	padding-bottom:0px;
	
		
	border-top:5px solid #2a8d05;
	background-color:#fff;
	
	box-shadow:0 3px 4px rgba(0,0,0,0.1);
	
	width: 100%;
	
}

#header *{
	overflow:visible;
}

#seitenMenu .level_1{
	list-style-type:none;
	display:flex;
	flex-direction:row;
	justify-content:space-between;
	flex-wrap:nowrap;
	padding-top: 25px;
	padding-bottom: 10px;
}

#seitenMenu a{
	color:#000;
}

#seitenMenu a:hover{
	text-decoration:none !important;
}

#seitenMenu ul.level_1 li strong.active, #seitenMenu ul.level_1 li span:hover{
	padding-bottom:5px;
	border-bottom:3px solid #2a8d05;
}


#menu{
	display:flex;
	align-items:stretch;
	flex-direction:row;
	justify-content:space-between;

}

#topMenu{
	display:flex;
	flex-direction:row;
	justify-content:flex-end;
	flex-wrap:nowrap;
	align-items:stretch;
	height:60px;
}

.topLinks{
	padding:20px 0 20px 20px;
	text-align:center;
}

.topLinks a{
	color:#2a8d05 !important;

}

.notfallNummer + div{
	margin-left:20px;
}

.kundenportalLink{

	position:relative;
	background-color:#2a8d05;
}

.kundenportalLink a, .kundenportalLink a:hover{

	color:#fff !important;
	padding:20px 20px;
	height:60px;
}

.kundenportalLink p,.kundenportalLink a{
	max-height:70px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.notfallNummer{
	color:#2a8d05;
	display:flex;
	padding-top:5px;
}

.notfallNummer a{
	color:inherit !important;
}




#menuseite{
	position:fixed;
	right:0;
	z-index:3;
	margin-top:180px;
	transition-duration:0.5s;
}

.iconBox{
	display:flex;
	flex-direction: column;
	justify-content:space-between;
	min-width: 50px !important;
	padding: 0 !important;
	width:auto !important;
	
	float:right;
	position: absolute !important;
	right: 0;
	transition-duration:0.5s;
}

.iconBox:nth-child(2){
	margin-top:65px;
	float:right;
}


.iconBox:nth-child(3){
	margin-top:130px;
	float:right;
}

.iconBox:nth-child(4){
	margin-top:195px;
	float:right;
}

.iconBox:nth-child(5){
	margin-top:260px;
	float:right;
}


.sideIcon{
	margin-bottom:10px;
	display: flex;
	justify-content: flex-start;
	transition-duration:0.5s;
}


.sideIcon p{
	padding:2px 10px;
	opacity:0;
	transition-duration:0.5s;
	width:200px;
	margin-right:-200px;
}

.sideIcon figure{
	background-color:#2a8d05;
	padding:10px;
	height:50px;
	min-width:50px;
	width:50px;
	margin-right:10px;
	cursor:pointer;
	transition-duration:0.5s;
}

.sideIcon figure img{
	width:100%;
	height:auto;
}

.sideIcon:nth-child(2) figure{
	background-color:rgba(42, 141, 5, 0.7);
}

.sideIcon:nth-child(3) figure{
	background-color:rgba(42, 141, 5, 0.5);
}


.sideIcon.call:hover  p, .iconBox.highlighted .sideIcon.call p{
	background-color:#fff;
	margin-right:0px;
	transition-duration:0.5s;
	height:auto;
	opacity:1;
	box-shadow:0 3px 4px rgba(0,0,0,0.1);
}


#wrapper .targetted:focus{
	outline:5px solid red;
	outline-offset: 5px;
	color:#fff !important;
	background-color:red;
	transition:transform 0.1s ease-out;
}

.sideIcon.open:hover{
	
}

.sideIcon.open:hover  p, .iconBox.highlighted .sideIcon.open p{
	background-color:#fff;
	margin-right:0px;
	transition-duration:0.5s;
	height:auto;
	opacity:1;
	box-shadow:0 3px 4px rgba(0,0,0,0.1);
}

.sideIcon.logging:hover  p, .iconBox.highlighted .sideIcon.logging p{
	background-color:#fff;
	margin-right:0px;
	transition-duration:0.5s;
	height:auto;
	opacity:1;
	box-shadow:0 3px 4px rgba(0,0,0,0.1);
}







#bottomLine{
	padding:10px 10px 0px 10px;
	background-color:#e5e5e5;
	font-size:14px;
}

#bottomLine p, #bottomLine a{
	font-size:14px;
}
#bottomLine a{
	font-weight:bold;
}


#footercontainer{
	background-color:#2a8d05;
}

div#footer a, div#footer a:hover{
	color:#fff !important;
}

div#footer{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	color:#fff;
	padding:20px;
}











.mod_rocksolid_slider a.rsts-prev:hover,.mod_rocksolid_slider a.rsts-next:hover{
	background-color:transparent;
}


.mod_rocksolid_slider a.rsts-prev,.mod_rocksolid_slider a.rsts-next{
	bottom:calc(50% - 50px);
	background-image:url(../img/arrow-right.png);
	
	background-size:contain;
	background-repeat:no-repeat;
	background-position:center center;
	border:0;
	box-shadow:none;
	
	height:100px;
	width:80px;
}

.mod_rocksolid_slider a.rsts-prev{
	right:unset;
	left:20px;
	background-image:url(../img/arrow-left.png);
}

.mod_rocksolid_slider img{
	width:100%;
	height:auto;
}

.mod_rocksolid_slider .rsts-nav-bullets, .rsts-caption{
	display:none;
}

.mod_rocksolid_slider .sliderslide{
	position:relative;
}

#startslider.mod_rocksolid_slider .sliderslide{
	position:absolute;
}

.mod_rocksolid_slider .sliderslide .ce_image{
	position:absolute;
	padding:0;
	z-index:-1;
	left:0;
	top:0;
	width:100%;
}

.mod_rocksolid_slider .sliderText{
	padding:150px;
}

.sliderText{
	padding:unset;
}

.sliderText h1{
	color:#fff;
	padding:15px 20px;
	display:table;
	background-color:#2a8d05;
	font-weight:bold;
}

.sliderText p{
	background-color:rgba(255,255,255,0.7);
	padding:15px 20px;
	display:table;
	color:#000;
}




.serviceBox{
	margin-top:-120px;
	min-height:350px;
}

.serviceKachel h2, .serviceKachel figure{
	background-color:rgba(42, 141, 5, 0.7);
}

.serviceKachel h2{
	color:#fff;
	padding:15px;
	min-height:100px;
	margin-bottom:0;
}


.serviceKachel figure{
	box-shadow:0 2px 4px rgba(0,0,0,0.4);
	overflow:visible;
}

.serviceKachel{
	transition-duration:0.2s;
	overflow:visible;
}

.serviceKachel:hover{
	transition-duration:0.2s;
	transform:scale(1.1);
	margin-top:2px;
}



#kportalinfo{
	background-image:url(../Headerbilder/pc-lady.jpg);
	background-position:center bottom;
	background-size:auto 100%;
	
	padding-bottom:100px;
}


div.kpInfoListe{
	background-color:#2a8d05;
	padding:15px 30px;
	color:#fff;
	
	box-shadow:0 2px 4px rgba(0,0,0,0.4);
}

.kpInfoListe ul{
	list-style-type:none;
	padding-left:40px;
	margin-bottom:30px;
	margin-top:15px;
}

.kpInfoListe li{
	margin-bottom:15px;
}

.kpInfoListe li::before{
	content:"\2713";
	font-size:35px;
	margin-top:-10px;
	position:absolute;
	margin-left:-35px;
}


.kpLinkBox{
	position:relative;
}

.kpLinkBox a, .kpLinkBox a:hover{
	text-decoration:none !important;
}

.kpLinkBox .ce_text{
	margin-top:30%;
	transform:translate(0,-50%);
}

.kpLinkBox p:nth-child(2) a{
	background-color:#2a8d05;
	color:#fff !important;
	padding:15px 20px;
	transform:translate(0, 5px);
	position:relative;
	z-index:1;
}

.kpLinkBox p:first-child strong{
	background-color:rgba(255,255,255,0.8);
	color:#2a8d05;
	display:table;
	padding:15px 10px 25px;
	margin-left:50%;
	transform:translate(-50%,0);
	min-width:55%;
	margin-bottom:-10px;
}


.kpLinkBox p:first-child strong::after{
	content:">";
	padding:4px 10px 6px;
	border-radius:50%;
	border:1px solid #2a8d05;
	margin-left:10px;
}


.unterHeading{
	margin-top:-10px;
	opacity:0.6;
}


.leistungenBox{
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
}

.leistungsKachel{
	background-color:#2a8d05;
	border:5px solid #e5e5e5;
	padding:15px;
	color:#fff;
	padding-bottom:15px;

}

.leistungsKachel a,.leistungsKachel a:hover{
	color:#fff !important;
	padding-top:35px;
	padding-bottom:35px;
	text-decoration:underline;
	width:100%;
}


#sg, #vz, #es, #fbg{
	background-image:url(../img/gear.png);
	background-position:center 25px;
	background-size:80% auto;
	background-repeat:no-repeat;
	
	padding-top:150px;
	height:auto;
}

#vz{
	background-image:url(../img/tools.png);
}

#es{
	background-image:url(../img/light.png);
}

#fbg{
	background-image:url(../img/question.png);
}





#startNews{
	display:flex;
	justify-content:space-between;
	overflow:visible;
	hyphens:auto;
}

#startNews .beitrag{
	width:48%;
	position:relative;
	min-height:320px;
	padding:15px 25px;
	box-shadow:inset -400px 0 0 rgba(42, 141, 5, 0.7), 0 3px 4px rgba(0,0,0,0.5);
	color:#fff;
	overflow:hidden;
	margin-bottom:15px;
	
	transition-duration:0.2s;

}

#startNews .beitrag:hover{
	transition-duration:0.2s;
	transform:scale(1.05);
	
	resize:horizontal vertical;
}


#startNews a, #startNews a:hover{
	color:#fff !important;
	text-decoration:none;
}

#startNews h2{
	margin-bottom:30px;
}

#startNews h2 a{
	font-size:inherit;
	font-weight:bold;
}

#startNews .beitrag figure{
	position:absolute;
	z-index:-1;
	left:0;
	top:0;
	min-width:100%;
}

#startNews .beitrag .more{
	position:absolute;
	text-align:left;
	right:20px;
	padding-left:20px;
	bottom:15px;
}

#startNews .beitrag h2, #startNews .beitrag .ce_text, #startNews .beitrag .more{
	width:51%;
	float:right;
	color:#fff;
}




.headerBild{
	position:absolute;
	z-index:-1;
	left:0;
	top:0;
	width:100%;
	max-height:600px;
}

.headerBild img{
	min-width:100%;
}

.header{
	min-height:600px;
	overflow:hidden !important;
}

.header > .container{
	position:relative;
}

.header .sliderText{
	margin-top:25%;
	transform:translate(0,-50%);
}


.bildBG{
	min-height:50VH;
}

.bildBG .container{
	position:relative;
}

.bildBG .container div{
	top: 22vh;
	position:absolute;
	transform:translate(-50%,-50%);
}






#hausBG, #stromBG, #gasBG, #kontaktBG, #wasserBG, #serviceBG, #newsBG, #waermeBG{
	background-image:url(../img/house.png);
	background-position:center center;
	background-size:auto 70%;
	background-repeat:no-repeat;
	
	padding-bottom:100px;
}

#stromBG{
	background-image:url(../img/plug.png);
}

#gasBG{
	background-image:url(../img/flame.png);
}

#kontaktBG{
	background-image:url(../img/kontakttextBG.png);
}

#wasserBG{
	background-image:url(../img/wasserBG.png);
}

#serviceBG{
	background-image:url(../img/service.png);
}

#newsBG{
	background-image:url(../img/newsBG.png);
}

#waermeBG{
	background-image:url(../img/waermeBG.png);
}


.anfahrt *{
	color:#fff;
}

.anfahrt a{
	background-color: #2a8d05;
	border: none;
	color: #fff !important;
	padding: 15px 20px;
	width: unset !important;
	margin-top:15px;
	margin-bottom: 15px;
}

.anfahrt p:nth-child(1){
	padding:15px;
}


#mapBG{
	background-image:url(../img/map.jpg);
	background-position:center center;
	background-size:cover;
	background-repeat:no-repeat;
}




.downloadBox{
	display:flex;
	flex-wrap:wrap;
}

.downloadKachel{
	overflow:visible;
	
	background-image:url(../img/download.png);
	background-position:center center;
	background-size:auto 60%;
	background-repeat:no-repeat;
	
	margin-bottom:40px;
}

.downloadKachel p{
	border:2px solid #2a8d05;
	padding:30px 20px 35px;
	text-align:center;
	overflow:visible;
	
	min-height: 180px;
}

.downloadKachel p a:after{
	content:"Download";
	position:absolute;
	bottom:-15px;
	left:50%;
	padding:10px 15px;
	background-color:#2a8d05;
	color:#fff;
	transform:translate(-50%,0);
}


.downloadKachel.exLink p a:after{
	content:"externer Link";
}

.downloadKachel.exLink{
	background-image:url(../img/download-link.png);

}






.logoBox{
	display:flex;
	align-items:stretch;
	justify-content:flex-start;
	flex-wrap:wrap;
}

.evLogo{
	overflow:visible;
	padding:25px;
}

.evLogo figcaption{
	text-align:center;
	font-size:14px;
	margin-top:20px;
}

.evLogo figure{
	box-shadow: 0 3px 4px rgba(0,0,0,0.5);
	padding:15px;
	text-align:center;
	height:100%;
}










.zeitpunkt{
	border:5px solid #2a8d05;
	overflow:visible;
	background-color:#fff;
	overflow:visible;
}

.zeitpunkt figure{
	position:absolute;
	position: absolute;
	top: 100%;
	overflow:visible;
	transform: translate(40%, calc(-100% - 120px));
	background-color:#2a8d05;
}

.zeitpunkt figure img{
	opacity:0.5;
	filter:grayscale(100%);
}


.floatright{
	float:right !important;
}


.startpunkt.floatright::before{
	content:"";
	padding:30px 25%;
	border-bottom:3px solid #2a8d05;
	border-left:3px solid #2a8d05;
	position:absolute;
	z-index:-1;
	margin-left:calc(-50%);
	margin-top:0px;
}

.startpunkt::after, .drittpunkt::after{
	content:"";
	padding:80px 75%;
	border-top:3px solid #2a8d05;
	border-left:3px solid #2a8d05;
	position:absolute;
	z-index:-1;
	margin-left:calc(-150% + 30px);
	margin-top:-60px;
}

.zweitpunkt::before{
	content:"";
	padding:30px;
	border:3px solid #2a8d05;
	border-radius:50%;
	position:absolute;
	z-index:-1;
	right:-50%;
	margin-top:-100px;
}

.zweitpunkt::after, .viertpunkt::after{
	content:"";
	padding:80px 75%;
	border-top:3px solid #2a8d05;
	border-right:3px solid #2a8d05;
	position:absolute;
	z-index:-1;
	margin-left:75%;
	margin-top:-60px;
}


.fuenftpunkt::before{
	content:"";
	font-size:80px;
	font-weight:100 !important;
	padding:30px;
	border:3px solid #2a8d05;
	border-radius:50%;
	position:absolute;
	z-index:-1;
	left:-50%;
	margin-top:-100px;
}




#p6::before, .punkt-links::before{
	content: "";
	padding: 80px 75%;
	border-top: 3px solid #2a8d05;
	border-left: 3px solid #2a8d05;
	position: absolute;
	z-index: -1;
	margin-left: calc(50% + 30px);
	margin-top: -60px;

}

.punkt-rechts{
	float:right !important;
}

#p7::before, .punkt-rechts::before{
	content:"";
	padding:80px 75%;
	border-top:3px solid #2a8d05;
	border-right:3px solid #2a8d05;
	position:absolute;
	z-index:-1;
	margin-left:calc(-150% + 30px);
	margin-top:-60px;
}






input.formfield, textarea.formfield{
	border:2px solid #2a8d05;
	width:100%;
	padding:15px;
}

body #kf input.formfield, body #kf textarea.formfield{
	border:2px solid #2a8d05;
	width:100%;
	padding:15px;
}



button.sender{
	background-color:#2a8d05;
	border:none;
	color:#fff;
	padding:15px 20px;
	width:unset !important;
	margin-left:50%;
	transform:translate(-50%,10px);
	margin-bottom:15px;
}

.dse span{
	display:flex;
	justify-content:center;
	align-items:baseline;
}

.dse input{
	margin-right:10px !important;

}

.dse label, .dse a, .dse a:hover, .dse a:focus, .dse a:active{
	color:#2a8d05 !important;
}




.adressen{
	display:flex;
	align-items:stretch;
	justify-content:space-between;
	flex-wrap:wrap;
}


.adressBox{
	background-color:#f1f1f1;
	padding:15px;
	border:5px solid #fff;
	line-height:1.8;
}

.adressBox h4{
	font-weight:bold;
}

.adressBox a, .adressBox strong{
	color:#2a8d05 !important;
	
}







#kpBG, #estBG{
	background-image:url(../img/kundenportal-lady.jpg);
	background-position:center center;
	background-size:cover;
	background-repeat:no-repeat;
	
	height:350px;
	padding:0;
}


#estBG{
	background-image:url(../Headerbilder/Gluehbirnen.jpg);
}




.kundenloginArtikel:hover{
	transition-duration:0.3s;
	transition-timing-function:ease-out;
	box-shadow: 585px 0 0 rgba(42, 141, 5, 0.7);
}

.est:hover{
	transition-duration:0.3s;
	transition-timing-function:ease-out;
	box-shadow: -584px 0 0 rgba(42, 141, 5, 0.7);
}

.kundenloginArtikel, .est{
	background-color:rgba(42, 141, 5, 0.7);
	height:100%;
	color:#fff;
	
	padding: 15px 25px !important;
	transition-duration:0.3s;
}


.kundenloginArtikel a, .est a{
	position: absolute;
	bottom: 45px;
	color: #fff !important;
	font-weight: bold;
}


.kundenloginArtikel a::after , .est a::after{
    content: ">";
    padding: 4px 10px 6px;
    border-radius: 50%;
    border: 1px solid #fff;
    margin-left: 10px;
    text-decoration:none !important;
}









.ruleBox{
	display:flex;
	align-items:stretch;
	justify-content:space-between;
}

.ruleBox a{
	color:#2a8d05 !important;
}

.ruleKachel{
	background-color:#fff;
	padding:50px 20px 30px 120px !important;
	border: 5px solid #e5e5e5;
}

.ruleKachel sup{
	background-color: rgba(42, 141, 5, 0.5);
	color: rgba(42, 141, 5, 1);
	padding: 15px 10px 10px;
	text-transform: uppercase;
	font-size: 16px !important;
	display: table;
	position: absolute;
	margin-top: 8px;
	right: 0;
	line-height:1.2;
}

.ruleKachel h1, .ruleKachel h2{
	display: table;
	position: absolute;
	left: 5px;
	bottom: -41px;
	font-size: 180px;
	opacity:0.5;
	color:rgba(42, 141, 5, 1);
}








.toggler{
	background-color: rgba(42, 141, 5, 1);
	color:#fff;
	padding:10px 30px 10px 10px;
	margin-bottom:10px;
	text-transform:uppercase;
	font-size:14px;
	position:relative;
}

.toggler.ui-accordion-header-active{
	background-color: rgba(42, 141, 5, 0.5);
	color:#2a8d05;
	padding:10px 30px 10px 10px;
	margin-bottom:10px;
	text-transform:uppercase;
	font-size:14px;
}

.toggler.ui-accordion-header-active::after{
	content:"-";
	font-size:25px;
	color:#fff;
	font-weight: bolder;
	right: 15px;
	top: 0px;
	position: absolute;
}


.fbg .ui-accordion-content-active{
	background-color:#e5e5e5;
	padding:10px;
}

.fbg .ui-accordion-header-collapsed::after{
	content:"+";
	font-size:25px;
	color:#fff;
	font-weight: bolder;
	right: 13px;
	top: 4px;
	position: absolute;
}



.fbg{
	margin-bottom:10px;
}



.installerKachel h2{
	position:absolute;
	z-index:1;
	top:50%;
	width:calc(100% - 20px);
	transform:translate(0, -80%);
	color:#fff;
}

.installerKachel{
	position:relative;
	overflow:hidden !important;
	padding:0 !important;
	width:50%;
	border:5px solid #fff;
}

.installerKachel h2 a{
	font-size:inherit;
	color:#fff !important;
	text-decoration:none;
	padding:180px;
	white-space:nowrap;
}

.installerKachel figure{
	overflow:hidden !important;
}

.installerKachel figure::before{
	content:"";
	padding:50%;
	position:absolute;
	left:0;
	top:0;
	background-color:rgba(42, 141, 5, 0.5);
}



.mdl ul{
	padding-left:35px;
	margin-top:25px;
	margin-bottom:25px;
}

.mdl li{
	margin-bottom:10px;
	list-style-type:none;
}

.mdl li::before{
	content:"\2713";
	font-size:35px;
	margin-top:-15px;
	position:absolute;
	margin-left:-35px;
	color:rgba(42, 141, 5, 1);
}




.widget.upper{
	width:40%;
	padding-left:15px;
	
}

label.upper{
	font-weight:400;
	font-size:12px;
}

.ce_form .formbody{
	display:flex;
	flex-wrap:wrap;
}

.widget.dse{
	display: flex;
	justify-content: flex-end;
	max-width:60% !important;
}



.apBox{
	display:flex;
	align-items:stretch;
	flex-wrap:wrap;
}

.ap a, .ap a:hover, .ap a:active, .ap a:focus{
	color:#fff !important;
}

.ap{
	background-color:rgba(42, 141, 5, 1);
	color:#fff;
	padding:30px !important;
}

.ap ul{
	padding-left:35px;
}

.ap li{
	list-style-type:none;
	font-weight:bold;
}

.ap li::before{
	content:url(../img/tel.png);
	font-size:35px;
	margin-top:-15px;
	position:absolute;
	margin-left:-33px;
}



.apBild{
	padding-right:0 !important;
}

.apBild figure, .apBild figure img{
	width:100%;
}

.apBild p, .apBild h3{
	
	color:#fff;
	text-transform:uppercase;
	margin:0;
	padding-left:10px;
	padding-right:10px;
	position:absolute;
	bottom:0;
	z-index:1;
	width:100%;
}

.apBild p{
	padding-top:10px;
	margin-bottom:36px;
}

.apBild p::before{
	content:"";
	background-color:rgba(42, 141, 5, 0.5);
	position:absolute;
	z-index:-1;
	left:0;
	top:0;
	padding:40px 50%;
}

.apBild h3{
	padding-bottom:10px;
	margin-bottom:0px;
}







#stromtarifeliste{
	display:flex;
	align-items:stretch;
	justify-content:space-evenly;
}

#stromtarifeliste .stromtarif{
	border:5px solid #e5e5e5;
	width:32%;
}

#stromtarifeliste .stromtarif h2{
	background-color:rgba(42, 141, 5, 1);
	color:#fff;
	padding:0 10px 10px 10px;
	border:5px solid rgba(42, 141, 5, 1);
}

#stromtarifeliste .stromtarif h2 a{
	color:#fff !important;
}

#stromtarifeliste .stromtarif .ce_text{
	padding:10px;
	background-color:#fff;
	margin-top:-15px;

}

#stromtarifeliste .more a{
	width:0;
	font-size:0;
	overflow:visible;
}

#stromtarifeliste .more a::after{
	content:"Tarifdetails +";
	font-size:initial;
	background-color: rgba(42, 141, 5, 0.5);
	color: rgba(42, 141, 5, 1);
	padding: 5px 5px 5px;
	text-transform: uppercase;
	display: table;
	float:right;
}





.detailBox{
	padding:5px 15px 25px;
	margin-top:15px;
	overflow:visible;
	position: absolute;
	width: 100%;
	bottom: 0;
	right: 0;

}

.detailBox.noAccordion{
	position:relative !important;
}


.detailBox .ce_text{
	padding-left:0 !important;
}



.tarifBox{
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}

.tarifKopf{
	background-color:rgba(42, 141, 5, 1);
	color:#fff;
	padding:10px 10px 10px 10px;
}

.tarifKopf p{
	margin:0;
}

.tarifInfo{
	padding-left:5px;
	padding-right:5px;
	margin-bottom:35px;
	width:100%;
}

div.tarifInfo.norm{
	margin-bottom:0px;
}

.tarifInfo p{
	background-color:#fff;
	padding:10px 40px 10px 10px;
}





.offen{
	width:100% !important;
}

.offen .detailBox{
	position:relative !important;
}

.offen .detailBox .toggler{

	right: -25px !important;
	bottom:unset !important;
}

.normal{
	width:33.333333%;
}

.tarifKachel{
	transition-delay:0.2s;
	transition-duration:0.3s;
	
	background-color:#fff;
	border-left:15px solid #e5e5e5;
	border-right:15px solid #e5e5e5;
	padding-left:0 !important;
	padding-right:0 !important;
	
	margin-bottom:25px;
	min-height:200px !important;
}

.tarifKachel .toggler{
	display: table;
	background-color: rgba(42, 141, 5, 0.5);
	color: #2a8d05;
	padding: 10px 30px 10px 10px;
	text-transform: uppercase;
	font-size: 14px;
	position: absolute;
	bottom: -10px;
	right: 0;

}

.tarifKachel .toggler.ui-accordion-header-collapsed::after{
	content:"+";
	font-size:25px;
	font-weight: bolder;
	right: 10px;
	top: 1px;
	position: absolute;
}

.tarifKachel .toggler.ui-accordion-header-active::after{
	color:inherit !important;
}

.tarifKachel .toggler.ui-accordion-header-active{
	margin-bottom:-25px;
	transform: translate(calc(-100% + 15px), -100%);
	font-size:0;
}


.tarifDetail a{
	color:#2a8d05 !important;
}

.tarifDetailTabelle table{
	width:100%;
	margin-bottom:20px;
}

.tarifDetailTabelle .row_0 td{
	font-weight:bold;
	border:1px solid #fff;
	background-color:rgba(42, 141, 5, 0.5);
	width:25%;
	padding:10px;
}

.tarifDetailTabelle td{
	border:1px solid #fff;
	padding:10px;
	background-color:rgba(0, 0, 0, 0.05);
}

.tarifKachel .downloadKachel{
	padding-left:0 !important;
	background-position: center 10px !important;
}

.tarifKachel .downloadKachel p{
	min-height:unset !important;
	
}






.ansprechpartner{
	background-color:rgba(42, 141, 5, 1);
	color:#fff;
	padding-bottom:15px;
	box-shadow:0 4px 4px rgba(0,0,0,0.5);
	
	margin-bottom:30px;
}

.ansprechpartner h3, .ansprechpartner p, .ansprechpartner ul, .ansprechpartner li {
	padding:0 15px;
	list-style-type:none;
}

.ansprechpartner figure{
	margin-bottom:-92px;
}

.ansprechpartner h3{
	position:relative;
	padding-top:10px;
	padding-bottom:10px;
	background-color:rgba(42, 141, 5, 0.5);
}


.ansprechpartner figure img{
	width:100%;
}

.ansprechpartner li, .apBox li{
	padding-left:50px;
	margin-bottom:10px;
}

.ansprechpartner li:nth-child(1)::before{
		content: url(../img/tel.png);
	    font-size: 35px;
	    margin-top: -15px;
	    position: absolute;
	    margin-left: -33px;
}

.ansprechpartner li:nth-child(2)::before, .apBox li:nth-child(2)::before{
		content: url(../img/mail.png);
	    font-size: 35px;
	    margin-top: -15px;
	    position: absolute;
	    margin-left: -33px;
}

.ansprechpartner a{
	color:#fff !important;
}

.apBox ul{
	padding-left:0px;
	padding-top:10px;
}

.ansprechpartnerBox{
	/* position: absolute;*/
	z-index: 3;
	left: 0;
	padding: 0 !important;
	max-width: 350px;
	/* transform: translate(0,-50px); */
	overflow:visible;
	
	margin-left:0px;
	transition-duration:0.3s;
}

/*
.ansprechpartnerBox:hover{
	margin-left:0px;
	transition-duration:0.3s;
}


.ansprechpartnerBox::after{
	content:"Ansprechpartner";
	position: absolute;
	right: -107px;
	top: 62px;
	transform: rotate(-90deg);
	color: #fff;
	text-align: right;
	font-size: 20px;
	background-color: #2a8d05;
	padding: 8px 10px;
	
	cursor:pointer;
}
*/




.sideDownloadBox{
	position: absolute;
	z-index: 4;
	left: 0;
	padding: 2px 0 0 0 !important;
	max-width: 350px;
	transform: translate(0,400px);
	overflow:visible;

	transition-duration:0.3s;
}

.sideDownloadBox.lessTransform{

	transform: translate(0, 150px);

}



.sideLinks{
	display:flex;
	flex-direction:column;
	justify-content:space-between;
}

.sideLinks p{
	margin-bottom:10px;
	padding:10px 15px 15px 0;
}

.sideLinks a, .sideLinks a:focus, .sideLinks a:active{
	border:1px solid #ee7d21;
	border-left:0;
	color:#ee7d21 !important;
	padding:10px 15px 15px 30px;
	background-color:#fff;
	box-shadow:0 3px 3px rgba(0,0,0,0.05);
	display:inline-block;
}

.sideLinks a:hover{
	background-color:#ee7d21;
	color:#fff !important;
}






#baustellen {
	padding: 10px;
	
	position:relative;
}

#baustellen figure{
	float: right;
	position: absolute;
	right: 0;
	top: -10px;
}

#baustellen .textOnly{
	max-width:100%;
	background-color: #e5e5e5;
	border-top: 15px solid #fff;
	border-bottom: 10px solid #fff;
	padding-right:55%;
	padding-left:15px;
	padding-top:15px;
	padding-bottom:15px;
}






#newsbereich .beitrag{
	margin-bottom:35px;
	position:relative;
}


#newsbereich .beitrag.odd, #baustellen .textOnly{
	display:flex;
	justify-content:space-between;
	flex-direction:row;
	flex-wrap:wrap;
}

#newsbereich .beitrag.even{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	flex-direction:row-reverse;
}

#newsbereich .beitrag figure, #newsbereich .beitrag .textOnly{
	max-width:50%;
	width:50%;
}

#newsbereich .beitrag figure *{
	display:flex;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center center;
}


#newsbereich .beitrag .textOnly{
	padding:25px;
	background-color:#e5e5e5;
	border-top:15px solid #fff;
	border-bottom:10px solid #fff;
}


#newsbereich .beitrag .textOnly a{
	font-size:inherit;
	color:#2a8d05 !important;
}

#newsbereich .beitrag .textOnly p.more{
	position:absolute;
	bottom:20px;
}


#newsbereich .beitrag .textOnly .ce_text p{
	color:rgba(0,0,0,0.6);
}




.newsleser .beitrag h1{
	color:#2a8d05 !important;
}


.link p{
	margin-top:20px;
	margin-bottom:25px;
}

.link a,.link a:hover, .link a:focus, .link a:active{
	color:#2a8d05 !important;
}

.back{
	margin-top:20px;
}

.back a, .back a:hover, .back a:focus, .back a:active{
	padding:10px 15px;
	color:#fff !important;
	background-color:#2a8d05;
	
}






.pagination{
	width:100%;
}

.pagination ul{
	display:flex;
	justify-content:flex-start;
	list-style-type:none;
	padding-left:0;
}

.pagination li{
	margin-left:3px;
	margin-right:3px;
}

.pagination li a, .pagination li span{
 	padding:5px 10px;
 	border:1px solid #2a8d05;
 }
 
.pagination li span.active{
 	color:#fff;
 	background-color:#2a8d05;
 
}
 
 
 
 
 
 
.archivBox{
 	background-color:#2a8d05;
 	padding-bottom:20px;
}

.archivBox *{
	color:#fff !important;
}

.archivBox ul.level_1 > li{
	list-style-type:none;
}

.archivBox ul.level_1 > li a{
	font-weight:bold;
}


.newsarchiv > h1{
	color:#2a8d05 !important;
	font-weight:bold;
	padding-bottom:10px;
	border-bottom:2px solid #2a8d05;
	margin-bottom:25px;
}




.newsarchiv .beitrag{
	margin-bottom:35px;
	position:relative;
	display:flex;
	flex-direction:row-reverse;
	align-items:stretch;
}

.newsarchiv .beitrag figure{
	height:100%;
	max-width:350px;
	min-height:200px;
	overflow:hidden;
}

.newsarchiv .beitrag figure img{
	min-width: 300px;
	min-height: 200px;
	width: auto;
	height: auto;
	max-width: 500px;
	max-height: 400px;
}


.newsarchiv .beitrag .textOnly{
	background-color:#e5e5e5;
	position:absolute;
	top:0;
	left:0;
	padding:25px;
	width:calc(100% - 350px);
	height:100%;
	
	border-top:15px solid #fff;
	border-bottom:10px solid #fff;
}

.newsarchiv .beitrag .textOnly h2 a{
	font-size:inherit;
	color:#2a8d05 !important;
}

.newsarchiv .beitrag .textOnly p.more{
	position:absolute;
	bottom:20px;
}

.newsarchiv .beitrag .textOnly p.more a{
	color:#2a8d05 !important;
}


.nLink{
	margin-top:15px;
	padding:20px;
}

.nLink a{
	padding:15px 20px;
	color:#fff !important;
	background-color:#2a8d05 !important;
}






.verzTabelle > h3{
	background-color:rgba(42, 141, 5, 1);
	color:#fff;
	padding:10px 10px 10px 10px;
	text-transform:uppercase;
}

.verzTabelle table{
	width:100%;
}

.verzTabelle td{
	width:auto;
	padding:10px;
	border:1px solid #ddd;
	font-size:14px;
}

.verzTabelle tr:nth-child(1){
	font-weight:bold;
}




.reverseHistory{
	display:flex;
	flex-wrap:wrap;
	flex-direction:column-reverse;
}

.reverseHistory .fuenftpunkt::before, .reverseHistory .startpunkt::before, .reverseHistory .startpunkt::after,.reverseHistory .zweitpunkt::before{
	content:unset;
}


.reverseHistory .fuenftpunkt::before{
	content:"";
	padding:80px 75% !important;
	border-top:3px solid #2a8d05 !important;
	border-right:3px solid #2a8d05 !important;
	border-radius:0 !important;
	border-bottom:0 !important;
	border-left:0 !important;
	position:absolute !important;
	z-index:-1;
	margin-left:calc(-100% + 30px) !important;
	margin-top:-60px !important;
}

.reverseHistory .viertpunkt::before{
	content: "";
	padding: 80px 75%;
	border-top: 3px solid #2a8d05;
	border-left: 3px solid #2a8d05;
	position: absolute;
	z-index: -1;
	margin-left: calc(50% + 30px);
	margin-top: -60px;
}






.greenBG{
	background-color:#2a8d05;
	color:#fff;
}

.magDownload *{
	color:#fff !important;
}

.magDownload a{
	background-color:#fff;
	color:#2a8d05 !important;
	padding:10px 15px;
}


.linkgreen a,.linkgreen a:hover, .linkgreen a:focus, .linkgreen a:active{
	color:#2a8d05 !important;
}




 .adressBox table{
 	width:100% !important;
 }

.adressBox td{
	vertical-align:baseline;
	width:auto;
	line-height:1.3;
}

.adressBox tr{
	padding-bottom:10px;
}

.adressBox td strong{
	width:80px;
	min-width:unset;
	max-width:unset;
	display:block;
	vertical-align:top;
}


.verzTabelle{
	padding:0 !important;
}

.installer{
	background-color:#efefef;
	border:2px solid #fff;
	min-height:290px !important;
	max-height:unset;
	height:auto;
}

.installer h4{
	color:#fff;
	background-color:#2a8d05;
	padding:3px 5px 5px 5px;
}
































@media (max-width:1399px){
	
	#startslider, .header, .headerBild{
		max-height:500px;
	}
	
	.header, .headerBild{
		min-height:unset !important;
		height:500px;
	}
	
}








@media (max-width:1199px){
	
	#baustellen figure{
		max-width:50%;
		height:100%;
	}
	
	#baustellen figure img{
		height: 100%;
		width: auto !important;
		max-width:unset;
	}



	
	
	
	
	#startNews .beitrag figure {
		height:100%;
	}
	
	#startNews .beitrag figure img{
		min-height:100%;
		min-width:100%;
		width:auto;
	}
	
	#startNews .beitrag h2{
		margin-bottom:15px;
		width:65%;
	}
	
	#startNews .beitrag .ce_text{
		width:65%;
	}
	
	.leistungenBox div > h3{
		hyphens:auto;
	}
	
	.leistungenBox div p:last-child{
		text-align:center !important;
		margin-top:15px;
	}
	
	#sg, #vz, #es, #fbg{
		padding-top:100px;
	}
	
	.labels{
		width:100%;
		padding-left:0;
		margin-bottom:25px;
	}
	
}









@media (max-width:991px){
	
	body div.switches{
		display:none !important;
	}
	
	
	#baustellen figure{
		display:none;
	}
	
	#baustellen .textOnly{
		width:100%;
		padding:15px !important;
	}
	
	#baustellen{
		max-width:600px;
		width:100%;
		margin-left:50%;
		transform:translate(-50%,0);
	}
	
	
	
	#startslider, .header, .headerBild{
		max-height:400px;
	}
	
	.header, .headerBild{
		min-height:unset !important;
		height:400px;
	}
	
	
	.mod_rocksolid_slider .sliderText {
	    padding-top: 80px !important;
	    padding-left:15px !important;
	}
	
	a.rsts-prev, a.rsts-next{
		display:none;
	}
	
	.serviceKachel:hover {
		transform:none;
		margin:0;
	}
	
	
	#footercontainer{
		padding:0 !important;
	}
	
	div#footer > div{
		padding:15px 25px;
	}
	
	
	#startNews{
		justify-content: center;
		flex-wrap: wrap;
		flex-direction: row;
	}
	
	#startNews .beitrag{
		max-width:600px;
		width:100%;
		box-shadow: inset -100VW 0 0 rgba(42, 141, 5, 0.7), 0 3px 4px rgba(0,0,0,0.5);
	}
	
	#startNews .beitrag:hover{
		transform:none;
	}
	
	#startNews .beitrag .textOnly *{
		width:100%;
	}
	
	#startNews .beitrag .more {
		position:relative;
		padding:25px 0 10px 0 !important;
		right:unset;
	}
	
	.kpLinkBox .ce_text {
    	margin-top: 50px;
	}
	
	#timeline ::before, #timeline ::after{
		content:unset !important;
	}
	
	#timeline > div > .ce_text{
		width:100%;
	}
	
	#timeline > div{
		margin-bottom:20px;
	}
	
	h1, h2, h3, h4, .normText{
		overflow:visible;

	}
	
	div.ansprechpartnerBox{
		max-width:100%;
		width:100%;
		padding:15px 15px !important;
	}
	
	.ansprechpartner{
		display: flex;
		align-items: stretch;
		flex-wrap: wrap;
	}
	
	.ansprechpartner .textOnly{
		width: 50%;
		padding: 15px;
	}
	
	.ansprechpartner figure {
		max-width:50%;
		overflow:hidden;
	}
	
	.ansprechpartner figure img {
		position: relative;
		margin-left: 50%;
		transform: translate(-50%, 0);
	    width: auto;
	    min-height: 100%;
	    max-width: unset !important;
	
	}
	
	
	.sideLinks{
		flex-direction:row;
		flex-wrap:wrap;
		padding:5px 0;
		overflow:visible;
		justify-content: center;
	}


	.sideLinks a{
		padding:15px !important;
		border-left:1px solid #ee7d21;
	}
	
	#article-50, #enSparTipps{
		padding-left:15px;
		padding-right:15px;
	}
	
	#estBG{
		overflow:hidden;
	}
	
	
	.ruleBox{
		flex-direction:column;
	}
	
	.ruelKachel{
		width:100%;
		padding: 50px 20px 30px 100px !important;
	}
	
	.ruleKachel h1{
		bottom: -27px;
		font-size: 100px;
	}
	
	
	
	.installerKachel{
		max-height: 300px;
	}
	
	.installerKachel figure img{
		width:100%;
	}
	
	
	
	.leist .apBild{
		padding-left:0 !important;
	}
	
	.leist .apBild figure{
		height:100%;
	}
	
	.leist .apBild figure img{
		min-height:100%;
		width: auto !important;
		min-width: unset !important;
		max-width: unset !important;
		margin-left: 50%;
		transform: translate(-50%,0);
	}
	


	#newsbereich .beitrag, .newsarchiv .beitrag{
		margin-bottom:10px;
	}
	
	.newsarchiv .beitrag{
		min-height: 200px;
		height:100%;
	}

	#newsbereich .beitrag .textOnly{
		min-width:100%;
		width:100%;
	}
	
	#newsbereich .beitrag figure, .newsarchiv .beitrag figure{
		display:none;
	}
	
	#newsbereich .beitrag .textOnly p.more, .newsarchiv .beitrag .textOnly p.more{
		position:unset;
		bottom:unset;
	}
	
	.newsarchiv .beitrag .textOnly{
		width:100%;
		position:unset;
	}
	
	
	.paddingBottom{
		padding-bottom:30px;
	}
	
	.paddingTop{
		padding-top:30px;
	}
	
	
	.serviceBox{
		margin-top:0;
	}

	#menuseite{
		display:none;
	}
	
	.newsleser {
		padding:0 !important;
		margin-bottom:25px;
	}
	
	
	#serviceCenter .apBox{
		flex-wrap:wrap;
	}
	
	#serviceCenter .apBild{
		padding-left:0 !important;
	}
	
	body #serviceCenter .apBild img, body #serviceCenter .apBild figure{
		width: 100% !important;
		height: auto !important;
		object-fit: cover;
	}
	
	
	#jumplinks{
		width:100%;
		margin-left:unset !important;
		transform:none !important;
	}
	
	
	
	#kk div.widget-text, #kk div.widget-textarea, #kk div.widget.dse, #kk div.widget.dse .dse, #kk div.widget-submit, #kk div.widget-radio span{
		width:100%;
		max-width:100% !important;
	}
	
	#kk div.widget-radio span{
		margin-bottom:10px;
	}
	
	#kk .widget.dse span{
		display:flex;
		flex-direction:row;
	}
	
	
}









@media (max-width:768px){
	
	
	.widget.upper{
		width:100%;
		margin-top:15px;
		margin-bottom:15px;
		padding-left:15px;
		
	}
	
	
	body #container{
		padding-top:90px;
	}
	
	#menu{
		display:block !important;
		height:86px;
		max-width:100vw !important;
		min-width:unset !important;
		width:100%;
		padding-top:15px !important;
	}
	
	#menucontainer{
		padding-top:0;
		max-width:100vw !important;
		min-width:unset !important;
		width:100%;
	}
	
	#menuLogo{
		min-width:120px;
		width:130px;
		padding-left:0 !important;
		margin-top: -5px !important;
	}
	
	#menuLogo img, #hauptmenu{
		min-width:100%;
		max-width:100%;
		padding:0 !important
	}
	
	#menutrigger{
		display:table !important;
		height:50px;
		width:50px;
		background-color:#2a8d05;
		float: right;
		right:0;
		margin-right: 5px;
		
		background-image:url(../img/openM.png);
		background-repeat:no-repeat;
		background-position:center center;
		background-size:contain;
		
		cursor:pointer;
		
		position:relative;
		z-index:3;
	}
	
	#menuseite, #hauptmenu #seitenMenu.norm, #hauptmenu #seitenMenu.norm *{
		display:none !important;
		width:0px !important;
		height:0 !important;
	}
	
	div#seitenMenu.mobil{
		display:none;
		height:auto;
		overflow:hidden;
		width:100%;
		min-width:unset !important;
		max-width:100VW;
		margin:0 !important;
		left:0 !important;
		padding:0 !important;
	}
	
	div#footer{
		display:unset !important;
	}
	
	#topMenu {
		display:none;
	}
	
	#menu{
		max-width:100%;
		width:100%;
	}
	
	#seitenMenu.mobil .level_1 {
		flex-direction:column;
		display:flex;
		align-items:center;
		max-width:100%;
		width:100%;
		min-width:unset !important;
		padding:15px !important;
		margin:0;
	}
	
	#seitenMenu.mobil *{
		max-width:unset !important;
		min-width:unset !important;
	}
	
	#seitenMenu.mobil .level_1 li{
		margin:5px;
		padding-bottom:3px;
	}
	
	#seitenMenu.mobil .level_2{
		display:none;
	}
	
	#seitenMenu.mobil li.nichtmobilanzeigen{
		display:none;
	}
	
	
	#startslider, .header, .headerBild{
		max-height:300px;
		height:100%;
	}
	
	#startslider .ce_image, #startslider .ce_image *{
		height:auto !important;
		min-height:100%;
		min-width:100%;
		width:auto !important;
	}
	
	#startslider .ce_image figure, .headerBild{
		min-height:300px;
		max-height:300px !important;
		height:100%;
	}
	
	#startslider .ce_image figure img, .headerBild figure img{
	    min-height: 300px;
	    height: 300px;
	    width: auto !important;
	    min-width: 100%;
	    max-width: 200% !important;
	    margin-top: 50%;
	    transform: translate(0, -50%);
	}
	
	.headerBild figure img{
		margin-top: unset !important;
	    transform: none !important;
	}
	
	.header, .headerBild{
		min-height:unset !important;
		height:300px;
	}
	
	.serviceKachel h2{
		min-height:unset !important;
		font-size:20px;
		text-align:center;
	}
	
	.serviceKachel{
		padding:0 5px !important;
		box-shadow:none;
	}
	
	
	
	#startNews .beitrag figure img{
		max-width:150%;
	}
	
	
	div.leistungsKachel p:last-child{
		text-align:center !important;
	}
	
	.bildBG .container div {
		position:relative !important;
		transform:none !important;
		top:unset !important;
		margin:0 !important;
	}
	
	
	
	div.ansprechpartnerBox{
		max-width:100%;
		width:100%;
		padding:15px 15px !important;
	}
	
	.ansprechpartner{
		display: flex;
		align-items: stretch;
		flex-wrap: wrap;
	}
	
	.ansprechpartner .textOnly{
		width: 100%;
		padding: 0px;
	}
	
	.ansprechpartner figure {
		max-width:100%;
		width:100%;
		overflow:hidden;
		max-height:300px;
	}
	
	.ansprechpartner figure img {
		position: relative;
		top:0 !important;
	    width: auto;
	    min-width:100%;
	    min-height: 100%;
	    max-width: unset !important;
	
	}
	
	.kundenloginArtikel{
		overflow:hidden;
	}
	
	.installerKachel h2 {
		width:100%;
	}
	
	.installerKachel h2 a {
		padding:20% !important;
	}
	
	.downloadKachel a{
		hyphens:auto !important;
	}
	
	.downloadKachel p:nth-child(1){
		height:100%;
	}


	.newsleser{
		margin-bottom:20px;
		padding:0 !important;
	}
	
	.installer{
		min-height:unset !important;
	}
	
	.kpInfoListe{
		background-color:rgba(42, 141, 5, 0.7) !important;
	}
}









@media (max-width:500px){
	
	.normText{
		hyphens:auto;
	}
	
	.kpLinkBox a strong, .kpLinkBox a{
		width:100%;
	}
	
	.leistungsKachel{
		padding:25px !important;
	}
	
	.leistungsKachel *{
		text-align:center !important;
	}

	.sliderText h1 {
		font-size:26px;
		
	}
	
	.header .sliderText {
		margin-top:30%;
	}
	
	.sideLinks p{
		padding:15px !important;
		width:100%;
	}
	
	.sideLinks a{
		width:100%;
		display:block;
		text-align:center;
	}
	
	.downloadKachel{
		width:100% !important;
		hyphens:auto;
	}
	
	
	
	.bildBG {
		min-height:unset !important;
	}
	
	#kpBG{
		background-position:right center;
	}
	
	
	
	.ruleKachel{
		padding:55px 25px 65px !important;
	}
	
	.ruleKachel sup {
		text-align:center !important;
		width:100%;
	}
	
	
	.installerKachel h2 a {
		padding:10% !important;
	}
	
	
	.leist .apBox{
		display:block;
	}
	
	.leist .apBox figure{
		max-height:300px;
	}
	
	.ce_form, .formbody > div{
		padding:0 !important;
	}
	
	
	.dse span{
		flex-direction:column;
	}
	
	#gasinstallateure, #strominstallateure{
		padding-top:50px;
	}
	
	
	
	
	.tarifDetailTabelle td{
		font-size: 14px;
		hyphens: auto;
		word-wrap: break-word;
	}
	
	.tarifKachel{
		border-left:0;
		border-right:0;
	}
	
}






.newsleser .beitrag .linkgreen a{
	border:1px solid #2a8d05;
	padding: 8px 10px;
}









@media (max-width:600px){
	
	.ce_gallery ul li {
	    float: left;
	    width: 100% !important;
	    margin-right:0px !important;
	}
	
	.ce_gallery li img{
		width:100%;
		height:auto;
	}
	
	#jumplinks li:first-child{
		width:100%;
	}
	
}



.ce_gallery > ul li {
    float: left;
    width: calc(33.2% - 10px);
    margin-right:10px;
    margin-top:10px;
}

.ce_gallery{
	display:flex;
	justify-content:flex-start;
	flex-wrap:wrap;
	margin-top:20px;
	margin-bottom:20px;
}

.mod_newsreader .ce_gallery ul{
	padding-left:0;
	display:flex;
	justify-content:flex-start;
	flex-wrap:wrap;
}




.mapImg img{
	width:100%;
}

.mapImg figcaption{
	transform:translateY(-100%);
	background-color:#fff;
	display:table;
}




.newsleser .beitrag div.ce_text p a, .newsleser .beitrag div.ce_text p a:hover, .newsleser .beitrag div.ce_text p a:focus,.newsleser .beitrag div.ce_text p a:active{
	color:#2a8d05 !important;
}


#startNews .beitrag .textOnly{
	hyphens:auto;
	word-break:break-word;
}


#startNews .beitrag {
	padding-bottom:50px !important;
}

#startNews .beitrag figure{
	height:100%;
}

#startNews .beitrag figure img{
	min-width:100%;
	max-width:unset !important;
}

#startNews .beitrag .more {
    bottom: 0px;
}



#serviceCenter .apBild figure{
	height:100%;
	width:auto !important;
}

#serviceCenter .apBild img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.normText p a, .normText p a:hover, .normText p a:active{
	color:#2a8d05 !important;
	text-decoration:underline;
}







#jumplinks{
	position:fixed;
	color:#fff;
	margin-left: 50%;
	transform: translateX(-50%);
	background-color:#2a8d05;
	padding-top:15px;
}

#jumplinks ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
	list-style-type:none;
	padding:0;
}


#jumplinks li, #jumplinks li *{
	color:#fff !important;
}

#jumplinks li{
	padding:5px 10px 0;
}



#article-62{
	scroll-behavior: smooth;
}







#kk .widget-text, #kk .widget-textarea{
	display:flex;
	flex-wrap:wrap;
	align-items:stretch;
	
}

#kk div.widget-radio, #kk div.widget-textarea{
	
	width:100%;
	max-width:100%;
}

#kk div.widget-radio > div{
	width:100%;
	max-width:100%;
	display:flex;
	align-items:baseline;
	flex-wrap:wrap;
}

#kk .widget-text > *, #kk .widget-textarea > *{
	width:100%;
}

#kk .widget{
	width:100%;
	max-width:50%;
}

#kk .formbody{
	padding-bottom:50px
}


#kk .widget-text input, #kk textarea{
	border: 2px solid #2a8d05;
    width: 100%;
    margin-bottom: 15px;
    padding: 10px;
    max-width:calc(100% - 10px);
}



#kk .widget.dse{
	max-width:50% !important;
	padding-top:20px;
}

#kk .widget.art > div{
	display:flex;
	align-items:stretch;
	padding-top:25px;
	padding-bottom:50px;
	flex-wrap:wrap;
	
}

#kk .widget.art legend{
	width:100%;
	font-size:14px;
	font-weight:bold;
	border:0;
}


#kk .widget.art > div > span{
	display:flex;
	align-items:baseline;
	padding:10px 15px;
	padding-bottom:8px;
	background-color:#f3f3f3;
	margin-right:15px;
	border-radius:5px;
	flex-direction:column;
}


#kk .widget.art > div > span input{
	margin-right:10px;
}

#kk .widget.art2{
	padding-top:40px;
}


#kk .widget-submit{
	width:100%;
	max-width:50%;
}

#kk .widget textarea{
	min-height:51px;
	height:auto;
}




.pdflink a{
	color:#2a8d05;
	position:relative;
	display:inline-flex;
	white-space:nowrap;
	padding-top:15px;
}

.pdflink a::before{
	content:"";
	margin-right:8px;
	width:20px;
	height:20px;
	display:inline-flex;
	
	background-image:url(../img/pdf-file.png);
	background-size:contain;
	background-position:center center;
	background-repeat:no-repeat;
}




#kf, #kf *, .ce_form, .ce_form *{
	overflow:visible;
}

.widget-text label, .widget-textarea label{
	z-index:3;
	background-color:transparent;
	left:10px;
	font-size:18px;
}

.upper label, .widget.dse *{
	font-size:18px;
}

.widget-textarea label{
	margin-left:15px;
}

#kk .widget-textarea label{
	margin-left:0;
}

form.move_labels .widget-text.active label, form.move_labels .widget-textarea.active label, form.move_labels .widget-password.active label, .move_labels form .widget-text.active label, .move_labels form .widget-textarea.active label, .move_labels form .widget-password.active label{
	top:-10px;
	left:15px;
}

form.move_labels .widget-text label, 
form.move_labels .widget-textarea label, 
form.move_labels .widget-password label, 
.move_labels form .widget-text label, 
.move_labels form .widget-textarea label, 
.move_labels form .widget-password label {
    top: 20px;
    left: 10px;
    
}


form .widget{
	margin-bottom:25px;
	position:relative;
	min-height:55px;
}

form .widget p.error{
	position:absolute;
	bottom:-35px;
	left:15px;
	width:100%;
	color:red;
}

form .widget-textarea p.error{
	left:30px;
}

form input.text, form textarea{
	min-height:55px;
	font-size:18px;
}

form .widget.dse > .dse{
	height:30px;
	max-height:60px;
}

form .widget.dse p.error{
	left:27px;
}






.inverted{
	filter: invert(1);
}



div.switches{
	display:flex;
	align-items:flex-end;
	z-index:2000;
	padding:0 15px;
	margin-right:auto;
	width:185px !important;
	align-self:center;
}

.switches > div{
	display:flex;
	align-items:flex-end;
	flex-wrap:nowrap;
}

.switches .contr{
	margin-left:8px;
}



.switches p{
	width:100%;
	margin-bottom:3px;
	font-size:14px !important;
	display:none;
}

.switches button{
	width:30px;
	height:35px;
	line-height:1;
	border:0;
	background-color:#2a8d05;
	color:#fff;
	user-select:none;
	margin:1%;
}

.switches .type button.aktiv{
	background-color:rgba(42, 141, 5, 0.4);
	color:rgba(42, 141, 5, 1);
}

.switches, .switches *{
	font-size:initial !important;
}

div.switches button.normal{
	font-size:16px !important;
}

div.switches button.bigger{
	font-size:20px !important;
}

div.switches button.biggest{
	font-size:26px !important;
}


div.switches button.contrast{
	font-size:16px !important;
	
	background-repeat:no-repeat;
	background-size:auto 60%;
	background-position:center center;
	background-image:url(../img/contrast.png);
}

div.switches button.contrast.aktiv{
	transform:rotateZ(180deg);
	background-color:rgba(42, 141, 5, 0.4);
	color:rgba(42, 141, 5, 1);
}