.eltdf-content .eltdf-content-inner > .eltdf-container > .eltdf-container-inner { padding: 90px 0 50px;}h5 { font-family: Montserrat;font-size: 13px;letter-spacing: 0.16em;text-transform: uppercase;}h6 { font-family: Montserrat;font-size: 10px;font-weight: 300;letter-spacing: 0.12em;}.cf7_custom_style_1 input.wpcf7-form-control.wpcf7-text, .cf7_custom_style_1 input.wpcf7-form-control.wpcf7-number, .cf7_custom_style_1 input.wpcf7-form-control.wpcf7-date, .cf7_custom_style_1 textarea.wpcf7-form-control.wpcf7-textarea, .cf7_custom_style_1 select.wpcf7-form-control.wpcf7-select, .cf7_custom_style_1 input.wpcf7-form-control.wpcf7-quiz { background-color: rgba(255, 255, 255, 1);}.cf7_custom_style_1 input.wpcf7-form-control.wpcf7-text:focus, .cf7_custom_style_1 input.wpcf7-form-control.wpcf7-number:focus, .cf7_custom_style_1 input.wpcf7-form-control.wpcf7-date:focus, .cf7_custom_style_1 textarea.wpcf7-form-control.wpcf7-textarea:focus, .cf7_custom_style_1 select.wpcf7-form-control.wpcf7-select:focus, .cf7_custom_style_1 input.wpcf7-form-control.wpcf7-quiz:focus { background-color: rgba(255, 255, 255, 1);}.cf7_custom_style_2 input.wpcf7-form-control.wpcf7-text, .cf7_custom_style_2 input.wpcf7-form-control.wpcf7-number, .cf7_custom_style_2 input.wpcf7-form-control.wpcf7-date, .cf7_custom_style_2 textarea.wpcf7-form-control.wpcf7-textarea, .cf7_custom_style_2 select.wpcf7-form-control.wpcf7-select, .cf7_custom_style_2 input.wpcf7-form-control.wpcf7-quiz { color: #ffffff;}.cf7_custom_style_2 input.wpcf7-form-control.wpcf7-text:focus, .cf7_custom_style_2 input.wpcf7-form-control.wpcf7-number:focus, .cf7_custom_style_2 input.wpcf7-form-control.wpcf7-date:focus, .cf7_custom_style_2 textarea.wpcf7-form-control.wpcf7-textarea:focus, .cf7_custom_style_2 select.wpcf7-form-control.wpcf7-select:focus, .cf7_custom_style_2 input.wpcf7-form-control.wpcf7-quiz:focus { color: #ffffff;}.eltdf-page-footer .eltdf-footer-top-holder { background-color: #000000;}.eltdf-page-footer .eltdf-footer-bottom-holder { background-color: #000000;}.eltdf-header-bottom nav.eltdf-header-bottom-menu > ul > li > a { letter-spacing: px;}.eltdf-header-bottom nav.eltdf-header-bottom-menu ul li ul li a { letter-spacing: px;}.eltdf-header-vertical-sliding nav.eltdf-header-bottom-menu ul li ul li ul li a { letter-spacing: px;}.eltdf-mobile-header .eltdf-mobile-nav .eltdf-grid > ul > li > a, .eltdf-mobile-header .eltdf-mobile-nav .eltdf-grid > ul > li > h6 { letter-spacing: 1.5px;text-transform: uppercase;}.eltdf-mobile-header .eltdf-mobile-nav ul ul li a, .eltdf-mobile-header .eltdf-mobile-nav ul ul li h6 { font-size: 10px;letter-spacing: 1.5px;text-transform: uppercase;}.eltdf-header-box .eltdf-top-bar-background { height: 91px;}.eltdf-page-header .eltdf-menu-area { background-color: rgba(0, 0, 0, 1);}.eltdf-side-menu { padding: 120px 65px 160px;}

/* ── Modo desktop forçado (?desktop=1) ──────────────────────────────── */
.rcb-force-desktop .eltdf-mobile-header { display: none !important; }
.rcb-force-desktop header.eltdf-page-header { display: block !important; }

/* ── Barra de busca dropdown ─────────────────────────────────────────── */
.rcb-search-bar {
    position: fixed;
    top: 90px;
    left: 0;
    right: 0;
    z-index: 9998;
    background: #111;
    box-shadow: 0 6px 24px rgba(0,0,0,0.35);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-8px);
    transition: opacity 0.22s ease, transform 0.22s ease;
}
.rcb-search-bar.rcb-search-open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}
.rcb-search-bar-inner {
    max-width: 800px;
    margin: 0 auto;
    padding: 14px 40px;
}
.rcb-search-bar form {
    display: flex;
    align-items: center;
    gap: 12px;
    border-bottom: 1px solid #444;
}
.rcb-search-bar input[type="text"] {
    flex: 1;
    border: none;
    outline: none;
    font-family: Montserrat, sans-serif;
    font-size: 28px;
    font-weight: 300;
    letter-spacing: 0.04em;
    color: #fff;
    background: transparent;
    padding: 8px 0;
    margin: 0;
    line-height: 1.4;
}
.rcb-search-bar input[type="text"]::placeholder {
    color: #555;
    font-size: 28px;
    font-weight: 300;
}
.rcb-search-bar button[type="submit"] {
    background: none;
    border: none;
    cursor: pointer;
    color: #888;
    padding: 0;
    display: flex;
    align-items: center;
    transition: color 0.2s;
    flex-shrink: 0;
}
.rcb-search-bar button[type="submit"]:hover {
    color: #fff;
}
.rcb-search-close {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 20px;
    line-height: 1;
    color: #555;
    padding: 0;
    margin-left: 4px;
    transition: color 0.2s;
    flex-shrink: 0;
}
.rcb-search-close:hover {
    color: #fff;
}

