@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600&display=swap";:root{--bg:#080a0f;--panel:#10131a;--ink:#f2f4ef;--muted:#9198a7;--blue:#5d7cff;--signal:#c8ff45;--line:#f2f4ef29;color:var(--ink);background:var(--bg);font-family:Space Grotesk,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);margin:0;overflow-x:hidden}body:before{content:"";pointer-events:none;opacity:.22;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:40px 40px;position:fixed;inset:0}a{color:inherit;text-decoration:none}.shell{width:min(1320px,100% - 72px);margin-inline:auto}.nav{border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.12em;justify-content:space-between;align-items:center;height:82px;font-family:IBM Plex Mono,monospace;font-size:11px;display:flex}.monogram{width:48px;height:48px;color:var(--bg);background:var(--signal);letter-spacing:-.05em;clip-path:polygon(0 0,76% 0,100% 24%,100% 100%,24% 100%,0 76%);place-items:center;font-size:14px;font-weight:500;display:grid}.nav-links{border-left:1px solid var(--line);gap:0;display:flex}.nav-links a{border-right:1px solid var(--line);padding:16px 34px}.nav-links a:hover{color:var(--signal);background:#c8ff450d}.nav-role{color:var(--muted)}.eyebrow,.section-kicker{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0 0 32px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:500}.status-dot{background:var(--signal);width:8px;height:8px;box-shadow:0 0 15px var(--signal);margin-right:12px;display:inline-block}h1,h2{letter-spacing:-.065em;margin:0;font-weight:500;line-height:.88}em{color:var(--blue);font-style:normal}.about{grid-template-columns:.8fr 1fr;align-items:center;gap:11%;min-height:calc(100vh - 82px);padding:90px 0 110px;display:grid}.portrait-wrap{padding:18px 0 0 18px;position:relative}.portrait-wrap:before{content:"";border:1px solid var(--blue);position:absolute;inset:0 18px 18px 0}.portrait-wrap:after{content:"PORTRAIT_SCAN_01";color:var(--signal);letter-spacing:.1em;font:10px IBM Plex Mono;position:absolute;top:34px;right:30px}.portrait-wrap img{aspect-ratio:4/5;object-fit:cover;object-position:50% 45%;filter:saturate(.92)contrast(1.06);width:100%;display:block;position:relative}.image-tag{color:var(--bg);background:var(--signal);text-transform:uppercase;letter-spacing:.1em;padding:10px 14px;font:10px IBM Plex Mono;position:absolute;bottom:22px;left:38px}.about h2,.project h2,.education h2{text-transform:uppercase;font-size:clamp(54px,6vw,86px)}.about-copy h2{margin-bottom:50px}.about-copy>p:not(.section-kicker){max-width:600px;color:var(--muted);font-size:16px;line-height:1.8}.work{color:var(--bg);background:#e8e9e4;padding:140px 0 100px}.section-kicker.light{color:#5269da}.section-heading{justify-content:space-between;align-items:end;padding-bottom:80px;display:flex}.section-heading h2{text-transform:uppercase;max-width:800px;font-size:clamp(60px,7vw,100px)}.section-heading>p{color:#535761;max-width:320px;margin:0;line-height:1.7}.experience-list{border-top:2px solid var(--bg)}.job{border-bottom:1px solid #080a0f40;grid-template-columns:60px .85fr 1.4fr;gap:44px;padding:55px 0;display:grid}.job-index{color:#5269da;font:12px IBM Plex Mono}.job-title h3{text-transform:uppercase;margin:0 0 10px;font-size:34px;line-height:1}.job-title p{margin:0 0 15px;font-size:14px}.job-title span{color:#666b75;text-transform:uppercase;font:10px IBM Plex Mono}.job-detail>p{color:#454a54;margin-top:0;line-height:1.65}.job-detail ul{margin:26px 0;padding:0;list-style:none}.job-detail li{padding:8px 0 8px 24px;font-size:14px;position:relative}.job-detail li:before{content:"→";color:#5269da;position:absolute;left:0}.pills{flex-wrap:wrap;gap:7px;display:flex}.pills span{text-transform:uppercase;letter-spacing:.08em;border:1px solid #080a0f52;padding:7px 10px;font:9px IBM Plex Mono}.project{padding:140px 0 120px}.project-label{border-bottom:1px solid var(--line);color:var(--muted);text-transform:uppercase;letter-spacing:.1em;justify-content:space-between;padding-bottom:16px;font:10px IBM Plex Mono;display:flex}.project-grid{grid-template-columns:1fr .8fr;gap:8%;padding:80px 0;display:grid}.metrics{border-top:1px solid var(--line)}.metrics>div{border-bottom:1px solid var(--line);align-items:center;gap:28px;padding:24px 0;display:flex}.metrics strong{min-width:145px;color:var(--signal);letter-spacing:-.06em;font:500 46px Space Grotesk}.metrics span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font:10px/1.6 IBM Plex Mono}.project-footer{border:1px solid var(--blue);background:#5d7cff14;justify-content:space-between;align-items:end;padding:32px;display:flex}.project-footer>p{color:#c8ccd5;max-width:680px;margin:0;font-size:16px;line-height:1.7}.pills.dark span{color:var(--signal);border-color:#c8ff4559}.skills{padding:10px 0 140px}.skills-list{border-top:1px solid var(--ink)}.skills-list>div{border-bottom:1px solid var(--line);grid-template-columns:30% 1fr;align-items:center;padding:25px 0;transition:padding .25s,background .25s;display:grid}.skills-list>div:hover{background:#5d7cff0f;padding-left:16px}.skills-list h3{color:var(--blue);text-transform:uppercase;letter-spacing:.1em;margin:0;font:11px IBM Plex Mono}.skills-list p{color:#c4c8d0;margin:0}.education{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;align-items:end;gap:8%;padding:100px 0;display:grid;position:relative;overflow:hidden}.edu-year{color:#0000;-webkit-text-stroke:1px #5d7cff38;letter-spacing:-.09em;font-size:230px;font-weight:600;position:absolute;top:-50px;right:-8px}.edu-detail{border:1px solid var(--line);padding:28px}.edu-detail strong{color:var(--signal);text-transform:uppercase;letter-spacing:.1em;font:11px IBM Plex Mono}.edu-detail p{color:var(--muted);margin:20px 0 0;line-height:1.8}footer{color:var(--bg);background:var(--blue);padding:120px 0 38px}footer .section-kicker.light{color:var(--bg)}footer h2{text-transform:uppercase;max-width:1150px;font-size:clamp(68px,9vw,130px)}footer h2 em{color:var(--signal)}.email{border-top:2px solid var(--bg);border-bottom:2px solid var(--bg);justify-content:space-between;align-items:center;margin-top:85px;padding:24px 0;font-size:clamp(24px,3vw,40px);display:flex}.email:hover{color:var(--signal);background:var(--bg);padding-left:18px;padding-right:18px}.footer-bottom{text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;margin-top:85px;font:10px IBM Plex Mono;display:flex}.footer-bottom div{gap:28px;display:flex}.footer-bottom a:hover{color:var(--signal)}@media (width<=800px){.shell{width:calc(100% - 36px)}.nav{height:72px}.nav-links,.nav-role{display:none}.monogram{width:42px;height:42px}.about{grid-template-columns:1fr;gap:70px;min-height:0;padding:64px 0 90px}.portrait-wrap{width:92%;margin-left:auto}.work{padding:90px 0}.section-heading{display:block}.section-heading>p{margin-top:30px}.job{grid-template-columns:34px 1fr;gap:18px}.job-detail{grid-column:2}.project{padding:90px 0}.project-grid{grid-template-columns:1fr;gap:55px}.metrics strong{min-width:125px;font-size:40px}.project-footer{display:block}.project-footer .pills{margin-top:24px}.skills-list>div{grid-template-columns:1fr;gap:12px}.education{grid-template-columns:1fr;gap:60px}.edu-year{font-size:150px;top:-20px}footer{padding-top:90px}.footer-bottom{flex-wrap:wrap;gap:35px}.footer-bottom div{order:3;width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee div{animation:none}}
