@font-face{font-family:'Geist';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/geist-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Geist';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/geist-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Geist';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/geist-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Geist Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/geist-mono-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Geist Mono';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/geist-mono-latin-500-normal.woff2) format('woff2')}
:root{color-scheme:dark;--bg:#000000;--surface:#181818;--surface-hover:#1F1F1F;--surface-2:#272727;--line:#313131;--text:#F5F5F5;--text-2:#C8C8C8;--muted:#A3A3A3;--accent:#9284EB;--accent-hover:#A99EF0;--accent-click:#7D6EE0;--on-accent:#181818;
--s25:2px;--s50:4px;--s75:8px;--s100:12px;--s200:16px;--s300:24px;--s400:32px;--s500:40px;--s600:48px;--s700:64px;--s800:80px;--s900:96px;
--r:4px;--r-lg:8px;--r-xl:12px;--r-2xl:16px;--r-3xl:24px;--r-full:9999px;--ease:cubic-bezier(0.22,1,0.36,1);--font:'Geist',system-ui,sans-serif;--mono:'Geist Mono',ui-monospace,monospace}
*{box-sizing:border-box;margin:0;padding:0}
html,body{overflow-x:clip}
body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:24px;-webkit-font-smoothing:antialiased}
a{color:var(--accent)}
h1,h2,h3{font-weight:600;text-wrap:balance}
p,li{text-wrap:pretty}
:focus-visible{outline:2px solid var(--accent);outline-offset:var(--s50);border-radius:var(--r)}
.skip{position:fixed;left:var(--s200);top:-64px;z-index:200;background:var(--accent);color:var(--on-accent);padding:var(--s75) var(--s100);border-radius:var(--r-lg);text-decoration:none;font-size:14px;line-height:20px;font-weight:600;transition:transform 300ms var(--ease)}
.skip:focus{transform:translateY(80px)}
.wrap{max-width:800px;margin:0 auto;padding:0 var(--s300)}
header.top{position:sticky;top:var(--s200);z-index:10;display:flex;justify-content:center;padding:0 var(--s200)}
header.top .bar{display:flex;align-items:center;gap:var(--s300);padding:var(--s75) var(--s75) var(--s75) var(--s300);background:rgba(24,24,24,.72);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:var(--r-full);max-width:100%}
.brand{color:var(--text);text-decoration:none;white-space:nowrap;font-size:18px;line-height:28px;font-weight:500}
header.top nav{display:flex;gap:var(--s50)}
header.top nav a{color:var(--muted);text-decoration:none;white-space:nowrap;padding:var(--s75) var(--s100);border-radius:var(--r-full);font-size:14px;line-height:20px;font-weight:500;transition:color 300ms var(--ease),background-color 300ms var(--ease)}
header.top nav a:hover{color:var(--text)}
header.top nav a[aria-current]{color:var(--text);background:var(--surface-2)}
main{padding:var(--s900) 0 var(--s800)}
main:focus{outline:none}
.crumbs{font-size:14px;line-height:20px;color:var(--muted);margin-bottom:var(--s300)}
.crumbs a{color:var(--muted)}
h1{font-size:48px;line-height:48px;letter-spacing:-0.025em;margin-bottom:var(--s200);background:linear-gradient(90deg,#FFFFFF,#9B9B9B);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:var(--s50)}
h2{font-size:30px;line-height:36px;letter-spacing:-0.02em;margin:var(--s600) 0 var(--s200)}
h3{font-size:20px;line-height:28px;margin:var(--s300) 0 var(--s75)}
p{margin-bottom:var(--s200);color:var(--text-2)}
.lede{font-size:20px;line-height:28px;font-weight:500;color:var(--text)}
ul{margin:0 0 var(--s200);list-style:none;display:grid;gap:var(--s100)}
li{position:relative;padding-left:var(--s300);color:var(--text-2)}
li::before{content:"";position:absolute;left:0;top:11px;width:8px;height:2px;border-radius:var(--r-full);background:var(--accent)}
.meta{display:flex;flex-wrap:wrap;gap:var(--s75) var(--s200);color:var(--muted);font-size:14px;line-height:20px;margin-bottom:var(--s400)}
.meta .tag{color:var(--accent);font-weight:500}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s200);margin:var(--s400) 0}
.stat{padding:var(--s300);border:1px solid var(--line);border-radius:var(--r-2xl);background:var(--surface)}
.stat b{display:block;font-family:var(--mono);font-weight:500;font-size:24px;line-height:32px;color:var(--text);margin-bottom:var(--s50)}
.stat span{font-size:14px;line-height:20px;color:var(--muted)}
.cards{display:grid;gap:var(--s200);margin-top:var(--s400)}
.card{display:block;padding:var(--s400);border:1px solid var(--line);border-radius:var(--r-2xl);background:var(--surface);text-decoration:none;transition:background-color 300ms var(--ease),transform 500ms var(--ease)}
.card:hover{background:var(--surface-hover);transform:translateY(-4px)}
.card .tag{color:var(--accent);font-size:14px;line-height:20px;font-weight:500}
.card h2{font-size:24px;line-height:32px;margin:var(--s75) 0;color:var(--text)}
.card p{margin:0;color:var(--muted)}
.btn{display:inline-flex;align-items:center;gap:var(--s75);padding:var(--s75) var(--s100);border-radius:var(--r-full);font-size:16px;line-height:24px;font-weight:600;text-decoration:none;border:1px solid var(--line);background:var(--surface);color:var(--text);margin:var(--s75) var(--s75) 0 0;transition:background-color 300ms var(--ease),transform 300ms var(--ease)}
.btn:hover{background:var(--surface-2)}
.btn:active{transform:scale(0.98)}
.btn-primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.btn-primary:hover{background:var(--accent-hover)}
.btn-primary:active{background:var(--accent-click)}
@media (pointer:coarse){.btn{min-height:44px}}
.next{margin-top:var(--s600)}
.divider{height:1px;background:var(--line);margin-bottom:var(--s400)}
footer{padding:0 0 var(--s900);color:var(--muted);font-size:14px;line-height:20px}
footer .row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--s200)}
footer nav{display:flex;gap:var(--s300);flex-wrap:wrap}
footer a{color:var(--muted);text-decoration:none}
footer a:hover{color:var(--text)}
.rs-head{display:flex;gap:var(--s300);align-items:center;flex-wrap:wrap;margin-bottom:var(--s75)}
.rs-head img{width:96px;height:96px;border-radius:var(--r-full);object-fit:cover;object-position:50% 20%;border:2px solid var(--accent)}
.role{margin-top:var(--s400)}
.role h3{margin:0}
.role .org{color:var(--muted);font-size:14px;line-height:20px;margin-bottom:var(--s100)}
.role .when{color:var(--accent);font-family:var(--mono)}
.skills{display:flex;flex-wrap:wrap;gap:var(--s75);margin:var(--s75) 0 0}
.skills span{font-size:12px;line-height:16px;font-weight:500;padding:var(--s50) var(--s100);border-radius:var(--r-full);border:1px solid var(--line);background:var(--surface);color:var(--text-2)}
.to-top{position:fixed;right:var(--s300);bottom:var(--s800);z-index:100;width:48px;height:48px;border-radius:var(--r-full);display:grid;place-items:center;background:rgba(24,24,24,.72);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line);color:var(--text);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity 300ms var(--ease),transform 500ms var(--ease),visibility 300ms,background-color 300ms var(--ease),border-color 300ms var(--ease)}
.to-top.show{opacity:1;visibility:visible;transform:none}
.to-top:hover{background:var(--surface-2);border-color:var(--accent)}
.to-top:active{transform:scale(0.96)}
@media (max-width:640px){.to-top{right:var(--s200);bottom:var(--s700)}}
.to-top svg{width:20px;height:20px}
@media print{.to-top{display:none!important}}
@media (max-width:640px){header.top nav .hide-sm{display:none}header.top .bar{gap:var(--s100);padding-left:var(--s200)}main{padding:var(--s700) 0 var(--s700)}.wrap{padding:0 var(--s200)}h1{font-size:36px;line-height:40px}h2{font-size:24px;line-height:32px}.stats{grid-template-columns:1fr 1fr}.card{padding:var(--s300)}}
@media (prefers-reduced-motion:reduce){*{transition-property:opacity!important}}
@media print{
 @page{size:Letter}
 .updated,.noprint,.crumbs,.skip{display:none!important}
 body{background:#fff;color:#1f2433;font-size:9.6pt;line-height:1.4}
 header.top,footer{display:none!important}
 main{padding:0}
 .wrap{max-width:none;padding:0}
 h1{font-size:22pt;line-height:1.1;margin-bottom:4pt;background:none;color:#181818;-webkit-text-fill-color:#181818}
 h2,h3,.role .org{break-after:avoid}
 h2{font-size:11pt;line-height:1.3;margin:13pt 0 6pt;color:#181818;border-bottom:1px solid #9B9B9B;padding-bottom:3pt;text-transform:uppercase;letter-spacing:.06em}
 h3{font-size:11pt;line-height:1.3;color:#181818}
 p,li{color:#272727;text-align:justify}
 .lede{font-size:10.5pt;line-height:1.45;font-weight:400;color:#272727}
 li::before{content:"\2022";background:none;width:auto;height:auto;top:0;color:#555}
 ul{gap:3pt;margin-bottom:6pt}
 li{padding-left:14px;break-inside:avoid}
 .role{margin-top:9pt}
 .role .org,.role .when{color:#555}
 .meta{color:#555;margin-bottom:6pt;font-size:9.5pt}
 a{color:#181818;text-decoration:none}
 .skills span{border-color:#9B9B9B;background:#F5F5F5;color:#181818;font-size:8.5pt;padding:2pt 6pt}
 .rs-head img{display:none}
}
