@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{font-family:Manrope,sans-serif;color:#d9e1e6;background:#0b0f14;font-synthesis:none;--line: #263039;--muted: #85919a;--acid: #d7ff68;--blue: #83b8ff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 80% 8%,#18222c 0,transparent 28rem),#0b0f14}a{color:inherit;text-decoration:none}.wrap{width:min(1120px,calc(100% - 48px));margin:auto}.site-header{align-items:center;display:flex;justify-content:space-between;margin:auto;padding:28px 32px;width:min(1280px,100%)}.brand,nav,.hero-kicker,.eyebrow,.section-count,.tags,.site-footer,.signal-grid{font-family:DM Mono,monospace}.brand{align-items:center;display:flex;font-size:.78rem;gap:10px;letter-spacing:.04em}.brand-mark{align-items:center;background:var(--acid);color:#0b0f14;display:inline-flex;font-family:Space Grotesk;font-size:.72rem;font-weight:700;height:27px;justify-content:center;width:27px}nav{align-items:center;color:var(--muted);display:flex;font-size:.72rem;gap:28px}nav a:hover,.arrow-link:hover{color:var(--acid)}.nav-contact{border:1px solid var(--line);color:#d9e1e6;padding:10px 14px}nav span{color:var(--acid)}.hero{min-height:690px;padding:118px 0 64px;position:relative}.hero-kicker{color:var(--muted);font-size:.68rem;letter-spacing:.04em;text-transform:uppercase}.pulse,.footer-status i{background:var(--acid);border-radius:50%;display:inline-block;height:7px;margin-right:8px;width:7px}h1,h2{font-family:Space Grotesk,sans-serif;font-weight:500;letter-spacing:-.06em;margin:0}h1{font-size:clamp(3.8rem,9vw,8.5rem);line-height:.93;margin:30px 0 54px}em{color:var(--acid);font-style:normal}.hero-bottom{align-items:end;display:flex;justify-content:space-between;max-width:750px}.hero-intro{color:var(--muted);font-size:1rem;line-height:1.65;margin:0;max-width:420px}.arrow-link{color:var(--blue);font-family:DM Mono;font-size:.72rem;text-transform:uppercase}.arrow-link span{font-size:1.2rem;margin-left:12px}.signal-grid{border-top:1px solid var(--line);bottom:0;color:var(--muted);display:grid;font-size:.62rem;gap:10px;grid-template-columns:repeat(3,1fr);padding-top:15px;position:absolute;width:100%}.signal-grid strong{color:#d9e1e6;font-family:Space Grotesk;font-size:1.2rem;font-weight:500;grid-row:2}.signal-grid span:nth-of-type(2),.signal-grid strong:nth-of-type(2){grid-column:2}.signal-grid span:nth-of-type(3),.signal-grid strong:nth-of-type(3){grid-column:3}.section{padding:112px 0}.section-heading{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding-bottom:16px}.eyebrow,.section-count{color:var(--muted);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}.project-list{border-bottom:1px solid var(--line)}.project-card{align-items:start;border-bottom:1px solid var(--line);display:grid;gap:30px;grid-template-columns:50px 1fr 260px 25px;padding:34px 0;transition:padding .2s,background .2s}.project-card:hover{background:#111820;padding-left:15px;padding-right:15px}.project-number{color:var(--acid);font-family:DM Mono;font-size:.72rem}.project-card h2{font-size:clamp(1.5rem,3vw,2.4rem);margin-bottom:13px}.project-card h2 small{color:var(--muted);display:block;font-family:DM Mono;font-size:.58rem;font-weight:400;letter-spacing:.02em;margin-top:7px;text-transform:uppercase}.project-card p{color:var(--muted);line-height:1.6;margin:0;max-width:470px}.project-card .attribution{color:#65727b;font-family:DM Mono;font-size:.64rem;line-height:1.5;margin-top:12px}.tags{display:flex;flex-wrap:wrap;gap:7px}.tags span{border:1px solid var(--line);color:var(--muted);font-size:.6rem;padding:7px 9px}.card-arrow{color:var(--acid);font-size:1.2rem}.muted-arrow{color:var(--line)}.notes-section{padding-top:10px}.note-row{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:25px;grid-template-columns:70px 1fr 130px 20px;padding:22px 0}.note-row:hover h2{color:var(--acid)}.note-row>span,.note-row small{color:var(--muted);font-family:DM Mono;font-size:.68rem}.note-row h2{font-size:1.15rem;letter-spacing:-.04em}.note-row b{color:var(--blue);font-weight:400;text-align:right}.about-grid{display:grid;gap:clamp(45px,9vw,130px);grid-template-columns:minmax(220px,350px) 1fr;padding-top:55px}.portrait-frame{background:#151d23;height:350px;overflow:hidden;position:relative}.portrait-frame:after{border:1px solid var(--acid);content:"";top:12px;right:12px;bottom:12px;left:12px;pointer-events:none;position:absolute}.portrait-frame img{filter:grayscale(1) contrast(1.08);height:100%;object-fit:cover;width:100%}.about-copy{padding-top:12px}.about-copy h2{font-size:clamp(2.2rem,5vw,4.5rem);line-height:1;margin:30px 0}.about-copy p{color:var(--muted);font-size:1.02rem;line-height:1.75;max-width:490px}.contact-details{border-top:1px solid var(--line);display:grid;margin-top:45px;max-width:520px}.contact-details a{border-bottom:1px solid var(--line);display:grid;font-family:DM Mono;font-size:.7rem;grid-template-columns:95px 1fr;padding:14px 0}.contact-details a:hover{color:var(--acid)}.contact-details span{color:var(--muted)}.skills-grid{display:grid;gap:18px;grid-template-columns:repeat(3,1fr);padding-top:35px}.skill-group{border:1px solid var(--line);min-height:230px;padding:25px}.skill-group h2{color:var(--acid);font-size:1.3rem;margin-bottom:30px}.skill-cloud{display:flex;flex-wrap:wrap;gap:8px}.skill-cloud span{border:1px solid var(--line);color:var(--muted);font-family:DM Mono;font-size:.62rem;line-height:1.35;padding:8px 9px}.resume-download{color:var(--blue);display:inline-block;font-family:DM Mono;font-size:.72rem;margin-top:28px;text-transform:uppercase}.resume-download span{margin-left:18px}.resume-download:hover{color:var(--acid)}.experience-list{border-bottom:1px solid var(--line)}.experience-card{border-bottom:1px solid var(--line);display:grid;gap:50px;grid-template-columns:260px 1fr;padding:38px 0}.experience-card:last-child{border-bottom:0}.experience-meta{color:var(--muted);font-family:DM Mono;font-size:.67rem;line-height:1.5}.impact-list{display:grid;gap:9px;margin-top:28px}.impact-list strong{color:var(--acid);font-family:Space Grotesk;font-size:1.25rem;font-weight:500;letter-spacing:-.04em}.experience-main h2{font-size:clamp(1.6rem,3vw,2.5rem)}.experience-main .company{color:var(--blue);font-family:DM Mono;font-size:.72rem;margin:8px 0 22px;text-transform:uppercase}.experience-main>p:not(.company){color:var(--muted);line-height:1.7;max-width:600px}.experience-main .tags{margin-top:25px}.education-card{align-items:end;display:grid;gap:50px;grid-template-columns:1fr 1fr;padding-top:45px}.education-card h2{font-size:clamp(2rem,4vw,3.7rem);line-height:1;margin-top:25px}.education-card strong{color:var(--acid);font-family:Space Grotesk;font-size:2.2rem;font-weight:500}.education-card p{color:var(--muted);font-family:DM Mono;font-size:.7rem;line-height:1.8;margin:25px 0 0}.lab-section{background:#d7ff68;color:#0b0f14}.lab-inner{display:flex;justify-content:space-between;padding:100px 0}.lab-section .eyebrow{color:#53630f}.lab-section h2,.contact-section h2{font-size:clamp(3rem,7vw,6.5rem);line-height:.92;margin-top:30px}.lab-section em{color:#53630f}.lab-copy{max-width:290px;padding-top:50px}.lab-copy p{line-height:1.6}.lab-copy .arrow-link{color:#0b0f14;display:inline-block;margin-top:30px}.contact-section{padding:150px 0}.contact-section h2{margin-bottom:55px}.contact-actions{align-items:end;display:flex;gap:35px}.contact-link,.resume-link{border-bottom:1px solid var(--acid);color:var(--acid);font-family:DM Mono;font-size:.85rem;padding-bottom:12px}.contact-link span,.resume-link span{margin-left:35px}.resume-link{border-color:var(--line);color:var(--blue);font-size:.72rem;text-transform:uppercase}.resume-link:hover{border-color:var(--acid);color:var(--acid)}.subpage{min-height:calc(100vh - 190px);padding:100px 0 140px}.back-link{color:var(--muted);display:block;font-family:DM Mono;font-size:.7rem;margin-bottom:100px}.back-link:hover{color:var(--acid)}.subpage h1{font-size:clamp(3.6rem,9vw,8rem);margin:28px 0 35px}.subpage-intro{color:var(--muted);font-size:1rem;line-height:1.7;max-width:470px}.empty-state,.status-card{border-top:1px solid var(--line);color:var(--muted);font-family:DM Mono;font-size:.75rem;margin-top:90px;padding-top:20px}.status-card{align-items:center;color:#d9e1e6;display:flex;gap:10px;max-width:640px}.status-card .pulse{margin:0}.status-meta{color:var(--muted);margin-left:auto}.project-detail{padding:100px 0 140px}.project-detail .back-link{margin-bottom:70px}.project-detail-header{align-items:end;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding-bottom:55px}.project-detail-header h1{font-size:clamp(3.5rem,8vw,8rem);line-height:.9;margin:25px 0 0}.project-detail-header h1 em{color:var(--muted);display:block;font-family:DM Mono;font-size:clamp(.8rem,1.5vw,1.1rem);letter-spacing:0;margin-top:22px;text-transform:uppercase}.project-source{border:1px solid var(--line);color:var(--blue);font-family:DM Mono;font-size:.7rem;padding:12px 15px;text-transform:uppercase}.project-source:hover,.next-project:hover{border-color:var(--acid);color:var(--acid)}.project-source span,.next-project span{margin-left:18px}.project-detail-lead{align-items:start;display:grid;gap:50px;grid-template-columns:1fr 280px;padding:45px 0 85px}.project-detail-lead p{color:#b2bdc4;font-size:1.15rem;line-height:1.7;margin:0;max-width:620px}.project-detail-lead .tags{padding-top:5px}.architecture-block{background:#111820;border:1px solid var(--line);padding:28px}.detail-section-heading{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding-bottom:14px}.architecture-diagram{align-items:center;display:flex;gap:14px;justify-content:center;padding:50px 0 25px}.architecture-node{border:1px solid #3b4851;display:grid;gap:6px;min-width:145px;padding:18px}.node-number{color:var(--acid);font-family:DM Mono;font-size:.6rem}.architecture-node strong{font-family:Space Grotesk;font-size:1rem;font-weight:500}.architecture-node small{color:var(--muted);font-family:DM Mono;font-size:.57rem;line-height:1.35}.architecture-arrow{color:var(--acid);font-size:1.2rem}.project-detail-grid{display:grid;gap:55px;grid-template-columns:1fr 1fr;padding:85px 0}.contribution-list{list-style:none;margin:0;padding:0}.contribution-list li{border-bottom:1px solid var(--line);color:var(--muted);line-height:1.6;padding:18px 0 18px 28px;position:relative}.contribution-list li:before{color:var(--acid);content:"↳";left:0;position:absolute}.detail-stack{display:flex;flex-wrap:wrap;gap:8px;padding-top:25px}.detail-stack span{border:1px solid var(--line);color:var(--muted);font-family:DM Mono;font-size:.65rem;padding:9px 10px}.next-project{border-bottom:1px solid var(--line);color:var(--blue);display:inline-block;font-family:DM Mono;font-size:.7rem;padding-bottom:12px;text-transform:uppercase}.site-footer{border-top:1px solid var(--line);color:var(--muted);display:flex;font-size:.65rem;justify-content:space-between;margin:auto;padding:25px 32px;width:min(1280px,100%)}.footer-status i{height:5px;width:5px}@media(max-width:700px){.site-header{padding:22px 24px}nav a:not(.nav-contact){display:none}.wrap{width:min(100% - 40px,1120px)}.hero{min-height:700px;padding-top:90px}.hero-bottom,.lab-inner{align-items:start;flex-direction:column;gap:35px}.about-grid,.skills-grid,.education-card{grid-template-columns:1fr}.portrait-frame{height:min(85vw,350px);max-width:350px}.project-card{gap:15px;grid-template-columns:35px 1fr 20px}.project-card .tags{grid-column:2 / 3}.project-card p{font-size:.9rem}.experience-card{gap:22px;grid-template-columns:1fr;padding:30px 0}.impact-list{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:18px}.impact-list strong{font-size:1rem}.project-detail{padding-top:70px}.project-detail-header{align-items:start;flex-direction:column;gap:35px}.project-detail-header h1{font-size:clamp(3.3rem,15vw,6rem)}.project-detail-lead,.project-detail-grid{grid-template-columns:1fr}.project-detail-lead{gap:25px;padding-bottom:65px}.architecture-block{padding:18px}.architecture-diagram{align-items:stretch;flex-direction:column;padding-top:30px}.architecture-arrow{align-self:center;transform:rotate(0)}.project-detail-grid{gap:60px;padding:65px 0}.contact-actions{align-items:start;flex-direction:column;gap:25px}.note-row{gap:10px;grid-template-columns:48px 1fr 18px}.note-row small{display:none}.section{padding:85px 0}.lab-inner{padding:75px 0}.lab-copy{padding-top:0}.contact-section{padding:100px 0}.site-footer{align-items:start;flex-direction:column;gap:12px;padding:24px}}
