# INT-027-02 — Front do Blog lê as props do CMS

| Campo | Valor |
|---|---|
| **status** | feita |
| **spec** | [`docs/specs/integracao/027-blog.md`](../specs/integracao/027-blog.md) §1, §4 |
| **depende de** | [INT-027-01](INT-027-01-blog-controller-presenter.md) |
| **primo** | `dangerouslySetInnerHTML` no HTML do editor |

## Objetivo

Uma fonte na listagem e no show: some `data/content.ts`, `data/artigo.ts`, `data/assets.ts`. `CmsHtml.tsx` renderiza o `body`.

## Fazer

1. `Pages/Blog/*` despacham props para `BlogIndexPage` / `BlogShowPage`.
2. Seções leem hero, destaque, mais lidas, últimas, imprensa, artigo e related.
3. `features/blog/components/CmsHtml.tsx`. Lead/tags/anúncio/corpo/hero vazios não renderizam. Anúncio sem `adHref` = só `<img>`.
4. “Leia também” some se `related` for `[]`. Compartilhe e “Ver mais” como na spec.

## Testes

Os de Inertia da 01 bastam no PHP. Conferir no browser: `/blog` (destaque + mais lidas + filtro), `/blog/como-aumentar-o-score` (H2 do corpo), slug morto → 404.

## Fora

Home/landings. Filament. Paginação. Clipping.
