.ab-wrap{max-width:var(--measure-list);margin:0 auto;padding:var(--s-7) var(--s-4) var(--s-8)}.ab-hero{margin-bottom:var(--s-6)}.ab-h1{font-family:var(--serif);font-size:56px;font-weight:700;line-height:1.15;color:var(--ink);margin:0 0 var(--s-2)}.ab-lede{font-family:var(--sans);font-size:20px;line-height:1.6;color:var(--ink-mute);margin:0}.ab-grid{display:grid;grid-template-columns:60% 1fr;gap:var(--s-7);align-items:start}.ab-main p{font-family:var(--sans);font-size:17px;line-height:1.85;color:var(--ink-soft);margin:0 0 var(--s-3)}.ab-sep{font-family:var(--mono);font-size:18px;color:var(--gold);text-align:center;margin:var(--s-5) 0;letter-spacing:.3em}.ab-portrait{margin:0}.ab-portrait img{width:100%;max-width:480px;border-radius:2px;display:block}.ab-career{margin-top:var(--s-2)}.ab-career-h{font-family:var(--serif);font-size:28px;font-weight:700;color:var(--ink);margin:0 0 var(--s-4)}.ab-career-row{display:grid;grid-template-columns:130px 1fr;gap:var(--s-3);padding:14px 0;border-bottom:1px solid var(--hairline-soft)}.ab-career-date{font-family:var(--mono);font-size:12px;text-transform:uppercase;color:var(--ink-mute);padding-top:3px;letter-spacing:.02em}.ab-career-name{font-family:var(--serif);font-size:18px;font-weight:600;color:var(--ink);line-height:1.4}.ab-career-role{font-family:var(--sans);font-size:14px;color:var(--ink-mute);margin-top:2px}.ab-career-outcome{font-family:var(--sans);font-size:14px;color:var(--ink-soft);margin-top:4px;line-height:1.6}.ab-pillars{margin-top:var(--s-4)}.ab-pillars-h{font-family:var(--serif);font-size:22px;font-weight:700;color:var(--ink);margin:0 0 var(--s-3)}.ab-pillar-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--hairline-soft);text-decoration:none;color:inherit;transition:background .12s}.ab-pillar-row:hover{background:var(--paper-warm);margin:0 -8px;padding:10px 8px}.ab-pillar-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.ab-pillar-label{font-family:var(--serif);font-size:16px;font-weight:600;color:var(--ink)}.ab-pillar-en{font-family:var(--serif-en);font-size:14px;font-style:italic;color:var(--mist)}.ab-side{position:sticky;top:100px}.ab-side-group{margin-bottom:var(--s-5)}.ab-side-label{font-family:var(--mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--mist);margin:0 0 var(--s-2);padding-bottom:8px;border-bottom:1px solid var(--hairline)}.ab-side-list{list-style:none;padding:0;margin:0}.ab-side-list li{font-family:var(--sans);font-size:14px;line-height:1.7;color:var(--ink-mute);padding:4px 0}.ab-side-list a{color:var(--ink-mute);text-decoration:none;border-bottom:1px solid var(--hairline-soft);transition:color .12s,border-color .12s}.ab-side-list a:hover{color:var(--ink);border-color:var(--ink)}.ab-ai-card{display:flex;align-items:center;gap:var(--s-4);padding:var(--s-4);border:1px solid var(--hairline);border-radius:4px;text-decoration:none;color:inherit;background:var(--paper-warm);transition:border-color .15s,transform .15s}.ab-ai-card:hover{border-color:var(--ink);transform:translateY(-2px)}.ab-ai-streak{display:flex;align-items:baseline;gap:2px;flex-shrink:0}.ab-ai-num{font-family:var(--serif);font-size:64px;font-weight:700;line-height:1;color:var(--gold);letter-spacing:-.02em}.ab-ai-unit{font-family:var(--sans);font-size:18px;color:var(--ink-mute)}.ab-ai-h{font-family:var(--serif);font-size:20px;font-weight:700;color:var(--ink);margin:0 0 6px}.ab-ai-desc{font-family:var(--sans);font-size:14px;line-height:1.65;color:var(--ink-soft);margin:0 0 8px}.ab-ai-link{font-family:var(--mono);font-size:12px;letter-spacing:.02em;color:var(--ink-mute)}.ab-ai-card:hover .ab-ai-link{color:var(--ink)}@media(max-width:900px){.ab-ai-card{flex-direction:column;text-align:center;align-items:center}.ab-ai-num{font-size:52px}.ab-wrap{padding:var(--s-5) var(--s-2) var(--s-6)}.ab-h1{font-size:40px}.ab-lede{font-size:17px}.ab-grid{grid-template-columns:1fr;gap:var(--s-5)}.ab-career-h{font-size:24px}.ab-career-row{grid-template-columns:1fr;gap:4px}.ab-side{position:static;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-3);padding-top:var(--s-4);border-top:1px solid var(--hairline)}.ab-side-group{margin-bottom:var(--s-3)}}@media(max-width:600px){.ab-side{grid-template-columns:1fr}}
