.projects-page[data-astro-cid-3rkrlumz]{width:min(68rem,100% - 3rem);margin-inline:auto}.projects-intro[data-astro-cid-3rkrlumz]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:2rem;padding:3rem 0 2.5rem;display:flex}.eyebrow[data-astro-cid-3rkrlumz]{color:var(--accent-ink);font-family:var(--font-mono);letter-spacing:.07em;margin:0;font-size:.66rem}.projects-intro[data-astro-cid-3rkrlumz] h1[data-astro-cid-3rkrlumz]{font-family:var(--font-display);letter-spacing:-.035em;margin:.55rem 0 0;font-size:clamp(2rem,3.5vw,3rem);font-weight:500;line-height:1.2}.intro-copy[data-astro-cid-3rkrlumz]{color:var(--fg-muted);margin:.75rem 0 0;font-size:.9rem;line-height:1.8}.github-link[data-astro-cid-3rkrlumz]{border:1px solid var(--border);min-height:44px;color:var(--accent-ink);border-radius:6px;flex-shrink:0;align-items:center;gap:.65rem;padding:.5rem .9rem;font-size:.82rem;display:inline-flex}.github-link[data-astro-cid-3rkrlumz]:hover{background:var(--accent-soft);border-color:var(--accent)}.section-heading[data-astro-cid-3rkrlumz]{justify-content:space-between;align-items:baseline;gap:1rem;margin:1.75rem 0 0;display:flex}.section-heading[data-astro-cid-3rkrlumz] h2[data-astro-cid-3rkrlumz]{font-family:var(--font-serif);margin:0;font-size:1.15rem;font-weight:600}.section-heading[data-astro-cid-3rkrlumz]>span[data-astro-cid-3rkrlumz]{color:var(--fg-subtle);font-size:.72rem}.featured-projects[data-astro-cid-3rkrlumz]{flex-direction:column;gap:1.75rem;margin-top:1.5rem;display:flex}.project-featured[data-astro-cid-3rkrlumz]{--project-tint:var(--accent-soft);--project-accent:var(--accent);border:1px solid var(--border);background:var(--bg-paper);min-width:0;box-shadow:var(--shadow-soft);transition:border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;border-radius:16px;overflow:hidden}.project-warm[data-astro-cid-3rkrlumz]{--project-tint:var(--accent-warm-soft);--project-accent:var(--accent-2)}.project-featured[data-astro-cid-3rkrlumz]:before{content:"";background:var(--project-accent);height:4px;display:block}.project-featured[data-astro-cid-3rkrlumz]:focus-within{border-color:var(--accent);box-shadow:var(--shadow-float)}.project-body[data-astro-cid-3rkrlumz]{grid-template-columns:minmax(0,1fr);align-items:start;gap:2.5rem;padding:1.75rem 2rem 2rem;display:grid}.has-cover[data-astro-cid-3rkrlumz] .project-body[data-astro-cid-3rkrlumz]{grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr)}.project-featured[data-astro-cid-3rkrlumz]:not(.has-cover) .project-details[data-astro-cid-3rkrlumz]{max-width:49rem}.project-visual[data-astro-cid-3rkrlumz]{border-radius:8px;min-width:0;margin-top:3rem;display:block;overflow:hidden}.project-visual[data-astro-cid-3rkrlumz] img[data-astro-cid-3rkrlumz]{width:100%;height:auto;display:block}.project-visual[data-astro-cid-3rkrlumz]:focus-visible,.project-details[data-astro-cid-3rkrlumz] a[data-astro-cid-3rkrlumz]:focus-visible,.repo-link[data-astro-cid-3rkrlumz]:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.project-details[data-astro-cid-3rkrlumz]{min-width:0}.project-meta[data-astro-cid-3rkrlumz]{color:var(--fg-muted);font-family:var(--font-mono);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem 1rem;font-size:.75rem;line-height:1.6;display:flex}.project-identity[data-astro-cid-3rkrlumz]{overflow-wrap:anywhere;align-items:center;gap:.8rem;min-width:0;display:flex}.project-number[data-astro-cid-3rkrlumz]{background:var(--project-tint);width:34px;height:34px;color:var(--accent-ink);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.project-details[data-astro-cid-3rkrlumz] h3[data-astro-cid-3rkrlumz]{font-family:var(--font-display);letter-spacing:-.025em;text-wrap:balance;margin:1rem 0 0;font-size:clamp(1.35rem,2.1vw,1.85rem);font-weight:500;line-height:1.45}.project-details[data-astro-cid-3rkrlumz] h3[data-astro-cid-3rkrlumz] a[data-astro-cid-3rkrlumz]:hover{text-underline-offset:.2em;text-decoration:underline 1px}.project-description[data-astro-cid-3rkrlumz]{color:var(--fg-muted);margin:1rem 0 0;font-size:.95rem;line-height:1.85}.project-detail[data-astro-cid-3rkrlumz]{color:var(--fg-muted);margin:.65rem 0 0;font-size:.86rem;line-height:1.8}.project-card-footer[data-astro-cid-3rkrlumz]{border-top:1px solid var(--border);background:color-mix(in srgb, var(--project-tint) 45%, var(--bg));justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem 2rem;display:flex}.project-tags[data-astro-cid-3rkrlumz]{color:var(--fg);font-family:var(--font-sans);flex-wrap:wrap;gap:.4rem;margin:0;padding:0;font-size:.72rem;line-height:1.5;list-style:none;display:flex}.project-tags[data-astro-cid-3rkrlumz] li[data-astro-cid-3rkrlumz]{border:1px solid color-mix(in srgb, var(--project-accent) 25%, transparent);background:color-mix(in srgb, var(--project-tint) 75%, var(--project-accent) 25%);white-space:nowrap;border-radius:999px;padding:.3rem .7rem}.project-actions[data-astro-cid-3rkrlumz]{flex-direction:column;flex-shrink:0;align-items:center;gap:.35rem;display:flex}.repo-link[data-astro-cid-3rkrlumz]{background:var(--accent-ink);min-height:44px;color:var(--bg);border-radius:7px;justify-content:center;align-items:center;gap:.7rem;padding:.65rem 1.2rem;font-size:.86rem;font-weight:500;display:inline-flex}.repo-link[data-astro-cid-3rkrlumz]:hover{background:var(--fg);color:var(--bg)}.repo-caption[data-astro-cid-3rkrlumz]{color:var(--fg-muted);font-size:.75rem}.other-section[data-astro-cid-3rkrlumz]{margin-top:2.5rem}.other-projects[data-astro-cid-3rkrlumz]{gap:1rem;margin-top:1rem;display:grid}.project-row[data-astro-cid-3rkrlumz]{border:1px solid var(--border);background:var(--bg-paper);border-radius:10px;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;display:grid}.tool-icon[data-astro-cid-3rkrlumz]{background:var(--bg-soft);width:44px;height:44px;color:var(--accent-ink);border-radius:6px;place-items:center;display:grid}.tool-copy[data-astro-cid-3rkrlumz] h3[data-astro-cid-3rkrlumz]{font-family:var(--font-mono);overflow-wrap:anywhere;margin:0;font-size:.9rem;font-weight:500}.tool-copy[data-astro-cid-3rkrlumz] p[data-astro-cid-3rkrlumz]{color:var(--fg-muted);margin:.35rem 0 0;font-size:.82rem;line-height:1.7}.tool-language[data-astro-cid-3rkrlumz]{color:var(--fg-muted);font-size:.72rem}.tool-link[data-astro-cid-3rkrlumz]{border:1px solid var(--accent);min-height:44px;color:var(--accent-ink);border-radius:6px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem .8rem;font-size:.75rem;display:flex}.tool-link[data-astro-cid-3rkrlumz]:hover{background:var(--accent-soft)}.project-footer[data-astro-cid-3rkrlumz]{justify-content:space-between;align-items:center;gap:1.5rem;margin-top:1.7rem;padding:1rem 0;display:flex}.project-footer[data-astro-cid-3rkrlumz] p[data-astro-cid-3rkrlumz]{color:var(--fg-muted);margin:0;font-size:.8rem}.project-footer[data-astro-cid-3rkrlumz] a[data-astro-cid-3rkrlumz]{white-space:nowrap;min-height:44px;color:var(--accent-ink);align-items:center;gap:.7rem;font-size:.8rem;display:inline-flex}@media (width<=1000px){.project-body[data-astro-cid-3rkrlumz]{gap:1.5rem;padding:1.5rem}.has-cover[data-astro-cid-3rkrlumz] .project-body[data-astro-cid-3rkrlumz]{grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr)}.project-card-footer[data-astro-cid-3rkrlumz]{padding-inline:1.5rem}}@media (width<=800px){.projects-page[data-astro-cid-3rkrlumz]{width:calc(100% - 2rem)}.projects-intro[data-astro-cid-3rkrlumz]{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.6rem 0 1.3rem}.projects-intro[data-astro-cid-3rkrlumz] h1[data-astro-cid-3rkrlumz]{font-size:2rem}.intro-copy[data-astro-cid-3rkrlumz]{font-size:.85rem}.desktop-break[data-astro-cid-3rkrlumz]{display:none}.github-link[data-astro-cid-3rkrlumz]{font-size:.77rem}.featured-projects[data-astro-cid-3rkrlumz]{gap:1.5rem}.project-body[data-astro-cid-3rkrlumz],.has-cover[data-astro-cid-3rkrlumz] .project-body[data-astro-cid-3rkrlumz]{grid-template-columns:minmax(0,1fr);gap:1.25rem;padding:1.25rem}.project-visual[data-astro-cid-3rkrlumz]{margin-top:0}.project-meta[data-astro-cid-3rkrlumz]{font-size:.7rem}.project-details[data-astro-cid-3rkrlumz] h3[data-astro-cid-3rkrlumz]{font-size:clamp(1.35rem,4vw,1.8rem)}.project-description[data-astro-cid-3rkrlumz]{font-size:1rem}.project-card-footer[data-astro-cid-3rkrlumz]{flex-direction:column;align-items:stretch;gap:1.25rem;padding:1.1rem 1.25rem}.project-actions[data-astro-cid-3rkrlumz]{align-items:stretch}.repo-link[data-astro-cid-3rkrlumz]{min-height:48px}.repo-caption[data-astro-cid-3rkrlumz]{text-align:center}.project-row[data-astro-cid-3rkrlumz]{grid-template-columns:36px minmax(0,1fr);gap:.6rem .8rem}.tool-icon[data-astro-cid-3rkrlumz]{align-self:start;width:36px;height:36px}.tool-language[data-astro-cid-3rkrlumz],.tool-link[data-astro-cid-3rkrlumz]{grid-column:2}.project-footer[data-astro-cid-3rkrlumz]{flex-direction:column;align-items:flex-start;gap:.5rem}}@media (width<=360px){.project-meta[data-astro-cid-3rkrlumz]{flex-wrap:wrap;gap:.3rem 1rem}}@media (prefers-reduced-motion:reduce){.project-featured[data-astro-cid-3rkrlumz],.project-featured[data-astro-cid-3rkrlumz] a[data-astro-cid-3rkrlumz]{transition:none}}
