@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;600;700;800&family=Inter:wght@400;500;600&display=swap";:root{--sans:"Inter", system-ui, -apple-system, sans-serif;--heading:"Sora", system-ui, sans-serif;--accent:#7c5cff;--accent-2:#00d4ff;--gradient:linear-gradient(135deg, var(--accent), var(--accent-2))}:root[data-theme=dark]{--bg:#0b0d12;--bg-soft:#12151d;--card:#151923;--border:#232838;--text:#a7afc2;--text-h:#f2f4fa;--chip-bg:#7c5cff1f;--shadow:0 10px 30px #00000073;--glow-strong:#007aff52;--glow-soft:#00aeff33;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#f7f8fc;--bg-soft:#fff;--card:#fff;--border:#e4e7f0;--text:#555d70;--text-h:#10131c;--chip-bg:#7c5cff1a;--shadow:0 10px 30px #14182814;--glow-strong:#007aff24;--glow-soft:#00aeff1a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font:17px/1.65 var(--sans);background:var(--bg);color:var(--text);margin:0;transition:background .3s,color .3s}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(60% 45% at 50% -5%, var(--glow-strong), transparent 70%), radial-gradient(45% 40% at 12% 25%, var(--glow-soft), transparent 70%), radial-gradient(45% 40% at 88% 45%, var(--glow-soft), transparent 70%), radial-gradient(55% 45% at 50% 108%, var(--glow-strong), transparent 70%);position:fixed;inset:0}h1,h2,h3{font-family:var(--heading);color:var(--text-h);margin:0;line-height:1.2}a{color:inherit;text-decoration:none}.accent{background:var(--gradient);color:#0000;-webkit-background-clip:text;background-clip:text}main{max-width:1024px;margin:0 auto;padding:0 24px}.section{padding:40px 0}.section-title{margin-bottom:26px;font-size:30px}.header{z-index:10;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:16px 32px;display:flex;position:sticky;top:0}.logo{font-family:var(--heading);color:var(--text-h);align-items:center;gap:10px;font-size:22px;font-weight:800;display:flex}.logo-avatar{object-fit:cover;border:2px solid var(--accent);border-radius:50%;width:40px;height:40px}.nav{gap:28px;display:flex}.nav a{border-bottom:2px solid #0000;padding:4px 0;font-size:15px;font-weight:500;transition:color .2s,border-color .2s}.nav a:hover,.nav a.active{color:var(--text-h);border-color:var(--accent)}.header-actions{gap:8px;display:flex}.icon-btn{background:var(--card);border:1px solid var(--border);cursor:pointer;color:var(--text-h);border-radius:10px;padding:6px 10px;font-size:18px;transition:border-color .2s}.icon-btn:hover{border-color:var(--accent)}.lang-btn{font-family:var(--heading);background:var(--card);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:10px;align-items:center;gap:4px;padding:7px 10px;font-size:13px;font-weight:700;transition:border-color .2s;display:flex}.lang-btn:hover{border-color:var(--accent)}.lang-btn .on{color:var(--accent)}.lang-btn .sep{opacity:.4}.burger{display:none}.hero{align-items:center;padding:44px 0 16px;display:flex;position:relative}.hero-inner{flex:auto}.hero-name-row{align-items:center;gap:22px;margin-bottom:12px;display:flex}.hero-photo{flex:none;width:clamp(84px,11vw,128px);height:auto}.hero-hello{font-family:var(--heading);color:var(--accent);margin:0 0 8px;font-weight:600}.hero-name{margin:0;font-size:clamp(44px,8vw,76px);font-weight:800}.hero-role{font-family:var(--heading);color:var(--text-h);min-height:1.3em;margin:0 0 16px;font-size:clamp(20px,3.4vw,30px);font-weight:700;animation:.5s both fadeUp}.hero-tagline{max-width:640px;margin:0 0 32px}.hero-cta{flex-wrap:wrap;gap:14px;display:flex}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.btn{border-radius:12px;padding:12px 26px;font-size:15px;font-weight:600;transition:transform .15s,box-shadow .15s;display:inline-block}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--gradient);color:#fff;box-shadow:0 8px 24px #7c5cff59}.btn-ghost{border:1px solid var(--border);color:var(--text-h);background:var(--card)}.about-grid p{max-width:780px;margin:0 0 18px}.about-grid strong{color:var(--text-h)}.about-focus{border-left:3px solid var(--accent);background:var(--chip-bg);color:var(--text-h);border-radius:0 12px 12px 0;padding:16px 20px}.timeline{padding-left:28px;position:relative}.timeline:before{content:"";background:var(--border);width:2px;position:absolute;top:6px;bottom:6px;left:6px}.timeline-item{margin-bottom:32px;position:relative}.tech-scroll{scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--border) transparent;align-items:center;gap:22px;margin-top:10px;padding:6px 4px 10px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 16px),#0000);mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 16px),#0000)}.tech-scroll::-webkit-scrollbar{height:6px}.tech-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.tech-icon{scroll-snap-align:start;opacity:.85;flex:none;width:auto;height:36px;transition:transform .2s,opacity .2s}.tech-icon:hover{opacity:1;transform:translateY(-3px)}.timeline-dot{background:var(--gradient);width:14px;height:14px;box-shadow:0 0 0 4px var(--bg);border-radius:50%;position:absolute;top:26px;left:-28px}.card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;padding:26px 28px;transition:border-color .2s,transform .2s}.card:hover{border-color:var(--accent);transform:translateY(-2px)}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:4px;display:flex}.card-brand{align-items:center;gap:12px;min-width:0;display:flex}.brand-logo{object-fit:contain;flex:none;width:auto;max-width:150px;height:26px}.brand-name{font-size:20px}.role-line{color:var(--accent);margin:2px 0 12px;font-weight:600}.product-item{border:1px solid var(--border);background:var(--bg-soft);border-radius:12px;margin:0 0 8px -20px;list-style:none;transition:border-color .2s;overflow:hidden}.product-item.open,.product-item:hover{border-color:var(--accent)}.product-head{cursor:pointer;width:100%;font:inherit;text-align:left;color:inherit;background:0 0;border:none;align-items:center;gap:12px;padding:12px 16px;display:flex}.product-name{color:var(--text-h);font-weight:700}.product-chevron{color:var(--accent);margin-left:auto;font-size:20px;line-height:1;transition:transform .25s}.product-item.open .product-chevron{transform:rotate(180deg)}.product-body{padding:0 16px 14px}.product-item:not(.open) .product-body{display:none}.product-item.open .product-body{animation:.25s both fadeUp}.product-desc{margin:0 0 12px}.product-highlights{gap:6px;margin:0 0 14px;padding-left:18px;display:grid}.product-highlights li::marker{color:var(--accent)}.product-stack{flex-wrap:wrap;gap:8px;display:flex}.tech-chip{color:var(--text-h);background:var(--chip-bg);border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:12.5px;font-weight:500}.product-logo{object-fit:contain;flex:none;width:auto;max-width:120px;height:20px}.product-logo-lg{border-radius:8px;height:36px}.product-logo-wide{max-width:180px;height:30px}.product-logo-serveo{max-width:150px;height:34px}.company{color:var(--accent);margin:4px 0 0;font-weight:600}.period{color:var(--text);background:var(--chip-bg);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:4px 12px;font-size:14px}.job-intro{margin:0 0 10px}.card ul{margin:0;padding-left:20px}.card li{margin-bottom:6px}.card li::marker{color:var(--accent)}.card strong{color:var(--text-h)}.chips{flex-wrap:wrap;gap:10px;display:flex}.chip{color:var(--text-h);background:var(--chip-bg);border:1px solid var(--border);border-radius:999px;padding:8px 16px;font-size:14px;font-weight:500;transition:border-color .2s,transform .2s}.chip:hover{border-color:var(--accent);transform:translateY(-2px)}.edu-list{gap:16px;margin:0;padding:0;list-style:none;display:grid}.edu-card{color:var(--text-h);padding:20px 24px}.edu-card p{margin:0}.award-sub{border-left:2px solid var(--accent);color:var(--text);gap:6px;margin:10px 0 0;padding:0 0 0 16px;font-size:.95em;list-style:none;display:grid}.award-sub a{color:var(--accent);text-decoration:underline}.contact{text-align:center}.contact .section-title{justify-content:center}.contact-lead{max-width:520px;margin:0 auto 28px}.socials{justify-content:center;gap:24px;margin-top:28px;display:flex}.socials a{color:var(--text-h);border-bottom:2px solid var(--accent);padding-bottom:2px;font-weight:600}.footer{text-align:center;border-top:1px solid var(--border);padding:32px 24px;font-size:14px}.footer code{color:var(--accent)}@media (width<=760px){.nav{background:var(--bg-soft);border-bottom:1px solid var(--border);flex-direction:column;gap:0;padding:8px 0;display:none;position:fixed;inset:62px 0 auto}.nav.open{display:flex}.nav a{border-bottom:none;padding:14px 32px}.burger{display:block}.section{padding:32px 0}.hero{padding-top:32px}.card-head{justify-content:flex-start}}@media print{*{-webkit-print-color-adjust:exact;print-color-adjust:exact}@page{margin:14mm}body:before,.header,.hero-cta,.tech-scroll,.product-chevron,.footer{display:none!important}main{max-width:none;padding:0}.section{break-inside:avoid;padding:12px 0}.hero{padding:0 0 8px}.timeline-item,.card,.product-item,.edu-card{break-inside:avoid}.product-item .product-body{display:block!important}.product-item{border-color:#ccc}.contact .btn-primary{font-weight:700;color:#000!important;box-shadow:none!important;background:0 0!important;padding:0!important}.socials a{color:#000}}.gate{background:var(--bg);place-items:center;min-height:100dvh;padding:24px;display:grid}.gate-card{background:var(--card);border:1px solid var(--border);border-radius:20px;width:100%;max-width:400px;padding:36px 32px;position:relative;box-shadow:0 24px 60px #00000014}.gate-lang{position:absolute;top:16px;right:16px}.gate-brand{font-family:var(--heading);color:var(--text-h);align-items:center;gap:12px;font-size:1.2rem;font-weight:800;display:flex}.gate-brand .logo-avatar{width:42px;height:42px}.gate-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-top:22px;font-size:.8rem;font-weight:700}.gate-intro{color:var(--text);margin-top:8px;font-size:.95rem}.gate-card input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;border-radius:12px;outline:none;margin-top:12px;padding:12px 14px}.gate-card input:focus{border-color:var(--accent)}.gate-card input.gate-error-input{border-color:#d64545}.gate-error{color:#d64545;margin-top:8px;font-size:.85rem}.gate-submit{width:100%;margin-top:18px}.gate-submit:disabled{opacity:.45;cursor:not-allowed}
