.ab-hero h1 .hl { color:var(--color-primary); }

/* ---- Hero (light) ---- */
.ab-hero { position:relative; overflow:hidden; padding:150px 0 var(--space-3xl);
  background:linear-gradient(180deg, var(--brand-50) 0%, #fff 72%); }
.ab-hero h1 { letter-spacing:-.02em; color:var(--color-secondary); max-width:14em; }
.ab-sprinkle { font-weight:var(--weight-bold); color:var(--color-primary); letter-spacing:.01em; }

/* ---- The problem ---- */
.ab-prob { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-m); max-width:920px; margin:0 auto; }
.ab-prob-stat { background:var(--brand-25); border:none; border-radius:var(--radius-lg); padding:var(--space-l) var(--space-l); box-shadow:var(--shadow-xs); }
.ab-prob-stat .num { font-size:3.4rem; font-weight:var(--weight-extrabold); color:var(--color-secondary); line-height:var(--line-none); letter-spacing:-.02em; }
.ab-prob-stat .num .in { font-size:.5em; font-weight:var(--weight-semibold); color:var(--color-ink-soft); vertical-align:middle; margin:0 .14em; letter-spacing:0; }
.ab-prob-stat p { margin:var(--space-xs) 0 0; font-size:var(--text-md); color:var(--color-ink-soft); line-height:var(--line-normal); }
.ab-prob-stat p strong { color:var(--color-ink); }
.ab-prob-note { text-align:center; max-width:760px; margin:var(--space-l) auto 0; color:var(--color-ink-soft); font-size:var(--text-md); line-height:var(--line-relaxed); }

/* ---- Stat row (dark band) ---- */
.ab-stats { background:var(--grad-deep); color:#fff; position:relative; overflow:hidden; }
.ab-stat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:var(--space-m); position:relative; z-index:1; }
.ab-stat { text-align:center; }
.ab-stat .v { font-size:var(--step-4); font-weight:var(--weight-extrabold); color:#fff; line-height:var(--line-none); letter-spacing:-.01em; }
.ab-stat .k { margin-top:var(--space-2xs); font-size:var(--text-sm); color:rgba(255,255,255,.82); }

/* ---- Our story ---- */
.ab-story { display:grid; grid-template-columns:1.35fr 1fr; gap:var(--space-xl); align-items:start; }
.ab-story-copy h2 { color:var(--color-secondary); }
.ab-story-copy > p { font-size:var(--text-md); line-height:var(--line-relaxed); color:var(--color-ink-soft); margin:var(--space-s) 0 0; }
.ab-quote { margin:var(--space-m) 0 0; padding:var(--space-3xs) 0 var(--space-3xs) var(--space-m); border-left:4px solid var(--color-accent);
  font-size:var(--text-xl); line-height:var(--line-normal); font-weight:var(--weight-bold); color:var(--color-secondary); letter-spacing:-.01em; }
.ab-founders { display:flex; gap:var(--space-l); flex-wrap:wrap; margin-top:var(--space-l); }
.ab-founder { display:flex; align-items:center; gap:var(--space-xs); margin:0; }
.ab-founder img { width:64px; height:64px; border-radius:var(--radius-full); object-fit:cover; box-shadow:var(--shadow-xs); }
.ab-founder .name { display:block; font-weight:var(--weight-extrabold); color:var(--color-secondary); font-size:var(--text-md); }
.ab-founder .role { display:block; font-size:var(--text-sm); color:var(--color-ink-soft); }
.ab-mission-card { background:var(--brand-50); border:none; border-radius:var(--radius-lg); padding:var(--space-l) var(--space-l); }
.ab-mission-card .chip-ic { margin-bottom:var(--space-s); }
.ab-mission-card h3 { color:var(--color-secondary); margin:0 0 var(--space-2xs); }
.ab-mission-card h3 + p { margin:0 0 var(--space-m); }
.ab-mission-card p { font-size:var(--text-md); line-height:var(--line-relaxed); color:var(--color-ink-soft); margin:0; }

/* ---- Leadership ---- */
.ab-team { gap:var(--space-m); }
.ab-person { background:var(--brand-25); border:none; border-radius:var(--radius-lg); padding:var(--space-l) var(--space-m); text-align:center; box-shadow:var(--shadow-xs); transition:transform .18s var(--ease), box-shadow .18s var(--ease); }
.ab-person:hover { transform:translateY(-4px); box-shadow:var(--shadow-md); }
.ab-person .avatar { width:84px; height:84px; border-radius:var(--radius-full); margin:0 auto var(--space-s); background:var(--grad-chip); color:#fff; font-weight:var(--weight-extrabold); font-size:var(--text-xl); display:flex; align-items:center; justify-content:center; letter-spacing:.02em; overflow:hidden; }
.ab-person .avatar img { width:100%; height:100%; object-fit:cover; display:block; }
.ab-person h3 { color:var(--color-secondary); margin:0 0 var(--space-3xs); }
.ab-person .role { font-size:var(--text-sm); color:var(--color-ink-soft); }

/* ---- Research ---- */
.ab-research { gap:var(--space-m); }
.ab-study { background:var(--brand-25); border:none; border-radius:var(--radius-lg); padding:var(--space-m) var(--space-l); box-shadow:var(--shadow-xs);
  display:flex; gap:var(--space-s); align-items:flex-start; }
.ab-study-tag { flex:none; font-size:var(--text-xs); font-weight:var(--weight-extrabold); letter-spacing:.06em; text-transform:uppercase; color:#fff;
  background:var(--grad-chip); border-radius:var(--radius-full); padding:var(--space-2xs) var(--space-xs); }
.ab-study p { margin:0; font-size:var(--text-md); line-height:var(--line-normal); color:var(--color-ink); }

/* ---- Bridging gaps ---- */
.ab-bridge { gap:var(--space-m); }
.ab-bridge-card { background:var(--brand-25); border:none; border-radius:var(--radius-lg); padding:var(--space-l) var(--space-l); box-shadow:var(--shadow-xs); }
.ab-bridge-card h3 { color:var(--color-secondary); margin:0 0 var(--space-2xs); }
.ab-bridge-card p { font-size:var(--text-md); line-height:var(--line-relaxed); color:var(--color-ink-soft); margin:0; }
.ab-active { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:var(--space-xs); margin-top:var(--space-xl); }
.ab-active-lead { font-weight:var(--weight-bold); color:var(--color-ink-soft); font-size:var(--text-sm); }
.ab-state { display:inline-flex; align-items:center; background:var(--brand-25); border:none; border-radius:var(--radius-full);
  padding:var(--space-2xs) var(--space-s); font-weight:var(--weight-bold); color:var(--color-secondary); font-size:var(--text-sm); box-shadow:var(--shadow-xs); }

/* ---- Responsive ---- */
@media (max-width:920px) {
  .ab-story { grid-template-columns:1fr; gap:var(--space-l); }
  .ab-stat-grid { grid-template-columns:repeat(2,1fr); gap:var(--space-l) var(--space-s); }
}
@media (max-width:680px) {
  .ab-hero { padding-top:122px; }
  .ab-prob, .ab-research { grid-template-columns:1fr; }
  .ab-prob { max-width:460px; }
}
