I used "specific" instead of "restricted", in my post, but I was expressing the same idea, I guess. I would use "in" in the sentence you are asking about because it's a restricted location.
But if I am mentioning two places what should I use?
"There is a café in the airport." "In" if I am talking about a restricted place and "at" if I am talking about"airport" in a general sense. Then I should remove the second "in" before "airport" and use "at".
If there is only one restricted place in the second sentence then I should use "in" before "café" and "at" before "airport".
2. "I am in a café at the airport". The "restricted" location is "café" not the airport in the second sentence.
Yes, that's right.
Remember - if you don't use correct capitalisation, punctuation and spacing, anything you write will be incorrect.
In Michael Swan's "Practical English Usage" I read: "We very often use "at" before the name of a building, when we are thinking not of the itself but of the activity that happens there.
"I first heard her sing at the Usher Hall in Edinburgh."
The book gives another example and says: "It was warm and comfortable in the club." (A place to spend time). I don't understand its comment. I think it's more helpful to say as it was explained here that "in" is a restricted area. I may be wrong of course.
So "at" is used when speaking about a place generally and also when speaking about the purpose being there.