# Testimonial ledger

> Four client testimonials structured as horizontal ledger rows, each bounded by a 1px currentColor hairline with a portrait and the client identity on the left and the direct quote on the right. States no colour and no font of its own.

Canonical: https://patternpaste.com/pattern/testimonial-ledger.html
Section: Testimonials
Access: Included in Pattern Paste access.
Needs: Requires a block theme on WordPress 6.7 to 7.0. Classic themes and page builders are outside our supported setup. Adaptive patterns use the block theme’s colour, spacing and typography presets; styled variations declare their own colours or type.
Blocks: column, columns, group, image, paragraph
Keywords: testimonial, quotes, reviews, ledger, rows, tabular, social proof, horizontal

## Variations (2)

### Ledger rows (the default)

Identical markup in every theme.

Four horizontal ruled rows on your page ground, pairing client credentials on the left with direct quotes on the right.

### Night ledger

Identical markup in every theme.

The entire ledger section inverts to your contrast ground with your base type and hairlines, reading as a dark audit band.


---

## The signature moment: the horizontal ledger separating client from verdict

**The signature is the continuous horizontal ledger structure bounded by `currentColor`
hairlines.** Each row is cleanly split into a 28% left metadata cell holding the
speaker's name, role, and organization, and a 72% right cell carrying their direct
verdict. The hairlines extend across the entire measure, framing the quotes into a
quiet, authoritative list.

This keeps the section distinct from the rest of the catalogue. `testimonial-ratings`
is a multi-column scorecard grid; `testimonial-trio` is three bottom-aligned cards;
`quote-wall` is an uneven 8-quote masonry wall. This pattern organizes social proof
into a structured tabular record.

## What it inherits from your theme

- **The typeface.** No font family is stated anywhere. All text inherits your theme's
  typography scale.
- **Your colours.** Uses `base` for page ground and `contrast` for ink, with universal
  fallback guarantees.
- **The hairlines.** Every row divider is `currentColor`, matching your text ink across
  all themes.
- **Your spacing scale.** Padding and row gaps scale with your theme's spacing scale.

## What it decides for itself

- **Full bleed with a 1240px container.** Spans the screen while holding reading
  rows comfortable.
- **The 28/72 tabular split.** Separates the speaker's credentials from the quote
  while giving the quote a generous reading measure.
- **A portrait in the identity column.** Each row opens on a 5rem square frame
  above the name and role, so the left column reads as a record of a person
  rather than a line of type. Above, not beside: the identity column is 28% of
  the band, and a chip sharing that row left the role line under twenty
  characters a line at every width. The four faces are the only
  images in the section and none of them states a colour, so the ledger inverts
  cleanly in the Night variation.
- **The typography ramp.** Quotes are set at `var(--wp--preset--font-size--medium, clamp(1.0625rem, 1.25vw, 1.1875rem))`
  with 1.5 line-height.

## What a buyer changes first

1. **The four quotes.** Replace with four concise client quotes (20–40 words each).
2. **The client details.** Edit the four name, role, and organization pairs, and
   the portrait beside each. It is a square crop of a head-and-shoulders photograph, not a centre crop of a full-length one: a waist-up frame squared from the middle loses the crown of the head and reads as a torso at this size.
3. **The row count.** Duplicate a row block for 5+ quotes, or delete one for 3.
4. **The eyebrow.** "Client record" is a paragraph label you can edit or delete.

## The variation

- **Night ledger** (`variations/night-ledger.html`) inverts the entire section to
  your `contrast` ground with `base` type and hairlines.

## Notes

- Core blocks only: group, columns, column, paragraph, image.
- Every colour is a fallback chain ending in universal presets.
- Text contrast is verified at 4.5:1 on all text pairs.
