*{margin:0;padding:0;box-sizing:border-box}:root,[data-theme=dark]{--bg-primary: #0a0a0f;--bg-secondary: #10101a;--bg-card: #161625;--text-primary: #ffffff;--text-secondary: #9a9ab0;--accent: #2723ff;--accent-hover: #3632ff;--accent-glow: rgba(39, 35, 255, .12);--accent-subtle: rgba(39, 35, 255, .06);--border-color: #1e1e30;--font-family: "Poppins", sans-serif;--header-bg: rgba(10, 10, 15, .9);--overlay-bg: rgba(0, 0, 0, .5)}[data-theme=light]{--bg-primary: #f5f5f8;--bg-secondary: #eaeaef;--bg-card: #ffffff;--text-primary: #1a1a2e;--text-secondary: #555570;--accent: #2723ff;--accent-hover: #1e1adb;--accent-glow: rgba(39, 35, 255, .1);--accent-subtle: rgba(39, 35, 255, .04);--border-color: #d8d8e4;--header-bg: rgba(245, 245, 248, .9);--overlay-bg: rgba(0, 0, 0, .3);--accent-text: #ffffff}:root,[data-theme=dark]{--accent-text: #ffffff}html{scroll-behavior:smooth}body{font-family:var(--font-family);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden}a{text-decoration:none;color:inherit}ul{list-style:none}img{max-width:100%;display:block}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.reveal.revealed{opacity:1;transform:translateY(0)}.reveal-left{opacity:0;transform:translate(-40px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.reveal-left.revealed{opacity:1;transform:translate(0)}.reveal-right{opacity:0;transform:translate(40px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.reveal-right.revealed{opacity:1;transform:translate(0)}.reveal-scale{opacity:0;transform:scale(.95);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.reveal-scale.revealed{opacity:1;transform:scale(1)}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}.delay-4{transition-delay:.4s}.menu-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:998;opacity:0;pointer-events:none;transition:opacity .3s ease}.menu-overlay.active{opacity:1;pointer-events:all}.loader{display:flex;justify-content:center;align-items:center;min-height:100vh;background:var(--bg-primary)}.loader span{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.theme-toggle{background:none;border:1px solid var(--border-color);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);font-size:.9rem;transition:all .3s ease}.theme-toggle:hover{color:var(--accent);border-color:var(--accent)}.header{position:fixed;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.2rem 6%;z-index:1000;transition:all .3s ease}.header.scrolled{background:var(--header-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color)}.logo{font-size:1.15rem;font-weight:600;color:var(--text-primary);letter-spacing:.5px}.header-right{display:flex;align-items:center;gap:1.2rem}.navbar{display:flex;gap:2rem}.navbar a{font-size:.9rem;font-weight:400;color:var(--text-secondary);transition:color .3s ease;position:relative}.navbar a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--accent);transition:width .3s ease}.navbar a:hover{color:var(--text-primary)}.navbar a:hover:after{width:100%}.menu-toggle{display:none;flex-direction:column;gap:6px;background:none;border:none;cursor:pointer;padding:5px;z-index:1001;width:30px;height:24px;position:relative}.menu-toggle span{display:block;width:25px;height:2px;background:var(--text-primary);transition:all .35s cubic-bezier(.16,1,.3,1);position:absolute;left:50%;transform:translate(-50%)}.menu-toggle span:nth-child(1){top:2px}.menu-toggle span:nth-child(2){top:11px}.menu-toggle span:nth-child(3){top:20px}.menu-toggle.active span:nth-child(1){top:11px;transform:translate(-50%) rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0;transform:translate(-50%) scaleX(0)}.menu-toggle.active span:nth-child(3){top:11px;transform:translate(-50%) rotate(-45deg)}@media(max-width:768px){.menu-toggle{display:flex}.navbar{position:fixed;top:0;right:-100%;width:65%;height:100vh;background:var(--bg-secondary);border-left:1px solid var(--border-color);flex-direction:column;justify-content:center;align-items:center;gap:2.5rem;transition:right .4s cubic-bezier(.16,1,.3,1);z-index:999}.navbar.open{right:0}.navbar a{font-size:1.1rem}.navbar a:after{display:none}}.lazy-img-wrap{position:relative;overflow:hidden}.lazy-img-wrap img{display:block;width:100%;opacity:0;transition:opacity .4s ease}.lazy-img-wrap img.visible{opacity:1}.img-skeleton{position:absolute;inset:0;background:var(--bg-card)}.img-skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--accent-subtle),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.hero{min-height:100vh;display:flex;align-items:center;justify-content:space-between;padding:6rem 6% 2rem;gap:2rem}.hero-content{flex:1;max-width:550px}.hero-greeting{font-size:3rem;font-weight:800;line-height:1.1;margin-bottom:.3rem}.hero-name{font-size:1.8rem;font-weight:400;color:var(--text-secondary);margin-bottom:.3rem;position:relative;padding-left:1.8rem}.hero-name:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:1.2rem;height:2px;background:var(--accent)}.hero-title{font-size:2.8rem;font-weight:700;line-height:1.2;margin-bottom:2rem}.hero-buttons{display:flex;gap:1rem;align-items:center}.hero-image{flex:1;display:flex;justify-content:center;align-items:center;max-width:400px}.image-frame{position:relative;width:320px;height:380px}.profile-placeholder{width:100%;height:100%;background:linear-gradient(160deg,var(--bg-card) 0%,var(--bg-secondary) 60%,rgba(59,130,246,.05) 100%);border-radius:10px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);overflow:hidden}.profile-placeholder span{color:var(--text-secondary);font-size:1rem}.profile-placeholder .lazy-img-wrap{width:100%;height:100%}.profile-placeholder img{width:100%;height:100%;object-fit:cover}.frame-corner{position:absolute;width:60px;height:60px}.frame-corner.top-right{top:-10px;right:-10px;border-top:3px solid var(--accent);border-right:3px solid var(--accent)}.frame-corner.bottom-left{bottom:-10px;left:-10px;border-bottom:3px solid var(--accent);border-left:3px solid var(--accent)}@media(max-width:900px){.hero{flex-direction:column;text-align:center;padding-top:8rem}.hero-name{padding-left:0}.hero-name:before{display:none}.hero-buttons{justify-content:center}.hero-image{max-width:300px}.hero-title{font-size:2.2rem}.hero-greeting{font-size:2.5rem}}.section-title{font-size:2.2rem;font-weight:700;margin-bottom:1.2rem}.section-title.center{text-align:center;margin-bottom:3rem;position:relative;display:inline-block;width:100%}.section-title.center:after{content:"";display:block;width:50px;height:3px;background:var(--accent);margin:.6rem auto 0;border-radius:2px}.section-subtitle{color:var(--accent);font-size:.95rem;font-weight:500;margin-bottom:.5rem}.btn{display:inline-block;padding:.7rem 1.6rem;border-radius:6px;font-family:var(--font-family);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;border:none;outline:none}.btn-primary{background-color:var(--accent);color:var(--accent-text)}.btn-primary:hover{background-color:var(--accent-hover);box-shadow:0 0 20px var(--accent-glow)}.btn-outline{background:transparent;color:var(--text-primary);border:1.5px solid var(--text-primary)}.btn-outline:hover{background:var(--text-primary);color:var(--bg-primary)}.btn-text{background:transparent;color:var(--text-primary);padding:.7rem 1rem}.btn-text:hover,.accent{color:var(--accent)}
