.hero[data-astro-cid-ge2uvauf]{padding:4.5rem 0 0;position:relative}.hero-grid[data-astro-cid-ge2uvauf]{grid-template-columns:1.2fr .95fr;align-items:start;gap:3rem;padding-bottom:3.5rem;display:grid}.hero-aside[data-astro-cid-ge2uvauf]{flex-direction:column;align-items:stretch;gap:1rem;display:flex}.portrait[data-astro-cid-ge2uvauf]{border-radius:var(--radius);border:1px solid var(--border);width:100%;box-shadow:var(--shadow);background:var(--bg-muted);margin:0;line-height:0;overflow:hidden}.portrait[data-astro-cid-ge2uvauf] img[data-astro-cid-ge2uvauf]{width:100%;height:auto;display:block}.eyebrow[data-astro-cid-ge2uvauf]{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;font-size:.8rem}.hero-name[data-astro-cid-ge2uvauf]{letter-spacing:-.035em;color:var(--bg-deep);margin-bottom:1.25rem;font-size:clamp(2.75rem,6vw,4.25rem);font-weight:700;line-height:1.05}.hero-tagline[data-astro-cid-ge2uvauf]{color:var(--text-secondary);max-width:34rem;margin-bottom:1rem;font-size:1.125rem}.hero-location[data-astro-cid-ge2uvauf]{color:var(--text-muted);margin-bottom:2rem;font-size:.8rem}.hero-actions[data-astro-cid-ge2uvauf]{flex-wrap:wrap;gap:.75rem;display:flex}.hero-panel[data-astro-cid-ge2uvauf]{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem 1.35rem}.panel-row[data-astro-cid-ge2uvauf]{border-bottom:1px solid var(--border);flex-direction:column;gap:.2rem;padding:.7rem 0;display:flex}.panel-row[data-astro-cid-ge2uvauf] a[data-astro-cid-ge2uvauf]{color:var(--text);word-break:break-all;font-size:.9rem}.panel-row[data-astro-cid-ge2uvauf] a[data-astro-cid-ge2uvauf]:hover{color:var(--accent)}.panel-label[data-astro-cid-ge2uvauf]{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:.7rem}.panel-certs[data-astro-cid-ge2uvauf]{padding-top:.7rem}.panel-certs[data-astro-cid-ge2uvauf] p[data-astro-cid-ge2uvauf]{color:var(--text-secondary);margin-top:.35rem;font-size:.875rem}.hero-rule[data-astro-cid-ge2uvauf]{background:linear-gradient(90deg, transparent, var(--accent-line), transparent);height:1px}@media (width<=880px){.hero-grid[data-astro-cid-ge2uvauf]{grid-template-columns:1fr;align-items:start;gap:2rem}}.timeline[data-astro-cid-bl6cniha]{flex-direction:column;gap:0;margin-top:3rem;display:flex}.job[data-astro-cid-bl6cniha]{border-top:1px solid var(--border);grid-template-columns:12rem 1fr;gap:2rem;padding:2.25rem 0;display:grid}.job[data-astro-cid-bl6cniha]:last-child{border-bottom:1px solid var(--border)}.job-meta[data-astro-cid-bl6cniha]{flex-direction:column;gap:.4rem;display:flex}.job-period[data-astro-cid-bl6cniha]{color:var(--accent);font-size:.8rem}.job-location[data-astro-cid-bl6cniha]{color:var(--text-muted);font-size:.85rem;line-height:1.4}.job-role[data-astro-cid-bl6cniha]{letter-spacing:-.01em;font-size:1.25rem;font-weight:600}.job-company[data-astro-cid-bl6cniha]{color:var(--text-secondary);margin:.25rem 0 1.1rem;font-weight:500}.job-list[data-astro-cid-bl6cniha]{flex-direction:column;gap:.75rem;display:flex}.job-list[data-astro-cid-bl6cniha] li[data-astro-cid-bl6cniha]{color:var(--text-secondary);padding-left:1rem;font-size:.975rem;position:relative}.job-list[data-astro-cid-bl6cniha] li[data-astro-cid-bl6cniha]:before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;top:.65em;left:0}.job-projects[data-astro-cid-bl6cniha]{border-top:1px dashed var(--border);margin-top:1.25rem;padding-top:1.1rem}.job-projects-label[data-astro-cid-bl6cniha]{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.55rem;font-size:.7rem;display:block}.project-link[data-astro-cid-bl6cniha]{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-line);text-decoration:none}.project-link[data-astro-cid-bl6cniha]:hover{background:var(--accent);color:#fff;border-color:var(--accent)}@media (width<=720px){.job[data-astro-cid-bl6cniha]{grid-template-columns:1fr;gap:.75rem}}.skills-section[data-astro-cid-2zwc476k]{background:linear-gradient(#0000,#ffffff8c,#0000)}.skills-grid[data-astro-cid-2zwc476k]{grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.75rem;display:grid}.skill-block[data-astro-cid-2zwc476k]{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.35rem 1.25rem}.skill-label[data-astro-cid-2zwc476k]{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--border);margin-bottom:.9rem;padding-bottom:.65rem;font-size:.72rem}.skill-items[data-astro-cid-2zwc476k]{flex-direction:column;gap:.45rem;display:flex}.skill-items[data-astro-cid-2zwc476k] li[data-astro-cid-2zwc476k]{color:var(--text-secondary);font-size:.95rem}@media (width<=880px){.skills-grid[data-astro-cid-2zwc476k]{grid-template-columns:repeat(2,1fr)}}@media (width<=520px){.skills-grid[data-astro-cid-2zwc476k]{grid-template-columns:1fr}}.edu-grid[data-astro-cid-ew4vagfh]{grid-template-columns:1.3fr 1fr;gap:3rem;display:grid}.edu-card[data-astro-cid-ew4vagfh]{background:var(--bg-elevated);border:1px solid var(--border);border-left:3px solid var(--accent);margin-top:1.75rem;padding:1.5rem}.edu-card[data-astro-cid-ew4vagfh] h3[data-astro-cid-ew4vagfh]{margin-bottom:.35rem;font-size:1.15rem;font-weight:600}.edu-school[data-astro-cid-ew4vagfh]{color:var(--text-secondary);margin-bottom:.5rem}.edu-meta[data-astro-cid-ew4vagfh]{color:var(--text-muted);margin-bottom:1rem;font-size:.8rem}.edu-thesis[data-astro-cid-ew4vagfh]{color:var(--text-secondary);font-size:.95rem;line-height:1.55}.edu-thesis[data-astro-cid-ew4vagfh] .mono[data-astro-cid-ew4vagfh]{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:.35rem;font-size:.7rem;display:block}.cert-list[data-astro-cid-ew4vagfh]{flex-direction:column;gap:.75rem;margin-top:1.75rem;display:flex}.cert-list[data-astro-cid-ew4vagfh] li[data-astro-cid-ew4vagfh]{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);align-items:center;gap:.85rem;padding:1rem 1.1rem;font-size:.95rem;display:flex}.cert-mark[data-astro-cid-ew4vagfh]{background:var(--bg-deep);color:#fff;border-radius:var(--radius);flex-shrink:0;place-items:center;width:2.25rem;height:2.25rem;font-size:.7rem;display:grid}@media (width<=800px){.edu-grid[data-astro-cid-ew4vagfh]{grid-template-columns:1fr;gap:3.5rem}}.contact-section[data-astro-cid-he3spzz3]{padding-bottom:4rem}.contact-inner[data-astro-cid-he3spzz3]{background:var(--bg-deep);color:#e8edf2;border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;padding:2.75rem 2.5rem;display:flex}.contact-inner[data-astro-cid-he3spzz3] .section-label{color:#7eb8cc}.contact-inner[data-astro-cid-he3spzz3] .section-title{color:#fff}.contact-inner[data-astro-cid-he3spzz3] .section-lead{color:#a8b4c0}.contact-actions[data-astro-cid-he3spzz3]{flex-wrap:wrap;gap:.65rem;display:flex}.contact-inner[data-astro-cid-he3spzz3] .btn-primary{color:var(--bg-deep);background:#fff}.contact-inner[data-astro-cid-he3spzz3] .btn-primary:hover{color:var(--bg-deep);background:#dce4ea}.contact-inner[data-astro-cid-he3spzz3] .btn-ghost{color:#fff;border-color:#ffffff47}.contact-inner[data-astro-cid-he3spzz3] .btn-ghost:hover{color:#fff;background:#ffffff14;border-color:#fff}@media (width<=640px){.contact-inner[data-astro-cid-he3spzz3]{padding:2rem 1.35rem}}
