:root{font-family:Montserrat,Arial,sans-serif;color:#303030;background:#fff;font-synthesis:none;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}.container{width:min(1140px,calc(100% - 40px));margin-inline:auto}.section-anchor{scroll-margin-top:178px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:50;background:#fff}.top-strip{background:#668f4d;color:#fff;font-size:14px;min-height:50px}.top-strip__inner{height:50px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;line-height:1.4}.top-strip a{display:inline-flex;align-items:center;gap:4px;font-size:13px}.top-strip a:hover{text-decoration:underline}.main-nav{background:#fff;box-shadow:0 1px 1px #0000000d}.main-nav__inner{min-height:128px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:inline-flex;align-items:center;gap:17px;white-space:nowrap}.brand img{width:62px;height:62px;object-fit:contain}.brand__copy{display:flex;flex-direction:column;align-items:center;line-height:1}.brand__name{font-size:24px;letter-spacing:-.055em;font-weight:400;color:#111}.brand__tag{font-size:13px;margin-top:6px;color:#333;letter-spacing:-.02em}.nav-links{display:flex;align-items:center;gap:28px;font-size:13px;text-transform:uppercase;font-weight:600}.nav-links>a,.nav-dropdown>a{padding:14px 0;transition:color .2s}.nav-links a:hover{color:#648f49}.nav-dropdown{position:relative}.nav-dropdown>a{display:inline-flex;align-items:center;gap:3px}.nav-dropdown__menu{position:absolute;top:100%;left:-18px;width:235px;background:#fff;box-shadow:0 7px 25px #0002;display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(6px);transition:.2s;z-index:5;text-transform:none;font-weight:500}.nav-dropdown:hover .nav-dropdown__menu,.nav-dropdown:focus-within .nav-dropdown__menu{opacity:1;visibility:visible;transform:translateY(0)}.nav-dropdown__menu a{padding:12px 16px;border-bottom:1px solid #eee}.menu-toggle{display:none;border:0;background:transparent;color:#333;padding:9px}.hero{height:600px;position:relative;overflow:hidden;background:#222;color:#fff}.hero__slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .7s}.hero__slide--active{opacity:1}.hero__slide:first-child{background-position:center center}.hero__content{height:100%;position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-bottom:25px;animation:rise .6s both}.hero h1{font-size:32px;font-weight:600;line-height:1.25;margin:0 0 18px}.hero p{font-size:14px;line-height:1.75;max-width:430px;margin:0 0 26px}.hero__cta{background:#589240;min-width:380px;padding:12px 24px;font-size:14px;font-weight:500;transition:background .2s}.hero__cta:hover{background:#477e31}.hero__arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);background:transparent;border:0;color:#fff;padding:10px;display:grid;place-items:center}.hero__arrow:hover{background:#0003}.hero__arrow--left{left:25px}.hero__arrow--right{right:25px}.hero__dots,.about__dots{position:absolute;display:flex;align-items:center;justify-content:center;gap:7px;z-index:4}.hero__dots{bottom:30px;left:50%;transform:translate(-50%)}.hero__dots button,.about__dots button{width:11px;height:11px;border-radius:50%;border:2px solid #fff;background:transparent;padding:0}.hero__dots button.is-active,.about__dots button.is-active{background:#fff}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.about{padding:95px 0 105px;background:#fff}.about__intro{font-size:24px;font-weight:500;line-height:1.42;text-align:center;max-width:790px;margin:0 auto 95px;color:#222}.about__layout{display:grid;grid-template-columns:56% 44%;align-items:center;min-height:500px}.about__visual{height:500px;position:relative;overflow:hidden}.about__visual img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;opacity:0;transition:opacity .6s}.about__visual img.is-active{opacity:1}.about__dots{bottom:16px;left:50%;transform:translate(-50%)}.about__dots button{width:7px;height:7px;border-width:1px}.about__content{background:#fff;position:relative;margin-left:-80px;padding:33px 34px 20px;z-index:2}.about__content h2{font-size:32px;line-height:1.2;font-weight:600;margin:0 0 24px}.about__content p{color:#777;font-size:14px;line-height:1.67;margin:0 0 14px}.about__content .about__lead{font-size:16px;color:#303030;line-height:1.56}.services{background:#f1f1f1;text-align:center;padding:125px 0 96px}.section-heading{font-size:27px;font-weight:500;color:#668f4d;margin:0 auto 20px;position:relative;padding-bottom:29px}.section-heading:after{content:"";position:absolute;bottom:0;left:calc(50% - 25px);width:50px;border-bottom:3px solid #668f4d}.services__intro{font-size:15px;line-height:1.6;max-width:750px;margin:0 auto 105px}.services__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.service{scroll-margin-top:210px}.service__icon{width:100px;height:100px;border-radius:50%;background:#668f4d;color:#fff;margin:0 auto 14px;display:grid;place-items:center}.service h3{color:#668f4d;font-size:18px;font-weight:500;margin:0 0 16px}.service p{font-size:14px;line-height:1.55;color:#777;margin:0}.emergency{background:#eaa034;color:#fff;margin:105px 0 0;padding:45px 24px 50px}.emergency h2{font-size:31px;font-weight:500;margin:0 0 14px}.emergency p{font-size:14px;margin:0}.solar{height:420px;background-size:cover;background-position:center;position:relative;color:#fff;text-align:center}.solar:before{content:"";position:absolute;inset:0;background:#0005}.solar__overlay{position:relative;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column}.solar h2{font-size:36px;font-weight:600;margin:0 0 14px}.solar p{font-size:16px;margin:0}.contact{background:#f8f8f8;padding:100px 0 90px}.contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.contact__eyebrow{font-size:14px}.contact__info h2{font-weight:400;font-size:31px;letter-spacing:-.04em;margin:4px 0}.contact__info h2 strong{font-weight:600}.contact__info>p{font-size:14px;color:#777;line-height:1.55;margin:0 0 62px}.contact__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.contact__cards h3{font-size:18px;font-weight:500;margin:0 0 20px;padding-bottom:29px;border-bottom:3px solid #e8e8e8;display:flex;align-items:center;gap:5px;white-space:nowrap}.contact__cards span,.contact__cards address,.contact__cards a{font-size:13px;line-height:1.5;font-style:normal;display:block}.contact__cards a{color:#668f4d;overflow-wrap:anywhere;font-size:12px}.contact__cards a:hover{text-decoration:underline}.contact__form{background:#fff;padding:34px 44px 48px}.contact__form h2{text-align:center;font-size:28px;font-weight:400;margin:0 0 27px}.contact__form h2 strong{font-weight:600}.contact__form input,.contact__form textarea{border:0;background:#f1f1f1;width:100%;padding:16px;margin:0 0 20px;outline:2px solid transparent;outline-offset:-2px;font-size:14px;color:#333;border-radius:0}.contact__form input:focus,.contact__form textarea:focus{outline-color:#668f4d}.contact__form textarea{min-height:137px;resize:vertical}.contact__form-bottom{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}.contact__form-bottom span{font-size:13px;max-width:150px}.contact__form button{border:0;background:#668f4d;color:#fff;text-transform:uppercase;font-weight:700;font-size:12px;padding:16px;width:100%;transition:background .2s}.contact__form button:hover{background:#477e31}.contact__notice{color:#668f4d;font-size:12px;line-height:1.5;margin:12px 0 0}.map{height:340px;background:linear-gradient(135deg,#dcded9,#eef0ec);position:relative;display:grid;place-items:center;overflow:hidden}.map--placeholder:before,.map--placeholder:after{content:"";position:absolute;background:#fff8;transform:rotate(-25deg)}.map--placeholder:before{width:130%;height:35px;top:20%;left:-10%}.map--placeholder:after{width:130%;height:26px;bottom:20%;left:-10%}.map__iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.map__panel{position:relative;z-index:2;background:#fff;padding:25px 35px;min-width:300px;box-shadow:0 10px 35px #0002;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:#344030}.map--embedded .map__panel{margin-right:auto;margin-left:clamp(16px,6vw,130px)}.map__panel svg{color:#668f4d}.map__panel strong{font-size:20px}.map__panel span{font-size:13px}.map__panel a{color:#668f4d;font-size:13px;font-weight:600;margin-top:4px;display:flex;align-items:center;gap:6px}.map__panel a:hover{text-decoration:underline}.partners{background:#222;color:#fff;text-align:center;padding:58px 0 70px}.partners h2{font-size:26px;font-weight:500;margin:0 0 50px}.partners__logos{max-width:610px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:35px 24px;align-items:center;justify-items:center}.partners__logos span{color:#fff;line-height:1}.partner-buderus{font-family:Arial,sans-serif;font-size:28px;font-weight:900;letter-spacing:-.06em;text-decoration:underline}.partner-meier{font-family:Arial,sans-serif;font-size:24px;font-weight:900;text-align:left;letter-spacing:-.065em}.partner-elco{font-family:Arial,sans-serif;font-size:34px;font-weight:400;letter-spacing:-.065em;display:flex;align-items:center;gap:5px}.partner-elco small{font-size:7px;letter-spacing:0;background:#fff;color:#222;border-radius:50%;height:32px;width:32px;display:flex;align-items:center;justify-content:center}.partner-getaz{font-family:Arial,sans-serif;font-size:23px;font-weight:900;letter-spacing:-.045em;text-decoration:underline}.partner-miauton{font-family:Arial,sans-serif;font-size:22px;font-weight:900;letter-spacing:-.07em}.partners__logos img{width:170px;height:auto;display:block}.partners__logos .partner-vaillant{grid-column:1/-1;font-family:Arial,sans-serif;font-size:30px;font-weight:900;letter-spacing:-.075em}.footer-main{background:#668f4d;color:#fff;min-height:290px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:26px}.brand--light{flex-direction:column;gap:6px}.brand--light img{filter:grayscale(1) brightness(0) invert(1);width:58px;height:58px}.brand--light .brand__name,.brand--light .brand__tag{color:#fff}.brand--light .brand__name{font-size:21px}.brand--light .brand__tag{font-size:11px}.footer-main nav{display:flex;gap:22px;text-transform:uppercase;font-size:12px}.footer-main nav a:hover{text-decoration:underline}.copyright{text-align:center;font-size:12px;padding:34px 20px}@media(max-width:1000px){.main-nav__inner{min-height:100px}.brand img{width:54px;height:54px}.brand__name{font-size:21px}.brand__tag{font-size:11px}.nav-links{gap:16px;font-size:11px}.section-anchor{scroll-margin-top:150px}.contact__grid{gap:35px}.contact__cards{gap:12px}.contact__cards h3{font-size:15px}.contact__form{padding:34px 30px 40px}}@media(max-width:760px){.container{width:min(100% - 32px,560px)}.site-header{position:sticky}.top-strip{font-size:11px}.top-strip__inner{height:44px;min-height:44px}.top-strip a{font-size:11px}.main-nav__inner{min-height:76px}.brand{gap:9px}.brand img{width:44px;height:44px}.brand__name{font-size:17px}.brand__tag{font-size:9px;margin-top:4px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:120px;left:0;right:0;background:#fff;box-shadow:0 10px 22px #0002;padding:14px 24px 22px;flex-direction:column;align-items:stretch;gap:0;font-size:13px}.nav-links--open{display:flex}.nav-links>a,.nav-dropdown>a{display:flex;padding:13px 0;border-bottom:1px solid #eee}.nav-dropdown__menu{display:none}.section-anchor{scroll-margin-top:120px}.hero{height:440px}.hero__content{padding:0 34px 25px}.hero h1{font-size:27px}.hero p{font-size:13px}.hero__cta{min-width:0;width:auto;font-size:12px}.hero__arrow--left{left:3px}.hero__arrow--right{right:3px}.hero__arrow svg{width:26px}.about{padding:65px 0 70px}.about__intro{font-size:19px;margin-bottom:50px}.about__layout{display:flex;flex-direction:column}.about__visual{width:100%;height:320px}.about__content{margin:0;padding:30px 0 0}.about__content h2{font-size:27px}.about__content .about__lead{font-size:15px}.services{padding:70px 0}.section-heading{font-size:23px}.services__intro{margin-bottom:55px;font-size:14px}.services__grid{grid-template-columns:1fr;gap:55px}.service{max-width:420px;margin:auto}.service__icon{width:85px;height:85px}.service__icon svg{width:42px}.emergency{margin-top:65px;padding:35px 20px}.emergency h2{font-size:24px}.solar{height:320px}.solar h2{font-size:27px}.contact{padding:70px 0}.contact__grid{grid-template-columns:1fr;gap:45px}.contact__info h2{font-size:26px}.contact__info>p{margin-bottom:30px}.contact__cards{grid-template-columns:1fr;gap:10px}.contact__cards>div{padding:15px;background:#efefef}.contact__cards h3{font-size:16px;margin:0 0 8px;padding:0;border:0}.contact__form{padding:30px 20px}.contact__form h2{font-size:23px}.map{height:300px}.partners{padding:55px 0}.partners h2{font-size:23px;margin-bottom:30px}.footer-main{min-height:250px;padding:35px 20px}.footer-main nav{justify-content:center;flex-wrap:wrap;gap:10px 18px;font-size:10px}}@media(max-width:420px){.hero h1{font-size:23px}.hero p{max-width:290px}.about__visual{height:270px}.contact__form-bottom{grid-template-columns:1fr}.contact__form-bottom span{max-width:none}.partners__logos{gap:24px 8px}.partner-buderus,.partner-meier{font-size:17px}.partner-elco{font-size:23px}.partner-elco small{font-size:5px;width:25px;height:25px}.partner-getaz{font-size:17px}.partner-miauton{font-size:16px}.partners__logos img{width:110px}.footer-main nav{gap:10px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.contact__form .form-honey{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important;opacity:0!important;pointer-events:none!important}.contact__form button:disabled{opacity:.65;cursor:wait}.contact__notice--error{color:#b24630}.contact__notice--error a{text-decoration:underline}.contact__turnstile{min-height:65px;margin:0 0 20px}.contact__form button:disabled{cursor:not-allowed}@media(max-width:760px){.map--embedded .map__panel{margin:auto;min-width:0;width:min(300px,calc(100% - 32px));padding:18px 22px}}
