* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
/* Estilo para a chamada para ação (CTA) */
.cta-button, form button {
    display: inline-block;
    background-color: #0077b6;
    color: white;
    padding: 12px 25px;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    font-size: 18px;
    transition: background-color 0.3s ease-in-out;
    margin-top: 15px;
}

.cta-button:hover, form button:hover {
    background-color: #005f8e;
}

/* Cabeçalho #001f3f */
/* Cabeçalho */
header {
    background-color: #003366; /* Cor de fundo do header */
    color: white;
    padding: 85px 20px 20px; /* Ajuste o padding conforme necessário */
    text-align: center;
}

/* Estilização da logo */
.logo-container {
    background-color: rgba(255, 255, 255, 0.88); /* Fundo branco com 12% de transparência */
    padding: 3px; /* Reduzimos ainda mais o espaçamento interno */
    border-radius: 10px; /* Bordas arredondadas */
    display: inline-block; /* Faz o container se ajustar ao tamanho da logo */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Sombra sutil para dar destaque */
    border: 2px solid #0077b6; /* Borda azul */
}

.logo {
    max-width: 250px; /* Garante que a logo tenha um tamanho adequado */
    height: auto;
    display: block;
    margin: 0 auto 15px; /* Centraliza e adiciona espaço abaixo */
}

/* Estilo para o slogan */
header p.slogan {
    color: white; /* Cor branca para o texto */
    font-size: 20px; /* Tamanho da fonte (opcional) */
    margin-top: 10px; /* Espaçamento acima (opcional) */
}
/* Estilo para os itens da seção Sobre */
.sobre-container {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 30px;
    width: 100%; /* Garante que o contêiner ocupe 100% da largura */
    padding: 0;
}

/* Estilo dos cards */
.card {
    background: white;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
    text-align: center;
    width: calc(33.33% - 20px); /* Ajuste para 33.33% com margem */ 
    transition: transform 0.3s ease-in-out;
}

/* Ícones grandes */
.card i {
    font-size: 40px;
    color: #0077b6;
    margin-bottom: 15px;
}

/* Títulos dentro dos cards */
.card h3 {
    font-size: 22px;
    margin-bottom: 10px;
    color: #003366;
}

/* Efeito hover nos cards */
.card:hover {
    transform: translateY(-5px);
}

/* Estilo para a lista de serviços */
#servicos ul {
    list-style: none;
    padding-left: 0;
}

#servicos ul li {
    background-color: #f9f9f9; /* Fundo claro para cada item */
    padding: 15px; /* Espaçamento interno */
    font-size: 20px; /* Aumenta o tamanho da fonte */
    line-height: 1.8; /* Aumenta o espaçamento entre as linhas */
    margin-bottom: 20px; /* Aumenta o espaçamento entre os itens */
    display: flex;
    align-items: center; /* Alinha ícone e texto verticalmente */
    border-radius: 8px; /* Bordas arredondadas */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Sombra sutil */
    transition: transform 0.3s ease, box-shadow 0.3s ease; /* Efeito de hover */
}

#servicos ul li strong {
    font-size: 24px; /* Aumenta o tamanho da fonte dos títulos */
}

#servicos ul li i {
    font-size: 28px; /* Aumenta o tamanho dos ícones */
    margin-right: 15px; /* Espaçamento entre o ícone e o texto */
    color: #0077b6; /* Cor dos ícones */
}
#servicos ul li:hover {
    transform: translateY(-5px); /* Efeito de levantar ao passar o mouse */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2); /* Sombra mais forte no hover */
}
/* Menu de navegação fixo no topo */
nav {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #002244;
    padding: 15px 0;
    text-align: center;
    z-index: 1000;
}

nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

nav ul li {
    display: inline-block;
    margin: 0 15px;
}

nav a {
    color: white;
    font-size: 18px;
    text-decoration: none;
    font-weight: bold;
    transition: color 0.3s ease-in-out;
}

nav a:hover {
    color: #ffd700;
}

