#root{width:100%;margin:0;padding:0;background-color:var(--bg-primary)}.app{background-color:var(--bg-primary);color:var(--text-primary)}.container{max-width:1200px;margin:0 auto;padding:0 40px}.hero-section{min-height:100vh;display:flex;align-items:center;padding-top:80px;background-color:var(--bg-primary)}.hero-content{width:100%;max-width:1200px;margin:0 auto;padding:0 40px}.hero-text h1{font-size:clamp(4rem,10vw,12rem);font-weight:300;line-height:.85;letter-spacing:-.03em;color:var(--text-primary);margin-bottom:2rem}.hero-subtitle{font-size:clamp(1.2rem,2.5vw,2rem);font-weight:400;color:var(--text-secondary);margin-bottom:3rem;text-transform:uppercase;letter-spacing:.1em}.hero-description{font-size:clamp(1rem,1.5vw,1.3rem);color:var(--text-tertiary);line-height:1.6;max-width:500px;margin-bottom:0}.about-section{padding:120px 0;background-color:var(--bg-secondary);border-top:1px solid var(--border-color)}.section-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.grid-item h2{font-size:clamp(2.5rem,4vw,4rem);font-weight:300;color:var(--text-primary);margin-bottom:2rem;line-height:1.1}.grid-item h3{font-size:1.5rem;font-weight:400;color:var(--text-primary);margin-bottom:1.5rem;text-transform:uppercase;letter-spacing:.1em}.grid-item p{font-size:1.1rem;color:var(--text-secondary);line-height:1.7}.skills-list{display:flex;flex-wrap:wrap;gap:12px}.skills-list span{padding:8px 16px;background-color:var(--bg-primary);border:1px solid var(--border-color);font-size:.9rem;color:var(--text-secondary);font-weight:400;letter-spacing:.05em}.projects-section{padding:120px 0;background-color:var(--bg-primary)}.projects-section h2{font-size:clamp(2.5rem,4vw,4rem);font-weight:300;color:var(--text-primary);margin-bottom:4rem;text-align:center}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:40px}.project-card{padding:40px;border:1px solid var(--border-color);background-color:var(--bg-primary);transition:all .3s ease;position:relative}.project-card.clickable{cursor:pointer}.project-card.clickable:hover{transform:translateY(-8px);box-shadow:0 20px 60px #ffffff26;border-color:var(--text-secondary)}.project-cta{margin-top:1.5rem;opacity:0;transition:opacity .3s ease}.project-card.clickable:hover .project-cta{opacity:1}.project-cta span{font-size:.9rem;color:var(--text-tertiary);font-style:italic;letter-spacing:.05em}.project-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #ffffff1a;border-color:var(--text-tertiary)}.project-number{font-size:.9rem;color:var(--text-tertiary);margin-bottom:1rem;font-weight:400;letter-spacing:.1em}.project-card h3{font-size:1.8rem;font-weight:400;color:var(--text-primary);margin-bottom:1rem;line-height:1.3}.project-card p{font-size:1rem;color:var(--text-secondary);line-height:1.6;margin-bottom:2rem}.project-tech{display:flex;gap:10px;flex-wrap:wrap}.project-tech span{padding:6px 12px;background-color:var(--bg-secondary);border:1px solid var(--border-color);font-size:.8rem;color:var(--text-tertiary);font-weight:400;letter-spacing:.05em}.contact-section{padding:120px 0;background-color:var(--bg-secondary);border-top:1px solid var(--border-color)}.contact-content{text-align:center;max-width:600px;margin:0 auto}.contact-content h2{font-size:clamp(2.5rem,4vw,4rem);font-weight:300;color:var(--text-primary);margin-bottom:2rem;line-height:1.1}.contact-content p{font-size:1.1rem;color:var(--text-secondary);line-height:1.7;margin-bottom:3rem}.contact-links{display:flex;justify-content:center;gap:40px}.contact-links a{color:var(--text-primary);text-decoration:none;font-size:1rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid transparent;transition:all .3s ease;padding-bottom:4px}.contact-links a:hover{border-bottom-color:var(--text-primary)}@media (max-width: 1024px){.container,.hero-content{padding:0 30px}.section-grid{gap:60px}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}}@media (max-width: 768px){.container,.hero-content{padding:0 20px}.hero-section{padding-top:60px}.section-grid{grid-template-columns:1fr;gap:40px}.about-section,.projects-section,.contact-section{padding:80px 0}.project-card{padding:30px}.contact-links{flex-direction:column;gap:20px}}@media (max-width: 480px){.container,.hero-content{padding:0 15px}.about-section,.projects-section,.contact-section{padding:60px 0}.project-card{padding:20px}.skills-list{gap:8px}.skills-list span{padding:6px 12px;font-size:.8rem}.project-tech{gap:8px}.project-tech span{padding:4px 8px;font-size:.7rem}}img{max-width:100%;height:auto}.text-center{text-align:center}.fade-in{opacity:0;animation:fadeIn .8s ease-in-out forwards}@keyframes fadeIn{to{opacity:1}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:9999;padding:2rem;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);animation:fadeIn .3s ease-out}.modal-content{background-color:var(--bg-secondary);border:1px solid var(--border-color);max-width:800px;max-height:90vh;width:100%;overflow-y:auto;position:relative;animation:slideUp .3s ease-out;box-shadow:0 20px 60px #00000080}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:2rem;color:var(--text-secondary);cursor:pointer;z-index:10;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;border-radius:50%}.modal-close:hover{background-color:var(--hover-bg);color:var(--text-primary)}.modal-image{width:100%;height:300px;overflow:hidden;background-color:var(--bg-primary);display:flex;align-items:center;justify-content:center}.modal-image img{width:100%;height:100%;object-fit:cover}.modal-details{padding:2rem}.modal-details h2{font-size:2rem;font-weight:300;color:var(--text-primary);margin-bottom:1rem;line-height:1.2}.modal-description{font-size:1.1rem;color:var(--text-secondary);line-height:1.7;margin-bottom:2rem}.modal-tech{margin-bottom:2rem}.modal-tech h4{font-size:1rem;font-weight:400;color:var(--text-primary);margin-bottom:1rem;text-transform:uppercase;letter-spacing:.1em}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{padding:.5rem 1rem;background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);font-size:.9rem;font-weight:400;letter-spacing:.05em}.modal-links{display:flex;gap:1rem;flex-wrap:wrap}.modal-button{padding:.75rem 1.5rem;background-color:transparent;border:1px solid var(--text-primary);color:var(--text-primary);text-decoration:none;font-size:.9rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;transition:all .3s ease;display:inline-block}.modal-button:hover{background-color:var(--text-primary);color:var(--bg-primary);transform:translateY(-1px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.modal-overlay{padding:1rem}.modal-content{max-height:95vh}.modal-image{height:200px}.modal-details{padding:1.5rem}.modal-details h2{font-size:1.5rem}.modal-description{font-size:1rem}.modal-links{flex-direction:column}.modal-button{text-align:center;width:100%}}@media (max-width: 480px){.modal-overlay{padding:.5rem}.modal-details{padding:1rem}.modal-details h2{font-size:1.3rem}.modal-description{font-size:.9rem}.tech-tag{padding:.4rem .8rem;font-size:.8rem}}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg-primary: #0a0a0a;--bg-secondary: #121212;--text-primary: #ffffff;--text-secondary: #b3b3b3;--text-tertiary: #8a8a8a;--border-color: #2a2a2a;--accent-color: #ffffff;--hover-bg: #1a1a1a;--shadow-light: rgba(255, 255, 255, .05);--shadow-medium: rgba(255, 255, 255, .1);color:var(--text-primary);background-color:var(--bg-primary)}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary);transition:all .2s ease}a{color:var(--text-primary);text-decoration:none;transition:all .2s ease}a:hover{color:var(--text-secondary)}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:300;letter-spacing:-.02em}p{color:var(--text-secondary);line-height:1.7}button{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);padding:12px 24px;font-family:inherit;font-size:14px;font-weight:400;cursor:pointer;transition:all .2s ease;border-radius:0;letter-spacing:.5px}button:hover{background:var(--hover-bg);transform:translateY(-1px);box-shadow:0 4px 12px var(--shadow-light)}button:focus{outline:none;box-shadow:0 0 0 2px var(--text-primary)}.layout{min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-primary)}.main-content{flex:1;width:100%}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1.5rem 0;transition:all .3s ease;background-color:#0a0a0af2;border-bottom:1px solid var(--border-color);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.navbar_container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.navbar_logo h1{font-size:1.2rem;font-weight:300;color:var(--text-primary);margin:0;letter-spacing:2px}.logo-link{background:none;border:none;cursor:pointer;padding:0;color:inherit}.navbar_items{display:flex;align-items:center}.navbar_items ul{display:flex;list-style:none;margin:0;padding:0;gap:3rem}.navbar_items li{margin:0}.navbar_items button{background:none;border:none;cursor:pointer;color:var(--text-secondary);font-weight:300;font-size:14px;letter-spacing:1px;text-transform:uppercase;transition:color .3s ease;position:relative;padding:.5rem 0;font-family:inherit}.navbar_items button:hover{color:var(--text-primary)}.active-link{color:var(--text-primary)!important;font-weight:400}.active-link:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:1px;background-color:var(--text-primary)}.mobile-menu-button{display:none;flex-direction:column;justify-content:center;align-items:center;width:30px;height:30px;background:none;border:none;cursor:pointer;padding:0}.menu-icon{position:relative;width:20px;height:1px;background-color:var(--text-primary);transition:all .3s ease}.menu-icon:before,.menu-icon:after{content:"";position:absolute;width:20px;height:1px;background-color:var(--text-primary);transition:all .3s ease}.menu-icon:before{top:-6px}.menu-icon:after{bottom:-6px}.menu-icon.open{background-color:transparent}.menu-icon.open:before{top:0;transform:rotate(45deg)}.menu-icon.open:after{bottom:0;transform:rotate(-45deg)}@media (max-width: 768px){.navbar{padding:1rem 0}.navbar_container{padding:0 1rem}.mobile-menu-button{display:flex}.navbar_items{position:absolute;top:100%;left:0;right:0;background-color:#0a0a0af2;border-bottom:1px solid var(--border-color);transform:translateY(-100%);opacity:0;visibility:hidden;transition:all .3s ease;z-index:999;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.navbar_items.active{transform:translateY(0);opacity:1;visibility:visible}.navbar_items ul{flex-direction:column;gap:0;padding:2rem;width:100%}.navbar_items li{width:100%;border-bottom:1px solid var(--border-color);padding:1rem 0}.navbar_items li:last-child{border-bottom:none}.navbar_items button{display:block;width:100%;font-size:16px;text-align:center}}
