/*
Theme Name: Blogs Child
Template: blogs
*/

/* ========================== VARIÁVEIS ========================== */
:root{
  --anuncio-h:120px;
  --brand-red:#b32626;
  --brand-red-dark:#971d1d;
  --gap-top-coluna:12px;
  --gap-rodape:32px;
  --gap-rodape-mobile:20px;
}

/* ========================== ANÚNCIOS (base) ========================== */
.anuncio{
  width:100%;
  max-width:100%;
  margin:0 auto 16px;
  overflow:hidden;
  position:relative;
  height:var(--anuncio-h);
  line-height:0;
  display:block;
}
.anuncio > a{
  position:absolute;
  inset:0;
  display:block;
  z-index:50;
  text-decoration:none;
  outline:0;
  pointer-events:auto;
}
.anuncio .anuncio-media,
.anuncio img:not(.anuncio-media){
  position:absolute;
  top:50%; left:50%;
  width:100%; height:100%;
  object-fit:cover; object-position:center;
  transform:translate(-50%,-50%);
  max-width:none; border:0; display:block;
  pointer-events:none;
}
.anuncio video.anuncio-media{
  transform:translate(-50%,-50%) translateZ(0);
  backface-visibility:hidden;
}

/* ENTRE */
.anuncio-entre{ margin:16px 0; position:relative; z-index:60; }
.anuncio-entre > a{ z-index:61; }

/* RODAPÉ */
.anuncio-rodape{ margin:24px 0 0; }

/* TOPO */
.anuncio-topo{ margin-top:8px; height:auto; }
.anuncio-topo img,
.anuncio-topo .anuncio-media{
  position:static; transform:none;
  width:100%; height:auto;
  object-fit:contain; object-position:center;
  pointer-events:auto;
}
.anuncio-topo > a{ position:static; display:block; z-index:auto; }

/* ========================== FLOATER (LATERAL) ========================== */
/* coluna lateral com referência de z-index e gutter */
.container .box_lateral{ --gutter:15px; position:relative; }

/* 1) o contêiner do floater expande pela altura da mídia (sem corte) */
body .container .box_lateral div.anuncio.anuncio-floater{
  position:relative !important;
  height:auto !important;
  overflow:visible !important;
  z-index:3 !important;
  /* sangra até as bordas da coluna */
  width:calc(100% + (var(--gutter) * 2)) !important;
  max-width:none !important;
  margin-left:calc(var(--gutter) * -1) !important;
  margin-right:calc(var(--gutter) * -1) !important;
  margin-top:6px !important;
  margin-bottom:6px !important;
}

/* 2) o LINK do floater NÃO é absoluto (para não “achatar” a altura) */
body .container .box_lateral div.anuncio.anuncio-floater > a.anuncio-link{
  position:static !important;        /* vence o inline que usa absolute */
  inset:auto !important;
  display:block !important;
  height:auto !important;
  width:auto !important;
  z-index:auto !important;
  pointer-events:auto !important;
}

/* 3) mídia do floater ocupa a largura e define a altura naturalmente */
body .container .box_lateral div.anuncio.anuncio-floater img.anuncio-media,
body .container .box_lateral div.anuncio.anuncio-floater .anuncio-media{
  position:static !important;
  inset:auto !important;
  transform:none !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  border:0 !important;
  pointer-events:none !important;
}

/* ícones de redes ficam abaixo do floater para não bloquear clique */
.container .box_lateral .redes_sociais_blog{ position:relative; z-index:1; }

@media (max-width:1200px){ :root{ --anuncio-h:110px; } }
@media (max-width: 992px){ :root{ --anuncio-h:100px; } }
@media (max-width: 768px){ :root{ --anuncio-h: 90px; } }
@media (max-width: 576px){ :root{ --anuncio-h: 80px; } }
@media print{ .anuncio{ display:none!important; } }

/* Mata banners antigos */
.box_posts .banner_topo, .box_posts .banner_topo_sub,
.box_posts .banner_entre, .box_posts .banner_entre_sub,
.box_posts .banner_rodape, .box_posts .banner_rodape_sub,
.box_lateral .banner_floater, .box_lateral .banner_floater_sub{
  display:none!important; visibility:hidden!important;
  max-height:0!important; height:0!important; width:0!important;
  padding:0!important; margin:0!important; overflow:hidden!important;
  background:none!important; border:0!important;
}

