I have deduced why the given translation sounds odd to my British ears: 'have you seen' would be used for something which is still there, whilst 'did you see' for something transient, thus 'have you seen the new hospital?' [it is still there] and 'did you see the doctor in the green suit going in?'
No, it's not really to do with transience or permanence. It's that we tend to use the present perfect to talk about past events that have a consequence on the present. 'Did you see the new hospital?' is perfectly grammatical, but describes a completed action in the past. 'Already' places this event in a continuing timespan (today, this year, your life...)
To use perfective you have to complete a goal of seeing a new hospital, which is a bit strange, by the way. Though, you may be a villager visiting a city specifically to look at a new modern hospital. Your wife is calling and ask you "ты уже увидел новую больницу?".
Using imperfective "видел" you ask if a person has seen a new hospital, without implying that he had a goal to do so. He may has seen it once or many times, you do not imply a specific complete action of seeing the hospital.
The pair of verbs видел/увидел is a bit confusing. If we take, for example, the pair читал/прочитал (read), прочитал means that you finished reading a book. Compare two phrases:
Я увидел всё, что хотел. I wanted to see something, and I finished (or have finished) my goal to see it.
Я видел всё, что хотел. I was able to see anything the moment I wanted to see it. I don't know, maybe through a magic mirror in some fairy tale. :)
Sometimes, perfective and imperfective can be used interchangeably. "Я увидел/видел достаточно" may both mean that you have seen enough to come up with some decision.
Why the words for "hotel" and "hospital" are not similar to "hotel" and "hospital", as it happens with most of European languages, as far as I've seen? It's surprising considering Russian seems to have so many "borrrowed" words (матч, футбол, баскетбол, кёрлинг, покер, блэкджек, теннис, журнал, магазин, газета, касино, билет, бутерброд, газ...)
They came from the same Proto-Indo-European root, I suppose.
Words оте́ль and го́спиталь also exist in Russian. Оте́ль means pretty much the same thing as гости́ница, but it's probably less commonly used. Го́спиталь usually means a military hospital, so you can't call any hospital this way.