Public accessibility assessment

Accessibility issues detected on joylux.com

Evolize inspected 5 public pages on joylux.com and detected 62 automatically identifiable accessibility findings.

62Findings detected
10WCAG criteria affected
5Pages inspected
8 Sep 2026Assessment date

Highest detected severity: Critical · 33 high-priority findings · 100% inspected-page coverage

Most widespread issueButtons have no accessible nameDetected on 5 inspected pages
Most affected page/42 findings detected
Most represented WCAG criterionWCAG 1.4.3 — Contrast (Minimum)26 detected findings

Is joylux.com your website?

Keep this assessment current and get notified when new accessibility issues are detected.

https://

Not your website? Scan your own site →

01 · Accessibility summary

Evolize inspected 5 public pages on joylux.com and detected 62 accessibility findings. The most widespread issue was "Buttons have no accessible name", detected on 5 inspected pages. The most affected inspected page was "/", where 42 findings were detected. The assessment identified findings mapped to 10 WCAG success criterions. The sections below prioritize the broadest issues and provide technical evidence for each detected finding.

02 · Start here

These findings combine the highest severity and broadest reach detected during this assessment.

  1. Critical

    Buttons have no accessible name

    WCAG 4.1.2 (A) · 5 inspected pages · 5 instances
    Why this matters

    Interactive buttons expose no accessible name, so their purpose cannot be determined by assistive technology.

    Recommended action

    Give it an accessible name that describes the action it performs: provide visible text when a visible label is appropriate, an aria-label for an icon-only control (for example aria-label="Dismiss notification"), or aria-labelledby when an existing visible label already describes it. Avoid vague names such as "Button", "Action", or the component's internal name.

    View technical evidence →
  2. Critical

    Dropdown menus have no accessible name

    WCAG 4.1.2 (A) · 5 inspected pages · 5 instances
    Why this matters

    Select menus expose no programmatic name, so assistive technology cannot announce what the choice is for.

    Recommended action

    Associate a <label> with each <select>, or add an aria-label / aria-labelledby that names its purpose.

    View technical evidence →
  3. Critical

    Links lack accessible text

    WCAG 2.4.4 (A) · 1 inspected page · 1 instance
    Why this matters

    Links expose no accessible name, so screen-reader users cannot determine their destination.

    Recommended action

    This link exposes no accessible text. Add visible text that identifies its destination, or remove the link if it serves no purpose. For an icon-only link, provide an aria-label describing where it goes. The link points to /products/joylux-membhership-program-2025.

    View technical evidence →
  4. High

    Text has insufficient colour contrast

    WCAG 1.4.3 (AA) · 5 inspected pages · 64 instances
    Why this matters

    Text and background colours do not meet the minimum contrast ratio, reducing legibility.

    Recommended action

    Increase the contrast ratio to at least 4.5:1 for normal text and 3:1 for large text.

    View technical evidence →
  5. High

    Text has insufficient colour contrast

    WCAG 1.4.3 (AA) · 5 inspected pages · 55 instances
    Why this matters

    Text and background colours do not meet the minimum contrast ratio, reducing legibility.

    Recommended action

    Increase the contrast ratio to at least 4.5:1 for normal text and 3:1 for large text.

    View technical evidence →

03 · WCAG criteria affected

CriterionNameLevelFindingsPagesReach
1.4.3Contrast (Minimum)AA2655 / 5
1.1.1Non-text ContentA933 / 5
4.1.2Name, Role, ValueA855 / 5
1.3.1Info and RelationshipsA755 / 5
2.1.1KeyboardA755 / 5
2.4.3Focus OrderA355 / 5
1.4.1Use of ColorA111 / 5
2.2.2Pause, Stop, HideA122 / 5
2.4.4Link Purpose (In Context)A111 / 5
3.3.2Labels or InstructionsA155 / 5

Absence of a criterion here does not indicate conformance with it — only that no automatically detectable issue was found for it.

Continuous monitoring

A scan shows today's exposure. Monitoring shows what changes next.

Evolize continuously reassesses public website pages, detects newly introduced or recurring accessibility findings, and tracks remediation over time.

04 · All detected findings

Critical

Buttons have no accessible name

WCAG 4.1.2 (A)5 instances5 inspected pages

Interactive buttons expose no accessible name, so their purpose cannot be determined by assistive technology.

Why it matters

Interactive buttons expose no accessible name, so their purpose cannot be determined by assistive technology.

Recommended correction

Give it an accessible name that describes the action it performs: provide visible text when a visible label is appropriate, an aria-label for an icon-only control (for example aria-label="Dismiss notification"), or aria-labelledby when an existing visible label already describes it. Avoid vague names such as "Button", "Action", or the component's internal name.

View 5 affected elements
Component · Ref JVCX8E
Affected pagehttps://joylux.com/products/vfit
Element.flag-select__display
Markup
<button type="button" class="flag-select__display" aria-haspopup="listbox">
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Critical

Dropdown menus have no accessible name

WCAG 4.1.2 (A)5 instances5 inspected pages

Select menus expose no programmatic name, so assistive technology cannot announce what the choice is for.

Why it matters

Select menus expose no programmatic name, so assistive technology cannot announce what the choice is for.

Recommended correction

Associate a <label> with each <select>, or add an aria-label / aria-labelledby that names its purpose.

View 5 affected elements
Component · Ref YI71LS
Affected pagehttps://joylux.com/products/vfit
Element#redirectSelect
Accessible nameUS CA
Markup
<select id="redirectSelect" class="flag-select__native" onchange="if (this.value) { window.location = this.value; }">
    <option value="https://joylux.com/">US</option>
    <option value="https://ca.joylux.com/">
      CA
    </option>
  </select>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
High

Text has insufficient colour contrast

WCAG 1.4.3 (AA)249 instances5 inspected pages

Text and background colours do not meet the minimum contrast ratio, reducing legibility.

Why it matters

