Brand
Everything needed to represent DRP Digital correctly: the logo, the palette, the type scale and the rules that keep them consistent.
Logo
A near-black tile holding a white D, with an orange pixel in its counter: software built around one clear signal. The pixel is the fixed element — everything else can scale, but that square stays orange.
Mark on near-black
On a dark ground the tile sits inside a light keyline so the D stays readable.
Logo usage
Four things to do, and four that break the mark.
Do
Don't
Colour
Hex codes are the light-theme values — the brand as it appears on white. Each swatch is painted from the same design token the site uses, so what you see here is what ships.
The orange carries the brand. Two values, and which one you use depends on size: the bright fill for surfaces and the mark, the darker shade for anything set as small text.
Brand fill
#FF6A1A--brand-fillPrimary buttons, the logo pixel, progress fills, chart series one.
Near-black text on this measures 7.6:1 and passes WCAG AA. Never set white text on it.
Brand
#C2410C--brandEyebrows, links and any brand-coloured text below 24px.
5.2:1 on white. This is why small orange text is never #FF6A1A.
Brand muted
#EA580C--brand-mutedHover states and secondary accents between the two above.
Brand subtle
#FFF4ED--brand-subtleTinted panels and callout backgrounds.
A white canvas, near-black text and one hairline border. Most of the interface is built from these four.
Background
#FFFFFF--backgroundPage and card canvas.
Foreground
#0A0A0A--foregroundBody copy, headings and the logo tile.
Muted
#F5F5F5--mutedSection bands, inset panels and table stripes.
Muted foreground
#525252--muted-foregroundSupporting copy, captions and labels.
Border
#E5E5E5--borderThe 1px hairline on every card, input and divider.
Border strong
#D4D4D4--border-strongWhere a divider needs more weight than the hairline.
Reserved for meaning, never decoration. If a colour here appears, it is telling the reader something went well, needs attention or failed.
Success
#15803D--successConfirmations and completed states.
Warning
#B45309--warningCaution notes and pending states.
Destructive
#DC2626--destructiveErrors, validation failures and destructive actions.
Typography
Geist for everything readable, Geist Mono for code, hex codes and tabular figures. Both are self-hosted under the SIL Open Font License, so there is no external font request and no licence to buy.
Geist — sans
Aa
Headings, body copy and interface text. Weights in use: 400 regular, 500 medium and 600 semibold.
Geist Mono
Aa
Hex codes, token names, dates, deadlines and anything that should line up in a column.
Display
The opening line of a landing page. One per page at most.
text-displayclamp(2.5rem, 1.4rem + 4.6vw, 4.75rem)Heading 1
The page title. Exactly one per page.
text-h1clamp(2rem, 1.35rem + 2.7vw, 3.25rem)Heading 2
Section titles.
text-h2clamp(1.5rem, 1.2rem + 1.2vw, 2.125rem)Heading 3
Sub-sections and card titles.
text-h3clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem)Lead
The standfirst under a heading.
text-leadclamp(1.0625rem, 1rem + 0.35vw, 1.25rem)Naming and tone
The brand is written DRP Digital, in full, every time.
Always DRP Digital
Never DRP on its own, never Drp Digital, never DRP-Digital. The legal entity is DRP Digital Ltd, used in contracts and on legal pages.
British English
Organisation, personalised, optimise. Prices in pounds sterling. Dates written 13 November 2026.
Plain language
Short sentences, no jargon, and never a claim we cannot stand behind. If a product is unreleased, it says in development.
Company details
The details to use in press, invoices and legal copy.