@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-ext-wght-normal.DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-wght-normal.BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-vietnamese-wght-normal.6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-ext-wght-normal.DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-wght-normal.BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-cyrillic-ext-wght-normal.X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-cyrillic-wght-normal.DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-symbols2-wght-normal.CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-vietnamese-wght-normal.DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-ext-wght-normal.Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-wght-normal.XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#f6f5f1;--paper2:#efede6;--ink:#111;--mute:#6b6a65;--line:#e3e0d6;--acc:#ff5a1f;--ok:#1a7f37;--err:#c4321b;--acc-text:#c2410c;--sans:"Geist Variable", system-ui, -apple-system, sans-serif;--mono:"Geist Mono Variable", ui-monospace, Menlo, monospace}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font:16px/1.55 var(--sans);margin:0}a{color:inherit}.mono,code,pre{font-family:var(--mono)}.wrap{max-width:1120px;margin:0 auto;padding:0 24px}nav{border-bottom:1px solid var(--ink);background:var(--paper);z-index:5;position:sticky;top:0}nav .wrap{justify-content:space-between;align-items:center;gap:16px;height:58px;display:flex}nav .links{align-items:center;gap:22px;font-size:14px;display:flex}nav .links a{text-decoration:none}.wmark{font:700 21px/1 var(--sans);color:var(--ink);white-space:nowrap;text-decoration:none}.rdot{background:var(--acc);vertical-align:baseline;border-radius:50%;width:.2em;height:.2em;margin:0 .06em;display:inline-block}.btn{font:600 14px var(--sans);border:1px solid var(--ink);color:var(--ink);background:var(--paper);cursor:pointer;white-space:nowrap;padding:10px 15px;text-decoration:none;display:inline-block}.btn.acc{background:var(--acc);border-color:var(--acc);color:var(--ink)}.btn.ink{background:var(--ink);color:var(--paper)}section{border-bottom:1px solid var(--ink)}.pad{padding:80px 0}.alt{background:var(--paper2)}.eyebrow{font:12px var(--mono);letter-spacing:.08em;color:var(--mute);text-transform:uppercase}h2{font:700 clamp(28px,4vw,42px)/1.08 var(--sans);letter-spacing:-.025em;margin:8px 0 14px}h3{font:600 18px/1.3 var(--sans);margin:0 0 6px}.lead{color:var(--mute);max-width:640px;margin:0;font-size:17px}.ph{border-bottom:1px solid var(--ink);font:12px var(--mono);color:var(--mute);justify-content:space-between;gap:8px;padding:9px 14px;display:flex}.ph b{color:var(--ink);font-weight:500}pre{margin:0;padding:16px;font-size:13px;line-height:1.65;overflow-x:auto}.k{color:var(--mute)}.s{color:#0a6e5c}.o{color:var(--acc-text)}.foot{border-top:1px dashed var(--line);font:12px var(--mono);color:var(--ok);padding:9px 14px}.split{grid-template-columns:.9fr 1.1fr;align-items:start;gap:48px;display:grid}.split>*{min-width:0}.tabs{border:1px solid var(--ink);background:#fff;border-bottom:0;flex-wrap:wrap;display:flex}.tabs button{font:13px var(--mono);border:0;border-right:1px solid var(--ink);cursor:pointer;color:var(--ink);background:#fff;padding:9px 12px}.tabs button.on{background:var(--ink);color:var(--paper)}.codebox{border:1px solid var(--ink);background:#fff}.ticks{gap:10px;margin:22px 0 0;padding:0;list-style:none;display:grid}.ticks li{padding-left:26px;position:relative}.ticks li:before{content:"";background:var(--acc);border-radius:50%;width:10px;height:10px;position:absolute;top:.45em;left:2px}.cards{border-top:1px solid var(--ink);border-left:1px solid var(--ink);grid-template-columns:repeat(3,1fr);margin-top:32px;display:grid}.cards>div{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:var(--paper);padding:24px}.alt .cards>div{background:var(--paper2)}.cards p{color:var(--mute);margin:0;font-size:15px}.cards code{border:1px solid var(--line);background:#fff;padding:0 4px;font-size:13px}.cards.c4{grid-template-columns:repeat(4,1fr)}.stack{border-top:1px solid var(--ink);border-left:1px solid var(--ink);grid-template-columns:repeat(6,1fr);margin-top:28px;display:grid}.stack a{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);font:14px var(--mono);background:#fff;padding:16px 14px;text-decoration:none}.stack a:hover{background:var(--ink);color:var(--paper)}.stack a span{font:12px var(--sans);color:var(--mute);margin-top:2px;display:block}.stack a:hover span{color:#bbb}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{font:13px var(--mono);border:1px solid var(--ink);background:#fff;padding:8px 10px;text-decoration:none}.price{border:1px solid var(--ink);background:#fff;grid-template-columns:repeat(3,1fr);margin-top:32px;display:grid}.price>div{border-right:1px solid var(--ink);padding:26px}.price>div:last-child{border-right:0}.price .amt{font:700 38px var(--sans);letter-spacing:-.03em;margin:4px 0}.price .amt small{color:var(--mute);font-size:15px;font-weight:400}.price ul{color:var(--mute);margin:12px 0 20px;padding-left:18px;font-size:15px}.price .hl{background:var(--ink);color:var(--paper)}.price .hl ul,.price .hl .amt small{color:#bbb}.pnote{color:var(--mute);margin-top:14px;font-size:14px}.vs{grid-template-columns:1fr 1fr;gap:48px;display:grid}.vs table{border-collapse:collapse;border:1px solid var(--ink);background:#fff;width:100%;font-size:14px}.vs th,.vs td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.vs th[scope=col]{font:600 13px var(--mono);background:var(--paper2);border-bottom:1px solid var(--ink)}.vs th[scope=row]{font-weight:400}.mig{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.faq{border-top:1px solid var(--ink);margin-top:28px}.faq details{border-bottom:1px solid var(--ink);padding:18px 0}.faq summary{font:600 18px var(--sans);cursor:pointer;justify-content:space-between;gap:16px;list-style:none;display:flex}.faq summary:after{content:"+";font:400 22px var(--mono);color:var(--acc)}.faq details[open] summary:after{content:"–"}.faq p{color:#3d3c38;max-width:820px;margin:12px 0 0}footer{padding:48px 0 32px;font-size:14px}.fcols{grid-template-columns:1.3fr repeat(4,1fr);gap:28px;display:grid}.fcols .fh{font:600 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin:0 0 10px}.fcols a{padding:3px 0;text-decoration:none;display:block}.fcols a:hover{color:var(--acc)}.legal{font:12px var(--mono);color:var(--mute);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:36px;display:flex}.more{font:14px var(--mono);color:var(--ink);border-bottom:1px solid var(--acc);margin-top:18px;text-decoration:none;display:inline-block}.more:hover{color:var(--acc)}.recv{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.recv .eyebrow{margin-right:6px}.faq a,.lead a{color:inherit;text-decoration-color:var(--acc)}.hp{visibility:hidden;width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}@media (width<=900px){.split,.vs{grid-template-columns:1fr;gap:28px}.cards,.cards.c4,.price{grid-template-columns:1fr}.price>div{border-right:0;border-bottom:1px solid var(--ink)}.stack{grid-template-columns:repeat(3,1fr)}.fcols{grid-template-columns:1fr 1fr}nav .links a:not(.btn){display:none}}dialog.signup{background:var(--paper);width:calc(100% - 32px);max-width:520px;color:var(--ink);border:1px solid var(--ink);box-shadow:8px 8px 0 var(--ink);margin:6vh auto auto;padding:28px}dialog.signup::backdrop{background:#11111173}dialog.signup .x{font:400 26px/1 var(--sans);cursor:pointer;color:var(--mute);background:0 0;border:0;position:absolute;top:8px;right:10px}.signup h2{font:700 24px/1.2 var(--sans);letter-spacing:-.02em;margin:6px 0 18px}.signup label.f{font:500 14px var(--sans);margin-bottom:14px;display:block}.signup input[type=email],.signup input[type=text]{width:100%;font:15px var(--mono);border:1px solid var(--ink);color:var(--ink);background:#fff;border-radius:0;margin-top:6px;padding:11px 12px;display:block}.signup input:focus{outline:2px solid var(--acc);outline-offset:1px}.signup input[aria-invalid=true]{border-color:var(--err)}.signup small{color:var(--mute);margin-top:5px;font-size:13px;font-weight:400;display:block}.signup fieldset{border:0;margin:4px 0 18px;padding:0}.signup legend{font:500 14px var(--sans);margin-bottom:8px;padding:0}.signup .pills{border:1px solid var(--ink);width:max-content;max-width:100%;display:flex}.signup .pills label{cursor:pointer;position:relative}.signup .pills input{opacity:0;pointer-events:none;position:absolute}.signup .pills span{font:13px var(--mono);border-right:1px solid var(--ink);background:#fff;padding:8px 14px;display:block}.signup .pills label:last-child span{border-right:0}.signup .pills input:checked+span{background:var(--ink);color:var(--paper)}.signup .pills input:focus-visible+span{outline:2px solid var(--acc);outline-offset:-3px}.signup .err{color:var(--err);margin:-4px 0 12px;font-size:14px}.signup .fine{color:var(--mute);margin:14px 0 0;font-size:12.5px}.signup .okk{font:500 13px var(--mono);color:var(--ok)}.signup p{margin:0 0 14px}.recs{border-top:1px solid var(--ink);border-left:1px solid var(--ink);margin:10px 0 4px;display:grid}.recs a{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:#fff;grid-template-columns:1fr auto;gap:2px 12px;padding:12px 14px;text-decoration:none;display:grid}.recs a:hover{background:var(--ink);color:var(--paper)}.recs b{font:600 15px var(--sans)}.recs i{font:normal 12px var(--mono);color:var(--mute);text-align:right;align-self:center}.recs span{color:var(--mute);grid-column:1/-1;font-size:13.5px}.recs a:hover span,.recs a:hover i{color:#bbb}@media (width<=560px){dialog.signup{width:100%;max-width:none;height:100%;max-height:none;box-shadow:none;border:0;margin:0;padding:24px 16px}}.sr{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dotc{font-size:0}.wrap.narrow{max-width:560px}footer .tagline{color:var(--mute);max-width:240px;margin-top:12px}.signup .opt{color:var(--mute);font-weight:400}.signup .wait-note{color:var(--mute);margin-top:4px}.signup .back{margin-top:16px}.mig .eyebrow{align-self:center}
