Есть как миннимум 2 способа для ширины оба не очень нормальные и 1 для ширины и высоту самый хороший но незнаю возможен ли в вашем случае
Для ширины
1) Самый простой но и кривой,
Делаете div как подложку с position absolute и z-index -1, в него кладёте img с бэкграундом
div и img должны быть width,height — 100%, узор нужно само сабой немного подготовить, то есть будет сам узор обрезан и продолжением его будет уже background у body
2) Слева и справа у вас почти повторяющийся узор, если можно привести к повторяющемуся то выравнимаем background по центру, при этом картинка долна быть размером гдето 3000 по ширине, и то что у вас сейчас в посте должно быть по центру этой картинки, остальное узор
Самый нормальный
Если узор повторяется или большой по размеру, ставьте узор на background облака будут отдельно, для шапки прозрачная png с облаками, для футера sticky и тоже прозрачная png
Если что то плохо написал могу пояснить подробней