:root {
    --ri-red: #d71920;
    --ri-red-dark: #9f1117;
    --ri-black: #111111;
    --ri-ink: #202020;
    --ri-muted: #6f6f6f;
    --ri-line: #e7e7e7;
    --ri-soft: #f6f6f6;
    --ri-white: #ffffff;
    --ri-max: 1180px;
    --ri-radius: 6px;
    --ri-font-news: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
    --ri-font-body: Arial, Helvetica, sans-serif;
}

body {
    background: var(--ri-white);
    color: var(--ri-ink);
    font-family: var(--ri-font-body);
}

a {
    color: var(--ri-black);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

a:hover {
    color: var(--ri-red);
}

#navigation,
.navigation,
.penci-menu-hbg,
.site-header,
#header {
    border-bottom: 1px solid var(--ri-line);
}

#logo img,
.penci-logo img {
    max-height: 86px;
    width: auto;
}

#navigation .menu li a,
.penci-menu-hbg .menu li a,
#sidebar-nav .menu li a {
    color: var(--ri-black);
    font-family: var(--ri-font-news);
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

#navigation .menu li a:hover,
#navigation .menu li.current-menu-item > a {
    color: var(--ri-red);
}

.penci-standard-cat .cat > a.penci-cat-name,
.cat > a.penci-cat-name,
.ramallo-kicker {
    background: var(--ri-red);
    color: var(--ri-white);
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 3px 8px;
    border-radius: 2px;
    font-family: var(--ri-font-news);
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    text-decoration: none;
}

.post-entry p,
.container-single .post-entry p {
    color: var(--ri-ink);
    font-size: 18px;
    line-height: 1.65;
}

.single-post-title,
.post-box-title,
.header-standard h2 a,
.penci-grid li .item h2 a,
.penci-masonry .item-masonry h2 a {
    color: var(--ri-black);
    font-family: var(--ri-font-news);
    font-weight: 800;
    letter-spacing: 0;
}

.ramallo-modern-template {
    background: var(--ri-white);
}

.ramallo-modern-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(255, 255, 255, 0.98);
    border-bottom: 1px solid var(--ri-line);
}

.ramallo-modern-header-inner {
    max-width: var(--ri-max);
    margin: 0;
    padding: 10px 14px;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 14px;
    align-items: center;
}

.ramallo-modern-logo {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    text-decoration: none;
}

.ramallo-modern-logo img {
    display: block;
    width: auto;
    max-width: 190px;
    max-height: 58px;
}

.ramallo-modern-site-title {
    color: var(--ri-black);
    font-family: var(--ri-font-news);
    font-size: 24px;
    font-weight: 900;
    line-height: 0.95;
    text-transform: uppercase;
}

.ramallo-modern-menu {
    display: flex;
    justify-content: flex-end;
    gap: 16px;
    overflow-x: auto;
    scrollbar-width: none;
}

.ramallo-modern-menu::-webkit-scrollbar {
    display: none;
}

.ramallo-modern-menu a {
    flex: 0 0 auto;
    color: var(--ri-black);
    font-family: var(--ri-font-news);
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
}

.ramallo-modern-menu a:hover {
    color: var(--ri-red);
}

.ramallo-modern-home {
    background: var(--ri-white);
}

.ramallo-modern-wrap {
    max-width: var(--ri-max);
    margin: 0 auto;
    padding: 14px 14px 48px;
}

.ramallo-top-ad {
    margin: 6px auto 14px;
    display: flex;
    justify-content: center;
}

.ramallo-top-ad:empty,
.ramallo-inline-ad:empty {
    display: none;
}

.ramallo-top-ad .widget,
.ramallo-top-ad img,
.ramallo-top-ad iframe {
    max-width: 100%;
}

.ramallo-top-ad img {
    display: block;
    height: auto;
}

.ramallo-section-rail {
    position: sticky;
    top: 79px;
    z-index: 40;
    background: rgba(255, 255, 255, 0.98);
    border-top: 1px solid var(--ri-line);
    border-bottom: 1px solid var(--ri-line);
    margin: 0 -14px 18px;
    padding: 8px 14px;
    overflow-x: auto;
    scrollbar-width: none;
}

.ramallo-section-rail::-webkit-scrollbar {
    display: none;
}

.ramallo-section-rail-inner {
    display: flex;
    gap: 8px;
    min-width: max-content;
}

.ramallo-section-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 12px;
    border: 1px solid var(--ri-line);
    border-radius: 999px;
    background: var(--ri-white);
    color: var(--ri-black);
    font-family: var(--ri-font-news);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.ramallo-section-chip:hover {
    border-color: var(--ri-red);
    color: var(--ri-red);
}

.ramallo-home-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.72fr) minmax(280px, 0.78fr);
    gap: 30px;
    align-items: start;
}

.ramallo-lead-block,
.ramallo-latest-block,
.ramallo-category-blocks {
    margin-bottom: 28px;
}

.ramallo-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(250px, 0.8fr);
    gap: 18px;
    align-items: start;
}

.ramallo-featured-column {
    display: grid;
    gap: 14px;
}

.ramallo-secondary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.ramallo-section-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 14px;
    border-top: 4px solid var(--ri-black);
    margin: 0 0 16px;
    padding-top: 10px;
}

.ramallo-section-heading h1,
.ramallo-section-heading h2 {
    margin: 0;
    color: var(--ri-black);
    font-family: var(--ri-font-news);
    font-size: 24px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1;
    text-transform: uppercase;
}

.ramallo-section-heading a {
    color: var(--ri-red);
    font-family: var(--ri-font-news);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.ramallo-card {
    border-bottom: 1px solid var(--ri-line);
    padding-bottom: 15px;
}

.ramallo-card-media {
    display: block;
    background: var(--ri-soft);
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: var(--ri-radius);
    text-decoration: none;
}

.ramallo-card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 180ms ease;
}

.ramallo-card:hover .ramallo-card-media img {
    transform: scale(1.025);
}

.ramallo-card-body {
    padding-top: 11px;
}

.ramallo-card-title {
    margin: 8px 0 6px;
    font-family: var(--ri-font-news);
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.04;
}

.ramallo-card-title a {
    color: var(--ri-black);
    text-decoration: none;
}

.ramallo-card-title a:hover {
    color: var(--ri-red);
}

