Nikolay Matyushkin, :before и :after работают если браузеру не удалось загрузить картинку. Попробуй заменить свое изображения на <img src="https://google.com/404.jpg"> чтобы увидеть псевдоэлементы.
kirillxeni, это самый бесполезный способ использования векторных иконок. Если хочется использовать иконочный шрифт (FontAwesome), то нет смысла заворачивать текст в svg. Если хочется использовать svg, для того чтобы не грузить весь шрифт, то есть смысл разобрать шрифт до кривых например в фигме. Но если действительно нужны сторонние шрифты внутри svg, то нужно их подключать отдельно в каждом файле https://vecta.io/blog/how-to-use-fonts-in-svg#usin...
tyoma_koder, preserveAspectRatio работает только в связке с viewBox. Советую почитать тут о том как управлять размерами в svg.
В качестве решения можно попробовать сделать так:
<img src="https://google.com/404.jpg">
чтобы увидеть псевдоэлементы.