@font-face{font-family:Poppins Light;src:url(/fonts/poppins-display.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Poppins SemiBold;src:url(/fonts/poppins-semibold.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Open Sans;src:url(/fonts/open-sans-400.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Open Sans;src:url(/fonts/open-sans-700.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Red Hat Mono;src:url(/fonts/red-hat-mono-400.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Source Code Pro;src:url(/fonts/source-code-pro-400.woff2)format("woff2");font-weight:400;font-display:swap}:root{--canvas:#0e1116;--panel:#171c23;--inset:#1f252e;--ink:#e6eaee;--ink-2:#b4bcc5;--ink-3:#9aa4af;--rule:#2a313b;--field-border:#68727e;--on-ink:#0e1116;--ink-hover:#c3cad2;--hires:#6aaaff;--hires-fill:#4c9aff;--late:#2dd4bf;--late-fill:#2dd4bf;--late-hover:#5eead4;--shadow:0 0 0 1px #232a33, 0 24px 48px -16px #0009;--shadow-overlay:0 8px 24px -8px #00000080;--bloom:#2f5cff94;--screen:#0a0d11;--screen-2:#151b22;--screen-line:#263039;--screen-ink:#e8edf2;--screen-ink-2:#9aa4af;--screen-hires:#4c9aff;--screen-late:#2dd4bf;--screen-late-shine:linear-gradient(180deg, #ffffffbf, #ffffff1a 45%, #00281e40);--screen-late-shine-dot:radial-gradient(circle at 35% 30%, #fffffff2 0 16%, #fff0 50%), linear-gradient(160deg, transparent 45%, #00281e59);--screen-late-shine-top:#effffc;--screen-late-shine-deep:#14a894;--screen-late-text-shine:linear-gradient(180deg, var(--screen-late-shine-top) 0%, color-mix(in srgb, var(--screen-late-shine-top) 50%, var(--screen-late)) 38%, var(--screen-late) 62%, var(--screen-late-shine-deep) 100%);--screen-hires-shine-top:#f0f6ff;--screen-hires-shine-deep:#2f7be8;--screen-hires-shine-dot:radial-gradient(circle at 35% 30%, #fffffff2 0 16%, #fff0 50%), linear-gradient(160deg, transparent 45%, #00143c59);--screen-hires-text-shine:linear-gradient(180deg, var(--screen-hires-shine-top) 0%, color-mix(in srgb, var(--screen-hires-shine-top) 50%, var(--screen-hires)) 38%, var(--screen-hires) 62%, var(--screen-hires-shine-deep) 100%);--display:"Poppins Light", "Poppins", system-ui, sans-serif;--strong:"Poppins SemiBold", "Poppins", system-ui, sans-serif;--text:"Open Sans", system-ui, sans-serif;--code:"Red Hat Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--example:"Source Code Pro", var(--code);--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;--s10:128px;--gutter:clamp(16px, 4vw, 48px);--max:1200px;--header:72px;color-scheme:dark}*{box-sizing:border-box}html{scroll-padding-top:calc(var(--header) + var(--s5));-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--canvas);min-height:100dvh;color:var(--ink-2);font:400 17px/1.6 var(--text);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;display:flex}h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}h1,h2,h3,h4{color:var(--ink);font-weight:400}a{color:inherit}img,video,svg{max-width:100%;display:block}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:4px}main{flex:1 0 auto}main:focus{outline:none}.skip{left:var(--s4);z-index:100;padding:var(--s2) var(--s4);background:var(--ink);color:var(--on-ink);font:600 15px/1.4 var(--strong);border-radius:999px;text-decoration:none;position:absolute;top:-100px}.skip:focus{top:var(--s3)}.nowrap{white-space:nowrap}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.wrap{width:min(var(--max), 100% - 2 * var(--gutter));margin-inline:auto}.h1{font:400 min(clamp(44px, 6vw, 76px), 11.5vw) / 1.02 var(--display);letter-spacing:-.02em;color:var(--ink);text-wrap:balance}.h2{font:400 clamp(30px, 3.4vw, 42px) / 1.12 var(--display);letter-spacing:-.012em;color:var(--ink);text-wrap:balance}.h3{font:400 21px/1.3 var(--display);color:var(--ink);text-wrap:balance}.lede{max-width:60ch;color:var(--ink-2);text-wrap:pretty;font-size:19px;line-height:1.55}.prose{text-wrap:pretty;max-width:66ch}.small{font-size:15px;line-height:1.5}.meta{color:var(--ink-3);font-size:13px;line-height:1.45}.strong{font:600 15px/1.4 var(--strong);color:var(--ink)}code,.code{font-family:var(--code);font-variant-ligatures:none;font-size:.88em}.link{color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule);text-underline-offset:4px;font-weight:700;text-decoration-thickness:2px;transition:text-decoration-color .15s}.link:hover{text-decoration-color:currentColor}.prose a,.inline-link{color:var(--ink);text-decoration:underline;text-decoration-color:var(--ink-3);text-underline-offset:3px}.prose a:hover,.inline-link:hover{text-decoration-color:currentColor}.btn{justify-content:center;align-items:center;gap:var(--s2);min-height:44px;padding:0 var(--s5);border:1px solid var(--late);background:var(--late);color:var(--on-ink);font:600 15px/1 var(--strong);white-space:nowrap;cursor:pointer;border-radius:999px;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.btn:hover{background:var(--late-hover);border-color:var(--late-hover)}.btn:disabled{opacity:.6;cursor:progress}.btn.quiet{border-color:var(--rule);color:var(--ink);background:0 0}.btn.quiet:hover{border-color:var(--ink);color:var(--ink);background:0 0}.section{padding-block:var(--s9)}.section+.section{border-top:1px solid var(--rule)}.section-head{gap:var(--s4);max-width:760px;margin-bottom:var(--s7);display:grid}.panel{background:var(--panel);border:1px solid var(--rule);border-radius:16px}:where(.screen .w){background:var(--screen-2);border:1px solid var(--screen-line);color:var(--screen-ink-2);border-radius:12px;align-content:start;gap:12px;padding:18px;text-decoration:none;display:grid}:where(.screen a.w){transition:border-color .15s}:where(.screen a.w:hover){border-color:var(--screen-ink-2)}:where(.screen .w-head){font:600 14px/1.3 var(--strong);color:var(--screen-ink);justify-content:space-between;align-items:center;gap:12px;display:flex}:where(.screen .w-head svg){color:var(--screen-ink-2);flex:none;transition:transform .15s,color .15s}:where(.screen a.w:hover .w-head svg){color:var(--screen-ink);transform:translate(2px,-2px)}:where(.screen .w-foot){color:var(--screen-ink-2);font-size:13px}:where(.screen input[type=range]){--thumb:22px;cursor:pointer;-webkit-appearance:none;appearance:none;background:0 0;width:100%;height:28px;margin:0}:where(.screen input[type=range])::-webkit-slider-runnable-track{background:#66717d;border-radius:2px;height:4px}:where(.screen input[type=range])::-moz-range-track{background:#66717d;border-radius:2px;height:4px}:where(.screen input[type=range])::-webkit-slider-thumb{box-sizing:border-box;width:var(--thumb);height:var(--thumb);margin-top:calc((4px - var(--thumb)) / 2);border:3px solid var(--screen);background:var(--screen-late);background-image:var(--screen-late-shine-dot);box-shadow:0 0 0 1px var(--screen-late);-webkit-appearance:none;appearance:none;border-radius:50%}:where(.screen input[type=range])::-moz-range-thumb{box-sizing:border-box;width:var(--thumb);height:var(--thumb);border:3px solid var(--screen);background:var(--screen-late);background-image:var(--screen-late-shine-dot);box-shadow:0 0 0 1px var(--screen-late);border-radius:50%}.screen input[type=range]:focus-visible{outline:2px solid var(--screen-ink);outline-offset:4px;border-radius:6px}@media (width<=720px){:where(.screen .w){padding:14px}}.screen-card{padding:var(--s5);background:var(--screen);border:1px solid var(--rule);color:var(--screen-ink-2);border-radius:18px;font-size:15px;line-height:1.5}.screen-card :focus-visible{outline-color:var(--screen-ink)}.chip{min-width:34px;height:24px;padding:0 var(--s2);background:var(--ink);color:var(--on-ink);font:600 12px/1 var(--strong);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;display:inline-grid}.section-head>.chip{background:var(--late)}.sequence{gap:0;padding:0;list-style:none;display:grid}.sequence>li{column-gap:var(--s5);padding-bottom:var(--s6);grid-template-columns:34px 1fr;display:grid;position:relative}.sequence>li:last-child{padding-bottom:0}.sequence>li:before{content:"";border-left:1px dashed var(--rule);position:absolute;top:32px;bottom:8px;left:16.5px}.sequence>li:last-child:before{display:none}.sequence .chip{grid-row:span 2}.sequence p{margin-top:var(--s2)}@media (width>=901px){.sequence.across{column-gap:var(--s7);grid-template-columns:repeat(3,minmax(0,1fr))}.sequence.across>li{align-content:start;row-gap:var(--s4);grid-template-columns:minmax(0,1fr);padding-bottom:0}.sequence.across .chip{grid-row:auto;justify-self:start}.sequence.across p{max-width:36ch;margin-top:0}.sequence.across>li:before{left:calc(34px + var(--s3));right:calc(var(--s3) - var(--s7));border-left:0;border-top:1px dashed var(--rule);top:12px;bottom:auto}.sequence.across>li:last-child:before{display:none}}.sheet{border-bottom:1px solid var(--rule);grid-template-columns:minmax(14.5rem,.9fr) 2fr;margin:0;display:grid}.sheet>dt,.sheet>dd{padding:var(--s4) 0;border-top:1px solid var(--rule)}.sheet>dt{padding-right:var(--s5);font:600 15px/27px var(--strong);color:var(--ink)}.sheet>dd{color:var(--ink-2)}.qa{border-bottom:1px solid var(--rule);margin:0;padding:0;display:grid}.qa>details{border-top:1px solid var(--rule)}.qa summary{align-items:center;gap:var(--s5);padding-block:var(--s5);cursor:pointer;grid-template-columns:minmax(0,1fr) auto;list-style:none;display:grid}.qa summary::-webkit-details-marker{display:none}.qa summary:hover .h3{text-decoration:underline;text-decoration-color:var(--rule);text-underline-offset:6px;text-decoration-thickness:2px}.qa-mark{border:1px solid var(--rule);border-radius:999px;width:28px;height:28px;transition:border-color .15s;position:relative}.qa summary:hover .qa-mark{border-color:var(--ink)}.qa-mark:before,.qa-mark:after{content:"";background:var(--ink);width:12px;height:1.5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.qa-mark:after{transition:transform .2s;transform:translate(-50%,-50%)rotate(90deg)}.qa>details[open] .qa-mark:after{transform:translate(-50%,-50%)rotate(0)}.qa>details>p{max-width:66ch;padding-bottom:var(--s5)}.page-hero{padding-block:var(--s8) var(--s9);overflow-x:clip}.page-hero .hero-text{gap:var(--s5);align-content:start;display:grid}.page-hero .hero-grid{gap:var(--s7) var(--s8);grid-template-columns:5fr 7fr;align-items:start;display:grid}.page-hero .hero-text+.display,.page-hero .hero-text+.screen-card{margin-top:var(--s7)}.page-hero .hero-grid>.hero-text+*{margin-top:0}.display.slider-display{max-width:960px;margin-inline:auto}.split{gap:var(--s6) var(--s8);grid-template-columns:5fr 7fr;align-items:start;display:grid}.split>.section-head{margin-bottom:0}.section-head>.link{margin-top:var(--s2);justify-self:start}@media (width<=900px){.page-hero .hero-grid,.split{grid-template-columns:minmax(0,1fr)}}@media (width<=720px){body{font-size:16px}.lede{font-size:17px}.section{padding-block:var(--s8)}.section-head{margin-bottom:var(--s6)}.page-hero{padding-block:var(--s6) var(--s8)}.sheet{grid-template-columns:1fr}.sheet>dd{border-top:0;padding-top:0}.qa .h3{font-size:19px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.logo-lockup[data-astro-cid-f7espo7c]{color:var(--ink);align-items:center;gap:10px;display:inline-flex}.mark[data-astro-cid-f7espo7c]{width:38px;height:auto;color:var(--hires-fill)}.words[data-astro-cid-f7espo7c]{text-transform:uppercase;line-height:1;display:grid}.name[data-astro-cid-f7espo7c]{font:600 17px/1 var(--strong);letter-spacing:.08em}.kind[data-astro-cid-f7espo7c]{font:400 9.5px/1 var(--text);letter-spacing:.42em;color:var(--ink-3);margin-top:3px}.site-header[data-astro-cid-nen7h5rs]{z-index:50;background:color-mix(in srgb, var(--canvas) 88%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #0000;transition:border-color .2s;position:sticky;top:0}.site-header[data-astro-cid-nen7h5rs].scrolled{border-bottom-color:var(--rule)}.bar[data-astro-cid-nen7h5rs]{justify-content:space-between;align-items:center;gap:var(--s5);width:min(var(--max), 100% - 2 * var(--gutter));height:var(--header);margin-inline:auto;display:flex}.home[data-astro-cid-nen7h5rs]{border-radius:8px;text-decoration:none}nav[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--s5);display:flex}.segments[data-astro-cid-nen7h5rs]{background:var(--panel);border:1px solid var(--rule);border-radius:999px;gap:2px;margin:0;padding:4px;list-style:none;display:flex}.seg[data-astro-cid-nen7h5rs]{height:36px;padding:0 var(--s4);color:var(--ink-2);font:600 14px/1 var(--strong);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;text-decoration:none;transition:background-color .15s,color .15s;display:inline-flex}.seg[data-astro-cid-nen7h5rs]:hover{color:var(--ink);background:var(--inset)}.seg[data-astro-cid-nen7h5rs].on{background:var(--late);color:var(--on-ink)}.seg[data-astro-cid-nen7h5rs] svg[data-astro-cid-nen7h5rs]{transition:transform .2s}.has-menu[data-astro-cid-nen7h5rs]{position:relative}.has-menu[data-astro-cid-nen7h5rs].expanded .seg[data-astro-cid-nen7h5rs] svg[data-astro-cid-nen7h5rs]{transform:rotate(180deg)}.menu[data-astro-cid-nen7h5rs]{background:var(--panel);border:1px solid var(--rule);width:280px;box-shadow:var(--shadow-overlay);border-radius:16px;margin:0;padding:6px;list-style:none;display:none;position:absolute;top:calc(100% + 10px);left:-4px}.has-menu[data-astro-cid-nen7h5rs].expanded .menu[data-astro-cid-nen7h5rs]{display:grid}.menu[data-astro-cid-nen7h5rs]:before{content:"";height:12px;position:absolute;top:-12px;left:0;right:0}.menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{border-radius:10px;gap:2px;padding:10px 12px;text-decoration:none;display:grid}.menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover{background:var(--inset)}.menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{background:var(--inset);box-shadow:inset 3px 0 0 var(--ink)}.menu[data-astro-cid-nen7h5rs] .sub[data-astro-cid-nen7h5rs]{border-left:1px solid var(--rule);margin-left:18px;padding-left:6px}.menu[data-astro-cid-nen7h5rs] .sub[data-astro-cid-nen7h5rs]:has(a[aria-current=page]){border-left:3px solid var(--ink);padding-left:4px}.menu[data-astro-cid-nen7h5rs] .sub[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{box-shadow:none}.contact[data-astro-cid-nen7h5rs][aria-current=page]{box-shadow:0 0 0 3px var(--rule)}.menu-toggle[data-astro-cid-nen7h5rs]{display:none}@media (width<=900px){.menu-toggle[data-astro-cid-nen7h5rs]{border:1px solid var(--rule);background:var(--panel);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:999px;place-items:center;padding:0;display:grid}.bars[data-astro-cid-nen7h5rs],.bars[data-astro-cid-nen7h5rs]:before,.bars[data-astro-cid-nen7h5rs]:after{background:currentColor;width:16px;height:1.5px;transition:transform .2s,opacity .2s;display:block}.bars[data-astro-cid-nen7h5rs]{position:relative}.bars[data-astro-cid-nen7h5rs]:before,.bars[data-astro-cid-nen7h5rs]:after{content:"";position:absolute;left:0}.bars[data-astro-cid-nen7h5rs]:before{top:-5px}.bars[data-astro-cid-nen7h5rs]:after{top:5px}.site-header[data-astro-cid-nen7h5rs].open .bars[data-astro-cid-nen7h5rs]{background:0 0}.site-header[data-astro-cid-nen7h5rs].open .bars[data-astro-cid-nen7h5rs]:before{transform:translateY(5px)rotate(45deg)}.site-header[data-astro-cid-nen7h5rs].open .bars[data-astro-cid-nen7h5rs]:after{transform:translateY(-5px)rotate(-45deg)}nav[data-astro-cid-nen7h5rs]{top:var(--header);align-items:stretch;gap:var(--s4);max-height:calc(100dvh - var(--header));padding:var(--s4) var(--gutter) var(--s6);background:var(--canvas);border-bottom:1px solid var(--rule);box-shadow:var(--shadow-overlay);flex-direction:column;display:none;position:absolute;left:0;right:0;overflow-y:auto}.site-header[data-astro-cid-nen7h5rs].open nav[data-astro-cid-nen7h5rs]{display:flex}.segments[data-astro-cid-nen7h5rs]{background:0 0;border:0;border-radius:0;flex-direction:column;padding:0}.segments[data-astro-cid-nen7h5rs]>li[data-astro-cid-nen7h5rs]{border-bottom:1px solid var(--rule)}.seg[data-astro-cid-nen7h5rs]{width:100%;height:52px;color:var(--ink);border-radius:0;padding:0;font-size:16px}.seg[data-astro-cid-nen7h5rs]:hover,.seg[data-astro-cid-nen7h5rs].on{color:var(--ink);background:0 0}.has-menu[data-astro-cid-nen7h5rs]>.seg[data-astro-cid-nen7h5rs]{display:none}.menu[data-astro-cid-nen7h5rs]{width:auto;padding:0 0 var(--s3);box-shadow:none;background:0 0;border:0;display:grid;position:static}.menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{padding:10px 0}.menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{background:0 0}.menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{box-shadow:none}.menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page] .strong[data-astro-cid-nen7h5rs]{text-underline-offset:4px;text-decoration:underline}.contact[data-astro-cid-nen7h5rs]{align-self:flex-start}}.site-footer[data-astro-cid-jo6i4kqk]{padding-top:var(--s8);background:var(--panel);border-top:1px solid var(--rule)}.grid[data-astro-cid-jo6i4kqk]{gap:var(--s6) var(--s8);grid-template-columns:minmax(max-content,5fr) minmax(max-content,7fr);display:grid}.cols[data-astro-cid-jo6i4kqk]{gap:var(--s6);grid-template-columns:repeat(3,minmax(max-content,1fr));display:grid}.home[data-astro-cid-jo6i4kqk]{text-decoration:none;display:inline-block}.brand[data-astro-cid-jo6i4kqk] .small[data-astro-cid-jo6i4kqk]{margin-top:var(--s4);color:var(--ink-3)}.stack[data-astro-cid-jo6i4kqk]{align-content:start;gap:var(--s6);display:grid}.col[data-astro-cid-jo6i4kqk]{align-items:flex-start;gap:var(--s2);flex-direction:column;font-size:15px;line-height:1.5;display:flex}.col[data-astro-cid-jo6i4kqk] h2[data-astro-cid-jo6i4kqk]{margin-bottom:var(--s1)}.col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--ink-2);white-space:nowrap;text-decoration:none}.col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}address[data-astro-cid-jo6i4kqk]{font-style:normal}.col[data-astro-cid-jo6i4kqk] address[data-astro-cid-jo6i4kqk]+a[data-astro-cid-jo6i4kqk]{margin-top:var(--s4)}.base[data-astro-cid-jo6i4kqk]{margin-top:var(--s8);padding-block:var(--s5);border-top:1px solid var(--rule)}@media (width<=1023px){.grid[data-astro-cid-jo6i4kqk]{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.cols[data-astro-cid-jo6i4kqk]{grid-template-columns:minmax(0,1fr)}}
