## The deck renders as slides instead of an embedded PDF

- **The embedded PDF showed a broken-document icon.** A blob-URL `<iframe>` depends on the browser's
  built-in PDF viewer being available inside a sandboxed `srcdoc` frame, and it is not — the bytes
  arrived correctly, the frame just had nothing to render them with.
- **Fixed by rasterising the deck at build time.** The 12 slides are pre-rendered to WebP
  (1400px, 486 KB total) and shown in a slide viewer: previous/next, a counter, clickable dots,
  arrow keys once the deck has focus, click-to-advance, and the next slide prefetched. Images load
  through the same vault path as the library artwork, which is the route already proven to work in
  all three contexts. The original PDF is still one click away via **Open the PDF**.
- Chosen over a runtime PDF renderer deliberately: pre-rendered images add no third-party library,
  no CDN dependency and no canvas work at load, and for a 12-slide deck the only thing given up is
  text selection — which the PDF link covers.
- The Library page now loads **no iframes at all** until the visitor asks for one.
