Johann Zarco left it late to deny Sam Lowes pole position at the Czech GP by just 0.033s, with Alex Marquez completing the front row.