.ramallo-card-date {
    color: var(--ri-muted);
    font-size: 12px;
}

.ramallo-card-hero .ramallo-card-title {
    font-size: 42px;
}

.ramallo-card-featured .ramallo-card-title {
    font-size: 22px;
}

.ramallo-card-standard .ramallo-card-title {
    font-size: 21px;
}

.ramallo-card-compact,
.ramallo-card-no-media {
    display: block;
    border-bottom: 1px solid var(--ri-line);
    padding: 10px 0 13px;
}

.ramallo-card-no-media .ramallo-card-body {
    padding-top: 0;
}

.ramallo-card-no-media .ramallo-card-title,
.ramallo-card-compact .ramallo-card-title {
    margin-top: 6px;
    font-size: 18px;
    line-height: 1.13;
}

.ramallo-card-no-media .ramallo-card-media {
    display: none;
}

.ramallo-category-block {
    margin-bottom: 24px;
}

.ramallo-category-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 18px;
}

.ramallo-inline-ad {
    grid-column: 1 / -1;
    display: block;
    margin: 4px 0 6px;
}

.ramallo-inline-ad .widget,
.ramallo-sidebar .ramallo-ad-widget {
    overflow: hidden;
    border-radius: var(--ri-radius);
}

.ramallo-ad-slot,
.ramallo-single-top-ad {
    min-width: 0;
}

.ramallo-ad-slot {
    width: 100%;
}

.ramallo-ad-slot-grid {
    display: grid;
    gap: 14px;
    width: 100%;
    justify-items: center;
}

.ramallo-ad-slot .g,
.ramallo-ad-slot .g > div,
.ramallo-single-featured-ad-container .g,
.ramallo-single-featured-ad-container .g > div {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
}

.ramallo-ad-slot-single .ramallo-ad-slot-grid {
    grid-template-columns: minmax(0, 1fr);
}

.ramallo-ad-slot-pair .ramallo-ad-slot-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ramallo-ad-card {
    min-width: 0;
}

.ramallo-ad-card-link {
    display: block;
    overflow: hidden;
    border-radius: var(--ri-radius);
    background: var(--ri-soft);
    text-decoration: none;
}

.ramallo-ad-card-link img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    object-fit: contain;
}

.ramallo-ad-slot img,
body.single-post .ramallo-single-featured-ad-container img,
body.single-post .ramallo-single-top-ad img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    object-fit: contain;
    margin: 0;
}

.ramallo-ad-slot--ad_top_home .ramallo-ad-slot-grid,
.ramallo-modern-header-ad .ramallo-ad-slot-grid {
    grid-template-columns: minmax(0, 1fr);
}

.ramallo-modern-header-ad .ramallo-ad-card-link {
    background: transparent;
}

.ramallo-modern-header-ad .ramallo-ad-card {
    padding: 0;
    border: 0;
}

.ramallo-inline-ad img,
.ramallo-sidebar .ramallo-ad-widget img,
.ramallo-inarticle-ad img {
    width: 100%;
    height: auto;
    display: block;
}

.ramallo-sidebar {
    display: grid;
    gap: 22px;
}

.ramallo-module {
    border-top: 4px solid var(--ri-black);
    padding-top: 14px;
}

.ramallo-module-title {
    margin: 0 0 14px;
    font-family: var(--ri-font-news);
    font-size: 22px;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
}

.ramallo-most-read {
    counter-reset: mostread;
    display: grid;
    gap: 12px;
}

.ramallo-most-read a {
    counter-increment: mostread;
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 10px;
    align-items: start;
    color: var(--ri-black);
    font-family: var(--ri-font-news);
    font-size: 18px;
    font-weight: 900;
    line-height: 1.12;
    text-decoration: none;
}

.ramallo-most-read a::before {
    content: counter(mostread);
    color: var(--ri-red);
    font-size: 30px;
    line-height: 0.9;
}

.ramallo-subscribe {
    background: var(--ri-black);
    color: var(--ri-white);
    border-radius: var(--ri-radius);
    padding: 20px;
}

.ramallo-subscribe p {
    color: #dddddd;
    margin: 8px 0 16px;
}

.ramallo-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 14px;
    background: var(--ri-red);
    color: var(--ri-white);
    border-radius: 3px;
    font-family: var(--ri-font-news);
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
}

.ramallo-inarticle-ad {
    margin: 26px 0;
    overflow: hidden;
    border-radius: var(--ri-radius);
}

.ramallo-single-top-ad {
    margin: 0 0 16px;
}

.ramallo-single-article {
    max-width: 100%;
    margin: 0;
}

.ramallo-single-header {
    margin: 0 0 16px;
}

.ramallo-single-meta {
    margin-bottom: 6px;
}

.ramallo-single-title {
    margin: 0;
    color: var(--ri-black);
    font-family: var(--ri-font-news);
    font-size: 42px;
    font-weight: 900;
    line-height: 1.04;
    letter-spacing: 0;
}

.ramallo-single-featured {
    margin: 0 0 18px;
    overflow: hidden;
    border-radius: var(--ri-radius);
}

.ramallo-single-featured img {
    display: block;
    width: 100%;
    height: auto;
}

.ramallo-single-content {
    color: var(--ri-ink);
    font-size: 18px;
    line-height: 1.7;
}

.ramallo-single-content p {
    margin: 0 0 18px;
}

.ramallo-single-footer {
    margin-top: 18px;
}

.ramallo-single-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
}

.ramallo-single-tags a {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid var(--ri-line);
    border-radius: 999px;
    color: var(--ri-muted);
    font-size: 12px;
    text-decoration: none;
    text-transform: uppercase;
}

/* =============================================================
   MICROFIX 2026-06-25 — OCULTAR TICKER / FRANJAS INFORMATIVAS
   Clases confirmadas en HTML de produccion:
   - .ri-v57-ticker-block  (contenedor principal del ticker)
   - .ramallo-worldcup     (preventivo, no visto aun)
   - .ramallo-economy      (preventivo, no visto aun)
   El ticker usa estilos inline en el tag, por eso se necesita
   display:none !important para anular el style="..." del PHP.
   No toca publicidades (.ri-v56-top-ad-zone, .ramallo-ad-slot,
   .ramallo-ad-card, .ramallo-inline-ad).
   ============================================================= */

