.resume-page .resume-hero>p:not(.eyebrow,.page-lead){max-width:var(--measure);margin-top:var(--space-3);font-size:var(--text-small)}.resume-page .hero-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-5)0 0;padding:0;list-style:none}.resume-page .hero-meta li,.resume-page .stack li{padding:0.35rem 0.65rem;border:1px solid hsl(var(--line));border-radius:999px;font-family:var(--font-sans);font-size:var(--text-caption);line-height:1;color:hsl(var(--muted))}.resume-page section{padding-top:var(--space-10)}.resume-page .jobs{--marker-size: 4rem;--timeline-gap: var(--space-3);position:relative;display:flex;flex-direction:column;gap:var(--space-3)}.resume-page .jobs::before{content:"";position:absolute;top:calc(var(--marker-size)/2);bottom:calc(var(--marker-size)/2);left:calc(var(--marker-size)/2);width:1px;background:linear-gradient(var(--brand-start),var(--brand-end),hsl(var(--line)))}.resume-page .job{position:relative;margin-left:calc(var(--marker-size) + var(--timeline-gap));padding:var(--space-5);border:1px solid hsl(var(--line));border-radius:var(--radius-sm);background:hsl(var(--surface));transition:border-color 180ms ease,transform 180ms ease}.resume-page .job:hover{transform:translateX(4px);border-color:hsl(var(--accent)/0.55)}.resume-page .job-meta{margin:0 0 var(--space-1);font-family:var(--font-sans);line-height:1.2}.resume-page .job-meta>span:not(.marker-dates){font-size:var(--text-caption);font-weight:750;letter-spacing:0.08em;text-transform:uppercase;color:hsl(var(--accent))}.resume-page .job-meta .marker-dates{position:absolute;z-index:1;top:0;left:calc((var(--marker-size) + var(--timeline-gap))*-1);display:grid;place-items:center;width:var(--marker-size);height:var(--marker-size);padding:var(--space-2);border:1px solid hsl(var(--line));border-radius:50%;font-family:var(--font-sans);font-size:0.75rem;font-weight:700;line-height:1.15;text-align:center;color:hsl(var(--muted));background:hsl(var(--background))}.resume-page .job-meta .marker-dates>*{display:block;line-height:inherit}.resume-page .job-meta .marker-dates>*+*::before{content:" — "}.resume-page .job.current .job-meta .marker-dates{border-color:transparent;color:var(--on-brand);background:linear-gradient(135deg,var(--brand-start),var(--brand-end));box-shadow:0 0 24px hsl(var(--accent)/0.18)}.resume-page .job h3,.resume-page .education h3{font-size:var(--text-subheading);color:hsl(var(--heading))}.resume-page .job>p{max-width:58ch;margin-top:var(--space-3);font-size:var(--text-small);line-height:1.55}.resume-page .stack{display:flex;flex-wrap:wrap;gap:0.35rem;margin:var(--space-4)0 0;padding:0;list-style:none}.resume-page .job-link{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-4);padding:0.65rem 1.1rem;border-radius:999px;font-family:var(--font-sans);font-size:var(--text-caption);font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--on-brand);background:linear-gradient(135deg,var(--brand-start),var(--brand-end))}.resume-page .job-link:hover{color:var(--on-brand);filter:brightness(1.06)}.resume-page blockquote{margin:0 0 0 calc(var(--marker-size) + var(--timeline-gap));padding:var(--space-5) var(--space-6);border:1px solid hsl(var(--accent)/0.4);border-radius:var(--radius-sm);color:hsl(var(--heading));background:hsl(var(--accent)/0.08)}.resume-page blockquote p{max-width:48ch;font-size:clamp(1.175rem,1.8vw + 0.125rem,1.475rem);line-height:1.45}.resume-page blockquote footer{margin-top:var(--space-5);font-family:var(--font-sans);font-size:var(--text-caption);font-weight:700}.resume-page blockquote footer span{display:block;margin-top:var(--space-1);font-weight:400;color:hsl(var(--muted))}.resume-page .education{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.resume-page .earlier-list{margin:0;padding:0;list-style:none}.resume-page #earlier-title{margin-top:var(--space-12);margin-bottom:var(--space-4)}.resume-page .earlier-list li{display:grid;grid-template-columns:minmax(7rem,0.35fr) minmax(0,1fr);gap:var(--space-6);align-items:baseline;padding:var(--space-4)0;border-bottom:1px solid hsl(var(--line))}.resume-page .earlier-meta{font-family:var(--font-sans);font-size:var(--text-caption);color:hsl(var(--muted))}.resume-page .earlier-role{margin:0;font-family:var(--font-sans);font-size:var(--text-small);font-weight:700;color:hsl(var(--heading))}.resume-page .earlier-role span{font-weight:400;color:hsl(var(--muted))}.resume-page .education article{padding:var(--space-5) var(--space-5) var(--space-5)0;border-bottom:1px solid hsl(var(--line))}.resume-page .education article:nth-child(even){padding-left:var(--space-5);border-left:1px solid hsl(var(--line))}.resume-page .education-dates{display:block;margin-bottom:var(--space-2);font-family:var(--font-sans);font-size:var(--text-caption);color:hsl(var(--muted))}.resume-page .education p{margin-top:var(--space-2);font-size:var(--text-small)}.resume-page .resume-footer{margin-top:var(--space-12);padding-top:var(--space-6);border-top:1px solid hsl(var(--line))}.resume-page .resume-footer p{font-family:var(--font-sans);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:0.12em;color:hsl(var(--muted))}.resume-page .resume-footer a{display:flex;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-2);font-family:var(--font-sans);font-size:clamp(1.875rem,4vw + 0.125rem,3.625rem);font-weight:750;line-height:1;letter-spacing:-0.045em}.resume-page .resume-footer a span{color:hsl(var(--accent))}@media (hover:none){.resume-page .job:hover{transform:none}}@media (max-width:767px){.resume-page section{padding-top:var(--space-8)}.resume-page .jobs{gap:var(--space-2)}.resume-page .jobs::before{display:none}.resume-page .job{margin-left:0;padding:var(--space-4)}.resume-page .job-meta{display:flex;flex-direction:column-reverse;gap:0.3rem}.resume-page .job-meta .marker-dates,.resume-page .job.current .job-meta .marker-dates{position:static;display:block;width:auto;height:auto;padding:0;border:0;background:none;box-shadow:none;font-size:0.775rem;letter-spacing:0.06em;text-align:left;place-items:initial;color:hsl(var(--muted))}.resume-page .job-meta .marker-dates>*{display:inline}.resume-page .job>p{margin-top:var(--space-2)}.resume-page .stack{margin-top:var(--space-3)}.resume-page .stack li{font-size:0.775rem}.resume-page .education{grid-template-columns:1fr}.resume-page .earlier-list li{grid-template-columns:1fr;gap:var(--space-1)}.resume-page .education article,.resume-page .education article:nth-child(even){padding:var(--space-4)0;border-left:0}.resume-page blockquote{margin-left:0;padding:var(--space-4);border-left:0.3rem solid hsl(var(--accent))}.resume-page .resume-footer{margin-top:var(--space-8)}}
.sz-sidebar{display:flex;flex-direction:column;position:sticky;height:100vh;top:0;padding:6rem 0 3rem;isolation:isolate}.sz-sidebar::before{content:"";position:absolute;z-index:-1;width:19rem;height:19rem;left:-10rem;top:1rem;border-radius:50%;background:hsl(var(--accent));filter:blur(100px);opacity:0.2;pointer-events:none;transition:opacity 600ms ease}.sz-sidebar .site-name{max-width:none;white-space:nowrap;font-size:1.625rem;font-weight:850;line-height:0.92;letter-spacing:-0.055em;margin:1.5rem 0 1rem;color:hsl(var(--heading))}.sz-sidebar .site-name a{color:inherit}.sz-sidebar .site-name a:hover{color:hsl(var(--accent))}.sz-sidebar .identity{display:block}.sz-sidebar .tagline{font-family:var(--font-sans);font-size:0.75rem;font-weight:500;letter-spacing:0.14em;text-transform:uppercase;margin-bottom:1.25rem;color:transparent;background:linear-gradient(90deg,var(--brand-start),var(--brand-end));background-clip:text;-webkit-background-clip:text}.sz-sidebar .intro{max-width:20rem;font-size:1.125rem;color:hsl(var(--typography))}.sz-sidebar nav{display:flex;flex-direction:column;align-items:flex-start;gap:0.5rem;margin-top:3rem}.sz-sidebar nav a{display:inline-flex;gap:0.8rem;align-items:baseline;font-family:var(--font-sans);font-size:0.985rem;letter-spacing:0.03em;padding:0.25rem 0}.sz-sidebar nav a[aria-current="page"]{color:hsl(var(--accent))}.sz-sidebar nav a[aria-current="page"]::after{content:"";width:1.5rem;height:1px;background:currentColor}.sz-sidebar nav a span{font-size:0.75rem;color:hsl(var(--muted))}.sz-sidebar .menu-toggle{display:none}.sz-sidebar .navigation-panel{display:contents}.sz-sidebar .panel-label,.sz-sidebar .mobile-theme,.sz-sidebar .menu-backdrop{display:none}@media (max-width:767px){.sz-sidebar{position:relative;z-index:50;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;height:auto;min-height:0;padding:0.65rem 0;border-bottom:1px solid hsl(var(--line))}.sz-sidebar.menu-open{z-index:100}.sz-sidebar::before{width:15rem;height:15rem;left:-8rem;top:-3rem;filter:blur(80px)}.sz-sidebar .site-name{margin:0;font-size:clamp(1.275rem,6vw + 0.125rem,1.625rem)}.sz-sidebar .tagline{margin:0;font-size:0.75rem;white-space:nowrap}.sz-sidebar .intro{display:none}.sz-sidebar>div:first-child{display:contents}.sz-sidebar .identity{grid-column:1;grid-row:1;display:flex;align-items:center;gap:0.55rem;min-width:0;min-height:3rem}.sz-sidebar .menu-toggle{position:relative;z-index:62;grid-column:2;grid-row:1;align-self:center;justify-content:flex-end;width:3rem;padding:0;display:inline-flex;align-items:center;gap:0.65rem;min-width:3rem;min-height:3rem;padding:0 0.25rem;border:0;color:hsl(var(--heading));background:transparent;cursor:pointer}.sz-sidebar .menu-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sz-sidebar .menu-icon{position:relative;display:block;width:1.4rem;height:1rem}.sz-sidebar .menu-icon i{position:absolute;left:0;width:100%;height:2px;background:currentColor;transition:top 180ms ease,transform 180ms ease}.sz-sidebar .menu-icon i:first-child{top:0.2rem}.sz-sidebar .menu-icon i:last-child{top:0.7rem}.sz-sidebar.menu-open .menu-icon i:first-child{top:0.45rem;transform:rotate(45deg)}.sz-sidebar.menu-open .menu-icon i:last-child{top:0.45rem;transform:rotate(-45deg)}.sz-sidebar.menu-open .menu-toggle{position:fixed;top:1.25rem;right:1.25rem}.sz-sidebar .navigation-panel{position:fixed;z-index:60;inset:0 0 0 auto;display:flex;flex-direction:column;width:min(22rem,88vw);height:auto;max-height:100dvh;overflow-y:auto;padding:2rem 1.5rem max(2rem,env(safe-area-inset-bottom));border-left:1px solid hsl(var(--line));background:hsl(var(--surface));box-shadow:-24px 0 60px hsl(0 0% 0%/0.25);transform:translateX(105%);visibility:hidden;transition:transform 240ms cubic-bezier(0.2,0.7,0.2,1),visibility 0s linear 240ms}.sz-sidebar.menu-open .navigation-panel{transform:translateX(0);visibility:visible;transition-delay:0s}.sz-sidebar .panel-label{display:block;margin:0 0 2rem;font-family:var(--font-sans);font-size:0.775rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:hsl(var(--muted))}.sz-sidebar nav{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0;border-top:1px solid hsl(var(--line));border-bottom:1px solid hsl(var(--line))}.sz-sidebar nav a{min-height:3.25rem;width:100%;align-items:center;padding:0.75rem 0;font-size:0.945rem}.sz-sidebar nav a+a{border-top:1px solid hsl(var(--line))}.sz-sidebar .mobile-theme{display:block;flex:0 0 auto;margin-top:auto;padding-top:1.5rem;border-top:1px solid hsl(var(--line))}.sz-sidebar .mobile-theme>p{margin:0 0 0.85rem;font-family:var(--font-sans);font-size:0.775rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:hsl(var(--muted))}.sz-sidebar .mobile-theme>div{display:grid;grid-template-columns:repeat(3,1fr);gap:0.35rem}.sz-sidebar .mobile-theme button{min-height:2.75rem;border:1px solid hsl(var(--line));border-radius:999px;font-family:var(--font-sans);font-size:0.825rem;color:hsl(var(--muted));background:transparent}.sz-sidebar .mobile-theme button[aria-pressed="true"]{border-color:transparent;color:var(--on-brand);background:linear-gradient(135deg,var(--brand-start),var(--brand-end))}.sz-sidebar .menu-backdrop{position:fixed;z-index:59;inset:0;display:block;width:100%;height:100%;border:0;background:hsl(0 0% 0%/0.48);opacity:0;visibility:hidden;transition:opacity 240ms ease,visibility 0s linear 240ms}.sz-sidebar.menu-open .menu-backdrop{opacity:1;visibility:visible;transition-delay:0s}}
.sz-footer{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2rem 0 3rem;border-top:1px solid hsl(var(--line));font-family:var(--font-sans);font-size:0.85rem;color:hsl(var(--muted))}.sz-footer p{margin:0}.sz-footer nav{display:flex;flex-wrap:wrap;gap:1.25rem}.sz-footer a{min-height:2.75rem;display:inline-flex;align-items:center}@media (max-width:767px){.sz-footer{flex-direction:column;align-items:flex-start;padding-bottom:3rem}.sz-footer nav{width:100%;justify-content:space-between;gap:0.75rem}}