@font-face{font-family:Host Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/host-grotesk-latin-ext-400-normal.2lWav77k.woff2)format("woff2"),url(/_astro/host-grotesk-latin-ext-400-normal.HDUo2C87.woff)format("woff");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:Host Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/host-grotesk-latin-400-normal.qDxuE_yq.woff2)format("woff2"),url(/_astro/host-grotesk-latin-400-normal.B5l3BUS2.woff)format("woff");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:Host Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/host-grotesk-latin-ext-500-normal.ll0qUnSO.woff2)format("woff2"),url(/_astro/host-grotesk-latin-ext-500-normal.G3nlyK26.woff)format("woff");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:Host Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/host-grotesk-latin-500-normal.B7155YqD.woff2)format("woff2"),url(/_astro/host-grotesk-latin-500-normal.CYkrbnPr.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");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{--color-ground:#eef0f3;--color-surface:#fcfdfe;--color-raised:#e5e8ec;--color-line:#d3d7de;--color-ink:#101216;--color-ink-2:#3f434b;--color-ink-3:#626873;--color-proof:#f0561d;--color-proof-text:#c2410c;--color-proof-2:#f49470;--color-proof-1:#f7c4ae;--color-proof-0:#fbe3d8;--color-stalled:#8e9498;--color-conflict:#e8b10a;--color-guide:#a2a3a5;--color-field:#b2b8c2;--color-error:#b42318;--font-sans:"Host Grotesk", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-inout:cubic-bezier(.65, 0, .35, 1);--dur-hover:.24s;--dur-press:.14s;--dur-out:.2s;--dur-menu:.36s;--dur-tab:.42s;--dur-enter:.8s;--rise:12px;--stagger:90ms;--dur-hero:.9s;--stagger-hero:.12s;--dur-bar:1.1s;--stagger-dot:.16s;--dur-page:.32s;--dash:1px dashed var(--color-guide);--edge:40px;--nav-h:77px}@media (width<=767px){:root{--edge:20px;--nav-h:73px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--color-ground);color:var(--color-ink);font:400 15px/24px var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;margin:0}h1,h2,h3,h4,p,figure,ol,ul,dl,dd,blockquote{margin:0}ul,ol{padding:0;list-style:none}h1,h2,h3,h4{font-weight:500}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}img,svg{max-width:100%;display:block}[hidden]{display:none!important}.mono{font-family:var(--font-mono)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--color-ink);outline-offset:2px}.t-display{letter-spacing:-.045em;font-size:76px;font-weight:500;line-height:80px}.t-hero{letter-spacing:-.045em;font-size:64px;font-weight:500;line-height:64px}.t-section{letter-spacing:-.03em;font-size:44px;font-weight:500;line-height:48px}.t-card{letter-spacing:-.02em;font-size:22px;font-weight:500;line-height:28px}.t-sub{color:var(--color-ink-2);font-size:17px;line-height:26px}.t-meta{font:400 13px/20px var(--font-mono);color:var(--color-ink-3)}.t-note{color:var(--color-ink-3);font-size:13px;line-height:18px}@media (width<=767px){.t-display{font-size:44px;line-height:46px}.t-hero{font-size:40px;line-height:44px}.t-section{font-size:28px;line-height:32px}.t-card{font-size:19px;line-height:24px}.t-sub{font-size:15px;line-height:22px}}.logo{letter-spacing:-.02em;color:var(--color-ink);align-items:center;gap:10px;font-size:19px;font-weight:500;line-height:24px;display:inline-flex}.logo-mark{width:17px;height:17px;color:var(--color-proof);flex-shrink:0}.btn{cursor:pointer;white-space:nowrap;transition:background-color var(--dur-hover) var(--ease-out), color var(--dur-hover) var(--ease-out), transform var(--dur-press) var(--ease-out);border:0;border-radius:8px;justify-content:center;align-items:center;gap:10px;font-weight:500;display:inline-flex}.btn:active{transform:scale(.98)}.btn-proof{background:var(--color-proof);color:#fff}.btn-proof:hover{background:color-mix(in srgb, var(--color-proof), #000 7%)}.btn-dark{background:var(--color-ink);color:var(--color-surface)}.btn-dark:hover{background:color-mix(in srgb, var(--color-ink), #fff 12%)}.btn-sm{padding:8px 14px;font-size:14px;line-height:20px}.btn-md{height:44px;padding-inline:18px;font-size:15px;line-height:20px}.btn-lg{height:48px;padding-inline:20px;font-size:16px;line-height:20px}.btn:disabled,.btn.is-sending{background:var(--color-proof-2);cursor:default;transform:none}.spinner{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.field{background:var(--color-surface);border:1px solid var(--color-field);width:100%;height:44px;color:var(--color-ink);transition:border-color var(--dur-hover) var(--ease-out), box-shadow var(--dur-hover) var(--ease-out);border-radius:8px;padding-inline:14px;font-size:15px;line-height:20px}@media (hover:hover){.field:hover:not(:focus){border-color:var(--color-ink-3)}}.field::placeholder{color:var(--color-ink-3);opacity:1}.field:focus,.field.is-typing{border-color:var(--color-ink);box-shadow:0 0 0 3px var(--color-line);outline:none}.field[aria-invalid=true]{border-color:var(--color-error);box-shadow:0 0 0 3px #f6d4d0}.link{text-decoration:underline 1px var(--color-proof-2);text-underline-offset:3px;transition:text-decoration-color var(--dur-hover) var(--ease-out)}.link:hover{text-decoration-color:var(--color-proof)}.arrow{transition:transform var(--dur-hover) var(--ease-out);display:inline-block}a:focus-visible .arrow{transform:translate(3px)}@media (hover:hover){a:hover .arrow{transform:translate(3px)}}.nav-link{color:var(--color-ink-2);transition:color var(--dur-hover) var(--ease-out);position:relative}.nav-link:after{content:"";transform-origin:0;height:1px;transition:transform var(--dur-menu) var(--ease-out);background:currentColor;position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}@media (hover:hover){.nav-link:hover:after{transform:none}}.nav-link:focus-visible:after,.nav-link[aria-current=page]:after{transform:none}.nav-link:hover,.nav-link[aria-current=page]{color:var(--color-ink)}.nav-link[aria-current=page]{font-weight:500}.tag{background:var(--color-raised);font:400 12px/16px var(--font-mono);color:var(--color-ink-2);white-space:nowrap;border-radius:4px;padding:3px 8px;display:inline-block}.tag:not(.tag-conflict){text-underline-offset:3px;transition:text-decoration-color var(--dur-hover) var(--ease-out);text-decoration:underline 1px #0000}@media (hover:hover){.tag:not(.tag-conflict):hover{text-decoration-color:currentColor}}.tag-conflict{color:#6b4f00;font-family:var(--font-sans);background:#fbefc4;font-weight:500}.frame{border-inline:var(--dash);width:100%;max-width:1200px;margin-inline:auto}.dash-top{border-top:var(--dash)}@media (width<=767px){.frame{border-inline:0}.desk{display:none!important}}@media (width>=768px){.mob{display:none!important}}@keyframes rise{0%{opacity:0;transform:translateY(var(--rise))}}@keyframes line-up{0%{transform:translateY(120%)}}@keyframes hold{0%,to{opacity:0}}@keyframes fill{0%{background-color:var(--color-raised)}}@keyframes draw{0%{stroke-dashoffset:var(--len)}}.js :is([data-reveal],[data-reveal-group]>*){opacity:0;transform:translateY(var(--rise));transition:opacity var(--dur-enter) var(--ease-out), transform var(--dur-enter) var(--ease-out)}.js :is([data-reveal],[data-reveal-group]>*).in{opacity:1;transform:none}.js [data-hero]{animation:rise var(--dur-enter) var(--ease-out) var(--d,0s) both}.js [data-split]:not(.is-split){animation:1.2s hold}w-ln{overflow-clip-margin:6px;display:block;overflow:clip}w-in{animation:line-up var(--dur-hero) var(--ease-out) calc(var(--i) * var(--stagger-hero)) both;display:block}:is(.mw-track,.bar-track) i{transform-origin:0;transition:transform var(--dur-bar) var(--ease-out) calc(var(--i,0) * var(--stagger-dot)), background-color var(--dur-hover) var(--ease-out)}:is(.mw-label .mono,.bar-v){transition:opacity var(--dur-hover) var(--ease-out) calc(var(--i,0) * var(--stagger-dot) + var(--dur-bar) * .6)}.js :is(.mw-card,.bars):not(.in) :is(.mw-track,.bar-track) i{transform:scaleX(0)}.js :is(.mw-card,.bars):not(.in) :is(.mw-label .mono,.bar-v){opacity:0}.tab-ind{background:var(--color-ink);pointer-events:none;border-radius:999px;width:0;position:absolute;top:4px;bottom:4px;left:0}.tab-ind.ready{transition:transform var(--dur-tab) var(--ease-inout), width var(--dur-tab) var(--ease-inout)}.tab-stack{display:grid}.tab-stack>*{grid-area:1/1}.js .tab-stack>[hidden]{visibility:hidden;display:block!important}[data-dither]{isolation:isolate;position:relative}.dither-cv{z-index:-1;border-radius:inherit;pointer-events:none;width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}@keyframes fade-out{to{opacity:0}}@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}main{view-transition-name:page}::view-transition-group(site-nav),::view-transition-group(page){animation:none}::view-transition-old(root),::view-transition-new(root),::view-transition-old(site-nav),::view-transition-new(site-nav){animation-duration:var(--dur-page);animation-timing-function:var(--ease-out)}::view-transition-old(root){animation-name:fade-out}::view-transition-new(page){animation:rise var(--dur-page) var(--ease-out) both}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.js :is([data-reveal],[data-reveal-group]>*){transform:none}.btn:active,.chip:active,a .arrow{transform:none!important}}
