@font-face{font-family:Poppins;src:url('/assets/fonts/poppins-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Poppins;src:url('/assets/fonts/poppins-500.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Poppins;src:url('/assets/fonts/poppins-600.ttf') format('truetype');font-style:normal;font-weight:600 900;font-display:swap}
body{font-family:Poppins,Arial,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:4px}h1{font-weight:600;letter-spacing:-2px}h2,h3{font-weight:600}p{text-wrap:pretty}.hero .lead{max-width:650px}.hero-photo img{height:460px}.hero .wrap{grid-template-columns:1.25fr 1fr}.hero h1{font-size:clamp(40px,5.1vw,73px)}header nav{gap:14px;font-size:11px}.brand{font-family:Arial,sans-serif}.btn{border-radius:4px}.service{border-radius:0;min-height:270px}.service .num{margin-bottom:36px}.service h3{font-size:23px}.quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}.quick-links a{display:block;border-radius:8px;background:#F5F0EC;padding:20px}.quick-links strong{display:block;font-size:15px;margin-bottom:7px}.quick-links span{font-size:12px;color:#625B54}.quick-links a:hover{background:#E8E2D9}.wellness-inline{font-size:13px;margin:25px 0 0;color:#625B54}.wellness-inline a,.text-link,.faq-list a,.legal-copy a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}.project-overview{background:#F5F0EC}.project-feature{display:block}.project-feature .project-copy{padding:24px 0 0;max-width:850px}.project-copy .eyebrow{display:block;margin:0 0 10px}.project-copy h3{font-size:25px}.project-copy p{font-size:15px;max-width:740px}.heating-preview{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;border-top:1px solid #D7D0C7;margin-top:42px;padding-top:40px}.heating-preview .project-copy{padding:0}.heating-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:14px}.heating-thumbs figure{margin:0}.heating-thumbs img{display:block;width:100%;height:250px;object-fit:cover;border-radius:6px}.heating-thumbs figcaption{font-size:12px;margin-top:9px}.team-intro img{border-radius:8px;height:auto;max-height:440px;object-fit:cover}.team-intro p{color:#F5F0EC;font-size:16px}.team-role{font-size:13px!important;color:#625B54}.funding-preview .subcard{border:0;background:#F5F0EC;border-radius:8px}.funding-preview .subcard span{font-size:13px;text-decoration:underline}.helpful-faq{background:#F5F0EC;padding:65px 0}.helpful-faq h2{max-width:850px}.faq-list{max-width:940px}.faq-list details{border-bottom:1px solid #B7AEA3}.faq-list summary{padding:22px 35px 22px 0;font-weight:500;position:relative;font-size:17px}.faq-list summary:after{position:absolute;right:8px;top:20px;font-size:22px;color:var(--blue);content:'+'}.faq-list details[open] summary:after{content:'−'}.faq-list details>div{max-width:850px;padding:0 30px 4px 0;font-size:15px;color:#625B54}.faq-list p{margin-bottom:22px}.preparation{margin-top:0}.preparation .note{margin-top:22px;margin-bottom:0}.compact-section{padding:50px 0}.compact-section .planning-note{max-width:850px}.source-note{font-size:12px;max-width:850px;margin-top:22px}.source-note a{text-decoration:underline}.inquiry-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:65px;align-items:start}.inquiry-layout h2{font-size:34px}.inquiry-layout>div>p{font-size:15px;max-width:700px}.inquiry-layout label{display:block;font-size:13px;font-weight:500;margin:20px 0 8px}.inquiry-layout label span{font-weight:400;color:#625B54}.inquiry-layout input,.inquiry-layout select,.inquiry-layout textarea{display:block;background:white;border:1px solid #B7AEA3;border-radius:5px;width:100%;padding:12px;color:var(--ink);font-size:16px}.inquiry-layout textarea{resize:vertical;line-height:1.6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.inquiry-layout .note{font-size:12px;margin-top:12px}.inquiry-layout .btn{margin-top:10px}.contact-aside{background:#F5F0EC;padding:30px;border-radius:8px}.contact-aside .phone{font-size:clamp(19px,2vw,26px);font-weight:600;display:block;margin:22px 0 16px}.contact-aside p,.contact-aside address{font-size:14px;margin-top:16px;font-style:normal}.contact-aside hr{border:0;border-top:1px solid #B7AEA3;margin:30px 0}.contact-aside .text-link{font-size:14px}.urgent-note{border-left:3px solid #702D3E;padding-left:16px;margin-top:28px}.urgent-note p{font-size:13px}.urgent-note .text-link{font-size:12px}#inquiry-result{border-top:1px solid #D7D0C7;margin-top:30px;padding-top:25px}#inquiry-status{font-size:14px}.legal-copy{max-width:1050px}.legal-copy h1{font-size:clamp(35px,5vw,60px)}.legal-copy h2{font-size:23px;line-height:1.4;margin:36px 0 15px;letter-spacing:-.4px}.legal-copy p,.legal-copy li{font-size:15px;line-height:1.85}.legal-copy li{margin-bottom:12px}[hidden]{display:none!important}.menu-toggle{border:1px solid #D7D0C7;background:white;padding:9px 13px;border-radius:4px;color:var(--ink);font-size:14px}.menu-toggle span{margin-left:10px}header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}.dropdown summary{font-size:inherit}header .dropdown{top:calc(100% + 12px)}.footer-grid{grid-template-columns:1.2fr .85fr 1.2fr 1fr}.footer-grid a{text-decoration:none}.footer-grid a:hover{text-decoration:underline}.footer-grid p{color:#F5F0EC}.footer-grid>div>a{line-height:1.6}.contact .note{color:#625B54}.menu-toggle[aria-expanded=true]{background:var(--blue);color:white}
@media(min-width:1450px){header nav{font-size:12px;gap:19px}}@media(max-width:1120px){header nav{font-size:12px;gap:15px}.hero .wrap{grid-template-columns:1fr 1fr;gap:30px}.hero-photo img{height:420px}.hero h1{font-size:50px}.inquiry-layout{gap:35px}}@media(max-width:900px){.hero .wrap,.inquiry-layout{grid-template-columns:1fr}.hero h1{font-size:clamp(40px,7vw,65px)}.hero-photo img{height:400px}.hero-photo{max-width:650px}.heating-preview{grid-template-columns:1fr;gap:25px}.quick-links{grid-template-columns:1fr}.quick-links a{padding:18px 22px}.quick-links strong,.quick-links span{display:inline}.quick-links strong{margin-right:14px}.contact-aside{margin-top:15px}.team-intro .split{gap:32px}}
@media(max-width:760px){header{justify-content:space-between;gap:20px}header .brand{font-size:19px;max-width:calc(100% - 100px)}header .brand small{font-size:7px;letter-spacing:1px}.js-enabled .menu-toggle{display:block}.js-enabled header nav:not(.is-open){display:none}header nav{display:flex;align-items:stretch;width:100%;flex-direction:column;gap:0;font-size:15px;border-top:1px solid #E8E2D9;padding-top:8px}header nav>details,header nav>a{border-bottom:1px solid #E8E2D9}header nav>details>summary,header nav>a{display:block;padding:13px 4px}header nav>.btn{display:block;margin-top:12px;text-align:center;padding:12px}header nav details{position:static}header .dropdown{position:static;min-width:0;max-height:none;width:100%;padding:4px 16px 15px;box-shadow:none;border:0;background:#F5F0EC;border-radius:4px}header .dropdown a{font-size:14px;padding:10px 0}header nav details>summary:after{float:right}.footer-grid{grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr;gap:0}.project-overview{padding-top:55px}.team-intro h2{font-size:34px}section{padding:65px 0}.hero{padding-top:40px}.subhero{padding:42px 0}.contact .split{gap:25px}.contact h2{font-size:33px}}
@media(max-width:550px){.hero-photo img{height:350px}.hero h1{font-size:43px}.top>a:last-child{display:none}.hero .lead{font-size:16px}.quick-links strong,.quick-links span{display:block}.quick-links strong{margin:0 0 5px}.heating-thumbs img{height:195px}.faq-list summary{font-size:15px}.faq-list details>div{font-size:14px}.inquiry-layout h2{font-size:28px}.contact-aside{padding:24px}.legal-copy p,.legal-copy li{font-size:14px}.legal-copy h1{overflow-wrap:anywhere}.project-copy h3{font-size:23px}.funding-grid .subcard{padding:24px}.footer-grid{font-size:12px}.hero .actions .btn{padding:12px 16px;font-size:13px}.subhero h1{letter-spacing:-1.4px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
header .brand{display:block;width:260px}header .brand img{display:block;width:100%;height:auto}header .brand small{font-size:7.5px;letter-spacing:1.1px;margin-top:7px}header .brand[aria-current=page]{text-decoration:none}@media(max-width:760px){header .brand{width:225px}header .brand small{font-size:6.7px;letter-spacing:1px}}@media(max-width:390px){header .brand{width:190px}header .brand small{font-size:6px;letter-spacing:.6px}.menu-toggle{padding:8px 10px}}
