If you set the fields as "hidden" in the content type settings, it only works for classic experience in the list.
If you want to hide the columns in the forms in modern experience, then you could customize the forms in PowerApps.
In the PowerApps, select the fields which you want to hide and set “Visible” as off like the picture below.
After all, you ...
I've done something like this before with InfoPath and a workflow, but I think you want multiple users to fill out the form at the same time which is something that I have not done. In the past I've setup an infopath form to only display the fields that need to be filled out by that user, then have a workflow at increments the infopath form to the next view ...
Why not use a SharePoint list? You can add files/images as attachments to a list item.
Take a look at this Library(to help interacting with SharePoint):
You can use libraries like SemanticUI or BootStrap for building your form.