fbp

// design system · v1

The Midnight system.

Every token, type style and component used across mdhosting.co.uk — on one page, so the next build starts here. Midnight navy ground, stark white structure, one surgical orange.

// 01 / colour tokens

Palette — 60 / 30 / 10

Midnight (ground)

#0F172A

Panel

#111C32

Logo Orange

#FF6C2C

Stark White

#FFFFFF

Slate border

#334155

Status green

#22C55E

// 02 / typography

Type scale

// EYEBROW · JetBrains Mono 13

Display H1 / 800

Section H2 / 700

Card title H3 / 700

Body copy is Inter at 18px / 1.7 line-height in muted slate — calm, readable, never pure white on the dark ground.

Mono data · 25 GB NVMe · £12.95 /user/mo

// 03 / buttons

Buttons

// 04 / cards

Cards

Icon blurb

The workhorse card — icon, title, body, on a translucent fill with a slate top edge.

Accent card

Same card with an orange top accent for a focal feature or differentiator.

// BENTO

Bordered group

A 1px slate-bordered group card — the bento building block.

// 05 / status badge

Ping badge

SERVICE STATUS·99.8%UPTIME · 180-DAY

// 06 / flip-card

Migration flip-card

Slide to plan your escape

// CURRENT HOST

Slow. Oversold. Indifferent.

Throttled NVMe, servers crammed with thousands of neighbours, and a support queue that treats you like a ticket number. Locked in and quietly overpaying. Sound familiar?

// MDHOSTING

Free migration. On us.

We move your sites, email and data off your slow host — planned and tested to minimise disruption, at no charge. You just watch it get faster.

Plan my migration →

// 07 / pricing & testimonial

Pricing card & white testimonial

Most popular

Sample tier

£8.50/mo

14-day money-back

A pricing card in the system.

  • 1px slate border
  • Orange top on the popular tier
  • Mono price & ticks

“A stark white testimonial card — the system’s 30% structuring moment against the dark ground.”

Style Guide · component sample

// 08 / stat band

60%

midnight ground

30%

white / slate

10%

surgical orange

1px

card borders

// 09 / accordion & image treatment

Accordion & media

Is this page the source of truth?

Yes — it renders every token and component from the same build code as the live pages, so what you see here is exactly what ships.

How do I add a new component?

Add a helper in pages.py, drop it into a section here first to eyeball it, then reuse it across the real pages.

Image treatment sample

Image · + navy overlay · + 1px border

// modules / content

Content modules

Every Divi content module, rendered live.

divi/heading

The quick brown heading

divi/text

A text module — rich body copy, muted on the dark ground.

divi/button

divi/icon

divi/blurb

Blurb

Native blurb — icon, title, body.

divi/image

image module

divi/icon-list

  • Confirmed working
  • Renders on import
  • Dark-theme ready

divi/divider

Above the divider.

Below the divider.

divi/cta

CTA module

Title, body and a button in one module.

divi/svg

divi/testimonial

Native testimonial on a white card — the 30% structuring moment.

A. Client
Yorkshire business

divi/team-member

Specimen Name

Systems Architect

Keeps the servers calm.

divi/breadcrumbs

Shows Home / Page in a standalone page context.

divi/table-of-contents

Scans the page’s h2/h3 and smooth-scrolls.

On this page

// modules / interactive

Interactive modules

divi/accordion

Accordion item one

First answer, open by default.

Accordion item two

Second answer, collapsed.

divi/toggle

Toggle title

Single expand / collapse.

divi/tabs

NVMe, HTTP/2, Brotli.

SSL, firewalls, backups.

Direct to an engineer.

divi/timeline

2015

Founded

MDHosting opens in Leeds.

2026

Rebuild

The Midnight site ships.

divi/signup

divi/login

Renders the WordPress login form.

divi/contact-form + divi/contact-field

Native form; Divi auto-adds a submit button + CAPTCHA.

// modules / media

Media modules

divi/video

divi/before-after-image

divi/gallery

Grid settings only — images are added via the editor (can’t be passed as JSON).

divi/slider + divi/slide

Slide one

Full-width content slider.

Slide two

Dots auto-render.

divi/video-slider

divi/lottie

Needs a valid Lottie JSON URL; shows a placeholder otherwise.

// modules / data

Data, counter, pricing & dynamic modules

divi/number-counter

Counts up on scroll-in.

%

Uptime

divi/circle-counter

Animates on scroll-in.

%

Capacity free

divi/counters + divi/counter

  • NVMe speed96%96%
  • Support score99%99%

divi/pricing-tables (live Blesta price)

divi/social-media-follow

divi/countdown-timer

Day(s)

:

Hour(s)

:

Minute(s)

:

Second(s)

divi/blog

Needs WP posts; shows the sample post.

How to Get reCAPTCHA API Keys for Your Website

How to Get reCAPTCHA API Keys for Your Website

We have all seen the ‘I’m not a robot’ challange when filling out a form. It helps website owners filter out bot submissions to real people, but how do you impliment this on to your website? Follow the handy guide below on how to create your own API keys to use…

divi/post-slider

Latest posts in a slider.

How to Get reCAPTCHA API Keys for Your Website

We have all seen the ‘I’m not a robot’ challange when filling out a form. It helps website owners filter out bot submissions to real people, but how do you impliment this on to your website? Follow the handy guide below on how to create your own API keys to use…

How to Disable Rescue mode in Virtualizor?

If you have previously enabled rescue mode but did not know how to disable it, follow this tutorial.   1. Log in to your Virtualizor Control Panel. 2. In the left side panel, click on List VPS.   3. Hover your mouse on the appropriate VPS, and that line will…

divi/portfolio

Needs the Divi Project CPT; empty until projects exist.

No Results Found

The page you requested could not be found. Try refining your search, or use the navigation above to locate the post.

divi/instagram-feed

Shows an empty state until an account is connected in Divi settings.

No media found

divi/map

Blank until a Google Maps API key is set in Divi → Theme Options.

divi/fullwidth-header

A full-bleed hero module — title, subhead and two buttons, on an image+overlay.