:root{
  --bg:#fbfbfd;
  --ink:#0f1720;
  --muted:#495568;
  --line:#e7ebf2;
  --chip:#0f1720;
}

*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;line-height:1.7}

.wrap{max-width:1100px;margin:0 auto;padding:18px}
.bar{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--line);line-height:1}
.bar .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:72px}
.id{display:flex;gap:12px;align-items:center;flex-wrap:nowrap}
.mark{display:grid;place-items:center;width:50px;height:50px;border-radius:10px;border:1px solid var(--line);font-weight:800;font-family:"Space Grotesk", system-ui, sans-serif}
.id .mark{color:inherit;text-decoration:none}
.name{font-family:"Space Grotesk", system-ui, sans-serif;font-weight:700;color:inherit}
.role{color:#6b7280;font-size:.95rem}
.nav{display:flex;gap:12px}
.nav a{text-decoration:none;color:#384251;padding:8px 10px;border-radius:8px}
.nav a:hover{background:#eef2f7;color:#0f1720}

.grid{display:grid;grid-template-columns:300px 1fr;gap:18px}
.side{position:sticky;top:72px;align-self:start;display:grid;gap:12px;height:calc(100vh - 96px)}
.card{border:1px solid var(--line);border-radius:14px;padding:14px;background:#fff}
.list{list-style:disc;margin:0;padding-left:18px;color:#364250}

.main{border:1px solid var(--line);border-radius:14px;padding:18px;background:#fff}
.section{margin-bottom:16px}
.lead h1{font-family:"Space Grotesk", system-ui, sans-serif;font-weight:700;line-height:1.1;margin:.3rem 0;font-size:clamp(2rem,4.2vw,3rem)}
.lead p{color:#3f4958;margin:.25rem 0 0}

.strengths .cards3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}
.strengths article{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fafafa}
.strengths h3{margin:.25rem 0}
.strengths p{margin:.25rem 0;color:#3f4958}

.timeline .tl{list-style:none;padding:0;margin:8px 0 0;border-left:2px solid var(--line)}
.timeline li{position:relative;padding:0 0 16px 16px}
.timeline .dot{position:absolute;left:-7px;top:.5rem;width:10px;height:10px;border-radius:50%;background:#2f6fed}
.timeline .entry header{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.timeline .when{background:#eef2f7;border:1px solid var(--line);border-radius:6px;padding:.1rem .45rem;color:#475569;font-size:.9rem}
.timeline h3{margin:.25rem 0}
.timeline p{margin:.25rem 0;color:#3f4958}
.tags{display:flex;gap:6px;flex-wrap:wrap;padding:0;margin:.4rem 0 0;list-style:none}
.tags li{border:1px solid var(--line);border-radius:999px;padding:.2rem .6rem;background:#fff;color:#111827;font-size:.9rem}

.creds .cards2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}
.creds article{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fafafa}
.creds h3{margin:.25rem 0}
.creds p{margin:.25rem 0;color:#3f4958}

.cta .row{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.btn{appearance:none;border:1px solid var(--line);background:var(--chip);color:#fff;text-decoration:none;border-radius:999px;padding:.55rem 1rem;font-weight:700}
.btn.ghost{background:#fff;color:#111827}
.fine{color:#6b7280;margin-top:8px}

@media (max-width: 960px){
  .grid{grid-template-columns:1fr}
  .side{position:static;height:auto}
}
