I would encourage experimentation, solidfan, it's a great way to learn. Just be sure to make a good back-up copy of the CSS to begin with (and any files you edit), then make tiny single changes and check those changes on different browsers as you go, one at a time, going very slowly and methodically. Learning it will empower you.
Hard-coding could mean he has added inline style information right in the template files, or has taken out site variables and written them in (site name, description, etc.), or it could mean he has added classes and IDs to elements that the default template files do not have. It could also mean some styling was actually done with HTML using strong, em, b, i, and small elements, and maybe even some headings (though I doubt the latter is the case).
The latter is what I did in my recent "Beast Blog" theme release http://green-beast.com/blog/?page_id=58. It has custom classes in addition to what's provided, thus the theme has some hard-coding. In my version of the theme http://green-beast.com/blog/ (v.1.0) for my own use, I have a number of hard-coded items that wouldn't be easy for someone to use. The release version (v.1.1) isn't like this as it was designed specifically as a public theme.