Looks like you have the footer positioned to Absolute on tablet and landscape mobile. Change these both to Relative (like you have for desktop and portrait mobile) should do the trick.
For the non-responsive Div cards, I would try using % as a size measurement rather than px. PX will be static as it is an absolute measurement, like millimetres or inches. Keep in mind % will be a percent of what the div is nestled inside. So if nestled inside a container that is 50vw (another handy responsive measurement) and you make the Div 50% it will be a net total of 25% of the screen width. Make sense?