From your code I can assume that only background and class name changes.
I would do it like that:
.parallax {
section.module.parallax {
background-position: 50% 0;
background-repeat: repeat;
background-attachment: fixed;
background-size: cover;
background-blend-mode: screen;
}
<section class="module parallax parallax" style="background-image: url(...);" data-type="background" data-speed="10">
...
</section>
Or
.parallax {
section.module.parallax {
background-position: 50% 0;
background-repeat: repeat;
background-attachment: fixed;
background-size: cover;
background-blend-mode: screen;
}
.p-1 {background-image: url(...);}
.p-2 {background-image: url(...);}
.p-3 {background-image: url(...);}
<section class="module parallax parallax p-1" data-type="background" data-speed="10">...</section>
<section class="module parallax parallax p-2" data-type="background" data-speed="10">...</section>
<section class="module parallax parallax p-3" data-type="background" data-speed="10">...</section>
A good option is also to use javascript to load the right image when parallax comes to viewport. I think that inline CSS for background-image is a good option

If you realy want a separate CSS then create a resource with type CSS and generate all backgrunds there. I don't see a point to create a separate CSS for each parallax.
Basically this is not a modx problem

Figure it out what is the best way for you and we can give you advice how to do it in modx.