In Russian, в is used for days of the week, for instance в средy = on Wednesday.
However на is used for special days like на Рождество = at Christmas, на Пасху = at Easter. I think maybe both of these can refer to a period of more than one day (thus, "at" Christmas, "at" Easter), or perhaps they refer specifically to a single day (on Christmas Day, on Easter Sunday)?
Also на + day of the week is used in expressions like в ночь со вторника на среду = overnight, on the night that starts on Tuesday evening and ends on Wednesday morning. The shorter expression в ночь на среду also means the same thing. Is there any other context that uses на + day of the week?
Similarly, the expression в ночь на Рождество means the night that starts on Christmas Eve and ends on Christmas morning.
However, the expression в ночь на Хэллоуин means Halloween night. It is not the night that ends on the morning of October 31, but the night that begins on the evening of October 31.
Am I understanding something incorrectly, or is this last expression inconsistent with all the other на + day expressions?