In a Nutshell:
The literal meaning of ‘kufr’ is to hide. Ingratitude is also called ‘kufr’ because the recipient hides the bounties of the giver (by denying it or not acknowledging it). In the Sharia, ‘kufr’ refers to the denial of anything Allah obliges belief in, whatever the Prophet (saw) brought from Allah proven definite and certain; having belief in that with one’s heart that it’s the truth is necessary for one to be a Muslim (believer). Therefore, a person who does not consider any of the definite teachings of the Prophet (saw) to be true or does not approve of them is called a ‘kafir’ (disbeliever).