/* Página Sobre nós: apresentação da empresa e experiências oferecidas. */
.apresentacao-sobre { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 8%; padding-block: 64px 78px; }
.apresentacao-texto h1 { font-size: clamp(46px, 4.9vw, 72px); margin-bottom: 28px; }
.apresentacao-texto .botao { margin-top: 18px; }
.apresentacao-foto { position: relative; margin: 0; height: 570px; overflow: hidden; }
.apresentacao-foto img { width: 100%; height: 100%; object-fit: cover; }
.apresentacao-foto::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, #000b, transparent 50%); }
.apresentacao-foto figcaption { position: absolute; z-index: 1; left: 28px; right: 20px; bottom: 26px; font-family: var(--fonte-titulo); font-size: 28px; font-style: italic; }
.proposta-sobre { border-top: 1px solid var(--borda); display: grid; grid-template-columns: 1fr 1.2fr; gap: 8%; }
.proposta-sobre p:not(.sobretitulo) { color: var(--texto-suave); }
.proposta-sobre .texto-proposta { font-size: 23px; line-height: 1.6; color: var(--texto) !important; }
.ofertas-sobre { border-top: 1px solid var(--borda); }
.ofertas-cabecalho { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 40px; }
.ofertas-cabecalho h2 { margin-bottom: 0; }
.ofertas-cabecalho > p { color: var(--texto-suave); margin-bottom: 0; }
.nota-sobre { color: var(--texto-suave); font-size: 12px; margin-block: 25px; }
.possibilidades-sobre { border-top: 1px solid var(--borda); }
.eventos-sobre { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 35px; margin-top: 40px; }
.eventos-sobre article { border-top: 1px solid #76673a; padding-top: 25px; }
.eventos-sobre h3 { color: var(--ouro); font-size: 28px; margin-bottom: 15px; }
.eventos-sobre p { color: var(--texto-suave); }
@media (max-width: 820px) {
    .apresentacao-sobre { grid-template-columns: 1fr; gap: 35px; padding-block: 44px 55px; }
    .apresentacao-texto h1 { font-size: clamp(45px, 8vw, 66px); }
    .apresentacao-foto { height: 520px; }
    .proposta-sobre { grid-template-columns: 1fr; gap: 15px; }
    .ofertas-cabecalho { flex-direction: column; align-items: flex-start; gap: 22px; }
    .ofertas-cabecalho > p br { display: none; }
    .eventos-sobre { gap: 22px; }
    .eventos-sobre h3 { font-size: 24px; }
}
@media (max-width: 540px) {
    .apresentacao-foto { height: 400px; }
    .apresentacao-foto figcaption { left: 20px; font-size: 24px; }
    .proposta-sobre .texto-proposta { font-size: 21px; }
    .eventos-sobre { grid-template-columns: 1fr; gap: 18px; }
    .eventos-sobre h3 { font-size: 28px; }
}
