/* Importa a fonte do Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Baskervville+SC&display=swap');
/* Estiliza o corpo da página */
body {
    font-family: "Baskervville SC", sans-serif; /* Define a fonte padrão */
    background-image: url(img/be42ef60-59f3-42a3-ad6f-14f1011910ec.jpg);
    display: flex; /* Usa Flexbox para layout */
    flex-direction: column; /* Alinha os itens na vertical */
    align-items: center; /* Centraliza os itens horizontalmente */
    justify-content: center; /* Centraliza os itens verticalmente */
    height: 100vh; /* Preenche a altura total da viewport */
    margin: 0; /* Remove a margem padrão */
    padding: 0; /* Remove o padding padrão */
}

/* Estiliza os títulos h1 */
h1 {
    font-size: 2.5rem; /* Tamanho da fonte */
    color: #ffffff; /* Cor do texto */
    text-align: center; /* Alinha o texto ao centro */
    letter-spacing: 0.4rem; /* Espaçamento entre letras */
}

/* Estiliza as seções da página */
section {
    display: flex; /* Usa Flexbox para layout */
    flex-direction: column; /* Alinha os itens na vertical */
    align-items: center; /* Centraliza os itens horizontalmente */
    margin-bottom: 3rem; /* Espaçamento abaixo de cada seção */
}

/* Estiliza os inputs dentro das seções */
section input {
    width: 30rem; /* Largura dos inputs */
    border: none; /* Remove a borda padrão */
    padding: 1rem; /* Espaçamento interno */
    border-radius: 1.5rem; /* Borda arredondada */
    margin-bottom: 1rem; /* Espaçamento abaixo dos inputs */
    color: #000000; /* Cor do texto */
    font-size: 1rem; /* Tamanho da fonte */
    box-sizing: border-box; /* Inclui padding e border na largura total */
}

/* Estiliza os botões dentro das seções */
section button {
    padding: 0.8rem 1.2rem; /* Espaçamento interno do botão */
    border: none; /* Remove a borda padrão */
    border-radius: 1.5rem; /* Borda arredondada */
    background-color: #002718; /* Cor de fundo do botão */
    color: #ffffff; /* Cor do texto do botão */
    font-size: 1rem; /* Tamanho da fonte */
    cursor: pointer; /* Muda o cursor para indicar que é clicável */
}

/* Adiciona efeito hover ao botão de pesquisa */
section button:hover {
    background-color: #006331; /* Muda a cor de fundo ao passar o mouse */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* Adiciona uma sombra mais intensa */
}

/* Estiliza a caixa de resultados da pesquisa */
.resultados-pesquisa {
    font-family: 'Sans-serif';
    width: 40rem; /* Largura máxima da caixa de resultados */
    height: 46vh; /* Altura máxima da caixa de resultados */
    overflow-y: auto; /* Adiciona rolagem vertical se necessário */
    margin-top: 1rem; /* Espaçamento acima da caixa de resultados */
    padding: 1rem; /* Espaçamento interno */
    border-radius: 0.6rem; /* Borda arredondada */
}

#mensagem-erro {
    color: white; /* Define a cor do texto como branco */
    font-size: 1.9rem; /* Ajusta o tamanho da fonte, se desejar */
    text-align: center; /* Centraliza o texto */
    margin-top: 1rem; /* Adiciona um espaçamento acima da mensagem */
}


/* Estiliza cada item de resultado */
.item-resultado {
    background: #ffffff; /* Cor de fundo dos itens */
    border-radius: 1rem; /* Borda arredondada */
    padding: 1rem; /* Espaçamento interno */
    margin-bottom: 1rem; /* Espaçamento abaixo dos itens */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Sombra leve */
}

/* Estiliza os títulos dentro dos itens de resultado */
.item-resultado h2 {
    font-size: 1.5rem; /* Tamanho da fonte */
    color: #002718; /* Cor do texto */
}

/* Estiliza os links dentro dos itens de resultado */
.item-resultado a {
    text-decoration: none; /* Remove o sublinhado padrão dos links */
    color: #002718; /* Cor do texto dos links */
}

/* Estiliza os links quando são passados o mouse sobre */
.item-resultado a:hover {
    text-decoration: underline; /* Adiciona sublinhado ao passar o mouse */
}

/* Estiliza a descrição meta dentro dos itens de resultado */
.descricao-meta {
    color: #000000; /* Cor do texto */
    margin: 0.5rem 0; /* Margem acima e abaixo */
}

.item-resultado img {
    width: 200px;
    height: 200px;
}

.imagem-e-link {
    display: flex;
    flex-direction: column; /* Organiza a imagem e o link verticalmente */
    align-items: center; /* Centraliza o conteúdo horizontalmente */
}

.imagem-e-link img {
    margin-bottom: 0.5rem; /* Espaçamento entre a imagem e o link */
}

.imagem-e-link a {
    text-align: center; /* Centraliza o texto do link */
    color: #002718; /* Cor do link */
    text-decoration: none; /* Remove sublinhado */
}

.imagem-e-link a:hover {
    text-decoration: underline; /* Adiciona sublinhado ao passar o mouse */
}


/* Estiliza o rodapé da página */
footer {
    background-color: #c8cbcc; /* Cor de fundo do rodapé */
    color:  #002718; /* Cor do texto */
    text-align: center; /* Alinha o texto ao centro */
    padding: 0; /* Espaçamento interno */
    width: 100%; /* Largura total da página */
    position: absolute; /* Posiciona o rodapé */
    bottom: 0; /* Alinha ao fundo da página */
    font-size: 1rem; /* Tamanho da fonte */
}

@media (max-width: 768px) {
    h1 {
        font-size: 2rem; /* Tamanho da fonte em telas menores */
        letter-spacing: 0.2rem; /* Espaçamento entre letras em telas menores */
    }

    section input {
        width: 25rem; /* Largura dos inputs em telas menores */
        padding: 0.8rem; /* Espaçamento interno em telas menores */
    }

    .resultados-pesquisa {
        width: 40rem; /* Largura da caixa de resultados em telas menores */
        height: 40vh; /* Altura da caixa de resultados em telas menores */
    }

    .item-resultado h2 {
        font-size: 1.3rem; /* Tamanho da fonte dos títulos em telas menores */
    }
}

/* Responsividade para celulares */
@media (max-width: 480px) {

    h1 {
        font-size: 2.7rem; /* Tamanho da fonte em telas pequenas */
        letter-spacing: 0.2rem; /* Espaçamento entre letras em telas pequenas */
    }

    section input {
        width: 19rem; /* Largura total dos inputs em telas pequenas */
        font-size: 1.3rem;
    }

    section button {
        padding: 0.6rem 1rem; /* Espaçamento interno do botão em telas pequenas */
        font-size: 1.3rem; /* Tamanho da fonte do botão em telas pequenas */
    }

    .resultados-pesquisa {
        width: 90%; /* Largura da caixa de resultados em telas pequenas */
        height: 50vh; /* Altura da caixa de resultados em telas pequenas */
    }

    .resultados-pesquisa p {
        font-size: 1.5rem;
    }
    .resultados-pesquisa a {
        font-size: 1.5rem;
    }

    .item-resultado h2 {
        font-size: 2rem; /* Tamanho da fonte dos títulos em telas pequenas */
    }

    footer {
        font-size: 1.3rem; /* Tamanho da fonte do rodapé em telas pequenas */
    }
}