/* ==========================================================================
   About (/about.php) — на общей основе сайта (08.10.2026).
   Цвета — --site-* (css/site-tokens.css), тема Light/Dark; приёмы главной: один синий акцент, кромка 3px,
   серые карточки без теней. Прежний css/about.css (терминальное оформление) удалён 08.10.2026.
   ========================================================================== */
.ab-page{ background:var(--site-bg,#fff); color:var(--site-text,#3a4366); }
.ab-page main{ font-family:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif; }
.ab-page h1, .ab-page h2, .ab-page h3{ background:none; -webkit-text-fill-color:currentColor; }
.ab-page p{ line-height:1.65; }

/* ---------- Первый экран ---------- */
.ab-hero{ padding:56px 0 24px; }
.ab-h1{ max-width:900px; margin:0 0 1.25rem; font-size:clamp(34px,5vw,56px); font-weight:700; line-height:1.1; letter-spacing:-.03em; color:var(--site-ink,#0b1020); }
.ab-hl{ color:var(--site-link,#2d4bdb); }
.ab-lede{ max-width:760px; margin:0; font-size:1.15rem; color:var(--site-text,#3a4366); }

/* ---------- Разделы ---------- */
.ab-block{ padding:32px 0; }
.ab-block-last{ padding-bottom:80px; }
.ab-tag{ margin-bottom:.4rem; font-size:.85rem; font-weight:600; color:var(--site-link,#2d4bdb); }
.ab-h2{ margin:0 0 1.25rem; font-size:clamp(24px,2.6vw,32px); font-weight:700; letter-spacing:-.02em; line-height:1.2; color:var(--site-ink,#0b1020); }
.ab-sub{ margin:-.5rem 0 1.25rem; color:var(--site-muted,#5c6690); }
.ab-h3{ margin:0 0 .5rem; font-size:1.1rem; font-weight:700; line-height:1.3; color:var(--site-ink,#0b1020); }
.ab-kicker{ margin-bottom:.4rem; font-size:.8rem; font-weight:600; color:var(--site-muted,#5c6690); }

.ab-card{ height:100%; padding:22px; background:var(--site-bg-soft,#f6f8fc); border-top:3px solid var(--site-accent,#2d4bdb); border-radius:0 0 12px 12px; }
.ab-card p{ margin:0 0 .75rem; color:var(--site-text,#3a4366); }
.ab-card p:last-child{ margin-bottom:0; }
.ab-ico{ display:block; margin-bottom:.6rem; font-size:1.4rem; color:var(--site-link,#2d4bdb); }

.ab-stats{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; max-width:760px; }
.ab-stat-n{ font-size:clamp(30px,3.4vw,40px); font-weight:700; line-height:1.1; letter-spacing:-.02em; color:var(--site-ink,#0b1020); }
.ab-stat-l{ margin:.25rem 0 .5rem; font-weight:600; color:var(--site-link,#2d4bdb); }
.ab-stat p{ font-size:.92rem; }

.ab-grid-2{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.ab-grid-4{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.ab-grid-4:has(> :nth-child(2):last-child){ grid-template-columns:repeat(2,minmax(0,1fr)); }
.ab-grid-4 p{ font-size:.95rem; }

.ab-vals{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 32px; border-top:1px solid var(--site-line,#e2e6f2); }
.ab-val{ display:grid; grid-template-columns:160px 1fr; gap:16px; padding:18px 0; border-bottom:1px solid var(--site-line,#e2e6f2); }
.ab-val-k{ font-weight:700; color:var(--site-ink,#0b1020); }
.ab-val p{ margin:0; color:var(--site-text,#3a4366); }

.ab-team{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.ab-member{ display:flex; gap:16px; align-items:flex-start; }
.ab-member-human{ grid-column:1 / -1; }
.ab-av{ flex-shrink:0; display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:50%;
  background:var(--site-surface,#fff); border:1px solid var(--site-line-strong,#dce2ef); color:var(--site-link,#2d4bdb); font-size:1.2rem; }
.ab-member-human .ab-av{ background:var(--site-accent,#2d4bdb); border-color:var(--site-accent,#2d4bdb); color:var(--site-on-accent,#fff); }
.ab-role{ margin:-.25rem 0 .5rem; font-size:.85rem; color:var(--site-muted,#5c6690); }

.ab-log{ margin:0; padding:0; list-style:none; border-inline-start:2px solid var(--site-line,#e2e6f2); }
.ab-log li{ position:relative; display:grid; grid-template-columns:120px 1fr; gap:16px; padding:10px 0; padding-inline-start:20px; }
.ab-log li::before{ content:""; position:absolute; top:17px; inset-inline-start:-6px; width:10px; height:10px; border-radius:50%; background:var(--site-accent,#2d4bdb); }
.ab-log-d{ font-weight:600; color:var(--site-ink,#0b1020); font-variant-numeric:tabular-nums; }
.ab-log li span{ color:var(--site-text,#3a4366); }

.ab-cta{ padding:32px; background:var(--site-bg-soft,#f6f8fc); border-top:3px solid var(--site-accent,#2d4bdb); border-radius:0 0 12px 12px; }
.ab-cta p{ max-width:760px; margin:0 0 1.25rem; color:var(--site-text,#3a4366); }
.ab-cta b{ color:var(--site-ink,#0b1020); }
.ab-btns{ display:flex; flex-wrap:wrap; gap:10px; }
.ab-btn{ display:inline-flex; align-items:center; padding:.7rem 1.1rem; border-radius:8px; font-weight:600; text-decoration:none;
  border:1px solid var(--site-line-strong,#dce2ef); background:var(--site-surface,#fff); color:var(--site-ink,#0b1020); }
.ab-btn:hover, .ab-btn:focus-visible{ border-color:var(--site-accent,#2d4bdb); color:var(--site-link,#2d4bdb); }
.ab-btn-p{ border-color:var(--site-accent,#2d4bdb); background:var(--site-accent,#2d4bdb); color:var(--site-on-accent,#fff); }
.ab-btn-p:hover, .ab-btn-p:focus-visible{ background:var(--site-accent-hover,#2440c4); border-color:var(--site-accent-hover,#2440c4); color:var(--site-on-accent,#fff); }

@media (max-width:991.98px){
  .ab-grid-4{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ab-vals{ grid-template-columns:1fr; }
}
@media (max-width:767.98px){
  .ab-hero{ padding-top:32px; }
  .ab-grid-2, .ab-team{ grid-template-columns:1fr; }
  .ab-val{ grid-template-columns:1fr; gap:4px; }
  .ab-log li{ grid-template-columns:1fr; gap:2px; }
  .ab-cta{ padding:22px; }
}
@media (max-width:420px){ .ab-stats, .ab-grid-4{ grid-template-columns:1fr; } }
