.page-loader{z-index:1000;color:#eaf3fb;opacity:0;visibility:hidden;pointer-events:none;background:#073a7b;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:.45rem;width:170px;padding:.8rem 1rem;display:flex;position:fixed;bottom:1rem;right:1rem;box-shadow:0 12px 35px #061d3560}.page-loader img{filter:brightness(0)invert();width:86px;height:auto;animation:1.4s ease-in-out infinite alternate renq-breathe}.page-loader span{letter-spacing:.22em;text-transform:uppercase;font-size:.7rem;font-weight:800}.page-loader i{background:#ffffff42;width:100px;height:2px;display:block;position:relative;overflow:hidden}.page-loader i:after{content:"";background:#5bc3f3;animation:1.5s ease-in-out infinite renq-progress;position:absolute;inset:0;transform:translate(-100%)}.loading-pending .page-loader{animation:.2s 1.5s both renq-loader-enter}@keyframes renq-loader-enter{to{opacity:1;visibility:visible}}@keyframes renq-breathe{to{opacity:.55;transform:scale(.97)}}@keyframes renq-progress{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.page-loader img,.page-loader i:after{animation:none}.page-loader i:after{transform:none}}.header-shell{z-index:100;background:#fff;position:sticky;top:0;box-shadow:0 8px 26px #102a4414}.site-progress{z-index:250;transform-origin:0;pointer-events:none;background:#58b9eb;height:3px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.footer-credit{white-space:nowrap}.footer-credit:hover,.footer-credit:focus-visible{color:#fff;text-underline-offset:3px;text-decoration:underline}@media (width<=720px){.footer-bottom div{flex-wrap:wrap}}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";transform-origin:0;background:#0b6bb5;height:2px;transition:transform .25s;position:absolute;bottom:-.52rem;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after,.desktop-nav a.active:after{transform:scaleX(1)}html{scroll-padding-top:100px}.page-hero{isolation:isolate;position:relative;overflow:hidden}.page-hero:before{content:"";aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#b6e3fa66,#0000 68%);border:1px solid #126cb526;border-radius:50%;width:min(46vw,610px);position:absolute;top:-52%;right:-7%;box-shadow:0 0 0 65px #5fa9d60b,0 0 0 145px #5fa9d609}.page-hero .container{z-index:1;position:relative}.contact-methods a{transition:transform .3s,border-color .3s,box-shadow .3s}.contact-methods a:hover{border-color:#0b6bb5;transform:translateY(-4px);box-shadow:0 18px 36px #0e416313}.hero-copy>*,.page-hero:not(.service-hero) .container>*{animation:.7s both enter-soft}.hero-copy>*{animation:none}.service-hero-grid>*{animation:.7s both enter-soft}.service-hero-grid>:nth-child(2){animation-delay:.12s}.hero-copy>:nth-child(2),.page-hero:not(.service-hero) .container>:nth-child(2){animation-delay:80ms}.hero-copy>:nth-child(3),.page-hero:not(.service-hero) .container>:nth-child(3){animation-delay:.16s}.hero-copy>:nth-child(4),.page-hero:not(.service-hero) .container>:nth-child(4){animation-delay:.24s}.motion-ready .reveal{transition:opacity .55s,transform .55s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0s)}.motion-ready .reveal:not(.is-visible){opacity:0;transform:translateY(22px)}.motion-ready .reveal.is-visible{opacity:1;transform:translateY(0)}.card,.project-feature,.photo-frame{transition:box-shadow .3s,transform .3s}.card:hover{transform:translateY(-3px);box-shadow:0 16px 35px #0e416315}a:focus-visible,button:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #5cb4ed}.quick-actions{display:none}@media (width<=859px){body{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}.quick-actions{z-index:90;padding:.55rem .7rem calc(.55rem + env(safe-area-inset-bottom,0px));background:#102a44;gap:.55rem;transition:transform .35s cubic-bezier(.2,.7,.2,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(120%);box-shadow:0 -10px 30px #102a4426}.quick-actions.is-visible{transform:none}.quick-actions a{text-align:center;color:#fff;background:#245073;border-radius:6px;flex:1;place-items:center;min-height:48px;padding:.5rem;font-size:.85rem;font-weight:700;display:grid}.quick-actions a:first-child{background:#0754a1}}@keyframes enter-soft{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=720px){.card:hover{transform:none}}@media (prefers-reduced-motion:reduce){.quick-actions{transition:none}.hero-copy>*,.page-hero:not(.service-hero) .container>*,.service-hero-grid>*{animation:none}.motion-ready .reveal{transition:none}.motion-ready .reveal:not(.is-visible){opacity:1;transform:none}.card,.project-feature,.photo-frame{transition:none}.card:hover{box-shadow:none;transform:none}.contact-methods a{transition:none}.contact-methods a:hover{box-shadow:none;transform:none}}:root{--header-offset:115px;--sticky-header:84px}[id]{scroll-margin-top:calc(var(--header-offset) + 1rem)}body .desktop-nav .nav-list{align-items:center;gap:inherit;margin:0;padding:0;list-style:none;display:flex}body .nav-item{position:relative}body .nav-item>a{align-items:center;gap:.3rem;padding-block:1.9rem;display:inline-flex}body .nav-caret{width:12px;height:12px;transition:transform .2s}body .nav-menu{z-index:120;opacity:0;visibility:hidden;background:#fff;border:1px solid #d6e4ed;border-top:3px solid #0754a1;border-radius:0 0 6px 6px;min-width:240px;margin:0;padding:.5rem;list-style:none;transition:opacity .18s,transform .18s,visibility .18s;position:absolute;top:100%;left:-1rem;transform:translateY(6px);box-shadow:0 18px 40px #0e416322}body .nav-item:nth-last-child(-n+2) .nav-menu{left:auto;right:-1rem}body .nav-item:hover .nav-menu,body .nav-item:focus-within .nav-menu{opacity:1;visibility:visible;transform:none}body .nav-item:hover .nav-caret,body .nav-item:focus-within .nav-caret{transform:rotate(180deg)}body .desktop-nav .nav-menu a{color:#29445e;white-space:nowrap;border-radius:4px;padding:.62rem .8rem;font-size:.88rem;font-weight:600;display:block}body .desktop-nav .nav-menu a:hover,body .desktop-nav .nav-menu a:focus-visible{color:#0754a1;background:#eef5fa}body .mobile-nav:not([hidden]){max-height:calc(100svh - 72px);overflow-y:auto}body .mobile-group{border-bottom:1px solid #edf2f6}body .mobile-group summary{cursor:pointer;justify-content:space-between;align-items:center;padding:.8rem .4rem;font-weight:700;list-style:none;display:flex}body .mobile-group summary::-webkit-details-marker{display:none}body .mobile-group summary:after{content:"+";color:#0754a1;font-size:1.2rem}body .mobile-group[open] summary:after{content:"−"}body .mobile-group a{color:#29445e;border-bottom:0;padding:.55rem .4rem .55rem 1.2rem;font-size:.95rem;font-weight:600;display:block}body .mobile-group a:last-child{padding-bottom:1rem}body .footer-contact{margin:0 0 1.1rem}body .footer-main .footer-contact-title{color:#fff;margin:0 0 .15rem;font-size:.85rem;font-weight:700;display:block}body .footer-main .footer-contact a{margin:.15rem 0}body .page-hero{padding:2rem 0 2.75rem}body .page-hero h1{margin:.7rem 0}body .home-solar-hero.home-solar-hero,body .service-hero.service-hero{padding:2rem 0 2.5rem}body .calculator-hero.calculator-hero{padding:2rem 0 1.5rem}body .quote-page{padding-top:2rem}body .quote-heading{margin-bottom:1.5rem}body .future-hero-layout{min-height:0;padding-block:1.75rem}body .future-hero-copy h1{max-width:14ch;margin:.8rem 0 1.1rem;font-size:clamp(2.8rem,min(5vw,8vh),5.4rem)}body .future-hero-actions{margin-top:1.3rem}@media (width>=1051px){body .page-title{font-size:clamp(2.5rem,min(4.4vw,7.2vh),4.4rem)}body .home-solar-hero.home-solar-hero,body .service-hero.service-hero{padding-block:2rem}body .home-solar-hero-photo.home-solar-hero-photo,body .business-photo.business-photo,body .service-hero-image.service-hero-image{aspect-ratio:auto;height:min(460px, calc(100svh - var(--header-offset) - 5rem))}body .future-hero-visual{height:min(560px, calc(100svh - var(--header-offset) - 5rem))}body .hero-inner{min-height:0;height:max(380px, calc(100svh - var(--header-offset) - 86px))}body .hero-carousel{height:100%;min-height:0}body .hero-copy{padding-block:clamp(1rem,3vh,2.5rem)}body .hero-copy h1.display{max-width:14ch;margin:.7rem 0 1rem;font-size:clamp(2.5rem,min(5vw,7vh),5.6rem)}body .hero-copy .lead{max-width:38rem;font-size:clamp(1rem,2.1vh,1.2rem);line-height:1.55}body .hero-copy .hero-actions{margin-top:1.2rem}body .hero-subsidy{margin-top:1rem}body .credibility-strip{padding-block:.85rem}body .credibility-list strong{font-size:clamp(1.3rem,2.2vw,1.8rem)}body .story-section{padding-block:clamp(1.25rem,3.5vh,2.75rem)}body .story-heading{align-items:center;margin-bottom:clamp(.9rem,2.2vh,1.6rem)}body .story-heading .section-title{max-width:none;margin:.4rem 0 0;font-size:clamp(2rem,min(3.4vw,5.6vh),3.4rem)}body .story-heading p{margin:0}body .story-grid{min-height:0;height:max(360px, calc(100svh - var(--sticky-header) - 2 * clamp(1.25rem, 3.5vh, 2.75rem) - clamp(.9rem, 2.2vh, 1.6rem) - clamp(4.5rem, 10vh, 6.5rem)))}body .story-visual,body .story-copy{min-height:0}body .story-copy h3{margin:.6rem 0 .7rem;font-size:clamp(1.8rem,min(3vw,5.2vh),3rem)}}body .contact-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0;display:grid}body .contact-group{background:#fff;border:1px solid #cbdce8;border-top:3px solid #0754a1;align-content:start;gap:.9rem;padding:1.6rem;display:grid}body .contact-group h3{color:#0b3867;margin:0;font-size:1.15rem}body .contact-group a{color:#0754a1;overflow-wrap:anywhere;font-weight:800;display:block}body .contact-group small{color:#607286;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.2rem;font-size:.74rem;display:block}@media (width<=860px){body .contact-groups{grid-template-columns:1fr}}
