@import"https://fonts.googleapis.com/css2?family=Geist+Mono:wght@400;500;700&family=Nunito:wght@400;800&display=swap";:root{--bg: #1d1d1b;--fg: #ffffff;--accent: #5fc4e1;--muted: #cececa;--mono: "Geist Mono", "SF Mono", "IBM Plex Mono", "Fira Code", ui-monospace, monospace;--sans: "Inter", "Helvetica Neue", "Neue Haas Grotesk Text", system-ui, sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--fg);scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none}body{font-family:var(--sans)}html.dialog-open,html.dialog-open body{overflow:hidden}html.scene-resetting,html.scene-resetting body{overscroll-behavior:none}button,input,textarea{font:inherit}#app{position:relative;min-height:3528vh;background:var(--bg)}#app:after{content:"";position:fixed;inset:0;z-index:7;pointer-events:none;background:radial-gradient(circle at center,color-mix(in srgb,var(--accent) 9%,transparent),transparent 42%),color-mix(in srgb,var(--bg) 72%,transparent);opacity:0;transition:opacity .18s ease}html.scene-resetting #app:after{opacity:1}.canvas-shell,#scene-root,#scene-root canvas{position:fixed;inset:0}#scene-root canvas{display:block;width:100%;height:100%}.vignette{position:fixed;inset:0;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.12'/%3E%3C/svg%3E");background-size:180px 180px;opacity:.08}.topbar,.overlay{position:fixed;inset-inline:0;z-index:2}.topbar{top:0;z-index:6;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.25rem 0}.brand{display:flex;flex-direction:column;gap:.2rem}.brand__eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--accent)}.brand__title{border:0;padding:0;background:transparent;color:var(--fg);font-family:var(--mono);font-size:.92rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.brand__title:focus-visible{outline:1px solid var(--accent);outline-offset:.35rem}.language-switch{display:inline-flex;align-items:center;gap:.42rem;font-family:"Geist Mono",var(--mono);font-size:.78rem;letter-spacing:.16em;color:color-mix(in srgb,var(--fg) 46%,transparent)}.language-switch button{border:0;padding:0;background:transparent;color:color-mix(in srgb,var(--fg) 62%,transparent);font:inherit;letter-spacing:inherit;cursor:pointer;transition:color .16s ease,text-shadow .16s ease}.language-switch button[aria-pressed=true]{color:var(--accent);text-shadow:0 0 14px color-mix(in srgb,var(--accent) 42%,transparent)}.language-switch button:focus-visible{outline:1px solid var(--accent);outline-offset:.28rem}.overlay{top:0;bottom:0;display:grid;place-items:center;padding:1.5rem}.hero,.app-stop{width:min(100%,18rem)}.hero{align-self:center;margin-top:-10vh;text-align:center}.hero__eyebrow{margin:0;font-family:"Geist Mono",var(--mono);font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:var(--accent);text-shadow:0 0 18px color-mix(in srgb,var(--accent) 30%,transparent);opacity:0}.hero[data-scene=logo]{width:auto;justify-self:end;align-self:end;margin-top:0;margin-right:clamp(2rem,7vw,7rem);margin-bottom:17vh;text-align:right}.hero[data-scene=site]{width:min(100%,34rem);justify-self:start;align-self:center;margin-top:-8vh;margin-left:clamp(2rem,8vw,8rem);text-align:left}.hero[data-scene=site]>p:nth-of-type(2){margin-inline:0}.hero[data-scene=site] h1{transform-origin:left top}.hero[data-scene=solar],.hero[data-scene=wind],.hero[data-scene=bess],.hero[data-scene=tomgate],.hero[data-scene=beam]{width:min(100%,48rem);justify-self:center;align-self:center;margin-top:-12vh;text-align:center}.hero[data-scene=solar]>p:nth-of-type(2),.hero[data-scene=wind]>p:nth-of-type(2),.hero[data-scene=bess]>p:nth-of-type(2),.hero[data-scene=tomgate]>p:nth-of-type(2),.hero[data-scene=beam]>p:nth-of-type(2){max-width:min(100%,34rem)}.hero[data-scene=beam]>p:nth-of-type(2){color:#fff;text-shadow:0 0 44px color-mix(in srgb,var(--bg) 88%,transparent),0 0 18px color-mix(in srgb,var(--fg) 20%,transparent)}.hero[data-scene=space],.hero[data-scene=final-cloud]{width:min(calc(100vw - 3rem),62rem);justify-self:center;align-self:center;margin-top:-14vh;text-align:center}.hero[data-scene=space] h1,.hero[data-scene=final-cloud] h1{max-width:min(100%,58rem);margin-inline:auto;white-space:normal;text-wrap:balance;line-height:1.03}.hero[data-scene=space]>p:nth-of-type(2),.hero[data-scene=final-cloud]>p:nth-of-type(2){max-width:min(100%,38rem)}.hero h1{margin:.75rem 0 0;font-family:"Geist Mono",var(--mono);color:var(--fg);font-size:clamp(2.8rem,6.4vw,4.95rem);line-height:.92;letter-spacing:-.05em;white-space:nowrap;text-wrap:nowrap;text-shadow:0 0 70px color-mix(in srgb,var(--bg) 84%,transparent),0 0 12px color-mix(in srgb,var(--bg) 68%,transparent);transform-origin:center top;opacity:0;transform:scale(.96)}.hero h1.hero-title--lockup{margin-bottom:.25rem;font-family:"Nunito",var(--sans);font-size:clamp(2.15rem,5vw,4.15rem);line-height:1;letter-spacing:-.04em;white-space:nowrap}.hero-title-lockup{display:inline-flex;align-items:baseline;justify-content:center;gap:.42rem}.hero-title-brand{color:var(--fg);font-weight:400}.hero-title-os{color:var(--accent);font-weight:800}.hero>p:nth-of-type(2){margin:1rem auto 0;max-width:42rem;font-family:"Geist Mono",var(--mono);font-size:clamp(1.1rem,2vw,1.24rem);line-height:1.65;color:var(--fg);text-shadow:0 0 50px color-mix(in srgb,var(--bg) 84%,transparent);opacity:0;transform:translate3d(0,18px,0)}#hero-subtitle,#app-subtitle{font-family:"Geist Mono",var(--mono)}.app-stop{pointer-events:none;width:min(100%,72rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,24rem);gap:clamp(2rem,6vw,7rem);align-items:center;align-self:center;margin-top:-14vh;opacity:0;transform:translate3d(0,1.5rem,0)}.app-stop[data-side=left]{grid-template-columns:minmax(18rem,24rem) minmax(0,1fr)}.app-stop[data-side=left] .app-stop__copy{order:2;text-align:right}.app-stop[data-side=left] .app-stop__logo-shell{order:1;justify-self:start}.app-stop__copy{max-width:28rem}.app-stop__eyebrow{margin:0 0 1rem;font-family:var(--mono);font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:var(--accent)}.app-stop h2{margin:0;font-family:"Geist Mono",var(--mono);font-size:clamp(2.8rem,5vw,4.2rem);line-height:.96;letter-spacing:-.04em;white-space:nowrap;text-wrap:nowrap}.app-stop__copy>p:last-child{margin:1.2rem 0 0;font-family:"Geist Mono",var(--mono);font-size:clamp(1.08rem,1.8vw,1.22rem);line-height:1.7;color:var(--muted)}.join-cta{position:fixed;left:50%;top:50%;z-index:4;translate:-50% 0;overflow:hidden;isolation:isolate;min-width:min(24rem,calc(100vw - 2rem));border:1px solid color-mix(in srgb,var(--accent) 36%,transparent);border-radius:999px;padding:.95rem 1.45rem;background:color-mix(in srgb,var(--bg) 88%,transparent);color:var(--fg);font-family:"Geist Mono",var(--mono);font-size:.95rem;letter-spacing:.04em;cursor:pointer;opacity:0;transform:translate3d(0,1.25rem,0);box-shadow:0 0 20px color-mix(in srgb,var(--bg) 64%,transparent)}.join-cta:before{content:"";position:absolute;inset:-1px;z-index:0;border-radius:inherit;padding:2px;background:conic-gradient(from var(--cta-angle),transparent 0deg,transparent 210deg,color-mix(in srgb,var(--accent) 40%,transparent) 260deg,var(--accent) 292deg,#ffffff 304deg,var(--accent) 318deg,transparent 352deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:cta-border-spin 2.6s linear infinite;opacity:.76}.join-cta{text-shadow:0 0 14px color-mix(in srgb,var(--bg) 72%,transparent)}@property --cta-angle{syntax: "<angle>"; inherits: false; initial-value: 0deg;}.join-cta:hover,.join-cta:focus-visible{border-color:color-mix(in srgb,var(--accent) 58%,transparent);box-shadow:0 0 18px color-mix(in srgb,var(--accent) 12%,transparent)}.join-cta:hover:before,.join-cta:focus-visible:before{opacity:1;background:conic-gradient(from var(--cta-angle),transparent 0deg,transparent 172deg,color-mix(in srgb,var(--accent) 52%,transparent) 232deg,var(--accent) 282deg,#ffffff 302deg,var(--accent) 326deg,transparent 360deg)}@keyframes cta-border-spin{to{--cta-angle: 360deg}}.join-cta[data-visible=false]{pointer-events:none}.dialog-backdrop{position:fixed;inset:0;z-index:8;display:grid;place-items:center;padding:clamp(.8rem,2.4vw,1.5rem);background:color-mix(in srgb,var(--bg) 24%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:1;transition:opacity .18s linear}.dialog-backdrop[hidden]{display:none}.dialog-backdrop[aria-hidden=true]{pointer-events:none;opacity:0}.lead-dialog{position:relative;width:min(100%,47rem);max-height:none;overflow:visible;border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);border-radius:1.1rem;padding:clamp(1rem,2.3vw,1.55rem);background:linear-gradient(135deg,color-mix(in srgb,var(--fg) 5%,transparent),transparent 42%),color-mix(in srgb,var(--bg) 86%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fg) 4%,transparent),0 0 42px color-mix(in srgb,var(--accent) 10%,transparent)}.lead-dialog__close{position:absolute;top:1rem;right:1rem;display:grid;place-items:center;width:2rem;height:2rem;border:1px solid color-mix(in srgb,var(--fg) 18%,transparent);border-radius:999px;padding:0;background:color-mix(in srgb,var(--bg) 86%,transparent);color:var(--fg);cursor:pointer}.lead-dialog__close svg{width:.78rem;height:.78rem;overflow:visible}.lead-dialog__close path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.7}.lead-dialog__header{max-width:34rem;margin-bottom:1rem}.lead-dialog__header p{margin:0 0 .45rem;font-family:var(--mono);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}.lead-dialog__header h2{margin:0;font-family:"Geist Mono",var(--mono);font-size:clamp(1.55rem,3.6vw,2.55rem);line-height:1.05}.lead-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:.95rem;row-gap:.82rem}.lead-form label{display:grid;grid-template-rows:auto auto .9rem;gap:.28rem}.lead-form__trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.lead-form span,.lead-form legend{font-family:var(--mono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.lead-form input,.lead-form select,.lead-form textarea{width:100%;min-height:2.55rem;border:1px solid color-mix(in srgb,var(--accent) 34%,transparent);border-radius:.4rem;padding:.64rem .78rem;background:color-mix(in srgb,var(--bg) 82%,transparent);color:var(--fg);font-family:"Geist Mono",var(--mono);font-size:.88rem;line-height:1.35;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.lead-form input::placeholder,.lead-form textarea::placeholder{color:color-mix(in srgb,var(--muted) 58%,transparent);font-family:"Geist Mono",var(--mono)}.lead-form textarea{min-height:5.65rem;resize:vertical}.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{border-color:var(--accent);background:color-mix(in srgb,var(--bg) 78%,transparent);box-shadow:0 0 18px color-mix(in srgb,var(--accent) 10%,transparent)}.lead-form input.is-invalid,.lead-form select.is-invalid,.lead-form textarea.is-invalid{border-color:#ff5f6d;box-shadow:0 0 16px color-mix(in srgb,#ff5f6d 12%,transparent)}.lead-form input.is-invalid:focus,.lead-form select.is-invalid:focus,.lead-form textarea.is-invalid:focus{border-color:#ff5f6d;box-shadow:0 0 18px color-mix(in srgb,#ff5f6d 16%,transparent)}.field-error{min-height:.9rem;color:#ff7b86;font-family:"Geist Mono",var(--mono);font-size:.68rem;line-height:.9rem;letter-spacing:.02em}.lead-form__wide,.lead-form button{grid-column:1 / -1}.turnstile-slot:empty{display:none}.form-status{min-height:1rem;margin:-.2rem 0 0;color:var(--muted);font-family:var(--mono);font-size:.76rem;line-height:1.35}.form-status[data-state=success]{color:var(--accent)}.form-status[data-state=error]{color:#ff7b86}.lead-form button{justify-self:start;border:1px solid var(--accent);border-radius:999px;padding:.66rem 1.15rem;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--fg);font-family:"Geist Mono",var(--mono);cursor:pointer;box-shadow:0 0 24px color-mix(in srgb,var(--accent) 14%,transparent)}.lead-form button:disabled{cursor:wait;opacity:.62}.app-stop__logo-shell{justify-self:end;width:min(100%,26rem);padding:0;border:0;border-radius:0;background:radial-gradient(circle at center,color-mix(in srgb,var(--accent) 14%,transparent),transparent 62%);-webkit-backdrop-filter:none;backdrop-filter:none;perspective:1200px}.app-stop__logo-shell img{display:block;width:100%;height:auto;transform-origin:center center;transform:rotateY(-14deg) rotate(-2deg) scale(1.04);filter:drop-shadow(0 0 18px color-mix(in srgb,var(--accent) 28%,transparent)) drop-shadow(0 0 42px color-mix(in srgb,var(--accent) 18%,transparent))}.app-stop[data-side=left] .app-stop__logo-shell img{transform:rotateY(14deg) rotate(2deg) scale(1.04)}.scroll-hint{position:fixed;left:50%;bottom:clamp(1.7rem,4vh,3rem);z-index:4;display:grid;gap:.12rem;place-items:center;width:2rem;height:2rem;pointer-events:none;opacity:0;transform:translate3d(-50%,.35rem,0);transition:opacity .42s ease,transform .42s ease}.scroll-hint.is-visible{opacity:.86;transform:translate3d(-50%,0,0)}.scroll-hint span{display:block;width:.82rem;height:.82rem;border-right:1px solid var(--accent);border-bottom:1px solid var(--accent);transform:rotate(45deg);filter:drop-shadow(0 0 6px color-mix(in srgb,var(--accent) 58%,transparent)) drop-shadow(0 0 14px color-mix(in srgb,var(--accent) 32%,transparent));animation:scroll-hint-pulse 1.7s ease-in-out infinite}.scroll-hint span:nth-child(2){margin-top:-.56rem;animation-delay:.16s}@keyframes scroll-hint-pulse{0%,to{opacity:.34;transform:translate3d(0,-.12rem,0) rotate(45deg)}50%{opacity:1;transform:translate3d(0,.18rem,0) rotate(45deg)}}@media(prefers-reduced-motion:reduce){.scroll-hint span{animation:none}}@media(max-width:1100px){.hero[data-scene=space] h1,.hero[data-scene=final-cloud] h1{font-size:clamp(2.25rem,5.6vw,4rem)}}.side-progress{position:fixed;right:1.5rem;top:50%;z-index:3;width:.16rem;height:min(16rem,32vh);border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--fg) 8%,transparent);transform:translateY(-50%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fg) 5%,transparent)}.side-progress span{display:block;width:100%;height:100%;transform-origin:center top;background:var(--accent);box-shadow:0 0 18px color-mix(in srgb,var(--accent) 72%,transparent),0 0 34px color-mix(in srgb,var(--accent) 44%,transparent)}.scroll-track{height:3528vh}@media(max-width:767px){#app{min-height:2604vh}.topbar{padding-top:1rem;gap:1rem}.topbar{padding-inline:1rem}.side-progress{right:1rem;width:.14rem;height:min(11rem,24vh)}.scroll-hint{bottom:1.25rem;scale:.86}.hero{margin-top:-3vh}.hero[data-scene=logo]{justify-self:end;align-self:end;margin-top:0;margin-right:1rem;margin-bottom:14vh;text-align:right}.hero[data-scene=space],.hero[data-scene=final-cloud]{width:min(100%,24rem);margin-top:-22vh}.hero h1{font-size:clamp(1.7rem,7vw,2.7rem)}.hero>p:nth-of-type(2){font-size:clamp(1rem,4vw,1.12rem)}.hero h1.hero-title--lockup{font-size:clamp(1.7rem,8vw,2.4rem)}.hero-title-lockup{gap:.28rem}.app-stop,.app-stop[data-side=left]{margin-top:-8vh}.app-stop,.app-stop[data-side=left]{width:min(100%,22rem);grid-template-columns:1fr;gap:1.5rem;text-align:center}.app-stop[data-side=left] .app-stop__copy,.app-stop[data-side=left] .app-stop__logo-shell{order:initial;text-align:center;justify-self:center}.app-stop__logo-shell{width:min(100%,20rem);justify-self:center}.app-stop__logo-shell img,.app-stop[data-side=left] .app-stop__logo-shell img{transform:scale(1.02)}.app-stop h2{font-size:clamp(1.9rem,7.5vw,2.6rem)}.app-stop__copy>p:last-child{font-size:clamp(1rem,3.8vw,1.12rem)}.join-cta{min-width:min(21rem,calc(100vw - 2rem));font-size:.82rem;padding:.82rem 1rem}.lead-dialog{border-radius:.85rem}.lead-form{grid-template-columns:1fr}.lead-form input,.lead-form select,.lead-form textarea{padding:.68rem .75rem}.scroll-track{height:2604vh}}
