There's a big difference between a website that is compatible with mobile phones, and a mobile website.
Any decent website can be made compatible with mobile browsers, it's just the same principles as designing for accessibility. You can then use media queries and/or mobile.css to serve appropriate styles for a small screen.
A mobile website is different. A mobile website is a different version of the website specifically designed for mobile phones. It will have some of the same content on, but it will probably only have a limited range of content, aimed squarely at people who are on the move. The layout, navigation and functionality will be different, in order to improve the experience for mobile users. Scripts and images will be minimal, to improve download speed. This kind of transformation can't be achieved by CSS alone, because the entire page structure has to be different. I'm sure with a good CMS you could build a suitable mobile generator, but otherwise it requires maintaining two parallel sites.
Some people provide a completely different site for mobiles, but that's not really necessary.
It depends on the site. Some websites really do benefit from a slimmed down version for mobiles, and if you're site is big enough and gets enough mobile traffic, it would be worth considering whether it's an appropriate course to take.