/* Mega-menu: desativa pointer-events quando escondido */
.eltdf-drop-down .second {
    pointer-events: none;
}
/* Abre no hover via CSS puro, reativa pointer-events */
.eltdf-drop-down > ul > li:hover > .second {
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
    height: auto !important;
    pointer-events: auto;
}

/* Reduz espaço acima e abaixo do conteúdo do rodapé */
.eltdf-footer-top-holder .eltdf-footer-top-inner {
    padding-top: 0 !important;
    padding-bottom: 10px !important;
}
.eltdf-footer-bottom-holder {
    margin-top: 0 !important;
}
.eltdf-footer-top-holder .widget {
    margin-bottom: 0 !important;
}
/* Zera espaços extras no rodapé: separadores, gap inline do <a>, title-holder */
.eltdf-footer-top-holder .eltdf-separator { margin: 0 !important; }
.eltdf-footer-top-holder .widget .eltdf-widget-title-holder { margin-top: 0 !important; }
#media_image-12 a { display: block; margin: 0 !important; padding: 0 !important; }

/* ── Controle de espaçamento do logotipo no rodapé ─────────────────── */
/* Espaço entre a borda superior do rodapé e o logotipo */
#media_image-12 { font-size: 0; line-height: 0; padding: 0 !important; margin-top: 40px !important; }
/* Espaço entre o logotipo e os links abaixo */
#media_image-12 { margin-bottom: 40px !important; }

/* Remove espaço entre header e carrossel, e antes do rodapé */
.eltdf-content .eltdf-content-inner > .eltdf-full-width > .eltdf-full-width-inner {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Carousel layout8: conteúdo sempre visível */
.eltdf-layout8-item .eltdf-ni-content {
    opacity: 1 !important;
}

/* Gradiente na base da imagem para legibilidade do título */
.eltdf-layout8-item .eltdf-ni-image-holder::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(to bottom, transparent 30%, rgba(0,0,0,0.85) 100%);
    pointer-events: none;
}

/* Logo imagem */
.eltdf-logo-wrapper a .rcb-logo-img,
.eltdf-mobile-logo-wrapper a .rcb-logo-img,
#media_image-12 a .rcb-logo-img {
    display: block;
    width: auto;
    height: auto;
}
.eltdf-logo-wrapper a .rcb-logo-img--header { height: 45px; max-width: 220px; }
#media_image-12 { text-align: center; }
#media_image-12 a .rcb-logo-img--footer { height: 90px; margin: 0 auto; }
.eltdf-mobile-logo-wrapper a .rcb-logo-img--mobile { height: 50px; }
.eltdf-logo-wrapper a:hover .rcb-logo-img,
.eltdf-mobile-logo-wrapper a:hover .rcb-logo-img,
#media_image-12 a:hover .rcb-logo-img { opacity: 0.8; }

/* Agenda e Eventos */
.rcb-agenda-list {
    width: 100%;
    padding: 4px 0;
}
.rcb-agenda-item {
    display: flex;
    align-items: center;
    gap: 0;
    padding: 20px 8px 20px 0;
    border-bottom: 1px solid #e4e4e4;
    text-decoration: none;
    color: #000;
    transition: background-color 0.2s ease, padding-left 0.2s ease;
}
.rcb-agenda-item:first-child {
    border-top: 1px solid #e4e4e4;
}
.rcb-agenda-item:hover {
    background-color: #f7f7f7;
    padding-left: 8px;
}
.rcb-agenda-date {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 58px;
    text-align: center;
    line-height: 1;
    padding-right: 22px;
}
.rcb-agenda-day {
    font-family: Vidaloka, serif;
    font-size: 38px;
    color: #000;
    line-height: 1;
}
.rcb-agenda-month {
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #000;
    margin-top: 3px;
}
.rcb-agenda-year {
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    letter-spacing: 0.08em;
    color: #aaa;
    margin-top: 2px;
}
.rcb-agenda-info {
    flex: 1;
    border-left: 1px solid #ddd;
    padding-left: 22px;
}
.rcb-agenda-title {
    font-family: Vidaloka, serif;
    font-size: 17px;
    font-weight: normal;
    margin: 0 0 6px;
    color: #000;
    line-height: 1.3;
}
.rcb-agenda-local {
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #999;
}
.rcb-agenda-local i {
    margin-right: 5px;
    color: #bbb;
}
.rcb-agenda-arrow {
    font-size: 13px;
    color: #ccc;
    margin-left: 18px;
    transition: color 0.2s, transform 0.2s;
}
.rcb-agenda-item:hover .rcb-agenda-arrow {
    color: #000;
    transform: translateX(5px);
}