Text and background colours do not meet the minimum contrast ratio, reducing legibility.

Recommended correction

Increase the contrast ratio to at least 4.5:1 for normal text and 3:1 for large text.

View 249 affected elements
Component · Ref SL42NH
Affected pagehttps://joylux.com/products/vfit
Elementli:nth-child(3) > .list-menu__item.list-menu__item--link[href$="warranty"]
Accessible nameWarranty Terms
Markup
<a href="/pages/warranty" class="link link--text list-menu__item list-menu__item--link">
                              Warranty Terms
                            </a>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref DB75TV
Affected pagehttps://joylux.com/cart
Element.footer-block__newsletter > p
Accessible nameReady to regain your confidence? Receive exclusive offers, education, and be the first to know about new products.
Markup
<p>Ready to regain your confidence? Receive exclusive offers, education, and be the first to know about new products.</p>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref 2N5U1M
Affected pagehttps://joylux.com/pages/deferred-payment-plans
Element.col6:nth-child(2)
Accessible name© 2026 Joylux, Inc. All rights reserved.
Markup
<div class="col6">
  © 2026&nbsp;Joylux, Inc.&nbsp;All rights reserved.
</div>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref SYFS6Z
Affected pagehttps://joylux.com/pages/deferred-payment-plans
Elementa[href$="halle-berry-taboo"]
Accessible nameLet’s Talk About It
Markup
<a href="/pages/halle-berry-taboo" class="link link--text list-menu__item list-menu__item--link">
                              Let’s Talk About It
                            </a>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref QJIELU
Affected pagehttps://joylux.com/products/vfit
Elementfooter > h2
Accessible nameJoylux: Delivering the most powerful home-use red light for women
Markup
<h2 style="text-align: center; padding-bottom: 12px;">Joylux: Delivering the most powerful home-use red light for women</h2>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref 570LOB
Affected pagehttps://joylux.com/
Element.footer-block__newsletter > .footer-block__heading.inline-richtext
Accessible nameSubscribe to get 10% off
Markup
<h2 class="footer-block__heading inline-richtext">Subscribe to  get 10% off</h2>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref BSLFTC
Affected pagehttps://joylux.com/pages/deferred-payment-plans
Element.list-menu__item.list-menu__item--link[href$="affiliate-program"]
Accessible nameAffiliate program
Markup
<a href="/pages/affiliate-program" class="link link--text list-menu__item list-menu__item--link">
                              Affiliate program
                            </a>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref EMYICX
Affected pagehttps://joylux.com/
Element.disclaimer > h2
Accessible nameDisclaimer
Markup
<h2 class="h5">Disclaimer</h2>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref N0MXPE
Affected pagehttps://joylux.com/products/vfit
Element.disclaimer > p
Accessible nameJoylux sells a range of products, including FDA-cleared medical devices, FDA-listed medical devices that are exempt from premarket review, and general wellness products. Statements regarding general wellness products are not intended to diagnose, treat, cure, or prevent any disease. Content on this site is not a substitute for professional medical or healthcare advice, diagnosis, treatment, dietary, or safety advice, and may not be used for such purposes. Always seek the advice of your physician or other qualified expert with any questions you may have regarding a medical question, condition, or safety concern. Reliance on information presented on this site is at your own risk. This site contains the opinions and views of others and does not represent the opinions and views of Joylux Inc. Given the interactive nature of this site, we cannot endorse, guarantee, or be responsible for the accuracy or efficacy of any content generated by our users or third parties. This site may reference clinical or consumer studies conducted by or on behalf of Joylux. While we disclose study results accurately, individual results may vary, and the results described reflect the conditions and participants of those specific studies.
Markup
<p>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref 35M2RP
Affected pagehttps://joylux.com/pages/deferred-payment-plans
Element.footer-block--menu.footer-block.grid__item:nth-child(3) > .footer-block__details-content.list-unstyled > li:nth-child(1) > .list-menu__item.list-menu__item--link.link--text
Accessible nameTechnology
Markup
<a href="https://joylux.com/pages/red-light-technology" class="link link--text list-menu__item list-menu__item--link">
                              Technology
                            </a>
Affected pages/pages/contact /pages/deferred-payment-plans /cart
Component · Ref A2RGG2
Affected pagehttps://joylux.com/pages/contact
Element.footer-block--menu.footer-block.grid__item:nth-child(3) > .footer-block__heading.inline-richtext
Accessible nameJoylux, Inc
Markup
<h2 class="footer-block__heading inline-richtext">Joylux, Inc</h2>
Affected pages/pages/contact /pages/deferred-payment-plans /cart
Component · Ref 14397R
Affected pagehttps://joylux.com/pages/deferred-payment-plans
Element.shopify-pc__banner__body > p
Accessible nameA more personal journey starts here. (Yum, cookies! 🍪) We, and third parties, use cookies and similar tools to personalize your experience, improve our site, and show you relevant wellness content. You’re in control—choose what works for you. By clicking "Accept All” or otherwise allow personalized marketing, you authorize Joylux to use and disclose your data as described in our Consumer Health Data Authorization and, for those located in California, as described in our California Authorization. Privacy Notice
Markup
<p>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref 5UZWIO
Affected pagehttps://joylux.com/
Element#shopify-pc__banner__body-policy-link
Accessible namePrivacy Notice
Markup
<a id="shopify-pc__banner__body-policy-link" href="https://joylux.com/policies/privacy-policy" target="_blank" rel="noopener noreferrer">Privacy Notice</a>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref IB8241
Affected pagehttps://joylux.com/products/vfit
Element.footer-block--menu.footer-block[data-cascade=""]:nth-child(4) > .footer-block__details-content.list-unstyled > li:nth-child(2) > .list-menu__item.list-menu__item--link[href$="care"]
Accessible namevFit Support
Markup
<a href="/pages/care" class="link link--text list-menu__item list-menu__item--link">
                              vFit Support
                            </a>
