Alinhar elementos com CSS em qualquer direção sempre é um problema para qualquer front-end. Temos formas "básicas" de fazer isso, mas também temos as novas specs que estão sendo criadas para cuidar dessa questão. Uma delas é o Flexbox, que já não é tão recente assim, e a outra é o CSS Grid, que acabou de sair do forno. Venha aprender de uma forma descomplicada, como usar essas propriedades.