:root{color-scheme:light;--ink: #131b3f;--ink-strong: #0b1029;--ink-soft: #5a6284;--paper: #ffffff;--paper-alt: #f7f8fd;--line: rgba(19, 27, 63, .09);--accent: #0b7dda;--accent-deep: #0a5fa8;--accent-soft: rgba(11, 125, 218, .1);--signal: #12b5a0;--warm: #ff825c;--font-display: "Sora", system-ui, sans-serif;--font-body: "Figtree", system-ui, sans-serif;--font-mono: ui-monospace, "SFMono-Regular", "JetBrains Mono", Menlo, monospace;--shell: 1180px;--nav-h: 64px;--radius-lg: 28px;--radius-md: 18px;--radius-sm: 12px;--ease-out: cubic-bezier(.22, 1, .36, 1);--shadow-soft: 0 18px 40px rgba(19, 27, 63, .08);--shadow-lift: 0 28px 60px rgba(19, 27, 63, .16)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 12px)}html,body,#root{margin:0;padding:0;min-height:100%;width:100%}body{font-family:var(--font-body);font-size:1.0625rem;line-height:1.6;color:var(--ink);background:var(--paper);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-display);font-weight:700;letter-spacing:-.035em;line-height:1.12;color:var(--ink-strong)}h1{font-size:clamp(2.6rem,6vw,4.25rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.35rem,2.2vw,1.75rem)}p{margin:0;color:var(--ink-soft);font-size:clamp(1rem,1.1vw,1.125rem);line-height:1.65}a{color:var(--accent-deep);text-decoration:none;transition:color .2s var(--ease-out)}a:hover{color:var(--accent)}img,svg{max-width:100%}ul{margin:0;padding:0}button{font:inherit}input,textarea{width:100%;padding:1rem 1.15rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-alt);color:var(--ink);font-family:var(--font-body);font-size:1rem;outline:none;transition:background .22s var(--ease-out),box-shadow .22s var(--ease-out),border-color .22s var(--ease-out)}input:focus,textarea:focus{background:var(--paper);border-color:transparent;box-shadow:0 0 0 2px var(--accent)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.eyebrow{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-deep)}.skip-link{position:absolute;left:-9999px;top:0;z-index:100;padding:.75rem 1.25rem;border-radius:0 0 var(--radius-sm) 0;background:var(--ink-strong);color:#fff}.skip-link:focus{left:0;color:#fff}@keyframes drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(0,-22px,0) scale(1.06)}}@keyframes pulse-ring{0%{opacity:.55;transform:scale(.85)}70%{opacity:0;transform:scale(1.5)}to{opacity:0;transform:scale(1.5)}}@keyframes bob{0%{transform:translateY(0)}to{transform:translateY(-10px)}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.container{position:relative;width:100%;max-width:var(--shell);margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem)}.container--border{border-top:1px solid var(--line)}.site-nav{position:sticky;top:0;z-index:50;background:#ffffffd6;backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid transparent;transition:background .2s var(--ease-out),border-color .2s var(--ease-out)}.site-nav.is-scrolled{background:#fffffff0;border-bottom-color:var(--line)}.nav-inner{height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:baseline;gap:.5rem;color:var(--ink-strong)}.brand:hover{color:var(--ink-strong)}.brand-mark{align-self:center;display:block;-o-object-fit:contain;object-fit:contain}.brand-logo{font-family:var(--font-display);font-size:1.375rem;font-weight:600;letter-spacing:-.015em}.brand-tld{font-family:var(--font-mono);font-size:.6875rem;color:var(--ink-soft)}.nav-right{display:flex;align-items:center;gap:4px}.nav-link{padding:.5rem .875rem;border:0;border-radius:var(--radius-sm);background:none;color:var(--ink-soft);font-family:var(--font-body);font-size:.845rem;font-weight:500;letter-spacing:-.005em;cursor:pointer;transition:color .12s var(--ease-out),background .12s var(--ease-out)}.nav-link:hover,.nav-link:focus-visible{color:var(--ink-strong);background:var(--paper-alt)}@media (max-width: 900px){.nav-inner{height:56px}.nav-right{flex:1;justify-content:flex-start;margin-left:.5rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.nav-right::-webkit-scrollbar{display:none}.nav-link{flex-shrink:0}}@media (max-width: 600px){.nav-inner{height:52px}.brand-logo{font-size:1.1875rem}.brand-tld{font-size:.625rem}.nav-link{padding:.5rem .625rem;font-size:.8rem}}@media (max-width: 360px){.brand-mark{display:none}}.reveal{--reveal-delay: 0ms;--reveal-duration: .7s;--reveal-shift: 34px;opacity:0;will-change:opacity,transform;transition:opacity var(--reveal-duration) var(--ease-out) var(--reveal-delay),transform var(--reveal-duration) var(--ease-out) var(--reveal-delay)}.reveal--fade.reveal--up{transform:translateY(var(--reveal-shift))}.reveal--fade.reveal--down{transform:translateY(calc(-1 * var(--reveal-shift)))}.reveal--fade.reveal--left{transform:translate(calc(-1 * var(--reveal-shift)))}.reveal--fade.reveal--right{transform:translate(var(--reveal-shift))}.reveal--slide{--reveal-shift: 72px}.reveal--slide.reveal--up{transform:translateY(var(--reveal-shift))}.reveal--slide.reveal--down{transform:translateY(calc(-1 * var(--reveal-shift)))}.reveal--slide.reveal--left{transform:translate(calc(-1 * var(--reveal-shift)))}.reveal--slide.reveal--right{transform:translate(var(--reveal-shift))}.reveal--zoom{transform:scale(.92)}.reveal--zoom.reveal--up{transform:scale(.92) translateY(28px)}.reveal--cascade{opacity:1;transform:none;transition:none}.reveal--cascade>*{opacity:0;transition:opacity var(--reveal-duration) var(--ease-out) var(--reveal-delay),transform var(--reveal-duration) var(--ease-out) var(--reveal-delay)}.reveal--cascade.reveal--fade.reveal--up>*{transform:translateY(var(--reveal-shift))}.reveal--cascade.reveal--fade.reveal--left>*{transform:translate(calc(-1 * var(--reveal-shift)))}.reveal--cascade.reveal--fade.reveal--right>*{transform:translate(var(--reveal-shift))}.reveal--cascade.reveal--zoom>*{transform:scale(.94)}.reveal.is-in,.reveal.is-in.reveal--fade,.reveal.is-in.reveal--slide,.reveal.is-in.reveal--zoom{opacity:1;transform:none}.reveal.reveal--cascade.is-in>*{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){.reveal,.reveal>*,.reveal--cascade>*{opacity:1!important;transform:none!important;transition:none!important}}.store-badge{display:inline-flex;align-items:center;gap:.7rem;min-height:58px;padding:.55rem 1.15rem .55rem .95rem;border-radius:14px;background:#11131a;color:#fff;text-decoration:none;box-shadow:0 12px 28px #11131a38;transition:transform .24s var(--ease-out),box-shadow .24s var(--ease-out),background .24s var(--ease-out)}.store-badge:hover{color:#fff;transform:translateY(-2px);background:#1b1f2a;box-shadow:0 18px 36px #11131a47}.store-badge-mark{width:28px;height:28px;flex-shrink:0}.store-badge-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0;line-height:1.05}.store-badge-caption,.store-badge-name{overflow-wrap:break-word;text-wrap:balance}.store-badge-caption{font-family:var(--font-body);font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#ffffffb8}.store-badge-name{font-family:var(--font-display);font-size:1.12rem;font-weight:700;letter-spacing:-.03em}.store-badge--compact{min-height:44px;padding:.4rem .85rem .4rem .7rem;border-radius:12px;gap:.5rem}.store-badge--compact .store-badge-mark{width:20px;height:20px}.store-badge--compact .store-badge-caption{font-size:.58rem}.store-badge--compact .store-badge-name{font-size:.92rem}.store-badge:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.site-footer{background:var(--paper-alt);border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,minmax(0,1fr)) minmax(150px,1fr);align-items:start;gap:clamp(1.75rem,4vw,3rem);padding:clamp(2.75rem,6vw,4rem) 0 clamp(2rem,4vw,2.75rem)}.footer-lead{max-width:24rem}.footer-lead h3{margin-bottom:.85rem;font-size:1.35rem;color:var(--accent-deep)}.footer-lead-title{margin-bottom:.5rem;font-family:var(--font-display);font-size:1.15rem;font-weight:650;color:var(--ink-strong)}.footer-chat{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.1rem;padding-bottom:.2rem;border-bottom:1px solid currentColor;font-family:var(--font-display);font-weight:600}.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem}.footer-column h4{margin-bottom:.35rem;font-size:1.02rem;color:var(--ink-strong)}.footer-column a:not(.store-badge),.footer-column button{padding:0;border:0;background:none;color:var(--ink-soft);font-family:var(--font-body);font-size:.95rem;text-align:left;cursor:pointer;transition:color .2s var(--ease-out),transform .2s var(--ease-out)}.footer-column a:not(.store-badge):hover,.footer-column button:hover{color:var(--accent-deep);transform:translate(3px)}.footer-downloads{gap:.75rem;align-self:stretch}.footer-downloads .store-badge{width:100%;max-width:15rem}.footer-extra{background:var(--paper-alt);padding-bottom:2rem}.footer-extra-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.6rem 1.75rem;padding-top:1.75rem}.footer-brand{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:-.03em;color:var(--ink-strong);transition:transform .26s var(--ease-out)}.footer-brand:hover{color:var(--ink-strong);transform:translateY(-2px)}.footer-note,.footer-copy{font-size:.88rem}.footer-note{text-align:center}.footer-copy{text-align:right}@media (max-width: 1024px){.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-lead{grid-column:1 / -1;max-width:none}}@media (max-width: 900px){.footer-extra-row{grid-template-columns:1fr;justify-items:start}.footer-note,.footer-copy{text-align:left}}@media (max-width: 760px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 480px){.footer-grid{grid-template-columns:1fr}}.route-fallback{min-height:70vh;background:linear-gradient(120% 90% at 80% -10%,rgba(11,125,218,.08),transparent 60%)}
