@font-face{font-family:Outfit;src:url('/assets/fonts/Outfit-Variable.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--cw-canvas:#f6f5ed;--cw-surface:#ebece2;--cw-ink:#163a2e;--cw-ink-soft:#50675b;--cw-accent:#dbc269;--cw-accent-ink:#102e26;--cw-font-display:Outfit,sans-serif;--cw-font-text:Outfit,sans-serif;--forest:#102e26;--deep:#0d261f;--cream:#f6f5ed;--gold:#dbc269;--sage:#b5c6b3;--line:#cdd4c7;--gutter:clamp(22px,5.3vw,90px);--ease:cubic-bezier(.23,1,.32,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--cream);color:var(--forest);font-family:Outfit,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,label,summary{touch-action:manipulation}button{cursor:pointer}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:450;letter-spacing:-.045em;line-height:1.04;text-wrap:balance}p{max-width:65ch;text-wrap:pretty}h1{font-size:clamp(48px,5.8vw,88px)}h2{font-size:clamp(36px,4.5vw,64px)}h3{font-size:26px;letter-spacing:-.025em}em{font-style:normal;color:var(--gold)}img{display:block;max-width:100%;height:auto}svg{display:block;width:100%;height:auto}button:active,.button:active{transform:translateY(2px)}button:disabled{opacity:.5;cursor:not-allowed}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #ad8728;outline-offset:5px}::selection{background:var(--gold);color:var(--forest)}[hidden]{display:none!important}.wrap{max-width:1440px;margin:auto;padding-inline:var(--gutter)}.section{padding-block:clamp(72px,8vw,128px)}.eyebrow{font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:550;margin-bottom:24px}.lede{font-size:clamp(21px,2.1vw,28px);line-height:1.45;letter-spacing:-.02em}.fine{font-size:13px;line-height:1.5;opacity:.78}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;background:var(--gold);color:var(--forest);font-size:15px;line-height:1.2;font-weight:550;padding:19px 25px;border:1px solid var(--gold);border-radius:4px;transition:background .15s,transform .15s}.button span{font-size:22px;line-height:1}.button.small{padding:13px 18px;font-size:13px;gap:24px}.underlined,.text-link{display:inline-flex;align-items:center;gap:18px;border:0;border-bottom:1px solid currentColor;background:none;padding:0 0 5px;color:inherit;font-size:15px;line-height:1.5}.underlined span{font-size:22px}.skip{position:fixed;top:8px;left:8px;z-index:100;background:var(--cream);color:var(--forest);padding:12px;transform:translateY(-160%)}.skip:focus{transform:none}.header{height:92px;display:flex;align-items:center;gap:40px;padding-inline:var(--gutter);background:var(--forest);color:var(--cream);position:relative;z-index:20;border-bottom:1px solid #39564a}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{width:59px;height:auto}.brand>span{font-size:19px;font-weight:500;line-height:1.2;letter-spacing:-.03em}.brand small{display:block;font-size:10px;letter-spacing:.06em;font-weight:350;margin-top:6px;color:#c7d3c5}.desktop-nav{margin-left:auto;display:flex;gap:30px;font-size:13px}.menu-button{display:none;color:var(--cream);background:none;border:1px solid #718b79;padding:10px;border-radius:4px;font-size:14px}.mobile-nav{position:absolute;top:100%;left:0;right:0;background:var(--forest);padding:20px var(--gutter) 30px;border-bottom:1px solid #718b79}.mobile-nav a{display:block;padding:12px 0;border-bottom:1px solid #39564a}.hero{background:var(--forest);color:var(--cream);position:relative;overflow:hidden}.hero-layout{display:grid;grid-template-columns:1.05fr 1fr;min-height:630px;height:calc(100svh - 153px);max-height:850px;align-items:center;position:relative}.hero-copy{padding:40px 0 60px;position:relative;z-index:3}.hero h1{font-weight:420;line-height:1.03;letter-spacing:-.045em}.hero-copy p{font-size:18px;line-height:1.6;color:#d2dccf;margin:29px 0 34px;max-width:440px}.hero-link{display:block;font-size:13px;color:#d2dccf;margin-top:20px;width:max-content;border-bottom:1px solid #6f8974}.hero-link span{margin-left:16px}.hero-bottom{display:flex;justify-content:space-between;align-items:center;min-height:62px;border-top:1px solid #39564a;font-size:12px;color:#d2dccf}.hero-bottom a{display:flex;gap:40px;align-items:center}.hero-bottom a span{font-size:20px}.energy-scene{position:relative;width:122%;margin-left:-12%;align-self:center;aspect-ratio:720/610}.energy-scene svg{overflow:visible}.diagram-label{position:absolute;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#d6dfcc}.label-pv{top:18%;left:27%;border-bottom:1px solid #748a70;padding-bottom:9px}.label-battery{bottom:11%;left:7%;border-top:1px solid #748a70;padding-top:9px}.label-grid{top:48%;right:0;border-top:1px solid #748a70;padding-top:9px}.scene-caption{position:absolute;bottom:0;right:3%;font-size:10px;color:#a8bca5}.intro{background:var(--cream)}.intro-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px}.intro h2{max-width:470px}.intro .lede{margin-bottom:38px}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;gap:24px;padding:22px 0;border-top:1px solid var(--line)}.steps li>span{font-size:12px;padding-top:3px;color:#657d69}.steps h3{font-size:19px;letter-spacing:-.02em;line-height:1.25}.steps p{margin-top:8px;font-size:14px;color:#50675b;line-height:1.6}.compass{background:#e5e9dd;padding-bottom:120px}.section-head{margin-bottom:52px}.section-head h2{margin-bottom:22px}.section-head p:not(.eyebrow){color:#50675b;font-size:18px}.compass-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.compass-controls{padding-top:22px}fieldset{padding:0;border:0;margin:0;min-width:0}legend{font-size:16px;margin-bottom:17px;font-weight:500}.choice-list{display:flex;flex-direction:column}.choice-list label{display:flex;align-items:center;position:relative;gap:16px;cursor:pointer;border-top:1px solid #b9c8b4;padding:24px 14px 24px 4px;transition:background .15s}.choice-list label:last-child{border-bottom:1px solid #b9c8b4}.choice-list input{width:17px;height:17px;accent-color:var(--forest);flex-shrink:0}.choice-list label>span:first-of-type{font-size:23px;letter-spacing:-.02em;line-height:1.25}.choice-list label>span:last-of-type{margin-left:auto;font-size:26px}.choice-list small{display:block;font-size:12px;letter-spacing:0;color:#50675b;margin-top:5px}.choice-list label:has(input:checked){background:#d5decd;padding-left:14px}.pv-field{margin-top:38px}.segmented{display:flex;gap:10px}.segmented label{display:flex;align-items:center;gap:8px;cursor:pointer;border:1px solid #a5b79e;border-radius:4px;padding:12px 14px;font-size:13px}.segmented input{accent-color:var(--forest)}.segmented label:has(input:checked){background:var(--forest);color:var(--cream);border-color:var(--forest)}.compass-result{background:var(--forest);color:var(--cream);border-radius:6px;overflow:hidden;box-shadow:0 20px 40px -30px #0d261f70}.network{height:218px;position:relative;display:flex;align-items:center;justify-content:space-around;margin:0 34px;border-bottom:1px solid #45604d}.network-node{display:flex;flex-direction:column;align-items:center;gap:10px;font-size:11px;position:relative;z-index:2;background:var(--forest);padding:6px;min-width:65px}.node-symbol{font-family:Arial,sans-serif;font-size:36px;color:var(--gold);height:43px}.battery-symbol{width:28px;height:39px;border:2px solid var(--gold);border-radius:3px;position:relative;margin-top:4px}.battery-symbol:before{content:'';position:absolute;top:-6px;left:7px;width:10px;height:4px;background:var(--gold)}.battery-symbol:after{content:'';position:absolute;left:5px;right:5px;bottom:5px;height:20px;background:var(--gold)}.house-symbol{width:37px;height:28px;border:2px solid var(--sage);position:relative;margin-top:15px}.house-symbol:before{content:'';position:absolute;left:3px;top:-16px;width:25px;height:25px;border-top:2px solid var(--sage);border-left:2px solid var(--sage);transform:rotate(45deg);background:var(--forest)}.house-symbol:after{content:'';position:absolute;width:8px;height:15px;left:12px;bottom:-2px;border:2px solid var(--sage);background:var(--forest)}.wire{position:absolute;height:1px;background:#a0b397;top:103px;width:27%;z-index:1}.wire-a{left:16%}.wire-b{left:56%}.wire:after{content:'';width:5px;height:5px;position:absolute;right:10%;top:-2px;background:var(--gold);border-radius:50%}.network-grid{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);font-size:10px;color:#b5c6b3}.network-grid span{display:block;height:24px;width:1px;background:#678667;margin:0 auto 6px}.network[data-audience=business] .house-symbol{width:48px;height:32px}.network[data-audience=business] .house-symbol:before{transform:none;left:-2px;top:-10px;height:9px;width:46px;border:2px solid var(--sage);border-bottom:0}.network[data-audience=municipal] .house-symbol{width:44px}.network[data-pv=no] .node-pv{opacity:.6}.network[data-pv=no] .wire-a{background:none;border-top:1px dashed #a0b397}.result-copy{padding:33px 40px 37px}.result-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--gold)}.result-copy h3{font-size:34px;margin:14px 0 16px}.result-copy p{font-size:15px;color:#d2dccf}.checklist{list-style:none;padding:0;margin:26px 0}.checklist li{padding:9px 0 9px 23px;position:relative;font-size:15px;border-bottom:1px solid #ffffff1b}.checklist li:before{content:'✓';position:absolute;left:0;color:var(--gold);font-size:13px}.result-copy .region{font-size:12px;margin-bottom:25px;color:#b5c6b3}.result-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.result-actions .button{padding:15px 19px;font-size:13px;gap:24px}.result-actions .text-link{font-size:12px}.result-copy .fine{font-size:11px;margin-top:22px}.services{background:var(--cream)}.compact{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:55px}.compact h2{margin:0}.compact p{max-width:330px;padding-bottom:5px}.service-feature{display:grid;grid-template-columns:1fr 1fr;background:#c9d5bd;border-radius:5px;overflow:hidden;min-height:390px;margin-bottom:40px}.service-text{padding:48px}.service-text h3{font-size:42px}.service-text p:not(.eyebrow){margin:22px 0 30px;font-size:15px;max-width:420px}.service-text .eyebrow{font-size:10px;margin-bottom:22px}.storage-art{position:relative;display:grid;place-content:center;background:#b7c9ac;overflow:hidden}.storage-outline{height:208px;width:126px;border:2px solid #294b38;transform:rotate(-8deg);position:relative;box-shadow:18px 14px 0 -1px #98b38c,18px 14px 0 1px #294b38;background:#d6dfc8;z-index:2;padding:24px 20px}.storage-outline:before{content:'';position:absolute;height:17px;width:44px;top:-19px;left:38px;border:2px solid #294b38;background:#d6dfc8}.storage-outline span{display:block;width:45px;height:18px;background:var(--forest);margin-bottom:35px}.storage-outline i{display:block;margin-bottom:9px;height:2px;background:#63825a;width:100%}.storage-line{position:absolute;border:1px solid #79986d;width:550px;height:200px;transform:rotate(-28deg);top:120px;left:-70px}.storage-word{position:absolute;right:25px;bottom:25px;font-size:10px;letter-spacing:.1em;line-height:1.6}.service-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;margin-bottom:48px}.photo-service:nth-child(2){padding-top:80px}.photo-service figure{overflow:hidden;border-radius:4px;aspect-ratio:1.6;margin-bottom:25px}.photo-service img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.photo-service>div{display:flex;justify-content:space-between;align-items:center}.photo-service h3{font-size:32px}.photo-service>div>span{font-size:30px}.photo-service p{font-size:15px;color:#50675b;margin-top:12px}.service-row{display:flex;align-items:center;gap:24px;border-top:1px solid var(--line);padding:28px 0}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row h3{font-size:25px;flex:1}.service-row p{font-size:14px;color:#50675b;flex:1}.service-row>span{font-size:28px}.business{background:#d9bd6c}.business-layout{max-width:1180px}.business h2{max-width:850px}.business-columns{display:grid;grid-template-columns:1fr 1fr;gap:90px;margin-top:60px}.business h3{font-size:23px}.business p:not(.eyebrow){margin:20px 0 25px;font-size:16px}.about{background:#edf0e7}.about-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:center}.about figure{overflow:hidden}.about img{width:100%;height:540px;object-fit:cover;object-position:50% 35%;border-radius:4px}.about figcaption{font-size:11px;margin-top:15px;color:#50675b}.about h2{font-size:clamp(35px,4vw,56px);margin-bottom:30px}.about p:not(.eyebrow){margin-bottom:23px}.about .lede{font-size:23px}.signature{margin-top:36px;font-size:23px;font-weight:350;font-style:italic;letter-spacing:-.05em}.close{background:var(--forest);color:var(--cream)}.close-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:100px;align-items:center}.close h2{font-size:clamp(38px,4.7vw,66px);margin-bottom:27px}.close p{color:#d2dccf;margin-bottom:28px;max-width:500px}.close .fine{font-size:12px;margin-top:15px;margin-bottom:0}.conversation-note{background:#e9ecdc;color:var(--forest);padding:37px 35px;transform:rotate(2deg);box-shadow:0 18px 30px -18px #071b14}.note-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid #afbea5;padding-bottom:20px}.conversation-note p{font-size:25px;line-height:1.2;color:var(--forest);margin:26px 0}.conversation-note ul{padding:0;list-style:none;font-size:14px;margin:0 0 28px}.conversation-note li{padding:8px 0;border-bottom:1px solid #c5cebc}.note-foot{display:block;font-size:10px;color:#50675b;margin-top:30px}.footer{background:var(--deep);color:#c8d5c4;padding:55px var(--gutter) 25px}.footer-top{display:flex;justify-content:space-between;gap:40px;max-width:1260px;margin:auto}.footer-top p{font-size:12px}.footer-top>div a{display:block;font-size:14px;margin-bottom:6px}.footer-bottom{display:flex;gap:25px;max-width:1260px;margin:45px auto 0;padding-top:24px;border-top:1px solid #39564a;font-size:11px}.footer-bottom span{margin-right:auto}.detail-hero{background:var(--forest);color:var(--cream);padding-top:48px}.detail-hero .back-link{font-size:12px;color:#bacdb6;display:block;margin-bottom:65px}.detail-hero h1{max-width:1080px;margin-bottom:30px}.detail-hero .eyebrow{color:var(--gold)}.detail-hero .lede{max-width:750px;font-size:22px;color:#c8d5c4;margin-bottom:35px}.detail-image{max-width:1260px;margin:70px var(--gutter) 0;max-height:400px;overflow:hidden;border-radius:4px}.detail-image img{width:100%;height:400px;object-fit:cover}.prose-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.prose p{margin-bottom:23px}.prose h3{font-size:25px;margin:35px 0 17px}.prose .checklist li{border-color:var(--line);font-size:16px}.prose .checklist li:before{color:#668443}.markets{background:#e3e8d9}.market-list{margin:60px 0 30px}.market-list article{display:grid;grid-template-columns:.65fr 1fr 1.25fr;gap:45px;padding:35px 0;border-top:1px solid #aabc9e}.market-list article>span{font-size:10px;letter-spacing:.12em;margin-top:7px}.market-list p{font-size:16px}.market-list h3{font-size:30px}.source-line{font-size:11px;margin-top:24px;color:#50675b}.source-line a{text-decoration:underline}.municipal{background:#d3bd77}.municipal p{margin-bottom:25px}.faq{background:#edf0e7}.faq details{border-top:1px solid #bdcdb5;padding-block:22px}.faq details:last-child{border-bottom:1px solid #bdcdb5}.faq summary{cursor:pointer;font-size:20px;display:flex;justify-content:space-between;gap:30px;list-style:none;line-height:1.35}.faq summary::-webkit-details-marker{display:none}.faq details p{margin-top:20px;font-size:16px}.faq details[open] summary span{transform:rotate(45deg)}.booking-note{background:#e5e9dd;padding:35px;margin-bottom:50px;border-radius:4px}.booking-note h2{font-size:28px;letter-spacing:-.02em}.booking-note p{margin:15px 0;font-size:15px}.booking-note .saved-summary{font-size:23px}.booking-fallback{font-size:14px;margin-bottom:20px}.booking-fallback a{font-size:14px}.booking-embed iframe{display:block;width:100%;height:1000px;border:1px solid var(--line);border-radius:5px;background:#fff}.booking-section>.wrap>.fine{margin-top:30px}.booking-section .fine a{text-decoration:underline}
@media(hover:hover) and (pointer:fine){.button:hover{background:#ead48a}.desktop-nav a:hover{color:var(--gold)}.photo-service:hover img{transform:scale(1.035)}.service-row:hover{color:#647e42}.text-link:hover,.underlined:hover{opacity:.7}.choice-list label:hover{background:#dce4d4}}
@media(min-width:1800px){.header,.footer{padding-inline:max(var(--gutter),calc((100vw - 1260px)/2))}}
@media(max-width:1050px){.header{gap:22px}.desktop-nav{gap:20px}.hero-layout{min-height:560px}.hero-copy p{font-size:16px}.hero h1{font-size:60px}.intro-layout,.about-layout,.prose-layout{gap:55px}.compass-layout{gap:35px}.close-layout{gap:55px}.result-copy{padding:28px}.service-text{padding:35px}.service-text h3{font-size:35px}.market-list article{gap:25px}.about img{height:460px}}
@media(max-width:800px){.header{height:78px;gap:16px}.brand>span{font-size:17px}.brand img{width:43px}.brand small{font-size:8px}.desktop-nav{display:none}.header>.button{margin-left:auto}.menu-button:not([hidden]){display:block}.hero-layout{height:auto;min-height:570px;grid-template-columns:1fr 1fr;gap:0}.hero h1{font-size:50px}.hero-copy{padding-block:60px}.energy-scene{width:135%;margin-left:-20%}.hero-copy p{font-size:15px}.hero-bottom{font-size:10px;gap:20px}.intro-layout{grid-template-columns:1fr;gap:35px}.intro h2{max-width:none}.intro .lede{font-size:23px}.compass-layout{grid-template-columns:1fr;gap:35px}.compass-controls{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;padding:0}.choice-list label{padding:16px 8px 16px 4px}.choice-list label>span:first-of-type{font-size:20px}.pv-field{margin-top:0}.segmented{flex-direction:column}.network{height:190px}.wire{top:88px}.result-copy h3{font-size:34px}.result-copy{padding:30px 38px}.business-columns{gap:40px}.close-layout{grid-template-columns:1fr 1fr;gap:40px}.conversation-note{padding:28px 24px}.footer-top{flex-wrap:wrap}.footer-bottom{flex-wrap:wrap}.footer-bottom span{flex-basis:100%}.market-list article{grid-template-columns:1fr 1fr}.market-list article>span{grid-column:1/-1}.prose-layout{grid-template-columns:1fr;gap:35px}.about-layout{gap:40px}.about .lede{font-size:20px}.about p{font-size:15px}.about img{height:430px}}
@media(max-width:700px){html{scroll-padding-top:24px}.header{height:75px;padding-inline:20px;gap:12px}.header>.button{font-size:11px;padding:11px 12px;gap:10px}.header>.button span{font-size:17px}.brand>span{font-size:14px}.brand small{font-size:7px;letter-spacing:.02em}.brand img{width:32px}.brand{gap:7px}.menu-button{font-size:0;padding:8px 11px}.menu-button span{font-size:22px;line-height:1}.hero-layout{display:flex;flex-direction:column;min-height:0;align-items:stretch}.hero-copy{padding:43px 0 0}.hero h1{font-size:clamp(43px,10.7vw,62px);line-height:1.02}.hero-copy p{font-size:15px;margin:19px 0 24px}.hero-copy .button{padding:15px 19px;font-size:13px;gap:30px}.hero-link{font-size:12px;margin-top:14px}.energy-scene{width:96%;margin:-8px auto 12px;max-height:310px;aspect-ratio:720/610}.energy-scene svg{width:100%;height:100%}.diagram-label{font-size:8px}.label-pv{left:22%;top:20%}.label-grid{right:1%}.label-battery{left:8%;bottom:10%}.scene-caption{font-size:8px;bottom:-6px;right:0}.hero-bottom{padding-block:16px;flex-direction:column;align-items:flex-start;gap:6px;min-height:70px}.hero-bottom a{gap:20px;font-size:11px}.section{padding-block:64px}.intro h2{font-size:40px}.intro-layout{gap:30px}.intro .lede{font-size:22px;margin-bottom:30px}.steps li{gap:20px;padding:20px 0}.steps h3{font-size:18px}.section-head{margin-bottom:30px}.section-head h2{font-size:43px}.section-head p:not(.eyebrow){font-size:16px}.eyebrow{font-size:10px;margin-bottom:20px}.compass-controls{display:block}.pv-field{margin-top:26px}.segmented{flex-direction:row}.segmented label{font-size:12px;padding:11px 12px}.compass-layout{gap:28px}.choice-list label{padding-block:18px}.choice-list label>span:first-of-type{font-size:21px}.choice-list small{font-size:11px}.network{height:175px;margin-inline:20px}.wire{top:78px}.network-grid{bottom:12px}.result-copy{padding:27px 23px 30px}.result-copy h3{font-size:31px}.result-copy p,.checklist li{font-size:14px}.result-actions{gap:20px}.result-copy .fine{font-size:11px}.compact{display:block}.compact h2{font-size:43px;margin-bottom:20px}.compact p{font-size:16px;max-width:300px}.service-feature{grid-template-columns:1fr}.service-text{padding:30px}.service-text h3{font-size:35px}.service-text p:not(.eyebrow){font-size:14px;margin-bottom:25px}.storage-art{height:240px}.storage-outline{height:150px;width:92px;padding:16px 14px;transform:rotate(-8deg)}.storage-outline:before{left:26px;width:32px;height:13px;top:-15px}.storage-outline span{margin-bottom:24px;width:32px;height:12px}.storage-outline i{margin-bottom:7px}.storage-word{font-size:9px}.service-grid{gap:35px;grid-template-columns:1fr;margin-bottom:30px}.photo-service:nth-child(2){padding-top:0}.photo-service h3{font-size:29px}.photo-service figure{margin-bottom:20px}.service-row{flex-wrap:wrap;gap:10px;padding-block:22px}.service-row h3{font-size:22px;flex-basis:85%}.service-row p{flex-basis:85%;font-size:13px;order:3}.service-row>span{font-size:23px}.business h2{font-size:40px}.business-columns{grid-template-columns:1fr;gap:37px;margin-top:40px}.business p:not(.eyebrow){font-size:15px;margin:15px 0 22px}.about-layout{grid-template-columns:1fr;gap:40px}.about figure{width:100%;margin-inline:0}.about img{height:390px}.about h2{font-size:40px}.about .lede{font-size:22px}.about p:not(.eyebrow){font-size:16px}.about .lede{font-size:22px!important}.close-layout{grid-template-columns:1fr;gap:48px}.close h2{font-size:42px}.close p{font-size:16px}.conversation-note{margin-inline:7px;max-width:390px}.conversation-note p{font-size:25px}.footer{padding-top:40px}.footer .brand>span{font-size:18px}.footer .brand img{width:50px}.footer .brand small{font-size:9px}.footer-top{flex-direction:column;gap:30px}.footer-bottom{gap:15px;font-size:10px;margin-top:30px}.detail-hero{padding-top:30px}.detail-hero .back-link{margin-bottom:40px}.detail-hero h1{font-size:45px}.detail-hero .lede{font-size:19px}.detail-image{margin-top:40px}.detail-image img{height:220px}.prose h2,.markets h2,.municipal h2,.faq h2{font-size:38px}.market-list{margin-top:35px}.market-list article{display:block;padding:26px 0}.market-list h3{font-size:28px;margin:14px 0}.market-list p{font-size:15px}.prose p{font-size:16px}.faq summary{font-size:18px}.booking-note{padding:25px}.booking-note h2{font-size:26px}.booking-note p{font-size:14px}.booking-fallback{font-size:13px}.booking-fallback .underlined{margin-top:8px}.booking-embed iframe{height:1100px}}
@media(prefers-reduced-motion:no-preference){.image-reveal{clip-path:inset(0);transition:clip-path .75s var(--ease)}.motion-ready .image-reveal:not(.seen){clip-path:inset(0 0 14% 0)}.motion-ready .steps li{transition:opacity .5s var(--ease),transform .5s var(--ease)}.motion-ready .steps li:not(.seen){opacity:.6;transform:translateY(12px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.conversation-note{transform:none}[data-cw-parallax]{transform:none!important}}

.booking-direct{padding:50px;background:#e5e9dd;border:1px solid #becdb4;border-radius:5px}.booking-direct h2{font-size:36px;margin-bottom:20px}.booking-direct p{margin-bottom:30px;max-width:550px}@media(max-width:700px){.booking-direct{padding:28px}.booking-direct h2{font-size:30px}}

/* Original 3D scenes and visual language from patrickleissner.de. */
.hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(120% 90% at 80% 30%,#163a30 0%,#0d2921 45%,#0b1f19 100%)}
.hero-scene,.hero-glow{position:absolute;inset:0;z-index:-1;pointer-events:none}.hero-scene canvas{width:100%;height:100%}.hero-glow{background:radial-gradient(45% 45% at 72% 46%,#d3af3c20,transparent 70%)}
.hero-layout{grid-template-columns:1.2fr .8fr;min-height:650px}.hero h1{font-size:clamp(62px,6.6vw,96px);letter-spacing:-.055em}.hero-copy{max-width:790px}.hero-copy p{max-width:540px}.hero h1 em{font-weight:500}.hero-bottom{position:relative}.button{border-radius:999px}.header{background:#0b211b}.service-feature{position:relative;background:#102e26;color:#f5f4e9;overflow:hidden;min-height:390px}.service-text{position:relative;z-index:2}.service-text p:not(.eyebrow){color:#c4d5c9}.storage-art{position:static;background:transparent}.storage-art canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.has-3d .storage-outline,.has-3d .storage-line{display:none}.storage-word{color:#d3af3c}.motion-toggle{border:0;background:transparent;color:inherit;padding:0;font:inherit;cursor:pointer}.motion-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.motion-paused [data-cw-parallax]{transform:none!important}.motion-paused *{animation-play-state:paused!important}.motion-paused .image-reveal{clip-path:none!important}
@media(max-width:960px){.hero-layout{display:block;min-height:750px}.hero-copy{padding-top:330px;max-width:680px}.hero h1{font-size:70px}.hero-space{display:none}.hero-glow{background:linear-gradient(180deg,transparent 30%,#0b211b80 55%,#0b211b 100%)}}
@media(max-width:700px){.hero-layout{min-height:0}.hero-copy{padding-top:280px;padding-bottom:32px}.hero h1{font-size:clamp(43px,10.5vw,67px)}.hero-copy p{max-width:420px}.hero-scene{bottom:0}.hero-glow{background:linear-gradient(180deg,transparent 20%,#0b211b99 42%,#0b211b 80%)}.service-feature{min-height:530px;display:block}.service-text{padding:30px}.storage-art{height:220px}.storage-word{bottom:16px;right:20px}.service-feature canvas{height:100%}}

@media(max-width:700px){.service-feature canvas{top:230px;bottom:auto;height:300px}.service-feature{min-height:560px}}

/* Original introduction: words become legible with scroll progress. */
.reading-section{background:#faf8f3;padding:clamp(64px,9vw,130px) 0 clamp(40px,6vw,90px)}
.reading-lead{font-size:clamp(28px,3.1vw,48px);line-height:1.28;letter-spacing:-.035em;font-weight:550;color:#153c31;margin:0;max-width:1260px}
.reading-lead span{display:inline-block}
.reading-lead.is-tracking span{opacity:.18;transition:opacity .3s}
.reading-lead.is-tracking span.is-read{opacity:1}
.motion-paused .reading-lead span{opacity:1!important}
@media(prefers-reduced-motion:reduce){.reading-lead span{opacity:1!important;transition:none!important}}
@media(max-width:700px){.reading-lead{font-size:28px;line-height:1.35}.reading-section{padding-block:64px}}

/* Existing partner references, presented as a calm trust section. */
.trust-partners{background:#f3efe5;color:#102e26}
.trust-heading{text-align:center;max-width:800px;margin:0 auto 64px}
.trust-heading h2{font-size:clamp(34px,4vw,58px);line-height:1.1;margin-bottom:24px}
.trust-heading p{max-width:760px;margin:0 auto;color:#50675b;font-size:18px;line-height:1.6}
.trust-logos{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:34px;align-items:center}
.trust-logos li{display:flex;align-items:center;justify-content:center;min-height:72px}
.trust-logos img{max-width:100%;width:auto;height:auto;max-height:48px;object-fit:contain;filter:grayscale(1);opacity:.78}
@media(max-width:1050px){.trust-logos{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 36px}}
@media(max-width:700px){.trust-heading{margin-bottom:36px}.trust-heading h2{font-size:36px}.trust-heading p{font-size:16px}.trust-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px}.trust-logos li:last-child{grid-column:1/-1}.trust-logos img{max-width:160px;width:100%;max-height:42px}}

/* Ferraris-inspired continuous logo movement: emerge right, fade left. */
.trust-orbit{overflow:hidden;width:100%;mask-image:linear-gradient(to right,transparent 0%,#000 18%,#000 82%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 18%,#000 82%,transparent 100%)}
.trust-orbit-track{display:flex;width:max-content;animation:partner-orbit 42s linear infinite;will-change:transform}
.trust-orbit .trust-logos{display:flex;flex:none;gap:64px;align-items:center;padding:0 64px 0 0;margin:0;width:max-content}
.trust-orbit .trust-logos li{flex:0 0 180px;width:180px;height:80px;min-height:80px;display:flex;align-items:center;justify-content:center}
.trust-orbit .trust-logos img{max-width:180px;width:auto;max-height:48px;height:auto;opacity:1;filter:grayscale(1)}
@keyframes partner-orbit{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.motion-paused .trust-orbit-track{animation-play-state:paused}
@media(max-width:700px){.trust-orbit{width:calc(100% + 2 * var(--gutter));margin-left:calc(-1 * var(--gutter));mask-image:linear-gradient(to right,transparent,#000 22%,#000 78%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 22%,#000 78%,transparent)}.trust-orbit .trust-logos{gap:40px;padding-right:40px}.trust-orbit .trust-logos li{flex-basis:145px;width:145px}.trust-orbit .trust-logos img{max-width:145px;max-height:42px}.trust-orbit-track{animation-duration:38s}}
@media(prefers-reduced-motion:reduce){.trust-orbit{mask-image:none;-webkit-mask-image:none;width:100%;margin:0}.trust-orbit-track{animation:none;width:100%;will-change:auto}.trust-orbit .trust-logos{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));width:100%;gap:24px;padding:0}.trust-orbit .trust-logos li{width:auto;min-width:0}.trust-orbit .trust-logos-copy{display:none}}
@media print{.trust-orbit{mask-image:none;-webkit-mask-image:none;width:100%;margin:0}.trust-orbit-track{animation:none;transform:none;width:100%}.trust-orbit .trust-logos{display:flex;flex-wrap:wrap;width:100%;gap:20px;padding:0}.trust-orbit .trust-logos-copy{display:none}}

/* Familiar hamburger button and direct access to the service pages. */
.menu-button{width:46px;height:46px;padding:12px;flex-shrink:0}
.menu-button .hamburger{display:flex;position:relative;flex-direction:column;justify-content:space-between;width:22px;height:16px;margin:auto}
.hamburger i{display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s ease,opacity .2s ease}
.menu-button[aria-expanded="true"] .hamburger i:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-button[aria-expanded="true"] .hamburger i:nth-child(2){opacity:0}
.menu-button[aria-expanded="true"] .hamburger i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-nav{max-height:calc(100dvh - 90px - env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain;z-index:60;padding-bottom:110px}
.mobile-nav .menu-label{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);padding:22px 0 8px}
.mobile-nav a{min-height:44px;display:flex;align-items:center}
@media(prefers-reduced-motion:reduce){.hamburger i{transition:none}}

/* A connected, numbered agenda explains both action and outcome. */
.agenda-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,7vw,110px);align-items:start}
.agenda-intro h2{margin-bottom:28px}.agenda-intro p{font-size:18px;line-height:1.65;color:#50675b;margin-bottom:22px}
.process-agenda{list-style:none;margin:0;padding:0;counter-reset:agenda}
.process-agenda li{display:grid;grid-template-columns:58px minmax(0,1fr);gap:26px;position:relative;padding:0 0 44px}
.process-agenda li:not(:last-child):before{content:"";position:absolute;top:58px;bottom:0;left:28px;width:2px;background:#d3af3c70}
.process-agenda li:last-child{padding-bottom:0}
.agenda-number{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;background:#d3af3c;color:#102e26;font-weight:600;font-size:22px;position:relative;z-index:1}
.process-agenda h3{font-size:25px;line-height:1.2;padding-top:11px;margin-bottom:16px}
.process-agenda p{font-size:16px;line-height:1.65;color:#50675b}
.process-agenda .agenda-result{margin-top:15px;font-size:14px;color:#244d3e}.agenda-result strong{font-weight:600}
@media(max-width:850px){.agenda-layout{grid-template-columns:1fr;gap:38px}.agenda-intro{max-width:650px}}
@media(max-width:700px){.agenda-intro h2{font-size:40px}.agenda-intro p{font-size:16px}.process-agenda li{grid-template-columns:42px minmax(0,1fr);gap:18px;padding-bottom:34px}.agenda-number{width:42px;height:42px;font-size:18px}.process-agenda li:not(:last-child):before{left:20px;top:42px}.process-agenda h3{font-size:22px;padding-top:7px;margin-bottom:12px}.process-agenda p{font-size:15px}.process-agenda .agenda-result{font-size:14px}}

.calculator-section{background:var(--forest);color:#faf8f3}.calculator-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.calculator-section h2{font-size:clamp(36px,4.4vw,62px);margin-bottom:24px}.calculator-motto{color:#d3af3c;font-size:28px;line-height:1.25;margin-bottom:24px}.calculator-layout>div>p:last-child{color:#d3e1d8;font-size:17px}.calculator-links{list-style:none;padding:0;margin:0;display:grid;gap:12px}.calculator-links a{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px;background:#ffffff0d;border:1px solid #ffffff18;border-radius:14px}.calculator-links strong{display:block;font-size:21px;font-weight:550;line-height:1.2}.calculator-links small{display:block;color:#d0dfd5;font-size:14px;line-height:1.45;margin-top:9px}.calculator-links a>span:last-child{color:#e0be4a;font-size:25px}.calculator-links a:hover{background:#ffffff16}@media(max-width:800px){.calculator-layout{grid-template-columns:1fr;gap:35px}}@media(max-width:700px){.calculator-links a{padding:21px 19px}.calculator-links strong{font-size:19px}.calculator-motto{font-size:25px}}

.article-head{background:#e9eddf}.article-head h1{max-width:1150px;font-size:clamp(38px,5vw,72px);margin:40px 0 28px}.article-head .lede{max-width:850px;margin-bottom:25px}.advice-article>.wrap{max-width:960px}.advice-article h2{font-size:clamp(28px,3vw,40px);margin:48px 0 22px}.advice-article h2:first-child{margin-top:0}.advice-article p,.advice-article li{font-size:18px;line-height:1.75}.advice-article p{margin-bottom:22px}.advice-article ul{padding-left:24px;margin:20px 0 28px}.advice-article li{margin-bottom:12px}.advice-article a{text-decoration:underline;text-underline-offset:3px}.advice-article a:hover{color:#607c42}@media(max-width:700px){.advice-article p,.advice-article li{font-size:16px}}

/* Booking stays in the contact dock; keep the menu aligned without a header CTA. */
.header>.menu-button{margin-left:auto}

/* Storage is the primary service; the original animated tile remains intact. */
.storage-focus{background:#f5f4e9}.storage-focus-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:end}.storage-focus-heading>p{max-width:510px}.storage-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:56px}.storage-paths article{border-top:1px solid #b6c1ad;padding-top:24px}.storage-path-number{display:block;color:#657f6d;font-size:14px;margin-bottom:24px}.storage-paths h3{font-size:27px;line-height:1.15;margin-bottom:20px}.storage-paths p{font-size:16px;line-height:1.65;margin-bottom:24px}.storage-paths a{font-size:14px}.storage-focus-result{margin-top:56px;padding-top:32px;border-top:1px solid #b6c1ad;max-width:880px}.storage-focus-result h3{font-size:28px;margin-bottom:18px}.storage-focus-result p{font-size:17px;line-height:1.65;margin-bottom:16px}@media(max-width:800px){.storage-focus-heading{grid-template-columns:1fr;gap:24px}.storage-paths{grid-template-columns:1fr;gap:32px}.storage-path-number{margin-bottom:14px}.storage-paths h3{font-size:26px}.storage-focus-result h3{font-size:26px}}

/* Vorschau-Kachel Förderrechner (Wärmepumpe, Klimaanlagen) */
.fr-teaser{padding-block:0 clamp(72px,8vw,128px)}.fr-teaser__card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px 48px;align-items:center;background:var(--forest);color:var(--cream);border-radius:18px;padding:clamp(28px,4vw,48px);box-shadow:0 30px 60px -34px #071b14;transition:transform .2s var(--ease)}.fr-teaser__card:hover{transform:translateY(-3px)}.fr-teaser__kicker{grid-column:1/-1;font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:550;color:var(--gold)}.fr-teaser__big{font-size:clamp(64px,8vw,120px);line-height:.9;letter-spacing:-.06em}.fr-teaser__big small{font-size:.45em;color:var(--gold);margin-left:4px}.fr-teaser__body{display:grid;gap:12px;justify-items:start}.fr-teaser__body strong{font-size:clamp(24px,2.4vw,34px);font-weight:450;letter-spacing:-.03em;line-height:1.15}.fr-teaser__body>span:not(.underlined){color:#d2dccf;max-width:60ch}.fr-teaser__count{font-size:14px;color:#efc9a8!important}@media(max-width:700px){.fr-teaser__card{grid-template-columns:1fr}}
