/*
Theme Name: GeneratePress Child - Rondoniagora
Theme URI: https://pontualrondonia.com.br
Description: Child theme of GeneratePress customized to match Rondoniagora.com
Author: Pontual Rondônia
Template: generatepress
Version: 1.0.0
*/

@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;700;900&display=swap");

:root {
  --primary-gold: #d4af37; /* Dourado Premium Metálico */
  --light-gold: #f9e2af; /* Dourado para Realce */
  --gold-dark: #b8860b; /* Dourado Escuro */
  --black-pure: #000000; /* Preto Puro */
  --black-soft: #121212; /* Cinza/Preto Suave */
}

/* ===== GLOBAL IMAGE RADIUS RESET ===== */
img, 
.hero-main, 
.hero-side, 
.news-thumbnail img,
.mais-lidas,
.header-currency-ticker,
.wp-block-image img,
.wp-block-cover,
.wp-block-cover__image-background {
  border-radius: 0 !important;
}

/* ===== GLOBAL WIDTH LIMIT ===== */
.grid-container {
  max-width: 1400px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ===== HEADER PRETO TOTAL (FORA A FORA) ===== */
.site-header {
  background-color: var(--black-pure) !important;
  width: 100% !important;
  position: relative;
  border-bottom: 1px solid #ffffff; /* Linha branca solicitada */
}

/* Layout do Header Normalizado (Correção de Grades/Flex) */
.site-header .inside-header {
  max-width: 1400px !important;
  margin: 0 auto;
  position: relative; /* Necessário para o banner absoluto */
  display: block; /* Garante comportamento padrão */
  min-height: 120px; /* Reserva altura para Logo e Banner (Aumentado para acomodar banner mais baixo) */
}

.site-logo {
  float: left; /* Logo à esquerda */
  margin-bottom: 20px; /* Empurra o menu para baixo, criando respiro */
  display: flex;
  align-items: center;
  height: 100px; /* Altura fixa para alinhamento vertical */
}

.header-banner-desktop {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 25px; /* Ajuste vertical fino (Descido de 10px para 25px) */
  height: 80px;
  display: flex; /* Garante que a imagem se comporte bem */
  align-items: center;
  z-index: 5;
}

/* Forçar o menu a quebrar linha e limpar flutuações */
.main-navigation {
  clear: both;
  width: 100%;
  position: relative;
  padding-top: 0; /* padding-top removido para eliminar espaço */
}

.header-banner-desktop img {
  max-height: 80px;
  width: auto;
  display: block;
}

@media (max-width: 1024px) {
  .header-banner-desktop {
    display: none;
  }
}

/* Currency Ticker */
.header-currency-ticker {
  position: absolute;
  right: 30px; /* Aumentado para 30px para alinhar visualmente com o conteúdo */
  top: 30%;
  transform: translateY(-50%);
  height: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  z-index: 5;
  background: rgba(0, 0, 0, 0.4);
  padding: 10px;
  border-radius: 0;
  min-width: 150px;
  border: 1px solid rgba(212, 175, 55, 0.3); /* Borda leve dourada */
}

.ticker-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.85rem;
  color: #ffffff;
  line-height: 1.2;
}

.currency-label {
  font-weight: 700;
  color: var(--primary-gold);
  margin-right: 10px;
}

.currency-value {
  margin-right: 10px;
}

.currency-var {
  font-size: 0.75rem;
}

@media (max-width: 1024px) {
  .header-currency-ticker {
    display: none;
  }
}

body {
  font-family: "Noto Serif SC", serif !important;
  font-size: 16px;
  line-height: 1.6;
  color: #000000;
  overflow-x: hidden !important; /* Impedir barra de rolagem horizontal */
}

html {
  overflow-x: hidden !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Noto Serif SC", serif !important;
  font-weight: 500;
}

.main-navigation {
  background-color: var(--black-pure) !important;
  border-bottom: 2px solid var(--primary-gold);
}

.main-navigation .main-nav ul li a {
  color: #ffffff !important;
  text-transform: none !important; /* Em vez de UPPERCASE */
  font-weight: 500 !important; /* Mais fino como na imagem */
  font-size: 1.1rem !important; /* Um pouco maior */
  letter-spacing: 0.2px;
  display: flex !important;
  align-items: center;
}

.main-navigation .main-nav ul li a i {
  margin-right: 12px; /* Aumentado o espaço das imagens/ícones no menu */
  font-size: 0.9em;
  opacity: 0.9;
}

.main-navigation .main-nav ul li a:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

.entry-title a,
.entry-title {
  color: #000000;
  font-size: 2.5rem;
  font-weight: 900;
}

.entry-title a:hover {
  color: var(--primary-gold) !important;
}

/* O estilo principal do rodapé foi movido para a seção unificada abaixo (linha ~1400) */

.site-footer a {
  color: #ffffff !important;
}

.site-footer a:hover {
  color: var(--primary-gold) !important;
  opacity: 1;
}

.footer-title {
  color: var(--primary-gold) !important;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 20px;
}

a {
  color: #1a1a1a; /* Cor padrão escura para links no corpo */
  text-decoration: none;
  transition: color 0.3s ease;
}

a:hover {
  color: var(--primary-gold) !important;
}

.widget-title {
  font-size: 2rem;
  font-weight: 500;
  text-transform: uppercase;
  border-bottom: 5px solid var(--primary-gold);
  padding-bottom: 5px;
  margin-bottom: 25px;
}

/* ===== RONDONIAGORA NEWS LAYOUT ===== */
/* Hero Section */
.hero-section {
  margin-top: 20px !important;
  margin-bottom: 30px !important;
  width: 100%;
}

/* Force Side-by-Side functionality for Old Hero */
@media (min-width: 769px) {
    .hero-section .grid-container {
        display: flex;
        gap: 20px;
    }
    .hero-section .first-grid {
        width: 50%;
    }
    .hero-section .second-grid {
        width: 50%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }
}

.hero-main {
  position: relative;
  min-height: 600px;
  background-size: cover;
  background-position: center;
  border-radius: 0;
  overflow: hidden;
}

.hero-side {
  position: relative;
  min-height: 290px;
  background-size: cover;
  background-position: center;
  border-radius: 0;
  overflow: hidden;
  margin-bottom: 20px;
}

.hero-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(
    to bottom,
    transparent 0%,
    rgba(0, 0, 0, 0.6) 30%,
    rgba(0, 0, 0, 1) 100%
  );
  padding: 3rem 2rem 2rem;
}

.hero-title {
  color: white !important;
  font-size: 3.125rem;
  font-weight: 500;
  line-height: 1.1;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
  margin: 0;
}

.hero-title a {
  color: white !important;
  text-decoration: none;
}

.hero-side .hero-title {
  font-size: 1.25rem;
  font-weight: 700;
}

