@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0c0c0c;--surface: #141414;--border: #1f1f1f;--text: #ede9e3;--muted: #7a7a7a;--accent: #c5f74f;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "Courier New", Courier, monospace}html{scroll-behavior:smooth}body{background-color:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-width:320px}a{color:inherit;text-decoration:none}.fade-in{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.fade-in-stagger>*{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}.fade-in-stagger.visible>*:nth-child(1){opacity:1;transform:translateY(0);transition-delay:0ms}.fade-in-stagger.visible>*:nth-child(2){opacity:1;transform:translateY(0);transition-delay:80ms}.fade-in-stagger.visible>*:nth-child(3){opacity:1;transform:translateY(0);transition-delay:.16s}.fade-in-stagger.visible>*:nth-child(4){opacity:1;transform:translateY(0);transition-delay:.24s}.fade-in-stagger.visible>*:nth-child(5){opacity:1;transform:translateY(0);transition-delay:.32s}.fade-in-stagger.visible>*:nth-child(6){opacity:1;transform:translateY(0);transition-delay:.4s}.section-label{font-family:var(--font-mono);font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;display:block}.section-title{font-size:clamp(28px,4vw,48px);font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--text)}hr.section-rule{border:none;border-top:1px solid var(--border);margin:0 0 64px}section{max-width:1100px;margin:0 auto;padding:120px 40px}@media(max-width:768px){section{padding:80px 24px}}.header{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:24px 40px;transition:background-color .3s ease,border-color .3s ease;border-bottom:1px solid transparent}.header.scrolled{background-color:#0c0c0ceb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:var(--border)}.header-name{font-family:var(--font-mono);font-size:14px;font-weight:600;letter-spacing:.08em;color:var(--accent);text-transform:uppercase}.header-nav{display:flex;align-items:center;gap:32px}.nav-link{font-size:13px;font-weight:500;color:var(--muted);letter-spacing:.01em;transition:color .2s ease}.nav-link:hover{color:var(--text)}.nav-cta{font-size:12px;font-weight:600;color:var(--accent);border:1px solid var(--accent);padding:6px 16px;letter-spacing:.04em;transition:background-color .2s ease,color .2s ease}.nav-cta:hover{background-color:var(--accent);color:var(--bg)}@media(max-width:768px){.header{padding:20px 24px}.header-nav{gap:20px}.nav-link{display:none}}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;max-width:1100px;margin:0 auto;padding:120px 40px 80px;opacity:0;transition:opacity .8s ease}.hero.visible{opacity:1}.hero-eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:32px;opacity:0;transform:translateY(12px);transition:opacity .6s ease .1s,transform .6s ease .1s}.hero.visible .hero-eyebrow{opacity:1;transform:translateY(0)}.hero-label{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.hero-dot{width:4px;height:4px;border-radius:50%;background-color:var(--accent);flex-shrink:0}.hero-location{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.hero-name{display:flex;flex-direction:column;font-size:clamp(72px,11vw,140px);font-weight:700;letter-spacing:-.04em;line-height:.9;color:var(--text);margin-bottom:56px}.hero-name-line{display:block;opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.hero-name-line:nth-child(1){transition-delay:.2s}.hero-name-line:nth-child(2){transition-delay:.32s}.hero.visible .hero-name-line{opacity:1;transform:translateY(0)}.hero-name-indent{padding-left:clamp(40px,6vw,120px);color:transparent;-webkit-text-stroke:1px var(--text)}.hero-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding-top:32px;opacity:0;transform:translateY(12px);transition:opacity .6s ease .5s,transform .6s ease .5s}.hero.visible .hero-bottom{opacity:1;transform:translateY(0)}.hero-tagline{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--muted);text-transform:uppercase}.hero-cta{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text);letter-spacing:.04em;transition:color .2s ease}.hero-cta:hover{color:var(--accent)}@media(max-width:768px){.hero{padding-left:24px;padding-right:24px;padding-bottom:60px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:20px}}.about-header{margin-bottom:64px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.about-bio h2{margin-bottom:32px}.about-text{font-size:15px;line-height:1.75;color:#c4bfb8;margin-bottom:20px}.about-text:last-child{margin-bottom:0}.about-skills{display:flex;flex-direction:column;gap:28px;padding-top:8px}.skill-group{border-top:1px solid var(--border);padding-top:20px}.skill-category{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:10px}.skill-list{list-style:none;display:flex;flex-wrap:wrap;gap:8px 16px}.skill-list li{font-size:13px;font-weight:500;color:var(--text)}@media(max-width:768px){.about-grid{grid-template-columns:1fr;gap:48px}}.work-header{margin-bottom:0}.work-list{display:flex;flex-direction:column}.work-item{display:grid;grid-template-columns:100px 1fr;gap:48px;padding:48px 0;border-bottom:1px solid var(--border)}.work-item:first-child{border-top:1px solid var(--border)}.work-item-meta{display:flex;flex-direction:column;gap:8px;padding-top:4px}.work-number{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;color:var(--accent)}.work-year{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--muted)}.work-item-top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px;gap:24px}.work-title{font-size:clamp(20px,2.5vw,28px);font-weight:700;letter-spacing:-.02em;color:var(--text)}.work-employer{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-shrink:0}.work-description{font-size:15px;line-height:1.75;color:#c4bfb8;max-width:680px;margin-bottom:24px}.work-tech{list-style:none;display:flex;flex-wrap:wrap;gap:8px}.work-tech li{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--muted);border:1px solid var(--border);padding:4px 10px}@media(max-width:768px){.work-item{grid-template-columns:1fr;gap:16px}.work-item-meta{flex-direction:row;gap:16px}.work-item-top{flex-direction:column;gap:6px}}.experience-header{margin-bottom:0}.experience-list{display:flex;flex-direction:column;gap:0}.experience-item{display:grid;grid-template-columns:180px 1fr;gap:48px;padding:48px 0;border-bottom:1px solid var(--border)}.experience-item:first-child{border-top:1px solid var(--border)}.experience-left{display:flex;flex-direction:column;gap:6px;padding-top:4px}.exp-period{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--muted);line-height:1.5}.exp-location{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--muted)}.exp-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:24px}.exp-role{font-size:clamp(18px,2.2vw,24px);font-weight:700;letter-spacing:-.02em;color:var(--text)}.exp-company{font-size:14px;font-weight:600;color:var(--accent);flex-shrink:0}.exp-company-note{font-weight:400;color:var(--muted);font-size:13px}.exp-bullets{list-style:none;display:flex;flex-direction:column;gap:14px}.exp-bullets li{font-size:14px;line-height:1.7;color:#c4bfb8;padding-left:16px;position:relative}.exp-bullets li:before{content:"—";position:absolute;left:0;color:var(--border);font-size:12px;top:3px}@media(max-width:768px){.experience-item{grid-template-columns:1fr;gap:16px}.experience-left{flex-direction:row;gap:16px}.exp-title-row{flex-direction:column;gap:4px}}.projects-header{margin-bottom:0}.projects-empty{padding:64px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.projects-empty-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:12px}.projects-empty-text{font-size:15px;color:#444}.projects-list{display:flex;flex-direction:column}.project-item{display:grid;grid-template-columns:100px 1fr;gap:48px;padding:48px 0;border-bottom:1px solid var(--border)}.project-item:first-child{border-top:1px solid var(--border)}.project-item-meta{display:flex;flex-direction:column;gap:8px;padding-top:4px}.project-number{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;color:var(--accent)}.project-item-top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px;gap:24px}.project-title{font-size:clamp(20px,2.5vw,28px);font-weight:700;letter-spacing:-.02em;color:var(--text)}.project-link{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--muted);flex-shrink:0;transition:color .2s ease}.project-link:hover{color:var(--accent)}.project-description{font-size:15px;line-height:1.75;color:#c4bfb8;max-width:680px;margin-bottom:24px}.project-tech{list-style:none;display:flex;flex-wrap:wrap;gap:8px}.project-tech li{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--muted);border:1px solid var(--border);padding:4px 10px}@media(max-width:768px){.project-item{grid-template-columns:1fr;gap:16px}.project-item-top{flex-direction:column;gap:6px}}.education-header{margin-bottom:0}.education-list{display:flex;flex-direction:column}.education-item{display:grid;grid-template-columns:180px 1fr;gap:48px;padding:40px 0;border-bottom:1px solid var(--border)}.education-item:first-child{border-top:1px solid var(--border)}.edu-left{display:flex;flex-direction:column;gap:4px;padding-top:4px}.edu-period,.edu-note{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--muted)}.edu-right{display:flex;flex-direction:column;gap:6px}.edu-school{font-size:clamp(17px,2vw,22px);font-weight:700;letter-spacing:-.02em;color:var(--text)}.edu-program{font-size:14px;color:var(--muted)}.edu-status{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-top:4px;width:fit-content}@media(max-width:768px){.education-item{grid-template-columns:1fr;gap:12px}.edu-left{flex-direction:row;gap:12px}}.contact-header{margin-bottom:0}.contact-body{padding:80px 0 40px}.contact-heading{font-size:clamp(36px,6vw,72px);font-weight:700;letter-spacing:-.03em;line-height:1.05;color:var(--text);margin-bottom:24px;max-width:700px}.contact-sub{font-size:16px;line-height:1.6;color:var(--muted);margin-bottom:56px;max-width:480px}.contact-links{display:flex;align-items:center;gap:40px;flex-wrap:wrap}.contact-email{display:inline-flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:var(--text);letter-spacing:-.01em;border-bottom:1px solid var(--border);padding-bottom:4px;transition:color .2s ease,border-color .2s ease}.contact-email:hover{color:var(--accent);border-color:var(--accent)}.contact-social{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);transition:color .2s ease}.contact-social:hover{color:var(--text)}@media(max-width:768px){.contact-links{flex-direction:column;align-items:flex-start;gap:24px}}.footer{max-width:1100px;margin:0 auto;padding:32px 40px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.footer-name{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.footer-copy{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:#2a2a2a}@media(max-width:768px){.footer{padding:24px}}
