body{background:#0a0a14}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--primary:#6366f1;--primary-dark:#4f46e5;--bg:#1a1a2e;--bg2:#1f1f35;--card:#26263d;--text:#e2e8f0;--muted:#a0aec0;--border:#2d2d4e;font-family:Segoe UI,system-ui,-apple-system,sans-serif}body{background:var(--bg);color:var(--text);line-height:1.7}a{color:inherit;text-decoration:none}ul{padding:0;list-style:none}.nav{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#0a0a14d9;justify-content:space-between;align-items:center;height:60px;padding:0 40px;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{color:var(--primary);letter-spacing:1px;font-size:18px;font-weight:800}.nav-links{gap:32px;display:flex}.nav-links a{color:var(--muted);font-size:14px;transition:color .2s}.nav-links a:hover{color:var(--text)}.hero{background:radial-gradient(60% 50% at 60% 40%,#6366f11f,#0000);justify-content:center;align-items:center;gap:80px;min-height:100vh;padding:100px 80px 60px;display:flex}.hero-content{max-width:540px}.hero-sub{color:var(--primary);letter-spacing:.5px;margin-bottom:12px;font-size:15px;font-weight:600}.hero-title{letter-spacing:-1.5px;margin-bottom:20px;font-size:56px;font-weight:800;line-height:1.1}.hero-desc{color:var(--muted);margin-bottom:36px;font-size:16px;line-height:1.8}.hero-btns{flex-wrap:wrap;gap:14px;display:flex}.hero-avatar{background:linear-gradient(135deg, var(--primary), #8b5cf6);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:200px;height:200px;font-size:52px;font-weight:800;display:flex;box-shadow:0 0 60px #6366f14d}.btn{cursor:pointer;border:none;border-radius:8px;padding:12px 28px;font-size:15px;font-weight:600;transition:all .2s;display:inline-block}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-1px)}.btn-outline{color:var(--text);border:1.5px solid var(--border);background:0 0}.btn-outline:hover{border-color:var(--primary);color:var(--primary)}.section{width:100%;max-width:1000px;margin:0 auto;padding:100px 80px}.section-alt{background:var(--bg2);max-width:100%;padding:100px 0}.section-alt>*{max-width:1000px;margin-left:auto;margin-right:auto;padding-left:80px;padding-right:80px}.section-title{letter-spacing:-.5px;border-bottom:2px solid var(--border);margin-bottom:48px;padding-bottom:16px;font-size:32px;font-weight:800}.timeline{flex-direction:column;gap:32px;display:flex}.timeline-item{align-items:flex-start;gap:24px;display:flex}.timeline-dot{background:var(--primary);border-radius:50%;flex-shrink:0;width:14px;height:14px;margin-top:6px;box-shadow:0 0 12px #6366f180}.timeline-card{background:var(--card);border:1px solid var(--border);border-radius:12px;flex:1;padding:24px 28px}.timeline-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.company{font-size:18px;font-weight:700}.period{color:var(--muted);font-size:13px}.role{color:var(--primary);margin-bottom:14px;font-size:14px;font-weight:600}.timeline-desc{flex-direction:column;gap:6px;display:flex}.timeline-desc li{color:var(--muted);padding-left:16px;font-size:14px;position:relative}.timeline-desc li:before{content:"·";color:var(--primary);position:absolute;left:0}.cert-empty{color:var(--muted);font-size:14px}.skills-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.skill-group{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px}.skill-group-title{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:14px;font-size:13px;font-weight:600}.skill-tags{flex-wrap:wrap;gap:8px;display:flex}.tag{color:var(--primary);background:#6366f11f;border:1px solid #6366f140;border-radius:20px;padding:5px 12px;font-size:13px;font-weight:500}.contact-desc{color:var(--muted);margin-bottom:36px;font-size:15px}.contact-form{flex-direction:column;gap:16px;max-width:600px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact-form input,.contact-form textarea{background:var(--card);border:1.5px solid var(--border);color:var(--text);border-radius:8px;outline:none;width:100%;padding:12px 16px;font-family:inherit;font-size:14px;transition:border-color .2s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--primary)}.contact-form textarea{resize:vertical}.contact-form .btn{align-self:flex-start}.form-success{color:#4ade80;font-size:15px;font-weight:600}.footer{text-align:center;color:var(--muted);border-top:1px solid var(--border);justify-content:center;gap:24px;padding:32px;font-size:13px;display:flex}.footer a:hover{color:var(--primary)}.tag-clickable{cursor:pointer;transition:all .2s}.tag-clickable:hover{border-color:var(--primary);background:#6366f140;transform:translateY(-2px)}.hint{color:var(--muted);text-transform:none;letter-spacing:0;margin-left:6px;font-size:11px;font-weight:400}.modal-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;padding:24px;animation:.15s fade-in;display:flex;position:fixed;inset:0}.modal-card{background:var(--card);border:1px solid var(--border);border-radius:16px;width:100%;max-width:440px;padding:40px 36px;animation:.2s slide-up;position:relative}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:none;font-size:16px;line-height:1;transition:color .2s;position:absolute;top:16px;right:16px}.modal-close:hover{color:var(--text)}.modal-icon{margin-bottom:16px;font-size:40px}.modal-title{margin-bottom:14px;font-size:20px;font-weight:700}.modal-desc{flex-direction:column;gap:10px;padding:0;list-style:none;display:flex}.modal-desc li{color:var(--muted);padding-left:20px;font-size:15px;line-height:1.7;position:relative}.modal-desc li:before{content:"—";color:var(--primary);position:absolute;left:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.nav{padding:0 20px}.nav-links{gap:20px}.hero{text-align:center;flex-direction:column-reverse;gap:40px;padding:100px 24px 60px}.hero-title{font-size:36px}.hero-btns{justify-content:center}.hero-avatar{width:140px;height:140px;font-size:36px}.section{padding:60px 24px}.section-alt>*{padding-left:24px;padding-right:24px}.skills-grid,.form-row{grid-template-columns:1fr}.section-title{font-size:24px}}