/* News Grid - MASTER DEFINITION (350px Sidebar, 0 Gap) */
.news-grid {
  display: grid !important;
  grid-template-columns: 1fr 350px !important; 
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.news-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.news-item {
  display: flex;
  gap: 35px;
  padding: 1.25rem 0; /* Reduzido de 2.5rem */
  border-bottom: 1px solid #f2f2f2;
  align-items: center;
}

.news-item:last-child {
  border-bottom: none;
}

.news-thumbnail {
  flex: 0 0 220px; /* Largura reduzida conforme solicitado */
  margin-right: 20px;
}

.news-thumbnail img {
  width: 100%;
  height: auto;
  border-radius: 0;
}

.news-content {
  flex: 1;
}

.news-category {
  font-size: 0.75rem;
  font-weight: 900;
  color: var(--primary-gold);
  text-transform: uppercase;
  margin-bottom: 10px;
  display: block;
}

.news-title {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.15;
  margin: 0 0 10px 0;
}

.news-title a {
  color: #000;
  text-decoration: none;
}

.news-title a:hover {
  color: var(--primary-gold) !important;
}

.news-date {
  font-size: 0.85rem;
  color: #888;
}

/* Sidebar - Mais Lidas */
.mais-lidas {
  background: #ffffff;
  border: 1px solid #eeeeee;
  border-radius: 0;
  padding: 10px;
  width: 300px !important; /* Forçado 300px para igualar banner e resolver conflito */
  box-sizing: border-box !important;
  margin: 20px auto !important; /* Centralizado e com espaçamento vertical */
}

.mais-lidas-list {
  list-style: none;
  padding: 0;
  margin: 0;
  counter-reset: ranking;
}

.mais-lidas-item {
  counter-increment: ranking;
  position: relative;
  padding-left: 65px;
  padding-top: 15px;
  margin-bottom: 30px;
  min-height: 60px;
  border-bottom: 1px solid #f9f9f9;
  padding-bottom: 20px;
}

.mais-lidas-item::before {
  content: counter(ranking);
  position: absolute;
  left: 0;
  top: 5px;
  font-size: 3.5rem;
  font-weight: 900;
  color: var(--primary-gold); /* Cor sólida para maior destaque */
  opacity: 1; /* Opacidade total conforme instrução */
  line-height: 1;
}

.mais-lidas-item:last-child {
  border-bottom: none;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.mais-lidas-title {
  font-size: 1.15rem;
  font-weight: 400;
  line-height: 1.4;
  margin: 0;
}

.mais-lidas-title a {
  color: #333;
  text-decoration: none;
}

.mais-lidas-title a:hover {
  color: var(--primary-gold) !important;
}

/* Section Headers */
.section-header {
  font-size: 2rem;
  font-weight: 500;
  text-transform: uppercase;
  color: #000;
  border-bottom: 5px solid var(--primary-gold);
  display: inline-block;
  padding-bottom: 2px; /* Reduzido de 5px */
  margin-bottom: 5px; /* Reduzido de 10px */
  letter-spacing: 1px;
}

/* Responsive */
@media (max-width: 768px) {
  .news-grid {
    grid-template-columns: 1fr;
  }

  .hero-title {
    font-size: 2rem;
  }

  /* Redundant news-item block removed */
}

/* ===== RESPONSIVE MELHORADO ===== */

/* Tablet (768px - 1024px) */
@media (max-width: 1024px) {

  .news-item {
    gap: 25px;
    padding: 2rem 0;
  }

  .news-thumbnail {
    flex: 0 0 35%;
  }

  /* Remove radius on tablet/mobile */
  .news-thumbnail img,
  .hero-main,
  .hero-side {
    border-radius: 0 !important;
  }

  .news-title {
    font-size: 1.75rem;
  }

  .hero-title {
    font-size: 2.5rem;
  }
}

/* Tablet Portrait e Mobile Landscape (481px - 768px) */
@media (max-width: 768px) {
  /* Hero Section */
  .hero-section > .grid-container > div {
    grid-template-columns: 1fr !important;
    gap: 30px !important; /* Aumentado o espaço entre as imagens no mobile */
  }

  .hero-main {
    min-height: 400px;
  }

  .hero-side {
    min-height: 250px;
  }

  .hero-title {
    font-size: 2rem;
  }

  .hero-side .hero-title {
    font-size: 1.1rem;
  }

  /* News Grid */
  .news-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .news-item {
    flex-direction: column;
    gap: 20px; /* Standardized gap */
    padding: 1.25rem 0; /* Standardized padding */
  }

  .news-thumbnail {
    flex: 0 0 100%;
    margin-right: 0; /* Reset margin */
    margin-bottom: 0; /* Ensure gap handles spacing */
  }

  .news-title {
    font-size: 1.4rem; /* Slightly adjusted for mobile balance */
  }

  .section-header {
    font-size: 1.5rem;
  }

  /* Mais Lidas */
  .mais-lidas {
    padding: 20px;
  }

  .mais-lidas-item {
    padding-left: 50px;
    margin-bottom: 25px;
  }

  .mais-lidas-item::before {
    font-size: 2.5rem;
  }

  .mais-lidas-title {
    font-size: 1rem;
  }

  /* Navigation */
  .main-navigation .main-nav ul li a {
    font-size: 0.75rem;
    padding: 10px 12px !important;
  }
}

/* Mobile (até 480px) */
@media (max-width: 480px) {
  body {
    font-size: 14px;
  }

  /* Hero */
  .hero-main {
    min-height: 300px;
  }

  .hero-side {
    min-height: 200px;
  }

  .hero-title {
    font-size: 1.5rem;
    padding: 1.5rem 1rem;
  }

  .hero-side .hero-title {
    font-size: 1rem;
  }

  .hero-overlay {
    padding: 2rem 1rem 1rem;
  }

  /* News */
  .news-title {
    font-size: 1.25rem;
  }

  .news-category {
    font-size: 0.7rem;
  }

  .news-date {
    font-size: 0.8rem;
  }

  .section-header {
    font-size: 1.25rem;
    margin-bottom: 4px; /* Reduzido de 8px */
  }

  /* Mais Lidas */
  .mais-lidas {
    padding: 15px;
  }

  .mais-lidas-item {
    padding-left: 45px;
    margin-bottom: 20px;
    padding-bottom: 15px;
  }

  .mais-lidas-item::before {
    font-size: 2rem;
  }

  .mais-lidas-title {
    font-size: 0.95rem;
  }

  /* Widget Title */
  .widget-title {
    font-size: 1.5rem;
    border-bottom-width: 3px;
  }

  /* Navigation */
  .main-navigation .main-nav ul li a {
    font-size: 0.7rem;
    padding: 8px 10px !important;
  }

  /* Footer */
  /* Footer ajustado no bloco unificado */
}

/* Mobile Muito Pequeno (até 360px) */
@media (max-width: 360px) {
  .hero-title {
    font-size: 1.25rem;
  }

  .news-title {
    font-size: 1.1rem;
  }

  .mais-lidas-item {
    padding-left: 40px;
  }

  .mais-lidas-item::before {
    font-size: 1.75rem;
  }
}

/* Landscape Mobile */
@media (max-height: 500px) and (orientation: landscape) {
  .hero-main,
  .hero-side {
    min-height: 250px;
  }

  .hero-title {
    font-size: 1.5rem;
  }
}

/* Touch Devices - Aumentar área de toque */
@media (hover: none) and (pointer: coarse) {
  .main-navigation .main-nav ul li a {
    padding: 12px 15px !important;
  }

  .news-title a,
  .mais-lidas-title a {
    padding: 5px 0;
    display: inline-block;
  }
}

/* ===== MELHORIAS DE MARGENS E FUNDO ===== */

/* Fundo branco global */
body,
.site,
.site-content {
  background-color: #ffffff; /* Removido o !important para permitir que o footer prevaleça */
}

/* Container com margens e largura controlada */


/* Forçar Hero Section a respeitar container */
.hero-section {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

/* Remover definições antigas conflitantes */
/* Desktop - margens maiores */
@media (min-width: 1025px) {
  /* Regras absorvidas pelo bloco principal acima */
  .hero-section {
    margin-bottom: 30px;
  }

  .news-grid {
    margin-top: 30px;
  }
}

/* Tablet - margens médias */
@media (max-width: 1024px) and (min-width: 769px) {
  .hero-section {
    margin-bottom: 20px;
  }

  .news-grid {
    margin-top: 20px;
  }

  .news-item {
    padding: 1.5rem 0;
  }
}

/* Mobile - margens otimizadas */
@media (max-width: 768px) {
  .hero-section {
    margin-bottom: 5px !important;
  }

  .news-grid {
    margin-top: 5px !important;
  }

  .news-item {
    padding: 0.7rem 0; /* Reduzido de 1.25rem */
  }

  .mais-lidas {
    margin-top: 50px !important; /* Increased spacing */
    width: 100% !important; /* Full width */
    max-width: 100% !important;
  }

  /* Espaçamento entre elementos */
  .section-header {
    margin-bottom: 20px;
  }
}

/* Mobile pequeno - margens mínimas */
@media (max-width: 480px) {
  .hero-overlay {
    padding: 1.5rem 1rem 1rem;
  }

  .news-item {
    padding: 0.6rem 0; /* Reduzido de 1rem */
  }

  .mais-lidas {
    padding: 15px 10px;
  }
}

/* Garantir fundo transparente onde necessário, exceto no footer */
.site-header,
.main-navigation,
.hero-section,
.news-grid,
.news-list,
.mais-lidas {
  background-color: transparent;
}

.mais-lidas {
  background-color: #fafafa;
}

/* Espaçamento entre Widgets no Frontpage e Sidebar */
.sidebar .widget {
  margin-bottom: 40px !important;
}

/* ===== IMAGENS FULL WIDTH NO MOBILE ===== */

/* Mobile - imagens ocupam todo container */
@media (max-width: 768px) {
  /* News Grid Responsivo - Simplificado */
  .news-grid {
    display: block !important;
  }

  .hero-main,
  .hero-side {
    margin-left: -15px;
    margin-right: -15px;
    width: calc(100% + 30px);
    border-radius: 0 !important;
    margin-bottom: 20px; /* Separar imagens coladas */
  }

  /* Remover margem do último elemento para não afastar do próximo bloco */
  .hero-side:last-child {
      margin-bottom: 0;
  }

  /* News thumbnails full width */
  .news-thumbnail {
    margin-left: -15px;
    margin-right: -15px;
    width: calc(100% + 30px);
  }

  .news-thumbnail img {
    border-radius: 0 !important;
    width: 100%;
  }

  /* News item sem padding lateral para imagem */
  .news-item {
    padding-left: 0;
    padding-right: 0;
  }

  /* Conteúdo da notícia com padding */
  .news-content {
    padding-left: 15px;
    padding-right: 15px;
  }

  /* Remove radius from single post featured image in mobile */
  .single .featured-image,
  .single .featured-image img,
  .single .wp-post-image {
      border-radius: 0 !important;
  }
}

/* Mobile pequeno */
@media (max-width: 480px) {
  .hero-main,
  .hero-side {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
  }

  .news-thumbnail {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
  }

  .news-content {
    padding-left: 10px;
    padding-right: 10px;
  }
}

/* ===== PADRONIZAÇÃO DE ALTURAS ===== */

/* Hero - alturas fixas */
.hero-main {
  min-height: 600px;
  max-height: 600px;
}

.hero-side {
  min-height: 290px;
  max-height: 290px;
}

/* News thumbnails - altura fixa quadrada */
.news-thumbnail img {
  width: 100%;
  height: 280px;
  object-fit: cover;
}

/* Tablet */
@media (max-width: 1024px) and (min-width: 769px) {
  .hero-main {
    min-height: 400px;
    max-height: 400px;
  }

  .hero-side {
    min-height: 190px;
    max-height: 190px;
  }

  .news-thumbnail img {
    height: 240px;
  }
}

/* Mobile */
@media (max-width: 768px) {
  .hero-main {
    min-height: 350px;
    max-height: 350px;
  }

  .hero-side {
    min-height: 200px;
    max-height: 200px;
  }

  .news-thumbnail img {
    height: 220px;
  }
}

/* Mobile pequeno */
@media (max-width: 480px) {
  .hero-main {
    min-height: 280px;
    max-height: 280px;
  }

  .hero-side {
    min-height: 180px;
    max-height: 180px;
  }

  .news-thumbnail img {
    height: 200px;
  }
}

/* ===== MENU HAMBURGER MODERNO ===== */

/* Botão hamburger customizado */
.menu-toggle {
  background-color: var(--primary-gold) !important;
  border: none !important;
  padding: 12px 15px !important;
  border-radius: 4px;
  transition: all 0.3s ease;
}

.menu-toggle:hover,
.menu-toggle:focus {
  background-color: var(--light-gold) !important;
  transform: scale(1.05);
}

/* Ícone hamburger moderno */
.menu-toggle .mobile-menu {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.menu-toggle .mobile-menu span {
  display: block;
  width: 24px;
  height: 3px;
  background-color: #f7f7f7;
  border-radius: 0 !important;
  margin: 15px 0;
  transition: all 0.3s ease;
}

/* Animação quando menu está aberto */
.menu-toggle.toggled .mobile-menu span:nth-child(1) {
  transform: rotate(45deg) translate(6px, 6px);
}

.menu-toggle.toggled .mobile-menu span:nth-child(2) {
  opacity: 0;
}

.menu-toggle.toggled .mobile-menu span:nth-child(3) {
  transform: rotate(-45deg) translate(6px, -6px);
}

/* Menu mobile dropdown */
@media (max-width: 768px) {
  /* Header mobile */
  .site-header {
    padding: 8px 0; /* Reduzido de 15px */
  }

  .inside-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 15px;
  }

  /* Logo mobile */
  .site-logo,
  .site-branding {
    max-width: 150px;
  }

  /* Navigation mobile */
  .main-navigation {
    background-color: var(--primary-gold) !important;
  }

  .main-navigation .header-info-bar {
    background-color: var(--black-pure) !important;
    color: #ffffff;
    border-bottom: 1px solid #333;
    padding: 10px 0;
  }

  .search-submit {
    background-color: var(--primary-gold) !important;
    color: #000 !important;
    border: none;
    padding: 8px 15px;
    border-radius: 0;
    cursor: pointer;
  }

  .main-navigation .main-nav {
    background-color: var(--primary-gold) !important;
  }

  .main-navigation .main-nav ul {
    background-color: var(--primary-gold) !important;
  }

  .main-navigation .main-nav ul li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }

  .main-navigation .main-nav ul li:last-child {
    border-bottom: none;
  }

  .main-navigation .main-nav ul li a {
    padding: 15px 20px !important;
    font-size: 0.9rem !important;
    display: block;
    color: #ffffff !important;
  }

  .main-navigation .main-nav ul li a:hover {
    background-color: rgba(255, 255, 255, 0.1);
    padding-left: 25px !important;
  }

  /* Submenu mobile */
  .main-navigation .main-nav ul ul {
    background-color: rgba(0, 0, 0, 0.2) !important;
  }

  .main-navigation .main-nav ul ul li a {
    padding-left: 30px !important;
    font-size: 0.85rem !important;
  }

  /* Animação de slide */
  .main-navigation .main-nav {
    transition: all 0.3s ease;
  }

  /* Menu fechado */
  .main-navigation:not(.toggled) .main-nav {
    max-height: 0;
    overflow: hidden;
  }

  /* Menu aberto */
  .main-navigation.toggled .main-nav {
    max-height: 100vh;
    overflow-y: auto;
  }
}

/* Mobile pequeno */
@media (max-width: 480px) {
  .site-logo,
  .site-branding {
    max-width: 120px;
  }

  .menu-toggle {
    padding: 10px 12px !important;
  }

  .menu-toggle .mobile-menu span {
    width: 20px;
    height: 2.5px;
  }
}

/* Overlay escuro quando menu aberto */
.main-navigation.toggled::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: -1;
  animation: fadeIn 0.3s ease;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* ===== CORREÇÃO DO MENU HAMBURGER ===== */

/* Sobrescrever estilos anteriores que causam conflito */
.main-navigation:not(.toggled) .main-nav {
  max-height: none !important;
  overflow: visible !important;
}

.main-navigation.toggled .main-nav {
  max-height: none !important;
  overflow-y: visible !important;
}

/* Botão hamburger - pausinhos BRANCOS */
.menu-toggle {
  background-color: transparent !important;
  border: none !important;
  padding: 8px !important;
}

.menu-toggle .gp-icon {
  color: #ffffff !important;
  fill: #ffffff !important;
}

.menu-toggle svg {
  fill: #ffffff !important;
  stroke: #ffffff !important;
}

/* Diminuir espaçamento entre linhas do menu */
@media (max-width: 768px) {
  .main-navigation .main-nav ul li a {
    padding: 10px 20px !important;
    line-height: 1.2 !important;
  }

  .main-navigation .main-nav ul li {
    margin: 0 !important;
  }

  /* Remover overlay que causa problemas */
  .main-navigation.toggled::before {
    display: none !important;
  }
}

/* ===== REVERTER MENU DESKTOP - MANTER APENAS MOBILE ===== */

/* Desktop - voltar ao normal */
@media (min-width: 769px) {
  .main-navigation .main-nav {
    max-height: none !important;
    overflow: visible !important;
  }

  .main-navigation .main-nav ul {
    display: flex !important;
  }

  .main-navigation .main-nav ul li {
    border-bottom: none !important;
  }

  .main-navigation .main-nav ul li a {
    padding: 8px 18px !important; /* Ajustado para 8px (Equilíbrio) */
    line-height: normal !important;
  }
}

/* Mobile - apenas ajustes necessários */
@media (max-width: 768px) {
  /* Ícone hamburger branco */
  .menu-toggle,
  .menu-toggle .gp-icon,
  .menu-toggle svg {
    color: #ffffff !important;
    fill: #ffffff !important;
  }

  /* Espaçamento reduzido */
  .main-navigation .main-nav ul li a {
    padding: 10px 20px !important;
  }
}

/* ===== REDUÇÃO PROPORCIONAL DE FONTES ===== */

/* Body - de 16px para 15px */
body {
  font-size: 15px !important;
}

/* Hero titles */
.hero-title {
  font-size: 2.8rem !important; /* era 3.5rem */
}

.hero-side .hero-title {
  font-size: 1rem !important; /* era 1.1rem */
}

/* News titles */
.news-title {
  font-size: 1.5rem !important; /* Reduzido de 1.8rem */
  font-weight: 900 !important; /* Adicionado 900 */
}

.news-category {
  font-size: 0.7rem !important; /* era 0.75rem */
}

.news-date {
  font-size: 0.8rem !important; /* era 0.85rem */
}

/* Section headers */
.section-header {
  font-size: 1.2rem !important; /* era 1.4rem */
}

/* Mais Lidas */
.mais-lidas-title {
  font-size: 1.05rem !important; /* era 1.15rem */
}

.mais-lidas-item::before {
  font-size: 3.25rem !important; /* era 3.5rem */
}

/* Widget title */
.widget-title {
  font-size: 1.2rem !important; /* era 1.4rem */
}

/* Navigation */
.main-navigation .main-nav ul li a {
  font-size: 0.8rem !important; /* era 0.85rem */
}

/* Mobile adjustments */
@media (max-width: 768px) {
  body {
    font-size: 14px !important;
  }

  .hero-title {
    font-size: 1.5rem !important; /* era 1.75rem */
  }

  .news-title {
    font-size: 1.1rem !important; /* Reduzido de 1.2rem */
    font-weight: 900 !important;
  }

  .section-header {
    font-size: 1rem !important; /* era 1.1rem */
  }
}

@media (max-width: 480px) {
  body {
    font-size: 13px !important;
  }

  .hero-title {
    font-size: 1.35rem !important; /* mantido mas para consistência visual */
  }

  .news-title {
    font-size: 1.1rem !important; /* era 1.15rem */
  }
}



/* Reduzir espaçamento abaixo das notícias (Consolidado no Master Grid) */

/* Diminuir imagens das Últimas Notícias */
.news-thumbnail {
  flex: 0 0 30% !important; /* Reduzido de 42% para 30% */
}

.news-thumbnail img {
  height: 180px !important; /* Altura reduzida para acompanhar a largura menor */
  width: 100% !important;
  object-fit: cover !important;
  border-radius: 0 !important;
}

/* Removido override de padding zero */

@media (max-width: 768px) {
  /* No mobile as imagens ainda sangram ou ocupam mais espaço se solicitado,
       mas vamos manter o alinhamento de texto padrão */
  .news-thumbnail {
    flex: 0 0 100% !important;
  }

  .news-thumbnail img {
    height: 220px !important;
  }
}

/* ===== LAYOUT CABEÇALHO (LOGO + BANNER + MENU) ===== */
@media (min-width: 1025px) {
  .inside-header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }

  .site-branding,
  .site-logo {
    flex: 0 0 auto;
    margin-bottom: 8px; /* Reduzido de 20px */
    margin-right: 20px;
    margin-left: 0 !important;
  }

  .header-widget {
    flex: 1 1 auto;
    max-width: 768px;
    height: auto !important;
    min-height: 0 !important;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 !important;
    margin-bottom: 0 !important; /* Totalmente colado no menu */
  }

  .main-navigation {
    width: 100%;
    flex-basis: 100%;
    margin-top: 0;
  }

  .site-header {
    margin-bottom: 0px !important; /* Removido para colar no menu */
  }
}

/* ===== BARRA DE INFORMAÇÕES (Tier 2 do Header) ===== */

.main-navigation,
.header-info-bar {
  width: 100% !important;
  display: block !important;
}

.header-info-bar {
  background-color: var(--navy-dark);
  color: #ffffff;
  padding: 10px 0 0 0; /* Padding inferior removido */
  font-size: 0.95rem;
}

.info-bar-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.info-bar-left {
  opacity: 0.8;
  padding-left: 15px; /* Afastar da borda esquerda */
}

.info-bar-right {
  display: flex;
  align-items: center;
  gap: 30px;
  padding-right: 15px; /* Afastar da borda direita */
}

/* Pesquisa no Header */
.header-search .search-form {
  position: relative;
  /* border-bottom removido daqui para o input para permitir animação */
}

.header-search .search-field {
  background: transparent !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  color: #ffffff !important;
  padding: 5px 30px 5px 10px !important;
  font-size: 0.9rem !important;
  width: 200px;
  transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.3) !important;
  border-radius: 4px;
}

