Dennis Duffy’s review published on Letterboxd:
There’s a lot to love here. The way Perkins utilizes his stilted, aggressively symmetrical frames creates so much tension, and you’ll often find yourself paying more attention to the negative space than the actual subject of the image due to how much he’s just begging your eyes to wander. You keep telling yourself there’s gotta be something back there right? The atmosphere too is so oppressive and unnerving, and it really commits to it. I guess I could talk about the visual design of this thing all day but man is the script a let down, even if Maika Monroe and Cage are trying their best to make something out of characters with nothing under the surface. Was into this the most when it’s in procedural mode. It has a lot of empty gaps in unfolding as a mystery but it’s still pretty riveting for awhile and often very suspenseful. The movie’s real weakness is in the actual supernatural horror film it wants to be. Once we get to the big reveal it completely sinks the thing. It’s so poorly explained and it’s place in the story kills any mystery or ambiguity making the whole 3rd act feel incidental. Oh well.
Dennis liked these reviews
' ].join(''); if ( adsScript && adsScript === 'bandsintown' && adsPlatforms && ((window.isIOS && adsPlatforms.indexOf("iOS") >= 0) || (window.isAndroid && adsPlatforms.indexOf("Android") >= 0)) && adsLocations && adsMode && ( (adsMode === 'include' && adsLocations.indexOf(window.adsLocation) >= 0) || (adsMode === 'exclude' && adsLocations.indexOf(window.adsLocation) == -1) ) ) { var opts = { artist: "", song: "", adunit_id: 100005950, div_id: "cf_async_461550e3-4815-4881-9032-f65e279e8447" }; adUnit.id = opts.div_id; if (target) { target.insertAdjacentElement('beforeend', adUnit); } else { tag.insertAdjacentElement('afterend', adUnit); } var c=function(){cf.showAsyncAd(opts)};if(typeof window.cf !== 'undefined')c();else{cf_async=!0;var r=document.createElement("script"),s=document.getElementsByTagName("script")[0];r.async=!0;r.src="//srv.tunefindforfans.com/fruits/apricots.js";r.readyState?r.onreadystatechange=function(){if("loaded"==r.readyState||"complete"==r.readyState)r.onreadystatechange=null,c()}:r.onload=c;s.parentNode.insertBefore(r,s)}; } else { adUnit.id = 'pw-461550e3-4815-4881-9032-f65e279e8447'; adUnit.className = 'pw-div -tile300x250 -alignleft -bottommargin'; adUnit.setAttribute('data-pw-' + (renderMobile ? 'mobi' : 'desk'), 'med_rect_btf'); if (target) { target.insertAdjacentElement('beforeend', adUnit); } else { tag.insertAdjacentElement('afterend', adUnit); } window.addEventListener('DOMContentLoaded', (event) => { adUnit.insertAdjacentHTML('afterend', kicker); window.ramp.que.push(function () { window.ramp.addTag('pw-461550e3-4815-4881-9032-f65e279e8447'); }); }, { once: true }); } } tag.remove(); })(document.getElementById('script-461550e3-4815-4881-9032-f65e279e8447'));
' ].join(''); if ( adsScript && adsScript === 'bandsintown' && adsPlatforms && ((window.isIOS && adsPlatforms.indexOf("iOS") >= 0) || (window.isAndroid && adsPlatforms.indexOf("Android") >= 0)) && adsLocations && adsMode && ( (adsMode === 'include' && adsLocations.indexOf(window.adsLocation) >= 0) || (adsMode === 'exclude' && adsLocations.indexOf(window.adsLocation) == -1) ) ) { var opts = { artist: "", song: "", adunit_id: 100005950, div_id: "cf_async_48df333c-33b8-42f5-9157-3bd7b6a898c0" }; adUnit.id = opts.div_id; if (target) { target.insertAdjacentElement('beforeend', adUnit); } else { tag.insertAdjacentElement('afterend', adUnit); } var c=function(){cf.showAsyncAd(opts)};if(typeof window.cf !== 'undefined')c();else{cf_async=!0;var r=document.createElement("script"),s=document.getElementsByTagName("script")[0];r.async=!0;r.src="//srv.tunefindforfans.com/fruits/apricots.js";r.readyState?r.onreadystatechange=function(){if("loaded"==r.readyState||"complete"==r.readyState)r.onreadystatechange=null,c()}:r.onload=c;s.parentNode.insertBefore(r,s)}; } else { adUnit.id = 'pw-48df333c-33b8-42f5-9157-3bd7b6a898c0'; adUnit.className = 'pw-div'; adUnit.setAttribute('data-pw-' + (renderMobile ? 'mobi' : 'desk'), 'sky_btf'); if (target) { target.insertAdjacentElement('beforeend', adUnit); } else { tag.insertAdjacentElement('afterend', adUnit); } window.addEventListener('DOMContentLoaded', (event) => { adUnit.insertAdjacentHTML('afterend', kicker); window.ramp.que.push(function () { window.ramp.addTag('pw-48df333c-33b8-42f5-9157-3bd7b6a898c0'); }); }, { once: true }); } } tag.remove(); })(document.getElementById('script-48df333c-33b8-42f5-9157-3bd7b6a898c0'));