@import url(https://fonts.googleapis.com/css2?family=Geist+Mono:wght@300;400;500;700&display=swap);*,:after,:before{box-sizing:border-box}:root{--bg:#0a0a0a;--bg-subtle:#141414;--border:#222;--text:#e8e8e8;--text-muted:#606060;--accent:#e53e3e}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0a0a0a;background-color:var(--bg);color:#e8e8e8;color:var(--text);margin:0}*,body{font-family:Geist Mono,Courier New,monospace}a{color:inherit}.App{background-color:var(--bg);display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1}.navbar{background-color:var(--bg);border-bottom:1px solid var(--border);height:60px;position:fixed;top:0;width:100%;z-index:1000}.navbar-container{align-items:center;display:flex;height:100%;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 40px;position:relative}.navbar-logo{color:var(--text);font-size:14px;font-weight:500;position:relative;text-decoration:none;z-index:1002}.nav-menu{align-items:center;display:flex;list-style:none;margin:0;padding:0}.nav-item{position:relative}.nav-dot{padding:0 12px}.nav-dot,.nav-link{color:var(--text-muted);font-size:12px}.nav-link{text-decoration:none;transition:color .2s}.nav-link:hover{color:var(--text)}.hamburger{background:none;border:none;cursor:pointer;display:none;padding:0;position:relative;z-index:1002}.bar{background-color:var(--text);display:block;height:1px;margin:5px auto;transition:all .3s ease;width:20px}@media (max-width:768px){.hamburger{display:block}.hamburger.active .bar:nth-child(2){opacity:0}.hamburger.active .bar:first-child{transform:translateY(6px) rotate(45deg)}.hamburger.active .bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.nav-menu{background-color:var(--bg);flex-direction:column;gap:0;height:100vh;justify-content:center;left:-100%;position:fixed;text-align:center;top:0;transition:.3s ease-in-out;width:100%;z-index:1001}.nav-menu.active{left:0}.nav-dot{display:none}.nav-item{margin:12px 0}.nav-link{color:var(--text);font-size:20px}.navbar-container{padding:0 24px}}.footer{background-color:var(--bg);border-top:1px solid var(--border);padding:20px 40px}.footer-inner{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px}.footer-text{color:var(--text-muted);font-size:11px}.footer-links{display:flex;gap:1.5em}.footer-link{color:var(--text-muted);font-size:11px;text-decoration:none;transition:color .2s}.footer-link:hover{color:var(--text)}@media (max-width:480px){.footer{padding:16px 24px}.footer-inner{align-items:flex-start;flex-direction:column;gap:.75em}}.home{align-items:flex-start;background-color:var(--bg);display:flex;min-height:calc(100vh - 60px);padding:28vh 40px 0 18vw}.home-inner{max-width:640px;width:100%}.hero{margin-bottom:2em}.hero-name{color:var(--text);font-size:28px;font-weight:500;line-height:1;margin:0 0 1.5em}@media (min-width:480px){.hero-name{font-size:32px}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.cursor{animation:blink 1s step-end infinite;color:var(--accent)}.hero-role{color:var(--text-muted);font-size:14px;margin:0 0 .75em}.hero-skills{color:var(--text-muted);font-size:11px;letter-spacing:.02em;margin:0}.hero-divider{background-color:var(--border);height:1px;margin:2em 0;width:100%}.hero-nav{display:flex;flex-direction:column;gap:.75em}@media (max-width:480px){.home{padding:20vh 24px}}.about{background-color:var(--bg);min-height:calc(100vh - 60px);padding:28vh 40px 80px 18vw}.about-inner{max-width:640px;width:100%}.page-title{margin:0 0 2em}.about-bio{color:var(--text-muted);font-size:14px;line-height:1.7;margin:0 0 3em;max-width:480px}.about-section{grid-gap:1em;align-items:start;display:grid;gap:1em;grid-template-columns:100px 1fr;margin-bottom:2.5em}.section-label{color:var(--text-muted);font-size:11px;padding-top:2px}.skills-table{display:flex;flex-direction:column;gap:.75em}.skill-row{grid-gap:1em;display:grid;font-size:14px;gap:1em;grid-template-columns:76px 1fr}.skill-category{color:var(--text-muted);font-size:11px;padding-top:2px}.skill-items{color:var(--text)}.edu-row{display:flex;flex-direction:column;gap:.25em}.edu-degree{color:var(--text);font-size:14px}.edu-level{color:var(--text-muted);font-size:11px}.lang-list{color:var(--text);font-size:14px;margin:0}.resume-links{display:flex;flex-direction:column;gap:.5em}@media (max-width:640px){.about{padding:20vh 24px 60px}.about-section{gap:.5em;grid-template-columns:1fr}.skill-row{grid-template-columns:70px 1fr}}.projects{background-color:var(--bg);min-height:calc(100vh - 60px);padding:28vh 40px 80px 18vw}.projects-inner{max-width:760px;width:100%}.page-title{margin:0 0 3em}.projects-list{width:100%}.project-divider{background-color:var(--border);height:1px;width:100%}.project-row{margin-bottom:0}.project-content{grid-gap:1.5em;align-items:start;display:grid;gap:1.5em;grid-template-columns:32px 1fr auto;padding:1.5em 0}.project-number{color:var(--text-muted);font-size:11px;padding-top:2px}.project-info{display:flex;flex-direction:column;gap:.5em}.project-main{align-items:baseline;display:flex;flex-wrap:wrap;gap:1.5em}.project-name{color:var(--text);font-size:14px;font-weight:500}.project-category{color:var(--text-muted);font-size:11px}.project-sub{align-items:baseline;display:flex;flex-wrap:wrap;gap:1.5em}.project-description,.project-link,.project-tech{color:var(--text-muted);font-size:11px}.project-link{padding-top:2px;text-decoration:none;transition:color .2s;white-space:nowrap}.project-link:hover{color:var(--text)}@media (max-width:640px){.projects{padding:20vh 24px 60px}.project-content{gap:1em;grid-template-columns:28px 1fr auto}}.contact{background-color:var(--bg);min-height:calc(100vh - 60px);padding:28vh 40px 80px 18vw}.contact-inner{grid-gap:4em;align-items:start;display:grid;gap:4em;grid-template-columns:1fr 1.5fr;max-width:760px;width:100%}.page-title{color:var(--text);font-size:16px;font-weight:500;margin:0 0 1.5em}.contact-intro{color:var(--text-muted);font-size:11px;margin:0 0 1.5em}.contact-links{display:flex;flex-direction:column;gap:.5em}.arrow-link{align-items:center;color:var(--text);display:inline-flex;font-size:14px;gap:.75em;text-decoration:none;transition:gap .2s}.arrow-link:hover{gap:1.25em}.arrow{color:var(--accent);display:inline-block;transition:transform .2s}.arrow-link:hover .arrow{transform:translateX(4px)}.contact-form{display:flex;flex-direction:column;gap:1em}.form-group input,.form-group textarea{background-color:var(--bg);border:1px solid var(--border);box-sizing:border-box;color:var(--text);font-family:Geist Mono,monospace;font-size:14px;outline:none;padding:10px 12px;transition:border-color .2s;width:100%}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input:focus,.form-group textarea:focus{border-color:var(--text-muted)}.form-group textarea{height:140px;resize:vertical}.submit-btn{align-self:flex-start;background-color:initial;border:1px solid var(--border);color:var(--text);cursor:pointer;font-family:Geist Mono,monospace;font-size:14px;padding:10px 20px;transition:border-color .2s,color .2s}.submit-btn:hover{border-color:var(--text-muted)}@media (max-width:640px){.contact{padding:20vh 24px 60px}.contact-inner{gap:3em;grid-template-columns:1fr}}
/*# sourceMappingURL=main.9b5503a5.css.map*/