.header-search .search-field:focus {
  width: 280px; /* Reduzido levemente para evitar quebra de layout excessiva */
  background: rgba(0, 0, 0, 0.6) !important;
  border-bottom: 2px solid var(--primary-gold) !important;
  outline: none;
}

.header-search .search-field::placeholder {
  color: rgba(255, 255, 255, 0.6);
  font-style: italic;
  transition: color 0.3s ease;
}

.header-search .search-field:focus::placeholder {
  color: rgba(255, 255, 255, 0.9);
}

/* Remover Radius no Responsivo */
@media (max-width: 768px) {
  .news-thumbnail img,
  .hero-main,
  .hero-side,
  .featured-image img,
  .search-field,
  .header-currency-ticker,
  .wp-block-image img,
  .entry-content img,
  iframe,
  button,
  input,
  textarea,
  select {
    border-radius: 0 !important;
  }
}

.header-search .search-submit {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background: transparent !important;
  color: #ffffff !important;
  padding: 0 !important;
  font-size: 1rem;
  border: none;
}

/* Sociais no Header */
.header-social {
  display: flex;
  gap: 15px;
}

.header-social a {
  color: #ffffff !important;
  font-size: 1.1rem;
  transition: opacity 0.3s ease;
}

.header-social a:hover {
  opacity: 0.7;
}

