.navbar{z-index:100;height:50px;transition:background var(--transition-base), border-color var(--transition-base), backdrop-filter var(--transition-base);background:0 0;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:0 100px;display:flex;position:sticky;top:0}.navbar.scrolled{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom-color:var(--border-subtle);background:#ffffff05}.nav-logo{color:var(--text-primary);align-items:center;height:28px;display:inline-flex}.nav-logo-svg{width:auto;height:22px;display:block}.nav-links{gap:2rem;display:flex}.nav-link{color:var(--text-subtle);cursor:pointer;transition:color var(--transition-base);background:0 0;border:none;padding:0;font-family:inherit;font-size:.78rem}.nav-link:hover{color:var(--text-primary)}.nav-lang{border:.5px solid var(--text-disabled);color:var(--text-primary);letter-spacing:.08em;border-radius:var(--radius-full);cursor:pointer;height:26px;transition:border-color var(--transition-base), color var(--transition-base);background:0 0;padding:0 10px;font-family:inherit;font-size:.72rem;font-weight:600}.nav-lang:hover{border-color:var(--border-strong);color:var(--text-primary)}@media (width<=768px){.navbar{padding:0 24px}.nav-links{gap:1rem}.nav-link{font-size:.78rem}.nav-lang{padding:4px 10px;font-size:.7rem}}@media (width<=480px){.navbar{padding:0 18px}.nav-links{gap:.7rem}.nav-link{font-size:.72rem}}@media (width<=360px){.nav-logo{font-size:.85rem}.nav-links{gap:.5rem}.nav-link{font-size:.68rem}}.bg-grid-container{background-color:var(--bg-primary);z-index:-1;pointer-events:none;width:100vw;height:100vh;display:grid;position:fixed;top:0;left:0;overflow:hidden}.bg-grid-cell{border-right:1px solid var(--overlay-grid);border-bottom:1px solid var(--overlay-grid);width:50px;height:50px;transition:background-color .8s}.bg-grid-cell.active{background-color:var(--overlay-grid-active);transition:background-color}.social-icons{align-items:center;gap:10px;display:flex}.social-icon{background:var(--bg-secondary);border:.5px solid var(--border-subtle);width:36px;height:36px;color:var(--text-subtle);cursor:pointer;transition:color var(--transition-base), border-color var(--transition-base), background var(--transition-base), transform var(--transition-base);border-radius:50%;justify-content:center;align-items:center;padding:0;font-family:inherit;text-decoration:none;display:inline-flex}.social-icon:hover{color:var(--text-primary);border-color:var(--border-medium);background:var(--bg-elevated);transform:translateY(-1px)}.social-icon-disabled{opacity:.4;cursor:not-allowed}.social-icon-disabled:hover{color:var(--text-subtle);border-color:var(--border-subtle);background:var(--bg-secondary);transform:none}.social-icons-mobile-only{display:none}@media (width<=768px){.social-icons-mobile-only{display:flex}}.home-wrapper{width:100%;max-width:100vw;position:relative;overflow-x:hidden}.home-spotlight{pointer-events:none;z-index:0;position:fixed;inset:0}.home-hero{z-index:2;text-align:center;border-bottom:.5px solid var(--border-subtle);flex-direction:column;justify-content:center;align-items:center;height:500px;padding:0 100px;display:flex;position:relative}.home-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);margin-bottom:24px;font-size:.68rem}.home-name{letter-spacing:-.04em;color:var(--text-primary);min-height:1.1em;margin-bottom:8px;font-size:3.5rem;font-weight:800;line-height:1.05}.home-cursor{background:var(--text-primary);vertical-align:middle;width:3px;height:.85em;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.home-role{letter-spacing:-.04em;color:var(--text-secondary);margin-bottom:32px;font-size:3.5rem;font-weight:800;line-height:1.05}.home-description{color:var(--text-subtle);max-width:420px;margin-bottom:36px;font-size:.95rem;line-height:1.75}.home-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.home-btn-primary{background:var(--text-primary);color:var(--bg-primary);border-radius:var(--radius-full);height:36px;transition:background var(--transition-base);align-items:center;padding:0 20px;font-size:.8rem;font-weight:500;display:flex}.home-btn-primary:hover{background:var(--accent-hover)}.home-btn-secondary,.home-btn-figma{color:var(--text-secondary);border-radius:var(--radius-full);border:.5px solid var(--border-soft);height:36px;transition:border-color var(--transition-base), color var(--transition-base);background:0 0;align-items:center;padding:0 20px;font-size:.8rem;display:flex}.home-btn-secondary:hover{border-color:var(--border-strong);color:var(--text-primary)}.home-stats{z-index:2;border-bottom:.5px solid var(--border-subtle);grid-template-columns:repeat(2,1fr);height:100px;display:grid;position:relative}.home-stat{border-right:.5px solid var(--border-subtle);flex-direction:column;justify-content:center;align-items:center;display:flex}.home-stat:last-child{border-right:none}.home-stat-num{letter-spacing:-.04em;color:var(--text-primary);margin-bottom:6px;font-size:1.8rem;font-weight:700;line-height:1}.home-stat-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.1em;font-size:.65rem}.home-languages{z-index:2;border-bottom:.5px solid var(--border-subtle);justify-content:center;align-items:center;gap:1.5rem;height:50px;padding:0 24px;display:flex;position:relative}.lang-item{align-items:center;gap:.5rem;display:flex}.lang-code{color:var(--text-primary);letter-spacing:.05em;font-size:.72rem;font-weight:600}.lang-level{color:var(--text-faint);font-size:.68rem}.lang-dot{color:var(--border-soft);font-size:.8rem}.home-skills{z-index:2;border-bottom:.5px solid var(--border-subtle);padding:50px 100px;position:relative}.home-section-title{letter-spacing:-.03em;color:var(--text-primary);margin-bottom:36px;font-size:1.6rem;font-weight:700}.skills-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.skill-card{background:var(--bg-secondary);border:.5px solid var(--border-subtle);border-radius:var(--radius-xl);transition:background var(--transition-base), border-color var(--transition-base), opacity .6s ease, transform .6s ease, filter .6s ease;cursor:default;flex-direction:row;align-items:center;gap:64px;padding:20px;display:flex}.skill-card:hover{border-color:var(--text-disabled);background:#0f0f0f}.skill-badge{border-radius:var(--radius-lg);background:var(--border-subtle);border:.5px solid var(--border-soft);width:64px;height:64px;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;font-size:1.6rem;font-weight:600;display:flex}.skill-card:nth-child(5){grid-column:2}.skill-info{flex-direction:column;align-items:center;gap:4px;display:flex}.figma-logo{filter:brightness(0)invert()opacity(.27);width:36px;height:36px}.skill-name{color:var(--text-primary);font-size:.95rem;font-weight:900}.skill-level{color:var(--text-faint);font-size:.7rem}.home-projects{z-index:2;border-bottom:.5px solid var(--border-subtle);padding:50px 0 50px 100px;position:relative}.home-projects-header{margin-bottom:28px;padding-right:100px}.carousel-wrap{position:relative;overflow:hidden}.carousel-wrap:after{content:"";background:linear-gradient(to right, transparent, var(--bg-primary));pointer-events:none;z-index:3;width:120px;position:absolute;top:0;bottom:0;right:0}.carousel{gap:12px;width:max-content;animation:30s linear infinite carousel-scroll;display:flex}.carousel:hover{animation-play-state:paused}@keyframes carousel-scroll{0%{transform:translate(0)}to{transform:translate(calc(-50% - 6px))}}.proj-card{background:var(--bg-secondary);border:.5px solid var(--border-subtle);border-radius:var(--radius-xl);transition:border-color var(--transition-base);transform-style:preserve-3d;color:inherit;flex-direction:column;flex:0 0 260px;padding:24px;text-decoration:none;display:flex;position:relative}.proj-card:hover{border-color:var(--text-disabled)}.proj-arrow{color:var(--text-disabled);transition:color var(--transition-base), transform var(--transition-base);font-size:.8rem;position:absolute;top:20px;right:20px}.proj-card:hover .proj-arrow{color:var(--text-muted);transform:translate(2px,-2px)}.proj-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin-bottom:12px;font-size:.62rem;overflow:hidden}.proj-title{letter-spacing:-.02em;color:var(--text-primary);margin-bottom:8px;font-size:.95rem;font-weight:600}.proj-desc{color:var(--text-subtle);flex:1;margin-bottom:16px;font-size:.78rem;line-height:1.6}.proj-tech{flex-wrap:wrap;gap:6px;display:flex}.tech-pill{background:var(--bg-tertiary);border:.5px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-subtle);padding:3px 8px;font-size:.62rem}.carousel-progress{background:var(--border-subtle);border-radius:var(--radius-full);cursor:pointer;width:calc(100% - 100px);height:2px;margin-top:24px;overflow:hidden}.carousel-progress-fill{background:var(--text-primary);border-radius:var(--radius-full);height:100%}.home-split{z-index:2;border-bottom:.5px solid var(--border-subtle);grid-template-columns:1fr 1fr;display:grid;position:relative}.home-about{border-right:.5px solid var(--border-subtle);padding:50px 100px}.home-contact{padding:50px 100px}.home-about-p{color:var(--text-secondary);margin-bottom:14px;font-size:.88rem;line-height:1.85}.contact-rows{flex-direction:column;display:flex}.contact-row{border-bottom:.5px solid var(--bg-elevated);color:inherit;justify-content:space-between;align-items:center;padding:24px 0;text-decoration:none;display:flex}.contact-row-link{cursor:pointer;transition:padding-left var(--transition-base)}.contact-row-link:hover{padding-left:8px}.contact-row-link:hover .c-value{color:var(--text-primary)}.contact-row:last-child{border-bottom:none}.c-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);font-size:.65rem}.c-value{color:var(--text-muted);font-size:.82rem}.home-footer{z-index:2;border-top:.5px solid var(--border-subtle);justify-content:space-between;align-items:center;height:50px;padding:0 100px;display:flex;position:relative}.footer-text{color:var(--text-faint);font-size:.68rem}.reveal{opacity:0;filter:blur(12px);transition:opacity .8s,filter .8s,transform .8s;transform:translateY(16px)scale(.98)}.reveal.visible{opacity:1;filter:blur();transform:translateY(0)scale(1)}@keyframes rainbow{0%{border-color:red}17%{border-color:#f80}33%{border-color:#ff0}50%{border-color:#0f8}67%{border-color:#08f}83%{border-color:#80f}to{border-color:red}}.home-btn-figma:hover{color:var(--accent-white);border-width:2px;animation:1.5s linear infinite rainbow}.contact-row-social{border-bottom:none;padding-top:18px;display:none}.contact-row-social .social-icons{gap:8px}@media (width<=768px){.contact-row-social{display:flex}}.social-icons-footer .social-icon{width:32px;height:32px}.social-icons-footer .social-icon svg{width:16px;height:16px}@media (width<=1280px){.skill-card{gap:20px;padding:16px}.skill-badge{width:52px;height:52px;font-size:1.3rem}.figma-logo{width:28px;height:28px}}@media (width<=1024px){.home-hero{padding:0 60px}.home-skills{padding:50px 60px}.skills-grid{grid-template-columns:repeat(3,1fr)}.skill-card:nth-child(5){grid-column:auto}.skill-card{gap:14px}.home-projects{padding:50px 0 50px 60px}.home-projects-header{padding-right:60px}.home-about,.home-contact{padding:50px 60px}.home-footer{padding:0 60px}.carousel-progress{width:calc(100% - 60px)}.carousel-wrap:after{display:none}}@media (width<=768px){.home-hero{height:auto;min-height:480px;padding:60px 28px}.home-name,.home-role{font-size:2.2rem}.home-description{max-width:100%;font-size:.9rem}.home-actions{gap:8px;width:100%;max-width:320px}.home-btn-primary{flex-basis:100%;justify-content:center}.home-btn-secondary,.home-btn-figma{flex:1;justify-content:center}.home-btn-primary,.home-btn-secondary,.home-btn-figma{height:34px;padding:0 14px;font-size:.75rem}.home-stats{height:auto}.home-stat{padding:20px 12px}.home-stat-num{font-size:1.5rem}.home-languages{flex-wrap:wrap;gap:.6rem;height:auto;padding:16px 28px}.home-skills{padding:40px 28px}.home-section-title{margin-bottom:24px;font-size:1.3rem}.skills-grid{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.skill-card{text-align:center;flex-direction:column;align-items:center;gap:8px;width:150px;padding:18px 14px}.skill-card:nth-child(5){grid-column:auto}.skill-badge{border-radius:var(--radius-md);width:44px;height:44px;font-size:1rem}.figma-logo{width:24px;height:24px}.skill-info{align-items:center}.skill-name{text-align:center;font-size:.8rem}.skill-level{text-align:center;font-size:.62rem}.home-projects{padding:40px 0 40px 28px}.home-projects-header{margin-bottom:20px;padding-right:28px}.carousel-wrap{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow:auto hidden}.carousel-wrap::-webkit-scrollbar{display:none}.carousel-wrap:after{display:none}.carousel{width:max-content;padding-right:28px;animation:none}.carousel:hover{animation-play-state:running}.proj-card{scroll-snap-align:start;flex:0 0 230px;padding:18px}.carousel-progress{display:none}.home-split{grid-template-columns:1fr}.home-about{border-right:none;border-bottom:.5px solid var(--border-subtle);padding:40px 28px}.home-contact{padding:40px 28px}.home-about-p{font-size:.85rem;line-height:1.7}.contact-row{padding:18px 0}.home-footer{gap:12px;padding:0 28px}.footer-text{font-size:.62rem}}@media (width<=480px){.home-hero{min-height:420px;padding:50px 20px}.home-name,.home-role{font-size:1.85rem}.home-eyebrow{margin-bottom:18px;font-size:.62rem}.home-description{margin-bottom:28px;font-size:.84rem}.home-languages{padding:14px 20px}.home-skills{padding:36px 20px}.skills-grid{grid-template-columns:repeat(2,1fr);gap:8px}.skill-card{gap:8px;padding:14px 8px}.skill-badge{width:40px;height:40px;font-size:.9rem}.figma-logo{width:20px;height:20px}.skill-name{font-size:.75rem}.skill-level{font-size:.58rem}.home-projects{padding:32px 0 32px 20px}.home-projects-header,.carousel{padding-right:20px}.proj-card{flex:0 0 220px}.home-about,.home-contact{padding:32px 20px}.home-section-title{font-size:1.15rem}.home-footer{flex-direction:column;gap:6px;height:auto;padding:14px 20px}}@media (width<=360px){.home-hero{padding:40px 16px}.home-name,.home-role{font-size:1.6rem}.home-stat-num{font-size:1.3rem}.home-stat-label{font-size:.6rem}.home-languages{gap:.45rem;padding:12px 16px}.lang-code{font-size:.68rem}.lang-level{font-size:.62rem}.home-skills{padding:32px 16px}.home-projects{padding:28px 0 28px 16px}.home-projects-header,.carousel{padding-right:16px}.proj-card{flex:0 0 200px}.home-about,.home-contact{padding:28px 16px}.home-footer{padding:12px 16px}}.social-sidebar{z-index:50;flex-direction:column;align-items:center;gap:14px;animation:.6s ease-out .4s both social-sidebar-fade-in;display:flex;position:fixed;top:50%;right:30px;transform:translateY(-50%)}@keyframes social-sidebar-fade-in{0%{opacity:0;transform:translateY(-50%)translate(20px)}to{opacity:1;transform:translateY(-50%)translate(0)}}.social-sidebar-line{background:linear-gradient(to bottom, transparent, var(--border-medium), transparent);width:1px;height:60px}.social-sidebar-link{background:var(--bg-secondary);border:.5px solid var(--border-subtle);width:48px;height:48px;color:var(--text-secondary);cursor:pointer;transition:color var(--transition-base), border-color var(--transition-base), background var(--transition-base), transform var(--transition-base);border-radius:50%;justify-content:center;align-items:center;padding:0;font-family:inherit;text-decoration:none;display:flex;position:relative}.social-sidebar-link:hover{color:var(--text-primary);border-color:var(--border-medium);background:var(--bg-elevated);transform:scale(1.08)}.social-sidebar-link svg{transition:transform var(--transition-base);flex-shrink:0}.social-sidebar-tooltip{background:var(--bg-elevated);border:.5px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--transition-base), transform var(--transition-base);padding:4px 10px;font-size:.7rem;position:absolute;top:50%;right:calc(100% + 12px);transform:translateY(-50%)translate(8px)}.social-sidebar-link:hover .social-sidebar-tooltip{opacity:1;transform:translateY(-50%)translate(0)}.social-sidebar-link-disabled{opacity:.4;cursor:not-allowed}.social-sidebar-link-disabled:hover{color:var(--text-subtle);border-color:var(--border-subtle);background:var(--bg-secondary);transform:none}@media (width<=768px){.social-sidebar{display:none}}.contact-modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out contact-modal-fade-in;display:flex;position:fixed;inset:0}@keyframes contact-modal-fade-in{0%{opacity:0}to{opacity:1}}.contact-modal{background:var(--bg-elevated);border-radius:var(--radius-2xl);border:.5px solid #ffffff14;flex-direction:column;gap:1.5rem;width:100%;max-width:420px;padding:1.75rem;animation:.25s cubic-bezier(.16,1,.3,1) contact-modal-scale-in;display:flex;box-shadow:0 20px 60px #0006,inset 0 1px #ffffff0d}@supports ((-webkit-backdrop-filter:blur(40px)) or (backdrop-filter:blur(40px))){.contact-modal{-webkit-backdrop-filter:blur(40px)saturate(180%);background:#141414b8}}@keyframes contact-modal-scale-in{0%{opacity:0;transform:scale(.94)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.contact-modal-header{flex-direction:column;gap:4px;display:flex}.contact-modal-eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--text-faint);font-size:.62rem}.contact-modal-title{color:var(--text-primary);letter-spacing:-.02em;font-size:1.1rem;font-weight:600}.contact-modal-options{flex-direction:column;gap:6px;display:flex}.contact-modal-option{border-radius:var(--radius-lg);cursor:pointer;transition:background var(--transition-base), border-color var(--transition-base), transform var(--transition-base);background:#ffffff05;border:.5px solid #ffffff0f;align-items:center;gap:14px;padding:12px 14px;text-decoration:none;display:flex}.contact-modal-option:hover{background:#ffffff0d;border-color:#ffffff1f;transform:translate(2px)}.contact-modal-option-icon{border-radius:var(--radius-md);background:#ffffff08;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.contact-modal-option-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.contact-modal-option-label{color:var(--text-primary);font-size:.88rem;font-weight:500}.contact-modal-option-desc{color:var(--text-faint);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.contact-modal-option-arrow{color:var(--text-ghost);transition:transform var(--transition-base);font-size:.95rem}.contact-modal-option:hover .contact-modal-option-arrow{color:var(--text-subtle);transform:translate(2px)}.contact-modal-cancel{color:var(--text-faint);border-radius:var(--radius-md);cursor:pointer;height:36px;transition:all var(--transition-base);background:0 0;border:.5px solid #ffffff14;font-family:inherit;font-size:.78rem}.contact-modal-cancel:hover{color:var(--text-primary);border-color:#ffffff29}.app-layout{flex-direction:column;min-height:100vh;display:flex}.main-content{flex-direction:column;flex:1;align-items:center;width:100%;max-width:1400px;margin:0 auto;padding:0;display:flex}.page-placeholder{text-align:left;width:100%;max-width:650px;margin-top:4rem}.page-header{color:var(--text-primary);text-align:center;margin-bottom:2rem;font-size:2.5rem}.page-subtext{color:var(--text-light);font-size:1.1rem;line-height:1.7}:root{--bg-primary:#050505;--bg-secondary:#080808;--bg-tertiary:#0d0d0d;--bg-elevated:#111;--bg-input:#0a0a0a;--border-subtle:#1a1a1a;--border-soft:#222;--border-medium:#333;--border-strong:#555;--text-primary:#f5f5f5;--text-secondary:#888;--text-muted:#666;--text-subtle:#555;--text-faint:#777;--text-ghost:#333;--text-disabled:#2a2a2a;--text-light:#a0a0a0;--accent-white:#fff;--accent-hover:#ccc;--accent-error:#f44;--overlay-grid:#ffffff08;--overlay-grid-active:#ffffff26;--overlay-white-soft:#ffffff1a;--overlay-nav-bg:#050505d9;--overlay-shadow-marker:#00000080;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-full:99px;--transition-base:.2s ease;--transition-slow:.3s ease;--shadow-md:0 8px 32px #0009}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-primary);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}#root{isolation:isolate}html,body,#root{min-height:100dvh;color:var(--text-primary);-webkit-font-smoothing:antialiased;width:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:18px;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}.app-layout{width:100%;overflow-x:hidden}
