I’m out of ideas… you can restart your mailcow once again, and after it started run
docker-compose logs --tail=200 -f nginx-mailcow
in one SSH session and do the curl from another session. You should at least see that in the logs
And you can see the start of the logs of the nginx container, maybe it complains about something there