Accessibility statement
OUXP builds ouxp.com so you can use it with a keyboard, a screen reader or browser zoom, and with motion switched off. Our target is WCAG 2.2 Level AA. This page lists what is built in, what still falls short and how to tell us about a problem – an engineer replies within 30–60 minutes during business hours.
Draft – pending review before launch. This statement describes how the site works today; its wording may change after review.
Our standard: WCAG 2.2 Level AA
We design and build ouxp.com to the Web Content Accessibility Guidelines (WCAG) 2.2 at Level AA. WCAG 2.2 is the current version of the W3C standard, first published in October 2023 and updated in December 2024. It builds on WCAG 2.1 with new requirements, including keeping focused items from being hidden behind other content, minimum target sizes, alternatives to dragging, consistent help and accessible sign-in.
Status: self-assessed. Our engineers build every page to the standard and check it as it is built (see How we check the site), but no independent audit has been done yet, so we don’t claim the site fully conforms. The limitations we know about are listed below; if you find one we missed, tell us – an engineer reads every report.
There is no accessibility overlay or toolbar on this site. The work is done in the code itself rather than added on top, so it doesn’t compete with the screen reader, magnifier or settings you already use.
What is built in
These measures are in place on every page, grouped by what they help with. Under each group, the WCAG 2.2 criteria they address are listed for anyone checking our work.
Keyboard and focus
- “Skip to content” is the first thing the Tab key reaches on every page.
- The Services, Migrations and Resources menus open from buttons with Enter or Space and announce whether they are open. Escape closes them and returns focus to the button. Inside are ordinary links, not a menu widget you have to learn.
- Everything you can click, you can reach with the Tab key, in the order it appears on screen – in the desktop header and the phone menu alike.
- A 3-pixel focus ring shows where you are, at 7.2:1 contrast on white and 9.8:1 on dark sections.
- Jump links stop below the sticky header, so the heading you jumped to is never hidden behind it.
- Tabs work with the arrow keys, Home and End. Questions and answers use the browser’s own expandable sections, and wide tables sit in a frame you can focus and scroll with the arrow keys.
WCAG 2.2: 2.1.1 Keyboard 2.4.1 Bypass Blocks 2.4.3 Focus Order 2.4.7 Focus Visible 2.4.11 Focus Not Obscured (Minimum) 4.1.2 Name, Role, Value
Color and contrast
Contrast is calculated from the site’s color values, not judged by eye, and every pair in the table below clears the WCAG AA minimum: 4.5:1 for text, and 3:1 for the edges of form fields. Color is never the only signal: links in text are underlined, errors carry an icon and words, and emergency buttons carry a siren icon as well as their red color.
| Text or element | Ratio |
|---|---|
| Body text on white | 16.4:1 |
| Secondary text on white / on light gray panels | 7.8:1 / 6.9:1 |
| Links and focus ring on white | 7.2:1 |
| White button text on blue | 7.2:1 |
| Text on dark sections / secondary text | 16.4:1 / 8.1:1 |
| Links and focus ring on dark sections | 9.8:1 |
| Error messages on white / on dark | 6.5:1 / 8.0:1 |
| Emergency button, white on red | 5.6:1 |
| Form field edges on gray fill / on white Not text, so the AA minimum is 3:1 | 3.9:1 / 4.5:1 |
Calculated with the WCAG contrast formula and rounded down. Decorative graphics – check marks, bullets, rules and illustrations, including the blue accent on dark sections – carry no information of their own, so they are not listed. The blue accent is never used for text or links on dark sections.
WCAG 2.2: 1.4.1 Use of Color 1.4.3 Contrast (Minimum) 1.4.11 Non-text Contrast
Motion you can stop
The site uses three kinds of motion: content blocks fade in the first time they scroll into view, images that are still loading fade in when they arrive, and borders bend slightly toward a mouse pointer, with a slow wave crossing them every 24 seconds.
- If your device is set to reduce motion, none of it runs, on any page – there is nothing to switch on the site.
- Otherwise, a Pause motion button at the bottom of every page stops all of it on that page, and Resume motion starts it again.
- Nothing flashes, and no text waits for an animation: anything you move focus to appears at once.
- The field you are typing in never moves, and the moving borders stay off when your browser’s data saver is on.
Your device’s reduce-motion setting switches motion off here and on other sites and apps that respect it:
| Device | Setting |
|---|---|
| Windows 11 | Settings › Accessibility › Visual effects › Animation effects (off) |
| macOS | System Settings › Accessibility › Motion › Reduce motion (macOS 15 and earlier: Accessibility › Display › Reduce motion) |
| iPhone and iPad | Settings › Accessibility › Motion › Reduce Motion |
| Android | Settings › Accessibility › Color and motion › Remove animations (on Pixel; the path varies by phone maker) |
WCAG 2.2: 2.2.2 Pause, Stop, Hide 2.3.1 Three Flashes or Below Threshold also 2.3.3 Animation from Interactions (Level AAA)
Images, icons and text alternatives
- Illustrations that carry meaning have a full text description. Decorative artwork and icons are hidden from screen readers, so they add no noise.
- Every button or link shown as an icon has a name in words, visible or read out by screen readers – the round emergency button in the phone header, for example, is announced as “Emergency support”.
- Star ratings and scores are also written as text, for example “Rated 5 out of 5”.
- Client and platform names are written as text, never as logo images.
- There is no video, audio or PDF content on the site, so no captions or transcripts are needed today.
WCAG 2.2: 1.1.1 Non-text Content 1.3.1 Info and Relationships
Forms and error messages
The contact and migration assessment forms are built so mistakes are easy to find and fix:
- Every field has a visible label above it, and optional fields say “(optional)”.
- A missing or mistyped answer gets a message in words next to the field, which says how to fix it – for example “Enter an email address like [email protected].” The field is also marked as invalid for screen readers.
- A summary at the top lists every problem with a link straight to its field. Focus moves to that summary, and the result of sending is announced, so nobody has to hunt for it.
- If sending fails, everything you typed stays in the form.
- Our own pages and forms never ask you to sign in, solve a CAPTCHA or complete a puzzle. The one exception is outside our code: Cloudflare’s occasional security check, covered under known limitations.
WCAG 2.2: 1.3.1 Info and Relationships 3.3.1 Error Identification 3.3.2 Labels or Instructions 3.3.3 Error Suggestion 4.1.3 Status Messages
Structure, zoom and small screens
- Each page has one main heading, headings in order and the same landmarks – header, navigation, main content and footer – so screen reader users can move around quickly.
- Every page has its own title, and the page language is set to English, so screen readers use the right pronunciation.
- Layouts reflow to a single column on phones and at high browser zoom, tables fit the screen on phones, and text can be enlarged without being cut off.
- Buttons, menu items and footer links are at least 44 pixels high – well above the 24-pixel minimum WCAG 2.2 sets.
- Our email, phone number and hours sit in the same place in the footer of every page.
- Headings that look like capitals are ordinary sentence-case text, styled to display in capitals, so screen readers and translation tools are given normal words, not capitals.
WCAG 2.2: 1.3.1 Info and Relationships 1.4.4 Resize Text 1.4.10 Reflow 2.4.2 Page Titled 2.4.6 Headings and Labels 2.5.8 Target Size (Minimum) 3.1.1 Language of Page 3.2.6 Consistent Help
Known limitations
This is what we know doesn’t work as well as it should yet – and what to do in the meantime.
| Limitation | What to do in the meantime |
|---|---|
| No independent audit yet The site has been checked by our own engineers, not by an outside auditor or in testing with disabled users. Until it has, there may be problems we haven’t found. | If anything gets in your way, tell us – even if it isn’t listed here. |
| Not every screen reader tested We use standard HTML so assistive technology can interpret the pages, but we haven’t tested every page with every screen reader and browser combination. | If something is read out wrongly, tell us which screen reader and browser you use. |
| Pause motion lasts for one page The site’s own code keeps nothing in your browser except your cookie choice (see the cookie policy), so the pause isn’t remembered when you open another page, and the button sits at the bottom of the page. | To switch motion off everywhere and permanently, turn on your device’s reduce-motion setting – where to find it. |
| Some tables scroll sideways on tablets On phones, every table fits the screen: wide ones stack into one block per row, and short tables of figures, like the contrast table above, keep their columns. On a tablet, a phone turned sideways or a laptop with the browser zoomed in, the widest comparison and pricing tables can keep their columns so the figures stay comparable; they scroll inside their own frame with the first column kept in view. | Swipe inside the table, or Tab to it and use the arrow keys. A note above the table shows when there is more to see. |
| Large headings in capitals Some readers find long lines of capitals harder to read. The capitals are only styling. | Reader mode, and other tools that ignore page styles, show the headings in normal case. |
| Forms in preview The contact and migration assessment forms check your entries but are not connected yet, so nothing is sent. | Please email or call instead – the details are below. |
| Security checks Cloudflare, the network provider that protects the site, can show a short automated check before a page loads when traffic looks unusual. | If one stops you, email or call us and we will help directly. |
| Pages run by others Our profiles on the Shopify Partner Directory and Upwork, and client stores named in reviews, are outside our control. | If one of them gets in your way, ask us and we will send you the same information directly. |
How to report a problem
If anything on ouxp.com is hard to use, tell us – including problems not listed on this page. An engineer, not an automated system, reads every message.
- [email protected]
- Phone
- +1 (818) 651-3226
- Business hours
- Mon–Fri, 9 AM–9 PM ET (6 AM–6 PM PT)
- First response
- Within 30–60 minutes during business hours
Messages that arrive outside business hours are answered as soon as an engineer is available.
It helps to include:
- The page address.
- What you were trying to do, and what happened instead.
- Your device and browser, plus any assistive technology you use – a screen reader, magnifier or voice control, for example – with versions if you know them.
Please don’t send passwords or customer information. How we handle what you send is described in our privacy policy.
What happens next
- We confirm we have your report and ask anything we need to reproduce the problem.
- If the problem keeps you from information or from reaching us, our first reply gives you that information another way – by email, or by talking it through on the phone.
- We fix it, or tell you plainly why we can’t yet, and let you know when the change is live.
How we check the site
Accessibility is checked as each page is built, not once at the end.
- An automated check stops a page from being published unless it has exactly one main heading, a unique page title, an alt attribute on every image, no duplicated element ids and no broken links.
- Each page is reviewed in screenshots at desktop and phone widths with motion switched off, and must load without errors in the browser console.
- Menus, tabs, forms, tables, expandable answers and the color palette are built once in a shared design system – keyboard behavior documented, contrast calculated – so every page that uses them behaves the same way.
Technology and compatibility
The site is built with HTML, CSS, SVG, WAI-ARIA and a small amount of JavaScript.
- Native HTML first. Real links, buttons, headings, lists, tables, form controls and expandable sections. WAI-ARIA is added only where HTML has no equivalent – for example, to say whether a menu is open, to mark the selected tab and invalid form fields, and to announce form results and filter counts.
- Works without JavaScript. The menus fall back to plain links, every tab panel reads in sequence, expandable answers open with the browser’s own controls, and nothing is hidden waiting for a script.
- Current browsers. The site is built for current versions of Chrome, Edge, Firefox and Safari on desktop and mobile, and prints cleanly without the navigation.
What this statement covers
This statement covers the pages of ouxp.com. It does not cover sites run by others that we link to, or the Shopify stores we build for clients.
Accessibility on your own Shopify store
Each Shopify store needs its own accessibility work and its own statement, and the store owner is responsible for both. Where we can help:
- Shopify store audit – flags accessibility issues on your key templates as part of a wider review; $2,500 flat, written report in 5 business days. Issues are flagged, not certified against WCAG.
- Shopify theme customization – accessibility fixes, and accessibility checks before anything is published.
- Shopify Plus development – key customer journeys tested for accessibility before launch.
To talk it through, contact an engineer.