Marston Reid LLP
WordPress professional-services demo for a fictional PNW commercial litigation boutique — practice areas, an attorney roster with bar admissions, animated results bar, monthly insights stream.

Overview
A WordPress marketing site for a fictional Pacific Northwest commercial litigation boutique — five-page structure (Home, Practice Areas, Attorneys, Insights, Contact) on a custom Full-Site-Editing block theme. Built to argue that WordPress is the right stack for the high-credibility professional-services request without the typical AmLaw-hosted CMS bundle.
Per-demo theme:
- Thin child of the platform
_chassisparent - Oxblood burgundy primary (#6B1F2E), antique brass accent (#A8853F), warm ivory background (#F8F4ED)
- Source Serif 4 for headings against a system sans for body
- Own header (Practice Areas / Attorneys / Insights / Contact) and footer carrying the bar-admission boilerplate and the state-bar advertising disclaimer ("Attorney advertising. Prior results do not guarantee a similar outcome.")
Deliberate decision — no new shared block:
The tempting move was a new sfp-blocks/person-card shared block for the attorney roster, reusable across three upcoming demos (lawfirm, dental, coach). Deferred on purpose. An attorney card wants bar admissions and a JD year; a dental-team card wants procedures and credentials; a coaching card wants a single bio paragraph. Three slightly different shapes that would force a schema with optional fields nobody uniformly fills, or a generic block that misses the genre-specific affordance every consumer actually wants.
Built the lawyer roster with core/columns + core/image + core/heading + core/paragraph instead — ten lines of pattern markup per attorney. Promotion to a shared block is a clean future move once the three real consumers are visible side by side. Documenting the deferral so the next professional-services demo doesn't relitigate it.
Five pages:
- Home — Oxblood cover hero with firm name + tagline ("Commercial litigation, not a brochure."), four practice-area cards with brass top borders, a
sfp-blocks/trust-stackresults bar (13 years · 140+ cases tried · 4 jurisdictions · 27 Ninth Circuit appeals), attorney teaser, closing CTA - /practice-areas/ — Four alternating image-text rows for Commercial Litigation, Employment Disputes, IP & Trade Secrets, and Corporate Counsel. Each row carries a substantive description and a representative-matters paragraph in italics
- /attorneys/ — Four lead-lawyer cards (founding partner, partner, of counsel, senior associate) with portrait placeholders, name + title + bar admissions + education + email, plus a callout listing the six associates
- /insights/ — Monthly-stream listing with four placeholder posts (date + author + practice tag + title + excerpt). Demonstrates thought leadership without committing to actual posts on day one
- /contact/ — Office + inquiries columns plus a "few notes before you write" callout doing the actual screening work (billing model, conflicts timeline, what we won't take). Treats the contact page as a pre-engagement filter, not a lead-capture maximizer
Real legal substance in the content:
The temptation on a fictional law firm site is the Lorem-ipsum-of-litigation. The practice-area copy, representative-matters lines, and insights teasers are written as if a real litigator would have to defend them — specific procedural moves (TROs in the first seventy-two hours, decertification at the certification stage, non-compete enforcement under the ORS 653.295 amendments), specific jurisdictions (Ninth Circuit, D. Or., W.D. Wash.), specific dollar figures ($14M judgment, affirmed on appeal). The cost is two extra hours of writing; the benefit is that the site reads as the work product of a firm that exists.
The Challenge
Boutique law firms get sold on AmLaw-friendly hosted CMS products at $400–$1,200/month, with the implicit claim that WordPress can't handle bar-admission directories, scoped intake, and state-bar advertising boilerplate without a plugin pile that takes six months to stabilize. That claim is wrong on three axes the market actually cares about — practice areas and attorney bios are content not application logic, the "results" trust signal is a row of four numbers, and the contact page's real job is to filter inbound matters before they reach a lawyer (a copy problem, not a plugin problem).
The Solution
A per-demo theme on the platform chassis with no new shared block — a deliberate departure from the recent pattern. Attorney roster built with core blocks so we can see real variation across lawfirm/dental/coach before promoting to a shared person-card block. State-bar disclaimer rendered as static prose in the footer instead of a structured-compliance block; that upgrade is clean future work when a real engagement spans multiple jurisdictions.
Results
Lighthouse 99 / 96 / 100 / 92 (perf / a11y / best-practices / SEO) with placeholder photography — matches the platform's ceiling without per-demo tuning
Five-page professional-services site live in ~5 hours including per-demo theme, full seed with substantive legal-domain content, hub case study, and Project registration
No new shared block — establishes the "use core composition" pattern as a valid platform move when premature abstraction would cost more than it saves
Substantive legal content (specific jurisdictions, procedural moves, dollar figures) reads as the work product of a firm that exists, not Lorem-ipsum-of-litigation
State-bar advertising compliance rendered as static prose with the standard disclaimer; the structured-compliance upgrade is clean future work
First in the Tier 1 professional-services batch — the dental and coach builds inherit the no-new-block decision and the legal-substance-in-placeholder-content discipline
Gallery


