Accessibility
Commitment
Kimoun is committed to making its website accessible to people with disabilities, in line with the Web Content Accessibility Guidelines (WCAG) 2.1, Level AA.
This document describes the tests performed, corrections applied and known limitations as of its publication date (May 2026).
Scope of the audit
The audit covers the full public site kimoun.com, including:
- the homepage and service pages (landing pages)
- reusable components: navigation, forms, accordions, grids, cards, and the cookie consent banner
- the blog section: article list, individual article pages, editorial elements (alerts, lists, code blocks, footnotes)
Tests performed
Automated analysis
Pages were audited with axe-core 4.9.1 (WCAG accessibility engine) via direct browser injection. Tests cover Level A and AA violations.
Manual keyboard review
A full keyboard traversal was conducted on the component reference page (/components-reference/):
- Tab / Shift+Tab navigation across all interactive elements
- activating buttons, links and FAQ accordions with Enter and Space
- closing the cookie consent modal with Escape
- verifying tab order and focus visibility at every step
Visual non-regression tests
30 Playwright screenshots (desktop 1280 px, tablet 768 px, mobile 375 px) were taken before and after each round of corrections, covering all templates: homepage, sample landing, blog list, blog articles, and the quote form page.
Corrections applied
Navigation and components (pass 2 — fixing-accessibility)
| Correction | Description |
|---|---|
| Global focus ring | Visible focus indicator on all links via :focus-visible — petrol-700 colour (4.87:1 contrast ratio on white) |
| Form focus ring | Border and petrol shadow on input fields when focused via keyboard |
| FAQ accordion focus ring | Indicator added to the .kb-faq__button toggle |
| Cookie consent banner | inert attribute applied to page content on load — prevents focus from passing through the overlay |
| Cookie consent modal | Active focus trap during modal opening; focus restored to the triggering element on close |
| Hero | Dynamic aria-labelledby linked to the section’s <h1> |
| Services grid | Fixed an aria-labelledby mismatch between the section and its heading |
| Logo strip | Conditional aria-labelledby based on heading presence |
| Carousel and logo strip images | Explicit width/height on replacement images (CLS reduction) |
Editorial content — blog articles (pass 6 — EA)
| Correction | Description |
|---|---|
| GitHub-style Markdown alerts | Title text colour strengthened by alert type: note petrol-700, tip #166534, warning #92400e, caution brick-700 |
| Categories and labels | Colour changed from brick-500 to brick-700 (5.1:1 contrast ratio on white) |
| Code blocks | Added color: inherit to avoid overriding Chroma syntax highlighting colours |
| Article card dates | Replaced opacity (0.6) with an explicit neutral-500 colour (5.9:1 contrast ratio on white) |
| Task list checkboxes | Added aria-hidden="true" programmatically — these checkboxes are purely decorative in articles |
Known non-conformances
The following items have residual limitations. A correction was not applied because it falls outside the current pass scope or depends on a third-party system.
| Element | Type | Reason |
|---|---|---|
process_steps component | aria-allowed-role | The Bookshop component uses a non-permitted ARIA role on its container. Correction deferred — Bookshop structure change is out of scope for CSS passes. |
| Floating WhatsApp button | region landmark | The button is part of the global shell (outside Bookshop composition). The fix would require editing the shell partial; deferred to a dedicated pass. |
| Chroma syntax highlighting colours | Variable contrast | Chroma generates inline styles produced by the Hugo engine. These colours cannot be overridden by project CSS without breaking code readability. Not corrected — third-party system. |
Lighthouse Accessibility scores
Score measured after corrections (Lighthouse, desktop mode):
- Homepage: 95 / 100
- Service pages: 95 / 100
- Blog articles: 95 / 100
Contact
To report an accessibility issue or request an accommodation:
- Email: oliver@kimoun.com
- Phone: +590 690 49 73 01
We aim to respond within 5 business days.