/* Campaign-specific editorial pages; corporate styles remain unchanged. */
body:has(.lp-page){--lp-accent:#d6f68c;--lp-tint:#f2f7e9;--lp-deep:#263f15;padding-top:0}
body:has(.lp-buildflo){--lp-accent:#a8e5fb;--lp-tint:#edf6fb;--lp-deep:#164862}
body:has(.lp-solar){--lp-accent:#ffdc8a;--lp-tint:#fff7e6;--lp-deep:#705118}
.lp-page{overflow:clip;font-size:1rem}
.lp-page .wrap{width:min(1200px,90%)}
.lp-page .wrap>*{min-width:0}
.lp-page h1,.lp-page h2,.lp-page h3{letter-spacing:0;overflow-wrap:anywhere}
.lp-page p{margin:0 0 1rem;line-height:1.9}
.lp-page h3{font-size:1.2rem;line-height:1.65;margin:0 0 .8rem}
.lp-page a:focus-visible,.lp-page summary:focus-visible{outline:3px solid #4e8297;outline-offset:5px}
.lp-header{position:sticky!important;top:0;z-index:50}
.lp-header .header-inner{height:auto;min-height:88px;padding:12px 0;width:min(1320px,92%)}
.lp-header .nav{gap:24px;font-size:.875rem}
.lp-header .nav-cta{background:var(--lp-accent);color:var(--navy);border-color:var(--lp-accent)}
.lp-header .nav-cta:hover{background:white;color:var(--navy)!important}
.lp-page [id]{scroll-margin-top:calc(var(--header-height,88px) + 20px)}
.lp-button{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;min-height:60px;padding:17px 24px;background:var(--lp-accent);color:var(--navy);font-size:1rem;font-weight:700;line-height:1.5;border-radius:6px;box-shadow:0 3px 0 #0002;transition:background .15s}
.lp-button:hover{background:white;color:var(--navy);outline:1px solid var(--navy)}
.lp-button>span{font-size:1.5rem;flex-shrink:0}
.lp-hero-more{display:block;width:fit-content;color:#e4edf3;font-size:.875rem;margin-top:18px;text-decoration:underline;text-underline-offset:5px;padding:8px 0}
.lp-hero-more:hover{color:var(--lp-accent)}
.lp-explore-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.lp-explore-grid>a{display:block;padding:28px;border:1px solid #b7c8d1;border-radius:6px;background:#f5f7f8}
.lp-explore-grid>a:hover{background:var(--lp-tint);border-color:var(--lp-deep)}
.lp-explore-grid span{font-size:.875rem;color:var(--lp-deep)}
.lp-explore-grid h3{margin:10px 0 14px}
.lp-explore-grid p{color:#536775}
.lp-explore-grid strong{font-size:1rem;text-decoration:underline;text-underline-offset:5px}
.lp-explore-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:24px;font-size:1rem}
.lp-explore-bottom a{padding:8px 0;text-decoration:underline;text-underline-offset:5px}
@media(max-width:800px){.lp-explore-grid{grid-template-columns:1fr;gap:16px}.lp-explore-grid>a{padding:22px}}
.lp-small{font-size:.875rem!important;line-height:1.8!important;color:#536775}
.lp-hero{background:var(--navy);color:white;padding:48px 0 0}
.lp-hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;align-items:center}
.lp-audience{font-size:.875rem;color:var(--lp-accent)}
.lp-product{font-size:1.2rem;font-weight:600}
.lp-hero h1{font-size:clamp(1.8rem,2.9vw,2.8rem);font-weight:700;line-height:1.6;margin:0 0 23px}
.lp-hero h1 em{font-style:normal;color:var(--lp-accent)}
.lp-lead{color:#d8e4eb;max-width:36em}
.lp-tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:22px 0;padding:0}
.lp-tags li{font-size:.875rem;border:1px solid #78909e;padding:4px 10px;border-radius:3px}
.lp-hero .lp-small{color:#c2d1da;margin-top:16px}
.lp-hero-media{position:relative;margin:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;background:#142e3e;border-radius:8px;overflow:hidden}
.lp-hero-media img{width:100%;aspect-ratio:16/12;object-fit:cover;height:auto}
.lp-hero-media figcaption{padding:22px 25px 20px;border-left:4px solid var(--lp-accent)}
.lp-hero-media figcaption>span{font-size:.8rem;letter-spacing:.12em;color:var(--lp-accent)}
.lp-hero-media strong{display:block;font-size:1.65rem;line-height:1.5;margin:8px 0 16px}
.lp-hero-media small{display:block;color:#c2d1da;font-size:.8rem;line-height:1.65}
.lp-service-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:38px 0 0;padding:0;border-top:1px solid #466071}
.lp-service-rail li{padding:22px 18px;display:flex;align-items:center;gap:14px;font-size:1rem}
.lp-service-rail li+li{border-left:1px solid #466071}
.lp-service-rail span{font-size:1.35rem;color:var(--lp-accent)}
.lp-section{padding:64px 0}
.lp-heading{margin-bottom:28px}
.lp-heading h2{font-size:clamp(1.65rem,2.7vw,2.3rem);line-height:1.6;font-weight:700;margin:12px 0 20px}
.lp-kicker{font-size:.875rem!important;font-weight:700;color:var(--lp-deep);letter-spacing:.06em}
.lp-kicker:before{content:'';display:inline-block;width:20px;height:3px;background:currentColor;margin-right:10px;vertical-align:middle}
.lp-heading>p:not(.lp-kicker){color:#536775;max-width:52em}
.lp-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.lp-cards article{padding:26px;border:1px solid #dce4e9;background:white;border-radius:6px}
.lp-cards p{color:#536775;margin-bottom:0}
.lp-number{font-size:1.5rem;color:#6d8190;display:block;margin-bottom:14px;font-weight:500}
.lp-problems{background:#f5f7f8}
.lp-section-split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.lp-section-split>p{color:#536775}
.lp-feature-cards article{border:0;background:var(--lp-tint);border-top:4px solid var(--lp-accent)}
.lp-feature-cards .lp-number{color:var(--lp-deep)}
.lp-scope{padding:18px 20px;border-left:3px solid #91a0aa;background:#f5f7f8;color:#536775;font-size:.875rem;margin:24px 0 0!important}
.lp-film{background:var(--navy);color:#fff}
.lp-film-grid{display:grid;grid-template-columns:.85fr 1.4fr;gap:40px;align-items:center}
.lp-film .lp-kicker{color:var(--lp-accent)}
.lp-film .lp-heading>p:not(.lp-kicker),.lp-film .lp-small{color:#c5d7e3}
.lp-film video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#000;border:1px solid #536775;border-radius:6px}
.lp-film video+.lp-small{margin:12px 0}
.lp-film-label{font-weight:600;color:var(--lp-accent)}
.lp-transcript{font-size:.875rem;border-top:1px solid #536775;padding-top:12px}
.lp-transcript summary{cursor:pointer;padding:8px 0}
.lp-transcript p{margin-top:12px}
.lp-band{background:var(--lp-tint);padding:28px 0;border-bottom:1px solid #dae3e7}
.lp-band>.wrap{display:flex;align-items:center;justify-content:space-between;gap:26px}
.lp-band p{font-size:1.25rem;font-weight:700;margin-bottom:4px}
.lp-band span{font-size:.875rem}
.lp-band .lp-button{flex-shrink:0}
.lp-delivery-grid{display:grid;grid-template-columns:.9fr 1.4fr;gap:24px}
.lp-inputs{background:var(--navy);color:white;padding:30px;border-radius:6px}
.lp-inputs ul{padding-left:22px;margin:24px 0}
.lp-inputs li{margin-bottom:14px}
.lp-inputs p{font-size:.875rem;color:#c5d7e3}
.lp-outputs{background:var(--lp-tint);padding:28px 30px;border-radius:6px}
.lp-outputs article{padding:14px 0;border-top:1px solid #b7c8cf}
.lp-outputs h3{margin-bottom:6px;font-size:1.1rem}
.lp-outputs article p{margin-bottom:0;color:#536775}
.lp-sheet{border:1px solid #c8d7df;border-radius:6px;margin-top:28px;overflow:hidden}
.lp-sheet-title{background:#edf2f5;padding:16px 24px;display:flex;justify-content:space-between;gap:16px;align-items:center}
.lp-sheet-title span{font-size:.875rem;color:#536775;white-space:nowrap}
.lp-table-scroll{overflow:auto}
.lp-sheet table{width:100%;border-collapse:collapse;font-size:1rem;min-width:490px}
.lp-sheet th,.lp-sheet td{padding:17px 24px;border-bottom:1px solid #dce4e9;text-align:left}
.lp-sheet th{font-size:.875rem;background:#f8fafb}
.lp-sheet>p{padding:16px 24px;margin:0;font-size:.875rem;color:#536775}
.lp-approach{background:#f3f6f7}
.lp-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.lp-compare-grid article{padding:28px;background:white;border:1px solid #dce4e9;border-radius:6px}
.lp-compare-grid article:last-child{background:var(--lp-tint);border-top:4px solid var(--lp-accent)}
.lp-compare-grid ul{padding-left:22px;margin-bottom:0}
.lp-compare-grid li{margin-top:14px}
.lp-approach .lp-small{margin-top:18px}
.lp-process-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:start}
.lp-process{list-style:none;padding:0;margin:0}
.lp-process li{display:flex;gap:20px;padding:23px 0;border-top:1px solid #dce4e9}
.lp-process li>span{font-size:1.4rem;font-weight:600;color:var(--lp-deep)}
.lp-process h3{margin:0 0 8px;font-size:1.1rem}
.lp-process p{margin:0;color:#536775}
.lp-price{padding:30px;background:var(--lp-tint);border-radius:6px}
.lp-price h3{font-size:1.5rem}
.lp-price hr{border:0;border-top:1px solid #bacbd1;margin:24px 0}
.lp-price ul{padding-left:22px}
.lp-price .lp-button{width:100%;margin:16px 0}
.lp-faq{background:#f3f6f7}
.lp-faq-grid{display:grid;grid-template-columns:.8fr 1.3fr;gap:50px}
.lp-faq .faq summary{font-size:1rem;line-height:1.8}
.lp-faq .faq p{font-size:1rem;line-height:1.9;color:#536775}
.lp-contact{background:var(--navy);color:#fff}
.lp-contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:50px;align-items:start}
.lp-contact .lp-kicker{color:var(--lp-accent)}
.lp-contact-points{padding-left:22px;margin:24px 0;color:#d7e3eb}
.lp-contact-points li{margin:14px 0}
.lp-contact-direct{border-top:1px solid #536775;padding-top:24px;margin-top:32px}
.lp-contact-direct p{font-size:.875rem;color:#c5d7e3}
.lp-contact-direct a{display:block;font-size:1.6rem}
.lp-contact-direct a[href^="mailto"]{font-size:.95rem;overflow-wrap:anywhere}
.lp-form-box{padding:30px;background:white;color:var(--ink);border-radius:8px}
.lp-form-box>p{font-size:.875rem;color:#536775}
.lp-form-box .form-row{margin-bottom:20px}
.lp-form-box .form-row input,.lp-form-box select,.lp-form-box textarea{width:100%;font-size:1rem;border:1px solid #aebfc9}
.lp-form-box label,.lp-form-box .form-note,.lp-form-box .form-status{font-size:.875rem}
.lp-form-box textarea{min-height:110px}
.lp-form-box .btn{background:var(--lp-accent);border-color:var(--lp-accent);color:var(--navy);width:100%;font-size:1rem;border-radius:6px}
.lp-form-box .form-consent{align-items:start}
.lp-form-box .form-consent input{flex-shrink:0}
.lp-company{padding:36px 0;border-bottom:1px solid #dce4e9}
.lp-company>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}
.lp-company>.wrap>p{font-size:1.35rem;font-weight:700}
.lp-company strong{font-size:1.1rem}
.lp-company div p,.lp-company a{font-size:.875rem}
.lp-company a{text-decoration:underline;text-underline-offset:4px}
.lp-footer{padding:24px 0;background:#f3f6f7;font-size:.875rem}
.lp-footer>.wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.lp-footer nav{display:flex;gap:24px;flex-wrap:wrap}
.lp-sticky-cta{display:none}
@media(max-width:1050px){
 .lp-header .nav{gap:15px}.lp-hero-grid{gap:24px;grid-template-columns:1.1fr 1fr}
 .lp-hero h1{font-size:1.9rem}.lp-hero-media img{aspect-ratio:1}
 .lp-cards article{padding:20px}.lp-film-grid{grid-template-columns:1fr 1.3fr;gap:24px}
 .lp-band>.wrap{align-items:start;flex-direction:column}
}
@media(max-width:800px){
 body:has(.lp-page){padding-bottom:calc(88px + env(safe-area-inset-bottom))}
 .lp-header .header-inner{min-height:76px;padding:10px 0}
 .lp-header .nav.is-open{max-height:calc(100dvh - var(--header-height,76px) - 88px);overflow-y:auto}
 .lp-hero{padding:30px 0 0}.lp-hero-grid{grid-template-columns:1fr;gap:26px}
 .lp-hero h1{font-size:clamp(1.6rem,5.5vw,2.4rem);margin-bottom:16px}
 .lp-audience{font-size:.875rem}.lp-hero-copy>.lp-button{width:100%}
 .lp-tags{margin:18px 0}.lp-tags li{font-size:.875rem}
 .lp-hero-media img{aspect-ratio:16/9}.lp-hero-media figcaption{padding:16px 20px}
 .lp-hero-media strong{font-size:1.3rem;margin:5px 0 10px}
 .lp-service-rail{margin-top:24px;grid-template-columns:1fr}
 .lp-service-rail li{padding:12px 0;font-size:1rem}.lp-service-rail li+li{border-left:0;border-top:1px solid #466071}
 .lp-service-rail span{font-size:1.1rem}
 .lp-section{padding:42px 0}.lp-heading{margin-bottom:22px}.lp-heading h2{font-size:1.7rem}
 .lp-cards,.lp-section-split,.lp-film-grid,.lp-delivery-grid,.lp-compare-grid,.lp-process-grid,.lp-faq-grid,.lp-contact-grid,.lp-company>.wrap{grid-template-columns:1fr;gap:20px}
 .lp-cards{gap:14px}.lp-number{font-size:1.2rem;margin-bottom:8px}
 .lp-section-split{gap:0}.lp-film-grid{gap:18px}.lp-film .lp-heading{margin-bottom:16px}
 .lp-band .lp-button{width:100%}.lp-band p{font-size:1.1rem}
 .lp-sheet-title{padding:16px;flex-wrap:wrap;gap:4px}.lp-sheet th,.lp-sheet td{padding:14px 16px}
 .lp-sheet>p{padding:16px}.lp-inputs,.lp-outputs,.lp-compare-grid article,.lp-price,.lp-form-box{padding:22px}
 .lp-price h3{font-size:1.3rem}.lp-process li{padding:18px 0}
 .lp-faq-grid{gap:0}.lp-faq .faq p{margin-right:8px}
 .lp-contact-grid{gap:28px}.lp-company{padding:28px 0}.lp-company>.wrap{gap:8px}
 .lp-sticky-cta{display:flex;align-items:stretch;gap:10px;position:fixed;inset:auto 0 0;background:white;border-top:1px solid #dce4e9;padding:10px 4% max(10px,env(safe-area-inset-bottom));z-index:40;box-shadow:0 -3px 20px #06182515}
 .lp-sticky-cta .lp-button{flex:1;min-width:0;min-height:58px;font-size:.875rem;padding:12px 14px;gap:8px}
 .lp-phone{display:flex;align-items:center;justify-content:center;flex:0 0 78px;border:1px solid #9aadb8;border-radius:6px;font-size:.875rem}
}
@media(prefers-reduced-motion:reduce){.lp-page a{transition:none}html:has(.lp-page){scroll-behavior:auto}}
