{
  "version": "8.0",
  "messagingVersion": "2.0",
  "updated": "2026-08-25",
  "source": "https://brand.theword.world/brand",
  "authority": "canonical",
  "color": {
    "midnight": {
      "name": "Midnight",
      "hex": "#0B1A2D",
      "role": "Primary ground. Heroes, bands, footers.",
      "cssVar": "--midnight"
    },
    "word-blue": {
      "name": "Word Blue",
      "hex": "#023D6F",
      "role": "Structural secondary. Logo continuity.",
      "cssVar": "--word-blue"
    },
    "parchment": {
      "name": "Parchment",
      "hex": "#F7F3EC",
      "role": "Light ground. Official paper, never gray.",
      "cssVar": "--parchment"
    },
    "flame": {
      "name": "Flame",
      "hex": "#F85842",
      "role": "Non-text accent on light grounds: BURN moments, display numerals, highlights. Never carries text on Parchment or White. ≤10%. On Midnight it is the text accent, because Ember is 3.25:1 there and fails: see accent-on-dark.",
      "cssVar": "--flame"
    },
    "ember": {
      "name": "Ember",
      "hex": "#C13A24",
      "role": "Fire at text size: primary buttons, links, labels, hovers.",
      "cssVar": "--ember"
    },
    "white": {
      "name": "White",
      "hex": "#FFFFFF",
      "role": "Cards, reversed text, button labels.",
      "cssVar": "--white"
    }
  },
  "colorRetired": [],
  "proportion": {
    "rule": "60 / 30 / 10",
    "parchment": "~60%",
    "midnight": "~30%",
    "flame": "<=10%, never carrying text"
  },
  "typography": {
    "families": [
      {
        "family": "DM Serif Display",
        "use": "Large headlines, 36px and up. Fine, engraved hairlines. Regular + Italic only. No bold exists."
      },
      {
        "family": "DM Serif Text",
        "use": "Serif moments from 22–36px: pull quotes, the prophecy, document headings. Regular + Italic only."
      },
      {
        "family": "DM Sans",
        "use": "Everything functional: body, nav, labels, buttons, sub-brand materials. Weights 400–700 with true italics."
      }
    ],
    "stacks": {
      "serifDisplay": "'DM Serif Display', Georgia, 'Times New Roman', serif",
      "serifText": "'DM Serif Text', Georgia, 'Times New Roman', serif",
      "sans": "'DM Sans', -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif"
    },
    "source": "Google Fonts, free for every volunteer, partner, and field team",
    "retired": "Proxima Nova, fully retired. Fallbacks: Georgia for the serifs, system sans for DM Sans.",
    "rule": "Three faces and no others, in the weights and figures named here. A face outside the three is not a substitution, it is a different brand. Where a face cannot load, the fallbacks are Georgia for the serifs and the system sans for DM Sans."
  },
  "system": {
    "button-hover": {
      "name": "Button hover",
      "value": "#A62F1B",
      "rule": "Ember deepened ~10%. State-only. Never a palette color."
    },
    "focus-ring": {
      "name": "Focus ring",
      "value": "2px Ember (Flame on dark), 3px offset",
      "rule": "Visible on every interactive element. Never removed."
    },
    "success-state": {
      "name": "Success state",
      "value": "#5FAD56",
      "rule": "Forms and dashboards only. Never in brand layouts."
    },
    "error-state": {
      "name": "Error state",
      "value": "#8C1D13",
      "rule": "Forms and dashboards only. Never Flame and never Ember: Ember means \"this is the action\", and an error is not an action."
    },
    "warning-state": {
      "name": "Warning state",
      "value": "#8A5B12",
      "rule": "Forms and dashboards only. Never Flame, which is a celebration colour and reads as one."
    },
    "disabled-control": {
      "name": "Disabled control",
      "value": "38% Midnight text on 5% Midnight fill",
      "rule": "Low contrast is the message. The only place the muted floor may be crossed."
    },
    "touch-target": {
      "name": "Touch target",
      "value": "44px minimum",
      "rule": "Every control on every surface, however small it is drawn."
    },
    "success-on-dark": {
      "name": "Success on dark",
      "value": "#7FC177",
      "rule": "The success state lifted for a dark ground. The light value is 2.4:1 on Midnight and cannot be read there."
    },
    "error-on-dark": {
      "name": "Error on dark",
      "value": "#F0968A",
      "rule": "The error state lifted for a dark ground. Passes on Midnight and on Word Blue alike. Still never Flame."
    },
    "warning-on-dark": {
      "name": "Warning on dark",
      "value": "#E0B25C",
      "rule": "The warning state lifted for a dark ground. Passes on Midnight and on Word Blue alike."
    },
    "surface-on-dark": {
      "name": "Surface on dark",
      "value": "#172537",
      "rule": "Parchment at 5% over Midnight. The raised card and panel ground on a dark page. Any lighter and the accent drops below 4.5:1 on it, which is what fixes this value rather than taste."
    },
    "accent-on-dark": {
      "name": "Accent on dark",
      "value": "#F85842",
      "rule": "Flame. Ember is 3.3:1 on Midnight and fails, so a text accent on a dark ground is Flame. This is the one place Flame carries text, and §03 records it."
    },
    "photo-video-scrim": {
      "name": "Photo/video scrim",
      "value": "Midnight gradient, ~70% at text",
      "rule": "Required under any text on imagery (§07)."
    },
    "corner-radius": {
      "name": "Corner radius",
      "value": "3px buttons · 4px cards · 6px frames",
      "rule": "Three steps, no others."
    },
    "muted-text": {
      "name": "Muted text",
      "value": "80% Midnight (light grounds) · 75% Parchment (dark)",
      "rule": "Captions and metadata. Nothing lighter. It fails contrast."
    },
    "breakpoint": {
      "name": "Breakpoint",
      "value": "720px",
      "rule": "Single-column below; grids above."
    }
  },
  "cssVariables": {
    "midnight": "#0B1A2D",
    "word-blue": "#023D6F",
    "parchment": "#F7F3EC",
    "flame": "#F85842",
    "ember": "#C13A24",
    "white": "#FFFFFF",
    "rule": "rgba(11,26,45,.18)",
    "rule-light": "rgba(247,243,236,.22)",
    "serif-display": "'DM Serif Display', Georgia, 'Times New Roman', serif",
    "serif-text": "'DM Serif Text', Georgia, 'Times New Roman', serif",
    "sans": "'DM Sans', -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif"
  },
  "neutral": {
    "ink": {
      "value": "#0B1A2D",
      "ground": "light",
      "use": "Body text and headings on Parchment or White."
    },
    "ink-muted": {
      "value": "rgba(11,26,45,.80)",
      "ground": "light",
      "use": "Captions, metadata, datelines. Nothing lighter carries text."
    },
    "ink-soft": {
      "value": "rgba(11,26,45,.60)",
      "ground": "light",
      "use": "Placeholder text and inactive labels. Never body copy."
    },
    "ink-faint": {
      "value": "rgba(11,26,45,.38)",
      "ground": "light",
      "use": "Disabled controls only, where low contrast is the message."
    },
    "rule": {
      "value": "rgba(11,26,45,.18)",
      "ground": "light",
      "use": "The hairline. Card borders, table rules, dividers."
    },
    "rule-soft": {
      "value": "rgba(11,26,45,.10)",
      "ground": "light",
      "use": "Secondary dividers and row separators inside a table."
    },
    "wash": {
      "value": "rgba(11,26,45,.05)",
      "ground": "light",
      "use": "Input fills, code backgrounds, loading placeholders."
    },
    "ink-reversed": {
      "value": "#F7F3EC",
      "ground": "dark",
      "use": "Body text and headings on Midnight."
    },
    "ink-reversed-muted": {
      "value": "rgba(247,243,236,.75)",
      "ground": "dark",
      "use": "Captions and metadata on Midnight."
    },
    "ink-reversed-soft": {
      "value": "rgba(247,243,236,.55)",
      "ground": "dark",
      "use": "Placeholder and inactive labels on Midnight."
    },
    "ink-reversed-faint": {
      "value": "rgba(247,243,236,.38)",
      "ground": "dark",
      "use": "Disabled controls on Midnight. The dark twin of ink-faint, and the only place the muted floor may be crossed on this ground."
    },
    "rule-light": {
      "value": "rgba(247,243,236,.22)",
      "ground": "dark",
      "use": "The hairline on Midnight."
    },
    "wash-light": {
      "value": "rgba(247,243,236,.08)",
      "ground": "dark",
      "use": "Input fills and raised panels on Midnight."
    }
  },
  "spacing": {
    "space-1": "4px",
    "space-2": "8px",
    "space-3": "12px",
    "space-4": "16px",
    "space-5": "24px",
    "space-6": "32px",
    "space-7": "48px",
    "space-8": "64px",
    "space-9": "96px",
    "space-10": "128px"
  },
  "radius": {
    "radius-button": "3px",
    "radius-card": "4px",
    "radius-frame": "6px"
  },
  "elevation": {
    "flat": "none",
    "raised": "0 2px 6px rgba(11,26,45,.06)",
    "lifted": "0 10px 30px rgba(11,26,45,.10)",
    "overlay": "0 24px 60px rgba(11,26,45,.18)"
  },
  "motion": {
    "duration-fast": "120ms",
    "duration-base": "150ms",
    "duration-slow": "300ms",
    "easing": "cubic-bezier(.2,.6,.2,1)"
  },
  "breakpoint": {
    "email": "600px",
    "page": "720px",
    "wide": "1080px"
  },
  "typeScale": {
    "label": {
      "size": "12px",
      "lineHeight": "1.4",
      "use": "DM Sans 600, uppercase, letterspaced .18em. Eyebrows and kickers.",
      "family": "DM Sans",
      "weight": "600",
      "letterSpacing": ".18em",
      "italic": "never",
      "figures": "tabular"
    },
    "caption": {
      "size": "13px",
      "lineHeight": "1.6",
      "use": "DM Sans. Photo captions, metadata, datelines.",
      "family": "DM Sans",
      "weight": "400",
      "letterSpacing": "0",
      "italic": "allowed",
      "figures": "tabular"
    },
    "body-small": {
      "size": "15px",
      "lineHeight": "1.65",
      "use": "DM Sans. Card copy, table cells, secondary text.",
      "family": "DM Sans",
      "weight": "400",
      "letterSpacing": "0",
      "italic": "allowed",
      "figures": "proportional"
    },
    "body": {
      "size": "17px",
      "lineHeight": "1.7",
      "use": "DM Sans. Every extended reading passage.",
      "family": "DM Sans",
      "weight": "400",
      "letterSpacing": "0",
      "italic": "allowed",
      "figures": "proportional"
    },
    "body-large": {
      "size": "19px",
      "lineHeight": "1.65",
      "use": "DM Sans. Ledes and standfirsts.",
      "family": "DM Sans",
      "weight": "400",
      "letterSpacing": "0",
      "italic": "allowed",
      "figures": "proportional"
    },
    "title-small": {
      "size": "22px",
      "lineHeight": "1.35",
      "use": "DM Serif Text. The lowest the serif goes.",
      "family": "DM Serif Text",
      "weight": "400",
      "letterSpacing": "0",
      "italic": "one word",
      "figures": "proportional"
    },
    "title": {
      "size": "28px",
      "lineHeight": "1.25",
      "use": "DM Serif Text. Document headings, pull quotes.",
      "family": "DM Serif Text",
      "weight": "400",
      "letterSpacing": "0",
      "italic": "one word",
      "figures": "proportional"
    },
    "title-large": {
      "size": "34px",
      "lineHeight": "1.18",
      "use": "DM Serif Text. The prophecy, record openings.",
      "family": "DM Serif Text",
      "weight": "400",
      "letterSpacing": "-.005em",
      "italic": "one word",
      "figures": "proportional"
    },
    "display-small": {
      "size": "40px",
      "lineHeight": "1.12",
      "use": "DM Serif Display. Section headlines.",
      "family": "DM Serif Display",
      "weight": "400",
      "letterSpacing": "-.01em",
      "italic": "one word",
      "figures": "tabular"
    },
    "display": {
      "size": "52px",
      "lineHeight": "1.08",
      "use": "DM Serif Display. Page headlines.",
      "family": "DM Serif Display",
      "weight": "400",
      "letterSpacing": "-.015em",
      "italic": "one word",
      "figures": "tabular"
    },
    "display-large": {
      "size": "72px",
      "lineHeight": "1.04",
      "use": "DM Serif Display. Hero headlines only.",
      "family": "DM Serif Display",
      "weight": "400",
      "letterSpacing": "-.02em",
      "italic": "one word",
      "figures": "tabular"
    }
  },
  "outcome": {
    "outcome-ministered": {
      "light": "#005F5E",
      "dark": "#00DDDB",
      "records": "Ministered To. The conversation happened. The quietest of the six, because it is the most common."
    },
    "outcome-salvation": {
      "light": "#007D4C",
      "dark": "#00C479",
      "records": "Salvation. New life, and the reason for the rest. Green is life, not fire: fire is the institution’s own voice and is not lent to a data category."
    },
    "outcome-healing": {
      "light": "#3B4100",
      "dark": "#B2BE2C",
      "records": "Healing. The color of oil, which is what the sick are anointed with."
    },
    "outcome-baptism-water": {
      "light": "#0070BD",
      "dark": "#9CC3FF",
      "records": "Baptism in water."
    },
    "outcome-baptism-spirit": {
      "light": "#4C3DAF",
      "dark": "#A98FFF",
      "records": "Baptism in the Holy Spirit. Separated from water baptism by hue, because they are separate events and are counted separately."
    },
    "outcome-raised": {
      "light": "#860048",
      "dark": "#FF83B2",
      "records": "Raised from the dead. The rarest, and the furthest from every other value here."
    }
  },
  "progression": {
    "progression-1": {
      "light": "#F8E4D7",
      "dark": "#5C412F",
      "stage": "Match"
    },
    "progression-2": {
      "light": "#FAD5BF",
      "dark": "#6D462F",
      "stage": "Kindling"
    },
    "progression-3": {
      "light": "#FBC6A9",
      "dark": "#7F4B2F",
      "stage": "Twigs"
    },
    "progression-4": {
      "light": "#FBB694",
      "dark": "#924F30",
      "stage": "Sticks"
    },
    "progression-5": {
      "light": "#FBA680",
      "dark": "#A55231",
      "stage": "Logs"
    },
    "progression-6": {
      "light": "#FB956E",
      "dark": "#B95534",
      "stage": "Trees"
    },
    "progression-7": {
      "light": "#FA825E",
      "dark": "#CD5737",
      "stage": "Forests"
    },
    "progression-8": {
      "light": "#F96E4F",
      "dark": "#E2583C",
      "stage": "Mountain Ranges"
    },
    "progression-9": {
      "light": "#F85842",
      "dark": "#F85842",
      "stage": "The World"
    }
  },
  "print": {
    "Midnight": {
      "screen": "#0B1A2D",
      "cmyk": "76/42/0/82",
      "cmykStatus": "unconfirmed, confirm against a press proof",
      "pantoneNearest": "PANTONE 289 C",
      "pantoneDistance": "4.57",
      "pantoneStatus": "nearest colour in a reference set of screen approximations, computed by tools/match_pantone.py. Not a measurement of ink and not a match. Confirm on a press proof."
    },
    "Word Blue": {
      "screen": "#023D6F",
      "cmyk": "98/45/0/56",
      "cmykStatus": "unconfirmed, confirm against a press proof",
      "pantoneNearest": "PANTONE 302 C",
      "pantoneDistance": "3.54",
      "pantoneStatus": "nearest colour in a reference set of screen approximations, computed by tools/match_pantone.py. Not a measurement of ink and not a match. Confirm on a press proof."
    },
    "Parchment": {
      "screen": "#F7F3EC",
      "cmyk": "0/2/4/3",
      "cmykStatus": "unconfirmed, confirm against a press proof",
      "pantoneNearest": "PANTONE 9003 C",
      "pantoneDistance": "2.58",
      "pantoneStatus": "nearest colour in a reference set of screen approximations, computed by tools/match_pantone.py. Not a measurement of ink and not a match. Confirm on a press proof."
    },
    "Flame": {
      "screen": "#F85842",
      "cmyk": "0/65/73/3",
      "cmykStatus": "unconfirmed, confirm against a press proof",
      "pantoneNearest": "PANTONE Warm Red C",
      "pantoneDistance": "3.63",
      "pantoneStatus": "nearest colour in a reference set of screen approximations, computed by tools/match_pantone.py. Not a measurement of ink and not a match. Confirm on a press proof."
    },
    "Ember": {
      "screen": "#C13A24",
      "cmyk": "0/70/81/24",
      "cmykStatus": "unconfirmed, confirm against a press proof",
      "pantoneNearest": "PANTONE 180 C",
      "pantoneDistance": "4.49",
      "pantoneStatus": "nearest colour in a reference set of screen approximations, computed by tools/match_pantone.py. Not a measurement of ink and not a match. Confirm on a press proof."
    },
    "White": {
      "screen": "#FFFFFF",
      "cmyk": "0/0/0/0",
      "cmykStatus": "unconfirmed, confirm against a press proof",
      "pantoneNearest": "None: unprinted stock, or opaque white ink",
      "pantoneDistance": "n/a",
      "pantoneStatus": "nearest colour in a reference set of screen approximations, computed by tools/match_pantone.py. Not a measurement of ink and not a match. Confirm on a press proof."
    }
  },
  "scaleRules": {
    "neutral": "Dividers, disabled states, input fills and table stripes are not new colours. They are Midnight on a light ground and Parchment on a dark one, at the opacities recorded here. Nothing lighter than ink-muted carries text, and ink-faint is disabled controls only.",
    "type": "Eleven steps and no sizes between them. Each names its family, so the size bands are not a rule anyone has to remember: pick the step and the family comes with it.",
    "typeface-rules": "Three faces and no others, in the weights and figures named here. A face outside the three is not a substitution, it is a different brand. Where a face cannot load, the fallbacks are Georgia for the serifs and the system sans for DM Sans.",
    "scripture": "A verse is not a pull quote and is not decoration. It is the one voice in this system that is not ours, and it is set so a reader can see that before reading a word of it. Never reflowed, never trimmed to fit, never paraphrased: if it does not fit, the layout changes.",
    "outcome": "Six, mutually distinguishable and distinguishable from Ember and Flame, in both themes and under all three dichromacies. Colour is never the only encoding: every outcome also carries its glyph and its written name.",
    "progression": "Nine ordered stages, fills only. Never text, and never an interactive control: the ramp runs close to Ember and ends on Flame, so a swatch that could be mistaken for a button stops a reader telling a stage from an action. Step 9 counts against the Flame budget.",
    "spacing": "A four-pixel base. Every margin, padding, gap and inset is one of these steps and nothing between them. The page edge inset is space-5 on every surface, a phone included, which is what this site itself uses.",
    "radius": "Three steps, no others. Nothing in this system is a pill, and nothing is a perfect circle except the avatar crop. A fully rounded control is not a radius this brand has: use radius-button.",
    "elevation": "Shadow is Midnight at low opacity, never black and never coloured. Four steps, and most of the system sits at the first two. A scrim is not an elevation step: it is a ground, and it belongs to the photography rules.",
    "motion": "Motion confirms an action. It never performs. Nothing bounces and nothing springs. A product may name its own interaction motions, and every one of them resolves to a duration and the easing published here rather than inventing its own curve. Every duration is suppressed entirely under prefers-reduced-motion.",
    "breakpoint": "Three, and the layout changes only at these. email is the narrowest anything is designed for and is why this brand governs email templates as a surface.",
    "nation": "One name, many tongues, many faces. The system is the name and does not change at a border. The content is the nations and should change at every one. A country is expressed through the published country lockup, the language, and the people in the photographs, and through nothing else."
  },
  "nation": {
    "colour": {
      "varies": "never",
      "rule": "The palette is the same in every country. A national accent collides with the functional palette and cannot be verified: measured against the published tokens, Nigeria's green is ΔE 3.6 from the salvation colour and the Philippines' blue is 7.1 from Holy Spirit baptism, against a published floor of 8.0."
    },
    "typography": {
      "varies": "never",
      "rule": "Three faces and no others, whatever the local convention. Script support is a font-loading question, not a licence for a fourth face."
    },
    "geometry": {
      "varies": "never",
      "rule": "Spacing, radius, and the near-square corner are most of what makes a poster in one country and an app in another read as one house."
    },
    "motion": {
      "varies": "never",
      "rule": "Three durations and one easing, everywhere."
    },
    "the mark": {
      "varies": "once, and only as published",
      "rule": "The country lockup, drawn by the brand and published here. Country names are drawn as outlines so no build can compose one, and no team may improvise one. This is the single place a flag appears, and it is the recorded exception to G7."
    },
    "language": {
      "varies": "always",
      "rule": "Including which translation a verse is set in. This is what “every tongue” asks for, and it is the largest lever there is."
    },
    "photography": {
      "varies": "always",
      "rule": "§07 already requires documentary capture from our own field. Someone opening this in Kampala should see believers from Kampala. Belonging is built here, not in an accent colour."
    },
    "testimony and proof": {
      "varies": "always",
      "rule": "Local names, local reports, local numbers, each attributed under G8."
    },
    "first steps": {
      "varies": "where the church genuinely gathers differently",
      "rule": "The journey is the same; the first step into it may not be."
    },
    "formats": {
      "varies": "always",
      "rule": "Dates, numbers, name order, and reading direction."
    }
  },
  "scripture": {
    "family": "DM Serif Text",
    "steps": "title-small or title",
    "weight": "400",
    "italic": "never across the whole verse",
    "case": "as written. Never all caps",
    "quotationMarks": "never. The setting is what marks it",
    "reference": "required, on its own line, in the label step",
    "referenceColour": "ink-muted on light, ink-reversed-muted on dark",
    "ruleAbove": "hairline. Never a coloured bar and never a Flame accent",
    "exception": "the Vision lockup, which is a published file rather than a setting to reproduce",
    "rule": "A verse is not a pull quote and is not decoration. It is the one voice in this system that is not ours, and it is set so a reader can see that before reading a word of it. Never reflowed, never trimmed to fit, never paraphrased: if it does not fit, the layout changes."
  },
  "theme": {
    "_README": "This system is dual-theme and always was. Light is Parchment, dark is Midnight. Nothing here is a new colour: every value is a token already published above, collected into the pair an application switches between.",
    "light": {
      "ground": "parchment",
      "raisedSurface": "white",
      "text": "ink",
      "textMuted": "ink-muted",
      "textSoft": "ink-soft",
      "accent": "ember",
      "accentHover": "button-hover",
      "rule": "rule",
      "wash": "wash",
      "success": "success-state",
      "error": "error-state",
      "warning": "warning-state",
      "focusRing": "ember"
    },
    "dark": {
      "ground": "midnight",
      "raisedSurface": "surface-on-dark",
      "text": "ink-reversed",
      "textMuted": "ink-reversed-muted",
      "textSoft": "ink-reversed-soft",
      "accent": "accent-on-dark",
      "accentHover": "flame",
      "rule": "rule-light",
      "wash": "wash-light",
      "success": "success-on-dark",
      "error": "error-on-dark",
      "warning": "warning-on-dark",
      "focusRing": "accent-on-dark"
    },
    "derivation": "There is no rule for deriving a dark value from a light one, and there should not be: every dark value here was chosen against a measured ratio on Midnight and on surface-on-dark, not lightened by a formula. Read the values."
  },
  "contrast": {
    "_README": "Measured, not estimated. Computed by tools/colorkit.py at build time and gated by tools/brand_lint.py, so a palette edit that breaks a pair fails the build. Translucent tokens are flattened over the ground named here before measuring, because that is the colour a reader actually sees.",
    "standard": "WCAG 2.1 contrast ratio.",
    "thresholds": {
      "AA": 4.5,
      "AALarge": 3.0,
      "AAA": 7.0,
      "note": "Large is 24px, or 19px at 600 and above."
    },
    "permitted": [
      {
        "foreground": "ink",
        "ground": "parchment",
        "ratio": 15.82,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "body text on the light ground"
      },
      {
        "foreground": "ink",
        "ground": "white",
        "ratio": 17.5,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "body text on a card"
      },
      {
        "foreground": "ink-muted",
        "ground": "parchment",
        "ratio": 8.81,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "captions and metadata on the light ground"
      },
      {
        "foreground": "ink-muted",
        "ground": "white",
        "ratio": 9.31,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "captions on a card"
      },
      {
        "foreground": "ink-soft",
        "ground": "parchment",
        "ratio": 4.48,
        "requires": 3.0,
        "passesAA": false,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "placeholder and inactive labels"
      },
      {
        "foreground": "ink-reversed",
        "ground": "midnight",
        "ratio": 15.82,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "body text on Midnight"
      },
      {
        "foreground": "ink-reversed-muted",
        "ground": "midnight",
        "ratio": 9.29,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "captions on Midnight"
      },
      {
        "foreground": "ink-reversed-soft",
        "ground": "midnight",
        "ratio": 5.52,
        "requires": 3.0,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "placeholders on Midnight"
      },
      {
        "foreground": "ember",
        "ground": "parchment",
        "ratio": 4.87,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "links and labels on the light ground"
      },
      {
        "foreground": "ember",
        "ground": "white",
        "ratio": 5.39,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "links on a card"
      },
      {
        "foreground": "white",
        "ground": "ember",
        "ratio": 5.39,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the primary button label"
      },
      {
        "foreground": "white",
        "ground": "button-hover",
        "ratio": 6.9,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the primary button label, hovered"
      },
      {
        "foreground": "flame",
        "ground": "midnight",
        "ratio": 5.39,
        "requires": 3.0,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the official-record numeral, which is large text"
      },
      {
        "foreground": "parchment",
        "ground": "midnight",
        "ratio": 15.82,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "reversed body copy"
      },
      {
        "foreground": "error-state",
        "ground": "parchment",
        "ratio": 8.25,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "form error text"
      },
      {
        "foreground": "warning-state",
        "ground": "parchment",
        "ratio": 5.29,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "form warning text"
      },
      {
        "foreground": "ink-reversed",
        "ground": "surface-on-dark",
        "ratio": 14.0,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "body text on a dark card"
      },
      {
        "foreground": "ink-reversed-muted",
        "ground": "surface-on-dark",
        "ratio": 8.42,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "captions on a dark card"
      },
      {
        "foreground": "accent-on-dark",
        "ground": "surface-on-dark",
        "ratio": 4.77,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "links and labels on a dark card"
      },
      {
        "foreground": "accent-on-dark",
        "ground": "midnight",
        "ratio": 5.39,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "links and labels on the dark ground"
      },
      {
        "foreground": "success-on-dark",
        "ground": "surface-on-dark",
        "ratio": 7.22,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the success state on a dark card"
      },
      {
        "foreground": "error-on-dark",
        "ground": "surface-on-dark",
        "ratio": 6.96,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "form error text on a dark card"
      },
      {
        "foreground": "warning-on-dark",
        "ground": "surface-on-dark",
        "ratio": 7.88,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "form warning text on a dark card"
      },
      {
        "foreground": "error-on-dark",
        "ground": "word-blue",
        "ratio": 4.97,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "form error text on the School's dark ground"
      },
      {
        "foreground": "warning-on-dark",
        "ground": "word-blue",
        "ratio": 5.63,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "form warning text on the School's dark ground"
      },
      {
        "foreground": "outcome-outcome-ministered-light",
        "ground": "parchment",
        "ratio": 6.78,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the outcome-ministered label on the light parchment ground"
      },
      {
        "foreground": "outcome-outcome-ministered-light",
        "ground": "white",
        "ratio": 7.5,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-ministered label on the light white ground"
      },
      {
        "foreground": "outcome-outcome-ministered-dark",
        "ground": "midnight",
        "ratio": 10.31,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-ministered label on the dark midnight ground"
      },
      {
        "foreground": "outcome-outcome-ministered-dark",
        "ground": "surface-on-dark",
        "ratio": 9.12,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-ministered label on the dark surface-on-dark ground"
      },
      {
        "foreground": "white",
        "ground": "outcome-outcome-ministered-light",
        "ratio": 7.5,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-ministered label on a solid badge, light theme"
      },
      {
        "foreground": "midnight",
        "ground": "outcome-outcome-ministered-dark",
        "ratio": 10.31,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-ministered label on a solid badge, dark theme"
      },
      {
        "foreground": "outcome-outcome-salvation-light",
        "ground": "parchment",
        "ratio": 4.7,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the outcome-salvation label on the light parchment ground"
      },
      {
        "foreground": "outcome-outcome-salvation-light",
        "ground": "white",
        "ratio": 5.2,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the outcome-salvation label on the light white ground"
      },
      {
        "foreground": "outcome-outcome-salvation-dark",
        "ground": "midnight",
        "ratio": 7.64,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-salvation label on the dark midnight ground"
      },
      {
        "foreground": "outcome-outcome-salvation-dark",
        "ground": "surface-on-dark",
        "ratio": 6.76,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the outcome-salvation label on the dark surface-on-dark ground"
      },
      {
        "foreground": "white",
        "ground": "outcome-outcome-salvation-light",
        "ratio": 5.2,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the outcome-salvation label on a solid badge, light theme"
      },
      {
        "foreground": "midnight",
        "ground": "outcome-outcome-salvation-dark",
        "ratio": 7.64,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-salvation label on a solid badge, dark theme"
      },
      {
        "foreground": "outcome-outcome-healing-light",
        "ground": "parchment",
        "ratio": 9.78,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-healing label on the light parchment ground"
      },
      {
        "foreground": "outcome-outcome-healing-light",
        "ground": "white",
        "ratio": 10.81,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-healing label on the light white ground"
      },
      {
        "foreground": "outcome-outcome-healing-dark",
        "ground": "midnight",
        "ratio": 8.58,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-healing label on the dark midnight ground"
      },
      {
        "foreground": "outcome-outcome-healing-dark",
        "ground": "surface-on-dark",
        "ratio": 7.59,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-healing label on the dark surface-on-dark ground"
      },
      {
        "foreground": "white",
        "ground": "outcome-outcome-healing-light",
        "ratio": 10.81,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-healing label on a solid badge, light theme"
      },
      {
        "foreground": "midnight",
        "ground": "outcome-outcome-healing-dark",
        "ratio": 8.58,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-healing label on a solid badge, dark theme"
      },
      {
        "foreground": "outcome-outcome-baptism-water-light",
        "ground": "parchment",
        "ratio": 4.69,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the outcome-baptism-water label on the light parchment ground"
      },
      {
        "foreground": "outcome-outcome-baptism-water-light",
        "ground": "white",
        "ratio": 5.18,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the outcome-baptism-water label on the light white ground"
      },
      {
        "foreground": "outcome-outcome-baptism-water-dark",
        "ground": "midnight",
        "ratio": 9.72,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-baptism-water label on the dark midnight ground"
      },
      {
        "foreground": "outcome-outcome-baptism-water-dark",
        "ground": "surface-on-dark",
        "ratio": 8.6,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-baptism-water label on the dark surface-on-dark ground"
      },
      {
        "foreground": "white",
        "ground": "outcome-outcome-baptism-water-light",
        "ratio": 5.18,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the outcome-baptism-water label on a solid badge, light theme"
      },
      {
        "foreground": "midnight",
        "ground": "outcome-outcome-baptism-water-dark",
        "ratio": 9.72,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-baptism-water label on a solid badge, dark theme"
      },
      {
        "foreground": "outcome-outcome-baptism-spirit-light",
        "ground": "parchment",
        "ratio": 7.32,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-baptism-spirit label on the light parchment ground"
      },
      {
        "foreground": "outcome-outcome-baptism-spirit-light",
        "ground": "white",
        "ratio": 8.1,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-baptism-spirit label on the light white ground"
      },
      {
        "foreground": "outcome-outcome-baptism-spirit-dark",
        "ground": "midnight",
        "ratio": 6.72,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the outcome-baptism-spirit label on the dark midnight ground"
      },
      {
        "foreground": "outcome-outcome-baptism-spirit-dark",
        "ground": "surface-on-dark",
        "ratio": 5.94,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the outcome-baptism-spirit label on the dark surface-on-dark ground"
      },
      {
        "foreground": "white",
        "ground": "outcome-outcome-baptism-spirit-light",
        "ratio": 8.1,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-baptism-spirit label on a solid badge, light theme"
      },
      {
        "foreground": "midnight",
        "ground": "outcome-outcome-baptism-spirit-dark",
        "ratio": 6.72,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the outcome-baptism-spirit label on a solid badge, dark theme"
      },
      {
        "foreground": "outcome-outcome-raised-light",
        "ground": "parchment",
        "ratio": 9.01,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-raised label on the light parchment ground"
      },
      {
        "foreground": "outcome-outcome-raised-light",
        "ground": "white",
        "ratio": 9.97,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-raised label on the light white ground"
      },
      {
        "foreground": "outcome-outcome-raised-dark",
        "ground": "midnight",
        "ratio": 7.62,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-raised label on the dark midnight ground"
      },
      {
        "foreground": "outcome-outcome-raised-dark",
        "ground": "surface-on-dark",
        "ratio": 6.74,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": false,
        "use": "the outcome-raised label on the dark surface-on-dark ground"
      },
      {
        "foreground": "white",
        "ground": "outcome-outcome-raised-light",
        "ratio": 9.97,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-raised label on a solid badge, light theme"
      },
      {
        "foreground": "midnight",
        "ground": "outcome-outcome-raised-dark",
        "ratio": 7.62,
        "requires": 4.5,
        "passesAA": true,
        "passesAALarge": true,
        "passesAAA": true,
        "use": "the outcome-raised label on a solid badge, dark theme"
      }
    ],
    "forbidden": [
      {
        "foreground": "flame",
        "ground": "parchment",
        "ratio": 2.94,
        "passesAA": false,
        "why": "Flame as text on the light ground. This is what the rule prevents."
      },
      {
        "foreground": "flame",
        "ground": "white",
        "ratio": 3.25,
        "passesAA": false,
        "why": "Flame as text on a card. This is what the rule prevents."
      },
      {
        "foreground": "ember",
        "ground": "midnight",
        "ratio": 3.25,
        "passesAA": false,
        "why": "Ember as text on the dark ground. Use accent-on-dark instead."
      },
      {
        "foreground": "ember",
        "ground": "surface-on-dark",
        "ratio": 2.87,
        "passesAA": false,
        "why": "Ember as text on a dark card. Use accent-on-dark instead."
      },
      {
        "foreground": "word-blue",
        "ground": "midnight",
        "ratio": 1.58,
        "passesAA": false,
        "why": "Word Blue as text on Midnight. It disappears."
      },
      {
        "foreground": "white",
        "ground": "flame",
        "ratio": 3.25,
        "passesAA": false,
        "why": "Any text on a Flame fill. Flame is never a ground under text."
      }
    ]
  },
  "separation": {
    "_README": "CIEDE2000 distance, measured by tools/colorkit.py. The minimum across every pair in the set, under normal vision and each of the three dichromacies, simulated with Machado (2009) at full severity. The floor is 8.0. Colour is still never the only encoding: six categories cannot be told apart by hue alone by every reader at any separation, so every outcome also carries its glyph and its written name.",
    "floor": 8.0,
    "themes": {
      "light": {
        "measuredAgainst": [
          "outcome-ministered",
          "outcome-salvation",
          "outcome-healing",
          "outcome-baptism-water",
          "outcome-baptism-spirit",
          "outcome-raised",
          "ember",
          "word-blue"
        ],
        "minimum": {
          "normal": 14.59,
          "protanopia": 8.83,
          "deuteranopia": 8.75,
          "tritanopia": 9.24
        },
        "closestPair": {
          "a": "#4C3DAF",
          "b": "#023D6F",
          "distance": 14.59
        },
        "passesFloor": true
      },
      "dark": {
        "measuredAgainst": [
          "outcome-ministered",
          "outcome-salvation",
          "outcome-healing",
          "outcome-baptism-water",
          "outcome-baptism-spirit",
          "outcome-raised",
          "flame",
          "parchment"
        ],
        "minimum": {
          "normal": 16.73,
          "protanopia": 11.31,
          "deuteranopia": 8.57,
          "tritanopia": 9.03
        },
        "closestPair": {
          "a": "#9CC3FF",
          "b": "#A98FFF",
          "distance": 16.73
        },
        "passesFloor": true
      }
    }
  }
}
