A page built as standalone HTML looked perfect in preview, then rendered with the theme’s raw defaults once pasted into a Custom HTML block: no custom fonts, no brand colors, and headings in a boxed, highlighted style that belonged to the theme. Swapping the font loading method made no difference.
⚡ Quick Fix (TL;DR)
The Culprit: The pasted style block used unscoped global selectors such as body and .hero. Inside a WordPress content block, rules like those don't survive the same way they do in a standalone file. Fonts were a red herring; nothing in the stylesheet was being applied.
The Fix: Wrapped the whole page in a single uniquely named container and prefixed every CSS rule with it, so each selector only matches inside that wrapper. A bonus effect: the page can no longer bleed styles into the rest of the site, or pick up the theme's.
Was this helpful? Thanks for the feedback!