/*
 * CSS Single Desktop - single-desktop.css
 * v5.7.0 - CLS FIX: Reserva espaço para anúncios e imagens
 * 
 * CORREÇÕES v5.7.0:
 * - min-height nos containers de anúncios para evitar CLS
 * - aspect-ratio em imagens sem dimensão
 * - contain: layout para isolamento de reflow
 * 
 * CORREÇÕES v5.6.1:
 * - Overflow hidden no .publicidade-box para evitar vazamento de imagens
 * - Controle de largura das imagens dentro do AdInserter
 * - Tag PUBLICIDADE permanece FORA do quadro (inline-block)
 * - Fixes globais de overflow-x
 */

/* === FIX GLOBAL DE OVERFLOW === */
html, body {
    overflow-x: hidden;
    max-width: 100vw;
}

/* ===================================================================
   BASE E RESET
   =================================================================== */

body.single .single-desktop,
.single-desktop {
    background-color: #ffffff !important;
    font-family: 'Open Sans', Arial, sans-serif !important;
    min-height: 100vh;
    line-height: 1.4;
    width: 100% !important;
    overflow-x: hidden; /* FIX OVERFLOW */
}

body.single .container-single-desktop,
.container-single-desktop {
    max-width: 1135px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    box-sizing: border-box !important;
    margin-top: 40px !important;
    overflow: hidden; /* FIX OVERFLOW */
}

/* ===================================================================
   ANÚNCIO CABEÇALHO
   =================================================================== */

.publicidade-cabecalho {
	width: 100%;
    margin: 20px auto 30px auto;
    text-align: center;
    min-height: 180px; /* CLS FIX: reserva espaço para banner cabeçalho */
	position: relative !important;
    z-index: 0 !important; /* abaixo de header, conteúdo e popups */
    overflow: hidden !important; /* FIX OVERFLOW - alterado de visible para hidden */
    contain: layout style; /* CLS FIX: isola reflows */
}

.publicidade-cabecalho > * {
    max-width: 100% !important;
}

.publicidade-cabecalho iframe {
    
	max-width: 100% !important;
    display: block;
    margin: 0 auto;
}

.publicidade-tag {
    background: #FF6600;
    color: white;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    padding: 4px 8px;
    border-radius: 3px;
    letter-spacing: 0.5px;
    display: inline-block;
    margin-bottom: 8px;
    text-align: left;
}

/* ===================================================================
   CONTAINERS DE ANÚNCIOS
   =================================================================== */

.publicidade-box {
    min-height: 280px !important; /* CLS FIX: reserva espaço para 300x250 + padding */
    width: 100% !important;
    max-width: 100% !important;
    background: #fafafa;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    padding: 15px !important;
    overflow: hidden !important; /* FIX OVERFLOW - alterado de visible para hidden */
    position: relative !important;
    display: flex !important; /* CLS FIX: centraliza conteúdo */
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

/* CLS FIX: Quando anúncio não preenche, colapsa suavemente */
.publicidade-box ins.adsbygoogle[data-ad-status="unfilled"] {
    min-height: 0 !important;
}

.publicidade-box:has(ins.adsbygoogle[data-ad-status="unfilled"]) {
    min-height: auto !important;
    padding: 0 !important;
}

.ad-inserter-block {
    margin-bottom: 15px !important;
    min-height: 90px;
    overflow: hidden !important; /* FIX OVERFLOW - alterado de visible para hidden */
}

.ad-inserter-block:last-child {
    margin-bottom: 0;
}

.adsense-container {
    min-height: 100px !important;
    width: 100% !important;
    max-width: 100% !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important; /* FIX OVERFLOW - alterado de visible para hidden */
    display: block !important;
}

.publicidade-topo-conteudo,
.publicidade-base-conteudo,
.publicidade-content-center,
.publicidade-content-auto {
    margin: 30px 0;
    text-align: left;
    overflow: hidden !important; /* FIX OVERFLOW - alterado de visible para hidden */
}

/* Controle de imagens nos anúncios para evitar vazamento */
.publicidade-box img,
.ad-inserter-block img {
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
    display: block !important;
    object-fit: contain !important;
}

/* ===================================================================
   HEADER FULLWIDTH
   =================================================================== */

.post-header-fullwidth-single {
    background: transparent;
    padding: 40px 0 30px 0;
    margin: 0 0 40px 0;
    border-bottom: 1px solid #e0e0e0;
    max-width: 100% !important;
    width: 100% !important;
    position: relative;
}

.post-kicker-single {
    display: inline-block;
    background: transparent;
    color: #d00;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 15px;
}

.post-title-single {
    font-size: 42px;
    line-height: 1.25;
    font-weight: 700;
    color: #151aca;
    margin: 0 0 20px 0;
    padding: 0;
}

.post-summary-single {
    font-size: 18px;
    color: #666;
    line-height: 1.5;
    margin: 0 0 25px 0;
    font-style: italic;
    border-left: 4px solid #d00;
    padding-left: 10px;
}

.post-meta-double {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin: 0 0 25px 0;
    font-size: 14px;
}

.meta-author {
    font-weight: 600;
    color: #151aca;
}

.meta-datetime {
    color: #888;
}

/* ===================================================================
   BOTÕES COMPARTILHAMENTO
   =================================================================== */

.social-share-row-fixed {
    display: flex;
    flex-direction: row !important;
    align-items: center;
    justify-content: space-between !important;
    gap: 20px;
    flex-wrap: wrap;
    margin-top: 25px;
}

.whatsapp-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: #25D366;
    color: white;
    padding: 12px 18px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.2s ease;
    white-space: nowrap;
    border: none;
    order: 2;
}

