WrenfieldEstate Law Design system
Appearance
The site →

05 · Compound organisms

Compound organisms

Organisms composed into the page templates the site actually ships. Every frame below holds the built page itself, served from the same build as this one — so these are not screenshots and they cannot go stale. Change a component and the frame changes with it.

Source src/_includes/base.njk and the page templatesFrames Live pages, same build, same originAppearance Frames follow the switcher above

How a page is assembled

There are five templates and a shell. The shell decides how the page opens — a full screen hero, a plain band, or nothing at all — and the template fills the rest. Nothing below is a one-off.

The shell

Every page passes through base.njk, which reads three switches out of the front matter and composes the rest.

src/_includes/base.njk

What a page declares, and what the shell does about it
Front matterWhat it gives the pageUsed by
hero: trueFull screen hero with the intake card in it, and the recognition strip under itHome, every practice area page
bare: trueNo opener at all — the page carries its own full bleed sectionsAttorney pages
neitherA plain band with the eyebrow, the h1 and an optional single call to actionWriting, attorneys, contact, privacy
wide: trueContent fills the band instead of sitting on the reading measureAny page whose content is a grid
heroMediaChooses colour, image or video behind the hero, and adds the scrim pair for the last twoHome takes video, areas take images

Home

The one page that leads with a clip. Full screen hero, the intake card on it, the recognition strip, then the firm in three bands and the offices as cards.

The home page

Hero, recognition, services, attorneys, offices, disclosure, footer. Narrow the frame to see the whole composition reflow and the bar become a drawer.

src/index.njk

/ ↗

Composed of: the bar, the full screen hero, the intake card, the recognition strip, a service grid, an attorney grid, office cards, the legal notice and the footer.

Practice areas

Three levels: the whole taxonomy, one area, one page inside an area. Each level opens the same way and narrows what it is asking about.

The taxonomy

Every area as a card, then every area again as a numbered row with its own pages beside it. The same information twice, because one form is for scanning and the other is for finding.

src/practice-areas/index.njk

/practice-areas/ ↗

Composed of: the bar, a plain band opener, a practice area grid, area rows, the legal notice and the footer.

One area

A full screen hero whose intake card is preloaded with that area's own reasons for writing, then the pages under it, then who does the work.

src/practice-areas/category.njk

The hero tags on this page are links: each one goes to the page inside the area that answers it. The hidden area field in the intake card carries the area's slug through to the confirmation, which is how that page knows which writing to offer.

One page inside an area

The narrowest level. A breadcrumb, a checklist of what the work involves, the writing filed under it, the attorneys who do it, and the intake card away from a hero.

src/practice-areas/sub.njk

Composed of: the bar, a plain band opener, a breadcrumb, a checklist, the mini intake card, an area list, a who row, the legal notice and the footer.

Attorneys

The one place the site drops its shell entirely. An attorney page is bare: it carries its own full bleed hero, its own sticky section nav and eleven numbered sections.

The roster

One attorney to a row, alternating sides, the name the largest thing on the page.

src/attorneys/index.njk

/attorneys/ ↗

One attorney

The longest template on the site: a cut out hero over a clip, a figures strip, and sections 01 to 11 with their own sticky navigation. Every section on this page also exists on its own in Organisms.

src/attorneys/attorney.njk

/attorneys/claire-osei/ ↗

Composed of: the bar, the attorney hero, the figures strip, the section nav, a narrative, a marks wall, an area grid, fee bands, a declines list, an essay, selected matters, endorsements, the panel section, credential columns, the contact close and the footer.

Writing

The archive and one piece. The archive filters itself in the browser without a reload; a piece carries the drawing for its practice area at the top.

The archive

Every piece as a card, with a filter above. The filter is hidden entirely until script has run, because a filter that cannot filter should not be advertised.

src/articles.njk

/articles/ ↗

Click a chip inside the frame — it filters live, updates the count, and shows the empty state when nothing matches.

One piece

A drawing, a standfirst, the writing on the reading measure, and the way back. The drawing is inlined rather than linked, because it is drawn in the page's own colours and has to be part of the page to read them.

src/_includes/post.njk

/articles/what-probate-costs/ ↗

Switch the appearance in the bar above and watch the drawing recolour inside the frame. It is inline SVG using the page's own tokens — .aa-line takes the ink, .aa-solid takes the brand — so it is never a picture of the light theme sitting in the dark one.

The ask, end to end

Two pages that only exist because of the form: where it is asked in full, and where it lands.

Contact

The form on its own page, with the offices beside it.

src/contact/index.njk

/contact/ ↗

Confirmation

Where every form on the site lands. It opens on the reading measure rather than the full width, because at that moment the page is a short letter.

src/thank-you/index.njk

/thank-you/ ↗

The confirmation reads the practice area the form was sent from and offers the writing filed under it. With no area it falls back to the newest pieces, so the page is never empty.