Digital Hub Zone

Design System

The shared language, foundations and accessible interface patterns used across Digital Hub Zone.

Version 2.0WCAG-aware

Getting started

One system, several kinds of experience

This system connects editorial articles, practical Lab tools and marketing pages without making them identical. Shared foundations create familiarity; page patterns preserve the right emphasis for each task.

01

Foundations

Semantic colours, type, spacing, shape and motion provide consistent decisions.

02

Components

Reusable controls document anatomy, states, accessibility and appropriate use.

03

Patterns

Components combine into tested layouts for landing pages, articles, tools and directories.

Getting started

Principles

Clear before clever

Visitors should understand the page, its purpose and the next action without decoding the interface.

Useful by default

Every screen helps someone learn, decide, check or complete a meaningful task.

Accessible throughout

Keyboard use, contrast, semantics and responsive reading are acceptance criteria.

Consistent, not uniform

Reuse proven solutions while allowing articles, tools and landing pages to keep distinct purposes.

Calm confidence

Use space, hierarchy and a restrained palette instead of unnecessary visual noise.

Getting started

Governance

The system is versioned. A change should solve a repeated problem, work responsively and pass an accessibility review before becoming a shared pattern.

  1. IdentifyShow the repeated problem and affected pages.
  2. ProposeUse existing tokens and patterns before creating something new.
  3. TestCheck desktop, mobile, keyboard, zoom, contrast and content extremes.
  4. ReleaseDocument the change and package it as a reversible plugin version.
StatusMeaningUse
ReadyDocumented and used on the public sitePreferred for new work
GuidanceRules exist but implementation can varyReview before reuse
ExperimentalBeing tested in the LabDo not apply globally
DeprecatedScheduled for replacementDo not use for new work

Foundations

Colour and semantic roles

Prefer role-based variables such as action, surface and muted text. This allows the palette to evolve without rewriting individual components.

TokenColourValueRole
--dhz-colour-brand Gold#FDBB22Primary actions and deliberate emphasis
--dhz-colour-ink Navy#10213FHeadings, navigation and strong text
--dhz-colour-action Blue#1665D8Links, active controls and focus support
--dhz-colour-info Cyan#12A8D6Informational accents and supporting focus
--dhz-colour-text-muted Muted ink#5D687BMetadata and secondary explanations
--dhz-colour-surface Pale#F4F7FBSection and component surfaces
Do

Use navy text on gold buttons and reserve gold for emphasis.

Do not

Use white normal-sized text on gold or colour alone to communicate status.

Foundations

Typography

Headings use a confident geometric voice; body text prioritises sustained reading. Responsive sizes use clamp() to avoid abrupt jumps.

Display

Create, Optimise, Succeed

RoleSizeLine heightUsage
Displayclamp(2.7rem, 7vw, 5.4rem)0.98Major campaign or home hero only
Page titleclamp(2.25rem, 5vw, 4.2rem)1.05One H1 that names the page
Section titleclamp(1.75rem, 3vw, 2.5rem)1.15Major H2 content sections
Card title1.25–1.45rem1.25Resource and tool cards
Body1rem1.65Reading copy; target 55–75 characters
Metadata.75–.85rem1.35Dates, categories and supporting labels

Foundations

Section headings and alignment

An eyebrow identifies the purpose of a section; the heading names it. Treat them as one heading group and choose alignment from the reading task, not decoration.

Resource library

Find an AI resource

Use a centred group to introduce a balanced directory, card grid, short benefits section or call to action.

Practical guidance

Make the next step clear

Use a left-aligned group for heroes, articles, instructions, forms, tools, FAQs and longer reading sections.

Location
Alignment
Eyebrow guidance
Landing-page hero
Left; aligned with the navigation logo
Optional and only when it adds context
Article or tool banner
Left
Use a category only when it helps orientation
Directory or card-grid introduction
Centred
Recommended: identify the library or content type
Instructions, forms and FAQs
Left
Usually unnecessary
Short call-to-action panel
Centred
Optional
Footer
Left
Do not use

Eyebrow rules

  • Keep the label to two to four words and place it immediately above the heading it describes.
  • Use small uppercase text, increased letter spacing and one restrained accent colour.
  • Use a paragraph or span, not another heading level.
  • Remove it when it merely repeats the heading.
Spacing rule: Use 8–12px from eyebrow to heading, 12–16px from heading to introductory text, and 32–48px before cards, filters or other content. Centred groups should remain within 680–760px; hero and reading sections remain left aligned on mobile.

Foundations

Layout and spacing

48121624324872
ContextMaximum widthResponsive behaviour
Site containerBlocksy normal containerUses the theme container setting and aligns with the navigation logo
Reading column720–900pxMaintains readable line length
Component gridFull container3 columns → 2 → 1
Page gutterTheme container gutterNever touches the viewport edge

Foundations

Shape and elevation

10px
Inputs
16px
Cards
22px
Workspaces
999px
Actions and pills

Use shadows to establish hierarchy, not decoration. Standard cards use one restrained shadow; selected controls use borders or backgrounds rather than heavier shadows.

Foundations

Motion

Motion explains change: cards may fade and rise when filtering, disclosure panels expand smoothly and selected controls glide. It must never be required to understand state.

TokenValueUse
--dhz-motion-fast120msHover and focus colour changes
--dhz-motion-standard180msButtons, pills and small controls
--dhz-motion-layout280msFiltering and disclosure transitions
Reduced motionNear-instantHonour prefers-reduced-motion

Content

Voice and tone

Practical

Lead with what someone can do. Prefer examples and next steps to abstract claims.

Clear