Affected pages/ /products/vfit-gold
Component · Ref 2WBJZ2
Affected pagehttps://joylux.com/
Element.footer-block--menu.footer-block.scroll-trigger--offscreen:nth-child(3) > .footer-block__heading.inline-richtext
Accessible nameJoylux, Inc
Markup
<h2 class="footer-block__heading inline-richtext">Joylux, Inc</h2>
Affected pages/ /products/vfit-gold
Component · Ref A0MZ3G
Affected pagehttps://joylux.com/pages/contact
Element.list-menu__item--active
Accessible nameContact Us
Markup
<a href="/pages/contact" class="link link--text list-menu__item list-menu__item--link list-menu__item--active">
                              Contact Us
                            </a>
Component · Ref EUQXQD
Affected pagehttps://joylux.com/products/vfit
Element.slick-cloned.slick-slide[data-slick-index="5"] > div > div > .sl_text > h3
Accessible nameSCIENCE-BACKED
Markup
<h3>SCIENCE-BACKED</h3>
Affected pages/ /products/vfit-gold
Component · Ref QUQE4V
Affected pagehttps://joylux.com/products/vfit
Elementbutton[data-target="slick_marq_text"]
Accessible namePause animation
Markup
<button type="button" class="marq-pause" data-target="slick_marq_text" aria-pressed="false" aria-label="Pause animation" onclick="window.__marqToggle(..." style="position:absolute;bo...">
Affected pages/ /products/vfit-gold
Component · Ref 1H24LE
Affected pagehttps://joylux.com/
Element.banner__text > p
Accessible nameSandpaper stealing the mood? Our vaginal gel powered by HPMC‑5 creates a barrier that helps lock in intense lasting moisture.
Markup
<p>Sandpaper stealing the mood? Our vaginal gel powered by HPMC‑5 creates a barrier that helps lock in intense lasting moisture<strong>.</strong></p>
Component · Ref XL31W
Affected pagehttps://joylux.com/
Element.h0
Accessible nameFrom Desert Dry to JUICY LIKE A PEACH®
Markup
<h2 class="banner__heading inline-richtext h0">
              From Desert Dry to JUICY LIKE A PEACH®
            </h2>
Component · Ref KBKU5W
Affected pagehttps://joylux.com/pages/contact
Elementdiv[data-slick-index="4"] > div > div > .sl_text > h3
Accessible nameNATURAL INTIMATE WELLNESS
Markup
<h3>NATURAL INTIMATE WELLNESS</h3>
Component · Ref 41GJW1
Affected pagehttps://joylux.com/products/vfit
Element#shopify-pc__banner__btn-manage-prefs > span
Accessible nameManage preferences
Markup
<span>Manage preferences</span>
Component · Ref LMSG4J
Affected pagehttps://joylux.com/
Elementem
Accessible nameOprah Daily
Markup
<em>Oprah Daily</em>
Component · Ref U1WLSJ
Affected pagehttps://joylux.com/
Element.banner__heading.h2.inline-richtext
Accessible nameOprah Daily experts recognize Respin × Joylux vFit PLUS as the Best Pelvic Health Tool
Markup
<h2 class="banner__heading inline-richtext h2">
              <em>Oprah Daily</em> experts recognize Respin × Joylux vFit PLUS as the Best Pelvic Health Tool
            </h2>
Component · Ref YUMP6Q
Affected pagehttps://joylux.com/pages/contact
Element.marq-pause
Accessible namePause animation
Markup
<button type="button" class="marq-pause" data-target="slick_marq_text" aria-pressed="false" aria-label="Pause animation" onclick="window.__marqToggle(..." style="position:absolute;bo...">

Showing 25 representative examples · 1 more affected element not shown

High

Hidden elements can still receive keyboard focus

WCAG 2.4.3 (A)50 instances5 inspected pages

An element is not visible but remains in the tab order, so a sighted keyboard user loses track of focus when it lands there.

Why it matters

An element is not visible but remains in the tab order, so a sighted keyboard user loses track of focus when it lands there.

Recommended correction

Keep this element out of the tab order while its containing region is hidden — remove it from focus (for example tabindex="-1"), or apply the inert attribute to the hidden container where supported. Restore normal focusability when the region becomes visible.

View 50 affected elements
Component · Ref 8AXADG
Affected pagehttps://joylux.com/pages/deferred-payment-plans
Elementselect#redirectSelect
Accessible nameUS CA
Markup
<select id="redirectSelect" class="flag-select__native" onchange="if (this.value) { window.location = this.value; }">
    <option value="https://joylux.com/">US</option>
    <option value="https://ca.joylux.com/">
      CA
    </option>
  </select>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref 1QTQ9M
Affected pagehttps://joylux.com/pages/contact
Elementdiv > ul > li:nth-of-type(2) > ul > li:nth-of-type(3) > a
Accessible nameImproved Hydration
Markup
<a class="gm-target js-no-transition" title="Improved Hydration" href="/collections/dryness"><span class="gm-text">Improved Hydration</span></a>
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
High

Interactive controls are not keyboard-accessible

WCAG 2.1.1 (A)27 instances5 inspected pages

A control that responds to clicks (a clickable element or an ARIA widget) cannot receive keyboard focus, so keyboard and switch users cannot operate it.

Why it matters

A control that responds to clicks (a clickable element or an ARIA widget) cannot receive keyboard focus, so keyboard and switch users cannot operate it.

Recommended correction

Use a native <button>/<a>, or add tabindex="0" plus keyboard event handlers (Enter/Space) to custom controls.

