:root{--bg:#090c0b;--line:rgba(238,247,239,.15);--soft:rgba(238,247,239,.08);--text:#edf3ee;--muted:#9da99f;--green:#55b8ff;--gd:rgba(85,184,255,.14);--mono:'DM Mono',monospace;--sans:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.6}a{color:inherit}button{font:inherit}.is-loading{overflow:hidden}.site-noise{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.2;background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.01) 1px,transparent 1px);background-size:5px 5px}.boot-screen{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#080b09;transition:.45s}.boot-screen.is-hidden{opacity:0;visibility:hidden}.boot-log{width:min(88vw,430px);font:13px/1.9 var(--mono);color:var(--muted)}.boot-log p{margin:0}.boot-log span,.boot-log em{color:var(--green);font-style:normal}.boot-log b{font-weight:400;color:#657168}.boot-screen button{position:absolute;right:24px;bottom:24px;border:1px solid var(--line);background:transparent;color:var(--green);font:12px var(--mono);padding:9px 12px;cursor:pointer}.scroll-progress{position:fixed;top:0;left:0;z-index:80;width:0;height:2px;background:var(--green);box-shadow:0 0 12px var(--green)}
.site-header{position:fixed;top:0;left:0;right:0;z-index:60;height:72px;display:flex;align-items:center;padding:0 clamp(20px,5vw,72px);border-bottom:1px solid transparent;background:linear-gradient(180deg,rgba(9,12,11,.94),rgba(9,12,11,.67),transparent);transition:.25s}.site-header.is-scrolled{border-color:var(--soft);backdrop-filter:blur(14px)}.wordmark{font:12px var(--mono);letter-spacing:.18em;text-decoration:none}.wordmark span{color:var(--green)}.desktop-nav{display:flex;gap:clamp(16px,2vw,32px);margin-left:auto;margin-right:42px}.desktop-nav a,.header-command{font:11px var(--mono);color:var(--muted);text-decoration:none}.desktop-nav a:hover,.header-command:hover{color:var(--green)}.header-actions{display:flex;gap:10px;align-items:center}.header-command{border:0;background:transparent;cursor:pointer}.menu-trigger{display:none;width:35px;height:35px;border:1px solid var(--line);background:transparent;padding:9px}.menu-trigger i{display:block;height:1px;background:var(--text);margin:5px 0}.mobile-nav{position:fixed;inset:0;z-index:90;padding:108px 28px 28px;background:rgba(8,11,9,.98)}.mobile-nav a{display:block;border-bottom:1px solid var(--soft);padding:17px 0;text-decoration:none;font-size:27px;font-weight:700}.mobile-close,.modal-close{position:absolute;right:23px;top:20px;border:0;background:transparent;color:var(--text);font-size:30px;cursor:pointer}.eyebrow,.section-label{font:11px var(--mono);letter-spacing:.14em;color:var(--green);text-transform:uppercase}
main{position:relative;z-index:1;max-width:1280px;margin:auto;padding:0 clamp(20px,5vw,72px)}.hero{position:relative;min-height:100vh;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.55fr);align-items:center;gap:clamp(40px,9vw,130px);padding:130px 0 80px}.availability{display:flex;align-items:center;gap:9px;margin:0 0 38px;font:11px var(--mono);color:var(--green);text-transform:uppercase;letter-spacing:.1em}.availability span{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green);animation:pulse 2s infinite}.hero h1{max-width:680px;margin:0;font-size:clamp(64px,10vw,145px);line-height:.88;letter-spacing:-.075em}.cursor,.terminal-cursor{color:var(--green);animation:blink 1s step-end infinite}.hero-location{margin:32px 0 18px;color:var(--muted);font:11px var(--mono);letter-spacing:.13em}.hero-summary{max-width:620px;margin:0;color:#cbd4cd;font-size:clamp(17px,2vw,22px);line-height:1.65}.hero-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}.button{display:inline-flex;gap:18px;align-items:center;padding:14px 18px;border:1px solid var(--line);font:12px var(--mono);text-decoration:none;transition:.2s}.button:hover{transform:translateY(-3px)}.solid{background:var(--green);color:#0a110c;border-color:var(--green)}.ghost:hover{background:var(--gd)}.hero-socials{display:flex;gap:20px;margin-top:26px}.hero-socials a,footer a{color:var(--muted);font:11px var(--mono);text-decoration:none}.hero-socials a:hover,footer a:hover{color:var(--green)}.hero-profile{padding:0 0 0 26px;border-left:1px solid var(--line)}.hero-profile img{width:108px;aspect-ratio:1;object-fit:cover;filter:grayscale(1) contrast(1.07);margin-bottom:24px}.hero-profile h2{margin:13px 0 22px;font-size:23px;line-height:1.25;letter-spacing:-.04em}.profile-contact{display:grid;gap:6px;color:var(--muted);font:11px/1.6 var(--mono)}.scroll-cue{position:absolute;bottom:29px;left:0;margin:0;color:var(--muted);font:10px var(--mono);letter-spacing:.12em;text-transform:uppercase}.scroll-cue span{display:inline-block;margin-left:8px;color:var(--green);animation:down 1.8s infinite}.ticker{margin-inline:calc(clamp(20px,5vw,72px) * -1);overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);white-space:nowrap}.ticker div{display:inline-block;padding:13px 0;animation:ticker 30s linear infinite;color:var(--muted);font:11px var(--mono);letter-spacing:.14em}.ticker i{font-style:normal;color:var(--green);margin:0 19px}
.section{padding-top:145px}.section h2,.contact-section h2{max-width:730px;margin:17px 0 0;font-size:clamp(38px,5.3vw,75px);line-height:.98;letter-spacing:-.065em}.about-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(45px,9vw,140px);padding-top:48px}.lead{margin-top:0;color:var(--text)!important;font-size:21px!important;line-height:1.6!important}.about-layout p:not(.section-label){color:var(--muted);font-size:16px;line-height:1.78}.text-link{display:inline-flex;gap:13px;margin-top:15px;color:var(--green);font:12px var(--mono);text-decoration:none}.metric-grid{display:grid;grid-template-columns:1fr 1fr;align-content:start;border-top:1px solid var(--line)}.metric-grid article{min-height:175px;padding:21px 15px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.metric-grid article:nth-child(2n){border-right:0}.metric-grid strong{display:block;font-size:clamp(35px,4vw,60px);line-height:1;letter-spacing:-.07em}.metric-grid strong span{color:var(--green)}.metric-grid p{margin:14px 0 0;font:10px/1.55 var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.timeline{position:relative;margin-top:55px;border-top:1px solid var(--line)}.role,.education-card{display:grid;grid-template-columns:230px 72px minmax(0,1fr);gap:0;border-bottom:1px solid var(--line);padding:27px 0}.role-date{padding:4px 18px 0 0;color:var(--muted);font:10px/1.6 var(--mono);letter-spacing:.08em}.role-mark{display:grid;place-items:center;width:43px;height:43px;border:1px solid var(--line);color:var(--green);font:12px var(--mono)}.role-body h3,.honors-grid h3{margin:0;font-size:25px;line-height:1.1;letter-spacing:-.045em}.role-body h4{margin:8px 0 17px;color:var(--green);font:12px var(--mono);font-weight:400}.role-body ul{margin:0;padding-left:18px;color:#c0cbc3}.role-body li{margin:7px 0}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}.tags span{padding:4px 7px;border:1px solid var(--line);color:var(--muted);font:10px var(--mono)}.education-card{margin-top:53px;border-top:1px solid var(--line)}.education-card .role-body p{color:var(--muted)}.gpa{margin-top:22px;font-size:45px;font-weight:700;letter-spacing:-.06em}.gpa span{font:11px var(--mono);letter-spacing:0;color:var(--muted)}.skill-groups{margin-top:55px;border-top:1px solid var(--line)}.skill-groups article{display:grid;grid-template-columns:1fr 1.5fr;gap:30px;padding:26px 0;border-bottom:1px solid var(--line)}.skill-groups article>div{display:flex;justify-content:space-between;gap:20px}.skill-groups h3{margin:0;font-size:19px;letter-spacing:-.03em}.skill-groups span{color:var(--green);font:11px var(--mono)}.skill-groups p{margin:0;color:var(--muted);font-size:15px}.project-list{margin-top:54px;border-top:1px solid var(--line)}.project{display:grid;grid-template-columns:230px minmax(0,1fr);gap:0;padding:30px 0 38px;border-bottom:1px solid var(--line);transition:.25s}.project:hover{padding-left:18px;background:linear-gradient(90deg,var(--gd),transparent 56%)}.project>span{color:var(--green);font:11px var(--mono)}.project h3{max-width:800px;margin:0;font-size:clamp(26px,3vw,43px);line-height:1.03;letter-spacing:-.06em}.project p{max-width:690px;margin:17px 0 0;color:var(--muted);font-size:16px}.honors-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:52px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.honors-grid article{min-height:300px;padding:25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.honors-grid h3{margin-top:15px}.honors-grid article>p:last-child{color:var(--muted);font-size:15px}.contact-section{display:grid;grid-template-columns:1fr .75fr;gap:80px;margin-top:145px;padding:78px 0;border-top:1px solid var(--line)}.contact-links{display:grid;align-content:center;gap:17px}.contact-links a{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--text);font:14px var(--mono);text-decoration:none}.contact-links a:hover{color:var(--green)}footer{position:relative;z-index:1;max-width:1280px;display:flex;justify-content:space-between;gap:20px;margin:0 auto;padding:28px clamp(20px,5vw,72px);border-top:1px solid var(--soft);color:var(--muted);font:10px var(--mono)}footer div{display:flex;gap:15px}
.modal{position:fixed;inset:0;z-index:99;display:grid;place-items:center;padding:20px}.modal[hidden]{display:none}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(8px)}.terminal-window,.palette-window{position:relative;width:min(690px,100%);border:1px solid var(--line);background:#0b100d;box-shadow:0 28px 100px rgba(0,0,0,.6)}.terminal-top{display:flex;gap:7px;align-items:center;padding:13px;border-bottom:1px solid var(--soft);font:11px var(--mono);color:var(--muted)}.terminal-top i{width:8px;height:8px;border-radius:50%;background:#506057}.terminal-top i:first-child{background:#d46e6e}.terminal-top i:nth-child(2){background:#d1b270}.terminal-top i:nth-child(3){background:var(--green)}.terminal-top span{margin-left:7px}.terminal-content{padding:30px;color:var(--green);font:13px/1.7 var(--mono)}.terminal-content p{margin:0 0 12px}.terminal-answer{color:#c7d3c9}.palette-window{padding:35px}.palette-window a{display:block;padding:13px 0;border-bottom:1px solid var(--soft);font:17px var(--mono);text-decoration:none}.palette-window a:hover{color:var(--green)}.reveal{opacity:0;transform:translateY(24px);transition:.7s}.reveal.is-visible{opacity:1;transform:none}@keyframes pulse{50%{box-shadow:0 0 2px var(--green)}}@keyframes blink{50%{opacity:0}}@keyframes down{50%{transform:translateY(7px)}}@keyframes ticker{to{transform:translateX(-50%)}}
@media(max-width:800px){.desktop-nav,.header-command{display:none}.menu-trigger{display:block}.hero{min-height:auto;grid-template-columns:1fr;gap:54px;padding:145px 0 90px}.hero h1{font-size:clamp(58px,18vw,94px)}.hero-profile{width:100%;padding:22px 0 0;border-top:1px solid var(--line);border-left:0}.scroll-cue{display:none}.section{padding-top:93px}.about-layout,.contact-section{grid-template-columns:1fr;gap:38px}.section h2,.contact-section h2{font-size:clamp(37px,12vw,59px)}.role,.education-card{grid-template-columns:1fr 48px;gap:18px}.role-date{grid-column:1/-1;padding:0}.role-mark{grid-column:1;grid-row:2}.role-body{grid-column:2}.skill-groups article,.project{grid-template-columns:1fr;gap:16px}.honors-grid{grid-template-columns:1fr}.contact-section{margin-top:92px;padding:55px 0}.ticker{margin-inline:-20px}footer{flex-wrap:wrap}.reveal{opacity:1;transform:none}}@media(max-width:450px){.metric-grid{grid-template-columns:1fr}.metric-grid article{border-right:0}.hero-links .button{width:100%;justify-content:space-between}.hero-socials{gap:13px;flex-wrap:wrap}.role-body h3{font-size:21px}.project h3{font-size:30px}.profile-contact{font-size:10px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
