Motorola currently has the Moto Z2 Play available for just $349 for the unlocked version. That's good for $150 off of its regular price of $499. Motorola also has the Verizon model available for $408 through its website, and this is the full retail price, not when you pick it up on monthly payments.
The Moto Z2 Play was announced earlier this year by Motorola, it's a high-mid-range model in their portfolio, sporting specs that are somewhat similar to the Moto G5S Plus, but it does work with Moto Mods and has pretty insane battery life. The Moto Z2 Play does also have a 5.5-inch full HD display, with a Snapdragon 626 processor and 4GB of RAM. There's a 3000mAh battery inside which will keep it running all day and then some. Of course, if that's not enough, you can also pick up the Moto PowerPack Moto Mod and get some more juice for your Moto Z2 Play, so it'll last you even longer. It's a really good phone, especially for power users.
You can purchase both models through Motorola's website and they will arrive before Christmas. So this is going to make a great gift for someone on your list, especially if they are in need of a new smartphone this year.