RonanRx RONAN RX

Brand sheet · for external design partners

Deep-teal cinematic editorial pharma.

Dark-teal ink on a light mint-white ground for documents; a deep cinematic register for full-bleed video and photography. An editorial serif paired with a modern geometric sans. Restrained motion. A small set of section archetypes that compose into every page.


TEAL CINEMATIC SYSTEM · ADOPTED 2026-07-06 · SHEET BUILT 2026-08-13

Fig. 01 · Color

One palette, two registers

Never add a color. Aliases resolve to these hexes; they never introduce a new one.

Light register — documents and content pages (the default)

Background#EDF6F9

Page ground. Light mint-white.

--color-bg
Background alt#E3EBEE

Alternate band, recessed surface.

--color-bg-alt
Line#D0DDE2

Hairlines, dividers, card borders.

--color-line
Ink#00434A

Primary text. Also the dark-band ground — this hex is the hinge between registers.

--color-ink
Ink muted#3F6B70

All supporting text, eyebrows, captions, table headers.

--color-ink-muted
Brand#006D77

The single accent. Links, primary CTA fill, positive status.

--color-brand
Mint tint#DCECEF

Selected and callout surface fill.

--color-mint-tint
Sage#83C5BE

Accent on dark grounds. On light it is border and decoration only — never text.

--color-sage
Danger#A94E4E

Rx-required pill, compliance callouts, form-error state.

--color-danger
Paper#FFFFFF

Print and one-off knockouts only. Never a page background.

--color-paper

Dark cinematic register

For video heroes, films, wall bands, immersive pages.

Editorial art direction — not a dark-mode toggle, and never a user preference. A page is authored in one register or the other.

Deep ground#032025

Full-cinematic page background. Alt #022C31.

Deep ground step#04252A

Alternate dark surface.

Band ground#00434A

Dark bands inside light pages — hero, trust band.

Ink on dark#EDF6F9

Headings and body on dark. Dim 66%, faint 42%.

Accent on dark#83C5BE

Eyebrows, numbered steps, progress scrubbers.

Hairline on darkSAGE · 18%

Rules and dividers on cinematic ground. On a #00434A band, grids use #EDF6F9 at 22%.

Hard rule: never pure black on screen. Not as a background, not as text, not as a rule or a shadow. The dark surfaces are #00434A (band) and #032025 (deep cinematic ground). Dark teal is fine; true black is not.

Usage rules

Contrast — computed, WCAG 2.1

PairRatioGrade
Ink #00434A on background #EDF6F910.1:1AAA
Ink on background-alt #E3EBEE9.1:1AAA
Ink-muted #3F6B70 on background5.4:1AA
Brand #006D77 on background5.5:1AA
Brand on mint-tint #DCECEF5.0:1AA
#EDF6F9 on the #00434A band10.1:1AAA
#EDF6F9 on #03202515.5:1AAA
Sage #83C5BE on #00434A5.6:1AA — text OK
Sage on #0320258.6:1AAA — text OK
Danger #A94E4E on background4.9:1AA at body size
Sage on any light ground1.8:1Decorative only

Fig. 02 · Typography

Three families, one scale

Self-hosted only. Never depend on Google Fonts at runtime — the .woff2 files ship in this package.

RoleFamilyWeights
Display and bodyNewsreader300, 400, 500, italic
UI, data, wordmarkGeist500, 600, 700, 900
Mono — identifiersGeist Mono500, 700

Scale

No ad-hoc clamp() outside this table.

TierFamilyWtSizeLineTracking
Display cinematicserif300clamp(3.5rem, 8.5vw, 7.5rem)0.98-0.022em
Hero on video, h1serif300clamp(2.75rem, 6vw, 5.5rem)1.02-0.02em
Display XLserif300clamp(3.25rem, 6vw, 5.5rem)1.04-0.018em
Display M — cinematicserif300clamp(2.25rem, 4.2vw, 3.75rem)1.06-0.015em
Display M — document h2serif400clamp(2rem, 3.2vw, 2.75rem)1.12-0.01em
Titleserif40024px1.25-0.005em
Leadserif400clamp(1.25rem, 1.6vw, 1.5rem)1.50
Bodyserif40017px1.650
UIsans50016px1.40.005em
Eyebrow — uppercasesans60012px1.30.18em
Monomono50011px1.40.06–0.14em
Statserif400clamp(2.5rem, 4vw, 3.5rem)1-0.025em

Specimens

Display XL · Newsreader 300

Every batch, a record.

Section h2 · Newsreader 400

Compounded for one patient at a time

Lead · Newsreader 400

A pharmacy built around the prescription, not the production line — every unit traceable to the doctor who signed for it.

Title · Newsreader 400

Chain of custody

Body · Newsreader 400 · 17px

Main prose and card body sit at seventeen pixels with a 1.65 line height. The serif does the reading work; the sans handles interface and data. Italics are for inline emphasis spans only, never a whole headline.

UI · Geist 500

Start a prescription

Eyebrow · Geist 600 · 0.18em

Pharmacy · Manufacturing

Mono · Geist Mono 500 · 11px

ILLUSTRATIVE RECORD · NO PHI · GATE · DOCTOR_APPROVES · LOT 4417-B

Stat · Newsreader 400

