Ledger: restyle hero block (two-col + intake slip) #36

Closed
opened 2026-10-03 11:00:54 +02:00 by Augspies · 1 comment
Owner

Part of: Ledger Redesign — spec §3.2, §5

Goal: Restyle AlignedHeroBlock to the Ledger two-column hero. Decision: the hero uses the built-in ledger line-art illustration, not a photo.

Files: apps/core/blocks.py (field additions), apps/core/templates/blocks/aligned_hero_block.html (+ hero_block.html overlay variant), migration

Acceptance:

  • Two-col placement: sand-soft eyebrow pill, Marcellus h1, muted lede, pill CTAs (primary → Calendly, ghost secondary), reassurance footnote
  • HeroBlock.image becomes optional; when empty the inline ledger line-art illustration renders (SVG, template chrome); when set, image renders with 18px radius + rotated "Intake open" slip
  • New optional block fields: eyebrow, cta_text + cta_calendly_url (dispatches open-calendly when set), secondary_text + secondary_url, footnote — all translatable
  • Overlay placement restyled to the same tokens (not left as legacy Tailwind blue/gray)
  • Wagtail renditions (width-900 format-webp), eager loading on hero only
  • No hero pop-in flash: the built-in illustration paints instantly (inline SVG); when an editor uploads a photo, it must be eager/preloaded so the section never flashes background-then-image (the current overlay hero flashes #1a1a2e bg + text before the photo paints)
  • Migration generated for the field changes

Notes: Authoring requirement — all hero copy must live in block fields, nothing hardcoded except chrome.

  • Styling via utilities in the template (house convention, spec §6); the slip's rotation/shadow may need one small @utility block — justify in a comment
**Part of:** Ledger Redesign — spec §3.2, §5 **Goal:** Restyle `AlignedHeroBlock` to the Ledger two-column hero. Decision: the hero uses the **built-in ledger line-art illustration**, not a photo. **Files:** `apps/core/blocks.py` (field additions), `apps/core/templates/blocks/aligned_hero_block.html` (+ `hero_block.html` overlay variant), migration **Acceptance:** - [x] Two-col placement: sand-soft eyebrow pill, Marcellus h1, muted lede, pill CTAs (primary → Calendly, ghost secondary), reassurance footnote - [x] `HeroBlock.image` becomes optional; when empty the inline ledger line-art illustration renders (SVG, template chrome); when set, image renders with 18px radius + rotated "Intake open" slip - [x] New optional block fields: `eyebrow`, `cta_text` + `cta_calendly_url` (dispatches `open-calendly` when set), `secondary_text` + `secondary_url`, `footnote` — all translatable - [x] Overlay placement restyled to the same tokens (not left as legacy Tailwind blue/gray) - [x] Wagtail renditions (`width-900 format-webp`), eager loading on hero only - [x] No hero pop-in flash: the built-in illustration paints instantly (inline SVG); when an editor uploads a photo, it must be eager/preloaded so the section never flashes background-then-image (the current overlay hero flashes `#1a1a2e` bg + text before the photo paints) - [x] Migration generated for the field changes **Notes:** Authoring requirement — all hero copy must live in block fields, nothing hardcoded except chrome. - [x] Styling via utilities in the template (house convention, spec §6); the slip's rotation/shadow may need one small `@utility` block — justify in a comment
Author
Owner

closed with #53

closed with #53
Sign in to join this conversation.
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Augspies/virtual-attorney#36
No description provided.