/* The About page. Built by tools/site/build.js; site.css carries the bar and the footer. */
.ab-wide{max-width:880px;margin:0 auto;padding:3.6rem 1.5rem 0}
.ab-hero{padding:1.5rem 0 2.6rem;border-bottom:1px solid var(--line);margin-bottom:3.2rem}
.ab-eyebrow{font-size:.68rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--blue);margin-bottom:1.1rem}
.ab-h1{font-family:'Sora',sans-serif;font-size:clamp(1.9rem,4.4vw,2.9rem);font-weight:600;letter-spacing:-1.2px;line-height:1.14;color:var(--text);margin-bottom:1.1rem}
.ab-h1 em{font-style:italic;color:var(--red)}
.ab-lede{font-size:1.06rem;line-height:1.72;color:var(--text2);max-width:36em}
.ab-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;margin-top:2.4rem}
.ab-fact{border-top:2px solid var(--line);padding-top:.95rem}
.ab-fact-n{display:block;font-family:'Sora',sans-serif;font-size:1.55rem;font-weight:600;letter-spacing:-.8px;color:var(--text);line-height:1.1;font-variant-numeric:tabular-nums}
.ab-fact-l{display:block;font-size:.8rem;color:var(--text3);margin-top:.45rem;line-height:1.5}
@media(max-width:620px){.ab-facts{grid-template-columns:1fr;gap:1.1rem}}

.ab-sec{margin-bottom:3.4rem}
.ab-sec-head{margin-bottom:1.3rem}
.ab-kicker{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--blue)}
.ab-sec-sub{font-size:.95rem;color:var(--text2);line-height:1.7;margin-top:.7rem;max-width:34em}
.ab-body{font-size:1rem;line-height:1.8;color:var(--text2);margin-bottom:1.1rem;max-width:36em}
.ab-body em{font-style:italic;color:var(--text)}
.ab-note{font-size:.92rem;color:var(--text3);border-left:2px solid var(--line);padding-left:1.1rem;margin-top:1.6rem}

/* founders — presented as record, not as a team-page flourish */
.ab-founders{display:flex;flex-direction:column;gap:2.4rem}
.ab-person{display:grid;grid-template-columns:132px 1fr;gap:1.8rem;align-items:start;padding-top:1.8rem;border-top:1px solid var(--line)}
.ab-portrait{width:132px;height:132px;border-radius:14px;overflow:hidden;background:var(--bg2);border:1px solid var(--line)}
.ab-portrait img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.96)}
.ab-name{font-family:'Sora',sans-serif;font-size:1.18rem;font-weight:600;letter-spacing:-.4px;color:var(--text);margin-bottom:.3rem}
.ab-role{font-size:.78rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--blue);margin-bottom:.9rem}
.ab-bio{font-size:.95rem;line-height:1.78;color:var(--text2);margin-bottom:1rem}
.ab-link{display:inline-flex;align-items:center;gap:7px;font-size:.83rem;font-weight:600;color:var(--text2);text-decoration:none;border:1px solid var(--line);padding:7px 14px;border-radius:20px;transition:color .18s,border-color .18s,background .18s}
.ab-link:hover{color:#0a66c2;border-color:#0a66c2;background:var(--blue-light)}
@media(max-width:620px){.ab-person{grid-template-columns:1fr;gap:1.1rem}.ab-portrait{width:104px;height:104px}}

.ab-steps{display:flex;flex-direction:column;gap:0}
.ab-step{display:grid;grid-template-columns:56px 1fr;gap:.25rem 1.2rem;padding:1.3rem 0;border-top:1px solid var(--line)}
/* heading and body both belong in the second column — without this the
   paragraph wraps into the 56px number column */
.ab-step h4,.ab-step p{grid-column:2}
.ab-step-n{grid-row:1 / span 2;font-family:'Sora',sans-serif;font-size:.9rem;font-weight:600;color:var(--text3);font-variant-numeric:tabular-nums;padding-top:.15rem}
.ab-step h4{font-family:'Sora',sans-serif;font-size:1rem;font-weight:600;color:var(--text);margin-bottom:.35rem;letter-spacing:-.2px}
.ab-step p{font-size:.93rem;line-height:1.7;color:var(--text2);margin:0}

.ab-commit{list-style:none;padding:0;margin:0}
.ab-commit li{font-size:.96rem;line-height:1.75;color:var(--text2);padding:1.05rem 0 1.05rem 1.6rem;border-top:1px solid var(--line);position:relative}
.ab-commit li::before{content:'';position:absolute;left:0;top:1.55rem;width:7px;height:7px;border-radius:2px;background:var(--blue)}
.ab-commit strong{color:var(--text);font-weight:600}

.ab-cta{text-align:center;padding:2.8rem 1.5rem;border:1px solid var(--line);border-radius:16px;background:var(--bg2)}
.ab-cta h3{font-family:'Sora',sans-serif;font-size:1.3rem;font-weight:600;letter-spacing:-.5px;color:var(--text);margin-bottom:.5rem}
.ab-cta p{font-size:.93rem;color:var(--text2);margin-bottom:1.4rem}
.ab-btn{background:var(--blue);color:#fff;border:none;padding:13px 26px;border-radius:24px;font-size:.92rem;font-weight:700;font-family:'Sora',sans-serif;cursor:pointer;transition:background .2s,transform .12s}
.ab-btn:hover{background:var(--blue-dark)}
.ab-btn{display:inline-block;text-decoration:none}
.ab-cta-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.ab-btn-ghost{background:transparent;color:var(--blue);box-shadow:inset 0 0 0 1.5px var(--blue)}
.ab-btn-ghost:hover{background:var(--blue);color:#fff}
.ab-btn:active{transform:scale(.97)}

#ab-founders{scroll-margin-top:84px}
