.navigation{position:fixed;top:0;left:0;right:0;z-index:1000;background:var(--bg-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);transition:all .2s ease}.navigation.scrolled{background:var(--bg-primary);border-bottom-color:var(--border)}.nav-content{max-width:1400px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.nav-logo{cursor:pointer;transition:transform .2s ease}.nav-logo:hover{transform:scale(1.05)}.logo-text{font-family:Playfair Display,serif;font-size:1.5rem;font-weight:500;color:var(--text-primary);letter-spacing:.05em}.nav-links{display:flex;gap:2rem;align-items:center}.nav-link{background:none;border:none;color:var(--text-secondary);font-family:Playfair Display,serif;font-size:.9rem;font-weight:400;cursor:pointer;padding:.5rem 0;position:relative;transition:color .2s ease}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--text-primary);transition:width .2s ease}.nav-link:hover{color:var(--text-primary)}.nav-link:hover:after{width:100%}@media (max-width: 768px){.nav-content{padding:1rem}.nav-links{gap:1.5rem}.nav-link{font-size:.9rem}}.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:8rem 4rem 4rem;background:var(--bg-primary);overflow:hidden}.hero-content{max-width:1400px;margin:0 auto;width:100%;position:relative;z-index:1}.hero-text{max-width:900px}.hero-name-wrapper{margin-bottom:4rem;position:relative}.hero-name{font-family:Playfair Display,serif;font-size:clamp(3rem,8vw,7rem);font-weight:400;letter-spacing:-.02em;line-height:1.1;margin:0;flex:1}.name-effect{position:relative;display:inline-block}.name-effect-brutal{font-family:Playfair Display,serif;color:var(--text-primary);font-weight:400;letter-spacing:-.02em}.hero-info{margin-bottom:3rem;max-width:600px}.hero-job{font-size:1.1rem;color:var(--text-secondary);font-weight:300;line-height:1.7;margin-bottom:1.5rem;text-transform:uppercase;letter-spacing:.1em;font-size:.85rem}.hero-bio{font-size:1.1rem;color:var(--text-primary);font-weight:300;line-height:1.8;max-width:500px}.hero-social{display:flex;gap:1rem;margin-top:3rem}.hero-social-link{display:flex;align-items:center;justify-content:center;width:36px;height:36px;color:var(--text-secondary);background:transparent;border:none;transition:all .2s ease;text-decoration:none;position:relative}.hero-social-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--text-primary);transition:width .2s ease}.hero-social-link:hover{color:var(--text-primary)}.hero-social-link:hover:after{width:100%}.hero-social-link svg{transition:transform .3s ease}.hero-social-link:hover svg{transform:scale(1.1)}.hero-decoration{display:none}.hero-divider{position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--border)}.hero-divider:before{content:"";position:absolute;left:4rem;top:0;width:60px;height:1px;background:var(--border)}@media (max-width: 768px){.hero{padding:6rem 2rem 3rem;min-height:90vh}.hero-name-wrapper,.hero-info{margin-bottom:2rem}.hero-social{margin-top:2rem}.hero-divider:before{left:2rem}}.about{position:relative;padding:6rem 4rem;background:var(--bg-primary);border-top:1px solid var(--border)}.about-content{max-width:1200px;margin:0 auto}.about-title{font-family:Playfair Display,serif;font-size:clamp(2rem,5vw,4rem);font-weight:400;margin-bottom:4rem;text-align:left;letter-spacing:-.02em}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.about-section{display:flex;flex-direction:column}.section-title{font-family:Playfair Display,serif;font-size:1.75rem;font-weight:400;margin-bottom:1.5rem;color:var(--text-primary);border-bottom:1px solid var(--border);padding-bottom:.5rem}.skills-container{display:flex;flex-wrap:wrap;gap:1rem}.skill-item{background:transparent;border:1px solid var(--border);border-radius:0;padding:.75rem 1.25rem;transition:all .2s ease}.skill-item:hover{border-color:var(--text-primary)}.skill-name{color:var(--text-primary);font-weight:500;font-size:1rem;position:relative;z-index:1}.description-container{display:flex;flex-direction:column;gap:1.5rem}.description-text{color:var(--text-secondary);font-size:1.1rem;line-height:1.8;text-align:left;margin-bottom:0}@media (max-width: 968px){.about-grid{grid-template-columns:1fr;gap:3rem}.about{padding:4rem 2rem}.about-title{margin-bottom:3rem}.section-title{font-size:1.5rem}.description-text{font-size:1rem;text-align:left}}.section-header{position:relative;padding:6rem 4rem 3rem;background:var(--bg-primary);border-bottom:1px solid var(--border);overflow:hidden}.header-content{max-width:1400px;margin:0 auto;position:relative;z-index:1}.header-text{text-align:left}.header-title{font-family:Playfair Display,serif;font-size:clamp(2rem,5vw,4rem);font-weight:400;margin-bottom:.5rem;letter-spacing:-.02em}.header-subtitle{font-family:Playfair Display,serif;font-size:1.25rem;color:var(--text-secondary);font-weight:400;font-style:italic}@media (max-width: 768px){.section-header{padding:4rem 2rem 2rem}.header-title{font-size:2rem}.header-subtitle{font-size:1rem}}.project-card{position:relative;background:var(--bg-card);border:1px solid var(--border);border-top:2px solid var(--border);padding:4rem 2rem;transition:all .3s ease;display:block;color:inherit;transform:scale(1)}.project-card:not(:first-child){margin-top:0;border-top:2px solid var(--border)}.project-card:not(:last-child):after{content:"";position:absolute;bottom:-1.5rem;left:0;right:0;height:1px;background:var(--border)}.project-card:hover,.project-card.hovered{background:var(--bg-secondary);transform:scale(1.02);border-color:var(--text-primary);border-top-color:var(--text-primary);box-shadow:0 4px 20px #00000014}.card-header{margin-bottom:1.5rem}.project-name{font-family:Playfair Display,serif;font-size:1.5rem;font-weight:400;margin:0;color:var(--text-primary);letter-spacing:-.02em}.project-description{color:var(--text-secondary);margin-bottom:1rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.project-topics{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.topic-tag{font-size:.75rem;padding:.25rem .75rem;background:transparent;color:var(--text-secondary);border-radius:0;border:1px solid var(--border);transition:all .2s ease}.topic-tag:hover{border-color:var(--text-primary);color:var(--text-primary)}.topic-tag.more{background:transparent;color:var(--text-secondary);border-color:var(--border)}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--border);flex-wrap:wrap;gap:1rem}.github-button{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 0;background:transparent;color:var(--text-secondary);text-decoration:none;font-weight:300;font-size:.85rem;transition:all .2s ease;border:none;cursor:pointer;position:relative}.github-button:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--text-primary);transition:width .2s ease}.github-button:hover{color:var(--text-primary)}.github-button:hover:after{width:100%}.github-button svg{flex-shrink:0}.project-stats{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}.stat-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.9rem}.language-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.stat-text{font-size:.9rem}@media (max-width: 768px){.project-card{padding:1.25rem}.project-name{font-size:1.25rem}.card-footer{flex-direction:column;align-items:stretch;gap:1rem}.project-stats{gap:1rem}.github-button{width:100%;justify-content:center}}.project-grid{display:grid;grid-template-columns:1fr;gap:3rem;padding:0;max-width:1000px;margin:0 auto}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.empty-state h2{color:var(--text-primary);margin-bottom:1rem;font-size:2rem}@media (max-width: 768px){.project-grid{grid-template-columns:1fr;gap:1.5rem;padding:1rem 0}}@media (min-width: 769px) and (max-width: 1024px){.project-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}.contact{position:relative;padding:6rem 2rem;background:var(--bg-primary);border-top:1px solid var(--border)}.contact-content{max-width:800px;margin:0 auto;text-align:center;position:relative;z-index:1}.contact-title{font-family:Playfair Display,serif;font-size:clamp(2rem,5vw,4rem);font-weight:400;margin-bottom:1.5rem;letter-spacing:-.02em}.contact-description{font-size:1.25rem;color:var(--text-secondary);margin-bottom:3rem;line-height:1.6}.contact-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem}.contact-link{display:flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:transparent;border:1px solid var(--border);border-radius:0;color:var(--text-primary);text-decoration:none;font-size:1rem;font-weight:400;transition:all .2s ease}.contact-link:hover{border-color:var(--text-primary);color:var(--text-primary)}.contact-link svg{transition:transform .3s ease;flex-shrink:0}.contact-link:hover svg{transform:scale(1.1)}@media (max-width: 768px){.contact{padding:4rem 2rem}.contact-title{font-size:2rem}.contact-description{font-size:1rem;margin-bottom:2rem}.contact-links{flex-direction:column;gap:1rem}.contact-link{width:100%;justify-content:center}}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:0 4rem 4rem;max-width:1400px;margin:0 auto;width:100%;background:var(--bg-primary)}.error-message{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.error-message h2{color:var(--text-primary);margin-bottom:1rem;font-size:2rem}.error-message p{margin-bottom:.5rem}.error-hint{margin-top:1rem;font-size:.9rem}.error-hint code{background:var(--bg-card);padding:.2rem .5rem;border-radius:4px;color:var(--accent)}@media (max-width: 768px){.main-content{padding:0 2rem 3rem}}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #ffffff;--bg-secondary: #fafafa;--bg-card: #ffffff;--text-primary: #1a1a1a;--text-secondary: #666666;--accent: #1a1a1a;--accent-hover: #333333;--border: #e5e5e5;--gradient-start: #1a1a1a;--gradient-end: #1a1a1a}body{font-family:Lora,Georgia,Times New Roman,serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);color:var(--text-primary);line-height:1.7;overflow-x:hidden;font-weight:400}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}
