Da ist imho der Fehler in deinem (Denk-)Ansatz. Da muss man nicht versuchen, die Anzeige im Browser durch irgendwelche unsinnigen Verrenkungen im Stylesheet zu retten, sondern da muss erstmal "ordentliches" Markup her!
Stimmt, wenn der Portalanbieter es aber nicht macht macht er es nicht.
Das CSS war damals die einzige Möglichkeit irgendwie in das Erscheinungsbild einzugreifen!
Die Verwendung von CSS kann nicht ein Ersatz für korrektes (X)HTML sein _und_kann auch kein "unsinniges" (X)HTML in irgendeiner Weise korrigieren.
War auch nicht geplant. Die Vorgabe war die bestehenden Seiten (die mit dem "unsinnigen" Quellcode) wenigstens halbwegs ansehbar zu machen.
In deinem Fall hätte also erstmal das Shopportal auf Vordermann gebracht werden müssen! Bei der Gelegenheit hätte man es dann gleich so gestalten können, dass man ggf. gleich per CCs verschiedene Stylesheets eingebunden hätte, womit wir dann da wären, was dir hier von mehreren Leuten bereits geschrieben wurde.
Und was ich auch damals dem Portalbetreiber vorgeschlagen habe. Aber das war, aus welchen Gründen auch immer nicht möglich/gewollt/leistbar...
Es blieb also nur die CSS übrig...
Manchmal gibt es eben Dinge über die man sich nicht hinwegsetzen oder erzwingen kann.