/* Banners laterais */
.rcb-banner-widget {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-top: 24px;
}
.rcb-banner-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 200px;
    border: 1px dashed #bbb;
    text-decoration: none;
    transition: border-color 0.2s, background-color 0.2s;
}
.rcb-banner-placeholder:hover {
    border-color: #888;
    background-color: #f9f9f9;
}
.rcb-banner-label {
    font-family: Montserrat, sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #bbb;
}
.rcb-banner-size {
    font-family: Montserrat, sans-serif;
    font-size: 9px;
    letter-spacing: 0.1em;
    color: #d0d0d0;
    margin-top: 6px;
}

/* Ícones sociais — Nos Siga */
.rcb-social-icons {
    display: flex;
    gap: 18px;
    align-items: center;
    justify-content: center;
    padding: 6px 0;
}
.rcb-social-icons a {
    color: #000;
    font-size: 17px;
    line-height: 1;
    transition: opacity 0.2s ease;
}
.rcb-social-icons a:hover {
    opacity: 0.45;
}

/* eltdf-row-grid-section tem z-index:20 que sobrepõe o carrossel.
   O carrossel não tem z-index definido, portanto perde a disputa de eventos.
   Solução: elevar o carrossel acima de z-index:20. */
.eltdf-post-carousel3 {
    position: relative;
    z-index: 21;
}

/* Header mobile — grid 100% para hambúrguer ir à borda esquerda real */
.eltdf-mobile-header .eltdf-grid {
    width: 100% !important;
    padding: 0 15px;
    box-sizing: border-box;
}

/* Header mobile — fundo preto igual ao desktop */
.eltdf-mobile-header .eltdf-mobile-header-inner {
    background-color: #000 !important;
    border-bottom-color: #333 !important;
}
.eltdf-mobile-header .eltdf-mobile-nav {
    background-color: #000 !important;
    border-bottom-color: #333 !important;
}

/* Ícone hambúrguer e texto */
.eltdf-mobile-header .eltdf-mobile-menu-opener a,
.eltdf-mobile-header .eltdf-mobile-menu-opener.eltdf-mobile-menu-opened a {
    color: #fff !important;
}

/* Links do menu mobile */
.eltdf-mobile-header .eltdf-mobile-nav ul li a,
.eltdf-mobile-header .eltdf-mobile-nav ul li h6 {
    color: #ccc !important;
    border-bottom-color: #333 !important;
}
.eltdf-mobile-header .eltdf-mobile-nav ul li a:hover,
.eltdf-mobile-header .eltdf-mobile-nav ul li h6:hover,
.eltdf-mobile-header .eltdf-mobile-nav ul ul li.current-menu-ancestor > a,
.eltdf-mobile-header .eltdf-mobile-nav ul ul li.current-menu-item > a,
.eltdf-mobile-header .eltdf-mobile-nav .eltdf-grid > ul > li.eltdf-active-item > a,
.eltdf-mobile-header .eltdf-mobile-nav .eltdf-grid > ul > li.eltdf-active-item > h6 {
    color: #fff !important;
}

/* Busca dentro do menu mobile */
.rcb-mobile-search {
    display: flex;
    align-items: center;
    border-top: 1px solid #333;
    margin-top: 12px;
    padding: 4px;
    gap: 8px;
}
.rcb-mobile-search input[type="text"] {
    flex: 1;
    background: transparent;
    border: none;
    border-bottom: 1px solid #555;
    outline: none;
    color: #ccc;
    font-family: Montserrat, sans-serif;
    font-size: 11px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    padding: 16px 0;
    height: auto;
    line-height: 1.4;
    box-sizing: border-box;
}
.rcb-mobile-search input[type="text"]::placeholder {
    color: #555;
}
.rcb-mobile-search button {
    background: none;
    border: none;
    cursor: pointer;
    padding: 12px 0;
    color: #888;
    font-size: 16px;
    display: flex;
    align-items: center;
}
.rcb-mobile-search button:hover {
    color: #fff;
}

.rcb-agenda-standalone {
    max-width: 1100px;
    margin: 0 auto;
    padding: 30px 15px;
}

/* ── Single post ─────────────────────────────────────────────────────── */

