/* Variáveis e Configurações Globais */
:root {
    --viva-verde: #152d06;
    --viva-verde-2: #198754;
    --viva-verde-escuro: #030602;
    --viva-dourado: #ecd065;
    --viva-cinza: #edeef0;
    --viva-vermelho: #8b191e;
}

body {
    font-family: 'Poppins', sans-serif;
    background-color: var(--viva-cinza);
    color: var(--viva-verde-escuro);
}

/* Classes utilitárias baseadas nas regras */
.section-verde {
    background-color: var(--viva-verde);
}

.navbar-verde-escuro {
    background-color: var(--viva-verde-escuro);
}

.text-dourado {
    color: var(--viva-dourado) !important;
}

/* Estilo para flocos de neve antes dos títulos (conforme regra) */
.section-title::before {
    content: "\f2dc"; /* Ícone de floco de neve do Font Awesome */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    color: var(--viva-dourado);
    margin-right: 10px;
}

/* Posicionamento do botão hambúrguer no topo direito */
.btn-menu-mobile {
    position: absolute;
    top: 15px;
    right: 15px;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 5px;
}

/* Removendo qualquer borda/contorno no hover, focus e active */
.btn-menu-mobile:hover,
.btn-menu-mobile:focus,
.btn-menu-mobile:active {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    color: var(--viva-dourado) !important; /* Destaque leve em dourado no hover */
}


/* Ajuste de imagens e proporção no telemóvel */
.slider-img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* Oculta as barrinhas inferiores */
.carousel-indicators {
    display: none !important;
}

/* Força a animação de deslize suave do Bootstrap */
.carousel .carousel-item {
    transition: transform 0.8s ease-in-out;
}



/* Utilitário de cor do texto */
.text-verde-escuro {
    color: var(--viva-verde-escuro) !important;
}

/* Caixa de citação à esquerda */
.quote-box {
    background-color: #f1f2f4;
    border-left: 6px solid var(--viva-dourado);
}

/* Card da Célula à direita */
.card-sua-celula {
    background-color: var(--viva-verde);
}




/* Utilitário para a cor vermelha das regras */
.text-vermelho {
    color: var(--viva-vermelho) !important;
}

/* Estilização dos Cards de Objetivos com transição suave na sombra */
.card-objetivo {
    background-color: #ffffff;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card-objetivo:hover {
    transform: translateY(-5px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1) !important;
}



/* Cor Verde 2 */
.text-verde-2 {
    color: var(--viva-verde-2) !important;
}

/* Card Inspire-se com Borda Lateral Verde */
.card-inspire {
    background-color: #ffffff;
    border-left: 5px solid var(--viva-verde) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card-inspire:hover {
    transform: translateY(-4px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.08) !important;
}



/* Card das Ações Gerais */
.card-acao-geral {
    background-color: #ffffff;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card-acao-geral:hover {
    transform: translateY(-5px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1) !important;
}



/* --- CRONOGRAMA / TIMELINE --- */
.viva-timeline {
    border-left: 3px solid var(--viva-verde-escuro);
}

.viva-timeline-item::before {
    content: '';
    position: absolute;
    left: -33px; /* Posiciona a bolinha exatamente sobre a linha */
    top: 8px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background-color: var(--viva-vermelho);
}

.badge-dourado {
    background-color: var(--viva-dourado);
}



/* --- FAQ ACCORDION --- */
.accordion-button:not(.collapsed) {
    color: var(--viva-verde-escuro) !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

.accordion-button:focus {
    box-shadow: none !important;
    border-color: transparent !important;
}




/* BOTÃO FLUTUANTE WHATSAPP */
.btn-whatsapp-float {
    position: fixed;
    bottom: 25px;
    right: 25px;
    width: 60px;
    height: 60px;
    background-color: #25d366;
    color: #ffffff !important;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
    z-index: 9999;
    text-decoration: none;
    transition: transform 0.3s ease, background-color 0.3s ease;
}

.btn-whatsapp-float:hover {
    background-color: #20ba5a;
    transform: scale(1.1);
    color: #ffffff !important;
}

/* Ajuste sutil para smartphones para não cobrir outros elementos */
@media (max-width: 576px) {
    .btn-whatsapp-float {
        bottom: 18px;
        right: 18px;
        width: 52px;
        height: 52px;
        font-size: 28px;
    }
}