@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_396b12ce-module__rRjk0G__className{font-family:Inter,Inter Fallback;font-style:normal}
*{box-sizing:border-box;margin:0;padding:0}:root{--font-mono:"SF Mono","Fira Code","Consolas",monospace;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}:root,.lightMode{--bg-primary:#fff;--bg-secondary:#f0f0f0;--text-primary:#1a1a1a;--text-secondary:#4a4a4a;--accent:#0ca678;--border:#d0d0d0;--success:#0ca678;--error:#d63384;--gradient:linear-gradient(135deg,#0ca678 0%,#0891b2 100%)}.darkMode{--bg-primary:#0a0a0a;--bg-secondary:#1a1a1a;--text-primary:#fff;--text-secondary:#b0b0b0;--accent:#0f8;--border:#2a2a2a;--success:#0f8;--error:#f44;--gradient:linear-gradient(135deg,#0f8 0%,#0cf 100%)}body{font-family:var(--font-sans);background:var(--bg-secondary);color:var(--text-primary);line-height:1.6;overflow-x:hidden}main{background-color:var(--bg-secondary);min-height:100vh;padding-top:100px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.6s forwards fadeInUp}@media (max-width:768px){.hero{text-align:center;grid-template-columns:1fr}.nav-links{display:none}.project-grid{grid-template-columns:1fr}.skills{flex-direction:column;align-items:center}.home-about-container{grid-template-columns:1fr;gap:2.5rem;padding:2rem}.home-skills-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.home-teasers{gap:2rem}.teaser-card{padding:2rem}}
header{z-index:1000;background:var(--bg-primary);-webkit-backdrop-filter:blur(20px)saturate(180%);border-bottom:1px solid var(--border);width:100%;padding:1.25rem 2rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:0;right:0;box-shadow:0 1px 3px #0000000d}.lightMode header{background:#ffffffd9}.darkMode header{background:#121212d9}header.scrolled{border-bottom-color:var(--border);padding:1rem 2rem;box-shadow:0 4px 20px #0000001a}header.menu-open{background:var(--bg-primary)}.header-container{justify-content:space-between;align-items:center;gap:2rem;max-width:1400px;margin:0 auto;display:flex}.logo{align-items:baseline;gap:.5rem;text-decoration:none;transition:transform .3s;display:flex}.logo:hover{transform:translateY(-2px)}.logo-text{background:var(--gradient);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;font-size:1.75rem;font-weight:700}.logo-subtitle{color:var(--text-secondary);opacity:.7;font-size:.85rem;font-weight:500}.nav-links{gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.nav-links a{color:var(--text-primary);white-space:nowrap;border-radius:8px;padding:.5rem 1rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .3s;position:relative}.nav-links a:before{content:"";background:var(--gradient);opacity:0;z-index:-1;border-radius:8px;transition:opacity .3s;position:absolute;inset:0}.nav-links a:hover{color:var(--accent);transform:translateY(-1px)}.nav-links a:hover:before{opacity:.1}.nav-links a.active{color:var(--accent);font-weight:600}.nav-links a.active:before{opacity:.15}.nav-links a.active:after{content:"";background:var(--gradient);border-radius:2px;width:60%;height:2px;position:absolute;bottom:.25rem;left:50%;transform:translate(-50%)}.header-controls{align-items:center;gap:1rem;display:flex}.language-selector{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;gap:.25rem;padding:.25rem;display:flex}.lang-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;min-width:40px;padding:.4rem .75rem;font-size:.85rem;font-weight:500;transition:all .2s}.lang-btn:hover{color:var(--text-primary);background:var(--bg-primary)}.lang-btn.active{background:var(--gradient);color:var(--bg-primary);box-shadow:0 2px 8px #0000001a}.theme-toggle{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;padding:.6rem;transition:all .3s;display:flex}.theme-toggle:hover{border-color:var(--accent);color:var(--accent);transform:rotate(15deg)scale(1.05);box-shadow:0 4px 12px #0000001a}.mobile-menu-toggle{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;border-radius:12px;padding:.6rem;transition:all .3s;display:none}.mobile-menu-toggle:hover{border-color:var(--accent);color:var(--accent)}@media (max-width:968px){header{padding:1rem 1.5rem}.header-container{gap:1rem}.nav-links{background:var(--bg-primary);border-top:1px solid var(--border);border-bottom:1px solid var(--border);opacity:0;visibility:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);flex-direction:column;gap:.5rem;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:fixed;top:70px;left:0;right:0;transform:translateY(-100%);box-shadow:0 4px 20px #0000001a}.nav-links.mobile-open{opacity:1;visibility:visible;transform:translateY(0)}.nav-links a{border-radius:12px;width:100%;padding:1rem;display:block}.nav-links a.active:after{content:"";background:var(--gradient);border-radius:2px;width:20%;height:2px;position:absolute;bottom:.25rem;left:14%;transform:translate(-50%)}.mobile-menu-toggle{justify-content:center;align-items:center;display:flex}.language-selector{display:none}header.menu-open .language-selector{z-index:1001;display:flex;position:absolute;top:calc(100% + 1rem);right:1.5rem}}@media (max-width:640px){header{padding:1rem}.logo-subtitle{display:none}.header-controls{gap:.5rem}.theme-toggle{padding:.5rem}}
.footer{background:var(--bg-secondary);border-top:1px solid var(--border);color:var(--text-primary);margin-top:4rem}.footer-content{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem;max-width:1400px;margin:0 auto;padding:4rem 2rem 2rem;display:grid}.footer-section{flex-direction:column;gap:1.5rem;display:flex}.footer-brand{max-width:300px}.footer-logo{align-items:baseline;gap:.5rem;width:fit-content;text-decoration:none;transition:transform .3s;display:flex}.footer-logo:hover{transform:translateY(-2px)}.footer-logo-text{background:var(--gradient);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700}.footer-logo-subtitle{color:var(--text-secondary);opacity:.7;font-size:.9rem;font-weight:500}.footer-tagline{color:var(--text-secondary);margin:0;font-size:.95rem;line-height:1.6}.footer-social{gap:1rem;margin-top:.5rem;display:flex}.social-link{background:var(--bg-primary);border:1px solid var(--border);width:44px;height:44px;color:var(--text-primary);border-radius:12px;justify-content:center;align-items:center;text-decoration:none;transition:all .3s;display:flex}.social-link:hover{border-color:var(--accent);color:var(--accent);background:var(--bg-secondary);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.footer-section-title{color:var(--text-primary);margin:0 0 1rem;padding-bottom:.75rem;font-size:1.1rem;font-weight:600;position:relative}.footer-section-title:after{content:"";background:var(--gradient);border-radius:2px;width:40px;height:2px;position:absolute;bottom:0;left:0}.footer-nav-links{flex-direction:column;gap:.75rem;display:flex}.footer-nav-link{color:var(--text-secondary);width:fit-content;padding:.5rem 0;font-size:.95rem;font-weight:400;text-decoration:none;transition:all .3s;position:relative}.footer-nav-link:before{content:"";background:var(--accent);opacity:0;border-radius:50%;width:4px;height:4px;transition:all .3s;position:absolute;top:50%;left:-.5rem;transform:translateY(-50%)}.footer-nav-link:hover{color:var(--accent);padding-left:1rem}.footer-nav-link:hover:before{opacity:1;left:0}.footer-info-list{flex-direction:column;gap:1rem;display:flex}.footer-info-item{color:var(--text-secondary);align-items:flex-start;gap:.75rem;font-size:.95rem;line-height:1.6;display:flex}.footer-info-item svg{color:var(--accent);flex-shrink:0;margin-top:.2rem}.footer-legal-links{flex-direction:column;gap:.75rem;display:flex}.footer-legal-link{color:var(--text-secondary);width:fit-content;padding:.5rem 0;font-size:.95rem;font-weight:400;text-decoration:none;transition:all .3s;position:relative}.footer-legal-link:before{content:"";background:var(--accent);opacity:0;border-radius:50%;width:4px;height:4px;transition:all .3s;position:absolute;top:50%;left:-.5rem;transform:translateY(-50%)}.footer-legal-link:hover{color:var(--accent);padding-left:1rem}.footer-legal-link:hover:before{opacity:1;left:0}.footer-bottom{border-top:1px solid var(--border);background:var(--bg-primary);padding:2rem}.footer-bottom-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;max-width:1400px;margin:0 auto;display:flex}.footer-copyright,.footer-made-with{color:var(--text-secondary);margin:0;font-size:.9rem}@media (max-width:968px){.footer-content{grid-template-columns:repeat(2,1fr);gap:2.5rem;padding:3rem 1.5rem 2rem}.footer-brand{grid-column:1/-1;max-width:none}}@media (max-width:640px){.footer-content{grid-template-columns:1fr;gap:2rem;padding:2.5rem 1.5rem 1.5rem}.footer-brand{grid-column:1}.footer-bottom-content{text-align:center;flex-direction:column}.footer-bottom{padding:1.5rem}}