/* Barra de título com parallax */
.eltdf-title-holder {
    position: relative;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
}
.eltdf-title-wrapper {
    display: flex;
    align-items: flex-end;
}
.eltdf-title-inner {
    width: 100%;
    padding-bottom: 16px;
}
.eltdf-breadcrumbs {
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #fff;
}
.eltdf-breadcrumbs a {
    color: #fff;
    text-decoration: none;
    opacity: 0.75;
}
.eltdf-breadcrumbs a:hover { opacity: 1; }
.eltdf-breadcrumbs .eltdf-current { opacity: 1; }
.eltdf-delimiter { margin: 0 4px; }

/* Imagem destaque do post — full width acima do grid */
.eltdf-single-featured-image { width: 100%; line-height: 0; }
.eltdf-single-featured-image img { width: 100%; height: auto; display: block; }

/* Imagem destaque do post */
.eltdf-post-image img { width: 100%; height: auto; display: block; }

/* Meta topo: data, autor, comentários */
.eltdf-post-info-top {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 22px 0 14px;
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #999;
    border-bottom: 1px solid #e8e8e8;
    margin-bottom: 28px;
}
.eltdf-post-info-top a { color: #999; text-decoration: none; }
.eltdf-post-info-top a:hover { color: #000; }
.eltdf-post-info-top > div::after,
.eltdf-post-info > div::after { content: none !important; }
.eltdf-post-info-author-text { margin-right: 4px; }

@media (max-width: 600px) {
    .eltdf-post-info-top {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
        padding: 16px 0 12px;
    }
}

/* Título do post — h2 é exclusivo do single.php, h3/h4 são usados nas news da home */
h2.eltdf-post-title.entry-title {
    font-family: Vidaloka, serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 1.25;
    margin: 0 0 28px;
    color: #111;
}

/* Conteúdo do post */
.wpb-content-wrapper h2,
.eltdf-post-text-main h2 {
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.4;
    color: #111;
    margin: 32px 0 12px;
}
.wpb-content-wrapper p,
.eltdf-post-text-main p {
    font-family: Montserrat, sans-serif;
    font-size: 14px;
    line-height: 1.9;
    color: #444;
    margin-bottom: 20px;
}
.wpb-content-wrapper blockquote,
.eltdf-post-text-main blockquote {
    border-left: 3px solid #000;
    margin: 30px 0 30px 24px;
    padding: 4px 0 4px 24px;
    font-family: Vidaloka, serif;
    font-size: 22px;
    font-style: italic;
    color: #222;
    line-height: 1.55;
}

/* Tags e compartilhamento */
.eltdf-post-info-bottom {
    display: flex;
    flex-direction: column;
    gap: 28px;
    padding: 20px 0;
    margin-top: 28px;
}
.eltdf-tags-holder { display: flex; align-items: center; gap: 8px; }
.eltdf-tags-label {
    font-family: Montserrat, sans-serif;
    font-size: 13px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #555;
    white-space: nowrap;
}
.eltdf-tags a {
    display: inline-block;
    font-family: Montserrat, sans-serif;
    font-size: 9px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #555;
    border: 1px solid #ccc;
    padding: 4px 10px;
    margin: 3px 3px 3px 0;
    text-decoration: none;
    transition: border-color 0.2s, color 0.2s;
}
.eltdf-tags a:hover { border-color: #000; color: #000; }

/* Barra de compartilhamento sticky */
.eltdf-share-sticky {
    position: fixed;
    left: 60px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    z-index: 50;
}
.eltdf-share-sticky-label {
    writing-mode: vertical-lr;
    transform: rotate(180deg);
    font-family: Montserrat, sans-serif;
    font-size: 12px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #aaa;
}
.eltdf-share-sticky-icons {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}
.eltdf-share-sticky-icons li a {
    font-size: 22px;
    color: #888;
    text-decoration: none;
    display: block;
    line-height: 1;
    transition: color 0.2s;
}
.eltdf-share-sticky-icons li a:hover { color: #000; }

.rcb-share-insta { position: relative; }
.rcb-share-insta[data-rcb-copied]::after {
    content: 'Copiado!';
    position: absolute;
    left: calc(100% + 10px);
    top: 50%;
    transform: translateY(-50%);
    background: #333;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-size: 11px;
    letter-spacing: 0.05em;
    white-space: nowrap;
    padding: 4px 8px;
    border-radius: 3px;
    pointer-events: none;
}

/* Bio do autor */
.eltdf-author-description {
    background: #f8f8f8;
    padding: 30px;
    margin: 40px 0;
}
.eltdf-author-description-content {
    display: flex;
    gap: 24px;
    align-items: flex-start;
}
.eltdf-author-description-image img {
    border-radius: 50%;
    width: 80px;
    height: 80px;
    object-fit: cover;
}
.eltdf-author-name {
    font-family: Vidaloka, serif;
    font-size: 17px;
    font-weight: 400;
    margin: 0 0 8px;
}
.eltdf-author-name a { color: #111; text-decoration: none; }
.eltdf-author-text p {
    font-family: Montserrat, sans-serif;
    font-size: 12px;
    color: #666;
    margin: 0;
    line-height: 1.7;
}

/* Navegação anterior / próximo */
.eltdf-blog-single-navigation {
    border-top: none;
    padding: 14px 0;
    margin: 30px 0;
}
.eltdf-blog-single-navigation-inner {
    display: flex;
    justify-content: space-between;
}
.eltdf-blog-single-prev,
.eltdf-blog-single-next {
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #333;
    text-decoration: none;
    transition: opacity 0.2s;
}
.eltdf-blog-single-prev:hover,
.eltdf-blog-single-next:hover { opacity: 0.5; }
.eltdf-blog-single-prev::before { content: '← '; }
.eltdf-blog-single-next::after  { content: ' →'; }

/* Single: reduz espaço inferior antes do footer */
.single .eltdf-content .eltdf-content-inner > .eltdf-container > .eltdf-container-inner { padding-bottom: 0; }

/* Posts relacionados */
.eltdf-related-posts-holder { margin: 0; }
.eltdf-related-posts-holder .eltdf-related-posts-holder-inner { padding: 0 0 26px; }
.eltdf-related-posts-title h5 {
    font-family: Montserrat, sans-serif;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin: 0 0 24px;
}
.eltdf-related-posts-inner {
    display: flex;
    gap: 20px;
}
.eltdf-related-post {
    flex: 1;
    min-width: 0;
}
.eltdf-related-post-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    margin-bottom: 12px;
}
.eltdf-related-post-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.eltdf-related-post .eltdf-post-info {
    display: flex;
    gap: 12px;
    font-family: Montserrat, sans-serif;
    font-size: 9px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #999;
    margin-bottom: 8px;
}
.eltdf-related-post .eltdf-post-info a { color: #999; text-decoration: none; }
.eltdf-related-post .entry-title {
    font-family: Vidaloka, serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}
.eltdf-related-post .entry-title a { color: #111; text-decoration: none; }
.eltdf-related-post .entry-title a:hover { opacity: 0.65; }

/* Sidebar */
.eltdf-sidebar .widget { margin-bottom: 36px; }
.eltdf-sidebar .eltdf-widget-title-holder { margin-bottom: 8px; }
.wpb_widgetised_column .widget.eltdf-blog-list-widget .eltdf-widget-title-holder,
aside.eltdf-sidebar .widget.eltdf-blog-list-widget .eltdf-widget-title-holder { margin-bottom: 8px; }
.eltdf-blog-list-widget .eltdf-small-space .eltdf-outer-space .eltdf-item-space { margin-bottom: 24px; }
.eltdf-sidebar .eltdf-widget-title {
    font-family: Montserrat, sans-serif;
    font-size: 11px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    border-bottom: 1px solid #e8e8e8;
    padding-bottom: 12px;
    margin-bottom: 8px;
}
.eltdf-sidebar ul { list-style: none; margin: 0; padding: 0; }
.eltdf-sidebar ul li {
    font-family: Montserrat, sans-serif;
    font-size: 11px;
    color: #555;
    padding: 6px 0;
    border-bottom: 1px solid #f0f0f0;
}
.eltdf-sidebar .eltdf-blog-list li { border-bottom: none; padding: 0; }
.rcb-col-nav { display: flex; justify-content: center; gap: 16px; margin-top: 10px; }
.rcb-col-btn {
    background: none;
    border: 1px solid #ccc;
    color: #777;
    width: 30px; height: 30px;
    cursor: pointer;
    font-size: 15px;
    line-height: 1;
    transition: color 0.2s, border-color 0.2s;
}
.rcb-col-btn:hover { color: #111; border-color: #111; }
.eltdf-sidebar ul li a { color: #555; text-decoration: none; }
.eltdf-sidebar ul li a:hover { color: #000; }
.eltdf-sidebar .searchform .input-holder {
    display: flex;
    border: 1px solid #ddd;
}
.eltdf-sidebar .searchform .search-field {
    flex: 1;
    border: none;
    padding: 10px 14px;
    font-family: Montserrat, sans-serif;
    font-size: 11px;
    outline: none;
}
.eltdf-sidebar .searchform .eltdf-search-submit {
    background: none;
    border: none;
    padding: 0 14px;
    cursor: pointer;
    color: #666;
}

/* ── Comentários ─────────────────────────────────────────────────────── */
.eltdf-comment-holder {
    margin-top: 40px;
    padding-top: 32px;
    border-top: 1px solid #e8e8e8;
}
#comments { scroll-margin-top: 100px; }
.rcb-comments-title {
    font-family: Montserrat, sans-serif;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin: 0 0 24px;
    color: #111;
    font-weight: 600;
}
#cancel-comment-reply-link {
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    letter-spacing: 0.1em;
    color: #888;
    text-decoration: none;
}
#cancel-comment-reply-link:hover { color: #000; }
.rcb-cf-cancel { font-weight: 400; }
.rcb-comment-list {
    list-style: none;
    margin: 0 0 8px;
    padding: 0;
}
.rcb-comment {
    padding: 22px 0;
    border-bottom: 1px solid #f0f0f0;
}
.rcb-comment:first-child { border-top: 1px solid #f0f0f0; }
.rcb-comment-inner {
    display: flex;
    gap: 16px;
    align-items: flex-start;
}
.rcb-comment-avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #f0ebe4;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Vidaloka, serif;
    font-size: 18px;
    color: #b0906a;
}
.rcb-comment-body { flex: 1; min-width: 0; }
.rcb-comment-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 8px;
}
.rcb-comment-author {
    font-family: Vidaloka, serif;
    font-size: 15px;
    color: #111;
}
.rcb-comment-date {
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    letter-spacing: 0.1em;
    color: #aaa;
    text-transform: uppercase;
}
.rcb-comment-reply-wrap a,
.comment-reply-link {
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #888;
    text-decoration: none;
    border: 1px solid #ddd;
    padding: 3px 9px;
    transition: color 0.2s, border-color 0.2s;
}
.rcb-comment-reply-wrap a:hover,
.comment-reply-link:hover { color: #000; border-color: #000; }
.rcb-comment-pending {
    font-family: Montserrat, sans-serif;
    font-size: 11px;
    color: #b0906a;
    font-style: italic;
    margin: 0 0 6px;
}
.rcb-comment-text p {
    font-family: Montserrat, sans-serif;
    font-size: 14px;
    line-height: 1.8;
    color: #444;
    margin: 0 0 8px;
}
.rcb-comment-text p:last-child { margin-bottom: 0; }
.rcb-comment-list .children {
    list-style: none;
    margin: 0;
    padding: 0 0 0 60px;
}
.rcb-comment-list .children .rcb-comment { border-top: none; border-bottom: 1px solid #f0f0f0; }
.rcb-comments-list-wrap { margin-bottom: 48px; }
.rcb-cf-row {
    display: flex;
    gap: 20px;
    margin-bottom: 14px;
}
.rcb-cf-row .rcb-cf-field { flex: 1; min-width: 0; margin-bottom: 0; }
.rcb-cf-field {
    margin: 0 0 14px;
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.rcb-cf-field--inline {
    flex-direction: row;
    align-items: center;
    gap: 8px;
}
.rcb-cf-field label {
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #555;
    white-space: nowrap;
    flex-shrink: 0;
}
.rcb-cf-field .required { color: #c00; }
.rcb-cf-field input[type="text"],
.rcb-cf-field input[type="email"] {
    border: none;
    border-bottom: 1px solid #ddd;
    padding: 0 0 4px;
    height: 26px;
    box-sizing: border-box;
    font-family: Montserrat, sans-serif;
    font-size: 13px;
    line-height: 1;
    color: #111;
    background: transparent;
    outline: none;
    width: 100%;
    min-width: 0;
    transition: border-color 0.2s;
}
.rcb-cf-field input[type="text"]:focus,
.rcb-cf-field input[type="email"]:focus { border-bottom-color: #000; }
.rcb-cf-field textarea {
    border: 1px solid #e0e0e0;
    padding: 10px;
    font-family: Montserrat, sans-serif;
    font-size: 13px;
    color: #111;
    background: #fafafa;
    outline: none;
    width: 100%;
    resize: vertical;
    line-height: 1.7;
    box-sizing: border-box;
    transition: border-color 0.2s, background 0.2s;
}
.rcb-cf-field textarea:focus { border-color: #000; background: #fff; }
.rcb-cf-submit,
#submit {
    font-family: Montserrat, sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #fff;
    background: #111;
    border: none;
    padding: 13px 32px;
    cursor: pointer;
    transition: background 0.2s;
}
.rcb-cf-submit:hover,
#submit:hover { background: #444; }
.form-submit { margin: 0; }
.comment-form-cookies-consent {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 0 0 16px;
}
.comment-form-cookies-consent input[type="checkbox"] {
    width: 12px;
    height: 12px;
    flex-shrink: 0;
    margin: 0;
    accent-color: #111;
}
.comment-form-cookies-consent label {
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    letter-spacing: 0.06em;
    color: #aaa;
    text-transform: none;
    white-space: normal;
    line-height: 1.4;
}

/* Mobile — largura do container mais aproveitada */
@media only screen and (max-width: 680px) {
    .single .eltdf-container-inner,
    .single .eltdf-grid,
    .single .eltdf-row-grid-section {
        width: 94% !important;
    }
}
@media only screen and (max-width: 480px) {
    .single .eltdf-container-inner,
    .single .eltdf-grid,
    .single .eltdf-row-grid-section {
        width: 92% !important;
    }
}

/* ── Páginas estáticas (page.php) ────────────────────────────────────── */
.rcb-page-holder {
    padding: 64px 20px 80px;
}
.rcb-page-inner {
    max-width: 760px;
    margin: 0 auto;
}
.rcb-page-content {
    font-family: Montserrat, sans-serif;
    font-size: 15px;
    line-height: 1.85;
    color: #333;
}
.rcb-page-content p {
    margin: 0 0 20px;
}
.rcb-page-content h2 {
    font-family: Vidaloka, serif;
    font-size: 22px;
    font-weight: 400;
    color: #111;
    margin: 40px 0 14px;
    line-height: 1.3;
}
.rcb-page-content h3 {
    font-family: Montserrat, sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #111;
    margin: 32px 0 10px;
}
.rcb-page-content ul,
.rcb-page-content ol {
    margin: 0 0 20px;
    padding-left: 24px;
}
.rcb-page-content li {
    margin-bottom: 8px;
}
/* p dentro de li vira inline para não quebrar o bullet em linha separada */
.eltdf-post-text-main li > p,
.rcb-page-content li > p {
    display: inline;
    margin: 0;
}
.rcb-page-content a {
    color: #111;
    text-decoration: underline;
}
.rcb-page-content a:hover {
    color: #555;
}
.rcb-page-content strong {
    font-weight: 700;
    color: #111;
}
.rcb-page-content hr {
    border: none;
    border-top: 1px solid #e8e8e8;
    margin: 40px 0;
}

/* ── Página 404 ──────────────────────────────────────────────────────── */
.rcb-404-holder {
    min-height: 60vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 80px 20px;
}
.rcb-404-inner {
    text-align: center;
    max-width: 520px;
}
.rcb-404-number {
    display: block;
    font-family: Vidaloka, serif;
    font-size: 120px;
    font-weight: 400;
    line-height: 1;
    color: #e8e8e8;
    margin-bottom: 16px;
}
.rcb-404-title {
    font-family: Vidaloka, serif;
    font-size: 28px;
    font-weight: 400;
    color: #111;
    margin: 0 0 16px;
}
.rcb-404-desc {
    font-family: Montserrat, sans-serif;
    font-size: 13px;
    color: #777;
    line-height: 1.8;
    margin: 0 0 32px;
}
.rcb-404-btn {
    display: inline-block;
    font-family: Montserrat, sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #fff;
    background: #111;
    padding: 14px 32px;
    text-decoration: none;
    transition: background 0.2s;
}
.rcb-404-btn:hover {
    background: #444;
}

/* ── Página de categoria ─────────────────────────────────────────────── */

.eltdf-category-banner {
    background-color: #111;
    padding: 48px 0 40px;
    margin-bottom: 0;
    text-align: center;
}
.eltdf-category-banner-label {
    display: block;
    font-family: Montserrat, sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #888;
    margin-bottom: 10px;
}
.eltdf-category-banner-title {
    font-family: Vidaloka, serif;
    font-size: 42px;
    font-weight: 400;
    color: #fff;
    margin: 0 0 10px;
    line-height: 1.2;
}
.eltdf-category-banner-title em {
    font-style: italic;
    color: #ccc;
}
.eltdf-category-banner-desc {
    font-family: Montserrat, sans-serif;
    font-size: 14px;
    color: #aaa;
    margin: 0;
}

/* Grid de posts */
.eltdf-category-posts-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px 24px;
    padding: 0;
}
.eltdf-category-post-item {
    list-style: none;
    margin: 0;
    padding: 0;
}
.eltdf-cpi-inner {
    display: flex;
    flex-direction: column;
}
.eltdf-cpi-image {
    position: relative;
    overflow: hidden;
    margin-bottom: 14px;
}
.eltdf-cpi-image img {
    display: block;
    width: 100%;
    height: 200px;
    object-fit: cover;
    transition: transform 0.4s ease;
}
.eltdf-cpi-image:hover img {
    transform: scale(1.04);
}
.eltdf-cpi-image-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0);
    transition: background 0.3s;
}
.eltdf-cpi-image:hover .eltdf-cpi-image-overlay {
    background: rgba(0,0,0,0.08);
}
.eltdf-cpi-content .eltdf-post-info-category a {
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #888;
    text-decoration: none;
}
.eltdf-cpi-title {
    font-family: Vidaloka, serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.35;
    margin: 6px 0 8px;
}
.eltdf-cpi-title a {
    color: #111;
    text-decoration: none;
}
.eltdf-cpi-title a:hover {
    color: #555;
}
.eltdf-cpi-meta {
    font-family: Montserrat, sans-serif;
    font-size: 11px;
    color: #999;
    margin-bottom: 8px;
}
.eltdf-cpi-meta a {
    color: #999;
    text-decoration: none;
}
.eltdf-cpi-meta-sep {
    margin: 0 4px;
}
.eltdf-cpi-excerpt {
    font-family: Montserrat, sans-serif;
    font-size: 13px;
    color: #555;
    line-height: 1.6;
    margin: 0;
}

/* Paginação da categoria */
.eltdf-category-pagination {
    margin-top: 48px;
    padding-bottom: 24px;
}
.eltdf-category-pagination .nav-links {
    display: flex;
    gap: 8px;
    align-items: center;
}
.eltdf-category-pagination .page-numbers {
    font-family: Montserrat, sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    color: #333;
    padding: 7px 13px;
    border: 1px solid #ddd;
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
}
.eltdf-category-pagination .page-numbers.current,
.eltdf-category-pagination .page-numbers:hover {
    background: #111;
    color: #fff;
    border-color: #111;
}
.eltdf-category-empty {
    font-family: Montserrat, sans-serif;
    font-size: 14px;
    color: #888;
    padding: 40px 0;
}

/* Responsivo — categoria */
@media only screen and (max-width: 900px) {
    .eltdf-category-posts-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media only screen and (max-width: 600px) {
    .eltdf-category-posts-grid {
        grid-template-columns: 1fr;
    }
    .eltdf-category-banner-title {
        font-size: 30px;
    }
}

/* ── Subcategorias 1–5 abaixo do scroller — tamanho do texto ── */
.eltdf-layout1.eltdf-news-columns-5 h4.eltdf-post-title {
    font-size: 22px;
}

/* ── Agenda row — neutraliza z-index para não bloquear elementos acima ── */
.rcb-agenda-row .eltdf-row-grid-section {
    z-index: auto;
}
.rcb-agenda-row {
    margin-bottom: 60px;
}

/* ── Newsletter sidebar — campos uniformes com só linha inferior ── */
.eltdf-newsletter-sidebar input[type=email],
.eltdf-newsletter-sidebar input[type=text],
.eltdf-newsletter-sidebar input[type=tel] {
    border: none;
    border-bottom: 1px solid #000;
    padding: 0 0 3px 0;
    margin: 10px 0 16px;
    width: 100%;
    box-sizing: border-box;
    background: transparent;
    outline: none;
    line-height: 1;
}

/* ── Single post — reduz espaço entre header e conteúdo ── */
.single .eltdf-content .eltdf-content-inner > .eltdf-container > .eltdf-container-inner {
    padding-top: 50px;
}

/* ── Página de colunista ── */
.rcb-colunista-profile {
    background: #f9f7f5;
    border-bottom: 1px solid #e8e2da;
    padding: 48px 0 44px;
}
.rcb-colunista-profile-inner {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 30px;
    display: flex;
    align-items: flex-start;
    gap: 36px;
}
.rcb-colunista-profile-photo img {
    width: 220px;
    height: 220px;
    border-radius: 50%;
    object-fit: cover;
    object-position: top;
    display: block;
    box-shadow: 0 3px 14px rgba(0,0,0,0.13);
    flex-shrink: 0;
}
.rcb-colunista-profile-bio {
    flex: 1;
    padding-top: 4px;
}
.rcb-colunista-profile-name {
    font-size: 28px;
    font-weight: 700;
    letter-spacing: 0.02em;
    color: #1a1a1a;
    margin: 0 0 8px;
    line-height: 1.2;
}
.rcb-colunista-profile-label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #b0906a;
    margin: 0 0 10px;
}
.rcb-colunista-profile-desc {
    font-size: 15px;
    line-height: 1.75;
    color: #555;
    margin: 0;
}
@media (max-width: 600px) {
    .rcb-colunista-profile-inner {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 20px;
    }
}

/* ── Arquivo de eventos ── */
.post-type-archive-rcb_event .eltdf-content .eltdf-content-inner > .eltdf-container > .eltdf-container-inner {
    padding-top: 50px;
}
.post-type-archive-rcb_event .eltdf-page-content-holder {
    margin-top: -16px;
}
.rcb-agenda-page-title {
    font-family: Vidaloka, serif;
    font-size: 32px;
    font-weight: 400;
    color: #1a1a1a;
    margin: 0 0 0;
    line-height: 1.2;
}

.rcb-agenda-archive-section {
    padding: 36px 0 20px;
}
.rcb-agenda-archive-section + .rcb-agenda-archive-section {
    border-top: 1px solid #e8e8e8;
}
.rcb-agenda-archive-title {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #999;
    margin: 0 0 20px;
}
.rcb-agenda-list-past .rcb-agenda-item {
    opacity: 0.6;
}
.rcb-agenda-list-past .rcb-agenda-item:hover {
    opacity: 1;
}

/* ── Single post — alinha topo do conteúdo com topo da sidebar ── */
.single .eltdf-blog-predefined-style .eltdf-blog-holder.eltdf-blog-single article .eltdf-post-text .eltdf-post-text-inner {
    padding-top: 0;
}
.single .eltdf-page-content-holder {
    margin-top: -16px;
}

