:root{--bg: oklch(.965 .012 75);--bg-2: oklch(.925 .018 75);--bg-3: oklch(.89 .02 75);--ink: oklch(.2 .015 50);--ink-2: oklch(.33 .012 50);--muted: oklch(.52 .018 60);--rule: oklch(.2 .015 50 / .18);--rule-strong: oklch(.2 .015 50 / .55);--accent: oklch(.56 .18 30);--accent-soft: oklch(.56 .18 30 / .1);--success: oklch(.62 .15 145);--font-display: "Instrument Serif", "Times New Roman", serif;--font-body: "Source Serif 4", Georgia, serif;--font-sans: "Inter Tight", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--max: 1240px;--gutter: clamp(20px, 4vw, 56px);--t: .32s cubic-bezier(.2, .7, .2, 1)}[data-theme=dark]{--bg: oklch(.175 .012 60);--bg-2: oklch(.235 .012 60);--bg-3: oklch(.285 .012 60);--ink: oklch(.95 .012 75);--ink-2: oklch(.82 .012 75);--muted: oklch(.62 .012 60);--rule: oklch(.95 .012 75 / .14);--rule-strong: oklch(.95 .012 75 / .45);--accent: oklch(.72 .17 35);--accent-soft: oklch(.72 .17 35 / .14)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased;transition:background var(--t),color var(--t)}::selection{background:var(--accent);color:var(--bg)}a{color:inherit}.container{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.kbd{font-family:var(--font-mono);font-size:11px;padding:2px 6px;border:1px solid var(--rule-strong);border-radius:4px;background:var(--bg-2);color:var(--ink-2)}.chip{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;padding:5px 10px;border:1px solid var(--rule-strong);border-radius:999px;color:var(--ink-2);background:transparent;white-space:nowrap;cursor:default;transition:background var(--t),color var(--t),border-color var(--t)}.chip.is-interactive{cursor:pointer}.chip.is-interactive:hover{background:var(--bg-2);color:var(--ink)}.chip.is-active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chip .dot{width:7px;height:7px;border-radius:50%;background:var(--success);display:inline-block}.btn{appearance:none;background:transparent;border:1px solid var(--ink);color:var(--ink);font-family:var(--font-sans);font-size:14px;letter-spacing:.01em;padding:10px 16px;border-radius:999px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:background var(--t),color var(--t),transform .18s ease,border-color var(--t)}.btn:hover{background:var(--ink);color:var(--bg)}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--ink);color:var(--bg)}.btn--primary:hover{background:var(--accent);border-color:var(--accent);color:#fff}.btn--ghost{border-color:var(--rule-strong)}.btn .arrow{transition:transform .25s ease}.btn:hover .arrow{transform:translate(3px)}.nav{position:sticky;top:0;z-index:40;background:color-mix(in oklab,var(--bg) 85%,transparent);backdrop-filter:saturate(140%) blur(10px);-webkit-backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--rule);transition:background var(--t),border-color var(--t)}.nav__inner{display:flex;align-items:center;gap:20px;padding:14px var(--gutter);max-width:var(--max);margin:0 auto}.nav__brand{font-family:var(--font-display);font-size:22px;letter-spacing:-.01em;text-decoration:none}.nav__brand small{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;color:var(--muted);margin-left:8px}.nav__links{display:flex;gap:24px;margin-left:auto;font-family:var(--font-sans);font-size:13px}.nav__links a,.nav__links button{text-decoration:none;color:var(--ink-2);transition:color var(--t);background:none;border:none;cursor:pointer;font-family:var(--font-sans);font-size:13px;padding:0}.nav__links a:hover,.nav__links button:hover{color:var(--ink)}.nav__links .num{font-family:var(--font-mono);font-size:10px;color:var(--muted);margin-right:6px}.nav__actions{display:flex;align-items:center;gap:10px}.icon-btn{appearance:none;background:transparent;border:1px solid var(--rule-strong);color:var(--ink-2);width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--t),color var(--t),border-color var(--t)}.icon-btn:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.cmdk-trigger{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-sans);font-size:13px;color:var(--muted);padding:7px 12px;border-radius:999px;border:1px solid var(--rule-strong);background:transparent;cursor:pointer;transition:background var(--t),color var(--t),border-color var(--t)}.cmdk-trigger:hover{background:var(--bg-2);color:var(--ink)}.section{padding:clamp(60px,8vw,100px) 0;border-bottom:1px solid var(--rule)}.section__head{display:grid;grid-template-columns:1fr 1.8fr;gap:24px;margin-bottom:56px;align-items:end}.section__head .eyebrow{margin-bottom:12px;display:block}.section__title{font-family:var(--font-display);font-size:clamp(40px,5.5vw,72px);line-height:.95;letter-spacing:-.02em;margin:0}.section__title em{font-style:italic;color:var(--accent)}.section__intro{font-family:var(--font-body);font-size:clamp(17px,1.4vw,19px);line-height:1.55;color:var(--ink-2);max-width:56ch;margin:0;text-wrap:pretty}.footer{padding:32px 0 48px;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}.footer__inner{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between}.modal{position:fixed;inset:0;z-index:80;display:none;background:color-mix(in oklab,var(--bg) 30%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:clamp(20px,4vw,60px);overflow-y:auto;animation:fadeIn .25s ease-out}.modal[aria-hidden=false]{display:flex;align-items:flex-start;justify-content:center}.modal__dialog{background:var(--bg);border:1px solid var(--rule-strong);border-radius:6px;width:min(960px,100%);padding:clamp(28px,4vw,56px);position:relative;animation:rise .32s cubic-bezier(.2,.7,.2,1);box-shadow:0 30px 80px -20px #00000040}.modal__close{position:absolute;top:18px;right:18px;background:transparent;border:1px solid var(--rule-strong);width:36px;height:36px;border-radius:50%;color:var(--ink-2);cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background var(--t),color var(--t)}.modal__close:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.modal__eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;display:block}.modal__title{font-family:var(--font-display);font-size:clamp(48px,6vw,80px);line-height:.95;letter-spacing:-.02em;margin:0 0 24px}.modal__lede{font-family:var(--font-body);font-size:clamp(19px,1.6vw,22px);line-height:1.5;color:var(--ink-2);margin:0 0 32px;text-wrap:pretty}.modal__image{aspect-ratio:4/3;margin:0 0 32px;border:1px solid var(--rule-strong);border-radius:4px;overflow:hidden;display:flex;align-items:center;justify-content:center}.modal__image img{width:100%;height:100%;object-fit:cover;display:block}.modal__image:not(:has(img)){background:var(--bg-2);background-image:repeating-linear-gradient(135deg,transparent 0 14px,color-mix(in oklab,var(--ink) 6%,transparent) 14px 15px)}.modal__image:not(:has(img)):after{content:attr(data-label);font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;color:var(--muted);background:var(--bg);padding:8px 14px;border:1px solid var(--rule-strong);border-radius:999px}.modal h3{font-family:var(--font-display);font-size:26px;margin:28px 0 12px;letter-spacing:-.005em}.modal p,.modal li{font-family:var(--font-body);font-size:17px;line-height:1.6;color:var(--ink-2);margin:0 0 12px;text-wrap:pretty}.modal ul{padding-left:0;list-style:none}.modal ul li{padding-left:22px;position:relative}.modal ul li:before{content:"→";position:absolute;left:0;color:var(--accent)}.modal__decisions{display:grid;grid-template-columns:1fr;gap:12px}.modal__decision{border-left:3px solid var(--accent);background:var(--accent-soft);padding:16px 20px;border-radius:0 4px 4px 0}.modal__decision strong{font-family:var(--font-display);font-size:19px;display:block;margin-bottom:4px;font-weight:400}.modal__footer{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid var(--rule)}.cmdk{position:fixed;inset:0;z-index:90;display:none;align-items:flex-start;justify-content:center;padding-top:18vh;background:color-mix(in oklab,var(--bg) 30%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:fadeIn .18s ease-out}.cmdk[aria-hidden=false]{display:flex}.cmdk__panel{width:min(560px,92vw);background:var(--bg);border:1px solid var(--rule-strong);border-radius:12px;overflow:hidden;box-shadow:0 30px 80px -20px #00000040;animation:rise .22s cubic-bezier(.2,.7,.2,1)}.cmdk__input{width:100%;border:0;outline:0;padding:18px 22px;font-family:var(--font-body);font-size:17px;background:transparent;color:var(--ink);border-bottom:1px solid var(--rule)}.cmdk__input::placeholder{color:var(--muted)}.cmdk__list{max-height:56vh;overflow-y:auto;padding:8px}.cmdk__group{padding:6px 14px 4px;font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.cmdk__item{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:6px;cursor:pointer;font-family:var(--font-body);font-size:15px;color:var(--ink)}.cmdk__item[aria-selected=true]{background:var(--bg-2)}.cmdk__item .ico{font-family:var(--font-mono);font-size:11px;color:var(--muted);width:18px}.cmdk__item small{margin-left:auto;font-family:var(--font-mono);font-size:10px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.cmdk__empty{padding:20px;text-align:center;font-family:var(--font-body);font-size:14px;font-style:italic;color:var(--muted)}.cmdk__footer{padding:10px 14px;border-top:1px solid var(--rule);font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;color:var(--muted);display:flex;gap:16px}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.is-in{opacity:1;transform:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(max-width:860px){.nav__links,.cmdk-trigger span:first-child{display:none}}.hero[data-astro-cid-bbe6dxrz]{padding:clamp(70px,12vw,140px) 0 clamp(60px,10vw,110px);border-bottom:1px solid var(--rule)}.hero__eyebrow[data-astro-cid-bbe6dxrz]{display:flex;align-items:center;gap:14px;margin-bottom:36px}.hero__eyebrow[data-astro-cid-bbe6dxrz] .line[data-astro-cid-bbe6dxrz]{flex:1;height:1px;background:var(--rule-strong);max-width:80px}.hero__title[data-astro-cid-bbe6dxrz]{font-family:var(--font-display);font-weight:400;font-size:clamp(60px,10vw,140px);line-height:.94;letter-spacing:-.025em;margin:0 0 28px}.hero__title[data-astro-cid-bbe6dxrz] em[data-astro-cid-bbe6dxrz]{font-style:italic;color:var(--accent)}.hero__lede[data-astro-cid-bbe6dxrz]{font-family:var(--font-body);font-size:clamp(20px,2.2vw,26px);line-height:1.45;color:var(--ink-2);max-width:38ch;margin:0 0 36px;text-wrap:pretty}.hero__cta[data-astro-cid-bbe6dxrz]{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:56px}.hero__meta[data-astro-cid-bbe6dxrz]{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;padding-top:36px;border-top:1px solid var(--rule)}.hero__meta[data-astro-cid-bbe6dxrz]>div[data-astro-cid-bbe6dxrz]{display:flex;flex-direction:column;gap:6px}.hero__meta[data-astro-cid-bbe6dxrz] .label[data-astro-cid-bbe6dxrz]{font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.hero__meta[data-astro-cid-bbe6dxrz] .value[data-astro-cid-bbe6dxrz]{font-family:var(--font-display);font-size:22px;color:var(--ink)}.hero__meta[data-astro-cid-bbe6dxrz] .value[data-astro-cid-bbe6dxrz] small[data-astro-cid-bbe6dxrz]{font-family:var(--font-body);font-size:14px;color:var(--muted);display:block;margin-top:2px}@media(max-width:560px){.hero__meta[data-astro-cid-bbe6dxrz]{grid-template-columns:1fr}}.work__filters[data-astro-cid-amng4zvp]{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:40px;padding-bottom:20px;border-bottom:1px solid var(--rule)}.work__filters[data-astro-cid-amng4zvp] .label[data-astro-cid-amng4zvp]{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-right:8px}.case[data-astro-cid-amng4zvp]{display:grid;grid-template-columns:5fr 7fr;gap:clamp(28px,4vw,56px);padding:clamp(40px,6vw,64px) 0;border-bottom:1px solid var(--rule);align-items:start;position:relative}.case[data-astro-cid-amng4zvp]:last-child{border-bottom:0}.case[data-astro-cid-amng4zvp].case--reverse>.case__media[data-astro-cid-amng4zvp]{order:2}.case[data-astro-cid-amng4zvp].case--reverse>.case__body[data-astro-cid-amng4zvp]{order:1}.case[data-astro-cid-amng4zvp][hidden]{display:none}.case__image[data-astro-cid-amng4zvp]{position:relative;aspect-ratio:4/3;background:var(--bg-2);border:1px solid var(--rule-strong);border-radius:4px;overflow:hidden;display:flex;align-items:center;justify-content:center}.case__image[data-astro-cid-amng4zvp] img[data-astro-cid-amng4zvp]{width:100%;height:100%;object-fit:cover;display:block}.case__image[data-astro-cid-amng4zvp]:not(:has(img)){background-image:repeating-linear-gradient(135deg,transparent 0 14px,color-mix(in oklab,var(--ink) 6%,transparent) 14px 15px)}.case__image[data-astro-cid-amng4zvp]:not(:has(img)):after{content:attr(data-label);font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;color:var(--muted);background:var(--bg);padding:6px 12px;border:1px solid var(--rule-strong);border-radius:999px}.case__num[data-astro-cid-amng4zvp]{position:absolute;top:-8px;left:-8px;font-family:var(--font-display);font-size:clamp(60px,8vw,110px);line-height:.8;color:var(--accent);z-index:2;pointer-events:none}.case__num[data-astro-cid-amng4zvp].is-right{left:auto;right:-8px}.case__meta[data-astro-cid-amng4zvp]{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}.case__meta[data-astro-cid-amng4zvp] .status[data-astro-cid-amng4zvp]{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2)}.case__meta[data-astro-cid-amng4zvp] .status[data-astro-cid-amng4zvp] .dot[data-astro-cid-amng4zvp]{width:6px;height:6px;border-radius:50%;background:var(--success)}.case__meta[data-astro-cid-amng4zvp] .status[data-astro-cid-amng4zvp].is-draft .dot[data-astro-cid-amng4zvp]{background:var(--muted)}.case__title[data-astro-cid-amng4zvp]{font-family:var(--font-display);font-size:clamp(40px,5.5vw,64px);line-height:1;letter-spacing:-.02em;margin:0 0 16px}.case__pitch[data-astro-cid-amng4zvp]{font-family:var(--font-body);font-size:clamp(19px,1.6vw,22px);line-height:1.45;color:var(--ink);margin:0 0 28px;text-wrap:pretty}.case__cols[data-astro-cid-amng4zvp]{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-bottom:28px}.case__cols[data-astro-cid-amng4zvp] h4[data-astro-cid-amng4zvp]{font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}.case__cols[data-astro-cid-amng4zvp] p[data-astro-cid-amng4zvp]{font-family:var(--font-body);font-size:15.5px;line-height:1.5;color:var(--ink-2);margin:0;text-wrap:pretty}.case__decision[data-astro-cid-amng4zvp]{border:1px dashed var(--rule-strong);border-radius:6px;padding:18px 22px;margin-bottom:24px;background:var(--accent-soft)}.case__decision[data-astro-cid-amng4zvp] .eyebrow[data-astro-cid-amng4zvp]{display:block;margin-bottom:6px}.case__decision[data-astro-cid-amng4zvp] blockquote[data-astro-cid-amng4zvp]{font-family:var(--font-display);font-style:italic;font-size:22px;line-height:1.3;margin:0;color:var(--ink);letter-spacing:-.005em}.case__decision[data-astro-cid-amng4zvp] blockquote[data-astro-cid-amng4zvp]:before{content:'"';color:var(--accent);margin-right:2px}.case__decision[data-astro-cid-amng4zvp] blockquote[data-astro-cid-amng4zvp]:after{content:'"';color:var(--accent);margin-left:2px}.case__tags[data-astro-cid-amng4zvp]{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}.case__actions[data-astro-cid-amng4zvp]{display:flex;flex-wrap:wrap;gap:10px}@media(max-width:860px){.case[data-astro-cid-amng4zvp]{grid-template-columns:1fr}.case[data-astro-cid-amng4zvp].case--reverse>.case__media[data-astro-cid-amng4zvp]{order:-1}.case[data-astro-cid-amng4zvp].case--reverse>.case__body[data-astro-cid-amng4zvp]{order:1}.case__cols[data-astro-cid-amng4zvp]{grid-template-columns:1fr;gap:16px}.case__media[data-astro-cid-amng4zvp]{position:relative}}.about[data-astro-cid-v2cbyr3p]{display:grid;grid-template-columns:1fr 1.6fr;gap:clamp(28px,4vw,56px);align-items:start}.about__portrait[data-astro-cid-v2cbyr3p]{position:relative;aspect-ratio:4/5;border:1px solid var(--rule-strong);border-radius:4px;overflow:hidden}.about__portrait[data-astro-cid-v2cbyr3p] img[data-astro-cid-v2cbyr3p]{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}.about__prose[data-astro-cid-v2cbyr3p] p[data-astro-cid-v2cbyr3p]{font-family:var(--font-body);font-size:clamp(18px,1.5vw,21px);line-height:1.55;margin:0 0 18px;color:var(--ink-2);text-wrap:pretty}.about__prose[data-astro-cid-v2cbyr3p] p[data-astro-cid-v2cbyr3p]:first-child:first-letter{font-family:var(--font-display);font-size:4.4em;float:left;line-height:.9;padding:6px 10px 0 0;color:var(--accent)}.about__prose[data-astro-cid-v2cbyr3p] .signature[data-astro-cid-v2cbyr3p]{font-family:var(--font-display);font-style:italic;font-size:28px;color:var(--ink);margin-top:16px}.philosophy[data-astro-cid-v2cbyr3p]{margin-top:56px;padding-top:40px;border-top:1px solid var(--rule)}.philosophy__title[data-astro-cid-v2cbyr3p]{font-family:var(--font-display);font-size:clamp(28px,3vw,40px);margin:0 0 28px;letter-spacing:-.01em}.philosophy__list[data-astro-cid-v2cbyr3p]{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;list-style:none;padding:0;margin:0}.philosophy__list[data-astro-cid-v2cbyr3p] li[data-astro-cid-v2cbyr3p]{display:flex;flex-direction:column;gap:8px}.philosophy__list[data-astro-cid-v2cbyr3p] .num[data-astro-cid-v2cbyr3p]{font-family:var(--font-display);font-size:36px;color:var(--accent);line-height:1}.philosophy__list[data-astro-cid-v2cbyr3p] h4[data-astro-cid-v2cbyr3p]{font-family:var(--font-display);font-size:22px;margin:0;letter-spacing:-.005em}.philosophy__list[data-astro-cid-v2cbyr3p] p[data-astro-cid-v2cbyr3p]{font-family:var(--font-body);font-size:14.5px;line-height:1.5;color:var(--muted);margin:0;text-wrap:pretty}@media(max-width:860px){.about[data-astro-cid-v2cbyr3p]{grid-template-columns:1fr}.about__portrait[data-astro-cid-v2cbyr3p]{aspect-ratio:4/3;max-height:320px}.about__prose[data-astro-cid-v2cbyr3p] p[data-astro-cid-v2cbyr3p]:first-child:first-letter{font-size:3.4em}.philosophy__list[data-astro-cid-v2cbyr3p]{grid-template-columns:1fr 1fr}}@media(max-width:560px){.philosophy__list[data-astro-cid-v2cbyr3p]{grid-template-columns:1fr}}.experience[data-astro-cid-xpq65ryk]{display:grid;grid-template-columns:1fr 2fr;gap:clamp(28px,4vw,56px)}.exp__date[data-astro-cid-xpq65ryk]{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}.exp__role[data-astro-cid-xpq65ryk]{font-family:var(--font-display);font-size:clamp(28px,3vw,38px);line-height:1.1;margin:8px 0 4px;letter-spacing:-.01em}.exp__company[data-astro-cid-xpq65ryk]{font-family:var(--font-body);font-style:italic;color:var(--ink-2);font-size:18px;margin-bottom:18px}.exp__bullets[data-astro-cid-xpq65ryk]{list-style:none;padding:0;margin:0 0 18px}.exp__bullets[data-astro-cid-xpq65ryk] li[data-astro-cid-xpq65ryk]{font-family:var(--font-body);font-size:17px;line-height:1.55;color:var(--ink-2);padding-left:22px;position:relative;margin-bottom:10px;text-wrap:pretty}.exp__bullets[data-astro-cid-xpq65ryk] li[data-astro-cid-xpq65ryk]:before{content:"→";position:absolute;left:0;color:var(--accent);font-family:var(--font-mono)}.exp__stack[data-astro-cid-xpq65ryk]{display:flex;flex-wrap:wrap;gap:6px}.exp__status[data-astro-cid-xpq65ryk]{margin-top:40px;padding-top:24px;border-top:1px solid var(--rule);font-family:var(--font-display);font-style:italic;font-size:22px;color:var(--ink-2)}.exp__status[data-astro-cid-xpq65ryk] .underline[data-astro-cid-xpq65ryk]{background:var(--accent-soft);padding:0 4px}@media(max-width:860px){.experience[data-astro-cid-xpq65ryk]{grid-template-columns:1fr}}.stack__grid[data-astro-cid-ab4ihpzs]{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.stack__group[data-astro-cid-ab4ihpzs] h4[data-astro-cid-ab4ihpzs]{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--rule)}.stack__group[data-astro-cid-ab4ihpzs] ul[data-astro-cid-ab4ihpzs]{list-style:none;padding:0;margin:0}.stack__group[data-astro-cid-ab4ihpzs] li[data-astro-cid-ab4ihpzs]{font-family:var(--font-body);font-size:17px;padding:6px 0;color:var(--ink);display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px dotted var(--rule)}.stack__group[data-astro-cid-ab4ihpzs] li[data-astro-cid-ab4ihpzs]:last-child{border-bottom:0}.stack__group[data-astro-cid-ab4ihpzs] li[data-astro-cid-ab4ihpzs] small[data-astro-cid-ab4ihpzs]{font-family:var(--font-mono);font-size:10px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.certs[data-astro-cid-ab4ihpzs]{margin-top:56px;padding-top:32px;border-top:1px solid var(--rule)}.certs[data-astro-cid-ab4ihpzs] h4[data-astro-cid-ab4ihpzs]{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 16px}.certs__list[data-astro-cid-ab4ihpzs]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 24px;list-style:none;padding:0;margin:0}.certs__list[data-astro-cid-ab4ihpzs] li[data-astro-cid-ab4ihpzs]{font-family:var(--font-body);font-size:15px;padding:6px 0;color:var(--ink-2)}.certs__list[data-astro-cid-ab4ihpzs] li[data-astro-cid-ab4ihpzs] a[data-astro-cid-ab4ihpzs]{text-decoration:none;color:inherit;border-bottom:1px solid var(--rule);padding-bottom:1px}.certs__list[data-astro-cid-ab4ihpzs] li[data-astro-cid-ab4ihpzs] a[data-astro-cid-ab4ihpzs]:hover{color:var(--accent);border-color:var(--accent)}.certs__list[data-astro-cid-ab4ihpzs] li[data-astro-cid-ab4ihpzs] .yr[data-astro-cid-ab4ihpzs]{font-family:var(--font-mono);font-size:11px;color:var(--muted);margin-right:8px}@media(max-width:860px){.stack__grid[data-astro-cid-ab4ihpzs]{grid-template-columns:repeat(2,1fr)}.certs__list[data-astro-cid-ab4ihpzs]{grid-template-columns:1fr}}@media(max-width:560px){.stack__grid[data-astro-cid-ab4ihpzs]{grid-template-columns:1fr}}.contact[data-astro-cid-xmivup5a]{padding:clamp(80px,12vw,140px) 0;border-bottom:1px solid var(--rule)}.contact__title[data-astro-cid-xmivup5a]{font-family:var(--font-display);font-size:clamp(56px,9vw,130px);line-height:.95;letter-spacing:-.025em;margin:12px 0 24px}.contact__title[data-astro-cid-xmivup5a] em[data-astro-cid-xmivup5a]{font-style:italic;color:var(--accent)}.contact__lede[data-astro-cid-xmivup5a]{font-family:var(--font-body);font-size:clamp(19px,1.6vw,23px);line-height:1.5;color:var(--ink-2);max-width:52ch;margin:0 0 36px;text-wrap:pretty}.contact__links[data-astro-cid-xmivup5a]{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--rule)}.contact__links[data-astro-cid-xmivup5a] a[data-astro-cid-xmivup5a]{padding:24px 0;text-decoration:none;border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:4px;position:relative;transition:padding var(--t),color var(--t)}.contact__links[data-astro-cid-xmivup5a] a[data-astro-cid-xmivup5a]:hover{color:var(--accent);padding-left:14px}.contact__links[data-astro-cid-xmivup5a] .label[data-astro-cid-xmivup5a]{font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.contact__links[data-astro-cid-xmivup5a] .value[data-astro-cid-xmivup5a]{font-family:var(--font-display);font-size:24px;letter-spacing:-.005em}@media(max-width:860px){.contact__links[data-astro-cid-xmivup5a]{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.contact__links[data-astro-cid-xmivup5a]{grid-template-columns:1fr}}