/* Mobile Adjustments for Info Bar */
@media (max-width: 768px) {
  .info-bar-content {
    flex-direction: column;
    gap: 15px;
    text-align: center;
  }

  .info-bar-right {
    flex-direction: column;
    gap: 15px;
  }

  .header-search .search-field {
    width: 100%;
    text-align: center;
  }
}

/* ===== RODAPÉ UNIFICADO (PRETO E DOURADO - FULL WIDTH) ===== */
.site-footer {
  background-color: #000000 !important;
  color: #ffffff !important;
  margin-top: 10px;
  padding-top: 40px;
  font-size: 0.95rem;
  border-top: 4px solid var(--primary-gold);
  width: 100vw !important;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  overflow: hidden;
}

.footer-widgets,
.footer-widgets .grid-container,
.footer-widgets .inside-footer-widgets,
.site-footer .footer-widgets-container {
  background-color: #000000 !important; /* Garantindo fundo preto em todos os containers */
}

.footer-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr 1fr;
  gap: 40px;
  background-color: #000000 !important;
}

.footer-title {
  color: var(--primary-gold) !important;
  font-size: 1.1rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 20px;
}

.footer-desc {
  color: #e0e0e0 !important;
  line-height: 1.6;
  font-size: 0.9rem;
}

.footer-links a {
  color: #ffffff !important;
  text-decoration: none;
  display: block;
  padding: 8px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  transition: all 0.3s ease;
}

.footer-links a:hover {
  padding-left: 8px;
  background: rgba(255, 255, 255, 0.05);
  color: var(--primary-gold) !important;
}

