YMI Jeans · WCAG 2.2 A and AA · 2 October 2026

Accessibility report after fixes

Theme issues from the before audit are fixed in source. This is a repair record, not a certification, and not a claim of full ADA compliance.

Impulse 8.2.1 47 fixed 6 partial 1 left unchanged 4 of 4 critical closed
47Fixed
6Partial
1Unchanged
54Before total

What this pass closed

  • Collection sort works with the keyboard.
  • Tab stays inside cart, menu, search, quick shop, and other trapped layers. Closing a modal returns focus to the control that opened it.
  • Homepage hero, mobile logo, and product photos have names.
  • Dialogs, drawers, and search identify themselves to assistive technology.
  • Only the visible brand header keeps the landmark ids.
  • Footer, chips, sort label, badge, placeholders, and slider text meet approximate 4.5:1 on white.
  • Filter, tooltip, reminder, hero video, and cart recommendation controls are real buttons.
  • Autoplay slideshows, the announcement bar, and promo sliders can be paused.

Not claimed

Automated source review cannot prove a live screen-reader pass, checkout, or third-party widgets. Klaviyo, Syndeca, Kiwi, Syte, Klarna, TrueVault, tag manager, and chat were not patched.

The earlier WAVE score of 8.2 described a connection-verification page, not the storefront. It is not a before or after baseline.

Visual changes

Layout, type, and component structure stay as they were. These colors and controls changed because contrast and pause rules require it.

Footer, chips, sort, fields
#595959 on white, about 7:1. Replaces #a3a2a2, #b8b8b8, #8a8680, and white-on-white.
Camera “New” badge
Text #1c1915 on #f3e7b0. Replaces gold on translucent gold.

Other visible additions

  • Pause buttons on slideshow, announcement bar, and promo slider.
  • Cart recommendations say “Show recommendations” and “Hide recommendations”.
  • Reset-password labels are visible. Contact form explains the asterisk.
  • Collection title on small screens stays visually hidden and remains in the accessibility tree.
  • Brand names YMI and ROYALTY look the same and are no longer extra page headings.

Every issue

54 shown
IDWasStatusResult
A11Y-001CriticalFixedSort options are buttons. Arrow keys, Home, End, and Escape work.
A11Y-002CriticalFixedTab from the last control in a dialog wraps to the first.
A11Y-003CriticalFixedClosing a modal returns focus to the opener.
A11Y-004CriticalFixedHomepage hero link and visible image have a name.
A11Y-005SeriousFixedCart, menu, search, quick shop, and popups are named dialogs.
A11Y-006SeriousFixedOnly the visible header keeps SiteHeader, NavDrawer, and CartDrawer ids.
A11Y-007SeriousFixedBrand switcher is no longer extra level-1 headings.
A11Y-008SeriousFixedCollection heading stays available on small screens.
A11Y-009SeriousFixedMobile logo uses the same alt as desktop.
A11Y-010SeriousFixedProduct photos fall back to the product title.
A11Y-011SeriousFixedNewsletter submit keeps an accessible name.
A11Y-012SeriousFixedQuick-shop close button is named.
A11Y-013SeriousFixedFilter checkbox ids are unique and labels match them.
A11Y-014SeriousFixedPrice slider handles are named minimum and maximum.
A11Y-015SeriousFixedView results and Close are buttons. Clear links no longer share one id.
A11Y-016SeriousFixedSwatch groups have names. Radios are scoped per product.
A11Y-017SeriousFixedTooltips open from a button and return focus on close.
A11Y-018SeriousFixedNewsletter reminder is a button.
A11Y-019SeriousFixedCart recommendations toggle exposes expanded state.
A11Y-020SeriousFixedHero play and pause are named buttons and control the video.
A11Y-021SeriousFixedPromo slider can be paused.
A11Y-022SeriousFixedDesktop menus set aria-expanded on the link.
A11Y-023SeriousFixedFooter text is #595959 on white.
A11Y-024SeriousFixedFooter email field is no longer white on white.
A11Y-025SeriousFixedFilter chips are #595959.
A11Y-026SeriousPartialAddress forms show errors. Fields are not individually marked invalid.
A11Y-027ModerateFixedSlideshow and announcement pause buttons are visible during autoplay.
A11Y-028ModeratePartialReset password shows labels. Newsletter and search stay programmatic so the layout does not change.
A11Y-029ModeratePartialAccount, contact, and comment errors are tied to fields. Not every input is.
A11Y-030ModeratePartialRequired is set in markup. Visible “required” text is only on the contact asterisk note.
A11Y-031ModeratePartialAutocomplete is on name, email, password, phone, and address lines. Country and province are not.
A11Y-032ModerateFixedMy Size uses its visible label.
A11Y-033ModerateFixedMegamenu titles without a URL are not empty links.
A11Y-034ModerateFixedFAQ tabs expose expanded state on first paint.
A11Y-035ModerateFixedSort prefix meets contrast.
A11Y-036ModerateFixedCamera badge uses dark text on solid gold.
A11Y-037ModerateFixedPlaceholder opacity raised to 0.85.
A11Y-038ModerateFixedCart promo has a name and is a link only when it has a destination.
A11Y-039ModerateFixedLogo and press links fall back to a name.
A11Y-040ModerateFixedZoom control says Zoom image.
A11Y-041ModerateFixedPages can show an h1 from the title setting alone.
A11Y-042ModerateFixedBuy now is type button.
A11Y-043ModerateFixedFilter groups output aria-expanded.
A11Y-044ModerateFixedSlider ticks and gallery error text are #595959.
A11Y-045MinorFixedThumbnail previous and next have aria-label.
A11Y-046MinorFixedMore colors is a named button.
A11Y-047MinorFixedReel control starts as Pause video.
A11Y-048MinorFixedYMIG search close name has no extra quotes.
A11Y-049MinorFixedDrawer items use aria-expanded.
A11Y-050MinorUnchangedCollections list still redirects to shop-all. Left as merchandising. Not an AA failure.
A11Y-051MinorPartialQuantity uses the translation. Some labels remain English.
A11Y-052MinorFixedContact form explains the asterisk.
A11Y-053MinorFixedFilter labels no longer print a stray attribute.
A11Y-054MinorFixedCurrent page and current collection crumb are marked.

Still open

Theme

  • Address errors are not attached to each field.
  • Newsletter and search still use a placeholder with a programmatic name.
  • Country and province have no autocomplete token.
  • Some required fields do not say “required” in the visible label.
  • A few strings are still hardcoded English.
  • The collections redirect remains.

Outside this theme

  • Checkout and Shop Pay buttons.
  • Klaviyo, Syndeca, Kiwi, Syte, Klarna, TrueVault, Google Tag Manager, and chat.
  • Live screen-reader and keyboard confirmation on the published store.

Testing

JavaScript syntax checks passed for theme.js, theme.js.liquid (Liquid stripped for the parser), custom.js, drawer-logic.js, header-switch.js, and collection-ux.js.

The storefront was not running in this workspace, so cart, menu, search, sort, and filters were not clicked through in a browser. Confirm those paths on a preview theme before publishing.

Written detail is in ACCESSIBILITY-AUDIT-AFTER.md. The before audit is ACCESSIBILITY-AUDIT-BEFORE.md.