﻿/*
 * ============================================================
 *  AGRODIGITAL — CSS PRINCIPAL
 *  Tema: agrodigital-style (child de Genesis)
 *  Última revisión: 2026-03
 *
 *  ÍNDICE
 *  § 1.  Variables y fuentes
 *  § 2.  Layout global
 *  § 3.  Tipografía y elementos comunes
 *  § 4.  Cabecera — desktop
 *  § 5.  Menú mobile + cabecera postiza
 *  § 6.  Portada (front-page)
 *  § 7.  Categorías / Archivo
 *  § 8.  Noticia individual (single)
 *  § 9.  Sidebar
 *  § 10. Footer
 *  § 11. Comentarios
 *  § 12. Rascacielos (banners laterales fixed)
 *  § 13. Banners AdRotate (home, sidebar, contenido)
 *  § 14. Embeds / Misc
 *  § 15. Aviso de cookies
 *  § 16. Componentes reutilizables (tarjeta ponente .wb-expert-*)
 *  § 17. Webinars — single diferido (single-webinars.php) [.agro-wbd-*]
 *  § 18. Webinars — hub (category-webinars.php) [.agro-wbh-*]
 *         Nota: landing page-webinar.php lleva su CSS inline en wp_head
 * ============================================================
 */

/* Fuentes cargadas vía wp_enqueue_style en functions.php (no @import — bloquea render) */


/* ============================================================
   § 1. VARIABLES Y FUENTES
   ============================================================ */

/* Futura Futuris (subida a uploads) */
@font-face {
    font-family: 'FuturaFuturis';
    src: url('/wp-content/uploads/2025/09/FuturaFuturisT-BoldItalic.woff2') format('woff2'),
         url('/wp-content/uploads/2025/09/FuturaFuturisT-BoldItalic.woff')  format('woff');
    font-weight: bold;
    font-style:  normal;
    font-display: swap;
}

:root {
    /* Colores de marca */
    --brick-ember:    #BB1300;
    --muted-teal:     #79AB8E;
    --muted-teal-2:   #8FB9A1;
    --mint-cream:     #F0F9F4;
    --blush-accent:   #FDE8EF;

    /* Neutros */
    --blanco:         #ffffff;
    --gris-borde:     #e3e3e3;
    --gris:           #999999;
    --gris-oscuro:    #666666;

    /* Tipografía */
    --t-xl: 26px;
    --t-lg: 20px;
    --t-md: 16px;
    --t-sm: 14px;

    /* Layout */
    --site-max-width: 1190px;
    --nav-height:     60px;
    --banner-w:       280px;
    --f-gap:          20px;
    --f-pad:          8px;
    --f-mb:           32px;
    --futura-ls:      -0.02em;
    --desktop-zoom:     1;
    --desktop-zoom-inv: 1;
    --banner-gap:       16px;
}


/* ============================================================
   § 2. LAYOUT GLOBAL
   ============================================================ */

body {
    background-color: #fff;
    overflow-x: hidden;
    font-family: 'DM Sans', sans-serif;
    line-height: 1.625;
}

/* Título de portada — oculto visualmente, presente para SEO */
.news-pro-home article.type-page > .entry-header .entry-title {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

/* Contenedor principal — 1190px centrado (ref. El País) */
.site-container {
    max-width: var(--site-max-width) !important;
    width: 100%;
    margin: 0 auto;
    border: none !important;
    box-shadow: none !important;
}

/* ── Zona desktop-narrow: 1024–1189px ───────────────────────────
   Misma estructura que >1190px, todo escalado proporcionalmente.
   El contenedor se fija a 1190px y zoom lo contrae al viewport.
   A 1024px → zoom ≈ 0.860 → visual = 1024px exacto.
   El .menu-mobile-header queda fuera del DOM de .site-container
   así que no se ve afectado por este zoom.
   ──────────────────────────────────────────────────────────── */
@media (min-width: 1024px) and (max-width: 1189px) {
    .site-container {
        width: 1190px !important;
        max-width: 1190px !important;
        zoom: calc(100vw / 1190);
    }
}

@media (min-width: 1190px) {
    :root { --desktop-zoom: 0.86; --desktop-zoom-inv: 1.16279; }
    body  { zoom: 0.86; }
}

/* ── Zona tablet: zoom 600–969px — Pivot: 970px ─────────────────────
   Por encima del pivot (970–1023px) el sitio renderiza a tamaño natural.
   ──────────────────────────────────────────────────────────── */
@media (min-width: 600px) and (max-width: 969px) {
    .site-container {
        width: 970px !important;
        max-width: 970px !important;
        zoom: calc(100vw / 970);
        margin: 0 !important;
    }
}

/* ── Zona móvil: <600px — sin zoom, layout explícito ─────────────── */
@media (max-width: 599px) {

    /* F3 W1 — padding derecho en títulos del ranking solo en móvil */
    .agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li a span,
    .agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li a p {
        padding-right: 10px;
    }

}

/* ── Zona tablet: estructural 600–1023px ─────────────────────────── */
@media (min-width: 600px) and (max-width: 1023px) {
    .menu-mobile-header {
        height: 70px !important;
    }
    body {
        padding-top: 70px !important;
    }
}

/* Layout content + sidebar — escritorio */
@media (min-width: 1025px) {

    body.content-sidebar .content-sidebar-wrap {
        max-width: 100%;
        margin: 0 auto;
        padding: 0 8px;
        box-sizing: border-box;
        display: flex !important;
        gap: 18px !important;
        align-items: flex-start;
    }

    body.content-sidebar .content {
        border-right: 0 !important;
        float: none !important;
        width: auto !important;
        min-width: 0 !important;
        flex: 1 1 auto !important;
    }

    body.content-sidebar .sidebar-primary {
        float: none !important;
        flex: 0 0 320px !important;  /* uniforme en todas las páginas */
    }
}

/* Layout content + sidebar — tablet */
@media (min-width: 600px) and (max-width: 1023px) {

    body.content-sidebar .content-sidebar-wrap {
        max-width: min(96vw, 1040px);
        margin: 0 auto;
        padding: 0 16px;
        box-sizing: border-box;
        display: flex !important;
        gap: 16px !important;
        align-items: flex-start;
    }

    body.content-sidebar .content {
        border-right: 0 !important;
        float: none !important;
        width: auto !important;
        min-width: 0 !important;
        flex: 1 1 auto !important;
    }

    body.content-sidebar .sidebar-primary {
        float: none !important;
        width: auto !important;
        flex: 0 0 260px !important;  /* fijo en tablet, no proporcional */
    }
}

/* Layout content + sidebar — móvil */
@media (max-width: 600px) {

    html, body {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    body.content-sidebar .content-sidebar-wrap {
        display: block !important;
        max-width: 100%;
        padding: 0;
        box-sizing: border-box;
    }

    body.content-sidebar .content {
        border-right: 0 !important;
        float: none !important;
        width: 100% !important;
    }

    body.content-sidebar .sidebar-primary {
        float: none !important;
        width: 100% !important;
        margin-top: 20px;
    }

    .site-inner,
    .content-sidebar-wrap {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden;
    }

    img, iframe {
        max-width: 100%;
        height: auto;
    }
}

/* site-inner: clip para evitar scroll horizontal por banners fixed */
.site-inner {
    overflow-x: clip;
}

/* Tamaño de fuente base en escritorio */
@media (min-width: 1025px) {
    body { font-size: 0.90em; }
}

/* Padding artículos */
article.post {
    padding: 10px 10px 0 10px;
    box-sizing: border-box;
}


/* ============================================================
   § 3. TIPOGRAFÍA Y ELEMENTOS COMUNES
   ============================================================ */

/* Hover de noticia — sin efecto visual de borde */

/* Border-radius base para imágenes de contenido — específicos pueden sobreescribir */
article img,
.entry-content img,
.widget-wrap img:not([class*="avatar"]):not([class*="logo"]) {
    border-radius: 1px;
}

/* Banners: sin border-radius */
.agro-franja--f2 img,
.adrotate_ad img,
.adrotate-ad img,
.gsmints-single img {
    border-radius: 0 !important;
}

/* Normalización letter-spacing FuturaFuturis — mismo valor que en .nav-primary */
.widget-title,
.widgettitle,
.widget-title *,
.widgettitle *,
.archive-title-izq,
.agro-single-relacionadas-titulo,
.menu-mobile li.destacado > a,
.agro-franja--cats .widget-title,
.agro-destacados .widget-title,
.agro-franja--videos .widget-title,
.site-footer-agro .footer-newsletter button,
.site-footer-agro .footer-newsletter input[type="submit"],
.btn-suscribe a {
    letter-spacing: var(--futura-ls);
}

/* Títulos de noticias — Noto Sans en todo el sitio */
.entry-title,
.entry-title a,
.agro-single-relacionada .rel-titulo,
.agro-single-relacionada .rel-titulo a,
.agro-franja--f3 .widget_mostreadpostswidget .mlrp_ul li a {
    font-family: 'Noto Sans', sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: -0.7px;
}

/* Portada: front-page.php no quita el entry-header por defecto de Genesis
   (a diferencia de page-editorial.php/page-contacto.php, que sí lo hacen a
   propósito). Se oculta solo el entry-header "suelto" del loop principal
   de Genesis (la página real asignada como portada en Ajustes > Lectura).
   :not(.agro-franja .entry-header) es imprescindible — cada franja define
   su propio display para el entry-header de sus noticias (algunas usan
   "display: contents" para que el grid las coloque, por ejemplo la de
   Opinión en F8) y no hay que tocarlo; forzar un valor aquí lo pisaría. */
.home .entry-header:not(.agro-franja .entry-header) {
    display: none !important;
}

/* Páginas genéricas sin plantilla propia (Términos Legales, Política de
   Privacidad, Anúnciate...) — mismo estilo de cabecera que ya usan
   page-contacto.php / page-editorial.php (fondo suave + título grande
   centrado), pero solo CSS: sin arrastrar el formulario/JS específico
   de esas plantillas, que no pinta nada en una página de texto.
   :not(.home) es imprescindible — si en Ajustes > Lectura la portada está
   configurada como página estática, WordPress también le pone la clase
   .page al body de la portada, y esta regla se coló ahí sin querer. */
.page:not(.home) .entry-header {
    background: var(--mint-cream);
    text-align: center;
    padding: 48px 32px;
    margin: 0 0 32px;
}
.page:not(.home) .entry-title {
    font-family: 'DM Sans', sans-serif;
    font-size: clamp(36px, 6vw, 64px);
    font-weight: 800;
    color: var(--muted-teal);
    letter-spacing: -0.025em;
    line-height: 1.05;
    margin: 0;
}

/* Texto de contenido más grande en estas páginas genéricas */
.page:not(.home) .entry-content p,
.page:not(.home) .entry-content li {
    font-size: 18px;
    line-height: 1.8;
}
.page:not(.home) .entry-content h2 {
    font-size: 26px;
    margin: 40px 0 14px;
}
.page:not(.home) .entry-content h3 {
    font-size: 21px;
    margin: 28px 0 10px;
}

/* Botones de categoría — en todas partes */
.entry-categories a,
.cat-links a {
    font-family: 'DM Sans', sans-serif;
    font-weight: 500;
    display: inline-block;
    background-color: var(--muted-teal-2);
    color: var(--blanco) !important;
    font-size: 12px;
    padding: 3px 8px;
    border-radius: 5px;
    margin: 0 6px 6px 0;
    text-decoration: none !important;
}

/* Ocultar categoría "patrocinados" */
.entry-categories a[href*="/patrocinados/"],
.cat-links a[href*="/patrocinados/"] {
    display: none !important;
}

/* Quitar comas sueltas entre categorías */
.entry-categories {
    font-size: 0;
}

/* Alineación vertical correcta del imagotipo junto al badge */
span.entry-categories,
span.cat-links {
    display: inline;
}

/* Paginación */
.archive-pagination.pagination ul li a {
    display: inline-block;
    padding: 5px 12px;
    margin: 2px;
    border: 2px solid var(--muted-teal-2);
    background-color: var(--blanco);
    color: var(--muted-teal-2);
    font-weight: bold;
    border-radius: 30px;
}

.archive-pagination.pagination ul li.active a,
.archive-pagination.pagination ul li a:hover {
    background-color: var(--muted-teal-2);
    color: var(--blanco);
}

/* Página de contacto (page-id-324484) */
.page-id-324484 .entry-content > table {
    width: 100%;
    table-layout: auto;
    border-collapse: separate;
    border-spacing: 0;
}
.page-id-324484 .entry-content > table td { vertical-align: top; }
.page-id-324484 .entry-content > table td:first-child {
    width: 28%;
    min-width: 220px;
    padding-right: 24px;
    white-space: nowrap;
}
.page-id-324484 .entry-content > table td:last-child { width: 72%; }
.page-id-324484 #nf-form-1-cont { max-width: 680px; }
.page-id-324484 table tr td:first-child { display: table-cell !important; }

@media (max-width: 900px) {
    .page-id-324484 .entry-content > table,
    .page-id-324484 .entry-content > table tr,
    .page-id-324484 .entry-content > table td {
        display: block;
        width: 100% !important;
    }
    .page-id-324484 .entry-content > table td:first-child {
        padding-right: 0;
        margin-bottom: 12px;
        white-space: normal;
    }
    .page-id-324484 #nf-form-1-cont { max-width: 100%; }
}


/* ============================================================
   § 4. CABECERA — DESKTOP
   ============================================================ */

@media (min-width: 1025px) {

    /* nav.nav-secondary → franja blanca con logo + menú + botón */
    nav.nav-secondary {
        background-color: #ffffff !important;
        height: auto;
        display: block;
    }

    nav.nav-secondary > .wrap {
        width: 100%;
        max-width: var(--site-max-width);
        margin: 0 auto;
        padding: 90px 24px 60px 24px;
        box-sizing: border-box;
    }

    ul#menu-superior {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    ul#menu-superior > li {
        display: flex;
        align-items: center;
        flex: 0 0 auto;
        position: relative;
    }

    ul#menu-superior a {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 0 20px;
        height: auto;
        font-size: 13px;
        line-height: 1;
        font-family: 'DM Sans', sans-serif !important;
        font-style: normal;
        font-weight: normal;
        color: var(--muted-teal-2) !important;
        background: none;
        border: none;
        text-decoration: none;
    }

    /* Logo centrado absolutamente — independiente de los items del menú */
    ul#menu-superior {
        position: relative;
    }

    ul#menu-superior li.agro-logo-item {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        pointer-events: auto;
        list-style: none;
    }

    ul#menu-superior li.agro-logo-item a.agro-logo-link {
        display: block;
        padding: 0;
        border: none;
        background: none;
        line-height: 0;
    }

    ul#menu-superior li.agro-logo-item a.agro-logo-link:hover {
        background: none;
        opacity: 0.85;
    }

    ul#menu-superior li.agro-logo-item img.agro-header-logo {
        height: 90px;
        width: auto;
        max-width: clamp(190px, 26vw, 340px);
        display: block;
        object-fit: contain;
    }

    /* El .espaciador sigue en el flujo flex para empujar elementos a los lados
       pero no muestra nada — el logo se superpone absolutamente encima */
    ul#menu-superior li.espaciador {
        flex: 1 1 auto;
        pointer-events: none;
    }

    ul#menu-superior li.espaciador a {
        display: none !important;
    }

    ul#menu-superior > li:last-child a {
        margin-left: auto;
    }

    /* Botón Newsletter (.destacado) */
    ul#menu-superior li.destacado a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 3px;
        padding: 7px 14px !important;
        border-radius: 5px;
        border: 2px solid var(--brick-ember);
        background-color: var(--brick-ember);
        color: var(--blanco) !important;
        font-size: 14px !important;
        font-family: 'DM Sans', sans-serif;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0;
        font-variant-emoji: text;
        transition: background-color 0.15s ease, color 0.15s ease;
    }

    ul#menu-superior li.destacado a:hover {
        background-color: #ffffff;
        color: var(--brick-ember) !important;
    }

    /* Buscador en cabecera */
    ul#menu-superior li.agro-search-slot input {
        border-radius: 90px !important;
        padding: 10px 16px;
    }

    /* Fecha — solo portada, esquina superior izquierda del header */
    ul#menu-superior li.agro-fecha-header {
        position: absolute;
        left: 0;
        top: -52px;
        font-size: 14px;
        font-family: 'DM Sans', sans-serif;
        font-weight: normal;
        letter-spacing: 1.5px;
        color: #555;
        text-transform: none;
        pointer-events: none;
        white-space: nowrap;
    }

    /* ── Menú principal verde ── */
    .nav-primary {
        width: 100%;
        background-color: var(--muted-teal);
    }

    .nav-primary > .wrap,
    .nav-primary .genesis-nav-menu {
        max-width: var(--site-max-width);
        margin: 0 auto;
        padding: 0 6px !important;
    }

    .nav-primary .genesis-nav-menu > li > a {
        border-left: none !important;
        border-right: none !important;
        text-transform: uppercase;
    }

    .genesis-nav-menu {
        display: flex !important;
        gap: 0 !important;
        flex-wrap: wrap;
        list-style: none;
        margin: 0;
        padding: 0 3px;
        background: transparent;
        line-height: 0.5; /* fija altura del nav a 37px: 15px padding + 7px contenido + 15px padding */
    }

    .genesis-nav-menu li {
        flex: 1 1 auto;          /* cada item crece proporcionalmente manteniendo su contenido */
        text-align: center;
    }

    .genesis-nav-menu a {
        display: block;
        text-align: center;
        color: var(--blanco) !important;
        text-decoration: none;
        font-family: 'FuturaFuturis', sans-serif !important;
        font-weight: bold;
        font-style: normal;
        font-size: 14px;
        letter-spacing: var(--futura-ls);
        padding: 15px 10px !important;
    }

    .nav-primary .genesis-nav-menu > li:hover > a {
        background-color: var(--muted-teal-2) !important;
        color: #ffffff !important;
        transition: background-color .2s ease;
    }

    .nav-primary .genesis-nav-menu > li:has(> .sub-menu:hover) > a {
        background-color: var(--muted-teal-2) !important;
    }

    /* Submenús — padding y line-height propios para no heredar los del nav principal */
    .genesis-nav-menu .sub-menu a {
        font-family: 'DM Sans', sans-serif !important;
        font-size: 11px !important;
        padding: 9px 16px 9px 12px !important;
        line-height: 1.4 !important;
        font-style: normal;
        font-weight: normal;
        color: #eeeeee;
        text-align: left;
    }

    .genesis-nav-menu .sub-menu li a {
        background-color: var(--muted-teal-2);
    }

    .nav-primary .sub-menu li a:hover,
    .nav-primary .genesis-nav-menu .sub-menu li a:hover {
        box-shadow: none !important;
        text-decoration: underline !important;
    }

    /* Posición del submenú: centrado bajo el padre, oculto por defecto */
    .nav-primary .genesis-nav-menu > li {
        position: relative !important;
    }

    .nav-primary .genesis-nav-menu > li .sub-menu {
        display: none;
        position: absolute !important;
        top: 100% !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        min-width: 100%;
        z-index: 1000;
    }

    .nav-primary .genesis-nav-menu > li:hover > .sub-menu {
        display: block !important;
    }

    .nav-primary .genesis-nav-menu .sub-menu li,
    .nav-primary .genesis-nav-menu .sub-menu li a {
        border: none !important;
        box-shadow: none !important;
    }

    /* Sin news-pro: los li del sub-menú ya no heredan display:inline-block */
    .nav-primary .genesis-nav-menu .sub-menu li {
        display: block !important;
        list-style: none !important;
        margin: 0;
        padding: 0;
    }
}

/* Ocultar submenús en nav-primary solo en portada */
.home .nav-primary .genesis-nav-menu > li .sub-menu {
    display: none !important;
}



/* ============================================================
   § 5. MENÚ MOBILE + CABECERA POSTIZA
   ============================================================ */

/* Panel lateral (drawer) */
.menu-mobile {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 80vw;
    max-width: 400px;
    background-color: var(--muted-teal);
    transform: translateX(-100%);
    transition: transform .3s ease;
    z-index: 1100;
    overflow-y: auto;
    overflow-x: hidden;
    padding-top: 0;
}

.menu-mobile.show {
    transform: translateX(0);
    box-shadow: 4px 0 10px rgba(0,0,0,.4);
}

.menu-mobile::-webkit-scrollbar {
    display: none;
}

/* Overlay oscuro detrás */
.menu-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.5);
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease;
    z-index: 1099;
}

.menu-overlay.active {
    opacity: 1;
    visibility: visible;
}

.menu-mobile li {
    position: relative;
    list-style: none;
}

.menu-mobile li a {
    display: block;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 17px;
    font-weight: 600;
    color: #ffffff !important;
    padding: 9px 50px 9px 4vw;
}

.menu-mobile li a:hover {
    transform: scale(1.05);
    background-color: var(--muted-teal-2);
    text-decoration: underline;
}

/* Padre activo mientras su submenú está abierto */
.menu-mobile li:has(> ul[style*="display: block"]) > a {
    background-color: var(--muted-teal-2) !important;
    color: #ffffff !important;
    transform: scale(1.05);
    text-decoration: underline;
}

/* Submenús */
.menu-mobile li ul {
    background-color: var(--muted-teal-2);
}

.menu-mobile li ul li a {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 15px;
    font-weight: normal;
    font-style: normal;
    padding: 9px 30px 9px 6vw;
}

.menu-mobile li ul li a:hover {
    /* sin hover en subcategorías */
}

/* Botón + / − para submenús */
.menu-mobile .submenu-toggle {
    position: absolute;
    right: 10px;
    top: 5px;
    width: 50px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 700;
    color: #ffffff;
    cursor: pointer;
    user-select: none;
}

/* Barra superior del panel (logo + X) */
.menu-mobile-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: var(--muted-teal);
    padding: 10px 16px;
    top: 0;
    z-index: 1103;
}

.menu-mobile-logo-mini {
    padding: 5px;
    width: 240px;
    height: auto;
    object-fit: contain;
}

.menu-mobile-close {
    font-size: 32px;
    font-weight: bold;
    color: #ffffff;
    cursor: pointer;
}

.menu-mobile li.espaciador,
.menu-mobile li.agro-logo-item,
.menu-mobile li.agro-fecha-header {
    display: none !important;
}

/* Botón Newsletter */
.menu-mobile li.destacado {
    display: flex;
    justify-content: center;
}

