On this webpage I’m developing the letters “Sa” and “Flu” are somehow both behind and in front of an image.
The image isn’t fully on top – there’s no transparency in the image, so if it was then the text simply wouldn’t be visible.
However the image clearly isn’t underneath either.
What’s going on here?

The transparency comes from the
#maincontainerwhich has opacity set to 0.92, which causes all of its content to be slightly transparent, unless your specify something else on the child-elements.Update:
Setting
z-indexis not sufficient if the elements you want to position the element in relation to aren’t positioned. z-index only works on positioned elements (position:absolute, position:relative, or position:fixed). This is why the solution suggested by Truth, setting the header toposition: relative;works. Now the image can be placed underneath the text using z-index.