Coco's Academy — cocosacademy.com | Wolf Pak Strategies LLC
We conducted a comprehensive internal accessibility audit in May 2026 against the Web Content Accessibility Guidelines (WCAG) 2.1 Level AA and Section 508 of the Rehabilitation Act.
| Success Criterion | Level | Status | Notes |
|---|---|---|---|
| 1.1.1 Non-text Content | A | Supports | All static images have descriptive alt text. Icon fonts carry aria-hidden="true". Quiz question text uses textContent (no unescaped HTML). Chessboard.js piece images marked alt="" (decorative) via post-init MutationObserver — board state is fully conveyed via #chess-status aria-live region. No dynamic image injection in the quiz or interdiction flows. |
| 1.2.1 Audio/Video (Prerecorded) | A | Supports | Celebration/streak videos are muted; audio captions are N/A per WCAG 1.2.2. A visual description track (WebVTT, kind="descriptions") was added June 2026 to the streak-reward video element. Audio tracks (move sounds, reward sounds) are illustrative with mute controls provided. |
| 1.3.1 Info and Relationships | A | Supports | Semantic landmarks present: <main>, <footer>, <nav>. All main app screens carry role="region" with descriptive aria-label. Quiz choices grouped via role="group" aria-labelledby. Progress bar has role="progressbar" with aria-valuemin/max/now. Constructed-response textarea has aria-label + aria-describedby. Form inputs have programmatic labels. |
| 1.4.2 Audio Control | A | Supports | Chess move sound toggle (🔊/🔇) added in Phase 3. Celebration audio has no persistent background autoplay. |
| 1.4.3 Contrast (Minimum) | AA | Supports | All CSS color variables meet 4.5:1 minimum. --text-secondary upgraded #5a6a7a → #475569 (7.6:1); --text-muted upgraded #8899aa → #64748b (5.1:1). Footer text and interactive elements meet requirements. System-color tokens used under forced-colors for Windows High Contrast Mode. |
| 1.4.4 Resize Text | AA | Supports | user-scalable=no removed from viewport. Root font-size set to 100% (relative). Pinch-to-zoom is not blocked on any page. |
| 2.1.1 Keyboard | A | Supports | Landing page pathway cards are <a> links. All quiz controls use standard <button> elements. Chess board supports full keyboard navigation via arrow keys and Space/Enter for piece selection and move confirmation. All modals are keyboard-operable with Escape to close. The 3D chess renderer is a future feature not yet deployed and is not in scope for this audit. |
| 2.1.2 No Keyboard Trap | A | Supports | Focus trap utility deployed on all modals (explain, track selection, beta setup, profile, chess no-moves). Escape key closes all dialogs. Focus restores to trigger element on close. |
| 2.3.3 Animation from Interactions | AAA | Supports | All CSS animations and the canvas-confetti celebration burst check prefers-reduced-motion. Nuclear fallback strips all motion for users with the reduce preference set. Scroll behavior also respects this preference. |
| 2.4.1 Bypass Blocks | A | Supports | "Skip to main content" link added to landing page, visually hidden until focused. |
| 2.4.3 Focus Order | A | Supports | Modal focus order managed by trap utility. Focus moves to first interactive element on modal open and restores on close. |
| 2.4.7 Focus Visible | AA | Supports | Global :focus-visible rule provides a 3px blue (#1a56db) outline. All 5 legacy outline:none instances corrected June 2026 to :focus:not(:focus-visible) — login inputs, profile fields, AZ search, state selector, and FAQ summaries all fixed. Keyboard users always see the focus ring. |
| 3.3.2 Labels or Instructions | A | Supports | All form inputs on the landing page and in modals now have programmatic <label> elements (visible or sr-only). Autocomplete attributes added to authentication fields. |
| 4.1.2 Name, Role, Value | A | Supports | All 5 modals: role="dialog", aria-modal="true", aria-labelledby. Pathway nav: <nav> + labelled <a> elements. Quiz app: progress bar has role="progressbar" + aria-value*; choices have role="group" aria-labelledby; constructed-response textarea has aria-label + aria-describedby; all main screens have role="region" with labels. |
| 4.1.3 Status Messages | AA | Supports | Chess status: aria-live="polite" role="status". Quiz stats row: role="status" aria-live="polite" — announces score and progress during quiz. Results score: aria-live="assertive" aria-atomic="true" — announces final score on completion. All major dynamic state changes announced to screen readers without focus movement. |
| Phase | Scope | Status | Target Date |
|---|---|---|---|
| Phase 0 | Viewport unlock, alt text, color contrast, font-size, motion guards | Complete | May 30, 2026 |
| Phase 1 | Skip link, semantic landmarks, keyboard-accessible pathway cards, form labels, focus rings | Complete | May 30, 2026 |
| Phase 2 | Modal ARIA dialog semantics, focus trap utility, Escape key handler, aria-live regions | Complete | May 30, 2026 |
| Phase 3 | Chess keyboard navigation (arrow keys, Space/Enter), sound toggle, screen reader move announcements | Complete | May 30, 2026 |
| Phase 4 | Accessibility statement (this page), VPAT/ACR document, footer links | Complete | May 30, 2026 |
| Re-audit | Third-party or second internal verification of full WCAG 2.1 AA conformance | Planned | August 2026 |
| High-contrast mode | @media (forced-colors) adapter implementation | Complete | June 8, 2026 |
| Video captions | Visual description track (WebVTT) added to streak/celebration video; video is muted so audio captions are N/A per WCAG 1.2.2 | Complete | June 8, 2026 |
If you or your students encounter an accessibility barrier on Coco's Academy, or need content in an alternative format, please contact us. We are committed to responding within 2 business days.
School districts or procurement officers requesting a formal Voluntary Product Accessibility Template (VPAT / Accessibility Conformance Report) may request one by email. We will provide the most current VPAT document within 5 business days.
Coco's Academy is designed for use by K-12 school districts, community colleges, and workforce development programs. We understand that public entities face the following accessibility compliance obligations when procuring educational technology:
We are committed to meeting these standards ahead of the 2027 deadline and will provide procurement officers with current, accurate VPAT documentation upon request.
This accessibility statement was last updated: May 30, 2026.
It will be updated after each remediation phase and after re-audit results are available.