/* Company page: About us (/company/about/). Tokens from base.css. */

/* ---------- About: hero (real data frame + team photo inset) ---------- */
.v2 .ab-hero-grid,.v2 .pi-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.v2 .ab-hero h1,.v2 .pi-hero h1{font-size:clamp(38px,4.3vw,62px);max-width:18ch}
@media (max-width:900px){.v2 .ab-hero-grid,.v2 .pi-hero-grid{grid-template-columns:1fr}}

/* ---------- About: why we started (editorial) ---------- */
.v2 .ab-origin{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,80px);align-items:start}
.v2 .ab-origin>.prose:only-child{grid-column:2}
.v2 .ab-year{border-top:2px solid var(--graphite);padding-top:18px}
.v2 .ab-year b{display:block;font-family:var(--display);font-weight:800;font-size:clamp(88px,13vw,200px);letter-spacing:-.06em;line-height:.85;color:var(--graphite)}
.v2 .ab-year span{display:block;margin-top:18px;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);max-width:28ch}
.v2 .ab-founder{margin-top:28px!important;padding-top:18px;border-top:1px solid var(--rule);font-size:15px!important;color:var(--muted)}
@media (min-width:901px){.v2 .ab-year{position:sticky;top:110px}}
@media (max-width:900px){.v2 .ab-origin{grid-template-columns:1fr}.v2 .ab-origin>.prose:only-child{grid-column:1}}


/* ---------- About: facts, principles, growth path ---------- */
.v2 .pi-facts{border-top:2px solid var(--mint)}
.v2 .pi-facts>div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line-dark)}
.v2 .pi-facts dt{font-family:var(--display);font-weight:800;font-size:clamp(24px,2.6vw,36px);letter-spacing:-.04em;line-height:1.05;color:#fff}
.v2 .pi-facts dd{font-size:15px;color:var(--on-dark)}
.v2 .pi-principles{margin-top:clamp(40px,5vw,64px)}
.v2 .pi-path{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;counter-reset:p}
.v2 .pi-path li{position:relative;padding:22px 20px 22px 0;border-top:2px solid var(--graphite)}
.v2 .pi-path li+li{padding-left:20px;border-left:1px solid var(--rule)}
.v2 .pi-path li::after{content:"";position:absolute;top:-7px;right:-1px;width:12px;height:12px;border-top:2px solid var(--graphite);border-right:2px solid var(--graphite);transform:rotate(45deg)}
.v2 .pi-path li:last-child::after{display:none}
.v2 .pi-path .n{font-family:var(--mono);font-size:12px;color:var(--ink-em)}
.v2 .pi-path h3{font-size:18px;margin:10px 0 6px}
.v2 .pi-path p{font-size:14.5px;color:var(--muted)}
.v2 .pi-work{margin-top:clamp(36px,4vw,56px);background:#fff;border:1px solid var(--rule);padding:24px}
.v2 .pi-work .tag{display:block;margin-bottom:12px}
.v2 .pi-work .chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.v2 .pi-work .chips li{font-size:14.5px;background:var(--paper);border:1px solid var(--rule);padding:5px 12px}
.v2 .pi-work p{margin-top:16px;font-size:15.5px}
@media (max-width:980px){.v2 .pi-path{grid-template-columns:1fr}.v2 .pi-path li,.v2 .pi-path li+li{padding:18px 0 18px 0;border-left:0;border-top:1px solid var(--rule)}.v2 .pi-path li:first-child{border-top:2px solid var(--graphite)}.v2 .pi-path li::after{display:none}}
.v2 .pi-env{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(28px,5vw,80px);align-items:start}
.v2 .pi-env h2{font-size:clamp(30px,3.8vw,52px);font-weight:800;letter-spacing:-.04em;margin-bottom:16px}
.v2 .pi-env>div>p{font-size:17px}
.v2 .pi-list{border-top:2px solid var(--graphite)}
.v2 .pi-list>div{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:20px;padding:18px 0;border-bottom:1px solid var(--rule)}
.v2 .pi-list dt{font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.02em;color:var(--graphite)}
.v2 .pi-list dd{font-size:15.5px}
@media (min-width:901px){.v2 .pi-env>div:first-child{position:sticky;top:110px}}
@media (max-width:900px){.v2 .pi-env{grid-template-columns:1fr}}
@media (max-width:520px){.v2 .pi-list>div{grid-template-columns:1fr;gap:4px}}
.v2 #impact .stats b .tbc{font-size:14px;vertical-align:middle}
.v2 .pi-pull{font-family:var(--display);font-weight:800;font-size:clamp(26px,2.8vw,38px);letter-spacing:-.035em;line-height:1.15;color:var(--graphite);border-top:2px solid var(--graphite);padding-top:18px}
.v2 .ab-stats b{font-size:clamp(28px,2.8vw,40px)}

/* ---------- About v3 (pasted copy, 25 Oct) ---------- */
.v2 .ab-lede{font-family:var(--display);font-weight:700;font-size:clamp(19px,1.7vw,23px)!important;letter-spacing:-.02em;line-height:1.3;color:#fff}
.v2 .ab-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(28px,5vw,80px);align-items:start;margin-bottom:clamp(36px,4vw,56px)}
.v2 .ab-split .tag{display:block;margin-bottom:12px}
.v2 .ab-split h2{font-size:clamp(30px,3.8vw,52px);font-weight:800;letter-spacing:-.04em;max-width:15ch}
.v2 .dark .ab-split h2{color:#fff}
.v2 .ab-copy p{font-size:17.5px;line-height:1.68}
.v2 .ab-copy p+p{margin-top:14px}
.v2 .dark .ab-copy p{color:var(--on-dark)}
.v2 .dark .ab-copy .ab-mission-text{color:#fff}
.v2 .ab-strong{font-family:var(--display);font-weight:700;font-size:clamp(19px,1.8vw,23px)!important;letter-spacing:-.02em;line-height:1.35!important;color:var(--graphite);border-left:3px solid var(--emerald);padding-left:18px}
.v2 .ab-mission-text{font-family:var(--display);font-weight:800;font-size:clamp(24px,2.6vw,36px)!important;letter-spacing:-.03em;line-height:1.18!important;color:var(--graphite)}
.v2 .ab-more{margin-top:22px;font-size:15.5px;color:var(--muted)}
.v2 .ab-stats{margin-top:0}
.v2 .ab-forward .wrap>.tag{display:block;margin-bottom:12px}
.v2 .ab-forward h2{color:#fff;font-size:clamp(32px,4.2vw,58px);font-weight:800;letter-spacing:-.04em;max-width:18ch}
.v2 .ab-forward .wrap>p{margin-top:18px;max-width:64ch;font-size:17.5px;color:var(--on-dark)}
.v2 .ab-forward .ab-sign{font-family:var(--display);font-weight:700;font-size:clamp(20px,2vw,26px)!important;letter-spacing:-.02em;color:var(--mint)!important;margin-top:28px!important}
@media (max-width:900px){.v2 .ab-split{grid-template-columns:1fr}}
.v2 .ab-hero-text{max-width:820px}
