html:has(.solar-costs-page){scroll-behavior:auto}
.solar-costs-page{--ink:#142a41;--text:#4f5a66;--blue:#2457b8;--pale:#f4f7fb;--line:#dce3eb}
.solar-costs-page .costs-hero{min-height:400px}
.solar-costs-page .costs-hero .inner-copy{padding-block:52px}
.solar-costs-page .costs-hero .inner-image{overflow:hidden;background-position:center 45%}
.solar-costs-page .costs-hero .inner-image img{width:100%;height:100%;object-fit:cover;object-position:center 45%}
.solar-costs-page .costs-hero .inner-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,42,65,.97),rgba(20,42,65,.68));pointer-events:none}
.solar-costs-page .costs-hero h1{max-width:760px;font-size:clamp(2.6rem,5vw,4.5rem)}
.solar-costs-page .costs-hero .lead{max-width:670px}
.costs-section{padding:clamp(52px,6vw,78px) 0}
.costs-shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.section-kicker{margin:0 0 10px;color:var(--blue);font-size:.76rem;font-weight:800;letter-spacing:.12em;line-height:1.3;text-transform:uppercase}
.costs-content{color:var(--ink)}
.costs-content h2{max-width:760px;margin:0 0 18px;font-size:clamp(1.9rem,3.2vw,2.7rem);font-weight:500;letter-spacing:-.035em;line-height:1.08}
.costs-content h3{margin:0 0 8px;font-size:1.08rem;line-height:1.3}
.costs-content p{color:var(--text);font-size:1rem;line-height:1.6}
.price-answer{padding-top:clamp(46px,5vw,66px)}
.section-intro{max-width:850px;margin:0 0 30px;color:var(--ink)!important;font-size:clamp(1.1rem,1.6vw,1.25rem)!important;line-height:1.5!important}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.price-card{min-width:0;padding:25px 24px 27px;border:1px solid var(--line);border-top:4px solid #9cacbf;background:#fff}
.price-card.featured{border-top-color:var(--blue);background:var(--pale)}
.price-card .price{margin:0 0 12px;color:var(--blue);font-size:clamp(1.65rem,2.5vw,2.15rem);font-weight:750;letter-spacing:-.035em;line-height:1.1}
.price-card p:last-child{margin-bottom:0;font-size:.94rem}
.price-note{max-width:900px;margin:20px 0 0;padding-left:16px;border-left:3px solid var(--blue);font-size:.92rem!important}
.why-section,.use-section,.faq-section{background:var(--pale)}
.why-layout,.checklist-layout,.use-layout,.faq-layout{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(42px,8vw,110px);align-items:start}
.why-layout>div>p:last-child,.checklist-layout>div>p:last-child,.use-layout>div>p:last-child{margin-bottom:0}
.factor-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:0;padding:0;border-top:1px solid var(--line);list-style:none}
.factor-list li{padding:16px 0;border-bottom:1px solid var(--line);color:var(--text);line-height:1.5}
.factor-list strong{color:var(--ink)}
.equipment-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(38px,7vw,88px);align-items:center}
.equipment-image{margin:0}
.equipment-image img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.equipment-image figcaption{margin-top:9px;color:#6a7480;font-size:.82rem}
.choice-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:28px}
.choice-row>div{padding-top:15px;border-top:3px solid #afbdd0}
.choice-row>div:last-child{border-color:var(--blue)}
.choice-row p{margin-bottom:0;font-size:.94rem}
.checklist-section{border-block:1px solid var(--line)}
.checklist-section .text-link{display:inline-block;margin-top:10px}
.quote-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;border-top:1px solid var(--line);list-style:none}
.quote-checklist li{position:relative;min-width:0;padding:15px 10px 15px 28px;border-bottom:1px solid var(--line);color:var(--ink);font-size:.92rem;font-weight:650;line-height:1.35}
.quote-checklist li::before{content:"✓";position:absolute;left:2px;color:var(--blue);font-weight:800}
.use-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;border-top:1px solid #bcc8d6}
.use-summary p{margin:0;padding:15px 0;border-bottom:1px solid #bcc8d6;font-size:.94rem}
.use-summary strong{display:block;margin-bottom:3px;color:var(--ink)}
.aftercare-band{padding:36px 0;background:#e8eef6}
.aftercare-band-inner{display:grid;grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr);gap:clamp(36px,8vw,100px);align-items:center}
.aftercare-band h2,.aftercare-band p{margin-bottom:0}
.faq-list details{padding:18px 0;border-color:#cfd8e3}
.faq-list details:first-child{padding-top:0;border-top:0}
.faq-list summary{padding-right:30px;color:var(--ink);font-size:1.02rem;line-height:1.4}
.faq-list p{max-width:680px;margin:12px 30px 0 0;font-size:.94rem}
.related-section{background:#fff}
.related-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}
.related-card-grid article{display:flex;flex-direction:column;min-width:0;min-height:185px;padding:24px;border:1px solid var(--line);border-top:3px solid var(--blue)}
.related-card-grid p{margin-bottom:18px;font-size:.93rem}
.related-card-grid a{margin-top:auto;color:var(--blue);font-weight:750;text-decoration:none}
.related-card-grid a:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.solar-costs-page .costs-hero{min-height:380px}.price-grid,.related-card-grid{grid-template-columns:1fr}.price-card,.related-card-grid article{min-height:0}.why-layout,.equipment-layout,.checklist-layout,.use-layout,.faq-layout{grid-template-columns:1fr;gap:30px}}
@media(max-width:600px){.costs-shell{width:min(100% - 30px,1180px)}.solar-costs-page .costs-hero{min-height:350px}.solar-costs-page .costs-hero .inner-copy{padding-block:36px}.solar-costs-page .costs-hero h1{font-size:clamp(2.15rem,10.5vw,2.8rem)}.costs-section{padding:42px 0}.price-answer{padding-top:40px}.price-grid{gap:12px}.price-card{padding:21px 20px 22px}.factor-list,.choice-row,.quote-checklist,.use-summary{grid-template-columns:1fr}.factor-list li,.quote-checklist li,.use-summary p{padding-block:13px}.equipment-image{margin-inline:-15px}.equipment-image figcaption{margin-inline:15px}.aftercare-band{padding:30px 0}.aftercare-band-inner{grid-template-columns:1fr;gap:12px}.related-card-grid{gap:12px}.related-card-grid article{padding:21px 20px}}
