@font-face{font-family:Manrope;src:url('assets/manrope-variable.ttf') format('truetype');font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:Salaryman;src:url('assets/salaryma.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--black:#000;--surface:#000;--surface-alt:#000;--white:#f6f7f4;--muted:#a5aaa7;--line:#272c29;--green:#afcb08;--blue:#008bd2;--red:#e30613;--font:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--white);background:var(--black);font-family:var(--font);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased}body,button,input,textarea{font-family:var(--font)}button,input,textarea{font-size:inherit}a{color:inherit;text-decoration:none}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}img{display:block;max-width:100%;height:auto}svg{display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:700;line-height:1.16;letter-spacing:-.045em}h2{font-size:clamp(34px,3.5vw,52px)}h3{letter-spacing:-.025em}p{color:var(--muted)}button{color:inherit}::selection{background:var(--green);color:var(--black)}:focus-visible{outline:2px solid var(--green);outline-offset:5px}button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:3px}[hidden]{display:none!important}.container{width:calc(100% - 112px);max-width:1280px;margin-inline:auto}.section{padding-block:108px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.16em;color:#d0d5cf;display:flex;align-items:center;gap:11px}.section-kicker{margin-bottom:23px}.section-kicker>span{height:1px;width:27px;background:var(--green);display:block}.skip-link{position:fixed;left:16px;top:-80px;padding:12px 22px;background:var(--green);color:#000;z-index:100}.skip-link:focus{top:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:29px;min-height:54px;padding:15px 23px;border:1px solid transparent;border-radius:4px;font-size:13px;font-weight:700;line-height:1.4;transition:background .2s,border-color .2s,transform .2s}.button span{font-size:23px;line-height:.9;font-family:Arial,sans-serif;font-weight:400}.button-primary{background:var(--green);color:#121600}.button-primary:hover{background:#c4df25;transform:translateY(-2px)}.button-outline{border-color:#666a63;background:transparent;color:var(--white)}.button-outline:hover{border-color:var(--green);background:#000}.button-small{min-height:43px;padding:11px 16px;font-size:12px;gap:25px}.text-link{display:inline-flex;align-items:center;gap:20px;background:none;padding:0;border:0;font-size:13px;font-weight:700;color:var(--white);transition:color .2s}.text-link span{font-size:23px;font-family:Arial,sans-serif;font-weight:400}.text-link:hover{color:var(--green)}
.site-header{position:relative;z-index:30;background:#000;border-bottom:1px solid #252525}.header-inner{height:102px;display:flex;align-items:center;justify-content:space-between;gap:32px}.wordmark{display:inline-flex;align-items:center;gap:16px;flex:none;max-width:100%;color:#fff}.wordmark-symbols{width:90px;height:auto;flex:0 0 90px;transform:scale(1.18);transform-origin:center}.wordmark-copy{display:flex;flex-direction:column;gap:3px;min-width:0;width:13.747em;font-size:18px}.wordmark-name{display:block;font-family:Salaryman,Arial,sans-serif;font-size:1em;font-weight:400;font-style:normal;font-synthesis:none;letter-spacing:0;line-height:1.15;white-space:nowrap;color:#fff}.wordmark-services{display:flex;align-items:center;justify-content:space-between;width:100%;font-family:Salaryman,Arial,sans-serif;font-size:.39em;font-weight:400;font-style:normal;font-synthesis:none;letter-spacing:0;line-height:1.4;white-space:nowrap;color:#bfc4bd}.wordmark-services>span{flex-shrink:0}.wordmark-separator{display:block;width:.18em;height:.18em;flex:0 0 .18em;border-radius:50%;background:currentColor}.main-nav{display:flex;align-items:center;gap:30px}.main-nav>a{font-size:12px;color:#cbceca;transition:color .2s}.main-nav>a:hover{color:var(--green)}.main-nav>.button{color:#fff}.menu-toggle{display:none;width:44px;height:44px;border:1px solid #444;background:transparent;border-radius:4px;padding:12px}.menu-toggle span{width:19px;height:1px;background:white;display:block;transition:transform .2s}.menu-toggle span+span{margin-top:7px}
.hero{position:relative;min-height:745px;overflow:hidden;isolation:isolate}.hero-photo{position:absolute;inset:0 0 0 34%;z-index:-3;background:#000;overflow:hidden}.hero-photo img{position:absolute;bottom:0;width:100%;height:145%;max-height:none;object-fit:cover;object-position:65% bottom}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.78) 15%,rgba(0,0,0,.13) 60%),linear-gradient(0deg,#000 1%,transparent 29%,rgba(0,0,0,.1) 80%,rgba(0,0,0,.25))}.hero-lines{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.8}.hero-lines path{stroke-width:1.3;vector-effect:non-scaling-stroke}.line-blue{stroke:var(--blue);opacity:.56}.line-red{stroke:var(--red);opacity:.85}.line-green{stroke:var(--green);opacity:.85}.line-white{stroke:#fff;opacity:.28}.hero-inner{position:relative;min-height:655px;display:flex;align-items:center}.hero-copy{position:relative;padding:78px 0 73px;max-width:720px}.hero .eyebrow{font-size:10px;margin-bottom:27px}.location-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #afcb0816}.hero h1{font-size:clamp(50px,5.65vw,81px);letter-spacing:-.058em;line-height:1.09;font-weight:700;text-wrap:balance}.hero h1 span{color:var(--green)}.hero-description{margin-top:25px;font-size:15px;line-height:1.85;max-width:485px;color:#c2c6bf}.hero-actions{display:flex;align-items:center;gap:29px;margin-top:32px}.hero-signature{display:flex;align-items:center;gap:18px;margin-top:44px}.hero-signature>img{width:118px;height:auto}.hero-signature>span{color:#92988f;font-size:10px;line-height:1.7;letter-spacing:.01em}.hero-signature strong{font-family:var(--font);font-weight:700;color:#f1f4ed}.hero-image-note{position:absolute;right:9px;bottom:100px;display:grid;grid-template-columns:7px 1fr;gap:4px 9px;padding:13px 18px;background:#000;backdrop-filter:blur(12px);border:1px solid #ffffff28;border-radius:5px;font-size:10px;color:#e1e5dd;max-width:275px}.hero-image-note small{grid-column:2;font-size:8px;color:#a7b0a0}.live-dot{width:5px;height:5px;background:var(--green);border-radius:100%;align-self:center}.hero-bottom{position:relative;display:flex;gap:44px;align-items:center;min-height:90px;border-top:1px solid #ffffff24;color:#929990;font-size:10px;letter-spacing:.13em}.hero-bottom>a{display:flex;width:32px;height:32px;align-items:center;justify-content:center;margin-left:auto;font-size:20px;color:#e0e4db;border:1px solid #ffffff35;border-radius:50%}
.services{background:#000;position:relative}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:52px;margin-bottom:48px}.section-heading>p{max-width:368px;font-size:14px;margin-bottom:5px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.service-card{position:relative;display:flex;flex-direction:column;border:1px solid #2a302b;border-top-color:var(--accent);border-radius:6px;background:#000;padding:28px 24px 23px;overflow:hidden;transition:border-color .25s,transform .25s}.service-card:after{content:'';position:absolute;top:0;right:0;width:35%;height:2px;background:var(--accent);opacity:.65}.service-card:hover{transform:translateY(-5px);border-color:var(--accent)}.service-green{--accent:var(--green)}.service-red{--accent:var(--red)}.service-blue{--accent:var(--blue)}.service-card-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:27px}.service-number{font-size:10px;color:#777f76;letter-spacing:.1em}.brand-picto{--size:45px;display:block;width:var(--size);height:var(--size);flex:none;background-image:url('assets/piktogramme.png');background-size:calc(var(--size)*3.342742) var(--size);background-repeat:no-repeat}.picto-sun{background-position:0 0}.picto-wave{background-position:calc(var(--size)*-1.1855) 0}.picto-bolt{background-position:calc(var(--size)*-2.3548) 0}.service-card h3{font-size:26px;min-height:2.32em;margin-bottom:17px}.service-card p{font-size:12px;line-height:1.9;min-height:90px}.service-card ul{padding:0;margin:25px 0 27px;list-style:none;font-size:11px;color:#c3c9bf}.service-card li{position:relative;padding:6px 0 6px 13px;border-bottom:1px solid #ffffff07}.service-card li:before{content:'';width:3px;height:3px;background:var(--accent);position:absolute;left:0;top:15px;border-radius:100%}.service-link{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;color:#f1f4eb;font-weight:700;margin-top:auto;padding-top:14px;border-top:1px solid #ffffff18}.service-link span{font-size:23px;font-weight:400;font-family:Arial,sans-serif}.service-link:hover{color:var(--accent)}
.system-section{overflow:hidden;background:#000;border-bottom:1px solid #232722}.system-layout{display:grid;grid-template-columns:1.12fr 1fr;gap:70px;align-items:center}.system-visual{position:relative;border:1px solid #283129;border-radius:7px;background:#000;min-width:0;padding:22px 0 20px}.drawing-label{font-size:9px;letter-spacing:.15em;color:#798775;margin:0 26px;display:block}.house-drawing{width:100%;height:auto;overflow:visible}.drawing-footnote{display:block;font-size:9px;color:#788273;text-align:right;margin:13px 26px 0}.diagram-label{font-family:Manrope,Arial,sans-serif;font-size:9px;letter-spacing:1px}.diagram-part{transition:opacity .4s,filter .4s}.system-visual[data-active="pv"] .diagram-pv,.system-visual[data-active="storage"] .diagram-storage,.system-visual[data-active="heat"] .diagram-heat,.system-visual[data-active="heat"] .diagram-charge{filter:drop-shadow(0 0 6px #ffffff20)}.system-visual[data-active="pv"] .diagram-storage,.system-visual[data-active="pv"] .diagram-heat,.system-visual[data-active="pv"] .diagram-charge,.system-visual[data-active="storage"] .diagram-pv,.system-visual[data-active="storage"] .diagram-heat,.system-visual[data-active="storage"] .diagram-charge,.system-visual[data-active="heat"] .diagram-pv,.system-visual[data-active="heat"] .diagram-storage{opacity:.72}.system-copy h2{margin-bottom:24px}.section-intro{font-size:13px;line-height:1.9}.system-tabs{display:flex;margin-top:30px;border-bottom:1px solid #2c3329;gap:21px}.system-tab{border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;padding:0 0 13px;display:flex;align-items:center;gap:7px;color:#949c8d;font-size:11px;white-space:nowrap}.system-tab>span{font-size:9px;color:#58624f}.system-tab.is-active{border-bottom-color:var(--green);color:#f4f7ed}.system-tab[data-system="storage"].is-active{border-color:var(--green)}.system-tab[data-system="heat"].is-active{border-color:var(--blue)}.system-tab.is-active>span{color:var(--green)}.system-panel{padding:24px 0 28px;min-height:163px}.system-panel h3{font-size:17px;margin-bottom:11px;letter-spacing:-.02em}.system-panel p{font-size:12px;line-height:1.9}.system-copy>.text-link{font-size:12px}
.renovation-note{display:grid;grid-template-columns:1.12fr 1fr;align-items:start;gap:70px;margin-top:64px;padding-top:38px;border-top:1px solid #2c3329;background:#000}.renovation-copy h3{font-size:25px;line-height:1.3;margin-bottom:16px}.renovation-copy>p{max-width:58ch;font-size:13px;line-height:1.9}.funding-note{padding-left:30px;border-left:1px solid #465331;background:#000}.funding-note>.eyebrow{font-size:9px;letter-spacing:.14em;color:var(--green);margin-bottom:12px}.funding-note h3{font-size:20px;line-height:1.35;margin-bottom:12px}.funding-note>p:not(.eyebrow){font-size:12px;line-height:1.9}.funding-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;margin-top:18px}.funding-links a{display:inline-flex;align-items:center;gap:8px;min-height:40px;font-size:12px;font-weight:700;line-height:1.5;text-decoration:underline;text-decoration-color:#667553;text-underline-offset:5px;transition:color .2s,text-decoration-color .2s}.funding-links a:hover{color:var(--green);text-decoration-color:var(--green)}
.about-section{background:#000;overflow:hidden}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.about-copy h2{margin-bottom:26px}.about-copy>p:not(.eyebrow){font-size:13px;margin-bottom:18px;max-width:495px;line-height:1.95}.about-copy>.text-link{margin-top:11px}.about-brand{position:relative;min-height:370px;isolation:isolate;background:#000;overflow:hidden}.about-brand-lines{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:hidden}.about-brand-lines path,.contact-lines path{fill:none;stroke-width:1.15;stroke-linecap:butt;vector-effect:non-scaling-stroke}.brand-stroke-blue{stroke:var(--blue)}.brand-stroke-red{stroke:var(--red)}.brand-stroke-green{stroke:var(--green)}.brand-stroke-white{stroke:#fff;opacity:.65}.about-brand-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;min-height:370px;gap:24px}.about-brand-content>img{width:168px}.about-brand-content p{color:#f1f4ed;font-size:31px;line-height:1.35;letter-spacing:-.03em}.about-brand-content>span{font-size:8px;letter-spacing:.18em;color:#9ba493}
.steps-section{background:#000}.steps{list-style:none;padding:0;margin:54px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px;counter-reset:step}.steps li{position:relative;padding-top:28px;border-top:1px solid #3f473b}.steps li:before{content:'';position:absolute;width:7px;height:7px;top:-4px;left:0;border-radius:100%;background:var(--green)}.steps li:nth-child(2):before{background:var(--red)}.steps li:nth-child(3):before{background:var(--blue)}.step-number{font-size:11px;letter-spacing:.1em;color:#878f80}.steps h3{font-size:23px;margin:15px 0}.steps p{font-size:13px;max-width:310px;line-height:1.9}
.faq-section{background:#000;border-block:1px solid #252b24}.faq-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.faq-layout h2{font-size:38px}.faq-list details{border-bottom:1px solid #2b3129}.faq-list details:first-child{border-top:1px solid #2b3129}.faq-list summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;font-size:13px;font-weight:700;line-height:1.6;padding:23px 0}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:20px;line-height:1;flex:none;color:var(--green);transition:transform .2s}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>p{font-size:12px;padding:0 35px 24px 0;line-height:1.95}
.contact-section{position:relative;isolation:isolate;overflow:hidden;padding-block:115px 112px;background:#000}.contact-layout{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:start}.contact-copy h2{font-size:clamp(46px,4.4vw,64px);margin-bottom:25px}.contact-copy>p:not(.eyebrow){font-size:14px;max-width:370px;line-height:1.9}.contact-phone{display:flex;gap:24px;align-items:center;font-size:29px;letter-spacing:-.03em;margin-top:33px;line-height:1.5}.contact-phone>span{font-size:29px;color:var(--green);font-family:Arial,sans-serif}.contact-phone:hover{color:var(--green)}.contact-email{display:inline-block;color:#c6cebf;font-size:12px;margin-top:7px;overflow-wrap:anywhere}.contact-email:hover{text-decoration:underline}address{font-style:normal;color:#a2ac99;font-size:12px;line-height:1.9;margin-top:29px}address strong{color:#e3e8df;font-weight:400}.route-link{font-size:11px;margin-top:16px}.contact-lines{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.55;overflow:hidden}.project-form{background:#000;padding:32px;border:1px solid #30372c;border-radius:7px}.project-form fieldset{border:0;margin:0 0 25px;padding:0;min-width:0}.project-form legend{font-size:13px;color:#e4e9df;font-weight:700;margin-bottom:13px;padding:0}.interest-options{display:flex;flex-wrap:wrap;gap:8px}.interest-options>label{position:relative;font-size:11px;cursor:pointer;display:block}.interest-options input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.interest-options span{display:block;border:1px solid #424b3c;padding:8px 12px;border-radius:4px;color:#a8b0a1;transition:background .2s,border-color .2s,color .2s}.interest-options input:checked+span{background:#000;border-color:var(--green);color:var(--green)}.interest-options input:focus-visible+span{outline:2px solid var(--green);outline-offset:3px}.project-form>label,.form-row>label{display:flex;flex-direction:column;position:relative;font-size:11px;color:#d0d8c8;gap:7px;margin-bottom:17px;min-width:0}.project-form>label>span,.form-row>label>span{display:none}.project-form input:not([type=checkbox]),.project-form textarea{width:100%;color:#f0f5e8;background:#000;border:1px solid #36402f;border-radius:4px;padding:12px 13px;min-height:45px;font-size:12px;line-height:1.5}.project-form textarea{resize:vertical;min-height:118px}.project-form input::placeholder,.project-form textarea::placeholder{color:#818b78;opacity:1}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-note{font-size:10px;line-height:1.9;margin:5px 0 18px;color:#939f86}.form-note a{color:#cbd5bf;text-decoration:underline;text-underline-offset:3px}.form-submit{width:100%;justify-content:space-between;min-height:49px}.form-status{margin-top:20px;border-top:1px solid #424e38;padding-top:17px}.form-status p{font-size:11px;line-height:1.8;margin-bottom:10px}.form-status strong{font-weight:400;overflow-wrap:anywhere;color:#dce7cc}.form-status .text-link{font-size:11px}.form-status textarea{margin-top:14px;min-height:200px}
.captcha-preview{margin:22px 0 17px;padding:18px;border:1px solid #30372c;border-radius:4px;background:#000}.captcha-preview-title{margin-bottom:12px;color:#e4e9df;font-size:13px;font-weight:700;line-height:1.5}.captcha-preview-code{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 12px;border:1px dashed #3b4534;border-radius:3px;background:#000;color:#9ca991;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:16px;line-height:1.5;letter-spacing:.14em;user-select:none}.captcha-preview label{display:block;margin:13px 0 7px;color:#b2bdab;font-size:11px;line-height:1.5}.captcha-preview input:disabled{background:#000;border-color:#30372c;color:#7f8977;-webkit-text-fill-color:#7f8977;opacity:1;cursor:not-allowed}.captcha-preview input:disabled::placeholder{color:#7f8977;opacity:1}.captcha-preview-note{margin-top:10px;color:#aebba0;font-size:12px;line-height:1.8}
.privacy-notice{position:fixed;right:20px;bottom:20px;z-index:60;display:flex;flex-direction:column;gap:16px;width:420px;max-width:calc(100% - 40px);max-height:min(360px,60vh);max-height:min(360px,60svh);padding:22px;border:1px solid #56624c;border-radius:7px;background:#000;color:var(--white);box-shadow:0 12px 40px #0009;overflow:hidden}.privacy-notice>div:first-child{min-height:0;overflow-y:auto;overscroll-behavior:contain}.privacy-notice h2{margin:0 0 10px;font-size:19px;line-height:1.3;letter-spacing:-.025em}.privacy-notice p{margin:0;color:#b8c0b0;font-size:12px;line-height:1.75}.privacy-notice p+p{margin-top:9px}.privacy-notice-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;flex-shrink:0}.privacy-notice-actions .button{min-height:44px;padding:10px 16px;font-size:12px;line-height:1.4}.privacy-notice-actions .text-link{min-height:44px;gap:8px;font-size:11px;line-height:1.5}.privacy-reopen{border:0;padding:0;background:none;color:inherit;font:inherit;line-height:inherit;text-align:left;cursor:pointer}.privacy-reopen:hover{color:#d4e2c2}.privacy-reopen:focus-visible{outline:2px solid var(--green);outline-offset:5px}
.site-footer{background:#000;padding-top:38px}.footer-top{display:flex;align-items:center;gap:38px;padding-bottom:32px}.footer-top>p{font-size:10px;color:#788270}.back-top{width:37px;height:37px;flex:none;border:1px solid #3d4735;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:19px;margin-left:auto}.back-top:hover{border-color:var(--green);color:var(--green)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:71px;border-top:1px solid #262e20;color:#8c9782;font-size:9px}.footer-bottom>div{display:flex;flex-wrap:wrap;gap:25px}.footer-bottom a:hover{color:#d4e2c2}.draft-label{font-size:8px;letter-spacing:.08em;color:#69765b}
.legal-main{padding:90px 0 120px;min-height:calc(100vh - 300px)}.legal-main .container{max-width:850px}.legal-main h1{font-size:clamp(38px,5vw,60px);margin-bottom:30px}.legal-main h2{font-size:23px;margin:34px 0 15px}.legal-main p,.legal-main li{font-size:14px;line-height:1.9;color:#b8c0b0}.legal-main p+p{margin-top:16px}.legal-main a:not(.button){text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.legal-main .button{margin-top:40px}.legal-notice{border:1px solid #5d6c3b;border-left:3px solid var(--green);background:#000;padding:22px 25px;border-radius:4px;margin-bottom:36px}.legal-main ul{padding-left:20px}.legal-main .eyebrow{margin-bottom:22px}
@media(min-width:1600px){.hero-inner{min-height:715px}.hero{min-height:805px}.hero-copy{padding-block:105px}.hero-photo{left:39%}}
@media(max-width:1150px){.container{width:calc(100% - 72px)}.header-inner{gap:22px}.main-nav{gap:21px}.wordmark{gap:12px}.wordmark-symbols{width:78px;flex-basis:78px}.wordmark-copy{gap:2.5px}.wordmark-copy{font-size:16px}.hero h1{font-size:66px}.hero-photo{left:30%}.hero-image-note{bottom:83px;right:4px;font-size:8px}.section{padding-block:85px}.service-grid{gap:20px}.service-card{padding:27px 22px}.service-card p{min-height:90px}.service-card ul{margin-block:20px}.service-card h3{font-size:25px}.service-link{font-size:12px}.system-layout{gap:39px;grid-template-columns:1.1fr 1fr}.system-tabs{gap:14px}.system-tab{gap:5px;font-size:10px}.system-panel{min-height:185px}.renovation-note{gap:39px;grid-template-columns:1.1fr 1fr}.funding-note{padding-left:24px}.about-layout{gap:65px}.about-brand-content p{font-size:26px}.faq-layout{gap:65px}.faq-layout h2{font-size:32px}.contact-layout{gap:60px}.project-form{padding:26px}.contact-phone{font-size:26px}.hero-bottom{gap:28px}}
@media(max-width:900px){.header-inner{height:auto;min-height:88px;flex-wrap:wrap;gap:18px 16px;padding-block:22px}.main-nav{width:100%;flex-wrap:wrap;justify-content:center;gap:16px;padding:0 0 2px}.main-nav>a{font-size:12px}.main-nav>.button{min-height:40px;gap:12px;padding-inline:13px}.js .header-inner{height:88px;min-height:88px;padding-block:0;flex-wrap:nowrap;gap:16px}.js .menu-toggle{display:block;flex:none}.js .main-nav{display:none;position:absolute;top:100%;left:0;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:14px 36px 23px;background:#000;border-bottom:1px solid #4d5941;box-shadow:0 15px 30px #0008}.js .main-nav.is-open{display:flex}.js .main-nav>a{font-size:14px;padding:12px 5px}.js .main-nav>.button{margin-top:10px;padding:13px}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.hero h1{font-size:58px}.hero-copy{max-width:620px}.hero .eyebrow{font-size:8px}.hero-description{max-width:440px;font-size:14px}.hero-image-note{display:none}.hero-photo{left:24%;opacity:.7}.hero-photo:after{background:linear-gradient(90deg,#000,rgba(0,0,0,.5) 35%,rgba(0,0,0,.1)),linear-gradient(0deg,#000,transparent 70%)}.hero-inner{min-height:620px}.hero{min-height:700px}.hero-bottom{min-height:80px;font-size:9px;gap:25px}.section-heading{gap:40px}.section-heading>p{max-width:310px;font-size:12px}.service-grid{grid-template-columns:1fr;gap:20px}.service-card{padding:30px}.service-card h3{font-size:28px;min-height:0}.service-card p{font-size:14px;min-height:0;max-width:620px;line-height:1.85}.service-card ul{font-size:12px;margin-block:23px}.service-card-top{margin-bottom:24px}.service-link{font-size:13px}.system-layout{grid-template-columns:1fr;gap:45px}.system-visual{max-width:620px;width:100%;margin-inline:auto;order:2}.system-copy{max-width:650px}.system-panel{min-height:133px}.system-tabs{gap:32px}.system-tab{font-size:12px}.renovation-note{grid-template-columns:1fr;gap:30px;margin-top:48px;padding-top:32px}.renovation-copy>p{max-width:650px}.funding-note{padding:28px 0 0;border-left:0;border-top:1px solid #2c3329}.funding-note>p:not(.eyebrow){max-width:650px;font-size:13px}.about-layout{grid-template-columns:1fr;gap:68px}.about-copy{max-width:640px}.about-copy>p:not(.eyebrow){max-width:none}.about-brand{width:calc(100% - 50px);max-width:570px;margin-inline:auto}.steps{gap:28px}.steps h3{font-size:20px}.steps p{font-size:12px}.faq-layout{grid-template-columns:1fr;gap:40px}.contact-layout{grid-template-columns:1fr;gap:42px}.contact-copy>p:not(.eyebrow){max-width:500px}.contact-copy h2 br{display:none}.contact-phone{margin-top:23px}.contact-layout .project-form{max-width:650px;width:100%}.footer-top>p{display:none}}
@media(max-width:700px){.captcha-preview{padding:15px}.privacy-notice{padding:18px;gap:14px}.privacy-notice-actions{gap:8px 14px}html{scroll-padding-top:25px}.container{width:calc(100% - 40px)}.section{padding-block:65px}.header-inner{min-height:83px;padding-block:22px}.js .header-inner{height:83px;min-height:83px;gap:12px}.js .main-nav{padding-inline:20px}.wordmark{gap:10px}.wordmark-symbols{width:66px;flex-basis:66px}.wordmark-copy{gap:2px}.wordmark-copy{font-size:14px}.hero{min-height:0}.hero-inner{min-height:610px}.hero-copy{padding:64px 0 58px;width:100%}.hero-photo{inset:0;opacity:.64}.hero-photo img{object-position:62% center}.hero-photo:after{background:linear-gradient(90deg,#000,rgba(0,0,0,.5)),linear-gradient(0deg,#000,transparent 70%)}.hero h1{font-size:clamp(43px,8.4vw,59px);line-height:1.13;letter-spacing:-.05em}.hero .eyebrow{font-size:7.6px;letter-spacing:.11em;margin-bottom:25px;gap:9px}.hero-description{font-size:14px;max-width:405px;line-height:1.9;margin-top:24px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px;margin-top:28px}.hero-actions .button{font-size:12px;min-height:50px}.hero-actions .text-link{font-size:12px}.hero-signature{margin-top:34px;gap:14px}.hero-signature>img{width:106px}.hero-signature>span{font-size:9px}.hero-lines{width:165%;left:-34%;opacity:.6}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:13px 28px;padding:22px 0;font-size:8px;min-height:88px}.hero-bottom>a{display:none}.section-kicker{font-size:9px;margin-bottom:19px}.section-heading{display:block;margin-bottom:34px}.section-heading>p{margin-top:24px;max-width:440px;font-size:13px}h2{font-size:35px;line-height:1.18}.service-grid{gap:16px}.service-card{padding:27px 24px}.service-card h3{font-size:26px}.service-card p{font-size:13px;min-height:0;line-height:1.85}.service-card ul{font-size:12px;margin-block:21px}.service-card li{padding-block:5px}.service-card li:before{top:13px}.service-link{font-size:12px}.brand-picto{--size:45px}.service-card-top{margin-bottom:24px}.system-copy h2{margin-bottom:22px}.system-tabs{gap:20px}.system-tab{font-size:11px}.system-panel{min-height:165px}.system-layout{gap:35px}.system-visual{padding-top:19px}.drawing-label{font-size:8px;margin-inline:19px}.drawing-footnote{margin-right:19px;font-size:8px}.system-panel h3{font-size:17px}.renovation-note{margin-top:40px;padding-top:28px;gap:26px}.renovation-copy h3{font-size:23px}.funding-note{padding-top:24px}.funding-note h3{font-size:21px}.funding-links{gap:6px 20px;margin-top:15px}.about-layout{gap:60px}.about-brand{min-height:315px;width:calc(100% - 28px)}.about-brand-content{min-height:315px;gap:21px}.about-brand-content p{font-size:27px}.about-brand-content>img{width:151px}.steps{grid-template-columns:1fr;gap:32px;margin-top:34px}.steps li{padding-top:23px}.steps h3{font-size:24px;display:inline-block;margin:0 0 12px 18px}.steps p{max-width:420px;font-size:13px}.step-number{font-size:12px}.faq-layout h2{font-size:35px}.faq-list summary{font-size:12px;padding-block:22px}.faq-list details>p{padding-right:0}.contact-copy h2{font-size:46px}.contact-copy>p:not(.eyebrow){font-size:13px}.contact-phone{font-size:28px}.project-form{padding:24px 20px}.form-row{gap:12px}.interest-options{gap:7px}.interest-options span{font-size:10px;padding:7px 10px}.footer-top{padding-bottom:26px;gap:14px}.footer-bottom{align-items:flex-start;flex-wrap:wrap;gap:13px 20px;padding-block:20px}.footer-bottom>div{width:100%;gap:10px 20px}.draft-label{margin-left:auto;align-self:center}.legal-main{padding:60px 0 80px}.legal-main .container{width:calc(100% - 40px)}.legal-main h1{font-size:38px}.legal-main p,.legal-main li{font-size:13px}.legal-notice{padding:18px}}
@media(max-width:430px){.service-card{padding:25px}.service-card h3{font-size:25px}.service-card-top{margin-bottom:23px}.form-row{grid-template-columns:1fr;gap:0}.project-form{padding:23px 18px}.hero-description .desktop-break{display:none}.hero .eyebrow{font-size:7px}.hero-signature{gap:11px}.hero-signature>img{width:94px}.hero-signature>span{font-size:8px}.system-tabs{gap:17px}.system-tab{gap:5px;font-size:10px}.contact-phone{font-size:26px}.contact-copy h2{font-size:43px}.hero-inner{min-height:600px}}
@media(max-width:370px){.wordmark{gap:8px}.wordmark-symbols{width:54px;flex-basis:54px}.wordmark-copy{font-size:12px}.js .header-inner{gap:8px}.footer-top{gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{body{background:white;color:black}.site-header,.hero-photo,.hero-lines,.contact-lines,.project-form,.site-footer,.system-visual,.privacy-notice,.privacy-reopen{display:none}.section{padding-block:20px}h1,h2,h3,p,a,li,address{color:black!important}.container{width:100%}.hero-inner,.hero{min-height:0}.hero-copy{padding:20px 0}.service-card{break-inside:avoid;background:white}.service-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:40px}.contact-layout{display:block}}

.energy-flow-path{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:.72;transition:stroke-opacity .4s}
.system-visual[data-flow-mode="battery"] .energy-flow-path.flow-pv,.system-visual[data-flow-mode="battery"] .flow-direction.flow-pv{stroke-opacity:.22}
.energy-flow-dots{pointer-events:none}.energy-flow-dot{fill:var(--flow-color);stroke:#f2f7df;stroke-width:.7;filter:drop-shadow(0 0 4px var(--flow-color));pointer-events:none}
.energy-flow-caption{min-height:2.9em;margin:12px 26px 0;font-size:12px;line-height:1.6;color:#c6d1b9}
.energy-flow-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 26px}
.energy-flow-controls .drawing-footnote{margin:0;text-align:left;font-size:9px;line-height:1.5}
.energy-motion-toggle{min-height:44px;padding:8px 0 8px 12px;border:0;background:#000;color:#bbc7ac;font:inherit;font-size:10px;line-height:1.5;cursor:pointer;text-align:right;white-space:nowrap}
.energy-motion-toggle:hover{color:#fff}.energy-motion-toggle:focus-visible{outline:2px solid var(--green);outline-offset:4px}
@media(max-width:700px){.energy-flow-caption{margin-inline:19px;font-size:11px}.energy-flow-controls{margin-inline:19px;gap:10px;flex-wrap:wrap}.energy-motion-toggle{padding-left:0}.energy-flow-controls .drawing-footnote{font-size:8px}}

.contact-icon{display:inline-block;width:1.05em;height:1.05em;margin-right:.5em;vertical-align:-.18em;stroke-linecap:round;stroke-linejoin:round;flex:none}
.contact-phone{gap:.35em}.contact-phone .contact-icon{width:.66em;height:.66em;margin-right:0;vertical-align:-.02em}
.cta-pin{width:20px;height:20px;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* Joomla private-test shell; original site design above remains unchanged. */
.test-notice{background:#000;border-bottom:1px solid #2a2d24;color:#d4d8cf;font-size:11px}
.test-notice-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}
.test-notice p{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:0;line-height:1.6}
.test-notice strong{font-weight:600;color:#fff}.test-notice-dot{width:6px;height:6px;border-radius:50%;background:#AFCB08;flex:none;margin-right:3px}
.test-notice-actions{display:flex;align-items:center;gap:18px;flex:none}.test-notice-actions>a,.test-logout button{color:#AFCB08;font-size:11px;font-family:inherit;text-decoration:none;white-space:nowrap}
.test-logout{margin:0;padding:0}.test-logout button{border:0;background:#000;padding:8px 0;min-height:44px;cursor:pointer}.test-notice-actions a:hover,.test-logout button:hover{color:#fff}
.test-notice-actions a:focus-visible,.test-logout button:focus-visible{outline:2px solid #AFCB08;outline-offset:4px}
.system-messages{color:#fff}.system-messages joomla-alert,.system-messages .alert{display:block;background:#000;color:#fff;border:1px solid #434b37;border-left:3px solid #AFCB08;padding:18px 20px;margin:24px 0;font-size:13px;line-height:1.7}
.system-messages joomla-alert[type="danger"],.system-messages .alert-danger{border-left-color:#E30613}.system-messages joomla-alert[type="warning"],.system-messages .alert-warning{border-left-color:#AFCB08}.system-messages ul{padding-left:20px}.system-messages button{background:#000;color:#fff;border:1px solid #434b37;padding:5px 10px;cursor:pointer}
.system-messages:empty{display:none}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.access-page{background:#000;min-height:100svh}.access-shell{min-height:100svh;display:grid;place-items:center;padding:44px 20px}.access-card{position:relative;overflow:hidden;background:#000;border:1px solid #2b2e28;width:min(100%,600px);padding:48px 44px}
.access-content{position:relative;z-index:1}.access-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:.56}.access-lines path{stroke-width:1.2;vector-effect:non-scaling-stroke}
.access-card .wordmark{margin:0 0 42px}.access-kicker{font-size:9px;letter-spacing:.16em;color:#AFCB08;margin-bottom:18px}.access-card h1{font-size:clamp(35px,6vw,48px);line-height:1.15;letter-spacing:-.045em;max-width:480px;margin:0 0 22px;color:#fff;font-weight:650}.access-intro{font-size:13px;line-height:1.9;color:#b2b7ad;max-width:445px}
.access-form{margin-top:30px;display:grid;gap:20px}.access-form label{display:grid;gap:9px;font-size:12px;color:#e1e5da}.access-form input{width:100%;min-height:48px;border:1px solid #454d3b;border-radius:0;background:#000;color:#fff;font:inherit;padding:12px 14px;outline:none}.access-form input:focus{border-color:#AFCB08;box-shadow:0 0 0 1px #AFCB08}.access-form .button{width:100%;justify-content:space-between;min-height:51px;margin-top:4px}.access-privacy{font-size:10px;line-height:1.9;color:#9da395;margin-top:24px}.access-footer{font-size:10px;line-height:1.9;color:#737b6e;border-top:1px solid #2a3023;padding-top:21px;margin-top:26px}.access-help{border-block:1px solid #2e3527;padding:20px 0;margin-top:24px;font-size:13px;line-height:1.9;color:#c4cabe}.error-card .button{margin-top:24px}
.vorwallner-contact-form .invalid,.vorwallner-contact-form [aria-invalid="true"]{border-color:#E30613}.vorwallner-contact-form .form-control-feedback{font-size:11px;color:#ff969d;line-height:1.6}.vorwallner-contact-form .form-required,.vorwallner-contact-form .star{color:#AFCB08}.vorwallner-contact-form fieldset{min-width:0}.vorwallner-contact-form .form-control{max-width:100%}
@media(max-width:700px){.test-notice-inner{gap:10px}.test-notice-detail{display:none}.test-notice-actions{gap:13px}.test-notice,.test-notice-actions>a,.test-logout button{font-size:10px}.access-shell{padding:24px 20px}.access-card{padding:32px 24px}.access-card .wordmark{margin-bottom:32px}.access-kicker{font-size:8px}.access-card h1{font-size:38px}.access-intro{font-size:12px}.access-form{margin-top:24px}}
@media(max-width:370px){.access-card{padding:30px 22px}.access-card h1{font-size:34px}.access-kicker{font-size:7px;letter-spacing:.12em}.test-notice-actions{gap:10px}.test-notice-actions>a{display:none}}
@media print{.test-notice{display:none}}

.vorwallner-captcha{border:1px solid #343a2d;background:#000;padding:19px;margin:22px 0;min-width:0}.vorwallner-captcha .captcha-preview-title{font-size:13px;margin:0 0 15px;color:#fff}.vorwallner-captcha-image{display:block;width:252px;max-width:100%;height:auto;margin-bottom:13px;border:1px solid #454d3b}.vorwallner-captcha .captcha-refresh{display:inline-block;font-size:11px;margin:0 0 18px;line-height:1.65;padding-block:4px}.vorwallner-captcha .captcha-refresh:focus-visible{outline:2px solid #AFCB08;outline-offset:4px}.vorwallner-captcha .form-note{font-size:10px;margin:10px 0 0;line-height:1.85}.vorwallner-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.vorwallner-contact-form .form-status[role="alert"]{display:block;border-left:2px solid #E30613;padding:13px 15px;margin-bottom:20px;background:#000;color:#fff}@media(max-width:700px){.vorwallner-captcha{padding:15px}}
