Moved scale calculations to zoomIn. Now regardless of the container size or the image the zoom-in-out is correct
resized darkoverlay to fill body width and height