.site-header[data-astro-cid-5hce7sga]{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--color-bg) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border-subtle)}.nav[data-astro-cid-5hce7sga]{display:flex;align-items:center;justify-content:space-between;height:60px;gap:var(--space-lg)}.logo[data-astro-cid-5hce7sga]{display:flex;align-items:center;gap:.5rem;text-decoration:none;flex-shrink:0}.logo[data-astro-cid-5hce7sga] img[data-astro-cid-5hce7sga]{width:77px;object-fit:contain}.logo-text[data-astro-cid-5hce7sga]{font-family:var(--font-display);font-size:1.125rem;font-weight:700;color:var(--color-text);letter-spacing:-.02em;line-height:1}.nav-toggle[data-astro-cid-5hce7sga]{display:none;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;background:none;border:none;cursor:pointer;padding:6px;border-radius:6px;color:var(--color-text);flex-shrink:0}.nav-toggle[data-astro-cid-5hce7sga]:hover{background:var(--color-bg-alt)}.nav-toggle-bar[data-astro-cid-5hce7sga]{display:block;width:20px;height:1.5px;background:currentColor;border-radius:2px;transition:transform .2s ease,opacity .2s ease}.nav-toggle[data-astro-cid-5hce7sga][aria-expanded=true] .nav-toggle-bar[data-astro-cid-5hce7sga]:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.nav-toggle[data-astro-cid-5hce7sga][aria-expanded=true] .nav-toggle-bar[data-astro-cid-5hce7sga]:nth-child(2){opacity:0}.nav-toggle[data-astro-cid-5hce7sga][aria-expanded=true] .nav-toggle-bar[data-astro-cid-5hce7sga]:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.nav-links[data-astro-cid-5hce7sga]{display:flex;align-items:center;gap:.25rem;list-style:none}.nav-links[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]{display:block;padding:.375rem .75rem;text-decoration:none;color:var(--color-text-muted);font-size:.9rem;font-weight:500;border-radius:6px;transition:color .12s,background .12s}.nav-links[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]:hover{color:var(--color-text);background:var(--color-bg-alt)}.nav-links[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga][aria-current=page]{color:var(--color-text)}.btn--sm[data-astro-cid-5hce7sga]{padding:.375rem .875rem;font-size:.875rem}.site-footer[data-astro-cid-5hce7sga]{padding:var(--space-xl) 0 var(--space-lg);border-top:1px solid var(--color-border-subtle);margin-top:var(--space-2xl)}.footer-inner[data-astro-cid-5hce7sga]{display:flex;align-items:center;gap:var(--space-lg);flex-wrap:wrap}.footer-brand[data-astro-cid-5hce7sga]{display:flex;align-items:center;gap:.4rem;margin-right:auto}.footer-brand[data-astro-cid-5hce7sga] img[data-astro-cid-5hce7sga]{width:22px;height:22px;object-fit:contain;opacity:.6}.footer-wordmark[data-astro-cid-5hce7sga]{font-family:var(--font-display);font-size:1rem;font-weight:400;color:var(--color-text-muted);letter-spacing:-.025em}.footer-copy[data-astro-cid-5hce7sga]{color:var(--color-text-muted);font-size:.85rem;max-width:none}.footer-links[data-astro-cid-5hce7sga]{display:flex;gap:.25rem;list-style:none}.footer-links[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]{color:var(--color-text-muted);font-size:.85rem;text-decoration:none;padding:.25rem .5rem;border-radius:4px;transition:color .12s}.footer-links[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]:hover{color:var(--color-text)}@media(max-width:640px){.nav-toggle[data-astro-cid-5hce7sga]{display:flex}.nav-links[data-astro-cid-5hce7sga]{display:none;position:absolute;top:61px;left:0;right:0;background:var(--color-bg);border-bottom:1px solid var(--color-border);flex-direction:column;align-items:stretch;gap:0;padding:.5rem}.nav-links[data-astro-cid-5hce7sga].nav-links--open{display:flex}.nav-links[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]{padding:.75rem 1rem;border-radius:6px}.nav-links[data-astro-cid-5hce7sga] .btn--sm[data-astro-cid-5hce7sga]{border-radius:6px;text-align:left}.footer-inner[data-astro-cid-5hce7sga]{flex-direction:column;align-items:flex-start;gap:var(--space-md)}.footer-brand[data-astro-cid-5hce7sga]{margin-right:0}.footer-links[data-astro-cid-5hce7sga]{flex-wrap:wrap;gap:.25rem}}:root{--color-bg: #fafafa;--color-bg-alt: #f3f4f6;--color-surface: #ffffff;--color-hero-bg: #111111;--color-hero-text: #f5f5f5;--color-text: #1c1c1c;--color-text-muted: #6b7280;--color-text-subtle: #9ca3af;--color-accent: #4a5568;--color-accent-hover: #2d3748;--color-accent-on-dark: #93a8c0;--color-border: #e5e7eb;--color-border-subtle: #f0f1f3;--font-display: "Libre Baskerville", Georgia, serif;--font-body: "DM Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 2rem;--space-xl: 4rem;--space-2xl: 7rem;--max-width: 76rem;--content-width: 44rem;--radius: 7px;--radius-lg: 13px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04), 0 2px 6px rgba(0, 0, 0, .04);--shadow-md: 0 2px 4px rgba(0, 0, 0, .04), 0 8px 20px rgba(0, 0, 0, .08), 0 0 0 1px rgba(0, 0, 0, .03);--shadow-screenshot: 0 4px 8px rgba(0, 0, 0, .08), 0 16px 40px rgba(0, 0, 0, .14), 0 40px 80px rgba(0, 0, 0, .08), 0 0 0 1px rgba(0, 0, 0, .05)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:1.0625rem;line-height:1.65;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:1.15;letter-spacing:-.02em}h1{font-size:clamp(2.5rem,5vw + .75rem,4rem)}h2{font-size:clamp(1.75rem,3vw + .5rem,2.5rem)}h3{font-size:1.125rem;font-weight:600;font-family:var(--font-body);letter-spacing:-.01em;line-height:1.35}p{max-width:62ch}a{color:var(--color-accent);text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px;transition:color .12s ease}a:hover{color:var(--color-accent-hover)}code{font-family:var(--font-mono);font-size:.875em;background:var(--color-bg-alt);padding:.15em .4em;border-radius:4px;border:1px solid var(--color-border)}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 2rem}@media(max-width:640px){.container{padding:0 1.25rem}}.section{padding:var(--space-xl) 0}.section--alt{background:var(--color-bg-alt)}.section--dark{background:var(--color-hero-bg);color:var(--color-hero-text)}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.625rem 1.375rem;font-family:var(--font-body);font-size:.9375rem;font-weight:500;line-height:1;text-decoration:none;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;white-space:nowrap;letter-spacing:-.01em}.btn--primary{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.btn--primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);color:#fff;box-shadow:0 4px 14px #4a556847}.btn--secondary{background:transparent;color:var(--color-text);border-color:var(--color-border)}.btn--secondary:hover{border-color:var(--color-text-muted);color:var(--color-text)}.btn--ghost{background:#ffffff14;color:var(--color-hero-text);border-color:#ffffff24}.btn--ghost:hover{background:#ffffff24;border-color:#ffffff42;color:var(--color-hero-text)}img{max-width:100%;height:auto;display:block}.screenshot-frame{perspective:1400px}.screenshot-frame img{transform:rotateY(-3deg) rotateX(1.5deg);transform-origin:left center;border-radius:var(--radius-lg);box-shadow:var(--shadow-screenshot);transition:transform .5s cubic-bezier(.23,1,.32,1),box-shadow .5s cubic-bezier(.23,1,.32,1);will-change:transform}.screenshot-frame:hover img{transform:rotateY(-.5deg) rotateX(0);box-shadow:0 8px 16px #00000014,0 24px 56px #00000024,0 0 0 1px #0000000d}.screenshot{border-radius:var(--radius);box-shadow:var(--shadow-md)}.eyebrow{display:inline-block;font-family:var(--font-body);font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-subtle);margin-bottom:.75rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
