/* About page — layout only; all colours come from the theme tokens (css/theme.css). */
.ab-hero { padding-bottom: 24px; }
.ab-split { display: grid; grid-template-columns: 1.2fr .8fr; gap: 56px; align-items: start; }
.ab-yk { display: inline-flex; vertical-align: middle; margin: 0 4px; }
.ab-stats { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.ab-stat { background: var(--sd-bg); border: 1px solid var(--sd-border); border-radius: 16px; padding: 22px 20px; }
.ab-stat b { display: block; font-size: 34px; font-weight: 800; color: var(--sd-text); line-height: 1.2; }
.ab-stat b em { font-style: normal; color: var(--sd-green-text); margin-inline-start: 2px; }
.ab-stat small { display: block; margin-top: 6px; font-size: 13px; color: var(--sd-muted); }
.ab-svc { list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 0; padding: 0; }
.ab-svc a { display: flex; align-items: center; gap: 12px; background: var(--sd-bg); border: 1px solid var(--sd-border); border-radius: 14px; padding: 14px 18px; text-decoration: none; color: var(--sd-text); font-weight: 600; transition: border-color .2s ease; }
.ab-svc a:hover { border-color: var(--sd-border-h); }
@media (max-width: 900px) { .ab-split { grid-template-columns: 1fr; gap: 32px; } .ab-svc { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .ab-svc { grid-template-columns: 1fr; } }
