/* ========== RESET & BASE ========== */
*, *::before, *::after { box-sizing: border-box; }

:root {
    --avas-vermelho: #d3050d;
    --avas-vermelho-escuro: #a50000;
    --texto: #2d3436;
    --texto-leve: #636e72;
    --fundo: #ffffff;
    --fundo-suave: #f8f9fa;
    --fundo-cinza: #f1f3f5;
    --borda: #e9ecef;
    --sombra: 0 4px 20px rgba(0,0,0,0.08);
    --sombra-hover: 0 8px 30px rgba(0,0,0,0.12);
    --raio: 16px;
    --raio-peq: 10px;
}

/* ========== HERO ========== */
.hero {
    position: relative;
    min-height: 500px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
    background: linear-gradient(135deg, #fff5f5 0%, #fff 50%, #f8f9fa 100%);
}
.hero::before {
    content: '';
    position: absolute;
    top: -50%; right: -20%;
    width: 600px; height: 600px;
    background: radial-gradient(circle, rgba(211,5,13,0.06) 0%, transparent 70%);
    border-radius: 50%;
}
.hero::after {
    content: '';
    position: absolute;
    bottom: -30%; left: -10%;
    width: 500px; height: 500px;
    background: radial-gradient(circle, rgba(211,5,13,0.04) 0%, transparent 70%);
    border-radius: 50%;
}
.hero-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    padding: 60px 20px;
}
.hero-pretitle {
    display: inline-block;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--avas-vermelho);
    background: rgba(211,5,13,0.08);
    padding: 8px 20px;
    border-radius: 50px;
    margin-bottom: 20px;
}
.hero h1 {
    font-family: 'Playfair Display', serif;
    font-size: clamp(2rem, 5vw, 3.2rem);
    font-weight: 700;
    color: var(--texto);
    margin-bottom: 16px;
    line-height: 1.2;
}
.hero h1 span { color: var(--avas-vermelho); }
.hero-subtitle {
    font-size: clamp(1rem, 2vw, 1.25rem);
    color: var(--texto-leve);
    max-width: 600px;
    margin: 0 auto 35px;
    font-weight: 300;
}
.hero-actions {
    display: flex;
    gap: 15px;
    justify-content: center;
    flex-wrap: wrap;
}
.btn-principal {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px;
    background: var(--avas-vermelho);
    color: #fff;
    font-weight: 600;
    font-size: 15px;
    text-decoration: none;
    border-radius: 50px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(211,5,13,0.3);
}
.btn-principal:hover {
    background: var(--avas-vermelho-escuro);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(211,5,13,0.4);
}
.btn-secundario {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px;
    background: transparent;
    color: var(--avas-vermelho);
    font-weight: 600;
    font-size: 15px;
    text-decoration: none;
    border-radius: 50px;
    border: 2px solid var(--avas-vermelho);
    transition: all 0.3s ease;
}
.btn-secundario:hover {
    background: var(--avas-vermelho);
    color: #fff;
}

