/* Estilos globais básicos */
body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    background-color: #000000; /* Cor de fundo clara */
}

.container {
    max-width: 1200px; /* Largura máxima do conteúdo */
    margin: 0 auto; /* Centraliza o container */
    padding: 0 20px; /* Espaçamento interno nas laterais */
}

ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

a {
    text-decoration: none;
    color: inherit; /* Herda a cor do pai */
}

/* --- Cabeçalho Principal --- */
.main-header {
    background-color: #000000; /* Fundo branco para o cabeçalho */
    box-shadow: 0 2px 5px rgba(0,0,0,0.1); /* Sombra suave */
}

.header-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid #eee; /* Linha divisória suave */
}

.logo img {
    height: 200px; /* Ajuste a altura do logo conforme necessário */
    max-width: 100%;
}

.top-nav ul {
    display: flex;
    gap: 20px; /* Espaçamento entre os itens do menu superior */
}

.top-nav a {
    color: #666;
    font-size: 0.9em;
    text-transform: uppercase;
    font-weight: bold;
    transition: color 0.3s ease;
}

.top-nav a:hover {
    color: #5d35b1; /* Cor roxa ao passar o mouse */
}

.header-bottom {
    background-color: #5d35b1; /* Cor roxa para a barra inferior */
    padding: 15px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.header-bottom .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%; /* Garante que o container ocupe a largura total */
}

.main-nav ul {
    display: flex;
    gap: 30px; /* Espaçamento entre os itens do menu principal */
}

.main-nav a {
    color: #f8f8f8;
    font-size: 1.0em;
    text-transform: uppercase;
    font-weight: bold;
    transition: color 0.3s ease;
}

.main-nav a:hover {
    color: #ffcc00; /* Cor amarela ao passar o mouse */
}

.search-box {
    display: flex;
    align-items: center;
    background-color: #4a2d90; /* Um roxo mais escuro para a caixa de busca */
    border-radius: 5px;
    overflow: hidden; /* Garante que o conteúdo não vaze */
    flex-shrink: 0; /* Impede que a caixa encolha muito */
}

.search-box input {
    border: none;
    padding: 8px 12px;
    background: none;
    color: #ffffff;
    font-size: 0.9em;
    outline: none; /* Remove o contorno ao focar */
}

.search-box input::placeholder {
    color: #b09ee8; /* Cor do placeholder */
}

.search-box button {
    background-color: #4a2d90; /* Cor igual à caixa */
    border: none;
    padding: 8px 12px;
    cursor: pointer;
    color: #000000;
    font-size: 1.1em;
    transition: background-color 0.3s ease;
}

.search-box button:hover {
    background-color: #3d247a; /* Roxo ainda mais escuro ao passar o mouse */
}

/* --- Estilos para as Seções de Conteúdo (apenas para demonstração) --- */
.hero-section {
    padding: 50px 0;
    text-align: center;
    color: #5d35b1; /* Cor roxa para o texto principal */
}

.hero-section h1 {
    font-size: 3em;
    margin-bottom: 20px;
}

.featured-image {
    text-align: center;
    padding: 20px 0;
}

.featured-image img {
    max-width: 80%; /* Ajuste o tamanho da imagem da tela grande */
    height: auto;
    border-radius: 8px; /* Bordas arredondadas */
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

/* --- Responsividade Básica --- */
@media (max-width: 768px) {
    .header-top, .header-bottom .container {
        flex-direction: column;
        text-align: center;
    }

    .top-nav ul, .main-nav ul {
        flex-direction: column;
        gap: 10px;
        margin-top: 15px;
    }

    .search-box {
        margin-top: 15px;
        width: 80%; /* Ajusta a largura da barra de busca em telas menores */
    }
}