:root{--brand-600:#2563eb;--brand-700:#1e40af;--brand-300:#93c5fd;--radius:14px;--radius-sm:10px;--container:1120px;--space:clamp(1rem,1.5vw,1.5rem);--font-sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--bg:#0b1020;--bg-elev:#11173a;--bg-alt:#0e1430;--fg:#e8ecff;--fg-muted:#a8b0d6;--border:#1f2748;--code-bg:#060a1c;--accent-fg:var(--brand-300);--c-k-color:#c4b5fd;--card-new-bg:#fbbf24;--card-new-fg:#0b1020;--card-featured-bg:var(--brand-300);--card-featured-fg:#0b1020;--shadow:0 10px 40px -10px #2563eb73}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#fff;--bg-elev:#f6f8ff;--bg-alt:#f0f4ff;--fg:#0b1020;--fg-muted:#4b5377;--border:#dfe5ff;--code-bg:#f3f5ff;--accent-fg:var(--brand-700);--c-k-color:#6d28d9;--card-new-bg:#a16207;--card-new-fg:#fff;--card-featured-bg:var(--brand-700);--card-featured-fg:#fff;--shadow:0 10px 30px -12px #1e40af40}}:root[data-theme=light]{--bg:#fff;--bg-elev:#f6f8ff;--bg-alt:#f0f4ff;--fg:#0b1020;--fg-muted:#4b5377;--border:#dfe5ff;--code-bg:#f3f5ff;--accent-fg:var(--brand-700);--c-k-color:#6d28d9;--card-new-bg:#a16207;--card-new-fg:#fff;--card-featured-bg:var(--brand-700);--card-featured-fg:#fff;--shadow:0 10px 30px -12px #1e40af40}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;margin:0;line-height:1.6}img,svg{display:block;max-width:100%;height:auto}a{color:var(--brand-300);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:2px solid var(--brand-300);outline-offset:3px;border-radius:4px}button:focus-visible{outline:2px solid var(--brand-300);outline-offset:3px;border-radius:4px}.skip-link{position:absolute;background:var(--brand-600);color:#fff;border-radius:0 0 var(--radius-sm)0;padding:.5rem .75rem;top:0;left:-9999px}.skip-link:focus{z-index:1000;left:0}.site-header,.section,.site-footer,.hero{width:100%}.site-header-inner,.section,.site-footer>*,.hero-grid{max-width:var(--container);padding-inline:var(--space);margin-inline-start:auto;margin-inline-end:auto}.section{padding-block-start:clamp(3rem,6vw,5rem);padding-block-end:clamp(3rem,6vw,5rem)}.section-alt{position:relative;background:radial-gradient(85% 55% at 50% 0%,color-mix(in oklab,var(--brand-600)14%,transparent),transparent 65%),var(--bg-alt);border-block:1px solid var(--border);box-shadow:inset 0 1px 0 color-mix(in oklab,var(--brand-300)18%,transparent)}h1,h2,h3{letter-spacing:-.01em;margin:0 0 .5em;line-height:1.15}h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:800}h2{margin-bottom:1.5rem;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700}h3{font-size:1.125rem;font-weight:700}.lede{color:var(--fg-muted);max-width:60ch;font-size:1.125rem}.lede strong{color:var(--fg);font-weight:600}.lede a{color:var(--accent-fg);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}.eyebrow{display:inline-block;border:1px solid var(--border);letter-spacing:.04em;text-transform:uppercase;color:var(--accent-fg);background:color-mix(in oklab,var(--brand-600)8%,transparent);border-radius:999px;margin:0 0 .75rem;padding:.2rem .6rem;font-size:.78rem;font-weight:600}.accent{color:var(--accent-fg)}.site-header{position:sticky;z-index:10;backdrop-filter:saturate(160%)blur(8px);background:color-mix(in oklab,var(--bg)80%,transparent);border-bottom:1px solid var(--border);top:0}.site-header-inner{display:flex;justify-content:space-between;align-items: center;gap:1rem;padding-block-start:.75rem;padding-block-end:.75rem}.brand{display:inline-flex;align-items: center;gap:.5rem}.brand-logo{width:auto;height:40px}.brand-logo-light{display:none}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .brand-logo-dark{display:none}:root:not([data-theme=dark]) .brand-logo-light{display:block}}:root[data-theme=light] .brand-logo-dark{display:none}:root[data-theme=light] .brand-logo-light,:root[data-theme=dark] .brand-logo-dark{display:block}:root[data-theme=dark] .brand-logo-light{display:none}.about-grid{display:grid;grid-template-columns:1fr;align-items: center;gap:clamp(2rem,4vw,3rem)}@media (min-width:860px){.about-grid{grid-template-columns:1.1fr .9fr}}.about-art{display:grid;place-items: center}.about-icon{opacity:.92;width:100%;max-width:240px;height:auto}.about-icon-light{display:none}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .about-icon-dark{display:none}:root:not([data-theme=dark]) .about-icon-light{display:block}}:root[data-theme=light] .about-icon-dark{display:none}:root[data-theme=light] .about-icon-light,:root[data-theme=dark] .about-icon-dark{display:block}:root[data-theme=dark] .about-icon-light{display:none}.site-nav{display:flex;align-items: center;gap:clamp(.75rem,2vw,1.5rem)}.site-nav a{color:var(--fg);padding:.25rem;font-weight:500}.nav-toggle{display:none;border:1px solid var(--border);color:var(--fg);cursor:pointer;background:0 0;border-radius:999px;place-items: center;width:2.25rem;height:2.25rem;transition:border-color .15s,color .15s,background-color .15s}.nav-toggle:hover{border-color:var(--accent-fg);color:var(--accent-fg)}.nav-icon{width:1.15rem;height:1.15rem}.nav-icon-close,.nav-toggle[aria-expanded=true] .nav-icon-open{display:none}.nav-toggle[aria-expanded=true] .nav-icon-close{display:block}@media (max-width:720px){.nav-toggle{display:inline-grid}.site-nav{position:absolute;padding:.5rem var(--space)1.25rem;background:color-mix(in oklab,var(--bg)94%,transparent);border-bottom:1px solid var(--border);-webkit-backdrop-filter:saturate(180%)blur(16px);backdrop-filter:saturate(180%)blur(16px);opacity:0;visibility:hidden;flex-direction:column;align-items:stretch;gap:0;transition:transform .18s,opacity .18s,visibility 0s linear .18s;top:100%;left:0;right:0;transform:translateY(-6px);box-shadow:0 24px 40px -24px #0000008c}@supports  not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.site-nav{background:var(--bg)}}.site-nav.is-open{opacity:1;visibility:visible;transition:transform .18s,opacity .18s,visibility linear;transform:translateY(0)}.site-nav a{border-bottom:1px solid color-mix(in oklab,var(--fg)10%,transparent);padding:.85rem .25rem;font-size:1.05rem}.site-nav .theme-toggle{display:inline-flex;border:0;border-bottom:1px solid color-mix(in oklab,var(--fg)10%,transparent);font:inherit;color:var(--fg);border-radius:0;justify-content:flex-start;align-self:stretch;align-items: center;gap:.6rem;width:100%;height:auto;margin:0;padding:.85rem .25rem;font-size:1.05rem}.site-nav .theme-toggle:hover{border-color:color-mix(in oklab,var(--fg)10%,transparent);color:var(--accent-fg)}:root:not([data-theme]) .site-nav .theme-label-auto,:root[data-theme=light] .site-nav .theme-label-light,:root[data-theme=dark] .site-nav .theme-label-dark{display:inline}}.theme-toggle{border:1px solid var(--border);color:var(--fg);display:inline-grid;cursor:pointer;background:0 0;border-radius:999px;place-items: center;width:2.25rem;height:2.25rem;margin-left:.25rem;transition:border-color .15s,color .15s,background-color .15s}.theme-toggle:hover{border-color:var(--accent-fg);color:var(--accent-fg)}.theme-icon{display:none;width:1.05rem;height:1.05rem}.theme-label{display:none}:root:not([data-theme]) .theme-icon-auto,:root[data-theme=light] .theme-icon-light,:root[data-theme=dark] .theme-icon-dark{display:block}.site-nav a:hover{color:var(--accent-fg);text-decoration:none}.hero{position:relative;overflow:hidden;padding-block-start:clamp(3rem,8vw,6rem);padding-block-end:clamp(3rem,8vw,6rem)}.hero-grid{display:grid;grid-template-columns:1fr;align-items: center;gap:clamp(2rem,4vw,3rem)}@media (min-width:860px){.hero-grid{grid-template-columns:1.1fr .9fr}}.cta-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}@media (max-width:720px){.cta-row{justify-content:center}}.btn{display:inline-flex;border-radius:var(--radius-sm);text-decoration:none;border:1px solid #0000;justify-content:center;align-items: center;padding:.7rem 1.15rem;transition:transform 80ms,background-color .12s,border-color .12s,color .12s;font-size:.975rem;font-weight:600}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--brand-600);color:#fff;box-shadow:var(--shadow)}.btn-primary:hover{background:var(--brand-700);text-decoration:none}.hero .btn-primary{position:relative;overflow:hidden;animation:cta-pulse 2.4s ease-in-out infinite}.hero .btn-primary:before{content:"";position:absolute;animation:cta-shimmer 3.2s ease-in-out infinite;pointer-events:none;mix-blend-mode:overlay;background:linear-gradient(100deg,#0000 35%,#ffffff59 50%,#0000 65%);inset:0;transform:translate(-120%)}@keyframes cta-pulse{0%,to{box-shadow:var(--shadow),0 0 0 0 color-mix(in oklab,var(--brand-300)45%,transparent)}50%{box-shadow:var(--shadow),0 0 0 6px color-mix(in oklab,var(--brand-300)0%,transparent)}}@keyframes cta-shimmer{0%{transform:translate(-120%)}55%{transform:translate(120%)}to{transform:translate(120%)}}@media (prefers-reduced-motion:reduce){.hero .btn-primary{animation:cta-pulse 2.4s ease-in-out infinite!important}.hero .btn-primary:before{animation:cta-shimmer 3.2s ease-in-out infinite!important}}.btn-ghost{color:var(--fg);border-color:var(--border);background:0 0}.btn-ghost:hover{border-color:var(--accent-fg);color:var(--accent-fg);text-decoration:none}.hero-art{position:relative;display:grid;place-items: center;min-height:280px}.glow{position:absolute;background:radial-gradient(closest-side,color-mix(in oklab,var(--brand-600)35%,transparent),transparent 70%),radial-gradient(closest-side at 70% 30%,color-mix(in oklab,var(--brand-300)25%,transparent),transparent 70%);filter:blur(30px);z-index:0;inset:-20% -10%}.code-card{position:relative;z-index:1;background:var(--code-bg);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-mono);overflow:auto;box-shadow:var(--shadow);margin:0;padding:1.25rem;font-size:.875rem;line-height:1.6}.c-k{color:var(--c-k-color)}.c-fn{color:var(--accent-fg)}.cards,.steps{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin:0;padding:0}.card,.steps>li{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.25rem 1.1rem;transition:transform .2s,border-color .2s,box-shadow .2s}.card:hover{border-color:color-mix(in oklab,var(--accent-fg,var(--brand-300))35%,var(--border));box-shadow:0 8px 24px -16px color-mix(in oklab,var(--brand-600)50%,transparent);transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.card{transition:none}.card:hover{transform:none}}.card h3,.steps>li h3{margin-top:0}.card p,.steps>li p{color:var(--fg-muted);margin:0}.card p+p{margin-top:.75rem}.card p a,.steps>li p a{color:var(--accent-fg);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}.card h3 a{color:inherit}.card h3 a:hover{color:var(--accent-fg);text-decoration:none}.card-meta{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;color:var(--accent-fg)!important;margin:0 0 .4rem!important}.card-stack{font-family:var(--font-mono);color:var(--fg-muted);border-top:1px solid var(--border);padding-top:.75rem;font-size:.8rem;line-height:1.5;margin-top:.85rem!important}.cards-work{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.cards-compact{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.cards-compact .card{padding:.9rem 1rem .85rem}.cards-compact .card h3{margin-bottom:.4rem;font-size:1rem}.cards-compact .card p{font-size:.875rem;line-height:1.5}.cards-compact .card p+p{margin-top:.55rem}.js .section .card,.js .section>h2{opacity:0;will-change:opacity,transform;transition:opacity .6s,transform .6s;transform:translateY(14px)}.js .section .card.is-visible,.js .section>h2.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.js .section .card,.js .section>h2{opacity:1;transition:none;transform:none}}.card-wide{grid-column:span 1}@media (min-width:700px){.card-wide{grid-column:span 2}}.card-new{position:relative;border-color:var(--card-new-bg);box-shadow:0 0 0 1px color-mix(in oklab,var(--card-new-bg)25%,transparent)}.card-new:before{content:"New";position:absolute;background:var(--card-new-bg);color:var(--card-new-fg);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;border-radius:.25rem;padding:.15rem .5rem;font-size:.7rem;line-height:1.2;top:-.55rem;right:.75rem}.card-featured{position:relative;border-color:var(--card-featured-bg);box-shadow:0 0 0 1px color-mix(in oklab,var(--card-featured-bg)25%,transparent)}.card-featured:before{content:"Featured";position:absolute;background:var(--card-featured-bg);color:var(--card-featured-fg);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;border-radius:.25rem;padding:.15rem .5rem;font-size:.7rem;line-height:1.2;top:-.55rem;right:.75rem}.card-section-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--fg-muted);font-size:.72rem;margin:1rem 0 .4rem!important}.card-list{list-style:none;display:grid;gap:.65rem;margin:0;padding:0}.card-list>li{color:var(--fg-muted);position:relative;padding-left:1.1rem;font-size:.95rem;line-height:1.55}.card-list>li:before{content:"›";position:absolute;color:var(--accent-fg);font-weight:700;top:0;left:0}.card-list strong{color:var(--fg);font-weight:600}.card-list-meta{display:inline-block;border:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.02em;color:var(--fg-muted);vertical-align:middle;border-radius:999px;margin-left:.35rem;padding:.05rem .45rem;font-size:.72rem}.steps{counter-reset:step}.steps>li{position:relative;counter-increment:step;padding-top:2.75rem}.steps>li:before{content:counter(step);position:absolute;font-family:var(--font-mono);color:var(--accent-fg);border:1px solid var(--border);display:grid;border-radius:999px;place-items: center;width:1.6rem;height:1.6rem;font-size:.8rem;font-weight:700;top:.9rem;left:1.25rem}.contact-line{margin-top:1.5rem}.site-footer{border-top:1px solid var(--border);margin-top:2rem}.site-footer>*{color:var(--fg-muted);padding-block-start:1.5rem;padding-block-end:1.5rem;font-size:.9rem}