/* ========== VALORES ========== */
.valores {
    background: var(--fundo-suave);
    padding: 60px 20px;
}
.valores-grid {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 30px;
}
.valor-card {
    background: #fff;
    padding: 35px 25px;
    border-radius: var(--raio);
    text-align: center;
    box-shadow: var(--sombra);
    transition: all 0.3s ease;
    border-bottom: 4px solid transparent;
}
.valor-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--sombra-hover);
    border-bottom-color: var(--avas-vermelho);
}
.valor-icon {
    width: 60px; height: 60px;
    background: linear-gradient(135deg, rgba(211,5,13,0.1) 0%, rgba(211,5,13,0.05) 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 18px;
    font-size: 24px;
    color: var(--avas-vermelho);
}
.valor-card h3 { font-size: 18px; font-weight: 600; margin-bottom: 8px; color: var(--texto); }
.valor-card p { font-size: 14px; color: var(--texto-leve); line-height: 1.5; margin: 0; }

/* ========== SEÇÃO HEADER ========== */
.secao-header { text-align: center; margin-bottom: 40px; }
.secao-tag {
    font-size: 12px; font-weight: 600; letter-spacing: 2px;
    text-transform: uppercase; color: var(--avas-vermelho);
    margin-bottom: 8px; display: block;
}
.secao-titulo {
    font-family: 'Playfair Display', serif;
    font-size: clamp(1.5rem, 3vw, 2.2rem);
    font-weight: 700; color: var(--texto); margin: 0 0 10px;
}
.secao-linha { width: 60px; height: 3px; background: var(--avas-vermelho); margin: 0 auto; border-radius: 3px; }

/* ========== NOTÍCIAS ========== */
.secao-noticias { padding: 60px 20px; max-width: 1200px; margin: 0 auto; }
.noticias-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 25px; }
.noticia-card {
    background: #fff; border-radius: var(--raio); overflow: hidden;
    box-shadow: var(--sombra); transition: all 0.3s ease;
    text-decoration: none !important; display: block;
}
.noticia-card:hover { transform: translateY(-6px); box-shadow: var(--sombra-hover); }
.noticia-img-wrap { position: relative; height: 200px; overflow: hidden; }
.noticia-img-wrap img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.noticia-card:hover .noticia-img-wrap img { transform: scale(1.08); }
.noticia-tag {
    position: absolute; top: 12px; left: 12px;
    background: var(--avas-vermelho); color: #fff;
    font-size: 10px; font-weight: 700; text-transform: uppercase;
    letter-spacing: 1px; padding: 5px 12px; border-radius: 20px;
}
.noticia-body { padding: 22px; }
.noticia-body h3 {
    font-size: 16px; font-weight: 600; color: var(--texto);
    line-height: 1.4; margin: 0 0 12px;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.noticia-meta { font-size: 12px; color: var(--texto-leve); display: flex; align-items: center; gap: 8px; }
.noticia-meta i { color: var(--avas-vermelho); font-size: 11px; }

/* ========== AGENDA ========== */
.secao-agenda {
    background: linear-gradient(180deg, #fff 0%, var(--fundo-suave) 100%);
    padding: 60px 20px;
}
.agenda-container { max-width: 1200px; margin: 0 auto; }
.agenda-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 25px; }
.agenda-card {
    background: #fff; border-radius: var(--raio); overflow: hidden;
    box-shadow: var(--sombra); transition: all 0.3s ease;
    text-decoration: none !important; display: flex; flex-direction: column;
}
.agenda-card:hover { transform: translateY(-5px); box-shadow: var(--sombra-hover); }
.agenda-img { height: 160px; position: relative; }
.agenda-img img { width: 100%; height: 100%; object-fit: cover; }
.agenda-img .sem-foto {
    width: 100%; height: 100%;
    background: linear-gradient(135deg, #f1f3f5 0%, #e9ecef 100%);
    display: flex; align-items: center; justify-content: center;
    color: #adb5bd; font-size: 14px;
}
.agenda-data-badge {
    position: absolute; top: 12px; left: 12px;
    background: #fff; border-radius: var(--raio-peq);
    padding: 8px 14px; text-align: center;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1); min-width: 55px;
}
.agenda-data-badge .dia { display: block; font-size: 22px; font-weight: 700; color: var(--avas-vermelho); line-height: 1; }
.agenda-data-badge .mes { display: block; font-size: 10px; font-weight: 600; text-transform: uppercase; color: var(--texto-leve); margin-top: 2px; }
.agenda-body { padding: 20px; flex: 1; display: flex; flex-direction: column; }
.agenda-body h3 { font-size: 16px; font-weight: 600; color: var(--texto); margin: 0 0 10px; line-height: 1.4; }
.agenda-info {
    font-size: 13px; color: var(--texto-leve);
    display: flex; align-items: center; gap: 15px;
    margin-top: auto; padding-top: 12px; border-top: 1px solid var(--borda);
}
.agenda-info i { color: var(--avas-vermelho); font-size: 12px; }

/* ========== GALERIA ========== */
.secao-galeria { padding: 60px 20px; max-width: 1200px; margin: 0 auto; }
.galeria-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; }
.galeria-card {
    position: relative; border-radius: var(--raio); overflow: hidden;
    box-shadow: var(--sombra); aspect-ratio: 4/3;
    text-decoration: none !important; display: block;
}
.galeria-card img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.galeria-card:hover img { transform: scale(1.1); }
.galeria-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, transparent 60%);
    display: flex; flex-direction: column; justify-content: flex-end;
    padding: 20px; transition: all 0.3s ease;
}
.galeria-card:hover .galeria-overlay {
    background: linear-gradient(to top, rgba(211,5,13,0.8) 0%, transparent 60%);
}
.galeria-overlay h3 { color: #fff; font-size: 16px; font-weight: 600; margin: 0; text-shadow: 0 1px 3px rgba(0,0,0,0.3); }
.galeria-overlay span { color: rgba(255,255,255,0.8); font-size: 12px; margin-top: 4px; }

/* ========== VÍDEOS ========== */
.secao-videos { background: var(--fundo-suave); padding: 60px 20px; }
.videos-container { max-width: 1200px; margin: 0 auto; }
.videos-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 25px; }
.video-card { background: #fff; border-radius: var(--raio); overflow: hidden; box-shadow: var(--sombra); transition: all 0.3s ease; }
.video-card:hover { transform: translateY(-5px); box-shadow: var(--sombra-hover); }
.video-wrap { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; background: #000; }
.video-wrap iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; }
.video-body { padding: 18px 22px; }
.video-body h3 { font-size: 15px; font-weight: 600; color: var(--texto); margin: 0; }

/* ========== BRECHÓ + MITOS ========== */
.secao-dupla { padding: 60px 20px; max-width: 1200px; margin: 0 auto; }
.dupla-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
.dupla-card {
    position: relative; border-radius: var(--raio); overflow: hidden;
    box-shadow: var(--sombra); min-height: 300px;
    text-decoration: none !important; display: block;
}
.dupla-card img { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; transition: transform 0.5s ease; }
.dupla-card:hover img { transform: scale(1.05); }
.dupla-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0.2) 50%, transparent 100%);
    display: flex; flex-direction: column; justify-content: flex-end;
    padding: 30px; transition: all 0.3s ease;
}
.dupla-card:hover .dupla-overlay {
    background: linear-gradient(to top, rgba(211,5,13,0.85) 0%, rgba(211,5,13,0.3) 60%, transparent 100%);
}
.dupla-overlay h3 { color: #fff; font-family: 'Playfair Display', serif; font-size: 24px; font-weight: 700; margin: 0 0 8px; }
.dupla-overlay p { color: rgba(255,255,255,0.9); font-size: 14px; margin: 0 0 18px; line-height: 1.5; }
.dupla-btn {
    display: inline-flex; align-items: center; gap: 8px;
    color: #fff; font-weight: 600; font-size: 13px;
    text-decoration: none; padding: 10px 22px;
    border: 2px solid rgba(255,255,255,0.5); border-radius: 50px;
    width: fit-content; transition: all 0.3s ease;
}
.dupla-btn:hover { background: #fff; color: var(--avas-vermelho); border-color: #fff; }

/* ========== PARCEIROS ========== */
.secao-parceiros { padding: 50px 20px; background: #fff; border-top: 1px solid var(--borda); }
.parceiros-container { max-width: 1200px; margin: 0 auto; text-align: center; }
.parceiros-grid { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 40px; margin-top: 30px; }
.parceiro-item { opacity: 0.7; transition: all 0.3s ease; filter: grayscale(30%); }
.parceiro-item:hover { opacity: 1; filter: grayscale(0%); transform: scale(1.05); }
.parceiro-item img { max-width: 150px; max-height: 60px; object-fit: contain; }

/* ========== CTA FINAL ========== */
.cta-final {
    background: linear-gradient(135deg, var(--avas-vermelho-escuro) 0%, var(--avas-vermelho) 100%);
    padding: 70px 20px; text-align: center; position: relative; overflow: hidden;
}
.cta-final::before {
    content: '';
    position: absolute; top: 0; left: 0; right: 0; bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="20" cy="20" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="80" cy="40" r="1.5" fill="rgba(255,255,255,0.08)"/><circle cx="40" cy="80" r="1" fill="rgba(255,255,255,0.1)"/></svg>');
    background-size: 100px 100px;
}
.cta-content { position: relative; z-index: 1; max-width: 700px; margin: 0 auto; }
.cta-final h2 { font-family: 'Playfair Display', serif; font-size: clamp(1.8rem, 4vw, 2.6rem); color: #fff; margin-bottom: 15px; }
.cta-final p { font-size: 1.1rem; color: rgba(255,255,255,0.9); margin-bottom: 30px; font-weight: 300; }
.btn-branco {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 14px 36px; background: #fff; color: var(--avas-vermelho);
    font-weight: 600; font-size: 15px; text-decoration: none;
    border-radius: 50px; transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0,0,0,0.2);
}
.btn-branco:hover { transform: translateY(-2px); box-shadow: 0 6px 25px rgba(0,0,0,0.3); }

/* ========== VER MAIS ========== */
.ver-mais-wrap { text-align: right; margin-top: 25px; }
.ver-mais-link {
    display: inline-flex; align-items: center; gap: 8px;
    color: var(--avas-vermelho); font-weight: 600; font-size: 14px;
    text-decoration: none; transition: all 0.3s ease;
}
.ver-mais-link:hover { gap: 12px; color: var(--avas-vermelho-escuro); }
.ver-mais-link i { font-size: 12px; }

/* ========== GLIGHTBOX FIX ========== */
.glightbox-container .gslide-image img { max-height: 85vh !important; width: auto !important; margin: 0 auto; }
@media (min-width: 992px) { .glightbox-container .ginner-container { width: auto !important; height: auto !important; } }

/* ========== RESPONSIVO ========== */
@media (max-width: 768px) {
    .hero { min-height: 400px; }
    .hero-content { padding: 40px 15px; }
    .valores-grid { grid-template-columns: 1fr; gap: 20px; }
    .noticias-grid, .agenda-grid, .galeria-grid, .videos-grid { grid-template-columns: 1fr; }
    .dupla-grid { grid-template-columns: 1fr; }
    .parceiros-grid { gap: 25px; }
    .btn-principal, .btn-secundario, .btn-branco { width: 100%; justify-content: center; }
    .hero-actions { flex-direction: column; }
}

/* ========== ANIMAÇÃO ENTRADA ========== */
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(30px); }
    to { opacity: 1; transform: translateY(0); }
}
.noticia-card, .agenda-card, .galeria-card, .valor-card, .video-card {
    animation: fadeInUp 0.6s ease forwards;
}
.noticia-card:nth-child(1) { animation-delay: 0.1s; }
.noticia-card:nth-child(2) { animation-delay: 0.2s; }
.noticia-card:nth-child(3) { animation-delay: 0.3s; }