/* ════════════════════════════════════════════════════════════════════
   PC V2 — Hero 3 columnas estilo ABC/El Mundo
   Fuente: Manrope. Color secundario: var(--et-brand, #114F6E).
   ════════════════════════════════════════════════════════════════════ */

:root {
    --pcv2-max: 1280px;
    --pcv2-gut: 28px;
    --pcv2-ink: #0A0A0A;
    --pcv2-ink2: #2A2A2A;
    --pcv2-ink3: #4A4A4A;
    --pcv2-ink4: #6E6E6E;
    --pcv2-ink5: #9D9D9D;
    --pcv2-line: var(--et-rule, #E5E3DD);
    --pcv2-line-soft: var(--et-rule, #EFEDE7);
    --pcv2-blue: var(--et-brand, #114F6E);
    --pcv2-red: #C8102E;
}

/* ─── Base ─── */
.et-pcv2-page,
.et-pcv2-page * {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    box-sizing: border-box;
}

.et-pcv2-page {
    background: var(--et-paper, #fff);
    color: var(--pcv2-ink);
}

.et-pcv2-page__inner {
    max-width: var(--pcv2-max);
    margin: 0 auto;
    padding: 32px var(--pcv2-gut) 64px;
}

.et-pcv2-page a {
    color: inherit;
    text-decoration: none;
    transition: color 0.15s;
}

.et-pcv2-page img { max-width: 100%; height: auto; display: block; }

/* ════════════════════════════════════════════════════════════════════
   HERO grid 3 columnas
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-hero__grid {
    display: grid;
    grid-template-columns: 1fr 1.5fr 1fr;
    gap: 36px;
    align-items: start;
    padding-bottom: 36px;
    border-bottom: 1px solid var(--pcv2-line);
}

@media (max-width: 1023px) {
    .et-pcv2-hero__grid { grid-template-columns: 1fr; gap: 28px; }
}

.et-pcv2-hero__col { min-width: 0; }

/* Alineación por data-align en CADA artículo individual */
.et-pcv2-hero [data-align="left"]   { text-align: left; }
.et-pcv2-hero [data-align="center"] { text-align: center; }
.et-pcv2-hero [data-align="right"]  { text-align: right; }
.et-pcv2-hero__col--center { text-align: center; }
.et-pcv2-hero__col--center[data-align="left"]  { text-align: left; }
.et-pcv2-hero__col--center[data-align="right"] { text-align: right; }
.et-pcv2-hero__col--right > * { text-align: left; }

/* ════════════════════════════════════════════════════════════════════
   KICKER inline (categoría azul al inicio del titular, acabado en punto)
   "Canarias. Las siete islas registran..."
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-hero__kicker {
    color: var(--pcv2-blue);
    font-weight: inherit;
    font-size: inherit;
    font-family: inherit;
    letter-spacing: inherit;
}
/* Mantener azul incluso dentro de <a> hovered */
.et-pcv2-hero a:hover .et-pcv2-hero__kicker { color: var(--pcv2-blue); }

/* ════════════════════════════════════════════════════════════════════
   COLUMNA A — A1
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-hero__lead-left {
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--pcv2-line);
}

.et-pcv2-hero__lead-left-title {
    margin: 0 0 14px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 800;
    font-size: 30px;
    line-height: 1.05;
    letter-spacing: -1px;
    color: var(--pcv2-ink);
}
.et-pcv2-hero__lead-left-title a:hover { color: var(--pcv2-blue); }

.et-pcv2-hero__lead-left-dek {
    margin: 0 0 14px;
    font-size: 14.5px;
    line-height: 1.5;
    color: var(--pcv2-ink3);
    font-weight: 400;
}

/* Bullets — sin punto, kicker arriba + título debajo */
.et-pcv2-hero__bullets {
    list-style: none;
    margin: 0 0 24px;
    padding: 0 0 20px;
    border-bottom: 1px solid var(--pcv2-line);
}
.et-pcv2-hero__bullets:last-child { border-bottom: 0; padding-bottom: 0; }

.et-pcv2-hero__bullets li {
    padding: 14px 0;
    border-bottom: 1px solid var(--pcv2-line-soft);
}
.et-pcv2-hero__bullets li:first-child { padding-top: 0; }
.et-pcv2-hero__bullets li:last-child { border-bottom: 0; padding-bottom: 0; }

.et-pcv2-hero__bullet-link { display: block; }

.et-pcv2-hero__bullet-title {
    display: block;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.3;
    color: var(--pcv2-ink);
    letter-spacing: -0.3px;
}
.et-pcv2-hero__bullets a:hover .et-pcv2-hero__bullet-title { color: var(--pcv2-blue); }
.et-pcv2-hero__bullets .et-pcv2-hero__byline { margin-top: 6px; }

/* ════════════════════════════════════════════════════════════════════
   COLUMNA A — A2 (sub-bloque con título)
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-hero__a2 {
    margin-top: 0;
}

.et-pcv2-hero__a2-section-title {
    display: block;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: -0.2px;
    color: var(--pcv2-blue);
    margin: 0 0 12px;
    line-height: 1.3;
}

.et-pcv2-hero__a2-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.et-pcv2-hero__a2-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
}

.et-pcv2-hero__a2-body {
    display: flex;
    flex-direction: column;
}

.et-pcv2-hero__a2-title {
    margin: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 800;
    font-size: 19px;
    line-height: 1.2;
    letter-spacing: -0.5px;
    color: var(--pcv2-ink);
}
.et-pcv2-hero__a2-title a:hover { color: var(--pcv2-blue); }

/* ════════════════════════════════════════════════════════════════════
   COLUMNA B — central destacado
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-hero__center { display: flex; flex-direction: column; }

.et-pcv2-hero__center-photo {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
    margin-bottom: 20px;
    transition: filter 0.2s;
}
.et-pcv2-hero__center-photo:hover { filter: brightness(1.04); }

.et-pcv2-hero__center-body { padding: 0 4px; }

.et-pcv2-hero__center-title {
    margin: 0 0 14px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 800;
    font-size: 30px;
    line-height: 1.15;
    letter-spacing: -0.7px;
    color: var(--pcv2-ink);
}
.et-pcv2-hero__center-title a:hover { color: var(--pcv2-blue); }

.et-pcv2-hero__center-dek {
    margin: 0 0 14px;
    font-size: 15px;
    line-height: 1.5;
    color: var(--pcv2-ink3);
    font-weight: 400;
}

.et-pcv2-hero__center-extras {
    list-style: none;
    margin: 24px 0 0;
    padding: 16px 0 0;
    border-top: 1px solid var(--pcv2-line-soft);
}
.et-pcv2-hero__center-extras li {
    padding: 8px 0;
    border-bottom: 1px solid var(--pcv2-line-soft);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: var(--pcv2-ink);
    line-height: 1.3;
    letter-spacing: -0.2px;
}
.et-pcv2-hero__center-extras li:last-child { border-bottom: 0; }
.et-pcv2-hero__center-extras a:hover { color: var(--pcv2-blue); }

/* Anuncio */
.et-pcv2-hero__ad {
    margin-top: 24px;
    padding-top: 16px;
    border-top: 1px solid var(--pcv2-line-soft);
}
.et-pcv2-hero__ad-label {
    display: block;
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 1.6px;
    color: var(--pcv2-ink5);
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 8px;
}
.et-pcv2-hero__ad-slot { text-align: center; }
.et-pcv2-hero__ad-slot img { margin: 0 auto; max-width: 100%; height: auto; }

/* ════════════════════════════════════════════════════════════════════
   COLUMNA C — derecha (texto alineado a la izquierda)
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-hero__right-lead {
    margin-bottom: 22px;
    padding-bottom: 22px;
    border-bottom: 1px solid var(--pcv2-line);
}

.et-pcv2-hero__right-lead-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
    margin-bottom: 14px;
    transition: filter 0.2s;
}
.et-pcv2-hero__right-lead-photo:hover { filter: brightness(1.04); }

.et-pcv2-hero__right-lead-title {
    margin: 0 0 10px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 800;
    font-size: 22px;
    line-height: 1.18;
    letter-spacing: -0.5px;
    color: var(--pcv2-ink);
}
.et-pcv2-hero__right-lead-title a:hover { color: var(--pcv2-blue); }

.et-pcv2-hero__right-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.et-pcv2-hero__right-mini { display: flex; flex-direction: column; }

.et-pcv2-hero__right-mini-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
    margin-bottom: 10px;
}

.et-pcv2-hero__right-mini-title {
    margin: 0 0 6px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 800;
    font-size: 15px;
    line-height: 1.25;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink);
}
.et-pcv2-hero__right-mini-title a:hover { color: var(--pcv2-blue); }

/* ════════════════════════════════════════════════════════════════════
   BYLINE — separador gris fina horizontal entre piezas
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-hero__byline {
    margin: 6px 0 0;
    font-size: 12px;
    color: var(--pcv2-ink4);
    line-height: 1.4;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

/* Alineación de la byline cuando el container tiene data-align */
[data-align="center"] .et-pcv2-hero__byline,
.et-pcv2-hero__col--center .et-pcv2-hero__byline { justify-content: center; }
[data-align="right"] .et-pcv2-hero__byline { justify-content: flex-end; }

.et-pcv2-hero__byline-author {
    font-weight: 700;
    color: var(--pcv2-ink2);
    letter-spacing: -0.1px;
}

/* Separador: BARRA VERTICAL fina gris */
.et-pcv2-hero__byline-sep {
    display: inline-block;
    width: 1px;
    height: 12px;
    background: #BFBDB6;
    vertical-align: middle;
    flex-shrink: 0;
}

/* Pipe entre piezas distintas de meta (autor | fecha | custom) */
.et-pcv2-hero__byline-pipe {
    display: inline-block;
    width: 1px;
    height: 12px;
    background: #BFBDB6;
    vertical-align: middle;
    flex-shrink: 0;
    margin: 0 2px;
}

.et-pcv2-hero__byline-date,
.et-pcv2-hero__byline-custom {
    color: var(--pcv2-ink4);
    font-weight: 400;
}

.et-pcv2-hero__byline-role {
    color: var(--pcv2-ink4);
    font-weight: 400;
}

/* ════════════════════════════════════════════════════════════════════
   MÓDULO LIVE — 3 columnas (slider · titular+noticia · timeline)
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-live {
    margin-top: 36px;
    padding-top: 0;
}
.et-pcv2-live__grid {
    display: grid;
    grid-template-columns: 1.1fr 1.3fr 1fr;
    gap: 36px;
    align-items: start;
}
@media (max-width: 1023px) {
    .et-pcv2-live__grid { grid-template-columns: 1fr; }
}

/* ════════ BLOQUE A — SLIDER ════════ */
.et-pcv2-live__a {
    position: relative;
}
.et-pcv2-live__slider {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #000;
}
.et-pcv2-live__slide {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    opacity: 0;
    transition: opacity 0.5s ease;
    pointer-events: none;
}
.et-pcv2-live__slide.is-active {
    opacity: 1;
    pointer-events: auto;
}
.et-pcv2-live__slide-cap {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 60px 18px 14px;
    background: linear-gradient(to top, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0) 100%);
    color: #fff;
    font-size: 13px;
    line-height: 1.4;
    letter-spacing: -0.2px;
}
.et-pcv2-live__zoom {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(0,0,0,0.55);
    color: #fff;
    border: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(8px);
    transition: background 0.15s;
}
.et-pcv2-live__zoom:hover { background: rgba(0,0,0,0.85); }

.et-pcv2-live__nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 12px;
}
.et-pcv2-live__dots {
    display: flex;
    gap: 6px;
}
.et-pcv2-live__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 0;
    background: var(--pcv2-line);
    cursor: pointer;
    padding: 0;
    transition: all 0.2s;
}
.et-pcv2-live__dot.is-active {
    background: var(--pcv2-ink);
    transform: scale(1.2);
}
.et-pcv2-live__arrows {
    display: flex;
    gap: 6px;
}
.et-pcv2-live__arrow {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid var(--pcv2-line);
    background: var(--et-paper, #fff);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--pcv2-ink2);
    transition: all 0.15s;
}
.et-pcv2-live__arrow:hover {
    border-color: var(--pcv2-ink);
    background: var(--pcv2-ink);
    color: #fff;
}

/* ════════ BLOQUE B — TITULAR + NOTICIA ════════ */
.et-pcv2-live__b {
    display: flex;
    flex-direction: column;
}
.et-pcv2-live__badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    align-self: flex-start;
    background: #FBC02D;
    color: var(--pcv2-ink);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.5px;
    padding: 5px 11px;
    border-radius: 3px;
    margin-bottom: 14px;
    text-transform: none;
}
.et-pcv2-live__badge:hover {
    background: #F9A825;
    color: var(--pcv2-ink);
}
.et-pcv2-live__pulse {
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--pcv2-ink);
    animation: et-pcv2-pulse 1.5s infinite;
}
@keyframes et-pcv2-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%      { opacity: 0.5; transform: scale(1.3); }
}
.et-pcv2-live__title {
    margin: 0 0 10px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 800;
    font-size: 26px;
    line-height: 1.15;
    letter-spacing: -0.7px;
    color: var(--pcv2-ink);
}
.et-pcv2-live__title a:hover { color: var(--pcv2-blue); }

.et-pcv2-live__sub {
    margin: 0 0 12px;
    font-size: 14.5px;
    line-height: 1.5;
    color: var(--pcv2-ink3);
    font-weight: 400;
}

.et-pcv2-live__meta {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--pcv2-line);
    font-size: 12.5px;
    color: var(--pcv2-ink4);
}
.et-pcv2-live__meta-cam {
    display: inline-flex;
    color: var(--pcv2-ink5);
}

/* Noticia debajo */
.et-pcv2-live__news { }
.et-pcv2-live__news-title {
    margin: 0 0 8px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 800;
    font-size: 17px;
    line-height: 1.25;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink);
}
.et-pcv2-live__news-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-live__news-label {
    color: var(--pcv2-blue);
    font-weight: inherit;
    font-style: normal;
}
.et-pcv2-live__news-sep {
    color: #BFBDB6;
    font-weight: 300;
    margin: 0 4px;
}
.et-pcv2-live__news-meta {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12.5px;
    color: var(--pcv2-ink4);
}
.et-pcv2-live__news-cam {
    display: inline-flex;
    color: var(--pcv2-ink5);
}

/* ════════ BLOQUE C — TIMELINE ════════ */
.et-pcv2-live__c {
    position: relative;
}
.et-pcv2-live__feed {
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
}
/* Rail vertical conector */
.et-pcv2-live__feed::before {
    content: '';
    position: absolute;
    top: 12px;
    bottom: 12px;
    left: 7px;
    width: 1px;
    background: var(--pcv2-line);
}
.et-pcv2-live__entry {
    position: relative;
    display: grid;
    grid-template-columns: 22px 1fr;
    gap: 12px;
    padding: 10px 0;
    align-items: flex-start;
}
.et-pcv2-live__entry-dot {
    position: relative;
    z-index: 1;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #FBC02D;
    border: 2px solid #fff;
    margin-top: 4px;
}
.et-pcv2-live__entry.is-latest .et-pcv2-live__entry-dot {
    background: #FBC02D;
    box-shadow: 0 0 0 4px rgba(251,192,45,0.25);
}
.et-pcv2-live__entry-body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.et-pcv2-live__entry-time {
    font-size: 11.5px;
    font-weight: 600;
    color: var(--pcv2-ink4);
    line-height: 1.3;
}
.et-pcv2-live__entry-title {
    display: block;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14px;
    font-weight: 800;
    color: var(--pcv2-blue);
    line-height: 1.3;
    letter-spacing: -0.2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.et-pcv2-live__entry-title:hover { color: var(--pcv2-ink); }

/* ════════ LIGHTBOX ════════ */
.et-pcv2-lightbox {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.92);
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
}
.et-pcv2-lightbox.is-open { display: flex; }
.et-pcv2-lightbox__inner {
    margin: 0;
    max-width: 1200px;
    max-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
}
.et-pcv2-lightbox__img {
    max-width: 100%;
    max-height: calc(100vh - 120px);
    object-fit: contain;
    display: block;
}
.et-pcv2-lightbox__cap {
    color: #fff;
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
    max-width: 800px;
    opacity: 0.85;
}
.et-pcv2-lightbox__close {
    position: absolute;
    top: 18px;
    right: 18px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(255,255,255,0.12);
    color: #fff;
    border: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s;
}
.et-pcv2-lightbox__close:hover { background: rgba(255,255,255,0.25); }
.et-pcv2-lightbox__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: rgba(255,255,255,0.10);
    color: #fff;
    border: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s;
}
.et-pcv2-lightbox__arrow:hover { background: rgba(255,255,255,0.22); }
.et-pcv2-lightbox__arrow--prev { left: 28px; }
.et-pcv2-lightbox__arrow--next { right: 28px; }

/* ════════════════════════════════════════════════════════════════════
   MÓDULO 03 — TIEMPO + SISMOS + OPINIÓN
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-wqo {
    margin-top: 40px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
}
.et-pcv2-wqo__grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr 1fr;
    gap: 36px;
    align-items: start;
}
@media (max-width: 1023px) {
    .et-pcv2-wqo__grid { grid-template-columns: 1fr; }
}

/* Noticia destacada de cada bloque */
.et-pcv2-wqo__news { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid var(--pcv2-line); }
.et-pcv2-wqo__news-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16/9;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
    margin-bottom: 14px;
}
.et-pcv2-wqo__news-title {
    margin: 0 0 10px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 800;
    font-size: 30px;
    line-height: 1.05;
    letter-spacing: -1px;
    color: var(--pcv2-ink);
}
.et-pcv2-wqo__news-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-wqo__news-dek {
    margin: 0 0 8px;
    font-size: 14px;
    line-height: 1.5;
    color: var(--pcv2-ink3);
}
.et-pcv2-wqo__news-mini {
    padding: 12px 0;
    border-bottom: 1px solid var(--pcv2-line-soft);
}
.et-pcv2-wqo__news-mini:last-of-type { border-bottom: 1px solid var(--pcv2-line); padding-bottom: 18px; margin-bottom: 18px; }
.et-pcv2-wqo__news-mini-title {
    margin: 0 0 4px;
    font-family: 'Inter', -apple-system, sans-serif;
    font-weight: 800;
    font-size: 15px;
    line-height: 1.3;
    letter-spacing: -0.2px;
    color: var(--pcv2-ink);
}
.et-pcv2-wqo__news-mini-title a:hover { color: var(--pcv2-blue); }

/* ════════ WIDGET TIEMPO (integrado, sin caja) ════════ */
.et-pcv2-weather {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
    margin-top: 4px;
}
.et-pcv2-weather__head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 14px;
    flex-wrap: wrap;
    gap: 10px;
}
.et-pcv2-weather__title {
    margin: 0;
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink);
}
.et-pcv2-weather__title-sub {
    font-weight: 400;
    font-size: 12.5px;
    color: var(--pcv2-ink4);
    letter-spacing: 0;
}

/* Selector islas: chips minimalistas sin fondo */
.et-pcv2-weather__isle-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--pcv2-line-soft);
}
.et-pcv2-weather__isle-tab {
    background: transparent;
    border: 0;
    padding: 2px 0;
    font-size: 12px;
    font-weight: 600;
    color: var(--pcv2-ink4);
    cursor: pointer;
    transition: color 0.15s;
    position: relative;
}
.et-pcv2-weather__isle-tab:hover { color: var(--pcv2-ink); }
.et-pcv2-weather__isle-tab.is-active {
    color: var(--pcv2-blue);
    font-weight: 700;
}
.et-pcv2-weather__isle-tab.is-active::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -11px;
    height: 2px;
    background: var(--pcv2-blue);
}

/* Tira 7 días */
.et-pcv2-weather__strip {
    display: none;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
    padding: 4px 0 0;
}
.et-pcv2-weather__strip.is-active { display: grid; }
.et-pcv2-weather__day {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 8px 2px;
}
.et-pcv2-weather__day-label {
    font-size: 10.5px;
    font-weight: 700;
    color: var(--pcv2-ink4);
    text-transform: lowercase;
    letter-spacing: 0.2px;
}
.et-pcv2-weather__day-icon svg { display: block; }
.et-pcv2-weather__day-temps {
    font-size: 11.5px;
    display: flex;
    flex-direction: column;
    align-items: center;
    line-height: 1.25;
    gap: 1px;
}
.et-pcv2-weather__day-temps strong {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    color: var(--pcv2-ink);
    font-size: 13px;
    letter-spacing: -0.3px;
}
.et-pcv2-weather__day-temps span { color: var(--pcv2-ink4); font-size: 11.5px; }

.et-pcv2-weather__credit {
    margin: 10px 0 0;
    font-size: 10px;
    color: var(--pcv2-ink5);
    text-align: right;
    letter-spacing: 0.2px;
}

/* ════════ WIDGET SISMOS (integrado, sin caja) ════════ */
.et-pcv2-quakes {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
    margin-top: 4px;
}
.et-pcv2-quakes__title {
    margin: 0 0 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--pcv2-line-soft);
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink);
}
.et-pcv2-quakes__list { list-style: none; margin: 0; padding: 0; }
.et-pcv2-quakes__item {
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 12px;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid var(--pcv2-line-soft);
}
.et-pcv2-quakes__item:last-child { border-bottom: 0; }
.et-pcv2-quakes__mag {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    font-size: 14.5px;
    color: #fff;
    letter-spacing: -0.4px;
}
.et-pcv2-quakes__mag--low  { background: #90A4AE; }
.et-pcv2-quakes__mag--mid  { background: #F9A825; }
.et-pcv2-quakes__mag--high { background: #C62828; box-shadow: 0 0 0 4px rgba(198,40,40,0.12); }

.et-pcv2-quakes__body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.et-pcv2-quakes__place {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: var(--pcv2-ink);
    letter-spacing: -0.2px;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.et-pcv2-quakes__meta {
    font-size: 11.5px;
    color: var(--pcv2-ink4);
    font-weight: 500;
}
.et-pcv2-quakes__empty {
    margin: 0;
    font-size: 12px;
    color: var(--pcv2-ink4);
    font-style: italic;
    text-align: center;
    padding: 14px 0;
}
.et-pcv2-quakes__credit {
    margin: 12px 0 0;
    font-size: 10px;
    color: var(--pcv2-ink5);
    text-align: right;
    letter-spacing: 0.2px;
}

/* ════════ BLOQUE C — OPINIÓN ════════ */
.et-pcv2-opinion__head {
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--pcv2-line);
}
.et-pcv2-opinion__title {
    margin: 0;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: -0.3px;
    color: var(--pcv2-blue);
}

.et-pcv2-opinion__list { list-style: none; margin: 0; padding: 0; }
.et-pcv2-opinion__item {
    display: grid;
    grid-template-columns: 1fr 56px;
    gap: 14px;
    align-items: start;
    padding: 16px 0;
    border-bottom: 1px solid var(--pcv2-line);
}
.et-pcv2-opinion__item:last-child { border-bottom: 0; }

.et-pcv2-opinion__body { min-width: 0; }

.et-pcv2-opinion__author {
    margin: 0 0 4px;
    font-size: 12px;
    font-weight: 700;
    color: var(--pcv2-ink2);
    letter-spacing: -0.1px;
}

.et-pcv2-opinion__post-title {
    margin: 0 0 6px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink);
    position: relative;
}
.et-pcv2-opinion__post-title a { display: inline; }
.et-pcv2-opinion__post-title a:hover .et-pcv2-opinion__post-text { color: var(--pcv2-blue); }

/* Kicker (categoría): AZUL del theme, RECTO (no italic), peso 700 */
.et-pcv2-opinion__kicker {
    color: var(--pcv2-blue);
    font-weight: 700;
    font-style: normal;
}
.et-pcv2-opinion__kicker-pipe {
    color: #B0BEC5;
    margin: 0 4px;
    font-style: normal;
    font-weight: 400;
}

/* Texto del título: italic */
.et-pcv2-opinion__post-text {
    font-style: italic;
    color: var(--pcv2-ink);
}

.et-pcv2-opinion__avatar {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
    border: 2px solid var(--pcv2-blue);
    flex-shrink: 0;
}

/* En el bloque C la meta es más pequeña */
.et-pcv2-opinion__item .et-pcv2-hero__byline {
    margin-top: 4px;
    font-size: 11.5px;
    color: var(--pcv2-ink4);
}

/* ════════════════════════════════════════════════════════════════════
   MÓDULO 04 — REGIONAL (Canarias / Tenerife / Santa Cruz)
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-reg {
    margin-top: 40px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
}
/* v2.33.14 — NUEVO layout grid (3 cols superior + 1 fila B inferior):
   ┌──────┬──────┬──────┐
   │ A1   │ A23  │  C   │  ← fila 1
   ├──────┴──────┤      │
   │   B (4 cols) │      │  ← fila 2 (B se extiende, C ocupa filas 1+2)
   └─────────────┴──────┘ */
.et-pcv2-reg--v2 .et-pcv2-reg__grid {
    display: grid;
    grid-template-columns: 1.15fr 1fr 0.5fr;
    grid-template-areas:
        "a1 a23 c"
        "b  b   c";
    column-gap: 32px;
    /* v2.33.19 — row-gap reducido para que B quede más cerca de A */
    row-gap: 14px;
    align-items: start;
}
.et-pcv2-reg--v2 .et-pcv2-reg__col--a1  { grid-area: a1; }
.et-pcv2-reg--v2 .et-pcv2-reg__col--a23 { grid-area: a23; display: flex; flex-direction: column; }
.et-pcv2-reg--v2 .et-pcv2-reg__col--c   { grid-area: c; }
.et-pcv2-reg--v2 .et-pcv2-reg__col--b   { grid-area: b; }

/* Compat: layout viejo cuando no esté --v2 */
.et-pcv2-reg__grid {
    display: grid;
    grid-template-columns: 1.2fr 1.1fr 0.9fr;
    gap: 36px;
    align-items: start;
}
@media (max-width: 1023px) {
    .et-pcv2-reg__grid,
    .et-pcv2-reg--v2 .et-pcv2-reg__grid {
        grid-template-columns: 1fr;
        grid-template-areas: "a1" "a23" "c" "b";
    }
}

/* Título de cada bloque — estilo encabezado de sección, no kicker */
.et-pcv2-reg__section-title {
    margin: 0 0 14px;
    font-family: 'Inter', -apple-system, sans-serif;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink);
}
/* C (Santa Cruz): mismo estilo que "Opinión" → azul */
.et-pcv2-reg__section-title--blue {
    color: var(--pcv2-blue);
}

/* ── BLOQUE A — Canarias: feature 1 noticia grande ── */
.et-pcv2-reg__feature {}
.et-pcv2-reg__feature-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 11;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
    margin-bottom: 14px;
}
.et-pcv2-reg__feature-title {
    margin: 0 0 10px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 800;
    font-size: 24px;
    line-height: 1.1;
    letter-spacing: -0.6px;
    color: var(--pcv2-ink);
}
.et-pcv2-reg__feature-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-reg__feature-dek {
    margin: 0 0 10px;
    font-size: 14.5px;
    line-height: 1.5;
    color: var(--pcv2-ink3);
}

/* ── BLOQUE B — Tenerife: items con/sin foto ── */
.et-pcv2-reg__item {
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--pcv2-line-soft);
}
.et-pcv2-reg__item:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }

.et-pcv2-reg__item-wide-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
    margin-bottom: 14px;
}
.et-pcv2-reg__item-title {
    margin: 0 0 8px;
    font-family: 'Inter', -apple-system, sans-serif;
    font-weight: 800;
    font-size: 18px;
    line-height: 1.2;
    letter-spacing: -0.4px;
    color: var(--pcv2-ink);
}
.et-pcv2-reg__item-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-reg__item-dek {
    margin: 0 0 8px;
    font-size: 13.5px;
    line-height: 1.5;
    color: var(--pcv2-ink3);
}

/* ── BLOQUE C — Santa Cruz: small + AD ── */
.et-pcv2-reg__small {
    margin-bottom: 22px;
}
.et-pcv2-reg__small-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
    margin-bottom: 12px;
}
.et-pcv2-reg__small-title {
    margin: 0 0 8px;
    font-family: 'Inter', -apple-system, sans-serif;
    font-weight: 800;
    font-size: 17px;
    line-height: 1.22;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink);
}
.et-pcv2-reg__small-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-reg__small-dek {
    margin: 0 0 8px;
    font-size: 13.5px;
    line-height: 1.45;
    color: var(--pcv2-ink3);
}

/* ════════════════════════════════════════════════════════════════
 * v2.33.14 · NUEVO LAYOUT REGIONAL v2 — Canarias + Puertos + Tenerife + AD
 * ════════════════════════════════════════════════════════════════ */

/* A1 · Feature Canarias — foto + caption + título + meta + dek */
.et-pcv2-reg--v2 .et-pcv2-reg__feature-figure {
    margin: 0 0 12px;
}
.et-pcv2-reg--v2 .et-pcv2-reg__feature-figcap {
    margin: 6px 0 0;
    font-family: 'Inter', sans-serif;
    font-size: 11.5px;
    line-height: 1.4;
    color: var(--pcv2-ink3);
}
.et-pcv2-reg--v2 .et-pcv2-reg__feature-figcap-text { margin-right: 4px; }
.et-pcv2-reg--v2 .et-pcv2-reg__feature-figcap-credit {
    font-weight: 600;
    color: var(--pcv2-ink2);
}

/* A2/A3 · Columna centro · separador hairline entre items */
.et-pcv2-reg--v2 .et-pcv2-reg__col--a23 .et-pcv2-reg__item {
    border-bottom: 0;
    padding: 0;
    margin: 0;
}
.et-pcv2-reg__divider {
    display: block;
    height: 1px;
    background: var(--pcv2-line-soft);
    margin: 22px 0;
}
/* v2.33.15 — cuando A3 viene como caja propia (is-puertos), el divider sobra
   (la caja con borde ya separa visualmente). Lo escondemos. */
.et-pcv2-reg--v2 .et-pcv2-reg__divider { display: none; }
.et-pcv2-reg--v2 .et-pcv2-reg__item.is-puertos { margin-top: 22px; }

/* v2.33.15 — A3 · Puertos · NOTICIA COMPLETA ENVUELTA en caja con borde
   fino gris claro y esquinas redondeadas, kicker AZUL theme (no rojo).
   La caja envuelve TODO: kicker + colaboración + título + meta + dek. */