.ri-v57-ticker-block,
.ramallo-worldcup,
.ramallo-economy {
    display: none !important;
}

/* =============================================================

/* =============================================================
   TAREA05 — SINGLE POST LAYOUT v2
   Agregado 2026-07-02
   ============================================================= */

/* --- Single post layout: main + sidebar --- */
.ramallo-single-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 36px;
}

.ramallo-single-main {
    min-width: 0;
}

.ramallo-single-sidebar {
    min-width: 0;
}

/* --- Sidebar widgets --- */
.ramallo-single-sidebar .widget {
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--ri-line);
}

.ramallo-single-sidebar .widget:last-child {
    border-bottom: none;
}

.ramallo-single-sidebar .widget-title,
.ramallo-single-sidebar .widgettitle {
    font-family: var(--ri-font-news);
    font-size: 18px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0;
    margin: 0 0 12px;
    padding: 0 0 8px;
    border-bottom: 3px solid var(--ri-black);
}

/* Weather widget in sidebar */
.ramallo-single-sidebar .textwidget iframe,
.ramallo-single-sidebar .textwidget .weatherwidget-io {
    max-width: 100%;
}

/* Penci latest news widget in sidebar */
.ramallo-single-sidebar .widget.penci-latest-news-widget .penci-image-holder {
    width: 80px !important;
    min-width: 80px !important;
}

.ramallo-single-sidebar .widget.penci-latest-news-widget .penci-post-item {
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 10px;
    margin-bottom: 12px;
    align-items: start;
}

.ramallo-single-sidebar .widget.penci-latest-news-widget .penci-post-item:last-child {
    margin-bottom: 0;
}

.ramallo-single-sidebar .widget.penci-latest-news-widget a {
    font-family: var(--ri-font-news);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.25;
    color: var(--ri-black);
    text-decoration: none;
}

.ramallo-single-sidebar .widget.penci-latest-news-widget .penci__post-title {
    margin-top: 0;
}

/* AdRotate in sidebar */
.ramallo-single-sidebar .widget_adrotate_widgets img,
.ramallo-single-sidebar .a-single img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
}

/* Shortcodes Ultimate (RSS feeds) in sidebar */
.ramallo-single-sidebar .widget.shortcodes-ultimate img {
    max-width: 100%;
    height: auto;
}

/* --- In-article ad spacing --- */
.ramallo-inarticle-ad {
    margin: 28px 0;
    padding: 16px 0;
    border-top: 1px solid var(--ri-line);
    border-bottom: 1px solid var(--ri-line);
    overflow: hidden;
}

/* --- Single post content --- */
.ramallo-single-content {
    font-size: 18px;
    line-height: 1.75;
}

.ramallo-single-content p {
    margin: 0 0 20px;
}

.ramallo-single-content img,
.ramallo-single-content iframe {
    max-width: 100%;
    height: auto;
}

/* --- Responsive --- */
@media (max-width: 1023px) {
    .ramallo-single-layout {
        grid-template-columns: 1fr 260px;
        gap: 24px;
    }
}

@media (max-width: 767px) {
    .ramallo-single-layout {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    
    .ramallo-single-sidebar {
        border-top: 2px solid var(--ri-line);
        padding-top: 20px;
        margin-top: 8px;
    }
}

/* EOF TAREA05 */

/* TAREA06: Barra economica */
.ri-economy-bar {
    background: #f0f4f8;
    border-top: 1px solid #d1d9e6;
    border-bottom: 1px solid #d1d9e6;
    width: 100%;
    overflow: hidden;
}
.ri-economy-bar-inner {
    max-width: var(--ri-max, 1180px);
    margin: 0 auto;
    padding: 6px 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px 24px;
    align-items: center;
}
.ri-economy-item {
    color: #1e293b;
    font-family: Inter, Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    line-height: 1.6;
}
@media (max-width: 767px) {
    .ri-economy-bar-inner {
        padding: 6px 12px;
        gap: 4px 16px;
    }
    .ri-economy-item {
        font-size: 12px;
    }
}
/* TAREA1: Header - hamburger menu + mobile fixes */

/* Hamburger icon - three horizontal lines */
.ri-hamburger-icon {
    display: inline-block;
    width: 22px;
    height: 18px;
    position: relative;
    cursor: pointer;
    vertical-align: middle;
}
.ri-hamburger-icon::before,
.ri-hamburger-icon::after,
.ri-hamburger-icon span {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background: #111;
    border-radius: 2px;
}
.ri-hamburger-icon span {
    top: 50%;
    transform: translateY(-50%);
}
.ri-hamburger-icon::before { top: 0; }
.ri-hamburger-icon::after { bottom: 0; }

/* Label - hide on narrow mobile, show on desktop */
.ri-hamburger-label {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    vertical-align: middle;
    margin-left: 4px;
}

/* Menu container styling */
.ramallo-modern-menu-mobile {
    position: relative;
}
.ramallo-modern-menu-mobile summary {
    cursor: pointer;
    list-style: none;
    display: inline-flex;
    align-items: center;
    padding: 8px 12px;
    user-select: none;
}
.ramallo-modern-menu-mobile summary::-webkit-details-marker {
    display: none;
}

/* Menu dropdown */
.ramallo-modern-menu-mobile nav {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 9999;
    background: #fff;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    border-radius: 0 0 8px 8px;
    padding: 8px 0;
    min-width: 200px;
}
.ramallo-modern-menu-mobile nav a {
    display: block;
    padding: 8px 16px;
    color: #1e293b;
    font-family: Inter, Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}
.ramallo-modern-menu-mobile nav a:hover {
    background: #f1f5f9;
}



/* Economy bar spacing after header */
.ri-economy-bar {
    margin: 0;
}

/* EOF TAREA1 */
/* TAREA3: Tipografia global y jerarquia */

/* Single post title: bigger than any card */
.ramallo-single-title {
    font-size: 48px;
    letter-spacing: -0.5px;
}
@media (max-width: 767px) {
    .ramallo-single-title {
        font-size: 32px;
        letter-spacing: -0.3px;
    }
}

/* Hero card title: slightly smaller than single title */
.ramallo-card-hero .ramallo-card-title {
    font-size: 38px;
    letter-spacing: -0.3px;
}
@media (max-width: 767px) {
    .ramallo-card-hero .ramallo-card-title {
        font-size: 26px;
    }
}

/* Featured cards: clear hierarchy */
.ramallo-card-featured .ramallo-card-title {
    font-size: 24px;
    letter-spacing: -0.2px;
}

/* Standard cards */
.ramallo-card-standard .ramallo-card-title {
    font-size: 20px;
}

/* Compact / sidebar cards */
.ramallo-card-compact .ramallo-card-title,
.ramallo-card-no-media .ramallo-card-title {
    font-size: 17px;
}

/* Content body - better readability */
.ramallo-single-content {
    font-size: 18px;
    line-height: 1.8;
}
.ramallo-single-content p {
    margin: 0 0 22px;
}

/* Module titles in sidebar */
.ramallo-single-sidebar .ramallo-module-title,
.ramallo-single-sidebar .widget-title {
    font-size: 17px;
    letter-spacing: -0.2px;
}

/* EOF TAREA3 */




/* TAREA4: Single post editorial structure */
.ramallo-single-meta-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 8px 0 4px;
    font-size: 13px;
    color: var(--ri-muted);
}
.ramallo-single-author {
    font-weight: 600;
}
.ramallo-single-share a {
    color: #1877f2;
    text-decoration: none;
    font-weight: 600;
    font-size: 12px;
}
.ramallo-single-share a:hover {
    text-decoration: underline;
}
.ramallo-single-postnav {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    margin-top: 24px;
    padding-top: 16px;
    border-top: 1px solid var(--ri-line);
}
.ramallo-single-postnav a {
    color: var(--ri-black);
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
}
.ramallo-single-postnav a:hover {
    color: var(--ri-red);
}
.ramallo-single-related {
    margin-top: 24px;
    padding-top: 16px;
    border-top: 1px solid var(--ri-line);
}
.ramallo-single-related-title {
    font-family: var(--ri-font-news);
    font-size: 18px;
    font-weight: 900;
    margin: 0 0 12px;
    text-transform: uppercase;
}
.ramallo-single-related-grid {
    display: grid;
    gap: 10px;
}
.ramallo-single-related-item a {
    display: block;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.25;
    color: var(--ri-black);
    text-decoration: none;
    padding: 8px 0;
    border-bottom: 1px solid var(--ri-line);
}
.ramallo-single-related-item:last-child a {
    border-bottom: none;
}
.ramallo-single-related-item a:hover {
    color: var(--ri-red);
}
.ramallo-single-fb-comment {
    margin-top: 20px;
    text-align: center;
}
.ramallo-fb-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 20px;
    background: #1877f2;
    color: #fff;
    border-radius: 6px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
}
.ramallo-fb-button:hover {
    background: #166fe5;
}
.ramallo-single-featured-ad-strip {
    display: none;
}
/* EOF TAREA4 */

