:root {
    --AstvColor: #146ff8; /* Azul Padrão */
    --AstvActiveColor: #8cb4ff; /* Azul Claro para links ativos */
    --wp--preset--color--white: #ffffff;
    --wp--style--global--wide-size: 1200px;
    --wp--preset--shadow--natural: 0 4px 15px rgba(0, 0, 0, 0.1);
}

* { 
    margin: 0; 
    padding: 0; 
    box-sizing: border-box; 
}

html, body {
    height: 100%;
}

main {
    flex: 1;
}


body {
    font-family: 'Segoe UI', Arial, sans-serif;
    color: #333;
    line-height: 1.6;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
}




.red    { color: red; }
.blue   { color: #4ac0fd }
.green  { color: green; }
.yellow { color: yellow; }
.orange { color: #E84919; }
.purple { color: purple; }
.pink   { color: pink; }
.black  { color: black; }
.white  { color: white; }
.gray   { color: gray; }
.brown  { color: brown; }



.bold       { font-weight: bold; }
.semi-bold  { font-weight: 600; }
.light      { font-weight: 300; }

.italic     { font-style: italic; }
.uppercase  { text-transform: uppercase; }
.lowercase  { text-transform: lowercase; }
.capitalize { text-transform: capitalize; }


.text-sm  { font-size: 12px; }
.text-md  { font-size: 16px; }
.text-lg  { font-size: 20px; }
.text-xl  { font-size: 26px; }


.underline { text-decoration: underline; }
.line-through { text-decoration: line-through; }
.no-decoration { text-decoration: none; }


/* -----------------------@-------------------- */




/* Container do Cabeçalho */
.header-container {
    width: 100%;
    background: #ffffff;
    padding: 15px 20px;
    box-sizing: border-box;
}

/* Wrapper para centralizar o conteúdo igual ao resto da página */
.header-wrapper {
    max-width: 1100px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
}

/* Lado Esquerdo (Logo e Link) */
.logo-box {
    display: flex;
    align-items: center;
    gap: 20px;
}

.site-logo {
    height: 90px; /* Ajuste conforme o tamanho real da sua imagem */
    width: auto;
}

.btn-voltar {
    text-decoration: none;
    color: #1e293b;
    font-weight: 500;
    font-size: 14px;
}

/* Lado Direito (Badge/Botão) */
.badge-pill {
    background-color: #e8f4ff; /* Cor azul claro da imagem */
    color: #002d62; /* Cor azul escuro do texto da imagem */
    padding: 12px 25px;
    border-radius: 10px; /* Formato de pílula */
    font-weight: bold;
    font-size: 19px;
    cursor: default;
}

/* Responsividade */
@media (max-width: 600px) {
    .header-wrapper {
        flex-direction: column;
        gap: 15px;
    }
    .badge-pill {
        font-size: 14px;
        padding: 8px 15px;
    }
}


/* Container Principal */
.main-content { max-width: 1100px;border-radius: 15px; margin: 10px auto; /* 🔥 centraliza */ padding: 20px; background-color: #f4f8fb; }
.section-title { font-size: 32px; font-weight: bold; margin-bottom: 25px; }
.icone-calendario {
    color: #36A0FC;
    font-size: 20px;
}

/* Card de Destaque */
.card-destaque {
    display: flex;
    background: #fff;
    padding: 20px;
    border-radius: 15px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    gap: 30px;
}

/* Imagens */
.card-media { display: flex; gap: 10px; flex-shrink: 0; }
.card-media img { 
    max-width: 500px; 
    height: auto; 
    object-fit: cover; 
    border-radius: 10px; 
}

/* Texto */
.card-text { display: flex; flex-direction: column; justify-content: center; gap: 10px; }
.card-date { color: #555; font-size: 19px; }
.card-text h3 { font-size: 24px; line-height: 1.3; color: #000; margin: 0; }
.card-link { color: #00b0ff;font-size: 24px; text-decoration: none; }

/* Responsividade (Igual à imagem) */
@media (max-width: 850px) {
    .card-destaque { flex-direction: column; }
    .card-media { justify-content: center; }
    .card-media img { width: 45%; height: auto; }
    .card-text { text-align: center; }
}



/* ---- */




.section-noticias {
    padding: 50px 20px;
    background-color: #fff;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
}

.section-noticias h2 {
    color: #002d62;
    margin-bottom: 30px;
}

/* Grid: 3 colunas por padrão */
.news-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

.card-noticia {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    overflow: hidden;
    transition: transform 0.3s ease;
}

.card-noticia:hover {
    transform: translateY(-5px);
}

.card-noticia img {
    width: 100%;
    height: 200px;
    object-fit: cover;
}

.card-body {
    background-color: #F4F8FB;
    padding: 20px;
}

.card-body .data {
    font-size: 19px;
    color: #666;
    display: block;
    margin-bottom: 8px;
}

.card-body h3 {
    font-size: 18px;
    line-height: 1.2;
    color: #1e293b;
    margin-bottom: 1px;
    height: 100px;
    overflow: hidden;
}

.link-saiba-mais {
    color: #36A0FC;
    font-weight: bold;
    text-decoration: none;
    font-size: 17px;
}

/* Responsividade */
@media (max-width: 1024px) {
    .news-grid { grid-template-columns: repeat(2, 1fr); } /* 2 colunas */
}

@media (max-width: 650px) {
    .news-grid { grid-template-columns: 1fr; } /* 1 coluna */
}





/* ------- */



/* Estilização da Seção Confessionário baseada na image_ee215c.jpg */
.news-card {
    background-color: #ffffff;
    max-width: 1000px;
    margin: 40px auto;
    border-radius: 0; /* Layout da imagem é reto nas bordas externas */
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    overflow: visible;
}

.news-header {
    background:url('../img/ferias-inclusivas-5-atividades-para-estimular-o-desenvolvimento-de-criancas-neurodivergentes-durante-as-ferias-confira/Frame-384-2.jpg');
    border-radius: 15px;
    background-size: cover;        /* faz a imagem preencher toda a área */
    background-position: center;   /* centraliza */
    background-repeat: no-repeat;  /* não repete */
    color: #ffffff;
    padding: 60px 20px 100px 20px; /* Espaço extra no fundo para as fotos subirem */
    text-align: center;
}

.news-header h1 {
    font-size: 2.2rem;
    font-weight: 700;
    max-width: 800px;
    margin: 0 auto 20px auto;
    line-height: 1.2;
}

.news-meta {
    font-size: 0.9rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.social-icons-header {
    display: flex;
    gap: 15px;
    font-size: 1.1rem;
    margin-top: 10px;
}

/* Galeria de Fotos Centralizada e Sobreposta */
.news-gallery {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: -80px; /* Sobe as imagens para cima do azul */
    padding: 0 20px;
}

.news-gallery img {
    width: 100%;          /* ocupa o container */
    max-width: 520px;     /* limite máximo */
    height: auto;         /* mantém proporção */
    aspect-ratio: 4 / 0;  /* mantém formato parecido com 320x400 */
    object-fit: cover;

    border-radius: 15px;
    border: 1px solid #ffffff;
    box-shadow: 0 10px 30px rgba(0,0,0,0.15);
}

/* Corpo do Texto */
.news-body {
    padding: 60px 10% 40px 10%;
    color: #444;
    line-height: 1.8;
}

.news-body p {
    margin-bottom: 20px;
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 1.3;
}

.read-more {
    color: #e63946; /* Vermelho destacado para o link */
    text-decoration: none;
    font-weight: bold;
    display: inline-block;
    margin-bottom: 25px;
}

.news-source {
    font-size: 0.95rem;
    color: #666;
    word-break: break-all;
}

.news-source a {
    color: #e63946;
    text-decoration: none;
}

/* Responsividade para Celulares */
@media (max-width: 768px) {
    .news-gallery {
        flex-direction: column;
        align-items: center;
        margin-top: -50px;
    }
    .news-gallery img {
        width: 90%;
        height: auto;
    }
    .news-header h1 {
        font-size: 1.6rem;
    }
}







/* ------- */

/* -----------------------------------------------------------------------------------------------------*/

.main-footer {
    background-color: #f8fbff; /* Fundo leve para contraste */
    padding: 80px 0 0 0;
    border-top: 1px solid #e1e8f0;
    color: #002d62;
}

.footer-grid {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 40px;
    padding-bottom: 60px;
    padding: 60px
}

/* Coluna da Logo */
.footer-brand {
    flex: 1 1 250px;
}

.footer-logo {
    max-width: 90px;
    margin-bottom: 30px;
}

.social-title {
    font-weight: 700;
    margin-bottom: 15px;
    font-size: 18px;
}

.social-icons {
    display: flex;
    gap: 15px;
}

.social-icons a {
    font-size: 22px;
    color: #002d62;
    transition: color 0.3s;
}

.social-icons a:hover {
    color: #146ff8; /* Azul destaque no hover */
}

/* Colunas de Links */
.footer-links {
    flex: 1 1 180px;
}

.footer-links h4 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #002d62;
}

.footer-links ul {
    list-style: none;
    padding: 0;
}

.footer-links ul li {
    margin-bottom: 5px;
    font-weight: 600;
}

.footer-links ul li a {
    text-decoration: none;
    color: #555;
    font-size: 15px;
    transition: 0.3s;
}

.footer-links ul li a:hover {
    color: #146ff8;
    padding-left: 5px; /* Efeito suave de deslocamento */
}

/* Utilitários */
.mt-20 { margin-top: 30px; }

/* Barra de Copyright */
.footer-bottom {
    background: linear-gradient(to bottom, #4ac0fd, #246c94, #12394e);
    padding: 20px 0;
    color: #fff;
    text-align: center;
    font-size: 14px;

    border-top: 1.5px solid #000000;
}

/* Responsividade */
@media (max-width: 768px) {
    .footer-grid {
        flex-direction: column;
        text-align: center;
    }
    
    .social-icons {
        justify-content: center;
    }
    
    .footer-links ul li a:hover {
        padding-left: 0;
    }
}