.menu-mobile li.destacado > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
    text-align: center;
    margin: 12px 0 18px;
    padding: 7px 8px;
    background-color: var(--brick-ember) !important;
    color: #fff !important;
    font-size: 0 !important;  /* oculta texto WP menú */
    border-radius: 5px;
}

.menu-mobile li.destacado > a::before {
    content: "✉\FE0E";
    font-size: 16px;
    font-family: sans-serif;
    font-style: normal;
    line-height: 1;
}

.menu-mobile li.destacado > a::after {
    content: "NEWSLETTER";
    font-size: 16px;
    font-family: 'DM Sans', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0;
}

.menu-mobile li.destacado > a:hover {
    transform: none !important;
    background-color: #fff !important;
    color: var(--brick-ember) !important;
    text-decoration: none;
}

/* Items discretos */
.menu-mobile li.discreto > a {
    font-family: 'DM Sans', sans-serif !important;
    font-weight: normal;
    font-style: normal;
    font-size: 15px;
    color: #dcdcdc !important;
    border: none !important;
}

.menu-mobile li.discreto > a:hover {
    transform: scale(1.05) !important;
    background-color: var(--muted-teal-2);
}

/* Buscador */
.menu-mobile li.agro-search-slot {
    padding: 16px 30px;
    border-bottom: 1px solid rgba(255,255,255,0.3);
    border-top: 1px solid rgba(255,255,255,0.3);
}

.menu-mobile li.agro-search-slot input[type="search"],
.menu-mobile li.agro-search-slot input[type="text"],
.menu-mobile li.agro-search-slot .search-field {
    width: 100%;
    box-sizing: border-box;
    border-radius: 999px;
    padding: 10px 16px;
}

.mobile-follow-title {
    font-family: 'DM Sans', sans-serif;
    font-size: 15px;
    color: #dcdcdc;
    padding: 2px 20px 8px 30px;
    align-items: center;
}

.agro-social-icons {
    display: flex;
    justify-content: center;
    gap: 25px;
    list-style: none;
    padding: 14px 0;
    margin: 0;
}
.agro-social-icons li a,
.agro-social-icons li a:hover {
    display: flex;
    padding: 0 !important;
    color: var(--mint-cream) !important;
    text-decoration: none !important;
    background: none !important;
    transform: none !important;
}
.agro-social-icons svg { width: 23px; height: 23px; }

/* Cabecera postiza — común móvil + escritorio */
.menu-mobile-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: var(--blanco);
    box-sizing: border-box;
    z-index: 1002;
    box-shadow: 0 2px 6px rgba(0,0,0,0.10);
    transition: top 0.25s ease;
}

.menu-icon {
    font-size: 28px;
    color: var(--muted-teal);
    cursor: pointer;
    line-height: 1;
    z-index: 1101;
}

.logo-mobile img {
    max-height: 50px;
    height: auto;
    width: auto;
}

.btn-suscribe-icon {
    color: inherit;
    font-size: 1em;
    display: inline-block;
    margin-right: 3px;
}

.btn-suscribe a {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    background-color: var(--brick-ember);
    color: var(--blanco);
    font-weight: 700;
    font-family: 'DM Sans', sans-serif !important;
    padding: 3px 8px;
    border-radius: 5px;
    font-size: 15px;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
}

.btn-suscribe a:hover {
    background-color: #ffffff;
    color: var(--brick-ember) !important;
    border: 2px solid var(--brick-ember);
}

/* Cabecera postiza — móvil */
@media (max-width: 1024px) {

    /* padding en body (no en .site-container) para que el zoom no lo afecte */
    body {
        padding-top: var(--nav-height);
    }

    .nav-primary,
    .nav-secondary {
        display: none !important;
    }

    .menu-mobile-header {
        justify-content: space-between;
        padding: 10px 14px;
        transform: translateY(0);
        opacity: 1;
        pointer-events: auto;
    }

    /* Banner de cabecera fijo encima del menú móvil */
    .agro-header-top-banner {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 1003;
        transition: transform 0.25s ease;
    }

    /* Título de categoría sticky: solo escritorio */
    .menu-mobile-header .agro-cat-title-sticky {
        display: none;
    }
}

/* Cabecera postiza — escritorio (oculta por defecto, aparece al hacer scroll) */
@media (min-width: 1025px) {

    .menu-mobile-header {
        justify-content: flex-start;
        padding-left: calc((100% - var(--site-max-width)) / 2);
        padding-right: calc((100% - var(--site-max-width)) / 2);
        transform: translateY(-100%);
        opacity: 0;
        pointer-events: none;
        transition: transform .25s ease, opacity .25s ease;
        z-index: 1002 !important;
    }

    .menu-mobile-header .menu-icon::after {
        content: none;
    }

    .menu-mobile-header .menu-icon {
        font-size: 28px;
        transform: scaleX(1.5);
        transform-origin: left center;
    }

    .menu-mobile-header .logo-mobile::before {
        display: none;
    }

    .menu-mobile-header.menu-header-visible {
        transform: translateY(0);
        opacity: 1;
        pointer-events: auto;
    }

    /* Título categoría/subcategoría centrado en cabecera dinámica */
    .menu-mobile-header .agro-cat-title-sticky {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        display: flex;
        align-items: center;
        gap: 8px;
        font-family: 'FuturaFuturis', sans-serif;
        font-size: 18px;
        color: var(--brick-ember);
        text-transform: uppercase;
        letter-spacing: var(--futura-ls);
        white-space: nowrap;
        pointer-events: none;
    }

    .menu-mobile-header .agro-cat-sticky-logo {
        max-height: 22px;
        width: auto;
        display: block;
        flex-shrink: 0;
    }

    .menu-mobile-header .menu-icon {
        margin-right: 6px;
    }

    .menu-mobile-header .logo-mobile {
        margin-left: 10px;
        margin-right: auto;
        display: inline-flex;
        align-items: center;
    }

    .menu-mobile-header .logo-mobile img {
        height: 62px;
        width: auto;
        display: block;
    }

    .menu-mobile-header .btn-suscribe {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin-left: 24px;
    }

    .menu-mobile {
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }
}


/* ============================================================
   § 6b. SISTEMA DE FRANJAS — nuevo diseño portada
   ============================================================ */

/* ── Base compartida ── */
.agro-franja {
    max-width: var(--site-max-width);
    margin: 0 auto 32px;
    padding: 0 8px;
    box-sizing: border-box;
}

.agro-franja + .agro-franja:not(.agro-franja--videos):not(.agro-franja--bonus):not(.agro-franja--fp) {
    padding-top: 30px;
    position: relative;
}
.agro-franja + .agro-franja:not(.agro-franja--videos):not(.agro-franja--bonus):not(.agro-franja--fp)::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 4%;
    right: 4%;
    height: 1px;
    background: rgba(0,0,0,0.08);
}
.agro-franja--videos + .agro-franja::before,
.agro-franja--bonus + .agro-franja::before,
.agro-franja--fp + .agro-franja::before {
    display: none;
}

.agro-franja > .widget,
.agro-franja .widget-area > .widget {
    box-sizing: border-box;
    min-width: 0;
}

/* Imagen con aspect-ratio */
.agro-franja .entry-image {
    position: relative;
    width: 100%;
    overflow: hidden;
    margin-bottom: 8px;
}

.agro-franja .entry-image::before {
    content: "";
    display: block;
    padding-top: 56%;
}

.agro-franja .entry-image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Imagen destacada de noticia — ratio 3:2 forzado en todas las franjas.
   El combinador > limita a hijos directos de article.entry, excluyendo
   imágenes inline dentro de .entry-content (banners intext, imágenes
   en el cuerpo del post, etc).
   Las franjas con dimensiones fijas (F1 W3 200×140, F8 W1 90×90 redonda)
   conservan su tamaño porque su CSS específico tiene mayor especificidad. */
.agro-franja article.entry > a img {
    aspect-ratio: 3 / 2;
    object-fit: cover;
    object-position: center;
}

/* Tipografía consistente */
.agro-franja .entry-title {
    font-size: 18px;
    line-height: 1.25;
    margin: 4px 0 6px;
    font-weight: 700;
}

.agro-franja .entry-title a { color: inherit; text-decoration: none; transition: color 0.2s; }
.agro-franja .entry-title a:hover { color: var(--muted-teal-2); }
.agro-franja article.entry:has(> a:hover) .entry-title a,
.agro-franja article.agro-cat-post:has(> a:hover, > .agro-cat-post-thumb a:hover) .entry-title a { color: var(--muted-teal-2); }

.agro-franja .entry-categories a { font-size: 11px !important; padding: 2px 7px !important; }
.agro-franja .entry-categories { font-size: 0 !important; }
.agro-franja .entry-categories a ~ a { display: none !important; }
.agro-franja .entry-meta { font-size: 11px; color: var(--gris); margin: 0; }
.agro-franja .entry-content p { font-size: 15px; line-height: 1.5; margin: 0; color: var(--gris-oscuro); }

/* Prevención de desbordes */
.agro-franja article.entry,
.agro-franja .widget-wrap { max-width: 100%; box-sizing: border-box; overflow: hidden; }


/* ── Franja 1 — Grid 60/40 + columna lateral ── */

.agro-franja--f1 {
    display: grid;
    grid-template-columns: 3fr 2fr var(--banner-w);
    grid-template-areas:
        "col60      col40 adlateral"
        "destacados col40 adlateral";
    gap: 20px;
    align-items: start;
}

/* Widgets 1-4: áreas del grid */
.agro-franja--f1 > .widget:nth-child(1) { grid-area: col60;  align-self: start; border-bottom: 1px solid var(--gris-borde); padding-bottom: 20px; }
.agro-franja--f1 > .widget:nth-child(2) {
    grid-area: col40;
    border-left: none;
    padding-left: 0;
}
.agro-franja--f1 > .widget:nth-child(3) { grid-area: destacados; align-self: start; }

/* W4+ están envueltos en .agro-f1-lateral → grid-area: adlateral */

/* Columna lateral (adlateral): W4+ envueltos en .agro-f1-lateral */
.agro-f1-lateral {
    grid-area: adlateral;
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
    align-self: start;
}

.agro-f1-lateral > .widget {
    width: 100%;
    box-sizing: border-box;
}

/* AdRotate en columna lateral */
.agro-f1-lateral .gsmints-single,
.agro-f1-lateral .gsmints-single img,
.agro-f1-lateral .adrotate_ad,
.agro-f1-lateral .adrotate_ad a,
.agro-f1-lateral .adrotate_ad img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

/* Margen inferior de cada anuncio individual (todos los contextos) */
.agro-franja .gsmints .gsmints-col {
    margin-bottom: 15px !important;
}

/* col60 y col40: padding lateral 7px (override Genesis default 10px) */
.agro-franja--f1 > .widget:nth-child(1) article.entry,
.agro-franja--f1 > .widget:nth-child(2) article.entry { padding-left: 7px !important; padding-right: 7px !important; }
.agro-franja--f1 > .widget:nth-child(1) article.entry { border-bottom: none !important; }

/* col60 (widget 1): imagen grande 70% */
.agro-franja--f1 > .widget:nth-child(1) .entry-image::before { padding-top: 70%; }
.agro-franja--f1 > .widget:nth-child(1) .entry-title { font-size: 29px !important; margin-top: 0 !important; }

/* col40 (widget 2): dos noticias apiladas, imagen 50% */
.agro-franja--f1 > .widget:nth-child(2) .entry-image::before { padding-top: 50%; }
.agro-franja--f1 > .widget:nth-child(2) .entry-title {
    font-size: 24px !important;
    margin-top: 0 !important;
}
.agro-franja--f1 > .widget:nth-child(2) .widget-wrap {
    display: flex; flex-direction: column; gap: 20px; overflow: visible;
}
.agro-franja--f1 > .widget:nth-child(2) article.entry { margin: 0; overflow: visible; }

/* Separador entre noticias en col40 — portada (article.entry) y categorías (.agro-cat-post) */
.agro-franja--f1 > .widget:nth-child(2) article.entry:not(:last-child),
.agro-franja--f1 > .widget:nth-child(2) .agro-cat-post:not(:last-child) {
    border-bottom: 1px solid var(--gris-borde);
    padding-bottom: 20px;
}
.agro-franja--f1 > .widget:nth-child(2) article.entry + article.entry,
.agro-franja--f1 > .widget:nth-child(2) .agro-cat-post + .agro-cat-post {
    padding-top: 20px;
}

/* destacados (widget 3): noticia en línea (imagen izq + contenido dch) con rotación JS */
.agro-franja--f1 > .widget:nth-child(3) .widget-wrap {
    display: flex;
    flex-direction: column;
    gap: 12px;
    overflow: hidden;
    padding: 10px 5px 10px 10px;
    border-radius: 6px;
    background-color: #E2F5EC;
}

.agro-franja--f1 > .widget:nth-child(3) .widgettitle,
.agro-franja--f1 > .widget:nth-child(3) .widget-title {
    position: relative;
    display: inline-block;
    width: max-content;
    font-family: 'FuturaFuturis', sans-serif;
    font-weight: bold;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: var(--futura-ls);
    font-size: 19px;
    line-height: 1.4;
    color: var(--muted-teal);
    padding: 0 0 5px 2px;
    margin: 0;
}

/* Línea gruesa */
.agro-franja--f1 > .widget:nth-child(3) .widgettitle::before,
.agro-franja--f1 > .widget:nth-child(3) .widget-title::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 110%;
    height: 4px;
    background-color: currentColor;
    z-index: 1;
    border-radius: 1px;
}

/* Línea fina */
.agro-franja--f1 > .widget:nth-child(3) .widgettitle::after,
.agro-franja--f1 > .widget:nth-child(3) .widget-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 5000px;
    height: 1px;
    background-color: currentColor;
    opacity: 0.5;
}

/* Slider: ocultar todas, mostrar solo la activa (JS slider.js) */
.agro-franja--f1 > .widget:nth-child(3) article.agro-slide {
    display: none !important;
}

/* destacados: noticia en línea con float left (como Franja 5) */
.agro-franja--f1 > .widget:nth-child(3) article.agro-slide.is-active {
    display: block !important;
    overflow: hidden;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    border-bottom: none !important;
}

/* Eliminar barra gris de News Pro (.entry { border-bottom }) en este widget */
.agro-franja--f1 > .widget:nth-child(3) article.entry {
    border-bottom: none !important;
}


/* Imagen a la izquierda con float (proporción 3:2) */
.agro-franja--f1 > .widget:nth-child(3) article.entry > a.alignleft,
.agro-franja--f1 > .widget:nth-child(3) article.entry > a.alignright,
.agro-franja--f1 > .widget:nth-child(3) article.entry > a.alignnone {
    width: 200px !important;
    height: 140px !important;
    float: left !important;
    margin: 0 15px 0 0 !important;
    display: block !important;
    line-height: 0;
}

.agro-franja--f1 > .widget:nth-child(3) article.entry > a.alignleft img,
.agro-franja--f1 > .widget:nth-child(3) article.entry > a.alignright img,
.agro-franja--f1 > .widget:nth-child(3) article.entry > a.alignnone img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block !important;
    margin: 0 !important;
}

/* Categorías */
.agro-franja--f1 > .widget:nth-child(3) article.entry > .entry-categories {
    font-size: 10px;
    margin: 0 !important;
}

/* Título — overflow:hidden crea BFC, el texto nunca desborda bajo la foto */
.agro-franja--f1 > .widget:nth-child(3) article.entry > .entry-header {
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
}

.agro-franja--f1 > .widget:nth-child(3) .entry-title,
.agro-franja--f1 > .widget:nth-child(3) .entry-title a {
    font-size: 19px !important;
    line-height: 1.2;
    margin: 0 !important;
}

/* Excerpt — overflow:hidden ídem */
.agro-franja--f1 > .widget:nth-child(3) article.entry > .entry-content {
    margin: 4px 0 0 0 !important;
    padding: 0 !important;
    overflow: hidden;
}

.agro-franja--f1 > .widget:nth-child(3) .entry-content p {
    margin: 0 !important;
    font-size: 15px;
    line-height: 1.4;
}

/* Slider track (creado por JS) */
.agro-franja--f1 > .widget:nth-child(3) .agro-slider-track {
    display: flex;
}
.agro-franja--f1 > .widget:nth-child(3) .agro-slider-track article {
    flex: 0 0 100%;
    min-width: 0;
}

/* Ocultar etiqueta de la propia categoría en Entrevistas */
.agro-franja--f1 > .widget:nth-child(3) .entry-categories a[href*="entrevistas"] {
    display: none !important;
}

/* Botones de categoría en Entrevistas: color teal neutro */
.agro-franja--f1 > .widget:nth-child(3) .entry-categories a {
    background: var(--muted-teal-2) !important;
    background-image: none !important;
    color: var(--blanco) !important;
    border: none !important;
    box-shadow: none !important;
    filter: none !important;
    padding-right: 10px !important;
}
.agro-franja--f1 > .widget:nth-child(3) .entry-categories a::before,
.agro-franja--f1 > .widget:nth-child(3) .entry-categories a::after {
    content: none !important;
    display: none !important;
    background: none !important;
}


/* Responsive: < 1024px → columna lateral salta a fila nueva */
@media (max-width: 1023px) {
    .agro-franja--f1 {
        grid-template-columns: 3fr 2fr;
        grid-template-areas:
            "col60      col40"
            "destacados col40"
            "adlateral  adlateral";
    }
    .agro-f1-lateral {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 12px;
    }
    .agro-f1-lateral > .widget { flex: 1 1 calc(50% - 6px); }
}


/* Responsive: móvil (<600px) */
@media (max-width: 600px) {
    .agro-franja--f1 {
        grid-template-columns: 1fr;
        grid-template-areas:
            "col60"
            "col40"
            "adlateral"
            "destacados";
    }
    .agro-franja--f1 > .widget:nth-child(1) {
        border-bottom: 1px solid var(--gris-borde);
        padding-bottom: 20px;
    }
    .agro-f1-lateral {
        grid-area: adlateral;
        flex-direction: column;
        gap: 12px;
    }
    .agro-f1-lateral > .widget {
        flex: 1 1 100%;
    }

    /* W3 Destacados: imagen 40% float, texto al lado */
    .agro-franja--f1 > .widget:nth-child(3) article.entry > a.alignleft,
    .agro-franja--f1 > .widget:nth-child(3) article.entry > a.alignright,
    .agro-franja--f1 > .widget:nth-child(3) article.entry > a.alignnone {
        float: left !important;
        width: 40% !important;
        height: auto !important;
        margin: 0 10px 4px 0 !important;
    }
    .agro-franja--f1 > .widget:nth-child(3) article.entry > a.alignleft img,
    .agro-franja--f1 > .widget:nth-child(3) article.entry > a.alignright img,
    .agro-franja--f1 > .widget:nth-child(3) article.entry > a.alignnone img {
        width: 100% !important;
        height: auto !important;
    }
    .agro-franja--f1 > .widget:nth-child(3) .entry-content { display: none !important; }
    .agro-franja--f1 > .widget:nth-child(3) .entry-categories { margin-bottom: 3px !important; }
}


/* ── Franja 0 — Banners Top ──────────────────────────────────────
   3 modos sin tocar código:
   · 2 widgets              → 50/50
   · 1 widget               → 50% izquierda
   · 1 widget + clase "banner-full" → 100% ancho
   ──────────────────────────────────────────────────────────── */
.agro-franja--f0 {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 25px;
    margin-bottom: 7px;
    padding: 0 20px;
    box-sizing: border-box;
}

/* 1 widget: siempre 100% ancho, sin padding ni margen */
.agro-franja--f0 > .widget {
    flex: 0 0 100%;
    box-sizing: border-box;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
}

/* Reset estructura ul/li que inyecta AdRotate */
.agro-franja--f0 ul,
.agro-franja--f0 li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    width: 100% !important;
}

/* Contenedores AdRotate — gsmints (grupo) y adrotate_ad (anuncio individual) */
.agro-franja--f0 [class*="gsmints"],
.agro-franja--f0 [class*="gsmints"] a,
.agro-franja--f0 .adrotate_ad,
.agro-franja--f0 .adrotate_ad a {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Imagen: 100% ancho, margen inferior de separación */
.agro-franja--f0 img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}

/* Móvil: cada banner ocupa el 100% */
@media (max-width: 600px) {
    .agro-franja--f0 > .widget {
        flex: 0 0 100%;
    }
}


/* ── Franja 2 (agro-f2) y Franja 6 (agro-f6) — Banners 50/50 ──
   Estructura idéntica: 2 widgets lado a lado, 50% cada uno.
   ──────────────────────────────────────────────────────────── */
:is(.agro-franja--f2, .agro-franja--f6) {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
:is(.agro-franja--f2, .agro-franja--f6) > .widget {
    flex: 0 0 calc(50% - 10px);
    box-sizing: border-box;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
}
/* Banners AdRotate a ancho completo del widget-contenedor */
:is(.agro-franja--f2, .agro-franja--f6) .gsmints-single,
:is(.agro-franja--f2, .agro-franja--f6) .gsmints-single a,
:is(.agro-franja--f2, .agro-franja--f6) .gsmints-single img,
:is(.agro-franja--f2, .agro-franja--f6) .adrotate_ad,
:is(.agro-franja--f2, .agro-franja--f6) .adrotate_ad a,
:is(.agro-franja--f2, .agro-franja--f6) .adrotate_ad img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
}
/* Móvil: cada banner ocupa el 100% */
@media (max-width: 600px) {
    :is(.agro-franja--f2, .agro-franja--f6) > .widget { flex: 0 0 100%; }
    .agro-franja--f6,
    .agro-franja--f2,
    .agro-franja--f0 { padding-left: 0; padding-right: 0; }
}


/* ── Banner pair — sistema 2-up 50/50 ──────────────────────────
   Usado en f0, f2, f6 y banners centrales de categorías.
   Siempre muestra 2 slots lado a lado. En móvil, apilados.
   ──────────────────────────────────────────────────────────── */
.agro-banner-pair {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
    box-sizing: border-box;
}

.agro-banner-slot {
    flex: 0 0 calc(50% - 10px);
    box-sizing: border-box;
    min-width: 0;
    padding: 10px;
}

.agro-banner-slot [class*="gsmints"],
.agro-banner-slot [class*="gsmints"] a,
.agro-banner-slot .adrotate_ad,
.agro-banner-slot .adrotate_ad a,
.agro-banner-slot img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}

/* Banner doble: ocupa el ancho completo del par */
.agro-banner-slot--doble {
    flex: 0 0 100% !important;
}

