:root{color-scheme:dark;--face:#0e0e0e;--grid-paper:#151515;--well:#1c1c1c;--grid-line:#232323;--edge:#292929;--ink:#f2f2f2;--copy:#c6c6c6;--mid:#999;--dim:#7a7a7a;--signal:#ff4f00;--signal-hot:#ff6a26;--led:#3ddc84;--amber:#ffb333;--unlit:#262626;--raised:#131313;--mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--step--1:.875rem;--step-0:1.0625rem;--step-1:1.25rem;--step-2:clamp(1.375rem, 1.15rem + .9vw, 1.75rem);--step-3:clamp(1.875rem, 1.35rem + 2.2vw, 2.875rem);--step-4:clamp(2.375rem, 1.45rem + 3.9vw, 4.5rem);--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:clamp(48px, 6vw, 72px);--gutter:clamp(16px, 4vw, 40px);--max:1200px;--radius-sm:8px;--radius:12px;--radius-lg:20px;--pad-card:clamp(20px, 2.6vw, 32px);--section:clamp(72px, 9vw, 128px);--section-tight:clamp(56px, 7vw, 96px);--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--z-bar:10;--z-header:20}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:88px}body{background:var(--face);min-height:100vh;color:var(--copy);font:400 var(--step-0) / 1.65 var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;margin:0;display:flex}main{flex:1}h1,h2,h3,h4{color:var(--ink);text-wrap:balance;margin:0;font-weight:600}h1{font-size:var(--step-4);letter-spacing:-.03em;line-height:1.04}h2{font-size:var(--step-3);letter-spacing:-.022em;line-height:1.08}h3{font-size:var(--step-1);letter-spacing:-.01em;line-height:1.3}p{text-wrap:pretty;margin:0}ul,ol{margin:0;padding:0}a{color:inherit}img,svg{max-width:100%;display:block}button,input{font:inherit;color:inherit}strong{color:var(--ink);font-weight:600}:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-radius:4px}::selection{background:var(--signal);color:var(--face)}.wrap{width:min(100% - 2 * var(--gutter), var(--max));margin-inline:auto}.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}.skip{z-index:calc(var(--z-header) + 1);background:var(--signal);color:var(--face);font:500 .8125rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;border-radius:6px;padding:10px 14px;text-decoration:none;position:absolute;top:-60px;left:12px}.skip:focus{top:12px}.caption{font:500 .75rem / 1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mid)}.lead{font-size:var(--step-1);color:var(--copy);max-width:44ch;line-height:1.55}.prose{max-width:66ch}.prose>*+*{margin-top:1em}.prose h2{font-size:var(--step-2);margin-top:2.2em}.prose h3{margin-top:1.8em}.prose ul,.prose ol{padding-left:1.2em}.prose li+li{margin-top:.4em}.prose a,.link{color:var(--ink);text-decoration-color:var(--signal);text-underline-offset:3px;text-decoration-thickness:1px}.prose a:hover,.link:hover{color:var(--signal-hot)}.mono{font-family:var(--mono);font-size:.92em}.well{background:linear-gradient(var(--well), var(--well)) padding-box, linear-gradient(to bottom, #000000b3, #ffffff12) border-box;border-radius:var(--radius);border:1px solid #0000}.plate{background:var(--raised);border:1px solid var(--edge);border-radius:var(--radius-lg);position:relative;box-shadow:inset 0 1px #ffffff0a,0 2px #0009}.screw{background:radial-gradient(circle at 35% 30%,#3a3a3a,#1a1a1a 70%);border-radius:50%;width:9px;height:9px;position:absolute;box-shadow:inset 0 0 0 1px #0a0a0a}.screw:after{content:"";height:1px;transform:rotate(var(--turn,35deg));background:#0a0a0a;position:absolute;top:4px;left:2px;right:2px}.screw.tl{top:10px;left:10px}.screw.tr{--turn:-20deg;top:10px;right:10px}.screw.bl{--turn:70deg;bottom:10px;left:10px}.screw.br{--turn:10deg;bottom:10px;right:10px}.paper{background-color:var(--grid-paper);background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);border-radius:var(--radius-sm);background-position:-1px -1px;background-size:12px 12px;box-shadow:inset 0 0 0 1px #242424}.led{background:var(--edge);border-radius:50%;flex:none;width:7px;height:7px;transition:background-color .2s,box-shadow .2s;display:inline-block}.led.on{background:var(--led);box-shadow:0 0 6px #3ddc84d9}.led.amber{background:var(--amber);box-shadow:0 0 6px #ffb333bf}.led.signal{background:var(--signal);box-shadow:0 0 6px #ff4f00d9}.status-line{align-items:center;gap:9px;display:inline-flex}.key{min-height:46px;font:500 .8125rem / 1 var(--mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;color:var(--copy);border:1px solid var(--edge);border-radius:var(--radius);cursor:pointer;transition:color .15s, border-color .15s, background-color .15s, transform 80ms var(--ease-out), box-shadow 80ms;background:#161616;justify-content:center;align-items:center;gap:.7em;padding:.9em 1.3em;text-decoration:none;display:inline-flex;box-shadow:inset 0 1px #ffffff0d,0 2px #050505}.key:hover{color:var(--ink);border-color:#4a4a4a}.key:disabled{opacity:.55;cursor:default;transform:none}.key:active{transform:translateY(1px);box-shadow:inset 0 1px #ffffff0d,0 1px #050505}.key--signal{color:#0e0e0e;background:var(--signal);border-color:var(--signal);box-shadow:inset 0 1px #ffffff40,0 2px #6e2400}.key--signal:hover{color:#0e0e0e;background:var(--signal-hot);border-color:var(--signal-hot)}.key--signal:active{box-shadow:inset 0 1px #ffffff40,0 1px #6e2400}.key--small{border-radius:var(--radius-sm);min-height:36px;padding:.7em 1em;font-size:.75rem}.key .arrow{transition:transform .2s var(--ease-out)}.key:hover .arrow{transform:translate(3px)}.keys{flex-wrap:wrap;gap:12px;display:flex}.selector{border:0;min-width:0;margin:0;padding:0}.selector legend{margin-bottom:8px;padding:0}.selector__track{border-radius:var(--radius);background:var(--well);grid-auto-columns:1fr;grid-auto-flow:column;gap:3px;padding:3px;display:grid;box-shadow:inset 0 1px 2px #000000b3,inset 0 0 0 1px #00000080}.selector label{cursor:pointer;display:block;position:relative}.selector input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.selector span{text-align:center;border-radius:var(--radius-sm);font:500 .75rem / 1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mid);transition:background-color .12s var(--ease-out), color .12s;padding:.75em .4em;display:block}.selector label:hover span{color:var(--ink)}.selector input:checked+span{background:var(--ink);color:var(--face);box-shadow:0 1px 1px #00000080,inset 0 -1px #00000026}.selector input:focus-visible+span{outline:2px solid var(--signal);outline-offset:2px}.dots{overflow:visible}.dots rect{fill:currentColor;transition:fill .22s var(--ease-out)}.dots .off{fill:var(--unlit)}.readout{color:var(--ink)}.section{padding-block:var(--section) 0}.section--tight{padding-top:var(--section-tight)}.section-head{gap:16px;max-width:62ch;margin-bottom:clamp(32px,4vw,52px);display:grid}.section-head p{font-size:var(--step-1);line-height:1.55}.specs{gap:0;display:grid}.specs>div{border-top:1px solid var(--edge);grid-template-columns:minmax(130px,.4fr) 1fr;gap:18px;padding-block:14px;display:grid}.specs>div:last-child{border-bottom:1px solid var(--edge)}.specs dt{padding-top:.2em}.specs dd{color:var(--copy);margin:0}@media (width<=560px){.specs>div{grid-template-columns:1fr;gap:4px}}.faq{border-top:1px solid var(--edge)}.faq details{border-bottom:1px solid var(--edge)}.faq summary{cursor:pointer;color:var(--ink);justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font-size:1.125rem;font-weight:600;line-height:1.4;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary .led{order:2}.faq details[open] summary .led{background:var(--signal);box-shadow:0 0 6px #ff4f00d9}.faq summary:hover{color:#fff}.faq .answer{max-width:64ch;padding:0 0 24px}.faq .answer>*+*{margin-top:.8em}.compare-wrap{overflow-x:auto}.compare{border-collapse:collapse;width:100%;min-width:560px}.compare th,.compare td{text-align:left;border-bottom:1px solid var(--edge);vertical-align:top;padding:14px 16px 14px 0}.compare thead th{padding-top:0}.compare tbody th{color:var(--ink);white-space:nowrap;font-weight:600}.compare td{color:var(--copy)}.compare .price{font-family:var(--mono);color:var(--ink);width:34%;font-size:.9375rem}.compare tbody th{width:20%}.compare tr.ours th,.compare tr.ours td{color:var(--ink)}.compare tr.ours th{align-items:center;gap:10px;display:flex}.note{font-size:var(--step--1);color:var(--mid);margin-top:16px}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(20px,3vw,36px);list-style:none;display:grid}.steps li{counter-increment:step;border-top:1px solid var(--edge);align-content:start;gap:12px;padding-top:18px;display:grid;position:relative}.steps li:before{content:counter(step);font:600 .8125rem/1 var(--mono);color:var(--face);background:var(--ink);border-radius:50%;place-items:center;width:26px;height:26px;display:grid}.steps h3{font-size:1.125rem}.art{width:100%;height:100%;display:block;overflow:visible}.art .line{fill:none;stroke:var(--ink);stroke-width:2.4px;stroke-linejoin:round;stroke-linecap:round}.art .thin-line{stroke-width:1.6px}.art .thin{fill:none;stroke:#6a6a6a;stroke-width:1.2px}.art .screen{fill:#131313;stroke:#6a6a6a;stroke-width:1.2px}.art .notch{fill:#0a0a0a}.art .dock rect:not(.thin){fill:#3c3c3c}.art .win{fill:#1a1a1a;stroke:#6a6a6a;stroke-width:1.2px}.art .win-bar{fill:#222}.art .traffic circle{fill:#4a4a4a}.art .pointer{fill:var(--ink);stroke:var(--face);stroke-width:1.2px;stroke-linejoin:round}.art .arc{fill:none;stroke:#555;stroke-width:1.3px;stroke-dasharray:4 5}.art .arrow{fill:none;stroke:#555;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round}.art .note{font:500 11px var(--mono);letter-spacing:1.2px;fill:var(--mid)}.art .leader{fill:none;stroke:#4a4a4a;stroke-width:1px}.art .leader-dot{fill:#8a8a8a}@media (width<=600px){.art .notes{display:none}}.ticks{gap:9px;list-style:none;display:grid}.ticks li{padding-left:22px;position:relative}.ticks li:before{content:"";background:var(--led);border-radius:50%;width:7px;height:7px;position:absolute;top:.62em;left:2px;box-shadow:0 0 5px #3ddc84b3}.two-col{grid-template-columns:.7fr 1.3fr;align-items:start;gap:clamp(20px,4vw,64px);display:grid}@media (width<=760px){.two-col{grid-template-columns:1fr}}@media (prefers-reduced-motion:no-preference){.boot rect.on{animation:dot-on .5s var(--ease-out) both;animation-delay:calc(var(--c,0) * 9ms + .12s)}}@keyframes dot-on{0%{opacity:0}40%{opacity:1;fill:#fff}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.site-header[data-astro-cid-nen7h5rs]{z-index:var(--z-header);-webkit-backdrop-filter:saturate(1.4)blur(14px);background:#0e0e0ed1;border-bottom:1px solid #ffffff0f;padding-block:14px;position:sticky;top:0}.bar[data-astro-cid-nen7h5rs]{flex-wrap:wrap;align-items:center;gap:8px clamp(16px,4vw,40px);display:flex}.wordmark[data-astro-cid-nen7h5rs]{color:var(--ink);align-items:center;gap:11px;padding:6px 0;text-decoration:none;display:inline-flex}.wordmark[data-astro-cid-nen7h5rs] svg{flex:none;width:auto;height:27px}.wordmark__mark[data-astro-cid-nen7h5rs]{border-radius:22.5%;flex:none;width:30px;height:30px;box-shadow:0 0 0 1px #ffffff14}nav[data-astro-cid-nen7h5rs]{margin-left:auto}ul[data-astro-cid-nen7h5rs]{gap:clamp(4px,1.5vw,12px);list-style:none;display:flex}nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{border-radius:var(--radius-sm);font:500 .8125rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mid);align-items:center;gap:8px;padding:10px;text-decoration:none;transition:color .15s;display:inline-flex}nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--ink)}nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page] .led[data-astro-cid-nen7h5rs]{background:var(--signal);box-shadow:0 0 6px #ff4f00d9}@media (width<=720px){.site-header[data-astro-cid-nen7h5rs]{position:static}.cta[data-astro-cid-nen7h5rs]{display:none}}@media (width<=420px){.wordmark[data-astro-cid-nen7h5rs]{gap:9px}.wordmark[data-astro-cid-nen7h5rs] svg{height:20px}nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs] .led[data-astro-cid-nen7h5rs]{display:none}nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{letter-spacing:.06em;padding:10px 7px}}.site-footer[data-astro-cid-jo6i4kqk]{margin-top:var(--section);border-top:1px solid var(--edge);background:#0b0b0b;padding-block:clamp(48px,6vw,72px) 28px}.top[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr 2.4fr;gap:48px;display:grid}.brand[data-astro-cid-jo6i4kqk]{color:var(--mid);align-content:start;gap:18px;display:grid}.brand[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--mid);width:fit-content}.brand[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--ink)}.brand[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{max-width:30ch;font-size:var(--step--1)}.cols[data-astro-cid-jo6i4kqk]{grid-template-columns:repeat(var(--cols,4), minmax(0, 180px));justify-content:end;gap:24px 48px;display:grid}.cols[data-astro-cid-jo6i4kqk] ul[data-astro-cid-jo6i4kqk]{gap:10px;margin-top:14px;list-style:none;display:grid}.cols[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--copy);text-decoration:none}.cols[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--signal);text-underline-offset:3px}.base[data-astro-cid-jo6i4kqk]{border-top:1px solid #1d1d1d;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:56px;padding-top:20px;display:flex}@media (width<=900px){.top[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr}.cols[data-astro-cid-jo6i4kqk]{justify-content:start}}@media (width<=560px){.cols[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr 1fr;justify-content:stretch;row-gap:32px}}
