/* FIN people pages v2: ink-and-signal ledger styling. Uses styles.css tokens only. */
.fp2-head{display:grid;grid-template-columns:200px 1fr;gap:28px;align-items:end;padding:26px 0 22px;border-bottom:1px solid var(--rule)}
.fp2-head.no-photo{grid-template-columns:1fr}
.fp2-head .portrait{width:200px;margin:0;aspect-ratio:3/4;object-fit:cover}
.fp2-head h1{margin:.35em 0 .15em}
.fp2-head .lede{margin:0;font-size:1.15rem;color:var(--ink-2)}
.fp2-top{display:grid;align-items:start;grid-template-columns:minmax(0,1fr) 340px;gap:28px;margin:26px 0 8px}
.fp2-why{background:var(--navy);color:var(--on-navy);border-radius:var(--radius);padding:22px 24px;border-left:6px solid var(--signal)}
.fp2-why .fp2-k{color:var(--signal)}
.fp2-why p{margin:.5em 0 0;font-size:1.22rem;line-height:1.45}
.fp2-why a{color:var(--on-navy-muted);font:500 .75rem/1 var(--font); font-variant-numeric: tabular-nums; }
.fp2-k{font:600 .75rem/1 var(--font);letter-spacing: .02em;text-transform: none;color:var(--muted); font-variant-numeric: tabular-nums; }
.fp2-ledger{background:var(--panel);border:1px solid var(--rule-strong);border-radius:var(--radius);padding:16px 18px;margin:0}
.fp2-ledger dl{margin:.7em 0 0}
.fp2-ledger div{display:grid;grid-template-columns:96px 1fr;gap:10px;padding:8px 0;border-top:1px dashed var(--rule)}
.fp2-ledger dt{font:600 .75rem/1.5 var(--font);text-transform: none;letter-spacing: .02em;color:var(--muted); font-variant-numeric: tabular-nums; }
.fp2-ledger dd{margin:0;font-size:.95rem;line-height:1.4}
.fp2-ledger dd a.src,.fp2-track a.src{font:500 .75rem/1 var(--font);color:var(--accent);text-decoration:none;margin-left:4px;white-space:nowrap; font-variant-numeric: tabular-nums; }
.fp2-track{margin:22px 0 28px;padding:16px 0 4px;border-top:1px solid var(--rule)}
.fp2-track ol{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:14px;position:relative}
.fp2-track ol::before{content:"";position:absolute;left:0;right:0;top:6px;height:2px;background:var(--rule-strong)}
.fp2-track li{position:relative;padding-top:22px;font-size:.92rem;line-height:1.35}
.fp2-track li::before{content:"";position:absolute;top:0;left:0;width:10px;height:10px;background:var(--signal);outline:2px solid var(--navy)}
.fp2-track .yr{display:block;font:700 .8rem/1.4 var(--font);color:var(--ink); font-variant-numeric: tabular-nums; }
.fp2-bio h2{margin-top:1.5em}
.fp2-links ul{padding-left:1.1em}
.fp2-rel{margin:40px 0 10px;padding-top:18px;border-top:2px solid var(--ink)}
.fp2-rel-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:14px}
.fp2-rel a{display:grid;grid-template-columns:56px 1fr;gap:10px;align-items:center;text-decoration:none;color:var(--ink);background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);padding:10px}
.fp2-rel a:hover{border-color:var(--accent)}
.fp2-rel img{width:56px;height:56px;object-fit:cover;border-radius:4px}
.fp2-rel b{display:block;font-size:.95rem}
.fp2-rel span{font-size:.8rem;color:var(--muted)}
@media (max-width:860px){.fp2-top{grid-template-columns:1fr}.fp2-rel-grid{grid-template-columns:1fr 1fr}.fp2-track ol{grid-auto-flow:row}.fp2-track ol::before{display:none}}
@media (max-width:560px){.fp2-head{grid-template-columns:1fr}.fp2-rel-grid{grid-template-columns:1fr}}
