Salve accessibility conformance report

Accessibility Conformance Report, based on the VPAT® 2.5 WCAG edition format (VPAT is a registered service mark of the Information Technology Industry Council).

Product Salve, a theme for Shopify Online Store 2.0 (presets Salve, Gauge and Remedy)
Version 1.0.0 (release candidate, build of 25 September 2026)
Report date 25 September 2026
Vendor ISO Cloud Consulting LLC
Contact isocloudconsulting@outlook.com, or the theme support form
Standard Web Content Accessibility Guidelines (WCAG) 2.2, Level A and Level AA. WCAG 2.2 includes all WCAG 2.0 and 2.1 success criteria except 4.1.1 Parsing, which was removed.

Scope

This report covers the storefront pages that the Salve theme renders: home, collection, product, search, cart page and cart drawer, blog and article, pages (including the document library, safety notices and HSA/FSA templates), contact, password, 404 and gift card pages, plus the theme's dialogs, drawers and menus.

It does not cover:

  • Shopify-hosted pages and components: checkout, customer accounts and sign-in, and platform elements such as accelerated checkout buttons and the account button. Shopify publishes its own accessibility information for these.
  • Apps: app blocks, app embeds and scripts added by apps.
  • Merchant content: product images and their alt text, videos and captions, documents such as PDFs, rich text written in the admin, and colors or settings a merchant changes from the presets.

A store's accessibility depends on all of these. Using Salve does not by itself make a store conform to WCAG or comply with any law.

Evaluation methods

  • Automated testing: axe-core 4.10.2 with the WCAG 2.0, 2.1 and 2.2 A and AA rules and best practices, in Chrome, on the test store. Pages: home, collection, product (standard, device, sold out, with ratings), search, cart page, cart drawer open, document library, safety notices, HSA/FSA, About, blog, article and contact. Result: no violations in theme code. The only finding is the frame title of Shopify's preview bar, which only appears in theme preview.
  • Code checks on every change: Shopify Theme Check, a full Liquid and HTML parse of every template, JavaScript and CSS syntax checks, and a contrast calculation for every color pair in all 15 preset color schemes (180 pairs: text 4.5:1, borders and focus rings 3:1). All pass.
  • Keyboard testing in Chrome on macOS: skip link, header menus, search suggestions, cart drawer, variant options, gallery, quantity, filters and dialogs, checking focus order, visible focus, Esc and focus return.
  • Layout testing: 390 and 320 pixel widths, browser zoom, the theme's largest text size, and the WCAG 1.4.12 text spacing values.
  • No-JavaScript testing: every page type rendered with scripts disabled, checking that navigation, search, filters, product options, add to cart and the cart page still work.

Not yet done: testing with screen readers (VoiceOver on macOS and iOS, NVDA on Windows, TalkBack on Android) and on physical mobile devices. The remarks below say where a result depends on that testing. This report will be updated when it is complete.

Terms

  • Supports: the functionality has at least one method that meets the criterion without known defects.
  • Partially Supports: some functionality does not meet the criterion.
  • Does Not Support: most functionality does not meet the criterion.
  • Not Applicable: the criterion is not relevant to the theme.

Table 1: WCAG 2.2 Level A

Criteria Conformance level Remarks and explanations
1.1.1 Non-text Content Supports Product and content images use the alt text entered in Shopify. Decorative images have empty alt text. Icons are hidden from assistive technology, and icon-only buttons have text labels. Star ratings have a text equivalent. Merchants are responsible for writing alt text.
1.2.1 Audio-only and Video-only (Prerecorded) Not Applicable The theme contains no prerecorded media. Merchants who add video are responsible for alternatives.
1.2.2 Captions (Prerecorded) Not Applicable The theme contains no prerecorded media. Video players support captions provided with Shopify-hosted, YouTube and Vimeo videos.
1.2.3 Audio Description or Media Alternative (Prerecorded) Not Applicable The theme contains no prerecorded media.
1.3.1 Info and Relationships Supports Landmarks, headings in order (heading levels adjust when a section heading is hidden), lists, data tables with captions and header cells, fieldsets and legends for product options, and labels for every form field.
1.3.2 Meaningful Sequence Supports Reading order follows the visual order at all widths.
1.3.3 Sensory Characteristics Supports Instructions don't rely on shape, color, size, position or sound.
1.4.1 Use of Color Supports Sale prices have a "Sale" label and a crossed-out regular price. Unavailable options are crossed out and labeled. Errors use text. A theme setting underlines all links.
1.4.2 Audio Control Supports Background (hero) videos are muted and have a pause button. Product videos use player controls, and embedded videos load only when the shopper presses play.
2.1.1 Keyboard Supports All functionality works with a keyboard: menus, search suggestions, dialogs and drawers, product options, the media gallery, quantity, filters, comparison, quick add and the supply planner.
2.1.2 No Keyboard Trap Supports Dialogs keep focus inside while open, as intended for modal dialogs, and close with Esc or the Close button. Focus then returns to the control that opened them.
2.1.4 Character Key Shortcuts Supports The theme defines no single-character shortcuts.
2.2.1 Timing Adjustable Supports The theme sets no time limits. The delivery cut-off countdown is information only.
2.2.2 Pause, Stop, Hide Supports Nothing moves automatically for more than 5 seconds except background videos, which have a pause button and don't play when the device asks for reduced motion. Announcements change only when the shopper presses Previous or Next.
2.3.1 Three Flashes or Below Threshold Supports The theme contains no flashing content.
2.4.1 Bypass Blocks Supports A "Skip to content" link is the first focusable element. Pages use header, navigation, main and footer landmarks.
2.4.2 Page Titled Supports Each page title combines the page name and the store name. Merchants can edit titles in Shopify.
2.4.3 Focus Order Supports Focus follows the visual order. Opening a dialog moves focus into it, and closing it returns focus.
2.4.4 Link Purpose (In Context) Supports Link text describes the destination. Repeated controls such as "Add to cart" and "Remove" include the product name in their accessible name.
2.5.1 Pointer Gestures Supports Swipeable galleries and carousels also have buttons and scroll with a single pointer. No multipoint or path-based gestures are needed.
2.5.2 Pointer Cancellation Supports Controls act on the up event (standard click).
2.5.3 Label in Name Supports Accessible names contain the visible label, for example "Remove" becomes "Remove Island Dressing".
2.5.4 Motion Actuation Not Applicable No functionality uses device motion.
3.1.1 Language of Page Supports The page language follows the shopper's selected language. The theme includes English, French, German, Spanish and Italian.
3.2.1 On Focus Supports Focus never changes the context.
3.2.2 On Input Partially Supports Country and language selectors change only when the shopper presses Update. Filters, sorting and product options update content on the same page and announce the result. Exception: in a combined listing (products grouped by a Shopify Plus feature), choosing an option that belongs to another product opens that product's page. Option buttons tell screen reader users this, but the dropdown option style does not yet.
3.2.6 Consistent Help Supports Help links in the header and footer menus appear in the same place on every page. Their content depends on the merchant's menus.
3.3.1 Error Identification Supports Form errors are shown in text next to the form, linked to the field and announced. Cart errors use Shopify's message, for example when an item has sold out.
3.3.2 Labels or Instructions Supports Every field has a visible label or a label from its context (for example the search field), and quantity rules are written next to quantity fields.
3.3.7 Redundant Entry Supports The theme doesn't ask for the same information twice. The shipping estimator uses the signed-in customer's address.
4.1.2 Name, Role, Value Supports Native elements are used where possible. Custom controls expose state with aria-expanded, aria-pressed, aria-current and aria-activedescendant. To be confirmed with screen reader testing.