View 27 affected elements
Component · Ref MATQQB
Affected pagehttps://joylux.com/cart
Elementdetails#Details-menu-drawer-container > summary
Accessible nameMenu
Rolebutton
Markup
<summary class="header__icon header__icon--menu header__icon--summary link focus-inset" aria-label="Menu" role="button" aria-expanded="false" aria-controls="menu-drawer">
      <span><svg xmlns="http://www.w3.org/2000/svg" fill="none" class="icon icon-hamburger" viewBox="0 0 18 16"><path fill="currentColor" d="M1 .5a.5.5 0 1 0 0 1h15.71a.5.5 0 0 0 0-1zM.5 8a.5.5 0 0 1 .5-.5h15.71a.5.5 0 0 1 0 1H1A.5.5 0 0 1 .5 8m0 7a.5.5 0 0 1 .5-.5h15.71a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5"></path></svg>
<svg xmlns="http://www.w3.org/2000/svg" fill="none" class="icon icon-close" viewBox="0 0 18 17"><path fill="…
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref LHG4O5
Affected pagehttps://joylux.com/
Elementheader > div:nth-of-type(1) > div > details-modal > details > summary
Accessible nameSearch
Rolebutton
Markup
<summary class="header__icon header__icon--search header__icon--summary link focus-inset modal__toggle" aria-haspopup="dialog" aria-label="Search" role="button">
      <span>
        <span class="svg-wrapper"><svg fill="none" class="icon icon-search" viewBox="0 0 18 19"><path fill="currentColor" fill-rule="evenodd" d="M11.03 11.68A5.784 5.784 0 1 1 2.85 3.5a5.784 5.784 0 0 1 8.18 8.18m.26 1.12a6.78 6.78 0 1 1 .72-.7l5.4 5.4a.5.5 0 1 1-.71.7z" clip-rule="evenodd"></path></svg>
</span>
        <span class="svg-wrapper header__icon-close"><svg xmlns="http://www.w3.org/2000/svg" fill="none" class=…
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref Y3LZQE
Affected pagehttps://joylux.com/
Elementsticky-header > header > div:nth-of-type(2) > details-modal > details > summary
Accessible nameSearch
Rolebutton
Markup
<summary class="header__icon header__icon--search header__icon--summary link focus-inset modal__toggle" aria-haspopup="dialog" aria-label="Search" role="button">
      <span>
        <span class="svg-wrapper"><svg fill="none" class="icon icon-search" viewBox="0 0 18 19"><path fill="currentColor" fill-rule="evenodd" d="M11.03 11.68A5.784 5.784 0 1 1 2.85 3.5a5.784 5.784 0 0 1 8.18 8.18m.26 1.12a6.78 6.78 0 1 1 .72-.7l5.4 5.4a.5.5 0 1 1-.71.7z" clip-rule="evenodd"></path></svg>
</span>
        <span class="svg-wrapper header__icon-close"><svg xmlns="http://www.w3.org/2000/svg" fill="none" class=…
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref 1LB4YJ
Affected pagehttps://joylux.com/products/vfit
Elementdetails#Details-collapsible_tab_6GUTq6-template--22694727844065__main > summary
Accessible nameSHIPPING & WARRANTY
Rolebutton
Markup
<summary role="button" aria-expanded="false" aria-controls="ProductAccordion-collapsible_tab_6GUTq6-template--22694727844065__main">
                      <div class="summary__title">
                        
                        <h2 class="h4 accordion__title inline-richtext">
                          SHIPPING &amp;  WARRANTY
                        </h2>
                      </div>
                    <svg width="24" height="26" viewBox="0 0 24 26" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_7904_2059)">
<path d="M12 23C16.9706 23 21 18.9706 21 14C21 9.02944…
Component · Ref CR5JW1
Affected pagehttps://joylux.com/products/vfit
Elementsummary#Summary-collapsible_row_Ppyya9-template--22694727844065__collapsible_content_QbJMzY
Accessible nameWhat are the differences between vFit, vFit Plus, and the Respin × Joylux vFit Plus?
Rolebutton
Markup
<summary id="Summary-collapsible_row_Ppyya9-template--22694727844065__collapsible_content_QbJMzY" role="button" aria-expanded="false" aria-controls="CollapsibleAccordion-collapsible_row_Ppyya9-template--22694727844065__collapsible_content_QbJMzY">
                    
                    <h3 class="accordion__title inline-richtext h4">
                      What are the differences between vFit, vFit Plus, and the Respin × Joylux vFit Plus?
                    </h3>
<svg width="24" height="26" viewBox="0 0 24 26" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_7761_207…
Component · Ref UO37EV
Affected pagehttps://joylux.com/products/vfit
Elementdiv#lv-option-listbox-1 > ul > li:nth-of-type(1)
Accessible namevFit®
Roleoption
Markup
<li class="lv-option-dropdown-option" selected="" data-enabled="1" data-pid="6750633099422" data-handle="vfit" data-status="1" data-value="vFit®" data-available="true" data-product="ProductDrop" data-option-id="0" role="option" aria-label="vFit®" aria-selected="true" key="0">
              <div class="lv-option-dropdown-item">
                
                <div class="lv-option-dropdown-text">
                  <div class="lv-option-dropdown-value">vFit®</div>
                  
<div data-pid="6750633099422" data-price-type="DEFAULT" data-price-format="without_currency" data-show-compare-at…
High

Modal dialog does not trap keyboard focus

WCAG 2.4.3 (A)5 instances5 inspected pages

An open modal leaves the content behind it keyboard-focusable, so keyboard and screen reader users can tab out of the dialog into hidden page content.

Why it matters

An open modal leaves the content behind it keyboard-focusable, so keyboard and screen reader users can tab out of the dialog into hidden page content.

Recommended correction

While a modal is open, confine focus to the dialog and mark the rest of the page inert (or aria-hidden). Restore focus on close.

View 5 affected elements
Component · Ref JNVA8F
Affected pagehttps://joylux.com/
Elementsticky-header > header > div:nth-of-type(2) > details-modal > details > div
Accessible nameSearch
Roledialog
Markup
<div class="search-modal modal__content gradient" role="dialog" aria-modal="true" aria-label="Search">
      <div class="modal-overlay"></div>
      <div class="search-modal__content search-modal__content-bottom" tabindex="-1"><predictive-search class="search-modal__form" data-loading-text="Loading..."><form action="/search" method="get" role="search" class="search search-modal__form">
          <div class="field">
            <input class="search__input field__input" id="Search-In-Modal" type="search" name="q" value="" placeholder="Search" role="combobox" aria-expanded="false" aria-owns="pred…
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
High