@media (max-width: 600px) {
    .agro-banner-slot {
        flex: 0 0 100%;
        padding: 0;
    }
}



/* ── Franja Patrocinada ──────────────────────────────────────
   Layout: [foto + texto (W1)] [logo patrocinador (W2)]
   Color de fondo: campo personalizado "patrocinado_bg" en el post
   ──────────────────────────────────────────────────────────── */
.agro-franja--fp {
    display: grid;
    grid-template-columns: 1fr 180px;
    gap: 20px;
    align-items: center;
    background: #f5f5f5;
    padding: 20px;
    border-radius: 4px;
    box-sizing: border-box;
    margin-left: 12px;
    margin-right: 12px;
}

.agro-franja--fp a.alignleft,
.agro-franja--fp a.alignright {
    width: 260px !important;
    margin: 0 20px 0 0 !important;
}

.agro-franja--fp a.alignleft img,
.agro-franja--fp a.alignright img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}


.agro-franja--fp article.entry { margin: 0; padding: 0; border-bottom: none !important; }
/* BFC: título y excerpt nunca desbordan bajo la foto */
.agro-franja--fp article.entry > .entry-header,
.agro-franja--fp article.entry > .entry-content { overflow: hidden; }
.agro-franja--fp .entry-header { margin: 0 0 6px; padding: 0; }
.agro-franja--fp .entry-categories { margin: 0 0 6px; }

.agro-franja--fp .entry-title {
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    border: none !important;
}

.agro-franja--fp .entry-title a { color: inherit; text-decoration: none; border: none !important; }
.agro-franja--fp .entry-title a:hover { color: var(--muted-teal-2); }
.agro-franja--fp article.entry:has(> a:hover) .entry-title a { color: var(--muted-teal-2); }
.agro-franja--fp .entry-content { margin: 0; padding: 0; }
.agro-franja--fp .entry-content p { font-size: var(--t-sm); color: #555; margin: 0 !important; line-height: 1.5; }

.agro-franja--fp .entry-image,
.agro-franja--fp .entry-image::before { all: unset; }
.agro-franja--fp .entry-image img { position: static !important; width: 100% !important; height: auto !important; display: block !important; }

.agro-franja--fp > .widget:nth-child(2) { display: flex; align-items: center; justify-content: center; }
.agro-franja--fp > .widget:nth-child(2) img { max-width: 100%; height: auto; display: block; }

@media (max-width: 600px) {
    .agro-franja--fp { grid-template-columns: 1fr; }
    .agro-franja--fp > .widget:nth-child(2) { justify-content: center; max-width: 140px; margin: 0 auto; }
    .agro-franja--fp a.alignleft,
    .agro-franja--fp a.alignright { float: none !important; width: 100% !important; margin: 0 0 12px 0 !important; }
}


/* ── Franja 3 — Noticias ─────────────────────────────────────
   W1: noticia grande vertical (foto 100% + texto debajo)
   W2: Featured Posts con 2 noticias (foto izq + texto dcha)
   ──────────────────────────────────────────────────────────── */
.agro-franja--f3 {
    display: grid;
    grid-template-columns: var(--banner-w) 1fr 272px;
    gap: 20px;
    align-items: start;
}

/* Reordenar widgets: W3 primero, W2 segundo, W1 tercero */
.agro-franja--f3 > .widget:nth-child(1) { order: 3; }
.agro-franja--f3 > .widget:nth-child(2) { order: 2; }
.agro-franja--f3 > .widget:nth-child(3) { order: 1; }

/* W2 — noticias apiladas: foto izq + texto dcha */
.agro-franja--f3 > .widget:nth-child(2) {
    padding-left: 0;
}

.agro-franja--f3 > .widget:nth-child(2) .widget-wrap {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.agro-franja--f3 > .widget:nth-child(2) article.entry {
    overflow: hidden;
    border-bottom: none !important;
}

.agro-franja--f3 > .widget:nth-child(2) a.alignleft,
.agro-franja--f3 > .widget:nth-child(2) a.alignright,
.agro-franja--f3 > .widget:nth-child(2) a.alignnone {
    width: 40% !important;
    margin: 0 16px 0 0 !important;
    float: left !important;
}

.agro-franja--f3 > .widget:nth-child(2) a img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

/* Separadores entre noticias */
.agro-franja--f3 > .widget:nth-child(2) article.entry:not(:last-child) {
    border-bottom: 1px solid var(--gris-borde) !important;
    padding-bottom: 10px;
}


/* Títulos F3 */
.agro-franja--f3 > .widget:nth-child(2) .entry-title { font-size: 21px !important; line-height: 1.25; margin-top: 0 !important; }
.agro-franja--f3 > .widget:nth-child(2) article.entry { padding-top: 0 !important; }
.agro-franja--f3 > .widget:nth-child(2) article.entry:last-child { padding-top: 15px !important; }

/* BFC: título y excerpt nunca desbordan bajo la foto */
.agro-franja--f3 > .widget:nth-child(2) article.entry > .entry-header,
.agro-franja--f3 > .widget:nth-child(2) article.entry > .entry-content {
    overflow: hidden;
}

/* ── Lo más leído — slider ranking ── */

/* Contenedor: fondo rojo, título dentro */
.agro-franja--f3 > .widget:nth-child(1) {
    background-color: var(--brick-ember);
    padding: 8px 8px 16px;
    box-sizing: border-box;
    position: relative;
    border-radius: 6px;
    margin-top: 0;
    z-index: 2;
    overflow: visible;
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.agro-franja--f3 > .widget:nth-child(1) .widgettitle,
.agro-franja--f3 > .widget:nth-child(1) .widget-title {
    position: relative;
    left: 0;
    width: max-content;
    display: inline-block;
    color: #ffffff !important;
    background: none !important;
    font-family: 'FuturaFuturis', sans-serif;
    font-weight: bold;
    font-style: normal;
    text-transform: uppercase;
    font-size: 19px;
    line-height: 1.4;
    text-align: left;
    padding: 0 0 5px 0 !important;
    margin: 0 0 16px 20px;
}

/* Línea gruesa */
.agro-franja--f3 > .widget:nth-child(1) .widgettitle::before,
.agro-franja--f3 > .widget:nth-child(1) .widget-title::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 110%;
    height: 4px;
    background-color: #ffffff;
    z-index: 1;
    border-radius: 1px;
}

/* Línea fina */
.agro-franja--f3 > .widget:nth-child(1) .widgettitle::after,
.agro-franja--f3 > .widget:nth-child(1) .widget-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 5000px;
    height: 1px;
    background-color: #ffffff;
    opacity: 0.5;
}

/* widget-wrap = viewport del slider */
.agro-franja--f3 > .widget:nth-child(1) .widget-wrap {
    overflow: hidden;
    position: relative;
    padding-right: 5px;
}

/* ul en fila — transform aplicado por JS */
.agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow: visible;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 0;
    counter-reset: top-5-ranking 0;
    will-change: transform;
}

/* Cada ítem ocupa el 100% del viewport */
.agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li {
    flex: 0 0 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    width: 210px;
    padding: 0 20px;
    margin: 0;
    border: none !important;
    position: relative;
    counter-increment: top-5-ranking;
}
/* Separador blanco antes de los dots (pisa border:none de arriba) */
.agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li {
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.5) !important;
    padding-bottom: 10px;
}

/* Número encima de la imagen */
.agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li::before {
    content: counter(top-5-ranking);
    position: absolute;
    top: 8px;
    left: 39px;
    font-family: 'FuturaFuturis', sans-serif;
    font-size: 52px;
    font-weight: 900;
    line-height: 1;
    color: var(--brick-ember);
    -webkit-text-stroke: 2px var(--blanco);
    paint-order: stroke fill;
    z-index: 2;
}

.agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li a {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    text-decoration: none;
    color: #ffffff;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.35;
    transition: color 0.2s;
}

.agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li a:hover {
    color: #dddddd;
}

.agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li a img {
    display: block;
    width: 100%;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    border-radius: 6px;
    margin-bottom: 11px;
}

.agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li a span,
.agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li a p {
    margin: 0;
    padding: 0;
}

.agro-franja--f3 > .widget_mostreadpostswidget .most_and_least_read_posts_hits {
    display: none !important;
}

/* ── Slider dots — base compartida (f3, cats W4, f1 W3, destacados) */
.agro-franja--f3 > .widget_mostreadpostswidget .agro-slider-controls,
.agro-franja--cats > .widget:nth-child(4) .agro-slider-controls,
.agro-franja--f1 > .widget:nth-child(3) .agro-slider-controls,
.agro-destacados .agro-slider-controls {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 6px;
    padding: 0;
}
.agro-franja--f3 > .widget_mostreadpostswidget .agro-slider-dots,
.agro-franja--cats > .widget:nth-child(4) .agro-slider-dots,
.agro-franja--f1 > .widget:nth-child(3) .agro-slider-dots,
.agro-destacados .agro-slider-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.agro-franja--f3 > .widget_mostreadpostswidget .agro-slider-dot,
.agro-franja--cats > .widget:nth-child(4) .agro-slider-dot,
.agro-franja--f1 > .widget:nth-child(3) .agro-slider-dot,
.agro-destacados .agro-slider-dot {
    width: 12px !important;
    height: 12px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    border-radius: 999px !important;
    cursor: pointer;
    appearance: none !important;
    -webkit-appearance: none !important;
}
.agro-franja--f3 > .widget_mostreadpostswidget .agro-slider-dot:focus,
.agro-franja--cats > .widget:nth-child(4) .agro-slider-dot:focus,
.agro-franja--f1 > .widget:nth-child(3) .agro-slider-dot:focus,
.agro-destacados .agro-slider-dot:focus { outline: none; }

/* Color/opacidad por contexto */
/* f3 — Lo más leído: dots blancos */
.agro-franja--f3 > .widget_mostreadpostswidget .agro-slider-dot { background: #fff !important; opacity: 0.35; }
.agro-franja--f3 > .widget_mostreadpostswidget .agro-slider-dot.is-active { opacity: 1; }


/* W3 — columna AdRotate */
.agro-franja--f3 > .widget:nth-child(3) {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
}
.agro-franja--f3 > .widget:nth-child(3) .adrotate_ad,
.agro-franja--f3 > .widget:nth-child(3) .gsmints-single {
    display: block !important;
    width: 100% !important;
}
.agro-franja--f3 > .widget:nth-child(3) a {
    display: block !important;
    width: 100% !important;
}
.agro-franja--f3 > .widget:nth-child(3) img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
}

@media (max-width: 1023px) {
    .agro-franja--f3 { grid-template-columns: 1fr 272px; }
    .agro-franja--f3 > .widget:nth-child(3) { order: -1; grid-column: 1 / -1; }
}
@media (max-width: 600px) {
    .agro-franja--f3 { grid-template-columns: 1fr; }
    .agro-franja--f3 > .widget:nth-child(3) { display: none; }

    /* Lo más leído: en línea (imagen izq + título dch) */
    .agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li {
        align-items: flex-start;
        text-align: left;
        padding: 0;
    }
    .agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li a {
        flex-direction: row;
        align-items: flex-start;
        gap: 10px;
    }
    .agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li a img {
        width: 45% !important;
        flex-shrink: 0;
        margin-bottom: 0;
        border-radius: 4px;
    }
    /* Número: reposicionar sobre la foto */
    .agro-franja--f3 > .widget_mostreadpostswidget .mlrp_ul > li::before {
        left: 5px;
        font-size: 38px;
    }

    /* W2: en línea con imagen 45% y excerpt debajo */
    .agro-franja--f3 > .widget:nth-child(2) { border-left: none; padding-left: 0; }
    .agro-franja--f3 > .widget:nth-child(2) article.entry { overflow: hidden; padding-left: 0 !important; padding-right: 0 !important; }
    .agro-franja--f3 > .widget:nth-child(2) a.alignleft,
    .agro-franja--f3 > .widget:nth-child(2) a.alignright,
    .agro-franja--f3 > .widget:nth-child(2) a.alignnone {
        float: left !important;
        width: 45% !important;
        margin: 0 10px 4px 0 !important;
    }
    .agro-franja--f3 > .widget:nth-child(2) .entry-categories { margin-bottom: 3px !important; }
    .agro-franja--f3 > .widget:nth-child(2) .entry-content { display: none !important; }
}

/* § Franja 3B — Opinión + rejilla 4×2 en columna + banner (clon experimental)
   W1: opinión (foto redonda, igual que f3). W2: Featured Posts 8 noticias
   en grid 4 col × 2 filas, cada noticia en columna (imagen arriba).
   W3: banner vertical.
   ──────────────────────────────────────────────────────────── */

/* Grid exterior: opinión | noticia grande | títulos | banner */
.agro-franja--f8 {
    display: grid;
    grid-template-columns: 1.1fr 1fr 0.9fr var(--banner-w);
    gap: 20px 14px;
    align-items: start;
    position: relative;
}

/* W1 — Opinión */
.agro-franja--f8 > .widget:nth-child(1) {
    background: none !important;
    border-radius: 0;
    padding: 0;
    position: relative;
    z-index: 2;
    overflow: visible;
}

.agro-franja--f8 > .widget:nth-child(1) .widget-wrap {
    position: relative;
    margin-top: 0;
    background-color: var(--blush-accent);
    border-radius: 6px;
    padding: 10px 15px 10px 10px;
    box-sizing: border-box;
    overflow: hidden;
    display: flex !important;
    flex-direction: column;
    gap: 8px;
    align-items: stretch;
}

/* Fila 1: imagen | título  —  Fila 2: tag ancho completo */
.agro-franja--f8 > .widget:nth-child(1) article.entry {
    display: grid !important;
    grid-template-columns: 90px 1fr;
    grid-template-rows: auto auto auto;
    grid-template-areas:
        "img title"
        "tag tag"
        "btn .";
    gap: 12px 12px;
    border-bottom: none !important;
    width: 100%;
}

.agro-franja--f8 > .widget:nth-child(1) article.entry > .agro-comment-btn--abs {
    grid-area: btn;
    position: relative;
    margin: 0;
    align-self: start;
    justify-self: start;
}

.agro-franja--f8 > .widget:nth-child(1) a.alignleft,
.agro-franja--f8 > .widget:nth-child(1) a.alignright,
.agro-franja--f8 > .widget:nth-child(1) a.alignnone,
.agro-franja--f8 > .widget:nth-child(1) a.aligncenter {
    grid-area: img;
    float: none !important;
    display: block !important;
    width: 90px !important;
    height: 90px !important;
    margin: 0 !important;
}

.agro-franja--f8 > .widget:nth-child(1) a img {
    width: 90px !important;
    height: 90px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    display: block !important;
}

/* entry-header transparente al grid */
.agro-franja--f8 > .widget:nth-child(1) .entry-header {
    display: contents;
}

.agro-franja--f8 > .widget:nth-child(1) .entry-categories {
    display: none !important;
}

/* Título: col derecha fila 1, centrado verticalmente */
.agro-franja--f8 > .widget:nth-child(1) .entry-title {
    grid-area: title;
    align-self: center;
    font-size: 18px;
    line-height: 1.3;
    margin: 0;
    text-align: left;
}
.agro-franja--f8 > .widget:nth-child(1) .entry-title a:hover {
    color: var(--brick-ember) !important;
}
.agro-franja--f8 > .widget:nth-child(1) article.entry:has(> a:hover) .entry-title a {
    color: var(--brick-ember) !important;
}

/* Tag: fila 2 ancho completo, alineado izquierda */
.agro-franja--f8 > .widget:nth-child(1) .entry-tags {
    grid-area: tag;
    display: block !important;
    text-align: left;
    font-size: 16px;
    font-family: 'DM Sans', sans-serif !important;
    margin: 0 !important;
    padding: 0 !important;
}

.agro-franja--f8 > .widget:nth-child(1) article.entry:not(:last-child) {
    border-bottom: 1px solid var(--gris-borde) !important;
    padding-bottom: 8px;
}

/* W2 — título posicionado igual que W1 */
.agro-franja--f8 > .widget:nth-child(2) {
    position: relative;
    padding-top: 0;
}

.agro-franja--f8 > .widget:nth-child(2) .widgettitle,
.agro-franja--f8 > .widget:nth-child(2) .widget-title {
    position: absolute;
    top: -28px;
    left: 0;
    background: none !important;
    color: var(--muted-teal) !important;
    font-family: 'FuturaFuturis', sans-serif;
    font-weight: bold;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: var(--futura-ls);
    font-size: 20px;
    line-height: 1.4;
    padding: 0 !important;
    margin: 0;
    border-radius: 0;
}

/* W2 — 1 noticia en columna: imagen arriba, categoría, título, excerpt */
.agro-franja--f8 > .widget:nth-child(2) article.entry {
    border-bottom: none !important;
}

.agro-franja--f8 > .widget:nth-child(2) a.alignleft,
.agro-franja--f8 > .widget:nth-child(2) a.alignright,
.agro-franja--f8 > .widget:nth-child(2) a.alignnone,
.agro-franja--f8 > .widget:nth-child(2) a.aligncenter {
    float: none !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 8px !important;
}

.agro-franja--f8 > .widget:nth-child(2) a img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

.agro-franja--f8 > .widget:nth-child(2) .entry-categories {
    font-size: 12px;
    margin: 0 0 4px;
    padding: 0;
}

.agro-franja--f8 > .widget:nth-child(2) .entry-title {
    font-size: 19px;
    line-height: 1.3;
    margin: 0 0 6px;
}

.agro-franja--f8 > .widget:nth-child(2) .entry-excerpt {
    font-size: 14px;
    line-height: 1.4;
    margin: 0;
    padding: 0;
}

/* W3 — 4 noticias solo categoría + título, en filas */
.agro-franja--f8 > .widget:nth-child(3) .widget-wrap {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.agro-franja--f8 > .widget:nth-child(3) article.entry {
    border-bottom: none !important;
    overflow: hidden;
    padding: 4px 5px 4px !important;
}

.agro-franja--f8 > .widget:nth-child(3) article.entry:not(:last-child) {
    border-bottom: 1px solid var(--gris-borde) !important;
    margin-bottom: 2px;
}

/* Separador vertical entre W2 y W3, centrado en el gap de 14px */
.agro-franja--f8 > .widget:nth-child(3) {
    position: relative;
}
.agro-franja--f8 > .widget:nth-child(3)::before {
    content: '';
    position: absolute;
    left: -7px;
    top: 0;
    height: 100%;
    width: 1px;
    background: var(--gris-borde);
}

/* Ocultar imagen en W3 */
.agro-franja--f8 > .widget:nth-child(3) a.alignleft,
.agro-franja--f8 > .widget:nth-child(3) a.alignright,
.agro-franja--f8 > .widget:nth-child(3) a.alignnone,
.agro-franja--f8 > .widget:nth-child(3) a.aligncenter {
    display: none !important;
}

.agro-franja--f8 > .widget:nth-child(3) .entry-categories {
    font-size: 12px;
    margin: 0 0 3px;
    padding: 0;
}

.agro-franja--f8 > .widget:nth-child(3) .entry-title {
    font-size: 17px;
    line-height: 1.3;
    margin: 0;
}
.agro-franja--f8 > .widget:nth-child(3) .entry-content > p:empty { display: none; }
.agro-franja--f8 > .widget:nth-child(3) .agro-comment-btn--preview { margin-top: 4px; margin-bottom: 6px; }

/* W4 — Banner vertical */
.agro-franja--f8 > .widget:nth-child(4) {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
}

.agro-franja--f8 > .widget:nth-child(4) .adrotate_ad,
.agro-franja--f8 > .widget:nth-child(4) .gsmints-single {
    display: block !important;
    width: 100% !important;
}

.agro-franja--f8 > .widget:nth-child(4) a {
    display: block !important;
    width: 100% !important;
}

.agro-franja--f8 > .widget:nth-child(4) img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
}

/* Responsive */
@media (max-width: 1023px) {
    .agro-franja--f8 { grid-template-columns: 1.1fr 1fr 0.9fr; }
    .agro-franja--f8 > .widget:nth-child(4) { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
    .agro-franja--f8 { grid-template-columns: 1fr; }
    .agro-franja--f8 > .widget:nth-child(1) { grid-column: 1 / -1; }
    .agro-franja--f8 > .widget:nth-child(1) article.entry { grid-template-columns: 90px 1fr; }
    .agro-franja--f8 > .widget:nth-child(1) a.alignleft,
    .agro-franja--f8 > .widget:nth-child(1) a.alignright,
    .agro-franja--f8 > .widget:nth-child(1) a.alignnone,
    .agro-franja--f8 > .widget:nth-child(1) a.aligncenter { width: 90px !important; height: 90px !important; }
    .agro-franja--f8 > .widget:nth-child(1) a img { width: 90px !important; height: 90px !important; }
}

/* § Franja 4B — Cuatro columnas iguales
   ──────────────────────────────────────────────────────────── */

.agro-franja--f4b > .widget:nth-child(1) .widget-wrap {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
}

.agro-franja--f4b article.entry {
    border-bottom: none !important;
    padding-left: 12px;
    padding-right: 12px;
}

/* Separador entre columnas. El último lleva border transparente para que
   las 4 columnas tengan exactamente el mismo ancho de contenido. */
.agro-franja--f4b article.entry:not(:last-child) {
    border-right: 1px solid var(--gris-borde);
}
.agro-franja--f4b article.entry:last-child {
    border-right: 1px solid transparent;
}

.agro-franja--f4b a.alignleft,
.agro-franja--f4b a.alignright,
.agro-franja--f4b a.alignnone,
.agro-franja--f4b a.aligncenter {
    float: none !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 10px 0 !important;
}

.agro-franja--f4b article.entry a img {
    width: 100% !important;
    display: block !important;
}

.agro-franja--f4b .entry-title {
    font-size: 22px !important;
    line-height: 1.3;
    margin: 0 0 8px 0 !important;
}

.agro-franja--f4b .entry-content,
.agro-franja--f4b .entry-content p {
    line-height: 1.5;
    margin: 0 !important;
    color: #666;
}

@media (max-width: 600px) {
    .agro-franja--f4b > .widget:nth-child(1) .widget-wrap { grid-template-columns: repeat(2, 1fr); }

    /* Columna izquierda (1, 3): sin padding exterior izquierdo */
    .agro-franja--f4b article.entry:nth-child(odd) { padding-left: 0 !important; }

    /* Separador vertical entre columnas */
    .agro-franja--f4b article.entry:nth-child(odd)  { border-right: 1px solid var(--gris-borde) !important; padding-right: 7px !important; }
    .agro-franja--f4b article.entry:nth-child(even) { border-right: none !important; padding-right: 0 !important; padding-left: 7px !important; }

    /* Separador horizontal entre fila 1 y fila 2 */
    .agro-franja--f4b article.entry:nth-child(1),
    .agro-franja--f4b article.entry:nth-child(2) { border-bottom: 1px solid var(--gris-borde) !important; padding-bottom: 14px !important; margin-bottom: 14px !important; }

}


/* f4b: mantiene 2 columnas en móvil (2×2) — no se fuerza a 1 columna */

/* § Franja 5 — noticias en línea + noticia en columna + banner
   ──────────────────────────────────────────────────────────── */
.agro-franja--f5 {
    display: grid;
    grid-template-columns: 55fr 20fr var(--banner-w);
    gap: 12px;
    align-items: start;
}

/* W3 — columna banner */
.agro-franja--f5 > .widget:nth-child(3) {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
}
.agro-franja--f5 > .widget:nth-child(3) .adrotate_ad,
.agro-franja--f5 > .widget:nth-child(3) .gsmints-single,
.agro-franja--f5 > .widget:nth-child(3) a,
.agro-franja--f5 > .widget:nth-child(3) img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
}

