There is no such thing as a 100% non-refundable deposit.
The deposit is usually used to lock both parties into the purchase process. That being said, if either party changes the rules after the deposit is made, it can/must be returned, because the entire process becomes null and void.
Example) order a car from an out of town seller. Stipulate that the car must have working AC. Seller says it does. Buyer sends 'non-refundable' deposit. Buyer sends out independent inspector. No working AC. Seller refuses to fix. AC must be fixed by seller or deposit must be returned or another mutually agreed upon resolution has to happen.
The above is an actual case I won. Got my $500 deposit back.