Form fields use placeholder text as the only label

WCAG 1.3.1 (A)5 instances5 inspected pages

Fields rely on placeholder text instead of a real label. The placeholder disappears once the user types, and it is not exposed as a programmatic label.

Why it matters

Fields rely on placeholder text instead of a real label. The placeholder disappears once the user types, and it is not exposed as a programmatic label.

Recommended correction

Add a persistent <label> associated with each field. Keep the placeholder for example text only, not as the label.

View 5 affected elements
Component · Ref PL9HV9
Affected pagehttps://joylux.com/pages/contact
Elementinput#jlx-message-input
Markup
<input type="text" id="jlx-message-input" placeholder="Type your message..." style="flex: 1; padding: 12px 16px; border: 1px solid #ddd; border-radius: 24px; font-size: 14px; outline: none;">
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
High

Images lack text alternatives

WCAG 1.1.1 (A)32 instances3 inspected pages

Informative images have no alternative text, so their meaning is unavailable to people using assistive technology.

Why it matters

Informative images have no alternative text, so their meaning is unavailable to people using assistive technology.

Recommended correction

Add a concise alt attribute describing each informative image. Mark purely decorative images with alt="" so assistive technology skips them.

View 32 affected elements
Component · Ref 4GUEHC
Affected pagehttps://joylux.com/pages/contact
Element#Slide-template--22694725812449__multicolumn_BrNKpM-6 > .multicolumn-card.content-container > .multicolumn-card__image-wrapper.multicolumn-card__image-wrapper--full-width.multicolumn-card-spacing > .media.media--transparent.media--adapt > img
Markup
<img src="//joylux.com/cdn/shop/files/vfitimg_6614cc36-88b3-4812-91c9-99fa95cc04c0.avif?v=1772737877">
Affected pages/ /pages/contact /products/vfit-gold
Component · Ref D42IY5
Affected pagehttps://joylux.com/
Elementa[href$="coldher"] > img
Markup
<img src="//joylux.com/cdn/shop/files/432432423.webp?v=1761261149">
Affected pages/ /products/vfit-gold
Component · Ref 7GRK0X
Affected pagehttps://joylux.com/pages/contact
Element.icon_grid:nth-child(3) > img
Markup
<img src="//joylux.com/cdn/shop/files/tel.svg?v=1761523229">
Component · Ref AG5SRJ
Affected pagehttps://joylux.com/
Element.col4:nth-child(1) > .inner_grid:nth-child(2) > a > img
Markup
<img src="//joylux.com/cdn/shop/files/Respin_x_Joylux_Homepage.jpg?v=1782168607">
Component · Ref XWU800
Affected pagehttps://joylux.com/products/vfit
Element.text-image_image > .desktop_show
Markup
<img src="//joylux.com/cdn/shop/files/Frame_1321316515.svg?v=1761515587" class="desktop_show">
Component · Ref VS6XSW
Affected pagehttps://joylux.com/
Element.rich-text__blocks.center > img
Markup
<img src="//joylux.com/cdn/shop/files/543543534_fa88c4db-bb50-4da2-b1a4-dda29e3563d7.webp?v=1765569321">
Component · Ref 4TL01I
Affected pagehttps://joylux.com/pages/contact
Element.col4 > img
Markup
<img src="//joylux.com/cdn/shop/files/Rectangle_12_71a184f7-9510-48e7-ba03-c20989b6cf60.webp?v=1761523107">
Component · Ref 1MU4ZK
Affected pagehttps://joylux.com/products/vfit
Element.vid_image > img
Markup
<img src="//joylux.com/cdn/shop/files/respin-x-joylux-vfit-plus-red-light-intimate-wellness-device-7092733.jpg?v=1770465012">
Medium

Content sits outside any landmark region

WCAG 1.3.1 (A)5 instances5 inspected pages

Meaningful content is not contained in a landmark (header/nav/main/footer/aside), so assistive-technology users cannot reach it via landmark navigation.

Why it matters

Meaningful content is not contained in a landmark (header/nav/main/footer/aside), so assistive-technology users cannot reach it via landmark navigation.

Recommended correction

Wrap primary content in <main> and other regions in appropriate landmark elements.

View 5 affected elements
Component · Ref JH614S
Affected pagehttps://joylux.com/
Elementsection#shopify-pc__banner > div
Accessible nameCookie consentA more personal journey starts here. (Yum, cookies! 🍪) We, and third parties, use cookies and similar tools to personalize your experience, improve our site, and show you relevant wellness content. You’re in control—choose what works for you. By clicking "Accept All” or otherwise allow personalized marketing, you authorize Joylux to use and disclose your data as described in our Consumer Health Data Authorization and, for those located in California, as described in our California Authorization. Privacy NoticeManage preferencesAccept AllDecline All
Markup
<div class="shopify-pc__banner__wrapper"><div class="shopify-pc__banner__body"><h2 id="shopify-pc__banner__body-title">Cookie consent</h2><p>A more personal journey starts here. (Yum, cookies! 🍪) We, and third parties, use cookies and similar tools to personalize your experience, improve our site, and show you relevant wellness content. You’re in control—choose what works for you. By clicking "Accept All” or otherwise allow personalized marketing, you authorize Joylux to use and disclose your data as described in our Consumer Health Data Authorization and, for those located in California, as …
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Medium

Navigation regions are not distinguishable

WCAG 1.3.1 (A)10 instances5 inspected pages

The page has multiple navigation landmarks but they lack accessible names, so screen reader users cannot tell them apart.

Why it matters

The page has multiple navigation landmarks but they lack accessible names, so screen reader users cannot tell them apart.

