body {
    background-color: #dbdbdb; /* Fundo cinza claro */
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
}

.main-content {
    max-width: 800px; /* Largura máxima para o texto */
    margin: 0 auto; /* Centraliza o contêiner */
    padding: 20px; /* Espaçamento interno */
    background-color: #ffffff; /* Cor de fundo branca para contraste */
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1); /* Sombra leve para destaque */
    border-radius: 8px; /* Bordas arredondadas */
}


p, h2 {
    text-align: justify; /* Justifica o texto */
    margin: 15px 0; /* Espaçamento entre parágrafos e títulos */
}


.logo {
    width: 75px; /* Adjust this value to change the logo size */
    height: auto; /* Keeps the aspect ratio */
}

.header-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 10px;
    background-color: #040C1B;
    color: #ffffff;
}

.header-container nav ul {
    list-style: none;
    display: flex;
    margin: 0;
    padding: 0;
}

.header-container nav ul li {
    margin-right: 20px;
}

.header-container nav ul li a {
    text-decoration: none;
    color: white;
}

.language a {
    color: white;
    text-decoration: none;
}

.hero {
    position: relative;
    text-align: center;
    color: white;
}

.hero img {
    width: 100%;
    max-height: 300px; /* Ajuste este valor conforme necessário */
    object-fit: cover; /* Esta propriedade assegura que a imagem seja cortada para se ajustar ao contêiner */
}


.hero h1 {
    position: absolute;
    top: 80%;
    left: 50%;
    transform: translate(-50%, -70%); /* Sobe o conteúdo para cima */
    font-size: 2.1em;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 20px;
}


main {
    padding: 20px;
}

section h2 {
    color: #102854;
}

.centralizado {
    text-align: center;
}

.imagine {
    text-align: center;
}

.service-cards {
    display: flex;
    justify-content: center; /* Centraliza os cards horizontalmente */
    gap: 20px; /* Espaçamento entre os cards */
}

.card {
    width: 250px; /* Largura fixa */
    height: 250px; /* Altura fixa */
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 16px;
    text-align: center;
    background-color: #d6d6d6;
    box-sizing: border-box; /* Garante que padding e border estejam incluídos nas dimensões */
    overflow: hidden; /* Esconde o conteúdo que ultrapassar o tamanho do card */
}


.card-image {
    width: 100px; /* Defina um tamanho fixo */
    height: 100px; /* Deve ser igual à largura para manter a forma circular */
    border-radius: 50%; /* Cria a forma circular */
    object-fit: cover; /* Faz com que a imagem se ajuste bem ao círculo */
    margin-bottom: 8px; /* Espaço entre a imagem e o texto */
}


.card-text {
    text-align: center;
    margin-top: 8px;
    font-size: 16px;
    color: #000000;
}

.card p {
    text-align: center;
    margin: 10px 0; /* Ajusta o espaçamento vertical entre os parágrafos */
}

.card h2 {
    text-align: center;
    margin: 10px 0; /* Ajusta o espaçamento vertical entre os títulos, se houver */
}

.service-icons {
    display: flex;
    justify-content: space-around;
}

.service-icons .icon {
    text-align: center;
}

.service-icons .icon img {
    width: 100px;
    height: auto;
}


.language {
    position: relative;
    display: inline-block;
}

.dropdown-toggle {
    text-decoration: none;
    color: #333;
    font-size: 16px;
    padding: 8px 16px;
    border: 1px solid #ddd;
    border-radius: 4px;
    background-color: #040C1B;
    display: flex;
    align-items: center;
}

.arrow-down {
    margin-left: 8px;
}

.dropdown-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: #040C1B;
    border: 1px solid #ddd;
    border-radius: 4px;
    box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.2);
    z-index: 1;
}

.dropdown-menu a {
    display: flex;
    align-items: center;
    padding: 8px 16px;
    text-decoration: none;
    color: #ffffff;
}

.dropdown-menu a:hover {
    background-color: #ddd;
}

.flag-icon {
    width: 20px; /* Ajuste o tamanho conforme necessário */
    height: auto; /* Mantém a proporção da bandeira */
    margin-right: 8px; /* Espaço entre a bandeira e o texto */
}


/* Exibir o menu suspenso ao passar o mouse sobre a div */
.language:hover .dropdown-menu {
    display: block;
}

footer {
    background-color: #040C1B;
    color: hsl(0, 0%, 100%);
    padding: 7px 0px; /* Reduz o padding interno */
    font-family: Arial, sans-serif;
    margin-top: 20px; /* Substitua 20px pelo valor necessário para cobrir a área em branco */
   
}

.footer-container {
    display: flex;
    justify-content: space-between; /* Logo e prédio à esquerda, contato à direita */
    align-items: center;
    max-width: 1000px;
    margin: 0 auto;
    position: relative; /* Adiciona contexto para o posicionamento da linha */
}

