Разрешить svg менять пропорции preserveAspectRatio="none"
Убрать к черту псевдо (ну просто потому что бесит и не ясно зачем он там).
Считать на js пропорции в зависимости от размера блока и ставить в отступы (точнее в координаты p).
Причем, мне кажется, абзацу как раз потребуется абсолют, чтобы не получить круговую зависимость.
С другой стороны, в таких блоках обычно не предусматривается переполнение.