:root{font:16px Inter,Aptos,"Segoe UI",system-ui,sans-serif;color:#17352d;background:#faf9f5;font-synthesis:none;--green:#08795c;--muted:#62716b;--line:#dde4db}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:40px}body{margin:0}a{color:inherit;text-decoration:none}.wrap{max-width:1250px;margin:auto;padding-left:44px;padding-right:44px}.header{height:112px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;font-size:25px;font-weight:760;letter-spacing:-1px;white-space:nowrap}.brand span:not(.sun){color:var(--green)}.brand .sun{font-size:42px;color:#c99b3c;margin-right:8px;font-weight:400}nav{display:flex;gap:30px;font-size:14px}nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:var(--green);color:white;font-weight:650;font-size:14px;padding:17px 24px;border-radius:8px;min-height:52px;box-shadow:0 3px 7px #15372e0a;transition:background .15s,transform .15s}.button:hover{background:#065c46;transform:translateY(-1px)}.compact{padding:13px 19px;min-height:44px}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px;padding-top:75px;padding-bottom:110px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:1.8px}.dot{display:inline-block;width:6px;height:6px;background:#15916b;border-radius:50%;vertical-align:middle;margin-right:7px}h1{font-size:clamp(46px,5.1vw,68px);font-weight:650;line-height:1.08;letter-spacing:-3px;margin:27px 0}h1 em{font-weight:550;font-family:Georgia,serif;color:var(--green)}p{line-height:1.7}.lead{font-size:17px;color:var(--muted);max-width:460px}.actions{display:flex;align-items:center;gap:24px;margin-top:30px}.text-link{font-size:13px;font-weight:600}.small{font-size:12px;color:var(--muted);margin-top:22px}.energy-scene{background:#fff;border:1px solid var(--line);padding:26px;border-radius:24px;box-shadow:0 20px 55px #19392a09;transform:rotate(-1deg);position:relative}.energy-scene:before{content:"";position:absolute;inset:-23px;z-index:-1;border:1px solid #e5e8db;border-radius:40px;transform:rotate(4deg)}.scene-heading{display:flex;justify-content:space-between;align-items:center;color:var(--muted)}.scene-status{font-size:11px;background:#f2f7f0;border-radius:20px;padding:6px 9px}.energy-map{height:300px;position:relative;margin-top:12px}.energy-map svg{width:100%;height:100%;position:absolute}.connector{stroke:#e6ebe3;stroke-width:2;fill:none}.active-line{stroke:#93c7a7;stroke-width:3;fill:none}.hub{fill:#c9a24a;stroke:white;stroke-width:3}.node{position:absolute;text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;width:112px;height:100px;background:#fff}.node span{font-size:31px;line-height:1.2}.node strong{font-size:13px;letter-spacing:-.2px;margin-top:4px}.node small{font-size:10px;color:var(--muted);margin-top:5px}.solar{left:50%;top:0;transform:translateX(-50%);color:#bb8b2b}.grid{left:0;top:100px;color:#687d72}.home{right:0;top:100px;background:#205440;color:white;border-radius:50%;width:108px;height:108px;box-shadow:0 0 0 7px #eef4ec}.home small{color:#d4e4d7}.battery{left:50%;bottom:0;transform:translateX(-50%);color:#08795c}.mini-forecast{border-top:1px solid var(--line);padding-top:20px;margin-top:15px}.mini-forecast>div:first-child{display:flex;justify-content:space-between;color:var(--muted)}.mini-forecast small{font-size:10px}.mini-forecast svg{width:100%;height:92px;display:block}.axis{display:flex;justify-content:space-between;color:#859087;font-size:10px}.features{padding-top:25px;padding-bottom:100px}.section-heading{display:grid;grid-template-columns:1.1fr 1fr;column-gap:100px}.section-heading>.eyebrow{grid-column:1/-1;color:var(--green)}h2{font-size:36px;line-height:1.2;font-weight:600;letter-spacing:-1.3px;margin:16px 0 22px}.section-heading>p:last-child{color:var(--muted);font-size:16px;max-width:400px;align-self:center}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:30px;border-top:1px solid var(--line);padding-top:40px}.feature-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:#eef2e9;color:var(--green);font-size:25px;border-radius:10px}h3{font-size:18px;font-weight:650;letter-spacing:-.4px;margin:22px 0 9px}.feature-grid p{font-size:14px;color:var(--muted);max-width:300px;margin:0}.how{background:#edf1e8;border-block:1px solid #e1e7da}.how-inner{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-top:75px;padding-bottom:75px}.how p{color:var(--muted);font-size:14px;max-width:370px}.how .button{margin-top:16px}.how ol{padding:0;margin:0;list-style:none}.how li{display:flex;gap:24px;border-bottom:1px solid #d5dfd0;padding:20px 0}.how li:first-child{padding-top:0}.how li>span{font-family:Georgia,serif;font-size:27px;color:#88a28a;padding-top:4px}.how li h3{margin-top:0}.how li p{margin:0}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:40px;padding-bottom:40px}footer .brand{font-size:20px}footer p,footer>a:last-child{font-size:12px;color:var(--muted)}a:focus-visible{outline:3px solid #84baa0;outline-offset:5px}@media(max-width:1050px){.hero{gap:35px}.wrap{padding-left:30px;padding-right:30px}.actions{align-items:flex-start;flex-direction:column;gap:18px}.how-inner,.section-heading{gap:50px}nav{gap:20px}.energy-scene{padding:20px}.eyebrow{font-size:10px}.scene-status{font-size:10px}}@media(max-width:760px){.wrap{padding-left:24px;padding-right:24px}.header{height:84px}.brand{font-size:23px}.brand .sun{font-size:35px}nav{display:none}.header .compact{padding:12px 16px}.hero{grid-template-columns:1fr;gap:50px;padding-top:37px;padding-bottom:65px}h1{font-size:53px;letter-spacing:-2.5px}.lead{font-size:16px}.actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:20px}.energy-scene{margin:0 4px}.energy-scene:before{inset:-10px}.section-heading{grid-template-columns:1fr;gap:0}h2{font-size:31px}.section-heading>p:last-child{margin-top:0}.feature-grid{grid-template-columns:1fr;gap:28px;padding-top:28px;margin-top:15px}.feature-grid article{padding-bottom:25px;border-bottom:1px solid var(--line)}.feature-grid p{max-width:100%}.feature-grid h3{margin-top:16px}.features{padding-bottom:50px}.how-inner{grid-template-columns:1fr;gap:45px;padding-top:50px;padding-bottom:45px}footer{flex-wrap:wrap;gap:12px}footer p{order:3;width:100%;margin:0}footer .brand{font-size:19px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Orbit visual identity. CSS only; existing DOM, controls and data stay intact. */
:root{color-scheme:dark;--ink:#e5f3f2;--muted:#9aafbf;--line:#293d50;--green:#6be3d1;--solar:#f3c27b;--surface:#101f30;--paper:#0b1523;--sage:#17383b;--border:#293d50;--orbit-mint:#6be3d1;--orbit-gold:#f3c27b;--orbit-purple:#b4a4f5;font-family:Inter,"Avenir Next",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}
body{color:var(--ink);background:var(--paper)}
h1,h2,h3,h4{color:var(--ink);font-weight:550}h1{letter-spacing:-1.2px}h2{letter-spacing:-.4px}p{line-height:1.7}.eyebrow{color:var(--muted);font-size:10px;font-weight:550;letter-spacing:1.8px}.subtle,.small,small{color:var(--muted)}
button,input,select,textarea{font-family:inherit}button,input,select,textarea,a,summary{outline-offset:4px}button{border:1px solid var(--line);background:#152638;color:var(--ink);font-weight:550}button:hover{border-color:#526e80}button:disabled{cursor:default}
.primary,.button{background:var(--green);border-color:var(--green);color:#0b2630;font-weight:600;box-shadow:none}.primary:hover,.button:hover{background:#91f1df;border-color:#91f1df;color:#0b2630}
.secondary{background:#142638;border:1px solid var(--line);color:var(--ink)}.secondary:hover{background:#1b3244;border-color:#526e80}.text-button,button.link{color:var(--green);background:none}.text-link{color:var(--green)}
label{color:#bdcdd6}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{border:1px solid #345064;background:#0d1b2b;color:var(--ink);border-radius:7px;box-shadow:none}input::placeholder,textarea::placeholder{color:#7c95a6}input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--green)}
.brand{font-weight:550;letter-spacing:-.8px;color:var(--ink)}.brand>span:not(.sun){color:var(--green)}.brand .sun{font-size:0!important;display:inline-block;flex-shrink:0;width:42px;height:42px;background:var(--orbit-logo) center/contain no-repeat;margin-right:7px}.brand small{color:var(--muted);background:#162b3a;font-weight:400;border:1px solid var(--line)}
.card,.metric,.repeat-card,.installation,.attach-card,.integration-panel,.test-panel{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:none}.card,.metric,.installation,.integration-panel,.test-panel{border-radius:13px}.repeat-card{background:#0e1b2b}.badge,.status{color:var(--muted);background:#172c3c;border:1px solid var(--line);border-radius:6px}.status.online{color:var(--green);background:#6be3d10a;border-color:#6be3d130}
.notice,.integration-notice{color:#f3d6a9;background:#302b24;border-color:#8f754e}.error,.negative,#form-error,#message,#attach-message{color:#f4a29b}.positive{color:var(--green)}
table{color:var(--ink)}td,th{border-color:var(--line)}th{color:var(--muted);font-weight:500}dt{color:#bccdd6}dd{color:var(--muted)}summary{color:var(--ink)}
[hidden]{display:none!important}
@media(max-width:600px){input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:16px}button,.primary,.secondary{min-height:44px}.eyebrow{font-size:9px}.brand .sun{width:35px;height:35px}}

:root{--orbit-logo:url("/orbit/logo.svg")}
/* Public introduction: retain all content, links and original page behavior. */
.header{height:94px}.wrap{max-width:1300px}.header nav{font-size:12px;color:var(--muted)}.hero{padding-top:65px;padding-bottom:85px;gap:48px}.hero h1{font-family:inherit;font-size:clamp(48px,5.4vw,73px);font-weight:450;letter-spacing:-2.7px;line-height:1.08}.hero h1 em{font-family:inherit;font-style:normal;font-weight:450;color:var(--green)}.lead{font-size:15px;color:var(--muted);line-height:1.85}.hero .eyebrow{color:var(--green)}.dot{background:var(--green)}.button{border:1px solid var(--green);border-radius:8px;font-size:12px;padding:15px 22px;min-height:46px}.compact{min-height:42px;padding:12px 17px}.energy-scene{background:radial-gradient(ellipse at 50% 50%,#173741,#101c2d 60%,#090f1d);border-color:#30475c;border-radius:14px;box-shadow:0 20px 65px #0002;transform:none;isolation:isolate;padding:24px 20px}.energy-scene:before{display:none}.scene-heading .eyebrow,.scene-status{color:var(--muted)}.energy-map{height:380px;margin-top:12px}.energy-map>svg{display:none}.energy-map:before{content:"";position:absolute;inset:0;background:var(--orbit-public-paths) center/100% 100% no-repeat;pointer-events:none}.node{width:112px;height:125px;background:none;transform:translate(-50%,-50%)}.node span{display:block;width:112px;height:80px;font-size:0;background:var(--orbit-object) center/contain no-repeat}.node strong{font-size:11px;color:var(--ink);font-weight:500;letter-spacing:1px;text-transform:uppercase}.node small{color:var(--muted);font-size:9px;max-width:110px}.energy-map .node.solar{left:50%;top:20%}.energy-map .node.grid{left:18%;top:53%}.energy-map .node.home{left:82%;top:53%}.energy-map .node.battery{left:50%;top:86%}.node.solar span{animation:orbit-public-sun 180s linear infinite}.mini-forecast{border-color:var(--line);padding-top:18px}.mini-forecast .eyebrow{font-size:9px}.mini-forecast>div:first-child{gap:8px;flex-wrap:wrap}.mini-forecast svg path[stroke]{stroke:var(--solar)}.mini-forecast svg stop{stop-color:var(--solar)}.axis{color:var(--muted)}.features{padding-bottom:80px}.section-heading h2,.how h2{font-size:36px;font-weight:450;letter-spacing:-1.2px;line-height:1.15}.section-heading p,.feature-grid p{color:var(--muted);font-size:13px}.feature-grid{gap:35px;border-color:var(--line)}.feature-icon{background:#6be3d10a;color:var(--green);border:1px solid #6be3d125;border-radius:9px}.feature-grid h3{font-size:17px;font-weight:500}.how{background:linear-gradient(100deg,#0b1726f5,#0b1726d9),var(--orbit-home-photo) center/cover no-repeat;border-color:var(--line)}.how-inner{gap:80px}.how p{color:#b0c2ce;font-size:13px}.how li{border-color:#3f576950}.how li>span{font-family:inherit;font-weight:350;color:#6c919b}.how li h3{font-weight:500;font-size:16px}footer{border-color:var(--line);color:var(--muted)}footer p{font-size:11px}
@keyframes orbit-public-sun{to{transform:rotate(360deg)}}
@media(max-width:1000px){.hero{gap:30px}.hero h1{font-size:54px}.lead{font-size:14px}.energy-map{height:350px}.energy-scene{padding:21px 16px}.node{width:98px}.node span{width:100px;height:75px}.node small{font-size:8px}.how-inner{gap:40px}}
@media(max-width:800px){.header{height:auto;min-height:80px}.hero{grid-template-columns:1fr;padding-top:35px;gap:35px}.hero h1{max-width:620px;font-size:63px}.lead{max-width:500px}.energy-scene{width:100%;max-width:600px;margin:auto}.energy-map{height:400px}.node{width:112px}.node span{width:120px;height:90px}.node small{font-size:9px}.how-inner{grid-template-columns:1fr;gap:35px}}
@media(max-width:600px){.wrap{padding-left:21px;padding-right:21px}.header{min-height:78px;gap:12px}.header .brand{font-size:21px}.header nav{gap:16px;font-size:11px}.header .compact{font-size:10px;padding:10px 12px;min-height:40px}.hero{padding-top:30px;padding-bottom:55px;gap:30px}.hero h1{font-size:49px;letter-spacing:-1.8px;margin-top:21px}.lead{font-size:13px}.hero .actions{gap:20px;flex-wrap:wrap}.text-link{font-size:12px}.energy-scene{padding:19px 13px;margin:0}.energy-map{height:360px}.node{width:95px}.node span{width:100px;height:72px}.node strong{font-size:10px;letter-spacing:.6px}.node small{font-size:8px}.energy-map .node.grid{left:17%}.energy-map .node.home{left:83%}.mini-forecast .eyebrow{font-size:9px}.section-heading h2,.how h2{font-size:31px}.feature-grid{gap:23px}.features{padding-bottom:50px}.how-inner{padding-top:45px;padding-bottom:45px}.how li{gap:18px}}
@media(max-width:360px){.wrap{padding-left:16px;padding-right:16px}.header .brand{font-size:18px}.header .compact{font-size:9px}.hero h1{font-size:43px}.node{width:82px}.node span{width:90px;height:65px}.node small{font-size:7px}.node strong{font-size:9px}}
@media(prefers-reduced-motion:reduce){.node.solar span{animation:none}}


.energy-map .node{border:0;border-radius:0;box-shadow:none}.scene-status{background:#172c3c;color:var(--muted);border:1px solid var(--line)}
:root{--orbit-public-paths:url("/orbit/paths.svg");--orbit-home-photo:url("/orbit/home.webp")}
.energy-map .node.solar{--orbit-object:url("/orbit/sun.png")}
.energy-map .node.grid{--orbit-object:url("/orbit/grid.png")}
.energy-map .node.home{--orbit-object:url("/orbit/house.png")}
.energy-map .node.battery{--orbit-object:url("/orbit/battery.png")}

/* The footer uses the same Orbit mark as the page header. */
footer.wrap{justify-content:flex-start}