.et-pcv2-reg--v2 .et-pcv2-reg__item.is-puertos {
    background: var(--et-paper, #FFFFFF);
    border: 1px solid var(--pcv2-line-soft, var(--et-rule, #E5E5E5));
    border-radius: 8px;
    padding: 16px 18px 18px;
    transition: border-color .18s, box-shadow .18s;
}
.et-pcv2-reg--v2 .et-pcv2-reg__item.is-puertos:hover {
    border-color: var(--pcv2-blue);
    box-shadow: 0 2px 10px rgba(17,79,110, 0.06);
}
.et-pcv2-reg--v2 .et-pcv2-reg__puertos-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin: 0 0 12px;
}
.et-pcv2-reg__puertos-kicker {
    display: inline-block;
    padding: 5px 10px;
    background: var(--pcv2-blue, var(--et-brand, #114F6E));
    color: #FFFFFF;
    font-family: 'Inter', sans-serif;
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    line-height: 1;
    border-radius: 3px;
}
.et-pcv2-reg__puertos-collab {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 400;
    color: var(--pcv2-ink3);
    letter-spacing: 0.4px;
    text-transform: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.et-pcv2-reg__puertos-collab a,
.et-pcv2-reg__puertos-collab strong {
    color: var(--pcv2-ink);
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 10.5px;
    border-bottom: 1px solid var(--pcv2-ink);
}
.et-pcv2-reg__puertos-collab a:hover {
    color: var(--pcv2-blue);
    border-color: var(--pcv2-blue);
}
/* v2.112.0 · El colaborador puede ser un logotipo en vez de su nombre. Los de
   Bio Ports (300×255), Baleària (218×70) y Exponav (768×168) tienen
   proporciones muy distintas, así que se fija la ALTURA y el ancho sale de
   object-fit:contain — nunca se estiran. El selector lleva .et-pcv2-reg
   delante porque la regla global `.et-pcv2-page img` es (0,1,1). */
.et-pcv2-reg__puertos-collab .et-pcv2-reg__collab-logo { border-bottom: 0; line-height: 0; }
.et-pcv2-reg .et-pcv2-reg__collab-logo img {
    display: block;
    width: auto;
    height: 34px;
    max-width: 170px;
    object-fit: contain;
}
.et-pcv2-reg__collab-fallback[hidden] { display: none; }
/* En la fila de 4, la marca abre a lo ancho sin robar celda a las noticias. */
.et-pcv2-reg--v2 .et-pcv2-reg__col--b > .et-pcv2-reg__puertos-head { grid-column: 1 / -1; }


/* ════════════════════════════════════════════════════════════════════
   v2.123.0 · FINANCIAL PORTS · sus dos últimos titulares al pie de la
   columna «Mercado marítimo», bajo el crédito de CAMAL AI.
   Es una columna estrecha, así que van APILADAS y sin fotos. Todo el
   peso lo lleva la tipografía: ni tarjetas, ni sombras, ni fondos —
   sólo un filete que separa la sección y otro entre titular y titular.
   ════════════════════════════════════════════════════════════════════ */
/* v2.126.0 · Mismo recuadro que Transporte marítimo, pero en SALMÓN.
   Los alfas NO son los del azul: el salmón es un color mucho más claro, y
   copiando .045/.13 el recuadro quedaba prácticamente invisible sobre blanco.
   Subidos hasta que la mancha pesa lo mismo a ojo que la de Baleària. */
.et-pcv2-econ__c .et-pcv2-fp {
    margin-top: 16px;
    background: linear-gradient(180deg, rgba(250,128,114,.075) 0%, rgba(250,128,114,.025) 100%);
    border: 1px solid rgba(233,120,105,.22);
    border-radius: 6px;
    padding: 16px 16px 18px;
}
/* El rótulo hereda de .et-pcv2-econ__c-title (mismo azul, caja alta y peso que
   «Mercado marítimo») y suma el logotipo al final, algo mayor que el texto. */
.et-pcv2-fp__title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}
.et-pcv2-fp__title a { display: inline-flex; align-items: center; opacity: .9; transition: opacity .2s ease; }
.et-pcv2-fp__title a:hover { opacity: 1; }
/* El texto del rótulo va a 14px y el logotipo manda: 26px. */
.et-pcv2-fp__title img { display: block; height: 26px; width: auto; }

.et-pcv2-fp__list { list-style: none; margin: 0; padding: 0; }
/* Cada noticia lleva su propio separador — también la primera, que así queda
   claramente despegada del rótulo. */
.et-pcv2-fp__item {
    padding-top: 11px;
    /* Mismo salmón del marco: un gris neutro se vería sucio sobre el fondo. */
    border-top: 1px solid rgba(233,120,105,.22);
}
.et-pcv2-fp__item + .et-pcv2-fp__item { margin-top: 11px; }

/* Mismo tipo y cuerpo que los titulares de Economía (.et-pcv2-econ__b-title). */
.et-pcv2-fp__headline {
    margin: 0 0 7px;
    font-family: 'Inter', -apple-system, sans-serif;
    font-weight: 800;
    /* v2.129.0 · un punto por debajo de los titulares de Economía: la
       columna es estrecha y a 17px los títulos en inglés se partían mucho. */
    font-size: 15px;
    line-height: 1.28;
    letter-spacing: -0.25px;
    color: var(--pcv2-ink);
}
.et-pcv2-fp__headline a { color: inherit; text-decoration: none; transition: color .18s ease; }
.et-pcv2-fp__headline a:hover { color: var(--pcv2-blue); }

/* v2.126.0 · El «Ofrecido por:» que iba bajo cada titular se retira: el
   logotipo vive ahora en el rótulo, y repetirlo tres veces en una columna
   tan estrecha era ruido. */

/* ── v2.113.0 · Exponav: banda a TODO el ancho, la noticia debajo ── */
.et-pcv2-reg__collab-banner {
    display: block;
    margin: 0 0 14px;
    line-height: 0;
    border-bottom: 0;
}
.et-pcv2-reg .et-pcv2-reg__collab-banner img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;   /* 768×168 · se contiene, jamás se recorta */
    border-radius: 4px;
}
/* v2.115.0 · FIX: esta regla (0,3,0) le ganaba a `.collab-fallback[hidden]`
   (0,2,0), así que el nombre de la marca salía SIEMPRE bajo el logotipo, no
   sólo cuando la imagen fallaba. Se le añade :not([hidden]) para que el
   atributo mande, que es justo lo que se esperaba de él. */
.et-pcv2-reg .et-pcv2-reg__collab-banner .et-pcv2-reg__collab-fallback:not([hidden]) {
    display: block;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.2px;
    line-height: 1.4;
    color: var(--pcv2-ink);
}

/* ── v2.113.0 · Bio Ports: el logotipo va ENFRENTE de la noticia, en el
   hueco de la miniatura. Es un logo, no una foto: se contiene. ── */
.et-pcv2-reg .et-pcv2-reg__item-thumb.is-brand {
    height: 90px;
    background-size: contain;
    background-color: transparent;
    border-radius: 0;
}
/* Cuando la fila de marca abre la columna, no arrastra el filete que la
   separaba de la noticia anterior — ahí arriba no hay nada que separar. */
.et-pcv2-reg--v2 .et-pcv2-reg__col--a23 .et-pcv2-reg__item--with-thumb.is-brandrow {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
    align-items: center;
}

/* B · Tenerife · 4 cards con foto en una fila */
.et-pcv2-reg--v2 .et-pcv2-reg__col--b {
    border-top: 1px solid var(--pcv2-line-soft);
    /* v2.33.19 — padding-top reducido para acercar B a A */
    padding-top: 14px;
    margin-top: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.et-pcv2-reg__b-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.et-pcv2-reg__b-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 11;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
}
.et-pcv2-reg__b-title {
    margin: 0;
    font-family: 'Inter', -apple-system, sans-serif;
    font-weight: 800;
    font-size: 15.5px;
    line-height: 1.22;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink);
}
.et-pcv2-reg__b-title a {
    color: inherit;
    text-decoration: none;
}
.et-pcv2-reg__b-title a:hover { color: var(--pcv2-blue); }

/* C · Anuncio vertical lateral · stretch full-height */
.et-pcv2-reg--v2 .et-pcv2-reg__col--c {
    align-self: stretch;
}

/* ═══ v2.159.0 · La columna lateral · tres anunciantes apilados ═══
   Ocupa el alto entero del módulo (la columna C abarca las dos filas del
   grid) y se pega arriba: los banners empiezan a la altura del rótulo, no
   centrados en un espacio que puede crecer con las noticias.
   Las creatividades vienen a 300 y pico de ancho y la columna es más
   estrecha, así que se escalan sin deformarse. */
.et-pcv2-reg__rail {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.et-pcv2-reg__rail .et-ad--regside { width: 100%; }
.et-pcv2-reg__rail .et-ad--regside img {
    width: 100%;
    height: auto;
    display: block;
}
/* El filete va en un elemento propio, no en un borde de la creatividad: así
   solo aparece ENTRE dos anuncios y nunca cuelga suelto al final. */
.et-pcv2-reg__rail-sep {
    display: block;
    width: 100%;
    height: 1px;
    margin: 18px 0;
    background: var(--pcv2-line-soft, #E4E9EE);
}
.et-pcv2-reg--v2 .et-pcv2-reg__col--c .et-pcv2-ad {
    height: 100%;
    margin: 0;
    padding: 16px;
    background: var(--pcv2-bg-soft, #FAFAFA);
    border: 1px solid var(--pcv2-line-soft);
    border-radius: 6px;
    display: flex;
    flex-direction: column;
}
.et-pcv2-reg--v2 .et-pcv2-reg__col--c .et-pcv2-ad__label {
    text-align: center;
    margin-bottom: 12px;
}
.et-pcv2-reg--v2 .et-pcv2-reg__col--c .et-pcv2-ad__img,
.et-pcv2-reg--v2 .et-pcv2-reg__col--c .et-pcv2-ad__img img {
    width: 100%;
    height: auto;
    display: block;
}

/* Responsive: en móvil/tablet apilar todo */
@media (max-width: 1023px) {
    .et-pcv2-reg--v2 .et-pcv2-reg__col--b {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 600px) {
    .et-pcv2-reg--v2 .et-pcv2-reg__col--b {
        grid-template-columns: 1fr;
    }
}

/* ════════ AD COMÚN ════════ */
.et-pcv2-ad {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid var(--pcv2-line-soft);
}
.et-pcv2-ad__label {
    display: block;
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 1.6px;
    color: var(--pcv2-ink5);
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 8px;
}
.et-pcv2-ad__slot { text-align: center; }
.et-pcv2-ad__slot img { margin: 0 auto; max-width: 100%; height: auto; }

/* ════════════════════════════════════════════════════════════════════
   MÓDULO 05 — ECONOMÍA Y MERCADOS
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-econ {
    margin-top: 44px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
}

/* ── HEADER premium ── */
.et-pcv2-econ__head {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 26px;
}
.et-pcv2-econ__head-icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--et-brand, #114F6E) 0%, #0E435E 100%);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 6px 18px rgba(17,79,110,0.22);
}
.et-pcv2-econ__head-text { flex-shrink: 0; }
.et-pcv2-econ__head-title {
    margin: 0;
    font-family: 'Inter', sans-serif;
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -0.7px;
    color: var(--pcv2-ink);
    line-height: 1.1;
}
.et-pcv2-econ__head-sub {
    margin: 2px 0 0;
    font-size: 13px;
    color: var(--pcv2-ink4);
    line-height: 1.4;
    font-weight: 500;
}
.et-pcv2-econ__head-line {
    flex: 1;
    height: 1px;
    background: linear-gradient(to right, var(--pcv2-blue) 0%, var(--pcv2-line) 60%, transparent 100%);
    align-self: center;
}

/* ── GRID: imagen abarca A+B, C aparte derecha ── */
.et-pcv2-econ__grid {
    display: grid;
    grid-template-columns: 1fr 1fr 0.8fr;
    grid-template-rows: auto auto;
    gap: 24px 28px;
    align-items: start;
}
@media (max-width: 1023px) {
    .et-pcv2-econ__grid { grid-template-columns: 1fr; grid-template-rows: auto; }
}

.et-pcv2-econ__hero-photo {
    display: block;
    grid-column: 1 / span 2;   /* A + B */
    grid-row: 1;
    width: 100%;
    aspect-ratio: 16 / 9;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
    transition: filter 0.2s;
}
.et-pcv2-econ__hero-photo:hover { filter: brightness(1.04); }

.et-pcv2-econ__a {
    grid-column: 1;
    grid-row: 2;
}
.et-pcv2-econ__a-title {
    margin: 0 0 10px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 800;
    font-size: 26px;
    line-height: 1.1;
    letter-spacing: -0.6px;
    color: var(--pcv2-ink);
}
.et-pcv2-econ__a-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-econ__a-dek {
    margin: 0 0 10px;
    font-size: 14.5px;
    line-height: 1.5;
    color: var(--pcv2-ink3);
}

.et-pcv2-econ__b {
    grid-column: 2;
    grid-row: 2;
    display: flex;
    flex-direction: column;
}
.et-pcv2-econ__b-item {
    padding: 14px 0;
    border-top: 1px solid var(--pcv2-line-soft);
}
.et-pcv2-econ__b-item:first-child { padding-top: 0; border-top: 0; }
.et-pcv2-econ__b-item:last-child { padding-bottom: 0; }
.et-pcv2-econ__b-title {
    margin: 0 0 6px;
    font-family: 'Inter', -apple-system, sans-serif;
    font-weight: 800;
    font-size: 17px;
    line-height: 1.25;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink);
}
.et-pcv2-econ__b-title a:hover { color: var(--pcv2-blue); }

/* ── BLOQUE C: tarjetas precios ── */
.et-pcv2-econ__c {
    grid-column: 3;
    grid-row: 1 / span 2;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.et-pcv2-econ__c-title {
    margin: 0 0 6px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.4px;
    color: var(--pcv2-blue);
    text-transform: uppercase;
}
.et-pcv2-pricecard {
    display: grid;
    grid-template-columns: 40px 1fr;
    gap: 10px;
    align-items: center;
    padding: 12px 14px;
    border: 1px solid var(--pcv2-line);
    border-radius: 10px;
    background: var(--et-paper, #fff);
    transition: all 0.2s;
}
.et-pcv2-pricecard:hover {
    border-color: var(--pcv2-blue);
    box-shadow: 0 4px 14px rgba(17,79,110,0.08);
}
.et-pcv2-pricecard__icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(17,79,110,0.08);
    color: var(--pcv2-blue);
    display: flex;
    align-items: center;
    justify-content: center;
}
.et-pcv2-pricecard__body { display: flex; flex-direction: column; min-width: 0; }
.et-pcv2-pricecard__label {
    font-size: 11.5px;
    font-weight: 700;
    color: var(--pcv2-ink4);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    line-height: 1.2;
}
.et-pcv2-pricecard__value {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 800;
    color: var(--pcv2-ink);
    letter-spacing: -0.5px;
    line-height: 1.2;
    margin-top: 2px;
}
.et-pcv2-pricecard__value small {
    font-size: 10.5px;
    font-weight: 600;
    color: var(--pcv2-ink4);
    letter-spacing: 0;
    margin-left: 3px;
}
.et-pcv2-econ__c-credit {
    margin: 6px 0 0;
    font-size: 10px;
    color: var(--pcv2-ink5);
    letter-spacing: 0.2px;
    /* v2.122.0 · el crédito y el logo de CAMAL AI comparten línea, pegados a
       la derecha. Flex en vez de text-align para poder alinearlos por su
       línea base óptica sin depender del hueco del inline-block. */
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
}
.et-pcv2-econ__c-camal {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    opacity: .82;
    transition: opacity .2s ease;
}
.et-pcv2-econ__c-camal:hover { opacity: 1; }
/* El logo es oscuro: va sobre el fondo claro de la columna, nunca invertido. */
.et-pcv2-econ__c-camal img {
    display: block;
    height: 14px;
    width: auto;
}

/* ════════════════ GRÁFICA FOREX ════════════════ */
.et-pcv2-forex {
    margin-top: 32px;
    padding: 22px;
    background: linear-gradient(180deg, #fff 0%, #FAFAFE 100%);
    border: 1px solid var(--et-rule, #DDE2EC);
    border-radius: 14px;
    box-shadow: 0 4px 18px rgba(17,79,110,0.04);
}

.et-pcv2-forex__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 16px;
}
.et-pcv2-forex__head-left {
    display: flex;
    align-items: center;
    gap: 12px;
}
.et-pcv2-forex__head-title {
    margin: 0;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 800;
    color: var(--pcv2-ink);
    letter-spacing: -0.3px;
}
.et-pcv2-forex__live {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: rgba(198,40,40,0.08);
    color: #C62828;
    padding: 3px 9px;
    border-radius: 100px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.6px;
}
.et-pcv2-forex__live-dot {
    width: 6px; height: 6px;
    border-radius: 50%;
    background: #C62828;
    animation: et-pcv2-pulse 1.5s infinite;
}

.et-pcv2-forex__instruments {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}
.et-pcv2-forex__chip {
    background: var(--et-paper, #fff);
    border: 1px solid var(--et-rule, #DDE2EC);
    border-radius: 100px;
    padding: 6px 14px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: var(--pcv2-ink4);
    cursor: pointer;
    transition: all 0.18s;
}
.et-pcv2-forex__chip:hover { color: var(--pcv2-blue); border-color: #B6C5E5; }
.et-pcv2-forex__chip.is-active {
    background: var(--pcv2-blue);
    color: #fff;
    border-color: var(--pcv2-blue);
    box-shadow: 0 3px 10px rgba(17,79,110,0.22);
}

/* Readout: instrument + price + change + updated */
.et-pcv2-forex__readout {
    display: flex;
    align-items: baseline;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}
.et-pcv2-forex__label {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    color: var(--pcv2-ink4);
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.et-pcv2-forex__price {
    font-family: 'Inter', sans-serif;
    font-size: 32px;
    font-weight: 800;
    color: var(--pcv2-ink);
    letter-spacing: -1px;
    line-height: 1;
}
.et-pcv2-forex__change {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: -0.2px;
}
.et-pcv2-forex__change.is-up   { color: #1B7E3D; }
.et-pcv2-forex__change.is-down { color: #C62828; }
.et-pcv2-forex__updated {
    font-size: 11px;
    color: var(--pcv2-ink5);
    font-weight: 500;
}

/* Selector rango */
.et-pcv2-forex__ranges {
    display: flex;
    gap: 4px;
    margin-bottom: 14px;
    padding: 3px;
    background: #F1F3F8;
    border-radius: 100px;
    width: fit-content;
}
.et-pcv2-forex__range {
    background: transparent;
    border: 0;
    padding: 5px 12px;
    font-size: 11px;
    font-weight: 700;
    color: var(--pcv2-ink4);
    cursor: pointer;
    border-radius: 100px;
    letter-spacing: 0.2px;
    transition: all 0.15s;
}
.et-pcv2-forex__range:hover { color: var(--pcv2-blue); }
.et-pcv2-forex__range.is-active {
    background: var(--et-paper, #fff);
    color: var(--pcv2-blue);
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

/* SVG chart */
.et-pcv2-forex__chart-wrap {
    position: relative;
    width: 100%;
}
.et-pcv2-forex__chart {
    width: 100%;
    height: 300px;
    display: block;
}
.et-pcv2-forex__tooltip {
    position: absolute;
    top: 8px;
    transform: translateX(-50%);
    background: var(--pcv2-ink);
    color: #fff;
    padding: 8px 12px;
    border-radius: 6px;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 600;
    text-align: center;
    pointer-events: none;
    display: none;
    line-height: 1.4;
    box-shadow: 0 4px 14px rgba(0,0,0,0.18);
    z-index: 2;
}
.et-pcv2-forex__tooltip span {
    font-size: 10px;
    font-weight: 500;
    opacity: 0.75;
}

/* Footer */
.et-pcv2-forex__foot {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--et-rule, #EFEDE7);
    font-size: 10.5px;
    color: var(--pcv2-ink5);
    letter-spacing: 0.2px;
}

/* ════════ PATROCINADOR del módulo Economía ════════ */
.et-pcv2-econ__sponsor {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 4px 12px;
    margin-left: -56px;     /* superpone sobre la línea azul */
    background: var(--et-paper, #fff);
    border-radius: 100px;
    position: relative;
    z-index: 2;
    flex-shrink: 0;
    transition: opacity 0.15s;
    text-decoration: none;
}
.et-pcv2-econ__sponsor:hover { opacity: 0.85; }

.et-pcv2-econ__sponsor-prefix {
    font-size: 10.5px;
    font-weight: 600;
    color: var(--pcv2-ink4);
    letter-spacing: 0.4px;
    text-transform: uppercase;
}

.et-pcv2-econ__sponsor-text {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 800;
    color: var(--pcv2-blue);
    letter-spacing: -0.2px;
}

.et-pcv2-econ__sponsor-logo {
    height: 28px;
    width: auto;
    max-width: 130px;
    object-fit: contain;
    display: block;
}

/* En pantallas estrechas, que el sponsor caiga a línea aparte */
@media (max-width: 740px) {
    .et-pcv2-econ__head { flex-wrap: wrap; }
    .et-pcv2-econ__sponsor { margin-left: 0; margin-top: 8px; padding: 4px 0; }
}

/* ════════ Separador entre precios y AD en bloque C ════════ */
.et-pcv2-econ__c-ad-sep {
    height: 1px;
    background: var(--pcv2-line-soft);
    margin: 14px 0 4px;
}
.et-pcv2-econ__c .et-pcv2-ad {
    margin-top: 8px;
    padding-top: 4px;
    border-top: 0;
}

/* ════════════════════════════════════════════════════════════════════
   MÓDULO 06 — CIENCIA, SALUD Y CONSUMO
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-csc {
    margin-top: 44px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
}

/* ── HEADER premium (idéntico estilo módulo Economía) ── */
.et-pcv2-csc__head {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 26px;
}
.et-pcv2-csc__head-icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--et-brand, #114F6E) 0%, #0E435E 100%);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 6px 18px rgba(17,79,110,0.22);
}
.et-pcv2-csc__head-text { flex-shrink: 0; }
.et-pcv2-csc__head-title {
    margin: 0;
    font-family: 'Inter', sans-serif;
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -0.7px;
    color: var(--pcv2-ink);
    line-height: 1.1;
}
.et-pcv2-csc__head-sub {
    margin: 2px 0 0;
    font-size: 13px;
    color: var(--pcv2-ink4);
    line-height: 1.4;
    font-weight: 500;
}
.et-pcv2-csc__head-line {
    flex: 1;
    height: 1px;
    background: linear-gradient(to right, var(--pcv2-blue) 0%, var(--pcv2-line) 60%, transparent 100%);
    align-self: center;
}

/* ── GRID 3 columnas ── */
.et-pcv2-csc__grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr 0.9fr;
    gap: 36px;
    align-items: start;
}
@media (max-width: 1023px) {
    .et-pcv2-csc__grid { grid-template-columns: 1fr; gap: 28px; }
}

/* ── BLOQUE A: Ciencia y Espacio ── */
.et-pcv2-csc__a-hero {
    margin-bottom: 22px;
    padding-bottom: 22px;
    border-bottom: 1px solid var(--pcv2-line);
}
.et-pcv2-csc__a-hero-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
    margin-bottom: 14px;
    transition: filter 0.2s;
}
.et-pcv2-csc__a-hero-photo:hover { filter: brightness(1.04); }
.et-pcv2-csc__a-hero-title {
    margin: 0 0 10px;
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    font-size: 24px;
    line-height: 1.1;
    letter-spacing: -0.6px;
    color: var(--pcv2-ink);
}
.et-pcv2-csc__a-hero-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-csc__a-hero-dek {
    margin: 0 0 10px;
    font-size: 14px;
    line-height: 1.5;
    color: var(--pcv2-ink3);
}

.et-pcv2-csc__a-item {
    padding: 16px 0 0;
}
.et-pcv2-csc__a-item + .et-pcv2-csc__a-item {
    border-top: 1px solid var(--pcv2-line-soft);
    margin-top: 16px;
}
.et-pcv2-csc__a-item-title {
    margin: 0 0 8px;
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    font-size: 18px;
    line-height: 1.22;
    letter-spacing: -0.4px;
    color: var(--pcv2-ink);
}
.et-pcv2-csc__a-item-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-csc__a-item-dek {
    margin: 0 0 8px;
    font-size: 13.5px;
    line-height: 1.5;
    color: var(--pcv2-ink3);
}

/* ── BLOQUE B: Salud + Consumo ── */
.et-pcv2-csc__b-item {
    padding: 14px 0;
    border-bottom: 1px solid var(--pcv2-line-soft);
}
.et-pcv2-csc__b-item:first-of-type { padding-top: 0; }
.et-pcv2-csc__b-item:last-of-type { border-bottom: 0; }
.et-pcv2-csc__b-item-title {
    margin: 0 0 8px;
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    font-size: 18px;
    line-height: 1.22;
    letter-spacing: -0.4px;
    color: var(--pcv2-ink);
}
.et-pcv2-csc__b-item-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-csc__b-item-dek {
    margin: 0 0 8px;
    font-size: 13.5px;
    line-height: 1.5;
    color: var(--pcv2-ink3);
}
.et-pcv2-csc__b-item-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
    margin-top: 10px;
    transition: filter 0.2s;
}
.et-pcv2-csc__b-item-photo:hover { filter: brightness(1.04); }
.et-pcv2-csc__b-sep {
    height: 1px;
    background: var(--pcv2-line);
    margin: 18px 0 4px;
}

/* ── BLOQUE C: Turismo ── */
.et-pcv2-csc__c {
    border-left: 1px solid var(--pcv2-line);
    padding-left: 24px;
}
@media (max-width: 1023px) {
    .et-pcv2-csc__c { border-left: 0; padding-left: 0; }
}
.et-pcv2-csc__c-title {
    margin: 0 0 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--pcv2-line);
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.5px;
    color: var(--pcv2-ink5);
    text-transform: uppercase;
}
.et-pcv2-csc__c-item {
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--pcv2-line-soft);
}
.et-pcv2-csc__c-item:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.et-pcv2-csc__c-item-title {
    margin: 0 0 10px;
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    font-size: 17px;
    line-height: 1.22;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink);
}
.et-pcv2-csc__c-item-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-csc__c-item-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft);
    margin-bottom: 10px;
    transition: filter 0.2s;
}
.et-pcv2-csc__c-item-photo:hover { filter: brightness(1.04); }

/* En el bloque C, foto va PRIMERO (orden visual: título -> foto -> meta no, mejor foto -> título -> meta).
   Usamos flex-direction column-reverse para la primera parte */
.et-pcv2-csc__c-item {
    display: flex;
    flex-direction: column;
}
.et-pcv2-csc__c-item-photo { order: 0; }
.et-pcv2-csc__c-item-title { order: 1; }
.et-pcv2-csc__c-item .et-pcv2-hero__byline { order: 2; }

/* También en el bloque B: cuando hay foto, foto va arriba */
.et-pcv2-csc__b-item.has-photo {
    display: flex;
    flex-direction: column;
}
.et-pcv2-csc__b-item.has-photo .et-pcv2-csc__b-item-photo { order: 0; margin-top: 0; margin-bottom: 12px; }
.et-pcv2-csc__b-item.has-photo .et-pcv2-csc__b-item-title { order: 1; }
.et-pcv2-csc__b-item.has-photo .et-pcv2-csc__b-item-dek { order: 2; }
.et-pcv2-csc__b-item.has-photo .et-pcv2-hero__byline { order: 3; }

/* ════════════════════════════════════════════════════════════════════
   MÓDULO 07 — DEPORTES (CD Tenerife · UD Las Palmas)
   Diseño premium · marcadores con gradiente · animaciones WOW
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-sports {
    margin-top: 44px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
}

/* ── HEADER (mismo patrón que Economía y CSC) ── */
.et-pcv2-sports__head {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 26px;
}
.et-pcv2-sports__head-icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--et-brand, #114F6E) 0%, #0E435E 100%);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 6px 18px rgba(17,79,110,0.22);
}
.et-pcv2-sports__head-text { flex-shrink: 0; }
.et-pcv2-sports__head-title {
    margin: 0;
    font-family: 'Inter', sans-serif;
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -0.7px;
    color: var(--pcv2-ink);
    line-height: 1.1;
}
.et-pcv2-sports__head-sub {
    margin: 2px 0 0;
    font-size: 13px;
    color: var(--pcv2-ink4);
    line-height: 1.4;
    font-weight: 500;
}
.et-pcv2-sports__head-line {
    flex: 1;
    height: 1px;
    background: linear-gradient(to right, var(--pcv2-blue) 0%, var(--pcv2-line) 60%, transparent 100%);
    align-self: center;
}

/* ── GRID: 2 tarjetas marcador + 2 noticias debajo ── */
.et-pcv2-sports__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
    align-items: start;
}
@media (max-width: 720px) {
    .et-pcv2-sports__grid { grid-template-columns: 1fr; }
}

/* ════════════════ TARJETA MARCADOR ════════════════ */
.et-pcv2-sports__card {
    position: relative;
    overflow: hidden;
    border-radius: 18px;
    padding: 24px 24px 22px;
    color: #fff;
    isolation: isolate;
    transition: transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.3s;
    min-height: 220px;
    display: flex;
    flex-direction: column;
}
.et-pcv2-sports__card:hover {
    transform: translateY(-3px);
}

/* TENERIFE — Azul profundo con resplandor */
.et-pcv2-sports__card--blue {
    background:
        radial-gradient(circle at 20% 0%, rgba(80,130,220,0.30) 0%, transparent 50%),
        radial-gradient(circle at 80% 100%, rgba(30,53,118,0.45) 0%, transparent 60%),
        linear-gradient(145deg, #1B3578 0%, #0F2154 50%, #061333 100%);
    box-shadow:
        0 12px 30px rgba(11,28,80,0.32),
        0 2px 6px rgba(11,28,80,0.20),
        inset 0 1px 0 rgba(255,255,255,0.08);
}
.et-pcv2-sports__card--blue:hover {
    box-shadow:
        0 18px 40px rgba(11,28,80,0.42),
        0 4px 10px rgba(11,28,80,0.28),
        inset 0 1px 0 rgba(255,255,255,0.12);
}

/* LAS PALMAS — Amarillo cálido con resplandor */
.et-pcv2-sports__card--gold {
    background:
        radial-gradient(circle at 20% 0%, rgba(255,232,128,0.32) 0%, transparent 50%),
        radial-gradient(circle at 80% 100%, rgba(180,130,30,0.30) 0%, transparent 60%),
        linear-gradient(145deg, #FFCB1F 0%, #E8A60D 55%, #B57A05 100%);
    color: #1A1306;
    box-shadow:
        0 12px 30px rgba(176,121,8,0.30),
        0 2px 6px rgba(176,121,8,0.18),
        inset 0 1px 0 rgba(255,255,255,0.32);
}
.et-pcv2-sports__card--gold:hover {
    box-shadow:
        0 18px 40px rgba(176,121,8,0.40),
        0 4px 10px rgba(176,121,8,0.26),
        inset 0 1px 0 rgba(255,255,255,0.42);
}

/* Decoración: brillo + patrón */
.et-pcv2-sports__card-glow {
    position: absolute;
    top: -50%;
    right: -30%;
    width: 80%;
    height: 200%;
    background: radial-gradient(ellipse, rgba(255,255,255,0.10) 0%, transparent 60%);
    pointer-events: none;
    z-index: 0;
}
.et-pcv2-sports__card-pattern {
    position: absolute;
    top: 50%;
    right: -40px;
    width: 240px;
    height: 240px;
    transform: translateY(-50%);
    pointer-events: none;
    z-index: 0;
    color: currentColor;
    opacity: 0.6;
}
.et-pcv2-sports__card-pattern svg { width: 100%; height: 100%; }

.et-pcv2-sports__card > * { position: relative; z-index: 1; }

/* HEAD: club + competición */
.et-pcv2-sports__card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
}
.et-pcv2-sports__card-club {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    opacity: 0.95;
}
.et-pcv2-sports__card-shield {
    width: 22px;
    height: 22px;
    object-fit: contain;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.25));
}
.et-pcv2-sports__card-comp {
    background: rgba(255,255,255,0.14);
    backdrop-filter: blur(4px);
    padding: 4px 10px;
    border-radius: 100px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}
.et-pcv2-sports__card--gold .et-pcv2-sports__card-comp {
    background: rgba(26,19,6,0.16);
}

/* BODY: marcador */
.et-pcv2-sports__card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.et-pcv2-sports__match {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.et-pcv2-sports__team {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    min-width: 0;
}
.et-pcv2-sports__team:first-child { text-align: right; align-items: flex-end; }
.et-pcv2-sports__team:last-child  { text-align: left;  align-items: flex-start; }
.et-pcv2-sports__match { justify-items: center; }
.et-pcv2-sports__team:first-child  { justify-self: end; }
.et-pcv2-sports__team:last-child   { justify-self: start; }
.et-pcv2-sports__team { flex-direction: column; align-items: center !important; text-align: center !important; }

.et-pcv2-sports__team-badge {
    width: 52px;
    height: 52px;
    object-fit: contain;
    filter: drop-shadow(0 4px 10px rgba(0,0,0,0.35));
}
.et-pcv2-sports__team-badge--placeholder {
    background: rgba(255,255,255,0.10);
    border-radius: 50%;
    border: 2px dashed rgba(255,255,255,0.25);
}
.et-pcv2-sports__card--gold .et-pcv2-sports__team-badge--placeholder {
    background: rgba(26,19,6,0.10);
    border-color: rgba(26,19,6,0.30);
}

.et-pcv2-sports__team-name {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    opacity: 0.95;
}

/* MARCADOR central */
.et-pcv2-sports__score {
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -2px;
    padding: 0 4px;
}
.et-pcv2-sports__score-num {
    font-size: 54px;
    text-shadow: 0 4px 16px rgba(0,0,0,0.25);
    font-variant-numeric: tabular-nums;
    min-width: 0.7em;
    text-align: center;
}
.et-pcv2-sports__score-sep {
    font-size: 36px;
    opacity: 0.55;
    transform: translateY(-3px);
}

.et-pcv2-sports__vs {
    font-family: 'Inter', sans-serif;
    font-size: 26px;
    font-weight: 800;
    letter-spacing: 1px;
    opacity: 0.85;
    padding: 0 8px;
    text-shadow: 0 2px 8px rgba(0,0,0,0.18);
}

/* STATE: badge inferior */
.et-pcv2-sports__state {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding-top: 14px;
    border-top: 1px solid rgba(255,255,255,0.16);
}
.et-pcv2-sports__card--gold .et-pcv2-sports__state {
    border-top-color: rgba(26,19,6,0.18);
}

.et-pcv2-sports__live-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #E53935;
    color: #fff;
    padding: 5px 11px;
    border-radius: 100px;
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    box-shadow: 0 3px 10px rgba(229,57,53,0.45);
}
.et-pcv2-sports__live-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--et-paper, #fff);
    animation: et-sports-pulse 1.2s infinite;
}
@keyframes et-sports-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%      { opacity: 0.4; transform: scale(0.75); }
}

.et-pcv2-sports__minute {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.4px;
}

.et-pcv2-sports__final-badge {
    background: rgba(255,255,255,0.18);
    padding: 5px 11px;
    border-radius: 100px;
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.4px;
}
.et-pcv2-sports__card--gold .et-pcv2-sports__final-badge {
    background: rgba(26,19,6,0.20);
}

.et-pcv2-sports__upcoming {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.2px;
    opacity: 0.85;
}
.et-pcv2-sports__date {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.2px;
}
.et-pcv2-sports__date strong {
    font-weight: 800;
    margin-right: 2px;
}

/* Sin partido */
.et-pcv2-sports__match--none {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 14px 0;
}
.et-pcv2-sports__nomatch-badge {
    width: 56px;
    height: 56px;
    object-fit: contain;
    filter: drop-shadow(0 4px 10px rgba(0,0,0,0.30));
}
.et-pcv2-sports__nomatch-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.et-pcv2-sports__nomatch-text strong {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1px;
}
.et-pcv2-sports__nomatch-text span {
    font-size: 11.5px;
    opacity: 0.75;
    font-weight: 500;
}

/* ════════════════ NOTICIAS debajo ════════════════ */
.et-pcv2-sports__news {}
.et-pcv2-sports__news-item {
    padding: 16px 4px 0;
}
.et-pcv2-sports__news-title {
    margin: 0 0 8px;
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    font-size: 18px;
    line-height: 1.22;
    letter-spacing: -0.4px;
    color: var(--pcv2-ink);
}
.et-pcv2-sports__news-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-sports__news-dek {
    margin: 0 0 8px;
    font-size: 13.5px;
    line-height: 1.5;
    color: var(--pcv2-ink3);
}

/* ════════════════════════════════════════════════════════════════════
   SPORTS — rediseño 2.18: escudo decorativo + último/próximo
═════════════════════════════════════════════════════════════════════ */

/* La tarjeta ahora es contenedor relativo con overflow oculto y altura fija para que el escudo de fondo no rompa el layout */
.et-pcv2-sports__card {
    position: relative;
    overflow: hidden;
    min-height: 340px;
    display: flex;
    flex-direction: column;
    padding: 22px 24px 24px;
}

/* Escudo decorativo de fondo — v2.25.41:
   AMBAS tarjetas usan EXACTAMENTE las mismas dimensiones y posición.
   width/height en px fijos (no `auto`/`aspect-ratio`) para que el
   tamaño NO dependa de las proporciones nativas del SVG de cada equipo.
   Solo cambia el filtro de brillo según el fondo. */
.et-pcv2-sports__bg-shield {
    position: absolute;
    right: -70px;
    bottom: -40px;
    width: 380px;
    height: 380px;
    object-fit: contain;
    object-position: center;
    opacity: 0.22;
    transform: rotate(-10deg);
    transform-origin: center;
    pointer-events: none;
    z-index: 0;
    filter: blur(0.3px);
}

/* Variación SOLO en filtro/opacidad para que se vea bien sobre cada fondo.
   NO se toca width/height/right/bottom — debe ser idéntico al base. */
.et-pcv2-sports__card--gold .et-pcv2-sports__bg-shield {
    filter: brightness(0.85) blur(0.3px);
}
.et-pcv2-sports__card--blue .et-pcv2-sports__bg-shield {
    filter: brightness(1.3) blur(0.3px);
}

/* Forzar que todo el contenido vaya por encima del escudo */
.et-pcv2-sports__card > *:not(.et-pcv2-sports__bg-shield) { position: relative; z-index: 1; }

/* Header de la tarjeta — solo nombre del club, sin marca de competición */
.et-pcv2-sports__card-head {
    margin-bottom: 18px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(255,255,255,0.12);
}
.et-pcv2-sports__card--gold .et-pcv2-sports__card-head {
    border-bottom-color: rgba(0,0,0,0.18);
}
.et-pcv2-sports__card-club {
    display: flex;
    align-items: center;
    gap: 12px;
}
.et-pcv2-sports__card-shield {
    width: 64px;
    height: 64px;
    object-fit: contain;
    flex-shrink: 0;
}
.et-pcv2-sports__card-shield-fallback {
    width: 64px;
    height: 64px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255,255,255,0.15);
    border: 2px solid rgba(255,255,255,0.4);
    font-family: 'Inter', sans-serif;
    font-weight: 900;
    font-size: 18px;
    letter-spacing: 0.5px;
    color: currentColor;
}
.et-pcv2-sports__card--gold .et-pcv2-sports__card-shield-fallback {
    background: rgba(0,0,0,0.12);
    border-color: rgba(0,0,0,0.3);
}
.et-pcv2-sports__card-club span {
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    font-size: 16px;
    letter-spacing: 1.2px;
    line-height: 1;
}

/* Cada FILA (último / próximo) */
.et-pcv2-sports__row {
    padding: 12px 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.et-pcv2-sports__row-label {
    display: inline-block;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 9.5px;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 12px;
    opacity: 0.65;
}

/* Divisor entre filas */
.et-pcv2-sports__divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, currentColor 30%, currentColor 70%, transparent);
    opacity: 0.18;
    margin: 4px 0;
}

