GeorgiyStepanov, может, стоит relative задать тому, относительно кого позиционируете? Не от вьюпорта же вам нужно?
Картинку можно заменить на любую подходящую из сервиса заглушек (например, https://picsum.photos/) или из Яндекс картинок или со своего хостинга, если по https.
Но и сейчас этот псевдо никуда не сместится. Куда прибили, там и будет.
GeorgiyStepanov,
1. Прочитайте про тень.
2. Почитайте про работу позиционирования на MDN, Доке или любом другом удобном вам ресурсе.
Элементы с absolute позиционируются относительно ближайшего родителя с position отличным от static (т.е. если нужному родителю не нужно позиционирование, то это relative). Если такого родителя нет, то относительно окна браузера.
У img нет дочерних элементов, относительно него никого нельзя спозиционировать (ну кроме его псевдоэлементов, когда сама картинка недоступна)