Skip to main content

Design system components

ContactHero

Contact page hero with headline and supporting copy.

Status: stable. Group: marketing. Markdown version: /design-system/components/contact-hero.md

When to use

ContactHero opens a contact page with a headline and supporting copy. compact is on by default (60vh, 70vh from desktop); pass compact={false} for the taller 80vh hero. background defaults to minimal. Copy arrives via props (title, subtitle), so route-level i18n stays in the page component. No app route renders ContactHero today: the contact page uses ContactPageContentEditorial, which owns its own heading, so check that before reaching for this.

When not to use

The contract records no forbidden uses.

Look-alikes

The contract names no look-alike with a deciding condition.

Props

ContactHero props
PropTypeDefaultDescriptionRequired
titlestringnoneMain title text.Yes
subtitlestringnoneOptional subtitle.No
background"minimal" | "gradient"minimalBackground variant. Defaults to "minimal".No
compactbooleantrueUse compact height (60-70vh instead of 80vh). Defaults to true; pass false for the 80vh hero.No
classNamestringnoneCustom className.No

Variants

  • Available backgrounds: minimal, gradient (default minimal).

Invalid combinations

The contract records no invalid combinations.

Keyboard

The contract records no keyboard interaction.

Rules

Every item under When not to use is a MUST NOT. MUST and SHOULD follow RFC 2119.

ContactHero rules
LevelRuleHow it is checked
MUSTRequired stories produce no axe violations at the configured severity.Automated by npm run test:stories:matrix:ci. WCAG 2.5.8.
MUSTThe accessibility tree (role, name, state) matches the committed snapshot for every required story.Automated by npm run test:stories:matrix:ci. WCAG 1.3.1, 4.1.2.
MUSTThe component remains legible and operable under a real browser forced-colors: active pass.Automated by npm run test:stories:hc.
MUSTA human completed an end-to-end accessibility review of this component.Manual review, last on 2026-11-04.
MUST NOTMaintainers: Do not bypass design tokens or skip forced-colors verification at beta.Release review; not machine-checked.

Install and import

  • In-repo only. ContactHero is not exported from @digitaltableteur/react, so there is no public import path.