Aller au contenu
Iknow

// Iknow

Conformité d’accessibilité.

Une page de référence de travail : l’état de chaque critère de succès du niveau AA des WCAG 2.1 pour ce site.

Le site est en cours de construction vers les WCAG 2.1 niveau AA, le standard utilisé pour l’ADA et la Section 508 ; la conformité ne sera déclarée qu’une fois l’audit formel réussi. L’audit formel (analyses automatisées, parcours au clavier seul, tests avec lecteur d’écran et mesure des contrastes, dans les quatre langues) aura lieu une fois l’ensemble des études de cas finalisé, prévu fin août 2026, et avant le lancement. Les statuts se mettent à jour au fil des vérifications et corrections ; à la clôture de l’audit, cette page portera la déclaration de conformité et un rapport de conformité d’accessibilité.

21 Intégré19 À vérifier à l’audit0 Correction prévue10 Non applicable

// Sources et normes

// Perceivable

1.1.1

Non-text ContentA

Every image carries alt text through the CMS media pipeline; decorative canvases are aria-hidden. Audit reviews alt QUALITY, not just presence.

Intégré
1.2.1

Audio-only and Video-only (Prerecorded)A

The site publishes no audio or video content.

Non applicable
1.2.2

Captions (Prerecorded)A

No video content.

Non applicable
1.2.3Non applicable
1.2.4

Captions (Live)AA

No live media.

Non applicable
1.2.5Non applicable
1.3.1

Info and RelationshipsA

Corrected 30 Aug 2026: the home-page and services statistics were marked up with the value before its term, so a screen reader announced the figure before the thing it counted, and the group carried an extra element that broke the list structure. Found by automated testing after two rounds of hand-checking had missed it. Automated WCAG 2.1 AA testing (axe-core) runs against every template in all four languages, 44 pages, and reports zero violations; it runs nightly against the deployed site, so a regression is caught rather than discovered. Semantic headings, landmarks, native details/summary fold-downs, real lists and tables throughout. Corrected 28 Aug 2026: the scroll-reveal wrapper on the service-area and offering templates was rendering a div between a list and its items, so those two templates announced no list, no item count and no position. The wrapper now renders the list item itself.

Intégré
1.3.2

Meaningful SequenceA

Reading order follows DOM order by construction; formally verified with a screen reader at audit.

À vérifier à l’audit
1.3.3

Sensory CharacteristicsA

Instructions avoid shape/position-only references; copy sweep at audit confirms.

À vérifier à l’audit
1.3.4

OrientationAA

Fully responsive; no orientation lock anywhere.

Intégré
1.3.5

Identify Input PurposeAA

Contact and booking forms to be checked for autocomplete attributes on name/email fields.

À vérifier à l’audit
1.4.1

Use of ColorA

Status chips and links carry text or underlines, not colour alone; verified page-by-page at audit.

À vérifier à l’audit
1.4.2

Audio ControlA

Nothing plays audio.

Non applicable
1.4.3

Contrast (Minimum)AA

Corrected 30 Aug 2026: the placeholder initials shown where a portrait is missing measured 1.73 to 2.27:1 depending on the ground, under even the 3:1 large-text threshold, and now use the body-size copper at 4.65:1 on the lightest ground and 6.67:1 on the darkest. Automated WCAG 2.1 AA testing (axe-core) runs against every template in all four languages, 44 pages, and reports zero violations; it runs nightly against the deployed site, so a regression is caught rather than discovered. Two rounds of token remediation. 27 Aug 2026: muted-text opacities lifted (mist/45 and /50 to /55, khaki/80 to /90), bluegray text to a lighter same-hue variant. 28 Aug 2026: that round had left the small mono type on the display coppers, which measure 4.44:1 (copper-light) and 3.52:1 (copper) against the dark ground and so clear the 3:1 large-text threshold but not the 4.5:1 body threshold. Every text token at 15px or smaller, and every hover state on it, now uses the body-size copper at 6.67:1; placeholder grey was lifted from 3.80:1 to 6.01:1. Copper and copper-light remain in use as display accents, where 3:1 applies and they pass, and on decorative aria-hidden glyphs, which the criterion exempts. Ratios computed against both dark grounds. Full-page verification at audit.

Intégré
1.4.4

Resize TextAA

Relative units throughout; 200% zoom walkthrough at audit.

À vérifier à l’audit
1.4.5

Images of TextAA

All text is text. Client logos are logotypes, which the criterion exempts.

Intégré
1.4.10

ReflowAA

Responsive to 320px with no horizontal scroll; audit re-verifies content-heavy pages.

Intégré
1.4.11

Non-text ContrastAA

Focus rings, form borders and controls measured against 3:1 at audit; form borders were already lifted to #737373 for exactly this reason.

À vérifier à l’audit
1.4.12

Text SpacingAA

Spacing-override test at audit; no fixed-height text containers are known.

À vérifier à l’audit
1.4.13

Content on Hover or FocusAA

Hover surfaces are minimal (nav dropdowns); dismissability verified at audit.

À vérifier à l’audit

// Operable

2.1.1

KeyboardA