Recommended correction

Give each navigation region a distinct aria-label (e.g. "Primary", "Footer") when more than one is present.

View 10 affected elements
Component · Ref X211S6
Affected pagehttps://joylux.com/cart
Elementdiv#menu-drawer > div > div > nav
Accessible nameSHOP SHOP BY CATEGORY Red Light Devices Intimate Care Cooling Care HSA/FSA Eligible Bundle & Save Shop All SHOP BY CONCERN Better Libido Improved Hydration Cool Moments TAKE A QUIZ Find Your Perfect Product Find Your Stage of Menopause LIVE SHOPPING RESULTS membHERship TAKE A QUIZ Find Your Product Solutions Find Your Stage of Menopause LEARN About Our Story Red Light Blog Joylux App Affiliate Program Press For Professionals CUSTOMER SUPPORT FAQS vFit Support Compare vFit Devices User Guide Find a Doctor Product Registration & Warranty Contact Us
Markup
<nav class="menu-drawer__navigation">
            <ul class="menu-drawer__menu has-submenu list-menu gm-menu gm-menu-145267 gm-menu-mobile gm-bordered gm-mobile-bordered gm-submenu-align-left gm-menu-trigger-click_toggle gm-has-retractor gm-transition-fade gm-submenu-open-style-dropdown" role="list" style="overflow: auto; max-height: 900px;">
<li data-gmmi="0" data-gmdi="0" class="gm-item gm-level-0 gm-has-submenu gm-submenu-mega gm-submenu-align-full"><a class="gm-target js-no-transition" title="SHOP" href="#"><span class="gm-text">SHOP</span><span class="gm-retractor"></span></a><div class="…
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Component · Ref 36T89B
Affected pagehttps://joylux.com/cart
Elementdiv#shopify-section-sections--22694721618145__header > sticky-header > header > nav
Accessible nameSHOP SHOP BY CATEGORY Red Light Devices Intimate Care Cooling Care HSA/FSA Eligible Bundle & Save Shop All SHOP BY CONCERN Better Libido Improved Hydration Cool Moments TAKE A QUIZ Find Your Perfect Product Find Your Stage of Menopause LIVE SHOPPING RESULTS membHERship TAKE A QUIZ Find Your Product Solutions Find Your Stage of Menopause LEARN About Our Story Red Light Blog Joylux App Affiliate Program Press For Professionals CUSTOMER SUPPORT FAQS vFit Support Compare vFit Devices User Guide Find a Doctor Product Registration & Warranty Contact Us
Markup
<nav class="header__inline-menu">
  <ul class="list-menu list-menu--inline gm-menu gm-menu-145267 gm-bordered gm-mobile-bordered gm-submenu-align-left gm-menu-trigger-hover gm-has-retractor gm-transition-fade" role="list">
<li data-gmmi="0" data-gmdi="0" class="gm-item gm-level-0 gm-has-submenu gm-submenu-mega gm-submenu-align-full"><a class="gm-target js-no-transition" title="SHOP" href="#"><span class="gm-text">SHOP</span><span class="gm-retractor"></span></a><div class="gm-submenu gm-mega gm-submenu-bordered" style="overflow: auto; max-height: 900px;"><div style="" class="submenu-background…
Affected pages/ /pages/contact /pages/deferred-payment-plans /products/vfit-gold /cart
Medium

ARIA hidden element must not be focusable or contain focusable elements

WCAG 4.1.2 (A)38 instances1 inspected page

ARIA hidden element must not be focusable or contain focusable elements

Why it matters

ARIA hidden element must not be focusable or contain focusable elements

Recommended correction

Review the affected element and correct the reported accessibility issue.

View 38 affected elements
Component · Ref P7K0N0
Affected pagehttps://joylux.com/
Elementdiv[data-slick-index="19"]
Accessible namePhotonic Gel™ 2-Pack Sale Photonic Gel™ 2-Pack Stock up on hydration for your vFit sessions Regular price $45.00 USD Regular price $50.00 USD Sale price $45.00 USD ( + tax and free shipping ) Unit price /  per  4.8(19) Sale
Markup
<div class="slick-slide slick-cloned" data-slick-index="19" id="" aria-hidden="true" style="width: 254px;" tabindex="-1">
Component · Ref OBOG6T
Affected pagehttps://joylux.com/
Element#Slider-template--22694725648609__featured_collection_home_j8NXwH > .slick-list.draggable > .slick-track > .slick-slide[data-slick-index="5"][aria-hidden="true"]
Accessible nameLET’S SPIN® Home and Away Set Sale LET’S SPIN® Home and Away Set Designed for wherever the mood takes you Regular price $63.00 USD Regular price $66.00 USD Sale price $63.00 USD ( + tax and free shipping ) Unit price /  per  4.4(150) Sale
Markup
<div class="slick-slide" data-slick-index="5" aria-hidden="true" style="width: 254px;" tabindex="-1">
Medium

ARIA container is missing required child roles

WCAG 1.3.1 (A)2 instances1 inspected page

An ARIA role that requires specific child roles does not contain them, breaking the widget semantics.

Why it matters

An ARIA role that requires specific child roles does not contain them, breaking the widget semantics.

Recommended correction

Provide the child roles the container role requires (e.g. option inside listbox).

View 2 affected elements
Component · Ref 3TRQLD
Affected pagehttps://joylux.com/
Element#Slider-template--22694725648609__featured_collection_home_j8NXwH
Accessible nameSlider
Rolelist
Markup
<ul id="Slider-template--226..." data-id="template--2269472564..." class="grid product-grid co..." role="list" aria-label="Slider">
Medium

List items are not inside a list

WCAG 1.3.1 (A)6 instances1 inspected page

A <li> appears outside a <ul> or <ol>, so the list relationship is not conveyed to assistive technology.

Why it matters

A <li> appears outside a <ul> or <ol>, so the list relationship is not conveyed to assistive technology.

Recommended correction