.whatsapp-cta-btn:hover {
    background: #20BA5A;
    color: white;
}

.whatsapp-cta-btn svg {
    flex-shrink: 0;
}

.share-buttons-group {
    display: flex;
    gap: 0;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    overflow: hidden;
    background: white;
    order: 1;
}

.share-btn {
    flex: 1;
    padding: 12px 16px;
    background: white;
    color: #666;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    border: none;
    border-right: 1px solid #e0e0e0;
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    white-space: nowrap;
}

.share-btn:last-child {
    border-right: none;
}

.share-btn:hover {
    background: #f5f5f5;
}

.share-btn svg {
    flex-shrink: 0;
}

.share-whatsapp:hover {
    background: #25D366;
    color: white;
}

.share-facebook:hover {
    background: #1877F2;
    color: white;
}

.share-native:hover {
    background: #666;
    color: white;
}

/* ===================================================================
   GRID PRINCIPAL
   =================================================================== */

.main-grid-single {
    display: grid;
    grid-template-columns: 730px 345px;
    gap: 30px;
    align-items: start;
    max-width: 1135px;
    width: 100%;
    margin: 0 auto;
    overflow: hidden; /* FIX OVERFLOW */
}

/* ===================================================================
   POST BODY
   =================================================================== */

.post-body-desktop {
    width: 730px;
    background: transparent !important;
    padding: 0;
    overflow: hidden; /* FIX OVERFLOW */
}

/* ===================================================================
   CONTEÚDO DO POST
   =================================================================== */

.post-content-desktop {
    background: transparent;
    padding: 0;
	margin-top: 20px;
    margin-bottom: 40px;
    overflow: hidden; /* FIX OVERFLOW */
}

.post-content-desktop p {
    font-size: 18px;
    line-height: 1.7;
    color: #333;
    margin-bottom: 20px;
}

.post-content-desktop h2 {
    font-size: 28px;
    font-weight: 700;
    color: #151aca;
    line-height: 1.3;
    margin: 35px 0 20px 0;
}

.post-content-desktop h3 {
    font-size: 24px;
    font-weight: 700;
    color: #151aca;
    line-height: 1.3;
    margin: 30px 0 15px 0;
}

.post-content-desktop img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 20px 0;
}

/* === BLOCKQUOTE ESTILO G1 === */
.post-content-desktop blockquote,
.post-content-desktop .wp-block-quote,
.single-desktop .post-content-desktop blockquote,
.single-desktop .post-content-desktop .wp-block-quote {
    position: relative !important;
    max-width: 680px !important;
    margin: 30px auto !important;
    padding: 28px 20px 32px !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 1.25rem !important;
    line-height: 1.6 !important;
    font-weight: 700 !important;
    letter-spacing: -0.25px !important;
    text-align: left !important;
    display: block !important;
    background: transparent !important;
    border: none !important;
    border-left: none !important;
    border-top: 1px solid #e0e0e0 !important;
    border-bottom: 1px solid #e0e0e0 !important;
    font-style: normal !important;
    color: #333 !important;
    box-shadow: none !important;
}

.post-content-desktop blockquote::before,
.post-content-desktop .wp-block-quote::before,
.single-desktop .post-content-desktop blockquote::before,
.single-desktop .post-content-desktop .wp-block-quote::before {
    content: "" !important;
    display: block !important;
    width: 88px !important;
    height: 4px !important;
    background-color: #151aca !important;
    margin: -28px auto 24px auto !important;
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    font-size: 0 !important;
    color: transparent !important;
}