/* W1 — 2 noticias en línea apiladas */
.agro-franja--f5 > .widget:nth-child(1) .widget-wrap {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.agro-franja--f5 > .widget:nth-child(1) article.entry {
    overflow: hidden;
    border-bottom: none !important;
}
/* BFC: título y excerpt nunca desbordan bajo la foto */
.agro-franja--f5 > .widget:nth-child(1) article.entry > .entry-header,
.agro-franja--f5 > .widget:nth-child(1) article.entry > .entry-content { overflow: hidden; }

.agro-franja--f5 > .widget:nth-child(1) a.alignleft,
.agro-franja--f5 > .widget:nth-child(1) a.alignright,
.agro-franja--f5 > .widget:nth-child(1) a.alignnone {
    width: 35% !important;
    float: left !important;
    margin: 0 16px 0 0 !important;
}

.agro-franja--f5 > .widget:nth-child(1) a img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

.agro-franja--f5 > .widget:nth-child(1) article.entry:not(:last-child) {
    border-bottom: 1px solid var(--gris-borde) !important;
    padding-bottom: 10px;
}

/* W2 — 1 noticia en columna */
.agro-franja--f5 > .widget:nth-child(2) article.entry {
    border-bottom: none !important;
}
/* BFC: título y excerpt nunca desbordan bajo la foto */
.agro-franja--f5 > .widget:nth-child(2) article.entry > .entry-header,
.agro-franja--f5 > .widget:nth-child(2) article.entry > .entry-content { overflow: hidden; }

.agro-franja--f5 > .widget:nth-child(2) a.alignleft,
.agro-franja--f5 > .widget:nth-child(2) a.alignright,
.agro-franja--f5 > .widget:nth-child(2) a.alignnone,
.agro-franja--f5 > .widget:nth-child(2) a.aligncenter {
    float: none !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 12px 0 !important;
}

.agro-franja--f5 > .widget:nth-child(2) a img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

.agro-franja--f5 > .widget:nth-child(1) .entry-title { font-size: 21px !important; line-height: 1.25; margin-top: 0 !important; }
.agro-franja--f5 > .widget:nth-child(2) .entry-title { font-size: 20px !important; line-height: 1.25; margin-top: 0 !important; }

/* Separador entre columnas */
.agro-franja--f5 > .widget:nth-child(2) {
    border-left: 1px solid var(--gris-borde);
    padding-left: 12px;
}

@media (max-width: 1023px) {
    .agro-franja--f5 { grid-template-columns: 55fr 20fr; }
    .agro-franja--f5 > .widget:nth-child(3) { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
    .agro-franja--f5 { grid-template-columns: 1fr; }

    /* W1: imagen 40% float, texto al lado */
    .agro-franja--f5 > .widget:nth-child(1) article.entry { padding: 0 !important; margin-top: 8px !important; }
    .agro-franja--f5 > .widget:nth-child(1) article.entry:first-child { margin-top: 0 !important; }
    .agro-franja--f5 > .widget:nth-child(1) a.alignleft,
    .agro-franja--f5 > .widget:nth-child(1) a.alignnone { width: 40% !important; margin-right: 10px !important; }
    .agro-franja--f5 > .widget:nth-child(1) .entry-content { display: none !important; }
    .agro-franja--f5 > .widget:nth-child(1) .entry-categories { margin-bottom: 3px !important; }

    /* Separador entre W1 y W2 */
    .agro-franja--f5 > .widget:nth-child(1) { border-bottom: 1px solid var(--gris-borde); padding-bottom: 8px; margin-bottom: 8px; }

    /* W2: en línea con float */
    .agro-franja--f5 > .widget:nth-child(2) { border-left: none !important; padding-left: 0 !important; }
    .agro-franja--f5 > .widget:nth-child(2) article.entry { overflow: hidden; padding: 0 !important; }
    .agro-franja--f5 > .widget:nth-child(2) a.alignleft,
    .agro-franja--f5 > .widget:nth-child(2) a.alignnone,
    .agro-franja--f5 > .widget:nth-child(2) a.aligncenter {
        float: left !important;
        width: 40% !important;
        margin: 0 10px 4px 0 !important;
        display: block !important;
    }
    .agro-franja--f5 > .widget:nth-child(2) a img { width: 100% !important; height: auto !important; }
    .agro-franja--f5 > .widget:nth-child(2) .entry-content { display: none !important; }
    .agro-franja--f5 > .widget:nth-child(2) .entry-categories { margin-bottom: 3px !important; }
    .agro-franja--f5 > .widget:nth-child(2) article.entry:not(:last-child) { border-bottom: 1px solid var(--gris-borde) !important; padding-bottom: 10px !important; margin-bottom: 10px !important; }
}

/* § Franja 5B — 4 noticias en columna + banner derecho
   W1: Featured Posts (4 entradas). W2: banner AdRotate.
   ──────────────────────────────────────────────────────────── */
.agro-franja--f5b {
    display: grid;
    grid-template-columns: 1fr var(--banner-w);
    gap: 20px;
    align-items: start;
}

/* W1 — 4 noticias en columnas iguales */
.agro-franja--f5b > .widget:nth-child(1) .widget-wrap {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
}

.agro-franja--f5b article.entry {
    border-bottom: none !important;
    padding-left: 12px;
    padding-right: 12px;
}

/* Separador entre columnas. El último lleva border transparente para que
   las 4 columnas tengan exactamente el mismo ancho de contenido. */
.agro-franja--f5b article.entry:not(:last-child) {
    border-right: 1px solid var(--gris-borde);
}
.agro-franja--f5b article.entry:last-child {
    border-right: 1px solid transparent;
}

.agro-franja--f5b a.alignleft,
.agro-franja--f5b a.alignright,
.agro-franja--f5b a.alignnone,
.agro-franja--f5b a.aligncenter {
    float: none !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 10px 0 !important;
}

.agro-franja--f5b article.entry a img {
    width: 100% !important;
    display: block !important;
}

.agro-franja--f5b .entry-title {
    font-size: 20px !important;
    line-height: 1.3;
    margin: 0 0 8px !important;
}

/* BFC: título y excerpt nunca desbordan bajo la foto (móvil: float-left activo) */
.agro-franja--f5b article.entry > .entry-header,
.agro-franja--f5b article.entry > .entry-content {
    overflow: hidden;
}

/* W2 — banner AdRotate */
.agro-franja--f5b > .widget:nth-child(2) {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
}
.agro-franja--f5b > .widget:nth-child(2) .adrotate_ad,
.agro-franja--f5b > .widget:nth-child(2) .gsmints-single,
.agro-franja--f5b > .widget:nth-child(2) a,
.agro-franja--f5b > .widget:nth-child(2) img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
}

@media (max-width: 1023px) {
    .agro-franja--f5b { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .agro-franja--f5b > .widget:nth-child(1) .widget-wrap { grid-template-columns: 1fr !important; }
    .agro-franja--f5b article.entry { overflow: hidden; padding: 0 !important; border-right: none !important; }
    .agro-franja--f5b a.alignleft,
    .agro-franja--f5b a.alignnone {
        float: left !important;
        width: 40% !important;
        margin: 0 10px 4px 0 !important;
        display: block !important;
    }
    .agro-franja--f5b a img { width: 100% !important; height: auto !important; }
    .agro-franja--f5b .entry-content { display: none !important; }
    .agro-franja--f5b .entry-categories { margin-bottom: 3px !important; }
    .agro-franja--f5b article.entry:not(:last-child) { border-bottom: 1px solid var(--gris-borde) !important; padding-bottom: 10px !important; margin-bottom: 10px !important; }
}


/* § Franja Cats — 4 columnas de categorías destacadas
   ──────────────────────────────────────────────────────────── */
.agro-franja--cats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    align-items: stretch;
}

/* Flex column para empujar el botón al fondo */
.agro-franja--cats > .widget {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    position: relative;
}

/* Padding uniforme en todas las columnas para igualar anchura de contenido */
.agro-franja--cats > .widget {
    padding-left: 12px;
}

/* Padding superior en los 3 primeros widgets */
.agro-franja--cats > .widget:nth-child(1),
.agro-franja--cats > .widget:nth-child(2),
.agro-franja--cats > .widget:nth-child(3) {
    padding-top: 12px;
}

/* Barra separadora en columnas 2-4 */
.agro-franja--cats > .widget:not(:first-child) {
    border-left: 1px solid var(--gris-borde);
}

.agro-franja--cats > .widget .widget-wrap {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    overflow: hidden;
    padding-right: 5px;
}

.agro-franja--cats p.more-from-category {
    margin-top: auto !important;
    padding-top: 12px;
}

.agro-franja--cats article.entry {
    margin: 0;
    padding: 0;
    border-bottom: none !important;
}

/* BFC: título y excerpt nunca desbordan bajo la foto en W1, W2, W3 */
.agro-franja--cats > .widget:nth-child(1) article.entry > .entry-header,
.agro-franja--cats > .widget:nth-child(1) article.entry > .entry-content,
.agro-franja--cats > .widget:nth-child(2) article.entry > .entry-header,
.agro-franja--cats > .widget:nth-child(2) article.entry > .entry-content,
.agro-franja--cats > .widget:nth-child(3) article.entry > .entry-header,
.agro-franja--cats > .widget:nth-child(3) article.entry > .entry-content {
    overflow: hidden;
}

.agro-franja--cats article.entry:not(:last-of-type) {
    border-bottom: 1px solid var(--gris-borde) !important;
    padding-bottom: 12px;
}

.agro-franja--cats article.entry + article.entry {
    margin-top: 12px;
}

/* Título: FuturaFuturis mayúsculas, igual que cabeceras de categoría */
.agro-franja--cats .widget-title {
    font-family: 'FuturaFuturis', sans-serif;
    font-size: 18px;
    color: var(--brick-ember);
    text-transform: uppercase;
    display: inline-block;
    align-self: flex-start;
    position: relative;
    margin: 0 0 16px 0;
    padding: 0 0 5px 2px;
}

.agro-franja--cats .widget-title a {
    color: inherit;
    text-decoration: none;
}

.agro-franja--cats .widget-title a:hover {
    opacity: 0.8;
}

/* Línea gruesa — bajo el texto */
.agro-franja--cats .widget-title::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 110%;
    height: 4px;
    background-color: var(--brick-ember);
    z-index: 1;
    border-radius: 1px;
}

/* Línea fina — se extiende al ancho del widget */
.agro-franja--cats .widget-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 5000px;
    height: 1px;
    background-color: var(--brick-ember);
    opacity: 0.5;
}

/* Botón "More from category" */
.agro-franja--cats p.more-from-category {
    margin: 12px 0 0 0;
    text-align: center;
}

.agro-franja--cats p.more-from-category a {
    display: inline-block;
    font-family: 'DM Sans', sans-serif;
    font-weight: 500;
    font-size: 13px;
    padding: 5px 12px;
    border-radius: 6px;
    background-color: var(--brick-ember);
    color: #ffffff !important;
    text-decoration: none;
    white-space: nowrap;
    transition: opacity 0.15s ease;
}

.agro-franja--cats p.more-from-category a:hover {
    opacity: 0.85;
}

/* ── Cuarta columna — Entrevistas (estilo slider, igual que Lo más leído) ── */

/* Contenedor: anular reglas generales de cats, aplicar fondo verde */
.agro-franja--cats > .widget:nth-child(4) {
    background-color: var(--muted-teal-2);
    padding: 12px;
    box-sizing: border-box;
    position: relative;
    border-radius: 6px;
    margin-top: 0;
    border-left: none;
    overflow: visible;
}

/* Título: dentro del fondo */
.agro-franja--cats > .widget:nth-child(4) .widget-title {
    position: relative;
    left: 0;
    width: max-content;
    display: inline-block;
    color: #fff !important;
    background: none !important;
    font-family: 'FuturaFuturis', sans-serif;
    font-weight: bold;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: var(--futura-ls);
    font-size: 19px;
    line-height: 1.4;
    text-align: left;
    padding: 0 0 5px 0 !important;
    margin: 0 0 16px 0;
}

/* Línea gruesa */
.agro-franja--cats > .widget:nth-child(4) .widget-title::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 110%;
    height: 4px;
    background-color: #ffffff;
    z-index: 1;
    border-radius: 1px;
}

/* Línea fina */
.agro-franja--cats > .widget:nth-child(4) .widget-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 5000px;
    height: 1px;
    background-color: #ffffff;
    opacity: 0.5;
}

/* widget-wrap = viewport del slider */
.agro-franja--cats > .widget:nth-child(4) .widget-wrap {
    overflow: hidden;
    position: relative;
    flex: unset;
    padding-right: 5px;
}

/* ul en fila — transform aplicado por JS */
.agro-franja--cats > .widget:nth-child(4) .mlrp_ul {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow: visible;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 0;
    will-change: transform;
}

/* Cada ítem ocupa el 100% del viewport, sin números */
.agro-franja--cats > .widget:nth-child(4) .mlrp_ul > li {
    flex: 0 0 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0 12px;
    margin: 0;
    border: none !important;
    position: relative;
}

.agro-franja--cats > .widget:nth-child(4) .mlrp_ul > li::before {
    display: none;
}

/* Enlace */
.agro-franja--cats > .widget:nth-child(4) .mlrp_ul > li a {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    text-decoration: none;
    color: #ffffff;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.35;
}

.agro-franja--cats > .widget:nth-child(4) .mlrp_ul > li a:hover {
    color: #ffffff;
}

/* Imagen: ancho 100% (lo da la columna), proporción 3:2 */
.agro-franja--cats > .widget:nth-child(4) .mlrp_ul > li a img {
    display: block;
    width: 100%;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    border-radius: 14px;
    margin-bottom: 11px;
}

.agro-franja--cats > .widget:nth-child(4) .mlrp_ul > li a span,
.agro-franja--cats > .widget:nth-child(4) .mlrp_ul > li a p {
    margin: 0;
    padding: 0;
}

.agro-franja--cats > .widget:nth-child(4) .most_and_least_read_posts_hits {
    display: none !important;
}

/* Títulos de artículo en blanco y centrados */
.agro-franja--cats > .widget:nth-child(4) .entry-title,
.agro-franja--cats > .widget:nth-child(4) .entry-title a {
    color: #ffffff !important;
    text-align: center !important;
}

/* cats W4 — Lo más leído: dots teal */
.agro-franja--cats > .widget:nth-child(4) .agro-slider-dot { background: var(--muted-teal-2) !important; opacity: 0.35; }
.agro-franja--cats > .widget:nth-child(4) .agro-slider-dot.is-active { opacity: 1; }

@media (max-width: 600px) {
    .agro-franja--cats { grid-template-columns: 1fr; padding-left: 0; }
    .agro-franja--cats > .widget:not(:first-child) { border-left: none !important; }
    .agro-franja--cats > .widget:nth-child(1) article.entry,
    .agro-franja--cats > .widget:nth-child(2) article.entry,
    .agro-franja--cats > .widget:nth-child(3) article.entry { overflow: hidden; padding: 0 !important; }
    .agro-franja--cats > .widget:nth-child(1) a.alignleft,
    .agro-franja--cats > .widget:nth-child(1) a.alignright,
    .agro-franja--cats > .widget:nth-child(1) a.alignnone,
    .agro-franja--cats > .widget:nth-child(2) a.alignleft,
    .agro-franja--cats > .widget:nth-child(2) a.alignright,
    .agro-franja--cats > .widget:nth-child(2) a.alignnone,
    .agro-franja--cats > .widget:nth-child(3) a.alignleft,
    .agro-franja--cats > .widget:nth-child(3) a.alignright,
    .agro-franja--cats > .widget:nth-child(3) a.alignnone {
        float: left !important;
        width: 40% !important;
        margin: 0 10px 4px 0 !important;
        display: block !important;
    }
    .agro-franja--cats > .widget:nth-child(1) a img,
    .agro-franja--cats > .widget:nth-child(2) a img,
    .agro-franja--cats > .widget:nth-child(3) a img { width: 100% !important; height: auto !important; }
    .agro-franja--cats > .widget:nth-child(1) .entry-content,
    .agro-franja--cats > .widget:nth-child(2) .entry-content,
    .agro-franja--cats > .widget:nth-child(3) .entry-content { display: none !important; }
    .agro-franja--cats > .widget:nth-child(1) .entry-categories,
    .agro-franja--cats > .widget:nth-child(2) .entry-categories,
    .agro-franja--cats > .widget:nth-child(3) .entry-categories { margin-bottom: 3px !important; }
    .agro-franja--cats > .widget:nth-child(1) article.entry:not(:last-of-type),
    .agro-franja--cats > .widget:nth-child(2) article.entry:not(:last-of-type),
    .agro-franja--cats > .widget:nth-child(3) article.entry:not(:last-of-type) { border-bottom: 1px solid var(--gris-borde) !important; padding-bottom: 10px !important; margin-bottom: 10px !important; }
}


/* ============================================================
   § 7. CATEGORÍAS / ARCHIVO
   ============================================================ */

/* Cabecera de categoría: título izq + subcategorías dcha */
.archive-category-header {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 16px;
    margin: 25px 0 28px 15px;
    padding-bottom: 0;
    padding-right: 5px;
    overflow: hidden;
}

.archive-category-header::before {
    content: "";
    position: absolute;
    left: 0; right: 0; bottom: 0;
    height: 1px;
    background-color: var(--sp-color, var(--brick-ember));
    opacity: 0.5;
}

.category .archive-title-izq {
    font-family: 'FuturaFuturis', sans-serif;
    font-weight: bold;
    font-size: 25px;
    text-transform: uppercase;
    color: var(--sp-color, var(--brick-ember));
    letter-spacing: var(--futura-ls);
    margin: 0;
    padding: 0 8px 5px 8px;
    position: relative;
    display: inline-block;
    flex: 0 0 auto;
}

/* Línea gruesa */
.category .archive-title-izq::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 110%;
    height: 4px;
    background-color: var(--sp-color, var(--brick-ember));
    border-radius: 1px;
}

/* Línea fina */
.category .archive-title-izq::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 5000px;
    height: 1px;
    background-color: var(--sp-color, var(--brick-ember));
    opacity: 0.5;
}

.archive-subcategories {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
    flex: 1 1 auto;
    max-width: 100%;
    align-self: flex-end;
}

.archive-category-header .archive-subcategories a {
    font-family: 'DM Sans', sans-serif;
    font-weight: 500;
    font-size: 11px;
    padding: 2px 7px;
    border-radius: 5px;
    margin: 0 6px 6px 0;
    white-space: nowrap;
}

@media (max-width: 600px) {
    .archive-category-header .archive-subcategories { display: none !important; }
}

/* ── Sistema de patrocinio de categoría ───────────────────────────────────── */

/*
 * Barra doble en cabecera de categoría:
 *   - Gruesa (4px): archive-title-izq::before — solo bajo el texto del título
 *   - Fina  (1px): archive-category-header::before — span total del contenedor
 * La fina usa --sp-bar (color secundario del patrocinador).
 */

/* Cuando hay patrocinador: el container pasa a columna para separar fila-cabecera
   de subcategorías. align-items:stretch para que la fila ocupe todo el ancho. */
.archive-category-header.is-sponsored {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
}

/* La línea fina usa el color secundario del patrocinador */
.archive-category-header.is-sponsored::before {
    background-color: var(--sp-bar, var(--brick-ember));
}

/* Fila interna: título + bloque patrocinador — el título no se separa de su barra */
.agro-cat-header-row {
    display: flex;
    align-items: flex-end;
    flex-wrap: nowrap;
    gap: 24px;
    width: 100%;
}

/* Bloque "Con el apoyo de" + logo: puede comprimir y sus elementos se apilan si no caben */
.category-sponsor {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 10px;
    flex: 0 1 auto;
    min-width: 0;
    padding-bottom: 5px;
    margin-bottom: 8px;
    white-space: normal;
}

/* Subcategorías debajo de la fila de título+patrocinador cuando hay patrocinador */
.archive-category-header.is-sponsored .archive-subcategories {
    margin-top: 8px;
    margin-bottom: 0;
}

.sponsor-label {
    font-family: 'DM Sans', sans-serif;
    font-size: 0.82em;
    font-weight: 500;
    color: #555;
    white-space: nowrap;
}

.sponsor-logo-link {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    flex-shrink: 0;
}

.sponsor-logo-img {
    max-height: 40px;
    width: auto;
    display: block;
}

/* Imagotipo junto al badge de categoría en listas */
.agro-sponsor-imagotype {
    max-height: 19px;
    width: auto;
    display: inline-block;
    margin: 0 6px 6px 0;
    vertical-align: middle;
    flex-shrink: 0;
}

/* Logo en ítems del menú de navegación */
.agro-sponsor-nav-logo {
    max-height: 18px;
    width: auto;
    vertical-align: middle;
    margin-left: 5px;
}

/* Mini-cabecera en artículo de categoría patrocinada (ancho del contenido, solo línea fina) */
.single-sponsor-header {
    padding: 8px 0;
    border-bottom: 1px solid var(--sp-bar, var(--brick-ember));
    margin-bottom: 20px;
}

.single-sponsor-header .category-sponsor {
    padding-bottom: 0;
    white-space: normal;
}

