@font-face{font-family:'Archivo';font-weight:400;font-display:swap;src:url(fonts/archivo-400.woff2) format('woff2')}
@font-face{font-family:'Archivo';font-weight:500 800;font-display:swap;src:url(fonts/archivo-600.woff2) format('woff2')}
@font-face{font-family:'Big Shoulders';font-weight:600 800;font-display:swap;src:url(fonts/bigshoulders-700.woff2) format('woff2')}
@font-face{font-family:'Caveat';font-weight:700;font-display:swap;src:url(fonts/caveat-700.woff2) format('woff2')}
:root{
  --panel:#15171e; --line:#323847; --line-thin:#262a35;
  --orange:#e8622c;
  --paper:#ffffff; --mist:#f2f3f1; --ink:#15171e; --body:#3d424d; --on-dark:#e7e8ea; --on-dark-dim:#aeb3bd;
  --rule:#d8dbdc;
  --display:'Big Shoulders','Liberation Sans Narrow','Arial Narrow',Impact,sans-serif; --text:'Archivo',Arial,sans-serif;
  --gutter:clamp(16px,4vw,56px);
  --solar:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='104' height='104'%3E%3Cg fill='none'%3E%3Cpath d='M26 0v104M52 0v104M78 0v104' stroke='%23262a35'/%3E%3Cpath d='M0 52h104' stroke='%23262a35'/%3E%3Cpath d='M.75 0v104M0 .75h104' stroke='%23323847' stroke-width='1.5'/%3E%3C/g%3E%3Cg fill='%23545c6e'%3E%3Ccircle cx='.75' cy='.75' r='.9'/%3E%3Ccircle cx='104.75' cy='.75' r='.9'/%3E%3Ccircle cx='.75' cy='104.75' r='.9'/%3E%3Ccircle cx='104.75' cy='104.75' r='.9'/%3E%3C/g%3E%3C/svg%3E");
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--body);font:400 1.0625rem/1.6 var(--text)}
img{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
h1,h2,h3{margin:0;color:var(--ink);font-family:var(--display);font-weight:700;letter-spacing:.005em;line-height:1.06}
h1{text-transform:uppercase}
h2{font-size:clamp(2.3rem,4.6vw,3.6rem);max-width:17em}
h3{font-family:var(--text);font-weight:600;text-transform:none;letter-spacing:0;font-size:1.15rem;line-height:1.3}
p{margin:0}
.wrap{max-width:1280px;margin:0 auto;padding:0 var(--gutter)}
.band{padding:clamp(56px,7.5vw,104px) 0}
.solar{background:var(--panel) var(--solar);color:var(--on-dark)}
.solar h1,.solar h2,.solar h3{color:#fff}
.lede{max-width:38em;margin-top:18px;font-size:1.15rem}
.btn{display:inline-block;padding:15px 24px;border:2px solid var(--orange);background:var(--orange);color:#15171e;font-weight:700;text-decoration:none;line-height:1.2;cursor:pointer;font-family:var(--text);font-size:1rem}
.btn:hover{background:#ff7a43;border-color:#ff7a43}
.btn.ghost{background:transparent;color:#fff;border-color:#7b8291}
.btn.ghost:hover{border-color:#fff}
.textlink{display:inline-block;margin-top:22px;color:var(--ink);font-weight:500}
.solar .textlink{color:#fff}

.top{position:relative;z-index:2;border-bottom:1px solid var(--line);background:var(--panel)}
.top .wrap{display:flex;align-items:center;gap:28px;padding-top:14px;padding-bottom:14px}
.top img{width:176px;height:auto}
.top nav{display:flex;gap:20px;white-space:nowrap;margin-left:auto;font-size:.95rem;font-weight:500}
.top nav a{color:var(--on-dark);text-decoration:none}
.top nav a:hover{color:#fff;text-decoration:underline}
.top .tel{color:#fff;font-weight:700;text-decoration:none;white-space:nowrap}

@media (min-width:760px){#how h2{max-width:none;white-space:nowrap}}
.hero{position:relative;z-index:2}
.hero-arrow{display:none;position:absolute;justify-content:center;align-items:center;padding-bottom:10px;background:var(--orange);color:var(--ink);font:700 1.3rem/1.2 var(--text);text-decoration:none;clip-path:polygon(0 0,100% 0,100% 58%,50% 100%,0 58%);transition:background .15s,transform .15s}
footer a.brandlink{text-decoration:none}
.hero-arrow:hover,.hero-arrow:focus-visible{background:#ff8347;transform:translateY(7px)}
@media (prefers-reduced-motion:reduce){.hero-arrow{transition:none}.hero-arrow:hover,.hero-arrow:focus-visible{transform:none}}
.hero.ar .actions .btn:not(.ghost){display:none}
.hero.ar .actions .btn.ghost{flex:1;text-align:center;font-size:1.2rem;padding-top:17px;padding-bottom:17px}
.hero.ar .hero-copy p.smallprint{max-width:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:center;padding-top:clamp(36px,5vw,72px);padding-bottom:clamp(36px,5vw,72px)}
.hero-photo{position:relative;aspect-ratio:1/1;max-height:640px;width:100%}
.hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
h1{font-size:clamp(2.9rem,5.6vw,5rem);line-height:1.04}
.hero-copy h1{font-size:clamp(3.6rem,8vw,6.8rem);line-height:1}
.hero-copy p.sub{margin-top:14px;font-size:clamp(1.2rem,1.8vw,1.45rem);line-height:1.35;color:#fff}
.hero-grant{margin-top:28px;padding:2px 0 2px 20px;border-left:5px solid var(--orange)}
.hero-grant h2{font-size:clamp(1.7rem,2.9vw,2.4rem);line-height:1.1}
.hero-copy .hero-grant p{margin-top:10px;font-size:1.05rem}
.hero-copy p{max-width:32em;margin-top:22px;font-size:1.2rem;color:var(--on-dark)}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hero-copy p.smallprint{margin-top:18px;font-size:.875rem;color:var(--on-dark-dim)}

.clock{background:#2c313d;border-top:1px solid #4a5162;border-bottom:1px solid #4a5162;color:#fff}
.clock .wrap{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:center;padding-top:22px;padding-bottom:22px}
.count{display:flex;align-items:baseline;gap:12px;color:#fff;white-space:nowrap}
.count b{font:700 clamp(3rem,5vw,4.2rem)/1 var(--display);color:#fff}
.count span{font-size:1.05rem}
.track{position:relative;padding:30px 0 26px;font-size:.875rem;line-height:1.25}
.bar{position:relative;height:7px;background:#5b6374}
.bar i{position:absolute;left:0;top:0;bottom:0;background:var(--orange)}
.bar #risk{background:repeating-linear-gradient(135deg,#d62f1f 0 6px,#7c1d14 6px 12px)}
.lab.esb-l{top:0;right:0;color:#ffb8ac;font-weight:500}
.mark{position:absolute;top:-7px;width:3px;height:20px;background:#fff}
.lab{position:absolute;white-space:nowrap;color:#fff}
.lab.jan{top:0;transform:translateX(-50%);color:#fff}
.lab.a{left:0;bottom:0}.lab.b{right:0;bottom:0}

.who{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,88px);align-items:center}
.who img{width:min(340px,100%);height:auto}
.who .line{margin-top:22px;color:var(--ink);font:700 clamp(1.5rem,2.5vw,2rem)/1.15 var(--display);max-width:17em}
.who .lede{margin-top:0}
.points{margin:24px 0 0;padding:0;list-style:none}
.points li{padding:14px 0;border-top:1px solid var(--rule)}

.lead{margin-top:32px;max-width:52em;padding:2px 0 2px 20px;border-left:5px solid var(--orange)}
.lead p{font:700 clamp(1.6rem,2.6vw,2.1rem)/1.15 var(--display);color:#fff}
.lead small{display:block;margin-top:10px;font-size:.875rem;color:var(--on-dark-dim)}
.rooftypes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,24px);margin:36px 0 0;padding:0;list-style:none}
.rooftypes li{padding:clamp(16px,2vw,24px);background:#0c0e13;border:1px solid var(--line)}
.rooftypes svg{display:block;width:100%;height:auto;margin-bottom:16px}
.rooftypes p{margin-top:6px}
.allroofs{margin-top:20px;color:#fff}
.more{margin-top:40px;padding-top:28px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,40px)}
.more a{text-decoration:none}.more a:hover h3{text-decoration:underline}
.more p{margin-top:6px}

.sites{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(10px,1.4vw,18px);margin-top:36px}
.sites figure{margin:0;position:relative;overflow:hidden;background:var(--panel)}
.sites img{width:100%;height:100%;object-fit:cover}
.sites figcaption{position:absolute;left:0;bottom:0;padding:7px 12px;background:var(--panel);color:#fff;font-size:.95rem}
.s1{grid-column:span 7;aspect-ratio:16/10}.s2{grid-column:span 5}.s3{grid-column:span 12;aspect-ratio:4/1}.s4,.s5,.s6{grid-column:span 4;aspect-ratio:4/3}

.rd{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(20px,3vw,40px);margin-top:36px;align-items:center}
.rd figure{margin:0}.rd figure img{width:100%;height:auto}
.rd figcaption{margin-top:8px;font-size:.875rem;color:var(--on-dark-dim)}
.tv{padding:clamp(8px,1vw,12px);background:#000;border:1px solid #4a5060;border-radius:10px}
.tv-screen{padding:clamp(12px,2vw,24px);background:#1d2029;color:#fff;container-type:inline-size}
.tv-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.tv-sol,.tv-hello,.tv-wx{font-family:var(--display);text-transform:none}
.tv-sol{font-size:clamp(1rem,2vw,1.5rem)}.tv-sol em{font-style:normal;color:var(--orange)}
.tv-hello{font-size:clamp(1.1rem,2.3vw,1.8rem);text-align:center}
.tv-wx{font-size:clamp(1rem,2vw,1.5rem)}
.tv-main{display:grid;grid-template-columns:1.15fr 1fr;gap:10px}
.tv-chart,.tv-stats div{background:#2a2e39;padding:clamp(10px,1.3vw,16px)}
.tv-chart small,.tv-stats small{display:block;font-size:clamp(.68rem,.9vw,.8rem);line-height:1.25;color:#cfd3da}
.tv-chart b{display:block;margin-top:4px;font:700 clamp(1.5rem,2.8vw,2.2rem)/1.1 var(--display)}
.tv-chart b span{font:400 .85rem var(--text);color:#cfd3da}
.tv-bars{display:flex;align-items:flex-end;gap:3px;height:clamp(90px,12vw,150px);margin-top:10px}
.tv-bars i{flex:1;background:#8a4a30}.tv-bars i.now{background:var(--orange)}
.tv-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tv-stats b{display:block;font:700 clamp(1.3rem,2.3vw,1.9rem)/1.1 var(--display);margin-bottom:4px}
.rd-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,3vw,36px);margin:36px 0 0;padding:0;list-style:none}
.rd-list p{margin-top:4px}
.out{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,80px);align-items:center}
.out figure{margin:0}.out img{width:100%;height:auto}
.out figcaption{margin-top:8px;font-size:.875rem}
.out-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px clamp(20px,3vw,36px);margin:28px 0 0;padding:0;list-style:none}
.out-list h3{color:var(--ink)}.out-list p{margin-top:4px}
.bk-steps{counter-reset:s;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,24px);margin:36px 0 0;padding:0;list-style:none}
.bk-steps li{counter-increment:s;padding:clamp(16px,2vw,22px);background:#0c0e13;border:1px solid var(--line)}
.bk-steps li::before{content:counter(s);display:block;font:700 2rem/1 var(--display);color:var(--orange);margin-bottom:8px}
.bk-steps b{display:block;color:#fff;font-weight:600;margin-bottom:4px}
.bk-steps span{display:block;font-size:.975rem;line-height:1.45}
.bk-more{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,64px);margin-top:36px}
.bk-more p{margin-top:8px}
.bk-list{margin:8px 0 0;padding:0;list-style:none}
.bk-list li{padding:7px 0;border-bottom:1px solid var(--line)}
.mon{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(32px,6vw,80px);align-items:center}
.mon img{width:100%;height:auto}
.alarm{margin-top:24px;padding:2px 0 2px 20px;border-left:5px solid var(--orange)}
.alarm p{font:700 clamp(1.5rem,2.3vw,1.9rem)/1.15 var(--display);color:var(--ink);max-width:24em}
.mon-list{margin:22px 0 0;padding:0;list-style:none}
.mon-list li{padding:9px 0;border-top:1px solid var(--rule)}
.hs{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,5vw,64px);margin-top:36px;align-items:start}
.plain{margin:10px 0 0;padding:0;list-style:none}
.plain li{padding:9px 0;border-bottom:1px solid var(--line)}
.std{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(18px,3vw,32px);margin:10px 0 0}
.std div{padding:10px 0;border-bottom:1px solid var(--line)}
.std dt{color:#fff;font-weight:600;line-height:1.3}
.std dd{margin:3px 0 0;font-size:.95rem;line-height:1.4}
.res{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);margin-top:36px;align-items:start}
.res figure{margin:0}.res img{width:100%;height:auto}
.res figcaption{margin-top:8px;font-size:.875rem;line-height:1.45}
.yield{background:none;font-size:.875rem;line-height:1.1;table-layout:fixed}
.yield th,.yield td{padding:3px 0;border:0;font-weight:400}
.yield tbody th{width:84px;color:var(--ink)}
.yield td:last-child{width:46px;text-align:right;color:var(--ink)}
.yield td i{display:block;height:11px;background:#5b6270}
.ex{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;background:#fff;border:1px solid var(--rule)}
.ex div{padding:16px 18px}.ex div+div{border-left:1px solid var(--rule)}
.ex dt{font-size:.95rem}
.ex dd{margin:4px 0 0;font:700 clamp(1.5rem,2.4vw,2rem)/1.1 var(--display);color:var(--ink)}
.ex div:nth-child(2) dd{color:#d9531f}
.prop{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,6vw,80px);align-items:center}
.btn.dark{background:var(--panel);border-color:var(--panel);color:#fff}
.btn.dark:hover{background:#2a2e39;border-color:#2a2e39}
.demo{padding:clamp(18px,2.6vw,30px);background:var(--panel) var(--solar);color:var(--on-dark)}
.demo-top{color:#fff;font:700 1.5rem/1.1 var(--display)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.chips button{padding:10px 16px;border:1px solid #7b8291;background:transparent;color:#fff;font:500 1rem var(--text);cursor:pointer}
.chips button[aria-pressed="true"]{background:var(--orange);border-color:var(--orange);color:#15171e;font-weight:600}
.demo-out{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0 0}
.demo-out div{padding:12px 14px;background:#0c0e13}
.demo-out dt{font-size:.9rem}
.demo-out dd{margin:4px 0 0;color:#fff;font:700 clamp(1.6rem,2.8vw,2.2rem)/1.1 var(--display)}
.demo .note{color:var(--on-dark-dim)}
.esgb{background:#2c313d;color:#fff;border-top:1px solid #4a5162;border-bottom:1px solid #4a5162}
.esgb h1,.esgb h2,.esgb .textlink{color:#fff}
.esg3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:36px 0 0;padding:0;list-style:none}
.esg3 li{padding:4px clamp(18px,3vw,40px)}
.esg3 li:first-child{padding-left:0}
.esg3 li+li{border-left:1px solid #5b6374}
.esg3 b{display:block;font:700 clamp(3.4rem,6vw,5rem)/1 var(--display);color:var(--orange)}
.esg3 h3{margin-top:6px;color:#fff}
.esg3 p{margin-top:4px}
.mist{background:var(--mist)}
.grant{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:start}
.facts{margin:24px 0 0;padding:0;list-style:none}
.facts li{padding:14px 0;border-top:1px solid var(--rule)}
.facts b{color:var(--ink)}
.payback{padding:2px 0 2px 20px;margin-bottom:26px;border-left:5px solid var(--orange)}
.payback strong{display:block;font:700 clamp(2rem,3.6vw,2.8rem)/1.08 var(--display);color:var(--ink);font-weight:400}
.payback span{display:block;margin-top:8px}
table{width:100%;border-collapse:collapse;font-size:1rem;background:#fff}
caption{padding-bottom:12px;text-align:left;color:var(--ink);font-weight:600}
th,td{padding:12px 14px;border:1px solid #cfd3d4;text-align:left}
td:last-child,thead th:last-child{text-align:right;font-variant-numeric:tabular-nums}
thead th{background:var(--panel);color:#fff;border-color:var(--panel);font-weight:700}
tbody th{font-weight:500;color:var(--ink)}
.note{margin-top:14px;font-size:.875rem;line-height:1.5}

.offer{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(32px,6vw,88px)}
.sectors{margin:14px 0 0;padding:0;list-style:none}
.sectors li{padding:11px 0;border-bottom:1px solid var(--rule);color:var(--ink)}
.sectors li:first-child{border-top:1px solid var(--rule)}
.handled{margin-top:26px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 32px}
.esg{margin-top:26px;padding-top:18px;border-top:1px solid var(--rule);max-width:38em}
.esg b{color:var(--ink)}

.guar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:36px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.guar div{padding:22px 8px;text-align:center}
.guar div+div{border-left:1px solid var(--line)}
.guar dt{color:var(--on-dark)}
.guar dd{margin:6px 0 0;font:700 clamp(1.5rem,2.3vw,2rem)/1.08 var(--display);color:var(--orange);white-space:nowrap}
.guarnote{margin-top:14px;font-size:.9rem;color:var(--on-dark-dim);max-width:46em}
.product{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);margin-top:clamp(36px,5vw,56px);background:#fff;color:var(--body);border-top:5px solid var(--orange)}
.product>div{padding:clamp(20px,3vw,36px)}
.product .brand{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.product .sc-steps{margin:0}
.plan{border-left:1px solid var(--rule)}
.solar .product h3{color:var(--ink);font:700 1.5rem/1.1 var(--display)}
.plan ul{margin:14px 0 0;padding:0;list-style:none}
.plan li{position:relative;padding:5px 0 5px 24px;line-height:1.35}
.plan li::before{content:"";position:absolute;left:2px;top:9px;width:11px;height:6px;border-left:2.5px solid var(--orange);border-bottom:2.5px solid var(--orange);transform:rotate(-45deg)}
.sc-badge{display:inline-flex;align-items:flex-start;gap:3px;padding:6px 22px 9px;margin-bottom:16px;border-radius:999px;background:var(--panel);color:var(--orange);font:700 clamp(2.1rem,3.2vw,2.7rem)/1.05 'Caveat',cursive;white-space:nowrap}
#ai .aig{display:block;width:100%;height:auto}
#ai h1,#ai h2{white-space:nowrap;font-size:clamp(1.4rem,6.3vw,2.5rem)}
@media (min-width:900px){#ai h1,#ai h2{font-size:clamp(2rem,3.4vw,2.9rem)}}
.sc-badge sup{font:600 .8rem/1 var(--text);margin-top:8px}
.tiers{margin:14px 0 0}
.tiers div{padding:8px 0}.tiers div+div{border-top:1px solid var(--rule)}
.tiers dt{color:var(--ink);font-weight:600}
.tiers dd{margin:2px 0 0;line-height:1.4}
.sc-steps{counter-reset:s;grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2.4vw,32px);margin:0;padding:clamp(20px,3vw,32px) clamp(20px,3vw,36px);list-style:none;background:var(--mist)}
.sc-steps li{counter-increment:s}
.sc-steps li::before{content:counter(s);display:block;font:700 1.7rem/1 var(--display);color:#d9531f;margin-bottom:6px}
.sc-steps b{display:block;color:var(--ink);font-weight:600}
.sc-steps span{display:block;font-size:.95rem;line-height:1.45}
.incl{display:inline-block;margin-top:14px;padding:6px 12px;background:var(--panel);color:#fff;font-size:.95rem}
.o{color:#d9531f}
.tenants{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:center}
.moves{margin:0;padding:0;list-style:none}.moves li{padding:16px 0;border-top:1px solid #c9cdcf}.moves li:last-child{border-bottom:1px solid #c9cdcf}.moves p{margin-top:2px}

.steps{counter-reset:s;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px;margin:40px 0 0;padding:0;list-style:none}
.steps li{counter-increment:s;padding-top:14px;border-top:3px solid var(--ink)}
.steps li::before{content:counter(s);display:block;font:700 2.2rem/1 var(--display);color:var(--ink);margin-bottom:10px}
.steps b{display:block;color:var(--ink);font-weight:600;line-height:1.3;margin-bottom:6px}
.steps span{font-size:.975rem;display:block;line-height:1.5}
.esb{margin-top:32px;max-width:48em}

.send{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:start}
.send .contact{margin-top:26px;color:#fff}
.send .contact a{display:block;text-decoration:none;font-size:1.2rem}
form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;padding:clamp(18px,2.4vw,28px);background:#fff;color:var(--ink)}
label{display:block;font-size:.95rem;font-weight:500}
input{width:100%;margin-top:5px;padding:11px;border:1px solid #868c97;background:#fff;color:var(--ink);font:400 1rem var(--text)}
input[type=file]{padding:8px;font-size:.9rem}
.full{grid-column:1/-1}
form .btn{width:100%}
#status{font-size:.95rem}
.formnote{font-size:.9rem;line-height:1.4}

footer{padding:40px 0;border-top:1px solid var(--line);font-size:.92rem;color:var(--on-dark)}
footer img{width:230px;height:auto}
.draft{text-decoration:none;position:fixed;right:12px;bottom:12px;z-index:5;padding:6px 10px;background:var(--panel);color:#fff;font-size:.8rem;border:1px solid #7b8291}

@media (max-width:1180px){.top nav{display:none}.top .tel{margin-left:auto}}
@media (max-width:1060px){
  .hero-grid,.who,.grant,.offer,.tenants,.send,.product{grid-template-columns:minmax(0,1fr)}
  .plan{border-left:0;border-top:1px solid var(--rule)}
  .sc-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .guar{grid-template-columns:repeat(3,minmax(0,1fr))}
  .guar div:nth-child(4){border-left:0}
  .hero-photo{aspect-ratio:16/9}
  .more,.rooftypes{grid-template-columns:minmax(0,1fr)}
  .rd{grid-template-columns:minmax(0,1fr)}
  .prop{grid-template-columns:minmax(0,1fr)}
  .res{grid-template-columns:minmax(0,1fr)}
  .hs{grid-template-columns:minmax(0,1fr)}
  .mon{grid-template-columns:minmax(0,1fr)}
  .mon img{max-width:420px}
  .bk-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bk-more{grid-template-columns:minmax(0,1fr)}
  .out{grid-template-columns:minmax(0,1fr)}
  .out figure{max-width:440px}
  .rd-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .clock .wrap{grid-template-columns:minmax(0,1fr);gap:8px}
  .lab.jan{display:none}
  .handled,form,.sc-steps{grid-template-columns:minmax(0,1fr)}
  .rd-list,.tv-main,.out-list,.bk-steps,.std{grid-template-columns:minmax(0,1fr)}
  .esg3{grid-template-columns:minmax(0,1fr);gap:20px}
  .esg3 li{padding:0}.esg3 li+li{border-left:0}
  .ex{grid-template-columns:minmax(0,1fr)}
  .ex div+div{border-left:0;border-top:1px solid var(--rule)}
  .steps{grid-template-columns:minmax(0,1fr)}
  .guar{grid-template-columns:minmax(0,1fr)}
  .guar div+div{border-left:0;border-top:1px solid var(--line)}
  .s1,.s2,.s4,.s5,.s6{grid-column:span 12;aspect-ratio:3/2}.s3{aspect-ratio:5/2}
  th,td{padding:10px}table{font-size:.94rem}
  .top img{width:140px}
}

.page-cta{padding:clamp(40px,5vw,64px) 0}
.page-cta .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
.page-cta h2{font-size:clamp(1.9rem,3.4vw,2.7rem)}
.page-cta p{margin-top:6px}
#who{padding-top:clamp(28px,3.4vw,44px);padding-bottom:clamp(28px,3.4vw,44px)}
#who .wrap{grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:center}
#who ul{margin-top:10px}
#who .lede{max-width:none}
#start h2{text-wrap:balance;font-size:clamp(1.9rem,3.2vw,2.6rem)}
#start .offer{margin-top:18px;align-items:stretch;gap:clamp(28px,4vw,56px)}
@media (min-width:1061px){#start .offer>div:last-child{border-left:3px solid var(--orange);padding-left:clamp(28px,4vw,56px)}}
#start .lede{margin-top:0}
#start .offer h3:first-child{margin-top:0}
#start{padding-top:clamp(36px,4.4vw,56px);padding-bottom:clamp(36px,4.4vw,56px)}
#who li{padding-top:6px;padding-bottom:6px;font-size:.98rem;line-height:1.4}
#who .lede,#who .wrap>div>p{font-size:1.05rem;line-height:1.45}
@media (max-width:1060px){#who .wrap{grid-template-columns:minmax(0,1fr)}}
footer.solar{background:#0b0c11;background-image:none;border-top:3px solid var(--orange)}
input{border-color:#c9cdd3;background:#f7f7f6}
input:focus{outline:2px solid var(--orange);outline-offset:0;border-color:var(--orange);background:#fff}
input[type=file]{padding:9px 10px;color:var(--body)}
input[type=file]::file-selector-button{margin-right:10px;padding:6px 12px;border:1px solid var(--ink);background:#fff;color:var(--ink);font:600 .85rem var(--text);cursor:pointer}
input[type=file]::file-selector-button:hover{background:var(--ink);color:#fff}
.top img{width:230px!important;height:auto!important}
.top .wrap>a:first-child{flex:0 0 auto}
.gtable{width:100%;max-width:760px;margin-top:24px;border-collapse:collapse;font-variant-numeric:tabular-nums}
.gtable th,.gtable td{padding:11px 12px;text-align:right;border-bottom:1px solid var(--rule);font-weight:400}
.gtable th:first-child{text-align:left;padding-left:12px;color:var(--ink);font-weight:600}
.gtable thead th{color:#fff!important;background:var(--ink);font-weight:600;font-size:.92rem}
.gtable td b{color:var(--ink);font-weight:700}
.gtable td:last-child,.gtable th:last-child{padding-right:12px}
.gtable tr:nth-child(4) td b{color:var(--orange)}
.legal{max-width:820px}
.legal h2{margin-top:30px;font-size:clamp(1.6rem,2.6vw,2rem)}
.legal p{margin-top:10px}
.legal a{color:var(--ink)}
.routes td:nth-child(2),.routes td:nth-child(3){text-align:left}.routes th:nth-child(2),.routes th:nth-child(3){text-align:left!important}.routes small{font-weight:400;color:var(--body)}.routes{max-width:none}
.esbline{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px 16px}
.esbline li{border-top:3px solid var(--orange);padding-top:10px}.esbline b{font:700 1.5rem/1 var(--display);color:var(--ink)}.esbline h3{margin:6px 0 4px;font:600 1rem/1.25 var(--text);color:var(--ink)}.esbline p{margin:0;font-size:.92rem;line-height:1.4}
.refft{align-items:center}.refft>img{width:100%;height:auto}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}.stats div{border-top:2px solid var(--ink);padding-top:8px}.stats dt{font-size:.85rem}.stats dd{margin:2px 0 0;font:700 1.5rem/1.1 var(--display);color:var(--ink)}
.refgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.refcard{margin:0}.refcard img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}.refcard figcaption{padding-top:8px}.refcard b{display:block;color:var(--ink)}.refcard span{font-size:.92rem}
.wallsvg{width:100%;height:auto;display:block}
@media (max-width:1060px){.esbline{grid-template-columns:repeat(2,minmax(0,1fr))}.refgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.esbline,.refgrid{grid-template-columns:minmax(0,1fr)}.stats{grid-template-columns:minmax(0,1fr)}.routes{font-size:.92rem}}
.esg3.batt h3{color:var(--ink)!important}.esg3.batt p{color:var(--body)!important}
.handled.four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:28px}
.handled.four>div{padding-top:12px;border-top:2px solid var(--ink);margin:0}
#start .textlink{display:inline-block;margin-top:22px}
@media (max-width:1060px){.handled.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.handled.four{grid-template-columns:minmax(0,1fr)}}
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,24px);margin-top:36px}
.tile{display:flex;flex-direction:column;background:#0c0e13;border:1px solid var(--line);text-decoration:none;color:var(--on-dark)}
.tile:hover{border-color:#7b8291}
.tile .pic{aspect-ratio:16/10;overflow:hidden;background:#0c0e13}
.tile .pic img,.tile .pic svg{display:block;width:100%;height:100%;object-fit:cover}
.tile .pic img.top{object-position:50% 12%}
.tile div.txt{padding:clamp(16px,2vw,22px)}
.tile h3{color:#fff;font:700 1.6rem/1.1 var(--display)}
.tile p{margin-top:6px}
.tile .go{display:inline-block;margin-top:10px;color:#fff;font-weight:500;text-decoration:underline}
.mm{display:none;position:relative;color:#fff}
.mm summary{list-style:none;cursor:pointer;padding:9px 14px;border:1px solid #7b8291;font-weight:600}
.mm summary::-webkit-details-marker{display:none}
.mm-list{position:absolute;right:0;top:calc(100% + 8px);z-index:6;width:250px;padding:6px 0;background:var(--panel);border:1px solid var(--line)}
.mm-list a{display:block;padding:12px 16px;color:#fff;text-decoration:none}
.mm-list a:hover{background:#2c313d}
@media (max-width:1180px){.mm{display:block}.top .wrap{gap:14px}}
@media (max-width:1270px){.top nav{display:none}.top .tel{margin-left:auto}.mm{display:block}}
@media (max-width:560px){.top img{width:150px!important}.top .wrap{gap:10px}}
@media (max-width:380px){.top img{width:128px!important}}
.pg-img{width:100%;max-width:760px;height:auto;margin-top:32px}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px 40px;align-items:start}
footer .fbrand p{margin:16px 0 0;line-height:1.7}
footer a{color:var(--on-dark);text-decoration:none}
footer a:hover{color:#fff;text-decoration:underline}
footer h3{margin:0 0 10px;font:600 .92rem/1.3 var(--text);color:#fff}
footer ul{margin:0;padding:0;list-style:none}
footer li{line-height:1.8}
footer .flegal{grid-column:1/-1;padding-top:18px;border-top:1px solid var(--line);font-size:.8rem;line-height:1.5;color:var(--on-dark-dim)}
footer .flegal p{margin:0}footer .flegal p+p{margin-top:2px}
footer .flegal a{color:inherit}
@media (max-width:760px){footer .wrap{grid-template-columns:1fr 1fr}footer .fbrand,footer .flegal{grid-column:1/-1}}
@media (max-width:1060px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.tiles{grid-template-columns:minmax(0,1fr)}.page-cta .wrap{display:block}.page-cta .btn{margin-top:14px}}
.swipe{display:none}
@media (max-width:640px){
.home main{display:flex;flex-direction:column}
.home .hero{order:1}.home .clock{order:2}.home #sites{order:3}.home #more{order:4}.home #ai{order:4}.home #who{order:5}.home #roofs{order:4}.home #start{order:5}.home #esg{order:7}.home #grant{order:8}.home #proposals{order:9}.home #cover{order:10}.home #tenants{order:11}.home #how{order:12}.home #send{order:13}
.home .band{padding:40px 0}
.home .hero-grid{gap:20px;padding-top:28px;padding-bottom:24px}
.home .hero-grant{margin-top:18px}
.home .hero-copy .hero-grant p,.home .hero-copy p.smallprint{display:none}
.home .actions{margin-top:18px}
.home .actions .btn{padding:13px 16px;font-size:.95rem}
.home .swipe{display:block;margin-top:8px;font-size:.875rem}
.home #sites .lede,.home #sites .textlink{display:none}
.home .sites{display:flex;gap:10px;margin-top:18px;margin-right:calc(var(--gutter)*-1);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-right:var(--gutter)}
.home .sites figure{flex:0 0 84%;aspect-ratio:4/3;scroll-snap-align:start}
.home .tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}
.home .tile p,.home .tile .go{display:none}
.home .tile div.txt{padding:10px 12px}
.home .tile h3{font-size:1.25rem}
.home #who .who>div:first-child{display:none}
.home .points{margin-top:14px}.home .points li{padding:9px 0;font-size:.98rem}
.home .more{display:none}
.home .rooftypes{display:flex;gap:10px;margin-top:20px;margin-right:calc(var(--gutter)*-1);overflow-x:auto;scroll-snap-type:x mandatory;padding-right:var(--gutter)}
.home .rooftypes li{flex:0 0 84%;scroll-snap-align:start}
.home .esg3{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:22px}
.home .esg3 p{display:none}.home .esg3 h3{font-size:.95rem}
.home .esg3 li+li{border-left:0}
.home .guar{grid-template-columns:repeat(2,minmax(0,1fr))}
.home .guar div+div{border-top:0;border-left:0}
.home .guar div{padding:12px 4px}
.home .guar div:last-child{grid-column:1/-1}
.home #tenants .moves{display:none}
.home .tenants{gap:0}
.home .steps{gap:0;margin-top:20px}
.home .steps li{display:grid;grid-template-columns:34px 1fr;align-items:center;padding:10px 0;border-top:1px solid var(--rule)}
.home .steps li::before{margin:0;font-size:1.7rem}
.home .steps span{display:none}
.home .steps b{margin:0}
}

.lp-hero{padding:clamp(48px,6.5vw,92px) 0 clamp(40px,5vw,64px)}
.lp-hero h1{max-width:15em}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:start}
.plainl{margin:20px 0 0;padding:0;list-style:none}
.plainl li{padding:11px 0;border-top:1px solid var(--rule)}
.gt td:nth-child(2),.gt td:nth-child(3){text-align:right}
.gt thead th{text-align:right;line-height:1.25}.gt thead th:first-child{text-align:left}
.gt b{font-weight:600;color:var(--ink)}
.guar.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.lp-hero .guar{margin-top:32px}
.lp-hero .actions{margin-top:28px}
.solar .o{color:var(--orange)}
.why{margin:20px 0 0;padding:0;list-style:none;counter-reset:s}
.why li{counter-increment:s;position:relative;padding:12px 0 12px 44px;border-top:1px solid var(--rule)}
.why li::before{content:counter(s);position:absolute;left:0;top:10px;font:700 1.8rem/1 var(--display);color:var(--ink)}
.why b{display:block;color:var(--ink);font-weight:600}
.ll{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(18px,3vw,36px);margin:28px 0 0;padding:0;list-style:none}
.ll li{padding:14px 0;border-top:1px solid var(--line)}
@media (max-width:1060px){.two{grid-template-columns:minmax(0,1fr)}.ll{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.ll,.guar.three{grid-template-columns:minmax(0,1fr)}.guar.three div+div{border-left:0}.gt th,.gt td{padding:8px 6px;font-size:.86rem}}

#cookiebar{position:fixed;left:16px;right:16px;bottom:16px;z-index:50;max-width:620px;margin:0 auto;display:flex;gap:16px;align-items:center;justify-content:space-between;padding:14px 16px;background:#fff;color:var(--ink);border-top:3px solid var(--orange);box-shadow:0 6px 24px rgba(0,0,0,.35);font-size:.92rem;line-height:1.4}
#cookiebar p{margin:0}#cookiebar a{color:var(--ink)}.cb-btns{display:flex;gap:8px;flex:none}
#cookiebar button{padding:9px 16px;border:1px solid var(--ink);background:var(--ink);color:#fff;font:600 .9rem var(--text);cursor:pointer}
@media (max-width:560px){#cookiebar{flex-direction:column;align-items:stretch}.cb-btns button{flex:1}}
