feat(hero): Phase 3 — media slot and split-layout variants

- New `content.media` field accepts image (Hugo-pipeline-processed for
  responsive srcset) or video (passes through as <video>). Optional
  `dark_src` provides a dark-mode image variant.
- New `design.layout` enum: centered (default) | split-left |
  split-right | stacked. Split layouts auto-set alignment to 'left'
  unless explicitly overridden.
- Bump trust-strip star size from w-4 to w-5 for visual presence.
- Two new shared partials in layouts/_partials/functions/:
  - resolve_image_resource: path → {resource | fallback_url}
  - process_image_for_props: path → {src, srcset, width, height}
  These factor out the resource-resolution + responsive-processing
  pipeline so media-bearing blocks don't have to inline it.
- Capabilities registry: media-image, media-video, split-layouts.
- Landing page _index.md: keeps the centered hero (no behavioural
  change) but documents the opt-in pattern for split layouts inline.
This commit is contained in:
George Cushen committed 2026-05-02 17:52:57 +01:00
1 parent f32f468cf3
commit 80913c028a
6 files changed
+260 -41

No files matched your search

@@ -30,6 +30,13 @@ sections:
trust:
stars: 5
text: Loved by **10,000+** developers · Trusted by teams at Google, OpenAI, NVIDIA
# To switch to a split layout with a product mockup, uncomment the media block
# below and set `design.layout: split-left` (or `split-right` / `stacked`):
# media:
# type: image
# src: dashboard.png
# dark_src: dashboard-dark.png # optional dark-mode variant
# alt: Hugo Blox dashboard
design:
spacing:
padding: [0, 0, 0, 0]