/* Estilos para títulos */
h2 {
    font-size: 32px;
    font-weight: 700;
    color: white; /* Texto branco para contraste */
    padding: 15px;
    text-align: center;
    margin-top: 0;
    margin-bottom: 30px;
    border-radius: 8px; /* Bordas arredondadas */
    background: linear-gradient(90deg, #0077b6, #003366); /* Gradiente azul */
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); /* Sombra sutil */
}

/* Espaçamento para parágrafos */
p {
    font-size: 18px;
    line-height: 1.6;
    color: #333;
    margin-bottom: 20px;
}

/* Espaçamento para listas */
ul {
    list-style: none;
    padding-left: 0;
    margin-bottom: 20px;
}

ul li {
    margin-bottom: 15px;
}

/* Seção de Contato */
/* Estilo da seção de contato */
#contato {
    background-color: #002244; /* Fundo escuro */
    color: white; /* Texto branco para contraste */
    padding: 60px 20px; /* Aumenta o padding para mais destaque */
    text-align: center;
    border-radius: 10px; /* Bordas arredondadas */
    box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.2); /* Sombra mais forte */
}

/* Título impactante */
#contato h2 {
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #ffffff; /* Branco para o título */
}
/* Estilo para o telefone/WhatsApp */
.contato-rapido {
    margin-top: 20px;
    font-size: 20px;
    font-weight: bold;
}

.contato-rapido p {
    color: #ffffff; /* Texto branco para a frase acima do telefone */
}

.contato-rapido a {
    color: #00ff7f; /* Verde para o link do telefone */
    text-decoration: none;
    transition: color 0.3s ease-in-out;
}

.contato-rapido a:hover {
    color: #ffffff; /* Cor branca ao passar o mouse */
}
/* Estilo do formulário */
form {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 600px;
    margin: 0 auto;
}

form label {
    margin-bottom: 10px;
    font-weight: bold;
    color: white; /* Texto branco para os labels */
}

form input, form textarea {
    width: 100%;
    padding: 12px;
    margin-bottom: 20px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #f9f9f9; /* Fundo claro para os campos */
    transition: border-color 0.3s ease-in-out;
}

form input:focus, form textarea:focus {
    border-color: #0077b6;
    box-shadow: 0 0 5px rgba(0, 119, 182, 0.5);
}

form button {
    padding: 12px 25px;
    background-color: #0077b6;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 16px;
    font-weight: bold;
    transition: background-color 0.3s ease-in-out;
}

form button:hover {
    background-color: #005f8e;
}
/* Rodapé */
footer {
    background: #002244;
    padding: 40px 20px;
    text-align: center;
    margin-top: 60px;
}

/* Garante que TODO o texto do rodapé fique branco */
footer p, footer span, footer a {
    color: white !important; /* Força a cor branca */
    font-size: 16px;
}
/* Espaçamento geral para seções */
section {
    padding: 40px; /* Aumenta o padding interno */
    margin-bottom: 85px; /* Aumenta o espaçamento entre seções */
    background: white; /* Fundo branco para destacar as seções */
    border-radius: 8px; /* Bordas arredondadas */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* Sombra sutil */
}
/* Responsividade para telas menores que 768px */
@media (max-width: 768px) {
    .sobre-container {
        flex-direction: column;
        align-items: center;
        gap: 15px; /* Ajuste o gap para telas menores */
    }

    .card {
        width: 90%;
        padding: 15px; /* Reduz o padding para telas menores */
    }
    nav ul {
        padding: 0;
    }

    nav ul li {
        display: block;
        margin: 10px 0;
    }

    header h1 {
        font-size: 24px;
    }

    header img {
        width: 100px;
    }

    section {
        padding: 25px; /* Ajuste leve no padding */
        margin-bottom: 55px; /* Mantém um bom espaçamento entre seções */
    }

    h2 {
        font-size: 28px;
        margin-bottom: 20px;
    }

    p {
        font-size: 16px;
        margin-bottom: 15px;
    }

    ul li {
        margin-bottom: 15px;
    }

    .sobre-item {
        margin-bottom: 20px;
    }

    form input, form textarea {
        margin-bottom: 15px;
    }

}
h2 i {
    margin-right: 10px; /* Espaçamento entre o ícone e o texto */
    font-size: 1.2em; /* Tamanho do ícone */
    color: #0077b6; /* Cor do ícone */
}