.post-content-desktop blockquote::after,
.post-content-desktop .wp-block-quote::after,
.single-desktop .post-content-desktop blockquote::after,
.single-desktop .post-content-desktop .wp-block-quote::after {
    content: "" !important;
    display: block !important;
    width: 88px !important;
    height: 4px !important;
    background-color: #151aca !important;
    margin: 24px auto -32px auto !important;
    position: relative !important;
}

.post-content-desktop blockquote p,
.post-content-desktop .wp-block-quote p {
    margin: 0 !important;
    padding: 0 !important;
}

.post-content-desktop blockquote cite,
.post-content-desktop .wp-block-quote cite {
    display: block !important;
    margin-top: 16px !important;
    font-size: 0.9rem !important;
    font-weight: 400 !important;
    font-style: normal !important;
    color: #666 !important;
}

/* === LINKS SEM SUBLINHADO === */
.post-content-desktop a {
    color: #151aca;
    text-decoration: none !important;
}

.post-content-desktop a:hover {
    color: #d00;
    text-decoration: none !important;
}

/* ===================================================================
   POSTS RELACIONADOS - 70% CENTRALIZADO (795px)
   =================================================================== */

.related-posts-desktop-new {
    margin: 50px auto 40px auto;
    padding: 30px 0;
    border-top: 2px solid #e0e0e0;
    max-width: 795px !important; /* 70% de 1135px */
    width: 100%;
    grid-column: 1 / -1;
    overflow: hidden; /* FIX OVERFLOW */
}

.section-title-mobile-style {
    font-size: 28px;
    font-weight: 700;
    color: #151aca;
    margin: 0 0 25px 0;
    padding: 0 0 15px 0;
    position: relative;
}

.section-title-mobile-style::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50px;
    height: 4px;
    background: linear-gradient(90deg, #d00, #ff4444);
    border-radius: 2px;
}

.related-content-area {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    margin-bottom: 25px;
    transition: opacity 0.3s ease;
    overflow: hidden; /* FIX OVERFLOW */
}

.related-card-desktop {
    background: transparent;
    border-radius: 0;
    overflow: hidden; /* FIX OVERFLOW - era visible */
    box-shadow: none;
    border-bottom: 1px solid #e0e0e0;
    padding: 20px 15px;
    transition: background 0.2s ease;
}

.related-card-desktop:hover {
    background: rgba(255, 255, 255, 0.5);
}

.related-thumb-desktop {
    display: block;
    overflow: hidden;
    aspect-ratio: 1/1;
    background: #f0f0f0;
    margin-bottom: 12px;
    border-radius: 4px;
}

.related-thumb-desktop img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: none !important;
    transform: none !important;
}

.related-content-desktop {
    padding: 0;
}

.related-title-desktop {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 10px 0;
}

.related-title-desktop a {
    color: #151aca;
    text-decoration: none;
}

.related-title-desktop a:hover {
    color: #d00;
}

.related-time-desktop {
    display: inline-block;
    font-size: 11px;
    color: #666;
    background: #f5f5f5;
    padding: 4px 10px;
    border-radius: 4px;
}

.related-nav-desktop {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-top: 25px;
}

.related-nav-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 10px 18px;
    background: white;
    border: 2px solid #151aca;
    border-radius: 6px;
    color: #151aca;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
}

.related-nav-btn:hover:not(:disabled) {
    background: #151aca;
    color: white;
}

.related-nav-btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

.related-nav-btn svg {
    flex-shrink: 0;
}

.related-nav-info {
    font-size: 14px;
    color: #666;
    font-weight: 600;
}

.related-loading {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 30px;
    background: rgba(255,255,255,0.95);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
}

.loading-spinner {
    width: 24px;
    height: 24px;
    border: 3px solid #f3f3f3;
    border-top: 3px solid #151aca;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* ===================================================================
   FEED "MAIS POÇOS JÁ" - 70% CENTRALIZADO (795px)
   =================================================================== */

.feed-section-desktop-new {
    margin: 50px auto 40px auto;
    padding: 30px 0;
    border-top: 2px solid #e0e0e0;
    max-width: 795px !important; /* 70% de 1135px */
    width: 100%;
    grid-column: 1 / -1;
    overflow: hidden; /* FIX OVERFLOW */
}

.feed-container-desktop {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 30px;
    overflow: hidden; /* FIX OVERFLOW */
}

.feed-post {
    display: grid;
    grid-template-columns: 40% 1fr;
    gap: 20px;
    background: transparent;
    border-radius: 0;
    overflow: hidden; /* FIX OVERFLOW - era visible */
    box-shadow: none;
    border-bottom: 1px solid #e0e0e0;
    padding: 25px 0;
    transition: background 0.2s ease;
}

.feed-post:hover {
    background: rgba(255, 255, 255, 0.5);
}

.feed-post-thumb {
    display: block;
    overflow: hidden;
    aspect-ratio: 3 / 2;
    background: #f0f0f0;
    border-radius: 4px;
}

.feed-post-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: none !important;
    transform: none !important;
}

