No .apresentacao você definiu align-items:flex-start; para telas maiores e para telas abaixo de 1200px você não deu valor para essa propriedade, logo ela assumiu o valor da tela maior.
Tente colocar align-items: center dentro de .apresentacao no @media.
@media (max-width: 1200px) {
.cabecalho{
padding: 10%;
}
.cabecalho__menu{
justify-content: center;
}
.apresentacao{
flex-direction: column-reverse;
padding: 5%;
justify-content: center;
/* alinhamento no centro para telas menores */
align-items: center;
}
.apresentacao__conteudo{
width: 100%;
}
}