Getting this even more, my view is usually that "at" ought to be employed for occasions that aren't times from the 7 days (at Christmas, at Easter, in the weekend, at lunchtime, at 9 o'clock) irrelevant of length, and "on" wherever some time is every day in the week (on Saturday). I might argue this is to do with The truth that "at" indicates a par