*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:#e4e4e7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0a0a0a;font-family:DM Sans,system-ui,-apple-system,sans-serif;overflow-x:hidden}:root{--primary:#8b5cf6;--primary-dark:#7c3aed;--primary-light:#a78bfa;--primary-glow:#8b5cf680;--primary-subtle:#8b5cf614;--accent:#06b6d4;--accent-light:#22d3ee;--accent-glow:#06b6d480;--bg-dark:#0a0a0a;--bg-surface:#111113;--bg-card:#161618;--bg-card-hover:#1c1c1f;--border:#27272a;--border-light:#3f3f46;--text:#f4f4f5;--text-secondary:#a1a1aa;--text-muted:#71717a;--gradient:linear-gradient(135deg, var(--primary), var(--accent));--gradient-reverse:linear-gradient(135deg, var(--accent), var(--primary));--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 8px 24px #0006;--shadow-lg:0 16px 48px #00000080;--shadow-glow-purple:0 0 60px var(--primary-glow);--shadow-glow-cyan:0 0 60px var(--accent-glow);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px}.hero{background:var(--bg-dark);height:130vh;position:relative;overflow:hidden}.hero-background{position:absolute;inset:0;overflow:hidden}.hero-gradient-orb{filter:blur(100px);opacity:.6;border-radius:50%;position:absolute}.hero-orb-1{background:var(--primary);opacity:.15;width:800px;height:800px;top:-20%;left:50%;transform:translate(-50%)}.hero-orb-2{background:var(--accent);opacity:.1;width:600px;height:600px;bottom:-10%;right:-10%}.hero-grid{background-image:linear-gradient(#8b5cf608 1px,#0000 1px),linear-gradient(90deg,#8b5cf608 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80%,#000 20%,#0000 70%);mask-image:radial-gradient(80% 80%,#000 20%,#0000 70%)}.hero-content{z-index:1;flex-direction:column;justify-content:center;align-items:center;height:100vh;display:flex;position:sticky;top:0}.hero-particles{pointer-events:none;position:absolute;inset:0;overflow:hidden}.particle{background:var(--primary-light);opacity:0;border-radius:50%;width:2px;height:2px;animation:10s ease-in-out infinite particle-float;position:absolute}@keyframes particle-float{0%,to{opacity:0;transform:translateY(0)translate(0)}10%{opacity:.6}90%{opacity:.6}to{opacity:0;transform:translateY(-100px)translate(30px)}}.logo-container{justify-content:center;align-items:center;transition:all .3s;display:flex}.logo-single-circle{filter:drop-shadow(0 30px 58px #00000094)drop-shadow(0 0 70px #8b5cf638);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:286px;height:286px;transition:transform .3s;display:flex;position:relative}.hero-logo-half{will-change:transform;background-image:url(/logo-el.png);background-repeat:no-repeat;background-size:214% 107%;width:50%;height:100%;transition:transform .1s linear;position:absolute;top:0}.hero-logo-half-left{transform-origin:100%;background-position:0%;border-radius:999px 0 0 999px;left:0}.hero-logo-half-right{transform-origin:0;background-position:100%;border-radius:0 999px 999px 0;right:0}.scroll-hint{color:var(--text-muted);letter-spacing:.5px;text-transform:uppercase;flex-direction:column;align-items:center;gap:10px;font-size:13px;font-weight:500;transition:opacity .4s;display:flex;position:absolute;bottom:48px;left:50%;transform:translate(-50%)}.scroll-hint svg{width:22px;height:22px;stroke:var(--primary-light);stroke-width:2px;animation:2.5s ease-in-out infinite bounce}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(12px)}}.door-left,.door-right{background:var(--bg-dark);z-index:100;pointer-events:none;justify-content:center;align-items:center;width:50%;height:100vh;transition:transform 1s cubic-bezier(.77,0,.175,1);display:flex;position:fixed}.door-left{border-right:1px solid #8b5cf64d;left:0;transform:translate(0)}.door-right{border-left:1px solid #06b6d44d;right:0;transform:translate(0)}.door-left.open{transform:translate(-100%)}.door-right.open{transform:translate(100%)}.door-logo-half{filter:drop-shadow(0 30px 58px #00000094)drop-shadow(0 0 70px #8b5cf633);background-image:url(/logo-el.png);background-repeat:no-repeat;background-size:306px 306px;width:143px;height:286px}.door-logo-half-left{background-position:0%;border-radius:999px 0 0 999px;margin-left:auto}.door-logo-half-right{background-position:100%;border-radius:0 999px 999px 0;margin-right:auto}.header{z-index:50;padding:12px 24px;transition:transform .4s cubic-bezier(.16,1,.3,1);position:fixed;top:0;left:0;right:0;transform:translateY(-100%)}.header.visible{transform:translateY(0)}.header:before{content:"";-webkit-backdrop-filter:blur(16px)saturate(180%);background:#0a0a0ad1;border-bottom:1px solid #ffffff0f;position:absolute;inset:0}.header-inner{justify-content:space-between;align-items:center;gap:24px;max-width:1200px;margin:0 auto;display:flex;position:relative}.header-logo{border-radius:var(--radius-full);cursor:pointer;background:0 0;border:1px solid #ffffff14;align-items:center;gap:10px;padding:4px;transition:all .25s;display:flex}.header-logo:hover{background:var(--primary-subtle);border-color:#8b5cf640}.logo-mark{width:34px;height:34px;display:block}.brand-mark{object-fit:cover;object-position:center;-webkit-user-select:none;user-select:none;clip-path:circle(47%);border-radius:50%;transform:scale(1.08)}.header-nav{border-radius:var(--radius-md);background:#ffffff08;border:1px solid #ffffff0f;align-items:center;gap:4px;padding:4px;display:flex}.nav-link{color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:8px 16px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:500;transition:all .2s;position:relative}.nav-link:hover{color:var(--text);background:#ffffff0f}.nav-link.active{color:var(--text);box-shadow:var(--shadow-sm);background:#ffffff14}.nav-link.active:after{content:"";background:var(--gradient);border-radius:1px;width:16px;height:2px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.header-cta{color:var(--text);background:var(--gradient);border-radius:var(--radius-sm);white-space:nowrap;padding:8px 20px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:600;text-decoration:none;transition:all .25s}.header-cta:hover{transform:translateY(-1px);box-shadow:0 4px 16px #8b5cf659}.header-progress{background:var(--gradient);z-index:51;height:2px;transition:width .1s linear;position:fixed;top:0;left:0;box-shadow:0 0 8px #8b5cf680}.section{opacity:0;max-width:1000px;margin:0 auto;padding:120px 32px;transition:all .8s cubic-bezier(.16,1,.3,1);transform:translateY(40px)}.section.visible{opacity:1;transform:translateY(0)}.section-title{background:var(--gradient);-webkit-text-fill-color:transparent;letter-spacing:-1px;-webkit-background-clip:text;background-clip:text;margin-bottom:12px;font-family:Outfit,sans-serif;font-size:40px;font-weight:700}.section-subtitle{color:var(--text-secondary);margin-bottom:56px;font-size:17px;font-weight:400}.personal-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);grid-template-columns:auto 1fr;align-items:center;gap:48px;padding:48px;display:grid;position:relative;overflow:hidden}.personal-card:before{content:"";background:linear-gradient(90deg, transparent, var(--primary-light), var(--accent), transparent);opacity:.4;height:1px;position:absolute;top:0;left:0;right:0}.avatar{border-radius:50%;justify-content:center;align-items:center;width:130px;height:130px;display:flex;box-shadow:0 0 40px #8b5cf640,inset 0 0 0 3px #ffffff1a}.avatar-mark{width:130px;height:130px;display:block}.personal-info h3{color:var(--text);letter-spacing:-.5px;margin-bottom:6px;font-family:Outfit,sans-serif;font-size:32px;font-weight:700}.personal-info .role{color:var(--primary-light);margin-bottom:18px;font-size:17px;font-weight:500}.personal-info .bio{color:var(--text-secondary);margin-bottom:24px;font-size:15px;line-height:1.75}.info-grid{flex-wrap:wrap;gap:10px;display:flex}.info-item{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);align-items:center;gap:10px;padding:10px 16px;font-size:14px;transition:all .2s;display:flex}.info-item:hover{border-color:var(--border-light);background:var(--bg-card-hover)}.info-item svg{width:16px;height:16px;stroke:var(--primary-light);flex-shrink:0}.timeline{padding-left:36px;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, var(--primary), var(--accent), transparent);border-radius:1px;width:2px;position:absolute;top:8px;bottom:8px;left:7px}.timeline-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:40px;padding:32px;transition:all .35s cubic-bezier(.16,1,.3,1);position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-item:hover{border-color:var(--primary);transform:translate(6px);box-shadow:0 8px 32px #8b5cf61f,0 0 0 1px #8b5cf626}.timeline-item:before{content:"";background:var(--bg-dark);border:3px solid var(--primary);border-radius:50%;width:16px;height:16px;transition:all .3s;position:absolute;top:36px;left:-36px;box-shadow:0 0 0 4px #8b5cf626}.timeline-item:hover:before{background:var(--primary);box-shadow:0 0 0 4px #8b5cf640,0 0 12px #8b5cf666}.timeline-date{color:var(--accent-light);border-radius:var(--radius-sm);letter-spacing:.3px;background:#06b6d41a;border:1px solid #06b6d433;margin-bottom:14px;padding:5px 14px;font-size:13px;font-weight:600;display:inline-block}.timeline-item h4{color:var(--text);letter-spacing:-.3px;margin-bottom:6px;font-family:Outfit,sans-serif;font-size:22px;font-weight:600}.timeline-company{color:var(--primary-light);margin-bottom:14px;font-size:15px;font-weight:500}.timeline-desc{color:var(--text-secondary);font-size:15px;line-height:1.7}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;display:grid}.project-placeholder{background:var(--bg-card);border:1px dashed var(--border-light);border-radius:var(--radius-lg);text-align:center;color:var(--text-muted);padding:56px 32px;transition:all .3s}.project-placeholder:hover{border-color:var(--primary);background:var(--bg-card-hover)}.project-placeholder svg{width:44px;height:44px;stroke:var(--text-muted);opacity:.7;margin-bottom:18px}.project-placeholder p{font-size:15px;font-weight:500}.news-grid{gap:18px;display:grid}.news-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 32px;transition:all .35s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.news-card:before{content:"";background:var(--gradient);opacity:0;width:3px;transition:opacity .3s;position:absolute;top:0;bottom:0;left:0}.news-card:hover{border-color:var(--border-light);box-shadow:var(--shadow-md);transform:translateY(-3px)}.news-card:hover:before{opacity:1}.news-date{color:var(--accent-light);letter-spacing:.5px;text-transform:uppercase;margin-bottom:10px;font-size:12px;font-weight:600}.news-card h4{color:var(--text);letter-spacing:-.3px;margin-bottom:10px;font-family:Outfit,sans-serif;font-size:19px;font-weight:600}.news-card p{color:var(--text-secondary);font-size:14px;line-height:1.65}.footer{text-align:center;color:var(--text-muted);border-top:1px solid var(--border);background:var(--bg-surface);padding:48px 32px;font-size:14px}.footer p{opacity:.8}.footer a{color:var(--primary-light);text-decoration:none;transition:color .2s}.footer a:hover{color:var(--accent-light)}@media (width<=768px){.logo-single-circle:before{content:none}.logo-single-circle{width:226px;height:226px}.header-inner{gap:12px}.header-nav{display:none}.header-cta{padding:8px 16px;font-size:13px}.section{padding:80px 20px}.section-title{font-size:32px}.section-subtitle{margin-bottom:40px}.personal-card{text-align:center;grid-template-columns:1fr;gap:28px;padding:32px 24px}.avatar{width:110px;height:110px;margin:0 auto}.avatar-mark{width:110px;height:110px}.info-grid{justify-content:center}.timeline{padding-left:28px}.timeline-item{padding:24px}.timeline-item:before{width:14px;height:14px;left:-28px}.projects-grid{grid-template-columns:1fr}.news-card{padding:24px}.door-logo-half{background-size:242px 242px;width:113px;height:226px}}@media (width<=480px){.header-logo{padding:4px}.logo-mark{width:30px;height:30px}.logo-single-circle:before{content:none}.logo-single-circle{width:190px;height:190px}.door-logo-half{background-size:203px 203px;width:95px;height:190px}.section-title{font-size:28px}.personal-info h3{font-size:26px}.timeline-item h4{font-size:18px}}
