:root{--color-paper: oklch(97% 0 0);--color-paper-2: oklch(94% 0 0);--color-ink: oklch(21% .002 145);--color-ink-2: oklch(38% .002 145);--color-muted: oklch(51% .002 145);--color-rule: oklch(88% 0 0);--color-rule-strong: oklch(75% 0 0);--color-accent: oklch(66% .19 147);--color-accent-deep: oklch(52% .16 150);--color-accent-soft: oklch(93% .045 147);--color-accent-ink: oklch(98% .01 145);--color-focus: oklch(50% .17 148);--color-danger: oklch(55% .18 27);--font-display: "Bricolage Grotesque", "Avenir Next", ui-sans-serif, sans-serif;--font-body: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--font-outlier: "IBM Plex Mono", ui-monospace, monospace;--text-sm: .875rem;--text-base: 1rem;--text-md: 1.25rem;--text-lg: 1.5625rem;--text-xl: 1.9531rem;--text-2xl: 2.4414rem;--text-3xl: 3.0518rem;--text-display: clamp(2.75rem, 5vw + 1rem, 5.25rem);--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--space-3xl: 6rem;--space-4xl: 9rem;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-micro: .12s;--dur-short: .22s;--dur-long: .42s;--rule-hair: 1px solid var(--color-rule);--rule-heavy: 2px solid var(--color-ink);--radius-sm: 4px;--page-gutter: clamp(1rem, 4vw, 3rem);--measure: 62ch;--z-base: 1;--z-raised: 10;--z-sticky: 200}*{box-sizing:border-box;margin:0}html{overflow-x:clip;scroll-behavior:smooth}body{overflow-x:clip;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}.hero figure img,.spot img{mix-blend-mode:multiply}.wrap{max-width:72rem;margin-inline:auto;padding-inline:var(--page-gutter)}h1,h2,h3{font-family:var(--font-display);font-weight:800;line-height:1.08;letter-spacing:-.02em;overflow-wrap:anywhere;min-width:0}p{max-width:var(--measure)}a{color:inherit}::selection{background:var(--color-accent-soft)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.nav{display:flex;justify-content:space-between;align-items:center;padding-block:var(--space-lg)}.wordmark{display:flex;align-items:center;gap:var(--space-xs);text-decoration:none;font-family:var(--font-display);font-weight:800;font-size:var(--text-md);white-space:nowrap}.wordmark img{width:1.75rem;height:1.75rem}.chip{font-family:var(--font-body);font-weight:600;font-size:var(--text-base);text-decoration:none;white-space:nowrap;border:1.5px solid var(--color-ink);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-md);min-height:44px;display:inline-flex;align-items:center;transition:background-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out)}.chip:hover{background:var(--color-ink);color:var(--color-paper)}.chip:active{transform:translateY(1px)}.hero{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:var(--space-2xl);align-items:center;padding-block:var(--space-2xl) var(--space-3xl)}.hero h1{font-size:var(--text-display)}.hero .lede{margin-top:var(--space-lg);font-size:var(--text-md);color:var(--color-ink-2);max-width:46ch}.hero figure{margin:0;min-width:0}.hero figure img{transform:rotate(-1.2deg)}.hero figcaption{margin-top:var(--space-md);font-size:var(--text-sm);color:var(--color-muted);max-width:38ch}.arrow-link{display:inline-block;margin-top:var(--space-xl);font-weight:600;text-decoration:none;border-bottom:1px solid var(--color-accent-deep);padding-bottom:2px;white-space:nowrap;transition:border-color var(--dur-micro) var(--ease-out)}.arrow-link:hover{border-bottom:3px solid var(--color-accent-deep);padding-bottom:0}.reveal{opacity:0;transform:translateY(8px);animation:reveal var(--dur-long) var(--ease-out) forwards;animation-delay:calc(var(--i, 0) * 90ms)}@keyframes reveal{to{opacity:1;transform:none}}.hero figure.reveal{transform:translateY(8px)}.hero figure.reveal img{transform:rotate(-1.2deg)}section>h2,.head-hang{padding-top:var(--space-3xl);margin-bottom:var(--space-xl);font-size:var(--text-2xl)}.steps{list-style:none;padding:0}.steps li{border-top:var(--rule-heavy);padding-block:var(--space-xl) var(--space-2xl);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,320px);gap:var(--space-2xl);align-items:center}.stage{font-family:var(--font-display);font-weight:800;font-size:var(--text-2xl);letter-spacing:-.02em;display:block}.steps h3{font-size:var(--text-xl);margin-top:var(--space-2xs);margin-bottom:var(--space-md)}.steps p{color:var(--color-ink-2);font-size:var(--text-md);max-width:44ch}.steps .spot{min-width:0}.steps .spot img{width:100%;max-width:300px;margin-inline:auto}.connect-lede{color:var(--color-ink-2);font-size:var(--text-md);margin-bottom:var(--space-xl)}.connectors{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:var(--rule-hair);border-left:var(--rule-hair)}.connectors li{border-right:var(--rule-hair);border-bottom:var(--rule-hair);padding:var(--space-lg) var(--space-lg) var(--space-xl)}.connectors h3{font-size:var(--text-md);margin-bottom:var(--space-xs)}.connectors p{color:var(--color-muted)}.connect-note{margin-top:var(--space-lg);color:var(--color-muted)}.aside-band{background:var(--color-paper-2);margin-top:var(--space-3xl)}.aside-band .wrap{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:var(--space-2xl);align-items:center;padding-block:var(--space-2xl)}.aside-band h2{font-size:var(--text-xl);margin-bottom:var(--space-md)}.aside-band p{color:var(--color-ink-2);font-size:var(--text-md)}.aside-band .spot img{width:100%;max-width:240px}.dev p{color:var(--color-ink-2);font-size:var(--text-md);margin-bottom:var(--space-lg)}.codeframe{border-top:var(--rule-heavy);border-bottom:var(--rule-hair);max-width:46rem}.codeframe .label{font-family:var(--font-outlier);font-size:var(--text-sm);color:var(--color-muted);padding-block:var(--space-sm);max-width:none}.codeframe pre{background:var(--color-paper-2);padding:var(--space-lg);overflow-x:auto;font-size:var(--text-sm);line-height:1.55;margin-bottom:var(--space-lg)}.codeframe code{font-family:var(--font-outlier)}.spec{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.spec th,.spec td{text-align:left;vertical-align:top;padding:var(--space-sm) var(--space-lg) var(--space-sm) 0;border-top:var(--rule-hair)}.spec th{font-family:var(--font-body);font-weight:600;white-space:nowrap;width:9rem}.spec td:last-child{color:var(--color-muted)}.order{padding-bottom:var(--space-3xl)}.order h2 .sq{display:inline-block;width:.55em;height:.55em;background:var(--color-accent);margin-right:var(--space-sm)}.order>p{color:var(--color-ink-2);font-size:var(--text-md);margin-bottom:var(--space-xl)}.cta-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-md);max-width:34rem;align-items:end}.cta-form input{font:inherit;color:var(--color-ink);background:none;border:0;border-bottom:1.5px solid var(--color-rule-strong);padding:var(--space-sm) 0;min-height:44px;min-width:0;transition:border-color var(--dur-micro) var(--ease-out)}.cta-form input::placeholder{color:var(--color-muted)}.cta-form input:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px;border-bottom-color:var(--color-focus)}.cta-form input[aria-invalid=true]{border-bottom-color:var(--color-danger)}.cta-form button{font:inherit;font-weight:600;white-space:nowrap;color:var(--color-paper);background:var(--color-ink);border:1.5px solid var(--color-ink);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-lg);min-height:44px;cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out),transform .1s var(--ease-out)}.cta-form button:hover{background:var(--color-accent-deep);border-color:var(--color-accent-deep)}.cta-form button:active{transform:translateY(1px)}.cta-form button:disabled{opacity:.55;cursor:not-allowed}.form-msg{margin-top:var(--space-sm);font-size:var(--text-sm);color:var(--color-muted);min-height:1.4em}.form-msg[data-state=error]{color:var(--color-danger)}.form-msg[data-state=success]{color:var(--color-accent-deep)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:clip;clip-path:inset(50%);white-space:nowrap}.colophon{border-top:var(--rule-heavy);padding-block:var(--space-xl) var(--space-2xl)}.colophon p{font-family:var(--font-outlier);font-size:var(--text-sm);color:var(--color-muted);max-width:72ch;line-height:1.7}.colophon a{color:var(--color-ink-2)}@media(max-width:60rem){.connectors{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:minmax(0,1fr);gap:var(--space-xl);padding-block:var(--space-xl) var(--space-2xl)}.steps li{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.steps .spot img{max-width:220px;margin-inline:0}.aside-band .wrap{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.aside-band .spot img{max-width:180px}}@media(max-width:40rem){section>h2,.head-hang{padding-top:var(--space-2xl)}.connectors,.cta-form{grid-template-columns:minmax(0,1fr)}.cta-form button{width:100%;justify-self:stretch}.spec th{width:auto}.spec,.spec tbody,.spec tr,.spec th,.spec td{display:block}.spec td,.spec th{border-top:0;padding-block:var(--space-2xs);padding-right:0}.spec tr{border-top:var(--rule-hair);padding-block:var(--space-sm)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.15s!important;animation-iteration-count:1!important;transition-duration:.15s!important}html{scroll-behavior:auto}.reveal{animation:reveal-reduced .15s linear forwards}@keyframes reveal-reduced{to{opacity:1;transform:rotate(0) translate(0)}}}
