.hero{background:var(--color-ink);color:var(--color-on-dark);overflow:hidden}.hero-grid{grid-template-columns:1.2fr 1fr;min-height:650px;display:grid;position:relative}.hero-copy{z-index:2;padding:var(--space-11) 0 var(--space-10);position:relative}.hero-copy h1{margin:var(--space-8) -100px 28px 0}.blue-line{background:var(--color-accent);width:26px;height:2px}.outlined{color:var(--color-accent-soft)}.hero-copy>p{max-width:390px;font-size:var(--text-md);color:var(--color-on-dark-soft)}.actions{margin-top:var(--space-8);align-items:center;gap:28px;display:flex}.hero-proof{margin-top:var(--space-9);font-size:var(--text-sm);color:var(--color-on-dark-soft);align-items:center;gap:9px;display:flex}.check{font-size:var(--text-lg);color:var(--color-accent)}.proof-divider{width:1px;height:14px;margin:0 var(--space-2);background:var(--color-line-dark)}.hero-image{min-height:590px;margin:30px -7vw 0 20px;position:relative;overflow:hidden}.hero-image>img{object-fit:cover;filter:brightness(.72);width:100%;height:100%;position:absolute}.image-shade{background:linear-gradient(90deg, var(--color-ink) 0%, transparent 23%), linear-gradient(0deg, #11161e87, transparent 60%);position:absolute;inset:0}.image-label{gap:var(--space-3);display:grid;position:absolute;bottom:42px;left:55px}.image-label span{font-size:var(--text-2xs);letter-spacing:var(--tracking-caps)}.image-label strong{font-size:var(--text-xl);font-weight:500}.energy-badge{backdrop-filter:blur(12px);border:1px solid var(--line-on-dark);background:#101722a8;align-items:center;gap:10px;padding:14px;display:flex;position:absolute;top:30px;right:12%}.energy-badge>span{font-size:var(--text-3xl);color:var(--color-accent)}.energy-badge>div{font-size:var(--text-2xs);letter-spacing:1px;line-height:1.8}.energy-line{pointer-events:none;opacity:.6;width:100%;height:100%;position:absolute;inset:0}.energy-line path{stroke:var(--color-accent);stroke-width:1px;stroke-dasharray:130 1000;animation:10s linear infinite current}@keyframes current{0%{stroke-dashoffset:1100px}to{stroke-dashoffset:-1100px}}.hero-bottom{height:73px;font-size:var(--text-2xs);letter-spacing:1.3px;color:var(--color-on-dark-muted);border-top:1px solid var(--line-on-dark);justify-content:space-between;align-items:center;display:flex}.hero-bottom a{font-size:var(--text-xs);letter-spacing:0}.hero-bottom a span{margin-left:22px}.section{padding-top:var(--space-12);padding-bottom:var(--space-12)}.section-heading{margin-bottom:var(--space-8);justify-content:space-between;align-items:end;gap:30px;display:flex}.section-heading .eyebrow,.about-copy .eyebrow{color:var(--color-blue-muted)}.section-heading p{margin:0 0 var(--space-3);font-size:var(--text-md)}.service-grid{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(4,1fr);display:grid}.service-card{padding:28px 24px 28px 0;transition:background .25s;position:relative}.service-card:not(:first-child){padding-left:var(--space-6);border-left:1px solid var(--color-border)}.service-card:hover{background:var(--color-surface-tint)}.card-top{margin-bottom:var(--space-8);font-size:var(--text-xs);color:var(--color-text-faint);justify-content:space-between;align-items:center;display:flex}.service-icon{font-size:var(--text-3xl);color:var(--color-blue);line-height:1}.service-card h3{margin:0 0 var(--space-3);font-size:var(--text-lg);letter-spacing:var(--tracking-tight);font-weight:500}.service-card p{max-width:225px;font-size:var(--text-md);margin:0;line-height:1.7}.card-arrow{margin-top:var(--space-6);font-size:var(--text-xl);color:var(--color-blue);display:block}.other-services{justify-content:space-between;gap:var(--space-5);margin-top:var(--space-6);font-size:var(--text-base);flex-wrap:wrap;display:flex}.other-services>span{font-size:var(--text-2xs);letter-spacing:1.3px;color:var(--color-text-faint)}.other-services a:hover{color:var(--color-blue)}.about-section{padding:var(--space-11) 0;background:var(--color-surface-alt)}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:90px;display:grid}.about-visual{height:450px;position:relative}.about-visual img{object-fit:cover;width:100%;height:100%}.local-tag{padding:var(--space-6) var(--space-7);background:var(--color-blue);color:var(--color-on-dark);font-size:var(--text-2xs);letter-spacing:1.2px;line-height:2;position:absolute;bottom:0;left:0}.local-tag strong{font-size:var(--text-lg);letter-spacing:-.3px;font-weight:500}.about-copy p{font-size:var(--text-md);margin:22px 0}.cta{padding:var(--space-10) 0;background:var(--color-blue);color:var(--color-on-dark)}.cta-inner{justify-content:space-between;align-items:center;display:flex}.cta .eyebrow{font-size:var(--text-2xs);color:var(--color-on-blue-soft)}.cta h2{margin-top:var(--space-5)}.cta-phone{font-size:var(--text-base);text-align:center;margin-top:21px;display:block}@media (width>=1600px){.hero-image{margin-right:0}}@media (width<=1000px){.hero-copy{padding-top:60px}.hero-copy h1{letter-spacing:-3px}.hero-image{min-height:550px}.actions{flex-wrap:wrap;gap:18px}.hero-proof{flex-wrap:wrap}.about-grid{gap:var(--space-8)}.service-card{padding-right:14px}.service-card:not(:first-child){padding-left:14px}.service-card h3{font-size:17px}}@media (width<=700px){.hero-grid{min-height:0;display:block}.hero-copy{padding:43px 0 25px}.hero-copy h1{letter-spacing:-2.8px;margin:27px 0 22px;font-size:49px}.hero-copy>p{max-width:340px}.eyebrow{font-size:var(--text-2xs)}.actions{gap:18px;margin-top:25px}.button{font-size:var(--text-sm);padding:17px 20px}.hero-proof{gap:6px;margin-top:25px;line-height:1.7}.hero-proof .proof-divider{display:none}.hero-proof>span:last-child{flex-basis:100%}.hero-image{height:330px;min-height:0;margin:5px 0 0}.image-shade{background:linear-gradient(#0000,#11161e99)}.image-label{bottom:23px;left:22px}.energy-badge{top:14px;right:14px}.hero-bottom{height:64px}.hero-bottom>span{max-width:170px;font-size:8px;line-height:1.7}.hero-bottom a{font-size:9px}.hero-bottom a span{margin-left:5px}.section{padding-top:58px;padding-bottom:55px}.section-heading{margin-bottom:28px;display:block}.section-heading>div+div{margin-top:22px}.section-heading>a{margin-top:18px}.service-grid{grid-template-columns:1fr 1fr}.service-card{padding:22px 15px 22px 0}.service-card:not(:first-child){padding-left:15px}.service-card:nth-child(3){border-left:0;padding-left:0}.service-card:nth-child(n+3){border-top:1px solid var(--color-border)}.card-top{margin-bottom:30px}.other-services{justify-content:start;gap:15px}.other-services>span{width:100%}.about-section{padding:50px 0}.about-grid{grid-template-columns:1fr;gap:38px}.about-visual{height:330px}.cta{padding:50px 0}.cta-inner{display:block}.cta-inner>div+div{margin-top:30px;display:inline-block}}.hero-grid:has(.hero-solar){grid-template-columns:1fr 1.3fr;align-items:center;gap:40px}.hero-grid:has(.hero-solar) .hero-copy h1{margin-right:0;font-size:clamp(48px,5.6vw,82px)}.hero-solar{min-width:0;padding:40px 0}.hero-solar .solar-cycle{--solar-duration:14s}.hero-solar .solar-scene-shade{background:linear-gradient(90deg, var(--color-ink) 0%, #11161ef7 4%, #11161ed6 11%, #11161e99 20%, #11161e52 30%, #11161e1a 41%, #11161e00 53%), linear-gradient(0deg, #11161eb3 0%, #11161e61 10%, #11161e1f 22%, #11161e00 36%)}.hero-solar .solar-status{flex-wrap:wrap}.hero-solar .solar-pause{margin-left:auto}@media (width<=1000px){.hero-grid:has(.hero-solar){gap:24px}.hero-solar .solar-status-text{display:none}}@media (width<=700px){.hero-solar{padding:10px 0 28px}.hero-solar .solar-scene-shade{background:linear-gradient(180deg, var(--color-ink) 0%, #11161ee0 4%, #11161e8c 10%, #11161e33 18%, #11161e00 29%), linear-gradient(0deg, #11161eb3 0%, #11161e59 10%, #11161e1a 22%, #11161e00 34%)}.hero-grid:has(.hero-solar) .hero-copy h1{font-size:49px}}.home-showcase{background:var(--color-ink-soft);color:var(--color-on-dark);padding:78px 0 68px;overflow:hidden}.showcase-heading{margin-bottom:var(--space-9)}.showcase-heading .eyebrow{font-size:var(--text-xs);letter-spacing:1.8px;color:var(--color-accent-soft)}.showcase-heading h2{font-size:var(--text-5xl);letter-spacing:-1.7px;margin:23px 0 0;line-height:1.12}.showcase-item{gap:var(--space-10);padding:var(--space-9) 0;border-top:1px solid var(--color-line-dark);grid-template-columns:1.15fr 1fr;align-items:center;display:grid}.showcase-item:first-of-type{border-top:0;padding-top:0}.showcase-item-reverse .showcase-photo{order:2}.showcase-photo{min-width:0}.showcase-photo img{aspect-ratio:3/2;object-fit:cover;background:var(--color-ink-raised);width:100%;height:auto;display:block}.showcase-copy .eyebrow{font-size:var(--text-xs);letter-spacing:1.8px;color:var(--color-accent-soft)}.showcase-copy h3{margin:var(--space-5) 0 var(--space-4);font-size:var(--text-3xl);letter-spacing:-.8px;font-weight:400;line-height:1.15}.showcase-copy p{max-width:440px;margin:0 0 var(--space-6);font-size:var(--text-md);color:var(--color-on-dark-soft);line-height:1.7}.showcase-copy a{font-size:var(--text-base);color:var(--color-accent-soft)}.showcase-copy a:hover{color:var(--color-on-dark)}.showcase-comparison{display:block}.showcase-comparison .showcase-copy{margin-bottom:var(--space-6)}.showcase-comparison h3{margin-bottom:0}.comparison-pair{gap:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.comparison-photo{min-width:0;margin:0}.comparison-frame{aspect-ratio:3/2;background:var(--color-ink-raised);position:relative;overflow:hidden}.comparison-frame img{object-fit:fill;width:200%;max-width:none;height:100%;display:block;position:absolute;inset:0 auto 0 0}.after-photo .comparison-frame img{left:-100%}.photo-state{color:var(--color-on-dark-soft);font-size:var(--text-2xs);letter-spacing:1.5px;border:1px solid var(--line-on-dark);background:#101b2bcc;padding:9px 12px;position:absolute;top:18px;left:18px}.after-photo .photo-state{color:var(--color-on-dark);background:#264c9be6}.comparison-footer{justify-content:space-between;align-items:center;gap:var(--space-5);margin-top:var(--space-5);border-top:1px solid var(--color-line-dark);padding-top:18px;display:flex}.comparison-footer>span{font-size:var(--text-2xs);letter-spacing:1.5px;color:var(--color-on-dark-muted)}.comparison-footer a{font-size:var(--text-base);color:var(--color-accent-soft);line-height:1.6}.comparison-footer a:hover{color:var(--color-on-dark)}@media (width<=900px){.showcase-heading h2{font-size:42px}.showcase-item{gap:36px}.showcase-copy h3{font-size:28px}.comparison-pair{gap:14px}}@media (width<=600px){.home-showcase{padding:var(--space-9) 0}.showcase-heading{margin-bottom:var(--space-7)}.showcase-heading .eyebrow{font-size:var(--text-2xs)}.showcase-heading h2{letter-spacing:-1.3px;font-size:37px}.showcase-item{gap:var(--space-5);padding:var(--space-7) 0;grid-template-columns:1fr}.showcase-item-reverse .showcase-photo{order:0}.showcase-copy h3{margin:var(--space-3) 0 var(--space-3);font-size:var(--text-2xl)}.showcase-copy p,.showcase-comparison .showcase-copy{margin-bottom:var(--space-4)}.comparison-pair{grid-template-columns:1fr;gap:23px}.comparison-footer{align-items:start}.comparison-footer>span{max-width:100px;font-size:8px;line-height:1.8}.comparison-footer a{max-width:180px;font-size:var(--text-sm);text-align:right}.photo-state{top:14px;left:14px}}solar-installation[data-astro-cid-yuhuoknh]{min-width:0;display:block}.installation-scene[data-astro-cid-yuhuoknh]{aspect-ratio:3/2;background:var(--color-ink-raised);position:relative;overflow:hidden}.installation-frame[data-astro-cid-yuhuoknh]{opacity:0;transition:opacity .6s;position:absolute;inset:0}.installation-frame[data-astro-cid-yuhuoknh].is-current{opacity:1}.installation-frame[data-astro-cid-yuhuoknh] img[data-astro-cid-yuhuoknh]{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.installation-controls[data-astro-cid-yuhuoknh]{color:var(--color-on-dark-muted);letter-spacing:1px;justify-content:space-between;align-items:center;gap:12px;margin:18px 0;font-size:12px;display:flex}.installation-pause[data-astro-cid-yuhuoknh]{border:0;border-bottom:1px solid var(--color-line-dark);color:var(--color-on-dark-soft);font:inherit;letter-spacing:0;cursor:pointer;background:0 0;padding:4px 0}.installation-pause[data-astro-cid-yuhuoknh][hidden]{display:none}.installation-stages[data-astro-cid-yuhuoknh]{grid-template-columns:repeat(4,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.installation-stages[data-astro-cid-yuhuoknh] li[data-astro-cid-yuhuoknh]{border-top:2px solid var(--color-line-dark);color:var(--color-on-dark-muted);padding-top:12px;font-size:14px;line-height:1.5;transition:color .5s,border-color .5s}.installation-stages[data-astro-cid-yuhuoknh] li[data-astro-cid-yuhuoknh].is-current{color:var(--color-on-dark);border-color:var(--color-accent-soft)}.installation-stages[data-astro-cid-yuhuoknh] li[data-astro-cid-yuhuoknh] span[data-astro-cid-yuhuoknh]{color:var(--color-accent-soft);margin-bottom:4px;font-size:12px;display:block}.installation-note[data-astro-cid-yuhuoknh]{color:var(--color-on-dark-muted);margin:16px 0 0;font-size:12px;line-height:1.5}@media (width<=600px){.installation-stages[data-astro-cid-yuhuoknh]{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){.installation-frame[data-astro-cid-yuhuoknh],.installation-stages[data-astro-cid-yuhuoknh] li[data-astro-cid-yuhuoknh]{transition:none}}.ev-charging{--ev-duration:18s;min-width:0;display:block}.ev-scene{aspect-ratio:3/2;position:relative;overflow:hidden}.ev-scene:after{content:"";pointer-events:none;background:linear-gradient(#0000 72%,#0c1727a6);position:absolute;inset:0}.ev-current{pointer-events:none;color:#c3e2ff;width:100%;height:100%;position:absolute;inset:0}.ev-cable{stroke:currentColor;stroke-width:4px;stroke-linecap:round;stroke-dasharray:2 31.333;opacity:.85}.ev-port{fill:currentColor}.ev-badge{top:var(--space-4);left:var(--space-4);border:1px solid var(--line-on-dark);color:var(--color-on-dark);letter-spacing:1.2px;background:#0f1c2fdb;padding:9px 12px;font-size:12px;display:grid;position:absolute}.ev-charging-label,.ev-ready-label{grid-area:1/1}.ev-ready-label{opacity:0}.ev-caption{z-index:1;bottom:var(--space-4);left:var(--space-4);gap:var(--space-3);font-size:var(--text-base);color:var(--color-on-dark);display:flex;position:absolute}.ev-caption>span{color:var(--color-accent-soft)}.ev-status{align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-line-dark);color:var(--color-on-dark-soft);font-size:12px;display:flex}.ev-storage{align-items:center;gap:var(--space-3);display:flex}.ev-meter{background:var(--color-line-dark);width:64px;height:6px;overflow:hidden}.ev-meter>span{background:var(--color-accent-soft);transform-origin:0;height:100%;display:block;transform:scaleX(.2)}.ev-phase{flex:1;display:grid}.ev-pause{padding:var(--space-1) 0;border:0;border-bottom:1px solid var(--color-line-dark);color:inherit;font:inherit;cursor:pointer;background:0 0;margin-left:auto}.ev-pause:hover{color:var(--color-on-dark)}.ev-pause[hidden]{display:none}.ev-note{margin:var(--space-3) 0 0;font-size:12px;line-height:var(--leading-snug);color:var(--color-on-dark-muted)}@media (prefers-reduced-motion:no-preference){.ev-cable{animation:3s linear infinite ev-current}.ev-current,.ev-charging-label{animation:ev-charging var(--ev-duration) linear infinite}.ev-ready-label{animation:ev-ready var(--ev-duration) linear infinite}.ev-meter>span{animation:ev-fill var(--ev-duration) linear infinite}.ev-charging :is(.ev-cable,.ev-current,.ev-charging-label,.ev-ready-label,.ev-meter>span){animation-play-state:paused}.ev-running :is(.ev-cable,.ev-current,.ev-charging-label,.ev-ready-label,.ev-meter>span){animation-play-state:running}}@keyframes ev-current{to{stroke-dashoffset:-33.333px}}@keyframes ev-fill{0%,to{transform:scaleX(.2)}72%,94%{transform:scaleX(1)}0%,94%,to{opacity:1}97%{opacity:0}}@keyframes ev-charging{0%,70%,to{opacity:1}75%,94%{opacity:0}}@keyframes ev-ready{0%,70%,to{opacity:0}75%,94%{opacity:1}}@media (width<=900px){.ev-status{gap:var(--space-3);flex-wrap:wrap}}@media (width<=600px){.ev-phase{display:none}.ev-badge{top:var(--space-3);left:var(--space-3)}.ev-caption{bottom:var(--space-3);left:var(--space-3)}}.solar-cycle{--solar-duration:24s;--solar-charge:#b8d5ff;--solar-discharge:#ffe1a1;min-width:0;display:block}.solar-scene{aspect-ratio:3/2;background:var(--color-ink-raised);position:relative;overflow:hidden}.solar-photo{position:absolute;inset:0;overflow:hidden}.solar-photo img{object-fit:cover;width:100%;max-width:none;height:100%;display:block;position:absolute;inset:0 auto 0 0}.solar-photo-night{opacity:0}.solar-scene-shade{pointer-events:none;background:linear-gradient(#0000 72%,#0c1727a8),linear-gradient(#0c172747,#0000 20%);position:absolute;inset:0}.solar-time{top:var(--space-4);left:var(--space-4);border:1px solid var(--line-on-dark);color:var(--color-on-dark);font-size:var(--text-2xs);letter-spacing:1.5px;background:#0f1c2fc7;padding:9px 12px;display:grid;position:absolute}.solar-day-state,.solar-night-state{grid-area:1/1}.solar-night-state{opacity:0}.solar-flow{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.solar-flow-track{stroke:currentColor;stroke-width:1px;opacity:.3}.solar-flow-pulse{stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-dasharray:24 620}.solar-flow circle{fill:currentColor}.solar-charge-path{color:var(--solar-charge)}.solar-home-path{color:var(--solar-discharge);opacity:0}.solar-flow-label{bottom:var(--space-4);left:var(--space-4);right:var(--space-4);font-size:var(--text-base);color:var(--color-on-dark);display:grid;position:absolute}.solar-flow-label>span{gap:var(--space-3);align-items:center;display:flex}.solar-flow-label>span>span{color:var(--color-accent-soft)}.solar-status{align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-line-dark);display:flex}.solar-storage{gap:var(--space-3);font-size:var(--text-sm);color:var(--color-on-dark-soft);align-items:center;display:flex}.solar-meter{background:var(--color-line-dark);width:64px;height:6px;overflow:hidden}.solar-meter>span{background:var(--color-accent-soft);transform-origin:0;width:100%;height:100%;display:block;transform:scaleX(.2)}.solar-status-text{font-size:var(--text-sm);color:var(--color-on-dark-soft);flex:1;display:grid}.solar-pause{padding:var(--space-1) 0;border:none;border-bottom:1px solid var(--color-line-dark);color:var(--color-on-dark-soft);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0}.solar-pause:hover{color:var(--color-on-dark)}.solar-pause[hidden]{display:none}.solar-example-note{margin:var(--space-3) 0 0;font-size:var(--text-sm);color:var(--color-on-dark-muted);line-height:var(--leading-snug)}@media (prefers-reduced-motion:no-preference){.solar-cycle .solar-photo-night,.solar-cycle .solar-night-state,.solar-cycle .solar-home-path{animation:solar-night var(--solar-duration) linear infinite}.solar-cycle .solar-day-state,.solar-cycle .solar-charge-path{animation:solar-day var(--solar-duration) linear infinite}.solar-cycle .solar-meter>span{animation:solar-storage var(--solar-duration) linear infinite}.solar-cycle .solar-flow-pulse{animation:3s linear infinite solar-current}.solar-cycle .solar-photo-night,.solar-cycle .solar-night-state,.solar-cycle .solar-home-path,.solar-cycle .solar-day-state,.solar-cycle .solar-charge-path,.solar-cycle .solar-meter>span,.solar-cycle .solar-flow-pulse{animation-play-state:paused}.solar-cycle.solar-running .solar-photo-night,.solar-cycle.solar-running .solar-night-state,.solar-cycle.solar-running .solar-home-path,.solar-cycle.solar-running .solar-day-state,.solar-cycle.solar-running .solar-charge-path,.solar-cycle.solar-running .solar-meter>span,.solar-cycle.solar-running .solar-flow-pulse{animation-play-state:running}}@keyframes solar-night{0%,38%,to{opacity:0}49%,87%{opacity:1}}@keyframes solar-day{0%,38%,to{opacity:1}49%,87%{opacity:0}}@keyframes solar-storage{0%,to{transform:scaleX(.2)}38%,49%{transform:scaleX(.9)}87%{transform:scaleX(.2)}}@keyframes solar-current{0%{stroke-dashoffset:0}to{stroke-dashoffset:-644px}}@media (width<=900px){.solar-status{gap:var(--space-3);flex-wrap:wrap}.solar-status-text{flex:initial}.solar-pause{margin-left:auto}}@media (width<=600px){.solar-time{top:var(--space-3);left:var(--space-3)}.solar-flow-label{left:var(--space-3);bottom:var(--space-3)}.solar-status-text{display:none}}