/* ===== ESPAÇO PUBLICITÁRIO ===== */

.homepage-ad-section {
  margin: 5px 0 20px 0; /* Reduzido o topo para 5px */
  text-align: center;
}

.ad-970-250 {
  width: 970px;
  height: auto;
  background-color: transparent;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 100%;
  color: #999;
  font-size: 1.2rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 2px;
  padding: 0;
  border: none;
  box-sizing: border-box;
}

@media (max-width: 1024px) {
  .ad-970-250 {
    width: 100%;
    height: auto;
    min-height: 150px;
    padding: 20px;
    letter-spacing: 1px;
  }
}

/* Sidebar Ad Space */
.sidebar-ad-section {
  margin-top: 0 !important; /* Totalmente colado no topo */
  margin-bottom: 30px !important; /* Espaço entre banners sequenciais */
  text-align: center;
}

.ad-300-250 {
  width: 300px;
  height: 250px;
  background-color: transparent;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  border: none;
  color: #999;
  font-size: 1.1rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 2px;
}

/* ===== REFINAMENTO DA IMAGEM NO SINGLE POST ===== */

/* Trazer conteúdo para mais perto do menu */
.single .site-content {
  margin-top: -2px !important; /* Ajustado para -2px conforme solicitado */
  max-width: 1400px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.single .inside-article {
  padding-top: 0 !important;
  max-width: 1400px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Expansão da Imagem Destacada ao limite do container - OCULTADA */
.single .featured-image,
.single .featured-image img,
.single .wp-post-image {
  display: none !important;
}

.single .featured-image {
  margin-bottom: 25px !important;
}

/* Colar a sidebar na extremidade direita */
@media (min-width: 769px) {
  .separate-containers .inside-right-sidebar {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}

/* Remoção de preenchimento para blocos de tamanho intrínseco (Performance/Layout) */
[style*="contain-intrinsic-block-size"] {
  padding: 0 !important;
}

/* Garantir que widgets da sidebar não tenham padding interno */
.sidebar .widget {
  padding: 0 !important;
}

/* ===== REDUÇÃO GLOBAL DA SIDEBAR ===== */
@media (min-width: 769px) {
  /* Ajuste para o grid da Home - Consolidado no Master Definition */

  /* Ajuste para as páginas internas (Single/Paginas) */
  #primary {
    width: calc(100% - 350px) !important;
    flex: 0 0 calc(100% - 350px) !important;
    float: none !important;
  }

  #right-sidebar {
    width: 350px !important;
    flex: 0 0 350px !important;
    float: none !important;
  }

  /* Caso não haja sidebar (Full Width) */
  .no-sidebar #primary {
    width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* ZERAR MARGENS À DIREITA DA SIDEBAR - REMOVIDO PARA EVITAR COLAR NA BORDA */
#right-sidebar,
.sidebar,
.inside-right-sidebar,
.sidebar .widget {
  margin-right: 0;
  padding-right: 15px;
}

/* Forçar imagens e banners da sidebar ao extremo da margem */
.sidebar .widget img,
.sidebar-ad-section img,
#right-sidebar .widget img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* ===== SEÇÃO COLUNISTAS ===== */

.colunistas-section {
  padding: 30px 0;
  max-width: 1400px !important; /* Padronizado com o corpo */
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100%;
}

.colunistas-section .section-header {
  margin-bottom: 10px;
}

.colunistas-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 15px;
}

/* Colunas 2-4: Cards de Colunistas */
.colunista-card {
  height: 320px; /* Reduzido para 320px para caber e alinhar melhor */
  background-size: cover;
  background-position: center top; /* Foco no rosto do colunista */
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px; /* Reduzido para 20px para economia de espaço */
  color: #fff;
  background: #f9f9f9;
  border-radius: 0 !important;
  margin-top: 0; /* Removido para evitar desalinhamento no grid com gap */
  box-shadow: inset 0 -120px 80px -20px rgba(0, 0, 0, 1);
  transition: transform 0.3s ease;
}

.colunista-card:hover {
  transform: translateY(-5px);
}

.colunista-name {
  font-size: 0.8rem;
  font-style: italic;
  color: #ccc;
  display: block;
  margin-bottom: 5px;
}

.colunista-post-title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}

/* Responsivo */
@media (max-width: 1024px) {
  .colunistas-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}

@media (max-width: 600px) {
  .colunistas-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== MELHORIAS DE RESPONSIVIDADE E UI (Radius 10) ===== */

/* Radius Global para Heros */
.hero-main,
.hero-side {
  border-radius: 0 !important;
  overflow: hidden;
}

/* --- AJUSTES GLOBAIS DE CLICK NO FRONT PAGE --- */

/* Hero Slider: Garante que a imagem seja clicável sem bloquear o título */
.slide {
    position: relative;
}

.slide-image-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5 !important; /* Acima do grid-container (2) */
    display: block;
}

.slide-overlay {
    position: relative;
    z-index: 10 !important; /* Acima do link da imagem para manter títulos clicáveis */
    pointer-events: auto;
}

/* Links em imagens: Garante que ocupem todo o espaço disponível no container */
.card-image a,
.news-thumbnail a,
.entret-item-thumb a,
.video-thumbnail a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    line-height: 0;
}

.card-image img,
.news-thumbnail img,
.entret-item-thumb img,
.video-thumbnail img {
    display: block;
    width: 100%;
    height: auto;
}

/* Efeito de hover suave em imagens clicáveis */
.card-image a:hover,
.news-thumbnail a:hover,
.slide-image-link:hover + .grid-container .slide-title a {
    opacity: 0.9;
}
@media (max-width: 768px) {
  .hero-section .grid-container > div {
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important;
  }

  .hero-main {
    height: 300px !important;
    margin-bottom: 0 !important;
  }

  .hero-side {
    height: 200px !important;
    margin-bottom: 0 !important;
  }
}

@media (max-width: 768px) {
  #primary,
  #right-sidebar {
    width: 100% !important;
    display: block !important;
  }
}

