/* ==========================================================
   COMPLEMENTOS E AJUSTES GERAIS (não incluídos nos fragmentos)
   ========================================================== */

body {font-family: "uni", sans-serif;}

.banner, .banner-right, .box-2, .cabecalho_grande, .carregar_mais,
.footer-social, .footer-txt, .header, .post-thumbs-title h2,
.tags-aside ul li a, .tags-aside ul li span {
    text-align: center;
}

.banner_home .quadro_fatura {
  min-height: 250px; /* ou altura exata do slot */
  display: block;
  position: relative;
}

.blur-up {
  filter: blur(20px);
  transition: filter 0.4s ease;
}
.blur-up.lazyloaded {
  filter: blur(0);
}

/* ==========================================================
   BOTÕES E ELEMENTOS GENÉRICOS
   ========================================================== */
.btn-close,
.close {
    box-sizing: content-box;
    width: 1em;
    height: 1em;
    padding: 0.25em;
    color: #000;
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
    border: 0;
    border-radius: 0.375rem;
    opacity: .5;
}

.btn-close {
    opacity: 1;
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFF'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
}

/* ==========================================================
   COMPATIBILIDADE / LEGADO
   ========================================================== */

/* Alias legado para "papular-post-aside" mantendo o visual esperado */
.papular-post-asid { padding: 10px 15px; }
.papular-post-asid ul { padding: 0; list-style: none; margin: 0; }
.papular-post-asid ul li {
    margin-bottom: 20px;
    overflow: hidden;
    display: flex;
    align-items: flex-start;
}
.papular-post-asid ul li .wrap_img { margin-right: 10px; flex: 0 0 80px; }
.papular-post-asid ul li .txt {
    color: #222;
    font-weight: 700;
    display: block;
    line-height: 1.3;
}
.papular-post-asid ul li time {
    color: #777;
    font-size: 12px;
    margin-bottom: 5px;
    display: block;
}

/* ==========================================================
   COMPLEMENTOS VISUAIS MENORES
   ========================================================== */
.category_highlight { margin-top: 32px; }
.banner_interna_right .ads { max-width: 300px; text-align: center; }
.veja_mais_center { text-align: center; }

/* ==========================================================
   MEDIA QUERIES EXCLUSIVOS (não replicados nos fragmentos)
   ========================================================== */
@media (max-width: 1388px) {
    .category-home a img {
        height: auto;
        min-height: auto !important;
    }
}


/* ==========================================================
   AJUSTES DE LAYOUT E ESTILO (restauração visual)
   ========================================================== */

