hero.split-media-right · Split, media right

A hero pattern from the hero library, drawn alone below with this design's tokens and sample copy. Used in this design on: home page, section 1. Give the section root data-pattern="hero.split-media-right". A guide only: DESIGN.md and tokens.json are the source of truth.

Rule
Copy in columns 1–6, vertically centred; the image fills columns 7–12 at the full hero height. A hairline and a muted meta line close the copy column.
Slots
eyebrow, headline, subhead, cta, cta2, heroImage, meta
Grid areas
copy 1-6 · media 7-12 (12-column grid, 1-based inclusive spans)
Notes
The image fills its columns edge to edge (no frame; radius only if the style's radius token says so). Subhead max 34 ch.
Tokens
bg #F6FBFF · text #192028 · heading #091018 · accent #5E65E8 · accent2 #9256C9 · Geist / Geist · radius 20px · space unit 4px (full list in design/tokens.json)
Section
vertical padding step 0

Do

  • Keep the copy column to columns 1–6 and vertically centre it against the image.
  • Let the image fill columns 7–12 and the whole hero height, cropped to fill (object-fit: cover).
  • Use the style's own button shapes and radius tokens for the two CTAs; the secondary is a ghost button.
  • Close the copy column with a hairline and one muted meta line (rating, location, availability).
  • At phone width show the image first at 4:5, then the copy.

Don't

  • Don't centre the copy horizontally or put the headline over the image.
  • Don't add a gradient overlay, floating badges or stats cards on the photo.
  • Don't use a stock illustration in place of the photo; use the style's treatment (photo, duotone, grayscale).

Brand & product studio

We make complicated companies simple to choose

Northfold is a 14-person studio helping manufacturers, labs and B2B teams explain what they do — and look like they mean it.

Start a projectRead case studies

Booking projects from June 2026

Layout tree (as in design/layout.json)
{
  "pattern": "hero.split-media-right",
  "kind": "hero",
  "grid": {
    "copy": "1-6",
    "media": "7-12"
  },
  "slots": [
    "eyebrow",
    "headline",
    "subhead",
    "cta",
    "cta2",
    "heroImage",
    "meta"
  ],
  "notes": "The image fills its columns edge to edge (no frame; radius only if the style's radius token says so). Subhead max 34 ch.",
  "tree": {
    "el": "grid",
    "gap": 4,
    "align": "stretch",
    "minVh": 0.88,
    "children": [
      {
        "el": "box",
        "span": "1-6",
        "alignSelf": "center",
        "gap": 4,
        "pad": [
          8,
          0
        ],
        "justify": "center",
        "children": [
          {
            "el": "text",
            "color": "textMuted",
            "slot": "eyebrow",
            "role": "eyebrow"
          },
          {
            "el": "text",
            "slot": "headline",
            "role": "h1",
            "step": 5,
            "leading": "tight",
            "maxCh": 16
          },
          {
            "el": "text",
            "slot": "subhead",
            "role": "lead",
            "maxCh": 34
          },
          {
            "el": "box",
            "dir": "row",
            "gap": 2,
            "wrap": true,
            "children": [
              {
                "el": "button",
                "slot": "cta",
                "variant": "primary",
                "size": "lg"
              },
              {
                "el": "button",
                "slot": "cta2",
                "variant": "ghost",
                "size": "lg"
              }
            ]
          },
          {
            "el": "divider",
            "weight": 1
          },
          {
            "el": "text",
            "color": "textMuted",
            "slot": "meta",
            "role": "small"
          }
        ]
      },
      {
        "el": "media",
        "span": "7-12",
        "mobile": "reverse",
        "slot": "heroImage",
        "treatment": "photo",
        "fill": true
      }
    ]
  }
}

Other patterns in this design

Whole design · Spec bundle (JSON) · Hero library page