Accessibility statement
Last reviewed 31 August 2026. This is a record of what we have actually tested and actually fixed — not a badge. Read the honest limits section; it is the part that matters.
What we are aiming at
We are working to WCAG 2.1 Level AA. That is the standard most accessibility law around the world points at, and it is the one we test against.
What we will not claim
We do not claim this site is "ADA compliant", "fully accessible", or that using it protects anyone from a lawsuit. Nobody can honestly claim that. Automated testing — including the tooling we use — only detects roughly a third to a half of WCAG issues. Anyone who tells you a scan makes a site compliant is selling you something.
What we can tell you is exactly what we tested, what we found, what we fixed, and what is still open. That record is below, and it is what a good-faith effort actually looks like.
How we tested
Automated checks against the rendered page, run over the public pages and the signed-in application: page language, page titles, heading order, image alternative text, link and button names, form field labeling, duplicate ids, zoom suppression, and color contrast measured with proper alpha compositing against the real resolved background.
Testing was carried out by the development team. This site has not yet had an independent accessibility audit and has not been tested with real assistive technology by disabled users. We are saying so rather than implying a level of assurance we do not have.
What we found and fixed
- Color contrast. The muted text color used across the site measured 4.14:1 against the background, below the 4.5:1 that Level AA requires for body text. It was changed to a lighter gray measuring about 5.3:1. This affected small print, field hints and secondary labels site-wide.
- Unlabelled form fields. Every form in the product was written with the label as a separate element beside the field rather than joined to it. Visually it read as a pair; to a screen reader it was a stray line of text followed by an unnamed box. Every label is now programmatically associated with its field, including the sign-in, password reset, install record and settings forms.
The result, measured
Before the work: 81 pieces of text on the public site failed the contrast minimum, and 6 form fields on the sign-up form plus 2 on the sign-in form had no programmatic label at all.
After: 0 and 0. Two items still flag in our tooling and were checked by hand rather than dismissed — text over gradient backgrounds, which automated contrast checks read against the wrong layer. Measured properly, the dark text on the gold band runs at about 10.8:1, well past the 4.5:1 required. We are recording that here so the number is auditable rather than quietly dropped.
What we checked and found already sound
- The page language is declared, and every page has a unique, meaningful title.
- Heading levels run in order with no skipped levels, and each page has one main heading.
- There is a skip link to the main content.
- Zoom and pinch-to-zoom are not suppressed — the viewport allows scaling.
- No duplicate element ids.
- Every link and button has an accessible name.
- The interface reflows to a 375-pixel-wide phone screen with no horizontal scrolling and nothing cut off at the edge.
- No images currently carry meaning without a text alternative.
Known limitations we are still working on
- Keyboard-only and screen-reader journeys have not been walked end to end. The building blocks test clean, but we have not sat down and completed a full install record using only a keyboard, or only a screen reader. Until we have, we cannot claim those journeys work.
- The signature pad requires drawing. Capturing a homeowner's signature on screen needs a pointer, finger or stylus. There is no keyboard equivalent. A record can still be completed and a certificate issued without a drawn signature — the certificate then states plainly that the name was entered by the installer rather than signed by the homeowner.
- Photograph alternative text is generic. Installation photographs are described by their slot — "Outdoor nameplate", "Condensate termination" — not by their contents.
- No independent audit yet. See above.
If something does not work for you
Tell us and we will fix it. Describe the page and what happened, and if you can, what you were using — screen reader, keyboard only, magnification, voice control.
We aim to reply within five working days. If an accessibility problem is stopping you completing work, say so and we will treat it as urgent. If you are not satisfied with our response, say that too — we would rather hear it than not.
How this is kept current
This statement is reviewed when the interface changes materially, and at least every six months. The date at the top is the last real review, not a date that ticks over on its own.