Think outside the box. Get a previous generation. Pixel 8 was about to be released. To move inventory, Google discounted the 7 series by like 30-40%. I got the 256GB 7 Pro for $600. Without the sale, $600 is the same price as the 128GB 7. I got a top of the range flagship phone for the cost of a midrange. My mom did something similar with a Samsung phone. She got an S20 when the S22 released. Huge discount when Verizon offered it for $449.
You either set the DNS settings per device to the system running PiHole / AdGuard Home, or if your router allows, set the DNS there. It’s ideal to set it on the router.
Any time a device makes a DNS request to a domain, it’s checked against the list. If found, it’s stopped. If not found, it gets sent upstream to your choice of a public DNS configured during setup. I use Cloudflare (1.1.1.1, 1.0.0.1).