/* Títulos en archivo/categoría */
body.category .entry-header .entry-title a.entry-title-link,
body.archive  .entry-header .entry-title a.entry-title-link,
body.category h2.entry-title a.entry-title-link,
body.archive  h2.entry-title a.entry-title-link {
    font-size: 24px;
    line-height: 1.25;
}

/* Margen lateral en móvil para categoría */
@media (max-width: 600px) {
    .category .site-inner,
    .category .content-sidebar-wrap,
    .category .content {
        padding-left: 0;
        padding-right: 0;
        box-sizing: border-box;
    }
}


/* ============================================================
   § 8. NOTICIA INDIVIDUAL (single)
   ============================================================ */

/* Grid: artículo + lateral sticky (igual que category.php) */
.agro-single-franja--contenido {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: var(--f-gap);
    align-items: start;
    margin: 16px auto var(--f-mb);
}

.agro-single-contenido {
    display: flex;
    flex-direction: column;
}

@media (min-width: 1101px) {
    .agro-single-contenido {
        padding-left: 40px;
        padding-right: 40px;
    }
}

.single .entry-title {
    font-size: 41px;
    margin-top: 18px;
    margin-bottom: 8px;
}

/* Meta row: fecha izq · comentarios dcha */
.single .entry-meta {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
}
.agro-meta-left {
    flex: 1;
}

/* Bocadillo de comentarios */
.agro-comment-btn {
    display: inline-flex;
    align-items: center;
    position: relative;
    background: #d6d6d6;
    border-radius: 8px;
    padding: 5px 16px;
    font-size: 14px;
    font-weight: 700;
    color: #555555;
    text-decoration: none;
    white-space: nowrap;
    line-height: 1;
    flex-shrink: 0;
    margin-bottom: 6px;
}
.agro-comment-btn::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 11px;
    border: 5px solid transparent;
    border-top-color: #d6d6d6;
    border-bottom: none;
}
.agro-comment-btn:hover {
    background: var(--muted-teal-2);
    color: #fff;
}
.agro-comment-btn:hover::after {
    border-top-color: var(--muted-teal-2);
}

/* Etiquetas (tags) bajo el título */
.agro-single-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 16px;
}
.agro-single-tag {
    display: inline-block;
    color: #333333;
    font-size: 20px;
    font-weight: 600;
    text-decoration: none;
}
.agro-single-tag:hover {
    text-decoration: underline;
}

.single .entry-content,
.single .entry-content p {
    font-size: 22px;
    font-family: 'DM Sans', sans-serif;
    line-height: 1.8;
}

.single .entry-content h2,
.single .entry-content h3,
.single .entry-content h4,
.single .entry-content h5,
.single .entry-content h6 {
    font-family: 'Noto Sans', sans-serif;
    font-weight: 700;
}

.single .entry-content h2 { font-size: 34px; }
.single .entry-content h3 { font-size: 28px; }

/* Enlaces dentro del cuerpo del artículo */
.single-post .entry-content a {
    font-weight: 700;
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 2px;
    color: var(--muted-teal) !important;
}

/* Espaciado entre párrafos y antes de encabezados */
.single .entry-content p {
    margin-bottom: 1em;
}

.single .entry-content h2,
.single .entry-content h3 {
    margin-top: 2em;
    margin-bottom: 0.9em;
}

/* Imágenes del cuerpo del artículo: margen en el conjunto (figure cubre imagen + pie) */
.single .entry-content figure {
    margin-bottom: 1.2em;
}
.single .entry-content img[class*="wp-image"]:not(figure img) {
    margin-bottom: 1.2em;
}

/* Pies de foto */
.single .entry-content figcaption {
    font-size: 16px;
    text-align: center;
}

/* Tablas: 16px + franjas alternadas */
.single .entry-content table {
    width: 100%;
    border-collapse: collapse;
    font-size: 16px;
    margin: 1.5em 0;
}

.single .entry-content table th,
.single .entry-content table td {
    padding: 10px 14px;
    text-align: left;
    vertical-align: top;
    border: none;
}

.single .entry-content table thead th {
    background-color: var(--muted-teal);
    color: var(--blanco);
    font-weight: 600;
}

.single .entry-content table tbody tr:nth-child(odd)  { background-color: #f5f9f5; }
.single .entry-content table tbody tr:nth-child(even) { background-color: #ffffff; }

/* Fecha en entry-meta */
.single .entry-meta {
    font-size: 15px;
}

/* Botón de categoría: respetar capitalización del registro (hereda uppercase de style.css) */
.single .entry-meta .cat-links a,
.single .entry-meta .entry-categories a {
    text-transform: none;
}

/* "Te puede interesar" */
.agro-single-relacionadas {
    margin: 24px auto 48px;
    padding-left: 20px;
    padding-right: 20px;
}

.agro-single-relacionadas-titulo {
    font-family: 'FuturaFuturis', sans-serif;
    font-size: 22px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: var(--futura-ls);
    color: var(--brick-ember);
    margin: 0;
    padding: 0;
}

.agro-single-relacionadas-grid {
    display: flex;
    flex-direction: row;
    background: #f7f7f7;
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    padding: 20px;
    box-sizing: border-box;
}

.agro-single-relacionada {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 0 20px;
}

.agro-single-relacionada:first-child { padding-left: 0; }
.agro-single-relacionada:last-child  { padding-right: 0; }

.agro-single-relacionada:not(:last-child) {
    border-right: 1px solid #e0e0e0;
}

.agro-single-relacionada img {
    width: 100%;
    aspect-ratio: 3/2;
    object-fit: cover;
    display: block;
    padding-bottom: 7px;
}
.agro-single-relacionada .agro-sponsor-imagotype {
    width: auto;
    aspect-ratio: unset;
    display: inline-block;
    padding-bottom: 0;
}

.agro-single-relacionada-meta {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.agro-single-relacionada .rel-fecha {
    font-size: 13px;
    color: var(--gris);
}

.agro-single-relacionada .rel-titulo {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.3;
    margin: 0;
}

.agro-single-relacionada .rel-titulo a {
    color: #000;
    text-decoration: none;
}

.agro-single-relacionada .rel-titulo a:hover { color: var(--muted-teal); }

@media (max-width: 600px) {
    .agro-single-relacionadas-grid { flex-direction: column; }
    .agro-single-relacionada { padding: 12px 0; border-right: none !important; }
    .agro-single-relacionada:not(:last-child) { border-bottom: 1px solid #e0e0e0; }
}


/* Anuncios inyectados entre párrafos (<1024px) — misma apariencia que lateral */
.agro-intext-ad {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: flex-start !important;
    max-width: 60vw !important;
    margin: 24px auto !important;
}

.agro-intext-ad .gsmints-col,
.agro-intext-ad .gsmints-col a,
.agro-intext-ad .gsmints-col img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

/* Lateral sticky — identical a category.php */
.agro-single-franja--contenido .agro-cat-lateral {
    position: sticky;
    top: 20px;
}

.agro-single-comments {
    margin: var(--f-mb) auto 48px;
}

.single .comments-area {
    padding-left: 10px;
    padding-right: 10px;
    box-sizing: border-box;
}

/* < 1024px → banner lateral salta a fila nueva */
@media (max-width: 1023px) {
    .agro-single-franja--contenido { grid-template-columns: 1fr; }
}



@media (max-width: 600px) {
    /* Contenedores: sin padding ni margen — el F0 queda de borde a borde */
    .single .site-inner,
    .single .content-sidebar-wrap,
    .single .content {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box;
    }

    /* Padding solo en los elementos de texto del artículo */
    .single .entry,
    .single .entry-footer {
        padding-left: 10px;
        padding-right: 10px;
        box-sizing: border-box;
    }
}

/* Fecha en portada */
main.content p.fecha {
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
}

/* Títulos negrilla en artículos generales */
article.post .entry-title a {
    font-weight: bold !important;
}


/* ============================================================
   § 9. SIDEBAR
   ============================================================ */

/* Base independiente del body — evita fluctuaciones entre breakpoints */
.sidebar-primary {
    font-size: 14px;
}

/* ----------------------------------------------------------
   BASE COMÚN — widgets de noticias en sidebar
   ---------------------------------------------------------- */
.sidebar-primary .widget.featured-content,
.sidebar-primary .widget.widget_mostreadpostswidget,
.sidebar-primary .widget.widget_recent_entries {
    border-radius: 6px;
    padding: 12px 14px;
    box-sizing: border-box;
    margin-bottom: 20px;
    margin-top: 10px;
}

.sidebar-primary .widget.featured-content .widgettitle,
.sidebar-primary .widget.featured-content .widget-title,
.sidebar-primary .widget.widget_mostreadpostswidget .widgettitle,
.sidebar-primary .widget.widget_mostreadpostswidget .widget-title,
.sidebar-primary .widget.widget_recent_entries .widgettitle,
.sidebar-primary .widget.widget_recent_entries .widget-title {
    font-family: 'FuturaFuturis', sans-serif;
    font-style: normal;
    font-weight: bold;
    text-transform: uppercase;
    text-align: left;
    font-size: 13px;
    line-height: 1.3;
    margin: 0 0 10px;
    border-radius: 4px;
    padding: 8px 10px;
}

.sidebar-primary .widget.featured-content ul,
.sidebar-primary .widget.widget_mostreadpostswidget ul,
.sidebar-primary .widget.widget_recent_entries ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.sidebar-primary .widget.featured-content ul li,
.sidebar-primary .widget.widget_mostreadpostswidget ul li,
.sidebar-primary .widget.widget_recent_entries ul li {
    padding: 6px 0 8px;
    margin: 0;
    border-bottom: 1px solid rgba(0,0,0,0.14);
}

.sidebar-primary .widget.featured-content ul li a,
.sidebar-primary .widget.featured-content .entry-title a,
.sidebar-primary .widget.widget_mostreadpostswidget ul li a,
.sidebar-primary .widget.widget_recent_entries ul li a {
    display: block;
    text-align: left;
    font-size: 14px;
    line-height: 1.35;
    text-decoration: none;
}

.sidebar-primary .widget.featured-content .post-date,
.sidebar-primary .widget.featured-content time.entry-time,
.sidebar-primary .widget.widget_mostreadpostswidget .post-date,
.sidebar-primary .widget.widget_recent_entries .post-date,
.sidebar-primary .widget.widget_recent_entries span.post-date {
    display: block;
    font-size: 12px;
    line-height: 1.2;
    margin-bottom: 2px;
}

.sidebar-primary .widget.featured-content article.post {
    padding: 0 !important;
    box-sizing: border-box !important;
}

.sidebar-primary .widget.featured-content img,
.sidebar-primary .widget.widget_mostreadpostswidget img,
.sidebar-primary .widget.widget_recent_entries img {
    display: block;
    float: none !important;
    margin: 7px auto !important;
    margin-left: 10px !important;
}

/* última barra de cualquier widget */
.sidebar-primary .widget article:last-child,
.sidebar-primary .widget .entry:last-child,
.sidebar-primary .widget ul li:last-child {
    border-bottom: none !important;
}

/* ----------------------------------------------------------
   PALETA POR DEFECTO — variables de color por widget
   ---------------------------------------------------------- */
.sidebar-primary .widget.featured-content,
.sidebar-primary .widget.widget_mostreadpostswidget,
.sidebar-primary .widget.widget_recent_entries {
    --w-bg:        #fafafa;
    --w-title-bg:  var(--muted-teal-2);
    --w-title-txt: var(--blanco);
    --w-link:      #000000;
    --w-link-hov:  var(--muted-teal);
    --w-date:      rgba(0,0,0,0.55);
    background-color: var(--w-bg);
}

.sidebar-primary .widget.featured-content .widgettitle,
.sidebar-primary .widget.featured-content .widget-title,
.sidebar-primary .widget.widget_mostreadpostswidget .widgettitle,
.sidebar-primary .widget.widget_mostreadpostswidget .widget-title,
.sidebar-primary .widget.widget_recent_entries .widgettitle,
.sidebar-primary .widget.widget_recent_entries .widget-title {
    background-color: var(--w-title-bg);
    color: var(--w-title-txt);
}

.sidebar-primary .widget.featured-content ul li a,
.sidebar-primary .widget.featured-content .entry-title a,
.sidebar-primary .widget.widget_mostreadpostswidget ul li a,
.sidebar-primary .widget.widget_recent_entries ul li a {
    color: var(--w-link) !important;
}

.sidebar-primary .widget.featured-content ul li a:hover,
.sidebar-primary .widget.featured-content .entry-title a:hover,
.sidebar-primary .widget.widget_mostreadpostswidget ul li a:hover,
.sidebar-primary .widget.widget_recent_entries ul li a:hover {
    color: var(--w-link-hov) !important;
}

.sidebar-primary .widget.featured-content .post-date,
.sidebar-primary .widget.featured-content time.entry-time,
.sidebar-primary .widget.widget_mostreadpostswidget .post-date,
.sidebar-primary .widget.widget_recent_entries .post-date,
.sidebar-primary .widget.widget_recent_entries span.post-date {
    color: var(--w-date);
}



/* f1 W3 entrevistas — separador teal encima de los dots */
.agro-franja--f1 > .widget:nth-child(3) .agro-slider-controls {
    border-top: 0.5px solid rgba(121, 171, 142, 0.5);
    padding-top: 8px;
    margin-top: 8px;
}
/* f1 W3 entrevistas — dots blancos, active teal */
.agro-franja--f1 > .widget:nth-child(3) .agro-slider-dot { background: #fff !important; opacity: 1; }
.agro-franja--f1 > .widget:nth-child(3) .agro-slider-dot.is-active { background: var(--muted-teal-2) !important; }


/* ── Títulos de widgets: FuturaFuturis + colores por sección ── */
.sidebar .widget-title,
.sidebar .widgettitle,
.sidebar .widget-title *,
.sidebar .widgettitle *,
.widget_recent_entries .widget-title,
.widget_recent_entries .widgettitle {
  font-style: normal;
  font-weight: bold;
  font-family: 'FuturaFuturis', sans-serif !important;
  text-transform: uppercase !important;
}

.sidebar .widget_recent_entries .widget-title .lo-ultimo {
  text-transform: none !important;
}
.sidebar .widget_recent_entries .widget-title .categoria {
  text-transform: uppercase !important;
}



/* ============================================================
   § 9.5 DESTACADOS — Noticias en línea rotativas (Slider)
   ============================================================
   Basado en: featured-post-15 (Entrevistas)
   JS: destacados.js
   Uso: <div class="agro-destacados">...</div>
*/

.agro-destacados {
    background-color: var(--mint-cream) !important;
    border-radius: 6px;
    padding: 8px 0.5em;
    box-sizing: border-box;
}

.agro-destacados .widgettitle,
.agro-destacados .widget-title {
    background-color: var(--muted-teal-2);
    color: var(--blanco);
    font-family: 'FuturaFuturis', sans-serif;
    font-style: normal;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 13px;
    line-height: 1.4;
    text-align: right;
    padding: 6px 10px;
    border-radius: 4px;
    margin: 0;
}

.agro-destacados article { display: flex; }

.agro-destacados article.agro-slide { display: none; }
.agro-destacados article.agro-slide.is-active { display: flex; }

/* Foto lado izquierdo */
.agro-destacados a.alignleft {
    margin: 5px 16px 5px 0 !important;
    display: inline-block;
    line-height: 0;
    flex-shrink: 0;
}

.agro-destacados a.alignleft img {
    display: block;
    width: 100px;
    height: 100px;
    margin: 0 !important;
    object-fit: cover;
    background: transparent;
}

/* Contenido lado derecho */
.agro-destacados .entry-header { flex: 1; }

.agro-destacados .entry-categories { font-size: 0; }
.agro-destacados .entry-categories a { font-size: 10px; margin-right: 4px; }

.agro-destacados .entry-title,
.agro-destacados .entry-title a {
    line-height: 1.2;
    font-size: 18px;
    margin: 0 0 4px;
}

.agro-destacados .entry-content p {
    margin: 0;
    font-size: 14px;
    line-height: 1.4;
}

/* agro-destacados — destacados: dots teal muy suaves */
.agro-destacados .agro-slider-dot { background: var(--muted-teal-2) !important; opacity: 0.22; }
.agro-destacados .agro-slider-dot.is-active { opacity: 1; }


/* ============================================================
   § 10. FOOTER
   ============================================================ */

.site-footer {
    background: var(--muted-teal);
    color: #f2f2f2;
    padding: 32px 0;          /* horizontal lo gestiona .site-footer-agro */
    width: 100vw;
    position: relative;
    left: calc(50% - 50vw);   /* rompe fuera del site-container centrado */
    z-index: 11;               /* por encima de los rascacielos fixed (z-index:10) */
    box-sizing: border-box;
}
/* 600–1189px: zoom en .site-container, el container ya llena el viewport.
   width:100% + left:0 es suficiente. */
@media (min-width: 600px) and (max-width: 1189px) {
    .site-footer {
        width: 100% !important;
        left: 0 !important;
    }
}

/* ≥1190px: zoom en body (no en container). body CSS = viewport/0.86 = ~1628px.
   site-container centrado → margen = (1628-1190)/2 = 219px.
   Hay que compensar tanto width como left con --desktop-zoom-inv. */
@media (min-width: 1190px) {
    .site-footer {
        width: calc(100vw * var(--desktop-zoom-inv)) !important;
        left:  calc(50% - 50vw * var(--desktop-zoom-inv)) !important;
    }
    /* El drawer hereda zoom:0.86 de body → 100vh queda corto. Mismo patrón que footer. */
    .menu-mobile {
        height: calc(100vh * var(--desktop-zoom-inv)) !important;
    }
}

/* Contenido del footer centrado al ancho del sitio */
.site-footer-agro {
    max-width: var(--site-max-width);
    margin: 0 auto;
    padding: 0 24px;
    box-sizing: border-box;
}

/* Enlaces */
.site-footer-agro a {
    color: #ccc !important;
    text-decoration: none;
    font-size: 12px;
}

.site-footer-agro a:hover {
    text-decoration: underline;
}

/* Columnas */
.site-footer-agro .footer-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 40px;
    align-items: flex-start;
    margin-bottom: 70px;
}

.site-footer-agro .footer-col-left {
    flex: 1 0 180px;
    max-width: 320px;
    text-align: center;
}

.site-footer-agro .footer-col-center {
    flex: 0 0 180px;
    text-align: left;
    align-self: flex-end;
}

.site-footer-agro .footer-col-center .footer-nav-links {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.site-footer-agro .footer-col-center .footer-nav-links a {
    font-family: 'DM Sans', sans-serif;
    color: var(--mint-cream) !important;
    font-size: 14px;
    text-decoration: none;
}

.site-footer-agro .footer-col-center .footer-nav-links a:hover {
    text-decoration: underline;
}

.site-footer-agro .footer-col-right {
    flex: 1 1 280px;
    text-align: left;
}

/* Logo */
.site-footer-agro .footer-logo {
    display: block;
    max-height: 100px;
    width: auto;
    height: auto;
    margin: 0 auto 16px;
}

/* Tipografía */
.site-footer-agro p,
.site-footer-agro li,
.site-footer-agro label {
    font-family: 'DM Sans', sans-serif;
    color: #e6e6e6;
    font-size: 13px;
}

.site-footer-agro .footer-legal {
    border-top: 1px solid rgba(255,255,255,0.2);
    padding-top: 16px;
}
.site-footer-agro .footer-legal,
.site-footer-agro .footer-legal p,
.site-footer-agro .footer-legal a {
    font-family: 'DM Sans', sans-serif;
    color: var(--mint-cream) !important;
    font-size: 13px;
}

/* Bloque newsletter footer */
.site-footer-agro .footer-col-right .footer-newsletter {
    max-width: 420px;
    margin: 0 auto;
    text-align: left;
}

.site-footer-agro .footer-col-right .footer-newsletter-title {
    font-family: 'DM Sans', sans-serif;
    color: var(--mint-cream);
    font-weight: 700;
    font-size: 18px;
    margin: 0 0 8px;
    text-align: left;
}

.site-footer-agro .footer-col-right .footer-newsletter-subtitle {
    font-family: 'DM Sans', sans-serif;
    color: #e6e6e6;
    font-size: 13px;
    margin: 0 0 10px;
    text-align: left;
}

/* ── NinjaForms: layout inline email + botón, checkbox debajo ── */

/* nf-fields-wrap es el flex container principal */
.site-footer-agro .footer-newsletter nf-fields-wrap {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}
.site-footer-agro .footer-newsletter nf-fields-wrap nf-field {
    display: contents !important;
}

/* Todos los contenedores: base */
.site-footer-agro .footer-newsletter .nf-field-container {
    margin-bottom: 0 !important;
    flex: 1 1 auto !important;
    order: 1 !important;
}

/* Botón submit — fila 1, junto al email */
.site-footer-agro .footer-newsletter .submit-container {
    flex: 0 0 auto !important;
    order: 2 !important;
}

/* Checkbox — fila 2, ancho completo */
.site-footer-agro .footer-newsletter .checkbox-container {
    flex: 0 0 100% !important;
    order: 3 !important;
    text-align: left !important;
}

/* ── Campos ── */
.site-footer-agro .footer-newsletter input[type="email"],
.site-footer-agro .footer-newsletter input.ninja-forms-field {
    border-radius: 5px !important;
    color: #ccc !important;
    box-sizing: border-box !important;
    width: 100% !important;
    height: 38px !important;
}

/* Checkbox: tamaño y apariencia */
.site-footer-agro .footer-newsletter input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    min-height: 16px !important;
    flex-shrink: 0 !important;
    appearance: checkbox !important;
    -webkit-appearance: checkbox !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    cursor: pointer !important;
}

/* Checkbox + label en la misma línea */
.site-footer-agro .footer-newsletter .checkbox-container .nf-field,
.site-footer-agro .footer-newsletter .checkbox-container .field-wrap {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px !important;
}
.site-footer-agro .footer-newsletter .checkbox-container .nf-field-element {
    order: 1 !important;
    flex: 0 0 auto !important;
}
.site-footer-agro .footer-newsletter .checkbox-container .nf-field-label {
    order: 2 !important;
    flex: 1 !important;
    margin: 0 !important;
}
.site-footer-agro .footer-newsletter .checkbox-container label {
    font-weight: normal !important;
    cursor: pointer !important;
    margin: 0 !important;
}

/* ── Botón envío ── */
.site-footer-agro .footer-newsletter input[type="submit"],
.site-footer-agro .footer-newsletter input[type="button"],
.site-footer-agro .footer-newsletter button {
    font-family: 'FuturaFuturis', sans-serif !important;
    text-transform: uppercase !important;
    background: var(--brick-ember) !important;
    color: var(--blanco) !important;
    padding: 10px 28px !important;
    height: 38px !important;
    border-radius: 5px !important;
    border: 0 !important;
    cursor: pointer !important;
    font-size: 14px !important;
    white-space: nowrap !important;
    box-shadow: none !important;
}
.site-footer-agro .footer-newsletter input[type="submit"]:hover,
.site-footer-agro .footer-newsletter input[type="button"]:hover,
.site-footer-agro .footer-newsletter button:hover {
    background: var(--blanco) !important;
    color: var(--brick-ember) !important;
}

/* ── Ocultar elementos no deseados ── */
/* Honeypot: input de texto (no afecta email, checkbox ni submit) */
.site-footer-agro .footer-newsletter input[type="text"],
/* Honeypot completo (wrapper, label, descripción "Si eres un ser humano...") */
.site-footer-agro .footer-newsletter .nf-form-hp,
.site-footer-agro .footer-newsletter .nf-field-description,
/* Indicadores de campo requerido */
.site-footer-agro .footer-newsletter .nf-form-fields-required,
.site-footer-agro .footer-newsletter .nf-before-form-content,
.site-footer-agro .footer-newsletter .ninja-forms-req-symbol,
.site-footer-agro .footer-newsletter .nf-required-asterisk,
.site-footer-agro .footer-newsletter .nf-after-field,
.site-footer-agro .footer-newsletter abbr[title="Required"],
.site-footer-agro .footer-newsletter abbr[title="Requerido"] {
    display: none !important;
}

/* Fallback: si algo (Ninja Forms, otro plugin) revierte el display:none
   del honeypot, lo camuflamos con el color del fondo del footer y lo
   sacamos del flujo visual sin quitarlo del DOM (los bots siguen
   rellenándolo). */
.site-footer-agro .footer-newsletter .nf-form-hp,
.site-footer-agro .footer-newsletter .nf-form-hp * {
    color: var(--muted-teal) !important;
    background: var(--muted-teal) !important;
    border-color: var(--muted-teal) !important;
    box-shadow: none !important;
}
.site-footer-agro .footer-newsletter .nf-form-hp {
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}


/* ============================================================
   § 11. COMENTARIOS
   ============================================================ */

.required-field-message,
span.required,
.says { display: none; }

/* Ocultar campo Website en formulario de comentarios */
.comment-form-url { display: none; }

/* Ocultar campo anti-bot de AIOS */
.comment-form-aios-antibot-keys { display: none; margin: 0; padding: 0; }

/* Campos ocultos hasta hacer clic en el textarea */
.comment-form-author,
.comment-form-email,
.comment-notes-email,
.comment-policy-box,
#commentform .form-submit {
    overflow: hidden;
    max-height: 500px;
    opacity: 1;
    transition: max-height 0.35s ease, opacity 0.3s ease, margin 0.3s ease, padding 0.3s ease;
}

.agro-comment-hidden {
    max-height: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.comment-policy-box {
    background: #fff;
    padding: 15px 30px 0 50px;
}

#cancel-comment-reply-link {
    margin-left: 0.75rem;
    font-size: 0.9rem;
    color: #777;
}

#comments.entry-comments,
.content #comments,
.entry-content #comments,
#respond.comment-respond {
    margin-left: 3px !important;
    margin-right: 3px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

ol.comment-list {
    margin: 0.4rem 0 0;
    padding: 0;
    list-style: none;
}

/* Comentario padre: fondo en el li para que los hijos queden dentro */
ol.comment-list > li.comment {
    margin: 0 0 0.5rem;
    padding: 0.6rem 0.9rem;
    background: #f5f5f5;
    border: 1px solid #e4e4e4;
    border-radius: 8px;
    box-sizing: border-box;
    outline: none;
}

ol.comment-list > li.comment > article {
    background: none;
    border: none;
    padding: 0;
    font-family: 'DM Sans', sans-serif;
    font-size: 15px;
}

.comment-header { margin: 0; }

.comment-author {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin: 0;
}

.comment-author img.avatar { width: 28px; height: 28px; margin: 0; border-radius: 50%; }
.comment-author .fn { font-size: 14px; font-weight: 600; color: #333; }

.comment-meta { margin: 0; }
.comment-meta a,
.comment-meta time { color: #777; font-size: 13px; }

.comment-content,
.comment-content p { margin: 0.3rem 0 0; line-height: 1.5; font-size: 15px; color: #333; }

.comment-reply { margin: 0.2rem 0 0; }

.comment-reply-link {
    display: inline-block;
    background-color: var(--muted-teal-2);
    color: var(--blanco) !important;
    padding: 2px 8px;
    border-radius: 4px;
    font-weight: 600;
    font-size: 0.8rem;
    transition: background 0.2s;
}

.comment-reply-link:hover {
    background-color: var(--muted-teal-2) !important;
}

/* Respuestas anidadas: dentro del fondo del padre */
.comment .children {
    margin: 0.5rem 0 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid #ddd;
    padding-top: 0.5rem;
}

.comment .children > li.comment {
    margin: 0 0 0.3rem;
    padding: 0.5rem 0.9rem;
    background: #e8e8e8;
    border: 1px solid #ddd;
    border-radius: 8px;
    box-sizing: border-box;
    outline: none;
}

.comment .children > li.comment > article {
    background: none;
    border: none;
    padding: 0;
    font-size: 15px;
}

#comments.entry-comments,
#respond.comment-respond,
.comment-list,
.comment-list *,
#respond * {
    font-family: 'DM Sans', sans-serif;
}

#respond.comment-respond { margin-top: 1rem; }

#respond .form-submit { margin: 10px; }

#respond .form-submit #submit {
    display: inline-block;
    padding: 0.7rem 2.2rem;
    border-radius: 0.25rem;
    border: none;
    background: var(--muted-teal-2);
    color: var(--blanco);
    font-weight: 600;
    font-size: 0.95rem;
    text-transform: none;
    letter-spacing: 0.03em;
    cursor: pointer;
    box-shadow: none;
}

#respond .form-submit #submit:hover {
    background: var(--muted-teal-2);
    color: var(--blanco);
}

/* Campos del formulario: bordes redondeados */
#respond input[type="text"],
#respond input[type="email"],
#respond textarea {
    border-radius: 8px;
    border: 1px solid #ccc;
    padding: 8px 12px;
    box-sizing: border-box;
    width: 100%;
}

#respond .comment-form-comment {
    margin: 0.9rem 0.1rem;
}

#respond .comment-form-comment textarea#comment { max-height: 7rem; }

/* Grid del formulario: todo alineado con el ancho del textarea */
#commentform {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
        "comment  comment"
        "author   email"
        "empty    privacy"
        "policy   policy"
        "submit   submit";
    max-width: 40rem;
    gap: 0 12px;
}

