Static site looks fine in VSCode preview, but raw gibberish HTML when uploaded

Basically the title. I wrote a one-page static site (HTML, CSS, and a handful of lightweight images) and it looks great in VSCode preview. I've had this site live for a while, and made successful deployments for about a year. But now, for some reason, Cloudflare displays anything I upload as just raw HTML code, brackets and all. The twist is that there are bizarro characters inserted/substituted somehow. A sample:

head>
<meta charset="“UTF-8”">
<!--<meta name="“viewport”" content="“width=device-width," initial-scale="1”">
<meta name="viewport" content="width=device-width", initial-scale="1.0">-->
<meta name="viewport" content="width=device-width, initial-scale=1" />head>
<meta charset="“UTF-8”">
<!--<meta name="“viewport”" content="“width=device-width," initial-scale="1”">
<meta name="viewport" content="width=device-width", initial-scale="1.0">-->
<meta name="viewport" content="width=device-width, initial-scale=1" />

So yeah- what the heck is happening here? Any ideas? The local file is clean, it only gets freaky once Cloudflare Pages is trying to serve it