/* ======================================================= */
/* ESTILOS GERAIS E VARIÁVEIS                              */
/* ======================================================= */
:root {
    --cor-primaria: #0d6efd;
    --cor-primaria-dark: #0a4a8f;
    --cor-fundo-azul-claro: #f0f7ff;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

/* ======================================================= */
/* REFINAMENTO DE CORES - TEMA AZUL (VERSÃO MAIS FORTE)      */
/* ======================================================= */

section h2.fw-bold {
    color: var(--cor-primaria) !important;
}

a {
    color: var(--cor-primaria);
    text-decoration: none;
}
a:hover {
    color: var(--cor-primaria-dark);
}

section#solucoes,
section#contato {
    background-color: var(--cor-fundo-azul-claro) !important;
}

/* ======================================================= */
/* ESTILOS DO CABEÇALHO (NAVBAR)                           */
/* ======================================================= */
.navbar-brand {
    color: var(--cor-primaria) !important;
}
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active {
    color: var(--cor-primaria) !important;
}

/* ======================================================= */
/* ESTILOS DA SEÇÃO HOME (CARROSSEL)                       */
/* ======================================================= */
#heroCarousel .carousel-item {
    height: 85vh;
    min-height: 400px;
}
#heroCarousel .carousel-item img {
    height: 100%;
    object-fit: contain;
    object-position: center;
}
#heroCarousel .carousel-caption {
    background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%);
    bottom: 0;
    left: 0;
    right: 0;
    padding: 40px 20px 20px 20px;
}
@media (max-width: 768px) {
    #heroCarousel .carousel-caption h5 { font-size: 1.2rem; }
    #heroCarousel .carousel-caption p { font-size: 0.9rem; }
}

/* ======================================================= */
/* ESTILOS DA SEÇÃO SOLUÇÕES                               */
/* ======================================================= */
.card-solucao {
    border: none;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.card-solucao:hover {
    transform: translateY(-10px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
.card-solucao .card-icon {
    font-size: 5rem; /* ÍCONES GRANDES */
    color: var(--cor-primaria);
    margin-bottom: 1.5rem;
    display: block;
}

/* ======================================================= */
/* ESTILOS DA SEÇÃO SOBRE                                  */
/* ======================================================= */
@media (max-width: 991.98px) { 
    #sobre .col-lg-6 {
        margin-top: 30px;
    }
}

/* ======================================================= */
/* ESTILOS DA SEÇÃO CONTATO                                */
/* ======================================================= */
#contato .col-lg-7 {
    background-color: white;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 0.25rem 0.5rem rgba(0,0,0,0.05);
}
@media (max-width: 991.98px) { 
    #contato .col-lg-7 {
        margin-top: 40px;
    }
}

/* ======================================================= */
/* ESTILOS DO RODAPÉ (FOOTER)                              */
/* ======================================================= */
footer#rodape {
    background-color: var(--cor-primaria-dark) !important;
}
#rodape .footer-link, 
#rodape .btn-social i {
    color: rgba(255, 255, 255, 0.8);
}
#rodape .footer-link:hover,
#rodape .btn-social:hover i {
    color: #ffffff;
}
#rodape h5.text-primary {
    color: var(--cor-primaria) !important;
}