Everything is native links, buttons and details elements. The testimonial carousel's controls are native buttons, arrow keys step it from the controls row, and keyboard focus pauses the rotation the same way hover does; re-verified at audit.

Intégré
2.1.2

No Keyboard TrapA

No custom focus management outside the mobile menu; trap test at audit.

À vérifier à l’audit
2.1.4

Character Key ShortcutsA

No single-character shortcuts exist (the search shortcut uses a modifier).

Non applicable
2.2.1

Timing AdjustableA

No time limits on anything.

Non applicable
2.2.2

Pause, Stop, HideA

Met 30 Aug 2026. The home page animates in five places - the client wall, the testimonial carousel, the typewriter ticker and two background canvases - and a Pause animations control now stops all of them. It is the second item in the tab order on every page, invisible until it takes focus so the design is unchanged, and repeated as a visible control in the footer. The choice is remembered per browser and restored before the first frame, so it does not have to be made again. Paused animations hold their current frame rather than resetting. The animations still play by default for every visitor, and the operating system's reduce-motion preference is deliberately not honoured - this criterion asks for a mechanism the visitor can use, which is a different thing, and that distinction is why this entry was previously the one open item on this register.

Intégré
2.3.1

Three Flashes or Below ThresholdA

Nothing flashes; all motion is slow dissolves and reveals.

Intégré
2.4.1

Bypass BlocksA

Skip-to-content link on every page.

Intégré
2.4.2

Page TitledA

Every route sets a descriptive title through the shared metadata helper.

Intégré
2.4.3

Focus OrderA

DOM-order focus by construction; keyboard walkthrough at audit, mobile menu included.

À vérifier à l’audit
2.4.4

Link Purpose (In Context)A

Link-text sweep at audit; card links carry full titles, not 'read more'.

À vérifier à l’audit
2.4.5

Multiple WaysAA

Navigation, site search, footer directory and sitemap all exist.

Intégré
2.4.6

Headings and LabelsAA

Heading/label descriptiveness reviewed page-by-page at audit.

À vérifier à l’audit
2.4.7

Focus VisibleAA

A single global :focus-visible ring was added 28 Aug 2026. Before that, fourteen controls removed the browser outline and only one replaced it, leaving a border colour change as the sole focus signal. Perceptibility against the dark theme is still measured at audit alongside 1.4.11.

À vérifier à l’audit
2.5.1

Pointer GesturesA

Carousel swipe has button equivalents; confirmed at audit.

À vérifier à l’audit
2.5.2

Pointer CancellationA

Native activation events throughout; verified at audit.

À vérifier à l’audit
2.5.3

Label in NameA

Accessible names checked against visible labels at audit.

À vérifier à l’audit
2.5.4

Motion ActuationA

Nothing is operated by device motion.

Non applicable

// Understandable

3.1.1

Language of PageA

Every page declares its language and direction per locale. On Arabic the page CONTENT flows right-to-left; the site chrome (header, menu and search overlay) is deliberately pinned left-to-right at the client's direction, so "full right-to-left" would overstate it.

Intégré
3.1.2

Language of PartsAA

English islands inside localized pages carry lang="en": the change log's verbatim requests and this register's reference material are both marked. Corrected 28 Aug 2026: fifteen accessible names (the header controls and the testimonial carousel) were still English on the Spanish, French and Arabic pages. An aria-label cannot carry a lang attribute, so they are now translated like any other copy rather than marked.

Intégré
3.2.1

On FocusA

Focus never triggers a context change.

Intégré
3.2.2

On InputA

Inputs never auto-submit or change context; all forms have explicit submits.

Intégré
3.2.3

Consistent NavigationAA

One header, one footer, same order everywhere.

Intégré
3.2.4

Consistent IdentificationAA

Shared component system: the same control is the same control on every page. One known exception, found 28 Aug 2026: on the case-studies listing the industry rail and the results pagination both label their arrows "Previous page" and "Next page", so two different controls share one accessible name. Naming fix planned.

Intégré
3.3.1

Error IdentificationA

Form errors render as text; screen-reader announcement verified at audit with 4.1.3.

À vérifier à l’audit
3.3.2

Labels or InstructionsA

Every form field carries a visible label.

Intégré
3.3.3

Error SuggestionAA

Error copy reviewed for actionable correction hints at audit.

À vérifier à l’audit
3.3.4

Error Prevention (Legal, Financial, Data)AA

No legal, financial or data-modifying transactions on the public site.

Non applicable

// Robust

4.1.1

ParsingA

React-generated markup; no duplicate IDs or malformed nesting. (Obsolete in WCAG 2.2 but recorded for 2.1 conformance.)

Intégré
4.1.2

Name, Role, ValueA

Automated WCAG 2.1 AA testing (axe-core) runs against every template in all four languages, 44 pages, and reports zero violations; it runs nightly against the deployed site, so a regression is caught rather than discovered. Native elements carry this for free; the custom controls (search, mobile menu, carousel) verified at audit.

Intégré
4.1.3

Status MessagesAA

Form submission confirmations to be checked for aria-live announcement.

À vérifier à l’audit