/* Padding de containers mobile */
@media (max-width: 768px) {
  .inside-article,
  .mais-lidas,
  .colunistas-section {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  .news-item {
    padding: 10px 0 !important;
  }
}

/* Garantir que a Imagem Destacada use o máximo do container (Bleed Layout) */
.single .featured-image {
  margin-left: -30px !important;
  margin-right: -30px !important;
  max-width: none !important;
  width: calc(100% + 60px) !important;
}

.single .featured-image img,
.single .wp-post-image {
  border-radius: 0 !important;
  width: 100% !important;
  height: auto !important;
  display: block;
}

@media (max-width: 1024px) {
  .single .featured-image {
    margin-left: -20px !important;
    margin-right: -20px !important;
    width: calc(100% + 40px) !important;
  }
}

@media (max-width: 768px) {
  .single .featured-image {
    margin-left: -15px !important;
    margin-right: -15px !important;
    width: calc(100% + 30px) !important;
  }
}

/* Cards de Colunistas no Mobile */
@media (max-width: 480px) {
  .colunista-card {
    height: 350px !important;
  }
}

/* ===== CONSOLIDAÇÃO HEADER MOBILE (LOGO CENTRALIZADA) ===== */
@media (max-width: 1024px) {
  .site-header .inside-header {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    position: relative !important;
    min-height: 70px;
  }

  .site-logo,
  .site-branding {
    padding: 0 !important;
    margin: 0 auto !important;
    display: flex !important;
    justify-content: center !important;
    max-width: 180px;
  }

  .menu-toggle {
    position: absolute !important;
    right: 10px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    background-color: transparent !important;
  }

  /* Linhas do Hamburger */
  .menu-toggle .mobile-menu span {
    height: 2px !important;
    width: 22px !important;
    background-color: #ffffff;
  }

  .menu-toggle .mobile-menu {
    gap: 5px !important;
  }

  /* Manter barras de info e nav coladas */
  .header-info-bar,
  .header-info-bar .grid-container,
  .main-navigation .inside-navigation {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
  }
}

/* ===== PADRONIZAÇÃO DE TÍTULOS E RECUO (GERAL SITE) ===== */

/* Forçar recuo lateral padrão em todo o conteúdo (Mobile) */
@media (max-width: 768px) {
  .section-header {
    font-size: 1.5rem !important;
    margin-left: 0 !important;
    display: block !important;
    border-bottom-width: 3px !important;
  }

  /* ===== RODAPÉ UNIFICADO (MOBILE) ===== */
  /* Footer Mobile unificado abaixo */
  /* ===== RODAPÉ UNIFICADO (MOBILE) ===== */
  .site-footer {
    background-color: #000000 !important;
    color: #ffffff !important;
    border-top: 3px solid var(--primary-gold);
    text-align: left !important;
  }

  .footer-widgets,
  .footer-col,
  .footer-col ul,
  .footer-col li {
    text-align: left !important;
    align-items: flex-start !important;
    color: #ffffff !important;
  }

  .footer-title {
    color: var(--primary-gold) !important;
    border-bottom: 2px solid var(--primary-gold);
    display: inline-block;
    margin-bottom: 15px !important;
  }

  .footer-col a {
    color: #ffffff !important;
  }

  .footer-col a:hover {
    color: var(--primary-gold) !important;
  }

  .footer-grid {
    grid-template-columns: 1fr;
  }
}

/* Unificação Global da Classe .section-header (Desktop & Mobile) */
.section-header {
  font-family: var(--font-serif);
  font-weight: 700 !important;
  text-transform: uppercase;
  color: #000;
  border-bottom: 5px solid var(--primary-gold);
  display: inline-block;
  padding-bottom: 5px;
  margin-bottom: 25px !important;
  letter-spacing: 1px;
}

/* ===== AJUSTES FINAIS DE RODAPÉ (MOBILE) ===== */
@media (max-width: 768px) {
  .copyright-bar {
    background-color: #000 !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    text-align: center !important; /* Centralizado desktop tbm */
  }

  .copyright-bar p {
    margin-bottom: 0 !important;
    font-size: 0.8rem !important;
    text-align: center !important; /* Centralizado ao meio da linha */
  }
}

/* ==========================================================================
   MASTER LAYOUT FIX - DEFINITIVE CENTERED CONTAINERS
   ========================================================================== */

.grid-container,
.site-content,
.hero-section .grid-container,
.main-navigation .inside-navigation,
.inside-header,
.site-footer .footer-widgets-container,
.inside-article,
.video-highlight-section,
.colunistas-section,
.related-news-section .grid-container,
.columns-archive-grid,
.inside-site-content {
    max-width: 1400px !important; /* PADRÃO ALINHADO COM O HEADER */
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
    box-sizing: border-box !important;
}

/* Ensure Header background stays full width but content is centered */
.site-header {
    width: 100% !important;
    margin: 0 !important;
    left: 0 !important;
}

/* Fix Hero Section from overflowing its container */
.hero-section {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

@media (max-width: 1024px) {
    .grid-container,
    .site-content,
    .inside-header,
    .inside-navigation,
    .inside-article,
    .columns-archive-grid,
    .inside-site-content {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

@media (max-width: 768px) {
    .grid-container,
    .site-content,
    .inside-header,
    .inside-navigation,
    .inside-article,
    .columns-archive-grid,
    .inside-site-content {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

/* ==========================================================================
   CATEGORY LAYOUT & SIDEBAR OVERLAP FIX (NOTO SERIF + GRID REORDER)
   ========================================================================== */

/* Garantir que o conteúdo não invada a sidebar */
@media (min-width: 769px) {
    .site-content {
        display: flex !important;
        justify-content: space-between !important;
        align-items: flex-start !important;
        gap: 0 !important;
    }

    #primary {
        width: calc(100% - 350px) !important;
        flex: 0 0 calc(100% - 350px) !important;
        float: none !important;
    }

    #right-sidebar {
        width: 350px !important; /* Sidebar global padronizada */
        flex: 0 0 350px !important;
        float: none !important;
    }

    .no-sidebar #primary {
        width: 100% !important;
        flex: 0 0 100% !important;
    }
}

.archive .inside-article,
.search-results .inside-article {
    display: grid !important;
    grid-template-columns: 35% 1fr !important;
    column-gap: 30px !important;
    row-gap: 5px !important;
    padding: 30px 0 !important;
    border-bottom: 1px solid #f0f0f0 !important;
    align-items: start !important;
}

.archive .post-image,
.search-results .post-image {
    grid-column: 1 !important;
    grid-row: 1 / span 10 !important; /* Foto na esquerda */
    margin: 0 !important;
}

.archive .post-image img {
    width: 100% !important;
    aspect-ratio: 16 / 11 !important;
    object-fit: cover !important;
    border-radius: 0 !important;
    display: block !important;
}

/* CHAPEU (O nome da categoria vem do rodapé e sobe pro topo no Grid) */
.archive footer.entry-meta,
.search-results footer.entry-meta {
    grid-column: 2 !important;
    grid-row: 1 !important; /* PRIMEIRA LINHA DO TEXTO */
    display: block !important;
    margin: 0 0 5px 0 !important;
    padding: 0 !important;
    border: none !important;
}

.archive footer.entry-meta .cat-links {
    color: var(--primary-gold) !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-size: 0.85rem !important;
}

.archive footer.entry-meta .cat-links a {
    color: var(--primary-gold) !important;
    text-decoration: none !important;
}

/* Esconder ícones e outros itens do footer no arquivo */
.archive footer.entry-meta .cat-links svg,
.archive footer.entry-meta .tags-links,
.archive footer.entry-meta .comments-link {
    display: none !important;
}

.archive .entry-header,
.search-results .entry-header {
    grid-column: 2 !important;
    grid-row: 2 !important; /* SEGUNDA LINHA DO TEXTO */
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}

.archive .entry-title,
.archive .entry-title a,
.search-results .entry-title,
.search-results .entry-title a {
    font-family: 'Noto Serif SC', serif !important;
    font-size: 2.1rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #000 !important;
    margin: 0 0 10px 0 !important;
}

.archive .entry-title a {
    color: #000 !important;
    text-decoration: none !important;
}

/* DATA (Fica abaixo do título) */
.archive .entry-header .entry-meta,
.search-results .entry-header .entry-meta {
    margin: 5px 0 0 0 !important;
    color: #999 !important;
    font-size: 1rem !important;
    text-transform: uppercase !important;
    font-family: Arial, sans-serif !important;
}

.footer-social {
  display: flex !important;
  gap: 15px !important;
  margin-top: 20px !important;
}

.footer-social a {
  background: rgba(255, 255, 255, 0.1) !important;
  color: #ffffff !important;
  width: 40px !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  font-size: 1.2rem !important;
}

.footer-social a:hover {
  background: var(--primary-gold) !important;
  color: #000000 !important;
  transform: translateY(-3px) !important;
}

.footer-social a i {
  color: inherit !important;
}

/* Ocultar resumo e conteúdo extra para mostrar apenas a imagem destacada e bater com o print */
.archive .entry-summary,
.archive .entry-content,
.search-results .entry-summary,
.search-results .entry-content {
    display: none !important;
}

/* Remover o nome do autor (byline) das categorias */
.archive .entry-header .byline,
.search-results .entry-header .byline {
    display: none !important;
}

@media (max-width: 768px) {
    .archive .inside-article,
    .search-results .inside-article {
        display: block !important;
    }
    .archive .post-image,
    .search-results .post-image {
        margin-bottom: 20px !important;
    }
    .archive .entry-title,
    .archive .entry-title a,
    .search-results .entry-title,
    .search-results .entry-title a {
        font-size: 1.8rem !important;
    }
}

/* --- SEÇÃO DE VÍDEO / PODCAST (SISTEMA G1/MODERNO) --- */
.video-highlight-section {
    padding: 30px 0;
    background-color: #f4f4f4;
    border-radius: 0 !important;
    max-width: 1400px !important; /* Padronizado com o corpo */
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100%;
}

.video-section-header {
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.video-section-title {
    font-size: 2.2rem;
    font-weight: 900;
    color: #1a1a1a;
    text-transform: uppercase;
    border-left: 8px solid #EAB308;
    padding-left: 20px;
    line-height: 1;
}

.video-grid {
    display: grid;
    grid-template-columns: 1.8fr 1fr;
    grid-template-rows: repeat(2, 240px);
    gap: 20px;
}

.video-item {
    position: relative;
    border-radius: 0;
    overflow: hidden;
    background-color: #000;
}

.video-item.main {
    grid-row: span 2;
}

.video-link {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    text-decoration: none !important;
}

.video-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.85;
    transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.video-item:hover img {
    opacity: 1;
    transform: scale(1.03);
}

.video-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.4) 60%, transparent 100%);
    padding: 30px;
    color: #fff;
    z-index: 2;
}

.video-meta {
    display: inline-block;
    background: #EAB308;
    color: #000;
    font-size: 0.75rem;
    font-weight: 800;
    padding: 4px 10px;
    border-radius: 0;
    margin-bottom: 12px;
    text-transform: uppercase;
}

.video-title {
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.25;
    margin: 0;
    color: #fff;
    text-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

.video-item.main .video-title {
    font-size: 2.2rem;
}

.video-play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70px;
    height: 70px;
    z-index: 3;
    pointer-events: none;
    transition: all 0.4s ease;
}

.video-play-btn svg {
    width: 100%;
    height: 100%;
    filter: drop-shadow(0 4px 10px rgba(0,0,0,0.5));
}

.video-item:hover .video-play-btn {
    transform: translate(-50%, -50%) scale(1.15);
}

@media (max-width: 900px) {
    .video-grid {
        grid-template-columns: 1fr;
        grid-template-rows: 400px 250px 250px;
    }
    
    .video-item.main .video-title {
        font-size: 1.6rem;
    }
}

/* --- NOTÍCIAS RELACIONADAS (SINGLE POST - MINIMALISTA) --- */
.related-news-section {
    margin-top: 40px;
    padding-top: 25px;
    border-top: 1px solid #f0f0f0;
    clear: both;
}

.related-title {
    font-size: 1.5rem;
    font-weight: 900;
    color: #000;
    text-transform: uppercase;
    margin-bottom: 20px;
    padding-left: 12px;
    border-left: 4px solid #EAB308;
    line-height: 1;
}

.related-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* DUAS COLUNAS CONFORME SOLICITADO */
    gap: 30px 20px;
}

