Accessibility
Built to be used. By everyone.
Precision means the thing works as specified, for the person using it. That applies to a rifle and it applies to a website. Here is where this one actually stands — measured, not asserted.
The standard we hold this site to
We target WCAG 2.1 Level AA — the Web Content Accessibility Guidelines published by the W3C. It is the benchmark the U.S. Department of Justice points to under the Americans with Disabilities Act, and it covers the WCAG 2.0 Level AA standard that Section 508 incorporates for federal procurement.
We will not tell you this site is “fully compliant.” No website of any size is finished, there is no such thing as an official ADA certification, and any vendor who promises you one is selling something. What we can tell you is exactly how we test, what that testing has changed, and what we know is still outstanding.
How we test
- Automated, on every change
- Every page is scanned with axe-core against the WCAG 2.1 A and AA rule set each time the site is rebuilt. A violation fails the build, so a regression cannot reach the live site unnoticed. The age verification screen is scanned separately, since it covers every page on a first visit.
- Manual, by hand
- Re-run in September 2026 on every page added since, and the repeatable parts — heading structure, reflow at 320px, a keyboard traversal asserting a visible focus indicator at every stop, and the menu and cart-drawer focus handling — now run as a script alongside the automated scan. Automated tools catch roughly a third of accessibility problems — the machine-checkable third. The rest was checked by hand: keyboard navigation through every interactive element, visible focus at every stop, heading structure, layout at 320px and at 200% zoom, and the wording of every image description.
What that testing changed
- The hero video can be stopped
- It used to play and loop with no way to turn it off. It now stays paused for anyone whose system asks for reduced motion, and there is a pause control on the video for everyone else.
- Error messages are readable
- Form validation and error text used a deep red that did not carry enough contrast against the dark background — the text you most need to read was the hardest to. It was re-coloured across every form on the site.
- Keyboard focus is always visible
- Two search and signup fields showed no focus indicator at all, and several others were too faint to see against a dark surface. Every interactive element now shows a clear focus ring.
- Headings follow a real structure
- Heading levels skipped a step in the footer, which made the page structure confusing to navigate by headings. Levels now run in order on every page.
- The mobile menu no longer traps or loses keyboard focus
- When the menu was closed its links were still in the Tab order, invisible off-screen, and closing it with Escape left focus on a hidden button. The closed menu is now inert and hidden from assistive technology, and closing it hands focus back to the menu button.
- Forms announce that they worked
- Five forms replaced themselves with a success message silently, so a screen reader user who had just pressed the button heard nothing. Every success message is now a live region that also takes focus when it appears.
- The app pages fit a 320-pixel screen
- The header on the ballistics-app pages was 21 pixels too wide for the narrowest supported viewport, forcing sideways scrolling. It wraps now.
What we know is still outstanding
Listing these is the whole point of a statement like this one. If you run into any of them, you are not imagining it.
- No screen reader pass yet
- The site has not yet been tested end to end with NVDA or VoiceOver. Automated tools cannot judge whether what a screen reader announces actually makes sense in sequence, and this is the single highest-value check still outstanding.
- The header status strip cannot be paused
- The small strip of text at the very top of the page cycles between two sets of information. It holds still if your system asks for reduced motion, but there is no button to stop it manually. The same information appears elsewhere on the page, so nothing is lost, but strictly it is a gap.
- Checkout is a separate system
- When you check out, you move to our store platform, which is separate software. Its entry screens pass the same automated scan, but the cart and checkout forms themselves will be audited when the store opens, and again on the live store. If you hit a barrier there, tell us and we will complete your order another way.
Tell us
Found a barrier? We want to know.
If any part of this site stopped you from doing what you came to do, email us. Tell us the page, what you were trying to do, and what happened — and if it helps, the browser or assistive technology you were using. None of that is required. A one-line “the shop filter doesn’t work with my keyboard” is plenty.
We aim to reply within two business days. If something is blocking a purchase or a build inquiry, say so and we will finish it with you directly — by email or on the phone — while we fix the site.
Report a barrierLast reviewed