#commentform .comment-form-comment { grid-area: comment; margin: 0.9rem 0; }
#commentform .comment-form-author  { grid-area: author;  margin: 0; }
#commentform .comment-form-email   { grid-area: email;   margin: 0; }
#commentform .comment-notes-email  { grid-area: privacy; margin: 4px 0 0; padding: 0; }
#commentform .comment-policy-box   { grid-area: policy; }
#commentform .form-submit          { grid-area: submit; }

/* Nota de privacidad: debajo del email, en rojo */
.comment-notes-email small {
    color: var(--brick-ember);
    font-size: 12px;
}

/* Título "Déjanos un comentario" */
#respond h3#reply-title {
    font-size: 22px;
}

/* Título del bloque de comentarios — estilo widget */
.entry-comments > h3 {
    background-color: var(--muted-teal-2);
    color: var(--blanco);
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    width: 100%;
    box-sizing: border-box;
    display: block;
    font-family: "FuturaFuturis", sans-serif;
    font-size: 1rem;
    line-height: 1.4;
    text-transform: uppercase;
}



/* ============================================================
   § 12. RASCACIELOS (banners laterales fixed)
   ============================================================ */

.banner-lateral {
    position: fixed;
    top: 0;
    width: var(--banner-w);
    height: 900px;
    z-index: 10;
    pointer-events: auto;
    line-height: 0;
    background: transparent;
    overflow: hidden;
}

.banner-lateral-izq {
    left: calc(50vw * var(--desktop-zoom-inv) - var(--site-max-width) / 2 - var(--banner-w) - var(--banner-gap) * var(--desktop-zoom-inv));
}

.banner-lateral-der {
    right: calc(50vw * var(--desktop-zoom-inv) - var(--site-max-width) / 2 - var(--banner-w) - var(--banner-gap) * var(--desktop-zoom-inv));
}

/* Cadena completa de altura: UL › LI › .gsmints › A */
.banner-lateral ul,
.banner-lateral li {
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.banner-lateral ins,
.banner-lateral .adrotate_banner,
.banner-lateral .adrotate_wrap,
.banner-lateral [class*="gsmints"] {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

.banner-lateral a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.banner-lateral img {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: top center !important;
    display: block !important;
}

.banner-lateral iframe {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    border: none !important;
}

/* .site-footer position/z-index consolidado en § 10 */

@media (max-width: 1024px) {
    .banner-lateral { display: none !important; }
}

.banner-lateral .adrotate_wrap:empty,
.banner-lateral .adrotate_banner:empty,
.banner-lateral [class*="gsmints"]:empty {
    display: none !important;
}

.banner-lateral:not(:has(img, iframe)) {
    display: none !important;
}


/* ── Banner flotante móvil (rascacielos responsive) ── */
#agro-rasc-mob-bar {
    display:     none;
    position:    fixed;
    bottom:      0;
    left:        0;
    right:       0;
    z-index:     9990;
    background:  #fff;
    align-items: center;
    box-shadow:  0 -3px 16px rgba(0,0,0,0.35);
    max-height:  min(150px, 20vh);
    overflow:    hidden;
    padding:     6px 0;
}
#agro-rasc-mob-bar.visible {
    display: flex;
}
#agro-rasc-mob-bar a {
    display:    block;
    flex:       1;
    line-height: 0;
}
#agro-rasc-mob-bar img {
    width:      100%;
    max-height: min(150px, 20vh);
    height:     auto;
    object-fit: contain;
    display:    block;
}
#agro-rasc-mob-close {
    flex-shrink:     0;
    position:        absolute;
    top:             6px;
    right:           6px;
    background:      rgba(0,0,0,0.30);
    color:           #fff;
    border:          none;
    border-radius:   50%;
    width:           32px;
    height:          32px;
    font-size:       15px;
    line-height:     1;
    cursor:          pointer;
    display:         flex;
    align-items:     center;
    justify-content: center;
    padding:         0;
    transition:      background 0.15s;
}
#agro-rasc-mob-close:hover {
    background: rgba(0,0,0,0.65);
}
@media (min-width: 1025px) {
    #agro-rasc-mob-bar { display: none !important; }
}


/* ============================================================
   § 13. BANNERS ADROTATE
   ============================================================ */

/* SIDEBAR */
.sidebar-primary .gsmints {
    display: flex; flex-wrap: wrap; justify-content: center;
    gap: 0; width: 100%; margin: 0 auto; box-sizing: border-box; max-width: 520px;
}
.sidebar-primary .gsmints-col { flex: 1 1 100%; width: 100%; box-sizing: border-box; }
.sidebar-primary .gsmints-col img { width: 100%; height: auto; display: block; }

@media (max-width: 600px) {
    .sidebar-primary .gsmints { flex-direction: column; gap: 6px; }
    .sidebar-primary .gsmints-col { flex: 1 1 100%; }
}

/* CONTENIDO GENERAL — Banner largo */
.content .widget:has(.gsmints .gsmints-col:only-child),
.entry-content:has(.gsmints .gsmints-col:only-child),
.entry-content .gsmints:has(.gsmints-col:only-child) {
    display: block; width: 100%; margin: 0 auto 25px; box-sizing: border-box;
}
.content .widget:has(.gsmints .gsmints-col:only-child) img,
.entry-content .gsmints:has(.gsmints-col:only-child) img {
    width: 100% !important; height: auto !important; display: block; margin: 0 auto;
}

/* ENTRY CONTENT — Banners cortos intermedios */
.entry-content .gsmints {
    display: flex; flex-wrap: wrap; justify-content: space-between;
    gap: 0; width: 100%; box-sizing: border-box;
}
.entry-content .gsmints .gsmints-col { flex: 1 1 48%; box-sizing: border-box; }
.entry-content .gsmints .gsmints-col img {
    width: 100%; height: auto; display: block; margin: 20px auto !important;
}
@media (max-width: 600px) {
    .entry-content .gsmints { flex-direction: column; }
    .entry-content .gsmints .gsmints-col { flex: 1 1 100%; max-width: 100%; }
}


/* BANNER CABECERA */
.agro-header-top-banner .wrap {
    max-width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    text-align: center;
    background: #f5f5f5;
    line-height: 0;
}
.agro-header-top-banner img,
.agro-header-top-banner a,
.agro-header-top-banner .adrotate_ad,
.agro-header-top-banner [class*="gsmints"] {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
}

@media (max-width: 1023px) {
    .agro-header-top-banner .wrap { padding: 0; }
}

/* FORZAR 100% a banners largos (blog/archivo/categoría/single) */
.blog .gsmints:has(.gsmints-col:only-child),        .blog .gsmints-col:only-child,
.archive .gsmints:has(.gsmints-col:only-child),     .archive .gsmints-col:only-child,
.category .gsmints:has(.gsmints-col:only-child),    .category .gsmints-col:only-child,
.single-post .gsmints:has(.gsmints-col:only-child), .single-post .gsmints-col:only-child {
    width: 100% !important; max-width: 100% !important;
    margin: 0 auto !important; box-sizing: border-box !important; display: block !important;
}
.blog .gsmints-col:only-child img,
.archive .gsmints-col:only-child img,
.category .gsmints-col:only-child img,
.single-post .gsmints-col:only-child img {
    width: 95% !important; height: auto !important;
    display: block !important; margin: 20px auto !important;
}

/* Categoría: sin margin lateral (igual que subcategoría) */
.category .gsmints-col:only-child img {
    margin: 0 0 10px 0 !important;
}



/* ============================================================
   § 14. EMBEDS / MISC
   ============================================================ */

/* Instagram embeds */
blockquote.instagram-media,
.instagram-media {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
}

.instagram-media-rendered,
.instagram-media-rendered > div {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

/* ============================================================
   FORZAR TÍTULOS Y ETIQUETAS — f8 opinión
   body prefix: especificidad defensiva contra Genesis
   ============================================================ */

/* Título widget-title — f8 W1 */
body .agro-franja--f8 > .widget:nth-child(1) .widgettitle,
body .agro-franja--f8 > .widget:nth-child(1) .widget-title {
    position: relative;
    left: 0;
    z-index: 10;
    display: inline-block;
    width: max-content;
    color: var(--brick-ember) !important;
    background: none !important;
    font-family: 'FuturaFuturis', sans-serif;
    font-style: normal;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 20px;
    line-height: 1.4;
    text-align: left;
    padding: 0 0 5px 0 !important;
    border-radius: 0;
    margin: 0 0 16px 0;
}

/* Línea gruesa */
body .agro-franja--f8 > .widget:nth-child(1) .widgettitle::before,
body .agro-franja--f8 > .widget:nth-child(1) .widget-title::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 110%;
    height: 4px;
    background-color: var(--brick-ember);
    z-index: 1;
    border-radius: 1px;
}

/* Línea fina */
body .agro-franja--f8 > .widget:nth-child(1) .widgettitle::after,
body .agro-franja--f8 > .widget:nth-child(1) .widget-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 5000px;
    height: 1px;
    background-color: var(--brick-ember);
    opacity: 0.5;
}

/* Etiquetas y tags — f8 W1 */
body .agro-franja--f8 > .widget:nth-child(1) .entry-categories a,
body .agro-franja--f8 > .widget:nth-child(1) .entry-categories a:visited,
body .agro-franja--f8 > .widget:nth-child(1) .entry-categories a:hover,
body .agro-franja--f8 > .widget:nth-child(1) .entry-tags a,
body .agro-franja--f8 > .widget:nth-child(1) .entry-tags a:visited,
body .agro-franja--f8 > .widget:nth-child(1) .entry-tags a:hover {
    color: var(--brick-ember) !important;
    background: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
}


/* ----------------------------------------------------------
   YOUTUBE REELS WIDGET
   ---------------------------------------------------------- */

/* Franja de videos - estilos */
.agro-franja--videos {
    background-color: #f9f9f9;
    padding: 30px 40px;
    position: relative;
}

.agro-franja--videos .widget {
    background: transparent;
}

.agro-franja--videos .widgettitle,
.agro-franja--videos .widget-title {
    position: relative;
    display: inline-block;
    width: max-content;
    font-family: 'FuturaFuturis', sans-serif;
    font-style: normal;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 18px;
    color: var(--brick-ember);
    line-height: 1.4;
    padding: 0 0 5px 2px;
    margin: 0 0 20px 0;
    background: transparent;
}

/* Línea gruesa */
.agro-franja--videos .widgettitle::before,
.agro-franja--videos .widget-title::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 110%;
    height: 4px;
    background-color: currentColor;
    z-index: 1;
    border-radius: 1px;
}

/* Línea fina */
.agro-franja--videos .widgettitle::after,
.agro-franja--videos .widget-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 5000px;
    height: 1px;
    background-color: currentColor;
    opacity: 0.5;
}

.agro-youtube-reels-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 25px;
    margin: 0 8px 32px;
}

.agro-youtube-reel {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    aspect-ratio: 9 / 16;
    background: #f0f0f0;
    cursor: pointer;
}

.agro-youtube-reel-title {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    max-height: 200px;
    padding: 25px 15px 15px 15px;
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.8) 100%);
    color: white;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.3;
    overflow: hidden;
    word-wrap: break-word;
}

.agro-youtube-thumbnail {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.agro-youtube-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.3s ease;
}

.agro-youtube-reel:hover .agro-youtube-overlay {
    background: rgba(0, 0, 0, 0.4);
}

.agro-youtube-play {
    width: 40px;
    height: 40px;
    fill: var(--brick-ember);
    opacity: 0.9;
    transition: opacity 0.3s ease;
}

.agro-youtube-reel:hover .agro-youtube-play {
    opacity: 1;
}

/* ── Modal YouTube ───────────────────────────────────────────────────────── */

/* Fondo oscuro, centrado en pantalla completa */
.agro-youtube-modal {
    position: fixed;
    z-index: 9999;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.75);
}

/* Contenedor interno: vídeo + botón cerrar, apilados verticalmente */
.agro-youtube-modal-inner {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* Desktop: ancho = proporción 9:16 de la pantalla, máx. 340px */
    width: min(75vw, calc((100vh - 80px) * 9 / 16));
    max-width: 340px;
}

/* Vídeo 9:16 */
.agro-youtube-modal-content {
    width: 100%;
    aspect-ratio: 9 / 16;
    background: #000;
    border-radius: 8px;
    overflow: hidden;
}

.agro-youtube-modal-content iframe {
    width: 100%;
    height: 100%;
    border: none;
    display: block;
}

/* Zona de controles: debajo del vídeo */
.agro-youtube-modal-controls {
    display: flex;
    justify-content: center;
    margin-top: 14px;
}

