Colors

Our color system uses two layers: primitive tokens define the raw palette, while semantic tokens assign meaning and purpose to each color. This separation makes the system flexible and maintainable.

Primitive Colors

Raw color values that form the foundation of our palette. Referenced by semantic tokens.

Primary (Coral)

primary-100
#FFF5F3
primary-200
#FDDDD8
primary-300
#F7D5D0
primary-400
#FF9E8E
primary-500
#FF8672
primary-600
#E86B56
primary-700
#CC5040
primary-800
#A33A2E
primary-900
#7A2B22
primary-100
#FFF5F3
primary-200
#FDDDD8
primary-300
#F7D5D0
primary-400
#FF9E8E
primary-500
#FF8672
primary-600
#E86B56
primary-700
#CC5040
primary-800
#A33A2E
primary-900
#7A2B22

Neutral

neutral-50
#F0ECEA
neutral-100
#E8E4E2
neutral-200
#D4D0CE
neutral-300
#ACACAC
neutral-400
#888888
neutral-500
#666666
neutral-600
#444444
neutral-700
#333333
neutral-800
#222222
neutral-900
#111111
neutral-50
#F0ECEA

Accent & Core

accent-yellow
#FCE66F
accent-gold
#E5BC73
accent-lavender
#C1C1D6
accent-slate
#4B5C77
white
#FFFFFF
black
#000000

Semantic Tokens

Purpose-driven tokens that reference primitives. Use these in components for consistent, themeable styling.

text-heading
primary-500 β†’ #FF8672
Headings, emphasis text
text-body
neutral-800 β†’ #222222
Body text, paragraphs
text-muted
neutral-500 β†’ #666666
Secondary text, captions
text-link
primary-500 β†’ #FF8672
Links, interactive text
bg-surface
white β†’ #FFFFFF
Page backgrounds
bg-card
neutral-50 β†’ #F0ECEA
Card backgrounds
bg-hero
primary-100 β†’ #FFF5F3
Hero section backgrounds
border-default
neutral-200 β†’ #D4D0CE
Borders, dividers
button-primary-bg
accent-slate β†’ #4B5C77
Primary button backgrounds
button-primary-text
white β†’ #FFFFFF
Primary button text
bg-hero
primary-100 β†’ #FFF5F3
Hero section backgrounds
border-default
neutral-200 β†’ #D4D0CE
Borders, dividers
button-primary-bg
accent-slate β†’ #4B5C77
Primary button backgrounds
button-primary-text
white β†’ #FFFFFF
Primary button text

Typography

Poppins is our sole typeface, used across all text elements. Our type system defines consistent sizes, weights, and line heights through design tokens.

Font Family

Poppins
Primary typeface, used site-wide
Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj

Type Scale

size-4xl
48px / 3rem
The quick brown fox
size-3xl
36px / 2.25rem
The quick brown fox
size-2xl
30px / 1.875rem
The quick brown fox
size-xl
24px / 1.5rem
The quick brown fox
size-lg
18px / 1.125rem
The quick brown fox
size-base
16px / 1rem
The quick brown fox
size-sm
14px / 0.875rem
The quick brown fox
size-xs
12px / 0.75rem
The quick brown fox

Font Weights

weight-regular
400
The quick brown fox
weight-medium
500
The quick brown fox
weight-semibold
600
The quick brown fox
weight-bold
700
The quick brown fox
weight-extrabold
800
The quick brown fox

Heading Classes

.display
48px / Bold
Display Heading
.h1
36px / Bold
Heading One
.h2
30px / Extrabold
Heading Two
.h3
24px / Extrabold
Heading Three
.h4
18px / Extrabold
Heading Four
.h5 / .h6
16px / Extrabold
Heading Five / Six

Body Text Classes

.text-lead
18px / Regular
Lead paragraph text for introductions and summaries.
.text-body
16px / Regular
Standard body text for paragraphs and general content.
.text-small
14px / Regular
Small text for secondary information and metadata.
.text-caption
12px / Regular
Caption text for labels, timestamps, and fine print.

Spacing & Layout

An 8-point spacing scale provides consistent rhythm across all components and layouts. Container widths and grid patterns create flexible, responsive page structures.

Spacing Scale

space-1
4px
space-2
8px
space-3
12px
space-4
16px
space-5
24px
space-6
32px
space-7
48px
space-8
64px
space-9
96px

Container Widths

container-narrow
720px max-width
720px
container-default
1200px max-width
1200px
container-wide
1400px max-width
1400px

Grid System

Responsive grid layouts using CSS Grid. Columns stack on smaller breakpoints.

2-Column Grid

3-Column Grid

4-Column Grid

Components

Reusable UI components form the building blocks of every page. Each component is documented with its variants, states, and usage guidelines to ensure consistency across the site.

Buttons

Buttons drive user actions throughout the site. Three variants serve different levels of visual emphasis: Primary for main actions, Secondary for supporting actions, and Ghost for tertiary or inline actions.

Learn More
Secondary

Classes: button-primary, button-secondary, button-ghost. Apply hover and pressed states via pseudo-classes. Use disabled attribute for inactive state.

Cards

Cards display content in a contained, scannable format. Three variants handle different content densities: Default for standard content, Featured for highlighted items, and Compact for lists and grids.

Process Groups

Research-backed support groups led by trained facilitators.

Default

Featured Story

A highlighted content piece with emphasis styling.

Featured

Blog Post Title

A compact card for dense grid layouts.

Compact

Classes: card, card-image, card-content, card-title, card-cta. Use combo classes card--featured and card--compact for variants.

Section Variants

Sections define the vertical rhythm of each page. Three variants control visual tone: Default for standard content areas, Hero for prominent introductions, and Alt (Dark) for contrast and emphasis.

Default Section

White background, standard padding

Hero Section

Warm tint, extra padding

Dark Section

Dark background, light text

Classes: section, section-hero, section-alt. Sections always contain a container child for content width control.

CTA Blocks

Call-to-action blocks prompt visitors toward key conversions. Two patterns cover the primary use cases: Donation CTAs for fundraising and Newsletter CTAs for email capture.

Support Our Mission

Your gift brings preventative mental health programs to the infertility community.

Donation CTA

Stay Connected

Get updates on events, resources, and stories from our community.

Newsletter CTA

Classes: cta-block, cta-block--donate, cta-block--newsletter. Each CTA contains a heading, supporting text, and a primary button.