html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}#early-access{scroll-margin-top:16px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Lexend,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.pac-container{border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 8px 20px #11111114;font-family:inherit;padding:4px;z-index:2000}.pac-item{border-top:none;color:#1a202c;padding:10px 12px}.pac-item.pac-item-selected,.pac-item:hover{background-color:#f7fafc}.pac-item .pac-item-query{color:#1a202c;font-weight:600}.pac-matched{color:#2f855a}.pac-icon{margin-right:8px}.pac-logo:after{opacity:.7}.gm-style .gf-map-preview,.gm-style .gf-map-preview *{font-family:Lexend,sans-serif!important}.gm-style .gf-map-preview{box-sizing:border-box;line-height:1.4}.gm-style .gm-style-iw-d:has(.gf-map-preview){overflow-x:hidden!important}.gf-landing{--bg:#fff;--fg:#14211c;--muted:#5b6460;--faint:#9aa19d;--line:#14211c1a;--card:#ffffffdb;--card-line:#14211c14;--tile:#f4f3ef;--accent:#1a7a3e;--action:#1a7a3e;--action-fg:#fff;--hot:#d9541e;--sun:#c98a12;--cool:#2a78d6;--gutter:clamp(20px,6vw,96px);--ease:cubic-bezier(.2,.7,.1,1);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum";background:var(--bg);color:var(--fg);font-family:Lexend,system-ui,sans-serif;font-variant-numeric:tabular-nums;font-weight:400;overflow-x:clip}.gf-landing *,.gf-landing :after,.gf-landing :before{box-sizing:border-box}.gf-landing a{color:inherit}.gf-landing img{display:block;max-width:100%}.gf-landing h1,.gf-landing h2,.gf-landing h3,.gf-landing p{margin:0}.gf-landing em{font-style:normal}.gf-landing .skip{background:var(--action);border-radius:6px;color:#fff;font-size:14px;font-weight:500;left:16px;padding:8px 16px;position:absolute;text-decoration:none;top:-60px;transition:top .15s ease;z-index:60}.gf-landing .skip:focus{top:16px}.gf-landing .btn{align-items:center;background:var(--action);border:0;border-radius:6px;color:var(--action-fg);cursor:pointer;display:inline-flex;font:600 14px/1 Lexend,sans-serif;gap:8px;padding:13px 20px;text-decoration:none;transition:transform .25s var(--ease),background .25s;white-space:nowrap}.gf-landing .btn:hover{background:#156a35;transform:translateY(-1px)}.gf-landing .btn.ghost{background:#0000;box-shadow:inset 0 0 0 1px var(--line);color:var(--fg)}.gf-landing .btn.ghost:hover{background:var(--tile)}.gf-landing .btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.gf-landing .story{background:#fff;height:calc((var(--len) + 1)*100vh);height:calc((var(--len) + 1)*100svh);position:relative}.gf-landing .viewport{height:100vh;height:100svh;overflow:hidden;position:sticky;top:0}.gf-landing .viewport canvas{display:block;height:100%;inset:0;position:absolute;width:100%}.gf-landing .overlay{inset:0;pointer-events:none;position:absolute}.gf-landing .overlay a,.gf-landing .overlay button{pointer-events:auto}.gf-landing .beat{opacity:0;position:absolute;visibility:hidden;will-change:opacity,transform}.gf-landing .leaders{height:100%;inset:0;overflow:visible;pointer-events:none;position:absolute;width:100%}.gf-landing .leader{fill:none;stroke:var(--accent);stroke-width:1.2;opacity:0}.gf-landing .leader-dot{fill:var(--accent);opacity:0}.gf-landing .leader-halo{display:none}.gf-landing .dim{opacity:0}.gf-landing .dim-line{fill:none;stroke:#14211c;stroke-width:1.2}.gf-landing .typed.typing:after,.gf-landing .typed:empty:after{animation:gf-caret 1s steps(1) infinite;background:var(--accent);content:"";display:inline-block;height:1.05em;margin-left:2px;vertical-align:-.15em;width:2px}@keyframes gf-caret{50%{opacity:0}}.gf-landing .rail{display:flex;flex-direction:column;gap:4px;position:absolute;right:18px;top:50%;transform:translateY(-50%);z-index:5}.gf-landing .rail button{all:unset;align-items:center;cursor:pointer;display:flex;gap:10px;height:22px;justify-content:flex-end;padding-left:12px}.gf-landing .rail button:after{background:var(--faint);border-radius:50%;content:"";height:6px;transition:all .35s var(--ease);width:6px}.gf-landing .rail button span{color:var(--fg);font-size:12px;font-weight:500;opacity:0;transform:translateX(6px);transition:all .3s var(--ease);white-space:nowrap}.gf-landing .rail:hover button span{opacity:.55;transform:none}.gf-landing .rail button:hover span,.gf-landing .rail:hover button.on span{opacity:1}.gf-landing .rail button.on:after{background:var(--accent);border-radius:3px;height:18px}.gf-landing .rail button:focus-visible{border-radius:4px;outline:2px solid var(--accent);outline-offset:2px}.gf-landing .chapters{margin-top:-100svh;pointer-events:none;position:relative;z-index:2}.gf-landing .chapter{align-items:center;display:flex;height:100vh;height:100svh;padding:48px var(--gutter) 40px}.gf-landing .chapter.double{align-items:flex-start;flex-direction:column;height:200vh;height:200svh;justify-content:space-around}.gf-landing .chapter.double .inner{display:flex;flex-direction:column;justify-content:center;min-height:60vh}.gf-landing .chapter .inner{pointer-events:auto;width:min(40vw,520px)}.gf-landing .chapter .inner.wide{width:min(44vw,580px)}.gf-landing .wash{background:linear-gradient(90deg,#ffffffeb,#ffffffbf 28%,#fff0 50%);inset:0;opacity:1;opacity:var(--wash,1);pointer-events:none;position:absolute}.gf-landing .chapter.hero{align-items:flex-start;justify-content:center;padding-top:max(56px,9vh);text-align:center}.gf-landing .chapter.hero .inner{align-items:center;display:flex;flex-direction:column;width:min(92vw,980px)}.gf-landing h1{text-wrap:balance;font-size:clamp(44px,6vw,96px);font-weight:600;letter-spacing:-.045em;line-height:.98}.gf-landing .hero .lede{margin-left:auto;margin-right:auto}.gf-landing .cta-row{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:30px}.gf-landing .kicker{align-items:center;color:var(--accent);display:flex;font-size:14px;font-weight:500;gap:10px;margin-bottom:18px}.gf-landing .kicker.hot{color:var(--hot)}.gf-landing .kicker.sun{color:var(--sun)}.gf-landing h2{font-size:clamp(34px,3.7vw,58px);font-weight:600;letter-spacing:-.035em;line-height:1.03}.gf-landing .lede{color:var(--muted);font-size:clamp(16px,1.2vw,18px);line-height:1.6;margin-top:20px;max-width:46ch}.gf-landing .note{color:var(--faint);font-size:12px;margin-top:14px}.gf-landing .green{color:var(--accent)}.gf-landing .search{align-items:center;background:#fff;border-radius:8px;box-shadow:0 0 0 1px var(--line),0 18px 40px #14211c14;display:flex;font-size:17px;gap:12px;margin-top:28px;max-width:460px;padding:14px 18px}.gf-landing .search svg{fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;flex:none;height:20px;width:20px}.gf-landing .search .typed{min-height:1.3em}.gf-landing .sources{grid-gap:9px;display:grid;gap:9px;list-style:none;margin:18px 0 0;padding:0}.gf-landing .sources li{align-items:center;color:var(--muted);display:flex;font-size:14px;gap:10px}.gf-landing .sources i{background:var(--accent);border-radius:50%;flex:none;height:16px;position:relative;width:16px}.gf-landing .sources i:after{border:solid #fff;border-width:0 2px 2px 0;content:"";height:7px;left:5.5px;position:absolute;top:3px;transform:rotate(45deg);width:3.5px}.gf-landing .bars{grid-gap:10px;display:grid;gap:10px;margin-top:26px;max-width:460px}.gf-landing .bar{grid-gap:12px;align-items:center;display:grid;font-size:14px;gap:12px;grid-template-columns:78px 1fr 44px}.gf-landing .bar span{color:var(--muted)}.gf-landing .bar i{background:linear-gradient(90deg,#ffb547,#e8663a);border-radius:3px;display:block;height:10px;transform:scaleX(0);transform-origin:left}.gf-landing .bar b{font-weight:600;text-align:right}.gf-landing .ledger{background:var(--tile);border-radius:8px;margin-top:26px;max-width:440px;padding:6px 18px}.gf-landing .ledger div{border-bottom:1px solid var(--line);display:flex;font-size:14px;gap:16px;justify-content:space-between;padding:11px 0}.gf-landing .ledger div:last-child{border-bottom:0}.gf-landing .ledger span{color:var(--muted)}.gf-landing .ledger b{font-weight:600}.gf-landing .ledger .total b{font-size:20px;font-weight:700;letter-spacing:-.02em}.gf-landing .chapter.double .ledger{width:100%}.gf-landing .ledger.risk b{align-items:center;display:inline-flex;gap:8px}.gf-landing .st{border-radius:50%;display:inline-block;height:9px;width:9px}.gf-landing .st.bad{background:#e34948}.gf-landing .st.warn{background:#eda100}.gf-landing .st.ok{background:#1a7a3e}.gf-landing .figure{margin-top:26px}.gf-landing .figure strong{display:block;font-size:clamp(44px,4.6vw,72px);font-weight:700;letter-spacing:-.04em;line-height:1}.gf-landing .figure>span{color:var(--muted);display:block;font-size:14px;margin-top:8px}.gf-landing .clockface{bottom:8vh;right:var(--gutter);text-align:right}.gf-landing .clockface span{color:var(--sun);display:block;font-size:44px;font-weight:600;letter-spacing:-.03em}.gf-landing .clockface em{color:var(--muted);font-size:12px}.gf-landing .clockface.warm span{color:#d9541e}.gf-landing .chart{margin:24px 0 0;max-width:540px}.gf-landing .chart svg{display:block;height:auto;overflow:visible;width:100%}.gf-landing .chart figcaption{color:var(--faint);font-size:12px;margin-top:6px}.gf-landing .chart .axis{stroke:var(--line);stroke-width:1}.gf-landing .chart .zero{stroke:#14211c;stroke-width:1;stroke-dasharray:3 4;opacity:.4}.gf-landing .chart .lbl{fill:var(--muted);font:500 11px Lexend,sans-serif}.gf-landing .chart .line{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round}.gf-landing .chart .neg{fill:#e8663a1a}.gf-landing .chart .pos{fill:#1a7a3e1f}.gf-landing .chart .pay circle{fill:#fff;stroke:var(--accent);stroke-width:3}.gf-landing .chart .pay text{fill:var(--fg);font:600 13px Lexend,sans-serif}.gf-landing .chart .end{fill:var(--accent);font:700 15px Lexend,sans-serif}.gf-landing .chart .start{fill:#c9502a;font:700 15px Lexend,sans-serif}.gf-landing .tiles{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin-top:20px;max-width:540px}.gf-landing .tiles div{background:var(--tile);border-radius:8px;padding:14px 18px}.gf-landing .tiles span{color:#32544a;display:block;font-size:12px;font-weight:500}.gf-landing .tiles strong{display:block;font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1;margin-top:8px}.gf-landing .tiles em{color:var(--muted);display:block;font-size:11px;margin-top:6px}.gf-landing .tiles .green strong{color:var(--accent)}.gf-landing #c6 .tiles strong{font-size:24px}.gf-landing .daychart{margin:20px 0 0;max-width:540px;position:relative}.gf-landing .daychart svg{display:block;height:auto;overflow:visible;width:100%}.gf-landing .legend-row{color:var(--muted);display:flex;flex-wrap:wrap;font-size:12px;gap:6px 16px;margin-bottom:6px}.gf-landing .legend-row span{align-items:center;display:inline-flex;gap:6px}.gf-landing .sw{border-radius:3px;display:inline-block;height:12px;width:12px}.gf-landing .sw.solar{background:#c98a12}.gf-landing .sw.use{background:#2a78d6;border-radius:1px;height:2px}.gf-landing .sw.batt{background:#1a7a3e;border-radius:1px;height:2px}.gf-landing .daychart .grid{stroke:#14211c14;stroke-width:1}.gf-landing .daychart .axis-l{fill:var(--faint);font:500 10.5px Lexend,sans-serif}.gf-landing .daychart .band{fill:rgba(20,33,28,.045)}.gf-landing .daychart .band-l{fill:var(--muted);font:500 10.5px Lexend,sans-serif}.gf-landing .daychart .solar{fill:#c98a1247;stroke:#c98a12;stroke-width:2;stroke-linejoin:round}.gf-landing .daychart .use{fill:none;stroke:#2a78d6;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.gf-landing .daychart .batt{fill:none;stroke:#1a7a3e;stroke-width:2;stroke-linejoin:round}.gf-landing .daychart .batt-bg{fill:#1a7a3e12}.gf-landing .daychart .direct{fill:var(--fg);font:600 11px Lexend,sans-serif}.gf-landing .daychart .play line{stroke:#14211c;stroke-width:1.5}.gf-landing .daychart .play circle{stroke:#fff;stroke-width:2}.gf-landing .daychart .hover line{stroke:#14211c59;stroke-width:1;stroke-dasharray:3 3}.gf-landing .readout{align-items:baseline;color:var(--muted);display:flex;flex-wrap:wrap;font-size:13px;gap:4px 12px;margin-top:6px;min-height:2.6em}.gf-landing .readout strong{color:var(--fg);font-size:22px;font-weight:600;letter-spacing:-.02em}.gf-landing .readout em{color:var(--fg);font-style:normal;font-weight:500}.gf-landing .tt{background:#14211c;border-radius:4px;color:#fff;font-size:12px;line-height:1.45;padding:8px 10px;pointer-events:none;position:absolute;transform:translate(-50%,-100%);white-space:nowrap}.gf-landing .tt[hidden]{display:none}.gf-landing .tt b{font-weight:600}.gf-landing .table-view{color:var(--muted);font-size:12px;margin-top:8px}.gf-landing .table-view summary{cursor:pointer}.gf-landing .tv-wrap{margin-top:6px;max-height:180px;overflow:auto}.gf-landing .table-view table{font-feature-settings:"tnum";border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.gf-landing .table-view td,.gf-landing .table-view th{border-bottom:1px solid var(--line);padding:3px 8px;text-align:right}.gf-landing .table-view td:first-child,.gf-landing .table-view th:first-child{text-align:left}.gf-landing .tag{--lead:#1a7a3e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:var(--card);border-radius:4px;box-shadow:0 0 0 1px var(--card-line),0 8px 24px #14211c14;color:var(--muted);font-size:12px;padding:7px 11px;white-space:nowrap}.gf-landing .tag b{color:var(--fg);font-weight:600;margin-right:4px}.gf-landing .tag.hot{--lead:#d9541e}.gf-landing .tag.hot b{color:#b8431a}.gf-landing .tag.sun{--lead:#c98a12}.gf-landing .tag.ok{--lead:#1a7a3e}.gf-landing .tag.cool{--lead:#2a78d6}.gf-landing .tag.cool b{color:#1f5fa8}.gf-landing .dimlabel{background:#14211c;border-radius:3px;color:#fff;font-size:12px;font-weight:600;padding:3px 8px;translate:-50% -50%;white-space:nowrap}.gf-landing .stats{grid-gap:clamp(24px,5vw,80px);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:#ffffffdb;border-radius:8px;bottom:9vh;box-shadow:0 0 0 1px var(--line),0 20px 60px #14211c14;display:grid;gap:clamp(24px,5vw,80px);grid-template-columns:repeat(3,auto);padding:22px 34px;right:var(--gutter)}.gf-landing .stats strong{display:block;font-size:clamp(28px,3vw,46px);font-weight:700;letter-spacing:-.035em;line-height:1}.gf-landing .stats span{color:var(--muted);display:block;font-size:13px;margin-top:8px}.gf-landing .foot{bottom:3.5vh;color:var(--faint);font-size:11px;left:0;right:var(--gutter);text-align:right}.gf-landing .chapter.portfolio .btn{align-self:flex-start;margin-top:26px}.gf-landing .story.no-3d{height:auto}.gf-landing .story.no-3d .viewport{display:none}.gf-landing .story.no-3d .chapters{margin-top:0}.gf-landing .story.no-3d .chapter,.gf-landing .story.no-3d .chapter.double{height:auto;min-height:0;padding-bottom:64px;padding-top:64px}.gf-landing .story.no-3d .chapter .inner{opacity:1!important;transform:none!important;visibility:visible!important;width:min(100%,640px)}.gf-landing .story.no-3d .bar i{transform:scaleX(calc(var(--v)/38))}.gf-landing .sx{padding:clamp(80px,12vw,150px) var(--gutter);position:relative}.gf-landing .sx-kicker{color:var(--accent);font-size:14px;font-weight:500;margin-bottom:14px}.gf-landing .sx-title{font-size:clamp(32px,4.2vw,58px);font-weight:600;letter-spacing:-.025em;line-height:1.05;max-width:18ch}.gf-landing .sx-lede{color:var(--muted);font-size:clamp(16px,1.4vw,19px);line-height:1.55;margin-top:20px;max-width:60ch}.gf-landing .sector-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-top:56px}.gf-landing .sector{background:var(--tile);border-radius:8px;display:flex;flex-direction:column;gap:14px;min-height:280px;overflow:hidden;padding:30px;position:relative;text-decoration:none;transition:transform .4s var(--ease),background .3s}.gf-landing .sector:hover{background:#eeede7;transform:translateY(-4px)}.gf-landing .sector:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.gf-landing .sector svg{fill:none;stroke:var(--accent);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;height:34px;width:34px}.gf-landing .sector h3{font-size:22px;font-weight:600;letter-spacing:-.01em;margin-top:auto}.gf-landing .sector p{color:var(--muted);font-size:15px;line-height:1.55}.gf-landing .sector .more{color:var(--accent);font-size:13px;font-weight:600}.gf-landing .logos{padding-bottom:40px;padding-top:40px;text-align:center}.gf-landing .logos .sx-kicker{color:var(--muted)}.gf-landing .logo-track{-webkit-mask-image:linear-gradient(90deg,#0000,#000 12%,#000 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12%,#000 88%,#0000);overflow:hidden}.gf-landing .logo-row{align-items:center;animation:gf-marquee 38s linear infinite;display:flex;gap:72px;padding:14px 0;width:max-content}.gf-landing .logo-row img{filter:grayscale(1) contrast(1.1);height:38px;opacity:.8;width:auto}@keyframes gf-marquee{to{transform:translateX(-50%)}}.gf-landing .value-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1.3fr 1fr 1fr;margin-top:56px}.gf-landing .v.big{display:flex;flex-direction:column;grid-row:span 2;justify-content:center}.gf-landing .v{background:var(--tile);border-radius:8px;padding:30px}.gf-landing .v strong{color:var(--accent);display:block;font-size:clamp(64px,8vw,120px);font-weight:700;letter-spacing:-.04em;line-height:.9}.gf-landing .v.big span{display:block;font-size:18px;font-weight:600;margin:14px 0 18px}.gf-landing .v h3{font-size:20px;font-weight:600;margin-bottom:12px}.gf-landing .v p{color:var(--muted);font-size:15px;line-height:1.6}@media (max-width:900px){.gf-landing .chapter .inner,.gf-landing .chapter .inner.wide{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffe0;border-radius:8px;padding:22px;width:100%}.gf-landing .chapter{align-items:flex-end;padding:80px 16px 24px}.gf-landing .chapter.hero{align-items:flex-start;padding-top:40px}.gf-landing .chapter.hero .inner{backdrop-filter:none;-webkit-backdrop-filter:none;background:none}.gf-landing .wash{display:none}.gf-landing .stats{gap:14px;grid-template-columns:1fr 1fr 1fr;padding:16px;right:16px;width:calc(100% - 32px)}.gf-landing .clockface,.gf-landing .rail,.gf-landing .tag{display:none}.gf-landing .sector-grid,.gf-landing .value-grid{grid-template-columns:1fr}}@media (max-width:560px){.gf-landing .tiles{grid-template-columns:1fr 1fr}.gf-landing .tiles div:last-child{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.gf-landing .logo-row{animation:none}}
/*# sourceMappingURL=main.7a970446.css.map*/