/* Botón cerrar */
.agro-yt-close {
    background: rgba(0, 0, 0, 0.55);
    border: none;
    border-radius: 50%;
    width: 46px;
    height: 46px;
    color: #fff;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: background 0.2s, transform 0.15s;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

.agro-yt-close:hover  { background: rgba(0, 0, 0, 0.75); transform: scale(1.1); }
.agro-yt-close:active { transform: scale(0.92); }

.agro-franja .entry-header { overflow: visible; }

.agro-comment-btn--preview {
    font-size: 11px !important;
    padding: 3px 10px;
    margin-top: 2px;
    margin-bottom: 10px;
    background: #ececec;
    color: #888;
    cursor: default;
    pointer-events: none;
    display: inline-flex;
    align-self: flex-start;
    border-radius: 6px;
}
.agro-comment-btn--preview::after {
    border-top-color: #ececec;
    left: 10px;
}
.agro-franja--f1 > .widget:nth-child(3) .agro-comment-btn--preview,
.agro-franja--f8 > .widget:nth-child(1) .agro-comment-btn--preview {
    background: #fff;
}
.agro-franja--f1 > .widget:nth-child(3) .agro-comment-btn--preview::after,
.agro-franja--f8 > .widget:nth-child(1) .agro-comment-btn--preview::after {
    border-top-color: #fff;
}
/* El span queda dentro de .entry-categories que tiene font-size:0 — mayor especificidad */
.agro-franja .entry-categories .agro-comment-btn--preview {
    display: block;
    font-size: 11px !important;
}
/* Sin excerpt: botón absoluto sobre la tarjeta, no entra en el flujo del grid */
.agro-franja article.entry { position: relative; }
.agro-comment-btn--abs {
    position: absolute;
    bottom: 8px;
    left: 8px;
    margin: 0;
}

/* Compensación zoom body ≥1190px: contra-zoom para que inset:0 cubra el viewport real
   y los clics coincidan con la posición visual del botón */
@media (min-width: 1190px) {
    .agro-youtube-modal {
        zoom: var(--desktop-zoom-inv);
    }
}

/* ── Responsive grid de miniaturas ───────────────────────────────────────── */

@media (max-width: 1023px) {
    /* Quitar padding lateral de la franja para dar todo el ancho al scroll */
    .agro-franja--videos {
        padding-left: 16px;
        padding-right: 0;
    }

    .agro-franja--videos .widgettitle,
    .agro-franja--videos .widget-title {
        margin-left: 0;
    }

    /* Grid: fila única con scroll horizontal, tarjetas de 200px */
    .agro-youtube-reels-grid {
        grid-template-columns: repeat(5, min(250px, 55vw));
        gap: 10px;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        padding-right: 16px;
        width: 100%;
    }

    .agro-youtube-reel { scroll-snap-align: start; }
}

@media (max-width: 600px) {
    /* Modal móvil: más ancho que en desktop */
    .agro-youtube-modal-inner {
        width: 82vw;
        max-width: none;
    }
}





/* =============================================================
   §15 — PORTADAS DE CATEGORÍA
   Réplica visual exacta de las franjas de portada.
   Dos layouts de tarjeta: columna (vertical) y linea (horizontal).
   ============================================================= */

/* ── 1. BASE TARJETA — normaliza agro-cat-post igual que article.entry ── */

.agro-cat-post {
    box-sizing: border-box;
    overflow: hidden;
    padding: 0 10px;
}
.agro-cat-post.agro-cat-post--principal,
.agro-cat-post.agro-cat-post--secundaria { padding-left: 7px !important; padding-right: 7px !important; }

/* Imagen vertical (columna/principal/secundaria) — mismo truco que .entry-image */
.agro-cat-post:not(.agro-cat-post--linea) .entry-image-link {
    display: block;
    position: relative;
    width: 100%;
    overflow: hidden;
    margin-bottom: 8px;
}
.agro-cat-post:not(.agro-cat-post--linea) .entry-image-link::before {
    content: '';
    display: block;
    padding-top: 66.6%;  /* 3:2, se sobreescribe por franja */
}
.agro-cat-post:not(.agro-cat-post--linea) .entry-image-link img {
    position: absolute;
    inset: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    display: block;
}

/* Cuerpo de tarjeta (bajo la imagen) */
.agro-cat-post-body { padding: 0; }

/* Meta: badge de subcategoría + fecha */
.agro-cat-meta {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 4px;
}

.agro-cat-fecha,
.entry-meta,
.rel-fecha {
    margin-bottom: 3px;
}

.agro-cat-fecha {
    font-family: 'DM Sans', sans-serif;
    font-size: 11px;
    color: #999999;
    white-space: nowrap;
}

/* Excerpt — misma tipografía que .agro-franja .entry-content p */
.agro-cat-post .entry-excerpt {
    font-size: 15px;
    line-height: 1.5;
    margin: 0;
    color: var(--gris-oscuro);
}

/* ── 2. F1 — réplica exacta de agro-franja--f1 portada ── */

.agro-cat-franja--f1 {
    display: grid;
    grid-template-columns: 3fr 2fr var(--banner-w);
    grid-template-areas:
        "principal  secundarias lateral"
        "lineas     secundarias lateral";
    gap: 20px;
    align-items: start;
}

/* Especificidad doble para ganar a .agro-franja { margin: 0 auto 32px } */
.agro-franja.agro-cat-franja--f1 {
    margin: 48px auto var(--f-mb);
}

/* F1 en portadas de categoría */
.category .agro-franja--f1 {
    margin-top: 35px;
}
.category .agro-f1-lateral {
    margin-top: 0;
}

.agro-cat-f1-principal  { grid-area: principal;   align-self: start; }
.agro-cat-f1-secundarias{ grid-area: secundarias; }
.agro-cat-f1-lateral    { grid-area: lateral;     align-self: start; }

/* Principal → col60: imagen 70%, título 27px */
.agro-cat-f1-principal .entry-image-link::before { padding-top: 70%; }
.agro-cat-f1-principal .entry-title { font-size: 29px !important; line-height: 1.2; }

/* Secundarias → col40: flex column, imagen 50%, título 22px, separadores */
.agro-cat-f1-secundarias {
    display: flex;
    flex-direction: column;
    gap: 0;
    overflow: visible;
}
.agro-cat-f1-secundarias .agro-cat-post { margin: 0; overflow: visible; }
.agro-cat-f1-secundarias .entry-image-link::before { padding-top: 50%; }
.agro-cat-f1-secundarias .entry-title { font-size: 24px !important; line-height: 1.25; }
.agro-cat-f1-secundarias .agro-cat-post:not(:last-child) {
    border-bottom: 1px solid var(--gris-borde);
    padding-bottom: 20px;
}
.agro-cat-f1-secundarias .agro-cat-post + .agro-cat-post { padding-top: 20px; }

/* Noticias en línea debajo del principal (4-5) — Slider con destacados.js */
.agro-cat-f1-lineas {
    grid-area: lineas;
    margin-top: 8px;
}

/* Las noticias 4-5 se renderizan como artículos dentro del contenedor .agro-destacados */
/* El JS (destacados.js) maneja display:none/flex para mostrar una a la vez */
.agro-cat-f1-lineas.agro-destacados {
    background-color: transparent !important;
    padding: 0 !important;
    border-radius: 0;
}

/* Lateral → adlateral: idéntico a .agro-f1-lateral de portada */
.agro-cat-f1-lateral {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
    align-self: start;
}
.agro-cat-f1-lateral > .widget { width: 100%; box-sizing: border-box; }
.agro-cat-f1-lateral .gsmints-single,
.agro-cat-f1-lateral .gsmints-single img,
.agro-cat-f1-lateral .adrotate_ad,
.agro-cat-f1-lateral .adrotate_ad a,
.agro-cat-f1-lateral .adrotate_ad img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

/* ── 3. F4b — réplica exacta de agro-franja--f4b portada ── */

.agro-cat-franja--f4b {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
}
.agro-franja.agro-cat-franja--f4b {
    margin: var(--f-mb) auto;
}

/* Padding simétrico en todas las columnas → anchuras iguales */
.agro-cat-franja--f4b .agro-cat-post { padding: 0 12px; }
.agro-cat-franja--f4b .agro-cat-post:not(:last-child) {
    border-right: 1px solid var(--gris-borde);
}

/* Imagen 66%, título 22px (igual que portada) */
.agro-cat-franja--f4b .entry-image-link::before { padding-top: 66.6%; }
.agro-cat-franja--f4b .entry-title { font-size: 22px !important; line-height: 1.3; margin: 0 0 8px 0 !important; }

/* ── 4. NOTICIAS EN LÍNEA — réplica de agro-franja--f3 W2 portada ── */

.agro-cat-franja--noticias {
    display: grid;
    grid-template-columns: 1fr var(--banner-w);
    gap: var(--f-gap);
    align-items: start;
}
.agro-cat-franja--subcat {
    grid-template-columns: 1fr 300px;
}
.agro-franja.agro-cat-franja--noticias {
    margin: 48px auto var(--f-mb);
}

.agro-cat-noticias-lista {
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* Separadores entre noticias en línea */
.agro-cat-post--linea:not(:last-child) {
    border-bottom: 1px solid var(--gris-borde) !important;
    padding-bottom: 10px;
}
.agro-cat-post--linea + .agro-cat-post--linea { padding-top: 10px; }

/* Thumb flotante izquierda */
.agro-cat-post--linea .agro-cat-post-thumb {
    float: left;
    width: 25%;
    margin: 0 14px 8px 0;
    position: relative;
    overflow: hidden;
}
.agro-cat-post--linea .agro-cat-post-thumb::before {
    content: '';
    display: block;
    padding-top: 66.6%;
}
.agro-cat-post--linea .agro-cat-post-thumb .entry-image-link {
    position: absolute;
    inset: 0;
    display: block;
    margin: 0;
}
.agro-cat-post--linea .agro-cat-post-thumb .entry-image-link::before { display: none; }
.agro-cat-post--linea .agro-cat-post-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block !important;
}
.agro-cat-post--linea .agro-cat-post-body { overflow: hidden; padding: 0; }
.agro-cat-post--linea .entry-title { font-size: 21px !important; line-height: 1.25; margin: 2px 0 6px; }

/* ── TARJETA OPINIÓN (opinion / voces-del-campo) ─────────────────── */
.agro-cat-post--opinion {
    display: flex;
    align-items: center;
    gap: 16px;
    background-color: var(--blush-accent);
    border-radius: 10px;
    padding: 16px;
    margin-bottom: 12px;
    overflow: visible;
    border-bottom: none !important;
}

/* Thumb: contenedor cuadrado con clip circular */
.agro-cat-post--opinion .agro-cat-post-thumb {
    float: none;
    flex: 0 0 100px;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    overflow: hidden;
    position: relative;
    margin: 0;
}
.agro-cat-post--opinion .agro-cat-post-thumb::before { display: none; }
.agro-cat-post--opinion .agro-cat-post-thumb .entry-image-link {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
}
.agro-cat-post--opinion .agro-cat-post-thumb .entry-image-link::before { display: none; }
.agro-cat-post--opinion .agro-cat-post-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    border-radius: 50%;
    display: block !important;
}

/* Cuerpo */
.agro-cat-post--opinion .agro-cat-post-body {
    flex: 1;
    overflow: visible;
    padding: 0;
}
.agro-cat-post--opinion .entry-title {
    font-size: 20px !important;
    line-height: 1.25;
    margin: 0 0 6px;
}

/* Etiqueta de autor */
.agro-opinion-tag {
    display: block;
    color: var(--brick-ember);
    font-size: 13px;
    font-weight: 600;
    margin: 4px 0 6px;
}
/* Etiqueta opinión fuera del widget — portada, categoría, subcategoría */
.agro-opinion-tag--portada {
    display: block;
    color: #bb1300;
    font-size: 15px;
    font-weight: 600;
    margin: 4px 0 6px;
    pointer-events: none;
    cursor: default;
}

/* Responsive opinion */
@media (max-width: 600px) {
    .agro-cat-post--opinion .agro-cat-post-thumb {
        flex: 0 0 72px;
        width: 72px;
        height: 72px;
    }
    .agro-cat-post--opinion .entry-title { font-size: clamp(16px, 4vw, 20px) !important; }
    .agro-cat-post--opinion .entry-excerpt { display: none; }
}

/* ── TARJETA ENTREVISTAS ─────────────────────────────────────────── */
.agro-cat-post--entrevistas {
    display: flex;
    align-items: center;
    gap: 16px;
    background-color: var(--muted-teal);
    border-radius: 10px;
    padding: 16px;
    margin-bottom: 14px;
    overflow: visible;
    border-bottom: none !important;
}

/* Thumb: rectangular con esquinas ligeramente redondeadas */
.agro-cat-post--entrevistas .agro-cat-post-thumb {
    float: none;
    flex: 0 0 210px;
    width: 210px;
    height: 145px;
    border-radius: 6px;
    overflow: hidden;
    position: relative;
    margin: 0;
}
.agro-cat-post--entrevistas .agro-cat-post-thumb::before { display: none; }
.agro-cat-post--entrevistas .agro-cat-post-thumb .entry-image-link {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
}
.agro-cat-post--entrevistas .agro-cat-post-thumb .entry-image-link::before { display: none; }
.agro-cat-post--entrevistas .agro-cat-post-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    border-radius: 6px;
    display: block !important;
}

/* Cuerpo */
.agro-cat-post--entrevistas .agro-cat-post-body {
    flex: 1;
    overflow: visible;
    padding: 0;
}
.agro-cat-post--entrevistas .entry-title {
    font-size: 20px !important;
    line-height: 1.25;
    margin: 0 0 6px;
}
.agro-cat-post--entrevistas .entry-title a,
.agro-cat-post--entrevistas .entry-title a:visited {
    color: #ffffff !important;
}
.agro-cat-post--entrevistas .entry-excerpt {
    color: var(--mint-cream) !important;
}
.agro-cat-post--entrevistas .agro-cat-fecha,
.agro-cat-post--entrevistas .entry-categories {
    color: var(--mint-cream) !important;
}
.agro-cat-post--entrevistas .entry-categories a {
    background-color: var(--mint-cream) !important;
    color: var(--muted-teal) !important;
}
.agro-cat-post--entrevistas .agro-opinion-tag {
    color: #ffffff !important;
}

/* Responsive entrevistas */
@media (max-width: 600px) {
    .agro-cat-post--entrevistas .agro-cat-post-thumb {
        flex: 0 0 130px;
        width: 130px;
        height: 90px;
    }
    .agro-cat-post--entrevistas .entry-title { font-size: clamp(16px, 4vw, 20px) !important; }
    .agro-cat-post--entrevistas .entry-excerpt { display: none; }
}

/* ══ VOCES DEL CAMPO — F1 en columna ══════════════════════════════════════
   Base: mismos estilos opinion/entrevistas que en sus subcategorías.
   Aquí solo cambiamos la orientación a columna para col60 y col40 del F1.
   El grid usa los estilos de fila tal cual (igual que subcategorías).
   ════════════════════════════════════════════════════════════════════════ */

/* Quitar border-bottom del widget col60 */
.agro-franja--voces > .widget:nth-child(1) {
    border-bottom: none !important;
    padding-bottom: 0 !important;
}

/* ── col60: entrevista en columna, imagen dentro del padding del card ── */
.agro-franja--voces > .widget:nth-child(1) .agro-cat-post--entrevistas {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
    padding: 32px;     /* más aire para la posición destacada */
    margin-bottom: 0;
}
.agro-franja--voces > .widget:nth-child(1) .agro-cat-post--entrevistas .agro-cat-post-thumb {
    flex: none;
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 2;
    /* border-radius: 6px se hereda del estilo base */
    margin: 0;
}
/* Título más grande para la posición destacada */
.agro-franja--voces > .widget:nth-child(1) .agro-cat-post--entrevistas .entry-title {
    font-size: 26px !important;
    line-height: 1.2;
    margin-bottom: 16px !important;
}

/* ── col40: contenedor flex-column con gap entre las dos tarjetas ─── */
.agro-franja--voces > .widget:nth-child(2) {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* ── col40: opinión en columna, imagen redonda centrada ───────────── */
.agro-franja--voces > .widget:nth-child(2) .agro-cat-post--opinion {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px;
    padding: 16px;
    margin-bottom: 0;
    border-bottom: none !important;
}
.agro-franja--voces > .widget:nth-child(2) .agro-cat-post--opinion .agro-cat-post-thumb {
    flex: none;
    align-self: center;
}
.agro-franja--voces > .widget:nth-child(2) .agro-cat-post--opinion .agro-cat-post-body {
    text-align: center;
    overflow: visible;
    padding: 0;
}
.agro-franja--voces > .widget:nth-child(2) .agro-cat-meta {
    justify-content: center;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}
/* Title: override el 24px del F1 col40 */
.agro-franja--voces > .widget:nth-child(2) .entry-title { font-size: 22px !important; }

/* Lateral sticky */
.agro-cat-lateral { position: sticky; top: 20px; }
.agro-cat-lateral .widget { margin-bottom: var(--f-gap); }
.agro-cat-lateral .gsmints,
.agro-cat-lateral .gsmints-single,
.agro-cat-lateral .gsmints-col,
.agro-cat-lateral .gsmints-col a,
.agro-cat-lateral .gsmints-col img,
.agro-cat-lateral .adrotate_ad,
.agro-cat-lateral .adrotate_ad a,
.agro-cat-lateral .adrotate_ad img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    box-sizing: border-box !important;
}

/* Slots del nuevo sistema agro_render_lateral_area */
.agro-lateral-slot { margin-bottom: var(--f-gap); }
.agro-lateral-slot:last-child { margin-bottom: 0; }
.agro-lateral-slot .gsmints,
.agro-lateral-slot .gsmints-single,
.agro-lateral-slot .adrotate_ad,
.agro-lateral-slot .adrotate_ad a,
.agro-lateral-slot .adrotate_ad img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    box-sizing: border-box !important;
}

/* ── W5 BONUS LATERAL — Featured Posts de patrocinador u otro contenido extra ──
   Scoped a .featured-content para no afectar widgets HTML/Text en la misma posición.
   Colores: var(--brick-ember) por defecto → var(--sp-color) en categorías patrocinadas.
   ──────────────────────────────────────────────────────────────────────────────────── */

.agro-lateral-bonus {
    margin-top: var(--f-gap);
}

/* Fondo con color de patrocinador muy transparente; fallback gris neutro si no hay sponsor */
.agro-lateral-bonus .featured-content {
    background: color-mix(in srgb, var(--sp-color, #cccccc) 8%, white);
    border-radius: 6px;
    padding: 14px 16px 16px;
    overflow: hidden;
}

/* Logo del patrocinador — dentro del <h4>, encima de la barra separadora */
.agro-bonus-sp-logo {
    display: block;
    text-align: center;
    margin: 8px 0 0;
}
.agro-bonus-sp-logo img {
    max-height: 36px;
    width: auto;
    display: inline-block;
}

/* Título del widget — FuturaFuturis centrado + barra separadora sólida */
.agro-lateral-bonus .featured-content .widgettitle,
.agro-lateral-bonus .featured-content .widget-title {
    font-family: 'FuturaFuturis', sans-serif;
    font-size: 19px;
    font-weight: bold;
    text-transform: uppercase;
    color: var(--sp-color, var(--brick-ember));
    display: block;
    text-align: center;
    margin: 0 0 16px 0;
    padding: 0 0 8px 0;
    border-bottom: 2px solid var(--sp-color, var(--brick-ember));
}

/* Cada entrada: separador con espacio a los lados (el padding del wrapper lo da) */
.agro-lateral-bonus .featured-content article.post {
    padding: 12px 0;
    border-bottom: 1px solid var(--gris-borde);
}
.agro-lateral-bonus .featured-content article.post:first-of-type { padding-top: 0; }
.agro-lateral-bonus .featured-content article.post:last-of-type  { border-bottom: none; padding-bottom: 0; }

/* Imagen — ancho completo del lateral */
.agro-lateral-bonus .featured-content img.entry-image,
.agro-lateral-bonus .featured-content .entry-image img {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 8px;
}

/* Titular de cada post */
.agro-lateral-bonus .featured-content .entry-title,
.agro-lateral-bonus .featured-content h2 {
    font-size: 17px;
    line-height: 1.3;
    margin: 0 0 4px;
    font-weight: 700;
}
.agro-lateral-bonus .featured-content .entry-title a {
    color: var(--gris-oscuro);
    text-decoration: none;
}
.agro-lateral-bonus .featured-content .entry-title a:hover {
    color: var(--sp-color, var(--brick-ember));
}

/* Fecha en gris */
.agro-lateral-bonus .featured-content .post-date,
.agro-lateral-bonus .featured-content time,
.agro-lateral-bonus .featured-content .entry-time {
    color: var(--gris);
    font-size: 12px;
}

/* ── 5. PAGINACIÓN ── */
.agro-cat-pagination {
    margin: var(--f-mb) 0 48px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 4px;
}
.agro-cat-pagination .page-numbers {
    display: inline-block;
    padding: 5px 12px;
    border: 2px solid var(--muted-teal-2);
    background-color: var(--blanco);
    color: var(--muted-teal-2);
    font-weight: bold;
    border-radius: 30px;
    font-size: 14px;
    text-decoration: none;
    line-height: 1.4;
    transition: background .15s, color .15s;
}
.agro-cat-pagination .page-numbers:hover,
.agro-cat-pagination .page-numbers.current {
    background-color: var(--muted-teal-2);
    color: var(--blanco);
}
.agro-cat-pagination .page-numbers.dots {
    border-color: transparent;
    background: transparent;
    color: #999;
    pointer-events: none;
}

/* ── 6. RESPONSIVE ── */

/* < 1024px → banner lateral salta a fila nueva */
@media (max-width: 1023px) {
    .agro-cat-franja--f1 {
        grid-template-columns: 3fr 2fr;
        grid-template-areas:
            "principal  secundarias"
            "lineas     secundarias"
            "lateral    lateral";
    }
    .agro-cat-f1-lateral {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 12px;
    }
    .agro-cat-post--linea .entry-excerpt,
    .agro-cat-post--linea .entry-content { display: none !important; }
}

@media (max-width: 600px) {
    .agro-cat-franja--noticias { grid-template-columns: 1fr; }
    .agro-cat-franja--noticias .agro-cat-lateral {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        align-items: flex-start !important;
        max-width: 75vw !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

@media (max-width: 600px) {
    .agro-cat-franja--f1 {
        grid-template-columns: 1fr;
        grid-template-areas: "principal" "lineas" "secundarias" "lateral";
    }
    /* ── Layout ── */
    .agro-cat-franja--f4b { grid-template-columns: repeat(2, 1fr); }
    .agro-cat-franja--f4b .agro-cat-post:nth-child(odd)  { border-right: 1px solid var(--gris-borde) !important; padding-right: 7px !important; padding-left: 0 !important; }
    .agro-cat-franja--f4b .agro-cat-post:nth-child(even) { border-right: none !important; padding-left: 7px !important; padding-right: 0 !important; }
    .agro-cat-franja--f4b .agro-cat-post:nth-child(1),
    .agro-cat-franja--f4b .agro-cat-post:nth-child(2) { border-bottom: 1px solid var(--gris-borde) !important; padding-bottom: 14px !important; margin-bottom: 14px !important; }
    .agro-cat-franja--f1 .agro-cat-post,
    .agro-cat-post--secundaria { padding-left: 0 !important; padding-right: 0 !important; }
    .agro-cat-post--linea .agro-cat-post-thumb { width: 40%; }
    .agro-cat-franja--noticias { padding-left: 12px !important; padding-right: 12px !important; }
    .agro-cat-post--linea,
    .agro-cat-franja--f4b .agro-cat-post { padding-top: 10px !important; padding-left: 0 !important; padding-right: 0 !important; }
}

/* ============================================================
   § 15. AVISO DE COOKIES — Custom Branding
   ============================================================ */

/* Barra principal */
#cookie-notice {
    background-color: var(--muted-teal) !important;
    font-family: 'DM Sans', sans-serif !important;
    border-radius: 6px;
    margin: 15px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Contenedor interior */
.cookie-notice-container {
    padding: 16px 24px !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}

/* Texto del mensaje */
#cn-notice-text {
    color: var(--blanco) !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 16px;
    line-height: 1.5;
    flex: 1;
    min-width: 200px;
}

/* Grupo de botones */
#cn-notice-buttons {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 100%;
}

/* Botones — estilos base */
#cookie-notice .cn-button:not(.cn-button-custom) {
    font-family: 'DM Sans', sans-serif !important;
    font-weight: 500;
    font-size: 16px;
    padding: 12px 20px !important;
    border-radius: 5px !important;
    border: none !important;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
}

/* Botón aceptar — rojo */
#cookie-notice .cn-button:first-of-type {
    background-color: var(--brick-ember) !important;
    color: var(--blanco) !important;
}

#cookie-notice .cn-button:first-of-type:hover {
    background-color: #9a0f00 !important;
    transform: translateY(-1px);
    box-shadow: 0 3px 8px rgba(187, 19, 0, 0.3);
}

/* Botón rechazar — fondo transparente, borde blanco */
#cookie-notice .cn-button:last-of-type {
    background-color: transparent !important;
    color: var(--blanco) !important;
    border: 1.5px solid var(--blanco) !important;
}

#cookie-notice .cn-button:last-of-type:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    transform: translateY(-1px);
}

/* Icono cerrar — mejorado */
.cn-close-icon {
    opacity: 0.7;
    transition: opacity 0.2s ease;
}

.cn-close-icon:hover {
    opacity: 1;
}

.cn-close-icon:before,
.cn-close-icon:after {
    background-color: var(--blanco) !important;
}

