Because the programming gods don’t like me, this didn’t do the trick for me. Looking over my code, all encoding is properly set. The HTML is:
header("Content-Type: text/html; charset: utf-8");
And the CSS:
header("Content-Type: text/css; charset: utf-8");
And so on with all other file types. The permanent solution for me was to set this in the .htaccess file.
I suspect that somewhere in the application the encoding is being transferred incorrectly, but all tools I can use (Firebug, page load info) say otherwise. Even changing the default charset in Safari preferences didn’t fix the problem. If you’re running into something similar, know that the issue is with encoding. If fixing it on a page level doesn’t work then the .htaccess change may be what you need.
UPDATE : Turns out I’m a goof (and Kevin) and missed that the charset is set with an equals sign and not a colon. Ignore the above. Thanks Kurt!