"Grüß Gott" has been handled pretty well so far in this discussion - it is pretty safe to say that it is slowly dying out, at least around here where I live (near Stuttgart). It is only used by older people, as far as I can tell. And I do not think there is any religious sense intended by the people who still use it. Younger people (i.e. <40) tend to use "Guten Tag", probably since it is more 'neutral' (i.e. Hochdeutsch, no dialect). "Guten Tag" is an all-purpose greeting you usually use when meeting somebody you do not know yet, i.e. in shops, on the street etc. At work, where you know people, greetings are more differentiated. Let's exclude people you REALLY are familiar with (that is, those you usually greet with "Hallo" or something like that), and you end up with greetings which are chosen according to the time of day. Early on, up to about 9:00, you greet people with "Guten Morgen". Then it's a short period for "Guten Tag", and from about 11:30 to 14:00, it is "Mahlzeit" (at least in those companies I have been so far). Funny thing is, "Mahlzeit" is not only what you say as a greeting to people you meet during that time, you also use it as a kind of "good bye" when you leave the room to go and eat lunch. After 14:00, it's "Guten Tag" again until evening, when it's "Guten Abend".
As for me personally, I use "Guten Tag" just about everywhere when I "initiate contact". Should some Bavarian come up to me and greet me with "Grüß Gott", I would use it, too, just to be polite.