Accessibility

Last reviewed 25 September 2026

Commitment

I design and build this site myself, so its accessibility is my responsibility. I hold it to the standard I aim for in the products I work on: WCAG 2.2 level AA. Accessibility is about whether real people can use something, not about passing a checker, so this page explains what I tested, what I fixed and what still falls short.

Conformance status

This site is partially conformant with WCAG 2.2 AA. My own code meets the standard as far as I have been able to test it. Some embedded third-party content does not, as listed under known issues below.

How I test it

  • Automated checks: axe-core with WCAG 2.2 AA and best-practice rules, on every page at desktop and mobile widths.
  • Keyboard only: every page, checking that focus order makes sense, focus is always visible and nothing traps the keyboard.
  • Reduced motion: with the system setting on, reveal animations, carousels and videos all stay still.
  • Code review: semantic HTML first, ARIA only where HTML has no equivalent.

What I found and fixed

An audit in September 2026 turned up the issues below. For each one: what it was, who it affected and how I fixed it.

Accessibility issues fixed in September 2026
IssueWho it affectedFixWCAG
Testimonial and review carousels scrolled on their own, foreverPeople with attention-related or vestibular conditions; screen reader users heard every card twice because of the looping duplicatesAdded a pause button, stopped auto-scroll when reduced motion is on, hid the duplicates from assistive tech and made the carousels keyboard scrollable2.2.2, 2.1.1
Product videos looped with no way to stop themAnyone who finds motion distracting, including people with ADHD or vestibular disordersAdded a pause and play control to every video, and videos no longer autoplay when reduced motion is on2.2.2
The mobile menu button did not say whether the menu was openScreen reader users on mobileThe button now exposes its open or closed state, and Escape closes the menu4.1.2
Small footer text and section labels were too low in contrastPeople with low vision, and anyone reading on a phone in bright lightDarkened those colours to reach at least 4.5:11.4.3
No way to jump past the navigationKeyboard and switch access users, who had to tab through every nav link on every pageAdded a Skip to content link as the first focusable element2.4.1
An embedded Figma prototype had no nameScreen reader users, who heard only “frame”Gave the embed a descriptive title4.1.2
Part of the About page sat outside any landmarkScreen reader users navigating by region, who could skip it without knowingMoved it inside the main landmarkBest practice

Known issues

  • Pitch presentations on Beyond the product: the embedded player uses ARIA attributes it is not allowed to and skips heading levels. It is third-party code I cannot change.
  • Figma prototype on the Better Proposals case study: the embed has limited keyboard and screen reader support. The text around it describes the same flow.

If either of these gets in your way, email me and I will send the content in another format.

Feedback

If something on this site does not work for you, I want to know. Email hi@giuliapizzi.com and tell me the page, what you were trying to do and the browser or assistive technology you use.