/* v2.25.57 — Eventos del partido (goleadores + tarjetas) en última tarjeta */
.et-pcv2-sports__events {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid rgba(255,255,255,0.12);
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.et-pcv2-sports__card--gold .et-pcv2-sports__events {
    border-top-color: rgba(0,0,0,0.18);
}
.et-pcv2-sports__events-list {
    list-style: none; margin: 0; padding: 0;
    display: flex; flex-direction: column; gap: 4px;
}
.et-pcv2-sports__event {
    display: grid;
    grid-template-columns: 18px 1fr auto;
    align-items: center;
    gap: 8px;
    font-size: 12.5px;
    line-height: 1.3;
    padding: 4px 6px;
    border-radius: 5px;
    background: rgba(255,255,255,0.06);
    transition: background 0.15s;
}
.et-pcv2-sports__card--gold .et-pcv2-sports__event {
    background: rgba(0,0,0,0.06);
}
.et-pcv2-sports__event:hover {
    background: rgba(255,255,255,0.12);
}
.et-pcv2-sports__card--gold .et-pcv2-sports__event:hover {
    background: rgba(0,0,0,0.10);
}
.et-pcv2-sports__event--away {
    direction: rtl;
    text-align: right;
}
.et-pcv2-sports__event--away > * {
    direction: ltr; /* contenido se mantiene leyendo normal */
}
.et-pcv2-sports__event-icon {
    font-size: 14px;
    text-align: center;
    line-height: 1;
    filter: drop-shadow(0 1px 1px rgba(0,0,0,0.15));
}
.et-pcv2-sports__event-card {
    width: 11px; height: 14px;
    border-radius: 1.5px;
    display: inline-block;
    box-shadow: 0 1px 2px rgba(0,0,0,0.25);
}
.et-pcv2-sports__event-card--yellow { background: #FACC15; }
.et-pcv2-sports__event-card--red    { background: #DC2626; }
.et-pcv2-sports__event-player {
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    letter-spacing: -0.005em;
}
.et-pcv2-sports__event-player em {
    font-style: italic;
    font-weight: 400;
    opacity: 0.75;
    font-size: 11px;
    margin-left: 3px;
}
.et-pcv2-sports__event-minute {
    font-size: 11px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    opacity: 0.75;
    background: rgba(255,255,255,0.08);
    padding: 2px 7px;
    border-radius: 100px;
    letter-spacing: 0.2px;
}
.et-pcv2-sports__card--gold .et-pcv2-sports__event-minute {
    background: rgba(0,0,0,0.08);
}

/* v2.25.67 — Estado "Próximamente" cuando no hay calendario confirmado */
.et-pcv2-sports__upcoming {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 18px 12px;
    text-align: center;
    opacity: 0.78;
}
.et-pcv2-sports__upcoming-icon {
    opacity: 0.6;
    margin-bottom: 4px;
}
.et-pcv2-sports__upcoming-text {
    font-size: 15px; font-weight: 700;
    letter-spacing: 0.3px;
    line-height: 1;
}
.et-pcv2-sports__upcoming-sub {
    font-size: 11.5px;
    opacity: 0.65;
    font-style: italic;
    line-height: 1.3;
}

/* v2.25.61 — Forma reciente + posición en la tabla */
.et-pcv2-sports__season {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid rgba(255,255,255,0.12);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    align-items: start;
}
.et-pcv2-sports__card--gold .et-pcv2-sports__season {
    border-top-color: rgba(0,0,0,0.18);
}
.et-pcv2-sports__season-label {
    display: block;
    font-size: 10px; font-weight: 700;
    letter-spacing: 1.2px; text-transform: uppercase;
    opacity: 0.6; margin-bottom: 6px;
}
.et-pcv2-sports__form-dots {
    display: flex; gap: 5px;
}
.et-pcv2-sports__form-dot {
    display: inline-flex; align-items: center; justify-content: center;
    width: 22px; height: 22px;
    border-radius: 50%;
    font-size: 10px; font-weight: 800;
    letter-spacing: -0.02em;
    color: #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,0.18);
}
.et-pcv2-sports__form-dot--win  { background: #22c55e; }
.et-pcv2-sports__form-dot--draw { background: #94a3b8; }
.et-pcv2-sports__form-dot--loss { background: #dc2626; }
.et-pcv2-sports__pos-info {
    display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap;
}
.et-pcv2-sports__pos-rank {
    font-size: 26px; font-weight: 800;
    line-height: 1; letter-spacing: -0.02em;
}
.et-pcv2-sports__pos-pts {
    font-size: 12.5px; font-weight: 700; opacity: 0.85;
}
.et-pcv2-sports__pos-record {
    font-size: 11px; opacity: 0.65;
    font-variant-numeric: tabular-nums;
}

/* Mini-marcador (3 columnas: home + score + away) */
.et-pcv2-sports__mini-match {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 18px;
    margin-bottom: 14px;
}
.et-pcv2-sports__mini-team {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}
/* HOME → alineado a la izquierda: escudo a la izquierda, nombre a la derecha */
.et-pcv2-sports__mini-team--home {
    flex-direction: row;
    justify-content: flex-start;
    text-align: left;
}
/* AWAY → alineado a la derecha: nombre a la izquierda, escudo a la derecha (espejo) */
.et-pcv2-sports__mini-team--away {
    flex-direction: row-reverse;
    justify-content: flex-start;
    text-align: right;
}
.et-pcv2-sports__mini-team img {
    width: 56px;
    height: 56px;
    object-fit: contain;
    flex-shrink: 0;
}
.et-pcv2-sports__mini-team span {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 16px;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    line-height: 1.1;
    white-space: nowrap;
}

/* Marcador / VS */
.et-pcv2-sports__mini-score {
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    font-size: 28px;
    letter-spacing: -0.5px;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    min-width: 70px;
    text-align: center;
    white-space: nowrap;
}
.et-pcv2-sports__mini-score em {
    font-style: normal;
    opacity: 0.4;
    margin: 0 4px;
    font-weight: 400;
}
.et-pcv2-sports__mini-score--vs {
    font-size: 18px;
    letter-spacing: 1.5px;
    opacity: 0.5;
    font-weight: 700;
}

/* Pie de fila: pill + fecha */
.et-pcv2-sports__mini-foot {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.5px;
}

/* Pill EN VIVO */
.et-pcv2-sports__live-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px 4px 8px;
    background: #FF1F44;
    color: #fff;
    border-radius: 100px;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}
.et-pcv2-sports__live-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--et-paper, #fff);
    animation: et-pcv2-sports-pulse 1.2s ease-in-out infinite;
}
@keyframes et-pcv2-sports-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.5; transform: scale(1.3); }
}

/* Pill FINAL */
.et-pcv2-sports__final-pill {
    display: inline-flex;
    padding: 4px 10px;
    background: rgba(255,255,255,0.14);
    color: currentColor;
    border-radius: 100px;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}
.et-pcv2-sports__card--gold .et-pcv2-sports__final-pill {
    background: rgba(0,0,0,0.16);
}

/* Texto de fecha */
.et-pcv2-sports__date-text {
    opacity: 0.85;
    font-size: 11.5px;
}
.et-pcv2-sports__date-text strong {
    font-weight: 800;
    opacity: 1;
    letter-spacing: 0.3px;
}

/* Competición secundaria */
.et-pcv2-sports__competition {
    font-size: 10px;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    opacity: 0.55;
    font-weight: 700;
}

/* Empty state — sin partido */
.et-pcv2-sports__empty {
    margin: 0;
    text-align: center;
    font-size: 12px;
    font-style: italic;
    opacity: 0.55;
    padding: 16px 0;
}


/* ════════════════════════════════════════════════════════════════════
   BOLETÍN nativo PC v2 — fondo blanco premium · mismo ancho que módulos
═════════════════════════════════════════════════════════════════════ */
/* v2.42.4 · Centro de Boletines · 4 tarjetas premium estilo IDEAL
   Imágenes editoriales reales con tinte sobre B&N. Hereda ancho de
   .et-pcv2-page__inner (NO max-width propio). Solo PC. */

/* v2.43.5 · Band wrapper para artículos / archive / 404
   v2.43.26 · BUG ENCONTRADO · El band se renderiza a body level (fuera
   de .et-pcv2-page) por lo que NO heredaba box-sizing:border-box → el
   padding lateral se SUMABA al max-width (content-box default) →
   contenedor a 1336px en vez de 1280px → cards más anchas que en el home.
   Fix: box-sizing border-box explícito en wrapper Y descendientes. */
.et-pcv2-newsletter-band,
.et-pcv2-newsletter-band * {
    box-sizing: border-box;
}
.et-pcv2-newsletter-band {
    max-width: var(--pcv2-max);
    margin: 0 auto;
    padding: 0 var(--pcv2-gut);
}
/* v2.43.8 · Reducir el hueco entre "Más sobre esto" y el newsletter
   SOLO cuando el newsletter va dentro de la banda (artículos / archive /
   404). En la home no aplica porque allí no hay banda. */
.et-pcv2-newsletter-band .et-pcv2-news {
    margin-top: 20px;
    padding-top: 24px;
}

.et-pcv2-news {
    margin-top: 56px;
    padding-top: 34px;
    border-top: 1px solid var(--pcv2-line);
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}
/* v2.43.29 · Línea de cierre del boletín SOLO en el band del footer
   (artículos / archive / 404). En la home NO añadimos línea, porque el
   siguiente módulo (csc/rep/games) ya tiene su propio border-top que
   sirve de separador natural — añadir otra creaba dos líneas. */
.et-pcv2-newsletter-band .et-pcv2-news::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #D8D8D8;
    margin: 48px 0 0;
}
.et-pcv2-news__count {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12.5px;
    color: #59677A;
    margin: -8px 0 22px;
    letter-spacing: 0.1px;
}
.et-pcv2-news__count strong { color: #0B2A3D; font-weight: 800; }

/* Grid · 5 tarjetas iguales · misma anchura que el resto de bloques PC */
.et-pcv2-news__grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    align-items: stretch;
}
.et-pcv2-news__card {
    display: flex;
    flex-direction: column;
    background: var(--et-paper, #FFFFFF);
}

/* ─── Media: foto editorial · v2.43.27 · vuelto al ORIGINAL pre-2.43.19 */
.et-pcv2-news__media {
    position: relative;
    aspect-ratio: 8 / 5;
    overflow: hidden;
    background-color: var(--et-paper, #FFFFFF);
    background-size: cover;
    background-position: center;
    border-radius: 4px;
    border: 1px solid var(--et-rule, #E4E9EE);
}
.et-pcv2-news__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.et-pcv2-news__card:hover .et-pcv2-news__img { transform: none; }

/* ─── Logotipo de marca · v2.76.7 · wordmark navy+lima sobre panel blanco ───
   Un logo NO se recorta: panel blanco, banda más baja y el logo CONTENIDO
   con aire. Un filete de acento inferior da el toque premium sin ahogar la
   marca. Solo aplica a las tarjetas con logotipo (.has-logo); la ilustración
   SVG de respaldo conserva su presentación original. */
.et-pcv2-news__card.has-logo .et-pcv2-news__media {
    aspect-ratio: 16 / 6;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px 22px;
    background-color: var(--et-paper, #FFFFFF);
    border: 1px solid var(--et-rule, #E4E9EE);
    border-bottom: 2px solid var(--et-news-accent, var(--et-brand, #114F6E));
    border-radius: 4px;
}
.et-pcv2-news__card.has-logo .et-pcv2-news__img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}
/* El logotipo YA es el nombre → el <h3> de texto sobraba (redundante y
   menos pulido). Se mantiene en el DOM para lectores de pantalla y jerarquía
   SEO, pero oculto a la vista. */
.et-pcv2-news__card.has-logo .et-pcv2-news__title {
    position: absolute;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}
/* Sin el título, la banda del logo respira un poco más hacia el cuerpo. */
.et-pcv2-news__card.has-logo .et-pcv2-news__body { padding-top: 14px; }

/* Ilustración SVG editorial · default cuando no hay foto subida */
.et-pcv2-news__illustration {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 14px 26px;
}
.et-pcv2-news__illustration svg {
    width: 100%;
    height: 100%;
    max-height: 100%;
    display: block;
    opacity: .96;
}

/* ─── Body · separador · v2.43.24 · LÍNEA pegada a la imagen */
.et-pcv2-news__body {
    margin-top: 0;
    padding: 12px 0 0;
    border-top: none;
    display: flex;
    flex-direction: column;
    flex: 1;
}
.et-pcv2-news__title {
    font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
    font-size: 16px;
    font-weight: 400;
    margin: 0 0 6px;
    color: #0B2A3D;
    letter-spacing: -0.01em;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.et-pcv2-news__tag {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11.5px;
    font-weight: 600;
    color: #7A8794;
    margin: 0 0 10px;
    letter-spacing: 0.2px;
}
.et-pcv2-news__tag strong { color: var(--et-brand, #114F6E); font-weight: 700; margin-left: 2px; }
.et-pcv2-news__desc {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 14px;
    line-height: 1.55;
    color: #55636F;
    margin: 0 0 16px;
    flex: 1;
}

/* ─── CTA "Suscribirse" · pill toggle premium · oculto al activar ─── */
.et-pcv2-news__actions {
    border-top: 1px solid var(--et-rule, #EEF1F4);
    margin-top: 2px;
    padding-top: 12px;
}
.et-pcv2-news__cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--et-paper, #FFFFFF);
    border: 1px solid var(--et-rule, #DCE3E9);
    border-radius: 4px;
    padding: 8px 14px;
    cursor: pointer;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12px;
    font-weight: 700;
    color: var(--et-brand, #114F6E);
    letter-spacing: 0.2px;
    transition: border-color .15s ease, background .15s ease, color .15s ease;
}
.et-pcv2-news__cta:hover { border-color: var(--et-brand, #114F6E); background: #F6FAFC; }
.et-pcv2-news__cta-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--et-brand, #114F6E);
    flex-shrink: 0;
}
.et-pcv2-news__cta-dot::after { content: none; }

/* ─── Formulario inline (sale al esconderse el CTA) ─── */
/* v2.42.5 · Bug fix · `display: flex` sobreescribía el atributo HTML
   `hidden` haciendo que el form se viera al inicio. Reglas explícitas
   para respetar el toggle. */
.et-pcv2-news__form[hidden],
.et-pcv2-news__actions[hidden] { display: none !important; }
.et-pcv2-news__form {
    border-top: 1px solid var(--et-rule, #ECECEC);
    margin-top: 4px;
    padding-top: 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    animation: et-news-fadein .25s ease;
}
@keyframes et-news-fadein {
    from { opacity: 0; transform: translateY(-3px); }
    to   { opacity: 1; transform: translateY(0); }
}
.et-pcv2-news__field { display: flex; flex-direction: column; gap: 5px; }
.et-pcv2-news__label {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #95A0AB;
}
.et-pcv2-news__field input[type="email"] {
    padding: 10px 12px;
    border: 1px solid var(--et-rule, #DCE3E9);
    border-radius: 4px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 13.5px;
    background: #FBFCFD;
    color: #0B2A3D;
    outline: none;
    transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
}
.et-pcv2-news__field input[type="email"]:focus {
    border-color: var(--et-brand, #114F6E);
    background: var(--et-paper, #FFFFFF);
    box-shadow: 0 0 0 3px rgba(17,79,110,.12);
}

.et-pcv2-news__check {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    cursor: pointer;
}
.et-pcv2-news__check input[type="checkbox"] {
    margin-top: 3px;
    accent-color: var(--et-brand, #114F6E);
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}
.et-pcv2-news__check-text {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11.5px;
    line-height: 1.5;
    color: #59677A;
}
.et-pcv2-news__check-text a {
    color: var(--et-brand, #114F6E);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
    font-weight: 600;
}

/* Botón submit · AZUL THEME sobre blanco (premium) */
.et-pcv2-news__submit {
    padding: 11px 18px;
    background: var(--et-brand, #114F6E);
    color: #FFFFFF;
    border: 0;
    border-radius: 4px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.2px;
    cursor: pointer;
    transition: background .15s ease;
}
.et-pcv2-news__submit:hover {
    background: #082C43;
}
.et-pcv2-news__submit:active { background: #072536; }
.et-pcv2-news__submit:disabled {
    background: #9DB0BF;
    cursor: wait;
}

.et-pcv2-news__msg {
    margin: 0;
    padding: 9px 12px;
    border-radius: 4px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.4;
}
.et-pcv2-news__msg.is-ok  { background: #E8F5E9; color: #15803D; }
.et-pcv2-news__msg.is-err { background: #FEE2E2; color: #B91C1C; }

/* Solo PC: el módulo se oculta en pantallas pequeñas para que no rompa el layout (el banner móvil viejo sigue activo en breakpoints menores) */
@media (max-width: 1024px) {
    .et-pcv2-news { display: none; }
}


/* ════════════════════════════════════════════════════════════════════
   FOOTER PC v2 — MINIMALISTA PREMIUM
   Blanco · sin bordes · acordeones · integrado al ancho del wrapper
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-footer {
    max-width: var(--pcv2-max);
    margin: 32px auto 0;
    padding: 0 var(--pcv2-gut, 32px) 48px;
    background: transparent;
    color: var(--pcv2-ink);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* ─── BRAND ─── */
.et-pcv2-footer__brand {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 8px 0 28px;
}
.et-pcv2-footer__logo {
    max-width: 220px;
    max-height: 52px;
    width: auto;
    height: auto;
    display: block;
}
.et-pcv2-footer__brand-text {
    display: flex;
    align-items: baseline;
    font-family: 'Inter', sans-serif;
    font-size: 30px;
    line-height: 1;
    color: var(--pcv2-ink);
}
.et-pcv2-footer__brand-es {
    font-weight: 200;
    letter-spacing: -0.4px;
    color: var(--pcv2-ink4);
}
.et-pcv2-footer__brand-name {
    font-weight: 900;
    letter-spacing: -1.6px;
    color: var(--pcv2-blue);
}
.et-pcv2-footer__tagline {
    margin: 14px 0 0;
    font-size: 13px;
    color: var(--pcv2-ink4);
    line-height: 1.55;
    max-width: 520px;
    font-weight: 400;
}

/* ─── NAV ACORDEONES ─── */
.et-pcv2-footer__nav {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 0;
    margin: 8px 0 0;
}

.et-pcv2-footer__sec {
    position: relative;
    border-top: 1px solid var(--pcv2-line);
}
.et-pcv2-footer__sec:last-child { border-bottom: 1px solid var(--pcv2-line); }

/* Quitar marker nativo */
.et-pcv2-footer__sec > summary { list-style: none; }
.et-pcv2-footer__sec > summary::-webkit-details-marker { display: none; }
.et-pcv2-footer__sec > summary::marker { display: none; }

/* Summary clicable */
.et-pcv2-footer__sec > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 4px;
    cursor: pointer;
    transition: color 0.2s, padding 0.2s;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
}
.et-pcv2-footer__sec > summary:hover {
    color: var(--pcv2-blue);
    padding-left: 6px;
}
.et-pcv2-footer__sec[open] > summary {
    color: var(--pcv2-blue);
}

.et-pcv2-footer__sec-label {
    font-family: 'Inter', sans-serif;
    font-size: 13.5px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: inherit;
}

/* Icono + animación */
.et-pcv2-footer__sec-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: transparent;
    border: 1px solid var(--pcv2-line);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--pcv2-ink4);
    transition: all 0.25s cubic-bezier(0.2, 0.8, 0.2, 1);
    flex-shrink: 0;
}
.et-pcv2-footer__sec > summary:hover .et-pcv2-footer__sec-icon {
    border-color: var(--pcv2-blue);
    color: var(--pcv2-blue);
    transform: scale(1.06);
}
.et-pcv2-footer__sec[open] > summary .et-pcv2-footer__sec-icon {
    background: var(--pcv2-blue);
    border-color: var(--pcv2-blue);
    color: #fff;
    transform: rotate(180deg);
}

/* Contenido del acordeón con animación */
.et-pcv2-footer__sec-list {
    list-style: none;
    padding: 0 4px 22px;
    margin: -6px 0 0;
    columns: 1;
    column-gap: 32px;
    animation: et-pcv2-foot-fade 0.32s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.et-pcv2-footer__sec-list li {
    margin: 0 0 10px;
    break-inside: avoid;
}
.et-pcv2-footer__sec-list a {
    display: inline-block;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 13.5px;
    color: var(--pcv2-ink4);
    text-decoration: none;
    transition: color 0.15s, transform 0.15s;
    position: relative;
}
.et-pcv2-footer__sec-list a::before {
    content: '';
    display: inline-block;
    width: 6px;
    height: 1.5px;
    background: var(--pcv2-blue);
    vertical-align: middle;
    margin-right: 0;
    margin-left: 0;
    opacity: 0;
    transform: scaleX(0);
    transform-origin: left;
    transition: opacity 0.2s, transform 0.2s, margin-right 0.2s;
}
.et-pcv2-footer__sec-list a:hover {
    color: var(--pcv2-blue);
}
.et-pcv2-footer__sec-list a:hover::before {
    opacity: 1;
    transform: scaleX(1);
    margin-right: 8px;
}

@keyframes et-pcv2-foot-fade {
    from { opacity: 0; transform: translateY(-4px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* En desktop ≥720px, distribuir los enlaces en 2 columnas para sec muy largas */
@media (min-width: 720px) {
    .et-pcv2-footer__sec[open] .et-pcv2-footer__sec-list:has(li:nth-child(6)) {
        columns: 2;
    }
}

/* ─── HAIRLINE divisor ─── */
.et-pcv2-footer__divider {
    height: 1px;
    background: var(--pcv2-line);
    margin: 22px 0 22px;
}

/* ─── BOTTOM BAR ─── */
.et-pcv2-footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 18px;
}
.et-pcv2-footer__bottom-left {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    font-size: 12px;
    color: var(--pcv2-ink5);
}
.et-pcv2-footer__copy {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
.et-pcv2-footer__copy strong {
    color: var(--pcv2-blue);
    font-weight: 700;
}
.et-pcv2-footer__meta {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 11px;
    color: var(--pcv2-ink5);
    letter-spacing: 0.4px;
}
.et-pcv2-footer__meta i { font-style: normal; opacity: 0.5; }
.et-pcv2-footer__meta em {
    font-style: normal;
    font-weight: 500;
    padding: 2px 8px;
    background: #F2F4F8;
    border-radius: 100px;
    font-size: 10.5px;
}

/* Redes sociales: minimalistas, sin borde, solo color */
.et-pcv2-footer__social {
    display: flex;
    gap: 4px;
}
.et-pcv2-footer__social a {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: transparent;
    color: var(--pcv2-ink5);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
}
.et-pcv2-footer__social a:hover {
    color: var(--pcv2-blue);
    background: rgba(17,79,110,0.06);
    transform: translateY(-1px);
}

@media (max-width: 880px) {
    .et-pcv2-footer { padding-bottom: 32px; }
    .et-pcv2-footer__nav { grid-template-columns: 1fr; }
    .et-pcv2-footer__bottom { flex-direction: column; align-items: flex-start; gap: 16px; }
}

/* ════════════════════════════════════════════════════════════════
 * v2.33.20 · FOOTER PREMIUM MINIMALISTA (--v2)
 *
 * Layout limpio NYT/FT/Bloomberg:
 *   · TOP: brand grande + tagline
 *   · MIDDLE: 4 columnas (Servicios / InfoPuertos / Legal / Editor)
 *   · BOTTOM: copyright + redes sociales
 *   · Sin acordeones · sin overflow visual
 * ════════════════════════════════════════════════════════════════ */
.et-pcv2-footer--v2 {
    margin-top: 60px;
    padding: 56px 0 32px;
    background: #FAFAFA;
    border-top: 1px solid var(--pcv2-line, var(--et-rule, #ECECEC));
    font-family: 'Inter', -apple-system, sans-serif;
    color: var(--pcv2-ink, #0A0A0A);
}
.et-pcv2-footer--v2 .et-pcv2-footer__top {
    max-width: 1280px;
    margin: 0 auto 24px;
    padding: 0 40px;
}
.et-pcv2-footer--v2 .et-pcv2-footer__brand {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.et-pcv2-footer--v2 .et-pcv2-footer__logo {
    height: 38px;
    width: auto;
}
.et-pcv2-footer--v2 .et-pcv2-footer__brand-text {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 34px;
    font-weight: 800;
    color: var(--pcv2-ink, #0A0A0A);
    text-decoration: none;
    letter-spacing: -1px;
    line-height: 1;
}
.et-pcv2-footer--v2 .et-pcv2-footer__brand-es {
    font-style: italic;
    font-weight: 400;
    color: #525252;
}
.et-pcv2-footer--v2 .et-pcv2-footer__brand-name {
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
}
.et-pcv2-footer--v2 .et-pcv2-footer__tagline {
    margin: 0;
    font-size: 13.5px;
    line-height: 1.5;
    color: #525252;
    max-width: 460px;
}

/* Divider hairline */
.et-pcv2-footer--v2 .et-pcv2-footer__divider {
    max-width: 1280px;
    margin: 28px auto;
    padding: 0 40px;
    height: 1px;
    background: var(--pcv2-line, #ECECEC);
    position: relative;
}
.et-pcv2-footer--v2 .et-pcv2-footer__divider::before {
    content: '';
    position: absolute;
    left: 40px;
    right: 40px;
    top: 0;
    height: 1px;
    background: var(--pcv2-line, #ECECEC);
}

/* ── COLUMNAS de enlaces ── */
.et-pcv2-footer--v2 .et-pcv2-footer__cols {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1.4fr;
    gap: 48px;
}
.et-pcv2-footer--v2 .et-pcv2-footer__col-title {
    margin: 0 0 14px;
    font-family: 'Inter', sans-serif;
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: 1.8px;
    text-transform: uppercase;
    color: var(--pcv2-ink, #0A0A0A);
}
.et-pcv2-footer--v2 .et-pcv2-footer__col-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 9px;
}
.et-pcv2-footer--v2 .et-pcv2-footer__col-list a {
    color: #3A3A3A;
    text-decoration: none;
    font-family: 'Inter', sans-serif;
    font-size: 13.5px;
    font-weight: 400;
    line-height: 1.3;
    transition: color .15s;
}
.et-pcv2-footer--v2 .et-pcv2-footer__col-list a:hover {
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
}

/* Columna empresa (Editor) */
.et-pcv2-footer--v2 .et-pcv2-footer__col--empresa p {
    margin: 0 0 6px;
    font-family: 'Inter', sans-serif;
    font-size: 12.5px;
    line-height: 1.5;
    color: #525252;
}
.et-pcv2-footer--v2 .et-pcv2-footer__empresa-name {
    font-weight: 700 !important;
    color: var(--pcv2-ink, #0A0A0A) !important;
    font-size: 13.5px !important;
}
.et-pcv2-footer--v2 .et-pcv2-footer__empresa-addr {
    color: #525252 !important;
}
.et-pcv2-footer--v2 .et-pcv2-footer__empresa-email a {
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
    text-decoration: none;
    font-weight: 600;
}
.et-pcv2-footer--v2 .et-pcv2-footer__empresa-email a:hover {
    text-decoration: underline;
}

/* ── BOTTOM ── */
.et-pcv2-footer--v2 .et-pcv2-footer__bottom {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.et-pcv2-footer--v2 .et-pcv2-footer__copy {
    font-family: 'Inter', sans-serif;
    font-size: 11.5px;
    color: #757575;
    letter-spacing: 0.2px;
}
.et-pcv2-footer--v2 .et-pcv2-footer__copy strong {
    color: var(--pcv2-ink, #0A0A0A);
    font-weight: 700;
}
.et-pcv2-footer--v2 .et-pcv2-footer__version {
    margin-left: 12px;
    font-family: 'JetBrains Mono', 'SF Mono', monospace;
    font-size: 10px;
    color: #BDBDBD;
    letter-spacing: 0.5px;
}
.et-pcv2-footer--v2 .et-pcv2-footer__social {
    display: flex;
    align-items: center;
    gap: 14px;
}
.et-pcv2-footer--v2 .et-pcv2-footer__social a {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: #525252;
    border: 1px solid var(--et-rule, #DCDCDC);
    transition: border-color .18s, color .18s, background .18s, transform .18s;
}
.et-pcv2-footer--v2 .et-pcv2-footer__social a:hover {
    border-color: var(--pcv2-ink, #0A0A0A);
    background: var(--pcv2-ink, #0A0A0A);
    color: #FFFFFF;
    transform: translateY(-1px);
}

/* Responsive */
@media (max-width: 1024px) {
    .et-pcv2-footer--v2 .et-pcv2-footer__cols {
        grid-template-columns: 1fr 1fr;
        gap: 32px;
    }
}
@media (max-width: 600px) {
    .et-pcv2-footer--v2 {
        padding: 40px 0 24px;
    }
    .et-pcv2-footer--v2 .et-pcv2-footer__top,
    .et-pcv2-footer--v2 .et-pcv2-footer__cols,
    .et-pcv2-footer--v2 .et-pcv2-footer__bottom,
    .et-pcv2-footer--v2 .et-pcv2-footer__divider {
        padding-left: 20px;
        padding-right: 20px;
    }
    .et-pcv2-footer--v2 .et-pcv2-footer__cols {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .et-pcv2-footer--v2 .et-pcv2-footer__bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }
}


/* ═════════════════════════════════════════════════════════════════
 * v2.43.13 · FOOTER PC v3 — Rediseño tipo "El Diario Vasco"
 *   ┌────────────────────────────────────────────────────────────┐
 *   │  INFOPUERTOS                       Webs del Grupo           │
 *   │  Copyright © …                    [INFOPUERTOS]            │
 *   │  Domicilio social …               [FINANCIALPORTS]         │
 *   │             [F][X][IG][IN][TT]                             │
 *   │  ──────────────────────────────────────────                │
 *   │  Contactar · Quiénes somos · Aviso legal · …               │
 *   └────────────────────────────────────────────────────────────┘
 * ═════════════════════════════════════════════════════════════════ */
/* v2.43.23 · Footer SIN línea superior (se ha movido al final del bloque
   boletines). El espacio entre boletines y footer lo da margin-top del footer. */
.et-pcv2-footer--v3 {
    max-width: var(--pcv2-max);
    margin: 64px auto 0;            /* espacio cómodo entre la línea del boletín y el footer */
    padding: 32px var(--pcv2-gut, 32px) 32px;
    background: transparent;
    color: var(--pcv2-ink);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
/* Línea superior DESACTIVADA · v2.43.23 */
.et-pcv2-footer--v3::before {
    content: none !important;
    display: none !important;
}
/* Refuerza que el divider inferior tenga EXACTAMENTE el mismo aspecto */
.et-pcv2-footer--v3 .et-pcv2-footer__divider {
    width: 100% !important;
    height: 1px !important;
    background: #D8D8D8 !important;
    margin: 0 0 18px !important;
    box-sizing: border-box;
}

/* ─── TOP: brand + buttons · v2.43.19 · alineados ABAJO (al baseline)
   El usuario quiere que el label "Webs del Grupo" + botones se alineen
   con la última línea del bloque izquierdo (la dirección postal). */
.et-pcv2-footer--v3 .et-pcv2-footer__top {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 48px;
    align-items: end;          /* ambas columnas pegadas al BOTTOM de la fila */
    align-content: end;
    padding-bottom: 20px;
}
.et-pcv2-footer--v3 .et-pcv2-footer__brand-area,
.et-pcv2-footer--v3 .et-pcv2-footer__btn-area {
    align-self: end;           /* refuerza alineado bottom */
}

/* Brand area (izquierda) */
.et-pcv2-footer--v3 .et-pcv2-footer__brand-area {
    min-width: 0;
}
.et-pcv2-footer--v3 .et-pcv2-footer__logo {
    max-width: 280px;
    max-height: 56px;
    width: auto;
    height: auto;
    display: block;
    margin-bottom: 16px;
}
.et-pcv2-footer--v3 .et-pcv2-footer__wordmark {
    display: inline-block;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 26px;
    font-weight: 900;
    letter-spacing: -0.6px;
    color: #0A0A0A;
    text-decoration: none;
    line-height: 1;
    margin-bottom: 16px;
}
.et-pcv2-footer--v3 .et-pcv2-footer__corp-name {
    margin: 0 0 6px;
    font-size: 12.5px;
    font-weight: 400;
    color: #525252;
    line-height: 1.5;
}
.et-pcv2-footer--v3 .et-pcv2-footer__corp-addr {
    margin: 0;
    font-size: 12.5px;
    font-weight: 400;
    color: #525252;
    line-height: 1.5;
}

/* Buttons area (derecha) */
.et-pcv2-footer--v3 .et-pcv2-footer__btn-area {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
    min-width: 220px;
}
.et-pcv2-footer--v3 .et-pcv2-footer__btn-label {
    margin: 0 0 4px;
    font-size: 12.5px;
    font-weight: 500;
    color: #525252;
    line-height: 1.4;
}
.et-pcv2-footer--v3 .et-pcv2-footer__btns {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}
/* v2.43.18 · Botones más finos y compactos · elegantes */
.et-pcv2-footer--v3 .et-pcv2-footer__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 128px;             /* antes 150 */
    height: 26px;             /* antes 32 */
    padding: 0 10px;
    background: var(--et-paper, #FFFFFF);
    color: #0A0A0A;
    border: 1px solid var(--et-rule, #D4D4D4);
    border-radius: 3px;       /* esquinas finas */
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 10px;          /* antes 11.5 */
    font-weight: 600;
    letter-spacing: 0.25px;
    text-decoration: none;
    text-transform: none;
    box-sizing: border-box;
    transition: background 0.18s ease, border-color 0.18s ease;
}
.et-pcv2-footer--v3 .et-pcv2-footer__btn:hover {
    background: #FAFAFA;
    border-color: #0A0A0A;
}
.et-pcv2-footer--v3 .et-pcv2-footer__btn-text {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
    text-align: center;
}
.et-pcv2-footer--v3 .et-pcv2-footer__btn-label {
    font-size: 11px !important;
}
.et-pcv2-footer--v3 .et-pcv2-footer__btns {
    gap: 8px !important;       /* botones más juntos */
}
.et-pcv2-footer--v3 .et-pcv2-footer__btn-area {
    gap: 6px !important;       /* label más pegado a los botones */
    min-width: 0 !important;
}

/* ─── Social row (centrado) ─── */
.et-pcv2-footer--v3 .et-pcv2-footer__social-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 4px 0 24px;
}
.et-pcv2-footer--v3 .et-pcv2-footer__social-icon {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #0A0A0A;
    text-decoration: none;
    transition: color 0.18s ease, background 0.18s ease, transform 0.18s ease;
}
.et-pcv2-footer--v3 .et-pcv2-footer__social-icon:hover {
    color: var(--pcv2-blue);
    background: rgba(17,79,110, 0.08);
    transform: translateY(-1px);
}

/* ─── Divider ─── */
.et-pcv2-footer--v3 .et-pcv2-footer__divider {
    height: 1px;
    background: #D8D8D8;
    margin: 0 0 18px;
}

/* ─── Bottom links (línea legal) ─── */
.et-pcv2-footer--v3 .et-pcv2-footer__bottom-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 6px 10px;
    padding-top: 2px;
}
.et-pcv2-footer--v3 .et-pcv2-footer__bottom-link {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 12px;
    font-weight: 500;
    color: #525252;
    text-decoration: none;
    transition: color 0.15s ease;
}
.et-pcv2-footer--v3 .et-pcv2-footer__bottom-link:hover {
    color: var(--pcv2-blue);
    text-decoration: underline;
}
.et-pcv2-footer--v3 .et-pcv2-footer__bottom-sep {
    color: #BDBDBD;
    font-size: 12px;
}

/* Responsive (<1024px) — apila brand y botones */
@media (max-width: 1023px) {
    .et-pcv2-footer--v3 .et-pcv2-footer__top {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .et-pcv2-footer--v3 .et-pcv2-footer__btn-area {
        align-items: flex-start;
        min-width: 0;
    }
    .et-pcv2-footer--v3 .et-pcv2-footer__btns {
        justify-content: flex-start;
    }
    .et-pcv2-footer--v3 .et-pcv2-footer__bottom-links {
        justify-content: flex-start;
    }
}


/* ═════════════════════════════════════════════════════════════════
 * v2.40.0 · Cabecera unificada PC (.et-pcv2-shx) — mismo lenguaje
 *   visual que el header móvil (et-m-sh2): título a la izquierda,
 *   patrocinador opcional a la derecha, fila de puntos decorativa
 *   debajo. Se usa en reg, econ, intl y csc.
 * ═════════════════════════════════════════════════════════════════ */
.et-pcv2-shx {
    margin: 0 0 24px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
.et-pcv2-shx__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 10px;
}
.et-pcv2-shx__title-wrap { min-width: 0; flex: 1; }
/* v2.41.1 · Línea decorativa encima del título · 10% del ancho ·
   Azul theme por defecto · cada módulo puede sobreescribir --shx-accent.
   El módulo Nacional·Internacional usa rojo para mantener su identidad. */
.et-pcv2-shx {
    --shx-accent: var(--pcv2-blue);
}
.et-pcv2-shx--intl {
    --shx-accent: #B91D2D;
}
.et-pcv2-shx__title-wrap::before {
    content: "";
    display: block;
    width: 10%;
    min-width: 56px;
    max-width: 88px;
    height: 4px;
    background: var(--shx-accent);
    margin: 0 0 10px;
    border-radius: 1px;
}
/* v2.216.0 · Rótulo sin el filete azul grueso (`rule => false`). No se
   oculta con `display:none` sobre el ::before y ya: hay que recuperar el
   hueco que ocupaba, o el título se queda flotando con 14px de aire de
   más justo encima. */
.et-pcv2-shx.is-norule .et-pcv2-shx__title-wrap::before { content: none; }
/* v2.217.0 · …y se devuelve el hueco que ocupaba el filete: 4px de barra
   más sus 10px de margen. Sin esto el título sube 14px y queda pegado a
   la línea fina de arriba, que es lo que se veía en «Opinión». */
.et-pcv2-shx.is-norule .et-pcv2-shx__title-wrap { padding-top: 14px; }
.et-pcv2-shx__title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -0.01em;
    margin: 0;
    color: #0A0A0A;
    text-transform: none;
    line-height: 1.15;
}
.et-pcv2-shx__sub {
    margin: 4px 0 0;
    font-size: 13px;
    font-weight: 500;
    color: #525252;
    line-height: 1.4;
}
.et-pcv2-shx__sponsor {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
    text-decoration: none;
    color: inherit;
    max-width: 280px;
}
a.et-pcv2-shx__sponsor { transition: opacity .15s ease; }
a.et-pcv2-shx__sponsor:hover { opacity: .75; }
.et-pcv2-shx__sponsor-prefix {
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #8A8A8A;
}
.et-pcv2-shx__sponsor-text {
    font-size: 14px;
    font-weight: 700;
    color: #0A0A0A;
    letter-spacing: 0.2px;
}
.et-pcv2-shx__sponsor-logo {
    height: 30px;
    width: auto;
    max-width: 180px;
    display: block;
    object-fit: contain;
}
.et-pcv2-shx__dots {
    height: 6px;
    /* v2.40.2 · puntos en gris muy claro, casi sutiles */
    background-image: radial-gradient(circle, #D8D8D8 1px, transparent 1.3px);
    background-size: 8px 6px;
    background-repeat: repeat-x;
    background-position: left center;
    opacity: 1;
}

/* ═════════════════════════════════════════════════════════════════
 * v2.39.0 · Módulo Nacional · Internacional (intl.php)
 *   Hereda ancho de .et-pcv2-page__inner (sin max-width/padding propio)
 *   para mantener simetría con reg/econ/csc.
 * ═════════════════════════════════════════════════════════════════ */
.et-pcv2-intl {
    margin-top: 44px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
}

/* Grid principal · 3 columnas (A · B · C) */
.et-pcv2-intl__grid {
    display: grid;
    grid-template-columns: 1.3fr 1fr 280px;
    gap: 28px;
    align-items: start;
}

/* Kicker · estilo consistente con el resto */
.et-pcv2-intl__kicker {
    display: inline-block;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #B91D2D;
    margin-bottom: 6px;
}

/* ═══════════════ A · 2 noticias (1ª con foto grande) ═══════════════ */
.et-pcv2-intl__col--a {
    display: flex;
    flex-direction: column;
    gap: 18px;
    border-right: 1px solid var(--et-rule, #E5E5E5);
    padding-right: 24px;
}
.et-pcv2-intl__a1 { display: flex; flex-direction: column; gap: 10px; }
.et-pcv2-intl__a1-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    background-size: cover;
    background-position: center;
    background-color: #ECECEC;
    border-radius: 4px;
    text-decoration: none;
}
.et-pcv2-intl__a1-body { display: flex; flex-direction: column; }
.et-pcv2-intl__a1-title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.18;
    margin: 0 0 6px;
    color: #0A0A0A;
}
.et-pcv2-intl__a1-title a { color: inherit; text-decoration: none; }
.et-pcv2-intl__a1-title a:hover { color: var(--et-brand, #114F6E); }
.et-pcv2-intl__a1-dek {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 13.5px;
    line-height: 1.5;
    color: #525252;
    margin: 0;
}
.et-pcv2-intl__a2 {
    padding-top: 14px;
    border-top: 1px solid var(--et-rule, #ECECEC);
}
.et-pcv2-intl__a2-title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.25;
    margin: 0;
    color: #0A0A0A;
}
.et-pcv2-intl__a2-title a { color: inherit; text-decoration: none; }
.et-pcv2-intl__a2-title a:hover { color: var(--et-brand, #114F6E); }

/* ═══════════════ B · 2 noticias (1ª sin foto destacada, 2ª con foto) ═══════════════ */
.et-pcv2-intl__col--b {
    display: flex;
    flex-direction: column;
    gap: 18px;
    border-right: 1px solid var(--et-rule, #E5E5E5);
    padding-right: 24px;
}
.et-pcv2-intl__b1 { display: flex; flex-direction: column; }
.et-pcv2-intl__b1-title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 21px;
    font-weight: 900;            /* destacada → un punto más gruesa */
    line-height: 1.18;
    margin: 0 0 8px;
    color: #0A0A0A;
    letter-spacing: -0.005em;
}
.et-pcv2-intl__b1-title a { color: inherit; text-decoration: none; }
.et-pcv2-intl__b1-title a:hover { color: var(--et-brand, #114F6E); }
.et-pcv2-intl__b1-dek {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    color: #2A2A2A;            /* un poco más oscura que el dek de A */
    margin: 0;
}
.et-pcv2-intl__b2 {
    padding-top: 14px;
    border-top: 1px solid var(--et-rule, #ECECEC);
    display: flex;
    gap: 12px;
    align-items: flex-start;
}
.et-pcv2-intl__b2-photo {
    display: block;
    flex: 0 0 110px;
    width: 110px;
    aspect-ratio: 1 / 1;
    background-size: cover;
    background-position: center;
    background-color: #ECECEC;
    border-radius: 3px;
    text-decoration: none;
}
.et-pcv2-intl__b2-body { flex: 1; min-width: 0; }
.et-pcv2-intl__b2-title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.22;
    margin: 0;
    color: #0A0A0A;
}
.et-pcv2-intl__b2-title a { color: inherit; text-decoration: none; }
.et-pcv2-intl__b2-title a:hover { color: var(--et-brand, #114F6E); }

/* ═══════════════ C · Publicidad vertical ═══════════════ */
/* v2.42.9 · La columna C ya no fuerza min-height. Antes el anuncio tenía
   320px mínimo y estiraba toda la grilla cuando el contenido real era
   menor, dejando huecos vacíos al final de A y B. Ahora C se ajusta al
   tamaño natural del anuncio (o queda vacía si está desactivado).
   `align-self: start` evita que la celda de C se estire al alto de fila. */
.et-pcv2-intl__col--c {
    align-self: start;
}
.et-pcv2-intl__col--c .et-pcv2-ad-slot {
    width: 100%;
}

/* ════════════════════════════════════════════════════════════════════
   v2.128.0 · «OTROS PUERTOS» · la columna que era publicidad pasa a ser
   un escaparate por comunidad autónoma. Todas se pintan a la vez y el
   desplegable sólo enseña una: el cambio es instantáneo y no depende
   de ninguna petición.
   ════════════════════════════════════════════════════════════════════ */
.et-pcv2-otros__title {
    margin: 0 0 10px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.4px;
    color: var(--pcv2-blue);
    text-transform: uppercase;
}

/* ── El selector · v2.129.0 ─────────────────────────────────────────
   Rehecho: la caja con borde de la primera versión era lenguaje de
   formulario, no de periódico. Ahora es un disparador tipográfico —
   el nombre de la comunidad sobre un filete que se tiñe de azul al
   abrirse, y un panel que aparece sin estridencias.
   ─────────────────────────────────────────────────────────────────── */
.et-pcv2-otros__picker { position: relative; margin-bottom: 15px; }
.et-pcv2-otros__toggle {
    position: relative;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    padding: 0 0 8px;
    background: none;
    border: 0;
    border-bottom: 1px solid var(--et-rule, #E1E8ED);
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -0.25px;
    color: var(--pcv2-ink1, #0E2436);
    text-align: left;
    cursor: pointer;
    transition: color .18s ease;
}
/* El filete azul crece de izquierda a derecha: el gesto de «se abre». */
.et-pcv2-otros__toggle::after {
    content: "";
    position: absolute;
    left: 0; right: 0; bottom: -1px;
    height: 2px;
    background: linear-gradient(90deg, var(--pcv2-blue, var(--et-brand, #114F6E)), var(--et-brand, #114F6E));
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform .3s cubic-bezier(.2,.7,.3,1);
}
.et-pcv2-otros__toggle:hover { color: var(--pcv2-blue, var(--et-brand, #114F6E)); }
.et-pcv2-otros__toggle:hover::after { transform: scaleX(.28); }
.et-pcv2-otros__toggle[aria-expanded="true"]::after { transform: scaleX(1); }
.et-pcv2-otros__toggle:focus-visible { outline: none; color: var(--pcv2-blue, var(--et-brand, #114F6E)); }
.et-pcv2-otros__toggle:focus-visible::after { transform: scaleX(1); }

.et-pcv2-otros__caret {
    flex: 0 0 auto;
    align-self: center;
    color: #9AAAB8;
    transition: transform .28s cubic-bezier(.2,.7,.3,1), color .18s ease;
}
.et-pcv2-otros__toggle:hover .et-pcv2-otros__caret,
.et-pcv2-otros__toggle[aria-expanded="true"] .et-pcv2-otros__caret { color: var(--pcv2-blue, var(--et-brand, #114F6E)); }
.et-pcv2-otros__toggle[aria-expanded="true"] .et-pcv2-otros__caret { transform: rotate(180deg); }

.et-pcv2-otros__menu {
    position: absolute;
    z-index: 20;
    top: calc(100% + 7px);
    left: 0;
    right: 0;
    max-height: 260px;
    overflow-y: auto;
    margin: 0;
    padding: 6px 0;
    list-style: none;
    background: var(--et-paper, #fff);
    border: 1px solid var(--et-rule, #E8EEF2);
    border-radius: 4px;
    box-shadow: 0 16px 38px rgba(14,36,54,.15), 0 2px 6px rgba(14,36,54,.05);
    animation: et-otros-in .2s cubic-bezier(.2,.7,.3,1);
}
@keyframes et-otros-in {
    from { opacity: 0; transform: translateY(-5px); }
    to   { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
    .et-pcv2-otros__menu { animation: none; }
    .et-pcv2-otros__toggle::after { transition: none; }
    .et-pcv2-otros__caret { transition: none; }
}
.et-pcv2-otros__menu[hidden] { display: none; }

/* La opción activa se marca con una pluma azul a la izquierda, no con un
   bloque de color: pesa menos y es más de diario. */
.et-pcv2-otros__opt {
    position: relative;
    padding: 7px 14px 7px 17px;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: -0.1px;
    color: var(--pcv2-ink2, #33485C);
    cursor: pointer;
    transition: background .14s ease, color .14s ease;
}
.et-pcv2-otros__opt::before {
    content: "";
    position: absolute;
    left: 0; top: 50%;
    width: 2px; height: 0;
    background: var(--pcv2-blue, var(--et-brand, #114F6E));
    transform: translateY(-50%);
    transition: height .2s cubic-bezier(.2,.7,.3,1);
}
.et-pcv2-otros__opt:hover,
.et-pcv2-otros__opt:focus-visible {
    outline: none;
    background: rgba(17,79,110,.045);
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
}
.et-pcv2-otros__opt:hover::before { height: 14px; }
.et-pcv2-otros__opt.is-active {
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
    font-weight: 800;
}
.et-pcv2-otros__opt.is-active::before { height: 100%; }

/* ── Las noticias: la tarjeta de la columna B a un 70% ──────────────
   El −30% se aplica a foto, titular y firma para que la pieza encoja
   entera y no sólo el texto. */
.et-pcv2-otros__panel[hidden] { display: none; }
.et-pcv2-otros__panel .et-pcv2-intl__b2 + .et-pcv2-intl__b2 {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--pcv2-line-soft, var(--et-rule, #E4E9EE));
}
.et-pcv2-otros__panel .et-pcv2-intl__b2-photo {
    flex: 0 0 77px;
    width: 77px;
}
/* v2.130.0 · El −30% dejaba el titular en 11,2px y se leía apretado. Sube a
   13px (un 81% de la columna B) y la firma le acompaña: la pieza sigue siendo
   claramente menor que las noticias grandes, pero ya se lee cómoda. */
.et-pcv2-otros__panel .et-pcv2-intl__b2-title { font-size: 13px; line-height: 1.3; }
.et-pcv2-otros__panel .et-pcv2-hero__byline,
.et-pcv2-otros__panel .et-pcv2-hero__byline * { font-size: 9.5px; }

/* ════════════════════════════════════════════════════════════════════
   v2.259.0 · «OTROS PUERTOS» · rejilla 4 + 3 (oport.php)
   ────────────────────────────────────────────────────────────────────
   Debajo de «Puertos de España». Siete comunidades en dos filas —cuatro
   arriba, tres abajo— con el nombre del puerto de kicker, sus dos últimas
   noticias y la firma, todo separado por filetes claros. Misma familia
   (Inter) que el bloque de arriba, pero un par de puntos más pequeña:
   premium, minimalista, sin ruido.
   ════════════════════════════════════════════════════════════════════ */
.et-pcv2-oport {
    margin-top: 26px;
    padding-top: 24px;
    /* v2.260.0 · Filete fino y claro, como el resto de la portada; sin rótulo
       propio, va pegado a «Puertos de España». */
    border-top: 1px solid var(--et-rule, #E5E5E5);
}

.et-pcv2-oport__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 26px;
    row-gap: 0;
}
/* Cada tarjeta lleva un filete vertical claro a su derecha; la última de
   cada fila (4ª y 7ª) no, para no dejar una línea suelta contra el borde. */
.et-pcv2-oport__card {
    padding: 0 26px 0 0;
    border-right: 1px solid var(--et-rule, #ECECEC);
}
.et-pcv2-oport__card:nth-child(4n),
.et-pcv2-oport__card:last-child {
    border-right: 0;
    padding-right: 0;
}
/* La segunda fila (5ª en adelante) cae bajo un filete horizontal claro. */
.et-pcv2-oport__card:nth-child(n+5) {
    margin-top: 22px;
    padding-top: 22px;
    border-top: 1px solid var(--et-rule, #ECECEC);
}

/* Nombre del puerto · kicker en navy del theme, con filete propio debajo */
.et-pcv2-oport__port {
    margin: 0 0 9px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--et-rule, #E5E5E5);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.7px;
    text-transform: uppercase;
    color: var(--et-brand, #114F6E);
    line-height: 1.2;
}
.et-pcv2-oport__port a { color: inherit; text-decoration: none; }
.et-pcv2-oport__port a:hover { color: #B91D2D; }

/* Noticia · título Inter más pequeño que el de «Puertos de España» */
.et-pcv2-oport__item { padding-top: 0; }
.et-pcv2-oport__item + .et-pcv2-oport__item {
    margin-top: 9px;
    padding-top: 9px;
    border-top: 1px solid var(--et-rule, #F0F0F0);   /* filete clarito entre las dos noticias */
}
.et-pcv2-oport__title {
    margin: 0 0 4px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.28;
    color: #0A0A0A;
}
.et-pcv2-oport__title a { color: inherit; text-decoration: none; }
.et-pcv2-oport__title a:hover { color: var(--et-brand, #114F6E); }

/* Firma discreta pero legible */
.et-pcv2-oport .et-pcv2-hero__byline {
    margin-top: 4px;
    font-size: 11.5px;
    gap: 6px;
}

/* Responsive · ocultar en móvil (el módulo es solo PC) */
@media (max-width: 1024px) {
    .et-pcv2-intl { display: none; }
    .et-pcv2-oport { display: none; }
}

/* ═════════════════════════════════════════════════════════════════
 * v2.41.0 · Módulo 07 · Reportajes (rep.php)
 *   1 reportaje destacado · 3 columnas: título | foto | brand+dek
 *   Inspirado en la maqueta XL del País
 *   Solo PC · oculto en móvil
 * ═════════════════════════════════════════════════════════════════ */

/* ═════════════════════════════════════════════════════════════════
 * v2.43.43 · Módulo SPORTSV2 · Jornada deportiva · solo PC
 *
 *   ─── línea negra superior ───
 *   Jornada deportiva                                  (<) (>)
 *   ┌───────────────┬───────────────┬───────────────┬───────────────┐
 *   │ LaLiga·Final  │ LaLiga·Final  │ LaLiga·Final  │ LaLiga·Final  │
 *   │ 🛡 Almería  1 │ 🛡 Zaragoza 0 │ 🛡 Deport.  1 │ 🛡 Castell. 2 │
 *   │ 🛡 Vallad.  0 │ 🛡 Málaga   2 │ 🛡 LasPal.  2 │ 🛡 Eibar    1 │
 *   └───────────────┴───────────────┴───────────────┴───────────────┘
 * ═════════════════════════════════════════════════════════════════ */
.et-pcv2-sv2 {
    margin-top: 44px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* v2.43.53 · Título + logo MUY pequeño · misma línea garantizada via flex.
   Algún CSS global del theme/plugin estaba forzando img { display: block },
   por eso el logo bajaba debajo del texto. Usamos flex en el h2 para
   garantizar layout horizontal sin depender de inline-block. */
.et-pcv2-shx--sv2 .et-pcv2-shx__title {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
}
.et-pcv2-sv2__title-text {
    display: inline-block;
}
.et-pcv2-sv2__title-logo {
    display: inline-block !important;
    height: 36px !important;          /* v2.43.55 · más grande · ~1.6× la altura del texto */
    width: auto !important;
    max-width: 140px !important;
    object-fit: contain !important;
    margin: 0 !important;             /* el gap del flex se encarga del espacio */
    vertical-align: middle;
    flex-shrink: 0;
}

.et-pcv2-sv2__nav {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
}
.et-pcv2-sv2__arrow {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid var(--et-rule, #D8D8D8);
    background: var(--et-paper, #FFFFFF);
    color: #0A0A0A;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: border-color .15s, background .15s, color .15s, opacity .15s;
    padding: 0;
}
.et-pcv2-sv2__arrow:hover {
    border-color: #0A0A0A;
    background: #0A0A0A;
    color: #FFFFFF;
}
.et-pcv2-sv2__arrow:disabled {
    opacity: .35;
    cursor: not-allowed;
    pointer-events: none;
}

/* Slider horizontal · 4 partidos visibles, resto accesibles via flechas.
   v2.43.44 — flex con anchura fija por tarjeta. Por defecto la sección
   hereda el ancho de .et-pcv2-page__inner y `min-width: 0` evita que el
   contenido la fuerce a crecer. El grid sí puede crecer por su contenido
   (las tarjetas con flex: 0 0 ...). */
.et-pcv2-sv2 { min-width: 0; }
.et-pcv2-sv2__grid {
    display: flex;
    flex-wrap: nowrap;
    gap: 20px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    scroll-behavior: smooth;
    /* Padding-bottom para que el sombreado/foco de la última tarjeta no se corte */
    padding-bottom: 4px;
}
.et-pcv2-sv2__grid::-webkit-scrollbar { display: none; }

.et-pcv2-sv2__match {
    /* 4 tarjetas visibles · gap 20px · 3 gaps entre 4 cards */
    flex: 0 0 calc((100% - 3 * 20px) / 4);
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
    background: #FAFAFA;
    border: 1px solid var(--et-rule, #ECECEC);
    border-radius: 8px;
    padding: 14px 16px;
}
@media (max-width: 1100px) {
    .et-pcv2-sv2__match {
        flex: 0 0 240px;
    }
}
.et-pcv2-sv2__match-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 6px;
}
.et-pcv2-sv2__match-comp {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 12px;
    font-weight: 500;
    color: #525252;
    letter-spacing: 0.1px;
}
.et-pcv2-sv2__match-status {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 11px;
    font-weight: 600;
    color: #8A8A8A;
    letter-spacing: 0.2px;
    text-transform: none;
}

/* Filas de equipos */
.et-pcv2-sv2__team {
    display: grid;
    grid-template-columns: 28px 1fr auto;
    align-items: center;
    gap: 12px;
}
.et-pcv2-sv2__badge {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #8A8A8A;
    background: var(--et-paper, #FFFFFF);
    border-radius: 4px;
    padding: 2px;
    box-sizing: border-box;
}
.et-pcv2-sv2__badge img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}
.et-pcv2-sv2__badge svg {
    width: 20px;
    height: 20px;
    display: block;
}
.et-pcv2-sv2__team-name {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #0A0A0A;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.et-pcv2-sv2__score {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 22px;
    font-weight: 800;
    color: #0A0A0A;
    line-height: 1;
    min-width: 18px;
    text-align: right;
}

/* Oculto en móvil */
@media (max-width: 1023px) {
    .et-pcv2-sv2 { display: none; }
}


.et-pcv2-rep {
    margin-top: 48px;
    padding-top: 28px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* ═══ v2.146.0 · Modo destacado (Atando cabos) ═══
   Recuadro con fondo azul muy claro y borde. Sangra a los lados lo justo
   para que el aire interior no coma ancho a las tres columnas: el bleed se
   calcula igual que en Puertos de Canarias y nunca provoca scroll lateral
   porque está topado por el hueco real entre el contenedor y la ventana. */
.et-pcv2-rep--boxed {
    --rep-bleed: max(0px, min(30px, calc((100vw - var(--pcv2-max)) / 2 + var(--pcv2-gut) - 16px)));
    margin: 34px calc(-1 * var(--rep-bleed)) 8px;
    padding: 30px calc(var(--rep-bleed) + 26px);
    background: rgba(17, 79, 110, .045);
    border: 1px solid var(--et-rule, rgba(17, 79, 110, .16));
    border-radius: 3px;
}

/* Línea negra delgada superior (estilo periódico) */
.et-pcv2-rep__divider {
    height: 2px;
    background: #0A0A0A;
    margin: 0 0 28px;
}

.et-pcv2-rep__grid {
    display: grid;
    grid-template-columns: 1fr 1.4fr 1fr;
    gap: 36px;
    align-items: start;
}
.et-pcv2-rep__col { min-width: 0; }

/* ═══════════════ A · Título grande alineado a la derecha ═══════════════ */
.et-pcv2-rep__col--a {
    padding-top: 8px;
    text-align: right;
}
.et-pcv2-rep__title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 38px;
    /* v2.193.0 · 900, NO 800.
       ─────────────────────────────────────────────────────────────────
       El CEO veía este titular «con un grosor diferente al hero», y
       tenía razón — pero la causa no era la que parecía. Los dos
       estaban en el MISMO peso 800: lo comprobé regla por regla en
       pc-v2.css y en pc.css, y no hay ningún override ni text-stroke.

       La diferencia es ÓPTICA. El grosor del trazo de una tipografía no
       crece en proporción al cuerpo, así que 800 a 38px —este titular—
       lee más fino que 800 a 30px —el hero—. Cuanto más grande el
       texto, más ligero parece con el mismo peso.

       Por eso el arreglo no es igualar el número, sino subirlo: a este
       cuerpo hace falta 900 para pesar lo que el hero pesa a 30px.
       Inter tiene el 900 y está cargado (functions.php pide 200→900).

       Vale también para «En la cresta de la ola»: es la misma plantilla
       rep.php con otra configuración, así que hereda el cambio. */
    font-weight: 900;
    line-height: 1.05;
    margin: 0;
    color: #0A0A0A;
    letter-spacing: -0.015em;
}
.et-pcv2-rep__title a { color: inherit; text-decoration: none; }
.et-pcv2-rep__title a:hover { color: var(--pcv2-blue); }

/* ═══════════════ B · Foto destacada central ═══════════════ */
.et-pcv2-rep__photo {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    background-size: cover;
    background-position: center;
    background-color: #ECECEC;
    text-decoration: none;
}

/* ═══════════════ C · Brand mark + captions + dek + byline ═══════════════ */
.et-pcv2-rep__col--c {
    padding-top: 4px;
}
.et-pcv2-rep__brand {
    display: inline-flex;
    align-items: flex-end;
    line-height: 0.9;
    /* v2.115.0 · El titulo se pega al rotulo: antes 28px de aire. */
    margin: 0 0 10px;
}
.et-pcv2-rep__brand-text {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 56px;
    font-weight: 900;
    color: #0A0A0A;
    letter-spacing: -0.02em;
    line-height: 0.9;
    /* v2.193.0 · MÁS GRUESAS, PERO 900 YA ERA EL TECHO.
       ─────────────────────────────────────────────────────────────────
       El CEO pidió engordar estas letras. A diferencia de los titulares
       —que estaban en 800 y suben a 900—, aquí ya estábamos en 900, y
       Inter no tiene nada por encima: el 1000 no existe.

       La única forma de seguir engordando sin cambiar de tipografía es
       dibujar el contorno con el mismo color del relleno, que engorda el
       trazo por fuera. Es el mismo recurso que ya aprobó en el titular
       del banner de Group Dunes (.et-hb__title, pc.css).

       0.9px a 56px es medio punto de peso: se nota y no emborrona la
       contraforma de la R ni de la P. `currentColor` para que siga al
       color del texto si algún día cambia. */
    -webkit-text-stroke: 0.9px currentColor;
}
/* v2.116.0 · Vuelve el punto de color junto al rótulo: grande y en el verde
   de la casa, que contrasta con el negro del «AR» sin gritar. */
.et-pcv2-rep__brand-dot {
    display: inline-block;
    width: 15px;
    height: 15px;
    background: var(--et-brand, #114F6E);
    border-radius: 50%;
    margin: 0 0 7px 6px;
    flex-shrink: 0;
}
.et-pcv2-rep__caption {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    /* v2.115.0 · Sube de 15px para que «Atando cabos» destaque bajo el AR. */
    font-size: 21px;
    letter-spacing: -0.2px;
    font-weight: 700;
    color: var(--pcv2-blue);
    line-height: 1.3;
    margin: 0 0 4px;
}
.et-pcv2-rep__subtitle {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 15px;
    font-weight: 500;
    color: var(--pcv2-blue);
    line-height: 1.3;
    margin: 0 0 14px;
    opacity: 0.78;
}
.et-pcv2-rep__dek {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14px;
    line-height: 1.55;
    color: #2A2A2A;
    margin: 0 0 12px;
}
/* ═══ v2.161.0 · Crédito del medio de origen ═══
   Ocupa el sitio de la firma cuando la pieza viene de un feed ajeno: no la
   escribe nadie de la casa, así que se acredita al periódico que la publicó.
   Mismo peso visual que una firma, para que no compita con el titular. */
.et-pcv2-rep__source {
    margin: 10px 0 0;
    line-height: 0;   /* la imagen no arrastra el hueco del renglón */
}
/* v2.163.0 · El logotipo ocupa el ancho entero de la columna. Su original es
   de 1161×253, así que a los ~366px de la columna se reduce: no se amplía ni
   se pixela. Sin `max-height`, que lo dejaría corto. */
.et-pcv2-rep__source a { display: block; line-height: 0; text-decoration: none; }
.et-pcv2-rep__source-logo {
    display: block;
    width: 100%;
    max-width: none;
    height: auto;
}
/* Respaldo tipográfico si el logotipo del medio ajeno no carga. */
.et-pcv2-rep__source-name {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    line-height: 1.2;
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
}
.et-pcv2-rep__source a:hover .et-pcv2-rep__source-name { text-decoration: underline; }

/* ═══ v2.161.0 · Sin foto ═══
   Los feeds no siempre traen imagen. Sin la columna central, las otras dos
   se reparten el ancho en vez de dejar un hueco de 1.4fr en medio. */
.et-pcv2-rep__grid--nophoto { grid-template-columns: 1.6fr 1fr; }

/* Byline (sale como .et-pcv2-hero__byline desde el helper) */
.et-pcv2-rep .et-pcv2-hero__byline {
    margin-top: 8px;
    font-style: italic;
    color: #525252;
}

/* Responsive · solo PC */
@media (max-width: 1024px) {
    .et-pcv2-rep { display: none; }
}

/* ═════════════════════════════════════════════════════════════════
 * v2.41.1 · Módulo 06 · Ciencia · Espacio · Viajes
 *   Rediseño completo (estilo El Comercio):
 *     A (Espacio):  2 noticias text-only con hairline
 *     B (Ciencia):  1 noticia destacada con foto + pie
 *     C (Viajes):   1 destacada con foto + 2 sub en grid 2 cols
 *   Mismas fuentes/grosor/sizes que intl · solo PC
 * ═════════════════════════════════════════════════════════════════ */

/* Override del grid antiguo · 3 columnas asimétricas */
.et-pcv2-csc .et-pcv2-csc__grid {
    display: grid;
    grid-template-columns: 1fr 1.3fr 1.1fr;
    gap: 28px;
    align-items: start;
}

.et-pcv2-csc .et-pcv2-csc__col {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

/* Separadores verticales tipo periódico */
.et-pcv2-csc .et-pcv2-csc__col--a,
.et-pcv2-csc .et-pcv2-csc__col--b {
    border-right: 1px solid var(--et-rule, #E5E5E5);
    padding-right: 24px;
}

/* ═══════════════ A · Espacio · A1 grande sin foto + A2 pequeña con foto ═══════════════ */
.et-pcv2-csc .et-pcv2-csc__a-item {
    padding: 0;
    border: 0;
    margin: 0;
}
.et-pcv2-csc .et-pcv2-csc__a-title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.18;
    margin: 0 0 8px;
    color: #0A0A0A;
    letter-spacing: -0.005em;
}
.et-pcv2-csc .et-pcv2-csc__a-title a { color: inherit; text-decoration: none; }
.et-pcv2-csc .et-pcv2-csc__a-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-csc .et-pcv2-csc__a-dek {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 13.5px;
    line-height: 1.5;
    color: #525252;
    margin: 0 0 8px;
}
/* A2 · noticia mini con foto pequeña + texto compacto (v2.41.2) */
.et-pcv2-csc .et-pcv2-csc__a-mini {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--et-rule, #E5E5E5);
    display: flex;
    gap: 12px;
    align-items: flex-start;
}
.et-pcv2-csc .et-pcv2-csc__a-mini-photo {
    display: block;
    flex: 0 0 100px;
    width: 100px;
    aspect-ratio: 1 / 1;
    background-size: cover;
    background-position: center;
    background-color: #ECECEC;
    border-radius: 3px;
    text-decoration: none;
}
.et-pcv2-csc .et-pcv2-csc__a-mini-body { flex: 1; min-width: 0; }
.et-pcv2-csc .et-pcv2-csc__a-mini-title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.22;
    margin: 0;
    color: #0A0A0A;
}
.et-pcv2-csc .et-pcv2-csc__a-mini-title a { color: inherit; text-decoration: none; }
.et-pcv2-csc .et-pcv2-csc__a-mini-title a:hover { color: var(--pcv2-blue); }

/* ═══════════════ B · Ciencia · 1 noticia destacada con foto ═══════════════ */
.et-pcv2-csc__b { display: flex; flex-direction: column; gap: 10px; }
.et-pcv2-csc__b-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    background-size: cover;
    background-position: center;
    background-color: #ECECEC;
    text-decoration: none;
}
.et-pcv2-csc__b-caption {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 11.5px;
    line-height: 1.4;
    color: #8A8A8A;
    margin: 0;
    font-style: italic;
}
.et-pcv2-csc__b-title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 24px;
    font-weight: 900;
    line-height: 1.15;
    margin: 4px 0 0;
    color: #0A0A0A;
    letter-spacing: -0.01em;
}
.et-pcv2-csc__b-title a { color: inherit; text-decoration: none; }
.et-pcv2-csc__b-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-csc__b-dek {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14px;
    line-height: 1.55;
    color: #2A2A2A;
    margin: 4px 0 0;
}
/* B2 · noticia mini sin foto · fuente igual a A2 (v2.41.2 · simetría) */
.et-pcv2-csc__b-mini {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--et-rule, #E5E5E5);
}
.et-pcv2-csc__b-mini-title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.22;
    margin: 0;
    color: #0A0A0A;
}
.et-pcv2-csc__b-mini-title a { color: inherit; text-decoration: none; }
.et-pcv2-csc__b-mini-title a:hover { color: var(--pcv2-blue); }

/* ═══════════════ C · Viajes · 1 destacada + 2 sub en 2 cols ═══════════════ */
/* Sponsor del bloque Viajes — solo logo, centrado, premium (v2.41.3) */
.et-pcv2-csc__c-sponsor {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px 0 18px;
    margin: 0 0 18px;
    border-bottom: 1px solid var(--et-rule, #ECECEC);
    text-decoration: none;
    color: inherit;
    transition: opacity .15s ease;
}
a.et-pcv2-csc__c-sponsor:hover { opacity: .8; }
.et-pcv2-csc__c-sponsor-logo {
    height: 36px;
    width: auto;
    max-width: 180px;
    object-fit: contain;
    display: block;
}

.et-pcv2-csc__c1 { display: flex; flex-direction: column; gap: 10px; margin-bottom: 24px; }
.et-pcv2-csc__c1-photo {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    background-size: cover;
    background-position: center;
    background-color: #ECECEC;
    text-decoration: none;
}
.et-pcv2-csc__c1-title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.2;
    margin: 4px 0 0;
    color: #0A0A0A;
    text-align: center;
}
.et-pcv2-csc__c1-title a { color: inherit; text-decoration: none; }
.et-pcv2-csc__c1-title a:hover { color: var(--pcv2-blue); }
.et-pcv2-csc__c1 .et-pcv2-hero__byline { justify-content: center; }

.et-pcv2-csc__c2-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--et-rule, #E5E5E5);
}
.et-pcv2-csc__c2 { display: flex; flex-direction: column; gap: 8px; }
.et-pcv2-csc__c2-photo {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    background-size: cover;
    background-position: center;
    background-color: #ECECEC;
    text-decoration: none;
}
.et-pcv2-csc__c2-title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.22;
    margin: 2px 0 0;
    color: #0A0A0A;
}
.et-pcv2-csc__c2-title a { color: inherit; text-decoration: none; }
.et-pcv2-csc__c2-title a:hover { color: var(--pcv2-blue); }

/* Byline (helper produce .et-pcv2-hero__byline) */
.et-pcv2-csc .et-pcv2-hero__byline {
    margin-top: 6px;
    font-size: 12px;
    color: #525252;
}

/* Responsive · oculto en móvil (mismo criterio que intl/rep) */
@media (max-width: 1024px) {
    .et-pcv2-csc { display: none; }
}

/* ═════════════════════════════════════════════════════════════════
 * v2.41.2 · LÍNEAS SEPARATORIAS VERTICALES UNIFICADAS
 *   Aplicadas a TODOS los bloques PC para coherencia visual de
 *   arriba a abajo · mismo color/grosor que intl y csc.
 *   Solo en desktop (>= 1025px). Se ocultan en móvil.
 * ═════════════════════════════════════════════════════════════════ */
@media (min-width: 1025px) {
    /* HERO · 3 columnas — separadores entre col 1↔2 y col 2↔3 */
    .et-pcv2-hero__col:not(:last-child) {
        border-right: 1px solid var(--et-rule, #E5E5E5);
        padding-right: 28px;
    }
    .et-pcv2-hero__col + .et-pcv2-hero__col { padding-left: 0; }

    /* REPORTAJES · 3 columnas */
    .et-pcv2-rep__col:not(:last-child) {
        border-right: 1px solid var(--et-rule, #E5E5E5);
        padding-right: 28px;
    }

    /* ECONOMÍA · separar columna C (precios) del bloque A+B */
    .et-pcv2-econ__grid > .et-pcv2-econ__c {
        border-left: 1px solid var(--et-rule, #E5E5E5);
        padding-left: 24px;
    }

    /* REGIONAL · separadores entre las columnas principales */
    .et-pcv2-reg__col--a1:not(:last-child),
    .et-pcv2-reg__col--a23:not(:last-child) {
        border-right: 1px solid var(--et-rule, #E5E5E5);
        padding-right: 24px;
    }

    /* DEPORTES · separador entre los 2 equipos */
    .et-pcv2-sports__col:first-child,
    .et-pcv2-sports__team:first-child {
        border-right: 1px solid var(--et-rule, #E5E5E5);
        padding-right: 24px;
    }

    /* WQO · Tiempo · Sismos · Opinión — 3 columnas con separadores (v2.41.3) */
    .et-pcv2-wqo__col:not(:last-child) {
        border-right: 1px solid var(--et-rule, #E5E5E5);
        padding-right: 24px;
    }
}

/* ═════════════════════════════════════════════════════════════════
 * v2.42.0 · Módulo 08 · Juegos
 *   6 tarjetas en fila (5 juegos + 1 explora más). Estilo elegante,
 *   minimalista, premium · solo PC.
 * ═════════════════════════════════════════════════════════════════ */
.et-pcv2-games {
    margin-top: 48px;
    padding-top: 28px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.et-pcv2-games__grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 18px;
    align-items: start;
    margin-top: 8px;
}

.et-pcv2-games__card {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    text-decoration: none;
    color: inherit;
    transition: transform .2s ease;
}
a.et-pcv2-games__card:hover { transform: translateY(-3px); }
a.et-pcv2-games__card:hover .et-pcv2-games__bg { box-shadow: 0 8px 22px rgba(10,10,10,.08); }

.et-pcv2-games__bg {
    border-radius: 14px;
    padding: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    transition: box-shadow .25s ease;
}
.et-pcv2-games__inner {
    background: var(--et-paper, #FFFFFF);
    border-radius: 6px;
    width: 100%;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
}
.et-pcv2-games__icon {
    width: 60%;
    max-width: 84px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.et-pcv2-games__icon svg {
    width: 100%;
    height: auto;
    display: block;
}
.et-pcv2-games__label {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #0A0A0A;
    text-align: left;
    letter-spacing: -0.005em;
    line-height: 1.3;
    padding: 0 2px;
}

/* Responsive · solo PC */
@media (max-width: 1024px) {
    .et-pcv2-games { display: none; }
}

/* ═════════════════════════════════════════════════════════════════
 * MÓDULO · HORÓSCOPOS (v2.44.5)
 * Slider de 1 fila con scroll-snap nativo + flechas prev/next.
 * Nombre del signo DENTRO de la tarjeta (debajo del icono SVG).
 * Última tarjeta = CTA "Ir al centro astrológico".
 * ═════════════════════════════════════════════════════════════════ */
.et-pcv2-horoscope {
    margin-top: 48px;
    padding-top: 28px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
.et-pcv2-horoscope__slider {
    position: relative;
    margin-top: 12px;
}
.et-pcv2-horoscope__track {
    display: flex;
    gap: 18px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;             /* Firefox */
    -ms-overflow-style: none;          /* IE/Edge */
    padding: 4px 2px 16px;             /* respira box-shadow del hover */
    margin: -4px -2px -16px;
}
.et-pcv2-horoscope__track::-webkit-scrollbar { display: none; }

/* Card · ancho fijo de slot · 6 visibles aprox por viewport ancho */
.et-pcv2-horoscope__card {
    flex: 0 0 calc((100% - 5 * 18px) / 6);
    max-width: 180px;
    scroll-snap-align: start;
    text-decoration: none;
    color: inherit;
    transition: transform .2s ease;
    display: block;
}
a.et-pcv2-horoscope__card:hover { transform: translateY(-3px); }
a.et-pcv2-horoscope__card:hover .et-pcv2-horoscope__bg { box-shadow: 0 8px 22px rgba(10,10,10,.08); }

.et-pcv2-horoscope__bg {
    display: block;
    border-radius: 14px;
    padding: 14px;
    aspect-ratio: 1 / 1;
    transition: box-shadow .25s ease;
}
.et-pcv2-horoscope__inner {
    background: var(--et-paper, #FFFFFF);
    border-radius: 8px;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 8px;
    text-align: center;
    box-sizing: border-box;
}
.et-pcv2-horoscope__icon {
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.et-pcv2-horoscope__icon svg {
    width: 100%;
    height: 100%;
    display: block;
}
.et-pcv2-horoscope__name {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #0A0A0A;
    letter-spacing: -0.005em;
    line-height: 1.2;
    margin-top: 2px;
}
.et-pcv2-horoscope__range {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 10px;
    font-weight: 600;
    color: #4A4A4A;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    line-height: 1.2;
}
.et-pcv2-horoscope__element {
    font-size: 10px;
    font-weight: 500;
    color: #757575;
    letter-spacing: 0.3px;
}

/* ─── CTA card · "Ir al centro astrológico" ──────────────────────
   Tono cream cálido que conserva la armonía pastel del resto.
   Acabado premium con un punto más de saturación para destacar
   suavemente sobre los signos sin romper la paleta.            ─── */
.et-pcv2-horoscope__card--cta .et-pcv2-horoscope__bg--cta {
    background: #F2EBE0;        /* cream cálido · familia pastel */
}
.et-pcv2-horoscope__inner--cta {
    background: var(--et-paper, #FFFFFF);
    color: #1F1F1F;
}
.et-pcv2-horoscope__cta-icon {
    width: 40px;
    height: 40px;
    color: #6A5A3E;             /* bronce suave · resaltado discreto */
}
.et-pcv2-horoscope__cta-icon svg {
    width: 100%;
    height: 100%;
    display: block;
}
.et-pcv2-horoscope__name--cta {
    color: #1F1F1F;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.3;
    padding: 0 4px;
}
.et-pcv2-horoscope__cta-arrow {
    color: #6A5A3E;
    font-size: 16px;
    font-weight: 600;
    opacity: 0.85;
    transition: transform .25s ease, opacity .25s ease;
}
a.et-pcv2-horoscope__card--cta:hover .et-pcv2-horoscope__cta-arrow {
    opacity: 1;
    transform: translateX(3px);
    color: #4A3F2A;
}

/* ─── Flechas del slider ─── */
.et-pcv2-horoscope__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--et-paper, #FFFFFF);
    border: 1px solid var(--et-rule, #E5E3DD);
    color: #0A0A0A;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    z-index: 5;
    box-shadow: 0 2px 10px rgba(10,10,10,.08);
    transition: background .15s ease, transform .15s ease, opacity .15s ease;
}
.et-pcv2-horoscope__arrow:hover {
    background: #F7F6F1;
    transform: translateY(-50%) scale(1.05);
}
.et-pcv2-horoscope__arrow[disabled] {
    opacity: 0;
    pointer-events: none;
}
.et-pcv2-horoscope__arrow--prev { left: -12px; }
.et-pcv2-horoscope__arrow--next { right: -12px; }

/* Responsive · solo PC */
@media (max-width: 1024px) {
    .et-pcv2-horoscope { display: none; }
}
@media (min-width: 1025px) and (max-width: 1280px) {
    .et-pcv2-horoscope__card {
        flex: 0 0 calc((100% - 4 * 18px) / 5);   /* 5 visibles */
    }
}

/* ═════════════════════════════════════════════════════════════════
 * REG · 3ª noticia de Canarias con thumb pequeña a la derecha
 * (v2.44.4 · fix spacing v2.44.7)
 *
 * NOTA: la regla genérica de --a23 hace padding:0 margin:0 a TODOS los
 * .et-pcv2-reg__item dentro de esa columna. Por eso necesitamos un
 * selector con la misma profundidad o mayor para que nuestros márgenes
 * y la hairline separatoria se apliquen.
 * ═════════════════════════════════════════════════════════════════ */
.et-pcv2-reg--v2 .et-pcv2-reg__col--a23 .et-pcv2-reg__item--with-thumb {
    display: grid;
    grid-template-columns: 1fr 116px;
    gap: 16px;
    align-items: flex-start;
    margin-top: 22px;            /* respiro vs. A2 */
    padding-top: 22px;           /* simetría con el margen */
    border-top: 1px solid var(--pcv2-line-soft, var(--et-rule, #E5E3DD)); /* hairline separatoria */
}
.et-pcv2-reg__item--with-thumb .et-pcv2-reg__item-body {
    min-width: 0;
}
.et-pcv2-reg--v2 .et-pcv2-reg__col--a23 .et-pcv2-reg__item--with-thumb .et-pcv2-reg__item-title {
    margin: 0 0 8px;
    font-size: 17px;
    line-height: 1.25;
}
.et-pcv2-reg__item-thumb {
    display: block;
    width: 116px;
    height: 82px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 2px;
}
.et-pcv2-reg--v2 .et-pcv2-reg__col--a23 .et-pcv2-reg__item--with-thumb .et-pcv2-reg__item-dek {
    font-size: 13px;
    line-height: 1.5;
    margin: 0 0 8px;
}
@media (max-width: 1024px) {
    .et-pcv2-reg--v2 .et-pcv2-reg__col--a23 .et-pcv2-reg__item--with-thumb {
        grid-template-columns: 1fr 92px;
        margin-top: 18px;
        padding-top: 18px;
    }
    .et-pcv2-reg__item-thumb {
        width: 92px;
        height: 66px;
    }
}

/* ═════════════════════════════════════════════════════════════════
 * MÓDULO · MUNDIAL 2026 (v2.44.8)
 * Reusa el lenguaje visual de sv2 (carrusel de partidos) + bloque
 * superior de 2 noticias estilo A2 del hero. Coherente con reg/econ/intl.
 * ═════════════════════════════════════════════════════════════════ */
.et-pcv2-wc {
    margin-top: 44px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    min-width: 0;
}
.et-pcv2-shx--wc .et-pcv2-shx__title {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
}
.et-pcv2-wc__title-text { display: inline-block; }
.et-pcv2-wc__title-logo {
    display: inline-block !important;
    height: 36px !important; width: auto !important;
    max-width: 140px !important; object-fit: contain !important;
    margin: 0 !important; vertical-align: middle; flex-shrink: 0;
}
.et-pcv2-wc__nav { display: flex; gap: 8px; flex-shrink: 0; }
.et-pcv2-wc__arrow {
    width: 32px; height: 32px; border-radius: 50%;
    border: 1px solid var(--et-rule, #D8D8D8); background: var(--et-paper, #FFFFFF); color: #0A0A0A;
    display: inline-flex; align-items: center; justify-content: center;
    cursor: pointer; padding: 0;
    transition: border-color .15s, background .15s, color .15s, opacity .15s;
}
.et-pcv2-wc__arrow:hover { border-color: #0A0A0A; background: #0A0A0A; color: #FFFFFF; }
.et-pcv2-wc__arrow:disabled { opacity: .35; cursor: not-allowed; pointer-events: none; }

/* ─── Slider directamente debajo de la cabecera (sin bloque de 2 noticias) ─── */
.et-pcv2-wc .et-pcv2-shx { margin-bottom: 22px; }


/* Bloque tipo REP debajo del slider · línea negra separadora premium */
.et-pcv2-wc__rep-divider {
    margin: 40px 0 0; /* la propia .et-pcv2-rep aplica padding-top:28px */
}
.et-pcv2-wc__rep {
    margin-top: 0;
    padding-top: 28px;
}

/* ─── Slider por GRUPOS (cada página = 1 grupo · 2 tarjetas apiladas) ─── */
.et-pcv2-wc__pager-row {
    display: flex; align-items: center; justify-content: space-between;
    gap: 14px; margin: 0 0 16px; flex-wrap: wrap;
}
.et-pcv2-wc__pager-title {
    display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap;
    min-width: 0;
}
.et-pcv2-wc__pager-label {
    font-family: 'Inter', sans-serif;
    font-weight: 900; font-size: 18px; letter-spacing: -0.3px;
    color: var(--pcv2-ink, #0A0A0A); text-transform: uppercase;
}
.et-pcv2-wc__pager-dates {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 600; font-size: 12.5px; color: #6A6A6A;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.et-pcv2-wc__pager-dots {
    display: inline-flex; gap: 4px; align-items: center;
    flex-shrink: 0;
}
.et-pcv2-wc__dot {
    min-width: 24px; height: 24px; padding: 0 6px;
    border-radius: 4px;
    border: 1px solid transparent; background: #F0F0EE; color: #6A6A6A;
    cursor: pointer;
    font-family: 'Inter', sans-serif;
    font-size: 11.5px; font-weight: 700; letter-spacing: 0.3px;
    transition: background .15s, color .15s, border-color .15s, transform .15s;
}
.et-pcv2-wc__dot:hover { background: #E4E4E0; color: #0A0A0A; }
.et-pcv2-wc__dot.is-active {
    background: var(--pcv2-blue, var(--et-brand, #114F6E));
    color: #FFFFFF;
    border-color: var(--pcv2-blue, var(--et-brand, #114F6E));
}

.et-pcv2-wc__grid {
    display: flex; flex-wrap: nowrap; gap: 0;
    overflow-x: auto; overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    scroll-behavior: smooth;
    padding-bottom: 4px;
}
.et-pcv2-wc__grid::-webkit-scrollbar { display: none; }
.et-pcv2-wc__page {
    flex: 0 0 100%; width: 100%; min-width: 100%;
    scroll-snap-align: start;
    display: grid; grid-template-columns: 1fr 1fr; gap: 16px;
    align-items: stretch;
    box-sizing: border-box;
}
@media (max-width: 900px) {
    .et-pcv2-wc__page { grid-template-columns: 1fr; }
}

/* Tarjeta de Jornada (contiene 2 partidos del mismo grupo) */
.et-pcv2-wc__matchday {
    background: #FAFAFA; border: 1px solid var(--et-rule, #ECECEC); border-radius: 10px;
    padding: 16px 20px;
    display: flex; flex-direction: column; gap: 10px;
    transition: border-color .18s, box-shadow .18s;
}
.et-pcv2-wc__matchday:hover {
    border-color: var(--pcv2-blue, var(--et-brand, #114F6E));
    box-shadow: 0 4px 16px rgba(17,79,110,0.06);
}
.et-pcv2-wc__matchday-head {
    display: flex; align-items: center; justify-content: space-between;
    gap: 12px; padding-bottom: 8px;
    border-bottom: 1px solid var(--et-rule, #EFEFEF);
}
.et-pcv2-wc__matchday-title {
    font-family: 'Inter', sans-serif;
    font-size: 11px; font-weight: 800; letter-spacing: 1.2px;
    color: #0A0A0A; text-transform: uppercase;
}
.et-pcv2-wc__matchday-date {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 11.5px; font-weight: 600; color: #6A6A6A;
    letter-spacing: 0.4px; text-transform: uppercase;
}
.et-pcv2-wc__matchday-body {
    display: flex; flex-direction: column; gap: 4px;
}
.et-pcv2-wc__matchday-foot {
    display: flex; align-items: center; justify-content: space-between;
    gap: 8px; padding-top: 6px;
    border-top: 1px dashed var(--et-rule, #EAEAEA);
    font-family: 'Inter', sans-serif;
    font-size: 10.5px; font-weight: 600; color: #8A8A8A;
    letter-spacing: 0.5px; text-transform: uppercase;
}

/* Fila individual partido: bandera|nombre   marcador/hora   nombre|bandera */
.et-pcv2-wc__mrow {
    display: grid;
    grid-template-columns: 1fr 70px 1fr;
    align-items: center;
    gap: 14px;
    padding: 10px 0;
    border-bottom: 1px solid var(--et-rule, #F1F1F1);
}
.et-pcv2-wc__mrow:last-child { border-bottom: 0; }
.et-pcv2-wc__mside {
    display: flex; align-items: center; gap: 10px; min-width: 0;
}
.et-pcv2-wc__mside--home { justify-content: flex-end; text-align: right; }
.et-pcv2-wc__mside--away { justify-content: flex-start; text-align: left; }
.et-pcv2-wc__mside .et-pcv2-wc__team-name {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14px; font-weight: 700; color: var(--pcv2-ink, #0A0A0A);
    letter-spacing: -0.1px;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    min-width: 0;
}
.et-pcv2-wc__mcenter {
    text-align: center;
    font-family: 'Inter', sans-serif;
    font-weight: 800; letter-spacing: 0.4px;
    background: var(--et-paper, #FFFFFF); border: 1px solid var(--et-rule, #E8E8E5); border-radius: 4px;
    padding: 6px 8px;
}
.et-pcv2-wc__mcenter.is-score { font-size: 16px; color: #0A0A0A; font-variant-numeric: tabular-nums; }
.et-pcv2-wc__mcenter.is-time  { font-size: 13px; color: #4A4A4A; }
.et-pcv2-wc__mcenter.is-live  {
    font-size: 13px; color: #C8102E;
    background: rgba(200,16,46,0.06);
    border-color: rgba(200,16,46,0.25);
}
.et-pcv2-wc__match-head {
    display: flex; align-items: center; justify-content: space-between;
    gap: 8px; margin-bottom: 6px;
}
.et-pcv2-wc__match-comp {
    font-size: 11.5px; font-weight: 600; color: #525252;
    letter-spacing: 0.2px; text-transform: uppercase;
}
.et-pcv2-wc__match-status {
    font-size: 11px; font-weight: 600; color: #8A8A8A;
}
.et-pcv2-wc__match-status.is-live {
    color: #C8102E; position: relative; padding-left: 14px;
}
.et-pcv2-wc__match-status.is-live::before {
    content: ''; position: absolute; left: 0; top: 50%;
    width: 6px; height: 6px; margin-top: -3px;
    background: #C8102E; border-radius: 50%;
    animation: et-wc-pulse 1.4s ease-in-out infinite;
}
@keyframes et-wc-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.85); }
}

.et-pcv2-wc__team {
    display: grid; grid-template-columns: 28px 1fr auto;
    align-items: center; gap: 12px;
}
.et-pcv2-wc__team-badge {
    width: 28px; height: 22px;
    display: inline-flex; align-items: center; justify-content: center;
    flex-shrink: 0;
    background: var(--et-paper, #FFFFFF); border-radius: 3px;
    overflow: hidden; box-sizing: border-box;
    box-shadow: 0 0 0 1px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);
}
.et-pcv2-wc__team-badge img {
    width: 100%; height: 100%; object-fit: cover; display: block;
}
.et-pcv2-wc__team-flag {
    font-size: 14px; line-height: 1; color: #8A8A8A;
}
.et-pcv2-wc__team-name {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 13.5px; font-weight: 600;
    color: var(--pcv2-ink, #0A0A0A);
    letter-spacing: -0.1px;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.et-pcv2-wc__team-score {
    font-family: 'Inter', sans-serif;
    font-size: 17px; font-weight: 800;
    color: var(--pcv2-ink, #0A0A0A);
    font-variant-numeric: tabular-nums;
    min-width: 18px; text-align: right;
}
.et-pcv2-wc__match-foot {
    margin-top: 6px; padding-top: 8px;
    border-top: 1px solid var(--et-rule, #EAEAEA);
    font-size: 10.5px; font-weight: 600;
    color: #8A8A8A; text-align: center;
    letter-spacing: 0.4px; text-transform: uppercase;
}

/* Solo PC */
@media (max-width: 1024px) {
    .et-pcv2-wc { display: none; }
}

/* ═════════════════════════════════════════════════════════════════
 * VIDACULT · Sociedad · Salud · Cultura (v2.44.23)
 * Tipografía Hero PC: Inter 800 títulos, kicker azul theme.
 * Layout 3 columnas: A grande (Sociedad) · B y C medianas (Salud, Cultura).
 * ═════════════════════════════════════════════════════════════════ */
.et-pcv2-vc {
    margin-top: 44px;
    padding-top: 28px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    min-width: 0;
}
.et-pcv2-vc__grid {
    display: grid;
    grid-template-columns: 1.6fr 1fr 1fr;
    gap: 32px;
    align-items: start;
    margin-top: 22px;
}
.et-pcv2-vc__col { min-width: 0; }

.et-pcv2-vc__article {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Fotos */
.et-pcv2-vc__photo {
    display: block;
    width: 100%;
    background-size: cover;
    background-position: center;
    background-color: var(--pcv2-line-soft, #EFEDE7);
    text-decoration: none;
    border-radius: 2px;
}
.et-pcv2-vc__photo--lg {
    aspect-ratio: 4 / 3;
    margin-bottom: 4px;
}
.et-pcv2-vc__photo--sm {
    aspect-ratio: 4 / 3;
    margin-bottom: 4px;
}

/* Body */
.et-pcv2-vc__body {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

/* Kicker azul theme (línea pequeña con la temática) */
.et-pcv2-vc__kicker {
    display: block;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
    letter-spacing: -0.1px;
    line-height: 1.25;
    margin: 0 0 2px;
}

/* Títulos · estilo Hero PC */
.et-pcv2-vc__title {
    margin: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 800;
    color: var(--pcv2-ink, #0A0A0A);
    letter-spacing: -0.6px;
}
.et-pcv2-vc__title a {
    color: inherit;
    text-decoration: none;
    transition: color .15s;
}
.et-pcv2-vc__title a:hover { color: var(--pcv2-blue, var(--et-brand, #114F6E)); }

.et-pcv2-vc__title--lg {
    font-size: 28px;
    line-height: 1.08;
    letter-spacing: -0.9px;
}
.et-pcv2-vc__title--sm {
    font-size: 18px;
    line-height: 1.18;
    letter-spacing: -0.4px;
}

/* Entradilla */
.et-pcv2-vc__dek {
    margin: 0;
    font-family: 'Inter', sans-serif;
    font-size: 13.5px;
    line-height: 1.5;
    color: var(--pcv2-ink3, #4A4A4A);
    font-weight: 400;
}

/* Solo PC */
@media (max-width: 1024px) {
    .et-pcv2-vc { display: none; }
}

/* ═══════════════════════════════════════════════════════════════════
   v2.99.0 · SECTOR MARÍTIMO en el home (bloque Economía)
   · .et-pcv2-mar  → tarjetas de referencias de mercado marítimo
   · .et-pcpb      → banner PCP de CAMAL AI
   Claro, hairlines, esquinas suaves. Navy var(--et-brand, #114F6E) · azul CAMAL AI var(--et-brand, #114F6E).
   ═══════════════════════════════════════════════════════════════════ */

/* ─── Tarjetas de mercado marítimo ─────────────────────────────── */
.et-pcv2-mar {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 11px 0;
    border-bottom: 1px solid var(--et-rule, #ECEFF2);
}
.et-pcv2-mar:last-of-type { border-bottom: 0; }
.et-pcv2-mar__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.et-pcv2-mar__label {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--et-brand, #114F6E);
}
.et-pcv2-mar__chg {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.01em;
}
.et-pcv2-mar__chg.is-up   { color: #15803D; }
.et-pcv2-mar__chg.is-down { color: #C8102E; }
.et-pcv2-mar__value {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: -0.02em;
    font-variant-numeric: tabular-nums;
    color: #14181C;
    line-height: 1.15;
}
.et-pcv2-mar__value small {
    font-size: 11.5px;
    font-weight: 600;
    color: #8A97A3;
    margin-left: 2px;
}
.et-pcv2-mar__note {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 10.5px;
    font-weight: 500;
    color: #98A4AF;
}

/* ─── Banner PCP · CAMAL AI ────────────────────────────────────── */
.et-pcpb {
    /* Rejilla: el banner vive en una columna estrecha, así nunca se
       estrangula el texto (fila 1 = icono + titular, fila 2 = pie). */
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 13px 14px;
    margin: 18px 0 0;
    padding: 16px 18px;
    background: var(--et-paper, #fff);
    border: 1px solid var(--et-rule, #E3EAF0);
    border-radius: 10px;
    text-decoration: none;
    transition: border-color 0.16s, box-shadow 0.16s;
}
.et-pcpb:hover {
    border-color: var(--et-brand, #114F6E);
    box-shadow: 0 10px 26px -18px rgba(17, 79, 110, 0.55);
}
.et-pcpb__spark {
    flex: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 44px;
    background: #F4F9FA;
    border-radius: 8px;
}
.et-pcpb__body { display: flex; flex-direction: column; gap: 3px; min-width: 0; flex: 1 1 auto; }
.et-pcpb__title, .et-pcpb__sub, .et-pcpb__eyebrow { overflow-wrap: anywhere; }
.et-pcpb__eyebrow {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    color: var(--et-brand, #114F6E);
}
.et-pcpb__title {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: -0.02em;
    color: var(--et-brand, #114F6E);
    line-height: 1.2;
}
.et-pcpb__sub {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12.5px;
    font-weight: 500;
    line-height: 1.45;
    color: #5A6B7A;
}
.et-pcpb__aside {
    grid-column: 1 / -1;          /* pie a todo el ancho de la tarjeta */
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding-top: 12px;
    border-top: 1px solid var(--et-rule, #EEF2F5);
}
/* OJO · especificidad: `.et-pcv2-page img { height:auto }` (0,1,1) pisaba a
   `.et-pcpb__logo` (0,1,0) y el logo salía a tamaño natural (~1200px),
   aplastando el texto. Se sube la especificidad y se acota el ancho. */
.et-pcpb .et-pcpb__logo {
    display: block;
    height: 19px;
    width: auto;
    max-width: 96px;
    opacity: 0.92;
}
.et-pcpb__cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--et-brand, #114F6E);
    color: #fff;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.01em;
    padding: 8px 14px;
    border-radius: 7px;
    white-space: nowrap;
    transition: background 0.16s;
}
.et-pcpb:hover .et-pcpb__cta { background: #0E435E; }

@media (max-width: 900px) {
    .et-pcpb { flex-wrap: wrap; gap: 12px; padding: 14px 16px; }
    .et-pcpb__aside { flex-direction: row; align-items: center; justify-content: space-between; width: 100%; }
}

/* v2.99.1 · Sello «con la tecnología de: CAMAL AI» en Mercados en tiempo real
   + pulido del módulo al lenguaje CAMAL (hairlines, chips sharp, sin ruido). */
/* v2.99.2 · el sello va al PIE del módulo, bajo la línea de créditos */
.et-pcv2-forex__by {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin: 10px 0 0;
    padding: 12px 0 0;
    border-top: 1px solid var(--et-rule, #EEF2F5);
    text-decoration: none;
}
.et-pcv2-forex__by span {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #8A97A3;
    white-space: nowrap;
}
/* misma trampa de especificidad que en el banner PCP: acotar el logo */
.et-pcv2-forex__by .et-pcv2-forex__by-logo,
.et-pcv2-forex__by img {
    display: block;
    height: 18px;
    width: auto;
    max-width: 90px;
    opacity: 0.92;
    transition: opacity 0.15s;
}
.et-pcv2-forex__by:hover img { opacity: 1; }
.et-pcv2-forex__head-left { flex-wrap: wrap; row-gap: 6px; }

/* Pulido CAMAL del módulo de mercados */
.et-pcv2-forex__chip {
    border-radius: 7px;
    font-family: 'Inter', system-ui, sans-serif;
    font-weight: 600;
    letter-spacing: 0.01em;
    transition: border-color 0.15s, color 0.15s, background 0.15s;
}
/* OJO · el hover NO debe tocar el chip activo: tiene fondo navy y texto
   blanco, y pintarle el texto en navy lo dejaba invisible (mismo color que
   el fondo). Se excluye .is-active y se le da su propio hover. */
/* v2.101.3 · Hovers con la PALETA DEL THEME (nada de azul CAMAL AI claro aquí) y,
   sobre todo, el chip PCP EXCLUIDO de la regla genérica: al ser (0,3,0)
   pisaba a `.et-pcv2-forex__chip--pcp:hover` (0,2,0) y dejaba texto navy
   sobre fondo navy — ilegible. */
.et-pcv2-forex__chip:not(.is-active):not(.et-pcv2-forex__chip--pcp):hover {
    border-color: var(--et-brand, #114F6E);
    color: var(--et-brand, #114F6E);
    background: #F4F8FA;
}
.et-pcv2-forex__chip.is-active:hover {
    background: #0E435E;
    border-color: #0E435E;
    color: #fff;
}
.et-pcv2-forex__range { border-radius: 6px; font-family: 'Inter', system-ui, sans-serif; }
.et-pcv2-forex__head-title {
    font-family: 'Inter', system-ui, sans-serif;
    letter-spacing: -0.02em;
    color: var(--et-brand, #114F6E);
}

/* ═══════════════════════════════════════════════════════════════════
   v2.99.3 · PCP InfoPuertos dentro de «Mercados en tiempo real»
   Pestaña destacada en azul de marca + panel con el top-5 del
   pronóstico de crecimiento de CAMAL AI. Claro, sharp, premium.
   ═══════════════════════════════════════════════════════════════════ */

/* Pestaña PCP — destacada en el azul principal */
.et-pcv2-forex__chip--pcp {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--et-brand, #114F6E);
    border-color: var(--et-brand, #114F6E);
    color: #fff;
    font-weight: 700;
}
.et-pcv2-forex__chip--pcp svg { opacity: 0.9; }
/* Especificidad al nivel de la genérica (0,3,0) para que no la pise nadie. */
.et-pcv2-forex__chip.et-pcv2-forex__chip--pcp:hover,
.et-pcv2-forex__chip.et-pcv2-forex__chip--pcp.is-active,
.et-pcv2-forex__chip.et-pcv2-forex__chip--pcp.is-active:hover {
    background: #0E435E;      /* navy oscuro del theme */
    border-color: #0E435E;
    color: #fff;              /* SIEMPRE blanco: fondo oscuro */
}

/* Panel del pronóstico */
.et-pcv2-pcp { padding: 4px 0 0; }
.et-pcv2-pcp[hidden] { display: none; }
.et-pcv2-pcp__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding: 0 0 14px;
    border-bottom: 1px solid var(--et-rule, #EEF2F5);
}
.et-pcv2-pcp__head-txt { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.et-pcv2-pcp__eyebrow {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    color: var(--et-brand, #114F6E);
}
.et-pcv2-pcp__title {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 21px;
    font-weight: 800;
    letter-spacing: -0.025em;
    color: var(--et-brand, #114F6E);
    line-height: 1.15;
}
.et-pcv2-pcp__sub {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12.5px;
    font-weight: 500;
    color: #8A97A3;
}
.et-pcv2-pcp__stamp {
    flex: none;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #98A4AF;
    white-space: nowrap;
}

/* Lista del top-5 */
.et-pcv2-pcp__list { list-style: none; margin: 0; padding: 0; }
.et-pcv2-pcp__row {
    display: grid;
    grid-template-columns: 34px 1fr auto;
    align-items: center;
    gap: 14px;
    padding: 13px 2px;
    border-bottom: 1px solid var(--et-rule, #F1F4F7);
}
.et-pcv2-pcp__row:last-child { border-bottom: 0; }
.et-pcv2-pcp__rank {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 15px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    color: #C3CED8;
    letter-spacing: -0.02em;
}
.et-pcv2-pcp__row:first-child .et-pcv2-pcp__rank { color: var(--et-brand, #114F6E); }
.et-pcv2-pcp__port {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #14181C;
    min-width: 0;
    overflow-wrap: anywhere;
}
.et-pcv2-pcp__growth {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12.5px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: var(--et-brand, #114F6E);
    background: #F1F7F9;
    border: 1px solid var(--et-rule, #DDEAEF);
    border-radius: 6px;
    padding: 5px 10px;
    white-space: nowrap;
}
.et-pcv2-pcp__empty {
    margin: 16px 0;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 13.5px;
    line-height: 1.6;
    color: #5A6B7A;
}
.et-pcv2-pcp__gate { margin: 6px 0 0; }

/* CTA a la página de PCP */
.et-pcv2-pcp__cta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin: 16px 0 0;
    padding: 13px 18px;
    background: var(--et-paper, #fff);
    border: 1px solid var(--et-rule, #E3EAF0);
    border-radius: 9px;
    color: var(--et-brand, #114F6E);
    text-decoration: none;
    transition: border-color 0.16s, box-shadow 0.16s;
}
.et-pcv2-pcp__cta:hover {
    border-color: var(--et-brand, #114F6E);
    box-shadow: 0 10px 24px -18px rgba(17, 79, 110, 0.5);
}
.et-pcv2-pcp__cta-txt {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.01em;
}
/* misma trampa de especificidad de siempre: acotar el logo */
.et-pcv2-pcp__cta .et-pcv2-pcp__cta-logo {
    display: block;
    height: 19px;
    width: auto;
    max-width: 92px;
}

/* Pie: créditos + sello CAMAL en la misma línea */
.et-pcv2-forex__foot-left {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
.et-pcv2-forex__by {
    border-top: 0;
    margin: 0;
    padding: 0 0 0 12px;
    border-left: 1px solid var(--et-rule, #E3EAF0);
}

@media (max-width: 640px) {
    .et-pcv2-pcp__head { flex-direction: column; gap: 8px; }
    .et-pcv2-pcp__row { grid-template-columns: 28px 1fr; row-gap: 6px; }
    .et-pcv2-pcp__growth { grid-column: 2; justify-self: start; }
}

/* ═══════════════════════════════════════════════════════════════════
   v2.101.0 · PCP EN VIVO (bloque del home)
   Señales de previsión que se mueven con cada noticia analizada por
   CAMAL AI. Claro, sharp, navy var(--et-brand, #114F6E) · azul CAMAL AI var(--et-brand, #114F6E).
   ═══════════════════════════════════════════════════════════════════ */
/* v2.101.4 · Se comporta como una sección más del home: sin ancho ni
   gutter propios (los heredaba DUPLICADOS de .et-pcv2-page__inner, por
   eso salía más estrecha que las demás) y con el mismo separador
   superior que econ, intl, vidacult… */
.et-pcpl {
    margin-top: 44px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
}
.et-pcpl__live {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.12em;
    color: #C8102E;
}
.et-pcpl__dot {
    width: 7px; height: 7px; border-radius: 50%;
    background: #C8102E;
    animation: etPcplPulse 1.8s ease-in-out infinite;
}
@keyframes etPcplPulse { 0%,100% { opacity: 1; } 50% { opacity: 0.25; } }
@media (prefers-reduced-motion: reduce) { .et-pcpl__dot { animation: none; } }

/* Rótulo del directo · el badge EN VIVO vive aquí, no en el título */
.et-pcpl__feed-h {
    display: flex; align-items: center; gap: 10px;
    margin: 0 0 10px; padding-bottom: 8px;
    border-bottom: 1px solid var(--et-rule, #EEF2F5);
}
.et-pcpl__feed-lbl {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11px; font-weight: 700; letter-spacing: 0.08em;
    text-transform: uppercase; color: #8A97A3;
}

.et-pcpl__grid { display: grid; grid-template-columns: 1fr 300px; gap: 20px; align-items: start; }

/* ── Señales ── */
.et-pcpl__feed {
    background: var(--et-paper, #fff);
    border: 1px solid var(--et-rule, #E3EAF0);
    border-radius: 10px;
    padding: 4px 18px;
}
.et-pcpl__sig {
    display: grid;
    grid-template-columns: 74px 1fr auto;
    align-items: baseline;
    gap: 14px;
    padding: 13px 0;
    border-bottom: 1px solid var(--et-rule, #F2F5F8);
}
.et-pcpl__sig:last-child { border-bottom: 0; }
.et-pcpl__delta {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 14px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.01em;
}
.et-pcpl__sig--up   .et-pcpl__delta { color: #15803D; }
.et-pcpl__sig--down .et-pcpl__delta { color: #C8102E; }
.et-pcpl__body { min-width: 0; font-family: 'Inter', system-ui, sans-serif; font-size: 14px; line-height: 1.5; }
.et-pcpl__port { font-weight: 700; color: var(--et-brand, #114F6E); }
.et-pcpl__reason { color: #33475B; text-decoration: none; }
a.et-pcpl__reason:hover { color: var(--et-brand, #114F6E); text-decoration: underline; text-underline-offset: 2px; }
.et-pcpl__time {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11px; font-weight: 600; color: #98A4AF; white-space: nowrap;
}
.et-pcpl__empty {
    padding: 22px 0;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 13.5px; line-height: 1.6; color: #5A6B7A;
}

/* ── Ranking ── */
.et-pcpl__rank {
    background: var(--et-paper, #fff);
    border: 1px solid var(--et-rule, #E3EAF0);
    border-radius: 10px;
    padding: 16px 18px;
}
.et-pcpl__rank-h {
    margin: 0 0 12px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11px; font-weight: 800;
    letter-spacing: 0.12em; text-transform: uppercase; color: var(--et-brand, #114F6E);
}
.et-pcpl__rank-list { list-style: none; margin: 0; padding: 0; }
.et-pcpl__rank-row {
    display: flex; align-items: center; justify-content: space-between; gap: 10px;
    padding: 9px 0; border-bottom: 1px solid var(--et-rule, #F2F5F8);
}
.et-pcpl__rank-row:last-child { border-bottom: 0; }
.et-pcpl__rank-port {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 13.5px; font-weight: 700; color: #14181C; min-width: 0;
}
.et-pcpl__rank-val {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12.5px; font-weight: 700; font-variant-numeric: tabular-nums;
    color: var(--et-brand, #114F6E); background: #F1F7F9; border: 1px solid var(--et-rule, #DDEAEF);
    border-radius: 6px; padding: 3px 8px; white-space: nowrap;
}
.et-pcpl__foot {
    margin: 12px 0 0; padding-top: 10px; border-top: 1px solid var(--et-rule, #EEF2F5);
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 10.5px; line-height: 1.5; color: #98A4AF;
}
.et-pcpl__cta {
    display: flex; align-items: center; justify-content: center; gap: 7px;
    margin: 12px 0 0; padding: 10px 14px;
    background: var(--et-brand, #114F6E); color: #fff; border-radius: 8px; text-decoration: none;
    font-family: 'Inter', system-ui, sans-serif; font-size: 12.5px; font-weight: 700;
    transition: background 0.16s;
}
.et-pcpl__cta:hover { background: #0E435E; }

@media (max-width: 900px) {
    .et-pcpl__grid { grid-template-columns: 1fr; }
    .et-pcpl__sig { grid-template-columns: 66px 1fr; row-gap: 4px; }
    .et-pcpl__time { grid-column: 2; }
}

/* v2.101.4 · La cabecera propia («PCP» + «InfoPuertos» en dos cuerpos)
   se retiró: el bloque usa el header unificado del home, et-pcv2-shx. */

/* ════════════════════════════════════════════════════════════════════
   v2.101.3 · CAUSA REAL del «texto oscuro sobre fondo oscuro»
   ────────────────────────────────────────────────────────────────────
   `.et-pcv2-page a { color: inherit }` (línea 40) tiene especificidad
   0,1,1 — tipo + clase — y por tanto GANA a cualquier `.mi-boton
   { color:#fff }` (0,1,0). Los CTA del PCP heredaban el gris oscuro
   del panel sobre su fondo azul marino: ilegibles.
   Es exactamente la misma trampa que se comió el logo con
   `.et-pcv2-page img`. Se arregla subiendo la especificidad, nunca
   con !important.
   ════════════════════════════════════════════════════════════════════ */
.et-pcv2-page a.et-pcpl__cta,
.et-pcv2-page a.et-pcpl__cta:hover,
.et-pcv2-page a.et-pcpl__cta:focus,
.et-pcv2-page a.et-pcpl__cta:visited { color: #fff; }
.et-pcv2-page a.et-pcpl__cta        { background: var(--et-brand, #114F6E); }
.et-pcv2-page a.et-pcpl__cta:hover  { background: #0E435E; }

.et-pcv2-page a.et-pcv2-pcp__cta,
.et-pcv2-page a.et-pcv2-pcp__cta:hover,
.et-pcv2-page a.et-pcv2-pcp__cta:focus,
.et-pcv2-page a.et-pcv2-pcp__cta:visited { color: var(--et-brand, #114F6E); background: var(--et-paper, #fff); }

.et-pcv2-page a.et-pcpl__reason          { color: #33475B; }
.et-pcv2-page a.et-pcpl__reason:hover    { color: var(--et-brand, #114F6E); }

/* v2.101.3 · El interanual REAL viaja junto al puerto: la previsión es
   una estimación derivada, y el dato medido tiene que seguir a la vista
   para que cualquiera pueda contrastarlo. */
.et-pcpl__rank-port { display: flex; flex-direction: column; gap: 2px; }
.et-pcpl__rank-real {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 10.5px; font-weight: 600; letter-spacing: 0.01em;
    color: #8A97A3; font-variant-numeric: tabular-nums;
}

/* v2.101.4 · Acento de la sección PCP en el header unificado */
.et-pcv2-shx--pcpl { --shx-accent: var(--et-brand, #114F6E); }

/* Misma trampa que .et-pcpl__cta: `.et-pcv2-page img { height:auto }`
   (0,1,1) gana a `.et-pcv2-shx__sponsor-logo { height:30px }` (0,1,0) y
   el logo del patrocinador sale a tamaño natural. Se acota aquí. */
.et-pcv2-page .et-pcv2-shx__sponsor-logo {
    height: 26px;
    width: auto;
    max-width: 150px;
    object-fit: contain;
}

/* ════════════════════════════════════════════════════════════════════════
   v2.104.0 · COLUMNAS FIJAS DE OPINIÓN
   Tres firmas de nombre propio abren la sección. La primera va destacada:
   filete lima (#B1B448, el secundario, en dosis mínima) y el nombre de la
   columna en navy. El lima NO se usa en texto — solo como filete y punto,
   que sobre blanco no tiene contraste suficiente para leerse.
   ════════════════════════════════════════════════════════════════════════ */
.et-pcv2-opcol {
    display: flex;
    flex-direction: column;
    margin: 0 0 18px;
    padding: 0 0 16px;
    border-bottom: 1px solid var(--et-rule, #E4E9EE);
}
.et-pcv2-opcol__item {
    padding: 12px 0;
    border-top: 1px solid var(--et-rule, #EEF2F5);
}
.et-pcv2-opcol__item:first-child { border-top: 0; padding-top: 0; }

/* ── Nombre de la columna ── */
.et-pcv2-opcol__name {
    display: inline-block;
    margin: 0 0 5px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--et-brand, #114F6E);
    text-decoration: none;
}
.et-pcv2-page a.et-pcv2-opcol__name,
.et-pcv2-page a.et-pcv2-opcol__name:visited { color: var(--et-brand, #114F6E); }
.et-pcv2-page a.et-pcv2-opcol__name:hover   { color: #0E435E; }

/* ── Titular del artículo ── */
.et-pcv2-opcol__title {
    margin: 0 0 4px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.28;
    letter-spacing: -0.01em;
    color: #14181C;
    text-wrap: balance;
}
.et-pcv2-page a.et-pcv2-opcol__title,
.et-pcv2-opcol__title a { color: #14181C; text-decoration: none; }
.et-pcv2-opcol__title a:hover { color: var(--et-brand, #114F6E); }

.et-pcv2-opcol__by {
    margin: 0;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11.5px;
    font-weight: 600;
    color: #8A97A3;
}

/* ── La destacada ── */
.et-pcv2-opcol__item.is-lead {
    position: relative;
    margin-bottom: 4px;
    padding: 14px 14px 14px 16px;
    background: #F8FBFC;
    border: 1px solid var(--et-rule, #E3EAF0);
    border-top: 0;
    border-radius: 4px;
}
/* Filete lima a la izquierda · el único sitio donde aparece el secundario */
.et-pcv2-opcol__item.is-lead::before {
    content: "";
    position: absolute;
    top: -1px; bottom: -1px; left: -1px;
    width: 3px;
    background: #B1B448;
    border-radius: 4px 0 0 4px;
}
.et-pcv2-opcol__item.is-lead .et-pcv2-opcol__name {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11.5px;
}
.et-pcv2-opcol__item.is-lead .et-pcv2-opcol__name::after {
    content: "";
    width: 5px; height: 5px;
    border-radius: 50%;
    background: #B1B448;
}
.et-pcv2-opcol__item.is-lead .et-pcv2-opcol__title { font-size: 21px; line-height: 1.22; }


/* v2.106.1 · Maqueta del bloque cuando aún no hay noticias.
   Solo la ve el administrador: sirve para juzgar el diseño en un sitio
   sin contenido. Sin animación — no es una carga, es un hueco. */
.et-suc-ghost { opacity: 0.55; }
.et-suc-ghost__box {
    background: repeating-linear-gradient(45deg, #EEF2F5, #EEF2F5 8px, #E4E9EE 8px, #E4E9EE 16px) !important;
}
.et-suc-ghost__line {
    display: block;
    height: 11px;
    margin: 0 0 7px;
    border-radius: 3px;
    background: #E4E9EE;
}
.et-suc-ghost__line--t { height: 15px; width: 88%; background: #D6DEE6; }
.et-suc-ghost__note {
    margin: 10px 0 0;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11.5px;
    color: #8A97A3;
}
.et-suc-ghost__note code {
    padding: 1px 5px;
    background: #F1F5F8;
    border-radius: 3px;
    font-size: 11px;
    color: var(--et-brand, #114F6E);
}

/* ════════════════════════════════════════════════════════════════════════
   v2.107.0 · SUCESOS + TOCADO Y HUNDIDO · retícula de diario
   ────────────────────────────────────────────────────────────────────────
   Cuatro columnas separadas por filetes verticales. La primera noticia se
   abre a doble columna: texto a la izquierda, su foto al lado en un panel.
   Titulares en serif, entradilla gris, firma «Autor / Ciudad».
   ════════════════════════════════════════════════════════════════════════ */
.et-pcv2-suc {
    margin-top: 44px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
}
.et-pcv2-suc__grid {
    display: grid;
    grid-template-columns: 1.05fr 1.15fr 1.25fr 1.15fr;
    gap: 0;
}
.et-pcv2-suc__col { padding: 0 26px; min-width: 0; }
.et-pcv2-suc__col:first-child { padding-left: 0; }
.et-pcv2-suc__col:last-child  { padding-right: 0; }
/* Los filetes: separan columnas, no envuelven cajas
   (v2.161.0 · el recuadro azul que probó la 2.160.0 se retira: la columna
   vuelve al filete de siempre, como las demás) */
.et-pcv2-suc__col--stack,
.et-pcv2-suc__col--th { border-left: 1px solid var(--et-rule, #E4E9EE); }

/* ── Kicker ── el antetítulo azul harbor, INLINE antes del titular
   v2.242.0 · Antes iba en bloque (eyebrow pequeño encima). El CEO lo quiere
   como en el resto de la portada: en la misma línea, delante del título,
   heredando su tamaño y peso —solo cambia el color—. El punto y el espacio
   los añade et_pcv2_render_kicker(). */
.et-pcv2-suc .et-pcv2-hero__kicker,
.et-pcv2-suc__sub .et-pcv2-hero__kicker {
    display: inline;
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
}

/* ── Titulares ── */
.et-pcv2-suc__htitle {
    margin: 0 0 12px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 27px;
    /* v2.193.0 · A 900, igual que «Atando cabos». Es el titular grande
       de Sucesos; el CEO lo quiere con el mismo peso visual que el resto
       de la portada. Ver la nota larga en .et-pcv2-rep__title. */
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: -0.015em;
    text-wrap: balance;
}
.et-pcv2-suc__stitle {
    margin: 0 0 10px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 20px;
    /* v2.193.0 · A 900. Esta clase la comparten las dos noticias
       secundarias de Sucesos Y las de «Tocado y hundido» —una sola
       regla para los dos sitios, que es como el CEO los ve—. */
    font-weight: 900;
    line-height: 1.24;
    letter-spacing: -0.01em;
    text-wrap: balance;
}
.et-pcv2-suc__htitle a,
.et-pcv2-suc__stitle a { color: #14181C; text-decoration: none; }
.et-pcv2-suc__htitle a:hover,
.et-pcv2-suc__stitle a:hover { color: var(--et-brand, #114F6E); }

/* ── Entradilla ── serif gris, como en el diario */
.et-pcv2-suc__dek {
    margin: 0 0 14px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 15px;
    line-height: 1.45;
    color: #5A6B7A;
}

/* ── Firma «Autor / Ciudad» ── */
.et-pcv2-suc .et-pcv2-hero__byline-author {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12.5px;
    font-weight: 600;
    color: #33475B;
}
/* v2.111.0 · El separador ya lo pone el propio byline (.byline-pipe): aquí
   sólo se ajusta el color y se acerca el custom a ese filete. Antes había
   además una barra oblicua «/» de adorno, que dejaba DOS separadores. */
.et-pcv2-suc .et-pcv2-hero__byline-custom {
    margin-left: -4px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12.5px;
    color: #8A97A3;
}

/* ── Columna 2 · la imagen del lead, en su panel ── */
.et-pcv2-suc__art {
    display: block;
    aspect-ratio: 3 / 4;
    background-color: #EAF2F5;
    background-size: cover;
    background-position: center;
    border-radius: 2px;
}

/* ── Columna 3 · dos noticias apiladas con filete entre ellas ── */
.et-pcv2-suc__sub + .et-pcv2-suc__sub {
    margin-top: 22px;
    padding-top: 22px;
    border-top: 1px solid var(--et-rule, #E4E9EE);
}

/* ── Columna 4 · Tocado y hundido ── */
.et-pcv2-suc__brand { display: block; margin: 0 0 16px; }
/* Cabecera de marca: 600×100 (6:1). Se contiene, nunca se recorta ni se
   estira; acotada desde el contenedor para que la regla global de imágenes
   de .et-pcv2-page no la desmadre. */
.et-pcv2-page .et-pcv2-suc__brand-img {
    display: block;
    width: 100%;
    max-width: 240px;
    height: auto;
    object-fit: contain;
}
/* Respaldo del logotipo: si la imagen no resuelve, la marca sigue ahí en
   tipografía, con el mismo peso que un título de sección. */
.et-pcv2-suc__brand-txt {
    display: block;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 27px;
    font-weight: 700;
    line-height: 1.06;
    letter-spacing: -0.4px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-suc__brand-txt[hidden] { display: none; }
.et-pcv2-suc__thphoto {
    display: block;
    aspect-ratio: 4 / 3;
    margin: 0 0 14px;
    background-color: #EEF2F5;
    background-size: cover;
    background-position: center;
    border-radius: 2px;
}

/* ── Espacio 2 · cierra la zona de Sucesos ── */
.et-ad--suc { margin: 28px 0 0; }
.et-ad--suc img { width: 100%; height: auto; display: block; }

@media (max-width: 1200px) {
    .et-pcv2-suc__grid { grid-template-columns: 1fr 1fr; row-gap: 30px; }
    .et-pcv2-suc__col { padding: 0 20px; }
    .et-pcv2-suc__col--lead, .et-pcv2-suc__col--stack { border-left: 0; padding-left: 0; }
    .et-pcv2-suc__col--art  { padding-right: 0; }
    .et-pcv2-suc__col--th   { border-left: 0; padding-left: 0; padding-top: 26px; border-top: 1px solid var(--et-rule, #E4E9EE); grid-column: 1 / -1; }
}

/* ════════════════════════════════════════════════════════════════════════
   v2.108.0 · OPINIÓN · El debate · Buena proa · Opinión
   Tres columnas con filete vertical. La tercera reutiliza tal cual el
   diseño de .et-pcv2-opinion__* del bloque de tiempo y terremotos —
   aquí solo se le da su columna y el Espacio 3 debajo.
   ════════════════════════════════════════════════════════════════════════ */
.et-pcv2-oph {
    margin-top: 44px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
}
/* ════════════════════════════════════════════════════════════════════
   v2.118.0 · MÓDULO DE OPINIÓN
   Se abandonan los paneles: el módulo vuelve a ser tipográfico, atado por
   filetes verticales como una página de diario. Las dos primeras columnas
   llevan noticia; la tercera es la página de firmas —retrato, autor,
   columna y titular en cursiva— que es como se lee la opinión de siempre.
═════════════════════════════════════════════════════════════════════ */
/* v2.119.0 · Dos filas: arriba una noticia por columna, abajo los tres
   artículos de opinión a lo ancho de esas dos. La columna de firmas ocupa
   las dos filas a la derecha, así que los sueltos nunca la invaden. */
/* v2.158.0 · Tres filas, no dos: entre la de las columnas y la de «Opinión»
   entra la banda de publicidad. */
.et-pcv2-oph__grid {
    display: grid;
    grid-template-columns: 1fr 1fr 0.78fr;
    grid-template-rows: auto auto auto;
    gap: 0;
    align-items: start;
}
/* v2.119.0 · Las dos columnas de noticia tienen que dar el MISMO ancho
   útil, o sus fotos salen de distinto tamaño: una pega al borde izquierdo
   y la otra llevaba padding a los dos lados. Cada una cede 30px, y ya. */
.et-pcv2-oph__col { min-width: 0; grid-row: 1; }
/* El filete de la 2ª columna se come 1px del ancho útil (box-sizing:
   border-box), así que la 1ª cede otro tanto con un borde transparente:
   las dos fotos salen EXACTAMENTE iguales. */
.et-pcv2-oph__col:first-child  { grid-column: 1; padding: 0 30px 0 0; border-left: 1px solid transparent; }
.et-pcv2-oph__col:nth-child(2) { grid-column: 2; padding: 0 0 0 30px; border-left: 1px solid var(--et-rule, #E4E9EE); }
.et-pcv2-oph__col--op {
    grid-column: 3;
    /* v2.158.0 · `1 / -1` en vez de `1 / span 2`: la columna de Expertos
       abarca TODAS las filas que haya, así que añadir la banda de publicidad
       no la deja corta. Con el span fijo, su filete vertical se habría
       quedado a media altura. */
    grid-row: 1 / -1;
    padding-right: 0;
    border-left: 1px solid var(--et-rule, #E4E9EE);
}

/* v2.119.0 · El rótulo de sección (el mismo del PCP) dentro del módulo:
   se compacta un poco para no pesar más que los titulares. */
.et-pcv2-oph .et-pcv2-shx { margin-bottom: 16px; }
.et-pcv2-oph .et-pcv2-shx__title { font-size: 21px; }

/* Rótulo de columna · filete corto encima, al modo de las páginas de
   opinión de los diarios. Sobrio: el peso lo llevan los titulares. */
.et-pcv2-oph__head {
    position: relative;
    margin: 0 0 20px;
    padding-top: 13px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: 0.11em;
    text-transform: uppercase;
    color: var(--et-brand, #114F6E);
}
.et-pcv2-oph__head::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 42px;
    height: 3px;
    border-radius: 2px;
    background: linear-gradient(90deg, var(--et-brand, #114F6E) 0%, #2C7FA6 100%);
}
/* Marca de acento a la izquierda del rótulo: 3px de azul a verde. */
.et-pcv2-oph__head::before {
    content: "";
    flex: 0 0 auto;
    width: 3px;
    height: 13px;
    border-radius: 2px;
    background: linear-gradient(180deg, var(--et-brand, #114F6E) 0%, #2C7FA6 100%);
}

/* Noticias de El debate / Buena proa */
.et-pcv2-oph__item + .et-pcv2-oph__item {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid var(--et-rule, #EEF2F5);
}
.et-pcv2-oph__title {
    margin: 0 0 9px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.26;
    letter-spacing: -0.01em;
    text-wrap: balance;
}
.et-pcv2-oph__title a { color: #14181C; text-decoration: none; }
.et-pcv2-oph__title a:hover { color: var(--et-brand, #114F6E); }
.et-pcv2-oph__dek {
    margin: 0 0 12px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14.5px;
    line-height: 1.45;
    color: #5A6B7A;
}
/* v2.242.0 · Inline antes del titular, como el resto de la portada
   (antes iba en bloque encima). */
.et-pcv2-oph .et-pcv2-hero__kicker {
    display: inline;
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
}
/* Firma «Autor / Ciudad», igual que en Sucesos */
.et-pcv2-oph .et-pcv2-hero__byline-author {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12.5px; font-weight: 600; color: #33475B;
}
.et-pcv2-oph .et-pcv2-hero__byline-custom {
    margin-left: -4px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12.5px; color: #8A97A3;
}

/* ════════════════════════════════════════════════════════════════════
   v2.115.0 · LAS TRES COLUMNAS DE FIRMA
   «No lleguemos tarde al futuro», «El ojo crítico» y «Sin pérdida de luz»
   dejan de llevar el nombre en línea con el titular y lo lucen ARRIBA,
   como cabecera propia. Sólo estas tres: los artículos sueltos de Opinión
   siguen con su kicker de categoría, para que la jerarquía se lea sola.
   Paleta de la casa: azul var(--et-brand, #114F6E) de fondo del filete y verde var(--et-brand, #114F6E)
   como acento — el mismo par que ya usan el PCP y la marca.
═════════════════════════════════════════════════════════════════════ */
/* ════ v2.118.0 · LA COLUMNA DE FIRMAS ════════════════════════════
   Retrato circular, la firma, el nombre de la columna y el titular en
   cursiva. Centrado y separado por filetes: el formato con el que se lee
   la opinión en cualquier diario, sin cajas que la conviertan en widget.
═════════════════════════════════════════════════════════════════════ */
.et-pcv2-oph__col--op .et-pcv2-opinion__title {
    position: relative;
    display: block;
    margin: 0 0 22px;
    padding-top: 13px;
    text-align: center;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 23px;
    font-weight: 700;
    letter-spacing: -0.2px;
    text-transform: none;
    color: var(--pcv2-ink1, #0E2436);
    border-bottom: 0;
}
.et-pcv2-oph__col--op .et-pcv2-opinion__title::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 42px;
    height: 3px;
    border-radius: 2px;
    background: linear-gradient(90deg, var(--et-brand, #114F6E) 0%, #2C7FA6 100%);
}
.et-pcv2-oph__col--op .et-pcv2-opinion__head { margin: 0; }
/* v2.119.0 · Mismo lavado azul y filete que la sección de Baleària, para
   que las tres firmas se lean como una pieza propia dentro de la portada. */
.et-pcv2-oph__col--op {
    background: linear-gradient(180deg, rgba(17,79,110,.045) 0%, rgba(17,79,110,.015) 100%);
    border: 1px solid var(--et-rule, rgba(17,79,110,.13));
    border-radius: 6px;
    padding: 22px 22px 8px;
    margin-left: 30px;
}
.et-pcv2-oph__col--op .et-pcv2-opinion__list { margin: 0; padding: 0; list-style: none; }

/* Cada firma */
.et-pcv2-opinion__item.is-columna {
    display: block;
    text-align: center;
    padding: 0 4px 20px;
    margin: 0 0 20px;
    border-bottom: 1px solid var(--et-rule, #E4E9EE);
}
.et-pcv2-oph__face {
    display: block;
    width: 74px;
    height: 74px;
    margin: 0 auto 11px;
    border-radius: 50%;
    background-color: #EAF2F5;
    background-size: cover;
    background-position: center;
    box-shadow: 0 0 0 1px #E4E9EE;
    transition: box-shadow .2s ease;
}
.et-pcv2-opinion__item.is-columna:hover .et-pcv2-oph__face {
    box-shadow: 0 0 0 2px rgba(17, 79, 110,.5);
}
/* La firma, en el azul de la casa: es quien habla. */
.et-pcv2-oph__signer {
    margin: 0 0 3px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: 0.01em;
    color: var(--et-brand, #114F6E);
}
/* El nombre de la columna, discreto, debajo de la firma. */
.et-pcv2-oph__colname {
    margin: 0 0 8px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11.5px;
    font-weight: 500;
    letter-spacing: 0.01em;
    text-transform: none;
    color: #8A97A3;
}
/* El titular, en cursiva serif: la voz del columnista. */
.et-pcv2-oph__opitle {
    margin: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 17px;
    font-style: italic;
    font-weight: 600;
    line-height: 1.34;
    letter-spacing: -0.1px;
    text-wrap: balance;
}
.et-pcv2-oph__opitle a { color: var(--pcv2-ink1, #0E2436); text-decoration: none; }
.et-pcv2-oph__opitle a:hover { color: var(--et-brand, #114F6E); }

/* ── v2.146.0 · Rótulo + dos artículos de opinión, en la misma fila ────
   Antes eran tres piezas con la cabecera encima. Ahora el rótulo ocupa la
   primera celda —con su raya vertical— y las dos piezas van a su lado, en
   la misma línea y arrancando a la misma altura (`align-items: start`). */
/* ═══ v2.158.0 · La banda de publicidad del módulo de Opinión ═══
   Ocupa el ancho de «El debate» + «Buena proa» y se queda en la fila 2, la
   costura entre esas dos columnas y la fila de «Opinión». La creatividad se
   centra en esa anchura sin estirarse. */
.et-pcv2-oph__adband {
    grid-column: 1 / 3;
    grid-row: 2;
    margin-top: 26px;
    padding-top: 20px;
    border-top: 1px solid var(--et-rule, #E4E9EE);
}
/* Dentro de la banda el aire lo pone la banda: se anula el margen vertical
   que la creatividad trae de serie para el móvil (ver pc.css). */
.et-pcv2-oph__adband .et-ad--ophmid { margin: 0 auto; }

.et-pcv2-oph__free {
    grid-column: 1 / 3;
    grid-row: 3;
    display: grid;
    grid-template-columns: .62fr 1fr 1fr;
    align-items: start;
    gap: 26px 26px;
    margin-top: 26px;
    padding-top: 20px;
    border-top: 1px solid var(--et-rule, #E4E9EE);
}
/* Raya vertical azul + «Opinión», con el mismo peso tipográfico que los
   rótulos de sección. La raya es del rótulo, no un separador de celdas. */
.et-pcv2-oph__flabel {
    margin: 0;
    padding-left: 14px;
    border-left: 4px solid var(--pcv2-blue, var(--et-brand, #114F6E));
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: -0.4px;
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
}
.et-pcv2-oph__fcard {
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 13px;
    align-items: start;
    min-width: 0;
}
/* v2.122.0 · Filete fino entre las piezas, no alrededor: el separador va en el
   hueco del gap (de ahí el -13px).
   v2.146.0 · también entre el rótulo y la primera pieza, porque ahora comparten
   fila; el rótulo no lo lleva a su izquierda porque no separa nada. */
.et-pcv2-oph__flabel + .et-pcv2-oph__fcard,
.et-pcv2-oph__fcard + .et-pcv2-oph__fcard {
    padding-left: 13px;
    margin-left: -13px;
    border-left: 1px solid var(--et-rule, #E4E9EE);
}
.et-pcv2-oph__fface {
    display: block;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background-color: #EAF2F5;
    background-size: cover;
    background-position: center;
    box-shadow: 0 0 0 1px #E4E9EE;
    transition: box-shadow .2s ease;
}
.et-pcv2-oph__fcard:hover .et-pcv2-oph__fface { box-shadow: 0 0 0 2px rgba(17, 79, 110,.5); }
.et-pcv2-oph__fbody { min-width: 0; }
.et-pcv2-oph__fsigner {
    margin: 0 0 4px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11.5px;
    font-weight: 700;
    color: var(--et-brand, #114F6E);
}
.et-pcv2-oph__ftitle {
    margin: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 15.5px;
    font-style: italic;
    font-weight: 600;
    line-height: 1.34;
    text-wrap: balance;
}
.et-pcv2-oph__ftitle a { color: var(--pcv2-ink1, #0E2436); text-decoration: none; }
.et-pcv2-oph__ftitle a:hover { color: var(--et-brand, #114F6E); }

/* ── Foto en El debate y Buena proa (v2.115.0) ── */
/* v2.119.0 · Las dos columnas llevan UNA noticia, así que las dos fotos
   comparten proporción y ancho: quedan alineadas a la misma altura. */
.et-pcv2-oph__photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    margin: 0 0 12px;
    background-color: #EAF2F5;
    background-size: cover;
    background-position: center;
    /* v2.122.0 · esquinas rectas: el corte vivo es más de periódico. */
    border-radius: 0;
}

/* ── Pieza principal de la columna ────────────────────────────────── */
.et-pcv2-oph__item + .et-pcv2-oph__item {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid var(--et-rule, #F2F5F8);   /* filete interno CAMAL */
}
.et-pcv2-oph__photo {
    overflow: hidden;
    transition: transform .35s cubic-bezier(.2,.7,.3,1);
}
.et-pcv2-oph__item:hover .et-pcv2-oph__photo { transform: scale(1.012); }

/* ── De la 2ª en adelante: texto izquierda, foto derecha ──────────── */
.et-pcv2-oph__item.is-lado {
    display: grid;
    grid-template-columns: 1fr 88px;
    gap: 13px;
    align-items: start;
}
.et-pcv2-oph__item.is-lado .et-pcv2-oph__body { min-width: 0; }
.et-pcv2-oph__item.is-lado .et-pcv2-oph__title { font-size: 15.5px; line-height: 1.28; }
.et-pcv2-oph__item.is-lado .et-pcv2-oph__dek   { font-size: 13px; line-height: 1.5; margin-bottom: 8px; }
.et-pcv2-oph__thumb {
    display: block;
    width: 88px;
    height: 66px;
    background-color: #EAF2F5;
    background-size: cover;
    background-position: center;
    border-radius: 0;                /* v2.122.0 · igual que la foto grande */
    transition: box-shadow .2s ease;
}
.et-pcv2-oph__item.is-lado:hover .et-pcv2-oph__thumb {
    box-shadow: 0 0 0 2px rgba(17, 79, 110,.35);
}

/* ════════════════════════════════════════════════════════════════════
   v2.116.0 · TRANSPORTE MARÍTIMO · la sección se destaca del resto
   Fondo azul lavado casi imperceptible y un filete fino: suficiente para
   que el lector la lea como una unidad patrocinada, sin que parezca un
   banner. El azul sale del propio var(--et-brand, #114F6E) de la casa, a un 3%.
═════════════════════════════════════════════════════════════════════ */
/* v2.118.0 · FIX: la cabecera de sección es un hijo más de esta rejilla de
   4 columnas, así que ocupaba UNA celda — el rótulo se aplastaba contra el
   logotipo y la cuarta noticia caía a una segunda fila. Debe abarcar las
   cuatro. */
/* v2.123.0 · El rótulo es una celda del grid, así que su margin-bottom SE SUMA
   al gap de 20px: eran 24+20 = 44px de aire hasta las noticias. Lo dejamos en
   manos del gap y las noticias suben. */
.et-pcv2-reg--v2 .et-pcv2-reg__col--b > .et-pcv2-shx {
    grid-column: 1 / -1;
    margin-bottom: 0;
}
.et-pcv2-reg--v2 .et-pcv2-reg__col--b {
    background: linear-gradient(180deg, rgba(17,79,110,.045) 0%, rgba(17,79,110,.015) 100%);
    border: 1px solid var(--et-rule, rgba(17,79,110,.13));
    border-radius: 6px;
    padding: 22px 24px 24px;
    /* El filete superior que traía sobraba: ahora el marco ya separa. */
    border-top: 1px solid var(--et-rule, rgba(17,79,110,.13));
    margin-top: 4px;
}
.et-pcv2-reg__bhead {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 0 0 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--et-rule, rgba(17,79,110,.16));
}
.et-pcv2-reg__bhead-txt { min-width: 0; }
.et-pcv2-reg__bhead-title {
    margin: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -0.4px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-reg__bhead-by {
    margin: 5px 0 0;
    font-family: 'Inter', sans-serif;
    font-size: 11.5px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #7A8895;
}
.et-pcv2-reg__bhead-logo {
    flex: 0 0 auto;
    display: block;
    line-height: 0;
    border-bottom: 0;
}
.et-pcv2-reg .et-pcv2-reg__bhead-logo img {
    display: block;
    width: auto;
    height: 42px;
    max-width: 200px;
    object-fit: contain;
}

/* Rótulo de la columna central (Bio Ports) · v2.116.0 */
.et-pcv2-reg__a2head {
    margin: 0 0 14px;
    padding-bottom: 9px;
    border-bottom: 2px solid var(--pcv2-ink1, #0E2436);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink1, #0E2436);
}

@media (max-width: 1023px) {
    .et-pcv2-reg--v2 .et-pcv2-reg__col--b { padding: 18px 16px 20px; }
    .et-pcv2-reg__bhead { flex-wrap: wrap; gap: 12px; }
    .et-pcv2-reg__bhead-title { font-size: 21px; }
    .et-pcv2-reg .et-pcv2-reg__bhead-logo img { height: 34px; }
}

/* Espacio 3 · cierra la columna de Opinión */
.et-ad--oph { margin: 22px 0 0; }
.et-ad--oph img { width: 100%; height: auto; display: block; }

@media (max-width: 1100px) {
    .et-pcv2-oph__grid { grid-template-columns: 1fr 1fr; row-gap: 30px; }
    .et-pcv2-oph__col--op {
        grid-column: 1 / -1;
        border-left: 0; padding-left: 0; padding-top: 26px;
        border-top: 1px solid var(--et-rule, #E4E9EE);
    }
}


/* v2.110.0 · Los nombres de columna, que hacen de kicker en la lista de
   Opinión, en el navy del theme para que destaquen sobre el titular. */
.et-pcv2-oph__col--op .et-pcv2-opinion__item .et-pcv2-opinion__kicker {
    color: var(--et-brand, #114F6E);
    font-weight: 700;
}

/* ════════════════════════════════════════════════════════════════════
   v2.131.0 · «PUERTOS DE CANARIAS»
   Va debajo de Puertos de España y es el único módulo con TODO el
   bloque recuadrado: amarillo muy claro, mismo lenguaje que el salmón
   de Financial Ports y el azul de Baleària (fondo casi transparente +
   filete fino + 6px de radio), pero con los alfas subidos porque el
   amarillo sobre blanco desaparece antes que ningún otro color.
   Referencia de maquetación: portada de Diario de León.
   ════════════════════════════════════════════════════════════════════ */
/* v2.132.0 · el bloque venia pegado al de Puertos de España: aire arriba. */
/* v2.132.0 · el bloque sobresale ~10% a los lados del resto de la portada.
   El sangrado no es fijo: se limita a lo que realmente sobra fuera de
   .et-pcv2-page__inner (su hueco lateral + el gutter, menos 16px de reserva
   para la barra de scroll de Windows, que sí cuenta en 100vw). Así en 1440+
   sale el sangrado completo y en 1280 se queda en lo que cabe, sin provocar
   NUNCA scroll horizontal. */
.et-pcv2-pcan {
    --pcan-bleed: max(0px, min(61px, calc((100vw - var(--pcv2-max)) / 2 + var(--pcv2-gut) - 16px)));
    position: relative;
    margin: 44px calc(-1 * var(--pcan-bleed)) 34px;
    padding-top: 36px;
}
/* v2.133.0 · filete divisorio con Puertos de España, igual que el del resto
   de módulos (44px + 36px + hairline). Va en un pseudo-elemento y NO en un
   border-top del propio bloque para que la línea quede alineada con las de
   arriba: el bloque sobresale, la divisoria no. */
.et-pcv2-pcan::before {
    content: "";
    position: absolute;
    top: 0;
    left: var(--pcan-bleed);
    right: var(--pcan-bleed);
    border-top: 1px solid var(--pcv2-line);
}
.et-pcv2-pcan__box {
    /* v2.133.0 · fondo bajado del 10% al 6% de opacidad: el amarillo pesaba
       demasiado en una superficie tan grande. */
    background: linear-gradient(180deg, rgba(240,185,20,.06) 0%, rgba(240,185,20,.02) 100%);
    border: 1px solid rgba(198,150,15,.28);
    border-radius: 6px;
    padding: 24px 26px 26px;
}

/* v2.149.0 · Cabecera de la sección en una línea: rótulo a la izquierda,
   banner del anunciante a la derecha. `align-items: end` alinea el pie del
   banner con la base del rótulo; el margen inferior lo lleva la fila, no el
   rótulo, para que los dos se apoyen en la misma línea.
   Si la zona de anuncios está vacía, el rótulo ocupa la fila entera y todo
   queda exactamente como antes. */
.et-pcv2-pcan__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}
.et-pcv2-pcan__head > .et-pcv2-shx { flex: 1 1 auto; min-width: 0; margin-bottom: 0; }
/* v2.170.0 · La Autoridad Portuaria de Tenerife vuelve a la cabecera, a la
   derecha del rótulo y en su misma línea (el `space-between` de arriba ya la
   empuja al borde). El ancho va TOPADO: la creatividad es de 728px y a tamaño
   natural se comería el título. `flex: 0 1 …` la deja encoger si la pantalla
   aprieta, pero nunca crecer.
   `align-self: flex-end` la asienta sobre la misma línea de base que la
   bajada del rótulo, que es lo que pidió el CEO: alineada con el título. */
/* v2.171.0 · El CEO lo quiere MÁS GRANDE: que llegue a la mitad del bloque.
   `flex: 0 1 50%` reparte la fila en dos mitades —rótulo y banner— y el
   `flex-grow: 0` impide que se coma más de esa mitad cuando el título es
   corto. */
.et-pcv2-pcan__head > .et-ad--pcan-head {
    flex: 0 1 50%;
    min-width: 0;
    align-self: flex-end;
    /* v2.173.0 · centrada en su media fila, no pegada al margen derecho. */
    text-align: center;
}
/* v2.174.0 · LA CAUSA de que siguiera a la izquierda: `.et-ad` es
   `width: max-content`, o sea que la caja se encoge al ancho exacto de la
   creatividad. Con la caja pegada al borde de su celda, ni el
   `text-align:center` ni un `margin:auto` en la <img> centran nada: hay
   que centrar la CAJA. */
.et-pcv2-pcan__head > .et-ad--pcan-head {
    margin-left: auto;
    margin-right: auto;
}
.et-pcv2-pcan__head > .et-ad--pcan-head img {
    max-width: 100%;
    height: auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
@media (max-width: 1080px) {
    /* Sin sitio para las dos cosas en línea: el banner pasa debajo del
       rótulo, a la izquierda, en vez de estrangular el título. */
    .et-pcv2-pcan__head { flex-wrap: wrap; }
    .et-pcv2-pcan__head > .et-ad--pcan-head { flex: 1 1 100%; }
}

/* Tres columnas: laterales estrechas, la central manda (lleva la foto). */
.et-pcv2-pcan__grid {
    display: grid;
    grid-template-columns: 0.92fr 1.25fr 0.92fr;
    gap: 0;
    align-items: start;
}
.et-pcv2-pcan__col { min-width: 0; }
.et-pcv2-pcan__col--a { padding-right: 26px; }
.et-pcv2-pcan__col--b {
    padding: 0 26px;
    border-left: 1px solid rgba(198,150,15,.28);
    border-right: 1px solid rgba(198,150,15,.28);
}
.et-pcv2-pcan__col--c { padding-left: 26px; }

/* ── A · Las Palmas ── */
.et-pcv2-pcan__a1-title {
    margin: 0 0 9px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 25px;
    font-weight: 800;
    line-height: 1.14;
    letter-spacing: -0.4px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-pcan__a1-title a { color: inherit; text-decoration: none; }
.et-pcv2-pcan__a1-title a:hover { color: var(--et-brand, #114F6E); }
.et-pcv2-pcan__a1-dek {
    margin: 0 0 9px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14.5px;
    line-height: 1.45;
    color: var(--pcv2-ink3, #5A6B7A);
}

/* ── A2 · la segunda noticia · foto izquierda, texto derecha (v2.171.0) ──
   Sustituye al recuadro destacado de la Fundación, que el CEO ha retirado
   de la portada. Es una tarjeta horizontal: la foto manda un ancho fijo y
   el texto se lleva el resto, con la firma pegada bajo el titular.
   El filete superior la separa de la pieza principal, igual que hacen las
   demás columnas del bloque. */
.et-pcv2-pcan__a2 {
    display: grid;
    grid-template-columns: 104px 1fr;
    gap: 13px;
    align-items: start;
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid var(--et-rule, rgba(17,79,110,.14));
}
.et-pcv2-pcan__a2-photo {
    display: block;
    width: 104px;
    height: 74px;
    background-size: cover;
    background-position: center;
    background-color: #E8EDF1;
    border-radius: 3px;   /* el radio de la casa */
}
.et-pcv2-pcan__a2-body { min-width: 0; }
.et-pcv2-pcan__a2-title {
    margin: 0 0 6px;
    font-family: 'Inter', -apple-system, sans-serif;
    font-size: 15.5px;
    font-weight: 800;
    line-height: 1.26;
    letter-spacing: -0.2px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-pcan__a2-title a { color: inherit; text-decoration: none; }
.et-pcv2-pcan__a2-title a:hover { color: var(--et-brand, #114F6E); }
/* Sin foto, el texto se queda con la fila entera en vez de dejar un hueco. */
.et-pcv2-pcan__a2:not(:has(.et-pcv2-pcan__a2-photo)) { grid-template-columns: 1fr; }

/* ── B · la grande, centrada como en la referencia ── */
.et-pcv2-pcan__b1 { text-align: center; }
.et-pcv2-pcan__b1-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    margin: 0 0 13px;
    background-color: #EAF2F5;
    background-size: cover;
    background-position: center;
}
/* v2.133.0 · el antetítulo de la columna central se retiró del markup (nunca
   llegó a pintar una clase, sino el nombre de la clase como texto). */
.et-pcv2-pcan__b1-title {
    margin: 0 0 9px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -0.35px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-pcan__b1-title a { color: inherit; text-decoration: none; }
.et-pcv2-pcan__b1-title a:hover { color: var(--et-brand, #114F6E); }
/* v2.132.0 · la entradilla de B1 se retiró del markup: la columna central
   se queda en foto + titular + firma. */
.et-pcv2-pcan__b1 .et-pcv2-hero__byline { justify-content: center; }

/* ── B · las dos compactas: pleca azul al principio del titular ── */
.et-pcv2-pcan__bmini {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid rgba(198,150,15,.28);
}
.et-pcv2-pcan__bmini-title {
    position: relative;
    margin: 0 0 6px;
    padding-left: 12px;
    font-family: 'Inter', -apple-system, sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: -0.2px;
    color: var(--pcv2-ink1, #0E2436);
}
/* La pleca: 3px de azul del theme pegada al titular, alto completo. */
.et-pcv2-pcan__bmini-title::before {
    content: "";
    position: absolute;
    left: 0; top: 2px; bottom: 2px;
    width: 3px;
    background: var(--pcv2-blue, var(--et-brand, #114F6E));
}
.et-pcv2-pcan__bmini-title a { color: inherit; text-decoration: none; }
.et-pcv2-pcan__bmini-title a:hover { color: var(--et-brand, #114F6E); }
.et-pcv2-pcan__bmini .et-pcv2-hero__byline { padding-left: 12px; }

/* ── C · Puerto de Tenerife ── */
.et-pcv2-pcan__c1-title {
    margin: 0 0 8px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 18.5px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-pcan__c1-title a { color: inherit; text-decoration: none; }
.et-pcv2-pcan__c1-title a:hover { color: var(--et-brand, #114F6E); }
.et-pcv2-pcan__c1-dek {
    margin: 0 0 8px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 13.5px;
    line-height: 1.45;
    color: var(--pcv2-ink3, #5A6B7A);
}
.et-pcv2-pcan__c2 {
    margin-top: 17px;
    padding-top: 17px;
    border-top: 1px solid rgba(198,150,15,.28);
}
.et-pcv2-pcan__c2-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    margin: 0 0 10px;
    background-color: #EAF2F5;
    background-size: cover;
    background-position: center;
}
.et-pcv2-pcan__c2-title {
    margin: 0 0 7px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-pcan__c2-title a { color: inherit; text-decoration: none; }
.et-pcv2-pcan__c2-title a:hover { color: var(--et-brand, #114F6E); }

/* Solo PC, igual que Puertos de España */
@media (max-width: 1024px) {
    .et-pcv2-pcan { display: none; }
}

/* ── v2.149.1 · rótulo de la sección A LA IZQUIERDA ───────────────────
   Estaba centrado desde la v2.132.0, cuando ocupaba la fila entera. Ahora
   comparte línea con el banner del anunciante, y centrado quedaba flotando
   en medio: vuelve al comportamiento estándar del componente —título,
   bajada y pleca alineados al margen izquierdo del recuadro. */
.et-pcv2-pcan .et-pcv2-shx__row { justify-content: flex-start; }
.et-pcv2-pcan .et-pcv2-shx__title-wrap { flex: 1 1 auto; text-align: left; }
.et-pcv2-pcan .et-pcv2-shx__title-wrap::before { margin-left: 0; margin-right: 0; }

/* ── v2.132.0 · subtítulo de cada columna ─────────────────────────────
   Nombra el puerto del que habla la columna. Caja alta pequeña en azul
   sobre un filete: separa sin competir con los titulares. */
.et-pcv2-pcan__colhead {
    margin: 0 0 14px;
    padding-bottom: 8px;
    /* v2.133.0 · el filete va en el amarillo de las divisorias de la sección,
       no en azul: así todas las líneas del recuadro son del mismo color. */
    border-bottom: 2px solid rgba(198,150,15,.28);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
}
/* En la columna central va centrado, como el resto de su contenido, y en la
   tercera a la derecha (v2.133.0): las tres cabeceras cierran el recuadro
   izquierda · centro · derecha. */
.et-pcv2-pcan__col--b .et-pcv2-pcan__colhead { text-align: center; }
.et-pcv2-pcan__col--c .et-pcv2-pcan__colhead { text-align: right; }

/* ═════════════════════════════════════════════════════════════════
 * v2.134.0 · Módulo «Páginas amigas» (friends.php)
 *   Feed manual de medios colaboradores · 3 tarjetas
 *   Todo enlaza fuera: foto, titular, firma y logotipo del medio.
 *   Solo PC · oculto en móvil
 * ═════════════════════════════════════════════════════════════════ */
.et-pcv2-fam {
    margin-top: 44px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
}
/* v2.137.0 · mismo arreglo que en la fila de pcan: con padding asimétrico
   dentro de columnas 1fr, la tarjeta central perdía 26px por cada lado y
   las de fuera solo por uno, así que su foto salía más estrecha. El aire
   lo pone el gap y el filete va en un pseudo-elemento que no resta ancho. */
.et-pcv2-fam__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}
.et-pcv2-fam__card { position: relative; }
.et-pcv2-fam__card + .et-pcv2-fam__card::before {
    content: "";
    position: absolute;
    left: -16px;
    top: 0;
    bottom: 0;
    width: 1px;
    background: #E4E9EE;
}

.et-pcv2-fam__photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    margin-bottom: 13px;
    background: #EEF2F5 center/cover no-repeat;
    border-radius: 0;   /* esquinas rectas, como El debate y Buena proa */
}
.et-pcv2-fam__title {
    margin: 0 0 8px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.24;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-fam__title a { color: inherit; text-decoration: none; }
.et-pcv2-fam__title a:hover { color: var(--et-brand, #114F6E); }

/* Crédito del medio al pie de la tarjeta */
.et-pcv2-fam__credit {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
    padding-top: 11px;
    border-top: 1px solid var(--et-rule, #EDF1F4);
}
.et-pcv2-fam__credit-l {
    font-family: 'Inter', sans-serif;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    color: var(--pcv2-ink3, #7A8794);
}
.et-pcv2-fam__brand { display: flex; align-items: center; text-decoration: none; }
.et-pcv2-fam__brand img { display: block; height: 20px; width: auto; }
.et-pcv2-fam__brand-txt {
    font-family: 'Inter', sans-serif;
    font-size: 12.5px;
    font-weight: 800;
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
}
.et-pcv2-fam__brand:hover img { opacity: .82; }

@media (max-width: 1024px) {
    .et-pcv2-fam { display: none; }
}



/* ═════════════════════════════════════════════════════════════════
 * v2.138.0 · Módulo «Energías renovables y Sostenibilidad» (ener.php)
 *   Encima de Puertos de España · maqueta de 4 columnas:
 *   A1 texto | A1 foto | A2 | Sostenibilidad
 *   Solo PC · oculto en móvil
 *
 * Los filetes verticales van en pseudo-elementos DENTRO del gap, nunca
 * en padding: con padding asimétrico las columnas dejan de medir lo
 * mismo (la lección de Puertos de Canarias, 25px de desvío medidos).
 * ═════════════════════════════════════════════════════════════════ */
.et-pcv2-ener {
    margin-top: 44px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
}

/* Reparto exterior: los tres cuerpos de Eólica y, a la derecha,
   Sostenibilidad en una columna más estrecha. */
.et-pcv2-ener__grid {
    display: grid;
    grid-template-columns: 3.15fr 1fr;
    gap: 30px;
}
.et-pcv2-ener__blk { position: relative; min-width: 0; }
.et-pcv2-ener__blk--b::before {
    content: "";
    position: absolute;
    left: -15px;
    top: 0;
    bottom: 0;
    width: 1px;
    background: #E4E9EE;
}

/* Cabecera de cada bloque · dos estilos ────────────────────────────
   --label   : caja alta pequeña sobre filete. Para módulos que YA tienen
               su rótulo de sección arriba (estas son subtítulos).
   --section : el MISMO diseño que los rótulos del resto de la portada
               (pleca azul + Manrope 22px). Para módulos sin rótulo de
               sección, donde son ellas las que titulan. */
.et-pcv2-ener__head--label {
    margin: 0 0 15px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--et-rule, rgba(17,79,110,.20));
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
}
.et-pcv2-ener__head--section {
    margin: 0 0 17px;
    padding: 0;
    border: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -0.01em;
    line-height: 1.15;
    text-transform: none;
    color: #0A0A0A;
}
/* La pleca azul, idéntica a la del rótulo de sección */
.et-pcv2-ener__head--section::before {
    content: "";
    display: block;
    width: 56px;
    height: 4px;
    margin: 0 0 10px;
    background: var(--pcv2-blue, var(--et-brand, #114F6E));
    border-radius: 1px;
}

/* ── A · Eólica y Offshore ─────────────────────────────────────── */
.et-pcv2-ener__a-grid {
    display: grid;
    grid-template-columns: 1fr 1.12fr 1fr;
    gap: 28px;
    align-items: start;
}
/* Filete solo entre la foto y la 2ª noticia: la 1ª columna y la foto son
   la MISMA pieza partida, así que ahí no va separador. */
.et-pcv2-ener__a2 { position: relative; }
.et-pcv2-ener__a2::before {
    content: "";
    position: absolute;
    left: -14px;
    top: 0;
    bottom: 0;
    width: 1px;
    background: #E4E9EE;
}

.et-pcv2-ener__a1-title {
    margin: 0 0 10px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.16;
    letter-spacing: -0.4px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-ener__a1-dek {
    margin: 0 0 12px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14.5px;
    line-height: 1.46;
    color: var(--pcv2-ink3, #5A6B7A);
}
.et-pcv2-ener__a1-photo {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    background: #EEF2F5 center/cover no-repeat;
}

.et-pcv2-ener__a2-title {
    margin: 0 0 9px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.22;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-ener__a2-dek {
    margin: 0 0 11px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 13.5px;
    line-height: 1.46;
    color: var(--pcv2-ink3, #5A6B7A);
}

/* ── B · Sostenibilidad ────────────────────────────────────────── */
.et-pcv2-ener__b1-title {
    margin: 0 0 9px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.22;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-ener__b1-dek {
    margin: 0 0 11px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 13.5px;
    line-height: 1.46;
    color: var(--pcv2-ink3, #5A6B7A);
}
/* La compacta: filete grueso arriba y titular en negrita, sin entradilla */
.et-pcv2-ener__b2 {
    margin-top: 16px;
    padding-top: 15px;
    border-top: 2px solid var(--pcv2-ink1, #0E2436);
}
.et-pcv2-ener__b2-title {
    margin: 0 0 7px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.26;
    letter-spacing: -0.25px;
    color: var(--pcv2-ink1, #0E2436);
}

.et-pcv2-ener__a1-title a,
.et-pcv2-ener__a2-title a,
.et-pcv2-ener__b1-title a,
.et-pcv2-ener__b2-title a { color: inherit; text-decoration: none; }
.et-pcv2-ener__a1-title a:hover,
.et-pcv2-ener__a2-title a:hover,
.et-pcv2-ener__b1-title a:hover,
.et-pcv2-ener__b2-title a:hover { color: var(--et-brand, #114F6E); }

@media (max-width: 1024px) {
    .et-pcv2-ener { display: none; }
}

/* ═════════════════════════════════════════════════════════════════
 * v2.140.0 · TIRA DE PÁGINA ASOCIADA · compartida (fam-strip.php)
 * ─────────────────────────────────────────────────────────────────
 * Un solo componente con dos acabados:
 *   base        → plana, a todo el ancho, sin caja
 *   --box       → recuadro azul clarito (el de Puertos de Canarias)
 * Las tarjetas miden lo mismo siempre: el aire lo pone el gap y el
 * separador va en un pseudo-elemento, nunca en padding.
 * ═════════════════════════════════════════════════════════════════ */
.et-pcv2-fams { margin-top: 26px; }
.et-pcv2-fams--box {
    padding: 20px 22px 22px;
    background: linear-gradient(180deg, rgba(17,79,110,.055) 0%, rgba(17,79,110,.02) 100%);
    border: 1px solid var(--et-rule, rgba(17,79,110,.16));
    border-radius: 6px;
}
/* Plana: solo un filete arriba que la despega de las noticias */
.et-pcv2-fams:not(.et-pcv2-fams--box) {
    padding-top: 22px;
    border-top: 1px solid var(--pcv2-line);
}

/* Cabecera · rótulo entre filetes + logotipo, centrados */
.et-pcv2-fams__head {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 9px;
    margin-bottom: 20px;
}
.et-pcv2-fams__eyebrow {
    position: relative;
    display: inline-block;
    padding: 0 14px;
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.1px;
    text-transform: uppercase;
    color: var(--pcv2-ink3, #7A8794);
}
.et-pcv2-fams__eyebrow::before,
.et-pcv2-fams__eyebrow::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 34px;
    height: 1px;
    background: var(--pcv2-line, #E4E9EE);
}
.et-pcv2-fams__eyebrow::before { right: 100%; }
.et-pcv2-fams__eyebrow::after  { left: 100%; }
/* Dentro del recuadro de Puertos de Canarias los filetes van amarillos */
.et-pcv2-fams--pcan .et-pcv2-fams__eyebrow::before,
.et-pcv2-fams--pcan .et-pcv2-fams__eyebrow::after { background: rgba(198,150,15,.42); }

.et-pcv2-fams__logo { display: block; text-decoration: none; }
.et-pcv2-fams__logo img { display: block; height: 34px; width: auto; max-width: 260px; }
.et-pcv2-fams__logo:hover img { opacity: .84; }
.et-pcv2-fams__name {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 19px;
    font-weight: 800;
    letter-spacing: -0.3px;
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
}

/* Las noticias · tantas columnas como piezas traiga la tira */
.et-pcv2-fams__grid {
    display: grid;
    grid-template-columns: repeat(var(--fams-cols, 3), 1fr);
    gap: 30px;
}
.et-pcv2-fams__card { position: relative; }
.et-pcv2-fams__card + .et-pcv2-fams__card::before {
    content: "";
    position: absolute;
    left: -15px;
    top: 0;
    bottom: 0;
    width: 1px;
    background: var(--pcv2-line, #E4E9EE);
}
.et-pcv2-fams--pcan .et-pcv2-fams__card + .et-pcv2-fams__card::before { background: rgba(198,150,15,.34); }

.et-pcv2-fams__photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    margin-bottom: 11px;
    background: #EEF2F5 center/cover no-repeat;
}
.et-pcv2-fams__title {
    margin: 0 0 7px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.26;
    letter-spacing: -0.25px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-fams__title a { color: inherit; text-decoration: none; }
.et-pcv2-fams__title a:hover { color: var(--et-brand, #114F6E); }


@media (max-width: 1024px) {
    .et-pcv2-fams { display: none; }
}

/* ═════════════════════════════════════════════════════════════════
 * v2.142.0 · «Marítimo y naval» · MAQUETA DE LA CAPTURA
 *   A1 texto | A1 foto con pie | A2+A3 apiladas | A4 con foto arriba
 *   Solo PC · oculto en móvil
 *
 * Los filetes van en pseudo-elementos dentro del gap, nunca en padding.
 * ═════════════════════════════════════════════════════════════════ */
.et-pcv2-mrn {
    margin-top: 44px;
    padding-top: 36px;
    border-top: 1px solid var(--pcv2-line);
}
.et-pcv2-mrn__grid {
    display: grid;
    grid-template-columns: 3.15fr 1fr;
    gap: 30px;
}
.et-pcv2-mrn__blk { position: relative; min-width: 0; }
.et-pcv2-mrn__blk--b::before {
    content: "";
    position: absolute;
    left: -15px;
    top: 0;
    bottom: 0;
    width: 1px;
    background: var(--pcv2-line, #E4E9EE);
}

/* Cabecera de bloque en estilo rótulo · pleca azul + Manrope, el MISMO
   diseño que los rótulos del resto de la portada. La usa el módulo de
   Energías cuando NO lleva rótulo de sección propio (Logística y Pesca).
   Marítimo no la necesita: tiene su rótulo de sección estándar. */
.et-pcv2-ener__head--section {
    margin: 0 0 17px;
    padding: 0;
    border: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -0.01em;
    line-height: 1.15;
    text-transform: none;
    color: #0A0A0A;
}
.et-pcv2-ener__head--section::before {
    content: "";
    display: block;
    width: 56px;
    height: 4px;
    margin: 0 0 10px;
    background: var(--pcv2-blue, var(--et-brand, #114F6E));
    border-radius: 1px;
}

/* ── A · texto | foto+pie | apiladas ───────────────────────────── */
.et-pcv2-mrn__a-grid {
    display: grid;
    grid-template-columns: 1fr 1.15fr 1.05fr;
    gap: 28px;
    align-items: start;
}
/* Filete solo antes de las apiladas: la 1ª columna y la foto son la MISMA
   pieza partida, ahí no va separador. */
.et-pcv2-mrn__stack { position: relative; }
.et-pcv2-mrn__stack::before {
    content: "";
    position: absolute;
    left: -14px;
    top: 0;
    bottom: 0;
    width: 1px;
    background: var(--pcv2-line, #E4E9EE);
}

.et-pcv2-mrn__a1-title {
    margin: 0 0 10px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.16;
    letter-spacing: -0.4px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-mrn__a1-dek {
    margin: 0 0 12px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14.5px;
    line-height: 1.46;
    color: var(--pcv2-ink3, #5A6B7A);
}
.et-pcv2-mrn__a1-media { margin: 0; }
.et-pcv2-mrn__a1-photo {
    display: block;
    width: 100%;
    /* v2.243.0 · Media altura. Antes 3/4 (vertical): el alto = ancho×4/3.
       A 3/2 el alto pasa a ancho×2/3, justo la mitad, y deja sitio al
       banner de Boluda que va debajo de la sección. */
    aspect-ratio: 3 / 2;
    background: #EEF2F5 center/cover no-repeat;
}
/* Pie de foto · gris fino y centrado, como en la maqueta */
.et-pcv2-mrn__a1-caption {
    margin: 9px 0 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 12.5px;
    line-height: 1.4;
    text-align: center;
    color: var(--pcv2-ink3, #7A8794);
}

/* Las dos apiladas · filete entre ellas */
.et-pcv2-mrn__sitem + .et-pcv2-mrn__sitem {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--pcv2-line, var(--et-rule, #E4E9EE));
}
.et-pcv2-mrn__sitem-title {
    margin: 0 0 9px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.22;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-mrn__sitem-dek {
    margin: 0 0 11px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 13.5px;
    line-height: 1.46;
    color: var(--pcv2-ink3, #5A6B7A);
}

/* ── B · Pesca y cofradías · foto arriba ───────────────────────── */
.et-pcv2-mrn__b1-photo {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    margin-bottom: 13px;
    background: #EEF2F5 center/cover no-repeat;
}
.et-pcv2-mrn__b1-title {
    margin: 0 0 9px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.22;
    letter-spacing: -0.3px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-mrn__b1-dek {
    margin: 0 0 11px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 13.5px;
    line-height: 1.46;
    color: var(--pcv2-ink3, #5A6B7A);
}

.et-pcv2-mrn__a1-title a,
.et-pcv2-mrn__sitem-title a,
.et-pcv2-mrn__b1-title a { color: inherit; text-decoration: none; }
.et-pcv2-mrn__a1-title a:hover,
.et-pcv2-mrn__sitem-title a:hover,
.et-pcv2-mrn__b1-title a:hover { color: var(--et-brand, #114F6E); }

@media (max-width: 1024px) {
    .et-pcv2-mrn { display: none; }
}

/* ── v2.145.0 · Marítimo · cabecera y 2ª pieza de la columna derecha ──
   Las usa el módulo clonado (Integración puerto-ciudad → «Formación y
   eventos»). En Marítimo y naval no se declaran y no se pintan. */
.et-pcv2-mrn__b-head {
    margin: 0 0 13px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--et-rule, rgba(17,79,110,.20));
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: var(--pcv2-blue, var(--et-brand, #114F6E));
}
.et-pcv2-mrn__b2 {
    margin-top: 16px;
    padding-top: 15px;
    border-top: 1px solid var(--pcv2-line, var(--et-rule, #E4E9EE));
}
.et-pcv2-mrn__b2-title {
    margin: 0 0 7px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.26;
    letter-spacing: -0.25px;
    color: var(--pcv2-ink1, #0E2436);
}
.et-pcv2-mrn__b2-title a { color: inherit; text-decoration: none; }
.et-pcv2-mrn__b2-title a:hover { color: var(--et-brand, #114F6E); }

/* ═══ v2.151.0 · Puertos de España · rótulo + banner en la misma línea ═══
   Mismo patrón que Puertos de Canarias: título y bajada a la izquierda,
   creatividad a la derecha, apoyados en la misma base y con el sello
   PUBLICIDAD fuera del banner, a su izquierda.
   Con la zona vacía el rótulo recupera la fila entera y no cambia nada. */
.et-pcv2-intl__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}
.et-pcv2-intl__head > .et-pcv2-shx { flex: 1 1 auto; min-width: 0; margin-bottom: 0; }
/* v2.153.1 · SIN `display:flex`. Lo llevaba de cuando el sello iba al
   lado del banner; ahora va debajo, y el flex horizontal lo empujaba a la
   derecha de la creatividad en vez de dejarlo caer. */
/* v2.173.0 · La creatividad va CENTRADA en su celda, no pegada al borde.
   `flex: 0 0 auto` la dejaba del ancho justo de la imagen y, con el
   space-between de la fila, terminaba escorada al margen derecho. Con
   `flex: 0 1 50%` la celda ocupa media fila y la imagen se centra dentro. */
.et-pcv2-intl__head > .et-ad--pesp {
    flex: 0 1 50%;
    min-width: 0;
    max-width: 62%;
    margin-bottom: 10px;
    text-align: center;
}
/* v2.174.0 · centrar la CAJA, no la imagen: `.et-ad` es width:max-content
   (misma trampa que en Puertos de Canarias). */
.et-pcv2-intl__head > .et-ad--pesp > .et-ad,
.et-pcv2-intl__head > .et-ad--pesp { margin-left: auto; margin-right: auto; }
.et-pcv2-intl__head > .et-ad--pesp img { margin-left: auto; margin-right: auto; }
/* El tope de altura, SOLO para la creatividad: el sello mide 12px y no
   se toca (misma trampa que costó un icono gigante en Puertos de Canarias). */
.et-pcv2-intl__head > .et-ad--pesp > a img,
.et-pcv2-intl__head > .et-ad--pesp > img,
.et-pcv2-intl__head > .et-ad--pesp picture img { max-height: 90px; width: auto; }
@media (max-width: 1100px) {
    .et-pcv2-intl__head { flex-wrap: wrap; }
    .et-pcv2-intl__head > .et-ad--pesp { max-width: 100%; margin: 4px auto 0; justify-content: center; }
}

/* ═══ v2.152.0 · Puertos de Canarias · los dos anunciantes al pie ═══
   Las Palmas a la izquierda, Tenerife a la derecha, separados por el
   filete amarillo de la sección. Van antes de la página asociada.

   Los dos son creatividades de 728px y el recuadro no da para las dos a
   tamaño natural: se reparten el ancho a partes iguales (~48% cada una)
   y se encogen conservando su proporción. Con `min-width: 0` en las dos
   celdas, ninguna empuja a la otra fuera de la fila.

   Si sólo hay una campaña activa, ocupa la fila entera y el filete no se
   pinta: el separador vive en el `+` entre las dos. */
/* v2.170.0 · Aquí vivía la fila de dos anunciantes del pie de Canarias
   (.et-pcv2-pcan__ads) con su filete amarillo separador. La fila ya no se
   pinta: Tenerife subió al rótulo, Las Palmas se fue a su propia franja de
   la portada, y el CEO pidió retirar la línea que quedaba en medio. Las
   reglas se van con ella para no dejar CSS huérfano. */

/* v2.152.0 · Banner al pie de Logística y transporte, bajo las noticias. */
/* ═══ v2.155.0 · Banner al pie de «Logística y transporte» ═══
   Va DENTRO de la columna de las dos noticias, así que hereda su ancho sin
   tocar la columna de al lado (Pesca y cofradías). Pegado a la última
   noticia —solo el aire justo— y centrado en esa columna.
   La creatividad no se estira: si es más estrecha que la columna, se queda
   a su tamaño y se centra; si es más ancha, se encoge sin deformarse. */
.et-ad--ener {
    margin: 18px auto 0;
    text-align: center;
}
.et-ad--ener img { margin: 0 auto; max-width: 100%; height: auto; }

/* ═══ v2.156.0 · Franja entre Puertos de España y Puertos de Canarias ═══
   Vive fuera de los dos módulos: es la costura de la portada, no el pie de
   una sección. Por eso va centrada y con el mismo aire arriba y abajo, para
   que ninguna de las dos secciones parezca dueña del anuncio.
   NO se le pone `width: 100%`: la caja conserva el `max-content` de `.et-ad`
   y se centra con los márgenes automáticos. Así el sello «Publicidad» cae
   sobre el borde derecho de la CREATIVIDAD y no en el margen de la página,
   que es donde acabaría si la caja se estirase a todo el ancho.

   v2.157.0 · El aire vertical ya NO vive aquí: lo pone la banda. Si se
   dejaran los dos márgenes en el anuncio, el de abajo colapsaría con el
   margen superior de Puertos de Canarias (son hermanos adyacentes) y el
   reparto dejaría de ser simétrico. */
.et-ad--espcan {
    margin: 0 auto;
    text-align: center;
}
.et-ad--espcan img { margin: 0 auto; max-width: 100%; height: auto; }
/* v2.157.0 · El sello «Publicidad» sale del flujo y cuelga en el aire de
   abajo, pegado a la esquina derecha de la creatividad.
   POR QUÉ: aquí el reparto se mide contra el rectángulo del banner, que es
   lo que ve el ojo. Con el sello en flujo sumaba 17px (12 del icono + 5 de
   aire) al alto de la unidad, y el hueco quedaba en 44px arriba y 61 abajo.
   Fuera del flujo, la cuenta vuelve a ser 44 y 44 sin números mágicos: el
   sello sigue a 5px del banner —su `margin-top` de siempre— y deja 27px
   limpios hasta el filete de Puertos de Canarias.
   Solo se hace en esta zona: el resto de anuncios van al pie de una columna,
   donde el sello sí debe empujar lo que venga detrás. */
.et-ad--espcan .et-ad__tag {
    position: absolute;
    top: 100%;
    right: 0;
}

/* ═══ v2.157.0 · La banda que sostiene esa franja ═══
   Trae su propio filete superior: el mismo hairline y el mismo hueco de
   44px con que se separa cualquier par de secciones de la portada.
   El reparto, línea a línea:
     · filete de la banda → anuncio: los 44px de `padding-top` de aquí.
     · anuncio → filete de Puertos de Canarias: los 44px del `margin-top`
       que esa sección ya trae de serie.
   Por eso la banda NO lleva margen inferior propio. Si se le pusiera, no
   se sumaría: colapsaría con el de Puertos de Canarias (son hermanos
   adyacentes) y el único efecto sería enturbiar la cuenta. */
.et-pcv2-adband {
    margin-top: 44px;
    padding-top: 44px;
    border-top: 1px solid var(--pcv2-line);
}


/* ═══════════════════════════════════════════════════════════════════
   v2.164.0 · ESQUINAS DE LAS FOTOS · portada de PC
   ───────────────────────────────────────────────────────────────────
   Auditoría de la portada: de las fotos de noticia, unas llevaban 3px,
   otras 2 o 4, y muchas ninguno. Dos estaban puestas a 0 a propósito
   («esquinas rectas, como El debate y Buena proa») — se rectifica: el
   criterio ahora es que TODAS lleven el mismo radio muy leve.

   3px es el valor de la casa: el que ya usan los banners de publicidad
   y las secciones marítimas del móvil. Va al final de la hoja para
   ganar por orden de cascada a las reglas de más arriba sin recurrir
   a !important ni a subir la especificidad.

   NO entran aquí, y es a propósito: logotipos de marca y de medios,
   creatividades de publicidad (ya llevan su 3px en pc.css), avatares
   de firma —que son redondos— y la imagen a pantalla completa del
   visor, que no es una tarjeta.
   ═══════════════════════════════════════════════════════════════════ */
.et-pcv2-hero__a2-photo,
.et-pcv2-hero__center-photo,
.et-pcv2-hero__right-lead-photo,
.et-pcv2-hero__right-mini-photo,
.et-pcv2-rep__photo,
.et-pcv2-csc__b-photo,
.et-pcv2-csc__c1-photo,
.et-pcv2-ener__a1-photo,
.et-pcv2-ener__a1-media,
.et-pcv2-mrn__a1-photo,
.et-pcv2-mrn__a1-media,
.et-pcv2-mrn__b1-photo,
.et-pcv2-pcan__b1-photo,
.et-pcv2-pcan__c2-photo,
.et-pcv2-reg__b-photo,
.et-pcv2-reg__feature-photo,
.et-pcv2-reg__feature-figure,
.et-pcv2-econ__hero-photo,
.et-pcv2-wqo__news-photo,
.et-pcv2-fams__photo,
.et-pcv2-fam__photo,
.et-pcv2-oph__photo,
.et-pcv2-suc__thphoto,
.et-pcv2-intl__a1-photo,
.et-pcv2-intl__b2-photo,
.et-pcv2-csc__a-mini-photo,
.et-pcv2-oph__thumb,
.et-pcv2-reg__item-thumb,
.et-pcv2-vc__photo { border-radius: 3px; }

/* ═══════════════════════════════════════════════════════════════════════
   OPINIÓN · v2.213.0 · BUENA PROA | OPINIÓN | EL DEBATE
   ───────────────────────────────────────────────────────────────────────
   El orden y el peso cambian por completo respecto a la versión anterior
   (El debate · Buena proa · Expertos). Ahora manda Buena proa a la
   izquierda, la Opinión apilada en el centro con el retrato grande, y El
   debate a la derecha.

   `--v3` cuelga de una clase propia y no reescribe `.et-pcv2-oph__grid`
   a secas: la rejilla vieja sigue viva para cualquier home que aún no se
   haya migrado, y así una cosa no se lleva por delante a la otra.
   ═══════════════════════════════════════════════════════════════════════ */

/* v2.215.0 · Buena proa manda de verdad y Opinión se estrecha. Antes iban
   casi a la par (1.25 / 1 / 0.95) y la portada no decía cuál es la pieza
   principal. */
.et-pcv2-oph__grid--v3 {
    grid-template-columns: 1.75fr 0.78fr 1.05fr;
    grid-template-rows: auto;
}
/* v2.215.0 · Sin filetes verticales: encerrada entre dos rayas, la columna
   de Opinión parecía un recuadro destacado, y no lo es. El aire entre
   columnas ya las separa. */
.et-pcv2-oph__grid--v3 .et-pcv2-oph__col--proa   { grid-column: 1; grid-row: 1; padding: 0 32px 0 0;  border-left: 0; background: none; }
.et-pcv2-oph__grid--v3 .et-pcv2-oph__col--op     { grid-column: 2; grid-row: 1; padding: 0 28px;      border-left: 0; background: none; }
.et-pcv2-oph__grid--v3 .et-pcv2-oph__col--debate { grid-column: 3; grid-row: 1; padding: 0 0 0 32px;  border-left: 0; background: none; }

/* ═══════════════════════════════════════════════════════════════════════
   v2.214.0 · LAS FORMAS DE LA CAPTURA
   ───────────────────────────────────────────────────────────────────────
   Buena proa y El debate no son la misma tarjeta con un interruptor: son
   dos jerarquías distintas, y de ahí sale el ritmo de la portada.

     proa   · titular grande + entradilla a la izquierda, FOTO al costado.
     debate · FOTO arriba a todo el ancho y debajo titular, entradilla y
              firma.
     ambas  · de la segunda en adelante, filete fino + titular compacto.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Buena proa · la principal ──────────────────────────────────────
   El texto manda y la foto acompaña: por eso 1fr para las letras y una
   pista fija para la imagen, no mitad y mitad. */
/* v2.215.0 · `stretch`, no `start`: la foto tiene que llegar HASTA ABAJO,
   a la altura del bloque de texto —firma incluida—, no quedarse colgando
   arriba. Por eso la pista de la imagen es de altura automática y el
   propio enlace se estira al 100%. */
.et-pcv2-oph__lead {
    display: grid;
    grid-template-columns: 1fr 190px;
    gap: 22px;
    align-items: stretch;
}
.et-pcv2-oph__ltext {
    min-width: 0;
    display: flex;
    flex-direction: column;
}
/* La firma se va al fondo de la columna de texto, que es donde acaba la
   foto: así los dos lados cierran a la misma altura. */
.et-pcv2-oph__ltext .et-pcv2-hero__byline { margin-top: auto; padding-top: 14px; }
.et-pcv2-oph__ltitle {
    margin: 0 0 12px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 27px;
    font-weight: 900;
    line-height: 1.14;
    letter-spacing: -0.022em;
    text-wrap: balance;
}
.et-pcv2-oph__ltitle a { color: #14181C; text-decoration: none; }
.et-pcv2-oph__ltitle a:hover { color: var(--et-brand, #114F6E); }
/* La entradilla de la principal va en azul apagado, como en la captura:
   no compite con el titular pero tampoco parece texto secundario. */
.et-pcv2-oph__ldek {
    margin: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.52;
    color: #46637C;
}
/* `height: auto` + el `stretch` del padre = la foto llega hasta abajo,
   a la altura exacta del texto. El `min-height` es la red de seguridad
   para cuando la entradilla sale muy corta. */
.et-pcv2-oph__lart {
    display: block;
    width: 190px;
    height: auto;
    min-height: 210px;
    align-self: stretch;
    border-radius: 3px;
    background: #E9EEF2 center/cover no-repeat;
    transition: transform .25s ease;
}
.et-pcv2-oph__lead:hover .et-pcv2-oph__lart { transform: scale(1.012); }

/* ── El debate · la principal, con la foto encima ───────────────── */
.et-pcv2-oph__tphoto {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    margin: 0 0 14px;
    border-radius: 3px;
    background: #E9EEF2 center/cover no-repeat;
    transition: transform .25s ease;
}
.et-pcv2-oph__top:hover .et-pcv2-oph__tphoto { transform: scale(1.012); }
.et-pcv2-oph__ttitle {
    margin: 0 0 10px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 21px;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: -0.018em;
    text-wrap: balance;
}
.et-pcv2-oph__ttitle a { color: #14181C; text-decoration: none; }
.et-pcv2-oph__ttitle a:hover { color: var(--et-brand, #114F6E); }

/* ── Las secundarias · filete y titular, nada más ─────────────────
   Este filete es el que marca el compás de la captura. */
.et-pcv2-oph__sub {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--et-rule, #E4E9EE);
}
.et-pcv2-oph__subtitle {
    margin: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 16.5px;
    font-weight: 800;
    line-height: 1.26;
    letter-spacing: -0.012em;
}
.et-pcv2-oph__subtitle a { color: #14181C; text-decoration: none; }
.et-pcv2-oph__subtitle a:hover { color: var(--et-brand, #114F6E); }

/* ── La columna del medio · Opinión ─────────────────────────────────
   v2.214.0 · El retrato ENCIMA y el texto debajo, no al costado. Y el
   titular en una letra más fina y más pequeña: aquí quien tiene que
   pesar es la cara y la comilla, no el cuerpo de la tipografía. */
/* v2.215.0 · Todo centrado —retrato, firma y titular—: la columna es más
   estrecha que antes y el texto en bandera se veía descolgado. */
.et-pcv2-oph__stack {
    display: block;
    padding: 20px 0;
    border-bottom: 1px solid var(--et-rule, #E4E9EE);
    text-align: center;
}
.et-pcv2-oph__stack:first-of-type { padding-top: 4px; }
.et-pcv2-oph__stack:last-child    { border-bottom: 0; }
.et-pcv2-oph__sface {
    display: block;
    width: 108px; height: 108px;
    margin: 0 auto 14px;   /* `auto` a los lados: así el retrato centra */
    border-radius: 50%;
    background: #E3EAF0 center/cover no-repeat;
    box-shadow: 0 0 0 3px #fff, 0 0 0 4px #E4E9EE;
}
.et-pcv2-oph__sbody   { min-width: 0; }
.et-pcv2-oph__ssigner {
    margin: 0 0 6px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11px; font-weight: 800; letter-spacing: .06em;
    text-transform: uppercase; color: var(--et-brand, #114F6E);
}
.et-pcv2-oph__stitle {
    margin: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.42;
    letter-spacing: -0.005em;
    overflow: visible;
}
.et-pcv2-oph__stitle a { color: #14181C; text-decoration: none; }
.et-pcv2-oph__stitle a:hover { color: var(--et-brand, #114F6E); }
/* La comilla, en la MISMA línea del titular y delante de él. Con
   `line-height: 0` la volada no estira el renglón, y el `vertical-align`
   la baja hasta apoyarla en la línea de texto. Nada la recorta. */
.et-pcv2-oph__squote {
    display: inline;
    margin-right: 3px;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 30px;
    line-height: 0;
    vertical-align: -0.18em;
    color: #2C7FA6;
}

/* ═══════════════════════════════════════════════════════════════════════
   LAS FIRMAS · bloque propio, debajo  ·  v2.213.0
   ═══════════════════════════════════════════════════════════════════════ */

.et-pcv2-firmas { margin-top: 34px; padding-top: 26px; border-top: 1px solid var(--et-rule, #E4E9EE); }

/* v2.223.0 · El rótulo «Las firmas» comparte renglón con un banner pegado
   al borde DERECHO. `space-between` no basta: `.et-ad` es `width:max-content`,
   así que la caja se encoge al ancho exacto de la creatividad y, si el
   rótulo es corto, el hueco sobrante se reparte y el banner queda flotando
   a media calle. Lo que lo pega al borde de verdad es el `margin-left:auto`
   de más abajo, que se come TODO el espacio libre. (Es la misma piedra con
   la que se tropezó «Puertos de Canarias» en v2.174.0.) */
.et-pcv2-firmas__head {
    display: flex;
    align-items: flex-end;
    gap: 24px;
}
/* El rótulo se queda con su sitio y suelta el margen inferior: el que
   separa de las firmas es el `padding-top` de la rejilla. */
.et-pcv2-firmas__head > .et-pcv2-shx { flex: 1 1 auto; min-width: 0; margin-bottom: 0; }
.et-pcv2-firmas__head > .et-ad--firmas-head {
    /* Puede encoger si la pantalla aprieta, nunca crecer: comparte línea
       con un título y no debe estrangularlo. */
    flex: 0 1 auto;
    min-width: 0;
    /* v2.224.0 · Más pequeño: venía al 46% del renglón y se comía demasiado
       sitio al lado del título. El tope en píxeles evita además que en
       pantallas anchas el porcentaje lo dispare. */
    max-width: min(34%, 340px);
    margin-left: auto;   /* ← esto es lo que lo pega a la derecha */
}
.et-pcv2-firmas__head > .et-ad--firmas-head img {
    max-width: 100%;
    height: auto;
    display: block;
    margin-left: auto;
}
@media (max-width: 1080px) {
    /* Sin sitio para las dos cosas en línea, el banner baja debajo del
       rótulo —pero sigue a la derecha, que es como lo pidió el CEO. */
    .et-pcv2-firmas__head { flex-wrap: wrap; }
    .et-pcv2-firmas__head > .et-ad--firmas-head { flex: 1 1 100%; max-width: 100%; }
}
/* v2.214.0 · Sin `gap` y con relleno propio: así el filete divisorio cae
   a media calle entre dos firmas y no pegado a una de ellas. */
.et-pcv2-firmas__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
}
.et-pcv2-firma { text-align: center; min-width: 0; padding: 0 30px; }
.et-pcv2-firma:first-child { padding-left: 0; }
.et-pcv2-firma:last-child  { padding-right: 0; }
.et-pcv2-firma + .et-pcv2-firma { border-left: 1px solid var(--et-rule, #E9EDF1); }

/* ── El retrato y su RADAR ──────────────────────────────────────────
   Los anillos nacen en el BORDE de la foto y se apagan al alejarse, como
   el barrido de un radar de barco. Tres, desfasados, para que siempre
   haya uno saliendo: con uno solo el efecto se ve a tirones.

   `inset: -6px` y una escala final corta (1.42) son a propósito: el CEO
   pidió que no se fueran mucho hacia fuera. */
/* v2.216.0 · HUECO PARA EL BARRIDO DEL RADAR
   ───────────────────────────────────────────────────────────────────
   El anillo se sale del retrato, y hay que reservarle ese sitio o pasa
   por encima de lo de al lado. La cuenta, con los valores de aquí:

     caja del radar = 132 + 6·2      = 144px
     al final del barrido = 144 · 1.42 ≈ 204px
     sobresale por lado = (204−144)/2 ≈ 30px  +6 del inset = 36px

   Así que hacen falta ~36px libres arriba y abajo. Se dan 38 y 42: si
   se cambia el tamaño del retrato o la escala del keyframe, hay que
   rehacer esta cuenta. */
.et-pcv2-firmas__grid { padding-top: 38px; }
.et-pcv2-firma__face {
    position: relative;
    display: inline-block;
    width: 132px; height: 132px;
    margin: 0 0 42px;
}
.et-pcv2-firma__img {
    position: absolute; inset: 0;
    border-radius: 50%;
    background: #E9EEF2 center/cover no-repeat;
    z-index: 1;
}
.et-pcv2-firma__radar { position: absolute; inset: -6px; pointer-events: none; z-index: 0; }
.et-pcv2-firma__radar span {
    position: absolute; inset: 0;
    border-radius: 50%;
    border: 1.5px solid #2C7FA6;
    opacity: 0;
    animation: et-firma-radar 3s cubic-bezier(.22,.61,.36,1) infinite;
}
.et-pcv2-firma__radar span:nth-child(2) { animation-delay: 1s; }
.et-pcv2-firma__radar span:nth-child(3) { animation-delay: 2s; }
@keyframes et-firma-radar {
    0%   { transform: scale(1);    opacity: .55; }
    70%  { opacity: .18; }
    100% { transform: scale(1.42); opacity: 0; }
}
/* Quien pide menos animación no ve el barrido: se queda un anillo fijo. */
@media (prefers-reduced-motion: reduce) {
    .et-pcv2-firma__radar span { animation: none; opacity: .28; }
    .et-pcv2-firma__radar span:nth-child(2),
    .et-pcv2-firma__radar span:nth-child(3) { display: none; }
}

/* ── La comilla, EN LA LÍNEA DEL TITULAR y entera ────────────────────
   v2.214.0 · El CEO la quiere delante del titular, en su misma línea.
   El truco para que no descuadre el renglón NI se decapite:
     · `line-height: 0` → la volada no estira la caja de línea;
     · `vertical-align` negativo → se apoya en la línea del texto;
     · el h4 con `overflow: visible` → nada la recorta al sobresalir.
   Antes iba en bloque aparte y se cortaba por arriba. */
.et-pcv2-firma__quote {
    display: inline;
    margin-right: 4px;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 38px;
    line-height: 0;
    vertical-align: -0.2em;
    color: #2C7FA6;
}
.et-pcv2-firma__title {
    margin: 0 0 8px;
    font-size: 20px; line-height: 1.24; font-weight: 800;
    letter-spacing: -0.3px;
    overflow: visible;
}
.et-pcv2-firma__title a { color: #0A0A0A; text-decoration: none; }
.et-pcv2-firma__title a:hover { color: var(--et-brand, #114F6E); }
.et-pcv2-firma__signer {
    margin: 0 0 6px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 13px; font-weight: 700; color: #33475B;
}
/* Donde antes iba el número de comentarios va el nombre de la columna. */
.et-pcv2-firma__colname {
    display: inline-block;
    margin: 0 0 10px;
    padding: 3px 10px;
    background: #F1F6FA;
    border-radius: 2px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 10.5px; font-weight: 800; letter-spacing: .07em;
    text-transform: uppercase; color: var(--et-brand, #114F6E);
}
.et-pcv2-firma__dek {
    margin: 0;
    font-style: italic;
    font-size: 14px; line-height: 1.5; color: #525252;
}

/* Pantalla estrecha: la rejilla pasa a dos columnas, El debate cruza
   abajo, y las firmas se apilan. Al apilarse el filete tiene que dejar de
   ser vertical y volverse horizontal, o cuelga de la nada. */
@media (max-width: 1100px) {
    .et-pcv2-oph__grid--v3 { grid-template-columns: 1fr 1fr; row-gap: 30px; }
    .et-pcv2-oph__grid--v3 .et-pcv2-oph__col--debate { grid-column: 1 / -1; grid-row: 2; padding: 26px 0 0; border-left: 0; border-top: 1px solid var(--et-rule, #E4E9EE); }
    .et-pcv2-firmas__grid { grid-template-columns: 1fr; gap: 0; }
    .et-pcv2-firma { padding: 0; }
    .et-pcv2-firma + .et-pcv2-firma {
        margin-top: 26px;
        padding-top: 26px;
        border-left: 0;
        border-top: 1px solid var(--et-rule, #E9EDF1);
    }
    /* La foto al costado de Buena proa no cabe: se va debajo del texto. */
    .et-pcv2-oph__lead { grid-template-columns: 1fr; }
    .et-pcv2-oph__lart { width: 100%; height: 200px; }
}

/* ═══════════════════════════════════════════════════════════════════════
   LA CARICATURA · v2.217.0
   ───────────────────────────────────────────────────────────────────────
   Un dibujo de autor no es una foto de noticia: no se recorta a una
   proporción fija ni se le hace `cover`. Se enseña ENTERO, con el ancho
   que le venga bien, centrado, y con un tope de alto para que una
   caricatura muy vertical no empuje media portada hacia abajo.
   ═══════════════════════════════════════════════════════════════════════ */

.et-cari { margin: 0 0 34px; }

/* v2.225.0 · El marco pasa a ser un <button>: hay que quitarle la piel de
   botón del navegador o saldría con borde gris y fondo propio. */
button.et-cari__frame {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: none;
    font: inherit;
    color: inherit;
    cursor: zoom-in;
    text-align: inherit;
}
button.et-cari__frame:focus-visible { outline: 2px solid #2C7FA6; outline-offset: 3px; }
.et-cari__more { margin: 8px 0 0; font-family: 'Inter', system-ui, sans-serif; font-size: 13px; }
.et-cari__more a { color: var(--et-brand, #114F6E); font-weight: 700; text-decoration: none; }
.et-cari__more a:hover { text-decoration: underline; }

/* ─── Viñeta ampliada ─────────────────────────────────────────────── */
.et-cari-lock { overflow: hidden; }
.et-cari-lightbox {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4vmin;
    background: rgba(10, 18, 26, .92);
    animation: et-cari-in .18s ease-out;
}
@keyframes et-cari-in { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) {
    .et-cari-lightbox { animation: none; }
}
.et-cari-lightbox__img {
    max-width: 100%;
    max-height: 92vh;
    width: auto;
    height: auto;
    display: block;
    border-radius: 2px;
    box-shadow: 0 18px 60px rgba(0, 0, 0, .5);
    cursor: default;
}
.et-cari-lightbox__x {
    position: absolute;
    top: 16px; right: 20px;
    width: 42px; height: 42px;
    line-height: 1;
    font-size: 30px;
    color: #fff;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 2px;
    cursor: pointer;
}
.et-cari-lightbox__x:hover { background: rgba(255, 255, 255, .22); }
.et-cari-lightbox__x:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.et-cari__fig { margin: 0; text-align: center; }
.et-cari__frame {
    display: inline-block;
    max-width: 100%;
    line-height: 0;              /* mata el hueco fantasma bajo la imagen */
    background: #F4F7F9;
    border: 1px solid var(--et-rule, #E4E9EE);
    border-radius: 3px;
    overflow: hidden;
}
/* `a.` para ganar la especificidad de `.et-pcv2-page img { height:auto }`,
   que vive en esta misma hoja: un empate lo resolvería el orden de carga,
   y eso ya ha mordido cuatro veces en este proyecto. */
.et-cari__frame img,
a.et-cari__frame img {
    display: block;
    max-width: 100%;
    max-height: 620px;
    width: auto;
    height: auto;
}
a.et-cari__frame { transition: box-shadow .2s ease; }
a.et-cari__frame:hover { box-shadow: 0 2px 14px rgba(17,79,110,.14); }

/* El pie: en cursiva y estrecho, como el pie de foto de un diario. */
.et-cari__cap {
    max-width: 68ch;
    margin: 14px auto 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14px;
    font-style: italic;
    line-height: 1.55;
    color: #4A5A68;
    text-wrap: pretty;
}

/* ═══ v2.219.0 · LA VIÑETA DENTRO DEL CARRIL LATERAL ══════════════════
   El CEO la quiere como un cuarto banner debajo del de La Machina, en la
   columna estrecha del módulo de Transporte marítimo. Ahí no cabe el
   rótulo de sección de la casa, así que el componente pinta su variante
   `--rail`: encabezado propio, del tamaño del hueco.
   ═══════════════════════════════════════════════════════════════════ */
.et-pcv2-reg__rail .et-cari--rail { width: 100%; margin: 0; }
.et-cari--rail .et-cari__head { margin: 0 0 10px; text-align: left; }
/* Rótulo con la misma pleca corta que usan los rótulos de columna del
   módulo de Opinión: reconocible como sección de la casa, pero a escala. */
.et-cari--rail .et-cari__title {
    position: relative;
    margin: 0;
    padding-top: 11px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    /* v2.225.0 · 22px, el mismo cuerpo que los rótulos de sección del
       resto de la portada. Venía a 15px «a escala del carril» y al lado de
       las otras categorías se leía como un pie de foto, no como una
       sección de la casa. */
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -0.01em;
    color: #14181C;
}
.et-cari--rail .et-cari__title::before {
    content: "";
    position: absolute;
    top: 0; left: 0;
    width: 34px; height: 3px;
    border-radius: 2px;
    background: linear-gradient(90deg, var(--et-brand, #114F6E) 0%, #2C7FA6 100%);
}
.et-cari--rail .et-cari__sub {
    margin: 5px 0 0;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 12px;
    line-height: 1.4;
    color: #5A6B7A;
}
/* La imagen ocupa el ancho del carril, como las creatividades vecinas.
   `a.` para ganar la especificidad de `.et-pcv2-page img { height:auto }`. */
.et-cari--rail .et-cari__fig { text-align: left; }
.et-cari--rail .et-cari__frame { display: block; width: 100%; }
.et-cari--rail .et-cari__frame img,
a.et-cari--rail .et-cari__frame img,
.et-cari--rail a.et-cari__frame img {
    width: 100%;
    height: auto;
    max-height: none;   /* el tope de 620px es para el ancho de portada */
}
.et-cari--rail .et-cari__cap {
    max-width: 100%;
    margin: 10px 0 0;
    font-size: 12.5px;
    line-height: 1.5;
    text-align: left;
}
/* ─────────────────────────────────────────────────────────────────────
   v2.229.0 · CREATIVIDAD NATIVA DE TEXTO · «.et-natad»
   ─────────────────────────────────────────────────────────────────────
   Estilo para campañas de tipo HTML del panel de Publicidad. NO se pinta
   desde ninguna plantilla: el CSS vive aquí y el contenido se pega en el
   panel, que es donde debe editarse.

   Formato inspirado en el nativo claro de AdSense: tarjeta blanca, titular
   destacado, cuerpo gris y pie con anunciante y llamada a la acción. Rinde
   porque no parece un banner, pero el sello CAMAL + PUBLICIDAD que añade
   et_ad_zone() lo deja identificado como lo que es.

   Tipografía Roboto/Arial a propósito: es la del formato original y marca
   la diferencia con la serif editorial de las noticias. Si se pareciera a
   una noticia engañaría; si se pareciera a un banner no lo miraría nadie. */
.et-natad {
    display: block;
    background: var(--et-paper, #fff);
    border: 1px solid var(--et-rule, #dadce0);
    border-radius: 8px;
    padding: 16px 16px 0;
    text-decoration: none;
    font-family: Roboto, Arial, Helvetica, sans-serif;
    /* v2.236.0 · IMPRESCINDIBLE. `.et-ad` —la caja de toda zona
       publicitaria— lleva `line-height: 0` para matar el hueco fantasma
       que dejan las imágenes de los banners. Esta creatividad es TEXTO y
       heredaba ese cero: las líneas quedaban sin altura y el cintillo, el
       «desde» y la URL del pie se volvían invisibles (existían en el HTML
       con height:0). Se restaura aquí una altura de línea real para todo
       lo que hay dentro de la tarjeta. */
    line-height: 1.4;
    transition: box-shadow .15s ease, border-color .15s ease;
}
.et-natad:hover {
    border-color: #c6cacd;
    box-shadow: 0 1px 6px rgba(32, 33, 36, .16);
}

/* Cintillo del anunciante: «Group Dunes · Inversión» */
.et-natad__eyebrow {
    display: block;
    color: #5f6368;
    font-size: 11px;
    line-height: 1.2;
    letter-spacing: .06em;
    text-transform: uppercase;
    /* v2.232.0 · Mismo aire que deja el titular por debajo: el titular
       queda centrado entre el cintillo y el cuerpo, no pegado arriba. */
    margin-bottom: 12px;
}

/* Titular EN NEGRITA, como pidió el CEO. */
.et-natad__title {
    display: block;
    color: #1a0dab;
    font-size: 19px;
    line-height: 1.25;
    font-weight: 700;
    margin-bottom: 12px;
}
.et-natad:hover .et-natad__title { text-decoration: underline; }

.et-natad__text {
    display: block;
    color: #3c4043;
    font-size: 13px;
    line-height: 1.45;
    margin-bottom: 12px;
}

/* Precio · «desde» pequeño encima de la cifra grande. */
.et-natad__price {
    display: flex;
    align-items: baseline;
    gap: 7px;
    margin-bottom: 12px;
}
.et-natad__from {
    color: #5f6368;
    font-size: 11px;
    line-height: 1;
    text-transform: lowercase;
}
.et-natad__amount {
    color: #202124;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.01em;
}

/* Características: píldoras finas, se apilan solas si no caben. */
.et-natad__feats {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 14px;
    padding: 0;
    list-style: none;
}
.et-natad__feat {
    background: #f1f3f4;
    color: #3c4043;
    font-size: 11px;
    line-height: 1;
    padding: 6px 10px;
    border-radius: 999px;
    white-space: nowrap;
}

.et-natad__foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 -16px;
    padding: 10px 16px;
    background: #f8f9fa;
    border-top: 1px solid var(--et-rule, #ecedee);
    border-radius: 0 0 7px 7px;
}
.et-natad__brand {
    color: #5f6368;
    font-size: 12px;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.et-natad__cta {
    flex: 0 0 auto;
    background: #1a73e8;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    padding: 10px 16px;
    border-radius: 999px;
    white-space: nowrap;
}
.et-natad:hover .et-natad__cta { background: #1765cc; }

@media (max-width: 520px) {
    .et-natad__title  { font-size: 17px; }
    .et-natad__amount { font-size: 21px; }
    .et-natad__foot   { flex-wrap: wrap; }
}

/* ═══ v2.231.0 · Zona «pciu_banner» · pie de Integración puerto-ciudad ═══
   A diferencia de `et-ad--ener`, esta caja NO es `max-content` centrada:
   ocupa TODO el ancho de su columna. El anuncio nativo es una tarjeta de
   texto, no una imagen de medidas fijas, y a media caja se ve raquítico.

   Sigue viviendo dentro del bloque A, así que «Formación y eventos» no se
   entera: el ancho que ocupa es el de la columna, no el de la portada.

   `text-align: left` porque `.et-ad` hereda el centrado de las zonas de
   imagen y aquí el texto tiene que leerse en bandera a la izquierda. */
.et-ad--pciu {
    width: 100%;
    max-width: 100%;
    margin: 18px 0 0;
    text-align: left;
}
/* El sello PUBLICIDAD conserva su `margin-left: auto`, así que cae solo en
   el borde derecho de la tarjeta ya estirada. */
.et-ad--pciu .et-natad { width: 100%; }
/* ═══ v2.238.0 · CREATIVIDAD NATIVA · DISEÑO 2 · «.et-natad2» ═══════
   El primer formato (tarjeta de texto, `.et-natad`) es el DISEÑO 1 y NO se
   toca: sirve la campaña de Group Dunes en Integración puerto-ciudad.

   DISEÑO 2 = variante horizontal CON IMAGEN. Foto a la izquierda, y a la
   derecha titular + anunciante arriba y cuerpo + botón abajo.

   POR QUÉ DOS COLUMNAS Y NO TRES: medido en producción, la columna de
   Buena proa da 559 px útiles. Con las tres columnas del nativo original
   el cuerpo se quedaba en ~200 px y envolvía en DIECISÉIS líneas: 332 px
   de alto, un pegote. A dos columnas y con el cuerpo limitado a 2 líneas
   baja a 95 px. Ese era el problema real, no el tamaño de la letra.

   El cuerpo va con `-webkit-line-clamp: 2` y el titular con elipsis: la
   altura queda FIJA aunque el anunciante escriba de más. Un banner que
   crece según el texto descuadra la portada.

   Como en el diseño 1: `.et-ad` impone `line-height: 0` para matar el
   hueco de las imágenes de banner, así que aquí se restaura o el texto
   se vuelve invisible. */
.et-natad2 {
    display: grid;
    grid-template-columns: 132px 1fr;
    align-items: stretch;
    background: var(--et-paper, #fff);
    border: 1px solid var(--et-rule, #dadce0);
    border-radius: 8px;
    text-decoration: none;
    font-family: Roboto, Arial, Helvetica, sans-serif;
    line-height: 1.35;
    overflow: hidden;
    transition: box-shadow .15s ease, border-color .15s ease;
}
.et-natad2:hover {
    border-color: #c6cacd;
    box-shadow: 0 1px 6px rgba(32, 33, 36, .16);
}

/* Foto · se estira a la altura de la fila y recorta centrada. */
.et-natad2__media {
    display: block;
    background: #eceff1 center/cover no-repeat;
}

.et-natad2__mid {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 7px;
    padding: 10px 14px;
    min-width: 0;
}

/* Fila 1 · titular + anunciante */
.et-natad2__head {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}
.et-natad2__title {
    color: #202124;
    font-size: 15px;
    line-height: 1.25;
    font-weight: 700;
    /* Hasta DOS líneas, nunca cortado. Medido: «Invierte en propiedades,
       sin sorpresas» ocupa 397 px y en la columna de Buena proa hay 397
       justos. Con elipsis a una línea, un navegador más estrecho o una
       fuente distinta se comían la última palabra —y el titular de un
       anunciante no se recorta—. Así envuelve y la tarjeta crece 19 px
       como mucho, en vez de mutilar el mensaje. */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.et-natad2:hover .et-natad2__title { text-decoration: underline; }
.et-natad2__brand {
    display: block;
    color: #5f6368;
    font-size: 11px;
    line-height: 1.25;
}

/* Fila 2 · cuerpo a 2 líneas + botón */
.et-natad2__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
}
.et-natad2__text {
    color: #3c4043;
    font-size: 12px;
    line-height: 1.35;
    min-width: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.et-natad2__cta {
    flex: 0 0 auto;
    background: #202124;
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    padding: 9px 16px;
    border-radius: 999px;
    white-space: nowrap;
}
.et-natad2:hover .et-natad2__cta { background: #000; }

/* La zona ocupa el ancho de la columna y alinea a la izquierda: `.et-ad`
   viene centrada y en `max-content` de las zonas de imagen. El sello
   PUBLICIDAD conserva su `margin-left: auto` y cae solo a la derecha. */
.et-ad--proa {
    width: 100%;
    max-width: 100%;
    /* Filete fino y claro que separa el anuncio de la última noticia de
       Buena proa: marca dónde acaba lo editorial y empieza lo pagado sin
       meter una línea gruesa en medio de la columna. */
    border-top: 1px solid var(--et-rule, #ecedef);
    padding-top: 18px;
    margin: 18px 0 0;
    text-align: left;
}
.et-ad--proa .et-natad2 { width: 100%; }

/* v2.244.0 · Boluda JUSTO DEBAJO de la primera noticia de «Marítimo y naval».
   La rejilla de la destacada es texto | foto | apiladas. El banner cae en una
   2ª fila que abarca las columnas de texto y foto (≈535 px, el ancho para el
   que se afinó este nativo), mientras la columna de las apiladas sigue a la
   derecha abarcando las dos filas. Con la foto a media altura, encaja bajo
   ella sin descuadrar nada. */
.et-pcv2-mrn__a-grid {
    grid-template-rows: auto auto;
    /* v2.245.0 · La rejilla trae `gap: 28px` (fila y columna). Entre la foto
       y el banner sobraba muchísimo aire: 28 del gap + margen + padding del
       banner. Se anula el hueco de FILA (la columna sigue a 28) y el único
       aire lo pone el filete del banner. */
    row-gap: 0;
}
.et-pcv2-mrn__a-grid > .et-pcv2-mrn__a1       { grid-column: 1; grid-row: 1; }
.et-pcv2-mrn__a-grid > .et-pcv2-mrn__a1-media { grid-column: 2; grid-row: 1; }
.et-pcv2-mrn__a-grid > .et-pcv2-mrn__stack    { grid-column: 3; grid-row: 1 / span 2; }
.et-ad--mrn-lead {
    grid-column: 1 / 3;
    grid-row: 2;
    align-self: start;
    width: 100%;
    max-width: 100%;
    /* Filete fino que separa la noticia del anuncio, como en Buena proa. */
    border-top: 1px solid var(--et-rule, #ecedef);
    padding-top: 12px;
    margin: 12px 0 0;
    text-align: left;
}
.et-ad--mrn-lead .et-natad2 { width: 100%; }

/* En columnas estrechas la foto se encoge antes que el texto. */
@media (max-width: 700px) {
    .et-natad2 { grid-template-columns: 96px 1fr; }
    .et-natad2__row { flex-wrap: wrap; gap: 8px; }
}

/* ═══ v2.259.0 · «.et-natad2--v» · MISMA CREATIVIDAD, FORMATO VERTICAL ═══
   El CEO quiere el nativo de Boluda tal cual —Roboto, título #202124/700,
   marca #5f6368, cuerpo #3c4043 y píldora negra— pero de pie, para la
   columna lateral de 280 px de «Puertos de España» (zona `pesp_side`,
   creatividad «Invierte en Marruecos»).

   El único cambio es la disposición: la foto pasa de estar a un lado a ir
   ARRIBA a todo el ancho, y debajo se apilan título, marca, cuerpo y botón.
   Todos los tokens tipográficos se heredan del `.et-natad2` base: aquí solo
   se recolocan y se sube un punto el tamaño porque hay más ancho vertical. */
/* v2.260.0 · La columna C se estira a la altura de las noticias de al lado y
   el banner la ocupa entera: la foto crece hacia abajo para tapar el hueco en
   blanco que quedaba respecto a las columnas A y B. */
.et-pcv2-intl__col--c.et-pcv2-intl__col--ad {
    align-self: stretch;
    display: flex;
}
.et-ad--pespside {
    width: 100%;
    max-width: 100%;
    text-align: left;
    display: flex;
    flex-direction: column;
}
.et-ad--pespside .et-natad2 { width: 100%; }

.et-natad2--v {
    display: flex;                  /* anula el grid de dos columnas del base */
    flex-direction: column;
    flex: 1 1 auto;                 /* llena la altura de la columna */
}
.et-natad2--v .et-natad2__media {
    width: 100%;
    flex: 1 1 auto;                 /* la foto absorbe todo el hueco sobrante */
    min-height: 240px;              /* suelo por si las noticias de al lado son cortas */
}
.et-natad2--v .et-natad2__mid {
    flex: 0 0 auto;
    gap: 9px;
    padding: 15px 16px 16px;
}
.et-natad2--v .et-natad2__title {
    font-size: 17px;
    -webkit-line-clamp: 3;          /* de pie hay sitio para tres líneas */
}
.et-natad2--v .et-natad2__brand { font-size: 11.5px; }
.et-natad2--v .et-natad2__row {
    flex-direction: column;         /* cuerpo encima, botón debajo a lo ancho */
    align-items: stretch;
    gap: 12px;
}
.et-natad2--v .et-natad2__text {
    font-size: 12.5px;
    -webkit-line-clamp: 4;
}
.et-natad2--v .et-natad2__cta {
    text-align: center;             /* botón a ancho completo, texto centrado */
    padding: 11px 16px;
    font-size: 12.5px;
}
