Accessibility
Built to work, not just to look built
This site targets WCAG 2.2 Level AA. More usefully: every link works with JavaScript disabled, every interactive element is reachable by keyboard, and nothing moves if you have asked your system not to animate things.
Request pricing
Everything marked with a star is required. The rest helps us quote faster.
What we have done
It works without JavaScript
Every page is server-rendered. Every link is a real anchor. The slide-out main menu is built on the native <details> element, so it opens, closes and nests without a line of script — and the Menu button doubles as the Close button so the drawer can always be dismissed. The quote button that follows you down the page is a real link to /quote; JavaScript upgrades it to a dialog rather than creating it.
Forms post to a real endpoint with a real method and action. With JavaScript off, a valid submission redirects to a confirmation page and an invalid one redirects to a page listing exactly what needs correcting.
Keyboard and focus
- A “Skip to content” link is the first focusable element on every page.
- Focus indicators are a 3px outline with an offset, never removed.
- The quote dialog traps focus while open, returns focus to the button that opened it, and closes on Escape.
- Opening the dialog locks page scrolling so the background does not move underneath it.
- Accordions and disclosure widgets use native elements with native keyboard behaviour.
Motion
All reveal animations, the marquee ribbon and the floating hero artwork respect prefers-reduced-motion. If your system asks for reduced motion, content appears immediately and nothing moves. Reveal animations are also only enabled once JavaScript has confirmed it can turn them off again, so content is never hidden behind an animation that will not run.
Colour and contrast
Body text, headings and interactive elements meet or exceed WCAG AA contrast ratios in both the light and dark sections of the site. Colour is never the only way information is conveyed: form errors are text, required fields are marked with a symbol and a label, and status messages are announced to assistive technology.
Structure and semantics
- One
<h1>per page, with a logical heading order below it. - Landmarks:
header,nav,main,footer, with accessible names where there is more than one. - Data tables use
<th>withscope, and captions where the data needs context. - Every form field has a visible, programmatically associated label — no placeholder-only fields.
- Error messages are linked to their field with
aria-describedbyand the field is markedaria-invalid. - Decorative graphics are hidden from assistive technology; meaningful ones have text alternatives.
Zoom and responsive behaviour
The layout reflows to 320px width and supports 200% zoom without horizontal scrolling of the page. Wide content — data tables, the size chart, the glossary — scrolls inside its own container rather than forcing the whole page sideways. Text is sized in relative units and respects your browser's font size setting.
What we know is imperfect
Stating these is more useful than claiming full conformance.
- Wide data tables are inherently awkward on a small screen. They scroll horizontally within their container, which is the best available option but is not as good as a table that fits.
- The size matcher and glossary filters require JavaScript to filter. Without it the full dataset is still rendered and readable — nothing is hidden — but it cannot be narrowed.
- The ReLoop Ledger and Pallet Passport are interactive tools and need JavaScript. The underlying figures they use are published in text on the methodology page.
- Our typeface is a serif with a soft, slightly unconventional design. We believe it reads well, but if it does not work for you, the site respects browser font overrides and reader modes.
Tell us
If any part of this site stops you doing something, email hello@repalletco.com with “accessibility” in the subject. Tell us the page, what you were trying to do, and what you are using — browser, screen reader, anything relevant. We aim to acknowledge within one business day and to fix genuine barriers promptly rather than adding them to a backlog.
If it is easier, we will also take your enquiry any way you can send it and do the form-filling at our end. Getting you a quote matters more than which channel it arrived through.
Standards
This statement covers repalletco.com and was last reviewed on 12 January 2026. We assess against WCAG 2.2 Level AA using a combination of automated tooling and manual keyboard and screen-reader testing. We are not claiming a formal third-party audit, and we would rather say so than imply one.
How to test these claims yourself
An accessibility statement is only worth anything if it can be checked. Here is how to check ours, in about five minutes.
| Claim | How to test it |
|---|---|
| Works without JavaScript | Disable JS in your browser settings and reload. Menu, links and forms all work |
| Keyboard navigable | Tab from the top. First stop is 'Skip to content'; focus is always visible |
| Menu works without a mouse | Tab to MENU, press Enter, tab through, press Escape |
| Dialog traps focus | Open the quote button, tab repeatedly — focus stays inside |
| Scroll locks behind the dialog | Open it and try to scroll the page behind |
| Respects reduced motion | Enable reduced motion in your OS; nothing animates |
| Errors are text, not colour | Submit the form empty; read the summary block |
| Reflows at 320px | Narrow the window; no horizontal page scroll |
| Works at 200% zoom | Ctrl/Cmd + until 200%; layout reflows rather than clipping |
| Tables scroll independently | Narrow the window on any size chart; the table scrolls, the page does not |
We would genuinely like to hear about it
Accessibility reports are the one kind of email we prioritise above quotes.