/* Imagens arredondadas e responsivas */
.img-box img,
.papular-post-aside img,
.video-aside img,
.noticias-post img,
.postage-aside img,
.post-aside img {
    border-radius: 6px;
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* Padroniza margens e espaçamentos dos blocos laterais */
.widget ul li {
    margin-bottom: 18px;
}

/* Espaçamento interno consistente nas asides */
.papular-post-aside,
.video-aside,
.form-aside,
.sobre,
.tags-aside {
    padding: 10px 15px;
}

/* Corrige alinhamento de lista lateral e espaçamento */
.widget h2 {
    margin-bottom: 12px;
}

.sidebar-right .widget {
    margin-bottom: 30px;
}

/* Garante que o bloco de últimas notícias mantenha o alinhamento */
.papular-post-aside ul {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

/* Mantém o estilo arredondado em miniaturas do aside */
.papular-post-aside ul li .wrap_img img {
    border-radius: 4px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.08);
    object-fit: contain;       /* 🔹 CORREÇÃO: evita corte duplo */
    background: #f8f8f8;       /* 🔹 fundo neutro se sobrar espaço */
}

/* Corrige recuo visual e altura uniforme entre colunas */
.sidebar-right {
    padding-left: 10px;
}

.content-left {
    padding-right: 15px;
}

/* Ajuste de espaçamento geral */
.noticias-post ul li {
    margin-bottom: 30px;
}

/* ==========================================================
   ÚLTIMAS NOTÍCIAS – alinhamento imagem + data + título
   ========================================================== */

.papular-post-aside ul li {
  display: grid;
  grid-template-columns: 90px 1fr;
  grid-template-rows: auto auto;
  column-gap: 10px;
  align-items: start;
  border-bottom: 1px solid #eee;
  padding: 8px 0;
}

/* imagem fixa na primeira coluna ocupando duas linhas */
.papular-post-aside ul li .wrap_img {
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 90px;
}
.papular-post-aside ul li .wrap_img img {
  width: 100%;
  height: auto;
  border-radius: 6px;
  object-fit: contain;
  background: #f8f8f8;
}

/* data na linha 1, coluna 2 */
.papular-post-aside ul li time {
  grid-column: 2;
  grid-row: 1;
  display: block;
  font-size: 13px;
  color: #777;
  margin-bottom: 3px;
  line-height: 1.2;
}

/* título na linha 2, coluna 2 */
.papular-post-aside ul li .txt {
  grid-column: 2;
  grid-row: 2;
  display: block;
  font-size: 14px;
  line-height: 1.3;
  color: #111;
  font-weight: 600;
  text-decoration: none;
}
.papular-post-aside ul li .txt:hover {
  color: #540413;
  text-decoration: underline;
}

/* quando não houver imagem */
.papular-post-aside ul li:not(:has(.wrap_img)) {
  grid-template-columns: 1fr;
}
.papular-post-aside ul li:not(:has(.wrap_img)) time,
.papular-post-aside ul li:not(:has(.wrap_img)) .txt {
  grid-column: 1;
}

/* responsivo */
@media (max-width: 480px) {
  .papular-post-aside ul li {
    grid-template-columns: 70px 1fr;
    column-gap: 8px;
  }
  .papular-post-aside ul li .wrap_img { width: 70px; }
}

/* ==========================================================
   ÚLTIMAS NOTÍCIAS – alinhamento imagem + data + título (refinado)
   ========================================================== */

.papular-post-aside ul li {
  display: grid;
  grid-template-columns: 150px 1fr;   /* imagem fixa 150px */
  grid-template-rows: auto auto;
  column-gap: 12px;
  align-items: start;
  border-bottom: 1px solid #eee;
  padding: 12px 0;                    /* 🔹 equilíbrio top/bottom */
}

/* imagem ocupa duas linhas à esquerda */
.papular-post-aside ul li .wrap_img {
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 150px;
}
.papular-post-aside ul li .wrap_img img {
  width: 100%;
  height: auto;
  border-radius: 6px;
  object-fit: contain;
  background: #f8f8f8;
}

/* data na linha 1 */
.papular-post-aside ul li time {
  grid-column: 2;
  grid-row: 1;
  display: block;
  font-size: 13px;
  color: #777;
  margin: 0 0 2px;                    /* 🔹 menor espaçamento abaixo da data */
  line-height: 1.2;
}

/* título na linha 2 */
.papular-post-aside ul li .txt {
  grid-column: 2;
  grid-row: 2;
  display: block;
  font-size: 14px;
  line-height: 1.3;
  color: #111;
  font-weight: 600;
  text-decoration: none;
}
.papular-post-aside ul li .txt:hover {
  color: #540413;
  text-decoration: underline;
}

/* quando não houver imagem */
.papular-post-aside ul li:not(:has(.wrap_img)) {
  grid-template-columns: 1fr;
}
.papular-post-aside ul li:not(:has(.wrap_img)) time,
.papular-post-aside ul li:not(:has(.wrap_img)) .txt {
  grid-column: 1;
}

/* responsivo – miniatura menor no mobile */
@media (max-width: 480px) {
  .papular-post-aside ul li {
    grid-template-columns: 120px 1fr;
    column-gap: 10px;
    padding: 10px 0;                  /* 🔹 mantém equilíbrio no mobile */
  }
  .papular-post-aside ul li .wrap_img { width: 120px; }
}
