/*
Theme Name: energysystems
Theme URI: https://www.intermedia-werbeagentur.de
Author: Intermedia Peters GmbH | Werbeagentur
Description: Schlankes, barrierefreies WordPress-Theme mit lokal eingebundenem Bootstrap und Font Awesome.
Version: 1.0
Text Domain: energysystems
*/
.text-justify {text-align: justify; hyphens: auto;}
header {padding: 15px 0px;}
header nav {width: 100%; height: 90px;}
.logo {width: 100%; height: auto;}
.contact-data {display: flex; justify-content: flex-end; margin: 0px; padding: 0px; list-style: none;gap:16px;}
.contact-data li {padding: 8px 16px; border: 1px solid #bd0926; border-radius: 12px; color: #000; transition: all .75s ease;}
.contact-data li a {position: relative; padding-left: 24px; color: #000; font-weight: 700; text-decoration: none; transition: all .75s ease;}
.contact-data li a:before {font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:0px;color:#bd0926; transition: all .75s ease;}
.contact-data li:first-child a:before {content:"\f095";}
.contact-data li:last-child a:before {content:"\f0e0";}
.contact-data li:hover { background-color: #bd0926;}
.contact-data li:hover a, .contact-data li:hover a:before {color: #fff;}
.menu-hauptmenu-container, .menu-heuptmenu-en-container{height:100%;position:relative}
#menutoggle {display: none;}
#menu-hauptmenu{list-style:none;display:flex;justify-content:flex-end;gap:60px;padding:0;margin:0;align-items:center;height:100%}
#menu-hauptmenu li{position:relative}
#menu-hauptmenu li a{text-decoration:none;font-size:18px;font-weight:700;color:#000;padding:10px 15px;display:inline-block;position:relative;transition:color .3s ease-in-out}
#menu-hauptmenu li a::before{content:"";position:absolute;bottom:-5px;left:0;width:0;height:3px;background-color:#bd0926;transition:width .3s ease-in-out}
#menu-hauptmenu li:hover > a,#menu-hauptmenu li.current-menu-item > a,#menu-hauptmenu li.current-menu-ancestor > a{color:#bd0926}
#menu-hauptmenu li:hover > a::before,#menu-hauptmenu li.current-menu-item > a::before,#menu-hauptmenu li.current-menu-ancestor > a::before{width:100%}
#menu-hauptmenu > li:last-child > a{background-color:#bd0926;color:#fff;border-radius:6px;padding:8px 32px 8px 60px;transition:background-color .3s ease-in-out,transform .2s ease-in-out;display:flex;align-items:center;gap:10px;position:relative}
#menu-hauptmenu > li:last-child > a::before,#menu-hauptmenu > li:last-child > a:hover::before{content:none!important;width:0;height:0!important}
#menu-hauptmenu > li:last-child > a::after{content:"\f0e0";font-family:"Font Awesome 5 Free";font-weight:900;font-size:18px;color:#fff;position:absolute;left:32px}
#menu-hauptmenu > li:last-child > a:hover{background-color:#9c0010;transform:scale(1.05)}
#menu-hauptmenu > li.current-menu-item:last-child > a{background-color:#9c0010}
#menu-hauptmenu li ul{background-color:#fff;position:absolute;top:61px;margin:0;padding:24px;visibility:hidden;opacity:0;transform:translate(100px);overflow:hidden;transition:all .5s ease;z-index:10}
#menu-hauptmenu li:hover > ul{visibility:visible;opacity:1;transform:translate(0)}
#menu-hauptmenu li ul li{display:block;list-style:none}
#menu-hauptmenu li ul li a{background-color:#fff;color:#121212;font-weight:300;padding:10px 15px;min-width:250px;display:block;transition:color .3s ease-in-out}
#menu-hauptmenu li ul li a:hover{color:#bd0926;transform:scale(1)}
#menu-hauptmenu li ul li.current-menu-item > a{color:#bd0926}
#menu-hauptmenu li ul li a::before,#menu-hauptmenu li ul li a::after{content:none}
#topfoot {background-color: #f5f5f5; padding: 32px 0px;}
#botfoot {text-align: center; background-color: #fff; padding: 32px 0px;}
footer .table, .table > :not(caption) > * > * {background: none !important; }
footer .table th, footer .table th strong {font-weight: 700;}
footer address {line-height: 40px;}
footer a {color: #000; transition: all .75s ease; text-decoration: none;}
footer a:hover {text-decoration: underline;color:#bd0926;}
.footcontact-data {margin: 0px; padding: 0px; list-style: none;}
.footcontact-data li {line-height: 40px;}
.footcontact-data li a {position: relative; padding-left: 24px; color: #000; font-weight: 500; text-decoration: none; transition: all .75s ease;}
.footcontact-data li a:before {font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:-10px;top:-10px;color:#bd0926; transition: all .75s ease;}
.footcontact-data li:nth-child(1) a:before {content:"\f095";}
.footcontact-data li:nth-child(2) a:before {content:"\f0e0";}
.footcontact-data li:nth-child(3) a:before {content:"\f0e0";}
.footcontact-data li:hover a { color: #bd0926;}
#menu-fussmenu li {line-height: 40px;}
.dl-start {background-image: url("assets/img/head-start.jpg"); padding: 128px 0px; background-position: center center; background-repeat: no-repeat; background-size: cover;}
.whitebox {padding: 32px; background-color: rgba(255,255,255,0.9); line-height: 32px; font-size: 18px;}
h1 {font-size: 30px;color:#bd0926; font-weight: 700}
.whitebg {padding: 64px 0px;}
.greybg {padding: 64px 0px; background-color: #f5f5f5;}
.nopad {padding: 0px !important;}
h2 {display: inline-block; font-size: 30px; color: #000; font-weight: 700; border-bottom: 2px solid #bd0926; padding-bottom: 8px; margin: 0;}
h2.nb {display: inherit; border-bottom: 0px;}
h3 {font-size: 24px;color:#bd0926; font-weight: 700}
main {font-size: 18px; line-height: 40px;}
.button {color: #fff; text-decoration: none; font-weight: 700; background-color: #bd0926;transition: all .75s ease; text-align: center; padding: 6px 32px; border-radius: 8px; display: inline-block;}
.button:hover {color: #fff; background-color: #9c0010;}
.icon {width: 150px; height: 150px; border-radius: 150px; margin: 0 auto; display: block; background-color: #fff;-webkit-box-shadow: 0 0 16px 0 rgba(0,0,0,0.15);box-shadow: 0 0 16px 0 rgba(0,0,0,0.15);margin-top: -100px;z-index: 50; position: relative;margin-bottom: 32px;}
.icon-heizung {background-image: url("assets/img/heizung.png"); background-position: center center; background-repeat: no-repeat;}
.icon-klimatechnik {background-image: url("assets/img/klimatechnik.png"); background-position: center center; background-repeat: no-repeat;}
.icon-sanitaer {background-image: url("assets/img/sanitaer.png"); background-position: center center; background-repeat: no-repeat;}
.icon-logo {background-image: url("assets/img/icon-logo.png"); background-position: center center; background-repeat: no-repeat;}
.klima-head {background-image: url("assets/img/head-klima.jpg"); padding: 128px 0px; background-position: center center; background-repeat: no-repeat; background-size: cover;}
.sanitaer-head {background-image: url("assets/img/head-sanitaer.jpg"); padding: 128px 0px; background-position: center center; background-repeat: no-repeat; background-size: cover;}
.heizung-head {background-image: url("assets/img/head-heizung.jpg"); padding: 128px 0px; background-position: center center; background-repeat: no-repeat; background-size: cover;}
.left-img {position: relative; width: 100%; height: auto;}
.left-img:before {content: "";position: absolute;left: -30px;top: -6px;height: 104%;width: 120px;background-image: url("assets/img/img-left.png");background-size: cover;background-repeat: no-repeat;z-index: 400;  animation: floatSideways 6s ease-in-out infinite; transform-origin: center center;}
.content2 {background-color: #f2f2f2; padding: 48px 0px;}
@keyframes floatSideways {
0%{transform:translateX(0px) rotate(0deg)}
25%{transform:translateX(-3px) rotate(-1deg)}
50%{transform:translateX(0px) rotate(0deg)}
75%{transform:translateX(3px) rotate(1deg)}
100%{transform:translateX(0px) rotate(0deg)}
}
.right-img-grey{position:relative;width:100%;height:auto}
.right-img-grey:before{content:"";position:absolute;right:-10px;top:-6px;height:104%;width:120px;background-image:url(assets/img/img-right-grey.png);background-size:cover;background-repeat:no-repeat;z-index:400;animation:floatSideways 6s ease-in-out infinite;transform-origin:center center}
.klima-foot{background-image:url(assets/img/section3-bg.jpg);background-position:center center;background-repeat:no-repeat;background-size:cover;padding:64px 0;margin-top:64px;border-bottom:2px solid #bd0926}
.bad-foot{background-image:url(assets/img/bad-foot.jpg);background-position:center center;background-repeat:no-repeat;background-size:cover;padding:64px 0;margin-top:64px;border-bottom:2px solid #0e71b4}
.flip-wrapper{perspective:1000px;width:150px;margin-left:auto;margin-right:auto;height:75px;margin-top:25px;position:relative;z-index:50}
.flip-inner{position:relative;width:150px;height:150px;transform-style:preserve-3d;animation:flipAnimation 10s infinite;transition:transform 1s}
.flip-front,.flip-back{position:absolute;width:100%;height:100%;backface-visibility:hidden}
.flip-front{z-index:2}
.flip-back{transform:rotateY(180deg)}
@keyframes flipAnimation {
0%{transform:rotateY(0deg)}
10%{transform:rotateY(180deg)}
50%{transform:rotateY(180deg)}
60%{transform:rotateY(0deg)}
100%{transform:rotateY(0deg)}
}
.ratio{border-radius:16px;overflow:hidden}

body.page-id-14 h1, body.page-id-14 h3 { color: #0e71b4;}
body.page-id-14 h2 {border-bottom: 2px solid #0e71b4;}
body.page-id-14 a.button {background-color: #0e71b4;}
body.page-id-14 a.button:hover {background-color: #004c8c;}

@media (min-width: 1441px) {
    .container{max-width: 1440px;}
}
@media (max-width: 1440px) { 
    /* col-xl */
    .whitebg.nopad {padding: 64px 0px !important;}
    #menu-hauptmenu { gap:32px;}
}
@media (max-width: 1399px) { 
    /* col-lg */
}
@media (max-width: 1199px) { 
    /* col-lg */
    #menu-hauptmenu { gap:10px;}
    .logo {padding-top: 30px;}
}
@media (max-width: 991px) { 
    /* col-md */   
    #menutoggle {display: block; border: 1px solid #bd0926; color: #bd0926; padding: 8px 12px; border-radius: 8px; margin-top: 16px; cursor: pointer;}
    #menutoggle.active {color: #fff; background-color: #bd0926;}
    #menutoggle svg {margin-right: 10px;}
    header nav { height: auto; }
    #menu-hauptmenu {display: none; padding: 16px; background-color: #fff;}
    #menu-hauptmenu li a { display: block; width: 100%;}
    .col-md-6, .col-md-4 {width: 100%}
    .dl-start { padding: 40px 0px;}
    .teasbox {text-align: justify; max-width: 505px; margin: 0 auto; border: 1px solid #eaeaea; margin-bottom: 32px; padding: 30px; hyphens: auto;}
    .icon {width: 100px; height: 100px; margin-top: -50px; background-size: 50px;}
    .greybg.nopad {padding: 64px 0px !important;}
    #topfoot .col-md-3 {width: 50%;}
    .footcontact-data { padding-left: 20px;}
    .rht {margin-top: 30px;}
}
@media (max-width: 767px) { 
    /* col-sm */
    .logo {max-width: 60%; display: block; margin: 0px auto 20px;}
    .contact-data { justify-content: center; }
}
@media (max-width: 575px) { 
    /* col */
     
}
@media (max-width: 460px) { 
    /* col */
    .contact-data li { font-size: 10px; padding: 8px 10px; }
    #menu-hauptmenu { display: block; margin: 0 auto; }
    header nav { height: auto; }
    #menu-hauptmenu { padding: 16px;}
    #menu-hauptmenu li a::before { content: none; }
    .contact-data { justify-content: center; }
    .dl-start {padding: 40px 0px;}
    h1 {font-size: 20px;}
    main {font-size: 16px;line-height: 32px;}
    #menu-fussmenu {text-align: center;}
    footer address { text-align: center; }
    .footcontact-data li { text-align: center; }
    .footcontact-data {margin: 24px 0px;}
    #topfoot .col-md-3 {width: 100%;}
}
@media (max-width: 350px) { 
    /* col */

}