Font Declarations

Web browsers cannot resolve Hoefler & Co. fonts by family name alone on macOS. Each weight requires an explicit @font-face declaration with local() PostScript name references. No Google Fonts or web font CDN dependencies — all fonts must be installed locally.

@font-face Declarations

These declarations must appear at the top of any Breen Consulting web page stylesheet. They map CSS font-family + font-weight combinations to locally installed font files via their PostScript names.

Font FamilyDeclarationNotes
Mercury Display 400local('Mercury-DisplayRoman')Document headings, general serif
Mercury Display 700local('Mercury-DisplayBold')Hero headlines, emphasis
Mercury Display Bold*'Mercury Display Bold' as familyHero H1 — use as named family at weight 700
Gotham HTF 200local('GothamHTF-XLight')Logo subtitle, accents
Gotham HTF 300local('GothamHTF-Light')Light body text
Gotham HTF 400local('GothamHTF-Book')Default body text
Gotham HTF 500local('GothamHTF-Medium')Navigation, overlines
Gotham HTF 700local('GothamHTF-Bold')Strong emphasis

* The Hero H1 uses font-family: 'Mercury Display Bold' directly (as a named family) with font-weight: 700 and -webkit-text-stroke: 0.4px. This is a workaround for macOS font resolution — see Hero Section.

Fallback Stacks

CSS VariableValuePurpose
--font-serif'Mercury Display', Georgia, serifHeadings, display type
--font-sans'Gotham HTF', 'Helvetica Neue', sans-serifBody text, UI elements

Colour Tokens

All colours are defined as CSS custom properties on :root. Token names use the --bc- prefix (Breen Consulting). The web palette extends the print guide's 5 core colours with additional extended neutrals and semantic colours.

Visual Palette

Core Brand Colours

Navy Primary
#0B1D32
--bc-navy
Navy Mid
#152A45
--bc-navy-mid
Navy Light
#1E3A5F
--bc-navy-light
Blue Accent
#2563EB
--bc-blue
Blue Light
#60A5FA
--bc-blue-light

Neutrals

White
#FFFFFF
--bc-white
Off-White
#F8FAFC
--bc-offwhite
Gray 200
#E2E8F0
--bc-gray-200
Gray 500
#64748B
--bc-gray-500
Gray 700
#334155
--bc-gray-700

Sub-Brand Accents

Consulting
#60A5FA
--sb-consulting
Digital
#34D399
--sb-digital
AI
#A78BFA
--sb-ai
Strategy
#FBBF24
--sb-strategy
Marketing
#FB923C
--sb-marketing
Creative
#F472B6
--sb-creative
Engineering
#38BDF8
--sb-engineering

Token Reference

Primary Palette

--bc-navy#0B1D32
--bc-navy-mid#152A45
--bc-navy-light#1E3A5F
TokenHexUsage
--bc-navy#0B1D32Primary dark — backgrounds, wordmark
--bc-navy-mid#152A45Secondary dark — cards, depth layers
--bc-navy-light#1E3A5FTertiary — hover states, borders

Accent Blues

--bc-blue#2563EB
--bc-blue-light#60A5FA
--bc-blue-pale#DBEAFE
TokenHexUsage
--bc-blue#2563EBPrimary accent — CTAs, links
--bc-blue-light#60A5FALight accent — hovers, highlights
--bc-blue-pale#DBEAFEVery light — tag backgrounds

Neutrals

--bc-white#FFFFFF
--bc-offwhite#F8FAFC
--bc-gray-100#F1F5F9
--bc-gray-200#E2E8F0
--bc-gray-300#CBD5E1
--bc-gray-400#94A3B8
--bc-gray-500#64748B
--bc-gray-600#475569
--bc-gray-700#334155
--bc-gray-800#1E293B
TokenHexUsage
--bc-white#FFFFFFPrimary background
--bc-offwhite#F8FAFCSection backgrounds
--bc-gray-100#F1F5F9Light fills, cards
--bc-gray-200#E2E8F0Borders, dividers
--bc-gray-300#CBD5E1Inactive borders
--bc-gray-400#94A3B8Placeholder text, footer links
--bc-gray-500#64748BSecondary body text, captions
--bc-gray-600#475569Metadata, labels
--bc-gray-700#334155Primary body text
--bc-gray-800#1E293BNear-black text

