meta.charsetThe character encoding is not declared
Why it matters
When a page doesn't say how its text is encoded, each browser and scraper guesses, and a wrong guess turns "£" into "£" and "café" into "café", in the page and in every link preview made from it. Browsers only look for the declaration in the first 1024 bytes, so one that comes after a long inline script or stylesheet counts as missing.
Source: HTML Standard, specifying the document's character encoding: the declaration "must be serialized completely within the first 1024 bytes of the document". A charset in the Content-Type response header does the same job.
How to fix it
Make this the first thing inside <head>, before the title and any scripts:
<meta charset="utf-8" />