Skip to content

Trust

Accessibility

What we aim for, what we test, what we know is imperfect, and how to tell us about a barrier.

Target

WCAG 2.1 Level AAacross all published pages. We do not claim certification. Where the site falls short of AA, it's listed under “Known gaps” below.

Keyboard navigation

  • Tab and Shift+Tab move between focusable elements in document order.
  • A skip-to-content link appears at the top of every page (hidden until focused) and jumps past navigation.
  • Ctrl+K (or +K) opens the search dialog from anywhere.
  • Inside the search dialog: / to navigate results, Enter to open, Escto close. Focus is trapped inside the dialog while it's open and returned to the trigger on close.
  • Every interactive element has a visible focus ring.

Screen-reader testing

We test with the tooling below on every major layout change. Not every article is re-tested with each content update — we rely on the shared components being right.

  • VoiceOver on macOS 14 and 15 with Safari
  • NVDA 2024 on Windows 11 with Firefox and Edge
  • axe DevTools (Chrome) — used for automated scans; findings are triaged into the corrections queue

Contrast

The design uses a warm cream background (#FBF8F1, “paper”) with body text near black (#1A1A1A, “ink”) — that pairing sits well above AA at ~15:1. Where we drop opacity for muted text, ratios narrow:

  • text-stone (~#7A716B) on paper: ~5.2:1 — passes AA for normal text, borderline for small text
  • Muted labels at 60% opacity on paper: ~4.5:1 — meets AA minimum, reviewed on a case-by-case basis
  • White-on-image hero headline uses a dark overlay (via rgba(26,26,26,0.55) gradient) plus a text drop-shadow so the effective contrast stays well above AA regardless of the photo behind
  • The vermillion accent (#C8102E) on paper: 5.7:1 — used for links and CTAs; passes AA

Alt text

Every content photograph is required to carry an alt attribute at the data-layer (the ImageRef type in src/types) — the build fails before an image without alt reaches production. Alt text describes the image content, not the file name. Purely decorative graphics (seals, ornamental dividers) are marked aria-hidden.

Language attributes

The document root is set to lang=“en-GB”. Every Chinese-language phrase in prose or in a heading is wrapped in <span lang=“zh-Hans”> so screen readers switch voice correctly (or, on VoiceOver, apply the correct pronunciation profile if the Chinese voice pack is installed).

Motion and animation

The site uses minimal animation — hover-state colour transitions, a fade on the back-to-top button. All transitions honour prefers-reduced-motion. There are no auto-playing videos, no auto-scrolling carousels, no motion-driven parallax.

Video captions

The site does not currently ship any video content. When it does, video will carry captions (either burned-in or a synchronised WebVTT track) and a plain-text transcript.

Known gaps

  • The cost calculator and multi-step wizards (e.g. the trip cost estimator, the WeChat Pay wizard) have not yet been through a full screen-reader pass — they work but the announcements for step transitions could be more concise
  • Some editorial pages have long, unbroken tables of comparison data. We are moving those to structured lists over time
  • The design uses a serif display font (Fraunces) at large sizes. Some readers with dyslexia may find sans-serif easier — a future preference toggle is on the roadmap

Reporting a barrier

If a page or interaction blocks you, tell us: the URL, what you tried to do, and what happened (or didn't). We treat accessibility reports as priority corrections.

Report an accessibility issue — the form routes directly to the editorial team, not a chatbot.

Governance

Accepted accessibility fixes appear in the corrections log. See also our methodology and editorial standards.