I think there are two problems, the first is that a dot (.) will match everything, including / so perhaps replace it with something like [a-z0-9] which will mathc any lowercase letter or number.
The second possible problem is that a * will match zero or more times, so it will match if there is nothing specified, e.g. limousines/// so maybe replace it with a + which will match one or more times.
and got the base limousines.php page with all styles and graphic removed (I am assuming this is because the page was looking for the stylesheet in the wrong directory).
How do I do the URL rewriting stuff the right way? I'm brand new to it and at a total loss.
in addition on SlappyTheFish 's post, it is necessary to add BASE HREF in the head of your html pages, so browser will know which is the base directory of the site and properly fetch css, images, etc.
Take a look on news website http://www.livepage.info where we have the same thing.
eg. of the code: <html><head><base href="http://www.domain.com/">...