.rooftop-page{--roof-ink:#14263e;--roof-muted:#627484;--roof-red:#c63234;--roof-mist:#f4f8fa}.rooftop-page #rooftop-content{overflow:hidden}.rooftop-page section[id]{scroll-margin-top:110px}.rooftop-page #rooftop-content h2{margin:14px 0 0;color:var(--roof-ink);font-size:clamp(35px,3.7vw,55px);font-weight:780;line-height:1.12;letter-spacing:-.05em}.rooftop-page #rooftop-content h3{color:var(--roof-ink)}.rooftop-page #rooftop-content p{line-height:1.75}
.rooftop-hero{overflow:hidden;background:linear-gradient(120deg,#11223f,#16446c);color:#fff}.rooftop-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:5%;align-items:center;padding-top:145px;padding-bottom:80px}.rooftop-hero-copy{position:relative;z-index:1}.rooftop-hero h1{max-width:680px;margin:25px 0 22px;color:#fff;font-size:clamp(52px,5.8vw,87px);font-weight:350;line-height:1.03;letter-spacing:-.06em}.rooftop-hero h1 strong{color:#b7e7f0;font-weight:830}.rooftop-hero-copy>p{max-width:540px;margin:0;color:#dae7ee;font-size:17px;line-height:1.75}.rooftop-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:27px;margin-top:33px}.rooftop-hero-link{padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.6);color:#fff;font-weight:750;text-decoration:none}.rooftop-hero-link:hover{color:#a8e0ed}.rooftop-hero-link span{margin-left:7px}.rooftop-hero-signoff{display:block;margin-top:65px;color:#a8c8d7;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.rooftop-hero-image{position:relative;min-width:0;min-height:440px;border-radius:30px 30px 95px 30px;overflow:hidden;box-shadow:0 30px 70px rgba(5,19,35,.23)}.rooftop-hero-image img{display:block;width:100%;height:440px!important;object-fit:cover}.rooftop-hero-badge{position:absolute;right:24px;bottom:23px;display:flex;align-items:center;gap:10px;padding:15px 18px;border:1px solid rgba(255,255,255,.3);border-radius:15px;background:rgba(13,36,61,.82);backdrop-filter:blur(8px)}.rooftop-hero-badge strong{color:#bceaf0;font-size:40px;line-height:1}.rooftop-hero-badge span{color:#fff;font-size:11px;font-weight:800;line-height:1.4;letter-spacing:.05em;text-transform:uppercase}
.rooftop-story{padding:105px 0;background:#fff}.rooftop-story-grid{display:grid;grid-template-columns:1fr .92fr;gap:9%}.rooftop-story-grid>div:nth-child(2)>p{margin:0 0 18px;color:var(--roof-muted);font-size:16px}.rooftop-story-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.rooftop-story-tags span{padding:9px 12px;border:1px solid #dbe8ef;border-radius:999px;background:#f6fafc;color:#2a6c8e;font-size:11px;font-weight:800}
.rooftop-systems{padding:105px 0 115px;background:var(--roof-mist)}.rooftop-section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:38px}.rooftop-section-head>div{max-width:720px}.rooftop-section-head>p{max-width:340px;margin:0 0 5px;color:var(--roof-muted);font-size:15px}.rooftop-systems-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.rooftop-systems-grid article{display:flex;flex-direction:column;padding:30px;border:1px solid #dfe9ef;border-radius:24px;background:#fff;box-shadow:0 15px 35px rgba(20,50,80,.055);transition:transform .3s,box-shadow .3s}.rooftop-systems-grid article:hover{transform:translateY(-5px);box-shadow:0 24px 45px rgba(20,50,80,.12)}.rooftop-system-no{color:var(--roof-red);font-size:11px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.rooftop-systems-grid h3{margin:40px 0 12px;font-size:25px;line-height:1.2}.rooftop-systems-grid p{margin:0 0 23px;color:var(--roof-muted);font-size:14px}.rooftop-systems-grid ul{display:grid;gap:10px;margin:auto 0 0;padding:18px 0 0;list-style:none;border-top:1px solid #e2ecf0}.rooftop-systems-grid li{position:relative;padding-left:18px;color:#3a566d;font-size:13px;line-height:1.5}.rooftop-systems-grid li:before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--roof-red)}.rooftop-section-note{margin:20px 0 0;color:#71818e;font-size:12px}
.rooftop-market{padding:115px 0;background:linear-gradient(135deg,#112341,#174366);color:#fff}.rooftop-market-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:9%;align-items:center}.rooftop-market h2{color:#fff!important}.rooftop-market p{max-width:620px;color:#c8dce8;font-size:16px}.rooftop-market-chart{display:flex;align-items:end;gap:35px;height:220px;margin-top:30px;padding:0 0 24px;border-bottom:1px solid rgba(255,255,255,.28)}.rooftop-market-chart>div{display:grid;grid-template-rows:auto 1fr;gap:8px;align-items:end;width:100px;height:100%}.rooftop-market-chart>div>span{align-self:end;color:#bad9e9;font-size:12px;font-weight:800}.rooftop-market-chart b{display:flex;align-items:end;justify-content:center;width:100%;height:var(--bar);padding-bottom:14px;background:linear-gradient(#ec5f60,#be2e32);font-size:14px;white-space:nowrap}.rooftop-market small{display:block;margin-top:15px;color:#a7c4d4;font-size:11px}.rooftop-market-facts{display:grid;gap:12px}.rooftop-market-facts article{display:grid;gap:7px;padding:25px 28px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(255,255,255,.08)}.rooftop-market-facts strong{color:#fff;font-size:30px;line-height:1.1}.rooftop-market-facts span{color:#c7dce8;font-size:13px}
.rooftop-economics{padding:115px 0;background:#fff}.rooftop-economics-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.rooftop-price-card{min-width:0;padding:35px;border-radius:25px;background:#be3035;color:#fff}.rooftop-price-card--light{background:#edf5f8;color:var(--roof-ink)}.rooftop-price-card>span{display:block;font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.rooftop-price-card>strong{display:block;margin:32px 0 15px;font-size:clamp(28px,3.3vw,45px);line-height:1.1;letter-spacing:-.04em}.rooftop-price-card strong small{font-size:.4em;letter-spacing:0}.rooftop-price-card p{max-width:470px;margin:0;font-size:14px;color:inherit;opacity:.88}.rooftop-economics-foot{display:flex;justify-content:space-between;gap:45px;padding-top:24px}.rooftop-economics-foot div{display:grid;gap:6px;flex:none}.rooftop-economics-foot strong{color:var(--roof-ink);font-size:14px}.rooftop-economics-foot span,.rooftop-economics-foot p{color:var(--roof-muted);font-size:12px}.rooftop-economics-foot p{max-width:470px;margin:0}
.rooftop-community{padding:100px 0;background:#f1f7f9}.rooftop-community-grid{display:grid;grid-template-columns:.9fr 1fr;gap:9%;align-items:center}.rooftop-community-image img{display:block;width:100%;height:570px!important;object-fit:cover;border-radius:26px 90px 26px 26px}.rooftop-community-grid>div:nth-child(2)>p{color:var(--roof-muted);font-size:15px}.rooftop-community ul{display:grid;gap:12px;margin:26px 0;padding:0;list-style:none}.rooftop-community li{padding-left:23px;position:relative;color:#294960;font-weight:700;font-size:14px}.rooftop-community li:before{content:"";position:absolute;left:0;top:.5em;width:8px;height:8px;border-radius:50%;background:var(--roof-red)}.rooftop-muted{color:#718392!important;font-size:12px!important}
.rooftop-policy{padding:110px 0;background:#fff}.rooftop-policy-list{display:grid;gap:0}.rooftop-policy-list article{display:grid;grid-template-columns:92px 1fr;gap:30px;padding:23px 0;border-top:1px solid #d9e4ea}.rooftop-policy-list article:last-child{border-bottom:1px solid #d9e4ea}.rooftop-policy-list article>span{align-self:start;padding:8px;border-radius:5px;background:var(--roof-red);color:#fff;text-align:center;font-size:11px;font-weight:850;letter-spacing:.08em}.rooftop-policy-list h3{margin:0 0 7px;font-size:20px}.rooftop-policy-list p{max-width:900px;margin:0;color:var(--roof-muted);font-size:14px}
.rooftop-finance{padding:100px 0;background:#bc2f34;color:#fff}.rooftop-finance-grid{display:grid;grid-template-columns:1fr .85fr;gap:10%;align-items:center}.rooftop-finance h2{color:#fff!important}.rooftop-finance p{max-width:620px;margin:20px 0 25px;color:#ffebeb;font-size:16px}.rooftop-finance ol{display:grid;gap:0;margin:0;padding:0;list-style:none}.rooftop-finance li{display:flex;align-items:center;gap:22px;padding:22px 0;border-top:1px solid rgba(255,255,255,.45);font-size:17px;font-weight:750}.rooftop-finance li:last-child{border-bottom:1px solid rgba(255,255,255,.45)}.rooftop-finance li span{color:#ffd5d5;font-size:12px;font-weight:850}.rooftop-finance .button{background:#fff;color:#a9252a;border-color:#fff}.rooftop-finance .button:hover{background:#ecf5f7}
.rooftop-capacity{padding:110px 0;background:#f4f8fa}.rooftop-capacity-grid{display:grid;grid-template-columns:1fr .9fr;gap:9%;align-items:center}.rooftop-capacity-grid p{color:var(--roof-muted);font-size:15px}.rooftop-capacity-visual{padding:45px;border-radius:25px;background:#132643;color:#fff}.rooftop-capacity-visual>span{color:#92c4d8;font-size:11px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.rooftop-capacity-visual>strong{display:block;margin:20px 0 26px;font-size:clamp(62px,6vw,86px);line-height:1;letter-spacing:-.06em}.rooftop-capacity-visual strong small{font-size:.32em}.rooftop-capacity-track{height:16px;border-radius:99px;background:#507189;overflow:hidden}.rooftop-capacity-track span{display:block;width:37%;height:100%;border-radius:99px;background:#d54349}.rooftop-capacity-labels{display:flex;justify-content:space-between;gap:20px;margin-top:12px;color:#b8cfda;font-size:11px;font-weight:700}
.rooftop-storage{padding:110px 0;background:#fff}.rooftop-storage-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;align-items:center}.rooftop-storage-image img{display:block;width:100%;height:680px!important;object-fit:cover;border-radius:25px 85px 25px 25px}.rooftop-storage-grid>div:nth-child(2)>p{color:var(--roof-muted);font-size:15px}.rooftop-storage-benefits{display:flex;flex-wrap:wrap;gap:8px;margin:23px 0}.rooftop-storage-benefits span{padding:8px 11px;border-radius:99px;background:#edf5f8;color:#286483;font-size:11px;font-weight:800}.rooftop-storage-specs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rooftop-storage-specs article{padding:21px;border:1px solid #dde9ee;border-radius:18px;background:#f7fafb}.rooftop-storage-specs span{color:#b33037;font-size:10px;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.rooftop-storage-specs strong{display:block;margin:9px 0;color:var(--roof-ink);font-size:29px}.rooftop-storage-specs p{margin:0;color:var(--roof-muted);font-size:12px}
.rooftop-care{padding:110px 0;background:#f1f7f9}.rooftop-care-grid{display:grid;grid-template-columns:1fr .85fr;gap:9%;align-items:center}.rooftop-care-grid>div:first-child>p{color:var(--roof-muted);font-size:15px}.rooftop-care ul{display:grid;gap:13px;margin:27px 0 0;padding:0;list-style:none}.rooftop-care li{position:relative;padding-left:24px;color:#294960;font-size:14px;font-weight:700}.rooftop-care li:before{content:"✓";position:absolute;left:0;color:#c43339}.rooftop-care-image img{display:block;width:100%;height:440px!important;object-fit:cover;border-radius:25px}
.rooftop-cta{padding:90px 0 180px;background:#fff}.rooftop-cta-panel{position:relative;overflow:hidden;padding:70px 7%;border-radius:32px;background:linear-gradient(120deg,#102943,#14516d);color:#fff}.rooftop-cta-panel:after{content:"";position:absolute;right:-130px;top:-170px;width:500px;height:500px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 80px rgba(255,255,255,.035),0 0 0 160px rgba(255,255,255,.025)}.rooftop-cta h2{position:relative;z-index:1;max-width:850px;color:#fff!important}.rooftop-cta p{position:relative;z-index:1;max-width:650px;margin:20px 0 28px;color:#d4e7ef;font-size:16px}.rooftop-cta-panel>div{position:relative;z-index:1;display:flex;align-items:center;flex-wrap:wrap;gap:26px}.rooftop-cta-panel>div>a:last-child{color:#fff;font-weight:750;text-decoration:underline;text-underline-offset:4px}.rooftop-cta small{display:block;position:relative;z-index:1;max-width:650px;margin-top:30px;color:#aac7d3;font-size:11px}
@media(max-width:1000px){.rooftop-hero-grid,.rooftop-market-grid,.rooftop-community-grid,.rooftop-storage-grid{gap:5%}.rooftop-systems-grid{gap:12px}.rooftop-systems-grid article{padding:22px}.rooftop-storage-image img{height:580px!important}}
@media(max-width:800px){.rooftop-hero-grid,.rooftop-story-grid,.rooftop-market-grid,.rooftop-community-grid,.rooftop-finance-grid,.rooftop-capacity-grid,.rooftop-storage-grid,.rooftop-care-grid{grid-template-columns:1fr;gap:38px}.rooftop-hero-grid{padding-top:145px}.rooftop-hero-signoff{margin-top:35px}.rooftop-systems-grid{grid-template-columns:1fr}.rooftop-systems-grid h3{margin-top:20px}.rooftop-section-head{align-items:start;flex-direction:column;gap:15px}.rooftop-community-image img{height:420px!important}.rooftop-storage-image img{height:460px!important}.rooftop-care-image img{height:360px!important}}
@media(max-width:600px){.rooftop-hero-grid{padding-top:125px;padding-bottom:55px}.rooftop-hero h1{font-size:clamp(45px,11vw,65px)}.rooftop-hero-copy>p{font-size:15px}.rooftop-hero-actions .button{width:100%;justify-content:center}.rooftop-hero-image{min-height:260px}.rooftop-hero-image img{height:290px!important}.rooftop-hero-badge{right:15px;bottom:15px}.rooftop-story,.rooftop-systems,.rooftop-market,.rooftop-economics,.rooftop-community,.rooftop-policy,.rooftop-finance,.rooftop-capacity,.rooftop-storage,.rooftop-care{padding:75px 0}.rooftop-page #rooftop-content h2{font-size:clamp(32px,9vw,43px)}.rooftop-economics-grid,.rooftop-storage-specs{grid-template-columns:1fr}.rooftop-economics-foot{flex-direction:column;gap:15px}.rooftop-policy-list article{grid-template-columns:1fr;gap:12px}.rooftop-community-image img{height:380px!important}.rooftop-storage-image img{height:450px!important}.rooftop-capacity-visual{padding:30px}.rooftop-cta{padding:45px 0 145px}.rooftop-cta-panel{padding:49px 25px;border-radius:24px}.rooftop-cta-panel>div .button{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.rooftop-systems-grid article{transition:none}.rooftop-systems-grid article:hover{transform:none}}