Semantic

--bc-success#059669
--bc-warning#D97706
--bc-error#DC2626

Sub-Brand Accents

--sb-consulting#60A5FA
--sb-digital#34D399
--sb-ai#A78BFA
--sb-strategy#FBBF24
--sb-marketing#FB923C
--sb-creative#F472B6
--sb-engineering#38BDF8
TokenHexUsage
--sb-consulting#60A5FAConsulting sub-brand
--sb-digital#34D399Digital sub-brand
--sb-ai#A78BFAAI sub-brand
--sb-strategy#FBBF24Strategy sub-brand
--sb-marketing#FB923CMarketing sub-brand
--sb-creative#F472B6Creative sub-brand
--sb-engineering#38BDF8Engineering sub-brand

Typography System

The web typography system defines a complete scale from Display/H1 down to small captions and overlines. All sizes are set in rem units (base: 16px). Font weights reference specific @font-face declarations.

Live specimens below — these are rendering in the actual brand fonts installed on this machine. If Mercury Display or Gotham HTF are not installed, system fallbacks (Georgia, Helvetica Neue) will be used instead.

Type Scale — Live Specimens

Complex problems,
clear solutions.
Display / H1 Mercury Display Roman · 3.5rem (56px) · weight 400 · -0.02em tracking
Transform your business
with technology.
Hero H1 (Bold) Mercury Display Bold (named family) · 4rem (64px) · weight 700 · stroke 0.4px
Technical expertise.
Business acumen.
Heading / H2 Mercury Display Roman · 2.5rem (40px) · weight 400 · -0.01em tracking
Delivering what matters, on time.
Heading / H3 Mercury Display Roman · 1.75rem (28px) · weight 400
When strategy meets execution
Heading / H4 Mercury Display Roman · 1.25rem (20px) · weight 400
Strategy · Technology · Delivery
Overline Gotham HTF · 0.75rem (12px) · weight 600 · 0.15em tracking · uppercase
Where deep technical skill meets practical business understanding — delivering solutions that actually work.
Subtitle Gotham HTF Light · 1.125rem (18px) · weight 300 · line-height 1.8
Breen Consulting partners with small and medium businesses to solve their hardest technical challenges. We combine deep technical expertise with practical business understanding to deliver solutions that actually work — on time, every time.
Body Gotham HTF Book · 1rem (16px) · weight 400 · line-height 1.7
Capabilities   Approach   About   Contact
Start a conversation →
Nav + Button Nav: Gotham HTF Medium 13px · Button: Gotham HTF 600wt 13px

The Hero H1 is the only web element that uses Mercury Display Bold. All other headings use Mercury Display Roman (weight 400). The -webkit-text-stroke: 0.4px adds subtle optical weight on Retina displays.

Base Styles

PropertyValueNotes
html font-size16pxRoot for rem calculation
body font-familyvar(--font-sans)Gotham HTF Book
body font-weight400Book weight
body line-height1.7Generous for readability
body colorvar(--bc-gray-700) #334155Primary text colour
body backgroundvar(--bc-white) #FFFFFF
-webkit-font-smoothingantialiasedOn html element
-moz-osx-font-smoothinggrayscaleOn html element
scroll-behaviorsmoothOn html element

Heading Defaults

PropertyValueNotes
font-familyvar(--font-serif)Mercury Display
font-weight400Roman — not bold
colorvar(--bc-navy) #0B1D32
line-height1.2Tight for display type

Spacing System

A rem-based spacing scale provides consistent rhythm. All spacing tokens are defined as CSS custom properties.

Spacing Scale

TokenValuePixels (at 16px base)
--space-xs0.25rem4px
--space-sm0.5rem8px
--space-md1rem16px
--space-lg1.5rem24px
--space-xl2rem32px
--space-2xl3rem48px
--space-3xl4rem64px
--space-4xl6rem96px

Section Padding

ElementValueNotes
sectionvar(--space-4xl) 096px vertical padding
.container max-width1200pxContent constraint
.container padding0 var(--space-xl)32px horizontal gutters