Boris Johnson loses conservative heartland. Macron faces lame-duck presidency