This is 90% probably caused due to your poor HTML. Validate your HTML and go from there.
I noticed several times amoung the page you have invalid code. Especially near the problem HTML, you have an anchor wrapping around block level elements such as <div>
I notice that if you disable javascript then the image appears so I guess that the JS is manipulating the DOM and due to the incorrect structure of the h2 (as Ryan stated above) then I’m guessing the browser is a little confused.
The first thing to do is to use valid code to eliminate that as a cause.
Of course the inline styles should be applied by classes and you will need to set the anchor to display:block.
.component-content h2.title a{display:block}
As that h2 is floated you also need to make sure that following content is cleared otherwise it will try to wrap. (Of course it seems you don’t really need to float that h2 anyway so remove the float form the h2 and add overflow:hidden to contain the floated spans instead.)
None of the above may fix the problem but until you have a valid structure we won’t know where else to look.
That means the styling and image are not appropriate any more.
You need to first fix the code and then see if it corrects the issue. If not then you need to work out why the script is changing the html.
What is that script doing?
You put it there so you should know what it’s for. It seems to be something to do with this:
window.addEvent('domready', function() {
var modules = ['rt-block'];
var header = ['h3','h2','h1'];
GantryBuildSpans(modules, header);
});
Try de-activating the scripts one at a time until you find out which one is causing the issue. But first fix that html that I mentioned originally to rule that out as a cause.