:root{--bg-base:#0a0e1a;--bg-surface:#131a2b;--text-primary:#f5f5f0;--text-muted:#a9afc0;--accent-green:#9dc237;--border-subtle:#ffffff0f;--font-serif:"Playfair Display", "Lora", serif;--font-sans:"Inter", "Work Sans", sans-serif;--max-width:1200px;--pad-page-mobile:24px;--pad-page-desktop:80px;--gap-section:120px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-base);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);margin-bottom:1rem;font-weight:400;line-height:1.2}a{color:inherit;text-decoration:none;transition:all .2s}button{cursor:pointer;background:0 0;border:none;font-family:inherit}ul{list-style:none}.container{width:100%;max-width:var(--max-width);padding:0 var(--pad-page-mobile);margin:0 auto}@media (width>=1024px){.container{padding:0 var(--pad-page-desktop)}}.section{padding-top:var(--gap-section);padding-bottom:var(--gap-section);z-index:1;position:relative}.text-accent{color:var(--accent-green)}.text-muted{color:var(--text-muted)}.text-primary{color:var(--text-primary)}.section-title{margin-bottom:3rem;font-size:clamp(36px,5vw,56px)}.divider{background:linear-gradient(to right, transparent, var(--accent-green), transparent);opacity:.3;width:100%;height:1px;margin:4rem 0}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up{animation:.4s ease-out forwards fadeUp}.navbar{z-index:50;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);background-color:#0a0e1acc;width:100%;position:sticky;top:0}.navbar-container{justify-content:space-between;align-items:center;height:80px;display:flex}.brand{font-family:var(--font-sans);color:var(--accent-green);letter-spacing:-.02em;font-size:1.25rem;font-weight:500}.desktop-nav{gap:2rem;display:none}@media (width>=768px){.desktop-nav{display:flex}}.nav-link{font-family:var(--font-sans);color:var(--text-muted);padding:.5rem 0;font-size:.95rem;font-weight:500;position:relative}.nav-link:hover{color:var(--accent-green)}.nav-link.active{color:var(--text-primary)}.nav-link.active:after{content:"";background-color:var(--accent-green);width:100%;height:2px;position:absolute;bottom:0;left:0}.mobile-toggle{display:block}@media (width>=768px){.mobile-toggle{display:none}}.mobile-nav{background-color:var(--bg-base);width:100%;height:calc(100vh - 80px);padding:2rem var(--pad-page-mobile);z-index:40;flex-direction:column;gap:2rem;display:flex;position:fixed;top:80px;left:0}.mobile-link{font-family:var(--font-serif);color:var(--text-muted);font-size:2rem}.mobile-link.active{color:var(--accent-green)}.footer{text-align:center;border-top:1px solid var(--border-subtle);margin-top:auto}.footer-container{flex-direction:column;align-items:center;gap:2rem;display:flex}.footer-title{font-family:var(--font-sans);color:var(--text-primary);margin-bottom:0;font-size:1.5rem}.footer-socials{gap:1.5rem;display:flex}.social-btn{border:1px solid var(--border-subtle);width:48px;height:48px;color:var(--text-primary);background-color:var(--bg-surface);border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.social-btn:hover{border-color:var(--accent-green);color:var(--accent-green)}.footer-copyright{color:var(--text-muted);font-size:.85rem}.page-home{flex-direction:column;min-height:calc(100vh - 80px);display:flex}.hero-section{flex-direction:column;flex-grow:1;justify-content:center;align-items:center;gap:4rem;padding-top:4rem;padding-bottom:4rem;display:flex}@media (width>=1024px){.hero-section{flex-direction:row;justify-content:space-between;padding-top:8rem}}.hero-content{text-align:center;flex:1}@media (width>=1024px){.hero-content{text-align:left;max-width:600px}}.hero-eyebrow{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:1rem;font-size:.9rem}.hero-name{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(3rem,8vw,6rem);line-height:1.1}.hero-role{font-family:var(--font-sans);color:var(--text-primary);font-size:clamp(1.2rem,3vw,1.75rem);font-weight:300}.hero-visual{flex:1;justify-content:center;align-items:center;display:flex}@media (width>=1024px){.hero-visual{justify-content:flex-end}}.photo-placeholder{border:1px solid var(--border-subtle);background:radial-gradient(circle at 30% 30%,#9dc23733,#9dc2370d);border-radius:50%;width:280px;height:280px}@media (width>=768px){.photo-placeholder{width:360px;height:360px}}@media (width>=1024px){.photo-placeholder{width:440px;height:440px}}.teaser-section{text-align:center;max-width:800px;margin:0 auto}.teaser-text{font-family:var(--font-sans);color:var(--text-muted);font-size:clamp(1.1rem,2vw,1.5rem);font-weight:300;line-height:1.6}.timeline{flex-direction:column;gap:3rem;padding-left:20px;display:flex;position:relative}.timeline:before{content:"";background-color:var(--accent-green);opacity:.3;width:1px;position:absolute;top:0;bottom:0;left:3px}.timeline-item{position:relative}.timeline-dot{background-color:var(--accent-green);width:7px;height:7px;box-shadow:0 0 0 4px var(--bg-base);border-radius:50%;position:absolute;top:6px;left:-20px}.timeline-header{flex-direction:column;gap:.5rem;margin-bottom:.25rem;display:flex}@media (width>=640px){.timeline-header{flex-direction:row;justify-content:space-between;align-items:baseline}}.timeline-title{font-family:var(--font-sans);color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:500}.timeline-date{color:var(--text-muted);font-size:.9rem;font-family:var(--font-sans)}.timeline-subtitle{font-family:var(--font-sans);color:var(--accent-green);margin-bottom:.5rem;font-size:.95rem;font-weight:400}.timeline-desc{color:var(--text-muted);font-size:.95rem;line-height:1.5}.tag-list{flex-wrap:wrap;gap:1rem;display:flex}.tag-item{font-family:var(--font-sans);color:var(--text-muted);border:1px solid var(--border-subtle);background-color:#0000;border-radius:9999px;padding:.5rem 1rem;font-size:.9rem;transition:all .2s}.tag-item:hover{border-color:var(--accent-green);color:var(--text-primary)}.skill-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;height:100%;padding:40px;transition:border-color .3s}.skill-card:hover{border-color:#9dc2374d}.skill-icon-wrapper{color:var(--accent-green);margin-bottom:2rem}.skill-title{font-family:var(--font-sans);color:var(--text-primary);margin-bottom:1rem;font-size:1.25rem;font-weight:500}.skill-desc{color:var(--text-muted);font-size:.95rem;line-height:1.6}.page-about{min-height:calc(100vh - 80px)}.about-content{max-width:1000px}.about-paragraph{font-family:var(--font-sans);color:var(--text-primary);margin-bottom:2rem;font-size:clamp(1.1rem,2vw,1.25rem);font-weight:300;line-height:1.8}.availability-tag{font-family:var(--font-sans);color:var(--accent-green);border:1px solid var(--accent-green);border-radius:9999px;margin-bottom:5rem;padding:.5rem 1.25rem;font-size:.95rem;display:inline-block}.about-grid{grid-template-columns:1fr;gap:4rem;display:grid}@media (width>=768px){.about-grid{grid-template-columns:1fr 1fr;gap:6rem}}.subsection-title{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.05em;color:var(--text-primary);margin-bottom:2rem;font-size:1.1rem;font-weight:500}.margin-top-large{margin-top:4rem}.achievement-list{flex-direction:column;gap:1rem;display:flex}.achievement-list li{font-family:var(--font-sans);color:var(--text-muted);padding-left:1.5rem;font-size:.95rem;position:relative}.achievement-list li:before{content:"→";color:var(--accent-green);position:absolute;left:0}.skills-grid{grid-template-columns:1fr;gap:2rem;display:grid}@media (width>=768px){.skills-grid{grid-template-columns:repeat(3,1fr)}}.project-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;flex-direction:column;height:100%;transition:all .3s;display:flex;overflow:hidden}.project-card:hover{border-color:#9dc23766;transform:translateY(-4px)}.project-mockup{background-color:#1a233a;background-image:repeating-linear-gradient(45deg,#0000,#0000 10px,#ffffff05 10px 20px);width:100%;height:240px}.project-content{flex-direction:column;flex-grow:1;padding:32px;display:flex}.project-title{font-family:var(--font-sans);color:var(--text-primary);margin-bottom:.75rem;font-size:1.25rem;font-weight:500}.project-desc{color:var(--text-muted);flex-grow:1;margin-bottom:2rem;font-size:.95rem;line-height:1.6}.project-link{font-family:var(--font-sans);color:var(--accent-green);align-self:flex-start;font-size:.9rem;font-weight:500;position:relative}.project-link:after{content:"";background-color:var(--accent-green);transform-origin:100%;width:100%;height:1px;transition:transform .3s;position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.project-link:hover:after{transform-origin:0;transform:scaleX(1)}.page-projects{min-height:calc(100vh - 80px)}.projects-grid{grid-template-columns:1fr;gap:2rem;display:grid}@media (width>=768px){.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.projects-grid{grid-template-columns:repeat(3,1fr)}}.contact-form{flex-direction:column;gap:1.5rem;width:100%;display:flex}.form-row{flex-direction:column;gap:1.5rem;display:flex}@media (width>=640px){.form-row{flex-direction:row}}.form-group{flex:1}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}input,textarea{background-color:var(--bg-surface);width:100%;color:var(--text-primary);font-family:var(--font-sans);border:1px solid #0000;border-radius:8px;padding:1rem;font-size:1rem;transition:border-color .2s}input:focus,textarea:focus{border-color:var(--accent-green);outline:none}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:.6}textarea{resize:vertical;min-height:120px}.submit-btn{border:1px solid var(--accent-green);color:var(--accent-green);border-radius:8px;align-self:flex-start;padding:.75rem 2rem;font-size:1rem;font-weight:500;transition:all .2s}.submit-btn:hover{background-color:var(--accent-green);color:var(--bg-base)}.form-status{color:var(--text-primary);margin-top:1rem;font-size:.95rem}.page-contact{min-height:calc(100vh - 80px)}.contact-grid{grid-template-columns:1fr;gap:4rem;display:grid}@media (width>=768px){.contact-grid{grid-template-columns:1fr 1fr;gap:6rem}}.contact-intro{color:var(--text-muted);max-width:400px;margin-bottom:3rem;font-size:1.1rem;line-height:1.6}.contact-methods{flex-direction:column;gap:1.5rem;display:flex}.contact-link{font-family:var(--font-sans);color:var(--text-primary);align-items:center;gap:1rem;font-size:1.1rem;transition:color .2s;display:flex}.contact-link:hover,.contact-icon{color:var(--accent-green)}
