@font-face{font-family:NuText;src:url('assets/fonts/e455235dfac7bc28-s.p.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:NuText;src:url('assets/fonts/b14a465a3b5e3c04-s.p.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:NuDisplay;src:url('assets/fonts/a6aa17f18faf179c-s.p.woff2') format('woff2');font-weight:600;font-display:swap}
:root{--purple:#8d0de3;--ink:#1e002f;--canvas:#f2f2f2;--muted:#52525d;--gutter:5.9%;font-family:NuText,Arial,sans-serif;color:var(--ink);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--canvas)}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #6f00b5;outline-offset:4px}a:hover{text-decoration:underline;text-underline-offset:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:20;left:16px;top:-100px;background:white;padding:12px;border-radius:8px}.skip-link:focus{top:8px}
.header{height:64px;background:#fff;position:relative;z-index:5}.nav-wrap{max-width:1492px;padding:0 var(--gutter);margin:auto;display:flex;align-items:center;height:64px;gap:8px}.brand{width:64px;height:64px;display:grid;place-items:center;background:var(--purple);flex-shrink:0}.brand img{display:block;width:35.109px;height:19.07px}.desktop-nav{display:flex;align-items:center;gap:24px;margin-left:8px;white-space:nowrap;font-weight:600;font-size:16px}.nav-actions{margin-left:auto;display:flex;gap:24px;align-items:center;font-size:16px;font-weight:600}.business{color:var(--purple);white-space:nowrap}.pill{display:flex;align-items:center;justify-content:center;gap:16px;border:0;background:var(--purple);color:white;border-radius:999px;font-weight:600;transition:background .18s,transform .18s}.pill:hover{background:#750abd;text-decoration:none}.pill:active{transform:scale(.985)}.nav-cta{height:48px;padding:0 24px;white-space:nowrap}.menu-toggle,.mobile-menu{display:none}
.hero{position:relative;max-width:1492px;min-height:829px;margin:0 auto;overflow:hidden;isolation:isolate}.visual{position:absolute;inset:0;z-index:0}.artboard{position:absolute;top:7px;left:-7.842%;width:108.579%;aspect-ratio:16/9}.product{display:block;width:100%;height:100%;user-select:none}.controls{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.key-hit{pointer-events:all;cursor:pointer;fill:transparent;stroke:transparent;stroke-width:2;transition:fill .14s}.key-hit:hover{fill:#8d0de318}.key-hit:focus-visible{outline:none;stroke:#7000b5;fill:#ffffff35;stroke-width:3}.key-hit.pressed{fill:#8d0de33d}.display-overlay{pointer-events:none;opacity:0;transition:opacity .16s}.display-overlay.active{opacity:1}.screen-html{width:400px;height:190px;overflow:hidden;border-radius:15px;background:linear-gradient(152deg,#202026 49%,#2e2e34 85%,#606064);color:#ecebf0;font-family:Arial,sans-serif;font-size:11px;padding:14px 18px 10px;line-height:1.15}.screen-title{font-size:16px;font-weight:bold;margin:0 0 15px}.screen-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 25px}.screen-cell span{display:block;font-size:9px;margin-bottom:6px;color:#cac0db}.screen-cell strong{font-size:21px;white-space:nowrap;letter-spacing:-.5px}.screen-cell.total strong{color:#d6b1f5}.screen-cell.yield strong{color:#c1e1ac;font-size:17px}.screen-cell.month strong{font-size:16px}.screen-divider{position:absolute;top:34px;left:206px;width:1px;height:101px;background:#a497b6}.screen-foot{position:absolute;bottom:10px;left:18px;font-size:5px;color:#c8c2d0}.chart{position:absolute;left:232px;bottom:20px;height:26px;display:flex;align-items:flex-end;gap:6px}.chart i{display:block;width:13px;background:#c7afd9;border-radius:2px;height:var(--bar);transition:height .4s}.months-html{width:70px;height:68px;background:linear-gradient(150deg,#232328,#303036);border-radius:10px;text-align:center;padding:14px 0;color:white;font:600 15px/1.3 Arial,sans-serif}.months-html small{display:block;font-size:11px;margin-top:5px}.simulation-note{position:absolute;bottom:24px;right:10%;width:36%;text-align:center;font-size:12px;line-height:1.5;color:#675d72}.copy{position:relative;z-index:1;padding-top:141px;margin-left:6.1%;width:501.64px;pointer-events:none}.copy>*{pointer-events:auto}.eyebrow{font-family:NuDisplay,Arial,sans-serif;color:var(--purple);font-size:34px;line-height:1.1;letter-spacing:-.7px;margin:0 0 8px;font-weight:600}h1{font-family:NuDisplay,Arial,sans-serif;font-size:72px;line-height:.94;letter-spacing:-1.2px;margin:0;font-weight:600}.description{font-size:21px;line-height:1.4;letter-spacing:-.25px;color:#111;margin:24px 0 0}.signup{width:416px;max-width:100%;background:#fff;padding:24px;border-radius:16px;margin-top:24px}.signup h2{font-size:22px;line-height:1.2;color:#111;font-weight:600;padding:0 8px;margin:0 0 16px;letter-spacing:-.3px}.field input{width:100%;height:56px;border:1px solid #dbdbdb;border-radius:8px;padding:0 20px;color:var(--ink);font-size:21px;background:white;transition:border-color .2s}.field input::placeholder{color:var(--muted);opacity:1}.field input[aria-invalid=true]{border-color:#bb2851}.continue{width:100%;height:56px;justify-content:space-between;padding:0 28px;font-size:20px;margin-top:16px}.continue>span:last-child{font:28px Arial,sans-serif}.form-message{color:#a92748;font-size:14px;line-height:1.4;margin:12px 0 0}.form-message:empty{display:none}dialog{border:0;border-radius:24px;max-width:430px;width:calc(100% - 40px);padding:36px;color:var(--ink);box-shadow:0 20px 90px #1e002f25}dialog::backdrop{background:#1e002f66;backdrop-filter:blur(5px)}dialog h2{font-family:NuDisplay,Arial,sans-serif;font-size:30px;margin:8px 0 16px}dialog p{font-size:16px;line-height:1.5}dialog .pill{padding:16px;margin-top:24px}.close-dialog{position:absolute;top:10px;right:16px;border:0;background:transparent;font-size:28px;color:var(--muted)}
@media(min-width:1493px){.hero{min-height:calc(100vh - 64px)}.visual{overflow:hidden}}
@media(min-width:901px) and (max-width:1200px){.desktop-nav{gap:16px;font-size:14px}.nav-actions{gap:14px;font-size:14px}.nav-cta{padding:0 18px}.copy{width:38%;padding-top:clamp(80px,9.45vw,141px)}.hero{min-height:calc(100vh - 64px)}.eyebrow{font-size:28px}h1{font-size:60px}.description{font-size:19px}.signup{padding:20px}.signup h2{font-size:20px}.field input{font-size:18px}.continue{font-size:18px}.artboard{top:35px}.simulation-note{bottom:30px}}
@media(max-width:1000px){.desktop-nav{gap:16px}.desktop-nav a:nth-child(2),.business{display:none}.nav-wrap{padding:0 24px}}
@media(max-width:900px){.header,.nav-wrap{height:64px}.nav-wrap{padding:0 20px;gap:12px}.brand{width:56px;height:64px}.desktop-nav{display:none}.nav-actions{margin-left:auto}.nav-cta{height:40px;font-size:13px;padding:0 16px}.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:40px;height:44px;background:transparent;border:0;padding:8px}.menu-toggle span{display:block;width:22px;height:2px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-menu:not([hidden]){display:flex;position:absolute;top:64px;left:0;right:0;padding:16px 24px 24px;background:white;box-shadow:0 16px 24px #1e002f0c;flex-direction:column;gap:0}.mobile-menu a{padding:13px 0}.hero{display:grid;grid-template-columns:minmax(0,1fr);padding:40px 24px 32px;min-height:0}.copy{display:contents}.intro{grid-row:1}.eyebrow{font-size:24px;margin-bottom:8px}h1{font-size:56px;line-height:1;letter-spacing:-1px}.description{font-size:18px;line-height:1.45;margin-top:20px;max-width:440px}.visual{position:relative;grid-row:2;height:112vw;max-height:520px;margin:0 -24px;overflow:hidden}.artboard{width:240%;left:-122%;top:-13vw}.signup{grid-row:3;width:100%;max-width:460px;margin:0 auto;padding:24px}.signup h2{font-size:21px;padding:0}.field input{font-size:18px}.continue{font-size:18px}.simulation-note{bottom:2px;left:8%;right:8%;width:auto;font-size:12px;margin:0}.screen-html{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Keep the original upper-right studio reflection on the live display. */
.screen-html{background:linear-gradient(215deg,#67676b 0%,#303036 23%,#202026 54%)}
.screen-grid{row-gap:17px}.screen-cell strong{font-size:22px}
@media(max-width:900px){.artboard{left:-118%}}

@media(max-width:900px){.intro{width:100%;max-width:480px;justify-self:center}.visual{width:calc(100% + 48px);max-width:480px;justify-self:center}.artboard{top:max(-62px,-13vw)}}
@media(min-width:901px) and (max-width:1200px){.product{mask-image:linear-gradient(#000 83%,transparent 100%)}}
/* Revision: tactile interaction, readable display and a working power switch. */
.artboard{transform-origin:70% 44%;transform:perspective(1400px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .48s cubic-bezier(.2,.7,.2,1)}
.motion-surface{pointer-events:all}
.key-hit,.key-hit:hover,.key-hit.pressed,.key-hit:focus,.key-hit:focus-visible,.power-hit,.power-hit:focus,.power-hit:focus-visible{fill:transparent;stroke:transparent;outline:none!important;-webkit-tap-highlight-color:transparent}
.key-hit.keyboard-focus{stroke:#cfb0ff;stroke-width:2;stroke-dasharray:3 4;fill:transparent}
.power-hit{pointer-events:all;cursor:pointer}.power-hit:focus-visible{stroke:#cfb0ff;stroke-width:2}
.key-light{pointer-events:none;opacity:0;transition:opacity .28s ease-out}.key-light.lit{opacity:1;transition:opacity .025s linear}.light-halo{fill:none;stroke:#ac55ff;stroke-width:11;stroke-linecap:round}.light-core{fill:none;stroke:#e3c5ff;stroke-width:2.5;stroke-linecap:round}
.screen-html{position:relative;padding:0;background:linear-gradient(215deg,#67676b 0%,#303036 23%,#202026 54%)}
.screen-content{opacity:1;transition:opacity .18s}.screen-title{position:absolute;left:20px;top:11px;margin:0;font-size:18px;line-height:21px;font-weight:600}
.screen-grid{position:absolute;inset:42px 20px auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:36px;row-gap:10px}
.screen-cell{min-width:0;overflow:hidden}.screen-cell span{font-size:12.8px;line-height:15px;margin:0 0 4px;color:#ddd5e7;white-space:nowrap}.screen-cell strong{display:block;font-size:24px;line-height:27px;letter-spacing:-.6px;font-weight:500;white-space:nowrap}.screen-cell.month strong,.screen-cell.yield strong{font-size:20px;line-height:24px}.screen-divider{top:45px;left:199.5px;height:81px;background:#9f90b6;opacity:.65}
.screen-foot{position:absolute;left:20px;bottom:11px;font-size:11px;line-height:13px;color:#cbc4d5}.growth-chart{position:absolute;left:218px;bottom:13px;width:162px;height:36px;overflow:visible;opacity:1;transition:opacity .2s}.growth-chart.pending{opacity:.15}.chart-baseline{fill:none;stroke:#9681ab;stroke-opacity:.30;stroke-width:.7}#chart-line{fill:none;stroke:#dab2ff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}#chart-end{fill:#e7caff}.months-html{padding:11px 0;font-size:20px;line-height:1.25}.months-html small{font-size:13px;margin-top:4px}
.is-off .screen-content{opacity:0}.is-off .key-light{opacity:0!important}.is-off .screen-html{background:linear-gradient(215deg,#48484d,#222227 40%,#17171c)}.is-off .months-html{background:linear-gradient(150deg,#232328,#1c1c21)}.is-off .key-hit{cursor:default}
.simulation-note{font-size:14px;line-height:1.45}
@media(prefers-reduced-motion:reduce){.artboard{transform:none!important;transition:none!important}.key-light{transition:none!important}}

/* Actual cap displacement, with no click outline or luminous stroke. */
.key-cap{pointer-events:none;transform:translate(0,0);transition:transform .14s cubic-bezier(.2,.7,.3,1)}
.key-cap.depressed{transform:translate(var(--press-x),var(--press-y));transition-duration:.055s}
.key-well{pointer-events:none}
.screen-grid{column-gap:44px}.screen-foot{font-size:12px;line-height:14px}
/* Centered scroll narrative: one message, surrounded by an expanding orbit. */
.benefits{background:#25104e;color:#f8f5fd;position:relative;overflow:clip}
.benefits-stage{position:relative;height:100svh;min-height:650px;overflow:hidden}
.benefits-grid{max-width:1492px;height:100%;margin:auto;position:relative;padding:0 6.1%;isolation:isolate}
#benefits-title{position:absolute;top:50%;left:6.1%;right:6.1%;width:auto;margin:0;text-align:center;font:400 clamp(54px,6.5vw,96px)/1.08 NuText,Arial,sans-serif;letter-spacing:-1.5px;z-index:3;transform:translateY(-50%);transform-origin:center}
.orbit-visual{position:absolute;inset:-12%;pointer-events:none;z-index:0;mask-image:linear-gradient(to bottom,#000 0%,#000 55%,#000b 72%,#0003 88%,transparent 100%)}
.scroll-ready .orbit-visual{visibility:hidden;opacity:0}
.orbit-canvas{display:block;width:100%;height:100%;opacity:0;transition:opacity .3s}
.orbit-visual.loaded .orbit-canvas{opacity:1}.orbit-visual.loaded .orbit-fallback{opacity:0}
.orbit-fallback{position:absolute;width:75%;height:auto;top:50%;left:50%;transform:translate(-50%,-50%) rotate(90deg);transition:opacity .3s;mix-blend-mode:lighten}
.benefits-veil{display:none}
.benefit-messages{position:absolute;inset:0 6.1%;z-index:2;display:grid;place-items:center;pointer-events:none}
.benefit-message{grid-area:1/1;text-align:center;width:100%;max-width:850px;margin:0;font:400 clamp(28px,3.25vw,48px)/1.22 NuText,Arial,sans-serif;letter-spacing:-.8px;text-wrap:balance;color:#f8f5fd;text-shadow:0 2px 16px #25104e;opacity:0;transform:translateY(36px);visibility:hidden}
.benefit-message strong{font-weight:600;color:#e0c2ff}
.benefits-source{position:relative;max-width:1492px;margin:auto;padding:32px 6.1% 48px;color:#d7c6f1;font-size:14px;line-height:1.5;text-align:center}
@media(max-width:900px){.benefits-stage{min-height:600px}.benefits-grid{padding:0 24px}#benefits-title{left:24px;right:24px;font-size:clamp(42px,9.5vw,68px);letter-spacing:-.8px}.benefit-messages{inset:0 28px}.benefit-message{font-size:clamp(27px,6.3vw,36px);line-height:1.23}.orbit-visual{inset:0 -52%}.benefits-source{padding:28px 24px 36px}}
.benefits:not(.scroll-ready) .benefits-stage{height:auto;min-height:0;padding:80px 0 32px}
.benefits:not(.scroll-ready) #benefits-title{position:relative;top:auto;left:auto;right:auto;transform:none;font-size:44px;margin-bottom:64px}
.benefits:not(.scroll-ready) .benefit-messages{position:relative;inset:auto;display:block}
.benefits:not(.scroll-ready) .benefit-message{opacity:1;visibility:visible;transform:none;font-size:30px;margin:0 auto 64px}
.benefits:not(.scroll-ready) .orbit-visual{opacity:.24}.benefits:not(.scroll-ready) .benefits-veil{opacity:.8}
/* WebGL replaces the raster object, including caps, shadows and display glass. */
.artboard{transform:none;transition:none}
.calculator-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.webgl-ready .product,.webgl-ready .display-overlay{visibility:hidden}
.webgl-ready .key-cap,.webgl-ready .key-well{display:none}
.months-html{color:#b9b3c4;font-weight:400;font-size:18px}.months-html small{color:#a39bae;font-weight:400}

/* Reveal the final interactive frame atomically instead of flashing the old raster display. */
.artboard{opacity:0;transition:opacity .18s ease-out}
.artboard.webgl-ready,.artboard[data-renderer="fallback"]{opacity:1}
.scroll-cue{position:absolute;top:calc(50% + 136px);left:0;right:0;z-index:3;display:flex;align-items:center;flex-direction:column;gap:12px;font-size:14px;color:#d4c4eb;pointer-events:none}
@media(max-width:900px){.scroll-cue{top:calc(50% + 112px)}}
.benefits:not(.scroll-ready) .scroll-cue{display:none}

.months-html{font-size:21px}.months-html small{font-size:15px}

/* Repeated calculator clicks must not select the adjacent simulation note. */
.visual,.visual *{-webkit-user-select:none;user-select:none}

/* Keep the scroll cue anchored below the title at every viewport size. */
.benefits-intro{position:absolute;top:50%;left:6.1%;right:6.1%;z-index:3;transform:translateY(-50%);text-align:center}
.benefits-intro #benefits-title{position:relative;top:auto;left:auto;right:auto;transform:none;margin:0}
.benefits-intro .scroll-cue{position:relative;top:auto;left:auto;right:auto;margin:36px auto 0}
.benefits:not(.scroll-ready) .benefits-intro{position:relative;top:auto;left:auto;right:auto;transform:none;margin-bottom:64px}
.benefits:not(.scroll-ready) .benefits-intro #benefits-title{margin:0}
@media(max-width:900px){.benefits-intro{left:24px;right:24px}.benefits-intro .scroll-cue{margin-top:28px}}

/* Swap the card fallback atomically; crossfading two poses looks like duplication. */
.orbit-canvas,.orbit-fallback{transition:none}
.orbit-visual.loading .orbit-fallback{visibility:hidden}