/* TAREA5: Publicidad interna styling */
.ramallo-inarticle-ad {
    margin: 24px 0;
    padding: 16px;
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 6px;
    overflow: hidden;
    text-align: center;
}
.ramallo-inarticle-ad::before {
    content: "Publicidad";
    display: block;
    font-size: 10px;
    font-weight: 700;
    color: #adb5bd;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 8px;
}
.ramallo-inarticle-ad + .ramallo-inarticle-ad {
    display: none;
}
.ramallo-inarticle-ad img {
    max-width: 100%;
    height: auto;
    display: inline-block;
}
/* EOF TAREA5 */
/* TAREA6: Home editorial */
.ramallo-home-more {
    text-align: center;
    margin: 24px 0 8px;
}
.ramallo-button-sm {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 16px;
    background: var(--ri-red);
    color: #fff;
    border-radius: 4px;
    font-family: var(--ri-font-news);
    font-weight: 800;
    font-size: 13px;
    text-decoration: none;
    text-transform: uppercase;
}
.ramallo-button-sm:hover {
    background: var(--ri-red-dark);
}
.ramallo-most-viewed-block {
    margin-top: 24px;
    border-top: 1px solid var(--ri-line);
    padding-top: 8px;
}
/* EOF TAREA6 */

/* TAREA7: Archive/category pages */
.ramallo-archive-header {
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 3px solid var(--ri-black);
}
.ramallo-archive-title {
    font-family: var(--ri-font-news);
    font-size: 32px;
    font-weight: 900;
    margin: 0;
    text-transform: uppercase;
}
.ramallo-archive-desc {
    color: var(--ri-muted);
    margin-top: 8px;
    font-size: 15px;
}
.ramallo-archive-grid {
    display: grid;
    gap: 20px;
}
.ramallo-archive-card {
    display: grid;
    grid-template-columns: 180px 1fr;
    gap: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--ri-line);
    align-items: start;
}
@media (max-width: 600px) {
    .ramallo-archive-card {
        grid-template-columns: 1fr;
    }
}
.ramallo-archive-card-img img {
    width: 100%;
    height: auto;
    border-radius: 4px;
    display: block;
}
.ramallo-archive-card-cat {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--ri-muted);
    margin-bottom: 4px;
}
.ramallo-archive-card-title {
    margin: 0 0 6px;
    font-family: var(--ri-font-news);
    font-size: 22px;
    font-weight: 900;
    line-height: 1.12;
}
.ramallo-archive-card-title a {
    color: var(--ri-black);
    text-decoration: none;
}
.ramallo-archive-card-title a:hover {
    color: var(--ri-red);
}
.ramallo-archive-card-date {
    font-size: 12px;
    color: var(--ri-muted);
}
.ramallo-archive-card-excerpt {
    margin: 6px 0 0;
    font-size: 14px;
    color: var(--ri-ink);
    line-height: 1.5;
}
.ramallo-archive-empty {
    text-align: center;
    color: var(--ri-muted);
    padding: 40px 0;
    font-size: 16px;
}
.ramallo-archive-pagination {
    margin-top: 24px;
    text-align: center;
}
.ramallo-archive-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    min-height: 36px;
    padding: 0 8px;
    border: 1px solid var(--ri-line);
    border-radius: 4px;
    color: var(--ri-black);
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    margin: 0 3px;
}
.ramallo-archive-pagination .page-numbers.current {
    background: var(--ri-black);
    color: #fff;
    border-color: var(--ri-black);
}
/* EOF TAREA7 */