/* Botones específicos — dimensiones y centrado */
body #cookie-notice a#cn-accept-cookie,
body #cookie-notice a#cn-refuse-cookie {
    border-radius: 5px !important;
    padding: 10px 24px !important;
    box-shadow: none !important;
    text-decoration: none !important;
    text-align: center !important;
    flex: 1 !important;
    max-width: 140px !important;
}

body #cookie-notice a#cn-refuse-cookie {
    background: transparent !important;
    border: 2px solid currentColor !important;
    padding: 8px 22px !important;
}

/* Ocultar X */
body #cookie-notice #cn-close-notice { display: none !important; }

/* Responsive — mobile */
@media (max-width: 600px) {
    #cookie-notice {
        margin: 10px;
    }

    .cookie-notice-container {
        flex-direction: column;
        align-items: stretch;
        padding: 14px 18px !important;
        gap: 12px;
    }

    #cn-notice-text {
        text-align: center;
    }

    #cn-notice-buttons {
        justify-content: center;
        width: 100%;
    }

    #cookie-notice .cn-button:not(.cn-button-custom) {
        flex: 1;
        min-width: 140px;
    }
}

/* § Padding lateral franjas < 1024px */
@media (max-width: 1023px) {
    .agro-franja--f3,
    .agro-franja--f4b,
    .agro-franja--f5,
    .agro-franja--f5b,
    .agro-franja--cats,
    .agro-cat-franja--f4b,
    .agro-cat-franja--noticias {
        padding-left: 12px;
        padding-right: 12px;
    }
}

/* § Banners laterales < 1024px — centrado y ancho máximo 80% */
@media (max-width: 1023px) {
    .agro-franja--f3  > .widget:nth-child(3),
    .agro-franja--f5  > .widget:nth-child(3),
    .agro-franja--f5b > .widget:nth-child(2),
    .agro-franja--f8  > .widget:nth-child(4),
    .agro-f1-lateral,
    .agro-cat-f1-lateral,
    .agro-single-franja--contenido .agro-cat-lateral {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        align-items: flex-start !important;
        max-width: 75vw !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}


/* ============================================================
   § 16. COMPONENTES REUTILIZABLES
   ------------------------------------------------------------
   Componentes que se usan en varias plantillas (no específicos
   de una franja). Se extraen aquí para evitar duplicación.

   · Tarjeta ponente (.wb-expert-*)
       Usada en: page-webinar.php (landing de registro),
                 single-webinars.php (sidebar diferido).
       Origen: extraída del <style> inline de page-webinar.php.
   ============================================================ */

/* ── Tarjeta ponente ─────────────────────────────────────────── */
.wb-expert-card {
    display: flex;
    align-items: center;
    gap: 16px;
    background: var(--mint-cream);
    border-radius: 12px;
    padding: 20px;
    margin-top: 8px;
}

.wb-expert-photo {
    width:      90px !important;
    min-width:  90px !important;
    max-width:  90px !important;
    height:     90px !important;
    min-height: 90px !important;
    max-height: 90px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    display: block !important;
    flex-shrink: 0 !important;
    border: 3px solid #AFCDBB !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.12) !important;
}

/* Logo de organización (pequeño, no redondo) */
.wb-org-logo {
    max-height: 36px !important;
    width: auto !important;
    height: auto !important;
    display: block;
    margin-bottom: 12px;
}

.wb-expert-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.wb-expert-name {
    font-family: 'DM Sans', sans-serif;
    font-size: 15px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0;
}

.wb-expert-role {
    font-family: 'DM Sans', sans-serif;
    font-size: 13px;
    color: var(--muted-teal);
    font-weight: 600;
    margin: 0;
}

.wb-expert-org {
    font-family: 'DM Sans', sans-serif;
    font-size: 13px;
    color: #888;
    margin: 0;
}


/* ============================================================
   § 17. WEBINARS — SINGLE DIFERIDO (single-webinars.php)
   ------------------------------------------------------------
   · Hero compacto verde con tag, título y meta
   · Vídeo embed ancho completo 16:9
   · Grid 70/30: artículo + sidebar
   · Sidebar: ponentes (reusa .wb-expert-* de §16),
              sponsor block, CTA "Próximos webinars"
   · Otros webinars hechos abajo
   · SIN BANNERS — espacio editorial limpio
   ============================================================ */

/* ── Hero ──────────────────────────────────────────────────── */
.agro-wbd-hero {
    background: var(--mint-cream);
    padding: 36px 32px 32px;
    text-align: center;
}
.agro-wbd-hero-inner {
    max-width: var(--site-max-width);
    margin: 0 auto;
}
.agro-wbd-tag {
    display: inline-block;
    background: var(--muted-teal);
    color: var(--blanco);
    font-family: 'DM Sans', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 5px 14px;
    border-radius: 50px;
    margin-bottom: 14px;
}
.agro-wbd-title {
    font-family: 'DM Sans', sans-serif;
    font-size: clamp(24px, 3.5vw, 38px);
    font-weight: 800;
    color: #1a1a1a;
    line-height: 1.18;
    margin: 0 0 12px;
}
.agro-wbd-meta {
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    color: var(--gris-oscuro);
    margin: 0;
}
.agro-wbd-hero-sponsor {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 16px;
}
.agro-wbd-hero-sponsor-label {
    font-family: 'DM Sans', sans-serif;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--gris-oscuro);
}
.agro-wbd-hero-sponsor img {
    max-height: 56px;
    max-width: 180px;
    width: auto;
    height: auto;
    display: block;
}

/* ── Vídeo embed ───────────────────────────────────────────── */
.agro-wbd-video {
    background: #000;
    padding: 0;
}
.agro-wbd-video-frame {
    max-width: var(--site-max-width);
    margin: 0 auto;
    aspect-ratio: 16 / 9;
    position: relative;
}
.agro-wbd-video-frame iframe,
.agro-wbd-video-frame embed,
.agro-wbd-video-frame object,
.agro-wbd-video-frame video {
    position: absolute;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0;
}

/* ── Body 70/30 ────────────────────────────────────────────── */
.agro-wbd-body {
    background: var(--blanco);
    padding: 48px 32px 56px;
}
.agro-wbd-grid {
    max-width: var(--site-max-width);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(0, 3fr);
    gap: 48px;
    align-items: start;
}

/* Artículo (70%) — el contenido del editor con sus estilos normales */
.agro-wbd-article {
    font-family: 'DM Sans', sans-serif;
    font-size: 17px;
    line-height: 1.65;
    color: #1a1a1a;
}
.agro-wbd-article h2 {
    font-size: 24px;
    font-weight: 800;
    margin: 32px 0 12px;
}
.agro-wbd-article h3 {
    font-size: 20px;
    font-weight: 700;
    margin: 24px 0 10px;
}
.agro-wbd-article p { margin: 0 0 16px; }
.agro-wbd-article ul,
.agro-wbd-article ol { margin: 0 0 16px 22px; }
.agro-wbd-article img { max-width: 100%; height: auto; border-radius: 8px; }

/* Sidebar (30%) */
.agro-wbd-sidebar {
    position: sticky;
    top: 80px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.agro-wbd-sidebar-title {
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--gris-oscuro);
    margin: 0 0 4px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--mint-cream);
}

/* Sponsor block (Con el apoyo de) */
.agro-wbd-sponsor {
    background: var(--mint-cream);
    border-radius: 12px;
    padding: 18px 20px;
    text-align: center;
    margin-top: 8px;
}
.agro-wbd-sponsor-label {
    font-family: 'DM Sans', sans-serif;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--gris-oscuro);
    margin: 0 0 10px;
}
.agro-wbd-sponsor img {
    max-width: 70%;
    max-height: 60px;
    height: auto;
    display: block;
    margin: 0 auto;
}
.agro-wbd-sponsor-name {
    font-family: 'DM Sans', sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0;
}

/* CTA Próximos webinars */
.agro-wbd-cta {
    display: block;
    background: var(--brick-ember);
    color: var(--blanco) !important;
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-align: center;
    text-decoration: none;
    padding: 14px 18px;
    border-radius: 4px;
    transition: opacity 0.2s;
}
.agro-wbd-cta:hover { opacity: 0.86; }

/* ── Otros webinars hechos ─────────────────────────────────── */
.agro-wbd-otros {
    max-width: var(--site-max-width);
    margin: 0 auto;
    padding: 0 32px 64px;
}
.agro-wbd-otros-titulo {
    font-family: 'DM Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--mint-cream);
}
.agro-wbd-otros-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.agro-wbd-otro a {
    display: block;
    text-decoration: none;
    color: #1a1a1a;
}
.agro-wbd-otro-thumb {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 8px;
    background: #f0f0f0;
    margin-bottom: 10px;
}
.agro-wbd-otro-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.agro-wbd-otro a:hover .agro-wbh-overlay { background: rgba(0, 0, 0, 0.4); }
.agro-wbd-otro a:hover .agro-wbh-play    { opacity: 1; }

.agro-wbd-otro-titulo {
    font-family: 'DM Sans', sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
    color: #1a1a1a;
    margin: 0 0 8px;
    transition: color 0.15s;
}
.agro-wbd-otro a:hover .agro-wbd-otro-titulo { color: var(--muted-teal); }

.agro-wbd-otro-logo {
    max-height: 22px;
    max-width: 80px;
    width: auto;
    height: auto;
    display: block;
    opacity: 0.85;
}

/* ── Responsive ────────────────────────────────────────────── */
@media (max-width: 1023px) {
    .agro-wbd-grid {
        grid-template-columns: 1fr;
        gap: 36px;
    }
    .agro-wbd-sidebar {
        position: static;
    }
    .agro-wbd-otros-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 599px) {
    .agro-wbd-hero  { padding: 28px 20px 24px; }
    .agro-wbd-body  { padding: 32px 20px 40px; }
    .agro-wbd-otros { padding: 0 20px 48px; }
    .agro-wbd-otros-grid { grid-template-columns: 1fr; }
}


/* ============================================================
   § 18. WEBINARS — HUB (category-webinars.php)
   ------------------------------------------------------------
   /category/webinars/
   · Hero slim
   · 60/40: thumbnail último diferido + sidebar próximos
   · Grid: más webinars en diferido
   · Sin banners
   ============================================================ */

/* ── Hero ──────────────────────────────────────────────────── */
.agro-wbh-hero {
    background: var(--mint-cream);
    padding: 40px 32px 32px;
    text-align: center;
}
.agro-wbh-hero-inner {
    max-width: var(--site-max-width);
    margin: 0 auto;
}
.agro-wbh-title {
    font-family: 'DM Sans', sans-serif;
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 800;
    color: #1a1a1a;
    margin: 0 0 8px;
}
.agro-wbh-subtitle {
    font-family: 'DM Sans', sans-serif;
    font-size: 16px;
    color: var(--gris-oscuro);
    margin: 0;
}

/* ── 60/40 top ─────────────────────────────────────────────── */
.agro-wbh-top {
    background: var(--blanco);
    padding: 48px 32px 40px;
}
.agro-wbh-top-inner {
    max-width: var(--site-max-width);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 6fr) minmax(0, 4fr);
    gap: 36px;
    align-items: start;
}

/* Overlay + play SVG — patrón compartido (igual a YouTube Reels) */
.agro-wbh-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0);
    transition: background 0.3s ease;
}
.agro-wbh-play {
    width: 40px;
    height: 40px;
    fill: var(--brick-ember);
    opacity: 0.9;
    transition: opacity 0.3s ease;
}
.agro-wbh-play--lg { width: 60px; height: 60px; }

/* Último webinar (60%) */
.agro-wbh-ultimo {
    display: block;
    text-decoration: none;
    color: #1a1a1a;
}
.agro-wbh-ultimo-thumb {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #f0f0f0;
    border-radius: 12px;
}
.agro-wbh-ultimo-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.agro-wbh-ultimo:hover .agro-wbh-overlay { background: rgba(0, 0, 0, 0.4); }
.agro-wbh-ultimo:hover .agro-wbh-play    { opacity: 1; }

.agro-wbh-ultimo-body {
    padding: 20px 4px 0;
}
.agro-wbh-ultimo-tag {
    display: inline-block;
    background: var(--muted-teal);
    color: var(--blanco);
    font-family: 'DM Sans', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: 50px;
    margin-bottom: 10px;
}
.agro-wbh-ultimo-titulo {
    font-family: 'DM Sans', sans-serif;
    font-size: clamp(22px, 2.6vw, 28px);
    font-weight: 800;
    line-height: 1.22;
    color: #1a1a1a;
    margin: 0 0 10px;
    transition: color 0.15s;
}
.agro-wbh-ultimo:hover .agro-wbh-ultimo-titulo { color: var(--muted-teal); }

.agro-wbh-ultimo-row {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 16px;
    align-items: center;
}
.agro-wbh-ultimo-info { min-width: 0; }
.agro-wbh-ultimo-logo-col {
    width: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-left: 1px solid var(--gris-borde);
    padding-left: 16px;
    align-self: stretch;
}
.agro-wbh-ultimo-logo-col img {
    max-height: 56px;
    max-width: 70px;
    width: auto;
    height: auto;
    display: block;
}
.agro-wbh-ultimo-fecha {
    display: block;
    font-family: 'DM Sans', sans-serif;
    font-size: 13px;
    color: var(--gris);
    margin-top: 6px;
}

/* CTA "Ver vídeo y artículo →" — botón rojo que invierte en hover */
.agro-wbh-ultimo-cta {
    display: inline-block;
    background: var(--brick-ember);
    color: var(--blanco);
    border: 1.5px solid var(--brick-ember);
    font-family: 'DM Sans', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 9px 16px;
    border-radius: 4px;
    transition: background 0.15s, color 0.15s;
}
.agro-wbh-ultimo:hover .agro-wbh-ultimo-cta {
    background: var(--blanco);
    color: var(--brick-ember);
}

.agro-wbh-ultimo--vacio {
    padding: 32px;
    text-align: center;
    background: var(--mint-cream);
    border-radius: 12px;
    color: var(--gris-oscuro);
}

/* Próximos (40%) */
.agro-wbh-proximos {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.agro-wbh-proximos-titulo {
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--gris-oscuro);
    margin: 0 0 4px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--mint-cream);
}
.agro-wbh-proximos-vacio {
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    color: var(--gris);
    font-style: italic;
    margin: 0;
}
.agro-wbh-prox {
    background: var(--mint-cream);
    border-radius: 10px;
    padding: 14px 16px;
}
.agro-wbh-prox-fecha {
    font-family: 'DM Sans', sans-serif;
    font-size: 12px;
    font-weight: 700;
    color: var(--muted-teal);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 0 0 4px;
}
.agro-wbh-prox-titulo {
    font-family: 'DM Sans', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 8px;
}
.agro-wbh-prox-titulo a {
    color: #1a1a1a;
    text-decoration: none;
}
.agro-wbh-prox-titulo a:hover { color: var(--muted-teal); }
.agro-wbh-prox-row {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 12px;
    align-items: center;
}
.agro-wbh-prox-info { min-width: 0; }
.agro-wbh-prox-logo-col {
    width: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-left: 1px solid var(--muted-teal-2);
    padding-left: 12px;
    align-self: stretch;
}
.agro-wbh-prox-logo-col img {
    max-height: 40px;
    max-width: 48px;
    width: auto;
    height: auto;
    display: block;
}
.agro-wbh-prox-cta {
    display: inline-block;
    background: var(--brick-ember);
    color: var(--blanco) !important;
    font-family: 'DM Sans', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    padding: 8px 14px;
    border-radius: 4px;
    transition: opacity 0.2s;
}
.agro-wbh-prox-cta:hover { opacity: 0.86; }

/* ── Grid resto en diferido ────────────────────────────────── */
.agro-wbh-resto {
    background: var(--blanco);
    padding: 16px 32px 64px;
}
.agro-wbh-resto-inner {
    max-width: var(--site-max-width);
    margin: 0 auto;
}
.agro-wbh-resto-titulo {
    font-family: 'DM Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--mint-cream);
}
.agro-wbh-resto-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.agro-wbh-resto-card a {
    display: block;
    text-decoration: none;
    color: #1a1a1a;
}
.agro-wbh-resto-thumb {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 8px;
    background: #f0f0f0;
    margin-bottom: 10px;
}
.agro-wbh-resto-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.agro-wbh-resto-card a:hover .agro-wbh-overlay { background: rgba(0, 0, 0, 0.4); }
.agro-wbh-resto-card a:hover .agro-wbh-play    { opacity: 1; }

.agro-wbh-resto-card-body {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: stretch;
    min-height: 72px;
}
.agro-wbh-resto-card-info {
    min-width: 0;
    padding: 10px 12px 10px 0;
}
.agro-wbh-resto-card-titulo {
    font-family: 'DM Sans', sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
    color: #1a1a1a;
    margin: 0 0 6px;
    transition: color 0.15s;
}
.agro-wbh-resto-card a:hover .agro-wbh-resto-card-titulo { color: var(--muted-teal); }
.agro-wbh-resto-card-fecha {
    display: block;
    font-family: 'DM Sans', sans-serif;
    font-size: 12px;
    color: var(--gris);
}
.agro-wbh-resto-card-logo-col {
    width: 62px;
    border-left: 1px solid var(--gris-borde);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 0 10px 12px;
}
.agro-wbh-resto-card-logo {
    max-height: 42px;
    max-width: 52px;
    width: auto;
    height: auto;
    display: block;
}

/* ── Responsive ────────────────────────────────────────────── */
@media (max-width: 1023px) {
    .agro-wbh-top-inner {
        grid-template-columns: 1fr;
        gap: 36px;
    }
    .agro-wbh-resto-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 599px) {
    .agro-wbh-hero  { padding: 30px 20px 24px; }
    .agro-wbh-top   { padding: 32px 20px 24px; }
    .agro-wbh-resto { padding: 8px 20px 48px; }
    .agro-wbh-resto-grid { grid-template-columns: 1fr; }
}


/* ── Zona 3: titulares 17px — al final para ganar la cascada ─────── */
@media (max-width: 599px) {
    .agro-franja--f1 > .widget:nth-child(3) .entry-title,
    .agro-franja--f1 > .widget:nth-child(3) .entry-title a,
    .agro-franja--f3 > .widget:nth-child(2) .entry-title,
    .agro-franja--f5 > .widget:nth-child(1) .entry-title,
    .agro-franja--f5 > .widget:nth-child(2) .entry-title,
    .agro-franja--f5b .entry-title,
    .agro-cat-post--linea .entry-title {
        font-size: 17px !important;
    }
}

/* ── Zona 3: F4b títulos 20px ────────────────────────────────────── */
@media (max-width: 599px) {
    .agro-franja--f4b .entry-title,
    .agro-cat-franja--f4b .entry-title { font-size: 20px !important; }
}

/* ── Zona 3: F1 W1 título 24px (uniforma con W2) ──────────────────── */
@media (max-width: 599px) {
    .agro-franja--f1 > .widget:nth-child(1) .entry-title { font-size: 24px !important; }
}

/* ── Zona 3: tipografía single ───────────────────────────────────── */
@media (max-width: 599px) {
    .single .agro-single-contenido .entry-title  { font-size: 31px !important; }
    .single .entry-content,
    .single .entry-content p                     { font-size: 21px !important; }
    .single .entry-content h2                    { font-size: 30px !important; }
    .single .entry-content h3                    { font-size: 25px !important; }
}


/* ============================================================
   § 17. FECHA MÓVIL + WIDGET DEL TIEMPO
   ============================================================ */

/* ── Barra de fecha móvil (portada, < 1025px) ─────────────── */
.agro-fecha-mobile-bar {
    display: none;
}
@media (max-width: 1024px) {
    .agro-fecha-mobile-bar {
        display: block;
        text-align: center;
        font-size: 13px;
        font-family: 'DM Sans', sans-serif;
        color: #555;
        letter-spacing: 1px;
        padding: 8px 16px;
        border-bottom: 1px solid var(--gris-borde);
        background: #fff;
    }
}

.agro-weather {
    font-size: var(--t-sm);
}

/* ── F1 ads intercalados en móvil ─────────────────────────── */
.agro-f1-ad-movil {
    display: block;
    width: 100%;
    max-width: 75vw;
    text-align: center;
    margin: 0 auto !important;
    padding-top: 20px;
    border-top: 1px solid var(--gris-borde);
}
.agro-f1-ad-movil img {
    max-width: 100%;
    height: auto;
}
/* Cancelar padding-bottom del artículo anterior para no doblar la separación */
.agro-franja--f1 > .widget:nth-child(2) .agro-cat-post:has(+ .agro-f1-ad-movil) {
    padding-bottom: 0;
    border-bottom: none;
}

/* ── Cambiar ubicación (control discreto) ──────────────────── */
.agro-weather-switch {
    display: block;
    margin: 12px auto 0;
    padding: 2px 6px;
    background: none;
    border: none;
    color: var(--muted-teal);
    font-family: inherit;
    font-size: 12px;
    line-height: 1.3;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: color 0.2s;
}
.agro-weather-switch:hover {
    background: none;
    color: var(--muted-teal-2);
}

/* Nota discreta (permiso denegado, etc.) */
.agro-weather-note {
    margin-top: 8px;
    font-size: 11px;
    color: var(--gris);
    text-align: center;
}

/* ── Tarjeta de datos ──────────────────────────────────────── */
.agro-weather-card {
    background: #f9f9f9;
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    padding: 16px;
}

.agro-weather-loading {
    text-align: center;
    color: var(--gris);
    padding: 8px 0;
}

/* ── Contenido ─────────────────────────────────────────────── */
.agro-weather-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.agro-weather-location {
    font-size: 13px;
    color: var(--gris-oscuro);
}

.agro-weather-now {
    display: flex;
    align-items: center;
    gap: 6px;
}

.agro-weather-icon {
    font-size: 26px;
    line-height: 1;
}

.agro-weather-temp {
    font-size: 26px;
    font-weight: 700;
    color: var(--brick-ember);
    line-height: 1;
}

.agro-weather-forecast {
    display: flex;
    justify-content: space-around;
    border-top: 1px solid var(--gris-borde);
    padding-top: 10px;
    margin-top: 4px;
}
.agro-weather-day {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}
.agro-weather-day-name {
    font-size: 11px;
    color: var(--gris);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}
.agro-weather-day-icon {
    font-size: 20px;
    line-height: 1;
}
.agro-weather-day-temp {
    font-size: var(--t-sm);
    font-weight: 600;
    color: var(--gris-oscuro);
}
