@font-face {
  font-family: 'Newsreader';
  src: url('Newsreader-VariableFont_opsz,wght.ttf');
}
@font-face {
  font-family: 'Mulish';
  src: url('Mulish-VariableFont_wght.ttf');
}
body {
  margin: 0;
  font-family: 'Mulish', sans-serif;
  background: #fff;
}
header {
  background: linear-gradient(to right, #4C2FA9, #411484);
  color: white;
  text-align: center;
  padding: 2rem;
}
header img {
  max-width: 180px;
}
.section {
  padding: 3rem 2rem;
  max-width: 1200px;
  margin: auto;
  text-align: left;
}
.flex-section {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  align-items: center;
}
.flex-section img {
  flex: 1 1 45%;
  max-width: 500px;
}
.flex-section .text {
  flex: 1 1 45%;
}
ul {
  padding-left: 1.2rem;
}
.cta {
  background: #1D0490;
  color: white;
  text-align: center;
  padding: 2rem;
}
.cta form input,
.cta form button {
  padding: 0.75rem;
  margin: 0.5rem;
  width: 90%;
  max-width: 400px;
}
footer {
  background: linear-gradient(to right, #4C2FA9, #411484);
  color: white;
  text-align: center;
  padding: 1rem;
}

/* Correção de scroll lateral */
html, body {
  max-width: 100%;
  overflow-x: hidden;
}


/* Centraliza imagens específicas apenas no mobile */
@media (max-width: 768px) {
  .imagem-centralizavel {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}


/* Centraliza corretamente imagens no mobile mesmo dentro de div flex */
@media (max-width: 768px) {
  .imagem-centralizavel {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    max-width: 100% !important;
  }

  .imagem-centralizavel img {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .imagem-centralizavel-container {
    display: block !important;
    text-align: center !important;
  }
}


/* Centraliza títulos específicos */
.titulo-centralizado {
  text-align: center;
}
