:root{--navy:#0d1b4c;--blue:#2d388e;--green:#0d9247;--green-deep:#08773b;--yellow:#f5c542;--ink:#14223b;--muted:#526176;--surface:#f6f8f5;--line:#dce3df;--night:#081936;--radius:12px;--shadow:0 18px 40px #0d1b4c14}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.6}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--navy);letter-spacing:-.045em;font-family:Space Grotesk,Arial,sans-serif;line-height:1.08}h1{margin-bottom:24px;font-size:clamp(2.75rem,5.6vw,5.45rem);font-weight:600}h2{margin-bottom:18px;font-size:clamp(2rem,3.6vw,3.6rem);font-weight:600}h3{margin-bottom:10px;font-size:1.35rem}p{color:var(--muted)}ul,ol{margin:0;padding:0}:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.container{width:min(1180px,100% - 56px);margin:0 auto}.section{padding:112px 0}.compact-section{padding-top:0}.eyebrow,.card-eyebrow{color:var(--green-deep);letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px;font-size:.75rem;font-weight:800}.card-eyebrow{font-size:.67rem}.button{border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:13px 18px;font-size:.87rem;font-weight:800;line-height:1;transition:background-color .18s,color .18s,border-color .18s,transform .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:var(--green-deep);border-color:var(--green-deep)}.button-primary:hover{background:var(--navy);border-color:var(--navy)}.button-secondary{color:var(--navy);border-color:var(--line);background:#fff}.button-secondary:hover{background:var(--surface);border-color:var(--green)}.text-link{color:var(--navy);align-items:center;gap:8px;font-size:.88rem;font-weight:800;display:inline-flex}.text-link:hover{color:var(--green)}.site-header{z-index:20;background:#fffffff7;border-bottom:1px solid #e8ece8;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:80px;display:flex}.brand{flex:none;display:block}.brand img{width:185px;height:auto}.desktop-nav{align-items:center;gap:29px;margin-left:auto;display:flex}.desktop-nav a{color:#4b5871;font-size:.84rem;font-weight:800;position:relative}.desktop-nav a:after{background:var(--green);content:"";transform-origin:50%;height:2px;transition:transform .18s;position:absolute;bottom:-7px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover,.desktop-nav a.active{color:var(--navy)}.desktop-nav a:hover:after,.desktop-nav a.active:after{transform:scaleX(1)}.header-cta{color:#fff;background:var(--green-deep);white-space:nowrap;border-radius:6px;align-items:center;gap:7px;min-height:42px;padding:0 13px;font-size:.78rem;font-weight:900;display:inline-flex}.header-cta:hover{background:var(--navy)}.mobile-menu-button{color:var(--navy);background:0 0;border:0;padding:9px;display:none}.mobile-nav{display:none}.floating-contact-actions{z-index:30;position:fixed;bottom:24px;right:24px}.floating-contact{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;transition:transform .18s,box-shadow .18s;display:inline-flex;box-shadow:0 10px 24px #0819363d}.floating-contact:hover{transform:translateY(-2px);box-shadow:0 14px 30px #0819364d}.floating-facebook{background:#1877f2}.floating-phone{background:var(--green-deep);display:none}.hero-section{background:var(--surface);border-bottom:1px solid var(--line);overflow:hidden}.hero-grid{grid-template-columns:.92fr 1.08fr;min-height:650px;display:grid}.hero-copy{flex-direction:column;justify-content:center;max-width:555px;padding:80px 36px 78px 0;display:flex}.hero-copy h1 span{color:var(--green)}.hero-lead{max-width:515px;margin-bottom:30px;font-size:1.06rem;line-height:1.75}.hero-actions{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.hero-promises{border-top:1px solid #d8dfda;gap:18px;margin-top:54px;padding-top:28px;display:grid}.hero-promises div{grid-template-columns:34px 1fr;align-items:start;gap:12px;display:grid}.hero-promises svg{color:var(--green);margin-top:3px}.hero-promises span{color:var(--muted);font-size:.79rem;line-height:1.45;display:grid}.hero-promises strong{color:var(--navy);margin-bottom:2px;font-size:.83rem}.hero-media{background:var(--navy);min-height:650px;margin-right:calc(-50vw + min(1180px,100vw - 56px)/2);position:relative}.hero-media:after{background:var(--yellow);content:"";width:145px;height:6px;position:absolute;bottom:28px;right:28px}.hero-media img,.feature-project-image img,.project-card-image img,.team-image img,.gallery-large img,.gallery-small img{object-fit:cover}.night-sun-bg{color:#fff;background-color:var(--night);background-image:url(/images/generated/solar-dawn-grid.png);background-position:50%;background-size:cover}.night-sun-bg h2,.night-sun-bg h3,.night-sun-bg p,.night-sun-bg .eyebrow{color:#fff}.night-sun-bg .eyebrow{color:#b8e6c6}.light-sun-bg{background-color:#f7f3e7;background-image:url(/images/generated/solar-light-halo.png);background-position:50%;background-size:cover}.process-section{padding:120px 0 104px}.split-heading{grid-template-columns:minmax(0,1.15fr) minmax(260px,.55fr);align-items:end;gap:90px;margin-bottom:58px;display:grid}.split-heading>p{margin-bottom:8px;font-size:.95rem;line-height:1.7}.split-heading-light>p{color:#d2d9e2}.process-list{border-top:1px solid #ffffff59;border-bottom:1px solid #ffffff59;grid-template-columns:repeat(4,1fr);list-style:none;display:grid;overflow:hidden}.process-list li{border-right:1px solid #ffffff59;min-height:218px;padding:24px 26px 25px}.process-list li:last-child{border-right:0}.process-list span{color:var(--yellow);margin-bottom:45px;font-family:Space Grotesk,sans-serif;font-size:.82rem;font-weight:700;display:block}.process-list h3{color:#fff;margin-bottom:8px;font-size:1.12rem}.process-list p{color:#d8dfe8;margin:0;font-size:.79rem;line-height:1.55}.section-heading{justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:44px;display:flex}.section-heading h2{max-width:700px;margin:0}.solution-grid{grid-template-columns:repeat(4,1fr);gap:15px;display:grid}.solution-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;flex-direction:column;min-height:310px;padding:27px;transition:box-shadow .18s,transform .18s,border-color .18s;display:flex;position:relative}.solution-card:hover{box-shadow:var(--shadow);border-color:#a8cdb5;transform:translateY(-3px)}.solution-card>svg{color:var(--green);margin-bottom:32px}.solution-card h3{font-size:1.22rem}.solution-card p:not(.card-eyebrow){margin-bottom:22px;font-size:.84rem;line-height:1.6}.solution-card a{width:31px;height:31px;color:var(--navy);background:#eef3ee;border-radius:50%;justify-content:center;align-items:center;margin-top:auto;display:flex}.solution-card a:hover{color:#fff;background:var(--green)}.feature-project-section{padding-top:48px}.feature-project{background:var(--navy);grid-template-columns:.92fr 1.08fr;min-height:500px;display:grid}.feature-project-copy{flex-direction:column;justify-content:center;padding:65px 72px;display:flex}.feature-project-copy .eyebrow{color:#98e0b7}.feature-project-copy h2{color:#fff}.feature-project-copy>p:not(.eyebrow){color:#d5ddeb}.feature-project-copy dl{grid-template-columns:1fr 1fr;gap:25px;margin:17px 0 34px;display:grid}.feature-project-copy dl div{border-top:1px solid #ffffff54;padding-top:16px}.feature-project-copy dt{color:#cbd6e7;letter-spacing:.09em;text-transform:uppercase;margin-bottom:4px;font-size:.69rem;font-weight:800}.feature-project-copy dd{color:#fff;margin:0;font-family:Space Grotesk,sans-serif;font-size:.92rem;font-weight:600}.feature-project-copy .text-link{color:#fff}.feature-project-copy .text-link:hover{color:var(--yellow)}.feature-project-image{min-height:500px;position:relative}.trust-section{background:#fff}.trust-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:120px;display:grid}.trust-grid>div>p:not(.eyebrow){max-width:470px}.trust-list{gap:3px;display:grid}.trust-list div{border-top:1px solid var(--line);grid-template-columns:42px 1fr;gap:13px;padding:19px 0;display:grid}.trust-list div:last-child{border-bottom:1px solid var(--line)}.trust-list svg{color:var(--green)}.trust-list span{color:var(--muted);font-size:.85rem;display:grid}.trust-list strong{color:var(--navy);margin-bottom:3px}.assessment-strip{padding:70px 0}.assessment-strip-inner{justify-content:space-between;align-items:center;gap:35px;display:flex}.assessment-strip h2{max-width:650px;margin-bottom:6px;font-size:clamp(1.9rem,3.4vw,3rem)}.assessment-strip p:not(.eyebrow){margin:0}.night-sun-bg .assessment-strip-inner>div>p:not(.eyebrow){color:#d3dbe8}.night-sun-bg .assessment-strip-inner h2{color:#fff}.night-sun-bg .button-primary{color:var(--navy);background:var(--yellow);border-color:var(--yellow)}.night-sun-bg .button-primary:hover{color:#fff;background:var(--green);border-color:var(--green)}.page-hero{min-height:435px;padding:102px 0 78px;position:relative}.page-hero-content{max-width:795px}.page-hero-content>p:not(.eyebrow){max-width:690px;font-size:1.04rem}.page-hero-content .button{margin-top:14px}.projects-hero{color:#fff;background-color:var(--night);background-image:url(/images/generated/solar-dawn-grid.png);background-position:50%;background-size:cover}.projects-hero h1,.projects-hero p{color:#fff}.projects-hero .eyebrow{color:#b8e6c6}.about-hero{background:#edf2ee}.about-hero:after{background:var(--yellow);content:"";width:160px;height:4px;position:absolute;bottom:26px;right:8%}.solutions-detail-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.solution-detail{border:1px solid var(--line);border-radius:var(--radius);background:#fff;grid-template-columns:74px 1fr;gap:26px;padding:42px;display:grid}.solution-detail-icon{width:62px;height:62px;color:var(--green);background:#eaf5ed;border-radius:50%;justify-content:center;align-items:center;display:flex}.solution-detail h2{margin-bottom:12px;font-size:1.85rem}.solution-detail ul{gap:9px;margin:24px 0;list-style:none;display:grid}.solution-detail li{color:var(--muted);padding-left:19px;font-size:.86rem;position:relative}.solution-detail li:before{background:var(--green);content:"";border-radius:50%;width:7px;height:7px;position:absolute;top:.57em;left:0}.cta-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:25px;padding:50px;display:flex}.solutions-project-cta{padding-top:72px}.cta-card h2{margin:0;font-size:clamp(1.7rem,3vw,2.6rem)}.case-study{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:.88fr 1.12fr;display:grid;overflow:hidden}.case-study-copy{flex-direction:column;justify-content:center;padding:64px;display:flex}.case-study-copy h2{margin-bottom:14px}.case-study-specs{grid-template-columns:1fr 1fr;gap:14px;margin:22px 0 28px;display:grid}.case-study-specs div{border-left:3px solid var(--green);background:#fff;padding:16px}.case-study-specs span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:.67rem;font-weight:800;display:block}.case-study-specs strong{color:var(--navy);font-size:.84rem;line-height:1.4}.case-study-gallery{background:#fff;grid-template-columns:1.4fr .6fr;gap:7px;min-height:510px;display:grid}.gallery-large,.gallery-small{min-height:100%;position:relative}.projects-grid-section{padding-top:20px}.section-side-note{max-width:310px;margin-bottom:0;font-size:.78rem;line-height:1.55}.projects-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.project-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}.project-card-image{background:var(--navy);height:285px;position:relative}.project-card-body{padding:26px}.project-card-body h3{font-size:1.35rem}.project-card-body p{align-items:center;gap:7px;margin-bottom:8px;font-size:.83rem;display:flex}.project-card-body svg{color:var(--green);flex:none}.project-card-body span{color:var(--navy);border-top:1px solid var(--line);margin-top:16px;padding-top:13px;font-size:.77rem;font-weight:800;display:block}.two-column-story{grid-template-columns:.85fr 1.15fr;gap:160px;display:grid}.two-column-story h2{max-width:470px}.two-column-story>div>p{max-width:650px;font-size:1.04rem}.check-list{gap:13px;list-style:none;display:grid}.check-list li{color:var(--navy);align-items:center;gap:9px;font-size:.9rem;font-weight:800;display:flex}.check-list svg{color:var(--green)}.team-section{background:var(--surface);padding-top:42px}.team-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.team-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;flex-direction:column;display:flex;overflow:hidden}.team-image{background:#e9eeea;height:360px;position:relative}.team-image img{object-fit:contain;object-position:center top}.team-card-content{flex:1;padding:25px}.team-card h3{font-size:1.25rem}.team-card p:not(.card-eyebrow){margin-bottom:0;font-size:.84rem}.team-more{justify-content:center;margin-top:36px;display:flex}.contact-hero{min-height:435px}.contact-layout{padding-top:92px}.contact-grid{grid-template-columns:.9fr 1.1fr;gap:100px;display:grid}.contact-grid h2{font-size:clamp(2rem,3.4vw,3.2rem)}.branch-list{gap:13px;margin:30px 0;display:grid}.branch-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:36px 1fr;gap:14px;padding:22px;display:grid}.branch-card>svg{color:var(--green)}.branch-card h3{margin-bottom:6px;font-size:1.13rem}.branch-card p{margin-bottom:10px;font-size:.85rem;line-height:1.6}.branch-card a{color:var(--green);align-items:center;gap:5px;font-size:.78rem;font-weight:800;display:inline-flex}.contact-lines{gap:12px;display:grid}.contact-lines a{color:var(--navy);align-items:center;gap:9px;font-size:.86rem;font-weight:800;display:flex}.contact-lines svg{color:var(--green)}.form-panel{background:var(--navy);border-radius:var(--radius);padding:42px}.form-panel h2{color:#fff;margin-bottom:7px}.form-panel>p:not(.eyebrow){color:#d5ddeb;margin-bottom:28px}.form-panel .eyebrow{color:#aee3be}.assessment-form{gap:20px;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.field{gap:7px;display:grid}.field label{color:#fff;font-size:.75rem;font-weight:800}.field input,.field select,.field textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #fff;border-radius:6px;padding:12px 13px;font-size:.86rem}.field textarea{resize:vertical;min-height:124px}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid var(--yellow);outline-offset:2px}.field-error{color:#fff0a8;margin:0;font-size:.72rem;font-weight:700}.form-action{justify-content:space-between;align-items:center;gap:18px;padding-top:4px;display:flex}.form-action p{color:#d5ddeb;max-width:285px;margin:0;font-size:.72rem;line-height:1.45}.form-action .button{color:var(--navy);background:var(--yellow);border-color:var(--yellow);flex:none}.form-action .button:hover{color:#fff;background:var(--green);border-color:var(--green)}.site-footer{color:#dce5f0;background:var(--night);padding-top:70px}.footer-grid{grid-template-columns:1.45fr .55fr .85fr;gap:70px;padding-bottom:56px;display:grid}.footer-grid>div:first-child>img{width:185px;height:auto;margin-bottom:23px}.footer-grid p:not(.footer-label){color:#cbd6e5;max-width:390px;margin:0;font-size:.82rem}.footer-grid>div:not(:first-child){align-content:start;gap:11px;display:grid}.footer-grid a{color:#e8eff8;font-size:.83rem}.footer-grid a:hover{color:var(--yellow)}.footer-label{color:#92d6ac;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:.69rem;font-weight:900}.footer-bottom{color:#aab8c9;border-top:1px solid #fff3;padding:17px 0 22px;font-size:.7rem}@media (max-width:1000px){.container{width:min(100% - 42px,760px)}.desktop-nav,.header-cta{display:none}.mobile-menu-button{display:inline-flex}.mobile-nav{border-bottom:1px solid var(--line);background:#fff;gap:4px;padding:10px 21px 20px;display:grid;position:absolute;left:0;right:0;box-shadow:0 12px 18px #0d1b4c14}.mobile-nav a{color:var(--navy);padding:11px 0;font-size:.9rem;font-weight:800}.mobile-nav a:last-child{color:var(--green)}.hero-grid,.feature-project,.case-study,.contact-grid{grid-template-columns:1fr}.hero-copy{max-width:650px;padding:78px 0 54px}.hero-media{min-height:450px;margin-right:0}.hero-media:after{bottom:22px;right:22px}.split-heading,.trust-grid,.two-column-story{grid-template-columns:1fr;gap:26px}.process-list{grid-template-columns:1fr 1fr}.process-list li:nth-child(2){border-right:0}.process-list li:nth-child(-n+2){border-bottom:1px solid #ffffff59}.solution-grid{grid-template-columns:1fr 1fr}.feature-project-copy{padding:58px}.feature-project-image{min-height:400px}.trust-grid,.contact-grid{gap:56px}.solution-detail{padding:30px}.case-study-gallery{min-height:410px}.footer-grid{grid-template-columns:1.3fr .7fr .9fr;gap:30px}}@media (max-width:650px){.container{width:calc(100% - 34px)}.section{padding:74px 0}h1{font-size:clamp(2.55rem,11vw,4rem)}h2{font-size:clamp(1.85rem,8.5vw,2.75rem)}.header-inner{min-height:70px}.brand img{width:158px}.hero-copy{padding:60px 0 44px}.hero-lead{font-size:.96rem}.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.hero-promises{gap:16px;margin-top:42px}.hero-media{min-height:315px}.process-section{padding:76px 0 68px}.split-heading{margin-bottom:38px}.process-list{grid-template-columns:1fr}.process-list li,.process-list li:nth-child(2){border-bottom:1px solid #ffffff59;border-right:0;min-height:auto;padding:22px 0}.process-list li:last-child{border-bottom:0}.process-list span{margin-bottom:20px}.section-heading,.assessment-strip-inner,.cta-card{flex-direction:column;align-items:flex-start}.solutions-project-cta{padding-top:52px}.section-heading{gap:18px;margin-bottom:30px}.solution-grid,.solutions-detail-grid,.projects-grid,.team-grid{grid-template-columns:1fr}.solution-card{min-height:265px}.feature-project-section{padding-top:0}.feature-project-copy,.case-study-copy,.form-panel{padding:34px 25px}.feature-project-copy dl,.case-study-specs{grid-template-columns:1fr;gap:12px}.feature-project-image{min-height:300px}.trust-grid{gap:40px}.assessment-strip{padding:58px 0}.assessment-strip-inner{gap:24px}.page-hero{min-height:390px;padding:70px 0 58px}.solution-detail{grid-template-columns:1fr;gap:19px;padding:26px}.case-study-gallery{grid-template-columns:1fr;min-height:450px}.gallery-small{display:none}.project-card-image{height:245px}.two-column-story{gap:18px}.team-image{height:340px}.form-grid{grid-template-columns:1fr}.form-action{flex-direction:column;align-items:flex-start}.form-action .button{width:100%}.floating-contact-actions{bottom:18px;right:18px}.floating-facebook{display:none}.floating-phone{display:inline-flex}.footer-grid{grid-template-columns:1fr;gap:36px}.footer-grid>div:not(:first-child){gap:9px}}
