/* Garantir que a página inteira ocupe 100% da altura */
html, body {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 0;
  background-color: rgb(55, 95, 170);
  color: #621cd3;
}
* {
  font-family: sans-serif;
  box-sizing: border-box;
  border: none;
  text-decoration: none;
}
main {
  display: flex;
  width: 98%;
  margin: 0 auto;
  height: 100%;
  background: rgb(254, 193, 44); 
  border-left: #ffffff solid 1px;
  border-right: #ffffff solid 1px;
}
/* Estilos do contêiner principal */
section {
  width: 400px;
  height: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  /*background-color: red; /* Cor de fundo do contêiner */*/
}

/* Centralizar a logo */
.logo {
  display: block;
  margin-bottom: 10px;
  width: 9.375rem;
}
/* Estilos para o h1 e p */
h1{
  font-size: 1.75rem;
  margin: 0;
  margin-bottom: 10px; /* Espaçamento entre o h1, p e os inputs */
  text-align: center;
}
p{
  line-height: 1.5;
  font-weight: 500;
  color: #3a3a3a;
  margin-top: 0px;
  margin-bottom: 10px;
  padding: 0px 10px 0px 10px;
}
strong{
  color: #621cd3;
}
form{
  padding: 0px 10px 0px 10px;
}
input,
textarea,
button {
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0.25rem;
  padding: 10px;
  font-size: 1rem;
  color: #621cd3;
  resize: none;
}
input::placeholder {
  color: #cfc7c7;
}
input,
button {
  height: 2.5rem;
}
/*Deixa o form de pesquisa telefone no tamanho 100%*/
.iti{
  width: 100%;
  margin-bottom: 15px; /* Espaçamento abaixo do textarea */
}
/*Limita o tamanho do form de pesquisa*/
.iti__search-input{
  width: 230px;
  max-width: 300px;

}
.iti__dropdown-content{
  width: 341px;
  max-width: 300px;

}
/* Estilos para o textarea */
textarea {
  height: 100px; /* Altura fixa para o textarea */
  margin-bottom: 13px; /* Espaçamento abaixo do textarea */
  padding: 10px;
  box-sizing: border-box;
}
button {
  cursor: pointer;
  background-color: #25d366;
  font-size: 1.25rem;
  color: #ffffff;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  height: 3rem;
}
button img {
  margin-right: 0.5rem;
  width: 3.125rem;
}
a {
  color: #25d366;
}
.hide {
  display: none;
}
.error { 
  border-color: red; 
}
.valid-msg, .error-msg {
  color: red;
  font-weight: bold; 
}
.valid-msg { 
  color: green;
  font-weight: bold; 
}

/* Pequenos dispositivos (telefones em modo paisagem) */
@media screen and (min-width: 320px) and (max-width: 480px) and (orientation: portrait){
/*@media (max-width: 480px) {*/
  h1{
    font-size: 24px;
  }
  p{
    font-size: 1.25rem;
   }
  main{
    width: 96%;
    height: 110vh;
   }
   .logo{
    margin-top: 30px;
    width: 8.75rem;
  }
  textarea {
  height: 60px; /* Altura fixa para o textarea */
}
  button {
  font-size: 17px;
  }
 }

/* Para tablets e dispositivos médios */
@media (min-width: 768px) and (max-width: 1024px) {
  main {
    width: 97%;
    height: 100vh; /* 100% da altura da viewport */
  }
}

/* Para desktops */
@media (min-width: 1025px) {
  main {
    height: 100vh; /* 100% da altura da viewport */
  }
}