.related-card {
    text-decoration: none !important;
    display: flex; /* Layout lateral para ser mais minimalista */
    gap: 15px;
    align-items: flex-start;
    transition: all 0.2s ease;
}

.related-thumb {
    flex: 0 0 120px; /* Miniatura menor e fixa */
    height: 80px;
    border-radius: 0;
    overflow: hidden;
    background: #f9f9f9;
}

.related-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.related-post-title {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2;
    color: #1a1a1a;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.related-card:hover .related-post-title {
    color: #EAB308;
    text-decoration: underline;
}

@media (max-width: 600px) {
    .related-grid {
        grid-template-columns: 1fr; /* Stack em telas muito pequenas */
    }
    
    .related-thumb {
        flex: 0 0 100px;
        height: 70px;
    }
}

/* ===== HERO SLIDER ===== */
.hero-slider {
    position: relative;
    width: 100%;
    max-width: 1400px !important; /* Mantém o padrão do site */
    height: 750px; /* Altura fixa para consistência (Aumentada) */
    margin: 10px auto 20px auto; /* Espaçamento reduzido */
    overflow: hidden;
    border-radius: 0;
}

.slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
}

.slide:first-child {
    opacity: 1;
    z-index: 1;
}

.slide.active {
    opacity: 1;
    z-index: 2;
}

.slide-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.6) 60%, transparent 100%);
    padding: 60px 40px 40px 40px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.slide-category {
    display: inline-block;
    background-color: var(--primary-gold);
    color: #fff;
    padding: 5px 15px;
    font-size: 0.9rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 15px;
    border-radius: 0;
    align-self: flex-start;
}

.slide-title {
    font-size: 3rem;
    font-weight: 900;
    color: #fff;
    margin: 0 0 10px 0;
    line-height: 1.2;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

.slide-title a {
    color: #fff;
    text-decoration: none;
    transition: opacity 0.3s;
}

.slide-title a:hover {
    opacity: 0.9;
}

.slide-meta {
    font-size: 1rem;
    color: rgba(255,255,255,0.8);
    margin-top: 10px;
}

/* Slider Controls */
.slider-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0,0,0,0.5);
    color: #fff;
    border: none;
    padding: 15px;
    cursor: pointer;
    z-index: 10;
    font-size: 1.5rem;
    transition: background 0.3s;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.slider-nav:hover {
    background: var(--primary-gold);
}

.prev-slide {
    left: 20px;
}

.next-slide {
    right: 20px;
}

/* Responsividade do Slider */
@media (max-width: 768px) {
    .hero-slider {
        height: 500px;
        margin: 10px auto 20px auto;
    }
    
    .slide-title {
        font-size: 1.8rem;
    }
    
    .slide-overlay {
        padding: 30px 20px;
    }
    
    .slider-nav {
        width: 40px;
        height: 40px;
        font-size: 1.2rem;
    }
}


/* === NEW FRONT PAGE SECTIONS === */

.category-section {
    padding: 30px 0; /* Reduced from 60px */
    border-bottom: 1px solid #eee;
    margin-bottom: 20px;
}

/* Placeholder Styles */
.placeholder-thumb {
    width: 100%;
    height: 100%;
    background-color: #e0e0e0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
}

.placeholder-thumb img {
    width: 50% !important;
    height: auto !important;
    object-fit: contain !important;
    opacity: 0.4;
    mix-blend-mode: screen; /* Hides black background of logo */
}

/* For elements with background-image */
.placeholder-bg {
    background-color: #e0e0e0 !important;
    position: relative;
}

.placeholder-bg::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url('/wp-content/uploads/2026/01/alogo.png');
    background-position: center;
    background-repeat: no-repeat;
    background-size: 40%;
    opacity: 0.4;
    mix-blend-mode: screen;
}

/* Ensure images in grid don't break layout when replaced by div */
.policia-item .placeholder-thumb {
    height: 200px;
    border-radius: 0;
}

.educacao-card .card-image .placeholder-thumb {
    height: 180px;
}

.entret-img-link .placeholder-thumb {
    height: 350px;
}

/* 1. Polícia - Grid Layout */
.policia-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.policia-item img {
    width: 100%;
    height: 300px; /* Increased from 200px */
    object-fit: cover;
    border-radius: 0;
}
.policia-item h3 {
    font-size: 18px;
    margin-top: 10px;
    font-weight: 700;
}

/* 2. Acidentes - Focus Layout */
.acidentes-layout {
    display: flex;
    gap: 20px;
}
.acidentes-main {
    flex: 2;
}
.acidentes-side {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.acidente-big {
    position: relative;
    border-radius: 0;
    overflow: hidden;
    min-height: 440px; /* Equalized with 2 small images (210+20+210) */
    background-size: cover;
    background-position: center;
}
.acidente-big img {
    width: 100%;
    height: 500px; /* Adjusted to 500px for better balance */
    object-fit: cover;
}
.acidente-big .overlay-title {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.7) 50%, transparent 100%);
    padding: 30px 20px 20px;
    color: white;
}
.acidente-small {
    position: relative;
    overflow: hidden;
}
.acidente-small a {
    display: block;
    position: relative;
    height: 100%;
}
.acidente-small img {
    width: 100%;
    height: 210px;
    object-fit: cover;
    border-radius: 0;
    display: block;
}
.acidente-small h4 {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0;
    padding: 30px 15px 15px;
    color: #fff;
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.3;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.8);
    background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.6) 60%, transparent 100%);
}

/* 3. Educação - Card Layout */
.educacao-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}
.educacao-card {
    background: #fff;
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
    border-radius: 0;
    overflow: hidden;
    transition: transform 0.2s;
}
.educacao-card:hover {
    transform: translateY(-5px);
}
.educacao-card .card-image img {
    width: 100%;
    height: 180px;
    object-fit: cover;
}
.educacao-card .card-content {
    padding: 20px;
}
.educacao-card h3 {
    font-size: 18px;
    margin-bottom: 10px;
}
.educacao-card .read-more {
    color: #d6ad2e; /* Gold brand color */
    font-weight: bold;
    font-size: 12px;
    text-transform: uppercase;
}

