Accessibility Conformance Report
Name of product: CFR Education (cfr.org/education)
Report date: July 8, 2026
Product description:
- Free educational website from the Council on Foreign Relations offering readings, videos, timelines, simulations, lesson plans, and other teaching resources on international affairs, for students and educators.
Evaluation methods used:
- Automated axe-core scan (WCAG 2.1 A/AA ruleset) across all page types
- Automated keyboard-navigation audit (focus order, focus visibility, skip links, traps)
- Both automated audits run on a recurring schedule against the live site.
- Manual keyboard audit
- Manual screen-reader audit (VoiceOver + Safari, macOS).
Applicable standard: WCAG 2.1 (Level A and AA)
Conformance terms:
- Supports — functionality meets the criterion.
- Partially Supports — some functionality does not meet the criterion.
- Does Not Support — most functionality does not meet the criterion.
- Not Applicable — criterion is not relevant to the product.
Evidence key:
- [A] automated axe scan
- [K] automated keyboard sweep
- [MK] manual keyboard pass
- [SR] manual screen-reader pass
- [C] content review.
Table 1: WCAG 2.1 Level A
| Criterion | Conformance | Remarks and evidence |
| 1.1.1 Non-text Content | Supports | Images carry text alternatives; decorative images are hidden from assistive technology. [A][SR] |
| 1.2.1 Audio-only and Video-only (Prerecorded) | Not Applicable | No audio-only or video-only (silent) media; all video has an audio track and captions. [C] |
| 1.2.2 Captions (Prerecorded) | Supports | Videos are published with captions. [C] TBD — confirm in content review |
| 1.2.3 Audio Description or Media Alternative (Prerecorded) | Partially Supports | Under per-video review; most videos convey essential information in the audio track. [C] TBD |
| 1.3.1 Info and Relationships | Supports | Semantic landmarks, heading hierarchy, list/table markup, programmatically associated form labels. [A][SR] |
| 1.3.2 Meaningful Sequence | Supports | Reading order follows visual order. [A][SR] |
| 1.3.3 Sensory Characteristics | Supports | Instructions do not rely on shape, color, or location alone. [SR] |
| 1.4.1 Use of Color | Supports | Color is not the only means of conveying information; links and states have non-color cues. [A][MK] |
| 1.4.2 Audio Control | Not Applicable | No audio plays automatically. |
| 2.1.1 Keyboard | Supports | All interactive elements operable by keyboard. [K][MK] |
| 2.1.2 No Keyboard Trap | Supports | Automated trap/focus-loop detection across all page types; dialogs release focus on close. [K][MK] |
| 2.1.4 Character Key Shortcuts | Not Applicable | No single-character keyboard shortcuts. |
| 2.2.1 Timing Adjustable | Not Applicable | No time limits on reading or interaction. |
| 2.2.2 Pause, Stop, Hide | Supports | No auto-updating or auto-scrolling content; videos play only on user request (click-to-load). [MK] |
| 2.3.1 Three Flashes or Below Threshold | Supports | No flashing content. [C] |
| 2.4.1 Bypass Blocks | Supports | “Skip to content” link is the first focus stop on every page and targets the main content region (verified automatically). [K] |
| 2.4.2 Page Titled | Supports | Descriptive, unique page titles. [A] |
| 2.4.3 Focus Order | Supports | Focus order follows document order (verified automatically); order is meaningful. [K][MK] |
| 2.4.4 Link Purpose (In Context) | Supports | Link text identifies the destination; new-tab links are indicated. [A][SR] |
| 2.5.1 Pointer Gestures | Not Applicable | No multipoint or path-based gestures. |
| 2.5.2 Pointer Cancellation | Supports | Actions trigger on the up-event (standard controls). [MK] |
| 2.5.3 Label in Name | Supports | Accessible names contain the visible label text. [A][SR] |
| 2.5.4 Motion Actuation | Not Applicable | No motion-operated functionality. |
| 3.1.1 Language of Page | Supports | lang=“en” set on every page. [A] |
| 3.2.1 On Focus | Supports | Focusing an element never triggers a context change (verified in keyboard audits). [K][MK] |
| 3.2.2 On Input | Supports | Changing a setting or input never triggers an unexpected context change. [MK] |
| 3.3.1 Error Identification | Supports | Form errors are identified in text and associated with the field. [SR] |
| 3.3.2 Labels or Instructions | Supports | All form fields have visible labels. [A][SR] |
| 4.1.1 Parsing | Supports | Valid, well-formed markup; no duplicate IDs. [A] |
| 4.1.2 Name, Role, Value | Supports | Custom components built on accessible primitives (Radix UI) expose name, role, and state. [A][SR] |
Table 2: WCAG 2.1 Level AA
| Criterion | Conformance | Remarks and evidence |
| 1.2.4 Captions (Live) | Not Applicable | No live media on the site. |
| 1.2.5 Audio Description (Prerecorded) | Partially Supports | Under per-video review; see 1.2.3. [C] TBD |
| 1.3.4 Orientation | Supports | Content works in portrait and landscape. [MK] |
| 1.3.5 Identify Input Purpose | Supports | Autocomplete attributes on personal-data fields (contact form). [A] |
| 1.4.3 Contrast (Minimum) | Supports | Text meets 4.5:1 (3:1 for large text) across the design system. [A] |
| 1.4.4 Resize Text | Supports | Usable at 200% zoom without loss of content or functionality; rem-based typography. [MK] |
| 1.4.5 Images of Text | Supports | Text is rendered as text; images of text are not used for content. [C] |
| 1.4.10 Reflow | Supports | Content reflows to a single column at 320 CSS px without horizontal scrolling. [MK] |
| 1.4.11 Non-text Contrast | Supports | UI component boundaries and states meet 3:1. [A][MK] |
| 1.4.12 Text Spacing | Supports | No loss of content when user text-spacing overrides are applied. [MK] |
| 1.4.13 Content on Hover or Focus | Supports | Tooltips/glossary popovers are dismissible (Escape), hoverable, and persistent. [MK] |
| 2.4.5 Multiple Ways | Supports | Site search, navigation menus, topic pages, and listing pages provide multiple routes to content. |
| 2.4.6 Headings and Labels | Supports | Headings and labels describe their content. [SR] |
| 2.4.7 Focus Visible | Supports | Every focusable element shows a visible focus indicator (verified automatically on every page type). [K] |
| 3.1.2 Language of Parts | Supports | Foreign-language phrases are marked where they occur. [SR] |
| 3.2.3 Consistent Navigation | Supports | Header, footer, and navigation are consistent across pages. |
| 3.2.4 Consistent Identification | Supports | Components with the same function are identified consistently (shared design system). |
| 3.3.3 Error Suggestion | Supports | Form errors describe how to fix the input. [SR] |
| 3.3.4 Error Prevention (Legal, Financial, Data) | Not Applicable | No legal, financial, or data-modification transactions. |
| 4.1.3 Status Messages | Supports | Dynamic updates (search result counts, form feedback) are announced via live regions. [SR] |
Notes
- Downloadable PDFs generated from teaching materials are not fully tagged for assistive technology; the equivalent content is available as accessible HTML on the corresponding page, which is the primary version.
- Third-party embeds (Datawrapper charts, YouTube video player, Cloudflare Turnstile) are configured accessibly (titles, keyboard reachability, static alternatives where offered) but their internals are controlled by their vendors.
- This report covers the public CFR Education website only; it does not cover the WordPress editorial interface.