Table 2: WCAG 2.2 Level AA

Criteria Conformance level Remarks and explanations
1.2.4 Captions (Live) Not Applicable The theme has no live media.
1.2.5 Audio Description (Prerecorded) Not Applicable The theme contains no prerecorded media.
1.3.4 Orientation Supports Pages work in portrait and landscape.
1.3.5 Identify Input Purpose Supports Fields that collect personal information have autocomplete values: name, email, phone, country, region and postal code.
1.4.3 Contrast (Minimum) Supports Every text color in all preset color schemes meets 4.5:1 against its backgrounds (checked automatically on every change). Text over images uses an overlay that merchants set. Colors a merchant changes are their responsibility.
1.4.4 Resize Text Supports Content works at 200% zoom and at the theme's text sizes (112.5% and 125%).
1.4.5 Images of Text Supports The theme uses real text. Product packaging photos are essential images of the product.
1.4.10 Reflow Supports No horizontal scrolling at 320 CSS pixels. Data tables (comparison, quick order, specifications) scroll inside a labeled region, which the criterion allows.
1.4.11 Non-text Contrast Supports Field borders and focus indicators meet 3:1 in all preset color schemes.
1.4.12 Text Spacing Supports With the WCAG text spacing values applied, no text is clipped or overlaps.
1.4.13 Content on Hover or Focus Supports Menus that open on hover stay open while hovered and close with Esc. Tooltips open on click, not hover.
2.4.5 Multiple Ways Supports Menus, search with suggestions, collections and breadcrumbs.
2.4.6 Headings and Labels Supports Headings and labels describe their content.
2.4.7 Focus Visible Supports A 2-pixel focus outline with an offset appears on every focusable element in every color scheme.
2.4.11 Focus Not Obscured (Minimum) Supports Scroll padding keeps focused elements clear of the sticky header, the sticky purchase bar and the comparison tray.
2.5.7 Dragging Movements Supports No function needs dragging. Price filters use number fields.
2.5.8 Target Size (Minimum) Supports Buttons, swatches, quantity controls and icon links are at least 44 by 44 pixels, and breadcrumb links at least 24 pixels high. Links inside text are exempt.
3.1.2 Language of Parts Supports Language names in the language selector are marked with their own language. Other language changes are in merchant content.
3.2.3 Consistent Navigation Supports Header, menus and footer are the same on every page.
3.2.4 Consistent Identification Supports Controls with the same function have the same names and icons throughout.
3.3.3 Error Suggestion Supports Error messages explain what to fix, for example a valid postal code or a quantity rule.
3.3.4 Error Prevention (Legal, Financial, Data) Supports Orders are placed in Shopify checkout. Shoppers can review and change the cart before checkout.
3.3.8 Accessible Authentication (Minimum) Not Applicable Sign-in is handled by Shopify customer accounts, not the theme. The storefront password page has a labeled field that allows paste and password managers.
4.1.3 Status Messages Supports Cart updates, add to cart, filter result counts, search results, price changes and form confirmations are announced through live regions without moving focus. To be confirmed with screen reader testing.

Beyond WCAG

  • Text size control (default, 112.5% and 125%) and a high-contrast display option.
  • Reduced motion: animations turn off when the device asks for it, or for everyone with a theme setting.
  • Works without JavaScript: navigation, search, filters, product options, add to cart and the cart page work as plain links and forms.
  • Safety information is never hidden behind a control when scripts can't run.

Legal disclaimer

This report describes the Salve theme as tested on the date above. It is not a certification or legal advice. Accessibility of a store depends on its content, settings, apps and Shopify components, which are outside the theme. ISO Cloud Consulting LLC updates this report when the theme changes in a way that affects it.