.feed-post-content {
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.feed-kicker {
    font-size: 11px;
    font-weight: 700;
    color: #d00;
    text-transform: uppercase;
    margin-bottom: 8px;
    letter-spacing: 0.5px;
}

.feed-post-title {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 10px 0;
}

.feed-post-title a {
    color: #151aca;
    text-decoration: none;
}

.feed-post-title a:hover {
    color: #d00;
}

.feed-excerpt {
    font-size: 14px;
    line-height: 1.4;
    color: #666;
    margin: 0 0 10px 0;
}

.feed-post-meta {
    display: flex;
    align-items: center;
    gap: 10px;
}

.time-label {
    display: inline-block;
    font-size: 11px;
    color: #666;
    background: #f5f5f5;
    padding: 4px 10px;
    border-radius: 4px;
}

.load-more-desktop {
    display: block;
    width: 100%;
    max-width: 300px;
    margin: 30px auto 0;
    padding: 14px 30px;
    background: #151aca;
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.load-more-desktop:hover:not(:disabled) {
    background: #00255a;
    transform: translateY(-2px);
}

.load-more-desktop:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.feed-ad-adsense {
    margin: 25px 0;
    padding: 0;
    text-align: left;
    width: 100%;
    overflow: hidden !important; /* FIX OVERFLOW - alterado de visible para hidden */
}

.feed-ad-adsense .publicidade-tag {
    background: #FF6600;
    color: white;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    padding: 4px 8px;
    border-radius: 3px;
    letter-spacing: 0.5px;
    display: inline-block;
    margin-bottom: 8px;
    text-align: left;
}

.feed-ad-adsense .publicidade-box {
    width: 100% !important;
    min-height: 100px !important;
    padding: 15px;
    background: #fafafa;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    overflow: hidden !important; /* FIX OVERFLOW - alterado de visible para hidden */
}

/* ===================================================================
   SIDEBAR - TAGS AUTOMÁTICAS (MÉTODO DA HOME)
   =================================================================== */

.td-pb-span4.td-main-sidebar {
    width: 345px !important;
    position: sticky !important;
    top: 120px !important;
    z-index: auto !important;
    align-self: flex-start !important;
    overflow: hidden; /* FIX OVERFLOW */
}

/* Widgets com fundo transparente */
.single-desktop .td-pb-span4.td-main-sidebar .widget {
    background: transparent !important;
    border-radius: 0;
    padding: 0;
    margin-bottom: 20px;
    box-shadow: none;
    position: relative;
    min-height: 250px;
    overflow: hidden; /* FIX OVERFLOW */
}

.single-desktop .td-pb-span4.td-main-sidebar .widget:last-child {
    margin-bottom: 0;
}

/* Widgets Custom HTML/Text */
.single-desktop .td-pb-span4.td-main-sidebar .widget_custom_html,
.single-desktop .td-pb-span4.td-main-sidebar .widget_text {
    padding: 0;
    background: transparent;
    box-shadow: none;
    border-radius: 0;
}

/* Conteúdo com padding-top para tag */
.single-desktop .td-pb-span4.td-main-sidebar .widget_custom_html .widget-content,
.single-desktop .td-pb-span4.td-main-sidebar .widget_text .textwidget {
    background: transparent;
    border-radius: 0;
    padding: 0;
    padding-top: 20px;
    box-shadow: none;
    position: relative;
}

/* TAG PUBLICIDADE AUTOMÁTICA - MÉTODO DA HOME */
.single-desktop .td-pb-span4.td-main-sidebar .widget_custom_html .widget-content::before,
.single-desktop .td-pb-span4.td-main-sidebar .widget_text .textwidget::before {
    content: "PUBLICIDADE";
    position: absolute;
    top: 0px;
    left: 0;
    background: #FF6600;
    color: white;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    padding: 4px 8px;
    border-radius: 3px;
    z-index: 10;
    font-family: 'Open Sans', Arial, sans-serif;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

/* ===================================================================
   RESPONSIVO
   =================================================================== */

@media (max-width: 1200px) {
    .main-grid-single {
        grid-template-columns: 1fr 300px;
        gap: 25px;
    }
    
    .post-body-desktop {
        width: 100%;
    }
    
    .related-content-area {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .td-pb-span4.td-main-sidebar {
        width: 300px !important;
    }
    
    .anuncio-topo {
        max-width: 100% !important;
    }
    
    .related-posts-desktop-new,
    .feed-section-desktop-new {
        max-width: 100% !important;
    }
}

@media (max-width: 1024px) {
    .main-grid-single {
        grid-template-columns: 1fr;
    }
    
    .td-pb-span4.td-main-sidebar {
        display: none;
    }
    
    .social-share-row-fixed {
        flex-direction: column;
        align-items: stretch;
    }
    
    .share-buttons-group,
    .whatsapp-cta-btn {
        width: 100%;
        order: initial;
    }
}

@media (max-width: 768px) {
    .post-title-single {
        font-size: 32px;
    }
    
    .related-content-area {
        grid-template-columns: 1fr;
    }
    
    .feed-post {
        grid-template-columns: 1fr;
    }
    
    .feed-post-content {
        padding: 15px 0;
    }
}

/* ===================================================================
   ACESSIBILIDADE
   =================================================================== */

.whatsapp-cta-btn:focus,
.share-btn:focus,
.related-nav-btn:focus,
.load-more-desktop:focus {
    outline: 2px solid rgba(0, 52, 130, 0.6);
    outline-offset: 2px;
}

/* ===================================================================
   PRINT
   =================================================================== */

@media print {
    .publicidade-cabecalho,
    .publicidade-topo-conteudo,
    .publicidade-base-conteudo,
    .publicidade-content-center,
    .publicidade-content-auto,
    .social-share-row-fixed,
    .related-nav-desktop,
    .load-more-desktop,
    .td-pb-span4.td-main-sidebar,
    .feed-ad-adsense,
    .anuncio-topo {
        display: none !important;
    }
}

/* === PATCH CRÍTICO p/ STICKY no Newspaper (v4.7.3) === */

/* 0) offset do topo (header + admin bar) */
:root { --pj-header-offset: 120px; }
body.admin-bar { --pj-wpadmin: 32px; }

/* 1) Garante sticky no desktop (pega as variações de sidebar) */
@media (min-width: 1024px) {
  .home-desktop .td-ss-main-sidebar,
  .home-desktop aside[id*="sidebar"],
  .home-desktop [class*="sidebar"] {
    position: sticky !important;
    top: calc(var(--pj-header-offset) + var(--pj-wpadmin, 0px)) !important;
    z-index: 4999 !important;
    align-self: flex-start !important; /* grid/flex seguro */
  }
}

/* 2) Se o tema aplicar inline fixed/absolute/transform, volta para sticky */
@media (min-width: 1024px) {
  .home-desktop .td-ss-main-sidebar[style*="position: fixed"],
  .home-desktop .td-ss-main-sidebar[style*="position: absolute"],
  .home-desktop .td-ss-main-sidebar[style*="transform"],
  .home-desktop aside[id*="sidebar"][style*="position: fixed"],
  .home-desktop aside[id*="sidebar"][style*="position: absolute"],
  .home-desktop aside[id*="sidebar"][style*="transform"] {
    position: sticky !important;
    top: calc(var(--pj-header-offset) + var(--pj-wpadmin, 0px)) !important;
    left: auto !important; right: auto !important; bottom: auto !important; transform: none !important;
  }
}

/* 3) ANCESTRAIS QUE QUEBRAM STICKY — REMOVER TABLE & OVERFLOW/TRANSFORM/CONTAIN */
.home-desktop .td-container,
.home-desktop .td-pb-row,
.home-desktop .td-pb-span8,
.home-desktop .td-pb-span4,
.home-desktop .td-ss-main-sidebar-wrap,
.home-desktop .td_block_wrap,
.home-desktop .tdc-row,
.home-desktop .tdc-column,
.home-desktop .tdc-content-wrap,
.home-desktop .container-desktop,
.home-desktop .main-grid,
.home-desktop .feed-area,
.home-desktop .highlights-desktop,
#td-outer-wrap, #td-content-wrap {
  overflow: visible !important;
  transform: none !important;
  contain: none !important;
  will-change: auto !important;
  position: static !important;
}

/* 4) REMOVER DISPLAY:TABLE NA LINHA/COLUNA DO NEWSPAPER (sticky não funciona dentro de table) */
.home-desktop .td-pb-row,
.home-desktop .tdc-row {
  display: block !important;
}
.home-desktop .td-pb-span4,
.home-desktop .tdc-column {
  display: block !important;
}

/* 5) Compatibilidade com grid/flex da sua grade principal */
.home-desktop .main-grid { align-items: flex-start !important; }

/* ============================================================
   FLOAT EDITORIAL DESKTOP - Poços Já
   Versão: 1.0.2 - CORRIGIDA margin-top 10px
   Data: 19/12/2024
   ============================================================ */

/* Imagens editoriais - FLOAT RIGHT 330px */
.single-desktop .post-content-desktop figure.wp-caption,
.single-desktop .post-content-desktop figure.wp-block-image,
.single-desktop .td-post-content figure.wp-caption,
.single-desktop .td-post-content figure.wp-block-image {
  float: right !important;
  max-width: 330px !important;
  width: auto !important;
  margin: 0 0 15px 20px !important;
  padding: 0 !important;
  clear: none !important;
  display: inline-block !important;
}

/* Imagens dentro do figure */
.single-desktop .post-content-desktop figure img,
.single-desktop .td-post-content figure img {
  float: none !important;
  margin: 0 !important;
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* Imagens panorâmicas/full - CENTRALIZADAS */
.single-desktop .post-content-desktop figure.size-full,
.single-desktop .post-content-desktop figure.aligncenter.size-large,
.single-desktop .td-post-content figure.size-full,
.single-desktop .td-post-content figure.aligncenter.size-large {
  float: none !important;
  max-width: 100% !important;
  width: 100% !important;
  margin: 15px auto !important;
  display: block !important;
}

/* Legendas - ABAIXO DA IMAGEM */
.single-desktop .post-content-desktop figcaption,
.single-desktop .post-content-desktop .wp-caption-text,
.single-desktop .td-post-content figcaption,
.single-desktop .td-post-content .wp-caption-text {
  clear: both !important;
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  
  /* Espaçamento - CORRIGIDO v1.0.2 */
  margin: 15px 0 15px 0 !important; /* 15px da imagem */
  padding: 0 0 0 12px !important;
  
  /* Estilo editorial */
  border-left: 4px solid #d00 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  color: #666 !important;
  font-style: italic !important;
  
  /* Quebra de linha */
  word-wrap: break-word !important;
  overflow-wrap: break-word !important;
  white-space: normal !important;
  
  /* Reset */
  float: none !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
}

/* Parágrafos sem clear */
.single-desktop .post-content-desktop p,
.single-desktop .td-post-content p {
  clear: none !important;
}

/* Clearfix no container */
.single-desktop .post-content-desktop::after,
.single-desktop .td-post-content::after {
  content: "";
  display: table;
  clear: both;
}

@media (min-width: 769px) {

  /* ============================================================
     LEGENDAS: Todas as imagens no desktop
     ============================================================ */
  .post-content figcaption,
  .post-content .wp-caption-text,
  article figcaption,
  article .wp-caption-text,
  .td-post-content figcaption,
  .td-post-content .wp-caption-text {
    /* ESPAÇAMENTO: 10px da imagem */
    margin: 10px 0 16px 0 !important;
    padding: 8px 0 8px 16px !important;
    
    /* Borda vermelha */
    border-left: 4px solid #d00 !important;
    border-right: none !important;
    border-top: none !important;
    border-bottom: none !important;
    background: transparent !important;
    
    /* Tipografia */
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: #666 !important;
    font-style: italic !important;
    font-weight: 400 !important;
    text-align: left !important;
    
    /* Layout */
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    clear: both !important;
    
    word-wrap: break-word !important;
  }

  /* ============================================================
     LEGENDAS: Imagens flutuantes (alignright/alignleft)
     ============================================================ */
  .post-content figure.alignright figcaption,
  .post-content figure.alignleft figcaption,
  .post-content .wp-caption.alignright .wp-caption-text,
  .post-content .wp-caption.alignleft .wp-caption-text {
    margin: 10px 0 10px 0 !important;
    padding: 8px 0 8px 16px !important;
    
    border-left: 4px solid #d00 !important;
    background: transparent !important;
    
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: #666 !important;
    font-style: italic !important;
    
    clear: none !important;
    width: 100% !important;
  }

}
/* ===================================================================
   SIDEBAR SINGLE DESKTOP - TAG PUBLICIDADE + QUADRO COM BORDA
   v1.0.0 - Estilos idênticos à Home Desktop
   =================================================================== */

/* RESET - Remove estilos conflitantes */
body .single-desktop .td-pb-span4.td-main-sidebar .widget *,
body .single-desktop .td-ss-main-sidebar .widget *,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget *,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget * {
    box-sizing: border-box !important;
}

/* ESPAÇAMENTO DOS WIDGETS - 60px entre eles */
body .single-desktop .td-pb-span4.td-main-sidebar .widget,
body .single-desktop .td-ss-main-sidebar .widget,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget {
    position: relative !important;
    margin-top: 0 !important;
    margin-bottom: 60px !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

/* Primeiro widget com margin-top 30px para a tag */
body .single-desktop .td-pb-span4.td-main-sidebar .widget:first-child,
body .single-desktop .td-ss-main-sidebar .widget:first-child,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget:first-child,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget:first-child {
    margin-top: 30px !important;
}

/* TAG PUBLICIDADE - acima do widget (::before) */
body .single-desktop .td-pb-span4.td-main-sidebar .widget::before,
body .single-desktop .td-ss-main-sidebar .widget::before,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget::before,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget::before {
    content: "PUBLICIDADE" !important;
    display: inline-block !important;
    position: absolute !important;
    top: -28px !important;
    left: 0 !important;
    background: #FF6600 !important;
    color: white !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    padding: 4px 8px !important;
    border-radius: 3px !important;
    z-index: 100 !important;
    font-family: 'Open Sans', Arial, sans-serif !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2) !important;
    letter-spacing: 0.5px !important;
    line-height: 1 !important;
}

/* QUADRO CINZA COM BORDA - 305x255px */
body .single-desktop .td-pb-span4.td-main-sidebar .widget .widget-content,
body .single-desktop .td-ss-main-sidebar .widget .widget-content,
body .single-desktop .td-pb-span4.td-main-sidebar .widget .textwidget,
body .single-desktop .td-ss-main-sidebar .widget .textwidget,
body .single-desktop .td-pb-span4.td-main-sidebar .widget > div:not(.widget-title),
body .single-desktop .td-ss-main-sidebar .widget > div:not(.widget-title),
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget .widget-content,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget .widget-content,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget .textwidget,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget .textwidget,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget > div:not(.widget-title),
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget > div:not(.widget-title) {
    width: 305px !important;
    height: 255px !important;
    background: #FAFAFA !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: 0 0 0 1px rgba(0,0,0,0.05) !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

/* Remove qualquer outro container interno */
body .single-desktop .td-pb-span4.td-main-sidebar .widget .widget-content > *,
body .single-desktop .td-ss-main-sidebar .widget .widget-content > *,
body .single-desktop .td-pb-span4.td-main-sidebar .widget .textwidget > *,
body .single-desktop .td-ss-main-sidebar .widget .textwidget > *,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget .widget-content > *,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget .widget-content > *,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget .textwidget > *,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget .textwidget > * {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ANÚNCIO - dimensões exatas 300x250px */
body .single-desktop .td-pb-span4.td-main-sidebar .widget ins.adsbygoogle,
body .single-desktop .td-ss-main-sidebar .widget ins.adsbygoogle,
body .single-desktop .td-pb-span4.td-main-sidebar .widget iframe,
body .single-desktop .td-ss-main-sidebar .widget iframe,
body .single-desktop .td-pb-span4.td-main-sidebar .widget img,
body .single-desktop .td-ss-main-sidebar .widget img,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget ins.adsbygoogle,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget ins.adsbygoogle,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget iframe,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget iframe,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget img,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget img {
    width: 300px !important;
    max-width: 300px !important;
    min-width: 300px !important;
    height: 250px !important;
    max-height: 250px !important;
    min-height: 250px !important;
    display: block !important;
    margin: 0 auto !important;
    border: none !important;
    padding: 0 !important;
}

/* Remove títulos de widgets */
body .single-desktop .td-pb-span4.td-main-sidebar .widget .widget-title,
body .single-desktop .td-ss-main-sidebar .widget .widget-title,
body .single-desktop .td-pb-span4.td-main-sidebar .widget h2,
body .single-desktop .td-ss-main-sidebar .widget h2,
body .single-desktop .td-pb-span4.td-main-sidebar .widget h3,
body .single-desktop .td-ss-main-sidebar .widget h3,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget .widget-title,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget .widget-title,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget h2,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget h2,
body .pj-newspaper-sidebar-static .td-pb-span4.td-main-sidebar .widget h3,
body .pj-newspaper-sidebar-static .td-ss-main-sidebar .widget h3 {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Ad Inserter - forçar dimensões corretas */
body .single-desktop .widget .ai-viewport-1,
body .single-desktop .widget .ai-viewport-2,
body .single-desktop .widget .ai-viewport-3,
body .single-desktop .widget [class*="ai-"],
body .single-desktop .widget .ad-inserter-block,
body .pj-newspaper-sidebar-static .widget .ai-viewport-1,
body .pj-newspaper-sidebar-static .widget .ai-viewport-2,
body .pj-newspaper-sidebar-static .widget .ai-viewport-3,
body .pj-newspaper-sidebar-static .widget [class*="ai-"],
body .pj-newspaper-sidebar-static .widget .ad-inserter-block {
    width: 300px !important;
    max-width: 300px !important;
    height: 250px !important;
    max-height: 250px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

/* ============================================================
   CLS FIX v5.7.0 - CUMULATIVE LAYOUT SHIFT FIXES
   Problema: CLS > 0.1 
   Solução: Reservar espaço para elementos dinâmicos
   
   COMPATIBILIDADE: 
   - PJ Ads Manager (já usa width/height nas imagens)
   - Poços Já Features (controla .pj-vertical)
   - Ad Inserter (blocos com dimensões fixas)
   ============================================================ */

/* --- ANÚNCIOS NO CONTEÚDO: min-height para reservar espaço --- */
.single-desktop .publicidade-topo-conteudo,
.single-desktop .publicidade-base-conteudo,
.single-desktop .publicidade-content-center,
.single-desktop .publicidade-content-auto {
    min-height: 280px; /* CLS FIX: altura do 300x250 + padding */
    contain: layout style; /* CLS FIX: isola reflows */
}

/* --- FEED SECTION: altura mínima --- */
.feed-section-desktop-new {
    min-height: 400px; /* CLS FIX */
    contain: layout;
}

.feed-post {
    min-height: 150px; /* CLS FIX */
}

/* --- RELACIONADOS: altura mínima --- */
.related-posts-desktop-new {
    min-height: 350px; /* CLS FIX */
    contain: layout;
}

.related-card-desktop {
    min-height: 200px; /* CLS FIX */
}

/* --- IMAGENS NO CONTEÚDO: aspect-ratio para imagens sem dimensão --- */
/* IMPORTANTE: Não aplica em .pj-vertical (plugin Poços Já Features controla) */
.single-desktop .post-content-desktop img:not([width]):not(.pj-vertical):not(.pj-horizontal),
.single-desktop .td-post-content img:not([width]):not(.pj-vertical):not(.pj-horizontal) {
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

/* --- HEADER DO POST: reserva espaço --- */
.post-title-single {
    min-height: 1.25em; /* CLS FIX */
}

.post-meta-double {
    min-height: 50px; /* CLS FIX */
}

/* --- BOTÕES COMPARTILHAMENTO: tamanho fixo --- */
.social-share-row-fixed {
    min-height: 48px; /* CLS FIX */
}

/* --- SIDEBAR WIDGETS: já tem 255px height, adicionar contain --- */
body .single-desktop .td-pb-span4.td-main-sidebar .widget,
body .single-desktop .td-ss-main-sidebar .widget {
    contain: layout style;
}

/* --- AdSense unfilled: colapsa suavemente --- */
.single-desktop ins.adsbygoogle[data-ad-status="unfilled"] {
    min-height: 0 !important;
    height: 0 !important;
}

.single-desktop .publicidade-box:has(ins.adsbygoogle[data-ad-status="unfilled"]),
.single-desktop .publicidade-topo-conteudo:has(ins.adsbygoogle[data-ad-status="unfilled"]),
.single-desktop .publicidade-base-conteudo:has(ins.adsbygoogle[data-ad-status="unfilled"]) {
    min-height: auto !important;
    padding: 0 !important;
}

/* ===================================================================
   PUBLICIDADE-BOX-HEADER
   Classe especifica para anuncio do cabecalho
   - Fundo cinza sangra nas laterais (fullbleed)
   - Sem borda
   - Conteudo centralizado em 1200px
   
   Tamanhos:
   - AdSense: 1200x250px
   - Campanhas: ate 4x 1200x125px
   =================================================================== */

/* Container externo - fundo sangra */
.publicidade-cabecalho.publicidade--fullbleed {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    background: #fafafa !important;
    padding: 15px 0 !important;
}

/* Container interno - conteudo centralizado */
.publicidade-box-header {
    display: block !important;
    width: 100% !important;
    max-width: 1200px !important;
    min-height: 125px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
    text-align: center !important;
    background: transparent !important;
    border: none !important;
    overflow: hidden !important;
}

/* Stack de campanhas */
.publicidade-box-header .ad-inserter-block {
    display: block !important;
    margin: 0 auto 10px auto !important;
}

.publicidade-box-header .ad-inserter-block:last-child {
    margin-bottom: 0 !important;
}

/* AdSense centralizado */
.publicidade-box-header ins.adsbygoogle {
    display: block !important;
    margin: 0 auto !important;
}

/* Quando AdSense nao preenche, colapsa */
.publicidade-cabecalho.publicidade--fullbleed:has(ins.adsbygoogle[data-ad-status="unfilled"]) {
    min-height: auto !important;
    padding: 0 !important;
    background: transparent !important;
}

/* ============================================================
   FIM CLS FIX
   ============================================================ */
