.hero[data-astro-cid-ge2uvauf]{padding-block:var(--space-2xl) var(--space-xl);position:relative;overflow:clip}.hero__network[data-astro-cid-ge2uvauf]{z-index:-1;pointer-events:none;opacity:.12;width:100%;height:100%;animation:22s ease-in-out infinite alternate network-breathe;position:absolute;inset:0}@keyframes network-breathe{0%{opacity:.08}to{opacity:.16}}@media (width<=880px){.hero__network[data-astro-cid-ge2uvauf]{opacity:.07}}.hero__layout[data-astro-cid-ge2uvauf]{align-items:start;gap:var(--space-xl);grid-template-columns:minmax(0,1fr) auto;display:grid}.hero__main[data-astro-cid-ge2uvauf]{min-width:0}.hero__avatar[data-astro-cid-ge2uvauf]{isolation:isolate;padding:var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);justify-self:end;margin-top:.25rem;position:relative}.hero__avatar[data-astro-cid-ge2uvauf]:before{content:"";z-index:-1;background:radial-gradient(circle, var(--accent) 0%, var(--accent-2) 55%, transparent 72%);opacity:.28;filter:blur(38px);pointer-events:none;position:absolute;inset:-20%}.hero__avatar-img[data-astro-cid-ge2uvauf]{object-fit:contain;border-radius:var(--radius);width:clamp(180px,19vw,300px);height:clamp(180px,19vw,300px);display:block}h1[data-astro-cid-ge2uvauf]{font-size:var(--text-display);max-width:22ch;margin-block:var(--space-md) var(--space-md)}.grad[data-astro-cid-ge2uvauf]{color:var(--accent)}@supports (background-clip:text){.grad[data-astro-cid-ge2uvauf]{background:linear-gradient(100deg, var(--accent), var(--accent-2));color:#0000;-webkit-background-clip:text;background-clip:text}}.sub[data-astro-cid-ge2uvauf]{max-width:52ch;font-size:var(--text-lg);color:var(--text-muted)}.cta[data-astro-cid-ge2uvauf]{gap:var(--space-sm);margin-top:var(--space-lg);flex-wrap:wrap;display:flex}.meta-strip[data-astro-cid-ge2uvauf]{gap:var(--space-xl) var(--space-2xl);margin-top:var(--space-2xl);padding-top:var(--space-lg);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.meta-strip[data-astro-cid-ge2uvauf]>div[data-astro-cid-ge2uvauf]{flex:13rem;max-width:22rem}.meta-strip[data-astro-cid-ge2uvauf] dt[data-astro-cid-ge2uvauf]{margin-bottom:.4rem}.meta-strip[data-astro-cid-ge2uvauf] dd[data-astro-cid-ge2uvauf]{font-size:var(--text-sm);line-height:var(--leading-snug);color:var(--text-muted)}.meta-strip[data-astro-cid-ge2uvauf] dd[data-astro-cid-ge2uvauf] span[data-astro-cid-ge2uvauf]{color:var(--accent)}@media (width<=780px){.hero__layout[data-astro-cid-ge2uvauf]{gap:var(--space-lg);grid-template-columns:1fr}.hero__avatar[data-astro-cid-ge2uvauf]{order:-1;justify-self:center}.hero__avatar-img[data-astro-cid-ge2uvauf]{width:clamp(140px,40vw,220px);height:clamp(140px,40vw,220px)}h1[data-astro-cid-ge2uvauf]{max-width:none}}.strip[data-astro-cid-fl7qxyb7]{border-block:1px solid var(--border);background:var(--bg-subtle)}.row[data-astro-cid-fl7qxyb7]{grid-template-columns:repeat(4,1fr);gap:0;display:grid}.stat[data-astro-cid-fl7qxyb7]{padding:var(--space-lg) var(--space-md);border-left:1px solid var(--border);gap:var(--space-2xs);z-index:1;transition:background var(--dur) var(--ease), transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease), border-radius var(--dur) var(--ease);background:0 0;border-radius:0;flex-direction:column;display:flex;position:relative;transform:scale(1)}.stat[data-astro-cid-fl7qxyb7]:first-child{border-left:0;padding-left:0}.stat[data-astro-cid-fl7qxyb7]:hover{background:var(--accent-2-weak);border-radius:var(--radius);z-index:2;transform:scale(1.08);box-shadow:0 18px 34px -14px #00000047}.value[data-astro-cid-fl7qxyb7]{font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.02em;color:var(--accent);transition:color var(--dur) var(--ease);font-weight:500}.stat[data-astro-cid-fl7qxyb7]:hover .value[data-astro-cid-fl7qxyb7]{color:var(--accent-2)}.label[data-astro-cid-fl7qxyb7]{font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-snug)}@media (width<=780px){.row[data-astro-cid-fl7qxyb7]{grid-template-columns:1fr 1fr}.stat[data-astro-cid-fl7qxyb7]{padding:var(--space-md)}.stat[data-astro-cid-fl7qxyb7]:nth-child(odd){border-left:0;padding-left:0}.stat[data-astro-cid-fl7qxyb7]:first-child,.stat[data-astro-cid-fl7qxyb7]:nth-child(2){border-bottom:1px solid var(--border)}}@media (width<=440px){.row[data-astro-cid-fl7qxyb7]{grid-template-columns:1fr}.stat[data-astro-cid-fl7qxyb7]{border-bottom:1px solid var(--border);border-left:0!important;padding-left:0!important}.stat[data-astro-cid-fl7qxyb7]:last-child{border-bottom:0}}.work__filters{margin-bottom:var(--space-lg);flex-wrap:wrap;gap:.5rem;display:flex}.work__filter{border:1px solid var(--border-strong);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease), background var(--dur) var(--ease);background:0 0;border-radius:999px;align-items:center;gap:.5ch;padding:.4rem .8rem;display:inline-flex}.work__filter:hover{color:var(--text);border-color:var(--text)}.work__filter[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--bg)}.work__count{font-family:var(--font-mono);opacity:.6;font-size:.68rem}.work__grid{gap:var(--space-md);grid-template-columns:repeat(2,1fr);list-style:none;display:grid}.work__card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:transform var(--dur) var(--ease), border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease)}.work__card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 20px 40px -22px #00000047}.work__link{gap:var(--space-2xs);padding:var(--space-md);flex-direction:column;height:100%;display:flex}.work__card-top{margin-bottom:var(--space-2xs);justify-content:space-between;align-items:center;display:flex}.work__index{font-size:var(--text-lg);color:var(--accent)}.work__meta{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);align-items:center;gap:.6rem;font-size:.7rem;display:inline-flex}.work__status{align-items:center;gap:.4ch;display:inline-flex}.work__status:before{content:"";background:currentColor;border-radius:999px;width:6px;height:6px}.work__status--shipped{color:#3f7d4e}.work__status--in-progress{color:var(--accent)}.work__status--archived{color:var(--text-faint)}.work__title{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.02em;color:var(--text);transition:color var(--dur) var(--ease);font-weight:500}.work__card:hover .work__title{color:var(--accent)}.work__summary{color:var(--text-muted);font-size:var(--text-sm);line-height:var(--leading-snug)}.work__tags{padding-top:var(--space-sm);flex-wrap:wrap;gap:.4rem;margin-top:auto;display:flex}.work__tag{font-family:var(--font-mono);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.15rem .45rem;font-size:.68rem}.work__cta{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--border);font-size:var(--text-sm);color:var(--text);transition:color var(--dur) var(--ease);align-items:center;gap:.5ch;font-weight:500;display:inline-flex}.work__card:hover .work__cta{color:var(--accent)}.work__arrow{color:var(--text-faint);transition:transform var(--dur) var(--ease), color var(--dur) var(--ease)}.work__card:hover .work__arrow{color:var(--accent);transform:translate(4px)}.work__empty{color:var(--text-muted);padding:var(--space-lg) 0}@media (width<=720px){.work__grid{grid-template-columns:1fr}}.xp[data-astro-cid-wncynjxn]{list-style:none}.xp__item[data-astro-cid-wncynjxn]{gap:var(--space-lg);padding-block:var(--space-lg);border-top:1px solid var(--border);grid-template-columns:12rem 1fr;display:grid}.xp__item[data-astro-cid-wncynjxn]:first-child{border-top:0;padding-top:0}.xp__when[data-astro-cid-wncynjxn]{font-size:var(--text-sm);letter-spacing:.1em;color:var(--accent);white-space:nowrap;padding-top:.5rem}.xp__title[data-astro-cid-wncynjxn]{font-size:var(--text-2xl);flex-wrap:wrap;align-items:baseline;gap:.6rem;display:flex}.xp__co[data-astro-cid-wncynjxn]{color:var(--accent)}.xp__badge[data-astro-cid-wncynjxn]{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:999px;align-self:center;padding:.1rem .5rem;font-size:.62rem}.xp__blurb[data-astro-cid-wncynjxn]{color:var(--text-muted);margin-top:var(--space-xs);max-width:60ch}.xp__points[data-astro-cid-wncynjxn]{margin-top:var(--space-sm);flex-direction:column;gap:.4rem;padding-left:1.1rem;display:flex}.xp__points[data-astro-cid-wncynjxn] li[data-astro-cid-wncynjxn]{color:var(--text);font-size:var(--text-sm);line-height:var(--leading-snug)}.xp__points[data-astro-cid-wncynjxn] li[data-astro-cid-wncynjxn]::marker{color:var(--text-faint)}.xp__group[data-astro-cid-wncynjxn]{margin-left:-1.1rem;list-style:none}.xp__group-label[data-astro-cid-wncynjxn]{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.3rem;font-size:.68rem;display:block}.xp__group[data-astro-cid-wncynjxn]+.xp__group[data-astro-cid-wncynjxn]{margin-top:.7rem}.xp__tags[data-astro-cid-wncynjxn]{margin-top:var(--space-sm);flex-wrap:wrap;gap:.4rem;display:flex}.xp__tag[data-astro-cid-wncynjxn]{font-family:var(--font-mono);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.15rem .45rem;font-size:.68rem}@media (width<=720px){.xp__item[data-astro-cid-wncynjxn]{gap:var(--space-sm);grid-template-columns:1fr}.xp__when[data-astro-cid-wncynjxn]{padding-top:0}}.recs[data-astro-cid-t5pspls5]{gap:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}.rec[data-astro-cid-t5pspls5]{gap:var(--space-md);padding:var(--space-md);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;display:flex}.rec--featured[data-astro-cid-t5pspls5]{padding:var(--space-lg);background:var(--accent-weak);border-color:#0000;grid-column:1/-1}.rec--featured[data-astro-cid-t5pspls5] blockquote[data-astro-cid-t5pspls5]{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.01em;max-width:56ch;font-weight:500}.rec[data-astro-cid-t5pspls5] blockquote[data-astro-cid-t5pspls5]{font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text)}.rec[data-astro-cid-t5pspls5] blockquote[data-astro-cid-t5pspls5]:before{content:"“";color:var(--accent);font-family:var(--font-display);margin-right:.1ch;font-size:1.4em;line-height:0}figcaption[data-astro-cid-t5pspls5]{padding-top:var(--space-sm);border-top:1px solid var(--border);flex-direction:column;gap:.15rem;margin-top:auto;display:flex}.rec--featured[data-astro-cid-t5pspls5] figcaption[data-astro-cid-t5pspls5]{border-top-color:var(--border-strong)}.rec__name[data-astro-cid-t5pspls5]{font-weight:600}.rec__role[data-astro-cid-t5pspls5]{font-size:var(--text-sm);color:var(--text-muted)}.rec__org[data-astro-cid-t5pspls5]{margin-top:.15rem;font-size:.68rem}@media (width<=700px){.recs[data-astro-cid-t5pspls5]{grid-template-columns:1fr}}.contact[data-astro-cid-he3spzz3]{gap:var(--space-2xl);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;display:grid}.contact__lead[data-astro-cid-he3spzz3] h2[data-astro-cid-he3spzz3]{font-size:var(--text-3xl)}.contact__lead[data-astro-cid-he3spzz3] p[data-astro-cid-he3spzz3]{color:var(--text-muted);max-width:42ch;margin-block:var(--space-sm) var(--space-lg);font-size:var(--text-lg)}.contact__links[data-astro-cid-he3spzz3]{gap:var(--space-sm);font-size:var(--text-lg);flex-direction:column;padding-top:.5rem;list-style:none;display:flex}@media (width<=780px){.contact[data-astro-cid-he3spzz3]{gap:var(--space-lg);grid-template-columns:1fr}}.edu[data-astro-cid-lcdefpme]{gap:var(--space-lg);margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--border);grid-template-columns:1fr 1fr;display:grid}.edu[data-astro-cid-lcdefpme] .mono[data-astro-cid-lcdefpme]{margin-bottom:var(--space-xs)}.edu__degree[data-astro-cid-lcdefpme]{font-weight:600}.edu__detail[data-astro-cid-lcdefpme]{color:var(--text-muted);font-size:var(--text-sm);max-width:44ch;margin-top:.2rem}.edu__years[data-astro-cid-lcdefpme]{margin-top:.3rem}.edu__certs[data-astro-cid-lcdefpme]{font-size:var(--text-sm);flex-direction:column;gap:.35rem;list-style:none;display:flex}.edu__certs[data-astro-cid-lcdefpme] li[data-astro-cid-lcdefpme]:before{content:"→ ";color:var(--text-faint)}.edu__certs[data-astro-cid-lcdefpme] a[data-astro-cid-lcdefpme]{color:inherit;text-underline-offset:2px;text-decoration:underline;text-decoration-color:var(--border-strong);transition:text-decoration-color .15s,color .15s}.edu__certs[data-astro-cid-lcdefpme] a[data-astro-cid-lcdefpme]:hover{color:var(--accent);text-decoration-color:var(--accent)}.about[data-astro-cid-lcdefpme]{gap:var(--space-xl);grid-template-columns:1.25fr 1fr;display:grid}.about[data-astro-cid-lcdefpme] p[data-astro-cid-lcdefpme]{color:var(--text)}.about[data-astro-cid-lcdefpme] p[data-astro-cid-lcdefpme]:first-child{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.01em;font-weight:500;line-height:var(--leading-snug)}.about[data-astro-cid-lcdefpme] p[data-astro-cid-lcdefpme]:last-child{font-size:var(--text-base);color:var(--text-muted);padding-top:.3rem}.section-head--lg[data-astro-cid-lcdefpme] h2[data-astro-cid-lcdefpme]{font-size:clamp(2.4rem,1.6rem + 3vw,3.6rem)}@media (width<=720px){.about[data-astro-cid-lcdefpme]{grid-template-columns:1fr}}@media (width<=620px){.edu[data-astro-cid-lcdefpme]{grid-template-columns:1fr}}