.footer-container::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 4%;
    bottom: 0;
    width: 2px;
    background-color: #ffffff; /* Cor da linha */
    transform: translateX(-50%);
}

.left-section {
    display: flex;
    align-items: center;
}

.logo-section img {
    max-width: 150px; /* Ajuste o tamanho do logotipo */
}

.address-section {
    display: flex;
    flex-direction: column; /* Coloca o prédio em cima do texto */
    align-items: flex-start; /* Alinha o conteúdo à esquerda */
}

.address-section p {
    display: inline-flex; /* Faz com que o ícone do mapa e o texto fiquem na mesma linha */
    align-items: center; /* Alinha verticalmente o ícone do mapa com o texto */
}

.building-img {
    width: 30%; /* Ajuste o tamanho do ícone do mapa */
    margin-bottom: 10px; /* Espaço abaixo da imagem do prédio */
    margin-left: 20%; /* Move a imagem para a esquerda */

}

.map-icon {
    width: 40px; /* Ajuste o tamanho do ícone do mapa */
    margin-right: 10px; /* Espaço entre o ícone do mapa e o texto */
    margin-left: 5%; /* Move a imagem para a esquerda */

}

.whatsapp-float {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 40px;
    right: 40px;
    background-color: #25d366;
    color: #FFF;
    border-radius: 50px;
    text-align: center;
    font-size: 30px;
    box-shadow: 2px 2px 3px #999;
    z-index: 100;
}

.whatsapp-icon {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
}


.contact-icon {
    width: 30px; /* Ajusta o tamanho dos ícones */
    vertical-align: middle;
}


.contact-section {
    display: flex;
    flex-direction: column; /* Alinha os ícones e os parágrafos em coluna */
}

.right-section {
    text-align: right;
}

.contact-section p {
    margin: 1;
    font-size: 13px;
    line-height: 1.0;
}

.contact-section a {
    color: #ffffff;
    text-decoration: none;
}


.footer-bottom {
    border-top: 1px solid #444;
    padding-top: 10px;
    margin-top: 20px;
    text-align: center;
    font-size: 12px;
}

.footer-bottom p {
    padding-left: 20px; /* Adiciona preenchimento à esquerda dentro do parágrafo */
    text-align: center; /* Alinha o texto à direita */
}
/* Consultas de Mídia */
@media (max-width: 768px) {
    .main-content {
        padding: 10px;
    }

    .hero h1 {
        font-size: 1.5em;
    }

    .card {
        width: calc(100% - 20px); /* Cards ocupam toda a largura */
    }

    .footer-container::before {
        display: none;
    }

    .contact-section p {
        font-size: 12px;
    }

    .header-container {
        flex-direction: column; /* Torna o cabeçalho uma coluna em telas pequenas */
        align-items: center; /* Centraliza os itens */
    }

    .header-container nav ul {
        justify-content: center; /* Centraliza o menu */
        margin-top: 10px;
    }

    .logo {
        width: 50px; /* Reduz o tamanho do logotipo */
        height: auto;
    }

    .service-cards {
        flex-direction: column; /* Empilha os cards verticalmente */
        align-items: center;
    }

    .card {
        width: 90%; /* Cards ocupam 90% da largura disponível */
        margin-bottom: 20px;
    }
}

@media (max-width: 480px) {
    .header-container nav ul li {
        margin-right: 5px;
    }

    .card-text {
        font-size: 14px;
    }

    .hero h1 {
        font-size: 1.2em;
    }
}
/* Ajustes Responsivos */
@media (max-width: 768px) {
    .footer-container {
        flex-direction: column; /* Organiza os elementos em coluna */
        align-items: center;
        text-align: center; /* Centraliza o texto */
    }

    .footer-container::before {
        display: none; /* Remove a linha vertical em telas pequenas */
    }

    .left-section, .right-section {
        width: 100%; /* Cada seção ocupa toda a largura */
        margin-bottom: 20px; /* Espaço entre as seções */
    }

    .building-img {
        width: 100px; /* Reduz o tamanho do ícone do prédio */
        margin: 10px auto; /* Centraliza a imagem */
    }

    .map-icon {
        width: 50px; /* Reduz o tamanho do ícone do mapa */
        margin: 10px auto; /* Centraliza a imagem */
    }

    .whatsapp-float {
        width: 50px; /* Reduz o botão para telas pequenas */
        height: 50px;
        bottom: 20px;
        right: 20px;
    }

    .whatsapp-icon {
        width: 100%;
        height: 100%;
        border-radius: 50%;
        box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    }

    .contact-icon {
        width: 50px; /* Reduz o tamanho dos ícones de contato */
        margin: 0 5px; /* Espaço entre os ícones */
    }

    .contact-section p, .contact-section a {
        font-size: 15px; /* Reduz o tamanho do texto */
        line-height: 1.5; /* Ajusta o espaçamento entre as linhas */
    }
}