:root{--gray-0:#fff;--gray-50:#f7f8fa;--gray-100:#eceef2;--gray-200:#e4e7ec;--gray-500:#6e6e73;--gray-700:#222630;--gray-800:#1b1f27;--gray-900:#14171d;--gray-950:#0b0d12;--gray-1000:#000;--blue-300:#66aef5;--blue-500:#0a74db;--blue-600:#0066c5;--red-300:#ff8a8a;--red-600:#c9302c;--peer-red:#e5484d;--peer-indigo:#3e63dd;--peer-green:#2f9e5f;--peer-purple:#8e4ec6;--peer-orange:#e5631a;--peer-sky:#0588f0;--peer-amber:#b8790a;--peer-teal:#12a594;--ink-5:#0b0d120b;--ink-8:#0b0d1214;--ink-14:#0b0d1224;--ink-62:#0b0d129e;--ink-84:#0b0d12d6;--white-5:#ffffff0d;--white-10:#ffffff1a;--white-16:#ffffff29;--white-65:#ffffffa6;--white-75:#ffffffbf;--white-85:#ffffffd9;--font-serif:"EB Garamond", "EB Garamond Variable", Garamond, "Times New Roman", serif;--font-sans:"Inter Tight", "Inter Tight Variable", "Helvetica Now Display", Helvetica, Arial, sans-serif;--font-mono:"Geist Mono", "Geist Mono Variable", ui-monospace, "SF Mono", Menlo, monospace;--weight-light:300;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--text-2xs:12px;--text-xs:13px;--text-base:14px;--text-sm:15px;--text-md:17px;--text-lg:18px;--text-xl:20px;--text-2xl:22px;--text-3xl:24px;--text-4xl:28px;--text-5xl:40px;--text-6xl:44px;--text-em:.88em;--display-xs:clamp(30px, 2.8vw, 40px);--display-sm:clamp(36px, 3.6vw, 52px);--display-md:clamp(42px, 5vw, 64px);--display-lg:clamp(44px, 5vw, 72px);--display-xl:clamp(44px, 6vw, 84px);--display-2xl:clamp(56px, 7.4vw, 104px);--display-3xl:clamp(72px, 9vw, 128px);--display-vh:11vh;--leading-compressed:.9;--leading-none:1;--leading-display:1.04;--leading-tight:1.1;--leading-snug:1.2;--leading-compact:1.3;--leading-medium:1.45;--leading-normal:1.55;--leading-loose:1.65;--tracking-display:-.06em;--tracking-tighter:-.04em;--tracking-tight:-.02em;--tracking-snug:-.01em;--tracking-normal:0;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:56px;--space-8:80px;--space-9:120px;--space-fluid-sm:clamp(8px, 1.2vw, 16px);--space-fluid-md:clamp(22px, 5vw, 64px);--space-fluid-lg:clamp(24px, 5vh, 64px);--space-fluid-xl:clamp(40px, 8vh, 112px);--size-icon-sm:10px;--size-icon:16px;--size-dot:8px;--size-avatar:24px;--size-control-xs:32px;--size-brand:22px;--size-badge:28px;--size-control-sm:36px;--size-control:40px;--size-control-lg:48px;--size-bar:72px;--hero-peek:180px;--hero-min:380px;--art-2xs:96px;--art-xs:128px;--art-sm:160px;--art-md:200px;--art-lg:300px;--art-xl:400px;--art-2xl:440px;--art-3xl:600px;--art-vh:52vh;--art-story:min(680px, 76svh);--step-height:72svh;--opacity-dim:.28;--opacity-faint:.2;--measure-title-sm:14ch;--measure-title-md:16ch;--measure-title-lg:18ch;--measure-copy:30ch;--measure-2xs:180px;--measure-xs:220px;--measure-sm:280px;--measure-md:460px;--measure-hero:560px;--measure-lg:600px;--measure-xl:680px;--measure-2xl:720px;--measure-page:1200px;--radius-xs:8px;--radius-sm:16px;--radius-md:32px;--radius-lg:48px;--radius-full:9999px;--hairline:1px;--underline-thick:2px;--underline-offset:3px;--underline-offset-display:.12em;--icon-stroke:1.5;--bullet-top:.62em;--ratio-wide:16 / 10;--ratio-photo:4 / 3;--scale-press:.98;--z-raised:1;--z-nav:110;--duration-instant:60ms;--duration-fast:.16s;--duration-normal:.24s;--duration-slow:.6s;--duration-marquee:70s;--duration-loop:1.4s;--ease-out:cubic-bezier(.2, .7, .2, 1);--ease-in:ease-in;--ease-in-out:ease;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:var(--gray-200);--surface:var(--gray-50);--surface-band:var(--gray-100);--surface-raised:var(--gray-0);--surface-inverse:var(--gray-950);--on-inverse:var(--gray-0);--fg:var(--gray-950);--fg-soft:var(--ink-84);--fg-muted:var(--ink-62);--fill-faint:var(--ink-5);--fill:var(--ink-8);--fill-strong:var(--ink-14);--accent:var(--blue-600);--primary:var(--blue-600);--primary-hover:var(--blue-500);--on-primary:var(--gray-0);--on-primary-soft:var(--gray-200);--on-primary-muted:var(--white-75);--danger:var(--red-600);--syntax-keyword:var(--blue-600);--syntax-string:var(--peer-green);--syntax-number:var(--peer-orange);--syntax-comment:var(--fg-muted);--nav-height:var(--size-bar);--nav-slack:var(--space-2);--page-width:var(--measure-page);--prose-width:var(--measure-lg);--gutter:var(--space-fluid-md);--frame:var(--space-fluid-sm);--radius-panel:var(--radius-lg);--control-height:var(--size-control-lg);--control-height-sm:var(--size-control)}[data-theme=dark],.code{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:var(--gray-950);--surface:var(--gray-900);--surface-band:var(--gray-800);--surface-raised:var(--gray-700);--surface-inverse:var(--gray-1000);--fg:var(--gray-0);--fg-soft:var(--white-85);--fg-muted:var(--white-65);--fill-faint:var(--white-5);--fill:var(--white-10);--fill-strong:var(--white-16);--accent:var(--blue-300);--danger:var(--red-300);--syntax-keyword:var(--blue-300)}.code{--code-bg:var(--surface);--code-fg:var(--gray-200);--code-comment:var(--gray-500)}.story{--story-art:var(--art-story);--story-step:var(--step-height)}.plan.pick{--fg-muted:var(--on-primary-muted)}@media (width<=600px){:root{--radius-panel:var(--radius-md)}}.app{--frame:var(--space-2);--gutter:var(--space-5);--radius-panel:var(--radius-sm);--radius-item:var(--radius-xs);--radius-nav:var(--radius-full);--item-pad:var(--space-1-5);--control-height:var(--size-control-sm);--control-height-sm:var(--size-control-xs);--sidebar-width:var(--measure-xs);--lane-width:var(--measure-sm);--cell-width:var(--measure-sm);--editor-width:var(--measure-2xl);--form-width:var(--measure-md);--door-width:calc(var(--measure-sm) + var(--space-8));--door-art:var(--art-lg);--title-size:var(--text-4xl);--header-pad:var(--space-2);--header-inset:0px;--table-bleed:var(--gutter);--text-app:var(--text-base);--text-ui:var(--text-app);--text-meta:var(--text-app);--leading-ui:var(--leading-medium);--text-chat:var(--text-ui);--greeting-size:var(--display-xs);--text-table:var(--text-app);--text-editor:var(--text-app);--on-peer:var(--gray-0);--peer-0:var(--peer-red);--peer-1:var(--peer-indigo);--peer-2:var(--peer-green);--peer-3:var(--peer-purple);--peer-4:var(--peer-orange);--peer-5:var(--peer-sky);--peer-6:var(--peer-amber);--peer-7:var(--peer-teal);--peer-agent:var(--gray-500);--app-columns:var(--sidebar-width) minmax(0, 1fr);--bar-order:0;--bar-direction:column;--bar-height:calc(100svh - 2 * var(--frame) - env(safe-area-inset-top));--main-height:var(--bar-height);--shell-rows:minmax(0, 1fr);--sheet-overflow:auto;--bar-top:var(--frame);--bar-bottom:auto;--bar-pad:0px;--wide-only:flex;--narrow-only:none;--chat-width:calc(var(--measure-2xl) * 3 / 4);--composer-width:var(--chat-width);--output-height:var(--art-md);--chat-table-height:calc(var(--text-table) * var(--leading-none) + 2 * var(--space-2) + 5 * (var(--text-table) * var(--leading-medium) + 2 * var(--space-2) + var(--hairline)));--bubble-width:80%;--composer-max:40svh;--composer-line:var(--size-control);--composer-pad:calc((var(--composer-line) - var(--text-chat) * var(--leading-medium)) / 2);--menu-width:var(--measure-2xs);--rise:var(--space-2);--dock-bottom:0px;--dock-gap:var(--frame);--dock-inset:var(--gutter);--composer-bg:var(--surface-raised);--menu-left:0;--menu-right:auto;--profile-flex:1;--search-width:var(--measure-2xs);--filter-width:var(--art-xs);--filter-height:var(--size-control-xs);--board-height:auto}@media (width<=767px){.app{--gutter:var(--space-4);--title-size:var(--text-3xl);--app-columns:minmax(0, 1fr);--bar-order:1;--bar-direction:row;--bar-height:auto;--main-height:auto;--shell-rows:1fr auto;--sheet-overflow:visible;--bar-top:auto;--bar-bottom:0;--bar-pad:var(--space-1);--wide-only:none;--narrow-only:flex;--bubble-width:88%;--composer-width:100%;--menu-left:auto;--menu-right:0;--profile-flex:none;--door-art:var(--art-md);--dock-inset:0px;--dock-bottom:calc(var(--size-avatar) + 2 * var(--item-pad) + 2 * var(--bar-pad) + env(safe-area-inset-bottom));--board-height:calc(100svh - 2 * var(--frame) - env(safe-area-inset-top) - var(--gutter) - 2 * var(--header-pad) - var(--title-size) * var(--leading-tight) - var(--size-icon) - 3 * var(--space-2) - var(--dock-bottom))}}html,body{overscroll-behavior:none}.icon{width:var(--size-icon);height:var(--size-icon);fill:none;stroke:currentColor;stroke-width:var(--icon-stroke);stroke-linecap:round;stroke-linejoin:round;flex:none}.icon.filled{fill:currentColor;stroke:none}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);padding:0 var(--space-5) var(--space-px);background:var(--primary);color:var(--on-primary);border-radius:var(--radius-full);font:var(--weight-medium) var(--text-md) / var(--leading-none) var(--font-sans);letter-spacing:var(--tracking-snug);white-space:nowrap;transition:background var(--duration-fast), transform var(--duration-fast) var(--ease-out);display:inline-flex}.btn:hover{background:var(--primary-hover)}.btn:active{transform:scale(var(--scale-press))}.btn-ghost{background:var(--fill);color:var(--fg)}.btn-ghost:hover{background:var(--fill-strong)}.btn-ghost .icon{display:none}.btn-sm{min-height:var(--control-height-sm);padding:0 var(--space-4) var(--space-px);font-size:var(--text-sm)}.icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-full);background:var(--fill);transition:background var(--duration-fast);place-items:center;display:grid}.icon-btn:hover{background:var(--fill-strong)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:var(--bg);overflow-x:hidden}html.jump{scroll-behavior:auto}html.locked{overflow:hidden}body{background:var(--bg);color:var(--fg);min-height:100vh;padding:0 var(--frame) var(--frame);font:var(--weight-normal) var(--text-md) / var(--leading-normal) var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}img,svg{max-width:100%;display:block}img{height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}::selection{background:var(--primary);color:var(--on-primary)}main{background:var(--surface);border-radius:var(--radius-panel);display:flow-root;overflow:clip}.wrap{width:100%;max-width:var(--page-width);padding:0 var(--gutter);margin:0 auto}.stack{gap:var(--space-4);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}h1,h2{font-family:var(--font-serif);font-weight:var(--weight-medium);letter-spacing:var(--tracking-display);text-wrap:balance}h3{font-family:var(--font-sans);font-weight:var(--weight-medium);letter-spacing:var(--tracking-tight);line-height:var(--leading-snug)}h1 em,h2 em,h3 em{color:var(--fg-muted);font-style:normal}h1{font-size:var(--display-2xl);line-height:var(--leading-none)}h2{font-size:var(--display-md);line-height:var(--leading-display)}h3{font-size:var(--text-2xl)}.lead{font-size:var(--text-2xl);line-height:var(--leading-medium);letter-spacing:var(--tracking-snug);color:var(--fg-muted);max-width:var(--prose-width);text-wrap:pretty}.small{font-size:var(--text-sm);color:var(--fg-muted)}.link{text-decoration:underline;text-decoration-thickness:var(--hairline);text-underline-offset:var(--underline-offset)}.link:hover{color:var(--accent)}.prose a,.post a{text-underline-offset:var(--underline-offset);text-decoration:underline}code.inline,.prose code{font:var(--weight-medium) var(--text-em) var(--font-mono);background:var(--fill);padding:var(--space-px) var(--space-1-5);border-radius:var(--radius-xs)}.nav{z-index:var(--z-nav);background:var(--bg);transition:transform var(--duration-normal) var(--ease-out);position:sticky;top:0}.nav.hidden{transform:translateY(calc(-100% - var(--radius-panel)))}.nav:before,.nav:after{content:"";width:var(--radius-panel);height:var(--radius-panel);pointer-events:none;position:absolute;top:100%}.nav:before{background:radial-gradient(circle at 100% 100%, transparent calc(var(--radius-panel) - var(--hairline) / 2), var(--bg) var(--radius-panel));left:0}.nav:after{background:radial-gradient(circle at 0 100%, transparent calc(var(--radius-panel) - var(--hairline) / 2), var(--bg) var(--radius-panel));right:0}.nav>.wrap{z-index:var(--z-raised);align-items:center;gap:var(--space-5);height:var(--nav-height);max-width:none;padding:0 var(--space-4);grid-template-columns:1fr auto 1fr;display:grid;position:relative}.brand{height:var(--size-control);justify-self:start;align-items:center;display:inline-flex}.brand .word{height:var(--size-brand);width:auto;fill:var(--fg)}.nav-links{align-items:center;gap:var(--space-0-5);display:flex}.nav-links>a,.menu>button{align-items:center;gap:var(--space-1-5);height:var(--size-control-sm);padding:0 var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);border-radius:var(--radius-full);transition:background var(--duration-fast);display:inline-flex}.nav-links>a:hover,.nav-links>a[aria-current],.menu:hover>button,.menu:focus-within>button{background:var(--fill)}.nav-right{justify-self:end;align-items:center;gap:var(--space-2);display:flex}.menu>button .icon{width:var(--size-icon-sm);height:var(--size-icon-sm);transition:transform var(--duration-fast)}.menu:hover>button .icon,.menu:focus-within>button .icon{transform:rotate(180deg)}.menu-panel{top:100%;left:max(var(--frame), (100% - var(--page-width)) / 2);right:max(var(--frame), (100% - var(--page-width)) / 2);visibility:hidden;opacity:0;transform:translateY(calc(-1 * var(--space-1)));transition:opacity var(--duration-fast), transform var(--duration-fast) var(--ease-out), visibility var(--duration-fast);position:absolute}.menu:hover .menu-panel,.menu:focus-within .menu-panel{visibility:visible;opacity:1;transform:none}.menu .menu-panel.shut{visibility:hidden;opacity:0}.menu-grid{gap:var(--space-2);padding:var(--space-3);background:var(--surface-raised);border-radius:var(--radius-md);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.menu-grid a{gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-sm);transition:background var(--duration-fast);flex-direction:column;display:flex}.menu-grid a:hover{background:var(--fill-faint)}.menu-grid .mi-art{height:var(--art-xs);margin-bottom:var(--space-2);padding:var(--space-4);background:var(--fill-faint);border-radius:var(--radius-sm);justify-content:center;align-items:center;display:flex}.menu-grid a:hover .mi-art img{transform:translateY(calc(-1 * var(--space-1)))}.menu-grid strong{font-size:var(--text-md);font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:var(--tracking-snug)}.menu-grid small{font-size:var(--text-sm);line-height:var(--leading-compact);color:var(--fg-muted)}@media (width<=1180px){.menu-grid .mi-art{height:var(--art-2xs)}}.menu-built{gap:var(--space-1);margin-top:var(--space-2);padding:var(--space-3);background:var(--surface-raised);border-radius:var(--radius-md);flex-direction:column;display:flex}.menu-built .eyebrow{padding:0 var(--space-3);font-size:var(--text-sm);color:var(--fg-muted)}.menu-built a{align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);transition:background var(--duration-fast);display:flex}.menu-built a:hover{background:var(--fill-faint)}.menu-built .mb-art{width:var(--art-2xs);height:var(--size-control-lg);padding:var(--space-1);background:var(--fill-faint);border-radius:var(--radius-sm);flex:none;justify-content:center;align-items:center;display:flex}.menu-built .mb-art img{object-fit:contain;width:auto;max-height:100%}.menu-built strong{font-size:var(--text-md);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-snug)}.menu-built small{font-size:var(--text-sm);color:var(--fg-muted);flex:1}.menu-built .icon{color:var(--fg-muted);transition:transform var(--duration-fast)}.menu-built a:hover .icon{transform:translateX(var(--space-1));color:var(--fg)}.burger,.sheet{display:none}@media (width<=960px){.nav>.wrap{grid-template-columns:1fr auto}.nav-links,.nav-right .gh{display:none}.burger{display:grid}.sheet{gap:var(--space-5);top:var(--nav-height);overscroll-behavior:contain;z-index:var(--z-raised);padding:var(--space-4) var(--space-4) var(--space-6);background:var(--bg);visibility:hidden;opacity:0;transform:translateY(calc(-1 * var(--space-2)));transition:opacity var(--duration-fast), transform var(--duration-fast) var(--ease-out), visibility var(--duration-fast);flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.nav.open .sheet{visibility:visible;opacity:1;transform:none}.sheet-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.sheet-grid a{align-items:center;gap:var(--space-3);padding:var(--space-2);background:var(--fill-faint);border-radius:var(--radius-sm);font-weight:var(--weight-medium);font-size:var(--text-sm);display:flex}.sheet-grid a:active{background:var(--fill)}.sheet-grid .sheet-built{grid-column:1/-1}.sheet-built small{color:var(--fg-muted);font-weight:var(--weight-normal);margin-left:auto}.sheet-art{width:var(--size-control-lg);height:var(--size-control-lg);flex:none;justify-content:center;align-items:center;display:flex}.sheet-links{flex-direction:column;display:flex}.sheet-links a{padding:var(--space-3) var(--space-2);font:var(--weight-medium) var(--text-2xl) / var(--leading-tight) var(--font-sans);letter-spacing:var(--tracking-tight)}}@media (width>=600px) and (width<=960px){.sheet-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.mi-art img,.sheet-art img,.page-art img,.split-art img,.spec-art img,.blog-art img,.post-art img,.post figure img{object-fit:contain;width:auto}.mi-art img,.sheet-art img,.spec-art img,.blog-item .blog-art img{max-height:100%}.mi-art img,.card .spec-art img,.blog-art img{transition:transform var(--duration-slow) var(--ease-out)}.section{padding:var(--space-9) 0}.section:not(.band)+.section:not(.band),.page-hero+.section:not(.band),.home-hero+.section:not(.band){padding-top:0}.band{background:var(--surface-band);margin:var(--frame);border-radius:var(--radius-panel)}.head{gap:var(--space-7);margin-bottom:var(--space-8);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;display:grid}.head h2{max-width:var(--measure-title-sm)}.head .lead{max-width:var(--measure-md);justify-self:end}.head.center{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center}.head.center h2{max-width:var(--measure-title-lg)}.head.center .lead{max-width:var(--measure-lg);justify-self:center}.section-body{gap:var(--space-8);flex-direction:column;display:flex}.page-hero{padding:var(--space-8) 0}.page-hero>.wrap{gap:var(--space-7);min-height:min(var(--measure-hero), calc(100svh - var(--nav-height) - 2 * var(--space-8)));grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;display:grid}.page-copy{gap:var(--space-5);flex-direction:column;display:flex}.page-copy h1,.cta h2,.post-hero h1{font-size:var(--display-xl)}.page-copy .row{margin-top:var(--space-2)}.page-art{justify-content:center;display:flex}.page-art img{max-height:min(var(--art-2xl), var(--art-vh))}.home-hero{height:calc(100svh - var(--nav-height) - var(--frame) - var(--hero-peek));min-height:var(--hero-min);place-items:center;display:grid}.home-copy h1{font-size:min(var(--display-2xl), var(--display-vh))}.home-copy{text-align:center;align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.home-copy .lead{margin-bottom:var(--space-3)}.home-copy .row,.cta .row{justify-content:center}.split{gap:var(--space-8);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;display:grid}.split.flip{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.split.flip>.split-art{order:-1}.split-copy{gap:var(--space-4);flex-direction:column;display:flex}.split-copy h2{font-size:var(--display-sm);margin-bottom:var(--space-2)}.split-copy p{color:var(--fg-muted);text-wrap:pretty}.split-copy .letters{margin-top:var(--space-4)}.split-copy .letters+p{margin-top:var(--space-4);color:var(--fg)}.split-art{justify-content:center;display:flex}.split-art img{max-height:var(--art-xl)}.story{gap:var(--space-7);grid-template-columns:minmax(0,4fr) minmax(0,8fr);display:grid}.story-steps{list-style:none}.story-step{justify-content:center;gap:var(--space-3);min-height:var(--story-step);opacity:var(--opacity-dim);transition:opacity var(--duration-normal) var(--ease-out);flex-direction:column;display:flex}.story-step.on{opacity:1}.story-step h3{font:var(--weight-medium) var(--display-sm) / var(--leading-display) var(--font-serif);letter-spacing:var(--tracking-display);text-wrap:balance}.story-step p{max-width:var(--measure-md);color:var(--fg-muted);font-size:var(--text-lg);line-height:var(--leading-medium);text-wrap:pretty}.story-art{top:calc(50svh - var(--story-art) / 2);height:var(--story-art);margin-top:calc((var(--story-step) - var(--story-art)) / 2);align-self:start;display:grid;position:sticky}.story-frame{opacity:0;min-height:0;transition:opacity var(--duration-slow) var(--ease-out);grid-area:1/1;justify-content:center;align-items:center;display:flex}.story-frame.on{opacity:1}.story-frame img,.story-inline img{object-fit:contain;width:auto;max-height:100%}.story-inline{display:none}.specs{gap:var(--space-8) var(--space-7);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.specs.four{gap:var(--space-6);grid-template-columns:repeat(4,minmax(0,1fr))}.spec{gap:var(--space-3);flex-direction:column;display:flex}.spec-art{height:var(--art-md);margin-bottom:var(--space-3);justify-content:center;align-items:flex-end;display:flex}.spec p{color:var(--fg-muted)}.spec ul{gap:var(--space-2);color:var(--fg-muted);flex-direction:column;list-style:none;display:flex}.spec li{padding-left:var(--space-4);position:relative}.spec li:before{content:"";left:0;top:var(--bullet-top);width:var(--space-1-5);height:var(--space-1-5);border-radius:var(--radius-full);background:var(--accent);position:absolute}.card{gap:var(--space-2)}.card .spec-art{margin-bottom:var(--space-4)}.card p{font-size:var(--text-sm)}.card:hover .spec-art img,.blog-lead:hover .blog-art img,.blog-item:hover .blog-art img{transform:translateY(calc(-1 * var(--space-1-5)))}.card h3,.blog-lead h2,.blog-item h2{-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:var(--hairline);text-underline-offset:var(--underline-offset);transition:text-decoration-color var(--duration-fast)}.blog-lead h2,.blog-item h2{text-decoration-thickness:var(--underline-thick);text-underline-offset:var(--underline-offset-display)}.card:hover h3,.blog-lead:hover h2,.blog-item:hover h2{text-decoration-color:currentColor}.scene img{width:100%;height:auto;max-height:var(--art-3xl);object-fit:contain}.cta-scene{margin-bottom:var(--space-7)}.letters{gap:var(--space-5);flex-direction:column;list-style:none;display:flex}.letters.columns{gap:var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.letters li{grid-template-columns:var(--size-control-lg) minmax(0, 1fr);gap:var(--space-4);align-items:start;display:grid}.letters .l{width:var(--size-control-lg);height:var(--size-control-lg);border-radius:var(--radius-full);background:var(--fill);font-size:var(--text-sm);transition:background var(--duration-fast);place-items:center;display:grid}.letters li:hover .l{background:var(--primary)}.letters h3{font-size:var(--text-xl);margin-top:var(--space-0-5)}.letters p{font-size:var(--text-sm);color:var(--fg-muted);margin-top:var(--space-0-5)}.logos{gap:var(--space-2);flex-wrap:wrap;display:flex}.marquee{gap:var(--space-3);-webkit-mask-image:linear-gradient(90deg, transparent, var(--fg) var(--space-9), var(--fg) calc(100% - var(--space-9)), transparent);mask-image:linear-gradient(90deg, transparent, var(--fg) var(--space-9), var(--fg) calc(100% - var(--space-9)), transparent);flex-direction:column;display:flex;overflow:hidden}.marquee-track{gap:var(--space-3);width:max-content;animation:marquee var(--duration-marquee) linear infinite;display:flex}.marquee-row.reverse .marquee-track{animation-direction:reverse}.marquee:hover .marquee-track{animation-play-state:paused}.marquee span{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-radius:var(--radius-full);background:var(--fill-faint);font:var(--weight-medium) var(--text-lg) / var(--leading-snug) var(--font-sans);letter-spacing:var(--tracking-snug);white-space:nowrap;display:inline-flex}.marquee .brand{width:var(--size-brand);height:var(--size-brand);fill:currentColor;flex:none}@keyframes marquee{to{transform:translateX(calc(-50% - var(--space-3) / 2))}}.badges{justify-content:center;gap:var(--space-2) var(--space-5);margin-top:var(--space-4);flex-wrap:wrap;list-style:none;display:flex}.badges li{align-items:center;gap:var(--space-2);color:var(--fg-soft);font:var(--weight-medium) var(--text-sm) / var(--leading-snug) var(--font-sans);display:inline-flex}.badges .icon{color:var(--accent)}.logos span{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);background:var(--fill-faint)}.facts-wrap{overflow-x:auto}.facts,.prose table{border-collapse:separate;width:100%;border-spacing:0 var(--space-0-5);font-size:var(--text-sm)}.facts :is(th,td),.prose :is(th,td){text-align:left;padding:var(--space-3) var(--space-4);vertical-align:top}.facts th,.prose th{font-weight:var(--weight-medium)}.facts th{color:var(--fg-muted);font-size:var(--text-2xs)}.facts td,.prose td{background:var(--fill-faint)}.facts td:first-child,.prose td:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.facts td:last-child,.prose td:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.facts td:first-child{font-weight:var(--weight-medium)}.facts.wide{min-width:var(--measure-2xl)}@media (width<=700px){.facts td:first-child{overflow-wrap:anywhere}}.plans{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.plan{gap:var(--space-4);padding:var(--space-6) var(--space-5);background:var(--fill-faint);border-radius:var(--radius-md);flex-direction:column;display:flex}.plan.pick{background:var(--primary);color:var(--on-primary)}.plan h3{font-size:var(--text-4xl)}.plan .price{font:var(--weight-semibold) var(--text-6xl) / var(--leading-none) var(--font-sans);letter-spacing:var(--tracking-tighter)}.plan .price small{margin-top:var(--space-2);font:var(--weight-normal) var(--text-sm) var(--font-sans);color:var(--fg-muted);letter-spacing:var(--tracking-normal);display:block}.plan ul{gap:var(--space-2);font-size:var(--text-sm);flex-direction:column;list-style:none;display:flex}.plan li{gap:var(--space-2);display:flex}.plan li:before{content:"✓";font-weight:var(--weight-semibold)}.plan .btn{margin-top:auto}.plan.pick .btn{background:var(--on-primary);color:var(--primary)}.plan.pick .btn:hover{background:var(--on-primary-soft)}.faq{gap:var(--space-1);flex-direction:column;display:flex}.faq details{background:var(--fill-faint);padding:var(--space-5);border-radius:var(--radius-md)}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:var(--space-4);font:var(--weight-medium) var(--text-xl) / var(--leading-compact) var(--font-sans);letter-spacing:var(--tracking-snug);list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-weight:var(--weight-light);font-size:var(--text-3xl);line-height:var(--leading-none);transition:transform var(--duration-fast);flex:none}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{margin-top:var(--space-3);color:var(--fg-muted);max-width:var(--measure-xl)}.cta{align-items:center;gap:var(--space-5);text-align:center;flex-direction:column;display:flex}.cta h2{max-width:var(--measure-title-md)}.foot{background:var(--surface-band);margin-top:var(--frame);padding:var(--space-8) 0 var(--space-6);border-radius:var(--radius-panel)}.foot-grid{gap:var(--space-6);grid-template-columns:1.4fr repeat(4,1fr);display:grid}.foot .small{max-width:var(--measure-sm)}.foot h4,.docs-nav h4,.docs-toc h4{font:var(--weight-semibold) var(--text-sm) / var(--leading-snug) var(--font-sans);letter-spacing:var(--tracking-snug)}.foot h4{margin-bottom:var(--space-4)}.foot ul{gap:var(--space-2);font-size:var(--text-sm);flex-direction:column;list-style:none;display:flex}.foot ul a:hover{color:var(--accent)}.foot .big{margin-top:var(--space-8)}.foot .big svg{width:100%;height:auto;fill:var(--fill-faint)}.foot .fine{justify-content:space-between;gap:var(--space-4);margin-top:var(--space-5);font-size:var(--text-2xs);color:var(--fg-muted);flex-wrap:wrap;display:flex}.code{background:var(--code-bg);color:var(--code-fg);border-radius:var(--radius-sm);font:var(--weight-normal) var(--text-xs) / var(--leading-loose) var(--font-mono);overflow:hidden}.code-head{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-3) 0 var(--space-5);font:var(--weight-medium) var(--text-xs) / var(--leading-none) var(--font-sans);color:var(--fg-muted);display:flex}.code-head .tabs{gap:var(--space-0-5);margin-left:calc(-1 * var(--space-3));display:flex}.code-head .tabs button,.code-head .copy{padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-full);color:var(--fg-muted);transition:color var(--duration-fast), background var(--duration-fast)}.code-head .tabs button:hover{color:var(--fg)}.code-head .tabs button[aria-selected=true]{background:var(--fill);color:var(--fg)}.code-head .copy{margin-left:auto}.code-head .copy:hover{color:var(--fg);background:var(--fill-faint)}.code pre{padding:var(--space-3) var(--space-5) var(--space-5);white-space:pre;overflow-x:auto}.code pre[hidden]{display:none}.code .k{color:var(--accent)}.code .c{color:var(--code-comment)}.code .n{color:var(--fg)}.code .f{color:var(--primary)}.docs{grid-template-columns:var(--measure-xs) minmax(0, 1fr) var(--measure-2xs);gap:var(--space-7);padding:var(--space-6) var(--gutter) var(--space-9);align-items:start;display:grid}.docs-nav,.docs-toc{top:calc(var(--nav-height) + var(--space-5));max-height:calc(100vh - var(--nav-height) - var(--space-7));font-size:var(--text-sm);transition:top var(--duration-normal) var(--ease-out);position:sticky;overflow:auto}:root:has(.nav.hidden) :is(.docs-nav,.docs-toc){top:var(--space-5)}.docs-nav h4,.docs-toc h4{color:var(--fg);margin:var(--space-6) 0 var(--space-2);padding:0 var(--space-3)}.docs-nav h4:first-child,.docs-toc h4:first-child{margin-top:0}.docs-nav a,.docs-toc a{padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-sm);color:var(--fg-muted);display:block}.docs-nav a:hover,.docs-toc a:hover{color:var(--fg);background:var(--fill-faint)}.docs-nav a.on{color:var(--on-primary);background:var(--primary)}.prose{max-width:var(--measure-2xl)}.prose>*+*{margin-top:var(--space-4)}.prose h2,.post h2{font-size:var(--text-5xl)}.prose h3,.post h3{font-size:var(--text-3xl)}.prose h2{margin-top:var(--space-9);scroll-margin-top:calc(var(--nav-height) + var(--space-5))}.prose h2:first-child{margin-top:0}.prose h3{margin-top:var(--space-6);scroll-margin-top:calc(var(--nav-height) + var(--space-5))}.prose p,.prose li{color:var(--fg-muted)}.prose ul,.prose ol,.post ul,.post ol{padding-left:var(--space-5);gap:var(--space-2);flex-direction:column;display:flex}.prose .code{margin-top:var(--space-5)}.prose .code code{all:unset}.note{grid-template-columns:var(--size-badge) 1fr;gap:var(--space-3);padding:var(--space-4);background:var(--fill-faint);border-radius:var(--radius-sm);font-size:var(--text-sm);display:grid}.note b{width:var(--size-badge);height:var(--size-badge);border-radius:var(--radius-full);background:var(--primary);color:var(--on-primary);font-size:var(--text-2xs);place-items:center;display:grid}.blog-head{padding:var(--space-8) 0 var(--space-7)}.blog-head .wrap{gap:var(--space-7);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;display:grid}.blog-head h1{font-size:var(--display-3xl);line-height:var(--leading-compressed)}.blog-head p,.blog-lead .blog-copy p{font-size:var(--text-2xl);line-height:var(--leading-medium)}.blog-head p{max-width:var(--measure-copy);color:var(--fg-muted);justify-self:end}.blog-lead{gap:var(--space-7);padding-bottom:var(--space-9);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;display:grid}.blog-lead .blog-art img{max-height:var(--art-2xl);margin:0 auto}.blog-lead h2{font-size:var(--display-lg)}.blog-copy{gap:var(--space-4);flex-direction:column;display:flex}.blog-copy p{color:var(--fg-muted)}.blog-grid{gap:var(--space-9) var(--space-7);padding-bottom:var(--space-9);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.blog-item{gap:var(--space-5);flex-direction:column;display:flex}.blog-item .blog-art{aspect-ratio:var(--ratio-wide);justify-content:center;align-items:center;display:flex}.blog-item h2{font-size:var(--display-xs)}.post-hero{align-items:center;gap:var(--space-4);padding:var(--space-8) var(--gutter) var(--space-6);text-align:center;flex-direction:column;display:flex}.post-hero h1{max-width:var(--measure-title-lg)}.post-hero .lead{color:var(--fg-soft);margin:0 auto}.post-art{padding:0 var(--gutter) var(--space-8)}.post-art img{max-height:min(var(--art-vh), var(--art-3xl));margin:0 auto}.post{max-width:var(--measure-xl);padding:0 var(--gutter) var(--space-9);font-size:var(--text-2xl);line-height:var(--leading-loose);margin:0 auto}.post>*+*{margin-top:var(--space-5)}.post h2{margin-top:var(--space-8);line-height:var(--leading-tight)}.post h3{margin-top:var(--space-6)}.post p,.post li{color:var(--fg-soft)}.post figure{margin:var(--space-7) 0}.post figure img{max-height:var(--art-2xl);margin:0 auto}.post figcaption{margin-top:var(--space-3);text-align:center;font-size:var(--text-sm);color:var(--fg-muted)}.post .pull{background:var(--surface-inverse);color:var(--on-inverse);padding:var(--space-6);border-radius:var(--radius-md);font:var(--weight-semibold) var(--text-3xl) / var(--leading-snug) var(--font-sans);letter-spacing:var(--tracking-snug)}.post .compare{gap:var(--space-0-5);font-size:var(--text-sm);line-height:var(--leading-medium);grid-template-columns:1.1fr 1fr 1fr;display:grid}.post .compare>div{background:var(--fill-faint);padding:var(--space-3) var(--space-4);color:var(--fg-muted)}.post .compare>.h{font:var(--weight-semibold) var(--text-xl) / var(--leading-tight) var(--font-sans);color:var(--fg);padding-bottom:var(--space-2);background:0 0}.post .compare>.us{background:var(--fill);color:var(--fg)}.post .compare>.k{font-weight:var(--weight-medium);color:var(--fg)}.art-missing{aspect-ratio:var(--ratio-photo);background:var(--fill-faint);border-radius:var(--radius-sm);width:100%;color:var(--fg-muted);font:var(--weight-medium) var(--text-2xs) var(--font-mono);place-items:center;display:grid}.reveal{opacity:0;transform:translateY(var(--space-4));transition:opacity var(--duration-slow) var(--ease-out), transform var(--duration-slow) var(--ease-out)}.reveal.in{opacity:1;transform:none}@media (width<=1100px){.specs.four,.plans{grid-template-columns:repeat(2,minmax(0,1fr))}.specs.four{row-gap:var(--space-8)}.docs{grid-template-columns:var(--measure-xs) minmax(0, 1fr)}.docs-toc{display:none}}@media (width<=900px){.section{padding:var(--space-8) 0}.head,.blog-head .wrap{gap:var(--space-4);margin-bottom:var(--space-7);grid-template-columns:1fr}.head .lead,.blog-head p{justify-self:start}.section-body{gap:var(--space-7)}.page-hero{padding:var(--space-7) 0}.page-hero>.wrap{gap:var(--space-6);grid-template-columns:1fr;min-height:0}.page-art img,.split-art img{max-height:var(--art-lg)}.split,.split.flip{gap:var(--space-6);grid-template-columns:1fr}.split.flip>.split-art{order:0}.story{grid-template-columns:minmax(0,1fr)}.story-art{display:none}.story-steps{gap:var(--space-8);flex-direction:column;display:flex}.story-step{opacity:1;min-height:0}.story-inline{height:var(--art-lg);margin-bottom:var(--space-4);justify-content:center;display:flex}.specs:not(.four){gap:var(--space-7) var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr))}.spec:not(.card) .spec-art{height:var(--art-sm)}.letters.columns{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr 1fr}.foot-grid>:first-child{grid-column:1/-1}.blog-lead{gap:var(--space-5);padding-bottom:var(--space-8);grid-template-columns:1fr}.blog-grid{gap:var(--space-8);padding-bottom:var(--space-8);grid-template-columns:1fr}.docs{grid-template-columns:1fr}.docs-nav{max-height:none;position:static}}@media (width<=600px){.specs:not(.four),.plans{grid-template-columns:1fr}.specs.four{gap:var(--space-7) var(--space-4)}.card .spec-art{height:var(--art-xs)}.lead{font-size:var(--text-lg)}.home-hero{height:auto;min-height:0;padding:var(--space-8) 0 var(--space-6)}.faq summary{font-size:var(--text-lg)}.post .pull{font-size:var(--text-2xl);padding:var(--space-5)}.post .compare{font-size:var(--text-xs)}}main.enter{animation:page-in var(--duration-normal) var(--ease-out)}@keyframes page-in{0%{opacity:0;transform:translateY(var(--space-2))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nav,.docs-nav,.docs-toc,.story-step,.story-frame{transition:none}.marquee{-webkit-mask-image:none;mask-image:none}.marquee-track{flex-wrap:wrap;justify-content:center;width:auto;animation:none}.marquee span[aria-hidden]{display:none}.reveal{opacity:1;transition:none;transform:none}main.enter{animation:none}}.topbar{min-height:40px;margin:0 calc(-1 * var(--frame));padding:0 var(--space-7);background:var(--surface-inverse);color:var(--gray-0);font-size:var(--text-sm);justify-content:center;align-items:center;display:flex;position:relative}.topbar.gone,.explained .topbar:not(.home){display:none}.topbar-open{align-items:center;gap:var(--space-2);padding:var(--space-2) 0;color:inherit;display:inline-flex}.topbar-nudge{opacity:.7}.topbar-open strong{font-weight:var(--weight-semibold)}.topbar-sub{margin-left:calc(-1 * var(--space-2))}.topbar-open .icon{transition:transform var(--duration-fast)}.topbar-open:hover .icon{transform:translateX(var(--space-1))}.topbar-close{right:var(--space-3);width:28px;height:28px;color:inherit;opacity:.7;background:0 0;position:absolute}.topbar-close:hover{opacity:1;background:#ffffff1f}.explain{width:min(640px, calc(100% - 2 * var(--space-4)));max-height:calc(100% - 2 * var(--space-4));background:var(--surface-raised);color:var(--fg);border-radius:var(--radius-md);border:0;margin:auto;padding:0}.explain::backdrop{background:#0b0d1266}.explain-page{height:min(720px, calc(100svh - 2 * var(--space-4)));flex-direction:column;display:flex;position:relative}.explain-close{top:var(--space-4);right:var(--space-4);z-index:1;position:absolute}.explain-art{height:min(300px,38svh);margin:var(--space-3);padding:var(--space-5);background:var(--surface);border-radius:calc(var(--radius-md) - var(--space-3));flex:none;justify-content:center;align-items:center;display:flex}.explain-art img{object-fit:contain;width:auto;max-height:100%;animation:explain-in var(--duration-normal) var(--ease-out)}@keyframes explain-in{0%{opacity:0;transform:translateX(var(--space-4))}}.explain-copy{gap:var(--space-3);padding:var(--space-4) var(--space-6) 0;flex-direction:column;flex:1;display:flex;overflow:auto}.explain-copy small{font-size:var(--text-sm);color:var(--fg-muted)}.explain-copy h2{font-size:var(--display-sm);line-height:1.05}.explain-copy p{font-size:var(--text-xl);color:var(--fg-soft);text-wrap:pretty;line-height:1.45}.explain-list{gap:var(--space-1);font-size:var(--text-lg);color:var(--fg-soft);flex-direction:column;line-height:1.4;display:flex}.explain-list strong{font-weight:var(--weight-semibold);color:var(--fg)}.explain-list strong:after{content:":"}.explain-foot{align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-6) var(--space-6);display:flex}.explain-dots{gap:6px;margin-right:auto;display:flex}.explain-dots button{border-radius:var(--radius-full);background:var(--fill-strong);width:8px;height:8px;transition:background var(--duration-fast), width var(--duration-fast)}.explain-dots button.on{background:var(--fg);width:20px}@media (width<=600px){.topbar-nudge,.topbar-sub{display:none}.explain-art{height:min(220px,30svh);padding:var(--space-4)}.explain-copy{padding:var(--space-3) var(--space-5) 0}.explain-copy p{font-size:var(--text-lg)}.explain-foot{padding:var(--space-5)}}.split-art .shot{border-radius:var(--radius-sm);background:var(--gray-0);width:100%;max-height:none;box-shadow:0 0 0 var(--hairline) var(--fill), 0 24px 48px var(--fill)}.shot-note{font-size:var(--text-sm);color:var(--fg-muted);text-align:center}.keeps{gap:var(--space-6) var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.keeps figure{gap:var(--space-3);flex-direction:column;display:flex}.keeps img{aspect-ratio:3/2;object-fit:cover;object-position:top;border-radius:var(--radius-sm);background:var(--fill);width:100%}.keeps figcaption{gap:var(--space-1);font-size:var(--text-md);line-height:var(--leading-snug);flex-direction:column;display:flex}.keeps small{font-size:var(--text-sm);color:var(--fg-muted)}@media (width<=960px){.keeps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.keeps{grid-template-columns:1fr}}
