381 lines
17 KiB
Markdown
381 lines
17 KiB
Markdown
# Ease Health — Style Reference
|
||
> Botanical greenhouse on cream paper
|
||
|
||
**Theme:** light
|
||
|
||
Ease Health uses a clinical-botanical language: a warm cream canvas layered with soft sage, keylime, and slate-blue panels that feel like a greenhouse rendered on paper. Typography carries the entire personality — weight 300 serif headlines (Faire Octave) paired against a humanist sans (Suisse Intl) create a hushed, editorial authority unusual for healthtech. A single deep forest green (#0f3e17) anchors every action and heading, reading like ink on watercolor. Surfaces are flat and shadowless; depth comes from layered tinted panels and generous padding, not elevation. Components are rounded (~14px) and pill-shaped for tags, keeping the whole system soft and approachable without losing clinical seriousness.
|
||
|
||
## Tokens — Colors
|
||
|
||
| Name | Value | Token | Role |
|
||
|------|-------|-------|------|
|
||
| Forest Ink | `#0f3e17` | `--color-forest-ink` | Primary action buttons, headings, links, icon strokes — deep botanical green reads as ink, the only saturated dark in the system |
|
||
| Sage Mist | `#b1dbb8` | `--color-sage-mist` | Mid-tone card backgrounds and decorative washes, panel-level surfaces |
|
||
| Keylime Wash | `#e1f4df` | `--color-keylime-wash` | Hero panel background, light card surfaces — the dominant tinted canvas tone |
|
||
| Mint Veil | `#cfe7d3` | `--color-mint-veil` | Accent card surfaces, soft section dividers between sage and keylime layers |
|
||
| Slate Hush | `#b6ced5` | `--color-slate-hush` | Cool counter-balance panel for product preview and feature blocks — breaks the green monotony with desaturated blue-gray |
|
||
| Cream Paper | `#fffefc` | `--color-cream-paper` | Page background, badge backgrounds, button text — warm off-white that softens every green |
|
||
| Charcoal | `#222222` | `--color-charcoal` | Navigation text and minor UI strokes — restrained secondary ink |
|
||
| Border Mist | `#efeeeb` | `--color-border-mist` | Hairline dividers and subtle borders throughout the layout |
|
||
| Forest Shadow | `#0c2f10` | `--color-forest-shadow` | Supporting palette color for small decorative accents when the core palette needs contrast. Do not promote it to the primary CTA color |
|
||
|
||
## Tokens — Typography
|
||
|
||
### Faire Octave — Display serif for all section headings and hero copy · `--font-faire-octave`
|
||
- **Substitute:** Cormorant Garamond, Playfair Display
|
||
- **Weights:** 300
|
||
- **Sizes:** 40px, 56px, 74px
|
||
- **Line height:** 1.05–1.35
|
||
- **Letter spacing:** -0.01em at 40px, -0.03em at 56–74px
|
||
- **Role:** Display serif for all section headings and hero copy
|
||
|
||
### Suisse Intl — Body, navigation, UI labels, buttons, captions — humanist sans at whisper weight for feature lists and normal weight for copy · `--font-suisse-intl`
|
||
- **Substitute:** Inter, Söhne, Helvetica Neue
|
||
- **Weights:** 300, 400, 600
|
||
- **Sizes:** 10px, 11px, 12px, 14px, 18px, 23px, 28px, 56px
|
||
- **Line height:** 1.00–1.61
|
||
- **Letter spacing:** 0.08em uppercase at 11px/600 (eyebrow labels); natural tracking otherwise
|
||
- **Role:** Body, navigation, UI labels, buttons, captions — humanist sans at whisper weight for feature lists and normal weight for copy
|
||
|
||
### Type Scale
|
||
|
||
| Role | Size | Line Height | Letter Spacing | Token |
|
||
|------|------|-------------|----------------|-------|
|
||
| caption | 10px | 1.61 | — | `--text-caption` |
|
||
| body | 14px | 1.5 | — | `--text-body` |
|
||
| subheading | 18px | 1.3 | — | `--text-subheading` |
|
||
| heading-sm | 23px | 1.5 | — | `--text-heading-sm` |
|
||
| heading | 40px | 1.35 | -0.4px | `--text-heading` |
|
||
| heading-lg | 56px | 1.2 | -1.68px | `--text-heading-lg` |
|
||
| display | 74px | 1.05 | -2.22px | `--text-display` |
|
||
|
||
## Tokens — Spacing & Shapes
|
||
|
||
**Density:** comfortable
|
||
|
||
### Spacing Scale
|
||
|
||
| Name | Value | Token |
|
||
|------|-------|-------|
|
||
| 4 | 4px | `--spacing-4` |
|
||
| 7 | 7px | `--spacing-7` |
|
||
| 9 | 9px | `--spacing-9` |
|
||
| 11 | 11px | `--spacing-11` |
|
||
| 14 | 14px | `--spacing-14` |
|
||
| 18 | 18px | `--spacing-18` |
|
||
| 21 | 21px | `--spacing-21` |
|
||
| 28 | 28px | `--spacing-28` |
|
||
| 35 | 35px | `--spacing-35` |
|
||
| 42 | 42px | `--spacing-42` |
|
||
| 49 | 49px | `--spacing-49` |
|
||
| 56 | 56px | `--spacing-56` |
|
||
| 70 | 70px | `--spacing-70` |
|
||
| 76 | 76px | `--spacing-76` |
|
||
| 99 | 99px | `--spacing-99` |
|
||
| 156 | 156px | `--spacing-156` |
|
||
|
||
### Border Radius
|
||
|
||
| Element | Value |
|
||
|---------|-------|
|
||
| nav | 7px |
|
||
| cards | 14px |
|
||
| badges | 999px |
|
||
| buttons | 14px |
|
||
| sections | 9999px |
|
||
|
||
### Layout
|
||
|
||
- **Page max-width:** 1200px
|
||
- **Section gap:** 64-96px
|
||
- **Card padding:** 28-42px
|
||
- **Element gap:** 14-21px
|
||
|
||
## Components
|
||
|
||
### Primary Forest Button
|
||
**Role:** Filled CTA for demos, explores, and form submits
|
||
|
||
Background #0f3e17, text #fffefc, 14px border-radius, padding 14px 21px, Suisse Intl 14px/400. Arrow icon in white at trailing edge. Hover transitions to #0c2f10.
|
||
|
||
### Large Forest Button
|
||
**Role:** Hero-scale CTA with generous breathing room
|
||
|
||
Same Forest Ink fill and white text, but padding scales to 42px all sides for hero placement. Rounded 14px corners. Used sparingly for maximum-weight calls to action.
|
||
|
||
### Pill Badge / Tag
|
||
**Role:** Category labels, CRM/EHR/RCM module tags, status indicators
|
||
|
||
Background #fffefc, text Forest Ink #0f3e17, 999px border-radius (full pill), padding 9px 14px, Suisse Intl 14px/400. Inverted cream-on-green relationship makes tags feel like paper labels.
|
||
|
||
### Sage Feature Card
|
||
**Role:** Heavier-tinted content panel for feature highlights
|
||
|
||
Background Sage Mist #b1dbb8, 14px border-radius, 42px padding all sides, no shadow. Hosts illustration or product preview content. Flat surface — depth comes from color not elevation.
|
||
|
||
### Keylime Soft Card
|
||
**Role:** Light-tinted content panel for secondary features
|
||
|
||
Background Keylime Wash #e1f4df, 14px border-radius, 28px padding, no shadow. Tighter padding than sage variant for compact content blocks.
|
||
|
||
### Slate Product Panel
|
||
**Role:** Cool-toned container for product UI screenshots and demos
|
||
|
||
Background Slate Hush #b6ced5, 14px border-radius, 42px padding, no shadow. Provides cool visual counterpoint to warm green panels — the only non-green tinted surface.
|
||
|
||
### Product Preview Card (Inner)
|
||
**Role:** White floating card within Slate Product Panel
|
||
|
||
Background Cream Paper #fffefc, 14px border-radius, 28px padding, no border or shadow. Represents a product screen mockup (CRM, EHR, RCM). Sits on the Slate panel like a printed screenshot.
|
||
|
||
### Navigation Bar
|
||
**Role:** Top-level site navigation
|
||
|
||
Transparent over cream canvas, text Charcoal #222222, Suisse Intl 14px/400, 7px radius on interactive items. 'Book a Demo' CTA pill on the right uses Forest Ink fill.
|
||
|
||
### Eyebrow Label
|
||
**Role:** Section category tag above headings
|
||
|
||
Suisse Intl 11px/600, letter-spacing 0.08em, uppercase, Forest Ink color. Tiny typographic marker that labels each section's theme (e.g. 'QUICK ANSWER').
|
||
|
||
### FAQ Row
|
||
**Role:** Two-column question/answer layout
|
||
|
||
Left column: Faire Octave 40px/300 in Forest Ink for question. Right column: Suisse Intl 14px/400 in Charcoal for answer. 1px Border Mist divider between rows.
|
||
|
||
### Investor Logo Strip
|
||
**Role:** Social proof row of VC logos
|
||
|
||
Single horizontal row, monochrome treatment in Charcoal #222222 on cream canvas, generous vertical padding (42px+). No decorative borders — relies on whitespace for rhythm.
|
||
|
||
## Do's and Don'ts
|
||
|
||
### Do
|
||
- Use Forest Ink (#0f3e17) for every CTA, heading, and primary link — it is the only saturated dark and must remain singular
|
||
- Set all display headings in Faire Octave weight 300 with tight tracking (-0.03em at 56–74px) — never bold the serif
|
||
- Pair serif questions with sans-serif answers in FAQ and feature blocks to create typographic contrast
|
||
- Layer surfaces using cream → keylime → mint → sage → slate in order to create depth without shadows
|
||
- Use 14px border-radius on all cards and buttons, 999px on all badges and tags — consistency is non-negotiable
|
||
- Apply 0.08em letter-spacing with uppercase and 600 weight for eyebrow labels only — nowhere else
|
||
- Keep the Slate Hush panel as the exclusive home for product screenshots — it provides the cool counterbalance to warm green panels
|
||
|
||
### Don't
|
||
- Never add box-shadow to cards — the system communicates elevation through tinted layers only
|
||
- Don't use Forest Ink as a background tint — it is too dark for surface washes; reserve for text and action fills only
|
||
- Avoid mixing multiple heading weights — everything is weight 300 in Faire Octave; bold would break the hushed editorial tone
|
||
- Don't place colored borders on cards — depth comes from fill contrast, not strokes
|
||
- Never use more than one serif at a time — Faire Octave owns display, Suisse Intl owns everything else
|
||
- Don't introduce new accent hues — the palette is strictly botanical greens + slate; any other color breaks the greenhouse metaphor
|
||
- Avoid tight padding under 21px on cards — generous 28–42px padding is essential to the soft, breathing-room aesthetic
|
||
- Don't use the sage or keylime tones for text — they are surface colors only and fail contrast for copy
|
||
|
||
## Surfaces
|
||
|
||
| Level | Name | Value | Purpose |
|
||
|-------|------|-------|---------|
|
||
| 0 | Cream Paper | `#fffefc` | Base page background — warm off-white dominates the canvas |
|
||
| 1 | Keylime Wash | `#e1f4df` | Primary tinted panel — hero left column, light feature blocks |
|
||
| 2 | Mint Veil | `#cfe7d3` | Mid-tone section surface between keylime and sage |
|
||
| 3 | Sage Mist | `#b1dbb8` | Heavier tinted panels — hero accents, feature highlights |
|
||
| 4 | Slate Hush | `#b6ced5` | Cool counter-panel for product showcases and visual contrast |
|
||
|
||
## Elevation
|
||
|
||
The system deliberately avoids shadows entirely — boxShadow=none on all card variants. Depth and hierarchy are communicated through layered tinted surfaces (cream → keylime → sage → slate) rather than elevation. This keeps the interface feeling like watercolor paper rather than glassmorphic UI, matching the botanical-greenhouse metaphor.
|
||
|
||
## Imagery
|
||
|
||
Imagery is product-first and UI-native: floating product screenshots (CRM cards, EHR patient views, RCM revenue graphs) rendered as crisp white cards on Slate Hush panels. No lifestyle photography, no stock imagery. Iconography is minimal stroke-based, rendered in Forest Ink. Illustrations, where present, use the same sage/keylime palette to stay on-system. The visual density is text-dominant with product mockups serving as proof, not decoration.
|
||
|
||
## Layout
|
||
|
||
Max-width 1200px centered container with 64–96px vertical section gaps. Hero is a two-column split: left panel tinted Keylime Wash with serif headline + body + CTA; right panel tinted Slate Hush housing three product preview cards (CRM, EHR, RCM) in a row. Below the hero, sections alternate between cream canvas and tinted panels in a botanical rhythm. FAQ uses a two-column text grid (serif question left, sans answer right). The investor logo strip is a single full-width row on cream. Navigation is minimal — left-aligned logo, centered text links, right-aligned CTA pill — no sticky behavior or mega-menu. The overall page rhythm is generous and editorial rather than dense.
|
||
|
||
## Agent Prompt Guide
|
||
|
||
**Quick Color Reference**
|
||
- Text/Heading: #0f3e17 (Forest Ink)
|
||
- Page background: #fffefc (Cream Paper)
|
||
- Hero/light panel: #e1f4df (Keylime Wash)
|
||
- Feature panel: #b1dbb8 (Sage Mist)
|
||
- Product showcase panel: #b6ced5 (Slate Hush)
|
||
- Border: #efeeeb
|
||
- primary action: #0f3e17 (filled action)
|
||
|
||
**Example Component Prompts**
|
||
1. Create a Primary Action Button: #0f3e17 background, #fffefc text, 9999px radius, compact pill padding. Use this filled treatment for the main CTA.
|
||
|
||
2. **Feature card**: Sage Mist #b1dbb8 background, 14px border-radius, 42px padding all sides, no shadow. Eyebrow label in Suisse Intl 11px/600 uppercase with 0.08em tracking, Forest Ink color. Heading in Faire Octave 40px/300, Forest Ink. Body in Suisse Intl 14px/400, Charcoal #222222.
|
||
|
||
3. **Pill badge**: Background Cream Paper #fffefc, text Forest Ink #0f3e17, 999px border-radius, padding 9px 14px, Suisse Intl 14px/400. Place above section headings as a category tag.
|
||
|
||
4. **FAQ row**: Two-column grid. Left: Faire Octave 40px/300 question in Forest Ink. Right: Suisse Intl 14px/400 answer in Charcoal #222222. Separator: 1px solid Border Mist #efeeeb below each row.
|
||
|
||
|
||
## Type Pairing Philosophy
|
||
|
||
The serif/sans split is the system's defining typographic move. Faire Octave (or Cormorant Garamond as substitute) handles ALL headings at weight 300 — never bold. Suisse Intl (or Inter) handles ALL UI and body text. The whisper-weight serif creates editorial calm unusual in healthtech, where most competitors use bold geometric sans headlines. Tracking tightens as size grows: -0.01em at 40px, -0.03em at 56–74px. Body text uses natural tracking. The only uppercase treatment is 11px/600 eyebrows at 0.08em — these are navigational markers, not decorative caps.
|
||
|
||
## Similar Brands
|
||
|
||
- **Headspace** — Same botanical palette approach with sage greens and soft tinted panels, plus serif-leaning editorial calm and generous breathing room
|
||
- **Calm** — Nature-inspired muted greens against cream, generous whitespace, flat surfaces without shadows, and a serene clinical-adjacent tone
|
||
- **Mercury** — Deep single-color ink (#0f3e17 forest vs Mercury's near-black) against a warm off-white canvas with editorial serif display type at weight 300
|
||
- **Spring Health** — Behavioral health branding with green-dominant palette, soft panel layering, and humanist sans body type paired with serif accents
|
||
- **Grow Therapy** — Healthcare SaaS using sage and mint greens against cream, with rounded components and a botanical rather than clinical visual mood
|
||
|
||
## Quick Start
|
||
|
||
### CSS Custom Properties
|
||
|
||
```css
|
||
:root {
|
||
/* Colors */
|
||
--color-forest-ink: #0f3e17;
|
||
--color-sage-mist: #b1dbb8;
|
||
--color-keylime-wash: #e1f4df;
|
||
--color-mint-veil: #cfe7d3;
|
||
--color-slate-hush: #b6ced5;
|
||
--color-cream-paper: #fffefc;
|
||
--color-charcoal: #222222;
|
||
--color-border-mist: #efeeeb;
|
||
--color-forest-shadow: #0c2f10;
|
||
|
||
/* Typography — Font Families */
|
||
--font-faire-octave: 'Faire Octave', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
|
||
--font-suisse-intl: 'Suisse Intl', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
|
||
|
||
/* Typography — Scale */
|
||
--text-caption: 10px;
|
||
--leading-caption: 1.61;
|
||
--text-body: 14px;
|
||
--leading-body: 1.5;
|
||
--text-subheading: 18px;
|
||
--leading-subheading: 1.3;
|
||
--text-heading-sm: 23px;
|
||
--leading-heading-sm: 1.5;
|
||
--text-heading: 40px;
|
||
--leading-heading: 1.35;
|
||
--tracking-heading: -0.4px;
|
||
--text-heading-lg: 56px;
|
||
--leading-heading-lg: 1.2;
|
||
--tracking-heading-lg: -1.68px;
|
||
--text-display: 74px;
|
||
--leading-display: 1.05;
|
||
--tracking-display: -2.22px;
|
||
|
||
/* Typography — Weights */
|
||
--font-weight-light: 300;
|
||
--font-weight-regular: 400;
|
||
--font-weight-semibold: 600;
|
||
|
||
/* Spacing */
|
||
--spacing-4: 4px;
|
||
--spacing-7: 7px;
|
||
--spacing-9: 9px;
|
||
--spacing-11: 11px;
|
||
--spacing-14: 14px;
|
||
--spacing-18: 18px;
|
||
--spacing-21: 21px;
|
||
--spacing-28: 28px;
|
||
--spacing-35: 35px;
|
||
--spacing-42: 42px;
|
||
--spacing-49: 49px;
|
||
--spacing-56: 56px;
|
||
--spacing-70: 70px;
|
||
--spacing-76: 76px;
|
||
--spacing-99: 99px;
|
||
--spacing-156: 156px;
|
||
|
||
/* Layout */
|
||
--page-max-width: 1200px;
|
||
--section-gap: 64-96px;
|
||
--card-padding: 28-42px;
|
||
--element-gap: 14-21px;
|
||
|
||
/* Border Radius */
|
||
--radius-lg: 7.04px;
|
||
--radius-xl: 14.08px;
|
||
--radius-full: 999px;
|
||
--radius-full-2: 9999px;
|
||
|
||
/* Named Radii */
|
||
--radius-nav: 7px;
|
||
--radius-cards: 14px;
|
||
--radius-badges: 999px;
|
||
--radius-buttons: 14px;
|
||
--radius-sections: 9999px;
|
||
|
||
/* Surfaces */
|
||
--surface-cream-paper: #fffefc;
|
||
--surface-keylime-wash: #e1f4df;
|
||
--surface-mint-veil: #cfe7d3;
|
||
--surface-sage-mist: #b1dbb8;
|
||
--surface-slate-hush: #b6ced5;
|
||
}
|
||
```
|
||
|
||
### Tailwind v4
|
||
|
||
```css
|
||
@theme {
|
||
/* Colors */
|
||
--color-forest-ink: #0f3e17;
|
||
--color-sage-mist: #b1dbb8;
|
||
--color-keylime-wash: #e1f4df;
|
||
--color-mint-veil: #cfe7d3;
|
||
--color-slate-hush: #b6ced5;
|
||
--color-cream-paper: #fffefc;
|
||
--color-charcoal: #222222;
|
||
--color-border-mist: #efeeeb;
|
||
--color-forest-shadow: #0c2f10;
|
||
|
||
/* Typography */
|
||
--font-faire-octave: 'Faire Octave', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
|
||
--font-suisse-intl: 'Suisse Intl', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
|
||
|
||
/* Typography — Scale */
|
||
--text-caption: 10px;
|
||
--leading-caption: 1.61;
|
||
--text-body: 14px;
|
||
--leading-body: 1.5;
|
||
--text-subheading: 18px;
|
||
--leading-subheading: 1.3;
|
||
--text-heading-sm: 23px;
|
||
--leading-heading-sm: 1.5;
|
||
--text-heading: 40px;
|
||
--leading-heading: 1.35;
|
||
--tracking-heading: -0.4px;
|
||
--text-heading-lg: 56px;
|
||
--leading-heading-lg: 1.2;
|
||
--tracking-heading-lg: -1.68px;
|
||
--text-display: 74px;
|
||
--leading-display: 1.05;
|
||
--tracking-display: -2.22px;
|
||
|
||
/* Spacing */
|
||
--spacing-4: 4px;
|
||
--spacing-7: 7px;
|
||
--spacing-9: 9px;
|
||
--spacing-11: 11px;
|
||
--spacing-14: 14px;
|
||
--spacing-18: 18px;
|
||
--spacing-21: 21px;
|
||
--spacing-28: 28px;
|
||
--spacing-35: 35px;
|
||
--spacing-42: 42px;
|
||
--spacing-49: 49px;
|
||
--spacing-56: 56px;
|
||
--spacing-70: 70px;
|
||
--spacing-76: 76px;
|
||
--spacing-99: 99px;
|
||
--spacing-156: 156px;
|
||
|
||
/* Border Radius */
|
||
--radius-lg: 7.04px;
|
||
--radius-xl: 14.08px;
|
||
--radius-full: 999px;
|
||
--radius-full-2: 9999px;
|
||
}
|
||
```
|