Can someone explain to me why "fa" is used for this sentence? I mean, I've gathered that there is some kind of idiom, but usually I understand why these kinds of idioms are used. That's not the case for this one.
I am not sure for italian, but it seems as Spanish. In Spain we say "Hace mucho calor hoy". 'Hacer' is equivalent to 'Fare' in Italian. "Fa caldo" == "Hace calor". "Fa freddo" == "Hace frío" (third person, singular)
This is how many weather phrases work in Spanish. "Hace sol hoy." Today it is cloudy. There are also more literal translations used in some contexts, é. g. "Está lloviendo." It is raining. I would assume the same is true in Italian.