@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-mono-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--accent: #16a34a;--accent-strong: #15803d;--accent-deep: #166534;--accent-soft: #ecfdf5;--accent-line: #a7f3d0;--on-accent: #ffffff;--ink: #0b1220;--body: #3d4a5c;--muted: #5c6878;--line: #e3e8ef;--line-soft: #eef2f7;--surface: #ffffff;--surface-alt: #f7f9fb;--surface-sunk: #f1f5f9;--amber-soft: #fffbeb;--amber-line: #fcd97a;--amber-ink: #8a4b09;--r-xs: 6px;--r-sm: 10px;--r-md: 14px;--r-lg: 20px;--r-pill: 999px;--shadow-sm: 0 1px 2px rgba(11, 18, 32, .05);--shadow: 0 1px 2px rgba(11, 18, 32, .04), 0 6px 20px rgba(11, 18, 32, .06);--shadow-lg: 0 2px 4px rgba(11, 18, 32, .04), 0 20px 48px rgba(11, 18, 32, .09);--font: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: "Geist Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--wrap: 1120px;--ease: cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;font-family:var(--font);font-size:17px;line-height:1.65;color:var(--body);background:var(--surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{color:var(--ink);line-height:1.15;margin:0 0 .5em;letter-spacing:-.022em;font-weight:640;text-wrap:balance}h1{font-size:clamp(2.15rem,5vw,3.3rem);letter-spacing:-.034em;font-weight:660}h2{font-size:clamp(1.6rem,3.2vw,2.2rem);letter-spacing:-.028em}h3{font-size:1.15rem;letter-spacing:-.015em}p{margin:0 0 1.1em;text-wrap:pretty}a{color:var(--accent-strong);text-decoration-thickness:1px;text-underline-offset:3px;transition:color .15s var(--ease)}a:hover{color:var(--accent-deep)}:where(a,button,summary,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--r-xs)}img{max-width:100%;height:auto;display:block}code{font-family:var(--mono);font-size:.86em;background:var(--surface-sunk);padding:.15em .42em;border-radius:var(--r-xs);color:var(--ink)}hr{border:0;border-top:1px solid var(--line);margin:3rem 0}::selection{background:var(--accent-soft);color:var(--accent-deep)}.skip-link{position:absolute;left:12px;top:-60px;z-index:100;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 16px;font-size:.94rem;font-weight:550;text-decoration:none;box-shadow:var(--shadow);transition:top .18s var(--ease)}.skip-link:focus{top:12px}.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 24px}.wrap-narrow{max-width:748px}section{padding:84px 0}.section-alt{background:var(--surface-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-alt+.section-alt{border-top:0}.section-head{max-width:660px;margin-bottom:46px}.section-head.center{margin-left:auto;margin-right:auto;text-align:center}.section-head p{font-size:1.07rem;color:var(--muted);margin-bottom:0;max-width:62ch}.section-head.center p{margin-left:auto;margin-right:auto}.section-head>:last-child{margin-bottom:0}.eyebrow{display:inline-block;font-size:.755rem;font-weight:620;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-strong);margin-bottom:16px;position:relative;padding-left:26px}.eyebrow:before{content:"";position:absolute;left:0;top:.82em;width:16px;height:2px;border-radius:2px;background:var(--accent)}.section-head.center .eyebrow{padding-left:0}.section-head.center .eyebrow:before{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:inherit;font-size:.99rem;font-weight:560;line-height:1.15;white-space:nowrap;padding:14px 24px;border-radius:var(--r-sm);border:1px solid transparent;text-decoration:none;cursor:pointer;transition:background-color .16s var(--ease),border-color .16s var(--ease),color .16s var(--ease),box-shadow .16s var(--ease),transform .1s var(--ease)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--on-accent);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:var(--on-accent)}.btn-secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn-secondary:hover{border-color:var(--muted);color:var(--ink);background:var(--surface)}.btn-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.site-header{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--surface) 86%,transparent);backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line)}@supports not (backdrop-filter: blur(1px)){.site-header{background:var(--surface)}}.site-header .inner{display:flex;align-items:center;gap:28px;height:68px}.logo{display:inline-flex;align-items:center;gap:10px;font-weight:640;font-size:1.08rem;color:var(--ink);text-decoration:none;letter-spacing:-.025em;flex-shrink:0}.logo:hover{color:var(--ink)}.logo .mark{width:30px;height:30px;border-radius:8px;flex-shrink:0}.site-nav{display:flex;gap:4px;margin-left:auto;align-items:center}.site-nav a{color:var(--body);text-decoration:none;font-size:.945rem;font-weight:500;padding:8px 12px;border-radius:var(--r-sm);transition:color .15s var(--ease),background-color .15s var(--ease)}.site-nav a:hover{color:var(--ink);background:var(--surface-sunk)}.site-nav a[aria-current=page]{color:var(--accent-strong);font-weight:560}.site-nav .btn{display:none}.header-cta{flex-shrink:0}.site-header .btn{padding:10px 18px;font-size:.93rem}.nav-toggle{display:none;margin-left:auto;align-items:center;justify-content:center;width:42px;height:42px;padding:0;background:transparent;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink);cursor:pointer}.nav-toggle svg{width:20px;height:20px}.nav-toggle .icon-close,.nav-toggle[aria-expanded=true] .icon-open{display:none}.nav-toggle[aria-expanded=true] .icon-close{display:block}.hero{position:relative;padding:76px 0 62px;background:var(--surface);border-bottom:1px solid var(--line);overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(120% 90% at 50% 0%,#000 0%,transparent 72%);mask-image:radial-gradient(120% 90% at 50% 0%,#000 0%,transparent 72%);pointer-events:none}.hero .wrap{position:relative;z-index:1}.hero h1{max-width:20ch}.hero .lede{font-size:1.16rem;color:var(--body);max-width:58ch;margin-bottom:30px}.hero-note{margin:22px 0 0;font-size:.9rem;color:var(--muted);max-width:68ch}.hero-home{text-align:center;padding:88px 0 148px;border-bottom:0}.hero-home .eyebrow{padding-left:0}.hero-home .eyebrow:before{display:none}.hero-home h1{max-width:18ch;margin-left:auto;margin-right:auto;font-size:clamp(2.3rem,5.4vw,3.6rem)}.hero-home .lede{margin-left:auto;margin-right:auto;font-size:1.2rem;max-width:58ch}.hero-home .btn-row{justify-content:center}.hero-points{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 24px;margin:26px 0 0;padding:0;list-style:none;font-size:.915rem;color:var(--muted)}.hero-points li{display:inline-flex;align-items:center;gap:8px}.hero-points svg{width:15px;height:15px;color:var(--accent);flex-shrink:0}.hero-shot{padding-top:0;margin-top:-108px;position:relative;z-index:2}.hero-shot .shot{box-shadow:var(--shadow-lg)}@media(max-width:860px){.hero-home{padding:62px 0 108px}.hero-shot{margin-top:-76px}}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(238px,1fr))}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(258px,1fr));gap:34px 40px}.step{padding-top:22px;border-top:2px solid var(--line)}.step-num{display:block;font-family:var(--mono);font-size:.95rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--accent-strong);margin-bottom:14px}.step h3{margin-bottom:8px}.step p{margin-bottom:0;color:var(--body)}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}.feature{background:var(--surface);padding:30px 28px}.feature .icon{width:36px;height:36px;display:grid;place-items:center;border-radius:var(--r-sm);background:var(--accent-soft);color:var(--accent-strong);margin-bottom:16px}.feature .icon svg{width:19px;height:19px}.feature h3{margin-bottom:8px}.feature p{margin-bottom:0;font-size:.985rem}.ticks{list-style:none;padding:0;margin:0;display:grid;gap:11px}.ticks li{position:relative;padding-left:29px;line-height:1.5}.ticks li:before{content:"";position:absolute;left:0;top:.3em;width:18px;height:18px;border-radius:var(--r-pill);background:var(--accent-soft)}.ticks li:after{content:"";position:absolute;left:4px;top:calc(.3em + 4px);width:10px;height:10px;background:var(--accent-strong);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center / contain no-repeat}.plan{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:26px;transition:border-color .18s var(--ease),box-shadow .18s var(--ease)}.plan:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.plan.featured{border-color:var(--accent);box-shadow:var(--shadow-lg);position:relative}.plan .badge{position:absolute;top:-11px;left:26px;background:var(--accent-strong);color:var(--on-accent);font-size:.69rem;font-weight:640;letter-spacing:.07em;text-transform:uppercase;padding:4px 11px;border-radius:var(--r-pill)}.plan h3{font-size:1.02rem;margin-bottom:3px}.plan .plan-desc{font-size:.9rem;color:var(--muted);margin-bottom:18px;min-height:2.7em}.plan .price{font-size:2.35rem;font-weight:640;color:var(--ink);letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}.plan .price span{font-size:.9rem;font-weight:500;color:var(--muted);letter-spacing:0}.plan .price-sub{font-size:.85rem;color:var(--muted);margin:9px 0 20px;min-height:1.5em}.plan .ticks{margin-bottom:24px;font-size:.93rem}.plan .plan-cta{margin-top:auto}.plan .plan-cta .btn{width:100%}.callout{border:1px solid var(--accent-line);background:var(--accent-soft);border-radius:var(--r-md);padding:22px 24px}.callout.warn{border-color:var(--amber-line);background:var(--amber-soft)}.callout.warn strong{color:var(--amber-ink)}.callout :last-child{margin-bottom:0}.callout h3{font-size:1.02rem}.shot{border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-lg);overflow:hidden;background:var(--surface)}.shot img{width:100%;display:block}.shot-caption{text-align:center;font-size:.885rem;color:var(--muted);max-width:60ch;margin:16px auto 0}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{cursor:pointer;padding:20px 44px 20px 0;font-weight:580;color:var(--ink);font-size:1.04rem;list-style:none;position:relative;line-height:1.45;transition:color .15s var(--ease)}.faq-item summary:hover{color:var(--accent-strong)}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"";position:absolute;right:8px;top:26px;width:10px;height:10px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform .2s var(--ease)}.faq-item[open] summary:after{transform:rotate(-135deg)}.faq-item[open] summary{color:var(--ink)}.faq-item .answer{padding:0 0 24px;max-width:68ch}.faq-item .answer>:last-child{margin-bottom:0}.faq-group+.faq-group{margin-top:52px}.faq-group>h2{font-size:1.3rem;padding-bottom:10px}.doc-block+.doc-block{margin-top:68px;padding-top:68px;border-top:1px solid var(--line)}.doc-head{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:flex-start;justify-content:space-between;margin-bottom:26px}.doc-head>div:first-child{max-width:62ch}.doc-head h3{font-size:1.3rem;margin-bottom:6px}.doc-head p{margin-bottom:0;color:var(--muted)}.doc-kind{display:inline-block;font-family:var(--mono);font-size:.72rem;font-weight:550;letter-spacing:.02em;color:var(--accent-strong);background:var(--accent-soft);border-radius:var(--r-xs);padding:4px 9px;margin-bottom:12px}.doc-preview{border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow);overflow:hidden;background:#fff}.doc-preview img{width:100%;display:block}.sheet{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:var(--surface)}.sheet+.sheet{margin-top:18px}.sheet-head{padding:13px 18px;background:var(--surface-alt);border-bottom:1px solid var(--line)}.sheet-head strong{color:var(--ink);font-size:.93rem;font-weight:580}.sheet-head span{display:block;color:var(--muted);font-size:.85rem;margin-top:2px}.sheet-scroll{overflow-x:auto}.sheet table{border-collapse:collapse;width:100%;font-size:.84rem;white-space:nowrap}.sheet th,.sheet td{padding:9px 14px;text-align:left;border-bottom:1px solid var(--line-soft)}.sheet th{font-weight:580;color:var(--ink);background:var(--surface);border-bottom:1px solid var(--line)}.sheet tbody tr:last-child td{border-bottom:0}.sheet td{color:var(--body);font-variant-numeric:tabular-nums}.sheet td.num,.sheet th.num{text-align:right;font-family:var(--mono);font-size:.79rem}.sheet th.num{font-family:var(--font);font-size:.84rem}.code-block{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:#0b1117}.code-block .code-head{padding:11px 18px;background:#131c25;color:#93a3b5;font-size:.79rem;font-family:var(--mono);border-bottom:1px solid #1f2b38}.code-block pre{margin:0;padding:20px;overflow-x:auto;font-family:var(--mono);font-size:.815rem;line-height:1.7;color:#dbe4ee;tab-size:2}.code-block code{background:none;padding:0;font-size:inherit;color:inherit}.prose h2{font-size:1.38rem;margin-top:2.4em}.prose h2:first-of-type{margin-top:1.2em}.prose h3{margin-top:1.8em}.prose ul,.prose ol{padding-left:1.35em;margin:0 0 1.1em}.prose li{margin-bottom:.5em}.prose .updated{color:var(--muted);font-size:.92rem}.cta-band{position:relative;background:#0b1220;color:#ccd6e4;text-align:center;border-top:1px solid var(--line)}.cta-band h2{color:#fff}.cta-band p{max-width:52ch;margin:0 auto 28px;color:#ccd6e4}.cta-band .btn-primary{background:#22c55e;border-color:#22c55e;color:#04220f}.cta-band .btn-primary:hover{background:#4ade80;border-color:#4ade80;color:#04220f}.cta-band .btn-secondary{background:transparent;border-color:#55647c;color:#fff}.cta-band .btn-secondary:hover{border-color:#97a6bb;color:#fff;background:transparent}.cta-band .btn-row{justify-content:center}.site-footer{background:var(--surface-alt);border-top:1px solid var(--line);padding:56px 0 40px;font-size:.93rem}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:36px;margin-bottom:38px}.site-footer h4{font-size:.76rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:15px;font-weight:620}.site-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}.site-footer a{color:var(--body);text-decoration:none}.site-footer a:hover{color:var(--accent-strong);text-decoration:underline}.footer-blurb{color:var(--muted);max-width:34ch;margin:14px 0 0;font-size:.9rem}.footer-base{border-top:1px solid var(--line);padding-top:24px;color:var(--muted);font-size:.865rem;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}.footer-base p{margin:0}.js-reveal .reveal{opacity:0;transform:translateY(14px)}.js-reveal .reveal.is-in{opacity:1;transform:none;transition:opacity .5s var(--ease),transform .5s var(--ease)}@media(max-width:900px){.site-nav{position:absolute;top:68px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:2px;margin:0;padding:10px 18px 16px;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.site-nav[data-open=true]{display:flex}.site-nav a{padding:12px 10px;font-size:1rem}.site-nav .btn{display:inline-flex;margin-top:8px;width:100%}.nav-toggle{display:inline-flex}.header-cta{display:none}}@media(max-width:720px){body{font-size:16px}section{padding:60px 0}.hero{padding:56px 0 50px}.wrap{padding:0 20px}.section-head{margin-bottom:34px}.feature{padding:26px 22px}.doc-block+.doc-block{margin-top:48px;padding-top:48px}.footer-grid{grid-template-columns:1fr 1fr}.btn{white-space:normal}}@media(max-width:520px){.footer-grid{grid-template-columns:1fr;gap:30px}.btn-row .btn{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.js-reveal .reveal{opacity:1;transform:none}}@media print{.site-header,.site-footer,.cta-band,.skip-link{display:none}body{color:#000;background:#fff}}