Use familiar words, active sentences and descriptive labels. Explain specialist terms.

Measured

Avoid hype and false certainty. State limitations when a tool provides guidance rather than a verdict.

Content

Editorial rules

Element
Rule
Example
Headings
Use sentence case and describe the section
How to check your headings
Links
Make the destination clear out of context
Read the accessibility checklist
Buttons
Use an action verb and expected result
Check contrast
Errors
State the problem and recovery action
Enter a valid email address
Image alt text
Describe purpose; omit decorative detail
Chart comparing monthly organic visits
Dates
Use day month year
26 September 2026

Components

Buttons and links Ready

Button colour communicates hierarchy. Use gold for the main journey, action blue for a functional operation, outline for a supporting choice and text-only styling for minor actions.

Approved hierarchy

Style
Use
Examples
Avoid
Gold primary
Highest-priority journey or conversion; one per action group
Explore the tools · Read the guide · Submit enquiry
Routine controls, filters and taxonomy
Action blue
Operations inside tools, forms and directories
Check headings · Generate code · Apply filters
Decorative emphasis or a competing site-level CTA
Transparent outline
Secondary route or supporting option
How the Lab works · Load an example · View methodology
Making it more prominent than the filled action
Text-only
Minor, reversible or low-priority action
Clear · Back · Cancel
The main next step

Construction and behaviour

  1. Use a concise verb-led label in sentence case.
  2. Use a 50px preferred height and never less than a 44px target.
  3. Use a fully rounded radius, 22–24px horizontal padding and 12–16px between controls.
  4. Use navy text on gold and white text on action blue.
  5. Show a visible cyan keyboard-focus ring.
  6. Keep hover and active transitions between 120–180ms and honour reduced motion.
  7. Preserve the control width while loading and return focus to a useful place.
  8. Use the native disabled state and explain why an action is unavailable.
Element rule: Use a link when the destination changes and a button when the current page performs an action. Do not use “Click here”.

Components

Pills and badges Ready

Choose a pill by meaning rather than colour. Taxonomy navigates, filters change results, status describes an exceptional state and metadata provides quiet context.

Distinct purposes

SEO & ContentBeta10 minutes
TypeElement and behaviourVisual treatment
TaxonomyLink to the category or archive; use aria-current="page" on the current archiveTransparent navy outline on light surfaces; white outline on dark banners
FilterButton with aria-pressed; include “All” firstOutline when inactive; navy fill and white text when selected
StatusNon-interactive text shown only when useful to visitorsRestrained tint; Beta may use pale gold and New may use pale blue
MetadataNon-interactive difficulty, platform or setup informationPale neutral surface with navy or muted text

Consistency rules

  • Use a fully rounded radius, 6px 10–12px visual padding and an 8px gap.
  • Keep labels short and allow groups to wrap rather than overflow.
  • Clickable pills must provide a minimum 44px touch target even when the visual shape is compact.
  • Do not make hover look identical to the selected state.
  • Do not give taxonomy pills filled gold or blue styling; they are classification, not primary actions.
  • Do not expose Live, Draft or In development badges publicly. Keep editorial workflow states inside WordPress.

Components

Cards Ready

SEO & Content

A descriptive article title

Descriptions explain the benefit without repeating the title.

Read the guide →

Accessibility

A focused Lab tool

Tool cards use the same hierarchy and link to a focused workspace.

Open the tool →

Web & Design

Content with a longer title remains balanced

Flexible layout keeps actions aligned without truncating meaningful text.

View details →

Components

Forms Ready

Labels remain visible after typing.
Enter a complete email address.
Updates
Form rule: Instructions and errors are connected to fields in code and remain understandable without colour.

Components

Feedback and system status Ready

InformationThis check runs privately in your browser.
SuccessYour settings were saved.
ReviewThis heading jump may make the outline harder to follow.
ErrorThe request could not be completed. Try again.

Patterns

Page templates

Landing page

Clear hero → value or introduction → grouped content → meaningful next action.

Home · About · Knowledge Hub · Lab
Article

Image hero → metadata → readable body → optional contents → related guidance.

Guides · Checklists · Explanations
Lab tool

Focused hero → interactive workspace → instructions → interpretation → privacy note.

Browser-based utilities
Directory

Purpose → search and filters → result count → even card grid → empty state.

Knowledge and tool discovery

Quality

Accessibility acceptance checklist

  • All functions work with a keyboard and show visible focus.
  • Text and essential graphics meet appropriate contrast requirements.
  • Page structure uses one descriptive H1 and a logical heading hierarchy.
  • Controls use native elements, labels and state attributes before ARIA workarounds.
  • Layouts remain usable at 200% zoom and through narrow responsive widths.
  • Touch targets are comfortably sized and separated.
  • Motion respects reduced-motion preferences.
  • Errors identify the problem and provide a recovery step.
  • Images have purposeful alternatives or are correctly decorative.

Delivery

Implementation

Shared decisions are exposed as CSS custom properties. Components consume semantic variables instead of repeating raw colour, spacing and radius values.

:root {
  --dhz-colour-brand: #fdbb22;
  --dhz-colour-ink: #10213f;
  --dhz-colour-action: #1665d8;
  --dhz-space-section: clamp(48px, 7vw, 96px);
  --dhz-radius-card: 16px;
  --dhz-motion-standard: 180ms;
}
LayerOwnerChange method
ThemeBlocksyCustomizer and supported theme settings
Site patternsDHZ Site PolishVersioned, reversible plugin releases
Lab componentsDHZ Lab ToolsTool plugin and shared Lab taxonomy
DocumentationDHZ Design SystemUpdate this reference with every shared decision