Wielki dom na odludziu. Skrzypiące schody. Nagle zatrzaskujące się drzwi. Sceneria „Sierocińca” zapowiada, że zobaczymy dobrze znany świat z innego hiszpańskiego obrazu – „Innych” Alejandro Amenabara (2001). I rzeczywiście, debiutant Juan Antonio Bayona podobnie buduje fabułę.
Akcję osadza w typowym dla horroru miejscu – posiadłości pełnej duchów – ale dba, żeby nastrój opowieści bliższy był thrillerom Hitchcocka. Tak jak Amenabar łączy konwencje. Film grozy przechodzi u Bayony w kryminał, a na końcu okazuje się przejmującym rodzinnym dramatem.
Po latach Laura (Belen Rueda) wraz z mężem Carlosem i siedmioletnim adoptowanym synkiem Simonem wraca do sierocińca, w którym kiedyś się wychowała. Chce w opuszczonym miejscu założyć dom dziecka. Ale jej plany pokrzyżują niespodziewane wydarzenia. Simon zaczyna fantazjować. Opowiada rodzicom o niewidocznych przyjaciołach, z którymi się bawi. Ci tłumaczą sobie zachowanie chłopca jego bujną wyobraźnią, jednak wkrótce Simon znika. Carlos i policja tracą nadzieję na odnalezienie chłopczyka. Ale Laura wierzy, że synek żyje i z powodu mrocznej przeszłości sierocińca jest w śmiertelnym niebezpieczeństwie...
Jednak to nie poczynania duchów są przyczyną tragedii. Jej źródłem jest niezrozumienie przez rodziców wrażliwości i potrzeb Simona. Laura, starając się naprawić swój błąd, będzie musiała odbyć podróż niczym bohaterowie baśni – lecz w przeciwnym kierunku.
Dzielni rycerze stawiali czoła smokom, potworom. Nagrodą była ręka królewny i królestwo – symbole dorosłości i przejęcia kontroli nad własnym życiem. Tymczasem Laura, zagłębiając się w świat zjaw, wraca do roli dziecka, które zabiła w sobie jako dorosła kobieta, wypierając traumę z dzieciństwa. Ceną za ten powrót jest obłęd.