/* TAREA8: Imagenes faltantes - ocultar espacios vacios */
.ramallo-post-item:not(.has-post-thumbnail) .ramallo-card-media,
article:not(.has-post-thumbnail) .ramallo-card-media {
    display: none !important;
}
.ramallo-archive-card:not(.has-post-thumbnail) .ramallo-archive-card-img {
    display: none;
}
body.single-post .ramallo-single-featured:empty {
    display: none;
}
.ramallo-single-featured:empty,
.ramallo-card-media:empty {
    display: none !important;
}
/* TAREA9: Sidebar y clima */
.ramallo-single-sidebar .widget:empty {
    display: none;
}
.ramallo-single-sidebar .textwidget {
    overflow: hidden;
}
.ramallo-single-sidebar .widget_adrotate_widgets {
    text-align: center;
}
.ramallo-single-sidebar {
    overflow-wrap: break-word;
}
/* EOF TAREA8-9 */

/* TAREA HEADER 2026-07-28 */
.ramallo-modern-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(255, 255, 255, 0.98);
    border-bottom: 1px solid var(--ri-line);
}

.ramallo-modern-header-inner {
    width: 100%;
    max-width: var(--ri-max);
    margin: 0 auto;
    padding: 8px 14px;
    display: grid;
    grid-template-columns: minmax(280px, auto) minmax(0, 1fr);
    align-items: center;
    gap: 20px;
}

.ramallo-modern-brand-block {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 14px;
}

.ramallo-modern-logo {
    flex: 0 0 auto;
}

.ramallo-modern-logo img {
    width: auto;
    max-width: 150px;
    max-height: 44px;
    height: auto;
}

.ramallo-modern-meta-v50 {
    min-width: 0;
    color: #334155;
    font-family: Inter, Arial, sans-serif;
    font-size: 11px;
    line-height: 1.25;
    white-space: nowrap;
}

.ramallo-meta-top-row,
.ramallo-meta-weather-row {
    display: flex;
    align-items: center;
    gap: 6px;
}

.ramallo-meta-location,
.ramallo-weather-temp {
    font-weight: 800;
}

.ramallo-modern-menu {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: nowrap;
    gap: 10px;
    overflow: visible;
}

.ramallo-modern-menu a {
    flex: 0 0 auto;
    font-size: 11px;
    line-height: 1.2;
    white-space: nowrap;
}

.ramallo-modern-nav-row,
.ramallo-modern-menu-mobile {
    display: none;
}

.ri-v56-top-ad-zone {
    width: 100%;
    max-width: var(--ri-max);
    margin: 0 auto;
    padding: 12px 14px;
    display: flex;
    justify-content: center;
    background: #fff;
    overflow: hidden;
}

.ri-v56-top-ad-zone a {
    display: block;
    width: min(300px, 100%);
}

.ri-v56-top-ad-zone img {
    display: block;
    width: 100%;
    max-width: 300px;
    height: auto;
}

