# Pages — Pedestal Health

General playbook for **marketing pages** (not news or publication articles). Use specialized playbooks when the page type is known:

| Page type | Playbook |
|-----------|----------|
| Disease area / ology (`/disease-areas/`) | `cms-edit://customer/disease-area-pages` |
| Solutions hub & audience pages | `cms-edit://customer/solutions-pages` |
| Resources & tag listing indexes | `cms-edit://customer/resources-hub-pages` |
| News article | `cms-edit://customer/news-pages` |
| Publication article | `cms-edit://customer/publications-pages` |
| Any article (routing, tags) | `cms-edit://customer/articles` |
| Team / author person entry | `cms-edit://customer/people` |
| Legal / policy | `cms-edit://customer/legal-policy-pages` |

## When to use

- New or updated pages under `/`, `/about/`, `/solutions/`, `/life-sciences/`, `/health-systems/`, `/disease-areas/`, `/contact/`, `/careers/`
- Cloning structure from an existing page before tailoring copy
- Importing a Google Doc brief into CMS components

Read `cms-edit://customer/routing` and `cms-edit://customer/production-site` before editing. Fetch live markdown with `.md` appended to the public path (e.g. `https://www.pedestalhealth.com/about.md`).

**Homepage:** CMS slug is **`index`** (public URL `/`). Open with `cms-edit open /` or `--page-slug /index`.

**Legacy URLs:** Disease solution pages live at **`/disease-areas/{slug}/`** — not `/solutions/*` (legacy slugs 404).

## Templates

```bash
cms-edit list --type template
```

| Template | ID (verify in space) | Use for |
|----------|----------------------|---------|
| **General page template** | `76AWtsdmMbvBKFrACyayXS` | All marketing pages |

Inspect with `cms-edit peek --page-slug /about`. Template supplies nav + footer — page body goes in `content` (and `topContent` when used).

## Reference pages (clone sources)

| Public path | Category | Notes |
|-------------|----------|-------|
| `/` | Home | Dynamic hero, decision cards, disease link list, publications + news carousels |
| `/about/` | About | Hero, feature split, **Leadership** grid (Person entries) |
| `/solutions/` | Solutions hub | Image hero, full-screen slides, category explorer |
| `/disease-areas/hepatology/` | Disease area | Image hero, slides, **Timeline** + publications grid |
| `/disease-areas/dermatology/` | Disease area | Same stack; no publications grid on page |
| `/life-sciences/` | Audience | Image hero, gradient quote, action cards, statements grid |
| `/health-systems/` | Audience | Image hero, benefits grid, publications grid |
| `/contact/` | Utility | Pardot form external component |
| `/careers/` | Utility | Standard marketing layout |

Use `cms-edit://customer/task-clone-page` when the new page should mirror an existing layout.

```bash
cms-edit peek --page-slug /disease-areas/hepatology
cms-edit peek --page-slug /life-sciences
```

Page-by-page field maps: `apps/pedestal-website/docs/cms-content-guide.md`. CLI pitfalls (link variants, footer): `apps/pedestal-website/docs/cms-edit-pedestal.md`.

## Document section → component mapping

Map brief sections to **registered** types (see `components-index` / `collections-index`):

| Brief section | Component / collection | Notes |
|---------------|------------------------|-------|
| Hero with background visual | **Dynamic hero** or **Hero** | Home uses Dynamic hero |
| Image + headline band | **Image hero** | Common on solutions and disease pages |
| Text-only hero | **Text hero** | Rare |
| Logo strip | **Logos** | Component |
| Split image + copy | **Feature split** / **Feature split reverse** | |
| Decision / value cards | **Feature split cards** or **Action cards** | Home decision cards |
| Full-bleed slide deck | **Full screen slides** (or in-view variant) | Solutions + disease areas |
| Disease category grid | **Category explorer** or **Category directory** | `/solutions/` hub |
| Disease sub-links row | **Links array** | On disease-area pages |
| Research timeline | **Timeline** | Link items use `variant: link` — see `cms-edit-pedestal.md` |
| Publication teasers | **Publications grid** | Auto-hydrated; set `links[0]` “See all” |
| News teasers | **News carousel** or **News grid** | Auto-hydrated from news articles |
| Benefits list | **Benefits** or **Health systems benefits** | |
| Outcomes / stats | **Outcomes grid** or **Numbers grid** | |
| Quote block | **Gradient text block** | Life sciences |
| Statements | **Statements grid** | |
| Leadership team | **Leadership** collection | Items are **Person** entries — see `people.md` |
| Primary CTA | **Large CTA** or **Application CTA** | |
| Contact form | **Pardot form** external | `/contact/` |
| Legal body | **Legal rich text** | Policy pages — see `legal-policy-pages` |
| Fallback block | **Generic** | When no specialised type fits |

Prefer **reusing existing component entries** when copy is unchanged. Create new entries when headings, visuals, or links differ.

## Link `variant` (SectionLinks)

Pedestal maps `link.variant` to UI:

| Value | UI |
|-------|-----|
| `link` | Text link with trailing arrow — “See all publications”, timeline “Explore the research.” |
| `button` | **Pedestal button** — “Talk to Our Team”, home “Solutions” cards |

Each standalone link entry needs its own `open --id` → `set` → `save` cycle. Known IDs: `apps/pedestal-website/docs/cms-edit-pedestal.md`.

## Creating pages

1. Read `cms-edit://customer/tasks-index` → `task-create-page` or `task-create-from-document`
2. `cms-edit index sync` if templates or assets may be stale
3. Pick **General page template**; set `slug`, `title`, `description`, `featuredImage`
4. Build content stack with `add` + `set` / `rtf`, or `create from-json --dry-run --strict` first
5. After each `add`, set `heading` then `cmsLabel` (pattern: `{Section} — {Page name}`)
6. `diff` → `save` (draft only)

**Test / agent pages:** `indexed: false`.

## After save — preview

```bash
cms-edit preview urls <slug>
```

Open **staging** (`devBaseUrl` in `project.json`) for drafts. Production shows published content only.

## Out of scope

- **News** and **publication** detail pages — use article playbooks, not page create
- **Person profile pages** at `/people/{slug}/` — use `people.md` and Person entries
- **Tag listing pages** under `/resources/.../` or `/categories/.../` — use `resources-hub-pages`; do not create duplicate page entries
- **Search** (`/search/`) — utility page; engineering-led

## Publish handoff

`save` creates drafts only — publish in Contentful UI when approved. See `cms-edit://customer/task-publish-handoff`.