The man page starts with:
SYNOPSIS gpg [--homedir dir] [--options file] [options] command [args]
Then it never actually specifies what is considered an "arg". This lead to a bug in mutt (https://github.com/neomutt/neomutt/issues/998). The --encrypt command takes the --recipient argument, but the man page describes --recipient as an _option_, thus implying that it should be written before the command. Yet the "Examples" in the man page contradicts that, showing --recipient being used as an _argument_, not an _option_.
This is further complicated by the fact that --recipient is not mandatory. That is, it may be omitted if --encrypt-to <key id> --encrypt-to-self is set. But that may actually be a functional code defect, because the man page states "These keys are only used when there are other recipients given either by use of --recipient or by the asked user id." In my tests I was able to omit --recipient and the command was executed (presumably encrypting to myself alone).