Foundations
Sermona is a dark-first editorial surface: charcoal canvas, white primary type, gold for emphasis and interactive affordances. Everything else supports readability and rhythm.
Color roles
| Role | Variable | Use |
|---|---|---|
| Canvas | --sermona-color-bg-page | Page background |
| Elevated | --sermona-color-bg-elevated / bg-card | Cards, chrome |
| Primary text | --sermona-color-text-primary | Body, headings |
| Secondary text | --sermona-color-text-muted | Supporting lines, captions |
| Accent | --sermona-color-accent-primary | Links, kickers, key quotes, focus |
| Text on gold fills | --sermona-color-accent-on-accent | Required for type on solid gold (buttons, hero CTAs) — never white on #ffd600 |
| Borders | --sermona-color-border-subtle, hairline, meta | Separation without noise |
Reserve gold for meaning — navigation, links, primary CTAs, and moments you want to remember. If everything is accented, nothing is.
Typography
The scale is built around Scto Grotesk A (license separately). Utilities include:
- Display —
.sermona-display-light,.sermona-display-hero; they clamp on small screens. - Section titles —
.sermona-h2,.sermona-h3 - Body —
.sermona-body - Meta / labels —
.sermona-meta,.sermona-kicker(uppercase, tracked, gold)
Pair light + bold display for contrast, or one weight for clarity — avoid three weights in one block without intent.
Space & layout
Spacing tokens (--sermona-space-*) mirror editorial gutters. Sections use .sermona-section (--tight, --loose) for vertical rhythm.
- Content rail —
.sermona-layout(measure for long reads) - Wide —
.sermona-layout--widefor two-column and grids - Full —
.sermona-layout--fullfor composed bands
Motion
Use --sermona-motion-duration-* and --sermona-motion-easing-*. Prefer short transitions on color and border; emphasis easing for large controls (e.g. play). Avoid looping motion behind text.
Icons
Icons are SVG, not a font. Sizes and tiles are tokenized. See Iconography and Voice & copy.
Next
- Using Sermona — roles, vocabulary, adoption, quality bar
- Tokens — full variable list
- Components — CSS classes
- Forms, buttons & CTAs — inputs, actions, CTA bands
- Complex forms — grouped flows, wizards, repeatable rows
- Cards & horizontal swipers — grids, interactive cards, swiper rails
- Ecommerce patterns — product discovery, cart, checkout chrome
- Modals & lightbox — dialogs and enlarged imagery
- Data & tables — tabular data and key–value panels
- Good digital design — principles in prose