Accessibility Statement
Last updated: May 19, 2026
1. Our commitment
LocusBIM is designed and tested against the Web Content Accessibility Guidelines (WCAG) 2.2 Level AA. This statement applies to the LocusBIM desktop application (Windows, macOS, Linux), the locusbim.com website, and the LocusBIM web tools at pdf.locusbim.com. Verification is continuous, not a one-time audit — automated tests run against the brand color specification on every pull request.
2. Conformance level
WCAG 2.2 — Level AA. Every documented text-on-background pairing in the brand color specification is verified per-theme via the WCAG relative luminance formula. The published spec at BRAND_IDENTITY.md contains the documented ratios; the automated tests in our CI pipeline assert those ratios hold against the actual implementation hex values in both dark mode and light mode.
Procurement frameworks this conformance addresses:
- Section 508 (U.S. federal procurement) — Revised 508 standards reference WCAG 2.0 AA. LocusBIM exceeds this with WCAG 2.2 AA.
- EN 301 549 (EU public-sector procurement) — Clause 9 maps to WCAG 2.1 AA. LocusBIM exceeds this with WCAG 2.2 AA.
- Accessibility for Ontarians with Disabilities Act (AODA) — Information and Communications Standards reference WCAG 2.0 AA. LocusBIM exceeds this.
- Accessible Canada Act (ACA) — federal Canadian procurement aligned with WCAG 2.0 AA.
3. What's verified
3.1 Color contrast (WCAG 1.4.3 + 1.4.11)
Every text token paired with every background token in the brand specification is tested against the WCAG luminance threshold for its size class. Primary text clears 4.5:1 (AA normal). Bold or large text clears 3.0:1 (AA large). Graphical elements like icons and borders that carry meaning clear 3.0:1 (WCAG 1.4.11). Both light and dark themes are tested independently.
3.2 Keyboard operation (WCAG 2.1.1)
Every menu, dialog, dropdown, and toggle is reachable and operable from the keyboard. Escape closes any open menu, popover, or modal. Focus rings render at 2 px in the brand copper for unambiguous visibility against both themes.
3.3 Reduced motion (WCAG 2.3.3)
Interface animations are capped at 150 ms and never the only channel conveying meaning. The khatam-pattern indeterminate loader rotates at an accessibility-friendly rate.
3.4 Names, roles, and values (WCAG 4.1.2)
Interactive controls carry proper aria-label / aria-pressed / aria-expanded attributes. Dialogs use role="dialog". Status changes (sync state, AI model loading, license verification) use role="status" so they are announced when they change.
3.5 Component vocabulary
Every form input is a spec-defined component (TextField, NumericStepper, Dropdown, Toggle, SegmentedControl) with consistent behavior across the app. Native <select> is replaced with a custom dropdown that respects keyboard navigation, screen reader announcements, and the spec contrast targets.
4. Known limitations
- Screen reader coverage — narrator support is correct for the spec component library, but the long-tail of dialogs has been spot-checked rather than fully audited. We're tracking this as a Phase-7 sweep.
- Native high-contrast modes — Windows / GNOME high-contrast accessibility modes currently display in the brand palette; native HC overrides are not yet honored. Roadmapped.
- 3D viewport content — geometry colors in the 3D scene reflect the user's model (or use AEC-convention discipline colors). Models with low- contrast geometry against the scene background are the user's content; LocusBIM provides the warm-mid-gray scene background and edge-emphasis options but cannot override the model's authored materials.
- PDF content — PDFs render in their native colors per the spec rule that user content is the user's responsibility for legibility. We provide contrast-respecting markup tools, but the source PDF's contrast is set by the document author.
5. How we verify (continuously)
Three automated test tiers run on every pull request before merge. The complete source lives in src/tests/brand/ in the open repository.
- Tier 1 — Exhaustive color lint. Walks every component file and fails if a literal color appears outside a small, spec-rule-cited carve-out list (Three.js material colors, persisted user content, regional discipline palette). Catches drift like a button being styled with an off-brand hex.
- Tier 2 — WCAG contrast verification. 35 hand-curated pairings plus every X on Y: ratio (label) claim auto-extracted from the brand spec document. Each is verified per-theme via the relative-luminance formula. Drift in either the spec or the implementation fails the build.
- Tier 3 — Token-misuse static analysis. Catches the patterns render-time tests would find — for example, the disabled-control color appearing on a body-text label is flagged as drift before merge.
6. Voluntary Product Accessibility Template (VPAT)
A VPAT 2.5 RevWCAG2.2 is available on request for procurement teams. Email accessibility@locusbim.com with your RFP number and we will deliver a populated VPAT within 5 business days under NDA if required.
7. Feedback and contact
We treat accessibility gaps as bugs. If you encounter a surface that doesn't meet WCAG 2.2 AA — color contrast, keyboard operation, screen reader, anything — please email accessibility@locusbim.com with the surface (screenshot is helpful), the assistive technology you use (if any), and what you expected. We respond within 2 business days and prioritize the fix in the next release.
Mailing address for accessibility correspondence:
LocusBIM Inc.
Attn: Accessibility
[Mailing address available on request]