.solution-hero{padding:38px 0 70px;background:linear-gradient(135deg,#f3faff,#fff);overflow:hidden}
.solution-hero .breadcrumb{font-size:13px;color:#557487;margin-bottom:35px}
.solution-hero h1{font-size:clamp(42px,5vw,70px);line-height:1.06;margin:20px 0 25px}
.solution-hero .rs-two{gap:50px}
.solution-photo{margin:0;border-radius:24px;overflow:hidden;background:#0b253b;box-shadow:0 20px 60px #123e581c}
.solution-photo img{width:100%;height:420px;object-fit:cover}
.solution-photo figcaption{padding:18px 23px;color:white;font-size:14px}
.solution-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}
.solution-tags span{font-size:12px;color:#34637d;background:#e5f5ff;border-radius:30px;padding:7px 12px}
.solution-cards{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.solution-card{display:block;padding:35px;border:1px solid #d2e6f1;border-radius:18px;background:#fff;transition:transform .25s,box-shadow .25s}
a.solution-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #09354b12}
.solution-card h3{font-size:30px;margin:10px 0 20px}
.solution-card p{font-size:17px;color:#4d6b7d}
.solution-card .rs-link{display:block;margin-top:15px;width:fit-content}
.earth-reference-links{display:flex;flex-direction:column;gap:18px}
.earth-reference-links a{padding:30px;border:1px solid #c9e4f3;border-radius:14px;background:#fff;transition:border-color .2s}
.earth-reference-links a:hover{border-color:#00a8ff}
.earth-reference-links span{display:block;font-size:11px;letter-spacing:.12em;color:#0080bb;margin-bottom:12px}
.earth-reference-links strong{font-size:23px;line-height:1.3;display:block}
.solar-explainer{padding:25px;background:#e7f4fd;border:1px solid #c5e2f4;border-radius:22px;transition:background .5s}
.solar-view-controls{display:flex;gap:8px;flex-wrap:wrap}
.solar-view-controls button{padding:9px 12px;border:1px solid #abcfe3;border-radius:30px;background:#fff;color:#175475;font-size:13px;font-weight:700}
.solar-view-controls button[aria-pressed=true]{background:#0b253b;color:#fff;border-color:#0b253b}
.solar-explainer svg{width:100%;height:auto;display:block;margin:20px 0}
.solar-explainer text{font:14px Calibri,Arial,sans-serif;text-anchor:middle;fill:#365b70}
.solar-sun{fill:#ffd66b;transition:fill .5s}
.solar-line{fill:none;stroke:#a2c8db;stroke-width:5}
.solar-flow,.solar-return{fill:none;stroke:#00a8ff;stroke-width:5;stroke-dasharray:10 12;animation:solution-flow 1.7s linear infinite}
.solar-return{opacity:0}
.solar-explainer[data-period=evening]{background:#d5e4f2}
.solar-explainer[data-period=evening] .solar-sun{fill:#f8fbff}
.solar-explainer[data-period=evening] .solar-flow{opacity:0}
.solar-explainer[data-period=evening] .solar-return{opacity:1}
.solar-explainer[data-paused=true] *{animation-play-state:paused!important}
.solar-explainer p{font-size:16px;margin-bottom:8px;min-height:3.3em;color:#284f68}
.solar-explainer small{font-size:11px;line-height:1.5;color:#56758a;display:block}
.energy-solution .v3-contact{scroll-margin-top:110px}
.energy-solution .v3-contact .v2-section-head{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;margin-bottom:35px}
.energy-solution .v3-contact h2 span{color:#0088ce}
.energy-solution .v3-direct h3{color:#0b253b;font-size:30px;margin:20px 0 15px}
.energy-solution .v3-full{grid-column:1/-1}
.solution-reveals .solution-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .6s}
.solution-reveals .solution-reveal.is-visible{opacity:1;transform:none}
@keyframes solution-flow{to{stroke-dashoffset:-44}}
@media(max-width:750px){.solution-hero{padding:25px 0 45px}.solution-hero .rs-two,.solution-cards{grid-template-columns:1fr;gap:25px}.solution-photo img{height:300px}.solution-card{padding:27px}.solar-explainer{padding:20px}.energy-solution .v3-contact .v2-section-head{grid-template-columns:1fr;gap:10px}.solution-card .btn{width:100%;gap:10px;text-align:center}}
@media(prefers-reduced-motion:reduce){.solar-explainer *{animation:none!important;transition:none!important}.solution-reveals .solution-reveal{opacity:1;transform:none}.solution-card{transition:none}}
