@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Sora:wght@400;500;600&family=JetBrains+Mono:wght@500;600&display=swap");:root{--canvas:#e0e5ec;--canvas-highlight:rgba(255,255,255,0.9);--canvas-shadow:rgba(163,177,198,0.6);--accent:#2563eb;--accent-strong:#004ac6;--on-accent:#ffffff;--text-primary:#1e293b;--text-secondary:#475569;--text-tertiary:#64748b;--edge:rgba(255,255,255,0.4);--radius-container:1.5rem;--radius-well:1rem;--radius-pill:9999px;--shadow-extrude-1:8px 8px 18px var(--canvas-shadow),-8px -8px 18px var(--canvas-highlight);--shadow-extrude-2:12px 12px 24px rgba(163,177,198,0.7),-12px -12px 24px rgba(255,255,255,1);--shadow-inset-1:inset 4px 4px 8px var(--canvas-shadow),inset -4px -4px 8px var(--canvas-highlight);--shadow-inset-2:inset 6px 6px 12px rgba(163,177,198,0.75),inset -6px -6px 12px rgba(255,255,255,0.95);--font-display:"Space Grotesk",ui-sans-serif,system-ui,sans-serif;--font-body:"Sora",ui-sans-serif,system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,monospace;--gutter:1.5rem;--margin:2.5rem;--space-xs:0.375rem;--space-sm:0.75rem;--space-md:1.25rem;--space-lg:2rem;--space-xl:3rem;color-scheme:light}html[data-theme=dark]{--canvas:#1e232a;--canvas-highlight:rgba(255,255,255,0.06);--canvas-shadow:rgba(0,0,0,0.8);--accent:#ff8a3d;--accent-strong:#ff8a3d;--on-accent:#1e232a;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-tertiary:#64748b;--edge:rgba(255,255,255,0.03);--shadow-extrude-1:6px 6px 16px rgba(0,0,0,0.75),-5px -5px 14px rgba(255,255,255,0.04);--shadow-extrude-2:10px 10px 22px rgba(0,0,0,0.85),-6px -6px 16px rgba(255,255,255,0.07);--shadow-inset-1:inset 4px 4px 10px rgba(0,0,0,0.8),inset -3px -3px 8px rgba(255,255,255,0.03);--shadow-inset-2:inset 4px 4px 10px rgba(0,0,0,0.85),inset -2px -2px 6px rgba(255,138,61,0.15),0 0 16px rgba(255,138,61,0.1);color-scheme:dark}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--canvas);color:var(--text-primary);font-family:var(--font-body);transition:background .24s ease,color .24s ease;-webkit-font-smoothing:antialiased}@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}a{text-decoration:none}a,button{color:inherit}button{font-family:inherit;cursor:pointer}h1,h2,h3,h4,p{margin:0}img{max-width:100%;display:block}.shell{max-width:1280px;margin:0 auto;padding-inline:var(--margin)}@media (max-width:1024px){.shell{padding-inline:1.75rem}}@media (max-width:640px){.shell{padding-inline:1.25rem}}.section{padding-block:var(--space-xl)}.display-hero{font-family:var(--font-display);font-weight:700;font-size:56px;line-height:64px;letter-spacing:-.03em}.headline-xl{font-size:40px;line-height:48px;letter-spacing:-.02em}.headline-lg,.headline-xl{font-family:var(--font-display);font-weight:600}.headline-lg{font-size:28px;line-height:36px;letter-spacing:-.01em}.headline-md{font-size:22px;line-height:30px;letter-spacing:-.01em}.headline-md,.headline-sm{font-family:var(--font-display);font-weight:500}.headline-sm{font-size:18px;line-height:26px}.body-lg{font-size:16px;line-height:26px}.body-lg,.body-md{font-family:var(--font-body)}.body-md{font-size:14px;line-height:22px}.body-sm{font-family:var(--font-body);font-size:12px;line-height:18px}.label-lg{font-size:13px;line-height:18px;letter-spacing:.04em}.label-lg,.label-md{font-family:var(--font-mono);font-weight:500;text-transform:uppercase}.label-md{font-size:11px;line-height:16px;letter-spacing:.06em}.label-sm{font-family:var(--font-mono);font-weight:600;font-size:9px;line-height:12px;letter-spacing:.08em;text-transform:uppercase}@media (max-width:640px){.display-hero{font-size:36px;line-height:44px;letter-spacing:-.02em}.headline-xl{font-size:28px;line-height:36px}}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-accent{color:var(--accent)}.neu{box-shadow:var(--shadow-extrude-1)}.neu,.neu-lg{background:var(--canvas);border-radius:var(--radius-container);border:1px solid var(--edge)}.neu-lg{box-shadow:var(--shadow-extrude-2)}.neu-well{box-shadow:var(--shadow-inset-1)}.neu-well,.neu-well-deep{background:var(--canvas);border-radius:var(--radius-well)}.neu-well-deep{box-shadow:var(--shadow-inset-2)}.neu-pill{background:var(--canvas);border-radius:var(--radius-pill);box-shadow:var(--shadow-extrude-1);border:1px solid var(--edge)}.neu-pill-well{background:var(--canvas);border-radius:var(--radius-pill);box-shadow:var(--shadow-inset-1)}.tactile-btn{background:var(--canvas);border:none;border-radius:var(--radius-pill);box-shadow:var(--shadow-extrude-1);padding:.75rem 1.5rem;font-family:var(--font-mono);font-weight:500;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-primary);transition:box-shadow .2s cubic-bezier(.16,1,.3,1),transform .2s;display:inline-flex;align-items:center;gap:.5rem}.tactile-btn:hover{box-shadow:var(--shadow-extrude-2)}.tactile-btn:active{box-shadow:var(--shadow-inset-1);transform:translateY(1px)}.tactile-btn-accent{color:var(--accent)}.tag-pill{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.card,.tag-pill{background:var(--canvas);box-shadow:var(--shadow-extrude-1)}.card{border-radius:1.25rem;border:1px solid var(--edge);padding:1.5rem;transition:box-shadow .2s cubic-bezier(.16,1,.3,1)}.card:hover{box-shadow:var(--shadow-extrude-2)}.divider{height:1px;background:var(--canvas-shadow);opacity:.4;border:none}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);display:inline-block}.grid-auto{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:var(--gutter);gap:var(--gutter)}.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}.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:var(--accent);color:var(--on-accent);padding:.75rem 1.25rem;border-radius:0 0 .5rem 0}.skip-link:focus{left:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}