Marlins run over Posey, Giants 7-6 in 12 innings