I’ve been there. So have hundreds of others. The nonsense styling of the default.css by developers, the non-standards approach that they take time to put in from regular text (.Normal), HTML headings (H1, H2, H3…in uppercase) to outdated CSS rules with the lack of knowledge in writing CSS shorthand to reduce file size and increase productivity. It’s all ended today.
For those of you who are experienced web developers that have adopted the web standards to reach out to the world, there is no need to struggle with using Firebug or IE Developer Toolbar to hunt for CSS attributes that should be overridden against the DNN’s default. I offer to you, the simplest solution—the default.css MUST DIE.
That’s right! If you find yourself spending tremendous amount of time (like I used to) just to figure out a simple issue developers had put on the default.css file that just doesn’t seem to be right. Kill the default.css.
Without the default.css, you’ll have complete control over everything you ever wanted in DotNetNuke. From font sizing to layout control using various approaches, they all come down to browser consistency according to your own CSS values.
Just like learning how to install a new DotNetNuke site (or upgrade), one more item that shold be added to your check-list is:

Note: This file located at ~/Portals/_default/default.css. This site is currently running without the default.css, notice any difference?
Disclaimer: This approach is not recommended for CSS newbie. Intermediate or advanced CSS skills is required.