* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

/* Reseta margin e padding e define altura e largura 100% para body e html */
body,
html {
  margin: 0;
  padding: 0;
  height: 100%;
  width: 100%;
  font-family: Arial, sans-serif;
}

/* Define a imagem de fundo para o body */
body {
  background: url("/img/eco.jpg") no-repeat center center fixed;
  background-size: cover;
  /* overflow: hidden;  Garante que o conteúdo não se estenda além da área visível */
  position: relative; /* Garante que o overlay e outros elementos sejam posicionados corretamente */
}

h2 {
  text-align: center;
}

/* Camada de overlay que cobre toda a área do body */
.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5); /* Efeito overlay com 50% de opacidade */
  z-index: 1; /* Fica acima da imagem de fundo e abaixo do conteúdo principal */
}

/* Estilos do cabeçalho */
header {
  background: rgba(0, 0, 0, 0.8);
  padding: 10px 0;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 3; /* Garante que o cabeçalho esteja acima do overlay e do conteúdo principal */
}

/* Estilos do rodapé */
footer {
  position: absolute;
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  text-align: center;
  padding: 1rem;
  bottom: 0;
  width: 100%;
  z-index: 2; /* Garante que o rodapé fique acima do overlay, mas abaixo do cabeçalho */
}

/* Estilos do menu de navegação */
nav {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* Estilos para o logo no cabeçalho */
nav .logo h1 {
  margin: 0;
  color: #fff;
  font-size: 1.5rem;
}

/* Estilos da lista de navegação */
nav ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
}

nav ul li {
  margin: 0 15px;
}

/* Estilos dos links do menu de navegação */
nav ul li a {
  color: #fff;
  text-decoration: none;
  font-size: 1.2rem;
  padding: 5px 10px;
  transition: background 0.3s, color 0.3s;
}

/* Estilos para o estado hover dos links do menu */
nav ul li a:hover {
  background: #fff;
  color: #000;
  border-radius: 5px;
}

/* Estilos do conteúdo principal */
main {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding-block: 10vh; /* Espaço para o rodapé fixo */
  position: relative; /* Garante que o conteúdo se posicione corretamente */
  z-index: 2; /* Garante que o conteúdo principal fique abaixo do cabeçalho */
}

/* Estilos para a área de pesquisa */
.search-container {
  background: rgba(
    0,
    0,
    0,
    0.7
  ); /* Fundo para o container do formulário com opacidade */
  border-radius: 8px; /* Bordas arredondadas */
  padding: 20px; /* Espaçamento interno */
  margin: 20px 0; /* Espaçamento acima e abaixo do formulário */
  max-width: 600px; /* Largura máxima do formulário */
  width: 100%; /* Largura total */
}

/* Estilos do título da pesquisa */
.search-container h2 {
  color: #fff; /* Cor do texto do título */
  margin-bottom: 1rem; /* Espaçamento abaixo do título */
}

/* Estilos do formulário de pesquisa */
.search-container form {
  display: flex;
  flex-direction: column; /* Alinha os itens verticalmente */
}

/* Estilos para o campo de texto de pesquisa */
.search-container input[type="text"] {
  padding: 0.75rem; /* Espaçamento interno */
  margin-bottom: 1rem; /* Espaçamento abaixo do campo de texto */
  border: 2px solid #a5e2a5bd; /* Borda cinza clara */
  border-radius: 4px; /* Bordas arredondadas */
  font-size: 1rem; /* Tamanho da fonte */
  outline: none; /* Remove o contorno padrão ao focar */
}

/* Estilos para o campo de texto ao focar */
.search-container input[type="text"]:focus {
  border-color: #4caf50; /* Cor da borda ao focar */
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2); /* Sombra ao focar */
}

/* Estilos para o botão de pesquisa */
.search-container button {
  align-items: center;
  background-image: linear-gradient(
    144deg,
    #0e813ead,
    #57c74da1 50%,
    #428f2e9f
  );
  border: 0;
  border-radius: 8px;
  box-shadow: rgba(25, 78, 32, 0.658) 0 15px 30px -5px;
  box-sizing: border-box;
  color: #fdfbfb;
  display: flex;
  font-family: Phantomsans, sans-serif;
  font-size: 18px;
  justify-content: center;
  line-height: 1em;
  max-width: 100%;
  min-width: 140px;
  padding: 3px;
  text-decoration: none;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  white-space: nowrap;
  cursor: pointer;
  transition: all 0.3s;
}

.search-container button:active,
.search-container button:hover {
  outline: 0;
}

.search-container button span {
  background-color: #0d5e38;
  padding: 16px 24px;
  border-radius: 6px;
  width: 100%;
  height: 100%;
  transition: 300ms;
}

.search-container button:hover span {
  background: none;
}

/* From Uiverse.io by danilppzz */
.search-container input {
  background-color: #ffffff;
  border: 2px solid #a5e2a5bd;
  border-radius: 8px;
  color: #4caf50;
  padding: 20px;
  text-decoration: none;
  font-size: 16px;
  /* margin: 12px 14px; */
  cursor: pointer;
}

.search-container input:hover {
  border: 2px solid #4caf50;
}

button:active {
  transform: scale(0.9);
}

/* Estilos para a área de resultados */
.results-container {
  background: rgba(
    0,
    0,
    0,
    0.7
  ); /* Fundo para a área de resultados com opacidade */
  border-radius: 8px; /* Bordas arredondadas */
  padding: 20px; /* Espaçamento interno */
  max-width: 800px; /* Largura máxima dos resultados */
  width: 100%; /* Largura total */
  color: #fff; /* Cor do texto */
  overflow-y: auto; /* Adiciona rolagem vertical se o conteúdo exceder a altura máxima */
  box-sizing: border-box; /* Inclui padding e border na largura e altura total */
}

/* Estilos para os itens de resultado */
.results-container .result-item {
  margin-bottom: 15px; /* Espaçamento entre os itens */
  padding: 10px;
  background: rgba(0, 0, 0, 0.5); /* Fundo dos itens com opacidade */
  border-radius: 4px; /* Bordas arredondadas */
}

/* Estilos para o título de cada item de resultado */
.results-container .result-item h3 {
  margin: 0;
  font-size: 1.2rem;
}

/* Estilos para o resumo de cada item de resultado */
.results-container .result-item p {
  margin: 5px 0;
}

/* Estilos para os links dentro dos itens de resultado */
.results-container .result-item a {
  color: #4caf50; /* Cor dos links */
  text-decoration: none; /* Remove o sublinhado */
}

/* Estilos para o link ao passar o mouse */
.results-container .result-item a:hover {
  text-decoration: underline; /* Adiciona sublinhado ao passar o mouse */
}

.logo {
  display: flex;
  /* align-items: center; */
}

/* Estilos do título do logo */
.logo h1 {
  margin: 0;
  color: #fff;
  font-size: 1.5rem;
  margin-right: 10px; /* Espaçamento entre o título e a imagem */
}

/* Estilos da imagem do logo */
.logo-img {
  width: 45px; /* Ajuste o tamanho conforme necessário */
  height: 45px; /* Ajuste o tamanho conforme necessário */
}

.hidden {
  display: none;
}
