﻿/*>>>>>>>>>> CARD de Notícias*/

/* CONTAINER DOS CARDS */
.news-cards {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    margin: 30px 0 !important;
}

/* CARD */
.news-card {
    display: flex !important;
    flex-direction: column !important;
    background: #ffffff !important;
    border: 1px solid #e6e6e6 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    transition: box-shadow 0.3s ease, transform 0.2s ease !important;
    height: 100% !important;
}

    .news-card:hover {
        box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12) !important;
        transform: translateY(-3px) !important;
    }

/* IMAGEM */
.news-image {
    width: 100% !important;
    height: 180px !important;
    object-fit: cover !important;
    display: block !important;
}

/* CONTEÚDO */
.news-content {
    display: flex !important;
    flex-direction: column !important;
    padding: 16px !important;
    flex: 1 !important;
}

/* TÍTULO */
.news-title {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #222 !important;
    margin: 0 0 10px !important;
    line-height: 1.4 !important;
}

/* RESUMO */
.news-excerpt {
    font-size: 14px !important;
    color: #555 !important;
    line-height: 1.6 !important;
    margin-bottom: 16px !important;
    flex-grow: 1 !important;
}

/* BOTÃO */
.news-link {
    margin-top: auto !important;
    align-self: flex-end !important;
    padding: 10px 18px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border-radius: 6px !important;
    background: linear-gradient(135deg, #2e7d32, #1b5e20) !important;
    color: #ffffff !important;
    transition: background 0.3s ease, transform 0.2s ease !important;
}

    .news-link:hover {
        background: linear-gradient(135deg, #1b5e20, #2e7d32) !important;
        color: #ffffff !important;
        transform: translateY(-1px) !important;
    }

/* BOTÃO LARANJA */
.news-link-laranja {
    margin-top: auto !important;
    align-self: flex-end !important;
    padding: 10px 18px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border-radius: 6px !important;
    background: linear-gradient(135deg, #ff7a00, #c66002) !important;
    color: #ffffff !important;
    transition: background 0.3s ease, transform 0.2s ease !important;
}

.news-link:hover {
    background: linear-gradient(135deg, #1b5e20, #2e7d32) !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
}


/* TABLET */
@media (max-width: 992px) {
    .news-cards {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* MOBILE */
@media (max-width: 576px) {
    .news-cards {
        grid-template-columns: 1fr !important;
    }

    .news-image {
        height: 160px !important;
    }

    .news-link {
        width: 100% !important;
        text-align: center !important;
        align-self: stretch !important;
    }
}

/*>>>>>>>>>> Fim CARD de Notícias*/

/* ====================>PAGINAÇÃO<============================ */
.pagination {
    display: flex !important;
    justify-content: center !important;
    gap: 8px !important;
    margin: 40px auto 10px !important;
}


.page-link {
    padding: 8px 14px !important;
    background: #e5e7eb !important;
    border-radius: 6px !important;
    color: #1f2937 !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}


    .page-link.active {
        background: #16a34a !important;
        color: #fff !important;
    }


    .page-link.disabled {
        opacity: .4 !important;
        pointer-events: none !important;
    }


/* PAGINAÇÃO */
.pagination {
    display: flex !important;
    justify-content: center !important;
    gap: 8px !important;
    margin: 40px auto 10px !important;
}


.page-link {
    padding: 8px 14px !important;
    background: #e5e7eb !important;
    border-radius: 6px !important;
    color: #1f2937 !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}


    .page-link.active {
        background: #16a34a !important;
        color: #fff !important;
    }


    .page-link.disabled {
        opacity: .4 !important;
        pointer-events: none !important;
    }
/* ══════════════════════════════════════════════════════════════════
   BOTÃO DETALHES BLINDADO COM ALTURA 100% FIXA EM 80PX
   ══════════════════════════════════════════════════════════════════ */

.news-link-detalhe {
    margin-top: auto !important;
    align-self: flex-end !important;
    padding: 10px 18px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border-radius: 6px !important;
    border: none !important;
    /* Cores */
    background: #0b3d91 !important;
    color: #ffffff !important;
    /* 🚨 TRAVA DE ALTURA FIXA INDEPENDENTE DO TEXTO 🚨 */
    display: flex !important; /* Transforma em bloco flexível para aceitar altura */
    height: 80px !important; /* Força a altura exata de 80px */
    min-height: 80px !important; /* Impede o Bootstrap de amassar o botão */
    max-height: 80px !important; /* Impede textos longos de esticarem o botão */
    /* Centralização Absoluta do Texto (Horizontal e Vertical) */
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    box-sizing: border-box !important; /* Inclui o padding no cálculo dos 80px */

    transition: background 0.3s ease, transform 0.2s ease !important;
}

    .news-link-detalhe:hover {
        background: #062a63 !important;
        color: #ffffff !important;
        transform: translateY(-1px) !important;
    }