@font-face{font-family:Karla;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/karla-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Karla;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/karla-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--accent:#3f51b5;--accent-strong:#32408f;--accent-soft:#3f51b514;--accent-line:#3f51b547;--bg:#fff;--surface:#f8f9fa;--border:#e6e8ee;--border-strong:#d3d7e2;--text:#212529;--text-dim:#5b6070;--text-faint:#6b7280;--font:"Karla", system-ui, -apple-system, "Segoe UI", sans-serif;--measure:46rem;--gutter:clamp(1.25rem, 5vw, 3rem);--radius:10px;--shadow:0 1px 2px #1014280a, 0 8px 24px -12px #1014281f}@media (prefers-color-scheme:dark){:root{--accent:#8c9eff;--accent-strong:#b0bdff;--accent-soft:#8c9eff1f;--accent-line:#8c9eff52;--bg:#101219;--surface:#171a24;--border:#262a37;--border-strong:#343a4c;--text:#e7e9f2;--text-dim:#a3a9bd;--text-faint:#7c8299;--shadow:0 1px 2px #0000004d, 0 8px 24px -12px #0009}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:5rem}body{background:var(--bg);color:var(--text);font-family:var(--font);font-synthesis-weight:none;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.65}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4{letter-spacing:-.015em;text-wrap:balance;margin:0;font-weight:700;line-height:1.2}p{text-wrap:pretty;margin:0 0 1em}a{color:var(--accent);text-decoration-color:var(--accent-line);text-underline-offset:.18em;transition:color .15s,text-decoration-color .15s}a:hover{color:var(--accent-strong);text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.wrap{width:100%;max-width:var(--measure);padding-inline:var(--gutter);margin-inline:auto}.skip-link{z-index:100;background:var(--accent);color:#fff;border-radius:0 0 var(--radius) 0;padding:.6rem 1rem;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.topbar{z-index:30;background:color-mix(in srgb, var(--bg) 82%, transparent);backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0}.topbar__inner{align-items:center;gap:1.5rem;max-width:64rem;min-height:3.5rem;display:flex}.topbar__brand{letter-spacing:-.02em;color:var(--text);white-space:nowrap;flex:none;font-weight:700;text-decoration:none}.topbar__brand:hover{color:var(--accent)}.topbar__nav{scrollbar-width:none;gap:clamp(.75rem,1.6vw,1.25rem);margin-left:auto;display:flex;overflow-x:auto}.topbar__nav::-webkit-scrollbar{display:none}.topbar__nav a{letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap;border-bottom:2px solid #0000;padding-block:.35rem;font-size:.75rem;font-weight:600;text-decoration:none}.topbar__nav a:hover,.topbar__nav a[aria-current=true]{color:var(--accent);border-bottom-color:var(--accent)}@media (width<=40rem){.topbar__nav{margin-left:0;padding-inline-start:.5rem;mask-image:linear-gradient(90deg,#0000 0,#000 1rem)}.topbar__brand{display:none}}.hero{padding-block:clamp(3.5rem,12vh,7rem) clamp(2.5rem,8vh,4.5rem)}.hero__name{letter-spacing:-.035em;margin-bottom:.35rem;font-size:clamp(2.5rem,9vw,4rem)}.hero__name span{display:block}.hero__name span:last-child{color:var(--text-faint);font-weight:400}.hero__role{color:var(--accent);margin-bottom:.25rem;font-size:clamp(1.0625rem,2.5vw,1.25rem);font-weight:600}.hero__meta{color:var(--text-dim);margin-bottom:1.75rem;font-size:.9375rem}.hero__intro{max-width:34rem;color:var(--text-dim);font-size:1.0625rem}.hero__photo{border:1px solid var(--border-strong);object-fit:cover;border-radius:50%;width:4.5rem;height:4.5rem;margin-bottom:1.75rem}.socials{gap:.5rem;margin-top:1.75rem;display:flex}.socials a{border:1px solid var(--border);width:2.5rem;height:2.5rem;color:var(--text-dim);background:var(--bg);border-radius:50%;place-items:center;transition:color .15s,border-color .15s,transform .15s;display:inline-grid}.socials a:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-2px)}.socials svg{width:1.125rem;height:1.125rem}.section{border-top:1px solid var(--border);padding-block:clamp(2.5rem,7vh,4rem)}.section__title{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:2rem;font-size:.8125rem;font-weight:700}.section__note{color:var(--text-faint);margin:-1.5rem 0 1.5rem;font-size:.875rem}.subhead{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:4.5rem 0 1.5rem;font-size:.8125rem;font-weight:700}.section__title+.subhead{margin-top:0}.item{border-top:1px solid var(--border);grid-template-columns:1fr;gap:.25rem 2rem;padding-block:1.5rem;display:grid}.item:first-of-type{border-top:0;padding-top:0}@media (width>=48rem){.item{grid-template-columns:8.5rem 1fr}.item__date{grid-row:span 3;padding-top:.2rem}}.item__date{color:var(--text-faint);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.8125rem}.item__title{font-size:1.0625rem;font-weight:700}.item__org{color:var(--accent);margin-bottom:.5rem;font-size:.9375rem;font-weight:600}.item__org small{color:var(--text-faint);font-weight:400}.item__body{color:var(--text-dim);font-size:.9375rem}.item__body p:last-child,.item__body ul:last-child{margin-bottom:0}.bullets{gap:.4rem;margin:0;padding-left:1.1rem;display:grid}.bullets li::marker{color:var(--accent-line)}.note{color:var(--text-dim);background:var(--accent-soft);border-radius:999px;margin-top:.5rem;padding:.1rem .6rem;font-size:.8125rem;display:inline-block}.job+.job{border-top:1px solid var(--border)}.job>summary{cursor:pointer;grid-template-columns:1fr auto;grid-template-areas:"date chevron""title chevron""org chevron";gap:.1rem 2rem;padding-block:1.35rem;list-style:none;display:grid}.job>summary::-webkit-details-marker{display:none}.job>summary:hover .job__title{color:var(--accent)}@media (width>=48rem){.job>summary{grid-template-columns:8.5rem 1fr auto;grid-template-areas:"date title chevron""date org chevron"}.job__date{padding-top:.2rem}}.job__date{color:var(--text-faint);font-variant-numeric:tabular-nums;white-space:nowrap;grid-area:date;font-size:.8125rem}.job__title{grid-area:title;font-size:1.0625rem;font-weight:700;transition:color .15s}.job__org{color:var(--accent);grid-area:org;font-size:.9375rem;font-weight:600}.job__org small{color:var(--text-faint);font-weight:400}.job__chevron{width:.75rem;height:.75rem;color:var(--text-faint);grid-area:chevron;align-self:center;transition:transform .2s}.job[open] .job__chevron{transform:rotate(180deg)}.job__panel{color:var(--text-dim);padding-bottom:1.6rem;font-size:.9375rem}.job__panel>:last-child{margin-bottom:0}@media (width>=48rem){.job__panel{padding-left:10.5rem}}.taggroup{border-top:1px solid var(--border);gap:.5rem 2rem;padding-block:.85rem;display:grid}.taggroup:first-of-type{border-top:0}@media (width>=48rem){.taggroup{grid-template-columns:11rem 1fr;align-items:baseline}}.taggroup__label{color:var(--text-faint);font-size:.8125rem}.tags{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.tags li{color:var(--text-dim);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.15rem .7rem;font-size:.8125rem;font-weight:600}.badges{grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));gap:2rem 1rem;margin:0;padding:0;list-style:none;display:grid}.badges a{text-align:center;color:var(--text-dim);grid-template-rows:6.5rem auto;align-content:start;justify-items:center;gap:.6rem;font-size:.75rem;line-height:1.35;text-decoration:none;display:grid}.badges img{align-self:center;width:auto;max-width:6.5rem;max-height:100%;transition:transform .2s}.badges a:hover img{transform:scale(1.06)}.badges a:hover{color:var(--accent)}.table{border-collapse:collapse;width:100%;font-size:.9375rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);padding:.6rem 1rem .6rem 0}.table th{text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);font-size:.75rem;font-weight:600}.table td{color:var(--text-dim)}.table td:first-child{color:var(--text);font-weight:600}.disclosure{border-top:1px solid var(--border)}.disclosure:first-of-type{border-top:0}.disclosure>summary{cursor:pointer;grid-template-columns:1fr auto auto;align-items:baseline;gap:1rem;padding-block:.9rem;font-weight:600;list-style:none;transition:color .15s;display:grid}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:hover{color:var(--accent)}.disclosure__date{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:400}.disclosure__chevron{width:.75rem;height:.75rem;color:var(--text-faint);align-self:center;transition:transform .2s}.disclosure[open] .disclosure__chevron{transform:rotate(180deg)}.disclosure__panel{color:var(--text-dim);padding:0 0 1.25rem;font-size:.9375rem}.disclosure__panel>:last-child{margin-bottom:0}.stack{gap:.15rem;margin:0 0 .85rem;padding:0;font-size:.875rem;list-style:none;display:grid}.stack b{color:var(--text);font-weight:600}.linkrow{flex-wrap:wrap;gap:.35rem 1.1rem;font-size:.875rem;font-weight:600;display:flex}.linkrow a{align-items:center;gap:.4rem;display:inline-flex}.linkrow svg{flex:none;width:.9rem;height:.9rem}.provider{color:var(--text-faint);align-items:center;gap:.75rem;margin-top:.85rem;font-size:.8125rem;display:flex}.provider img{width:auto;max-height:1.75rem}.linklist{margin:0;padding:0;list-style:none}.linklist li{border-top:1px solid var(--border)}.linklist li:first-child{border-top:0}.linklist a{color:var(--text);justify-content:space-between;align-items:baseline;gap:1rem;padding-block:.9rem;font-weight:600;text-decoration:none;display:flex}.linklist a:hover{color:var(--accent)}.linklist span{color:var(--text-faint);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:400}.interests{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.interest{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.25rem}.interest h3{align-items:center;gap:.55rem;margin-bottom:.35rem;font-size:.9375rem;display:flex}.interest svg{width:1.05rem;height:1.05rem;color:var(--accent);flex:none}.interest p{color:var(--text-dim);margin:0;font-size:.875rem}.interest a{font-size:.875rem}.footer{border-top:1px solid var(--border);color:var(--text-faint);flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;padding-block:2.5rem 3.5rem;font-size:.8125rem;display:flex}.footer p{margin:0}.footer a{color:var(--text-dim)}.footer__version{font-variant-numeric:tabular-nums;align-items:center;gap:.5rem;display:flex}.footer__preview{color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:.05rem .55rem;font-weight:600}.crumbs{color:var(--text-faint);flex-wrap:wrap;gap:.5rem;margin-bottom:2rem;padding:0;font-size:.8125rem;list-style:none;display:flex}.crumbs li+li:before{content:"/";color:var(--border-strong);margin-right:.5rem}.prose{color:var(--text-dim)}.prose h2{color:var(--text);margin:2.5rem 0 .85rem;font-size:1.0625rem}.prose ul{gap:.6rem;padding-left:1.1rem;display:grid}.prose li b{color:var(--text)}.shots{grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:1rem;margin-top:1rem;display:grid}.shots img{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%}.reveal{animation:.6s cubic-bezier(.22,1,.36,1) both reveal}@keyframes reveal{0%{opacity:0;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media print{.topbar,.socials,.footer,.disclosure__chevron,.job__chevron{display:none}details:not([open])>:not(summary){display:block!important}.job__panel{padding-left:0}body{color:#000;background:#fff}}