/* 4. Economia - Overlay Layout */
.economia-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}
.economia-item {
    height: 300px; /* Increased from 250px */
    background-size: cover;
    background-position: center;
    position: relative;
    border-radius: 0;
    overflow: hidden;
}
.economia-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.4);
    display: flex;
    align-items: flex-end;
    padding: 20px;
    transition: background 0.3s;
}
.economia-item:hover .economia-overlay {
    background: rgba(0,0,0,0.6);
}
.economia-overlay h3 {
    color: white;
    font-size: 20px;
    text-shadow: 0 2px 4px rgba(0,0,0,0.5);
}

/* 5. Entretenimento - Magazine Layout */
.entretenimento-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 10px;
}
.entret-item {
    text-align: center;
}
.entret-img-link img {
    width: 100%;
    height: 450px; /* Vertical / Portrait style */
    object-fit: cover;
    border-radius: 0;
}
.entret-info {
    margin-top: 15px;
}
.entret-cat {
    display: inline-block;
    background: #000;
    color: #fff;
    padding: 2px 8px;
    font-size: 10px;
    text-transform: uppercase;
    margin-bottom: 5px;
}
.entret-item h3 {
    font-family: 'Playfair Display', serif; /* Simulating different font */
    font-size: 22px;
    line-height: 1.2;
}

/* Responsive */
@media (max-width: 768px) {
    .policia-grid, .educacao-grid, .economia-grid, .entretenimento-grid {
        grid-template-columns: 1fr;
    }
    .acidentes-layout {
        flex-direction: column;
    }
    .acidentes-side {
        flex-direction: row;
    }
    .acidente-small {
        flex: 1;
    }
    .acidente-small img {
        height: 150px;
    }
}

/* --- VIDEO POSTS REFINEMENT --- */
.single-video .featured-image {
    display: none !important;
}

/* --- HOME PAGE HIGH-DENSITY POLISH (CAPRICHO) --- */
.home .site-content, 
.home .news-grid {
    gap: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.home .inside-right-sidebar,
.home #right-sidebar .widget {
    padding: 0 !important;
    margin-bottom: 20px !important; /* Spacing only between widgets, not sides */
    margin-top: 0 !important;
}

.home .news-item {
    padding-left: 0 !important;
    padding-right: 15px !important; /* Minimal internal breathing room */
}

/* Zero standard GeneratePress padding on home */
.home .separate-containers .inside-article,
.home .separate-containers .comments-area,
.home .separate-containers .page-header,
.home .separate-containers .paging-navigation,
.home .separate-containers .site-main > *,
.home .inside-right-sidebar {
    padding: 0 !important;
}

/* --- ENTERTAINMENT SLIDESHOW --- */
/* --- ENTERTAINMENT SLIDESHOW (3 AT A TIME) --- */
.entret-slider-container {
    position: relative;
    width: 100%;
    margin-top: 10px;
}

.entret-slider {
    width: 100%;
    overflow: hidden;
    padding: 10px 0;
}

.entret-slides {
    display: flex;
    gap: 20px;
    transition: transform 0.5s cubic-bezier(0.45, 0, 0.55, 1);
}

.ent-slide {
    flex: 0 0 calc(33.333% - 13.333px);
    position: relative !important; /* Force relative to override global .slide absolute */
    height: 480px;
    overflow: hidden;
    border-radius: 0;
    transition: transform 0.3s ease;
    opacity: 1 !important; /* Force visibility to override global .slide opacity 0 */
}

.ent-slide:hover {
    transform: translateY(-5px);
}

.ent-slide .entret-img-link {
    display: block;
    width: 100%;
    height: 100%;
}

.ent-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ent-slide .entret-info {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(transparent, rgba(0,0,0,0.95));
    padding: 40px 20px 20px;
    color: #fff;
    z-index: 2;
}

.ent-slide h3 {
    margin: 0;
}

.ent-slide h3 a {
    color: #fff !important;
    font-size: 1.4rem;
    font-weight: 800;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.5);
    text-decoration: none;
    line-height: 1.2;
}

.ent-slide .entret-cat {
    background: var(--primary-gold);
    color: #000;
    padding: 4px 10px;
    text-transform: uppercase;
    font-size: 0.75rem;
    font-weight: 800;
    margin-bottom: 12px;
    display: inline-block;
}

/* Navigation Buttons */
.entret-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0,0,0,0.8);
    color: var(--primary-gold);
    border: none;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    cursor: pointer;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
}

.entret-nav:hover {
    background: var(--primary-gold);
    color: #000;
}

.entret-nav.prev {
    left: -25px;
}

.entret-nav.next {
    right: -25px;
}

@media (max-width: 1024px) {
    .ent-slide {
        flex: 0 0 calc(50% - 10px);
    }
    .entret-nav.prev { left: 0; }
    .entret-nav.next { right: 0; }
}

@media (max-width: 768px) {
    .ent-slide {
        flex: 0 0 100%;
        height: 400px;
    }
    .ent-slide h3 a { font-size: 1.2rem; }
}

/* --- SINGLE POST META ALIGNMENT --- */
.single .entry-meta, 
.single .entry-footer {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 15px !important;
    margin-bottom: 20px !important;
    list-style: none !important;
    padding: 0 !important;
}

.single .entry-meta > span,
.single .entry-footer > span,
.single .entry-meta .cat-links,
.single .entry-meta .tags-links,
.single .entry-meta .comments-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.single .entry-meta svg,
.single .entry-footer svg,
.single .entry-meta i,
.single .entry-footer i {
    margin-right: 5px !important;
    width: 14px !important;
    height: 14px !important;
    color: var(--primary-gold) !important;
}

/* --- FORCED SEARCH META ALIGNMENT --- */
.archive footer.entry-meta,
.search-results footer.entry-meta {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 15px !important;
}

.archive footer.entry-meta > span,
.search-results footer.entry-meta > span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
}

.archive footer.entry-meta .cat-links,
.archive footer.entry-meta .tags-links,
.archive footer.entry-meta .comments-link,
.search-results footer.entry-meta .cat-links,
.search-results footer.entry-meta .tags-links,
.search-results footer.entry-meta .comments-link {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

.archive footer.entry-meta svg,
.search-results footer.entry-meta svg {
    margin: 0 5px 0 0 !important;
    display: inline-block !important;
}

.archive footer.entry-meta::after,
.search-results footer.entry-meta::after,
.archive footer.entry-meta::before,
.search-results footer.entry-meta::before {
    display: none !important;
    content: none !important;
}

/* ==========================================================================
   SOCIAL SHARE BUTTONS
   ========================================================================== */
.pontual-share-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 15px 0 10px 0;
    padding-bottom: 10px;
    border-bottom: 1px solid #eaeaea;
}

.share-label {
    font-weight: 700;
    font-size: 0.9rem;
    color: #555;
    margin-right: 5px;
    text-transform: uppercase;
}

.share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    color: #fff;
    text-decoration: none !important;
    transition: transform 0.2s ease, opacity 0.2s ease;
    border: none;
    cursor: pointer;
    background: #333; /* Fallback */
}

.share-btn:hover {
    transform: translateY(-2px);
    opacity: 0.9;
    color: #fff !important;
}

.share-btn svg {
    width: 18px;
    height: 18px;
    fill: currentColor;
}

/* Brand Colors */
.btn-whatsapp { background-color: #25D366; }
.btn-facebook { background-color: #1877F2; }
.btn-telegram { background-color: #0088cc; }
.btn-instagram { background-color: #E1306C; }
.btn-copy { background-color: #6c757d; }
.btn-print { background-color: #343a40; }

@media (max-width: 600px) {
    .pontual-share-container {
        gap: 8px;
        justify-content: flex-start;
    }
    
    .share-btn {
        width: 32px;
        height: 32px;
    }
    
    .share-btn svg {
        width: 15px;
        height: 15px;
    }
}
