My router and pihole both have places in the web config to specify the local domain, which I filled out. This didn't work. So because most threads surrounding this issue mention this "fix", I added
domain=castle.hom
Local=/castle.hom/
to /etc/ hosts on the router and on the pihole. This didn't work. Pinging any device in the form of hostname.castle.hom from the router CLI responds with: ping: bad address 'hostname.castle.hom'
So then I added the domain info to /etc/dnsmasq.d/01-pihole.conf as per this thread. Reboot PI,reboot router, no joy.
You yourself brought up gravity.list in that same thread. At the top of my gravity list is the Pihole's address, followed by 0.0.0.0.
It doesn't look right to me, but I don't know what should go there so I didn't change it.
Other threads I've seen are just rehashes of these same steps. As I said, it all works fine from the pihole. But only from the pihole. There's something else going on here that I can't diagnose myself. Must. Not. Give. UP!