/* ================= ABOUT ================= */
.ab-col{max-width:900px}
.ab-block{margin-top:clamp(46px,5.4vw,84px)}
.ab-block:first-child{margin-top:0}
.ab-lead h2{font-size:clamp(1.5rem,2.3vw,2.1rem);margin-top:16px}
.ab-lead .lead{margin-top:16px;max-width:64ch}
.ab-body{margin-top:22px;display:grid;gap:16px;max-width:64ch;color:var(--muted);font-size:1.02rem}
.ab-body b{color:var(--ink)}
.ab-photo{margin-top:clamp(26px,3vw,40px);border-radius:var(--r-lg);overflow:hidden;
  border:1px solid var(--line);aspect-ratio:16/7;background:var(--mist)}
.ab-photo img{width:100%;height:118%;object-fit:cover;object-position:50% 42%;will-change:transform}
.ab-cap{margin-top:12px;font-size:.83rem;color:var(--muted)}
.why{list-style:none;padding:0;margin:clamp(24px,2.8vw,34px) 0 0;
  display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(20px,3vw,40px)}
.why li{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;
  padding:18px 0;border-top:1px solid var(--line)}
.why li:nth-child(1),.why li:nth-child(2){border-top:0}
.why svg{flex:none;margin-top:3px;color:#076B4E}
.why b{font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:1rem;letter-spacing:-.02em}
.why span{display:block;margin-top:5px;font-size:.9rem;color:var(--muted);line-height:1.5}
.pillars2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,1.8vw,24px);margin-top:clamp(24px,2.8vw,34px)}
.pillar2{background:var(--sand);border-radius:var(--r);padding:clamp(24px,2.6vw,32px)}
.pillar2 .mono{color:var(--gold-deep)}
.pillar2 h3{margin:12px 0 10px}
.pillar2 p{color:var(--muted);font-size:.96rem}
.ab-stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);
  margin-top:clamp(24px,2.8vw,34px)}
.ab-stats div{padding:clamp(22px,2.4vw,30px) clamp(10px,1.6vw,22px);border-left:1px solid var(--line)}
.ab-stats div:first-child{border-left:0;padding-left:0}
.ab-stats b{display:block;font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;letter-spacing:-.045em;
  font-size:clamp(1.9rem,3.4vw,2.9rem);line-height:1;color:var(--navy-deep);white-space:nowrap;
  font-variant-numeric:tabular-nums}
/* scope the label to a direct child: a bare `.ab-stats span` also matches the
   count-up <span> inside <b> and turns it into a block, breaking the number */
.ab-stats div > span{display:block;margin-top:10px;font-size:.75rem;letter-spacing:.14em;
  text-transform:uppercase;font-weight:600;color:var(--muted)}
.ab-stats b .cnt{display:inline;font:inherit;color:inherit;letter-spacing:inherit;margin:0}
.ab-src{margin-top:16px;font-size:.79rem;color:var(--muted)}
.ab-marks{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(22px,3.4vw,46px);
  margin-top:clamp(24px,2.8vw,34px)}
.ab-marks img{width:auto;max-height:42px;opacity:.6;filter:grayscale(1)}
.ab-marks img.word{max-height:26px}
.ab-note{margin-top:20px;font-size:.79rem;line-height:1.55;color:var(--muted);max-width:64ch}
.ab-people{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(10px,1.4vw,16px);
  margin-top:clamp(24px,2.8vw,34px)}
.ab-people figure{margin:0}
.ab-people .ph{border-radius:12px;overflow:hidden;aspect-ratio:4/5;background:var(--mist)}
.ab-people img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.04);
  transition:filter .45s var(--ease)}
.ab-people figure:hover img{filter:none}
.ab-people b{display:block;margin-top:10px;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;
  font-size:.88rem;letter-spacing:-.02em}
.ab-people span{display:block;font-size:.78rem;color:var(--muted);margin-top:1px}
.ab-more{display:inline-flex;align-items:center;gap:8px;margin-top:22px;font-weight:700;font-size:.94rem;
  color:var(--navy);text-decoration:underline;text-underline-offset:4px}
.ab-faq{border-top:1px solid var(--line);margin-top:clamp(24px,2.8vw,34px)}
.ab-faq details{border-bottom:1px solid var(--line)}
.ab-faq summary{list-style:none;cursor:pointer;display:flex;gap:20px;align-items:flex-start;padding:22px 0;
  font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:clamp(1rem,1.3vw,1.15rem);
  letter-spacing:-.022em}
.ab-faq summary::-webkit-details-marker{display:none}
.ab-faq summary:hover{color:var(--navy)}
.ab-faq summary .pm{flex:none;margin-left:auto;width:28px;height:28px;border-radius:50%;
  border:1.5px solid var(--line);display:grid;place-items:center;color:var(--navy);
  transition:all .32s var(--ease)}
.ab-faq details[open] summary .pm{background:var(--navy);border-color:var(--navy);color:#fff;transform:rotate(45deg)}
.ab-faq .ans{padding:0 46px 24px 0;color:var(--muted);max-width:74ch}
.ab-cta{background:var(--navy-deep);color:#DCE7F4;border-radius:var(--r-lg);
  padding:clamp(28px,3.2vw,44px);display:grid;grid-template-columns:1fr auto;gap:clamp(20px,3vw,40px);
  align-items:center;margin-top:clamp(46px,5.4vw,84px)}
.ab-cta h2{color:#fff;font-size:clamp(1.35rem,2vw,1.8rem)}
.ab-cta p{margin-top:12px;font-size:.95rem;color:#B7CEE8;max-width:56ch}
.ab-cta .btn{white-space:nowrap}
@media(max-width:820px){
  .why{grid-template-columns:1fr}
  .why li:nth-child(2){border-top:1px solid var(--line)}
  .pillars2{grid-template-columns:1fr}
  .ab-stats{grid-template-columns:1fr 1fr}
  .ab-stats div:nth-child(3){border-left:0;padding-left:0}
  .ab-people{grid-template-columns:repeat(3,1fr)}
  .ab-cta{grid-template-columns:1fr}
}
@media(max-width:520px){.ab-people{grid-template-columns:repeat(2,1fr)}}