Wrap related <li> elements in a <ul> or <ol>, or use a different element for non-list content.

View 6 affected elements
Component · Ref LPPUIU
Affected pagehttps://joylux.com/
Element#Slide-template--22694725648609__featured_collection_home_j8NXwH-3
Accessible nameInside & Out Hydration Duo Sale Inside & Out Hydration Duo Internal hydration meets external care Regular price $89.00 USD Regular price $98.00 USD Sale price $89.00 USD ( + tax and free shipping ) Unit price /  per  0.0(0) Sale
Markup
<li id="Slide-template--22694725648609__featured_collection_home_j8NXwH-3" class="grid__item scroll-trigger animate--slide-in scroll-trigger--offscreen" data-cascade="" style="--animation-order: 3; width: 100%; display: inline-block;">
Low

Low-quality alternative text

WCAG 1.1.1 (A)32 instances3 inspected pages

Alt text looks like a filename, a generic word ("image", "photo"), or is duplicated across unrelated images — it likely does not describe the content.

Why it matters

Alt text looks like a filename, a generic word ("image", "photo"), or is duplicated across unrelated images — it likely does not describe the content.

Recommended correction

Replace placeholder or filename alt text with a concise description of what the image conveys.

View 32 affected elements
Component · Ref 9LB1LF
Affected pagehttps://joylux.com/
Elementdiv > div > div:nth-of-type(1) > div:nth-of-type(1) > div > img
Markup
<img srcset="//joylux.com/cdn/shop/files/lets-spin-home-and-away-set-871772.jpg?v=1750518089&amp;width=165 165w,//joylux.com/cdn/shop/files/lets-spin-home-and-away-set-871772.jpg?v=1750518089&amp;width=360 360w,//joylux.com/cdn/shop/files/lets-spin-home-and-away-set-871772.jpg?v=1750518089&amp;width=533 533w,//joylux.com/cdn/shop/files/lets-spin-home-and-away-set-871772.jpg?v=1750518089&amp;width=720 720w,//joylux.com/cdn/shop/files/lets-spin-home-and-away-set-871772.jpg?v=1750518089&amp;width=940 940w,//joylux.com/cdn/shop/files/lets-spin-home-and-away-set-871772.jpg?v=1750518089&amp;width=10…
Affected pages/ /pages/contact /products/vfit-gold
Low

ARIA attributes have invalid values

WCAG 4.1.2 (A)14 instances1 inspected page

ARIA attributes reference ids that do not exist or hold invalid values, breaking the accessibility tree.

Why it matters

ARIA attributes reference ids that do not exist or hold invalid values, breaking the accessibility tree.

Recommended correction

Correct ARIA attribute values and ensure referenced ids exist in the DOM.

View 14 affected elements
Component · Ref FIKZFD
Affected pagehttps://joylux.com/products/vfit
Elementdiv[data-bv-show="reviews"],div[aria-controls="bv-reviews-filter-Rating"]
Markup
<div aria-expanded="false" aria-haspopup="listbox" role="combobox" aria-activedescendant="" aria-controls="bv-reviews-filter-Rating" aria-label="Menu, Filter by Rating" tabindex="0" class="bv-rnr__sc-1wzl89g-0 knIejS">
Component · Ref ABXWM4
Affected pagehttps://joylux.com/products/vfit
Elementbutton[aria-label="Load image 5 in gallery view"]
Accessible nameLoad image 5 in gallery view
Markup
<button class="thumbnail global-media-settings global-media-settings--no-shadow" aria-label="Load image 5 in gallery view" aria-controls="GalleryViewer-template--22694727844065__main" aria-describedby="Thumbnail-template--22694727844065__main-5
">
Component · Ref LLJP88
Affected pagehttps://joylux.com/products/vfit
Element.lv-option-dropdown
Accessible nameDevice: vFit®
Rolecombobox
Markup
<div data-option-id="0" class="lv-option-dropdown" role="combobox" aria-haspopup="listbox" aria-expanded="false" tabindex="0" aria-label="Device: vFit®" aria-controls="lv-option-listbox-1">
Component · Ref G08AUO
Affected pagehttps://joylux.com/products/vfit
Elementdiv[data-bv-show="reviews"],.bv-rnr__sc-13ijx62-5
Markup
<div aria-haspopup="listbox" aria-expanded="false" role="combobox" aria-activedescendant="" aria-controls="bv-reviews-sort-by-mostRecent" aria-label="Menu, Sort by Most Recent." aria-disabled="false" tabindex="0" class="bv-rnr__sc-13ijx62-5 cbzBcL">
Low

Page has no level-one heading

WCAG 1.3.1 (A)1 instance1 inspected page

The page exposes no <h1>, so its topic is not conveyed in the heading structure.

Why it matters

The page exposes no <h1>, so its topic is not conveyed in the heading structure.

Recommended correction

Add a single descriptive <h1> that names the page's primary purpose.

