fix(a11y): resolve color-contrast and heading-order axe findings #68

Merged
claudiomaradonna merged 3 commits from fix/a11y-contrast-and-heading-order into master 2026-05-31 22:20:01 +02:00
Collaborator

Remediate the two axe-core findings flagged on the public site so it keeps matching it
s published WCAG 2.1 AA / EN 301 549 conformance statement. The color-contrast failure
(WCAG 1.4.3) came from the raw brand orange #f39200, which only reaches ~2.3:1 on l
ight backgrounds; text, links, .text-primary, and outline-button labels now use $br and-color-accessible (#8f5200, ~6.2:1), while the raw orange is kept on the dark # 333 header and footer surfaces where it already clears AA — mirroring the existing . btn-open-nav exception. The heading-order failure (WCAG 1.3.1 / 2.4.10) came from a
duplicate h1 and skipped levels on the index, about, and tag pages; each heading is dem
oted to its correct level via Bootstrap .hN utilities so the visual hierarchy is unc
hanged. The conformance statement and both locale strings are updated, with the self-a
ssessment date refreshed to 31 May 2026.

Remediate the two axe-core findings flagged on the public site so it keeps matching it s published WCAG 2.1 AA / EN 301 549 conformance statement. The color-contrast failure (WCAG 1.4.3) came from the raw brand orange `#f39200`, which only reaches ~2.3:1 on l ight backgrounds; text, links, `.text-primary`, and outline-button labels now use `$br and-color-accessible` (`#8f5200`, ~6.2:1), while the raw orange is kept on the dark `# 333` header and footer surfaces where it already clears AA — mirroring the existing `. btn-open-nav` exception. The heading-order failure (WCAG 1.3.1 / 2.4.10) came from a duplicate h1 and skipped levels on the index, about, and tag pages; each heading is dem oted to its correct level via Bootstrap `.hN` utilities so the visual hierarchy is unc hanged. The conformance statement and both locale strings are updated, with the self-a ssessment date refreshed to 31 May 2026.
Resolve the axe-core color-contrast finding (WCAG 1.4.3).

On light backgrounds the raw brand orange (#f39200) only reaches
~2.3:1, so text, links, .text-primary, and outline-button labels now
use $brand-color-accessible (#8f5200, ~6.2:1). The raw orange is kept
on dark #333 surfaces (footer links and the language switcher) where it
clears AA at ~5.4:1, mirroring the existing .btn-open-nav exception.

.product-subtitle and .footer-nav-label relied on opacity that dropped
them just under AA; they now use explicit accessible color/opacity
values. The language switcher links also gain text-white so they are
legible on the dark header.
Resolve the axe-core heading-order finding (WCAG 1.3.1 / 2.4.10).

The products section title was a second h1 (duplicate h1 / h1->h3 skip
on the index), the about-us name jumped h1->h3, and tag-page card titles
jumped h1->h5. Each heading is demoted to the correct level while keeping
its appearance via Bootstrap .hN utility classes (h2.h1, h2.h3,
h2.h5 card-title), so the visual hierarchy is unchanged.
Record the light-vs-dark contrast convention (accessible token on light
backgrounds, raw brand color on dark surfaces) and the heading-order
rule (one h1, never skip a level, restyle via .hN utilities) in the
conformance statement's conventions table.

Bump the self-assessment preparation date to 31 May 2026 in
docs/accessibility.md and in both locale strings, since the statement
records the date the site was last assessed.
claudiomaradonna deleted branch fix/a11y-contrast-and-heading-order 2026-05-31 22:20:05 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
unitoo/website!68
No description provided.