I find it hard to believe it means "It is due to the light", as they corrected me.
Yes, I'm sure I'm right. German is my native language :). "liegen an + dative" can have a literal meaning, e.g. "Sie liegt am Strand" (She is lying on the beach). However, "liegen an + dative" can also have another meaning: "to be due to sth./to be caused by sth."
You can see what I mean when you type in "liegen" in the search box of this online dictionary and have a look at meaning 18.