:root{--bg:#0b0e12;--bg-soft:#121821;--panel:#121821b8;--panel-strong:#141b22;--panel-border:#ffffff14;--text:#ebf0f5;--muted:#9aa7b3;--soft:#d6dee6;--line:#ffffff1f;--accent:#9fe5d0;--accent-soft:#9fe5d024;--shadow:0 30px 80px #0000005c;--radius:28px;--container:1180px;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);background:#0b0e12;margin:0}img{max-width:100%;display:block}button,a{font:inherit}#app{min-height:100vh}.container{width:min(var(--container), calc(100% - 40px));margin:0 auto}.page-shell{padding-bottom:48px}.topbar{z-index:30;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--panel-border);background:#0b0e12b8;border-radius:18px;justify-content:space-between;align-items:center;margin:16px auto 0;padding:20px 18px 16px;display:flex;position:sticky;top:12px;box-shadow:0 18px 36px #0003}.brand{letter-spacing:-.04em;align-items:center;gap:12px;font-size:1.05rem;font-weight:600;display:inline-flex}.brand-mark{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);border:1px solid #9fe5d040;border-radius:10px;justify-content:center;align-items:center;font-size:.82rem;display:inline-flex}.main-nav{align-items:center;gap:28px;display:inline-flex}.main-nav a,.footer a{color:var(--muted);text-decoration:none;transition:color .2s}.main-nav a:hover,.footer a:hover{color:var(--text)}.nav-cta,.primary-btn,.secondary-btn{border-radius:999px;text-decoration:none;transition:transform .2s,border-color .2s,background .2s}.nav-cta,.primary-btn{background:var(--text);color:#091118;border:1px solid #0000;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.nav-cta{min-width:96px;height:38px}.primary-btn{min-width:150px;height:48px;padding:0 24px}.secondary-btn{border:1px solid var(--line);min-width:150px;height:48px;color:var(--text);background:#ffffff08;justify-content:center;align-items:center;padding:0 24px;display:inline-flex}.nav-cta:hover,.primary-btn:hover,.secondary-btn:hover{transform:translateY(-1px)}.hero{width:min(100%,1600px);max-width:1600px;min-height:100vh;color:var(--text);background:0 0;justify-content:center;align-items:center;padding:72px 0 80px;display:flex}.eyebrow{color:#ebf0f5b8;letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px;font-size:.7rem}.hero-copy{text-align:center;width:min(100%,1600px);max-width:1600px}.hero-copy h1{letter-spacing:-.07em;color:var(--text);margin:0;font-size:clamp(4.5rem,11vw,22rem);font-weight:600;line-height:.88}.hero-copy h1 span{color:inherit}.lede{color:#d6dee6cc;letter-spacing:-.02em;max-width:820px;margin:18px auto 0;font-size:1rem;line-height:1.65}.cta-row{flex-wrap:wrap;align-items:center;gap:14px;margin-top:32px;display:flex}.center{justify-content:center}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:40px 0 0;padding:0;list-style:none;display:grid}.stats li{border:1px solid var(--panel-border);background:#ffffff08;border-radius:18px;padding:18px 16px}.stats strong{letter-spacing:-.06em;font-size:1.7rem;display:block}.stats span{color:var(--muted);margin-top:4px;font-size:.8rem;line-height:1.6;display:block}.hero-visual{justify-content:center;align-items:center;min-height:540px;display:flex;position:relative}.profile-card{border-radius:var(--radius);border:1px solid var(--panel-border);width:min(440px,100%);box-shadow:var(--shadow);background:linear-gradient(#141b22f0,#0d1115eb);padding:30px 28px 22px;position:relative}.badge-row{border:1px solid var(--line);color:var(--soft);background:#ffffff08;border-radius:999px;align-items:center;gap:10px;padding:9px 12px;font-size:.78rem;display:inline-flex}.dot{background:#7ef0c9;border-radius:50%;width:8px;height:8px;box-shadow:0 0 18px #7ef0c9cc}.profile-meta{align-items:center;gap:18px;margin-top:34px;display:flex}.avatar{background:linear-gradient(135deg, var(--accent), #b7d6fe);color:#091118;border-radius:24px;justify-content:center;align-items:center;width:72px;height:72px;font-size:1.7rem;font-weight:800;display:flex}.mini-label{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.75rem}.profile-meta h2{letter-spacing:-.05em;margin:8px 0 0;font-size:2rem}.skill-group{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.skill-group span{color:var(--soft);background:#9fe5d014;border:1px solid #9fe5d02e;border-radius:999px;padding:9px 12px;font-size:.82rem}.floating-card{border:1px solid var(--panel-border);box-shadow:var(--shadow);background:#0d1217eb;border-radius:18px;padding:16px 18px;position:absolute}.floating-card p{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.76rem}.floating-card strong{letter-spacing:-.04em;font-size:1rem}.card-top{top:24px;right:-18px}.card-bottom{bottom:28px;left:-10px}.section{background:0 0;flex-direction:column;justify-content:center;min-height:100vh;padding-top:72px;padding-bottom:24px;display:flex}section[id]{scroll-margin-top:96px}.split-panel{grid-template-columns:.92fr 1.08fr;align-items:start;gap:32px;padding-bottom:12px;display:grid}.section-heading{margin-bottom:20px}.demo-figure{border:1px solid var(--panel-border);background:#ffffff08;border-radius:26px;width:100%;max-width:980px;margin-top:30px;padding:14px;box-shadow:0 18px 52px #00000038}.demo-figure img{background:linear-gradient(135deg,#9fe5d014,#ffffff05);border:1px solid #ffffff14;border-radius:18px;width:100%;display:block}.section-heading h2,.closing-band h2{letter-spacing:-.06em;margin:0;font-size:clamp(2rem,3vw,3.1rem);line-height:1.08}.narrow{max-width:820px}.section-copy{color:var(--soft);gap:18px;font-size:1.02rem;line-height:1.8;display:grid}.experience-list{gap:18px;margin-top:24px;display:grid}.experience-item{border:1px solid var(--panel-border);background:#ffffff08;border-radius:24px;grid-template-columns:220px minmax(0,1fr);gap:22px;padding:24px 22px;display:grid}.experience-meta{flex-direction:column;gap:10px;display:flex}.experience-period{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}.experience-role{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.experience-content h3{letter-spacing:-.05em;margin:0 0 12px;font-size:1.8rem}.experience-content p{color:var(--soft);margin:0;line-height:1.7}.experience-content ul{gap:10px;margin:18px 0 0;padding:0;list-style:none;display:grid}.experience-content li{color:var(--soft);padding-left:18px;line-height:1.7;position:relative}.experience-content li:before{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px;position:absolute;top:.72em;left:0;box-shadow:0 0 18px #9fe5d0b3}.certificates-wrap{gap:18px;display:grid}.certificate-table-wrap{border:1px solid var(--panel-border);background:#ffffff08;border-radius:24px;overflow-x:auto}.certificate-table{border-collapse:collapse;width:100%;min-width:760px}.certificate-table th,.certificate-table td{text-align:left;border-bottom:1px solid var(--line);color:var(--soft);vertical-align:top;white-space:nowrap;padding:16px 18px}.certificate-table th:first-child,.certificate-table td:first-child{width:18%}.certificate-table th:nth-child(2),.certificate-table td:nth-child(2){width:28%}.certificate-table th:nth-child(3),.certificate-table td:nth-child(3){width:24%}.certificate-table th:nth-child(4),.certificate-table td:nth-child(4){width:30%}.certificate-table thead th{color:var(--text);letter-spacing:.12em;text-transform:uppercase;background:#ffffff05;font-size:.76rem}.certificate-table tbody tr:last-child td{border-bottom:none}.certificate-table td:nth-child(2){font-weight:600}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px;display:grid}.section-divider{background:var(--line);width:100%;height:1px;margin:36px 0}.info-card,.project-card,.process-step{border:1px solid var(--panel-border);background:#ffffff08;border-radius:24px}.info-card{padding:24px 20px 22px}.card-index{color:var(--accent);letter-spacing:.14em;font-size:.78rem}.info-card h3,.project-card h3{letter-spacing:-.05em;margin:16px 0 10px;font-size:1.6rem}.info-card p,.project-card p{color:var(--soft);margin:0;line-height:1.7}.project-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px;display:grid}.project-card{padding:22px 20px 18px}.project-topline{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.project-type{color:var(--accent);text-transform:uppercase;letter-spacing:.12em;font-size:.76rem}.project-arrow{color:var(--muted);font-size:1.2rem}.project-card ul{flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none;display:flex}.project-card li{border:1px solid var(--line);color:var(--soft);background:#ffffff08;border-radius:999px;padding:7px 10px;font-size:.76rem}.process-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:24px;display:grid}.process-step{padding:22px 18px}.step-number{color:var(--accent);letter-spacing:.12em;margin-bottom:18px;font-size:.8rem;display:inline-block}.process-step p{color:var(--soft);margin:0;line-height:1.7}.closing-band{text-align:center;padding:84px 0 24px}.footer{color:var(--muted);border-top:1px solid #ffffff17;justify-content:space-between;align-items:center;gap:12px;padding-top:32px;display:flex}.footer div{align-items:center;gap:18px;display:inline-flex}@media (width<=980px){.hero,.split-panel,.experience-item,.project-list,.card-grid,.process-list{grid-template-columns:1fr}.hero{padding-top:44px}.experience-item{padding:22px 18px}.main-nav{display:none}.hero-visual{min-height:440px}.card-top{right:16px}.card-bottom{left:16px}}@media (width<=640px){.topbar{padding-top:18px}.container{width:min(var(--container), calc(100% - 24px))}.hero-copy h1{letter-spacing:-.06em}.stats{grid-template-columns:1fr}.cta-row{flex-direction:column;align-items:stretch}.primary-btn,.secondary-btn,.nav-cta{width:100%}.profile-card{padding:22px 18px 20px}.profile-meta{align-items:flex-start}.profile-meta h2{font-size:1.5rem}.footer{flex-direction:column;align-items:flex-start}}