View 1 affected element
Component · Ref PZPT7F
Affected pagehttps://joylux.com/pages/contact
Elementhtml > body
Accessible nameCookie consentA more personal journey starts here. (Yum, cookies! 🍪) We, and third parties, use cookies and similar tools to personalize your experience, improve our site, and show you relevant wellness content. You’re in control—choose what works for you. By clicking "Accept All” or otherwise allow personalized marketing, you authorize Joylux to use and disclose your data as described in our Consumer Health Data Authorization and, for those located in California, as described in our California Authorization. Privacy NoticeManage preferencesAccept AllDecline All Skip to content Meet JUICY LIKE A PEACH • Moisture-Rich Vaginal Gel ➤ US CA document.addEventListener('DOMContentLoaded', function () { var wrapper = document.querySelector('.flag-select'); var displayBtn = wrapper.querySelector('.flag-select__display'); var optionsList = wrapper.querySelector('.flag-select__options'); var optionItems = optionsList.querySelectorAll('.flag-select__option'); var nativeSelect = document.getElementById('redirectSelect'); // Toggle dropdown open/close displayBtn.addEventListener('click', function () { wrapper.classList.toggle('is-open'); }); // Click on an option optionItems.forEach(function (item) { item.addEventListener('click', function () { var url = item.getAttribute('data-value'); var flag = item.getAttribute('data-flag'); // Update visible selected icon displayBtn.innerHTML = item.innerHTML; // Update hidden select value and trigger change (your redirect) if (nativeSelect) { nativeSelect.value = url; nativeSelect.dispatchEvent(new Event('change')); } else if (url) { window.location.href = url; } // Close dropdown wrapper.classList.remove('is-open'); }); }); // Close when clicking outside document.addEventListener('click', function (e) { if (!wrapper.contains(e.target)) { wrapper.classList.remove('is-open'); } }); }); header-drawer { justify-self: start; margin-left: -1.2rem; }@media screen and (min-width: 990px) { header-drawer { display: none; } }.menu-drawer-container { display: flex; } .list-menu { list-style: none; padding: 0; margin: 0; } .list-menu--inline { display: inline-flex; flex-wrap: wrap; } summary.list-menu__item { padding-right: 2.7rem; } .list-menu__item { display: flex; align-items: center; line-height: calc(1 + 0.3 / var(--font-body-scale)); } .list-menu__item--link { text-decoration: none; padding-bottom: 1rem; padding-top: 1rem; line-height: calc(1 + 0.8 / var(--font-body-scale)); } @media screen and (min-width: 750px) { .list-menu__item--link { padding-bottom: 0.5rem; padding-top: 0.5rem; } } .header { padding: 10px 3rem 10px 3rem; } .section-header { position: sticky; /* This is for fixing a Safari z-index issue. PR #2147 */ margin-bottom: 0px; } @media screen and (min-width: 750px) { .section-header { margin-bottom: 0px; } } @media screen and (min-width: 990px) { .header { padding-top: 20px; padding-bottom: 20px; } } SHOP SHOP BY CATEGORY Red Light Devices Intimate Care Cooling Care HSA/FSA Eligible Bundle & Save Shop All SHOP BY CONCERN Better Libido Improved Hydration Cool Moments TAKE A QUIZ Find Your Perfect Product Find Your Stage of Menopause LIVE SHOPPING RESULTS membHERship TAKE A QUIZ Find Your Product Solutions Find Your Stage of Menopause LEARN About Our Story Red Light Blog Joylux App Affiliate Program Press For Professionals CUSTOMER SUPPORT FAQS vFit Support Compare vFit Devices User Guide Find a Doctor Product Registration & Warranty Contact Us Log in X (Twitter) Facebook Pinterest Instagram TikTok YouTube Search SHOP SHOP BY CATEGORY Red Light Devices Intimate Care Cooling Care HSA/FSA Eligible Bundle & Save Shop All SHOP BY CONCERN Better Libido Improved Hydration Cool Moments TAKE A QUIZ Find Your Perfect Product Find Your Stage of Menopause LIVE SHOPPING RESULTS membHERship TAKE A QUIZ Find Your Product Solutions Find Your Stage of Menopause LEARN About Our Story Red Light Blog Joylux App Affiliate Program Press For Professionals CUSTOMER SUPPORT FAQS vFit Support Compare vFit Devices User Guide Find a Doctor Product Registration & Warranty Contact Us Search Log in Cart Item added to your cart View cart Check out Continue shopping .cart-notification { display: none; } { "@context": "http://schema.org", "@type": "Organization", "name": "Joylux", "logo": "https:\/\/joylux.com\/cdn\/shop\/files\/joylux-gold_68336641-fa52-4bb3-9.avif?v=1761262521\u0026width=500", "sameAs": [ "https:\/\/x.com\/joyluxinc", "https:\/\/www.facebook.com\/joylux", "https:\/\/www.pinterest.com\/joyluxofficial\/", "https:\/\/www.instagram.com\/joyluxinc\/", "https:\/\/www.tiktok.com\/@joyluxinc", "", "", "https:\/\/www.youtube.com\/channel\/UC7xKBTqTE95Cbpx33ZJ2y_w", "" ], "url": "https:\/\/joylux.com\/pages\/contact" } .section-template--22694725812449__multicolumn_BrNKpM-padding { padding-top: 27px; padding-bottom: 27px; } @media screen and (min-width: 750px) { .section-template--22694725812449__m…[truncated by Evolize: exceeded D1 value limit]
Markup
<body class="contact gradient gm-menu-installed theme_store_id_887 gm-theme-version-15" data-upcart-cart-enabled="true"><div data-yotpo-instance-id="797120" class="yotpo-widget-instance"></div><section id="shopify-pc__banner" class="shopify-pc__banner__dialog" role="alertdialog" aria-modal="false" aria-labelledby="shopify-pc__banner__body-title" style="display: block;"><div class="shopify-pc__banner__wrapper"><div class="shopify-pc__banner__body"><h2 id="shopify-pc__banner__body-title">Cookie consent</h2><p>A more personal journey starts here. (Yum, cookies! 🍪) We, and third parties, use cook…

05 · Most affected inspected pages

06 · About this assessment

Evolize inspects publicly accessible website pages using automated browser-based testing and deterministic accessibility rules. Automated testing can identify many reproducible technical issues but cannot determine complete WCAG or legal compliance.

  • Publicly accessible surfaces only — no credentials, private systems, or source-code access.
  • Findings apply to the pages and states successfully inspected; automated analysis may not detect every issue.
  • Results reflect the site at the scan date and may have changed since.

Evolize provides digital risk intelligence and does not provide legal advice, certify compliance, or guarantee that litigation will not occur. Methodology · Security · Example assessment

07 · Continuous monitoring

This public report captures one assessment. Evolize monitoring rescans the website, detects new and recurring findings, tracks changes over time and verifies corrections.

Is information in this report inaccurate or outdated? Request a correction or removal.