Sorry, but this is a sad outcome in my opinion.
You were on your way to your mums.....so not on work duty. He was racist to you, but as not on work duty, it was a totally "personal" thing.
You confronted him there and then. This was correct.
You reported him to his company. This was also reasonable.
But you also reported it to your highways department.....was that via a work contact you have?
Being at work or on personal time is irrelevant to the act that took place, cos to him, you were just another driver, but had you been a member of the public without your inside knowledge of the departments involved, would you have left it at just the talk to him?
Seems to me you were very upset and wanted revenge....which is understandable, but are you happy he has lost his job?
I can see why he has....his company needed to make an example out of him in order to get the work back, and so in that respect it is tough sh*t for him, but come on, sticks and stones etc - he called you a name and now has lost his job! Like I said before, had it been me driving, he would've probably called me a fat c*nt.....so I don't think it was really racially motivated, but because everyone is so sh*t scared of being labelled racist, his company has acted strongly.
True, he should've thought of that before he said it...I work for and organsiation that has a strict equality policy and I'd be in the sh*t also, but losing his job seems to severe over just this incident.
However, we don't know the full facts....he might have had complaints before etc (so hasn't learnt his lesson etc....and therefore does deserve this) but at the same time, this might be a 1st incident.
If it happened to me, sure, I'd want action taken, partly out of revenge, but also to educate him, but not to lose his job. Again though, as I said before, I have different views, so perhaps you see it more strongly, which is your view, to which you are entitled.
Now he has lost his job, lets hope he does learn from it! He'll probably have plenty of time to reflect.