:root{--bg: #0f0906;--bg-raised: #17100b;--border: #2a1f17;--text: #f4ede4;--text-dim: #a89984;--text-dimmer: #766555;--accent: #e2a24d;--accent-dim: #8a6a3a;--max-width: 640px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a.link,.prose a{color:var(--text);text-decoration:underline;text-decoration-color:var(--text-dimmer);text-underline-offset:3px;transition:text-decoration-color .15s ease}a.link:hover,.prose a:hover{text-decoration-color:var(--accent)}img{max-width:100%;display:block}.wrap{max-width:var(--max-width);margin:0 auto;padding:0 24px}section{padding:24px 0}h2{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin:0 0 20px;font-weight:600}p{margin:0 0 14px;color:var(--text-dim)}.text-main{color:var(--text)}.muted{color:var(--text-dimmer)}.stat{font-size:13px;color:var(--text-dim);background:var(--bg-raised);border:1px solid var(--border);border-radius:6px;padding:3px 9px;display:inline-block}::selection{background:var(--accent);color:#0f0906}@media (prefers-reduced-motion: no-preference){.js .hero .wrap>*{opacity:0;transform:translateY(12px)}.js body>section{opacity:0;transform:translateY(20px)}}footer[data-astro-cid-upu6fzxr]{padding:40px 0 64px}.footer-links[data-astro-cid-upu6fzxr]{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-bottom:12px;font-size:14px}.dot[data-astro-cid-upu6fzxr]{margin:0 2px}.footer-note[data-astro-cid-upu6fzxr]{font-size:13px;margin:0}.hero[data-astro-cid-bbe6dxrz]{padding:64px 0 40px}.hero-mark[data-astro-cid-bbe6dxrz]{width:56px;height:56px;margin-bottom:20px;color:var(--accent)}h1[data-astro-cid-bbe6dxrz]{font-size:26px;margin:0 0 6px;font-weight:600;letter-spacing:-.01em}.tagline[data-astro-cid-bbe6dxrz]{font-size:16px;margin:0 0 18px}.bio[data-astro-cid-bbe6dxrz]{max-width:52ch}.contact-row[data-astro-cid-bbe6dxrz]{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:14px}.dot[data-astro-cid-bbe6dxrz]{color:var(--text-dimmer)}.lead[data-astro-cid-35fgrguj]{color:var(--text)}.edu-head[data-astro-cid-2gvrk3wr]{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;font-size:15px}.edu-degree[data-astro-cid-2gvrk3wr]{font-size:13px;margin-top:2px}.edu-meta[data-astro-cid-2gvrk3wr]{text-align:right;font-size:13px;flex-shrink:0}.coursework[data-astro-cid-2gvrk3wr]{font-size:13px;margin:0}.skill-group[data-astro-cid-ab4ihpzs]+.skill-group[data-astro-cid-ab4ihpzs]{margin-top:16px}.skill-label[data-astro-cid-ab4ihpzs]{font-size:13px;margin-bottom:8px}.skill-chips[data-astro-cid-ab4ihpzs]{display:flex;flex-wrap:wrap;gap:6px}.job[data-astro-cid-xpq65ryk]+.job[data-astro-cid-xpq65ryk]{margin-top:28px}.job-head[data-astro-cid-xpq65ryk]{display:flex;align-items:center;gap:12px;margin-bottom:10px}.job-badge[data-astro-cid-xpq65ryk]{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:var(--bg-raised);border:1px solid var(--border);font-size:12px;font-weight:700;color:var(--accent);flex-shrink:0}.job-title[data-astro-cid-xpq65ryk]{display:flex;align-items:center;gap:8px;font-size:15px}.tag[data-astro-cid-xpq65ryk]{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent-dim);border-radius:4px;padding:1px 6px}.job-role[data-astro-cid-xpq65ryk]{font-size:13px;margin-top:2px}.job-stats[data-astro-cid-xpq65ryk]{display:flex;gap:8px;flex-wrap:wrap}.project-grid[data-astro-cid-amng4zvp]{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.project-card[data-astro-cid-amng4zvp]{display:block;padding:14px 16px;background:var(--bg-raised);border:1px solid var(--border);border-radius:10px;transition:border-color .15s ease}.project-card[data-astro-cid-amng4zvp]:hover{border-color:var(--accent-dim)}.project-name[data-astro-cid-amng4zvp]{font-size:14px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:6px;margin-bottom:4px}.ext[data-astro-cid-amng4zvp]{color:var(--text-dimmer);font-size:11px}.project-desc[data-astro-cid-amng4zvp]{font-size:13px;margin:0 0 10px}.project-stats[data-astro-cid-amng4zvp]{display:flex;gap:6px;flex-wrap:wrap}.more[data-astro-cid-amng4zvp]{font-size:14px}@media (max-width: 480px){.project-grid[data-astro-cid-amng4zvp]{grid-template-columns:1fr}}.post-list[data-astro-cid-6prlzabz]{list-style:none;margin:0 0 18px;padding:0}.post-list[data-astro-cid-6prlzabz] li[data-astro-cid-6prlzabz]{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--border);font-size:14px}.post-list[data-astro-cid-6prlzabz] li[data-astro-cid-6prlzabz]:last-child{border-bottom:none}.post-link[data-astro-cid-6prlzabz]{text-decoration:none}.post-link[data-astro-cid-6prlzabz]:hover{text-decoration:underline;text-decoration-color:var(--accent)}.post-date[data-astro-cid-6prlzabz]{font-size:13px;white-space:nowrap}.more[data-astro-cid-6prlzabz]{font-size:14px}.hobby-list[data-astro-cid-w3fpax4z]{display:flex;flex-wrap:wrap;gap:10px}.hobby-chip[data-astro-cid-w3fpax4z]{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:var(--bg-raised);border:1px solid var(--border);border-radius:999px;font-size:14px;color:var(--text)}.hobby-icon[data-astro-cid-w3fpax4z]{color:var(--accent);flex-shrink:0}blockquote[data-astro-cid-aadlzisc]{margin:0 0 24px;padding-left:14px;border-left:2px solid var(--accent-dim)}blockquote[data-astro-cid-aadlzisc]:last-child{margin-bottom:0}.quote-text[data-astro-cid-aadlzisc]{font-size:14px;margin:0 0 8px}footer[data-astro-cid-aadlzisc]{display:flex;flex-direction:column;font-size:13px}.quote-name[data-astro-cid-aadlzisc]{color:var(--text);font-weight:600}footer[data-astro-cid-sz7xmlte]{padding:40px 0 64px}.footer-links[data-astro-cid-sz7xmlte]{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-bottom:12px;font-size:14px}.dot[data-astro-cid-sz7xmlte]{margin:0 2px}.footer-note[data-astro-cid-sz7xmlte]{font-size:13px;margin:0}
