I need to mask an image with a custom shape SVG (it's like an arch as you see in the images below). Here is the actual code with the path of the SVG shape:
img {
clip-path: path('M451.715 154.05C451.79 152.468 451.828 150.88 451.828 149.286C451.828 66.8376 350.683 0 225.914 0C101.145 0 0 66.8376 0 149.286C0 150.88 0.0378114 152.468 0.112874 154.05H0V536H451.828V154.05H451.715Z');
}
This is the original SVG:
<svg width="452" height="536" viewBox="0 0 452 536" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M451.715 154.05C451.79 152.468 451.828 150.88 451.828 149.286C451.828 66.8376 350.683 0 225.914 0C101.145 0 0 66.8376 0 149.286C0 150.88 0.0378114 152.468 0.112874 154.05H0V536H451.828V154.05H451.715Z" fill="#FF0809"/>
</svg>
It seems work but I need to center the shape on the image and it has to keep its ratio (not stretching). Below I attach an image with details that explains better than words.
Any idea?

In my experience I used an inline svg element. Tried many things before like
clip-pathbut couldn't get it to work properly.This is what I ended up with:
HTML
CSS
DEMO
I tweaked your svg file a bit in Illustrator and created a "compound path" of the original path. I also added a background path (
M489,535H-36V0h525V535z) and merged both paths.This can now be used as an inline svg mask. Let's see if I can get it to work with CSS instead...
EDIT: Unfortunatly I don't see an easy option to make this
clip-pathresponsive. If it was a basic shape then we could use % or em but as this is not the case I'm convinced an inline svg is your only option. Unless someone else has a better idea? https://developer.mozilla.org/en-US/docs/Web/CSS/clip-path