/* ========================== TOPO (layout/header) ========================== */
.faixa_titulo_blog{
  background:none !important;
  height:auto !important; padding-top:0 !important;
  margin:0 !important; border:0; display:block !important; position:relative; z-index:1;
}
.faixa_titulo_blog > .container{ height:auto !important; padding:0 !important; margin:0 !important; }
.topo_img{ display:block; width:100%; height:auto; }
@media (max-width: 991.98px){ .faixa_titulo_blog{ height:auto !important; } }
@media (max-width: 360px){ .faixa_titulo_blog{ height:auto !important; } }

.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}
.topo_search{
  position:absolute; right:clamp(12px,3vw,40px);
  top:50% !important; transform:translateY(-50%);
  display:flex; align-items:center; gap:8px;
  height:38px; background:#fff; border-radius:9999px;
  padding-left:14px; padding-right:8px;
  box-shadow:0 6px 12px rgba(0,0,0,.08);
  z-index:3; color:var(--brand-red);
  width:clamp(220px, 18vw, 240px); overflow:hidden;
}
.topo_search input{
  appearance:none; border:0; outline:0; background:transparent;
  height:100%; font:600 14px/1 'Open Sans', Arial, sans-serif; color:#111; flex:1 1 auto;
}
.topo_search input::placeholder{ color:#7a7a7a; opacity:1; }
.topo_search button{
  appearance:none !important;
  width:32px !important; height:32px !important;
  border:0 !important; border-radius:9999px !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  background:var(--brand-red) !important; color:#fff !important;
  cursor:pointer; padding:0 !important; margin:0 !important;
}
.topo_search button svg{ width:16px !important; height:16px !important; fill:#fff !important; display:block !important; }
.topo_search:focus-within{ box-shadow:0 0 0 3px rgba(179,38,38,.15), 0 6px 12px rgba(0,0,0,.08); }
@media (max-width: 860px){
  .topo_search{
    position:relative !important; left:auto !important; right:auto !important;
    top:auto !important; transform:none !important;
    margin:10px auto 0 !important; width:min(94vw, 420px) !important; height:36px; z-index:5; background:#fff !important;
  }
  .faixa_titulo_blog, .faixa_titulo_blog > .container, .faixa_titulo, .barra_titulo{
    background:transparent !important;
  }
  .topo_search::before{
    content:""; position:absolute; left:50%; transform:translateX(-50%);
    top:-10px; bottom:-10px; width:100vw; background:#fff; border-radius:32px; z-index:-1;
  }
}
@media (max-width: 520px){
  .topo_search{ margin:10px auto 0 !important; width:min(96vw,420px) !important; }
  .topo_search input{ width:100%; }
}

/* ========================== SIDEBAR / COLUNISTA ========================== */
.container .box_lateral > .logo_lateral_blog,
.container .box_lateral > a.removevah > .logo_lateral_blog,
.container .box_lateral > a.removeah > .logo_lateral_blog,
.box_lateral > .logo_lateral_blog,
.box_lateral > a.removevah > .logo_lateral_blog,
.box_lateral > a.removeah > .logo_lateral_blog{
  position:static !important; display:block !important; width:88% !important; max-width:360px !important;
  aspect-ratio:1/1 !important; height:auto !important;
  margin:4px auto 18px !important;
  background-position:center !important; background-size:cover !important;
  background-color:transparent !important; border:0 !important; box-shadow:none !important;
}
.box_lateral .autor_foto_top,
.box_lateral .autor_foto,
.box_lateral .foto_colunista{
  position:static !important; margin:0 auto 18px !important;
  padding:0 !important; border:0 !important; box-shadow:none !important;
  background:transparent !important; float:none !important; clear:both !important;
}

/* ========================== TARJAS/TÍTULOS ========================== */
.box_lateral .nome_autor,
.box_lateral .titulo_autor,
.box_lateral .nome_blog_lateral,
.box_lateral .widget-title,
.box_lateral .widgettitle,
.box_lateral .box_titulo,
.box_lateral .titulo_box,
.box_lateral .title,
.box_lateral .tags .title,
.box_lateral .tags .titulo,
.box_lateral .box_titulo *,
.box_lateral .title *{
  background:var(--brand-red) !important;
  color:#fff !important;
  border-color:var(--brand-red) !important;
}
.box_lateral .linha,
.box_lateral .hr,
.box_lateral .separador{
  background:var(--brand-red) !important;
  border-color:var(--brand-red) !important;
}

/* ========================== TAGS (chips) ========================== */
.box_lateral .tags a,
.box_lateral .tagcloud a,
.box_lateral .tags ul li a,
.widget_tag_cloud a,
.wp-block-tag-cloud a{
  background:var(--brand-red) !important;
  border:1px solid var(--brand-red) !important;
  color:#fff !important;
  text-decoration:none !important;
}
.box_lateral .tags a:hover,
.box_lateral .tagcloud a:hover,
.widget_tag_cloud a:hover,
.wp-block-tag-cloud a:hover{
  background:var(--brand-red-dark) !important;
  border-color:var(--brand-red-dark) !important;
}

/* ========================== REDES SOCIAIS ========================== */
.redes_sociais_blog{
  --rs-size:52px;
  display:flex; align-items:center; justify-content:center;
  gap:18px; margin:18px auto 10px; text-align:center;
}
.redes_sociais_blog a{
  width:var(--rs-size) !important; height:var(--rs-size) !important;
  border-radius:50% !important;
  background:var(--brand-red) !important;
  color:#fff !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  text-decoration:none !important;
  box-shadow:0 6px 12px rgba(0,0,0,.08);
  transition:transform .15s ease, background-color .2s ease;
  background-image:none !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
}
.redes_sociais_blog a:hover{ background:var(--brand-red-dark) !important; }
.redes_sociais_blog i.fa,
.redes_sociais_blog i.fab,
.redes_sociais_blog i.fas,
.box_lateral .redes_sociais_blog i.fa,
.box_lateral .redes_sociais_blog i.fab,
.box_lateral .redes_sociais_blog i.fas{
  background:transparent !important;
  border:0 !important;
  width:auto !important;
  height:auto !important;
  padding:0 !important; margin:0 !important;
  border-radius:0 !important; box-shadow:none !important;
  filter:none !important; mix-blend-mode:normal !important;
  color:#fff !important; line-height:1 !important;
  display:inline-block !important; font-size:20px !important;
}

/* ========================== Remover busca antiga da sidebar ========================== */
.box_lateral .search_blog, .box_lateral .searchform, .box_lateral form[role="search"], .box_lateral .widget_search,
.box_lateral .wp-block-search, .box_lateral .wp-block-search__inside-wrapper, .box_lateral #searchform,
.box_lateral input[type="search"], .box_lateral .search-field, .box_lateral .busca, .box_lateral .buscar, .box_lateral .pesquisa,
.box_lateral .pesquisa_blog, .box_lateral .box_busca, .box_lateral .busca_widget{
  display:none !important;
}

/* ========================== Rodapé ========================== */
.site-footer{ background-color:var(--brand-red); padding:15px 0; text-align:center; }
.site-footer p{ margin:0; color:#fff; font-size:14px; }
footer.site-footer, .site-footer{ margin-top: var(--gap-rodape) !important; clear: both; }
@media (max-width:600px){
  footer.site-footer, .site-footer{ margin-top: var(--gap-rodape-mobile) !important; }
}

/* ========================== Normaliza vermelhos escuros (bg/border) ========================== */
*[style*="background:#671018"],*[style*="background: #671018"],*[style*="background-color:#671018"],*[style*="background-color: #671018"],*[style*="border-color:#671018"],*[style*="border-color: #671018"],
*[style*="background:#67101A"],*[style*="background: #67101A"],*[style*="background-color:#67101A"],*[style*="background-color: #67101A"],*[style*="border-color:#67101A"],*[style*="border-color: #67101A"],
*[style*="background:#5E090C"],*[style*="background: #5E090C"],*[style*="background-color:#5E090C"],*[style*="background-color: #5E090C"],*[style*="border-color:#5E090C"],*[style*="border-color: #5E090C"],
*[style*="background:#7C0A0C"],*[style*="background: #7C0A0C"],*[style*="background-color:#7C0A0C"],*[style*="background-color: #7C0A0C"],*[style*="border-color:#7C0A0C"],*[style*="border-color: #7C0A0C"]{
  background-color:var(--brand-red) !important;
  border-color:var(--brand-red) !important;
}
.single .entry-content span,
.single .entry-content a{ background:transparent !important; }

/* ========================== Mobile single layout ========================== */
@media (max-width: 980px){
  .single .box_post_single{
    width:100% !important;
    float:none !important;
    margin:0 auto !important;
  }
  .single .box_lateral{
    width:100% !important;
    float:none !important;
    margin-top:18px !important;
  }
  .single .container{
    padding-left:10px !important;
    padding-right:16px !important;
  }
  .single .box_post_single img,
  .single .box_post_single iframe,
  .single .box_post_single video{
    max-width:100% !important;
    height:auto !important;
  }
}