/* ---------------------------------------------------------------------------
   Found To Fixed — brand tokens, v1.0.0 (2026-09-16)

   GENERATED FROM brand/tokens.json BY brand/build.py — DO NOT EDIT

   Edit brand/tokens.json and run `make brand`. `make check` fails if this
   file and the tokens disagree, so the website, the Office theme and the
   palette files cannot drift apart.

   Contrast ratios below are recomputed at build time, not transcribed.
   --------------------------------------------------------------------------- */

:root {
  /* Indigo 700 — The mark, links, primary buttons, headings that need weight.
  */
  --brand: #2b3a8f;
  /* Indigo 900 — Pressed and visited states, the icon tile ground, dark headings on light.
  */
  --brand-dark: #1c2560;
  /* Indigo 500 — Hover, focus ring, the leading chevron of the mark.
     ⚠ 3.44:1 on --deep. Graphics only on a dark ground, never text. Use `mist` for muted text on dark.
  */
  --brand-light: #5567c7;
  /* Signal — Functional emphasis only — a rule, a step number, a callout edge.
     ⚠ Never a large flood, and never paired with `brand` on the same element.
  */
  --accent: #a94e16;
  /* Body text and headings on light grounds.
  */
  --ink: #16181f;
  /* Secondary text, card body copy.
  */
  --ink-muted: #4f5560;
  /* The lightest text tone in the system — dates, captions, fine print.
     ⚠ Anything lighter than this fails WCAG AA at body size. Do not add one.
  */
  --ink-quiet: #666c78;
  /* Page and slide background.
  */
  --surface: #ffffff;
  /* The alternating section ground; a quiet slide background.
  */
  --surface-alt: #f3f4f9;
  /* Card ground — a half-step off white so a white corner has something to read against.
  */
  --card: #fafbfd;
  /* Dark section ground, the footer, a title slide.
  */
  --deep: #151830;
  /* The light stop of the hero gradient. Pairs with `deep`.
  */
  --deep-grad: #2e3574;
  /* Muted text on a dark ground. The only correct choice there.
  */
  --mist: #b9c0e4;
  /* Highlight fill on a light ground — inline code, tag pills.
  */
  --brand-tint: #e7eaf7;
  /* Hairline rules, table borders.
     ⚠ 1.29:1 — decorative only. Every element it outlines is identified by its own label, so WCAG 1.4.11 does not bind.
  */
  --border: #dfe2ef;
  /* Card edges and anything that needs to be seen as an edge.
     ⚠ 1.65:1 — decorative only, but actually visible.
  */
  --border-strong: #c3c9e0;

  /* No webfont — see typography.note in brand/tokens.json. */
  --font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;

  /* Cards, buttons, the icon tile. */
  --radius: 10px;
  /* Tag pills and the nav CTA. */
  --radius-pill: 999px;
  /* Horizontal page padding. Every .wrap uses it, and the prose column is measure + two of these — so if it is missing, the whole site loses its side padding and content runs to the screen edge. */
  --gutter: clamp(1.25rem, 5vw, 3rem);
  /* Readable prose column — roughly 65-75 characters. */
  --measure: 34rem;
}
