/* --- HEADER E HERO --- */
.page-header {
    background: linear-gradient(rgba(6, 44, 37, 0.76), rgba(6, 44, 37, 0.74)), 
                url('../images/fotos/assembleia_coari.jpg') center/cover;
    padding: 160px 0 80px;
    text-align: center;
    color: var(--white);
}

.page-header h1 { font-family: 'Playfair Display', serif; font-size: 3rem; margin-top: 10px; }

/* --- CARD CONVOCAÇÃO (DESTAQUE CORRIGIDO) --- */
.convocacao-section { margin-top: -50px; margin-bottom: 80px; }
.convocacao-card {
    background: var(--white);
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    border-radius: 20px;
    box-shadow: 0 30px 60px rgba(0,0,0,0.1);
    overflow: hidden;
    min-height: 450px; /* Garante uma altura mínima elegante */
}

.convocacao-info { padding: 50px; display: flex; flex-direction: column; justify-content: center; }
.convocacao-info label { color: var(--accent-gold); font-weight: 800; letter-spacing: 2px; font-size: 0.75rem; }
.convocacao-info h2 { font-family: 'Playfair Display', serif; font-size: 2.5rem; color: var(--deep-green); margin: 15px 0; }
.detalhes-meta { margin-bottom: 20px; color: #666; display: flex; flex-direction: column; gap: 5px; }

.convocacao-btns { 
    display: flex; 
    gap: 15px; 
    margin-top: 25px; 
}

.btn-primary { 
    background: var(--deep-green); 
    color: white; 
    padding: 12px 25px; 
    border-radius: 8px; 
    text-decoration: none; 
    font-weight: bold; 
    transition: 0.3s; 
}

.btn-secondary { 
    border: 2px solid var(--deep-green); 
    color: var(--deep-green); 
    padding: 12px 25px; 
    border-radius: 8px; 
    text-decoration: none; 
    font-weight: bold; 
    transition: 0.3s; 
}

.btn-primary:hover { 
    background: var(--accent-gold); 
    color: var(--deep-green); 
}

.btn-secondary:hover { 
    background: var(--deep-green); 
    color: white; 
    border-color: var(--deep-green); 
}

/* CORREÇÃO DA IMAGEM ESTICADA */
.convocacao-banner { width: 100%; height: 100%; overflow: hidden; }
.convocacao-banner img { 
    width: 100%; 
    height: 100%; 
    object-fit: cover; /* A mágica para não esticar */
    object-position: center;
    display: block;
}

/* --- FILTROS E GRID --- */
.news-filters { display: flex; gap: 10px; justify-content: center; margin: 40px 0; flex-wrap: wrap; }
.filter-btn {
    padding: 10px 20px; border-radius: 30px; border: 1px solid #ddd;
    background: transparent; cursor: pointer; font-weight: 600; transition: 0.3s;
}
.filter-btn.active, .filter-btn:hover { background: var(--accent-gold); color: var(--deep-green); border-color: var(--accent-gold); }

.memorias-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 30px; }
.memoria-card { background: white; border-radius: 15px; overflow: hidden; border: 1px solid #eee; cursor: pointer; transition: 0.3s; }
.memoria-card:hover { transform: translateY(-10px); box-shadow: 0 15px 30px rgba(0,0,0,0.1); }
.memoria-thumb { height: 220px; position: relative; overflow: hidden; }
.memoria-thumb img { width: 100%; height: 100%; object-fit: cover; filter: sepia(30%); transition: 0.5s; }
.memoria-card:hover img { filter: sepia(0%); transform: scale(1.05); }
.memoria-ano { position: absolute; top: 15px; left: 15px; background: var(--accent-gold); color: var(--deep-green); padding: 5px 12px; border-radius: 5px; font-weight: bold; z-index: 2; }
.memoria-info { padding: 25px; }

/* --- PAGINAÇÃO (FIX) --- */
.pagination { margin: 60px 0; display: flex; justify-content: center; gap: 10px; }
.pagination a {
    min-width: 42px; height: 42px; padding: 0 15px;
    display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid #ddd; text-decoration: none; color: var(--deep-green);
    border-radius: 5px; font-weight: bold; white-space: nowrap;
}
.pagination a.active { background: var(--deep-green); color: white; border-color: var(--deep-green); }

/* 1. Removemos o CSS do Modal e focamos no Card */

.memoria-info {
    padding: 25px;
    display: flex;
    flex-direction: column;
}

/* O novo estilo do botão no card, agora como ação principal */
.btn-ata-direto {
    display: block;
    text-align: center;
    background: #f8fbf9; /* Um fundo sutil para não brigar com a foto */
    color: var(--deep-green);
    text-decoration: none;
    padding: 14px;
    border-radius: 12px;
    font-weight: 700;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    border: 1px solid #eee;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    margin-top: 10px;
}

/* Efeito de Hover: o botão ganha destaque em dourado */
.btn-ata-direto:hover {
    background: var(--accent-gold);
    color: var(--deep-green);
    border-color: var(--accent-gold);
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(184, 147, 74, 0.2); /* Sombra suave na cor ouro */
}

/* Ajuste fino nos textos do card para harmonia visual */
.memoria-info h3 {
    font-family: 'Playfair Display', serif;
    color: var(--deep-green);
    font-size: 1.4rem;
    margin-bottom: 8px;
}

.memoria-resumo {
    font-size: 0.95rem;
    color: #666;
    line-height: 1.6;
    margin-bottom: 20px;
    min-height: 60px; /* Mantém o alinhamento dos botões se os textos variarem */
}