I’m not sure how I lost it, but I did.
This is not the most complicated server so I couldn’t email myself a password reset. I tried editing functions.php but that didn’t work either.
In the end I used WP-CLI and it worked like a charm.
My next step is to work out updates without an FTP server.