:root{--bg-primary:#0a0a0a;--bg-secondary:#111;--bg-card:#161616;--bg-card-hover:#1c1c1c;--text-primary:#ede8e0;--text-secondary:#9a9590;--text-muted:#5a5650;--accent:#c8a87c;--accent-light:#ddbf96;--border:#1e1e1e;--border-light:#2a2a2a;--nav-height:72px;--font-serif:"Cormorant Garamond",Georgia,serif;--font-sans:"Outfit",-apple-system,sans-serif;--font-mono:"JetBrains Mono",monospace;--max-width:1100px;--section-padding:120px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;scroll-padding-top:72px;scroll-padding-top:var(--nav-height)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0a0a0a;background-color:var(--bg-primary);color:#ede8e0;color:var(--text-primary);font-family:Outfit,-apple-system,sans-serif;font-family:var(--font-sans);line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}ol,ul{list-style:none}img{display:block;max-width:100%}::selection{background-color:#c8a87c;background-color:var(--accent);color:#0a0a0a;color:var(--bg-primary)}.noise-overlay{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");height:100%;opacity:.035;pointer-events:none;width:100%;z-index:9999}.navbar,.noise-overlay{left:0;position:fixed;top:0}.navbar{align-items:center;border-bottom:1px solid transparent;display:flex;height:var(--nav-height);justify-content:space-between;padding:0 clamp(24px,5vw,64px);right:0;transition:background-color .4s ease,border-color .4s ease,-webkit-backdrop-filter .4s ease;transition:background-color .4s ease,backdrop-filter .4s ease,border-color .4s ease;transition:background-color .4s ease,backdrop-filter .4s ease,border-color .4s ease,-webkit-backdrop-filter .4s ease;z-index:1000}.navbar.scrolled{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background-color:hsla(0,0%,4%,.85);border-bottom-color:var(--border)}.navbar-logo{color:var(--text-primary);cursor:pointer;font-family:var(--font-serif);font-size:1.4rem;font-weight:600;letter-spacing:.02em}.navbar-links{align-items:center;display:flex;gap:36px}.navbar-links a{color:var(--text-secondary);font-family:var(--font-mono);font-size:.75rem;font-weight:400;letter-spacing:.1em;position:relative;text-transform:uppercase;transition:color .3s ease}.navbar-links a:after{background-color:var(--accent);bottom:-4px;content:"";height:1px;left:0;position:absolute;transition:width .3s ease;width:0}.navbar-links a:hover{color:var(--text-primary)}.navbar-links a:hover:after{width:100%}.navbar-toggle{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:5px;padding:8px;z-index:1001}.navbar-toggle span{background-color:var(--text-primary);display:block;height:1.5px;-webkit-transform-origin:center;transform-origin:center;transition:all .3s ease;width:24px}.navbar-toggle.open span:first-child{-webkit-transform:rotate(45deg) translate(4.5px,4.5px);transform:rotate(45deg) translate(4.5px,4.5px)}.navbar-toggle.open span:nth-child(2){opacity:0}.navbar-toggle.open span:nth-child(3){-webkit-transform:rotate(-45deg) translate(4.5px,-4.5px);transform:rotate(-45deg) translate(4.5px,-4.5px)}.mobile-menu{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background-color:hsla(0,0%,4%,.97);display:none;flex-direction:column;gap:40px;height:100vh;justify-content:center;position:fixed;right:0;top:0;width:100%;z-index:999}.mobile-menu.open{display:flex}.mobile-menu a{color:var(--text-secondary);font-family:var(--font-serif);font-size:2rem;font-weight:400;transition:color .3s ease}.mobile-menu a:hover{color:var(--accent)}@media (max-width:768px){.navbar-links{display:none}.navbar-toggle{display:flex}}.hero{display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;padding:0 clamp(24px,5vw,64px);position:relative}.hero:before{background:radial-gradient(circle,hsla(35,41%,64%,.06) 0,transparent 60%);height:800px;right:-200px;top:-200px;width:800px}.hero:after,.hero:before{content:"";pointer-events:none;position:absolute}.hero:after{background:radial-gradient(circle,hsla(35,41%,64%,.03) 0,transparent 60%);bottom:-300px;height:600px;left:-200px;width:600px}.hero-content{margin:0 auto;max-width:var(--max-width);position:relative;width:100%;z-index:1}.hero-name{-webkit-animation:heroSlideUp 1s cubic-bezier(.16,1,.3,1) forwards;animation:heroSlideUp 1s cubic-bezier(.16,1,.3,1) forwards;color:var(--text-primary);font-family:var(--font-serif);font-size:clamp(3.5rem,10vw,8rem);font-weight:300;letter-spacing:-.02em;line-height:.95;opacity:0}.hero-name span{display:block}.hero-line{-webkit-animation:lineExpand .8s cubic-bezier(.16,1,.3,1) forwards;animation:lineExpand .8s cubic-bezier(.16,1,.3,1) forwards;-webkit-animation-delay:.6s;animation-delay:.6s;background-color:var(--accent);height:1px;margin:32px 0;-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:left;transform-origin:left;width:80px}.hero-title{-webkit-animation:heroSlideUp 1s cubic-bezier(.16,1,.3,1) forwards;animation:heroSlideUp 1s cubic-bezier(.16,1,.3,1) forwards;-webkit-animation-delay:.8s;animation-delay:.8s;color:var(--text-secondary);font-family:var(--font-sans);font-size:clamp(1rem,2vw,1.25rem);font-weight:400;margin-bottom:8px;opacity:0}.hero-subtitle{-webkit-animation:heroSlideUp 1s cubic-bezier(.16,1,.3,1) forwards;animation:heroSlideUp 1s cubic-bezier(.16,1,.3,1) forwards;-webkit-animation-delay:1s;animation-delay:1s;color:var(--text-muted);font-family:var(--font-mono);font-size:clamp(.75rem,1.2vw,.875rem);font-weight:300;letter-spacing:.05em;opacity:0}.hero-scroll{align-items:center;-webkit-animation:heroFadeIn 1s ease forwards;animation:heroFadeIn 1s ease forwards;-webkit-animation-delay:1.5s;animation-delay:1.5s;bottom:40px;display:flex;flex-direction:column;gap:8px;left:50%;opacity:0;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.hero-scroll span{color:var(--text-muted);font-family:var(--font-mono);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase}.hero-scroll-line{-webkit-animation:scrollPulse 2s ease-in-out infinite;animation:scrollPulse 2s ease-in-out infinite;-webkit-animation-delay:1.5s;animation-delay:1.5s;background:linear-gradient(to bottom,var(--accent),transparent);height:40px;width:1px}.section{margin:0 auto;max-width:var(--max-width);opacity:0;padding:var(--section-padding) clamp(24px,5vw,64px);-webkit-transform:translateY(40px);transform:translateY(40px);transition:opacity .8s cubic-bezier(.16,1,.3,1),-webkit-transform .8s cubic-bezier(.16,1,.3,1);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1),-webkit-transform .8s cubic-bezier(.16,1,.3,1)}.section.in-view{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}.section-label{color:var(--accent);display:block;font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.2em;margin-bottom:16px;text-transform:uppercase}.section-title{color:var(--text-primary);font-family:var(--font-serif);font-size:clamp(2rem,4vw,3rem);font-weight:300;line-height:1.1;margin-bottom:64px}.experience-list{display:flex;flex-direction:column}.experience-card{grid-gap:40px;border-top:1px solid var(--border);display:grid;gap:40px;grid-template-columns:200px 1fr;opacity:0;padding:48px 0;-webkit-transform:translateY(20px);transform:translateY(20px);transition:opacity .6s ease,-webkit-transform .6s ease;transition:opacity .6s ease,transform .6s ease;transition:opacity .6s ease,transform .6s ease,-webkit-transform .6s ease}.section.in-view .experience-card{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}.section.in-view .experience-card:first-child{transition-delay:.1s}.section.in-view .experience-card:nth-child(2){transition-delay:.2s}.section.in-view .experience-card:nth-child(3){transition-delay:.3s}.section.in-view .experience-card:nth-child(4){transition-delay:.4s}.section.in-view .experience-card:nth-child(5){transition-delay:.5s}.experience-card:last-child{border-bottom:1px solid var(--border)}.experience-meta{display:flex;flex-direction:column;gap:4px;padding-top:6px}.experience-period{font-size:.75rem}.experience-location,.experience-period{color:var(--text-muted);font-family:var(--font-mono);font-weight:300;letter-spacing:.02em}.experience-location{font-size:.7rem}.experience-body{display:flex;flex-direction:column;gap:8px}.experience-company{color:var(--text-primary);font-family:var(--font-serif);font-size:1.8rem;font-weight:400;line-height:1.2}.experience-company .division{color:var(--text-secondary);font-size:1rem;font-weight:300}.experience-role-block{margin-top:16px}.experience-role-block:first-child{margin-top:4px}.experience-role-header{align-items:baseline;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:8px}.experience-role{color:var(--accent);font-family:var(--font-sans);font-size:.95rem;font-weight:400}.experience-highlights{display:flex;flex-direction:column;gap:8px}.experience-highlights li{color:var(--text-secondary);font-size:.9rem;line-height:1.6;padding-left:16px;position:relative}.experience-highlights li:before{background-color:var(--text-muted);border-radius:50%;content:"";height:4px;left:0;position:absolute;top:10px;width:4px}@media (max-width:768px){.experience-card{gap:8px;grid-template-columns:1fr;padding:32px 0}.experience-meta{align-items:center;flex-direction:row;gap:16px;padding-top:0}}.projects-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.project-card{background-color:var(--bg-card);border:1px solid var(--border);border-radius:6px;opacity:0;padding:32px;-webkit-transform:translateY(20px);transform:translateY(20px);transition:border-color .3s ease,background-color .3s ease;transition:opacity .6s ease,border-color .3s ease,background-color .3s ease,-webkit-transform .6s ease;transition:opacity .6s ease,transform .6s ease,border-color .3s ease,background-color .3s ease;transition:opacity .6s ease,transform .6s ease,border-color .3s ease,background-color .3s ease,-webkit-transform .6s ease}.section.in-view .project-card{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}.section.in-view .project-card:first-child{transition-delay:.1s}.section.in-view .project-card:nth-child(2){transition-delay:.15s}.section.in-view .project-card:nth-child(3){transition-delay:.2s}.section.in-view .project-card:nth-child(4){transition-delay:.25s}.section.in-view .project-card:nth-child(5){transition-delay:.3s}.section.in-view .project-card:nth-child(6){transition-delay:.35s}.project-card:hover{background-color:var(--bg-card-hover);border-color:var(--border-light)}.project-header{margin-bottom:16px}.project-name{color:var(--text-primary);font-family:var(--font-serif);font-size:1.3rem;font-weight:500;margin-bottom:6px}.project-context{color:var(--accent);display:block;font-family:var(--font-sans);font-size:.85rem;margin-bottom:4px}.project-period{color:var(--text-muted);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.02em}.project-description{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.project-description li{color:var(--text-secondary);font-size:.85rem;line-height:1.6;padding-left:14px;position:relative}.project-description li:before{background-color:var(--text-muted);border-radius:50%;content:"";height:4px;left:0;position:absolute;top:9px;width:4px}.project-tech{display:flex;flex-wrap:wrap;gap:8px}.tech-tag{border:1px solid var(--border);border-radius:3px;color:var(--text-muted);font-family:var(--font-mono);font-size:.7rem;padding:4px 10px}@media (max-width:768px){.projects-grid{grid-template-columns:1fr}}.skills-grid{grid-gap:48px;display:grid;gap:48px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.skill-category{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px);transition:opacity .6s ease,-webkit-transform .6s ease;transition:opacity .6s ease,transform .6s ease;transition:opacity .6s ease,transform .6s ease,-webkit-transform .6s ease}.section.in-view .skill-category:first-child{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);transition-delay:.1s}.section.in-view .skill-category:nth-child(2){opacity:1;-webkit-transform:translateY(0);transform:translateY(0);transition-delay:.2s}.section.in-view .skill-category:nth-child(3){opacity:1;-webkit-transform:translateY(0);transform:translateY(0);transition-delay:.3s}.section.in-view .skill-category:nth-child(4){opacity:1;-webkit-transform:translateY(0);transform:translateY(0);transition-delay:.4s}.section.in-view .skill-category:nth-child(5){opacity:1;-webkit-transform:translateY(0);transform:translateY(0);transition-delay:.5s}.skill-category-label{border-bottom:1px solid var(--border);color:var(--text-muted);font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.15em;margin-bottom:20px;padding-bottom:12px;text-transform:uppercase}.skill-tags{display:flex;flex-wrap:wrap;gap:10px}.skill-tag{background-color:var(--bg-card);border:1px solid var(--border-light);border-radius:4px;color:var(--text-secondary);cursor:default;font-family:var(--font-sans);font-size:.85rem;font-weight:400;padding:8px 16px;transition:all .3s ease}.skill-tag:hover{background-color:hsla(35,41%,64%,.05);border-color:var(--accent);color:var(--text-primary)}.education-content{grid-gap:40px;border-bottom:1px solid var(--border);border-top:1px solid var(--border);display:grid;gap:40px;grid-template-columns:200px 1fr;padding:48px 0}.education-year{color:var(--text-muted);font-family:var(--font-mono);font-size:.75rem;font-weight:300;padding-top:6px}.education-school{color:var(--text-primary);font-family:var(--font-serif);font-size:1.8rem;font-weight:400;margin-bottom:8px}.education-location{color:var(--text-muted);font-family:var(--font-mono);font-size:.75rem;margin-bottom:12px}.education-degree{color:var(--text-secondary);font-size:.95rem;margin-bottom:16px}.education-details{color:var(--text-muted);font-size:.85rem;line-height:1.8}@media (max-width:768px){.education-content{gap:8px;grid-template-columns:1fr;padding:32px 0}}.section.contact{text-align:center}.contact-heading{color:var(--text-primary);font-family:var(--font-serif);font-size:clamp(2rem,4vw,3.5rem);font-weight:300;margin-bottom:24px}.contact-text{color:var(--text-secondary);font-size:1rem;margin-bottom:40px;margin-left:auto;margin-right:auto;max-width:500px}.contact-links{display:flex;flex-wrap:wrap;gap:24px;justify-content:center}.contact-link{border:1px solid var(--border-light);border-radius:4px;color:var(--text-secondary);font-family:var(--font-mono);font-size:.8rem;letter-spacing:.05em;padding:12px 24px;transition:all .3s ease}.contact-link:hover{background-color:hsla(35,41%,64%,.05);border-color:var(--accent);color:var(--accent)}.footer{border-top:1px solid var(--border);padding:40px clamp(24px,5vw,64px);text-align:center}.footer-text{color:var(--text-muted);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.05em}@-webkit-keyframes heroSlideUp{0%{opacity:0;-webkit-transform:translateY(30px);transform:translateY(30px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes heroSlideUp{0%{opacity:0;-webkit-transform:translateY(30px);transform:translateY(30px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes heroFadeIn{0%{opacity:0}to{opacity:1}}@keyframes heroFadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes lineExpand{0%{-webkit-transform:scaleX(0);transform:scaleX(0)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes lineExpand{0%{-webkit-transform:scaleX(0);transform:scaleX(0)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@-webkit-keyframes scrollPulse{0%,to{opacity:.3;-webkit-transform:translateY(0);transform:translateY(0)}50%{opacity:.8;-webkit-transform:translateY(5px);transform:translateY(5px)}}@keyframes scrollPulse{0%,to{opacity:.3;-webkit-transform:translateY(0);transform:translateY(0)}50%{opacity:.8;-webkit-transform:translateY(5px);transform:translateY(5px)}}@media (max-width:768px){:root{--section-padding:80px}}@media (max-width:480px){:root{--section-padding:60px}}
/*# sourceMappingURL=main.8b7677bc.css.map*/