.fp-page{min-height:100vh;background:#f4f6fb;font-family:Outfit,sans-serif;color:#0b0f2b}.fp-bar{position:sticky;top:0;z-index:40;justify-content:space-between;gap:16px;padding:10px 28px;background:#fff;border-bottom:1px solid #e8eef8}.fp-bar,.fp-bar__left{display:flex;align-items:center}.fp-bar__left{gap:10px;min-width:0}.fp-bar__back{width:36px;height:36px;border-radius:10px;border:1px solid #e5e7eb;background:#fff;color:#334155;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.fp-bar__nav{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.fp-bar__nav a{font-size:13px;font-weight:600;color:#475569;text-decoration:none}.fp-bar__nav a:hover{color:#1d4ed8}.fp-bar__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.fp-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 16px;border-radius:999px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;text-decoration:none;border:1.5px solid transparent;transition:.15s ease;white-space:nowrap}.fp-btn--primary{background:#2d6cdf;color:#fff;border-color:#2d6cdf}.fp-btn--primary:hover{background:#1e54b8}.fp-btn--ghost{background:#fff;color:#1d4ed8;border-color:#bfdbfe}.fp-btn--ghost:hover{background:#eff6ff}.fp-btn--icon{width:40px;height:40px;padding:0;border-radius:12px;background:#fff;border:1px solid #e5e7eb;color:#475569}.fp-btn--block{width:100%}.fp-wrap{max-width:1180px;margin:0 auto;padding:22px 20px 48px}.fp-hero{background:#fff;border:1px solid #e8eef8;border-radius:18px;overflow:hidden;box-shadow:0 1px 3px rgba(11,15,43,.04)}.fp-hero__cover{height:210px;background-size:cover;background-position:50%;background-color:#0b1f4d}.fp-hero__body{position:relative;padding:0 24px 18px}.fp-hero__avatar{width:112px;height:112px;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:0 0 0 1px #e5e7eb,0 8px 20px rgba(11,15,43,.12);margin-top:-56px;background:#0b0f2b}.fp-hero__main{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-top:14px}.fp-hero__identity h1{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:28px;font-weight:800;line-height:1.15;margin:0 0 6px}.fp-hero__verified{flex-shrink:0}.fp-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.2px}.fp-badge--founder{background:#1e3a8a;color:#fff}.fp-badge--team{background:#dbeafe;color:#1d4ed8}.fp-hero__title{font-size:15px;font-weight:700;color:#0b0f2b;margin:0 0 4px}.fp-hero__focus,.fp-hero__skills{font-size:13px;color:#64748b;margin:0 0 3px;font-weight:500}.fp-hero__loc{display:inline-flex;align-items:center;gap:6px;margin:8px 0 0;font-size:13px;font-weight:600;color:#475569}.fp-hero__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.fp-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;padding:14px 18px;background:#f8fafc;border-top:1px solid #eef2f7}.fp-stat{display:flex;align-items:center;gap:10px;color:#64748b;min-width:0}.fp-stat strong{display:block;font-size:15px;font-weight:800;color:#0b0f2b;line-height:1.2}.fp-stat span{display:block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;color:#94a3b8}.fp-tabs{display:flex;gap:4px;overflow-x:auto;margin:16px 0 18px;padding:0 4px 2px;border-bottom:1px solid #e5e7eb;scrollbar-width:none}.fp-tabs::-webkit-scrollbar{display:none}.fp-tabs__item{flex-shrink:0;background:transparent;padding:12px 14px;font-size:13px;font-weight:650;color:#64748b;cursor:pointer;font-family:inherit;border:none;border-bottom:2px solid transparent;margin-bottom:-1px}.fp-tabs__item.is-active{color:#1d4ed8;border-bottom-color:#2d6cdf;font-weight:800}.fp-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.fp-card{background:#fff;border:1px solid #e8eef8;border-radius:16px;padding:20px 22px;margin-bottom:14px;box-shadow:0 1px 2px rgba(11,15,43,.03)}.fp-card h2,.fp-card h3{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:16px;font-weight:800;color:#0b0f2b}.fp-card h3{font-size:14px}.fp-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.fp-card__head h2{margin:0}.fp-bio p{font-size:14px;line-height:1.7;color:#475569;margin:0 0 12px}.fp-linkish,.fp-read{display:inline-flex;align-items:center;gap:5px;border:none;background:none;color:#2d6cdf;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;padding:0}.fp-tags{display:flex;flex-wrap:wrap;gap:8px}.fp-tags span{display:inline-flex;padding:7px 12px;border-radius:999px;background:#eff6ff;color:#1e40af;font-size:12.5px;font-weight:650;border:1px solid #dbeafe}.fp-perspectives{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(180px,200px);gap:12px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.fp-perspectives--grid{grid-auto-flow:unset;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));overflow:visible}.fp-perspective{background:#fafbfd;border:1px solid #eef2f7;border-radius:14px;overflow:hidden}.fp-perspective img{width:100%;height:110px;object-fit:cover}.fp-perspective h3{font-size:12.5px;font-weight:750;line-height:1.35;margin:10px 10px 6px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.fp-perspective p{margin:0 10px 12px;font-size:11px;color:#94a3b8;font-weight:600}.fp-kv{list-style:none;margin:0;padding:0;display:grid;gap:12px}.fp-kv li{display:flex;gap:10px;align-items:flex-start;color:#64748b}.fp-kv em{display:block;font-style:normal;font-size:11px;font-weight:650;color:#94a3b8;margin-bottom:1px}.fp-kv strong{display:block;font-size:13.5px;font-weight:700;color:#0b0f2b}.fp-connect{display:grid;gap:10px}.fp-connect a{display:inline-flex;align-items:center;gap:8px;color:#1d4ed8;font-size:13.5px;font-weight:700;text-decoration:none}.fp-open-badge{display:inline-flex;padding:4px 10px;border-radius:999px;background:#dcfce7;color:#166534;font-size:12px;font-weight:800;margin-bottom:8px}.fp-open-copy{font-size:13px;line-height:1.55;color:#64748b;margin:0 0 12px}.fp-project{display:flex;gap:12px;align-items:flex-start}.fp-projects-intro{font-size:14px;line-height:1.65;color:#64748b;margin:-4px 0 18px}.fp-projects{display:grid;gap:14px}.fp-project-card{display:grid;grid-template-columns:120px minmax(0,1fr) 130px;gap:16px;align-items:stretch;padding:14px;border:1px solid #e8eef8;border-radius:14px;background:#fafbfd}.fp-project-card__media{width:120px;height:120px;border-radius:12px;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center}.fp-project-card__media--navy{background:#0b1f4d}.fp-project-card__media--green{background:#0f3d2e}.fp-project-card__media--photo{background:#e2e8f0}.fp-project-card__media--screenshot{background:#0a0f0c}.fp-project-card__media--dark{background:#0a0a0a}.fp-project-card__media img{width:100%;height:100%;object-fit:cover}.fp-project-card__media--screenshot img{object-position:left center}.fp-project-card__media--dark img,.fp-project-card__media--green img,.fp-project-card__media--navy img{object-fit:contain;padding:14px}.fp-featured__item img{background:#0a0a0a;object-fit:contain;padding:4px}.fp-project-card__body h3{margin:0 0 4px;font-size:17px;font-weight:800;display:block}.fp-project-card__sub{margin:0 0 8px;font-size:13px;font-weight:700;color:#2d6cdf}.fp-project-card__desc{margin:0 0 10px;font-size:13px;line-height:1.55;color:#64748b}.fp-project-card__tags{display:flex;flex-wrap:wrap;gap:6px}.fp-project-card__tags span{display:inline-flex;padding:4px 9px;border-radius:999px;background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;font-size:11.5px;font-weight:650}.fp-project-card__meta{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:8px;text-align:right}.fp-status{display:inline-flex;padding:4px 10px;border-radius:999px;background:#dcfce7;color:#166534;font-size:11.5px;font-weight:800}.fp-role{font-size:12.5px;font-weight:700;color:#0b0f2b}.fp-project-card__link{display:inline-flex;align-items:center;gap:4px;color:#2d6cdf;font-size:12.5px;font-weight:750;text-decoration:none}.fp-cross{margin-top:20px;padding-top:16px;border-top:1px solid #eef2f7}.fp-cross h3{margin:0 0 12px;font-size:14px;font-weight:800}.fp-featured{display:grid;gap:8px}.fp-featured__item{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;padding:8px;border-radius:12px;border:1px solid #eef2f7;background:#fafbfd;text-decoration:none;color:inherit;transition:border-color .15s,background .15s}.fp-featured__item:hover{border-color:#bfdbfe;background:#eff6ff}.fp-featured__item img{width:40px;height:40px;border-radius:10px;object-fit:cover;background:#0b0f2b}.fp-featured__item span{font-size:13.5px;font-weight:750;color:#0b0f2b}.fp-featured__item svg{color:#94a3b8}.fp-project img{width:48px;height:48px;border-radius:12px;object-fit:contain;background:#0b0f2b;padding:6px}.fp-project strong{display:block;font-size:14px;margin-bottom:4px}.fp-project p{font-size:12.5px;color:#64748b;margin:0 0 8px;line-height:1.45}.fp-project a{display:inline-flex;align-items:center;gap:4px;color:#2d6cdf;font-size:12.5px;font-weight:750;text-decoration:none}.fp-empty{color:#94a3b8;font-size:13.5px;margin:0}.fp-pub-list{display:grid;gap:10px}.fp-pub{display:grid;gap:4px;padding:12px 14px;border-radius:12px;background:#f8fafc;border:1px solid #eef2f7}.fp-pub strong{font-size:14px}.fp-pub span{font-size:12px;color:#94a3b8;font-weight:600}.fp-section-intro{margin:-4px 0 18px;font-size:13.5px;line-height:1.55;color:#64748b}.fp-perspective__excerpt{margin:0 0 8px!important;font-size:12.5px!important;line-height:1.5!important;color:#64748b!important;font-weight:500!important}.fp-pub--rich{gap:8px}.fp-pub__meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fp-pub--rich p{margin:0;font-size:13px;line-height:1.5;color:#64748b}.fp-pill{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:11px;font-weight:750}.fp-list{display:grid;gap:12px}.fp-list-item{padding:14px 16px;border-radius:14px;border:1px solid #eef2f7;background:#f8fafc}.fp-list-item__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:6px}.fp-list-item h3{margin:0;font-size:15px;font-weight:800;color:#0f172a}.fp-list-item__sub{margin:0 0 8px;font-size:12.5px;font-weight:650;color:#64748b}.fp-list-item p:last-child{margin:0;font-size:13px;line-height:1.5;color:#475569}.fp-timeline{display:grid;gap:0}.fp-timeline__item{display:grid;grid-template-columns:18px 1fr;gap:12px;padding:0 0 18px;position:relative}.fp-timeline__item:not(:last-child):before{content:"";position:absolute;left:7px;top:14px;bottom:0;width:2px;background:#e2e8f0}.fp-timeline__dot{width:12px;height:12px;margin-top:4px;border-radius:50%;background:#2d6cdf;border:2px solid #dbeafe;z-index:1}.fp-timeline__head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.fp-timeline__head time{font-size:12px;font-weight:700;color:#94a3b8}.fp-timeline__item p{margin:0;font-size:13.5px;line-height:1.5;color:#334155}.fp-achievements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fp-achievement{padding:16px;border-radius:14px;border:1px solid #eef2f7;background:linear-gradient(180deg,#ffffff,#f8fafc)}.fp-achievement__badge{display:inline-flex;margin-bottom:10px;padding:3px 9px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:11px;font-weight:750}.fp-achievement h3{margin:0 0 6px;font-size:15px;font-weight:800;color:#0f172a}.fp-achievement p{margin:0 0 10px;font-size:13px;line-height:1.5;color:#64748b}.fp-achievement__year{font-size:12px;font-weight:750;color:#2d6cdf}@media (max-width:980px){.fp-bar__nav{display:none}.fp-achievements,.fp-grid{grid-template-columns:1fr}.fp-stats{grid-template-columns:repeat(3,1fr)}.fp-hero__main{flex-direction:column}.fp-project-card{grid-template-columns:96px 1fr}.fp-project-card__meta{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:flex-start;text-align:left}}@media (max-width:640px){.fp-bar{padding:10px 14px}.fp-bar__actions .fp-btn--ghost{display:none}.fp-wrap{padding:14px 12px 36px}.fp-hero__cover{height:150px}.fp-hero__avatar{width:88px;height:88px;margin-top:-44px}.fp-hero__identity h1{font-size:22px}.fp-stats{grid-template-columns:repeat(2,1fr)}.fp-project-card{grid-template-columns:1fr}.fp-project-card__media{width:100%;height:140px}}