:root{--bg:#fcfdfe;--surface:#fafbfc;--surface-soft:#f5f7fa;--surface-hover:#eef2f6;--text:#1f2937;--text-light:#6b7280;--text-muted:#94a3b8;--border:#e8ecf1;--primary:#9ccbff;--primary-dark:#7db9ff;--green:#c9f2d6;--lavender:#ddd6fe;--peach:#ffdccb;--yellow:#fff3bf;--success:#5cb85c;--danger:#ef6b73;--font-family:"Inter", sans-serif;--fs-xs:.75rem;--fs-sm:.875rem;--fs-base:1rem;--fs-md:1.125rem;--fs-lg:1.25rem;--fs-xl:1.5rem;--fs-2xl:2rem;--fs-3xl:2.75rem;--fs-4xl:3.5rem;--fs-5xl:4.5rem;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-black:800;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--container:1280px;--container-lg:1440px;--navbar-height:88px;--radius-sm:12px;--radius:20px;--radius-lg:28px;--radius-full:999px;--shadow-sm:0 4px 12px #0f172a0a;--shadow:0 12px 28px #0f172a0f;--shadow-lg:0 24px 48px #0f172a14;--z-background:-2;--z-default:1;--z-dropdown:100;--z-sticky:500;--z-navbar:1000;--z-modal:2000;--transition-fast:.2s ease;--transition:.35s cubic-bezier(.16,1,.3,1);--transition-slow:.5s cubic-bezier(.16,1,.3,1);--duration-fast:.3s;--duration-medium:.6s;--duration-slow:1s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{min-height:100vh}img,picture{max-width:100%;display:block}svg{display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}input,textarea,select{font:inherit;color:inherit;background:0 0;border:none;outline:none}table{border-collapse:collapse;border-spacing:0}body{font-family:var(--font-family);font-size:var(--fs-base);font-weight:var(--fw-regular);color:var(--text);background:var(--bg);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}::selection{background:var(--primary);color:var(--text)}.home-page{position:relative;overflow:hidden}main{position:relative}.container{width:min(calc(100% - 2rem),var(--container));margin-inline:auto}.container-lg{width:min(calc(100% - 2rem),var(--container-lg));margin-inline:auto}section{padding:var(--space-24) 0;position:relative}h1{font-size:clamp(3rem,7vw,var(--fs-5xl));font-weight:var(--fw-black);letter-spacing:-.05em;line-height:1.05}h2{font-size:clamp(2.5rem,5vw,var(--fs-4xl));font-weight:var(--fw-bold);letter-spacing:-.04em;line-height:1.1}h3{font-size:var(--fs-2xl);font-weight:var(--fw-bold);line-height:1.2}h4{font-size:var(--fs-lg);font-weight:var(--fw-semibold)}p{color:var(--text-light);font-size:var(--fs-md);line-height:1.9}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.section-label{border-radius:var(--radius-full);border:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-light);background:#ffffffbf;justify-content:center;align-items:center;padding:.7rem 1.3rem;display:inline-flex}.btn{border-radius:var(--radius-full);transition:var(--transition);justify-content:center;align-items:center;gap:.6rem;padding:1rem 1.8rem;display:inline-flex}.btn-primary{background:var(--primary);color:var(--text)}.btn-secondary{border:1px solid var(--border);background:var(--surface)}.text-center{text-align:center}.flex{display:flex}.grid{display:grid}.center{justify-content:center;align-items:center;display:flex}.hidden{display:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}.navbar{width:100%;height:var(--navbar-height);z-index:var(--z-navbar);transition:var(--transition);-webkit-backdrop-filter:blur(18px);background:#ffffffad;border-bottom:1px solid #ffffff59;align-items:center;display:flex;position:fixed;top:0;left:0}.navbar-scrolled{-webkit-backdrop-filter:blur(24px);background:#ffffffe0;box-shadow:0 12px 30px #0f172a0d}.navbar-container{width:min(calc(100% - 2rem),var(--container));justify-content:space-between;align-items:center;gap:2rem;margin-inline:auto;display:flex}.navbar-logo{font-size:2rem;font-weight:var(--fw-black);letter-spacing:-.05em;color:var(--text);transition:var(--transition);-webkit-user-select:none;user-select:none;align-items:center;display:flex}.navbar-logo span{color:var(--primary-dark)}.navbar-logo:hover{transform:translateY(-2px)}.navbar-desktop{margin-left:auto}.navbar-links{align-items:center;gap:2.8rem;display:flex}.navbar-links li{display:flex}.navbar-links a{height:var(--navbar-height);font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-light);transition:var(--transition);align-items:center;display:flex;position:relative}.navbar-links a:hover,.navbar-links a.active{color:var(--text)}.navbar-links a:after{content:"";background:var(--primary-dark);width:0;height:3px;transition:var(--transition);border-radius:999px;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.navbar-links a:hover:after,.navbar-links a.active:after{width:26px}.navbar-toggle{border:1px solid var(--border);-webkit-backdrop-filter:blur(16px);width:48px;height:48px;color:var(--text);cursor:pointer;transition:var(--transition);background:#ffffffbf;border-radius:50%;justify-content:center;align-items:center;display:none}.navbar-toggle:hover{background:var(--surface);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.navbar-toggle svg{width:24px;height:24px}.mobile-menu{opacity:0;visibility:hidden;pointer-events:none;-webkit-backdrop-filter:blur(24px);border-bottom:1px solid var(--border);background:#fffffff2;width:100%;max-height:0;transition:max-height .45s,opacity .3s,visibility .3s;position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 16px 40px #0f172a0f}.mobile-menu.mobile-menu-open{opacity:1;visibility:visible;pointer-events:auto;max-height:500px}.mobile-menu ul{flex-direction:column;padding:1rem 0;display:flex}.mobile-menu li{width:100%}.mobile-menu a{width:100%;font-size:1rem;font-weight:var(--fw-semibold);color:var(--text-light);transition:var(--transition);justify-content:center;align-items:center;padding:1rem 2rem;display:flex}.mobile-menu a:hover{color:var(--text);background:#9ccbff14}.mobile-menu a.active{color:var(--primary-dark);background:#9ccbff1f}.mobile-menu li:not(:last-child){border-bottom:1px solid #e8ecf1b3}.mobile-menu.mobile-menu-open li{animation:.45s both mobileNavFade}.mobile-menu.mobile-menu-open li:first-child{animation-delay:50ms}.mobile-menu.mobile-menu-open li:nth-child(2){animation-delay:.1s}.mobile-menu.mobile-menu-open li:nth-child(3){animation-delay:.15s}.mobile-menu.mobile-menu-open li:nth-child(4){animation-delay:.2s}.mobile-menu.mobile-menu-open li:nth-child(5){animation-delay:.25s}@keyframes mobileNavFade{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (width<=1200px){.navbar-container{width:min(100% - 3rem,1100px)}.navbar-links{gap:2rem}}@media (width<=992px){.navbar{height:78px}.navbar-container{width:min(100% - 2rem,100%)}.navbar-logo{font-size:1.75rem}.navbar-desktop{display:none}.navbar-toggle{display:flex}.mobile-menu{display:block}}@media (width<=768px){.navbar{height:72px}.navbar-container{width:min(100% - 1.5rem,100%)}.navbar-logo{font-size:1.55rem}.navbar-toggle{width:44px;height:44px}.navbar-toggle svg{width:22px;height:22px}.mobile-menu a{padding:1rem;font-size:.96rem}}@media (width<=576px){.navbar{height:68px}.navbar-container{width:calc(100% - 1.25rem)}.navbar-logo{letter-spacing:-.03em;font-size:1.35rem}.navbar-toggle{width:42px;height:42px}.navbar-toggle svg{width:20px;height:20px}.mobile-menu{border-top:1px solid #e8ecf199}.mobile-menu a{padding:.95rem;font-size:.92rem}}.navbar-logo:focus-visible,.navbar-links a:focus-visible,.navbar-toggle:focus-visible,.mobile-menu a:focus-visible{outline-offset:4px;border-radius:10px;outline:3px solid #9ccbff73}.navbar{will-change:background, backdrop-filter}.navbar-logo,.navbar-links a,.navbar-toggle,.mobile-menu a{-webkit-tap-highlight-color:transparent}.navbar-links a,.mobile-menu a{-webkit-user-select:none;user-select:none}.navbar-links a{overflow:hidden}.navbar-links a:hover{transform:translateY(-1px)}.mobile-menu a:hover{padding-left:2.4rem}.navbar-toggle{flex-shrink:0}.navbar-toggle:active{transform:scale(.96)}.mobile-menu{transform-origin:top}.mobile-menu ul{width:min(100%,var(--container));margin-inline:auto}.navbar-logo{white-space:nowrap}.navbar,.mobile-menu{backface-visibility:hidden;transform:translateZ(0)}@media (prefers-reduced-motion:reduce){.navbar,.navbar-logo,.navbar-links a,.navbar-links a:after,.navbar-toggle,.mobile-menu,.mobile-menu a{transition:none!important;animation:none!important}}@media (width>=1600px){.navbar-container{width:min(100% - 4rem,1500px)}}@media (height<=600px){.mobile-menu{max-height:calc(100vh - var(--navbar-height));overflow-y:auto}}.hero{min-height:100vh;padding-top:calc(var(--navbar-height) + var(--space-8));background:0 0;align-items:center;display:flex;position:relative;overflow:hidden}.home-page .hero-bg{filter:blur(90px);opacity:.42;pointer-events:none;z-index:var(--z-background);border-radius:50%;position:fixed}.home-page .hero-bg-1{aspect-ratio:1;background:var(--lavender);width:420px;top:-8%;left:-10%}.home-page .hero-bg-2{aspect-ratio:1;background:var(--peach);width:340px;top:24%;right:-8%}.home-page .hero-bg-3{aspect-ratio:1;background:var(--yellow);width:320px;bottom:-10%;left:12%}.hero-container{z-index:2;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,4vw,5rem);display:grid;position:relative}.hero-left{justify-content:center;align-items:center;min-height:clamp(360px,55vw,560px);display:flex;position:relative}.hero-circle{aspect-ratio:1;border:1px solid var(--border);width:min(80vw,390px);box-shadow:var(--shadow-sm);z-index:1;background:linear-gradient(#f7fbff,#edf5ff);border-radius:50%;position:absolute}.hero-image{z-index:5;justify-content:center;align-items:flex-end;width:min(100%,480px);display:flex;position:relative}.hero-profile{aspect-ratio:6/7;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 18px 40px #0f172a1a);width:100%;height:auto;display:block}.hero-image:hover .hero-profile{transition:var(--transition);transform:translateY(-4px)}.hero-right{flex-direction:column;justify-content:center;align-items:flex-start;max-width:640px;display:flex}.hero-badge{margin-bottom:var(--space-8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);background:#f7fbffd9;border:1px solid #ddeafe;justify-content:center;align-items:center;gap:.75rem;padding:.75rem 1.25rem;display:inline-flex}.hero-badge span{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--primary-dark)}.hero-title{margin-bottom:var(--space-4);font-size:clamp(2.6rem,6vw,4.5rem);font-weight:var(--fw-black);letter-spacing:-.04em;color:var(--text);line-height:1.05}.hero-title span{color:var(--primary-dark)}.hero-subtitle{margin-bottom:var(--space-6);font-size:clamp(1.2rem,2.5vw,1.8rem);font-weight:var(--fw-bold);color:var(--text);line-height:1.4}.hero-subtitle span{color:var(--primary-dark)}.hero-description{max-width:560px;margin-bottom:var(--space-10);color:var(--text-light);font-size:clamp(.95rem,1.5vw,1.05rem);line-height:1.9}.hero-description strong{color:var(--text);font-weight:var(--fw-semibold)}.hero-description a{color:var(--primary-dark);font-weight:var(--fw-semibold);transition:var(--transition-fast)}.hero-description a:hover{opacity:.8}.hero-right>*{animation:.8s both fadeUp}.hero-right>:first-child{animation-delay:50ms}.hero-right>:nth-child(2){animation-delay:.15s}.hero-right>:nth-child(3){animation-delay:.25s}.hero-right>:nth-child(4){animation-delay:.35s}.hero-right>:nth-child(5){animation-delay:.45s}.hero-buttons{align-items:center;gap:var(--space-4);margin-bottom:var(--space-10);flex-wrap:wrap;display:flex}.hero-buttons .btn{min-width:170px;min-height:56px;padding:0 var(--space-8);font-size:var(--fs-base);font-weight:var(--fw-semibold);border-radius:var(--radius-full)}.hero-buttons .btn-primary{box-shadow:var(--shadow-sm)}.hero-buttons .btn-primary:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.hero-buttons .btn-secondary{background:var(--surface)}.hero-buttons .btn-secondary:hover{background:var(--surface-soft);transform:translateY(-3px)}.hero-social{align-items:center;gap:var(--space-6);display:flex}.hero-social span{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-light)}.hero-social-icons{align-items:center;gap:var(--space-3);display:flex}.hero-social-icons a{aspect-ratio:1;background:var(--surface);border:1px solid var(--border);width:48px;color:var(--text);box-shadow:var(--shadow-sm);transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.hero-social-icons a:hover{color:var(--primary-dark);border-color:var(--primary);box-shadow:var(--shadow);background:#f7fbff;transform:translateY(-4px)}.card-top-left{top:8%;left:4%}.card-bottom-left{bottom:22%;left:0}.card-top-right{top:18%;right:4%}.card-middle-right{top:56%;right:0}.card-bottom-center{bottom:6%;left:50%;transform:translate(-50%)}.card-bottom-center:hover{transform:translate(-50%)translateY(-6px)}.hero-tech{position:absolute}.hero-tech svg{width:110px;height:110px}.hero-tech{border:1px solid var(--border);box-shadow:var(--shadow);z-index:20;transition:var(--transition);background:#fffffff2;border-radius:50%;justify-content:center;align-items:center;display:flex}.hero-tech:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)scale(1.08)}.hero-tech svg{width:50px;height:50px;color:var(--text);transition:var(--transition)}.hero-tech:hover svg{color:var(--primary)}.tech-top-left{top:65px;left:70px}.tech-bottom-left{bottom:135px;left:35px}.tech-top-right{top:90px;right:65px}.tech-middle-right{top:330px;right:25px}.tech-bottom-center{bottom:15px;left:50%;transform:translate(-50%)}.tech-bottom-center:hover{transform:translate(-50%)translateY(-6px)scale(1.08)}.hero-scroll{z-index:20;flex-direction:column;align-items:center;gap:.75rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.hero-scroll span{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-light)}.mouse{border:2px solid var(--border);border-radius:999px;justify-content:center;width:28px;height:46px;padding-top:8px;display:flex}.mouse:before{content:"";background:var(--primary-dark);border-radius:999px;width:4px;height:9px;animation:2s infinite scrollMouse}@keyframes floatOne{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes floatTwo{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes floatThree{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes scrollMouse{0%{opacity:0;transform:translateY(0)}40%{opacity:1}to{opacity:0;transform:translateY(14px)}}@media (width<=992px){.hero{min-height:auto;padding-top:calc(var(--navbar-height) + var(--space-12));padding-bottom:var(--space-16)}.hero-container{gap:var(--space-16);grid-template-columns:1fr}.hero-right{text-align:center;order:1;align-items:center;margin:0 auto}.hero-left{order:2;min-height:480px}.hero-description{max-width:620px}.hero-buttons,.hero-social{justify-content:center}.hero-scroll{display:none}}@media (width<=768px){.hero{padding-top:calc(var(--navbar-height) + var(--space-10))}.hero-left{min-height:400px}.hero-circle{width:min(72vw,320px)}.hero-image{width:min(70vw,280px)}.hero-buttons{flex-direction:column;width:100%}.hero-buttons .btn{width:min(100%,320px)}.hero-social{gap:var(--space-4);flex-direction:column}.hero-card{width:110px;min-height:82px;padding:.8rem}.hero-card h4{font-size:1.35rem}}@media (width<=576px){.hero{padding-bottom:var(--space-12)}.hero-left{min-height:300px}.hero-circle{width:min(68vw,230px)}.hero-image{width:min(65vw,200px)}.hero-badge{flex-wrap:wrap;justify-content:center}.hero-buttons .btn{width:100%}.hero-card{display:none}}.projects{padding:var(--space-24) 0;position:relative;overflow:hidden}.projects-header{justify-content:space-between;align-items:flex-end;gap:var(--space-12);margin-bottom:var(--space-16);display:flex}.projects-heading{max-width:680px}.projects-heading .section-label,.projects-heading h2{margin-bottom:var(--space-5)}.projects-heading p{max-width:560px}.projects-counter{align-items:center;gap:1rem;min-width:180px;display:flex}.current-project,.total-projects{color:var(--text);letter-spacing:-.02em;font-size:1.2rem;font-weight:700}.total-projects{color:var(--text-light)}.projects-progress{background:var(--border);border-radius:999px;flex:1;height:4px;overflow:hidden}.projects-progress-fill{background:linear-gradient(90deg, var(--primary), var(--primary-dark));border-radius:999px;width:25%;height:100%;transition:width .6s}.project-showcase{position:relative}.project-showcase-wrapper{width:100%;min-height:760px;position:relative;overflow:hidden}.project-window{aspect-ratio:16/9;background:#161b22;border-radius:12px;width:100%;overflow:hidden}.project-window-bar{background:#161b22;border-bottom:1px solid #30363d;justify-content:space-between;align-items:center;height:56px;padding:0 1.5rem;display:flex}.window-dots{align-items:center;gap:.55rem;display:flex}.window-dots .dot{border-radius:50%;width:12px;height:12px}.window-dots .red{background:#ff5f56}.window-dots .yellow{background:#ffbd2e}.window-dots .green{background:#27c93f}.window-file{color:#8b949e;letter-spacing:.01em;font-size:.9rem;font-weight:600}.project-preview{aspect-ratio:16/9;background:#0d1117;position:relative;overflow:hidden}.project-preview img{object-fit:cover;width:100%;height:100%;display:block}.project-overlay{z-index:5;flex-direction:column;align-items:flex-start;gap:1rem;display:flex;position:absolute;bottom:2.5rem;left:2.5rem;right:2.5rem}.project-overlay h3{font-size:clamp(2rem,4vw,2.8rem);font-weight:var(--fw-black);letter-spacing:-.03em;color:#fff;line-height:1.05}.project-tech{flex-wrap:wrap;gap:.8rem;display:flex}.project-tech span{color:#fff;background:0 0;border:none;border-radius:0;padding:0;font-size:.92rem;font-weight:500}.project-tech span:hover{background:var(--primary);border-color:var(--primary);color:var(--text)}.project-overlay p{color:#e5e7eb;max-width:640px;font-size:1rem;line-height:1.8}.project-links{margin-top:.5rem;margin-top:var(--space-3);align-items:center;gap:1rem;display:flex}.project-links .btn-primary{min-width:165px}.project-links .btn-secondary{min-width:190px}.project-links .btn{transition:var(--transition)}.project-links .btn:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.project-tech span{animation:.5s both fadeUp}.project-tech span:first-child{animation-delay:50ms}.project-tech span:nth-child(2){animation-delay:.1s}.project-tech span:nth-child(3){animation-delay:.15s}.project-tech span:nth-child(4){animation-delay:.2s}.project-showcase{will-change:opacity, transform;animation:.55s showcaseFade}@keyframes showcaseFade{0%{opacity:0;transform:translate(30px)translateY(10px)}to{opacity:1;transform:translate(0)translateY(0)}}.project-window,.project-tech span,.project-links .btn{transition:var(--transition)}@media (width<=1200px){.projects-header{gap:var(--space-8)}}@media (width<=992px){.projects{padding:var(--space-20) 0}.projects-header{align-items:flex-start;gap:var(--space-8);flex-direction:column}.projects-counter{width:100%}.project-preview{padding:1.5rem}.project-content{max-width:100%}}@media (width<=768px){.projects{padding:var(--space-16) 0}.projects-heading{max-width:100%}.projects-heading h2{margin-bottom:var(--space-4)}.projects-counter{gap:.75rem}.project-window{border-radius:18px}.project-window-bar{height:50px;padding:0 1rem}.window-file{font-size:.82rem}.project-preview{padding:1rem}.project-overlay{z-index:5;flex-direction:column;gap:1rem;max-width:560px;display:flex;position:absolute;bottom:3rem;left:3rem}.project-tech{justify-content:center}.project-links{flex-direction:column;width:100%}.project-links .btn{justify-content:center;width:100%}}@media (width<=576px){.projects{padding:var(--space-12) 0}.projects-heading h2{font-size:2.2rem}.projects-heading p{font-size:.95rem}.project-window{border-radius:16px}.project-preview{padding:.75rem}.project-preview img{border-radius:8px}.project-tech{gap:.5rem}.project-tech span{padding:.45rem .8rem;font-size:.75rem}}