@media (max-width: 767px) {
    .ramallo-modern-header-inner {
        padding: 6px 10px;
        grid-template-columns: 118px minmax(0, 1fr);
        gap: 10px;
    }

    .ramallo-modern-brand-block {
        display: contents;
    }

    .ramallo-modern-logo img {
        max-width: 118px;
        max-height: 38px;
    }

    .ramallo-modern-meta-v50 {
        justify-self: end;
        font-size: 10px;
        text-align: right;
    }

    .ramallo-meta-top-row,
    .ramallo-meta-weather-row {
        justify-content: flex-end;
    }

    .ramallo-weather-forecast {
        display: none;
    }

    .ramallo-modern-menu {
        display: none;
    }

    .ramallo-modern-nav-row {
        display: flex;
        min-height: 34px;
        align-items: center;
        justify-content: center;
        border-top: 1px solid var(--ri-line);
    }

    .ramallo-modern-menu-mobile {
        display: block;
    }

    .ramallo-modern-menu-mobile summary {
        padding: 6px 12px;
    }

    .ri-hamburger-label {
        display: inline;
    }

    .ri-v56-top-ad-zone {
        padding: 10px 14px;
    }
}
/* EOF TAREA HEADER 2026-07-28 */
/* CICLO 1 INTEGRADO 2026-07-28 */
html, body { max-width: 100%; overflow-x: clip; }
body, button, input, select, textarea, .ramallo-modern-menu, .ramallo-modern-menu-mobile { font-family: Inter, Arial, sans-serif; }
.ramallo-card-title, .ramallo-single-title, .ramallo-section-heading h1, .ramallo-section-heading h2, .ramallo-module-title, .ramallo-archive-card-title, .ramallo-text-teaser h2 { font-family: var(--ri-font-news); font-weight: 700; }
.ramallo-modern-logo img { max-width: 188px; max-height: 55px; }
.ramallo-modern-menu { gap: 12px; }
.ramallo-modern-menu a { font-family: Inter, Arial, sans-serif; font-size: 12px; font-weight: 600; }
.ramallo-card-hero .ramallo-card-title { font-size: 40px; line-height: 1.04; }
.ramallo-text-teaser { min-width: 0; padding: 0 0 14px; border-bottom: 1px solid var(--ri-line); }
.ramallo-text-teaser h2 { margin: 6px 0 0; font-size: 23px; line-height: 1.08; }
.ramallo-text-teaser h2 a { color: var(--ri-black); text-decoration: none; }
.ramallo-kicker, .ramallo-single-category, .cat > a.penci-cat-name, .penci-cat-name, .ramallo-archive-card-cat { display: inline-flex; align-items: center; min-height: 22px; padding: 3px 8px; border: 1px solid rgba(201,29,38,.45); border-radius: 3px; background: rgba(201,29,38,.035); color: #991822; font-family: var(--ri-font-news); font-size: 11px; font-weight: 600; line-height: 1; text-transform: uppercase; text-decoration: none; }
.ramallo-card-placeholder, .ramallo-archive-card-placeholder a { display: flex !important; align-items: center; justify-content: center; min-width: 0; background: linear-gradient(145deg,#f7f7f7,#eceff2); color: #7b8189; text-decoration: none; }
.ramallo-card-placeholder span, .ramallo-archive-card-placeholder span { font-family: var(--ri-font-news); font-size: 15px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.ramallo-card-no-media .ramallo-card-media { display: flex; }
.ramallo-archive-card.no-post-thumbnail .ramallo-archive-card-img { display: block; }
.ramallo-archive-card-placeholder { aspect-ratio: 16 / 10; }
.ramallo-archive-card-placeholder a { width: 100%; height: 100%; }
.ramallo-sidebar-v4 .ramallo-module { border: 0; border-top: 1px solid var(--ri-line); border-radius: 0; box-shadow: none; padding-top: 14px; }
.ramallo-sidebar-v4 .ramallo-module-title { border: 0; background: transparent; padding: 0; }
.ramallo-inline-ad:empty, .ramallo-module-ad:empty, .ramallo-ad-slot:empty, .ramallo-ad-slot-grid:empty { display: none !important; margin: 0 !important; min-height: 0 !important; }
.ramallo-inline-ad, .ramallo-ad-slot, .ramallo-ad-slot-grid, .ramallo-ad-card, .ramallo-ad-card img { max-width: 100%; min-width: 0; }
@media (max-width: 767px) {
  .ramallo-modern-logo img { max-width: 118px; max-height: 38px; }
  .ramallo-home-grid, .ramallo-hero-grid, .ramallo-secondary-grid, .ramallo-category-list, .ramallo-single-layout { grid-template-columns: minmax(0,1fr); width: 100%; min-width: 0; }
  .ramallo-modern-home, .ramallo-modern-wrap, .ramallo-main-news, .ramallo-sidebar, .ramallo-card, .ramallo-card-body, .ramallo-inline-ad, .ramallo-ad-slot, .ramallo-ad-slot-grid, .ramallo-ad-card { width: 100%; max-width: 100%; min-width: 0; }
  .ramallo-card-media, .ramallo-card-media img, .ramallo-inline-ad img, .ramallo-ad-card img { max-width: 100%; }
  .ramallo-card-title, .ramallo-text-teaser h2, .ramallo-archive-card-title { overflow-wrap: normal; word-break: normal; hyphens: none; }
  .ramallo-card-hero .ramallo-card-title { font-size: 32px; }
  .ramallo-text-teaser h2 { font-size: 20px; }
  .ramallo-sidebar-v4 { margin-top: 20px; }
}
/* EOF CICLO 1 INTEGRADO 2026-07-28 */
/* =============================================================
   SIDEBAR NOTAS + AJUSTES PENDIENTES 2026-07-29
   ============================================================= */
@media (min-width: 768px) {
    .ramallo-modern-header .custom-logo {
        width: 244px;
        max-width: 244px;
        height: auto;
        max-height: 72px;
    }
}

@media (max-width: 767px) {
    .ramallo-modern-header .custom-logo {
        width: 195px;
        max-width: 195px;
        height: 57px;
        max-height: 57px;
        object-fit: contain;
    }
}

.ramallo-single-sidebar {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.ramallo-single-sidebar > * {
    min-width: 0;
    margin: 0;
}

.ramallo-single-sidebar-module {
    overflow: hidden;
    border: 1px solid rgba(185, 28, 28, 0.2);
    border-radius: 4px;
    background: rgba(185, 28, 28, 0.025);
}

.ramallo-single-sidebar-heading {
    margin: 0;
    padding: 12px 14px 9px;
    border-bottom: 1px solid rgba(185, 28, 28, 0.16);
    color: var(--ri-black);
    font-family: var(--ri-font-news);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.03em;
    line-height: 1.15;
    text-transform: uppercase;
}

.ramallo-single-sidebar-weather {
    padding-bottom: 12px;
}

.ramallo-single-sidebar-weather-current {
    display: grid;
    grid-template-columns: auto auto 1fr;
    align-items: center;
    gap: 9px;
    padding: 14px 14px 6px;
}

.ramallo-single-sidebar-weather-icon {
    font-size: 25px;
}

.ramallo-single-sidebar-weather-current strong {
    font-family: var(--ri-font-news);
    font-size: 27px;
    line-height: 1;
}

.ramallo-single-sidebar-weather-current span:last-child,
.ramallo-single-sidebar-weather p {
    color: var(--ri-muted);
    font-size: 13px;
}

.ramallo-single-sidebar-weather p {
    margin: 4px 14px 0;
}

.ramallo-single-sidebar-story-media {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #f2f2f2;
}

.ramallo-single-sidebar-story-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ramallo-single-sidebar-story-media.is-placeholder {
    display: grid;
    place-items: center;
    color: rgba(185, 28, 28, 0.55);
    font-family: var(--ri-font-news);
    font-size: 30px;
    font-weight: 700;
}

.ramallo-single-sidebar-story-body {
    padding: 12px 14px 14px;
}

.ramallo-single-sidebar-label {
    display: inline-flex;
    margin-bottom: 7px;
    padding: 2px 7px;
    border: 1px solid rgba(185, 28, 28, 0.5);
    border-radius: 3px;
    background: rgba(185, 28, 28, 0.035);
    color: var(--ri-red);
    font-family: var(--ri-font-news);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.25;
    text-decoration: none;
    text-transform: uppercase;
}

.ramallo-single-sidebar-story h2 {
    margin: 0;
    font-family: var(--ri-font-news);
    font-size: 21px;
    font-weight: 700;
    line-height: 1.12;
}

.ramallo-single-sidebar-story h2 a {
    color: var(--ri-black);
    text-decoration: none;
}

.ramallo-single-sidebar-ad {
    overflow: hidden;
}

.ramallo-single-sidebar-ad:empty {
    display: none;
}

.ramallo-single-sidebar-ad img,
.ramallo-single-sidebar-ad iframe {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

.ramallo-single-sidebar-ad p {
    margin: 0;
}

@media (max-width: 767px) {
    .ramallo-single-sidebar {
        width: 100%;
        gap: 20px;
    }
}
/* =============================================================
   LAYOUT INTEGRADO 2026-07-29
   ============================================================= */
.ramallo-ad-pair {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    width: 100%;
    min-width: 0;
    margin: 22px 0;
}
.ramallo-ad-pair > .ramallo-direct-ad:only-child {
    grid-column: 1 / -1;
    width: min(360px, 100%);
    justify-self: center;
}
.ramallo-direct-ad {
    min-width: 0;
    overflow: hidden;
}
.ramallo-direct-ad p { margin: 0; }
.ramallo-direct-ad img,
.ramallo-direct-ad iframe {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}
.ramallo-secondary-grid > .ramallo-ad-pair {
    grid-column: 1 / -1;
}
.ramallo-ad-pair-inarticle {
    margin: 24px 0;
    padding: 14px 0;
    border-top: 1px solid var(--ri-line);
    border-bottom: 1px solid var(--ri-line);
}
.ramallo-sidebar-v4 {
    display: flex;
    flex-direction: column;
    gap: 22px;
    min-width: 0;
}
.ramallo-sidebar-v4 > * { margin: 0; }
.ramallo-sidebar-v4 .ramallo-ad-pair {
    gap: 10px;
}
.ramallo-rss-placeholder {
    padding: 16px;
    border: 1px solid rgba(185, 28, 28, .2);
    border-radius: 4px;
    background: rgba(185, 28, 28, .025);
}
.ramallo-rss-placeholder span {
    display: inline-flex;
    margin-bottom: 8px;
    padding: 2px 7px;
    border: 1px solid rgba(185, 28, 28, .45);
    border-radius: 3px;
    color: var(--ri-red);
    font-family: var(--ri-font-news);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}
.ramallo-rss-placeholder h2 {
    margin: 0 0 6px;
    font-family: var(--ri-font-news);
    font-size: 21px;
    line-height: 1.08;
}
.ramallo-rss-placeholder p {
    margin: 0;
    color: var(--ri-muted);
    font-size: 13px;
    line-height: 1.35;
}
.ramallo-single-tags a {
    min-height: 22px;
    padding: 3px 8px;
    border: 1px solid rgba(201, 29, 38, .45);
    border-radius: 3px;
    background: rgba(201, 29, 38, .035);
    color: #991822;
    font-family: var(--ri-font-news);
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
}
.ramallo-single-related { display: none !important; }
.ramallo-card-excerpt,
.ramallo-card-content,
.ramallo-text-teaser p,
.ramallo-archive-card-excerpt {
    line-height: 1.35;
}
@media (min-width: 768px) {
    .ramallo-card-standard .ramallo-card-title { font-size: 24px; line-height: 1.06; }
    .ramallo-card-compact .ramallo-card-title,
    .ramallo-card-no-media .ramallo-card-title { font-size: 20.4px; line-height: 1.07; }
    .ramallo-text-teaser h2 { font-size: 27.6px; line-height: 1.04; }
}
@media (max-width: 767px) {
    .ramallo-modern-header-inner {
        grid-template-columns: 195px minmax(0, 1fr);
        gap: 8px;
    }
    .ramallo-modern-meta-v50 {
        justify-self: stretch;
        min-width: 0;
        text-align: left;
        white-space: normal;
    }
    .ramallo-meta-top-row,
    .ramallo-meta-weather-row { justify-content: flex-start; }
    .ri-v56-top-ad-zone { display: none !important; }
    .ramallo-card-hero .ramallo-card-title { font-size: 42px; line-height: 1.02; }
    .ramallo-text-teaser h2 { font-size: 26px; line-height: 1.04; }
    .ramallo-card-standard .ramallo-card-title { font-size: 27px; line-height: 1.04; }
    .ramallo-card-compact .ramallo-card-title,
    .ramallo-card-no-media .ramallo-card-title { font-size: 22px; line-height: 1.05; }
    .ramallo-single-title { font-size: 42px; line-height: 1.02; }
    .ramallo-archive-card-title { font-size: 26px; line-height: 1.04; }
    .ramallo-single-sidebar-story h2 { font-size: 27px; line-height: 1.04; }
    .ramallo-rss-placeholder h2 { font-size: 26px; }
    .ramallo-ad-pair { gap: 8px; }
    .ramallo-ad-pair-inarticle { padding: 10px 0; }
}
/* =============================================================
   RESPONSIVE ADS + META 2026-07-29
   ============================================================= */
.ramallo-ad-pair > .ramallo-direct-ad {
    display: grid;
    place-items: center;
    aspect-ratio: 1 / 1;
    position: relative;
    background: #f5f5f3;
}
.ramallo-direct-ad > *,
.ramallo-direct-ad .g,
.ramallo-direct-ad .a-single,
.ramallo-direct-ad p,
.ramallo-direct-ad a {
    max-width: 100%;
    max-height: 100%;
}
.ramallo-direct-ad .a-single {
    position: absolute;
    inset: 0;
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.ramallo-direct-ad p,
.ramallo-direct-ad a {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    align-items: center;
    justify-content: center;
}
.ramallo-direct-ad img,
.ramallo-direct-ad iframe {
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
}
.ramallo-sidebar-v4 .ramallo-ad-pair {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    margin: 0;
}
.ramallo-sidebar-v4 .ramallo-ad-pair > .ramallo-direct-ad {
    width: min(100%, 320px);
    justify-self: center;
}
.ramallo-single-sidebar-ad {
    display: grid;
    place-items: center;
}
.ramallo-single-sidebar-ad .ramallo-direct-ad {
    display: grid;
    width: min(100%, 320px);
    aspect-ratio: 1 / 1;
    place-items: center;
    overflow: hidden;
    position: relative;
    background: #f5f5f3;
}
.ramallo-single-sidebar-weather {
    border-color: #d8d8d4;
    background: #fff;
    color: #111;
}
.ramallo-single-sidebar-weather .ramallo-single-sidebar-heading {
    border-bottom-color: #222;
    color: #111;
}
.ramallo-single-sidebar-weather-current {
    grid-template-columns: auto auto minmax(0, 1fr);
}
.ramallo-single-sidebar-weather-current span:last-child,
.ramallo-single-sidebar-weather p {
    color: #444;
}
.ramallo-single-meta-line {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    margin: 0 0 8px;
    color: var(--ri-muted);
    font-size: 12px;
    line-height: 1.2;
    white-space: nowrap;
}
.ramallo-single-meta-line > * + *::before,
.ramallo-single-meta .ramallo-card-date::before {
    content: '·';
    margin-right: 8px;
    color: #aaa;
}
.ramallo-single-meta {
    display: flex;
    align-items: center;
    min-width: 0;
    margin: 0;
}
.ramallo-single-categories {
    display: flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
    overflow: hidden;
}
.ramallo-single-categories .ramallo-kicker {
    flex: 0 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ramallo-single-meta .ramallo-card-date,
.ramallo-single-author,
.ramallo-single-share {
    flex: 0 0 auto;
}
.ramallo-single-share a {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #a51c25;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
}
.ramallo-single-share-icon {
    display: inline-grid;
    width: 22px;
    height: 22px;
    place-items: center;
    border-radius: 50%;
    background: #a51c25;
    color: #fff;
    font-size: 15px;
    line-height: 1;
}
@media (max-width: 767px) {
    .ramallo-ad-pair {
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
    }
    .ramallo-ad-pair > .ramallo-direct-ad,
    .ramallo-single-sidebar-ad .ramallo-direct-ad {
        grid-column: 1;
        width: min(100%, 390px);
        aspect-ratio: 1 / 1;
        justify-self: center;
    }
    .ramallo-direct-ad img,
    .ramallo-direct-ad iframe,
    .ramallo-single-sidebar-ad img,
    .ramallo-single-sidebar-ad iframe {
        width: auto !important;
        height: auto !important;
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain !important;
    }
    .ramallo-single-sidebar {
        display: flex;
        grid-template-columns: none;
    }
    .ramallo-single-meta-line {
        flex-wrap: wrap;
        gap: 6px 8px;
        white-space: normal;
    }
    .ramallo-single-meta {
        flex: 1 1 100%;
        max-width: 100%;
    }
    .ramallo-single-categories {
        flex-wrap: wrap;
        overflow: visible;
    }
}
/* Historical WeatherWidget.io presentation — 2026-07-30 */
.ramallo-single-sidebar-weather { overflow: visible; padding: 8px; border: 1px solid #777; border-radius: 0; background: #fff; }
.ramallo-single-sidebar-weather .ramallo-single-sidebar-heading { position: relative; margin: 0 0 18px; padding: 11px 18px 9px; border: 1px solid #333; background: #fff; color: #111; font-family: var(--ri-font-news); font-size: 17px; font-weight: 700; letter-spacing: .045em; line-height: 1.15; text-transform: uppercase; }
.ramallo-single-sidebar-weather .ramallo-single-sidebar-heading::after { position: absolute; top: 100%; left: 50%; width: 0; height: 0; border: 8px solid transparent; border-top-color: #333; content: ""; transform: translateX(-50%); }
.ramallo-single-sidebar-weather .weatherwidget-io { display: block; width: 100%; min-width: 0; min-height: 220px; overflow: hidden; color: #111; text-decoration: none; }
.ramallo-weather-fallback { display: grid; min-height: 220px; align-content: center; justify-items: center; gap: 9px; padding: 18px 12px; background: #fff; color: #111; font-family: var(--ri-font-body); text-align: center; }
.ramallo-weather-fallback-place { font-family: var(--ri-font-news); font-size: 18px; font-weight: 700; text-transform: uppercase; }
.ramallo-weather-fallback-current { display: flex; align-items: center; justify-content: center; gap: 9px; font-size: 14px; }
.ramallo-weather-fallback-current > span:first-child, .ramallo-weather-fallback-current strong { font-size: 28px; line-height: 1; }
.ramallo-weather-fallback-forecast { color: #444; font-size: 13px; }
.ramallo-weather-fallback-attribution { color: #666; font-size: 10px; }
.ramallo-single-sidebar-weather iframe { display: block; width: 100% !important; max-width: 100%; min-width: 0; border: 0; }
/* Ciclo visual acotado — 2026-07-30 */
.ramallo-section-heading, .ramallo-module { border-top-color: var(--ri-red); }
.ramallo-sidebar-heading, .ramallo-archive-header { border-bottom-color: var(--ri-red); }
.ramallo-single-sidebar-weather { padding: 0; border: 0; background: #fff; }
.ramallo-single-sidebar-weather .ramallo-single-sidebar-heading { margin-bottom: 12px; padding: 8px 0 10px; border: 0; border-bottom: 2px solid var(--ri-red); font-size: 16px; }
.ramallo-single-sidebar-weather .ramallo-single-sidebar-heading::after { display: none; }
.ramallo-modern-more { position: relative; flex: 0 0 auto; }
.ramallo-modern-more summary { cursor: pointer; list-style: none; color: var(--ri-black); font-family: Inter, Arial, sans-serif; font-size: 12px; font-weight: 600; line-height: 1.2; text-transform: uppercase; }
.ramallo-modern-more summary::-webkit-details-marker { display: none; }
.ramallo-modern-more summary::after { margin-left: 4px; color: var(--ri-red); content: "▾"; }
.ramallo-modern-more > nav { position: absolute; top: calc(100% + 10px); right: 0; z-index: 120; display: none; grid-template-columns: repeat(2, minmax(150px, 1fr)); width: 360px; padding: 10px; border: 1px solid var(--ri-line); border-top: 3px solid var(--ri-red); background: #fff; box-shadow: 0 10px 24px rgba(0,0,0,.12); }
.ramallo-modern-more[open] > nav, .ramallo-modern-more:hover > nav, .ramallo-modern-more:focus-within > nav { display: grid; }
.ramallo-modern-more > nav a { padding: 8px 10px; font-size: 12px; white-space: normal; }
.ramallo-ad-pair, .ramallo-single-sidebar-ad { position: relative; padding: 28px 14px 16px; border-top: 1px solid #d5d5d2; border-bottom: 1px solid #d5d5d2; background: #f1f1ef; }
.ramallo-ad-pair::before, .ramallo-single-sidebar-ad::before { position: absolute; top: 8px; left: 14px; color: #777; content: "PUBLICIDAD"; font-family: Inter, Arial, sans-serif; font-size: 9px; font-weight: 600; letter-spacing: .12em; }
.ramallo-key-list { align-content: stretch; grid-template-rows: repeat(4, minmax(0,1fr)); }
.ramallo-key-list .ramallo-text-teaser { display: grid; align-content: center; }
@media (min-width: 768px) { .ramallo-category-list { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; } }
@media (max-width: 767px) {
  .ramallo-category-list { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
  .ramallo-category-list .ramallo-card-title { font-size: 19px; line-height: 1.06; }
  .ramallo-category-list .ramallo-card-date { font-size: 11px; }
  .ramallo-category-list .ramallo-kicker { font-size: 10px; }
  .ramallo-ad-pair, .ramallo-single-sidebar-ad { padding-right: 10px; padding-left: 10px; }
}