:root{--radius:14px;--max:1080px;--sans:'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;--mono:'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:48px 48px}body::before{content:'';position:fixed;inset:0 0 auto 0;height:3px;background:var(--accent);z-index:60}a{color:inherit}.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}section{padding:56px 0}.sec-head{display:flex;align-items:baseline;gap:14px;margin-bottom:28px}.sec-head .num{font-family:var(--mono);color:var(--accent-ink);font-size:14px}h2{font-size:28px;margin:0;font-weight:800;letter-spacing:-0.01em}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:28px}.btns{display:flex;flex-wrap:wrap;gap:10px}.btn{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:600;font-size:14px;padding:10px 16px;border-radius:10px;border:1px solid var(--line);background:var(--bg2)}.btn:hover{border-color:var(--muted)}.btn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn.primary:hover{filter:brightness(1.06)}.btn svg{width:16px;height:16px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width:860px){.grid2,.grid3{grid-template-columns:1fr}}.tag{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:8px}:root{--a-fill:#01b568;--a-rgb:1, 181, 104;--a-on:#051b0e;--a-ink-d:#4ad186;--a-ink-l:#02703f;--a-tint-d:#baecca;--a-tint-l:#00502b;--bg:#0e1a2e;--bg2:#12213a;--panel:#152742;--line:rgba(148, 170, 210, 0.14);--text:#e7edf7;--text-body:#d3dcea;--text-soft:#c9d3e3;--muted:#9aa8c0;--dim:#6f7f9c;--code-bg:#0a1424;--nav-bg:rgba(14, 26, 46, 0.86);--term-key:#8fb4ff;--alo:#fbbf3c;--accent:var(--a-fill);--accent-soft:rgba(var(--a-rgb), 0.12);--accent-line:rgba(var(--a-rgb), 0.5);--on-accent:var(--a-on);--accent-ink:var(--a-ink-d);--accent-tint:var(--a-tint-d)}:root[data-theme='light']{--bg:#f4f7fb;--bg2:#eaeff7;--panel:#ffffff;--line:rgba(15, 30, 60, 0.12);--text:#0e1a2e;--text-body:#26354f;--text-soft:#33425c;--muted:#4a5a75;--dim:#66768f;--code-bg:#eaeff7;--nav-bg:rgba(244, 247, 251, 0.86);--term-key:#2563eb;--alo:#b45f06;--accent-ink:var(--a-ink-l);--accent-tint:var(--a-tint-l)}[data-accent='green']{--a-fill:#01b568;--a-rgb:1, 181, 104;--a-on:#051b0e;--a-ink-d:#4ad186;--a-ink-l:#02703f;--a-tint-d:#baecca;--a-tint-l:#00502b}[data-accent='blue']{--a-fill:#0395fe;--a-rgb:3, 149, 254;--a-on:#000613;--a-ink-d:#75baff;--a-ink-l:#0465af;--a-tint-d:#c6e1ff;--a-tint-l:#024478}[data-accent='purple']{--a-fill:#bc62ed;--a-rgb:188, 98, 237;--a-on:#020004;--a-ink-d:#d694fd;--a-ink-l:#833ea7;--a-tint-d:#edd2fe;--a-tint-l:#572b6f}[data-accent='rose']{--a-fill:#f14e9c;--a-rgb:241, 78, 156;--a-on:#030001;--a-ink-d:#ff87b9;--a-ink-l:#a72a68;--a-tint-d:#ffcfe0;--a-tint-l:#701f46}[data-accent='orange']{--a-fill:#ff8432;--a-rgb:255, 132, 50;--a-on:#241005;--a-ink-d:#fe9557;--a-ink-l:#9c4700;--a-tint-d:#ffd4bc;--a-tint-l:#6b2f01}[data-accent='amber']{--a-fill:#f5a524;--a-rgb:245, 165, 36;--a-on:#1a1405;--a-ink-d:#f5a524;--a-ink-l:#b45309;--a-tint-d:#ffd58a;--a-tint-l:#92400e}.theme-btn .moon{display:none}:root[data-theme='light'] .theme-btn .sun{display:none}:root[data-theme='light'] .theme-btn .moon{display:block}.about-grid[data-a-b20bed]{display:grid;grid-template-columns:1.5fr 1fr;gap:16px}@media (max-width:860px){.about-grid[data-a-b20bed]{grid-template-columns:1fr}}.about p[data-a-b20bed]{margin:0 0 14px;color:var(--text-body)}.about p[data-a-b20bed]:last-child{margin-bottom:0}.side[data-a-b20bed]{display:flex;flex-direction:column;gap:16px}.note-card[data-a-b20bed]{flex:1}.note-card h3[data-a-b20bed]{margin:0 0 2px;font-size:17px}.note-card p[data-a-b20bed]{margin:10px 0 0;color:var(--text-soft);font-size:15px}.note-card ul.dots[data-a-b20bed]{margin:10px 0 0;padding:0;list-style:none}ul.dots li[data-a-b20bed]{position:relative;padding-left:18px;color:var(--text-soft);font-size:15px;margin-bottom:4px}ul.dots li[data-a-b20bed]::before{content:'▸';position:absolute;left:0;color:var(--accent-ink);font-size:12px;top:3px}.cert[data-a-1a7929]{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--line)}.cert[data-a-1a7929]:last-child{border-bottom:0}.cert .yr[data-a-1a7929]{font-family:var(--mono);font-size:12px;color:var(--muted);min-width:74px;padding-top:3px}.cert h4[data-a-1a7929]{margin:0;font-size:15px}.cert p[data-a-1a7929]{margin:2px 0 0;font-size:13px;color:var(--muted)}.cert a[data-a-1a7929]{color:var(--accent-tint);font-size:13px;font-weight:600;text-decoration:none}.cert a[data-a-1a7929]:hover{text-decoration:underline}.badge-star[data-a-1a7929]{color:var(--accent-ink)}.contact[data-a-797e17]{text-align:center;padding:40px 28px}.contact .sec-head[data-a-797e17]{justify-content:center;margin-bottom:8px}.contact h2[data-a-797e17]{margin-bottom:8px}.contact p[data-a-797e17]{color:var(--muted);margin:0 auto 22px;max-width:560px}.contact .btns[data-a-797e17]{justify-content:center}.company[data-a-9c866e]{margin-bottom:22px}.company-head[data-a-9c866e]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;margin-bottom:6px}.company-head h3[data-a-9c866e]{margin:0;font-size:20px}.meta[data-a-9c866e]{font-family:var(--mono);font-size:13px;color:var(--muted)}.timeline[data-a-9c866e]{position:relative;margin:18px 0 0 6px;padding-left:24px;border-left:2px solid var(--line)}.role-item[data-a-9c866e]{position:relative;padding-bottom:24px}.role-item[data-a-9c866e]:last-child{padding-bottom:0}.role-item[data-a-9c866e]::before{content:'';position:absolute;left:-31px;top:7px;width:12px;height:12px;border-radius:50%;background:var(--bg);border:2px solid var(--muted)}.role-item.current[data-a-9c866e]::before{border-color:var(--accent);background:var(--accent)}.role-item h4[data-a-9c866e]{margin:0;font-size:16px}.role-item .meta[data-a-9c866e]{display:block;margin:2px 0 8px}ul.dots[data-a-9c866e]{margin:0;padding:0;list-style:none}ul.dots li[data-a-9c866e]{position:relative;padding-left:18px;color:var(--text-soft);font-size:15px;margin-bottom:4px}ul.dots li[data-a-9c866e]::before{content:'▸';position:absolute;left:0;color:var(--accent-ink);font-size:12px;top:3px}.mini h3[data-a-9c866e]{margin:0 0 2px;font-size:17px}.mini p[data-a-9c866e]{margin:10px 0 0;color:var(--text-soft);font-size:15px}.volunteer[data-a-9c866e]{margin-top:16px}footer[data-a-3200f7]{padding:28px 0 40px;border-top:1px solid var(--line);font-size:13px;color:var(--dim)}.top[data-a-3200f7]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.copy[data-a-3200f7]{margin:0}footer .mono[data-a-3200f7]{font-family:var(--mono)}.social[data-a-3200f7]{display:flex;gap:10px}.social a[data-a-3200f7]{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--line);border-radius:8px;color:var(--muted)}.social a[data-a-3200f7]:hover{color:var(--text);border-color:var(--muted)}.social svg[data-a-3200f7]{width:18px;height:18px}.built[data-a-3200f7]{margin:24px 0 0;text-align:center}.built a[data-a-3200f7]{color:var(--alo);font-weight:600;text-decoration:none}.built a[data-a-3200f7]:hover{text-decoration:underline}.hero[data-a-23a2d0]{padding:84px 0 64px}.hero-grid[data-a-23a2d0]{display:grid;grid-template-columns:1.35fr 0.9fr;gap:48px;align-items:center}@media (max-width:860px){.hero-grid[data-a-23a2d0]{grid-template-columns:1fr}}.kicker[data-a-23a2d0]{font-family:var(--mono);font-size:13px;color:var(--accent-ink);letter-spacing:0.08em;text-transform:uppercase;margin:0 0 14px}h1[data-a-23a2d0]{font-size:clamp(36px,5.4vw,56px);line-height:1.08;margin:0 0 10px;font-weight:800;letter-spacing:-0.02em}.role[data-a-23a2d0]{font-size:15.5px;color:var(--muted);margin:0 0 22px}.role b[data-a-23a2d0]{color:var(--text);font-weight:600}.lead[data-a-23a2d0]{font-size:clamp(20px,2.4vw,26px);line-height:1.35;font-weight:700;margin:0 0 24px}.lead em[data-a-23a2d0]{font-style:normal;color:var(--accent-ink)}.chips[data-a-23a2d0]{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}.chip[data-a-23a2d0]{font-size:13px;font-weight:600;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:var(--bg2);color:var(--text)}@media (max-width:400px){.chip[data-a-23a2d0]{padding:6px 10px;border-radius:16px;font-size:12px}}.chip.hl[data-a-23a2d0]{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-tint)}.handle[data-a-23a2d0]{font-weight:500;opacity:0.8}.card-id[data-a-23a2d0]{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px;position:relative}.card-id .photo[data-a-23a2d0]{width:116px;height:116px;border-radius:50%;object-fit:cover;border:3px solid var(--accent);display:block;margin-bottom:16px}.term[data-a-23a2d0]{font-family:var(--mono);font-size:13px;color:var(--muted);line-height:1.9}.term .k[data-a-23a2d0]{color:var(--term-key)}.term .s[data-a-23a2d0]{color:var(--accent-tint)}.term .c[data-a-23a2d0]{color:var(--dim)}.stats[data-a-23a2d0]{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:56px}@media (max-width:700px){.stats[data-a-23a2d0]{grid-template-columns:repeat(2,1fr)}}.stat[data-a-23a2d0]{background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:16px 18px}.stat b[data-a-23a2d0]{display:block;font-size:28px;font-weight:800;color:var(--accent-ink);line-height:1.1}.stat span[data-a-23a2d0]{font-size:13px;color:var(--muted)}nav[data-a-b18289]{position:sticky;top:0;z-index:50;background:var(--nav-bg);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}nav .wrap[data-a-b18289]{display:flex;align-items:center;justify-content:space-between;height:60px}.brand[data-a-b18289]{font-family:var(--mono);font-weight:600;text-decoration:none;letter-spacing:0.02em}.brand span[data-a-b18289]{color:var(--accent-ink)}.right[data-a-b18289]{display:flex;align-items:center;gap:28px}.links[data-a-b18289]{display:flex;gap:22px}.links a[data-a-b18289]{white-space:nowrap;text-decoration:none;color:var(--muted);font-size:14px;font-weight:500}.links a[data-a-b18289]:hover{color:var(--text)}.tools[data-a-b18289]{display:flex;align-items:center;gap:10px}.picker[data-a-b18289]{position:relative}.accent-btn[data-a-b18289],.theme-btn[data-a-b18289],.menu-btn[data-a-b18289]{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.accent-btn[data-a-b18289]:hover,.theme-btn[data-a-b18289]:hover,.menu-btn[data-a-b18289]:hover{color:var(--text);border-color:var(--muted)}.current-dot[data-a-b18289]{width:16px;height:16px;border-radius:50%;background:var(--a-fill)}.theme-btn svg[data-a-b18289],.menu-btn svg[data-a-b18289]{width:18px;height:18px}.palette[data-a-b18289]{display:none;position:absolute;top:calc(100% + 12px);right:0;grid-template-columns:repeat(3,1fr);justify-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:0 12px 32px rgba(0,0,0,0.35)}.palette.open[data-a-b18289]{display:grid}.swatch[data-a-b18289]{width:26px;height:26px;padding:0;border:0;border-radius:50%;background:var(--a-fill);cursor:pointer}.swatch[aria-pressed='true'][data-a-b18289]{outline:2px solid var(--text);outline-offset:2px}.custom[data-a-b18289]{position:relative;display:flex;align-items:center;gap:10px;grid-column:1 / -1;justify-self:stretch;padding:8px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:13px;cursor:pointer}.custom[data-a-b18289]:hover{color:var(--text);border-color:var(--muted)}.custom.active[data-a-b18289]{border-color:var(--accent);color:var(--text)}.custom-dot[data-a-b18289]{width:18px;height:18px;border-radius:50%;background:conic-gradient(#f43f5e,#f59e0b,#10b981,#3b82f6,#a855f7,#f43f5e)}.custom-input[data-a-b18289]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.menu-btn[data-a-b18289]{display:none}.menu-btn .close[data-a-b18289],.menu-btn[aria-expanded='true'] .bars[data-a-b18289]{display:none}.menu-btn[aria-expanded='true'] .close[data-a-b18289]{display:block}.mobile-menu[data-a-b18289]{display:none}@media (max-width:880px){.links[data-a-b18289]{display:none}.right[data-a-b18289]{gap:0}.menu-btn[data-a-b18289]{display:inline-flex}.mobile-menu.open[data-a-b18289]{display:flex;flex-direction:column;padding:8px 24px 16px;border-top:1px solid var(--line);background:var(--panel)}.mobile-menu a[data-a-b18289]{padding:12px 0;border-bottom:1px solid var(--line);color:var(--text);font-size:15px;font-weight:500;text-decoration:none}.mobile-menu a[data-a-b18289]:last-child{border-bottom:0}}.pkg[data-a-8c20f1]{display:flex;flex-direction:column;min-width:0}.pkg h3[data-a-8c20f1]{font-family:var(--mono);font-size:18px;margin:0 0 6px}.pkg p[data-a-8c20f1]{margin:0 0 14px;color:var(--text-soft);font-size:15px}.cmd[data-a-8c20f1]{font-family:var(--mono);font-size:13px;background:var(--code-bg);border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--accent-tint);overflow-x:auto;white-space:nowrap;margin-bottom:14px}.cmd[data-a-8c20f1]::before{content:'$ ';color:var(--dim)}.pkg .feat[data-a-8c20f1]{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.pkg .feat span[data-a-8c20f1]{font-size:12px;padding:3px 9px;border-radius:999px;background:var(--bg2);border:1px solid var(--line);color:var(--muted)}.pkg .lnks[data-a-8c20f1]{margin-top:auto;display:flex;gap:16px;font-size:14px;font-weight:600}.pkg .lnks a[data-a-8c20f1]{text-decoration:none;color:var(--accent-tint)}.pkg .lnks a[data-a-8c20f1]:hover{text-decoration:underline}.note[data-a-8c20f1]{font-size:13px;color:var(--dim);margin-top:14px}.skills[data-a-747026]{margin:0}.skill-row[data-a-747026]{display:grid;grid-template-columns:140px 1fr;gap:12px;padding:12px 0;border-bottom:1px dashed var(--line)}.skill-row[data-a-747026]:last-child{border-bottom:0}.skill-row dt[data-a-747026]{font-family:var(--mono);font-size:13px;color:var(--accent-ink);padding-top:3px}.skill-row dd[data-a-747026]{margin:0;display:flex;flex-wrap:wrap;gap:6px}.skill-row dd span[data-a-747026]{font-size:14px;padding:3px 10px;border-radius:7px;background:var(--bg2);border:1px solid var(--line)}.skill-row dd span.p[data-a-747026]{border-color:var(--accent-line);color:var(--accent-tint)}.skill-row dd small[data-a-747026]{color:var(--dim);font-size:13px;align-self:center}@media (max-width:600px){.skill-row[data-a-747026]{grid-template-columns:1fr}}
