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 checks
- GitHub checks on pull requests and pushes to main scan the generated pages with axe-core against the WCAG 2.1 A and AA rule set. Detected violations fail the check. The age verification screen is scanned separately on pages that use it. These checks catch machine-detectable issues; passing them does not establish that every visitor can use the site.
- Keyboard, layout, and manual review
- Additional scripts check heading structure, reflow at 320px, visible keyboard focus, focus handling in the menu and cart drawer, the edges of form fields, and that nothing keeps moving without a way to stop it. The September 2026 manual review also covered keyboard navigation, layout at 200% zoom, and image descriptions. The November 2026 review added a measurement of text over photographs and the hero video, and walked every form, the shop, and the cart by keyboard. Automated checks cannot judge every barrier. An end-to-end screen reader review is still outstanding.
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.
- Forms say what is missing
- Pressing Next on the build inquiry with an answer missing only scrolled the page, and the message on the choice buttons was invisible to screen readers. Each missing answer now gets a written message, and focus moves to the first one.
- Nothing moves without a way to stop it
- The status strip at the top of the page now has a pause button, and the small pulsing and scrolling cues stop on their own within five seconds.
- The home page headline reads on a phone
- On a phone the headline sat over the brightest part of the sunset photograph, and parts of it fell well below the contrast standard. The photograph is now darkened behind the text.
- Shop and cart changes are announced
- Filtering or searching the shop, and changing or removing a cart item, used to happen silently. Each now announces the result, and removing an item no longer drops keyboard focus.
What we know is still outstanding
- 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.
- Checkout is a separate system
- When you check out, you move to our store platform, which is separate software. Its cart, checkout, and account pages pass the same automated scan, including a checkout with an item in the cart. Store software can change underneath us, so we re-check after every change to checkout. 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