.project[data-astro-cid-s35pujdj]{padding-block:var(--space-4) var(--space-16)}.project-header[data-astro-cid-s35pujdj]{max-width:var(--content-width);margin:0 auto var(--space-12)}.project-eyebrow[data-astro-cid-s35pujdj]{margin:0 0 var(--space-4);font-family:var(--font-mono);font-size:.9375rem}.project-eyebrow[data-astro-cid-s35pujdj] a[data-astro-cid-s35pujdj]{color:var(--fg);background:0 0;align-items:center;gap:.35em;font-weight:500;display:inline-flex}.project-eyebrow[data-astro-cid-s35pujdj] a[data-astro-cid-s35pujdj]:hover{color:var(--accent);background:0 0}.project-title[data-astro-cid-s35pujdj]{font-family:var(--font-serif);letter-spacing:-.025em;margin:0 0 var(--space-4);font-size:clamp(2rem,5.5vw,3.25rem);font-weight:400;line-height:1.1}.project-description[data-astro-cid-s35pujdj]{font-family:var(--font-serif);color:var(--fg-muted);margin:0 0 var(--space-6);max-width:56ch;font-size:1.1875rem;line-height:1.6}.project-stack[data-astro-cid-s35pujdj]{margin:0 0 var(--space-6);flex-wrap:wrap;gap:.4rem;padding:0;list-style:none;display:flex}.project-stack[data-astro-cid-s35pujdj] li[data-astro-cid-s35pujdj]{font-family:var(--font-sans);color:var(--accent);background:var(--accent-soft);border-radius:3px;padding:.2rem .6rem;font-size:.75rem}.project-links[data-astro-cid-s35pujdj]{gap:var(--space-3);margin-bottom:var(--space-8);flex-wrap:wrap;display:flex}.project-links[data-astro-cid-s35pujdj] a[data-astro-cid-s35pujdj]{font-family:var(--font-mono);color:var(--fg);border:1px solid var(--border);background:0 0;border-radius:3px;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.8125rem;transition:color .18s ease-out,border-color .18s ease-out;display:inline-flex}.project-links[data-astro-cid-s35pujdj] a[data-astro-cid-s35pujdj]:hover{color:var(--accent);border-color:var(--accent);background:0 0}.project-links[data-astro-cid-s35pujdj] a[data-astro-cid-s35pujdj] [data-astro-cid-s35pujdj][data-icon]{width:15px;height:15px}.project-cover[data-astro-cid-s35pujdj]{border:1px solid var(--border);width:100%;height:auto;margin-top:var(--space-4);border-radius:4px}.project-header[data-astro-cid-s35pujdj]:after{content:"";background:var(--accent);width:3rem;height:1px;margin-top:var(--space-8);display:block}.project-grid[data-astro-cid-s35pujdj]{gap:var(--space-8);grid-template-columns:1fr;display:grid}@media (width>=1024px){.project-grid[data-astro-cid-s35pujdj]{grid-template-columns:var(--content-width) minmax(0, 1fr);gap:var(--space-12);grid-template-areas:"body sidebar";max-width:92rem;margin:0 auto}.project-body[data-astro-cid-s35pujdj]{grid-area:body}.project-sidebar[data-astro-cid-s35pujdj]{top:calc(var(--space-12) + 1rem);max-height:calc(100vh - var(--space-16));grid-area:sidebar;align-self:start;position:sticky;overflow-y:auto}}@media (width<=1023px){.project-sidebar[data-astro-cid-s35pujdj]{max-width:var(--content-width);padding-bottom:var(--space-6);border-bottom:1px solid var(--border);margin:0 auto}.project-body[data-astro-cid-s35pujdj]{max-width:var(--content-width);margin:0 auto}}.prose[data-astro-cid-s35pujdj]{counter-reset:h2-counter}.prose[data-astro-cid-s35pujdj] h2,.prose[data-astro-cid-s35pujdj] h3,.prose[data-astro-cid-s35pujdj] h4{margin-top:var(--space-12);margin-bottom:var(--space-4)}.prose[data-astro-cid-s35pujdj] h2{counter-increment:h2-counter;letter-spacing:-.015em;padding-top:var(--space-4);border-top:1px solid var(--border);font-size:1.625rem;font-weight:500;position:relative}.prose[data-astro-cid-s35pujdj] h2:before{content:counter(h2-counter, decimal-leading-zero);font-family:var(--font-mono);letter-spacing:.14em;color:var(--accent);text-transform:uppercase;margin-bottom:.6rem;font-size:.6875rem;font-weight:500;display:block}.prose[data-astro-cid-s35pujdj] h3{font-size:1.25rem;font-weight:500}.prose[data-astro-cid-s35pujdj] h4{font-size:1.0625rem;font-style:italic;font-weight:500}.prose[data-astro-cid-s35pujdj] p,.prose[data-astro-cid-s35pujdj] li{margin-block:var(--space-4)}.prose[data-astro-cid-s35pujdj] p{font-size:1.0625rem;line-height:1.75}.prose[data-astro-cid-s35pujdj] ul,.prose[data-astro-cid-s35pujdj] ol{margin-block:var(--space-4);padding-left:1.5rem}.prose[data-astro-cid-s35pujdj] li>ul,.prose[data-astro-cid-s35pujdj] li>ol{margin-block:.25rem}.prose[data-astro-cid-s35pujdj] img{max-width:100%;height:auto;margin:var(--space-6) auto;border-radius:3px;display:block}.prose[data-astro-cid-s35pujdj] figure img{margin:0 auto}.prose[data-astro-cid-s35pujdj] kbd{background:var(--bg-elevated);border:1px solid var(--border);font-family:var(--font-mono);color:var(--fg);box-shadow:0 1px 0 var(--border);border-radius:3px;padding:.1em .45em;font-size:.85em;display:inline-block}.prose[data-astro-cid-s35pujdj] mark{background:var(--accent-soft);color:inherit;border-radius:2px;padding:0 .2em}.prose[data-astro-cid-s35pujdj] details{margin:var(--space-6) 0;padding:var(--space-3) var(--space-4);border:1px solid var(--border);background:var(--bg-subtle);border-radius:3px}.prose[data-astro-cid-s35pujdj] details summary{cursor:pointer;font-family:var(--font-sans);color:var(--fg);font-weight:500}.prose[data-astro-cid-s35pujdj] details[open] summary{margin-bottom:var(--space-3)}.prose[data-astro-cid-s35pujdj] .katex-display{padding:.5rem 0;overflow:auto hidden}
