Legal · effective September 11, 2026
Accessibility
This is an accessibility conformance report for ntl.events, in the style of a Voluntary Product Accessibility Template (VPAT® 2.5, WCAG edition), evaluated against WCAG 2.1, Level AA. It is published by NTL events, LLC and states only what has actually been checked. Where a criterion has not been reviewed by a person, this report says Not Evaluated rather than guessing at a passing grade.
Report details
- Date: September 15, 2026.
- Standard: WCAG 2.1, Level A and AA (2.2 success criteria not included).
- Scope: the public pages of ntl.events — home, security, trust, SLA, status, help, developers, sign-in, an event registration page and an Attendee Hub page (the same 11 routes listed under Method below). The organizer panel, box office and admin tools were not in scope for this report.
- Method: an automated scan with axe-core 4.10.2 (via Playwright/Chromium, WCAG 2.0/2.1 A/AA rule set) against 11 routes, plus a small number of source-code checks (the
langattribute, page titles, viewport meta, focus-visible styles). Axe-core detects an estimated 20–30% of WCAG issues automatically (mostly contrast, missing names/roles and basic structure) — it cannot evaluate criteria that require a person, like whether reading order makes sense, whether a keyboard-only user can complete checkout, or whether alt text actually describes an image. Those criteria are marked Not Evaluated below, not Supports.
Findings
The automated scan on September 15, 2026 before the fix found 0 critical and 8 serious issues across the 11 scoped routes, all of the same type (color-contrast): the active pill in the shared support-page navigation and a couple of section labels (kickers) on the home page, sign-in page and Attendee Hub rendered under 4.5:1 contrast. The root cause was a base style in globals.css (a { color: inherit }, outside any Tailwind layer) that silently overrides layered Tailwind text-color utilities on link elements. The fix — a scoped !important on the affected classes, not a change to the shared base style — shipped the same day. A second scan after the fix, across the same 11 routes, found 0 critical, 0 serious, 0 moderate and 0 minor violations.
Two things worth being explicit about, for transparency: (1) the same base-style bug can affect other <a>/Link elements elsewhere in the product that weren't part of this scan — this fix only covers the components touched here, it is not a site-wide audit of every link's text color. (2) No manual testing with a screen reader (VoiceOver, NVDA or TalkBack) has been done yet, and axe-core does not evaluate most WCAG criteria — see the conformance table below for what is still Not Evaluated.
Conformance table
1. Perceivable
| Criterion | Conformance level | Remarks and explanations |
|---|---|---|
| 1.1.1 Non-text Content (A) | Not Evaluated | Alt text on images, icons and QR codes not audited by hand across the site. |
| 1.2.1–1.2.3 Audio/video alternatives (A) | Not Applicable | No prerecorded audio or video content on the pages in scope. |
| 1.3.1 Info and Relationships (A) | Not Evaluated | Heading and landmark structure not reviewed by hand; axe did not flag structural violations on the pages it scanned. |
| 1.3.2 Meaningful Sequence (A) | Not Evaluated | Not evaluated. |
| 1.3.3 Sensory Characteristics (A) | Not Evaluated | Not evaluated. |
| 1.3.4 Orientation (AA) | Not Evaluated | Not evaluated on mobile devices. |
| 1.3.5 Identify Input Purpose (AA) | Not Evaluated | autocomplete attributes on forms (login, checkout, registration) not audited. |
| 1.4.1 Use of Color (A) | Not Evaluated | Not evaluated. |
| 1.4.3 Contrast (Minimum) (AA) | Partially Supports | Automated axe-core scan (see Method) found 8 serious color-contrast violations across / , /sla, /status, /developers, /login and /hub on 15-sep-2026 (root cause: an unlayered `a { color: inherit }` base style in globals.css overrides Tailwind's layered text-color utilities on any <a>/Link element, so the active pill in the shared support navigation — and a couple of kicker labels — fell back to whatever color it inherited instead of the intended one). Fixed the same day with a scoped `!important` on the affected Tailwind classes; a rescan of all 11 routes afterward found 0 remaining contrast violations. Axe only samples the rendered viewport it visits — pages, states or breakpoints outside the 11 routes scanned have not been checked, so this is not a site-wide guarantee. |
| 1.4.4 Resize Text (AA) | Not Evaluated | Not tested at 200% zoom. |
| 1.4.5 Images of Text (AA) | Not Evaluated | Not evaluated. |
| 1.4.10 Reflow (AA) | Partially Supports | Pages are built with a responsive layout and a viewport meta tag is present; not tested at 320px CSS width / 400% zoom by hand. |
| 1.4.11 Non-text Contrast (AA) | Not Evaluated | Focus indicators and control borders not audited by hand; axe flags text contrast but not all non-text contrast cases. |
| 1.4.12 Text Spacing (AA) | Not Evaluated | Not evaluated. |
| 1.4.13 Content on Hover or Focus (AA) | Not Evaluated | Not evaluated. |
2. Operable
| Criterion | Conformance level | Remarks and explanations |
|---|---|---|
| 2.1.1 Keyboard (A) | Not Evaluated | Full keyboard-only walkthrough (registration, checkout, organizer panel) not yet done. |
| 2.1.2 No Keyboard Trap (A) | Not Evaluated | Not evaluated. |
| 2.4.1 Bypass Blocks (A) | Supports | Verified in source and in the rendered page: the shared ntl.events navigation (components/ntl-events/NavbarNtlEvents.tsx) renders a “Skip to content” link targeting #contenido before the page header on every scoped route. |
| 2.4.2 Page Titled (A) | Partially Supports | Every page in scope defines a Next.js metadata title (verified in source for /, /security, /trust, /sla, /status, /help, /developers, /login, /accessibility); titles across the rest of the site were not checked individually. |
| 2.4.3 Focus Order (A) | Not Evaluated | Not evaluated. |
| 2.4.4 Link Purpose (In Context) (A) | Not Evaluated | Not evaluated. |
| 2.4.5 Multiple Ways (AA) | Not Evaluated | Not evaluated. |
| 2.4.6 Headings and Labels (AA) | Not Evaluated | Not evaluated. |
| 2.4.7 Focus Visible (AA) | Partially Supports | Interactive elements built with the shared design system use an explicit focus-visible outline (seen in the support-nav component); not verified across every custom control on the site. |
| 2.5.1–2.5.4 Pointer gestures, cancellation, label in name, motion actuation (A) | Not Evaluated | Not evaluated. |
3. Understandable
| Criterion | Conformance level | Remarks and explanations |
|---|---|---|
| 3.1.1 Language of Page (A) | Supports | Verified in source: the root layout sets <html lang> from the detected locale for every render (app/layout.tsx). |
| 3.1.2 Language of Parts (AA) | Not Evaluated | Not evaluated. |
| 3.2.1–3.2.2 On Focus / On Input (A) | Not Evaluated | Not evaluated. |
| 3.2.3–3.2.4 Consistent Navigation / Identification (AA) | Not Evaluated | Not evaluated by hand, though the support pages share one navigation component (EnlacesSoporte) and one footer by construction. |
| 3.3.1 Error Identification (A) | Not Evaluated | Form error messaging (login, checkout, registration) not audited. |
| 3.3.2 Labels or Instructions (A) | Not Evaluated | Not evaluated. |
| 3.3.3–3.3.4 Error Suggestion / Prevention (AA) | Not Evaluated | Not evaluated. |
4. Robust
| Criterion | Conformance level | Remarks and explanations |
|---|---|---|
| 4.1.1 Parsing (A) | Not Evaluated | Not evaluated (Next.js/React output is well-formed by construction, but this was not independently validated). |
| 4.1.2 Name, Role, Value (A) | Not Evaluated | ARIA roles/names not audited by hand; axe did not flag missing name/role on the 11 routes it scanned. |
| 4.1.3 Status Messages (AA) | Not Evaluated | Live-region behavior (toasts, form submission feedback) not evaluated. |
Related pages
Data protection and platform controls are described in Security & Trust and Trust center. Support response targets are in Service levels.
Feedback and contact
If you use assistive technology and run into a barrier on ntl.events, tell us what page, what you were trying to do, and what happened: privacy@ntl.events or the contact form. We will confirm receipt and follow up.
See also the Privacy Policy and the Terms of Service.