/* Accessibility: text contrast to WCAG AA (≥ 4.5:1 for normal text).
   Brand orange #D9713C stays for fills, lines and large type; small
   orange text uses a deeper tone on light and a lighter tone on dark
   backgrounds. Loaded last on every page. */

:root {
  --orange-text: #9C4A1F;       /* orange text on cream/card: 5.0:1 */
  --orange-text-dark: #EE9160;  /* orange text on charcoal: 5.7:1+ */
  --muted: #665D51;             /* grey helper text on cream: 5.3:1 */
  --orange-deep: #9C4A1F;       /* links and hovers that used #B85A2A (3.8:1) */
}

/* ---------- Small orange text on light backgrounds ---------- */
.eyebrow,
.feature-compact-idx,
.mod-idx,
.mod-for b,
.svc-from,
.log-topic,
.cs-meta dt,
.service-also .feature-compact-idx,
.process-step b::before,
.creator-facts dt,
.mk2-inside .mk2-tag,
.legal a,
.log-rss,
.log-more,
.footer-col h2 {
  color: var(--orange-text);
}
.eyebrow-line { background: currentColor; }

/* ---------- …and on dark backgrounds ---------- */
.about .eyebrow,
.eyebrow--dark,
.cs-hero .eyebrow,
.cs-hero .cs-meta dt,
.cs-section--dark .eyebrow,
.cs-section--dark .mod-idx,
.mk2-teaser .eyebrow,
.mk2-status,
.system .eyebrow,
.impact-section .eyebrow,
.arch-metric,
.arch-num,
.impact-metric-pill,
.roadmap .when,
.roadmap .star,
.site-footer h2,
.footer-col h4 {
  color: var(--orange-text-dark);
}

/* ---------- Buttons on brand orange: dark text ---------- */
.btn-pill { color: var(--ink); }
.btn-pill:hover { color: var(--cream-card); }
/* the dark variant (e.g. "Get in touch" on the orange band) keeps light text */
.btn-pill--dark, .btn-pill--dark:hover { color: var(--paper-text); }
.cta-inner p { color: var(--ink); }

/* ---------- Single cases ---------- */
.chip--live { color: #0B6646; }
.fleet-card[style*="#8b5cf6"] .idx { color: #A07CF8; }

/* ---------- Footer column headings: h2 (was h4, skipped levels) ---------- */
.footer-col h2 {
  font-family: var(--font-body);
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin: 0 0 10px 0;
}

/* Large numbers (≥ 24px) need 3:1 on light backgrounds */
.stat-strip strong { color: #B85A2A; }          /* 3.8:1 on cream */
.stat-strip--dark strong { color: var(--orange); }
.showcase-tag { color: var(--ink); }

/* Text for screen readers only */
.visually-hidden {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0);
  white-space: nowrap; border: 0;
}
