@font-face{font-family:DM Sans;src:url('/landing/dm-sans-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:DM Sans;src:url('/landing/dm-sans-bold.ttf') format('truetype');font-weight:600 900;font-display:swap}
:root{--ink:#192944;--muted:#5B657A;--blue:#4158D8;--pale:#E0E8FB;--cream:#FAFAF7;--line:#E4E7ED;--peach:#FAE8DC;--green:#E2EEE6;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:28px}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}::selection{background:#BDCBFA}p{line-height:1.7;margin:0 0 20px}h1,h2,h3{margin:0;letter-spacing:-.045em;line-height:1.07}h2{font-size:clamp(36px,4.4vw,58px);font-weight:700}h3{font-size:19px;letter-spacing:-.025em;line-height:1.3}.container{width:min(1180px,calc(100% - 96px));margin-inline:auto}.section{padding-block:116px}.icon{height:23px;width:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.skip{position:fixed;left:20px;top:-100px;z-index:99;padding:14px;background:#fff;border-radius:10px}.skip:focus{top:12px}.eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.75px;font-weight:700;color:var(--blue);margin-bottom:24px}.eyebrow-dot{width:6px;height:6px;background:currentColor;border-radius:50%}.tiny-house{font-size:20px;line-height:1}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:56px;padding:17px 25px;border-radius:11px;background:var(--blue);color:#fff;font-size:14px;font-weight:700;line-height:1.2;box-shadow:0 3px 0 #2A3EA51A;transition:background .18s,transform .18s}.button:hover{background:#3046BF;transform:translateY(-2px)}.button-small{min-height:44px;padding:12px 19px;font-size:12px;gap:12px}.button-small .icon{width:17px;height:17px}.text-link{display:inline-flex;align-items:center;gap:13px;color:var(--blue);font-size:14px;font-weight:700;line-height:1.6}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.text-link .icon{width:20px;height:20px}.hero-wrap{background:var(--pale);position:relative;overflow:hidden}.header{height:104px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5}.brand{display:inline-flex;align-items:center;gap:9px;letter-spacing:-1.6px;font-size:29px;font-weight:700;line-height:1}.brand img{border-radius:10px}.brand-dot{color:var(--blue)}.header nav{display:flex;gap:31px;align-items:center;font-size:12px;font-weight:700}.header nav>a:not(.button){padding-block:15px}.header nav>a:not(.button):hover{color:var(--blue)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:.96fr 1.04fr;align-items:center;min-height:624px;padding-top:36px;padding-bottom:96px;gap:25px}.hero h1{font-size:clamp(64px,6.6vw,91px);letter-spacing:-.065em;line-height:.99;font-weight:700}.hero h1>span{color:var(--blue)}.hero .eyebrow{margin-bottom:24px}.hero-description{max-width:365px;margin-top:27px;font-size:16px;color:#4A5972;line-height:1.65}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:29px;flex-wrap:wrap}.hero-actions .text-link{font-size:12px;color:var(--ink)}.hero-actions .text-link span{font-size:22px}.hero-note{display:flex;align-items:center;gap:8px;font-size:11px;color:#5D6B85;margin-top:22px;margin-bottom:0}.hero-note .icon{width:14px;height:14px;color:var(--blue)}.hero-art{position:relative;margin-right:-30px;margin-left:-24px;isolation:isolate}.house-illustration{width:100%;height:auto;display:block;position:relative;z-index:1}.art-sun{position:absolute;right:62px;top:20px;width:120px;height:120px;border-radius:50%;background:#F6D798;z-index:-1}.floating-note{position:absolute;z-index:2;background:#fff;border-radius:13px;display:flex;align-items:center;box-shadow:0 12px 30px #45609910}.note-electricity{top:10px;left:0;padding:14px 15px;gap:12px;transform:rotate(-4deg)}.note-icon{display:grid;place-items:center;width:38px;height:38px;background:#EFF1FE;border-radius:10px;color:var(--blue)}.note-icon .icon{width:19px;height:19px}.floating-note strong{display:block;font-size:11px;font-weight:700;margin-bottom:5px}.floating-note div>span{display:block;color:#738096;font-size:9px}.note-check{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#E6F2E7;color:#5B8A66;font-size:12px;margin-left:14px}.note-home{bottom:5px;right:45px;transform:rotate(3deg);padding:14px 20px;gap:9px;font-size:10px}.home-dot{height:7px;width:7px;border-radius:50%;background:#8AAE91}.doodle-star{position:absolute;right:-9px;top:185px;width:34px;height:34px;stroke:var(--blue);stroke-width:2;transform:rotate(13deg)}.hero-wave{position:absolute;bottom:-1px;left:0;right:0;height:45px}.hero-wave svg{height:100%;width:100%;fill:var(--cream)}.topics{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:118px;border-bottom:1px solid var(--line)}.topics>p{font-size:9px;font-weight:700;letter-spacing:1.35px;color:#8A92A0;margin:0}.topics>div{display:flex;align-items:center;gap:35px}.topics>div>span{display:flex;align-items:center;gap:9px;font-size:12px;color:#6D788C}.topics .icon{width:18px;height:18px;stroke-width:1.4}.app-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:100px;padding-block:120px 130px}.section-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);margin-top:25px;max-width:380px}.feature-list{list-style:none;padding:0;margin:32px 0}.feature-list li{display:flex;gap:15px;margin-bottom:25px}.feature-list h3{font-size:14px;letter-spacing:-.015em;margin-bottom:5px}.feature-list p{font-size:12px;line-height:1.65;color:var(--muted);max-width:300px;margin:0}.feature-icon{width:41px;height:41px;flex-shrink:0;display:grid;place-items:center;border-radius:12px;background:#E9ECFC;color:var(--blue)}.feature-icon .icon{width:21px;height:21px}.peach{background:var(--peach);color:#AF7455}.green{background:var(--green);color:#63866E}.phone-stage{position:relative;display:flex;align-items:center;flex-direction:column;isolation:isolate}.phone-halo{position:absolute;z-index:-1;width:450px;height:450px;border-radius:50%;background:#E7ECF9;top:88px;left:50%;transform:translateX(-50%)}.phone{width:302px;background:#F5F5FA;border:6px solid #293348;outline:1px solid #102138;border-radius:42px;box-shadow:0 26px 40px -18px #1C2C4760,6px 2px 0 #D1D6E2 inset;padding-top:12px;overflow:hidden;position:relative;transform:rotate(5deg)}.phone-top{height:25px;display:flex;justify-content:space-between;align-items:center;padding:0 21px 8px;font-size:10px;font-weight:700;position:relative}.phone-camera{position:absolute;left:50%;top:-5px;transform:translateX(-50%);width:83px;height:20px;border-radius:20px;background:#202736}.phone-signal{font-size:9px;letter-spacing:1px}.phone-content{padding:18px 14px 0}.phone-brand{display:flex;align-items:center;gap:6px;font-size:18px;font-weight:700;letter-spacing:-.8px;margin-bottom:24px}.phone-brand img{border-radius:6px}.phone-greeting{font-size:16px;letter-spacing:-.5px;font-weight:700}.phone-greeting>span{color:#D9A952;font-size:18px;margin-left:2px}.phone-caption{font-size:10px;color:#8490A4;margin-top:5px;margin-bottom:17px}.demo-card{background:#fff;border-radius:17px;padding:15px;box-shadow:0 2px 3px #29334803}.demo-heading{display:flex;align-items:center;justify-content:space-between;gap:3px}.demo-label{font-size:9px;font-weight:700;display:block}.demo-badge{font-size:5px;letter-spacing:.5px;color:#8E96AE}.demo-number{font-size:29px;letter-spacing:-1.2px;font-weight:700;margin-top:10px;line-height:1}.demo-number small{font-size:10px;letter-spacing:0;color:#7B8599;font-weight:400}.demo-subtitle{display:flex;align-items:center;gap:4px;font-size:7px;color:#9AA3B3;margin-top:9px}.mint-dot{display:inline-block;width:5px;height:5px;background:#8AB79A;border-radius:50%}.demo-chart{height:91px;display:flex;align-items:end;gap:4px;margin-top:19px;background:repeating-linear-gradient(to top,#EFF0F5 0,#EFF0F5 1px,transparent 1px,transparent 29px)}.demo-chart>i{height:var(--bar);flex:1;border-radius:3px 3px 1px 1px;background:#BDC8EA}.demo-chart>i:nth-child(3n){background:#D9DFEF}.demo-chart>i:nth-child(4n){background:#E8D4B7}.demo-chart>i.bar-selected{background:var(--blue)}.demo-axis{display:flex;justify-content:space-between;color:#9CA6B5;font-size:6px;padding-top:7px}.demo-row{display:flex;gap:9px;margin-top:10px}.demo-card.mini{padding:12px;flex:1}.demo-card.warm{background:#F0EAE2}.demo-symbol{display:grid;place-items:center;background:#EBEEFD;border-radius:8px;width:24px;height:24px;color:var(--blue);margin-bottom:10px}.demo-symbol .icon{width:13px;height:13px}.warm .demo-symbol{background:#E7DBC8;color:#967B58}.mini strong{display:block;font-size:23px;letter-spacing:-1px;margin-block:7px}.mini strong small{font-size:9px;color:#7C8598;letter-spacing:0;font-weight:400}.mini.warm strong{font-size:19px;letter-spacing:-.6px}.demo-small{display:block;font-size:7px;font-weight:400;letter-spacing:0;color:#8F99AB}.mini.warm strong .demo-small{margin-top:5px}.demo-reminder{display:flex;align-items:center;gap:10px;padding:13px 9px;margin-top:5px}.demo-reminder .feature-icon{height:29px;width:29px;border-radius:9px}.demo-reminder .icon{width:15px;height:15px}.demo-reminder strong{display:block;font-size:8px;margin-bottom:4px}.demo-reminder div>span{display:block;font-size:7px;color:#939FB0}.phone-nav{display:flex;justify-content:space-around;padding:13px 15px 5px;border-top:1px solid #E8E9F1;background:white;font-size:7px;color:#98A1B1}.phone-nav>span{display:flex;align-items:center;gap:5px;flex-direction:column}.phone-nav .icon{width:17px;height:17px}.phone-nav .active{color:var(--blue)}.phone-bottom{width:85px;height:3px;border-radius:3px;background:#1D2536;margin:10px auto 8px}.demo-disclaimer{font-size:9px;letter-spacing:.3px;color:#8D97A9;margin:34px 0 0}.orbit{position:absolute;color:#C8A575;z-index:-1}.orbit-one{font-size:48px;left:18px;top:56px;transform:rotate(-13deg)}.orbit-two{font-size:36px;right:9px;bottom:100px;color:#9AAADD;transform:rotate(14deg)}.home-section{background:#EDF0F7;padding-block:100px}.home-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:100px;align-items:center}.home-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:25px;max-width:360px}.home-signature{display:flex;align-items:center;gap:10px;margin-top:34px}.home-signature>span{font-size:11px;line-height:1.5;color:#75839A}.home-features article{display:flex;align-items:start;gap:17px;padding:29px 0;border-bottom:1px solid #D8DDE9}.home-features article:first-child{padding-top:0}.home-features article:last-child{border:0;padding-bottom:0}.feature-number{font-size:10px;color:#95A2BC;margin-top:3px}.home-features h3{font-size:18px;letter-spacing:-.03em;line-height:1.3;margin-bottom:10px}.home-features p{font-size:12px;color:var(--muted);line-height:1.8;margin:0;max-width:325px}.home-features article>.icon{margin-left:auto;width:19px;height:19px;color:#8F9FC1;flex-shrink:0}.section-heading{text-align:center}.section-heading .eyebrow{justify-content:center}.section-heading>p:last-child{color:var(--muted);font-size:14px;margin-top:22px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:60px;margin-top:61px;text-align:center;position:relative}.steps:before{content:'';position:absolute;top:33px;left:21%;right:21%;border-top:1px dashed #CAD2E6;z-index:-1}.step-icon{margin:0 auto 24px;display:grid;place-items:center;width:72px;height:72px;border-radius:23px;background:#E8ECFD;color:var(--blue);position:relative}.step-icon .icon{width:28px;height:28px}.step-icon.peach{background:var(--peach);color:#AF7455}.step-icon.green{background:var(--green);color:#63866E}.step-icon small{position:absolute;width:23px;height:23px;border-radius:50%;background:var(--cream);bottom:-7px;right:-5px;border:1px solid #DDE1E9;font-size:8px;display:grid;place-items:center;color:#72829E}.steps h3{font-size:18px;margin-bottom:12px}.steps p{font-size:12px;color:var(--muted);line-height:1.8;margin:0}.faq-section{background:#fff;padding-block:100px}.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px}.faq-grid>div>p:not(.eyebrow){color:var(--muted);font-size:13px;margin-top:25px;line-height:2}.faq-grid .text-link{font-size:13px}.faq-list details{padding:0;border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;list-style:none;font-size:13px;font-weight:700;line-height:1.5;padding:22px 0}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:23px;line-height:1;color:#9DA8BF;font-weight:400;transition:transform .2s}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details p{font-size:12px;line-height:1.85;color:var(--muted);padding-right:30px;padding-bottom:7px;margin-bottom:17px}.faq-list details p a{text-decoration:underline}.download-section{position:relative;overflow:hidden;padding-block:94px;background:var(--blue);color:white}.download-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;position:relative;z-index:1}.download-section .eyebrow{color:#CED6FF;font-size:9px}.download-section h2{font-size:clamp(42px,4.5vw,64px);letter-spacing:-.055em}.download-section .download-grid>div>p:last-child{font-size:14px;color:#D1D7FA;margin-top:23px}.download-card{background:#fff;color:var(--ink);padding:27px;border-radius:23px;display:grid;grid-template-columns:55px 1fr;gap:16px 15px;max-width:378px;justify-self:end;width:100%}.download-card>img{width:55px;height:55px;border-radius:13px}.download-card>div{align-self:center}.download-card h3{font-size:22px}.download-card>div>p{font-size:11px;margin:5px 0 0;color:var(--muted)}.download-button{grid-column:1/-1;font-size:12px;gap:9px;padding:17px 13px;min-height:52px;border-radius:9px}.download-button .icon{width:18px;height:18px}.download-button .icon:last-child{margin-left:auto}.download-note{grid-column:1/-1;font-size:9px;color:#79849A!important;line-height:1.8;text-align:center;margin:0!important}.download-card .installation-note{grid-column:1/-1;font-size:9px!important;line-height:1.7;margin:0!important;color:#8E97A9!important;border-top:1px solid var(--line);padding-top:14px}.download-doodle{position:absolute;font-size:260px;bottom:-55px;left:39%;color:#5268E2;transform:rotate(12deg);line-height:1;pointer-events:none}.footer{background:#F1F2F5;padding-top:49px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1.5fr;align-items:start;gap:30px;padding-bottom:40px}.footer .brand{font-size:25px}.footer-top>p{font-size:11px;color:#7A8497;margin:0;line-height:1.7}.footer-top nav{display:flex;justify-content:end;gap:23px;font-size:10px;color:#6F7B91;padding-top:5px}.footer nav a:hover,.footer-bottom a:hover{color:var(--blue);text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-block:23px;border-top:1px solid #DBDFE7;font-size:9px;color:#8E98A9}.footer-bottom>a{color:#62708B}.footer-bottom>span:last-child{font-size:9px}
@media(min-width:1500px){.hero{min-height:680px}}@media(max-width:1100px){.container{width:calc(100% - 72px)}.header nav{gap:20px;font-size:11px}.hero{gap:10px;min-height:610px}.hero h1{font-size:75px}.hero-art{margin-left:-8px;margin-right:-10px}.note-electricity{transform:rotate(-4deg) scale(.88);transform-origin:left top;left:0;top:0}.note-home{right:10px;font-size:9px}.app-section,.home-grid,.faq-grid,.download-grid{gap:60px}.phone-halo{width:370px;height:370px;top:110px}.topics>div{gap:20px}.home-features article>.icon{display:none}.phone{transform:rotate(3deg)}}
@media(max-width:780px){.container{width:calc(100% - 48px)}.section{padding-block:76px}.header{height:86px}.brand{font-size:26px}.brand img{width:33px;height:33px}.menu-toggle{display:flex;flex-direction:column;gap:5px;justify-content:center;align-items:center;width:44px;height:44px;background:#FFFFFF75;border:1px solid #FFFFFF60;border-radius:10px}.menu-toggle span{display:block;width:17px;height:2px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.header nav{display:none;position:absolute;left:0;right:0;top:76px;border:1px solid #D7DEF0;padding:16px;background:#F8FAFF;border-radius:16px;box-shadow:0 15px 30px #24375616;flex-direction:column;align-items:stretch;gap:2px;font-size:13px}.header nav.is-open{display:flex}.header nav>a:not(.button){padding:14px 12px}.header nav .button{margin-top:8px}.hero{grid-template-columns:1fr;gap:16px;padding-top:34px;padding-bottom:74px;min-height:0}.hero-copy{max-width:530px}.hero h1{font-size:76px;line-height:.99}.hero-description{font-size:15px;max-width:355px;margin-top:23px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:20px}.hero h1 br:nth-of-type(2){display:none}.hero h1 span:before{content:' '}.hero-actions{gap:23px;margin-top:27px}.hero-actions .button{min-height:52px;font-size:12px;padding:17px 20px;gap:17px}.hero-note{font-size:10px;margin-top:20px}.hero-art{max-width:520px;margin:36px auto 0;width:100%}.house-illustration{width:100%}.art-sun{width:95px;height:95px;right:47px;top:16px}.note-electricity{left:0;top:-8px;transform:rotate(-4deg) scale(.85)}.note-home{right:3px;bottom:3px;font-size:9px}.doodle-star{width:26px;right:3px;top:150px}.topics{flex-direction:column;align-items:start;justify-content:center;gap:19px;padding-block:25px;min-height:120px}.topics>p{font-size:8px}.topics>div{width:100%;justify-content:space-between;gap:10px}.topics>div>span{font-size:10px;gap:5px}.topics .icon{width:15px;height:15px}.app-section{grid-template-columns:1fr;gap:58px}.section-copy{max-width:510px}.section-copy h2{font-size:44px}.section-copy>p:not(.eyebrow){font-size:14px;max-width:450px}.feature-list{margin-block:30px}.feature-list li{margin-bottom:23px}.feature-list p{max-width:360px}.phone-stage{padding-top:5px}.phone{transform:rotate(3deg);width:294px}.phone-halo{width:375px;height:375px;top:100px}.orbit-one{left:4%;top:34px}.orbit-two{right:7%;bottom:95px}.home-section{padding-block:73px}.home-grid{grid-template-columns:1fr;gap:40px}.home-copy h2{font-size:43px}.home-copy>p:not(.eyebrow){max-width:420px}.home-signature{display:none}.home-features h3{font-size:17px}.home-features p{max-width:none}.home-features article{padding-block:25px}.home-features article>.icon{display:block}.steps{gap:22px}.steps h3{font-size:15px}.steps p{font-size:11px}.steps br{display:none}.step-icon{width:60px;height:60px;border-radius:18px}.section-heading h2{font-size:40px}.faq-section{padding-block:75px}.faq-grid{grid-template-columns:1fr;gap:20px}.faq-grid h2{font-size:43px}.faq-grid h2 br{display:none}.faq-grid>div>p:not(.eyebrow){margin-top:20px}.faq-list summary{font-size:13px;padding-block:22px}.download-section{padding-block:72px}.download-grid{grid-template-columns:1fr;gap:33px}.download-section h2{font-size:55px}.download-card{justify-self:start;max-width:390px}.download-doodle{font-size:290px;left:auto;right:-145px;bottom:180px}.footer-top{grid-template-columns:1fr 1fr;gap:23px}.footer-top>p{text-align:right}.footer-top nav{grid-column:1/-1;justify-content:start;gap:24px;font-size:10px}.footer-bottom{flex-wrap:wrap;gap:17px;font-size:8px}.footer-bottom>span:last-child{display:none}}
@media(max-width:380px){.container{width:calc(100% - 36px)}.hero h1{font-size:63px}.hero-actions{gap:18px}.hero-actions .text-link{font-size:10px}.hero-art{margin-top:32px}.note-electricity{transform:rotate(-4deg) scale(.7)}.note-home{padding:10px 12px;font-size:8px;right:0}.art-sun{width:75px;height:75px;top:6px;right:28px}.phone-halo{width:290px;height:290px;top:140px}.phone{width:270px}.phone-content{padding-inline:11px}.phone-greeting{font-size:14px}.demo-heading .demo-badge{font-size:4px}.demo-chart{gap:3px}.section-copy h2,.home-copy h2{font-size:38px}.steps{grid-template-columns:1fr;gap:36px}.steps:before{display:none}.steps p{max-width:220px;margin:auto;font-size:12px}.steps h3{font-size:18px}.step-icon{margin-bottom:19px}.topics>div>span{font-size:9px;gap:4px}.topics .icon{width:13px;height:13px}.download-card{padding:21px}.download-button{font-size:11px}.download-section h2{font-size:48px}.footer-top nav{gap:17px;font-size:9px}}
.store-buttons{grid-column:1/-1;display:flex;flex-direction:column;gap:9px;margin-top:3px}.store-badge{display:flex;align-items:center;gap:12px;min-height:58px;padding:10px 17px;background:#192437;color:white;border-radius:10px;transition:background .18s}.store-badge:hover{background:#2D3A52}.store-badge>svg{width:26px;height:29px;flex-shrink:0}.store-badge>span:not(.store-symbol){display:flex;flex-direction:column;gap:3px}.store-badge small{font-size:9px;font-weight:400;line-height:1.2;color:#CDD3DE}.store-badge strong{font-size:19px;letter-spacing:-.5px;font-weight:700;line-height:1.1}.store-badge.is-pending{background:#EEF0F5;color:#778397}.store-badge.is-pending small{color:#8993A5}.store-badge.is-pending svg{opacity:.65}.store-symbol{font-size:28px;width:26px;text-align:center;line-height:1}
@media(max-width:780px){.faq-grid h2 br{display:initial}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button:hover{transform:none}}

/* Little signs of life: compositor transforms/opacity, paused off screen. */
.art-sun{animation:sun-bob 8s ease-in-out infinite paused}
.art-sun:before{content:'';position:absolute;inset:-11px;border:2px dashed #EDC982;border-radius:50%;opacity:.7;animation:sun-rays 48s linear infinite paused}
.sun-face{width:100%;height:100%;color:#AF8856;fill:currentColor;position:relative}
.sun-eyes{transform-box:fill-box;transform-origin:center;animation:sun-blink 7s ease-in-out infinite paused}
.scene-tree{transform-box:view-box;animation:tree-sway 6.5s ease-in-out infinite paused}
.scene-tree-left{transform-origin:128px 362px}
.scene-tree-right{transform-origin:541px 418px;animation-duration:7.8s;animation-delay:-2.8s}
.scene-cloud{animation:cloud-drift 23s ease-in-out infinite alternate paused}
.scene-cloud-right{animation-duration:29s;animation-delay:-9s}
.scene-wind{opacity:0;animation:little-breeze 9s ease-in-out infinite paused}
.scene-wind-two{animation-delay:-4.3s;animation-duration:10.5s}
.scene-leaf{opacity:0;transform-box:fill-box;transform-origin:center;animation:leaf-drift 10s ease-in-out infinite paused}
.scene-leaf-two{animation-delay:-4.7s;animation-duration:12s}
.floating-note{animation:note-bob 7s ease-in-out infinite paused}
.note-home{animation-duration:8.6s;animation-delay:-2.5s}
.doodle-star{animation:star-turn 14s ease-in-out infinite paused}
html[data-motion=running][data-page-visible=true] .hero-art[data-in-view=true] :is(.art-sun,.art-sun:before,.sun-eyes,.scene-tree,.scene-cloud,.scene-wind,.scene-leaf,.floating-note,.doodle-star){animation-play-state:running}
html[data-motion=running][data-page-visible=true] .hero-art[data-in-view=true] .art-sun:before{animation-play-state:running}
.motion-toggle{position:absolute;right:38px;bottom:-39px;display:flex;align-items:center;gap:7px;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:#647596;font-size:9px;cursor:pointer;z-index:3;min-height:34px}
.motion-toggle[hidden]{display:none}.motion-toggle:hover{background:#FFFFFF60}.motion-toggle>span:first-child{font-size:13px;line-height:1}
[data-reveal]{transition:opacity .7s ease,transform .7s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0ms)}
.reveal-pending{opacity:0;transform:translate3d(0,22px,0)}
html[data-motion=paused] [data-reveal]{opacity:1;transform:none;transition:none}
.phone-stage.is-revealed .demo-chart i{transform-origin:bottom;animation:chart-rise .85s cubic-bezier(.16,1,.3,1) both}
.phone-stage.is-revealed .demo-chart i:nth-child(3n){animation-delay:60ms}.phone-stage.is-revealed .demo-chart i:nth-child(3n + 1){animation-delay:120ms}
html[data-motion=paused] .demo-chart i{animation:none;transform:none}
.feature-icon,.step-icon,.home-features article>.icon,.button>.icon,.text-link>.icon,.phone{transition:transform .35s cubic-bezier(.16,1,.3,1)}
@keyframes sun-bob{0%,100%{translate:0 0;scale:1}50%{translate:0 -5px;scale:1.025}}
@keyframes sun-rays{to{rotate:360deg}}
@keyframes sun-blink{0%,43%,48%,100%{transform:scaleY(1)}45%,46%{transform:scaleY(.12)}}
@keyframes tree-sway{0%,100%{transform:rotate(-1.2deg)}45%{transform:rotate(1.7deg)}70%{transform:rotate(.2deg)}}
@keyframes cloud-drift{from{transform:translateX(-7px)}to{transform:translateX(10px)}}
@keyframes little-breeze{0%,20%,85%,100%{opacity:0;transform:translateX(-8px)}35%,55%{opacity:.45}72%{opacity:0;transform:translateX(25px)}}
@keyframes leaf-drift{0%,16%{opacity:0;transform:translate(-5px,-5px) rotate(-15deg)}25%{opacity:.85}62%{opacity:.75}80%,100%{opacity:0;transform:translate(28px,12px) rotate(90deg)}}
@keyframes note-bob{0%,100%{translate:0 0}50%{translate:0 -5px}}
@keyframes star-turn{0%,100%{rotate:0deg;opacity:.65}50%{rotate:18deg;opacity:1}}
@keyframes chart-rise{from{transform:scaleY(.12);opacity:.3}to{transform:scaleY(1);opacity:1}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 html[data-motion=running] .feature-list li:hover .feature-icon{transform:translateY(-3px) rotate(-5deg)}
 html[data-motion=running] .steps article:hover .step-icon{transform:translateY(-5px) rotate(-4deg)}
 html[data-motion=running] .home-features article:hover>.icon{transform:translateX(4px) rotate(-5deg)}
 html[data-motion=running] .button:hover>.icon:last-child,html[data-motion=running] .text-link:hover>.icon{transform:translateX(4px)}
 html[data-motion=running] .phone-stage:hover .phone{transform:translateY(-5px) rotate(1deg)}
}
@media(max-width:780px){.motion-toggle{right:0;bottom:-38px}}
@media(prefers-reduced-motion:reduce){
 [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}
 .scene-wind,.scene-leaf{display:none}.motion-toggle{display:none}
 .art-sun,.art-sun:before,.sun-eyes,.scene-tree,.scene-cloud,.scene-wind,.scene-leaf,.floating-note,.doodle-star,.demo-chart i{animation:none!important}
}

/* The energy connections are illustrative; no live device data is depicted. */
.turbine-rotor{transform-box:view-box;animation:turbine-turn 15s linear infinite paused}
.turbine-rotor-one{transform-origin:84px 126px}
.turbine-rotor-two{transform-origin:178.5px 140px;animation-duration:19s;animation-delay:-6s}
.energy-flow{stroke-dasharray:2 28;animation:energy-travel 2.8s linear infinite paused}
.heat-supply-flow{animation-duration:3.6s}.heat-return-flow{animation-direction:reverse;animation-duration:4.2s}
.solar-glint{opacity:.12;animation:panel-light 8s ease-in-out infinite paused}
.charge-light{animation:charge-breathe 4s ease-in-out infinite paused}
html[data-motion=running][data-page-visible=true] .hero-art[data-in-view=true] :is(.turbine-rotor,.energy-flow,.solar-glint,.charge-light){animation-play-state:running}
@keyframes turbine-turn{to{transform:rotate(360deg)}}
@keyframes energy-travel{to{stroke-dashoffset:-30}}
@keyframes panel-light{0%,100%{opacity:.1}50%{opacity:.3}}
@keyframes charge-breathe{0%,100%{opacity:.45}50%{opacity:1}}
@media(prefers-reduced-motion:reduce){.turbine-rotor,.energy-flow,.solar-glint,.charge-light{animation:none!important}.energy-flow{display:none}}

/* Readable marketing copy at actual device size; decorative phone art is scaled separately. */
.eyebrow,.hero .eyebrow,.download-section .eyebrow{font-size:13px;letter-spacing:1.3px;line-height:1.6}
.header nav{font-size:14px}.button,.button-small,.hero-actions .button,.hero-actions .text-link,.text-link,.faq-grid .text-link{font-size:15px}
.hero-description,.section-copy>p:not(.eyebrow),.home-copy>p:not(.eyebrow),.section-heading>p:last-child,.download-section .download-grid>div>p:last-child{font-size:17px;line-height:1.75}
.feature-list h3{font-size:18px}.feature-list p,.home-features p,.steps p,.faq-grid>div>p:not(.eyebrow),.faq-list details p{font-size:16px;line-height:1.8}
.feature-list p,.home-features p{max-width:36rem}.hero-note,.home-signature>span,.feature-number{font-size:14px;line-height:1.6}
.topics{gap:24px;flex-wrap:wrap}.topics>p{font-size:13px;color:var(--muted)}.topics>div{flex-wrap:wrap;gap:18px 24px}.topics>div>span{font-size:15px;color:var(--muted)}
.steps h3,.home-features h3{font-size:20px}.step-icon small{font-size:12px;color:var(--muted)}.faq-list summary{font-size:17px;line-height:1.6}
.demo-disclaimer{font-size:14px;color:var(--muted);line-height:1.6}.download-card{max-width:420px}.download-card>div>p{font-size:15px;line-height:1.6}
.download-note,.download-card .installation-note{font-size:14px!important;color:var(--muted)!important;line-height:1.75}.store-badge small{font-size:13px}.store-badge.is-pending{color:#526078}.store-badge.is-pending small{color:#526078}
.footer-top{grid-template-columns:.8fr .9fr 1.5fr}.footer-top>p,.footer-top nav,.footer-bottom,.footer-bottom>span:last-child{font-size:14px;color:var(--muted);line-height:1.7}.footer-top nav{flex-wrap:wrap;gap:14px 22px}.footer-bottom{flex-wrap:wrap}.footer-bottom a{color:var(--blue)}
.motion-toggle{font-size:13px;min-height:44px}.hero-actions{row-gap:18px}
@media(max-width:1100px) and (min-width:781px){.header nav{gap:16px}.header .button-small{padding-inline:14px;font-size:14px}}
.header nav .nav-prices{color:var(--blue);font-weight:700;white-space:nowrap}.nav-prices>span{display:inline-block;transition:transform .18s}.nav-prices:hover>span{transform:translate(2px,-2px)}
@media(min-width:781px) and (max-width:1180px){.header nav{gap:14px;font-size:13px}.header .button-small{padding-inline:13px}}
@media(max-width:780px){.footer-top{grid-template-columns:1fr 1fr}.footer-top nav{grid-column:1/-1;font-size:14px}.hero .eyebrow{font-size:13px}.hero-description,.section-copy>p:not(.eyebrow),.home-copy>p:not(.eyebrow){font-size:16px}.topics>div{justify-content:flex-start}.topics>div>span{font-size:14px}.steps{gap:24px}.steps p{font-size:16px}.hero-actions .text-link{font-size:15px}.footer-bottom{font-size:14px;gap:14px}.footer-top>p{font-size:14px}}
@media(max-width:580px){.steps{grid-template-columns:1fr;gap:38px}.steps:before{display:none}.steps p{max-width:30rem;margin:auto}.header .brand{font-size:26px}.footer-top{grid-template-columns:1fr}.footer-top>p{text-align:left}.footer-top nav{gap:14px 20px}.hero-description{max-width:100%}.hero-actions{gap:16px 22px}.hero .eyebrow{letter-spacing:1px}}

