.hero[data-v-36da1df4]{min-height:100vh;padding:80px 0}.hero[data-v-36da1df4],.hero-inner[data-v-36da1df4]{align-items:center;display:flex}.hero-inner[data-v-36da1df4]{gap:72px}.hero-photo-wrap[data-v-36da1df4]{flex-shrink:0}.hero-photo[data-v-36da1df4]{border-radius:50%;box-shadow:0 0 0 6px #f5f5f7,0 0 0 7px var(--border);height:200px;-o-object-fit:cover;object-fit:cover;-o-object-position:center top;object-position:center top;width:200px}.hero-content[data-v-36da1df4]{flex:1}.hero-loc[data-v-36da1df4]{align-items:center;color:var(--muted);display:flex;font-family:var(--mono);font-size:14px;gap:6px;margin-bottom:20px}.hero-name[data-v-36da1df4]{color:var(--text);font-size:clamp(52px,8vw,80px);font-weight:700;letter-spacing:-.03em;line-height:1;margin-bottom:16px}.hero-name span[data-v-36da1df4]{color:var(--accent)}.hero-title[data-v-36da1df4]{color:var(--muted);font-size:clamp(17px,2vw,20px);font-weight:400;margin-bottom:10px}.hero-tagline[data-v-36da1df4]{color:var(--muted);font-family:var(--mono);font-size:14px;font-style:italic;margin-bottom:40px;opacity:.8}.hero-actions[data-v-36da1df4]{display:flex;flex-wrap:wrap;gap:12px}.btn-primary[data-v-36da1df4]{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary[data-v-36da1df4]:hover{background:#0077ed;border-color:#0077ed;color:#fff}@media(max-width:680px){.hero-inner[data-v-36da1df4]{flex-direction:column;gap:36px;text-align:center}.hero-actions[data-v-36da1df4],.hero-loc[data-v-36da1df4]{justify-content:center}}.about-grid[data-v-76a5a6b2]{align-items:start;display:grid;gap:64px;grid-template-columns:1fr 1fr}.about-bio p[data-v-76a5a6b2]{color:var(--muted);font-size:17px;line-height:1.75;margin-bottom:18px}.about-bio p[data-v-76a5a6b2]:last-child{margin-bottom:0}.meta-block[data-v-76a5a6b2]{margin-bottom:32px}.meta-block[data-v-76a5a6b2]:last-child{margin-bottom:0}.meta-label[data-v-76a5a6b2]{color:var(--muted);font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase}.meta-value[data-v-76a5a6b2]{color:var(--text);font-size:15px;font-weight:500}@media(max-width:640px){.about-grid[data-v-76a5a6b2]{gap:40px;grid-template-columns:1fr}}.skills-grid[data-v-6144546a]{display:grid;gap:40px;grid-template-columns:repeat(3,1fr)}.skill-label[data-v-6144546a]{color:var(--muted);font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;margin-bottom:14px;text-transform:uppercase}@media(max-width:640px){.skills-grid[data-v-6144546a]{gap:28px;grid-template-columns:1fr}}.timeline[data-v-f26ea792]{display:flex;flex-direction:column}.job[data-v-f26ea792]{border-bottom:1px solid var(--border);display:flex;gap:20px;padding:28px 0}.job[data-v-f26ea792]:last-child{border-bottom:none}.job-logo-col[data-v-f26ea792]{flex-shrink:0;padding-top:4px}.logo-wrap[data-v-f26ea792]{height:44px;position:relative;width:44px}.logo-img[data-v-f26ea792]{background:#fff;border:1px solid var(--border);border-radius:10px;height:44px;-o-object-fit:contain;object-fit:contain;padding:4px;width:44px}.logo-fallback[data-v-f26ea792]{align-items:center;border-radius:10px;display:none;font-family:var(--font);font-size:18px;font-weight:700;height:44px;justify-content:center;left:0;position:absolute;top:0;width:44px}.logo-fallback-visible[data-v-f26ea792]{display:flex!important;position:relative}.job-main[data-v-f26ea792]{flex:1;min-width:0}.job-header[data-v-f26ea792]{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:8px}.job-title-row[data-v-f26ea792]{align-items:center;display:flex;gap:10px;margin-bottom:3px}.job-role[data-v-f26ea792]{color:var(--text);font-size:16px;font-weight:600;letter-spacing:-.01em}.job-badge[data-v-f26ea792]{background:var(--accent-dim);border:1px solid rgba(0,113,227,.2);border-radius:100px;font-size:10px;font-weight:600;letter-spacing:.05em;padding:2px 9px;text-transform:uppercase;white-space:nowrap}.job-badge[data-v-f26ea792],.job-company[data-v-f26ea792]{color:var(--accent);font-family:var(--mono)}.job-company[data-v-f26ea792]{font-size:14px;font-weight:500}.job-meta[data-v-f26ea792]{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:3px}.job-period[data-v-f26ea792]{color:var(--muted);font-size:13px;white-space:nowrap}.job-loc[data-v-f26ea792],.job-period[data-v-f26ea792]{font-family:var(--mono)}.job-loc[data-v-f26ea792]{color:#b0b0b5;font-size:12px}.job-desc[data-v-f26ea792]{color:var(--muted);font-size:15px;line-height:1.65}@media(max-width:640px){.job-header[data-v-f26ea792]{flex-direction:column;gap:8px}.job-meta[data-v-f26ea792]{align-items:flex-start}}.projects-grid[data-v-8ac6243f]{display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.project-card[data-v-8ac6243f]{background:var(--bg);border:1px solid var(--border);border-radius:18px;display:block;padding:28px;transition:box-shadow .2s,transform .2s,border-color .2s}.project-card[data-v-8ac6243f]:hover{border-color:transparent;box-shadow:0 8px 32px #0000001a;transform:translateY(-3px)}.card-header[data-v-8ac6243f]{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.card-lang[data-v-8ac6243f]{background:var(--surface);border-radius:100px;color:var(--muted);font-family:var(--mono);font-size:11px;letter-spacing:.06em;padding:3px 9px;text-transform:uppercase}.card-arrow[data-v-8ac6243f]{color:var(--muted);transition:color .15s,transform .15s}.project-card:hover .card-arrow[data-v-8ac6243f]{color:var(--accent);transform:translate(2px,-2px)}.card-name[data-v-8ac6243f]{color:var(--text);font-family:var(--mono);font-size:16px;font-weight:600;letter-spacing:-.01em;margin-bottom:10px}.card-desc[data-v-8ac6243f]{color:var(--muted);font-size:14px;line-height:1.6}@media(max-width:640px){.projects-grid[data-v-8ac6243f]{grid-template-columns:1fr}}.contact-wrap[data-v-b67db785]{text-align:center}.contact-sub[data-v-b67db785]{color:var(--muted);font-size:17px;line-height:1.6;margin-bottom:40px;margin-left:auto;margin-right:auto;max-width:440px}.contact-links[data-v-b67db785]{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.contact-link[data-v-b67db785]{align-items:center;background:#fff;border:1px solid var(--border);border-radius:980px;color:var(--text);display:inline-flex;font-size:15px;font-weight:500;gap:10px;padding:13px 24px;transition:box-shadow .15s,transform .15s}.contact-link[data-v-b67db785]:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-1px)}.contact-link-primary[data-v-b67db785]{background:var(--accent);border-color:var(--accent);color:#fff}.contact-link-primary[data-v-b67db785]:hover{background:#0077ed;border-color:#0077ed;box-shadow:0 4px 16px #0071e34d}
