A consequence of the high deg meant the first portion on the softs was spent pootling around in the high 1:48s per lap before Vettel pitted, triggering the undercut and moving onto the hard tyres. He nailed his outlap and ended up ahead of Leclerc after his pit stop. The two carved back up through the traffic while the Mercedes team, wrongfooted by the Ferrari's early undercut, left Hamilton out in a desperate attempt to hold on for a safety car that never came. Finally, Lewis did pit, consigning him to 4th - Red Bull and Verstappen having pulled off their own undercut in the meantime.
The later phase of the race was, again, all about tyre management - and three safety cars, which came far too late for Mercedes. Between managing restarts and tyres, there was no grandstand finish, and they came home in that order, Ferrari having turned a 1 - 3 into a 2 - 1, respecting the original order.
Now, Leclerc wasn't the happiest bunny about his win going away, but he dealt with it quite well and it's refreshing to see Ferrari bring home a 1-2 finish on a track they were billed to struggle on. It's all a bit late for the championship, but we may yet see 2019 out with a bang at least, and the gains developed this year should apply next season too.