Posicione o rodapé para ficar no fundo da tela flexbox

/* Use flex and set auto margin */
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

footer {
  margin-top: auto;
}
Talented Thrush