:root{--night: #120b3f;--indigo: #1b1066;--violet: #5a33e6;--violet-soft: #8c6cff;--mint: #6ee7b7;--pink: #ff8fbd;--cyan: #48cde0;--paper: #f6f5fa;--paper-step: #e9e6f2;--ink: #14111f;--ink-soft: #5d5873;--white: #ffffff;--font: "Onest", "Segoe UI", Roboto, Arial, sans-serif;--gutter: clamp(16px, 3vw, 40px);--radius: 999px;--step-hero: clamp(54px, 7.6vw, 128px);--step-display: clamp(52px, 9vw, 150px);--step-title: clamp(36px, 4.6vw, 76px);--step-lede: clamp(18px, 1.45vw, 22px);--step-small: 15px;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.4, .64, 1);color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1;overflow-x:hidden}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit}img{display:block;max-width:100%;height:auto}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}:focus-visible{outline:3px solid var(--mint);outline-offset:3px}::selection{background:var(--mint);color:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip{position:absolute;left:var(--gutter);top:-80px;z-index:20;padding:12px 20px;background:var(--mint);color:var(--ink);border-radius:var(--radius);font-weight:700;text-decoration:none}.skip:focus{top:12px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border-radius:var(--radius);font-weight:700;font-size:17px;text-decoration:none;white-space:nowrap;transition:transform .16s var(--ease-out),background-color .2s var(--ease-out),color .2s var(--ease-out)}.button:hover{transform:translateY(-2px)}.button:active{transform:scale(.97);transition-duration:90ms}.button-mint{background:var(--mint);color:var(--ink)}.button-mint:hover{background:var(--white)}.button-light{background:var(--white);color:var(--ink)}.button-light:hover{background:var(--mint)}.button-ghost{background:#ffffff24;color:var(--white)}.button-ghost:hover{background:#ffffff42}.line{display:block;overflow:hidden;padding-bottom:.26em;margin-bottom:-.26em}.line-inner{display:block;will-change:transform}.hero{position:relative;min-height:100svh;background:var(--indigo);color:var(--white);display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;isolation:isolate}.hero-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;display:block}.nav{display:flex;align-items:center;gap:32px;padding:20px var(--gutter)}.wordmark{display:inline-flex;align-items:center;gap:12px;font-weight:800;font-size:26px;letter-spacing:-.03em;text-decoration:none}.wordmark svg{width:38px;height:30px;transition:transform .4s var(--ease-spring)}.wordmark:hover svg{transform:translateY(-3px) rotate(-6deg)}.nav-links{display:flex;gap:28px;margin-left:auto;font-size:16px;font-weight:500}.nav-links a{text-decoration:none;opacity:.86;transition:opacity .16s}.nav-links a:hover{opacity:1;text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:3px;text-underline-offset:6px}.nav-action{gap:10px;min-height:44px;padding:0 20px;font-size:16px}.hero-copy{align-self:end;padding:0 var(--gutter) clamp(28px,4vw,56px);max-width:1100px}.hero-title{font-size:var(--step-hero);font-weight:700;letter-spacing:-.055em;line-height:.92}.hero-lede{margin-top:32px;max-width:36ch;font-size:var(--step-lede);line-height:1.5}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.hero-note{padding:18px var(--gutter);background:var(--night);font-size:var(--step-small);font-weight:500}@media (max-width: 860px){.nav-links{display:none}.nav-action{margin-left:auto}.hero-copy{padding-top:42svh}}.js [data-reveal]{opacity:0;transform:translateY(24px)}@media (prefers-reduced-motion: reduce){.js [data-reveal]{opacity:1;transform:none}.button,.wordmark svg{transition:none}}.github-icon{width:20px;height:20px;fill:currentColor;flex:none}.how{position:relative;height:460vh;background:var(--paper)}.how-sticky{position:sticky;top:0;height:100svh;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.how-text{display:grid;grid-template-rows:1fr auto;padding:clamp(32px,6vw,96px) var(--gutter) clamp(28px,4vw,56px)}.how-clauses{position:relative;align-self:center;min-height:15em}.clause{position:absolute;inset:0 0 auto;opacity:0;visibility:hidden}.clause.is-active{opacity:1;visibility:visible}.clause-title{font-size:clamp(44px,5.6vw,96px);font-weight:700;letter-spacing:-.05em;line-height:.95;max-width:10ch}.clause-body{margin-top:28px;max-width:34ch;font-size:var(--step-lede)}.stages{display:grid;gap:14px}.stage-range{-webkit-appearance:none;appearance:none;width:100%;height:32px;background:transparent;cursor:grab;--fill: 0%}.stage-range:active{cursor:grabbing}.stage-range::-webkit-slider-runnable-track{height:8px;border-radius:var(--radius);background:linear-gradient(to right,var(--ink) var(--fill),var(--paper-step) var(--fill))}.stage-range::-moz-range-track{height:8px;border-radius:var(--radius);background:var(--paper-step)}.stage-range::-moz-range-progress{height:8px;border-radius:var(--radius);background:var(--ink)}.stage-range::-webkit-slider-thumb{-webkit-appearance:none;width:32px;height:32px;margin-top:-12px;border-radius:50%;background:var(--violet);border:0;transition:transform .16s var(--ease-out)}.stage-range::-moz-range-thumb{width:32px;height:32px;border-radius:50%;background:var(--violet);border:0}.stage-range:hover::-webkit-slider-thumb{transform:scale(1.12)}.stage-names{display:grid;grid-template-columns:repeat(4,1fr);font-size:16px;font-weight:500;color:var(--ink-soft)}.stage-names li{transition:color .2s}.stage-names li.is-active{color:var(--ink);font-weight:700}.how-stage{position:relative;min-height:0;overflow:hidden;background:var(--violet)}.how-stage .phone{position:absolute;left:50%;top:50%;margin:calc(var(--phone-h) / -2) 0 0 calc(var(--phone-w) / -2)}@media (max-width: 860px){.how{height:520vh}.how-sticky{grid-template-columns:1fr;grid-template-rows:54svh 1fr}.how-stage{order:-1}.how-text{padding-top:22px;grid-template-rows:auto 1fr;gap:18px}.how-clauses{align-self:start;min-height:0}.clause-title{font-size:9vw;max-width:none}.clause-body{margin-top:12px;font-size:17px}.stages{order:-1}.stage-names{font-size:14px}}.field-chapter{position:relative;min-height:78svh;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:auto 1fr auto;column-gap:20px;padding:clamp(32px,5vw,72px) var(--gutter);overflow:hidden}.chapter-mint{background:var(--mint);color:var(--ink)}.chapter-pink{background:var(--pink);color:var(--ink)}.chapter-cyan{background:var(--cyan);color:var(--ink)}.chapter-night{background:var(--night);color:var(--white)}.chapter-text{grid-column:8 / span 5;grid-row:1;max-width:34ch;font-size:19px;font-weight:500}.chapter-phrase .line{overflow:visible}.chapter-phrase{grid-column:1 / -1;grid-row:3;font-size:var(--step-display);font-weight:800;letter-spacing:-.055em;line-height:.9}.is-mirrored .chapter-text{grid-column:1 / span 5}.is-mirrored .chapter-phrase{text-align:right}@media (max-width: 860px){.field-chapter{min-height:66svh}.chapter-text,.is-mirrored .chapter-text{grid-column:1 / -1;font-size:17px}.chapter-phrase{font-size:15vw}.is-mirrored .chapter-phrase{text-align:left}}.chapter-tab{display:none}@media (min-height: 700px) and (prefers-reduced-motion: no-preference){.fields{--chapter-tab: 56px}.fields:after{content:"";display:block;height:45svh}.field-chapter{position:sticky;top:calc(var(--chapter-tab) * var(--chapter-index, 0));min-height:calc(100svh - var(--chapter-tab) * var(--chapter-index, 0));grid-template-rows:var(--chapter-tab) auto 1fr auto;padding-top:0}.field-chapter:nth-child(2){--chapter-index: 1}.field-chapter:nth-child(3){--chapter-index: 2}.field-chapter:nth-child(4){--chapter-index: 3}.field-chapter+.field-chapter{margin-top:30svh}.chapter-tab{display:flex;align-items:center;grid-column:1 / -1;grid-row:1;position:relative;z-index:1;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter);background:inherit;font-size:20px;font-weight:700;letter-spacing:-.02em}.chapter-text{grid-row:2}.chapter-phrase{grid-row:4}}.showcase{display:grid;grid-template-columns:5fr 7fr;gap:20px;padding:clamp(80px,10vw,180px) var(--gutter) 0;background:var(--paper)}.showcase-index,.showcase-stage{min-width:0}.showcase-title{font-size:var(--step-small);font-weight:700;color:var(--violet);margin-bottom:28px;font-size:20px}.showcase-list{display:grid;justify-items:start}.showcase-list button{font-size:clamp(32px,3.8vw,60px);font-weight:700;letter-spacing:-.04em;line-height:1.15;color:var(--ink-soft);opacity:.55;text-align:left;transition:opacity .2s var(--ease-out),color .2s,transform .3s var(--ease-out)}.showcase-list button:hover{opacity:.85;transform:translate(8px)}.showcase-list button[aria-selected=true]{color:var(--ink);opacity:1}.showcase-action{margin-top:32px}.showcase-stage{position:relative;height:88svh;min-height:560px;background:var(--paper-step);overflow:hidden;border-radius:28px 28px 0 0}.showcase-shot{position:absolute;top:72px;left:clamp(24px,8%,96px);width:min(441px,70%);border-radius:34px;transition:opacity .22s var(--ease-out),transform .42s var(--ease-out)}.showcase-shot.is-swapping{opacity:0;transform:translateY(18px) scale(.985)}.showcase-caption{position:absolute;right:28px;bottom:28px;max-width:22ch;font-size:18px;font-weight:500;text-align:right}@media (max-width: 860px){.showcase{grid-template-columns:1fr}.showcase-list{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px;scrollbar-width:none}.showcase-list button{font-size:24px;white-space:nowrap;scroll-snap-align:start}.showcase-stage{height:76svh;min-height:0}.showcase-shot{top:112px;left:16px;width:78%}.showcase-caption{position:static;max-width:none;padding:16px;font-size:16px;text-align:left}}.tech{background:var(--indigo);color:var(--white);padding:clamp(96px,12vw,200px) var(--gutter)}.tech-head{display:grid;grid-template-columns:7fr 5fr;gap:20px;align-items:end}.tech-title,.open-title{font-size:var(--step-display);font-weight:800;letter-spacing:-.055em;line-height:.9}.tech-lede{max-width:36ch;font-size:19px}.arch{display:block;width:100%;height:auto;margin:clamp(56px,7vw,112px) 0}.arch-links path{fill:none;stroke:var(--mint);stroke-width:4;stroke-linecap:round}.arch-links [data-flow=phone-api],.arch-links [data-flow^=api-]{stroke:var(--pink)}.arch-nodes rect{fill:#2a1d86;rx:22px}.arch-nodes .is-phone rect{fill:var(--violet)}.arch-nodes .is-api rect{fill:#3a2aa6}.arch-nodes text{fill:var(--white);font-family:var(--font);font-size:26px;font-weight:700;text-anchor:middle}.arch-nodes text.small{font-size:17px;font-weight:500;fill:#cfc8ff}.arch-packet{opacity:0}.arch-packet.is-mail{fill:var(--mint)}.arch-packet.is-server{fill:var(--pink)}.arch-legend{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 40px;margin:clamp(-72px,-4vw,-24px) 0 clamp(72px,8vw,128px)}.arch-legend li{display:grid;grid-template-columns:18px 1fr;gap:14px;max-width:44ch}.arch-swatch{width:18px;height:18px;margin-top:.25em;border-radius:50%}.arch-swatch.is-mail{background:var(--mint)}.arch-swatch.is-server{background:var(--pink)}.tech-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 40px}.tech-columns h3{font-size:24px;letter-spacing:-.02em;margin-bottom:14px;color:var(--mint)}.tech-columns li{padding:6px 0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 40px;margin-top:clamp(72px,8vw,128px)}.metric{display:grid;gap:8px}.metric-value{font-size:clamp(52px,6vw,96px);font-weight:800;letter-spacing:-.05em;line-height:1;color:var(--mint)}.metric-label{max-width:28ch}@media (max-width: 860px){.tech-head,.arch-legend,.tech-columns,.metrics{grid-template-columns:1fr}.tech-title,.open-title{font-size:15vw}.arch{width:100%}}.open{display:grid;grid-template-columns:6fr 6fr;gap:40px;align-items:center;min-height:90svh;padding:clamp(96px,10vw,180px) var(--gutter);background:var(--violet);color:var(--white)}.open-copy p{max-width:38ch;margin-top:32px;font-size:19px}.open-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.terminal{background:var(--night);border-radius:24px;overflow:hidden}.terminal-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 14px 24px;background:#1d1460;font-size:15px;font-weight:500}.copy{min-height:40px;min-width:104px;padding:0 16px;border-radius:var(--radius);background:#ffffff1f;font-weight:700;font-size:15px;transition:background-color .2s,transform .12s var(--ease-out)}.copy:hover{background:#ffffff38}.copy:active{transform:scale(.95)}.copy-label{display:inline-block;transition:opacity .18s var(--ease-out),filter .18s var(--ease-out),transform .18s var(--ease-out)}.copy-label.is-out{opacity:0;filter:blur(4px);transform:translateY(-6px)}.terminal pre{margin:0;padding:28px 24px 32px;overflow-x:auto;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:clamp(14px,1.15vw,17px);line-height:1.9}.code-line{display:block}.code-line:before{content:"$ ";color:var(--mint)}@media (max-width: 860px){.open{grid-template-columns:1fr}}.team{display:grid;grid-template-columns:4fr 8fr;gap:40px 20px;padding:clamp(96px,12vw,200px) var(--gutter);background:var(--paper)}.team-title{font-size:var(--step-title);font-weight:700;letter-spacing:-.045em;line-height:.98}.team-copy p{margin-top:24px;max-width:30ch}.team-names{display:grid;gap:4px}.team-names li{width:fit-content;font-size:clamp(34px,5.2vw,88px);font-weight:700;letter-spacing:-.045em;line-height:1.04;color:var(--ink-soft);transition:color .22s}.team-name{display:inline-block;transform-origin:left center;transition:transform .32s var(--ease-out)}.team-name span{color:var(--ink);transition:color .22s}.team-names li:hover{color:var(--violet)}.team-names li:hover .team-name{transform:scale(1.06)}.team-names li:hover .team-name span{color:var(--violet)}@media (max-width: 860px){.team{grid-template-columns:1fr}.team-names li{font-size:9.4vw}}.cta{position:relative;display:block;min-height:62svh;padding:24px var(--gutter);background:var(--mint);color:var(--ink);text-decoration:none;overflow:hidden}.cta:hover,.cta:focus-visible{background:var(--ink);color:var(--mint)}.cta-note{display:block;max-width:30ch;font-size:20px;font-weight:500}.cta-arrow{position:absolute;top:24px;right:var(--gutter);width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;transition:transform .45s var(--ease-out)}.cta:hover .cta-arrow,.cta:focus-visible .cta-arrow{transform:rotate(45deg) scale(1.6)}.cta-word{position:absolute;left:var(--gutter);bottom:0;font-size:clamp(96px,27vw,460px);font-weight:800;letter-spacing:-.07em;line-height:.78}@media (max-width: 860px){.cta{min-height:46svh}.cta-note{max-width:20ch;font-size:17px}.cta-arrow{width:32px;height:32px}}.footer{background:var(--night);color:var(--white);padding:clamp(40px,5vw,72px) var(--gutter) 28px;overflow:hidden}.footer-mark{pointer-events:none;width:fit-content;font-size:clamp(120px,31vw,520px);font-weight:800;letter-spacing:-.075em;line-height:.8;color:var(--violet-soft)}.footer-row{position:relative;z-index:1;display:grid;grid-template-columns:5fr 7fr;gap:32px 20px;margin-top:72px}.footer-places{display:grid;gap:4px}.footer-places a{font-size:clamp(26px,2.6vw,36px);font-weight:700;color:var(--mint);text-decoration:none;letter-spacing:-.02em}.footer-places a:hover,.footer-cols a:hover{text-decoration:underline;text-underline-offset:5px}.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;font-size:var(--step-small)}.footer-cols li{padding:4px 0}.footer-cols a{text-decoration:none}.footer-legal{display:flex;justify-content:space-between;gap:16px;margin-top:96px;font-size:14px;color:#c9c3e6}@media (max-width: 860px){.footer-row{grid-template-columns:1fr}.footer-cols{grid-template-columns:repeat(2,1fr)}.footer-legal{flex-direction:column}}@media (prefers-reduced-motion: reduce){.team-name,.cta-arrow{transition:none}}.phone{--phone-w: 340px;--phone-h: 700px;width:var(--phone-w);height:var(--phone-h);padding:10px;border-radius:54px;background:var(--ink);transform-origin:center;transform:perspective(1400px) rotateY(calc(var(--ry, 0) * 1deg)) scale(var(--phone-scale, 1))}.phone-screen{position:relative;width:100%;height:100%;border-radius:44px;overflow:hidden;background:var(--paper);font-size:15px;line-height:1.35}.screen{position:absolute;inset:0;padding:58px 22px 22px}.screen-bank{background:#fff}.bank-top{display:flex;align-items:center;gap:10px;font-weight:700;font-size:18px;margin-bottom:26px}.bank-badge{display:inline-grid;place-items:center;flex:none;width:38px;height:38px;border-radius:11px;background:#d71920;color:#fff;font-size:12px;font-weight:800;letter-spacing:.02em}.bank-label{margin-top:16px;color:var(--ink-soft);font-size:13px}.bank-value{font-weight:700;font-size:18px}.bank-sub{color:var(--ink-soft)}.bank-amount{font-weight:800;font-size:40px;letter-spacing:-.03em}.bank-button{position:absolute;left:22px;right:22px;bottom:30px;height:54px;display:grid;place-items:center;border-radius:16px;background:#d71920;color:#fff;font-weight:700;overflow:hidden}.bank-send,.bank-sent{grid-area:1 / 1}.bank-sent{opacity:0}.screen-mail{background:#fff}.mail-head{display:flex;gap:12px;align-items:center;padding-bottom:16px;margin-bottom:14px;background:#fff}.mail-from{font-weight:700}.mail-subject{color:var(--ink-soft);font-size:13px}.mail-body{display:grid;gap:10px;font-size:14px}.mail-fields{display:grid;gap:6px;margin-top:6px}.field{position:relative;display:grid;grid-template-columns:70px 1fr;padding:8px 10px;border-radius:10px;isolation:isolate}.field:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:var(--mint);transform:scaleX(var(--mark, 0));transform-origin:left}.field dt{color:var(--ink-soft)}.field dd{font-weight:700}.chips{position:absolute;left:22px;right:22px;bottom:26px;z-index:2;display:flex;flex-wrap:wrap;gap:8px}.chip{padding:8px 14px;border-radius:999px;background:var(--violet);color:#fff;font-weight:700;font-size:14px;white-space:nowrap;transform-origin:left center}.screen-movo{padding:0;background:var(--paper)}.movo-head{padding:66px 22px 30px;background:var(--violet);color:#fff;text-align:center}.movo-kicker{font-weight:500;opacity:.85}.movo-total{margin-top:4px;font-size:44px;font-weight:800;letter-spacing:-.04em;line-height:1.05}.movo-total small{font-size:22px;opacity:.7}.movo-bar{height:8px;margin:16px 18px 8px;border-radius:99px;background:#ffffff40;overflow:hidden}.movo-bar span{display:block;height:100%;width:100%;background:#fff;border-radius:inherit;transform-origin:left;transform:scaleX(var(--bar, .265))}.movo-left{font-size:13px;opacity:.85}.movo-list{margin-top:-16px;padding:20px 16px;border-radius:24px 24px 0 0;background:var(--paper);position:relative}.movo-day{font-weight:700;color:var(--ink-soft);font-size:13px;margin:0 6px 8px}.row{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;padding:12px;margin-bottom:8px;border-radius:18px;background:#fff}.row-new{background:#e3f6ef}.row-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;font-weight:700}.row-icon-mint{background:#ebe5ff;color:var(--violet)}.row-icon-blue{background:#e3ecff;color:#3e6be0}.row-icon-green{background:#ddf5ec;color:#0e9e74}.row-icon-pink{background:#ffe6f0;color:#c43d76}.row-text b{display:block;font-size:14px}.row-text i{font-style:normal;color:var(--ink-soft);font-size:12.5px}.row-amount{font-weight:700;font-size:14px}.row-amount-pos{color:#0e9e74}.push{position:absolute;top:12px;left:10px;right:10px;display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:10px 12px;border-radius:20px;background:#fffffff7;box-shadow:0 12px 30px #14111f38;font-size:13px;z-index:3}.push-text b{display:block;font-size:14px}.push-time{align-self:start;color:var(--ink-soft);font-size:12px}.toast{position:absolute;left:12px;right:12px;bottom:14px;padding:14px 16px;border-radius:18px;background:var(--ink);color:#fff;box-shadow:0 16px 34px #14111f4d;z-index:3}.toast-title{font-weight:700;font-size:14px}.toast-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px;font-size:11.5px}.toast-steps span{padding-top:8px;background:linear-gradient(var(--mint),var(--mint)) top left / 100% 4px no-repeat}
