:root{--tp-blue:#2f6fed;--tp-blue-deep:#163d9c;--tp-blue-soft:#5b8ff5;--tp-sky:#c5d8f0;--tp-mist:#e8eef6;--tp-ink:#0e141c;--tp-muted:#3d4a5c;--tp-line:#163d9c38;--tp-nav-bg:#e8eef6d1;--tp-ghost-bg:#ffffff8c;--tp-code-bg:#2f6fed1f;--tp-sky-top:#7eacdf;--tp-sky-mid:#d4e3f4;--tp-sky-bot:#dfe8f3;--tp-glow-a:#5b8ff5;--tp-glow-b:#2f6fed;--font-display:"Sora", ui-sans-serif, system-ui, sans-serif;--font-body:"Figtree", ui-sans-serif, system-ui, sans-serif}:root[data-theme=dark]{--tp-blue:#6b9fd4;--tp-blue-deep:#a8c8ea;--tp-blue-soft:#8eb8e4;--tp-mist:#0c1219;--tp-ink:#e8eef6;--tp-muted:#9aabbe;--tp-line:#a8c8ea33;--tp-nav-bg:#0c1219c7;--tp-ghost-bg:#ffffff0a;--tp-code-bg:#6b9fd424;--tp-sky-top:#1a3354;--tp-sky-mid:#0f1824;--tp-sky-bot:#0c1219;--tp-glow-a:#2f6fed;--tp-glow-b:#243b5c;color-scheme:dark}:root[data-theme=light]{color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;font-family:var(--font-body);color:var(--tp-ink);background:var(--tp-mist);margin:0;line-height:1.55;position:relative;overflow-x:hidden}a{color:var(--tp-blue);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--tp-blue-deep)}code{background:var(--tp-code-bg);border-radius:.3em;padding:.12em .35em;font-size:.92em}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sky{z-index:-1;pointer-events:none;background:radial-gradient(120% 80% at 50% -10%, var(--tp-sky-top) 0%, transparent 55%), linear-gradient(180deg, var(--tp-sky-mid) 0%, var(--tp-mist) 45%, var(--tp-sky-bot) 100%);position:fixed;inset:0}.sky__glow{filter:blur(60px);opacity:.55;border-radius:50%;animation:18s ease-in-out infinite alternate drift;position:absolute}:root[data-theme=dark] .sky__glow{opacity:.4}.sky__glow--a{background:var(--tp-glow-a);width:min(50vw,420px);height:min(50vw,420px);top:8%;left:8%}.sky__glow--b{background:var(--tp-glow-b);width:min(45vw,380px);height:min(45vw,380px);animation-delay:-6s;top:35%;right:5%}.sky__ridges{opacity:.22;width:100%;height:min(48vh,480px);position:absolute;inset:auto 0 0}:root[data-theme=dark] .sky__ridges{opacity:.32}.sky__ridges path:first-child{fill:var(--tp-blue)}.sky__ridges path:last-child{fill:var(--tp-blue-deep);opacity:.7}@keyframes drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(3%,4%)scale(1.06)}}.nav{z-index:10;backdrop-filter:blur(12px);background:var(--tp-nav-bg);border-bottom:1px solid #0000;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem clamp(1.25rem,4vw,3rem);display:flex;position:sticky;top:0}.nav__brand{font-family:var(--font-display);letter-spacing:-.02em;color:var(--tp-ink);align-items:center;gap:.65rem;font-size:1.15rem;font-weight:700;text-decoration:none;display:inline-flex}.nav__brand img{width:3.5rem;height:auto;display:block}.footer__brand img{width:2.75rem;height:auto}.nav__links{align-items:center;gap:clamp(.75rem,2vw,1.5rem);font-weight:500;display:flex}.nav__links a{color:var(--tp-muted);text-decoration:none}.nav__links a:hover{color:var(--tp-blue)}.theme-select select{appearance:none;font:inherit;color:var(--tp-muted);background-color:var(--tp-ghost-bg);border:1px solid var(--tp-line);cursor:pointer;background-image:linear-gradient(45deg, transparent 50%, var(--tp-muted) 50%), linear-gradient(135deg, var(--tp-muted) 50%, transparent 50%);background-position:calc(100% - 14px) 55%,calc(100% - 9px) 55%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;border-radius:.4rem;padding:.4rem 1.75rem .4rem .65rem;font-size:.9rem;font-weight:500}.theme-select select:hover,.theme-select select:focus-visible{color:var(--tp-blue);border-color:var(--tp-blue);outline:none}.nav__cta{background:var(--tp-blue);border-radius:.4rem;padding:.45rem .9rem;transition:background .16s,transform .16s;color:#fff!important}.nav__cta:hover{background:var(--tp-blue-deep);transform:translateY(-1px)}.alpha-banner{border-bottom:1px solid var(--tp-line);background:color-mix(in srgb, var(--tp-blue) 10%, var(--tp-mist));color:var(--tp-ink);flex-wrap:wrap;align-items:baseline;gap:.45rem .65rem;margin:0;padding:.65rem clamp(1.25rem,4vw,3rem);font-size:.92rem;line-height:1.4;display:flex}.alpha-banner strong{color:var(--tp-blue-deep);letter-spacing:.01em;font-weight:700}:root[data-theme=dark] .alpha-banner{background:color-mix(in srgb, var(--tp-blue) 16%, var(--tp-mist))}.hero{grid-template-columns:minmax(18rem,34rem) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,4vw,3rem);max-width:88rem;min-height:calc(100svh - 4.5rem);margin:0 auto;padding:clamp(2.5rem,7vw,5rem) clamp(1.25rem,4vw,3rem);display:grid;position:relative;overflow:hidden}.hero__copy{z-index:1;max-width:34rem;position:relative}.hero__visual{justify-content:flex-end;align-items:center;min-width:0;animation:.9s .12s rise;display:flex}.hero__diagram{width:min(100%,600px);max-width:none;height:auto;margin-right:clamp(-.5rem,-2vw,0)}.hero__brand{margin-bottom:1.1rem}.hero__name{font-family:var(--font-display);letter-spacing:-.035em;color:var(--tp-blue-deep);margin:0;font-size:clamp(2.8rem,8vw,4.5rem);font-weight:700;line-height:1}.hero__tagline{max-width:34rem;color:var(--tp-ink);margin:0 0 .95rem;font-size:clamp(1.3rem,2.8vw,1.7rem);font-weight:600;line-height:1.35}.hero__lede{max-width:34rem;color:var(--tp-muted);margin:0 0 2rem;font-size:1.1rem;line-height:1.6}.hero__actions{flex-wrap:wrap;gap:.75rem;display:flex}@keyframes rise{0%{transform:translateY(14px)}to{transform:translateY(0)}}@keyframes mark-in{0%{transform:translateY(10px)scale(.96)}to{transform:translateY(0)scale(1)}}.btn{border-radius:.45rem;justify-content:center;align-items:center;padding:.85rem 1.35rem;font-size:1.02rem;font-weight:600;text-decoration:none;transition:background .16s,color .16s,border-color .16s,transform .16s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--tp-blue);color:#fff}.btn--primary:hover{background:var(--tp-blue-deep);color:#fff}.btn--ghost{color:var(--tp-blue-deep);border:1.5px solid color-mix(in srgb, var(--tp-blue) 45%, transparent);background:var(--tp-ghost-bg)}.btn--ghost:hover{border-color:var(--tp-blue);color:var(--tp-blue)}.why,.flow,.close{max-width:52rem;padding:clamp(3.5rem,8vw,6rem) clamp(1.25rem,4vw,3rem)}.why h2,.flow h2,.close h2{font-family:var(--font-display);letter-spacing:-.03em;color:var(--tp-blue-deep);margin:0 0 .85rem;font-size:clamp(1.9rem,4vw,2.55rem);font-weight:700}.why__lede,.flow>p,.close>p{color:var(--tp-muted);max-width:40rem;margin:0 0 1.5rem;font-size:1.12rem;line-height:1.6}.why__split{border-top:2px solid var(--tp-line);border-bottom:2px solid var(--tp-line);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.75rem 2.5rem;margin-bottom:1.5rem;padding:1.75rem 0;display:grid}.why__split h3{font-family:var(--font-display);color:var(--tp-blue);margin:0 0 .4rem;font-size:1.15rem}.why__split p{color:var(--tp-muted);margin:0}.why__punch{color:var(--tp-ink);max-width:38rem;margin:0;font-size:1.18rem;font-weight:600;line-height:1.45}.flow__steps{counter-reset:step;gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.flow__steps li{counter-increment:step;color:var(--tp-ink);grid-template-columns:2rem 1fr;align-items:baseline;gap:.75rem;font-weight:500;display:grid}.flow__steps li:before{content:counter(step);font-family:var(--font-display);color:var(--tp-blue);font-weight:700}.close{padding-bottom:clamp(4rem,10vw,7rem)}.footer{border-top:1px solid var(--tp-line);color:var(--tp-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem clamp(1.25rem,4vw,3rem);font-size:.92rem;display:flex}.footer__brand{font-family:var(--font-display);color:var(--tp-ink);align-items:center;gap:.5rem;font-weight:700;display:inline-flex}.footer nav{gap:1rem;display:flex}.footer a{font-weight:500;text-decoration:none}@media (width<=960px){.hero{grid-template-columns:1fr;gap:2.5rem;min-height:auto;padding-top:clamp(2.5rem,8vw,4rem);padding-bottom:clamp(2rem,6vw,3.5rem)}.hero__visual{justify-content:flex-start;max-width:520px}.hero__diagram{width:100%;margin-right:0}}@media (width<=640px){.nav__links a:not(.nav__cta){display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
