@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");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;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");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 Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.BboVrW_className{font-family:Geist,Geist Fallback;font-style:normal}.BboVrW_variable{--font-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");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;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");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;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");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-20C4,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(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");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 Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.nw7kYW_className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.nw7kYW_variable{--font-mono:"Geist Mono", "Geist Mono Fallback"}
@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/fc0a7394b875fa43-s.2ytmazkdrg7t9.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/7ebf22b5a21034f8-s.p.3j3877k49yy0l.woff2)format("woff2");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:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.p7YyZW_className{font-family:Instrument Serif,Instrument Serif Fallback;font-style:italic;font-weight:400}.p7YyZW_variable{--font-voice:"Instrument Serif", "Instrument Serif Fallback"}
:root{--paper:#fafafa;--white:#fff;--ink:#171717;--body:#4d4d4d;--muted:#737373;--faint:#a3a3a3;--rule:#ebebeb;--ring:0 0 0 1px #00000014, 0 0 0 2px var(--paper);--electric:#0075ff;--night:#0a0a0a;--night-ink:#ededed;--night-muted:#8f8f8f;--night-rule:#ffffff1a;--radius:6px;--gutter:clamp(16px, 3.4vw, 48px);--max:1440px;--snappy:cubic-bezier(.23, 1, .32, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box;margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:80px}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans), system-ui, sans-serif;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5;overflow-x:clip}::selection{background:var(--electric);color:#fff}img,video{max-width:100%;display:block}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer}code{font-family:var(--font-mono), ui-monospace, monospace}:focus-visible{outline:2px solid var(--electric);outline-offset:2px}h1,h2,h3{text-wrap:balance;font-weight:450}p{text-wrap:pretty}.tone{color:var(--faint)}.voice{font-family:var(--font-voice), Georgia, serif;letter-spacing:-.005em;font-size:1.12em;font-style:italic;font-weight:400}.eyebrow{font-family:var(--font-mono), monospace;letter-spacing:.07em;text-transform:uppercase;color:var(--ink);font-size:11px}.btn{border-radius:var(--radius);white-space:nowrap;height:36px;transition:background-color .15s, transform .16s var(--snappy);border:0;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}.btn-ink{background:var(--ink);color:var(--white)}@media (hover:hover) and (pointer:fine){.btn-ink:hover{background:#383838}}.btn-ghost{background:var(--white);box-shadow:0 0 0 1px var(--rule);color:var(--body)}@media (hover:hover) and (pointer:fine){.btn-ghost:hover{color:var(--ink);box-shadow:0 0 0 1px #d4d4d4}}.wordmark{letter-spacing:-.03em;white-space:nowrap;align-items:center;gap:10px;font-size:16px;font-weight:600;display:inline-flex}.wordmark-sub{color:var(--muted);margin-left:2px;font-weight:500}.logo-mark{flex:none;overflow:visible}.logo-card{transition:transform .26s var(--snappy)}@media (hover:hover) and (pointer:fine){a:hover .logo-card-mid{transform:translate(1.2px,-1.4px)}a:hover .logo-card-back{transform:translate(2.6px,-2.8px)}}.nav{z-index:20;height:64px;padding:0 var(--gutter);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fafafad1;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:sticky;top:0}.nav-brand{justify-self:start;text-decoration:none}.nav-links{gap:4px;display:flex}.nav-links a{color:var(--body);padding:6px 12px;font-size:14px;text-decoration:none}@media (hover:hover) and (pointer:fine){.nav-links a:hover{color:var(--ink)}}.nav-actions{justify-self:end;gap:8px;display:flex}.install{border-radius:var(--radius);align-items:center;gap:8px;width:100%;max-width:420px;height:48px;padding:0 6px 0 16px;font-size:14px;display:flex}.install code{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.install code span{color:var(--faint);margin-right:6px}.install button{height:36px;transition:transform .16s var(--snappy);border:0;border-radius:4px;flex:none;padding:0 14px;font-size:13px;font-weight:500}.install button:active{transform:scale(.97)}.install-light{background:var(--white);box-shadow:var(--ring)}.install-light button{background:var(--ink);color:var(--white)}.install-dark{box-shadow:0 0 0 1px var(--night-rule);color:var(--night-ink);background:#ffffff0d}.install-dark button{background:var(--night-ink);color:var(--night)}.hero{max-width:var(--max);padding:clamp(40px, 6vw, 88px) var(--gutter) 0;margin:0 auto}.hero-top{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:end;gap:32px clamp(32px,6vw,96px);display:grid}.hero h1{letter-spacing:-.055em;font-size:clamp(46px,6.6vw,96px);line-height:.98}.hero-side{gap:16px;padding-bottom:6px;display:grid}.hero-lede{max-width:40ch;color:var(--body);font-size:17px;line-height:1.55}.hero-side .install{margin-top:8px}.hero-meta{font-family:var(--font-mono), monospace;color:var(--muted);letter-spacing:0;font-size:12px}.hand{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:clamp(40px,5vw,64px);padding:0;list-style:none;display:grid}.hand-card{text-decoration:none;display:block}.capture{aspect-ratio:16/10;background:#ededed;border-radius:4px;position:relative;overflow:hidden;box-shadow:0 0 0 1px #00000012}.capture img,.capture video{object-fit:cover;object-position:top;width:100%;height:100%;position:absolute;inset:0}.capture video{opacity:0;transition:opacity .3s}.capture video[data-on]{opacity:1}.hand-card:focus-visible{outline:none}.hand-card:focus-visible .capture{outline:2px solid var(--electric);outline-offset:3px}.index{align-items:baseline;gap:10px;margin-top:12px;font-size:14px;display:flex}.index-n{font-family:var(--font-mono), monospace;color:var(--faint);letter-spacing:0;font-size:11px}.index-name{font-weight:600}.index-idea{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hero-foot{border-top:1px solid var(--rule);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;margin-top:28px;padding-top:20px;font-size:13px;display:flex}.section{max-width:var(--max);padding:clamp(40px, 5vw, 56px) var(--gutter) 0;border-top:1px solid var(--rule);margin:clamp(96px,11vw,144px) auto 0}.section-head{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:end;gap:20px clamp(32px,6vw,96px);margin-bottom:40px;display:grid}.section-head .eyebrow{grid-column:1/-1}.eyebrow-n{color:var(--faint);margin-right:8px}.section-head h2{letter-spacing:-.045em;font-size:clamp(34px,4.2vw,56px);line-height:1.02}.section-lede{max-width:44ch;color:var(--body);padding-bottom:4px}.muted{color:var(--muted)}.section-link{margin-top:32px;font-size:15px}.section-link a{text-underline-offset:4px;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint);font-weight:500}.section-link a:after{content:" →"}.chips{flex-wrap:wrap;gap:6px;margin-bottom:20px;display:flex}.chips button{border-radius:var(--radius);background:var(--white);height:32px;box-shadow:0 0 0 1px var(--rule);color:var(--body);transition:transform .16s var(--snappy);border:0;align-items:center;gap:8px;padding:0 12px;font-size:13px;display:inline-flex}@media (hover:hover) and (pointer:fine){.chips button:hover{color:var(--ink)}}.chips button:active{transform:scale(.97)}.chips button[aria-selected=true],.chips button[aria-pressed=true]{background:var(--ink);box-shadow:none;color:var(--white)}.chips button span{font-family:var(--font-mono), monospace;opacity:.55;font-size:11px}.cmp-frame{background:var(--white);border-radius:4px;height:min(720px,76vh);position:relative;overflow:hidden;box-shadow:0 0 0 1px #00000014}.cmp-scroll{overscroll-behavior:contain;height:100%;overflow-y:auto}.cmp-stack{position:relative}.cmp-stack img{width:100%;height:auto}.cmp-after{position:absolute;top:0;left:0}.cmp-label{height:26px;font-family:var(--font-mono), monospace;letter-spacing:.04em;text-transform:uppercase;color:#fff;pointer-events:none;background:#171717db;border-radius:4px;align-items:center;padding:0 10px;font-size:11px;display:inline-flex;position:absolute;top:12px}.cmp-label-left{left:12px}.cmp-label-right{background:var(--white);color:var(--ink);right:12px;box-shadow:0 0 0 1px #0000001a}.cmp-line{background:var(--ink);pointer-events:none;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.cmp-handle{border-radius:var(--radius);background:var(--ink);pointer-events:auto;touch-action:none;cursor:ew-resize;border:0;place-items:center;width:40px;height:40px;margin:-20px 0 0 -20px;display:grid;position:absolute;top:50%;left:50%}.cmp-handle svg{fill:none;stroke:#fff;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.cmp-caption{color:var(--body);flex-wrap:wrap;justify-content:space-between;gap:12px 32px;margin-top:16px;font-size:14px;display:flex}.cmp-caption p:first-child{max-width:760px}.cmp-links{gap:20px;display:flex}.cmp-links a{text-underline-offset:3px;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint)}.steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 16px;padding:0;list-style:none;display:grid}.step{grid-row:span 3;grid-template-rows:subgrid;align-content:start;display:grid}.step h3{letter-spacing:-.02em;margin-top:20px;font-size:18px;font-weight:500;line-height:1.3}.step>p{color:var(--body);margin-top:6px;font-size:14px}.panel{border-radius:var(--radius);background:var(--white);min-height:320px;box-shadow:var(--ring);color:var(--body);flex-direction:column;gap:8px;padding:20px;font-size:14px;display:flex;overflow:hidden}.panel-label{font-family:var(--font-mono), monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin-top:8px;font-size:11px}.panel-label:first-child{margin-top:0}.panel-big{letter-spacing:-.03em;color:var(--ink);font-size:22px;line-height:1.2}.panel-strike{text-decoration:line-through;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint);color:var(--muted)}.panel-mono{background:var(--ink);box-shadow:none;color:#a3a3a3;font-family:var(--font-mono), monospace;letter-spacing:0;gap:14px;font-size:12px;line-height:1.55}.panel-mono b{color:#fff;font-weight:500;display:block}.panel-check{gap:16px}.check-shots{align-items:flex-end;gap:8px;display:flex}.check-shots img{border-radius:3px;height:auto;box-shadow:0 0 0 1px #00000014}.check-shots img:first-child{width:76%}.check-shots img:last-child{width:20%}.panel-check ul{gap:8px;padding:0;font-size:13px;list-style:none;display:grid}.panel-check li{padding-left:20px;position:relative}.panel-check li:before{content:"";border-left:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);width:10px;height:5px;position:absolute;top:5px;left:1px;transform:rotate(-45deg)}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 16px;padding:0;list-style:none;display:grid}.index-sub{color:var(--muted);margin-top:2px;padding-left:27px;font-size:13px;display:block}.pair{grid-template-columns:1fr 1fr;gap:16px;display:grid}.index-n-on{color:var(--ink)}.pair-note{max-width:64ch;color:var(--body);margin-top:20px}.commands{border-top:1px solid var(--rule);grid-template-columns:1fr 1fr;gap:0 48px;margin-top:56px;display:grid}.commands div{border-bottom:1px solid var(--rule);grid-template-columns:150px 1fr;gap:16px;padding:14px 0;font-size:14px;display:grid}.commands code{font-size:13px;font-weight:500}.commands dd{color:var(--body)}.promises{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.promises div{border-top:1px solid var(--ink);padding-top:16px}.promises dt{letter-spacing:-.02em;align-items:baseline;gap:10px;font-size:17px;font-weight:500;display:flex}.promises dd{color:var(--body);margin-top:8px;font-size:14px}.section-split{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:start;gap:32px clamp(32px,6vw,96px);display:grid}.section-split .section-head{grid-template-columns:1fr;margin:0}.faq{border-top:1px solid var(--rule)}.faq details{border-bottom:1px solid var(--rule)}.faq summary{cursor:pointer;justify-content:space-between;gap:16px;padding:18px 0;font-size:16px;font-weight:500;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-family:var(--font-mono), monospace;color:var(--faint);transition:transform .3s var(--snappy);font-weight:400}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{max-width:60ch;color:var(--body);padding-bottom:20px;font-size:15px}.closing{background:var(--night);color:var(--night-ink);margin-top:clamp(96px,11vw,144px)}.closing .tone{color:#6b6b6b}.closing .eyebrow{color:var(--night-ink)}.closing-inner{max-width:var(--max);padding:clamp(72px, 9vw, 120px) var(--gutter);grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:end;gap:40px clamp(32px,6vw,96px);margin:0 auto;display:grid}.closing h2{letter-spacing:-.05em;margin-top:20px;font-size:clamp(38px,5vw,72px);line-height:1}.closing-copy>p:last-child{max-width:44ch;color:var(--night-muted);margin-top:20px}.closing-cmds .install{max-width:none}.closing-cmds dl{margin-top:20px}.closing-cmds dl div{border-bottom:1px solid var(--night-rule);grid-template-columns:minmax(0,1.3fr) 1fr;gap:16px;padding:12px 0;font-size:13px;display:grid}.closing-cmds code{overflow-wrap:anywhere;font-size:12px}.closing-cmds dd{color:var(--night-muted)}.footer{max-width:var(--max);padding:24px var(--gutter) 32px;border-top:1px solid var(--night-rule);color:var(--night-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;margin:0 auto;font-size:13px;display:flex}.footer .wordmark-sub{color:var(--night-muted)}.footer nav{flex-wrap:wrap;gap:8px 24px;display:flex}.footer nav a{text-decoration:none}@media (hover:hover) and (pointer:fine){.footer nav a:hover{color:var(--night-ink)}}@media (max-width:1100px){.steps,.promises{grid-template-columns:1fr 1fr;gap:40px 16px}.gallery{grid-template-columns:1fr 1fr}}@media (max-width:900px){.section-head,.section-split,.closing-inner,.commands,.pair,.steps,.promises,.gallery{grid-template-columns:1fr}.panel{min-height:0}.commands div,.closing-cmds dl div{grid-template-columns:1fr;gap:2px}.cmp-frame{height:70vh}.nav{grid-template-columns:1fr auto}.nav-links,.nav-actions .btn-ghost{display:none}.hero-top,.hand{grid-template-columns:1fr}.hand li:nth-child(n+2){display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.logo-card,.btn,.capture video{transition:none}a:hover .logo-card-mid,a:hover .logo-card-back{transform:none}}.not-found{place-content:center;justify-items:start;gap:20px;max-width:560px;min-height:100svh;margin:0 auto;padding:24px;display:grid}.not-found h1{letter-spacing:-.03em;margin-top:24px;font-size:clamp(36px,6vw,56px);font-weight:500;line-height:1.05}.not-found p{color:var(--body);margin-bottom:8px}
