:root{color-scheme:light dark;--ink:#141414;--muted:#4a4a4a;--faint:#7a7a7a;--paper:#ffffff;--surface:#ffffff;--halo:rgba(0, 0, 0, 0.06);--line:rgba(20, 20, 20, 0.12);--line-strong:rgba(20, 20, 20, 0.28);--accent:#0d89ec;--accent-deep:#1a76bf;--inverse-bg:#141414;--inverse-bg-hover:#000000;--inverse-fg:#f7f4ee;--ghost-bg:rgba(255, 255, 255, 0.35);--code-bg:rgba(20, 20, 20, 0.06);--code-block-bg:rgba(20, 20, 20, 0.92);--code-block-fg:#f3f1ec;--max:68rem;--header-height:4rem;--font-display:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}@media(prefers-color-scheme:dark){:root{--ink:#f2f2f2;--muted:#b6b6b6;--faint:#8c8c8c;--paper:#000000;--surface:#eee;--halo:rgba(255, 255, 255, 0.08);--line:rgba(255, 255, 255, 0.16);--line-strong:rgba(255, 255, 255, 0.34);--accent:#3aa2f0;--accent-deep:#5fb3f5;--inverse-bg:#f2f2f2;--inverse-bg-hover:#ffffff;--inverse-fg:#141414;--ghost-bg:rgba(255, 255, 255, 0.08);--code-bg:rgba(255, 255, 255, 0.10);--code-block-bg:#101010;--code-block-fg:#e8e8e8}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}body{margin:0;color:var(--ink);font-family:var(--font-body);font-size:1.125rem;line-height:1.55;background:var(--paper)}a{color:inherit}.wrap{width:min(100% - 2.5rem,var(--max));margin-inline:auto}.hero{min-height:calc(100svh - var(--header-height) - 1px);display:grid;align-items:center;position:relative;overflow:hidden;padding:1.5rem 0}.hero-visual{position:absolute;inset:0;pointer-events:none}.hero-visual s42-ring{position:absolute;width:min(54vw,42rem);right:clamp(0rem,3vw,4rem);top:50%;translate:0 -50%}@media(min-width:1280px){.hero-visual s42-ring{right:auto;left:calc(73.5% - 23.33rem)}}.app-tile{display:flex;flex-direction:column;align-items:center;gap:.35rem}.app-logo{display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:25%;background:var(--surface);border:1px solid var(--line);box-shadow:0 0 0 3px var(--halo);color:var(--ink)}.app-logo svg{width:1.25rem;height:1.25rem;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.app-name{font-family:var(--font-display);font-size:.62rem;font-weight:700;letter-spacing:-.02em;line-height:1.1;text-align:center;color:var(--ink);white-space:nowrap}.hero-content{position:relative;z-index:1;width:min(100% - 2.5rem,30rem);max-width:42vw;margin-left:max(1.25rem,calc((100% - var(--max))/2));margin-right:auto;animation:rise 900ms cubic-bezier(.2,.8,.2,1)both}.brand{font-family:var(--font-display);font-weight:600;font-size:clamp(4.5rem,14vw,8.5rem);letter-spacing:-.06em;line-height:.9;margin:0 0 1.25rem}.brand span{font-weight:400;color:var(--accent-deep)}.hero h1{font-family:var(--font-display);font-weight:700;font-size:clamp(1.75rem,4vw,2.35rem);letter-spacing:-.03em;line-height:1.15;margin:0 0 .85rem}.hero .lede{margin:0 0 1.75rem;color:var(--muted);font-size:1.2rem;max-width:28rem}.cta-row{display:flex;flex-wrap:wrap;gap:.75rem 1rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.85rem;padding:.7rem 1.2rem;border-radius:.35rem;font-family:var(--font-display);font-weight:700;font-size:.95rem;letter-spacing:-.01em;text-decoration:none;border:1px solid transparent;transition:transform 180ms ease,background 180ms ease,border-color 180ms ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--inverse-bg);color:var(--inverse-fg)}.btn-primary:hover{background:var(--inverse-bg-hover)}.btn-accent{background:var(--accent);color:#fff;box-shadow:0 6px 18px -8px var(--accent)}.btn-accent:hover{background:var(--accent-deep)}.btn-ghost{border-color:var(--line);background:var(--ghost-bg);color:var(--accent-deep)}.btn-ghost:hover{border-color:var(--line-strong)}section{padding:5.5rem 0;border-top:1px solid var(--line)}.kicker{font-family:var(--font-display);font-weight:700;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-deep);margin:0 0 .75rem}h2{font-family:var(--font-display);font-weight:800;font-size:clamp(1.8rem,3.5vw,2.6rem);letter-spacing:-.035em;line-height:1.1;margin:0 0 1rem;max-width:18ch}h2.wide{max-width:28ch}.section-copy{max-width:38rem;color:var(--muted);margin:0}.section-copy+.section-copy{margin-top:1rem}.apps{margin-top:2.5rem;display:flex;flex-wrap:wrap;gap:1.25rem 1.5rem}.apps .app-logo{width:3.25rem;height:3.25rem}.apps .app-logo svg{width:1.4rem;height:1.4rem}.apps .app-name{font-size:.8rem}.app-tile-soon .app-logo{border-style:dashed;box-shadow:none;color:var(--faint);opacity:.6}.app-tile-soon .app-name{color:var(--faint)}.subhead{font-family:var(--font-display);font-size:1.3rem;letter-spacing:-.02em;margin:3.5rem 0 .5rem}.subhead+.apps{margin-top:1.25rem}.compare{display:grid;gap:2.5rem;margin-top:2rem}@media(min-width:780px){.compare{grid-template-columns:1fr 1fr;gap:3rem}}.compare h3{font-family:var(--font-display);font-size:1.15rem;letter-spacing:-.02em;margin:0 0 .6rem}.compare p{margin:0;color:var(--muted);max-width:32rem}.pricing-beta{margin:0;color:var(--muted);max-width:36rem}.billing{margin-top:1.75rem}.billing>input{position:absolute;opacity:0;pointer-events:none}.billing-toggle{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:.2rem;gap:.2rem}.billing-toggle label{padding:.35rem .95rem;border-radius:999px;font-size:.95rem;cursor:pointer;color:var(--muted)}#bill-month:checked~.billing-toggle label[for=bill-month],#bill-year:checked~.billing-toggle label[for=bill-year]{background:var(--ink);color:var(--paper)}.billing .price-year{display:none}#bill-year:checked~.tiers .price-month{display:none}#bill-year:checked~.tiers .price-year{display:block}.tiers{display:grid;gap:1.25rem;margin-top:1.5rem}@media(min-width:640px){.tiers{grid-template-columns:repeat(2,1fr)}}.tier{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;border:1px solid var(--line);border-radius:.5rem}.tier h3{font-family:var(--font-display);font-size:1.15rem;letter-spacing:-.02em;margin:0}.tier-price{margin:0;font-family:var(--font-display);font-weight:800;font-size:1.6rem;letter-spacing:-.03em}.tier-price small{display:block;font-size:.85rem;font-weight:600;letter-spacing:0;color:var(--faint)}.tier p{margin:0;color:var(--muted)}.tier ul{margin:0;padding-left:1.1rem;color:var(--muted);font-size:1rem}.tier li+li{margin-top:.3rem}.pricing-cta{margin:2rem 0 0}.name-play{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin-top:1.75rem;font-family:var(--font-display);font-weight:700;font-size:1.05rem}.name-play b{color:var(--accent-deep)}.final{padding-bottom:6rem;text-align:left}.final h2{max-width:20ch}code{font-family:ui-monospace,sf mono,Menlo,Consolas,monospace;font-size:.9em;background:var(--code-bg);padding:.15em .4em;border-radius:.25rem}.install-steps{margin:2rem 0 0;max-width:42rem}.install-code{margin:0;padding:1.15rem 1.25rem;overflow-x:auto;border:1px solid var(--line);border-radius:.35rem;background:var(--code-block-bg);color:var(--code-block-fg);font-family:ui-monospace,sf mono,Menlo,Consolas,monospace;font-size:.92rem;line-height:1.65;white-space:pre}.install-code code{background:0 0;padding:0;color:inherit;font:inherit}.install-note{margin:1.25rem 0 0;max-width:38rem;color:var(--muted);font-size:1.05rem}footer{border-top:1px solid var(--line);padding:1.5rem 0 2.5rem;color:var(--faint);font-size:.95rem}footer .wrap{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;justify-content:space-between}@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:720px){.hero-visual s42-ring{width:min(80vw,26rem);right:50%;top:.25rem;translate:50% 0}.hero{align-items:end;padding-bottom:2.5rem}.hero-content{max-width:none;width:min(100% - 2.5rem,30rem);padding-top:50vw}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}.site-header{position:sticky;top:0;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}.site-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:var(--header-height);font-family:var(--font-display);font-weight:700;font-size:.95rem}.site-nav a{text-decoration:none}.site-nav a:hover{color:var(--accent-deep)}.site-nav-links{align-items:center}.site-nav-links a[aria-current=page]{color:var(--ink)}.site-nav-links .nav-cta{padding:.45rem .95rem;border-radius:999px;background:var(--accent);color:#fff;box-shadow:0 6px 16px -8px var(--accent);transition:background 180ms ease,transform 180ms ease}.site-nav-links .nav-cta:hover,.site-nav-links .nav-cta[aria-current=page]{background:var(--accent-deep);color:#fff}.site-nav-links .nav-cta:hover{transform:translateY(-1px)}@media(max-width:420px){.site-nav-links{gap:.5rem .9rem;font-size:.9rem}}.site-nav-brand{font-size:1.35rem;letter-spacing:-.04em}.site-nav-brand span{color:var(--accent-deep)}.site-nav-links{display:flex;flex-wrap:wrap;gap:1rem 1.25rem;color:var(--muted)}.nav-demo{appearance:none;margin:0;padding:0;border:0;background:0 0;font:inherit;color:inherit;cursor:pointer}.nav-demo:hover{color:var(--accent-deep)}.demo-dialog{width:min(22rem,calc(100% - 2rem));margin:auto;padding:1.75rem 1.5rem 1.5rem;border:1px solid var(--line-strong);border-radius:.6rem;background:var(--paper);color:var(--ink);font-size:1rem;box-shadow:0 24px 70px -24px rgba(0,0,0,.55)}.demo-dialog::backdrop{background:rgba(20,20,20,.45)}.demo-dialog h2{margin:0 0 1rem;font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:-.03em;line-height:1.15;text-align:center}.demo-dialog p{margin:0 0 1.35rem;line-height:1.7;text-align:center}.demo-dialog .btn{width:100%}.demo-dialog-close{position:absolute;top:.55rem;right:.55rem;display:grid;place-items:center;width:2rem;height:2rem;padding:0;border:0;border-radius:999px;background:0 0;color:var(--muted);cursor:pointer}.demo-dialog-close:hover{color:var(--ink);background:var(--code-bg)}.demo-dialog-close svg{width:1rem;height:1rem;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round}.page-hero{padding:3rem 0 2rem}.page-hero h1{font-family:var(--font-display);font-weight:800;font-size:clamp(2rem,4vw,2.8rem);letter-spacing:-.035em;line-height:1.1;margin:0 0 .85rem;max-width:16ch}.page-hero .lede{margin:0;color:var(--muted);max-width:36rem}footer a{color:inherit;text-decoration:underline;text-underline-offset:.15em}footer a:hover{color:var(--ink)}.legal-section{padding-top:.5rem;border-top:none}.legal{max-width:40rem}.legal h2{font-size:clamp(1.35rem,2.4vw,1.65rem);max-width:none;margin:2.25rem 0 .65rem}.legal h2:first-child{margin-top:0}.legal p{margin:0 0 .85rem}.legal ul{margin:0 0 .85rem;padding-left:1.15rem}.legal li+li{margin-top:.35rem}.legal a{color:var(--accent-deep)}