48 hr

Type rules

Fig. 03 · Wordmark

Locked construction

Not subject to redesign. The geometry below is fixed; only the two color renderings change.

ElementFamilyWeightTrackingNotes
“RONAN”Geist800 ExtraBold072px in the lockup. Reads at all widths.
“RX” badgeGeist Mono700 Bold0.22emSet at 36px — exactly half of RONAN. Knockout on a 4px-radius rect. Badge is 51 tall, equal to RONAN cap height, aligned cap-line to baseline.
“PHARMACY · MANUFACTURING”Geist Mono5000.22emAll caps, 0.6 opacity, optional below the lockup. Rarely needed.

Color rendering follows the surface

RonanRx on light RONAN RX

ON LIGHT · TEXT AND RECT FILL #00434A · “RX” KNOCKS OUT IN #EDF6F9

RonanRx on dark RONAN RX

ON DARK · TEXT AND RECT FILL #EDF6F9 · “RX” KNOCKS OUT IN THE PAGE GROUND — #00434A ON A BAND, #032025 ON A DEEP CINEMATIC PAGE

The knockout is the point. The badge should read as a hole punched through to the ground behind it, not as a colored box sitting on top. That means the “RX” letters take the exact hex of whatever surface the lockup sits on.

Sizing and placement

Do

  • Use ronanrx-wordmark-on-light.svg and ronanrx-wordmark-on-dark.svg as-is, referenced with an <img> tag.
  • Match the RX knockout to the actual page ground when the lockup moves to a new surface.
  • Scale proportionally. The badge-to-cap-height relationship is fixed.

Don't

  • Inline the on-dark SVG into an HTML document. It is an Illustrator export carrying an unscoped <style> block with generic .st0….st4 class names that leak into the page and can invert the badge. Use presentation attributes when inlining.
  • Rebuild the lockup by typing it. The tracking, the badge geometry, and the 36/72 size ratio are all specified.
  • Recolor, outline, add a gradient, add a shadow, rotate, or set it in any family other than Geist and Geist Mono.
  • Place it on a busy photograph without a scrim.

Fig. 04 · Space

Everything divides by four

Every padding, gap, margin, icon size, radius, container width, and image dimension.

TokenpxTokenpxTokenpx
--space-14--space-524--space-996
--space-28--space-632--space-10128
--space-312--space-748--space-11160
--space-416--space-864

Rhythm and containers

Fig. 05 · Components

A small, flat kit

No shadows anywhere. Hover states deepen; they never lighten.

Buttons

Start a prescription See how it works

Min-height 48px, nav buttons 40px. Padding 12px 28px, radius 4px, Geist 500 at 1rem. Active state translates down 1px. Primary fills brand #006D77 and hovers to ink #00434A — deeper, never lighter. Ghost is transparent, hovering to mint-tint. On-image CTA fills #EDF6F9 with #00434A text.

Status pills

In network In review Rx required

One primitive: 1px border, 4px radius (a chip, not a full pill), Geist 600 at 0.6875rem, 0.14em tracking, uppercase. This is the home for regulatory phrasing. A fourth variant, translucent teal with a backdrop blur, exists for chips sitting over imagery.

Cards

Editorial card

Background matches the page, 1px line border, 4px radius. Hover lifts 1px and the border shifts to brand. No shadow.

48 hr

Median turnaround

The recommended card variant adds a 4px brand top border and a concrete pill tab — “FOR MOST DOCTORS”, never a generic “RECOMMENDED PATH”. Use it once per page. Stat cards have no background and no border, only a 2px brand top accent rule.

Context callout

Mint-tint background, 1px sage left rule, radius 0 4px 4px 0, padding 16px 20px, Lead-tier copy, max 60 characters. Calm, plain English.

Section archetypes — compose, don't invent

Fig. 06 · Package

What's in this folder

This sheet is a single self-contained file — fonts are embedded, nothing loads from the network. It renders identically offline.

FileWhat it is
ronanrx-brand-sheet.htmlThis document. Fonts embedded as base64; zero external references.
logos/ronanrx-wordmark-on-light.svgPrimary lockup for light surfaces. Presentation attributes only — safe to inline.
logos/ronanrx-wordmark-on-dark.svgLockup for dark surfaces. Illustrator export — safe as <img>, do not inline.
logos/ronanrx-wordmark-on-dark.pdfVector wordmark for print and Illustrator.
logos/ronanrx-logo.svgTight-cropped light lockup, presentation attributes only.
logos/ronanrx-mark.svgThe RX badge alone, for favicons and small marks.
logos/ronanrx-social-avatar-square.svgSocial avatar, square crop.
logos/ronanrx-social-avatar-circle.svgSocial avatar, circular crop.
fonts/Newsreader-Latin.woff2Newsreader variable, roman. Display and body.
fonts/Newsreader-Italic-Latin.woff2Newsreader variable, italic.
fonts/Geist-Variable.woff2Geist variable. UI, data, and the wordmark.
fonts/GeistMono-Variable.woff2Geist Mono variable. Identifiers and microcopy.

Fonts

Newsreader is licensed under the SIL Open Font License. Geist and Geist Mono are released by Vercel under the SIL Open Font License. Both are free to embed and redistribute in this package and in any artifact produced from it.