Accessibility
Accessibility Commitment
Patriot Bio Supply is built to support accessible use across public and authenticated workflows.
Last updated: March 23, 2026
Current practices
- Semantic headings, landmark regions, and form labels across core pages.
- Visible focus states and keyboard-navigable actions for major workflows.
- Accessible empty/error states with plain-language instructions.
- Animations respect
prefers-reduced-motionuser preference. - Skip-to-content link and ARIA landmark roles on all pages.
- Dropdown menus and accordions support full keyboard navigation.
VPAT: WCAG 2.1 Conformance Report
Voluntary Product Accessibility Template (VPAT) based on ITI VPAT 2.4 Rev. This report describes how Patriot Bio Supply Procurement Platform conforms to WCAG 2.1 Level AA.
Product:Patriot Bio Supply Procurement PlatformReport date:March 23, 2026Standard:WCAG 2.1 Level AAContact:support@patriotbiosupply.comEvaluation:Testing with Lighthouse, axe-core, manual keyboard/screen reader testing, and automated WCAG auditing across public and authenticated workflows.
WCAG 2.1 Level A
| Criterion | Name | Conformance | Remarks |
|---|---|---|---|
| 1.1.1 | Non-text Content | Supports | All informational images have alt text. Decorative SVGs use aria-hidden. Form inputs have associated labels. |
| 1.2.1 | Audio-only and Video-only (Prerecorded) | Not Applicable | Platform does not include audio-only or video-only content. |
| 1.2.2 | Captions (Prerecorded) | Not Applicable | Platform does not include prerecorded video content. |
| 1.2.3 | Audio Description or Media Alternative | Not Applicable | Platform does not include prerecorded video content. |
| 1.3.1 | Info and Relationships | Supports | Semantic HTML used throughout: headings, landmarks, lists, tables with scope attributes, fieldsets with legends, and ARIA roles for interactive widgets. |
| 1.3.2 | Meaningful Sequence | Supports | DOM order matches visual presentation. CSS layout does not alter reading order. |
| 1.3.3 | Sensory Characteristics | Supports | Instructions do not rely solely on shape, color, size, or visual location. Form errors use text labels. |
| 1.4.1 | Use of Color | Supports | Color is not the sole means of conveying information. Status indicators use text labels and icons alongside color. |
| 1.4.2 | Audio Control | Not Applicable | Platform does not auto-play audio. |
| 2.1.1 | Keyboard | Supports | All interactive elements are keyboard accessible. Dropdown menus, accordions, and modals support full keyboard navigation with arrow keys, Tab, Enter, Space, and Escape. |
| 2.1.2 | No Keyboard Trap | Supports | Focus traps in modals can be dismissed with Escape key. No other keyboard traps exist. |
| 2.1.4 | Character Key Shortcuts | Not Applicable | Platform does not use single-character keyboard shortcuts. |
| 2.2.1 | Timing Adjustable | Not Applicable | No timed interactions. Session management uses standard auth token expiry with re-authentication. |
| 2.2.2 | Pause, Stop, Hide | Supports | Animations respect prefers-reduced-motion. No auto-updating content that cannot be paused. |
| 2.3.1 | Three Flashes or Below Threshold | Supports | No content flashes more than three times per second. |
| 2.4.1 | Bypass Blocks | Supports | Skip-to-main-content link is present on all pages. Landmark regions (banner, navigation, main, contentinfo) allow assistive technology navigation. |
| 2.4.2 | Page Titled | Supports | Every page has a unique, descriptive title via Next.js metadata. Format: 'Page Name | Patriot Bio Supply'. |
| 2.4.3 | Focus Order | Supports | Focus order follows DOM order which matches visual layout. Modal focus management moves focus into and out of dialogs correctly. |
| 2.4.4 | Link Purpose (In Context) | Supports | Link text is descriptive in context. Generic links like 'Learn more' are within card components that provide context. |
| 2.5.1 | Pointer Gestures | Not Applicable | No functionality requires multipoint or path-based gestures. |
| 2.5.2 | Pointer Cancellation | Supports | Click/tap actions fire on pointer up. No down-event-only handlers. |
| 2.5.3 | Label in Name | Supports | Visible labels match or are contained within accessible names for all form controls and buttons. |
| 2.5.4 | Motion Actuation | Not Applicable | No functionality is triggered by device motion. |
| 3.1.1 | Language of Page | Supports | HTML lang attribute is set to 'en' on all pages. |
| 3.2.1 | On Focus | Supports | No context changes occur on focus. Dropdowns open on click, not on focus. |
| 3.2.2 | On Input | Supports | Form inputs do not trigger context changes. Submission requires explicit button activation. |
| 3.3.1 | Error Identification | Supports | Form errors are identified in text and associated with fields via aria-invalid and native validation messages. |
| 3.3.2 | Labels or Instructions | Supports | All form fields have visible labels. Required fields are indicated with aria-required. Placeholder text supplements but does not replace labels. |
| 4.1.1 | Parsing | Supports | HTML is generated by React/Next.js with valid markup. TypeScript strict mode prevents attribute errors. |
| 4.1.2 | Name, Role, Value | Supports | Custom controls use ARIA roles (menu, menuitem, region, progressbar), states (aria-expanded, aria-invalid, aria-hidden), and properties (aria-controls, aria-labelledby). |
WCAG 2.1 Level AA
| Criterion | Name | Conformance | Remarks |
|---|---|---|---|
| 1.3.4 | Orientation | Supports | Content is not restricted to a single display orientation. Responsive layout adapts to portrait and landscape. |
| 1.3.5 | Identify Input Purpose | Supports | Form fields use appropriate input types (email, tel) and autocomplete attributes where applicable. |
| 1.4.3 | Contrast (Minimum) | Supports | Text contrast ratios meet or exceed 4.5:1 for normal text and 3:1 for large text. Verified via Lighthouse and manual spot checks. |
| 1.4.4 | Resize Text | Supports | Content is readable and functional at 200% browser zoom. Layout uses relative units (rem, %, viewport units). |
| 1.4.5 | Images of Text | Supports | No images of text are used. All text is rendered as HTML. Certification badges use inline SVG with text labels. |
| 1.4.10 | Reflow | Supports | Content reflows at 320px viewport width without horizontal scrolling. Comparison table uses overflow-x-auto for wide content. |
| 1.4.11 | Non-text Contrast | Supports | UI components and graphical objects meet 3:1 contrast ratio. Focus indicators, form borders, and badge icons verified against background colors. |
| 1.4.12 | Text Spacing | Supports | Content remains readable with increased letter spacing (0.12em), word spacing (0.16em), and line height (1.5). No overflow or clipping. |
| 1.4.13 | Content on Hover or Focus | Supports | Dropdown menus triggered on hover are dismissible with Escape, persistent while hovered, and do not obscure other content. |
| 2.4.5 | Multiple Ways | Supports | Pages are reachable via navigation menu, footer links, breadcrumbs, and direct URL. Insights have category browsing. |
| 2.4.6 | Headings and Labels | Supports | Headings describe topic or purpose. Form labels identify field purpose. Section headings follow a logical hierarchy. |
| 2.4.7 | Focus Visible | Supports | All interactive elements have visible focus-visible outlines (3px solid). Dark backgrounds use inverted (white) focus rings. |
| 3.1.2 | Language of Parts | Supports | Content is in English only. No mixed-language content requiring lang attribute on individual elements. |
| 3.2.3 | Consistent Navigation | Supports | Navigation components appear in the same relative order across all pages. Public and admin navigation are distinct but internally consistent. |
| 3.2.4 | Consistent Identification | Supports | Components with the same function use consistent labels and icons across the platform. |
| 3.3.3 | Error Suggestion | Supports | Validation errors provide suggestions for correction via native browser validation and custom error messages. |
| 3.3.4 | Error Prevention (Legal, Financial, Data) | Supports | Order submissions include confirmation steps. Lead form data is reversible (no legal commitment). Quote requests can be reviewed before submission. |
| 4.1.3 | Status Messages | Supports | Form submission errors use role='alert' for screen reader announcement. Toast notifications are announced without focus change. |
Need an accommodation?
Send feedback to support@patriotbiosupply.com and include the page URL, browser/device details, and accessibility barrier encountered.