/* Ajustes da landing sobre o tema original (templatemo-lava): tipografia e ritmo vertical. Carregado por último. */

/* Tipografia: Roboto em tudo, menos nos ícones (Font Awesome usa <i>). */
body, h1, h2, h3, h4, h5, h6, p, li, a, span, label, input, textarea, button, .main-button {
  font-family: Roboto, "Segoe UI", system-ui, -apple-system, sans-serif !important;
}
body { line-height: 1.6; -webkit-font-smoothing: antialiased; }
h4, h5, h6 { font-weight: 700; }
.nav li a, .main-button, footer h4 { font-weight: 500; }

/* Topo: o tema empurrava o texto com margin-top em % e translateY(-30%), o que o jogava para cima do menu. */
.welcome-area {
  height: auto !important;
  min-height: 793px;
  display: flex;
  align-items: center;
  padding: 100px 0 40px;
}
.welcome-area .header-text { width: 100% !important; margin-left: 0 !important; }
.welcome-area .header-text .left-text,
.welcome-area .header-text .numbers { margin-top: 0 !important; transform: none !important; }
.welcome-area .header-text .numbers { display: none; }
.welcome-area .header-text p { font-size: 16px; line-height: 1.7; margin-bottom: 16px; color: #5f5f5f; font-weight: 400; }
.welcome-area .header-text p:last-of-type { margin-bottom: 0; }

/* O texto do topo fica à esquerda da imagem do celular (que ocupa 803 px à direita), sem passar por cima dela. */
@media (min-width: 1141px) {
  .welcome-area .header-text .left-text { max-width: 400px; flex: 0 0 auto; }
  .welcome-area .header-text .left-text p { font-size: 15px; line-height: 1.65; }
}
@media (min-width: 1500px) { .welcome-area .header-text .left-text { max-width: 520px; } .welcome-area .header-text .left-text p { font-size: 16px; } }

/* Ritmo entre as seções (o tema somava 100px + 200px + 120px de respiro em cada uma). */
#about { padding: 56px 0 24px !important; }
#about .center-heading p { line-height: 1.7; margin-bottom: 14px; font-weight: 400; color: #4a4a4a; }
#about .center-heading p:first-child { font-size: 1.6rem !important; margin-bottom: 20px; }
#promotion { padding: 24px 0 56px !important; }
#promotion .right-text ul li { margin-bottom: 28px; }
#promotion .right-text ul li:last-child { margin-bottom: 0; }
#promotion .right-text h4 { margin-bottom: 6px; }
#promotion .right-text p { font-weight: 400; line-height: 1.6; }
footer { margin-top: 24px !important; padding-top: 0 !important; }
footer .footer-content { padding: 72px 0 24px !important; }
.contact-form { padding: 32px; }
.footer-content .right-content p { line-height: 1.7; margin-bottom: 14px; font-weight: 400; }
footer ul li { line-height: 1.9; }

/* Telas médias e estreitas: o texto vem depois da imagem do topo (803x793; altura = 0,987 x largura exibida), sem o vão fixo do tema. */
@media (max-width: 1140px) {
  .welcome-area { min-height: 0; display: block; padding-top: 0; background-size: min(100%, 803px) auto; background-position: right top; }
  .welcome-area .header-text { padding-top: calc(min(98.7vw, 793px) + 24px) !important; width: 92% !important; margin: 0 auto !important; }
  #about { padding-top: 40px !important; }
}
@media (max-width: 810px) {
  footer .footer-content { padding: 48px 0 16px !important; }
  .contact-form { padding: 20px; }
}
