/* ════════════════════════════════════════════════════════════════════
   InfoPuertos / Dunes — PC stylesheet · SCMP-style rebuild
   ════════════════════════════════════════════════════════════════════
   Inter en todo. Layout main 70% + sidebar 30%. Hairlines #E5E3DD.
   Color secundario: #114F6E (en lugar de azul harbor anterior).
   ════════════════════════════════════════════════════════════════════ */

/* ─── Tokens ─── */
:root {
    --et-pc-max: 1280px;
    --et-pc-gut: 24px;
    --et-pc-ink: #0A0A0A;
    --et-pc-ink2: #2A2A2A;
    --et-pc-ink3: #4A4A4A;
    --et-pc-ink4: #757575;
    --et-pc-ink5: #9D9D9D;
    --et-pc-line: #E5E3DD;
    --et-pc-line-soft: #EFEDE7;
    --et-pc-bg: #FFFFFF;
    --et-pc-bg-soft: #F7F6F1;
    --et-pc-blue: #114F6E;       /* v2.85.0 · azul CAMAL AI como color principal */
    --et-pc-blue-dark: #0E435E;
    --et-pc-red: #C8102E;
    --et-pc-gold: #C9A227;
    --et-pc-lime: #B1B448;       /* v2.98.0 · acento secundario de marca — uso MUY puntual */
    --et-pc-harbor: #114F6E;
}

/* ════════════════════════════════════════════════════════════════════
   1. BASE
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-d-only.et-pc {
        font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
        color: var(--et-pc-ink);
        background: var(--et-pc-bg);
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
    .et-pc * { box-sizing: border-box; }
    .et-pc img { max-width: 100%; height: auto; display: block; }
    .et-pc a { color: inherit; text-decoration: none; }
}

/* ════════════════════════════════════════════════════════════════════
   2. TRENDING BAR
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-trending {
        background: #fff;
        border-bottom: 1px solid var(--et-pc-line);
    }
    .et-pc-trending__inner {
        max-width: var(--et-pc-max);
        margin: 0 auto;
        padding: 12px var(--et-pc-gut);
        display: flex;
        align-items: center;
        gap: 14px;
    }
    .et-pc-trending__label {
        font-size: 13px;
        font-weight: 700;
        color: var(--et-pc-red);
        flex-shrink: 0;
        letter-spacing: -0.1px;
    }
    .et-pc-trending__list {
        list-style: none;
        margin: 0; padding: 0;
        display: flex;
        gap: 18px;
        overflow-x: auto;
        scrollbar-width: none;
    }
    .et-pc-trending__list::-webkit-scrollbar { display: none; }
    .et-pc-trending__list li {
        position: relative;
        padding-right: 18px;
        white-space: nowrap;
    }
    .et-pc-trending__list li:not(:last-child)::after {
        content: '';
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 1px;
        height: 14px;
        background: var(--et-pc-line);
    }
    .et-pc-trending__list a {
        font-size: 13.5px;
        color: var(--et-pc-ink2);
        font-weight: 400;
        transition: color 0.15s;
    }
    .et-pc-trending__list a:hover { color: var(--et-pc-blue); }
}

/* ════════════════════════════════════════════════════════════════════
   3. PAGE LAYOUT — 2 columnas SCMP (main 1fr + side 320px)
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc__page { background: #fff; }
    .et-pc__columns {
        max-width: var(--et-pc-max);
        margin: 0 auto;
        padding: 28px var(--et-pc-gut);
        display: grid;
        grid-template-columns: minmax(0, 1fr) 320px;
        gap: 36px;
    }
    .et-pc__main { min-width: 0; }
    .et-pc__main > section + section {
        margin-top: 32px;
        padding-top: 32px;
        border-top: 1px solid var(--et-pc-line);
    }
    .et-pc__full {
        background: #fff;
        padding: 36px 0;
        border-top: 1px solid var(--et-pc-line);
        margin: 28px 0 0;
    }
    .et-pc__full + .et-pc__full {
        margin-top: 0;
        padding-top: 36px;
    }
    .et-pc__full:last-child { border-bottom: 1px solid var(--et-pc-line); }
    .et-pc__full > section {
        max-width: var(--et-pc-max);
        margin: 0 auto;
        padding: 0 var(--et-pc-gut);
    }
}

/* ════════════════════════════════════════════════════════════════════
   4. SECTION HEADERS
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-sec { margin: 0; }
    .et-pc__sec-head {
        display: flex;
        align-items: baseline;
        gap: 16px;
        margin-bottom: 20px;
        padding-bottom: 12px;
        border-bottom: 1px solid var(--et-pc-ink);
    }
    .et-pc__sec-rule { display: none; }
    .et-pc__sec-meta {
        flex: 1;
        display: flex;
        align-items: baseline;
        gap: 12px;
        min-width: 0;
    }
    .et-pc__sec-title {
        margin: 0;
        font-weight: 800;
        font-size: 22px;
        letter-spacing: -0.6px;
        line-height: 1;
        color: var(--et-pc-ink);
    }
    .et-pc__sec-sub {
        font-size: 13px;
        color: var(--et-pc-ink4);
        font-weight: 400;
    }
    .et-pc__sec-more {
        display: inline-flex;
        align-items: center;
        gap: 4px;
        font-size: 12.5px;
        font-weight: 600;
        color: var(--et-pc-blue);
        white-space: nowrap;
    }
    .et-pc__sec-more:hover { color: var(--et-pc-ink); }
    .et-pc__sec-more svg { transition: transform 0.2s; }
    .et-pc__sec-more:hover svg { transform: translateX(2px); }
}

/* ════════════════════════════════════════════════════════════════════
   5. CARD BASE — SCMP style
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-card {
        display: flex;
        flex-direction: column;
        min-width: 0;
    }
    .et-pc-card__photo {
        display: block;
        width: 100%;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
        position: relative;
        overflow: hidden;
        margin-bottom: 12px;
    }
    .et-pc-card__photo--16-9 { aspect-ratio: 16 / 9; }
    .et-pc-card__photo--4-3  { aspect-ratio: 4 / 3; }
    .et-pc-card__photo--21-9 { aspect-ratio: 21 / 9; }
    .et-pc-card__photo--1-1  { aspect-ratio: 1 / 1; }
    .et-pc-card__body { display: flex; flex-direction: column; gap: 6px; }
    .et-pc-card__title {
        margin: 0;
        font-weight: 700;
        font-size: 17px;
        line-height: 1.25;
        letter-spacing: -0.3px;
        color: var(--et-pc-ink);
    }
    .et-pc-card__title a { color: inherit; transition: color 0.15s; }
    .et-pc-card__title a:hover { color: var(--et-pc-blue); }
    .et-pc-card__kicker {
        color: var(--et-pc-blue);
        font-weight: inherit;
        font-size: inherit;
    }
    .et-pc-card__byline {
        display: flex;
        align-items: center;
        gap: 6px;
        font-size: 11.5px;
        color: var(--et-pc-ink4);
        font-variant-numeric: tabular-nums;
        margin-top: 2px;
    }
    .et-pc-card__author { font-weight: 400; color: var(--et-pc-ink4); }
    .et-pc-card__byline-dot { color: var(--et-pc-ink5); }
}

/* Sponsor band */
@media (min-width: 1024px) {
    .et-pc-card-sponsor {
        position: absolute;
        top: 0; left: 0; right: 0;
        z-index: 5;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 7px 12px;
        min-height: 28px;
    }
    .et-pc-card-sponsor__intro {
        font-size: 8.5px;
        font-weight: 700;
        letter-spacing: 1.4px;
        text-transform: uppercase;
        opacity: 0.75;
    }
    .et-pc-card-sponsor__brand {
        font-size: 13px;
        font-weight: 800;
        letter-spacing: -0.3px;
    }
    .et-pc-card-sponsor__logo {
        height: 16px;
        max-width: 100px;
        object-fit: contain;
    }
}

/* ════════════════════════════════════════════════════════════════════
   6. HERO — SCMP exact (lead izq texto + foto der + sides)
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-hero {
        margin: 0 0 28px;
        padding-bottom: 28px;
        border-bottom: 1px solid var(--et-pc-line);
    }
    .et-pc-hero__grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 32px;
        align-items: start;
    }
    .et-pc-hero__lead {
        display: contents;
    }
    .et-pc-hero__lead-body {
        display: flex;
        flex-direction: column;
        gap: 12px;
        order: 1;
    }
    .et-pc-hero__lead-photo {
        aspect-ratio: 16 / 9;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
        position: relative;
        overflow: hidden;
        order: 2;
    }
    .et-pc-hero__lead-cat {
        align-self: flex-start;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.5px;
        color: var(--et-pc-blue);
        text-transform: uppercase;
    }
    .et-pc-hero__lead-title {
        margin: 0;
        font-weight: 800;
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -0.9px;
        color: var(--et-pc-ink);
    }
    .et-pc-hero__lead-title a:hover { color: var(--et-pc-blue); }
    .et-pc-hero__lead-excerpt {
        margin: 0;
        font-size: 14.5px;
        line-height: 1.55;
        color: var(--et-pc-ink3);
    }
    .et-pc-hero__sides { display: contents; }
    .et-pc-hero__side {
        display: flex;
        flex-direction: column;
    }
    .et-pc-hero__side .et-pc-card__photo { margin-bottom: 10px; }
    .et-pc-hero__side-cat {
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.5px;
        color: var(--et-pc-blue);
        text-transform: uppercase;
        margin-bottom: 4px;
        display: block;
    }
    .et-pc-hero__side-title {
        margin: 0 0 4px;
        font-weight: 700;
        font-size: 16px;
        line-height: 1.22;
        letter-spacing: -0.2px;
    }
    .et-pc-hero__side-title a:hover { color: var(--et-pc-blue); }
}

/* ════════════════════════════════════════════════════════════════════
   7. GRID (main col = 70%, así max 3 cols)
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-grid4__row,
    .et-pc-grid3__row {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
    }
    .et-pc-grid4 .et-pc-card__title,
    .et-pc-grid3 .et-pc-card__title { font-size: 15.5px; }
}

/* ════════════════════════════════════════════════════════════════════
   8. LIST (Reuters style)
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-list__col { display: flex; flex-direction: column; }
    .et-pc-list__item {
        display: grid;
        grid-template-columns: 1fr 150px;
        gap: 20px;
        padding: 16px 0;
        border-bottom: 1px solid var(--et-pc-line);
        align-items: flex-start;
    }
    .et-pc-list__item:first-child { padding-top: 0; }
    .et-pc-list__item:last-child { border-bottom: 0; }
    .et-pc-list__text { display: flex; flex-direction: column; gap: 8px; }
    .et-pc-list__title {
        margin: 0;
        font-weight: 700;
        font-size: 17px;
        line-height: 1.25;
        letter-spacing: -0.3px;
    }
    .et-pc-list__title a:hover { color: var(--et-pc-blue); }
    .et-pc-list__thumb {
        aspect-ratio: 4 / 3;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
    }
}

/* ════════════════════════════════════════════════════════════════════
   9. CAROUSEL
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-carousel__wrap { position: relative; }
    .et-pc-carousel__track {
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: calc((100% - 48px) / 3);
        gap: 24px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        padding-bottom: 8px;
        scrollbar-width: none;
    }
    .et-pc-carousel__track::-webkit-scrollbar { display: none; }
    .et-pc-carousel__item { scroll-snap-align: start; }
    .et-pc-carousel__item .et-pc-card__title { font-size: 15.5px; }
    .et-pc-carousel__nav {
        position: absolute;
        top: 32%;
        transform: translateY(-50%);
        z-index: 10;
        width: 36px;
        height: 36px;
        border-radius: 50%;
        background: #fff;
        border: 1px solid var(--et-pc-line);
        cursor: pointer;
        color: var(--et-pc-ink);
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .et-pc-carousel__nav:hover {
        background: var(--et-pc-ink);
        border-color: var(--et-pc-ink);
        color: #fff;
    }
    .et-pc-carousel__nav--prev { left: -16px; }
    .et-pc-carousel__nav--next { right: -16px; }
}

/* ════════════════════════════════════════════════════════════════════
   10. COVER
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-cover__grid {
        display: grid;
        grid-template-columns: 1.5fr 1fr;
        gap: 28px;
    }
    .et-pc-cover__lead-photo {
        aspect-ratio: 16 / 9;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
        margin-bottom: 14px;
        display: block;
    }
    .et-pc-cover__lead-title {
        margin: 0 0 10px;
        font-weight: 800;
        font-size: 26px;
        line-height: 1.1;
        letter-spacing: -0.7px;
    }
    .et-pc-cover__lead-summary {
        margin: 0 0 10px;
        font-size: 14.5px;
        line-height: 1.55;
        color: var(--et-pc-ink3);
    }
    .et-pc-cover__sides { display: flex; flex-direction: column; gap: 18px; }
    .et-pc-cover__side-title {
        margin: 0 0 4px;
        font-weight: 700;
        font-size: 15px;
        line-height: 1.22;
    }
}

/* ════════════════════════════════════════════════════════════════════
   11. LEAD 2
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-lead2__grid {
        display: grid;
        grid-template-columns: 1.5fr 1fr;
        gap: 28px;
    }
    .et-pc-lead2__lead-title {
        margin: 0 0 8px;
        font-weight: 800;
        font-size: 22px;
        line-height: 1.15;
        letter-spacing: -0.5px;
    }
    .et-pc-lead2__lead-summary {
        margin: 0 0 10px;
        font-size: 14px;
        line-height: 1.55;
        color: var(--et-pc-ink3);
    }
    .et-pc-lead2__sides { display: flex; flex-direction: column; gap: 18px; }
    .et-pc-lead2__side-title {
        margin: 0 0 4px;
        font-weight: 700;
        font-size: 15px;
        line-height: 1.25;
    }
}

/* ════════════════════════════════════════════════════════════════════
   12. MAGAZINE
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-magazine__grid {
        display: grid;
        grid-template-columns: 1.4fr 1fr;
        gap: 28px;
    }
    .et-pc-magazine__lead-title {
        margin: 0 0 10px;
        font-weight: 800;
        font-size: 24px;
        line-height: 1.1;
        letter-spacing: -0.7px;
    }
    .et-pc-magazine__lead-summary {
        margin: 0 0 10px;
        font-size: 14.5px;
        line-height: 1.55;
        color: var(--et-pc-ink3);
    }
    .et-pc-magazine__rows { display: flex; flex-direction: column; }
    .et-pc-magazine__row {
        display: grid;
        grid-template-columns: 1fr 100px;
        gap: 14px;
        padding: 12px 0;
        border-bottom: 1px solid var(--et-pc-line);
    }
    .et-pc-magazine__row:first-child { padding-top: 0; }
    .et-pc-magazine__row:last-child { border-bottom: 0; }
    .et-pc-magazine__row-title {
        margin: 0 0 4px;
        font-weight: 700;
        font-size: 14px;
        line-height: 1.25;
    }
    .et-pc-magazine__row-thumb {
        aspect-ratio: 4 / 3;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
    }
}

/* ════════════════════════════════════════════════════════════════════
   13. AD SLOT
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-ad { text-align: center; }
    .et-pc-ad__label {
        display: block;
        font-size: 9px;
        font-weight: 700;
        letter-spacing: 2px;
        color: var(--et-pc-ink5);
        text-transform: uppercase;
        margin-bottom: 8px;
    }
    .et-pc-ad__slot {
        display: flex;
        align-items: center;
        justify-content: center;
        background: var(--et-pc-bg-soft);
        border: 1px solid var(--et-pc-line);
        padding: 16px;
        margin: 0 auto;
        max-width: 970px;
    }
    .et-pc-ad__placeholder {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 6px;
        color: var(--et-pc-ink5);
    }
}

/* ════════════════════════════════════════════════════════════════════
   14. SEPARATOR
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-sep--rule .et-pc-sep__rule {
        border: 0;
        height: 1px;
        background: var(--et-pc-line);
        margin: var(--et-sep-size, 24px) 0;
    }
    .et-pc-sep--space .et-pc-sep__space { height: var(--et-sep-size, 24px); }
    .et-pc-sep--banner .et-pc-sep__banner {
        padding: 16px;
        background: var(--et-pc-ink);
        color: #fff;
        text-align: center;
        font-weight: 700;
        font-size: 14px;
        letter-spacing: 1.2px;
        text-transform: uppercase;
        margin: 16px 0;
    }
    .et-pc-sep--dots { padding: 16px 0; text-align: center; }
    .et-pc-sep--dots .et-pc-sep__dots { display: inline-flex; gap: 8px; }
    .et-pc-sep--dots .et-pc-sep__dots span {
        width: 5px; height: 5px; border-radius: 50%;
        background: var(--et-pc-line);
    }
}

/* ════════════════════════════════════════════════════════════════════
   15. STORIES
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-stories__head {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 14px;
    }
    .et-pc-stories__dot {
        width: 8px; height: 8px;
        border-radius: 50%;
        background: var(--et-pc-red);
        animation: et-pulse 1.5s infinite;
    }
    .et-pc-stories__title {
        margin: 0;
        font-weight: 800;
        font-size: 16px;
        letter-spacing: -0.3px;
    }
    .et-pc-stories__track {
        display: flex;
        gap: 14px;
        overflow-x: auto;
        padding: 4px 4px 10px;
        scrollbar-width: none;
    }
    .et-pc-stories__track::-webkit-scrollbar { display: none; }
    .et-pc-stories__item {
        flex-shrink: 0;
        width: 80px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 6px;
        text-align: center;
    }
    .et-pc-stories__ring {
        width: 64px; height: 64px;
        border-radius: 50%;
        padding: 2px;
        background: linear-gradient(135deg, var(--et-pc-red), var(--et-pc-gold));
    }
    .et-pc-stories__avatar {
        display: block;
        width: 100%; height: 100%;
        border-radius: 50%;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
        border: 2px solid #fff;
    }
    .et-pc-stories__cap {
        font-size: 10.5px;
        line-height: 1.3;
        color: var(--et-pc-ink2);
        font-weight: 500;
    }
}
@keyframes et-pulse {
    0%, 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(200,16,46,0.4); }
    50%      { opacity: 0.8; box-shadow: 0 0 0 6px rgba(200,16,46,0); }
}

/* ════════════════════════════════════════════════════════════════════
   16. QUOTE
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-quote__inner {
        max-width: 860px;
        margin: 0 auto;
        text-align: center;
    }
    .et-pc-quote__mark { color: var(--et-pc-line); margin-bottom: 12px; }
    .et-pc-quote__text {
        margin: 0 0 22px;
        font-weight: 500;
        font-size: 24px;
        line-height: 1.3;
        letter-spacing: -0.4px;
        color: var(--et-pc-ink);
        font-style: italic;
    }
    .et-pc-quote__text a { color: inherit; }
    .et-pc-quote__author { display: inline-flex; align-items: center; gap: 14px; }
    .et-pc-quote__rule { width: 32px; height: 2px; background: var(--et-pc-ink); }
    .et-pc-quote__meta {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 2px;
    }
    .et-pc-quote__meta strong { font-weight: 700; font-size: 13px; }
    .et-pc-quote__meta span {
        font-size: 11px;
        color: var(--et-pc-ink5);
        letter-spacing: 1px;
        text-transform: uppercase;
    }
}

/* ════════════════════════════════════════════════════════════════════
   17. LIVE
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-live {
        background: #fff;
        color: var(--et-pc-ink);
        padding: 22px 24px;
        border: 1px solid var(--et-pc-line);
        position: relative;
    }
    .et-pc-live::before {
        content: '';
        position: absolute;
        top: 0; left: 0; right: 0;
        height: 3px;
        background: var(--et-pc-red);
    }
    .et-pc-live__head {
        display: flex;
        align-items: center;
        gap: 14px;
        margin-bottom: 16px;
        padding-bottom: 12px;
        border-bottom: 1px solid var(--et-pc-line);
    }
    .et-pc-live__badge {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        background: var(--et-pc-red);
        color: #fff;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: 1.4px;
        padding: 4px 9px;
        border-radius: 3px;
    }
    .et-pc-live__dot {
        width: 6px; height: 6px;
        border-radius: 50%;
        background: #fff;
        animation: et-pulse 1.5s infinite;
    }
    .et-pc-live__title {
        margin: 0;
        font-weight: 800;
        font-size: 18px;
        letter-spacing: -0.3px;
    }
    .et-pc-live__feed {
        list-style: none;
        margin: 0; padding: 0;
        display: flex;
        flex-direction: column;
        gap: 12px;
    }
    .et-pc-live__item {
        display: grid;
        grid-template-columns: 56px 1fr;
        gap: 14px;
        padding-bottom: 12px;
        border-bottom: 1px solid var(--et-pc-line-soft);
    }
    .et-pc-live__item:last-child { border-bottom: 0; padding-bottom: 0; }
    .et-pc-live__item.is-latest .et-pc-live__time { color: var(--et-pc-red); font-weight: 800; }
    .et-pc-live__time {
        font-family: 'JetBrains Mono', monospace;
        font-size: 12px;
        color: var(--et-pc-ink4);
        font-variant-numeric: tabular-nums;
        font-weight: 600;
    }
    .et-pc-live__text {
        margin: 0;
        font-size: 13.5px;
        line-height: 1.55;
        color: var(--et-pc-ink2);
    }
}

/* ════════════════════════════════════════════════════════════════════
   18. WEATHER
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-weather__layout {
        display: grid;
        grid-template-columns: 1.7fr 1fr;
        gap: 24px;
        align-items: start;
    }
    .et-pc-weather__main { display: flex; flex-direction: column; gap: 12px; }
    .et-pc-weather__hero {
        background: linear-gradient(135deg, #EAF3FB 0%, #C7DBEE 100%);
        border: 1px solid #BCD4E7;
        border-radius: 10px;
        padding: 22px 26px;
        position: relative;
        overflow: hidden;
    }
    .et-pc-weather__hero::after {
        content: '';
        position: absolute;
        top: -40px; right: -40px;
        width: 160px; height: 160px;
        background: radial-gradient(circle, rgba(255,200,80,0.30) 0%, transparent 70%);
        border-radius: 50%;
    }
    .et-pc-weather__hero-top {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 14px;
        position: relative;
    }
    .et-pc-weather__hero-place { display: flex; flex-direction: column; gap: 2px; }
    .et-pc-weather__hero-name {
        font-weight: 800;
        font-size: 18px;
        letter-spacing: -0.4px;
    }
    .et-pc-weather__hero-time {
        font-size: 11.5px;
        color: var(--et-pc-ink4);
        text-transform: capitalize;
    }
    .et-pc-weather__hero-icon { color: #E89A1A; }
    .et-pc-weather__hero-mid {
        display: flex;
        align-items: baseline;
        gap: 14px;
        margin: 14px 0 12px;
        position: relative;
    }
    .et-pc-weather__hero-temp {
        font-weight: 800;
        font-size: 68px;
        line-height: 1;
        letter-spacing: -2.5px;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-weather__hero-desc {
        font-size: 14.5px;
        color: var(--et-pc-ink2);
        font-weight: 600;
    }
    .et-pc-weather__hero-meta {
        display: flex;
        gap: 18px;
        padding-top: 12px;
        border-top: 1px solid rgba(17,79,110,0.18);
        font-size: 12px;
        color: var(--et-pc-ink3);
        position: relative;
    }
    .et-pc-weather__hero-meta strong {
        font-weight: 600;
        color: var(--et-pc-ink4);
        text-transform: uppercase;
        letter-spacing: 1px;
        font-size: 9.5px;
        margin-right: 4px;
    }
    .et-pc-weather__row {
        display: grid;
        grid-template-columns: repeat(6, 1fr);
        gap: 8px;
    }
    .et-pc-weather__mini {
        background: #fff;
        border: 1px solid var(--et-pc-line);
        border-radius: 6px;
        padding: 10px 4px 8px;
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 3px;
    }
    .et-pc-weather__mini:hover { border-color: var(--et-pc-blue); }
    .et-pc-weather__mini-name {
        font-size: 10px;
        font-weight: 700;
        color: var(--et-pc-ink2);
    }
    .et-pc-weather__mini-icon { color: var(--et-pc-blue); }
    .et-pc-weather__mini-temp {
        font-weight: 800;
        font-size: 18px;
        letter-spacing: -0.5px;
        line-height: 1;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-weather__mini-range {
        font-size: 9.5px;
        color: var(--et-pc-ink4);
        font-variant-numeric: tabular-nums;
    }
    .et-pc-weather__news {
        background: #fff;
        border: 1px solid var(--et-pc-line);
        border-radius: 10px;
        overflow: hidden;
    }
    .et-pc-weather__news .et-pc-card__photo { margin: 0; }
    .et-pc-weather__news-body { padding: 14px 16px 16px; }
    .et-pc-weather__news-kicker {
        display: block;
        font-size: 9.5px;
        font-weight: 800;
        letter-spacing: 1.4px;
        color: var(--et-pc-blue);
        text-transform: uppercase;
        margin-bottom: 6px;
    }
    .et-pc-weather__news-title {
        margin: 0 0 8px;
        font-weight: 700;
        font-size: 15.5px;
        line-height: 1.22;
        letter-spacing: -0.3px;
    }
    .et-pc-weather__news-title a:hover { color: var(--et-pc-blue); }
    .et-pc-weather__news-summary {
        margin: 0 0 8px;
        font-size: 12.5px;
        line-height: 1.55;
        color: var(--et-pc-ink3);
    }
}

/* ════════════════════════════════════════════════════════════════════
   19. SEISMIC
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-seismic__grid {
        display: grid;
        grid-template-columns: 1.5fr 1fr;
        gap: 24px;
        align-items: start;
    }
    .et-pc-seismic__news { display: flex; flex-direction: column; }
    .et-pc-seismic__news .et-pc-card__photo { margin-bottom: 12px; }
    .et-pc-seismic__news-kicker {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        font-size: 10.5px;
        font-weight: 800;
        color: var(--et-pc-red);
        letter-spacing: 1.4px;
        text-transform: uppercase;
        margin-bottom: 8px;
    }
    .et-pc-seismic__news-dot {
        width: 6px; height: 6px;
        border-radius: 50%;
        background: var(--et-pc-red);
        animation: et-pulse 1.5s infinite;
    }
    .et-pc-seismic__news-title {
        margin: 0 0 8px;
        font-weight: 800;
        font-size: 22px;
        line-height: 1.12;
        letter-spacing: -0.5px;
    }
    .et-pc-seismic__news-title a:hover { color: var(--et-pc-blue); }
    .et-pc-seismic__news-summary {
        margin: 0 0 10px;
        font-size: 13.5px;
        line-height: 1.55;
        color: var(--et-pc-ink3);
    }
    .et-pc-seismic__panel {
        background: #fff;
        border: 1px solid var(--et-pc-line);
        border-radius: 8px;
        overflow: hidden;
    }
    .et-pc-seismic__panel-head {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 12px 16px;
        border-bottom: 1px solid var(--et-pc-line);
        background: var(--et-pc-bg-soft);
    }
    .et-pc-seismic__panel-icon { color: var(--et-pc-red); }
    .et-pc-seismic__panel-title {
        margin: 0;
        flex: 1;
        font-size: 12.5px;
        font-weight: 800;
    }
    .et-pc-seismic__panel-source {
        font-size: 9.5px;
        font-weight: 700;
        color: var(--et-pc-ink5);
        letter-spacing: 1px;
    }
    .et-pc-seismic__panel-list { list-style: none; margin: 0; padding: 0; }
    .et-pc-seismic__panel-list li {
        display: grid;
        grid-template-columns: 44px 1fr;
        gap: 12px;
        padding: 10px 16px;
        border-bottom: 1px solid var(--et-pc-line-soft);
        align-items: center;
    }
    .et-pc-seismic__panel-list li:last-child { border-bottom: 0; }
    .et-pc-seismic__panel-mag {
        font-weight: 800;
        font-variant-numeric: tabular-nums;
        text-align: center;
        padding: 6px 0;
        border-radius: 4px;
        font-size: 13.5px;
        line-height: 1;
    }
    .et-pc-seismic__panel-mag.is-high { background: rgba(200,16,46,0.10); color: var(--et-pc-red); }
    .et-pc-seismic__panel-mag.is-mid  { background: rgba(201,162,39,0.14); color: #8B6E1A; }
    .et-pc-seismic__panel-mag.is-low  { background: var(--et-pc-bg-soft); color: var(--et-pc-ink3); }
    .et-pc-seismic__panel-info { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
    .et-pc-seismic__panel-place {
        font-weight: 700;
        font-size: 12px;
        letter-spacing: -0.2px;
    }
    .et-pc-seismic__panel-meta {
        font-size: 10.5px;
        color: var(--et-pc-ink5);
        font-variant-numeric: tabular-nums;
    }
}

/* ════════════════════════════════════════════════════════════════════
   20. OPINION
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-opinion__grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }
    .et-pc-opinion__card {
        border-top: 2px solid var(--et-pc-ink);
        padding: 16px 0 14px;
    }
    .et-pc-opinion__head {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 10px;
    }
    .et-pc-opinion__avatar {
        width: 36px; height: 36px;
        border-radius: 50%;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
        flex-shrink: 0;
    }
    .et-pc-opinion__meta { display: flex; flex-direction: column; min-width: 0; }
    .et-pc-opinion__author {
        font-weight: 700;
        font-size: 12.5px;
        color: var(--et-pc-ink);
    }
    .et-pc-opinion__role {
        font-size: 10.5px;
        color: var(--et-pc-ink5);
    }
    .et-pc-opinion__title {
        margin: 0 0 6px;
        font-weight: 700;
        font-size: 15.5px;
        line-height: 1.25;
        letter-spacing: -0.2px;
        font-style: italic;
    }
    .et-pc-opinion__title a:hover { color: var(--et-pc-blue); }
    .et-pc-opinion__date {
        font-size: 10.5px;
        color: var(--et-pc-ink5);
        font-variant-numeric: tabular-nums;
    }
}

/* ════════════════════════════════════════════════════════════════════
   21. ECONOMÍA + PRECIOS
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-economia__prices {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 12px;
        margin-bottom: 24px;
        padding: 16px;
        background: var(--et-pc-bg-soft);
        border: 1px solid var(--et-pc-line);
        border-radius: 8px;
        position: relative;
    }
    .et-pc-economia__prices::before {
        content: 'PRECIOS EN CANARIAS';
        position: absolute;
        top: -8px; left: 14px;
        background: #fff;
        padding: 0 8px;
        font-size: 9px;
        font-weight: 800;
        letter-spacing: 1.6px;
        color: var(--et-pc-ink5);
    }
    .et-pc-economia__price {
        display: flex;
        flex-direction: column;
        gap: 4px;
        padding: 4px 0;
        border-right: 1px solid var(--et-pc-line);
    }
    .et-pc-economia__price:last-child { border-right: 0; }
    .et-pc-economia__price-label {
        font-size: 10px;
        font-weight: 700;
        color: var(--et-pc-ink4);
        text-transform: uppercase;
        letter-spacing: 0.6px;
    }
    .et-pc-economia__price-value {
        font-weight: 800;
        font-size: 20px;
        color: var(--et-pc-ink);
        letter-spacing: -0.5px;
        line-height: 1;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-economia__price-meta {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: 6px;
    }
    .et-pc-economia__price-unit { font-size: 10px; color: var(--et-pc-ink5); }
    .et-pc-economia__price-delta {
        font-size: 10.5px;
        font-weight: 700;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-economia__price-delta.is-up { color: var(--et-pc-red); }
    .et-pc-economia__price-delta.is-down { color: #2E7D32; }
    .et-pc-economia__grid {
        display: grid;
        grid-template-columns: 1.5fr 1fr;
        gap: 24px;
    }
    .et-pc-economia__news { display: flex; flex-direction: column; }
    .et-pc-economia__item {
        padding: 14px 0;
        border-bottom: 1px solid var(--et-pc-line);
    }
    .et-pc-economia__item:first-child { padding-top: 0; }
    .et-pc-economia__item:last-child { border-bottom: 0; }
    .et-pc-economia__item.is-lead .et-pc-card__photo { margin-bottom: 10px; }
    .et-pc-economia__title {
        margin: 0 0 6px;
        font-weight: 700;
        font-size: 15px;
        line-height: 1.25;
        letter-spacing: -0.2px;
    }
    .et-pc-economia__item.is-lead .et-pc-economia__title {
        font-size: 20px;
        letter-spacing: -0.4px;
    }
    .et-pc-economia__title a:hover { color: var(--et-pc-blue); }
    .et-pc-economia__panel {
        background: #fff;
        border: 1px solid var(--et-pc-line);
        border-radius: 6px;
        padding: 16px;
    }
    .et-pc-economia__panel-head {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 14px;
        padding-bottom: 10px;
        border-bottom: 1px solid var(--et-pc-line);
    }
    .et-pc-economia__panel-dot {
        width: 7px; height: 7px;
        border-radius: 50%;
        background: var(--et-pc-red);
        animation: et-pulse 1.5s infinite;
    }
    .et-pc-economia__panel-label {
        flex: 1;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: 1.6px;
    }
    .et-pc-economia__panel-time {
        font-family: 'JetBrains Mono', monospace;
        font-size: 10px;
        color: var(--et-pc-ink5);
    }
    .et-pc-economia__panel-list { list-style: none; margin: 0; padding: 0; }
    .et-pc-economia__panel-list li {
        display: grid;
        grid-template-columns: 1fr auto auto;
        gap: 10px;
        align-items: baseline;
        padding: 8px 0;
        border-bottom: 1px solid var(--et-pc-line-soft);
    }
    .et-pc-economia__panel-list li:last-child { border-bottom: 0; }
    .et-pc-economia__panel-name {
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.3px;
    }
    .et-pc-economia__panel-value {
        font-family: 'JetBrains Mono', monospace;
        font-size: 12px;
        font-weight: 700;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-economia__panel-delta {
        font-size: 10.5px;
        font-weight: 700;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-economia__panel-delta.is-up { color: #2E7D32; }
    .et-pc-economia__panel-delta.is-down { color: var(--et-pc-red); }
}

/* ════════════════════════════════════════════════════════════════════
   22. MATCH
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-match__board {
        background: #fff;
        color: var(--et-pc-ink);
        border: 1px solid var(--et-pc-line);
        border-radius: 8px;
        padding: 24px;
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        gap: 20px;
        margin-bottom: 18px;
        position: relative;
        overflow: hidden;
    }
    .et-pc-match__board::before {
        content: '';
        position: absolute;
        top: 0; left: 0; right: 0;
        height: 4px;
        background: var(--et-pc-blue);
    }
    .et-pc-match[data-team="tenerife"] .et-pc-match__board::before { background: #003366; }
    .et-pc-match[data-team="tenerife"] .et-pc-match__crest {
        background: linear-gradient(135deg, #E8F0F8, #C9DCEC);
        border-color: #003366;
    }
    .et-pc-match[data-team="laspalmas"] .et-pc-match__board::before {
        background: linear-gradient(to right, #FFD700 0%, #FFD700 50%, var(--et-pc-blue) 50%, var(--et-pc-blue) 100%);
    }
    .et-pc-match[data-team="laspalmas"] .et-pc-match__crest {
        background: linear-gradient(135deg, #FFF8DC, #FFE96B);
        border-color: #C9A227;
    }
    .et-pc-match__team {
        display: flex;
        align-items: center;
        gap: 12px;
    }
    .et-pc-match__team--away { justify-content: flex-end; }
    .et-pc-match__crest {
        width: 52px; height: 52px;
        background: var(--et-pc-bg-soft);
        border: 1px solid var(--et-pc-line);
        border-radius: 50%;
    }
    .et-pc-match__name {
        font-weight: 800;
        font-size: 16px;
        letter-spacing: -0.3px;
    }
    .et-pc-match__score { text-align: center; }
    .et-pc-match__numbers {
        font-weight: 800;
        font-size: 40px;
        letter-spacing: -1.5px;
        line-height: 1;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-match__numbers span { color: var(--et-pc-line); margin: 0 6px; }
    .et-pc-match__live {
        margin-top: 8px;
        display: inline-flex;
        align-items: center;
        gap: 5px;
        background: var(--et-pc-red);
        color: #fff;
        padding: 3px 8px;
        border-radius: 3px;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: 1.2px;
    }
    .et-pc-match__dot {
        width: 6px; height: 6px;
        background: #fff;
        border-radius: 50%;
        animation: et-pulse 1.5s infinite;
    }
}

/* ════════════════════════════════════════════════════════════════════
   23. TRAVEL
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-travel__lead {
        display: grid;
        grid-template-columns: 1.5fr 1fr;
        gap: 24px;
        align-items: center;
    }
    .et-pc-travel__mosaic {
        display: grid;
        grid-template-columns: 2fr 1fr;
        grid-template-rows: 1fr 1fr 1fr;
        gap: 6px;
        height: 320px;
    }
    .et-pc-travel__hero {
        grid-row: 1 / 4;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
    }
    .et-pc-travel__tile {
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
    }
    .et-pc-travel__title {
        margin: 0 0 8px;
        font-weight: 800;
        font-size: 22px;
        line-height: 1.12;
        letter-spacing: -0.5px;
    }
    .et-pc-travel__summary {
        margin: 0 0 10px;
        font-size: 13.5px;
        line-height: 1.55;
        color: var(--et-pc-ink3);
    }
    .et-pc-travel__more {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        margin-top: 20px;
        padding-top: 18px;
        border-top: 1px solid var(--et-pc-line);
    }
    .et-pc-travel__item-title {
        margin: 0 0 4px;
        font-weight: 700;
        font-size: 14px;
        line-height: 1.25;
    }
}

/* ════════════════════════════════════════════════════════════════════
   24. SPONSORED
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-sponsored__head {
        max-width: var(--et-pc-max);
        margin: 0 auto 20px;
        display: flex;
        align-items: baseline;
        gap: 14px;
        padding-bottom: 10px;
        border-bottom: 1px solid var(--et-pc-line);
    }
    .et-pc-sponsored__rule {
        width: 40px;
        height: 3px;
        background: var(--et-pc-gold);
    }
    .et-pc-sponsored__title {
        margin: 0;
        font-weight: 800;
        font-size: 16px;
        letter-spacing: -0.3px;
    }
    .et-pc-sponsored__hint {
        margin-left: auto;
        font-size: 11px;
        color: var(--et-pc-ink5);
    }
    .et-pc-sponsored__grid {
        max-width: var(--et-pc-max);
        margin: 0 auto;
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 18px;
    }
    .et-pc-sponsored__card {
        background: #fff;
        border: 1px solid var(--et-pc-line);
        overflow: hidden;
        display: flex;
        flex-direction: column;
    }
    .et-pc-sponsored__card:hover { border-color: var(--et-pc-blue); }
    .et-pc-sponsored__photo {
        aspect-ratio: 4 / 3;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
    }
    .et-pc-sponsored__sponsor {
        padding: 12px 12px 4px;
        font-size: 9px;
        font-weight: 700;
        letter-spacing: 1.4px;
        color: var(--et-pc-gold);
        text-transform: uppercase;
    }
    .et-pc-sponsored__card-title {
        padding: 0 12px 14px;
        font-weight: 700;
        font-size: 13.5px;
        line-height: 1.3;
    }
}

/* ════════════════════════════════════════════════════════════════════
   25. NEWSLETTER
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-newsletter__inner {
        max-width: 920px;
        margin: 0 auto;
        background: var(--et-pc-bg-soft);
        border: 1px solid var(--et-pc-line);
        padding: 32px;
        border-radius: 8px;
        display: grid;
        grid-template-columns: 1.2fr 1fr;
        gap: 28px;
        align-items: center;
        position: relative;
        overflow: hidden;
    }
    .et-pc-newsletter__inner::before {
        content: '';
        position: absolute;
        top: 0; left: 0; right: 0;
        height: 3px;
        background: linear-gradient(to right, var(--et-pc-red), var(--et-pc-gold));
    }
    .et-pc-newsletter__kicker {
        display: inline-block;
        font-size: 9.5px;
        font-weight: 800;
        letter-spacing: 1.8px;
        color: var(--et-pc-red);
        text-transform: uppercase;
        margin-bottom: 8px;
    }
    .et-pc-newsletter__title {
        margin: 0 0 8px;
        font-weight: 800;
        font-size: 22px;
        line-height: 1.15;
        letter-spacing: -0.5px;
    }
    .et-pc-newsletter__sub {
        margin: 0;
        font-size: 13px;
        line-height: 1.55;
        color: var(--et-pc-ink3);
    }
    .et-pc-newsletter__form { display: flex; flex-direction: column; gap: 10px; }
    .et-pc-newsletter__form input {
        padding: 11px 14px;
        border-radius: 5px;
        border: 1px solid var(--et-pc-line);
        background: #fff;
        color: var(--et-pc-ink);
        font-size: 13px;
        font-family: inherit;
        outline: none;
    }
    .et-pc-newsletter__form input:focus { border-color: var(--et-pc-ink); }
    .et-pc-newsletter__form button {
        padding: 11px 14px;
        border-radius: 5px;
        border: 0;
        background: var(--et-pc-ink);
        color: #fff;
        font-family: inherit;
        font-weight: 700;
        font-size: 13px;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
    }
    .et-pc-newsletter__form button:hover { background: var(--et-pc-blue); }
    .et-pc-newsletter__legal { font-size: 10px; color: var(--et-pc-ink5); }
    .et-pc-newsletter__legal a { color: var(--et-pc-blue); text-decoration: underline; }
}

/* ════════════════════════════════════════════════════════════════════
   26. SIDEBAR SCMP
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc__side {
        min-width: 0;
        display: flex;
        flex-direction: column;
        gap: 24px;
    }
    .et-pc-side__head {
        display: flex;
        align-items: center;
        gap: 12px;
        margin-bottom: 12px;
        padding-bottom: 6px;
        border-bottom: 2px solid var(--et-pc-ink);
    }
    .et-pc-side__head-title {
        margin: 0;
        font-weight: 800;
        font-size: 15px;
        letter-spacing: -0.2px;
    }
    .et-pc-side__head-rule { flex: 1; height: 1px; }
    .et-pc-side__more {
        display: inline-block;
        margin-top: 10px;
        font-size: 12px;
        font-weight: 600;
        color: var(--et-pc-blue);
    }
    .et-pc-side__more:hover { color: var(--et-pc-ink); }

    /* CTA */
    .et-pc-side__cta {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 14px 16px;
        background: #fff;
        border: 1px solid var(--et-pc-line);
        border-radius: 6px;
    }
    .et-pc-side__cta:hover { border-color: var(--et-pc-blue); }
    .et-pc-side__cta-label {
        font-size: 12.5px;
        font-weight: 600;
    }
    .et-pc-side__cta-action {
        display: inline-flex;
        align-items: center;
        gap: 4px;
        font-size: 10.5px;
        font-weight: 800;
        color: var(--et-pc-blue);
        letter-spacing: 0.5px;
        text-transform: uppercase;
    }

    /* Featured topic */
    .et-pc-side-feat__topic {
        display: inline-block;
        font-size: 10.5px;
        font-weight: 700;
        letter-spacing: 1.3px;
        color: var(--et-pc-blue);
        text-transform: uppercase;
        margin-bottom: 10px;
    }
    .et-pc-side-feat__photo {
        display: block;
        aspect-ratio: 16 / 9;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
        margin-bottom: 10px;
    }
    .et-pc-side-feat__title {
        margin: 0;
        font-weight: 700;
        font-size: 16px;
        line-height: 1.22;
        letter-spacing: -0.3px;
    }
    .et-pc-side-feat__title a:hover { color: var(--et-pc-blue); }

    /* Ads */
    .et-pc-side-ad__label {
        display: block;
        font-size: 9px;
        font-weight: 700;
        letter-spacing: 1.5px;
        color: var(--et-pc-ink5);
        text-transform: uppercase;
        margin-bottom: 6px;
        text-align: center;
    }
    .et-pc-side-ad__slot {
        background: var(--et-pc-bg-soft);
        border: 1px solid var(--et-pc-line);
        height: 250px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .et-pc-side-ad__placeholder {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 8px;
        color: var(--et-pc-ink5);
        font-size: 12px;
    }

    /* Popular */
    .et-pc-popular__list { list-style: none; margin: 0; padding: 0; }
    .et-pc-popular__list li {
        display: grid;
        grid-template-columns: 26px 1fr;
        gap: 12px;
        padding: 11px 0;
        border-bottom: 1px solid var(--et-pc-line-soft);
    }
    .et-pc-popular__list li:first-child { padding-top: 0; }
    .et-pc-popular__list li:last-child { border-bottom: 0; padding-bottom: 0; }
    .et-pc-popular__num {
        font-size: 15px;
        font-weight: 800;
        color: var(--et-pc-blue);
        line-height: 1;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-popular__title {
        margin: 0;
        font-weight: 600;
        font-size: 13px;
        line-height: 1.32;
        letter-spacing: -0.2px;
    }
    .et-pc-popular__title a:hover { color: var(--et-pc-blue); }

    /* Opinion sidebar */
    .et-pc-side-op__item {
        display: grid;
        grid-template-columns: 1fr 40px;
        gap: 10px;
        padding: 12px 0;
        border-bottom: 1px solid var(--et-pc-line-soft);
        align-items: center;
    }
    .et-pc-side-op__item:last-child { border-bottom: 0; }
    .et-pc-side-op__meta {
        display: flex;
        gap: 4px;
        font-size: 10.5px;
        margin-bottom: 4px;
    }
    .et-pc-side-op__kicker { color: var(--et-pc-gold); font-weight: 700; }
    .et-pc-side-op__author { color: var(--et-pc-ink3); font-weight: 600; }
    .et-pc-side-op__title {
        margin: 0;
        font-weight: 700;
        font-size: 13px;
        line-height: 1.3;
        font-style: italic;
    }
    .et-pc-side-op__title a:hover { color: var(--et-pc-blue); }
    .et-pc-side-op__avatar {
        width: 40px; height: 40px;
        border-radius: 50%;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
    }
}

/* ════════════════════════════════════════════════════════════════════
   27. HEADER (topbar + masthead + nav)
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    /* Topbar — claro tipo SCMP */
    .et-pc-topbar {
        background: #fff;
        color: var(--et-pc-ink4);
        font-size: 12px;
        border-bottom: 1px solid var(--et-pc-line);
    }
    .et-pc-topbar__inner {
        max-width: var(--et-pc-max);
        margin: 0 auto;
        padding: 8px var(--et-pc-gut);
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
    }
    .et-pc-topbar__left, .et-pc-topbar__right {
        display: flex;
        align-items: center;
        gap: 12px;
    }
    .et-pc-topbar__date {
        font-variant-numeric: tabular-nums;
        color: var(--et-pc-ink3);
        text-transform: capitalize;
    }
    .et-pc-topbar__sep { color: var(--et-pc-line); }
    .et-pc-topbar__time {
        font-variant-numeric: tabular-nums;
        font-weight: 600;
        color: var(--et-pc-ink);
    }
    .et-pc-topbar__loc { color: var(--et-pc-ink4); }
    .et-pc-topbar__link {
        color: var(--et-pc-ink3);
        font-size: 12px;
        font-weight: 500;
    }
    .et-pc-topbar__link:hover { color: var(--et-pc-blue); }
    /* Candado "solo usuarios registrados" · icono limpio, color CAMAL AI */
    .et-pc-topbar__link--locked { position: relative; }
    .et-pc-lock {
        display: inline-flex; align-items: center; margin-left: 4px;
        color: #114F6E; position: relative; top: -4px; opacity: .9;
        transition: color .15s ease, opacity .15s ease;
    }
    .et-pc-lock svg { display: block; width: 9px; height: 10px; }
    /* v2.95.3 · Favicon de CAMAL AI en vez del candado, mismo tamaño */
    .et-pc-lock img { display: block; width: 11px; height: 11px; border-radius: 2px; }
    .et-pc-topbar__link--locked:hover .et-pc-lock { color: #114F6E; opacity: 1; }
    .et-pc-topbar__cta {
        background: #114F6E;      /* v2.95.4 · navy CAMAL AI fijo (no depende de la var) */
        color: #fff;
        padding: 6px 14px;
        border-radius: 3px;
        font-weight: 700;
        font-size: 11px;
        letter-spacing: 0.4px;
        text-transform: uppercase;
        transition: background 0.15s;
    }
    .et-pc-topbar__cta:hover { background: #114F6E; }  /* azul CAMAL AI al pasar */
    /* v2.48.17 · Buscador integrado en el header top (Home), tras la ubicación */
    .et-pc-topbar__search { display: flex; align-items: center; gap: 6px; color: var(--et-pc-ink4); }
    .et-pc-topbar__search svg { color: var(--et-pc-ink4); flex-shrink: 0; }
    .et-pc-topbar__search input {
        background: transparent; border: 0; outline: 0; padding: 0;
        font-family: inherit; font-size: 12px; color: var(--et-pc-ink);
        width: 120px; transition: width .18s;
    }
    .et-pc-topbar__search input::placeholder { color: var(--et-pc-ink5); }
    .et-pc-topbar__search input:focus { width: 180px; }

    /* Masthead */
    .et-pc-masthead {
        background: #fff;
        border-bottom: 1px solid var(--et-pc-line);
        padding: 22px 0 18px;
    }
    .et-pc-masthead__inner {
        max-width: var(--et-pc-max);
        margin: 0 auto;
        padding: 0 var(--et-pc-gut);
        display: grid;
        /* v2.48.21 · minmax(0,1fr) en los laterales → columnas simétricas exactas,
           así el logo (columna central auto) queda SIEMPRE centrado en la página
           aunque la frase o la calima tengan distinto ancho. */
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
        align-items: center;
        gap: 20px;
    }
    .et-pc-wordmark {
        grid-column: 2;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 4px;
    }
    .et-pc-wordmark__img {
        display: block;
        width: auto;
        max-width: 520px; /* v2.48.19 · antes 320px topaba el ancho del logo apaisado e impedía que el control de tamaño de Studio surtiera efecto */
        height: auto;     /* respeta el height inline del panel (logo_pc_size) sin deformar */
        object-fit: contain;
    }
    .et-pc-wordmark__h {
        margin: 0;
        font-weight: 900;
        font-size: 36px;
        letter-spacing: -1.6px;
        color: var(--et-pc-blue);
        line-height: 1;
        display: flex;
        align-items: baseline;
    }
    .et-pc-wordmark__pre {
        font-weight: 300;
        color: var(--et-pc-ink4);
        font-size: 26px;
        letter-spacing: -0.5px;
        margin-right: 1px;
    }
    .et-pc-wordmark__main {
        font-weight: 900;
        color: var(--et-pc-blue);
    }
    .et-pc-wordmark__tagline {
        font-size: 10px;
        font-weight: 600;
        letter-spacing: 1.8px;
        text-transform: uppercase;
        color: var(--et-pc-ink5);
        line-height: 1;
    }
    .et-pc-search {
        grid-column: 1;
        justify-self: start;
        display: flex;
        align-items: center;
        gap: 8px;
        background: transparent;
        border: 0;
        padding: 6px 0;
        color: var(--et-pc-ink);
    }
    .et-pc-search svg { color: var(--et-pc-ink); flex-shrink: 0; }
    .et-pc-search input {
        flex: 1;
        background: transparent;
        border: 0;
        outline: 0;
        font-family: inherit;
        font-size: 13px;
        color: var(--et-pc-ink);
        min-width: 140px;
    }
    .et-pc-search input::placeholder { color: var(--et-pc-ink5); }
    .et-pc-search__kbd { display: none; }

    /* ─── v2.48.16 · Home PC · Frase del momento + buscador (izq) + Calima (der) ─── */
    .et-pc-masthead--home .et-pc-masthead__inner { gap: 28px; }

    /* Columna izquierda · Frase del momento + buscador (apilados, a la izquierda) */
    .et-pc-masthead__left {
        grid-column: 1;
        justify-self: start;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        max-width: 280px; /* v2.48.21 · más estrecho → más aire entre la frase y el logo */
    }
    .et-pc-frase { text-align: left; width: 100%; }
    .et-pc-frase__eyebrow {
        display: block;
        font-size: 9.5px; font-weight: 900; letter-spacing: 1.4px;
        text-transform: uppercase; color: var(--et-pc-blue, #114F6E); margin-bottom: 6px;
    }
    .et-pc-frase__body { margin: 0; padding: 0; border: 0; }
    .et-pc-frase__text {
        margin: 0; font-size: 14.5px; font-weight: 500; line-height: 1.35; letter-spacing: -0.3px;
        color: var(--et-pc-ink, #0A0A0A);
        display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    }
    .et-pc-frase__mark {
        display: block; text-align: left;
        font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
        font-size: 46px; line-height: 0.5; height: 15px; margin-top: 12px;
        color: var(--et-pc-blue, #114F6E); font-weight: 700; pointer-events: none;
    }
    .et-pc-frase__cite {
        display: block; font-style: normal;
        font-size: 11px; color: var(--et-pc-ink5, #8C8C8C); margin-top: 0;
    }
    .et-pc-frase__author { font-weight: 500; color: var(--et-pc-ink3, #404040); }
    .et-pc-frase__role { color: var(--et-pc-ink5, #8C8C8C); }

    /* Buscador en el Home: clásico (transparente, compacto), a la izquierda bajo la frase */
    .et-pc-search--home {
        justify-self: start;
        padding: 6px 0 0;
        max-width: 220px;
        opacity: .75;
        transition: opacity .18s;
    }
    .et-pc-search--home:focus-within { opacity: 1; }
    .et-pc-search--home input { min-width: 0; width: 150px; text-align: left; }

    /* Calima · columna derecha, alineada a la derecha. Estado en AZUL + negrita,
       barra lateral en AZUL del theme. El punto y los segmentos siguen en el
       color del nivel (verde/ámbar/naranja/rojo). */
    .et-pc-calima {
        grid-column: 3;
        justify-self: end;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        gap: 5px;
        text-decoration: none;
        text-align: right;
        border-right: 2px solid var(--et-pc-blue, #114F6E); /* barra lateral azul theme */
        padding: 2px 14px 2px 0;
        max-width: 300px;
    }
    .et-pc-calima__eyebrow {
        font-size: 9.5px; font-weight: 900; letter-spacing: 1.4px;
        text-transform: uppercase; color: var(--et-pc-blue, #114F6E);
    }
    .et-pc-calima__status { display: flex; align-items: center; gap: 9px; }
    .et-pc-calima__dot {
        width: 9px; height: 9px; border-radius: 50%;
        background: var(--cal, #15A34A); flex-shrink: 0;
    }
    .et-pc-calima__label {
        font-size: 19px; font-weight: 700; letter-spacing: -0.5px;
        color: var(--et-pc-blue, #114F6E); line-height: 1; /* estado en azul theme + negrita */
    }
    .et-pc-calima__meta { font-size: 11px; color: var(--et-pc-ink5, #8C8C8C); letter-spacing: 0.1px; }
    .et-pc-calima__live { color: var(--cal, #15A34A); font-weight: 600; }
    .et-pc-calima__scale { display: flex; gap: 3px; width: 130px; margin-top: 3px; }
    .et-pc-calima__seg { flex: 1; height: 3px; border-radius: 2px; background: #ECECEC; transition: background .2s; }
    .et-pc-calima__seg.is-on { background: var(--cal, #15A34A); }

    /* Nav sticky */
    .et-pc-nav {
        background: #fff;
        border-bottom: 1px solid var(--et-pc-line);
        position: sticky;
        top: 0;
        z-index: 100;
        transition: box-shadow 0.2s;
    }
    .et-pc-nav.is-stuck {
        box-shadow: 0 2px 16px -8px rgba(10,10,10,0.20);
    }
    .et-pc-nav__inner {
        max-width: var(--et-pc-max);
        margin: 0 auto;
        padding: 0 var(--et-pc-gut);
    }
    .et-pc-nav__list {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        align-items: stretch;
        justify-content: center;
    }
    .et-pc-nav__item { position: relative; }
    .et-pc-nav__link {
        display: flex;
        align-items: center;
        gap: 4px;
        padding: 14px 14px;
        font-size: 13.5px;
        font-weight: 700;
        color: var(--et-pc-ink);
        letter-spacing: -0.1px;
        border-bottom: 3px solid transparent;
        transition: all 0.15s;
    }
    .et-pc-nav__link:hover {
        color: var(--et-pc-blue);
        border-bottom-color: var(--et-pc-blue);
    }
    /* v2.204.0 · IP PLUS ENTRA EN EL MENÚ COMO LOGO
       ───────────────────────────────────────────────────────────
       La última parada del menú no es una palabra: es la marca del
       suplemento. El lockup es oscuro y la barra blanca, así que se
       lee. Se le quita el subrayado inferior del hover de texto y se
       le da un realce propio para que no parezca una imagen suelta. */
    /* v2.205.0 · SIN RELLENO PROPIO: EL MISMO QUE LOS DEMÁS.
       Aquí estaba el fallo de alineación. Al darle 11/10px de relleno
       en vez de los 14/14 de las otras entradas, el enlace del logo
       medía 7px MENOS de alto que sus hermanos. Consecuencias: el
       logo se sentaba más arriba que las palabras, y como la línea
       azul del hover es el `border-bottom` de ese mismo enlace, la
       línea también salía 7px por encima de las de al lado.

       Con el relleno de la casa, el alto lo iguala el contenido: 16px
       de logo contra los ~16px de la caja de línea del texto. */
    /* v2.206.0 · Mismo problema que en la firma, aquí dentro de casa:
       `.et-pc img { max-width:100%; height:auto }` pesa (0,1,1) y
       `.et-pc-nav__logo` solo (0,1,0), así que perdía y el lockup se
       iba a tamaño natural. Con el enlace delante pesa (0,2,0) y
       gana. */
    .et-pc-nav__link--logo .et-pc-nav__logo {
        display: block;
        height: 16px; width: auto;
        opacity: .92;
        transition: opacity .15s;
    }
    /* El enlace del logo se estira igual que los de texto para que la
       línea del hover nazca a la misma altura en toda la barra. */
    /* v2.208.0 · Un pelín más abajo: el lockup tiene la tinta más arriba
       que la caja de línea del texto y quedaba levantado respecto a las
       categorías. 2px de desplazamiento óptico, sin tocar el alto del
       enlace —si se tocara, la línea del hover volvería a descuadrar—. */
    .et-pc-nav__link--logo { align-self: stretch; }
    .et-pc-nav__link--logo .et-pc-nav__logo { position: relative; top: 2px; }
    .et-pc-nav__link--logo:hover .et-pc-nav__logo { opacity: 1; }

    .et-pc-nav__caret { opacity: 0.5; transition: transform 0.15s; }
    .et-pc-nav__item:hover .et-pc-nav__caret { transform: rotate(180deg); }
    .et-pc-nav__item.has-children:hover .et-pc-nav__drop {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
    .et-pc-nav__drop {
        position: absolute;
        top: 100%;
        left: 0;
        min-width: 220px;
        background: #fff;
        border: 1px solid var(--et-pc-line);
        border-top: 3px solid var(--et-pc-blue);
        box-shadow: 0 12px 32px -8px rgba(10,10,10,0.18);
        opacity: 0;
        visibility: hidden;
        transform: translateY(-4px);
        transition: all 0.2s;
        z-index: 50;
    }
    .et-pc-nav__sublist {
        list-style: none;
        margin: 0;
        padding: 8px 0;
    }
    .et-pc-nav__sublist li a {
        display: block;
        padding: 8px 18px;
        font-size: 13px;
        color: var(--et-pc-ink2);
        transition: all 0.15s;
    }
    .et-pc-nav__sublist li a:hover {
        background: var(--et-pc-bg-soft);
        color: var(--et-pc-blue);
        padding-left: 22px;
    }
}

/* ════════════════════════════════════════════════════════════════════
   28. MOBILE — hide PC
═════════════════════════════════════════════════════════════════════ */
@media (max-width: 1023px) {
    .et-pc { display: none !important; }
}

/* ════════════════════════════════════════════════════════════════════
   29. HERO WRAP (titular grande arriba antes de las columnas)
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc__hero-wrap {
        max-width: var(--et-pc-max);
        margin: 0 auto;
        padding: 32px var(--et-pc-gut) 0;
    }
}

/* ════════════════════════════════════════════════════════════════════
   30. MATCH DUAL (Tenerife + Las Palmas lado a lado)
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-match-dual__grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 24px;
        margin-bottom: 28px;
    }
    .et-pc-match-dual__card {
        background: #fff;
        border: 1px solid var(--et-pc-line);
        border-radius: 10px;
        padding: 22px 24px;
        position: relative;
        overflow: hidden;
        transition: all 0.2s;
    }
    .et-pc-match-dual__card:hover {
        transform: translateY(-2px);
        box-shadow: 0 8px 24px -12px rgba(10,10,10,0.12);
    }
    .et-pc-match-dual__card::before {
        content: '';
        position: absolute;
        top: 0; left: 0; right: 0;
        height: 4px;
    }
    .et-pc-match-dual__card[data-team="tenerife"]::before { background: #003366; }
    .et-pc-match-dual__card[data-team="laspalmas"]::before {
        background: linear-gradient(to right, #FFD700 0%, #FFD700 50%, #114F6E 50%, #114F6E 100%);
    }
    .et-pc-match-dual__head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 18px;
        font-size: 11px;
    }
    .et-pc-match-dual__comp {
        font-weight: 700;
        color: var(--et-pc-ink4);
        letter-spacing: 0.8px;
        text-transform: uppercase;
    }
    .et-pc-match-dual__live {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        background: var(--et-pc-red);
        color: #fff;
        padding: 3px 9px;
        border-radius: 3px;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: 1px;
    }
    .et-pc-match-dual__pulse {
        width: 6px; height: 6px;
        background: #fff;
        border-radius: 50%;
        animation: et-pulse 1.5s infinite;
    }
    .et-pc-match-dual__status {
        font-weight: 800;
        color: var(--et-pc-ink3);
        font-size: 10px;
        letter-spacing: 1.2px;
        text-transform: uppercase;
    }
    .et-pc-match-dual__body {
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        gap: 14px;
        margin-bottom: 16px;
    }
    .et-pc-match-dual__team {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 8px;
        min-width: 0;
    }
    .et-pc-match-dual__crest {
        width: 54px; height: 54px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 4px 12px -4px rgba(0,0,0,0.18), inset 0 -3px 6px rgba(0,0,0,0.12);
        position: relative;
    }
    .et-pc-match-dual__crest::before {
        content: '';
        position: absolute;
        inset: 0;
        border-radius: 50%;
        border: 2px solid rgba(255,255,255,0.45);
    }
    .et-pc-match-dual__crest-text {
        font-weight: 900;
        font-size: 13px;
        letter-spacing: -0.5px;
        color: #fff;
        text-shadow: 0 1px 2px rgba(0,0,0,0.35);
        position: relative;
        z-index: 1;
    }
    /* Crest amarillo: texto azul para contraste */
    .et-pc-match-dual__card[data-team="laspalmas"] .et-pc-match-dual__crest[style*="FFD700"] .et-pc-match-dual__crest-text,
    .et-pc-match-dual__crest[style*="#FFCC00"] .et-pc-match-dual__crest-text {
        color: var(--et-pc-blue);
        text-shadow: none;
    }
    .et-pc-match-dual__team-name {
        font-weight: 700;
        font-size: 12.5px;
        color: var(--et-pc-ink);
        text-align: center;
        letter-spacing: -0.2px;
    }
    .et-pc-match-dual__score {
        display: flex;
        align-items: center;
        gap: 8px;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-match-dual__num {
        font-weight: 800;
        font-size: 38px;
        color: var(--et-pc-ink);
        letter-spacing: -1.5px;
        line-height: 1;
    }
    .et-pc-match-dual__sep {
        color: var(--et-pc-ink5);
        font-size: 22px;
        font-weight: 300;
    }
    .et-pc-match-dual__foot {
        display: flex;
        align-items: center;
        gap: 6px;
        padding-top: 12px;
        border-top: 1px solid var(--et-pc-line-soft);
        font-size: 11px;
        color: var(--et-pc-ink4);
    }
    .et-pc-match-dual__foot svg { color: var(--et-pc-ink5); }

    /* Crónica */
    .et-pc-match-dual__news {
        background: #fff;
        border: 1px solid var(--et-pc-line);
        border-radius: 10px;
        overflow: hidden;
        display: grid;
        grid-template-columns: 1.4fr 1fr;
        gap: 24px;
        align-items: center;
    }
    .et-pc-match-dual__news .et-pc-card__photo { margin: 0; aspect-ratio: 21 / 9; }
    .et-pc-match-dual__news-body { padding: 20px 24px 22px 0; }
    .et-pc-match-dual__news-kicker {
        display: inline-block;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: 1.6px;
        color: var(--et-pc-red);
        text-transform: uppercase;
        margin-bottom: 8px;
    }
    .et-pc-match-dual__news-title {
        margin: 0 0 10px;
        font-weight: 800;
        font-size: 22px;
        line-height: 1.15;
        letter-spacing: -0.5px;
        color: var(--et-pc-ink);
    }
    .et-pc-match-dual__news-title a:hover { color: var(--et-pc-blue); }
    .et-pc-match-dual__news-summary {
        margin: 0;
        font-size: 14px;
        line-height: 1.55;
        color: var(--et-pc-ink3);
    }
}

/* ════════════════════════════════════════════════════════════════════
   31. OPINION PRO (full-width)
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-opinion-pro__grid {
        display: grid;
        grid-template-columns: 1.4fr 1fr;
        gap: 40px;
    }

    /* LEAD */
    .et-pc-opinion-pro__lead {
        background: #fff;
        border-left: 3px solid var(--et-pc-ink);
        padding: 8px 0 8px 28px;
    }
    .et-pc-opinion-pro__lead-meta {
        display: flex;
        align-items: center;
        gap: 14px;
        margin-bottom: 18px;
    }
    .et-pc-opinion-pro__lead-avatar {
        width: 56px; height: 56px;
        border-radius: 50%;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
        flex-shrink: 0;
    }
    .et-pc-opinion-pro__lead-author { display: flex; flex-direction: column; gap: 2px; }
    .et-pc-opinion-pro__lead-name {
        font-weight: 800;
        font-size: 15px;
        color: var(--et-pc-ink);
        letter-spacing: -0.3px;
    }
    .et-pc-opinion-pro__lead-bio {
        font-size: 11.5px;
        color: var(--et-pc-ink4);
        font-style: italic;
    }
    .et-pc-opinion-pro__lead-kicker {
        display: inline-block;
        font-size: 10.5px;
        font-weight: 800;
        letter-spacing: 1.8px;
        color: var(--et-pc-gold);
        text-transform: uppercase;
        margin-bottom: 12px;
    }
    .et-pc-opinion-pro__lead-title {
        margin: 0 0 14px;
        font-weight: 800;
        font-size: 30px;
        line-height: 1.12;
        letter-spacing: -0.8px;
        color: var(--et-pc-ink);
        font-style: italic;
    }
    .et-pc-opinion-pro__lead-title a:hover { color: var(--et-pc-blue); }
    .et-pc-opinion-pro__lead-excerpt {
        margin: 0 0 16px;
        font-size: 15px;
        line-height: 1.6;
        color: var(--et-pc-ink3);
    }
    .et-pc-opinion-pro__lead-more {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        font-size: 12.5px;
        font-weight: 700;
        color: var(--et-pc-blue);
        letter-spacing: -0.1px;
    }
    .et-pc-opinion-pro__lead-more:hover { color: var(--et-pc-ink); }
    .et-pc-opinion-pro__lead-more svg { transition: transform 0.2s; }
    .et-pc-opinion-pro__lead-more:hover svg { transform: translateX(3px); }

    /* COLS */
    .et-pc-opinion-pro__cols {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px 24px;
        align-self: start;
    }
    .et-pc-opinion-pro__col {
        padding: 14px 0;
        border-top: 2px solid var(--et-pc-ink);
    }
    .et-pc-opinion-pro__col-head {
        display: flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 8px;
    }
    .et-pc-opinion-pro__col-avatar {
        width: 28px; height: 28px;
        border-radius: 50%;
        background-size: cover;
        background-position: center;
        background-color: var(--et-pc-bg-soft);
    }
    .et-pc-opinion-pro__col-name {
        font-size: 11.5px;
        font-weight: 700;
        color: var(--et-pc-ink2);
        letter-spacing: -0.2px;
    }
    .et-pc-opinion-pro__col-title {
        margin: 0;
        font-weight: 700;
        font-size: 14.5px;
        line-height: 1.3;
        letter-spacing: -0.2px;
        font-style: italic;
        color: var(--et-pc-ink);
    }
    .et-pc-opinion-pro__col-title a:hover { color: var(--et-pc-blue); }
}

/* ════════════════════════════════════════════════════════════════════
   32. ECONOMÍA PRO (gráficas forex + precios + noticias)
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    /* Precios Canarias */
    .et-pc-eco-pro__prices {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 12px;
        margin-bottom: 28px;
        padding: 18px;
        background: var(--et-pc-bg-soft);
        border: 1px solid var(--et-pc-line);
        border-radius: 8px;
        position: relative;
    }
    .et-pc-eco-pro__prices::before {
        content: 'PRECIOS EN CANARIAS';
        position: absolute;
        top: -8px; left: 16px;
        background: #fff;
        padding: 0 8px;
        font-size: 9.5px;
        font-weight: 800;
        letter-spacing: 1.8px;
        color: var(--et-pc-ink5);
    }
    .et-pc-eco-pro__price {
        display: flex;
        flex-direction: column;
        gap: 4px;
        padding: 4px 0;
        border-right: 1px solid var(--et-pc-line);
    }
    .et-pc-eco-pro__price:last-child { border-right: 0; }
    .et-pc-eco-pro__price-label {
        font-size: 10.5px;
        font-weight: 700;
        color: var(--et-pc-ink4);
        text-transform: uppercase;
        letter-spacing: 0.6px;
    }
    .et-pc-eco-pro__price-value {
        font-weight: 800;
        font-size: 22px;
        color: var(--et-pc-ink);
        letter-spacing: -0.5px;
        line-height: 1;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-eco-pro__price-meta {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: 6px;
    }
    .et-pc-eco-pro__price-unit { font-size: 10.5px; color: var(--et-pc-ink5); }
    .et-pc-eco-pro__price-delta {
        font-size: 11.5px;
        font-weight: 700;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-eco-pro__price-delta.is-up { color: var(--et-pc-red); }
    .et-pc-eco-pro__price-delta.is-down { color: #2E7D32; }

    /* Markets block */
    .et-pc-eco-pro__markets {
        background: #fff;
        border: 1px solid var(--et-pc-line);
        border-radius: 10px;
        padding: 24px 28px;
        margin-bottom: 28px;
    }
    .et-pc-eco-pro__markets-head {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 18px;
        font-size: 11px;
    }
    .et-pc-eco-pro__markets-name {
        font-weight: 800;
        color: var(--et-pc-ink);
        letter-spacing: 2px;
    }
    .et-pc-eco-pro__markets-sep { color: var(--et-pc-ink5); }
    .et-pc-eco-pro__markets-sub {
        color: var(--et-pc-blue);
        font-weight: 700;
        letter-spacing: 0.5px;
        text-transform: uppercase;
    }
    .et-pc-eco-pro__markets-rule {
        flex: 1;
        height: 1px;
        background: var(--et-pc-line);
    }
    .et-pc-eco-pro__markets-time {
        font-family: 'JetBrains Mono', monospace;
        color: var(--et-pc-ink5);
        font-size: 11px;
        font-variant-numeric: tabular-nums;
    }

    /* Tabs */
    .et-pc-eco-pro__tabs {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        gap: 8px;
        margin-bottom: 24px;
    }
    .et-pc-eco-pro__tab {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
        padding: 12px 14px;
        background: var(--et-pc-bg-soft);
        border: 1px solid var(--et-pc-line);
        border-radius: 6px;
        cursor: pointer;
        font-family: inherit;
        text-align: left;
        transition: all 0.15s;
    }
    .et-pc-eco-pro__tab:hover {
        border-color: var(--et-pc-ink3);
    }
    .et-pc-eco-pro__tab.is-active {
        background: var(--et-pc-ink);
        border-color: var(--et-pc-ink);
    }
    .et-pc-eco-pro__tab-name {
        font-size: 10px;
        font-weight: 800;
        color: var(--et-pc-ink4);
        letter-spacing: 1px;
        text-transform: uppercase;
    }
    .et-pc-eco-pro__tab.is-active .et-pc-eco-pro__tab-name { color: rgba(255,255,255,0.6); }
    .et-pc-eco-pro__tab-val {
        font-size: 14px;
        font-weight: 800;
        color: var(--et-pc-ink);
        letter-spacing: -0.3px;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-eco-pro__tab.is-active .et-pc-eco-pro__tab-val { color: #fff; }
    .et-pc-eco-pro__tab-chg {
        font-size: 10.5px;
        font-weight: 700;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-eco-pro__tab-chg.is-up { color: #2E7D32; }
    .et-pc-eco-pro__tab-chg.is-down { color: var(--et-pc-red); }
    .et-pc-eco-pro__tab.is-active .et-pc-eco-pro__tab-chg.is-up { color: #41D38C; }
    .et-pc-eco-pro__tab.is-active .et-pc-eco-pro__tab-chg.is-down { color: #FF6E6E; }

    /* Panel forex */
    .et-pc-eco-pro__panel { display: none; }
    .et-pc-eco-pro__panel.is-active { display: block; }
    .et-pc-eco-pro__panel-head {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        gap: 16px;
        margin-bottom: 20px;
        padding-bottom: 18px;
        border-bottom: 1px solid var(--et-pc-line-soft);
    }
    .et-pc-eco-pro__panel-info { display: flex; flex-direction: column; gap: 2px; }
    .et-pc-eco-pro__panel-sym {
        font-weight: 800;
        font-size: 14px;
        color: var(--et-pc-ink);
        letter-spacing: 0.6px;
        text-transform: uppercase;
    }
    .et-pc-eco-pro__panel-stb {
        font-size: 11.5px;
        color: var(--et-pc-ink4);
    }
    .et-pc-eco-pro__panel-val { text-align: right; }
    .et-pc-eco-pro__panel-now {
        display: block;
        font-weight: 800;
        font-size: 36px;
        color: var(--et-pc-ink);
        letter-spacing: -1.2px;
        line-height: 1;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-eco-pro__panel-chg {
        display: inline-block;
        margin-top: 6px;
        font-size: 13px;
        font-weight: 700;
        font-variant-numeric: tabular-nums;
    }
    .et-pc-eco-pro__panel-chg.is-up { color: #2E7D32; }
    .et-pc-eco-pro__panel-chg.is-down { color: var(--et-pc-red); }

    .et-pc-eco-pro__chart {
        margin: 0 -8px 16px;
        line-height: 0;
    }
    .et-pc-eco-pro__chart svg { display: block; width: 100%; }

    .et-pc-eco-pro__panel-foot {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 16px;
        padding-top: 14px;
        border-top: 1px solid var(--et-pc-line-soft);
    }
    .et-pc-eco-pro__panel-foot > div { display: flex; flex-direction: column; gap: 2px; }
    .et-pc-eco-pro__panel-foot span {
        font-size: 9.5px;
        font-weight: 700;
        color: var(--et-pc-ink5);
        letter-spacing: 1.2px;
    }
    .et-pc-eco-pro__panel-foot strong {
        font-weight: 800;
        font-size: 14px;
        color: var(--et-pc-ink);
        font-variant-numeric: tabular-nums;
        letter-spacing: -0.2px;
    }
    .et-pc-eco-pro__panel-foot strong.is-up { color: #2E7D32; }
    .et-pc-eco-pro__panel-foot strong.is-down { color: var(--et-pc-red); }

    /* News economía */
    .et-pc-eco-pro__news-head {
        margin: 0 0 18px;
        font-weight: 800;
        font-size: 18px;
        letter-spacing: -0.3px;
        padding-bottom: 10px;
        border-bottom: 1px solid var(--et-pc-ink);
    }
    .et-pc-eco-pro__news-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
    }
    .et-pc-eco-pro__news-title {
        margin: 0 0 6px;
        font-weight: 700;
        font-size: 15px;
        line-height: 1.25;
        letter-spacing: -0.2px;
    }
    .et-pc-eco-pro__news-title a:hover { color: var(--et-pc-blue); }
}

/* ════════════════════════════════════════════════════════════════════
   33. LIVE PRO (premium 2 columnas timeline + noticia)
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-live-pro {
        background: #fff;
    }
    .et-pc-live-pro__shell {
        display: grid;
        grid-template-columns: 1.5fr 1fr;
        gap: 36px;
        align-items: start;
    }

    /* TIMELINE */
    .et-pc-live-pro__timeline {
        background: #fff;
        border: 1px solid var(--et-pc-line);
        border-radius: 10px;
        padding: 24px 28px 20px;
        position: relative;
    }
    .et-pc-live-pro__timeline::before {
        content: '';
        position: absolute;
        top: 0; left: 0;
        width: 4px;
        height: 64px;
        background: var(--et-pc-red);
        border-radius: 0 0 4px 0;
    }
    .et-pc-live-pro__head {
        display: flex;
        align-items: center;
        gap: 12px;
        margin-bottom: 22px;
        padding-bottom: 18px;
        border-bottom: 1px solid var(--et-pc-line);
    }
    .et-pc-live-pro__badge {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        background: var(--et-pc-red);
        color: #fff;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: 1.4px;
        padding: 5px 11px;
        border-radius: 3px;
        flex-shrink: 0;
    }
    .et-pc-live-pro__pulse {
        width: 6px; height: 6px;
        background: #fff;
        border-radius: 50%;
        animation: et-pulse 1.5s infinite;
    }
    .et-pc-live-pro__topic {
        margin: 0;
        flex: 1;
        font-weight: 800;
        font-size: 19px;
        line-height: 1.2;
        letter-spacing: -0.4px;
        color: var(--et-pc-ink);
    }
    .et-pc-live-pro__updates {
        font-size: 11.5px;
        color: var(--et-pc-ink5);
        font-variant-numeric: tabular-nums;
        font-weight: 500;
        white-space: nowrap;
    }

    /* Feed */
    .et-pc-live-pro__feed {
        list-style: none;
        margin: 0; padding: 0;
        position: relative;
    }
    .et-pc-live-pro__feed::before {
        content: '';
        position: absolute;
        top: 14px; bottom: 14px;
        left: 7px;
        width: 1px;
        background: var(--et-pc-line);
    }
    .et-pc-live-pro__entry {
        position: relative;
        display: grid;
        grid-template-columns: 28px 1fr;
        gap: 16px;
        padding: 14px 0;
        border-bottom: 1px solid var(--et-pc-line-soft);
    }
    .et-pc-live-pro__entry:last-child { border-bottom: 0; padding-bottom: 4px; }
    .et-pc-live-pro__rail {
        position: relative;
        z-index: 1;
        padding-top: 4px;
    }
    .et-pc-live-pro__dot {
        display: block;
        width: 14px; height: 14px;
        background: #fff;
        border: 2px solid var(--et-pc-line);
        border-radius: 50%;
    }
    .et-pc-live-pro__entry.is-latest .et-pc-live-pro__dot {
        background: var(--et-pc-red);
        border-color: var(--et-pc-red);
        box-shadow: 0 0 0 4px rgba(200,16,46,0.16);
    }
    .et-pc-live-pro__body { min-width: 0; }
    .et-pc-live-pro__meta {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 6px;
    }
    .et-pc-live-pro__time {
        font-family: 'JetBrains Mono', monospace;
        font-size: 12px;
        font-weight: 700;
        color: var(--et-pc-ink2);
        font-variant-numeric: tabular-nums;
        letter-spacing: -0.2px;
    }
    .et-pc-live-pro__tag {
        font-size: 9.5px;
        font-weight: 800;
        letter-spacing: 1.4px;
        color: var(--et-pc-ink5);
        padding: 2px 7px;
        border: 1px solid var(--et-pc-line);
        border-radius: 3px;
        text-transform: uppercase;
    }
    .et-pc-live-pro__now {
        font-size: 9.5px;
        font-weight: 800;
        letter-spacing: 1.4px;
        color: #fff;
        background: var(--et-pc-red);
        padding: 2px 7px;
        border-radius: 3px;
    }
    .et-pc-live-pro__text {
        margin: 0;
        font-size: 14.5px;
        line-height: 1.55;
        color: var(--et-pc-ink2);
        letter-spacing: -0.1px;
    }
    .et-pc-live-pro__text strong {
        color: var(--et-pc-ink);
        font-weight: 700;
    }
    .et-pc-live-pro__more {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        margin-top: 16px;
        font-size: 12.5px;
        font-weight: 700;
        color: var(--et-pc-blue);
        letter-spacing: -0.1px;
    }
    .et-pc-live-pro__more:hover { color: var(--et-pc-ink); }
    .et-pc-live-pro__more svg { transition: transform 0.2s; }
    .et-pc-live-pro__more:hover svg { transform: translateX(3px); }

    /* FEATURE STORY (derecha) */
    .et-pc-live-pro__feature {
        background: #fff;
        border: 1px solid var(--et-pc-line);
        border-radius: 10px;
        overflow: hidden;
        position: sticky;
        top: 96px;
    }
    .et-pc-live-pro__feature .et-pc-card__photo { margin: 0; }
    .et-pc-live-pro__feature-body { padding: 18px 22px 22px; }
    .et-pc-live-pro__feature-kicker {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: 1.6px;
        color: var(--et-pc-red);
        text-transform: uppercase;
        margin-bottom: 10px;
    }
    .et-pc-live-pro__feature-kicker svg { fill: currentColor; }
    .et-pc-live-pro__feature-title {
        margin: 0 0 10px;
        font-weight: 800;
        font-size: 20px;
        line-height: 1.18;
        letter-spacing: -0.5px;
        color: var(--et-pc-ink);
    }
    .et-pc-live-pro__feature-title a:hover { color: var(--et-pc-blue); }
    .et-pc-live-pro__feature-summary {
        margin: 0 0 12px;
        font-size: 13.5px;
        line-height: 1.55;
        color: var(--et-pc-ink3);
    }
}

/* ════════════════════════════════════════════════════════════════════
   34. MATCH DUAL — añadido el column para que noticia caiga debajo
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-match-dual__grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 24px;
    }
    .et-pc-match-dual__column {
        display: flex;
        flex-direction: column;
        gap: 16px;
        min-width: 0;
    }
    /* Noticia debajo del marcador */
    .et-pc-match-dual__news {
        background: #fff;
        border: 1px solid var(--et-pc-line);
        border-radius: 10px;
        overflow: hidden;
        display: flex;
        flex-direction: column;
    }
    .et-pc-match-dual__news .et-pc-card__photo { margin: 0; aspect-ratio: 16 / 9; }
    .et-pc-match-dual__news-body { padding: 16px 20px 18px; }
    .et-pc-match-dual__news-kicker {
        display: inline-block;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: 1.4px;
        color: var(--et-pc-red);
        text-transform: uppercase;
        margin-bottom: 8px;
    }
    .et-pc-match-dual__news-title {
        margin: 0 0 8px;
        font-weight: 700;
        font-size: 17px;
        line-height: 1.22;
        letter-spacing: -0.3px;
        color: var(--et-pc-ink);
    }
    .et-pc-match-dual__news-title a:hover { color: var(--et-pc-blue); }
}

/* ═════════════════════════════════════════════════════════════════════
   BUILD INFOPUERTOS · Barra de servicios DEBAJO de las categorías.
   La nav pone la línea de arriba (su border-bottom); la barra cierra
   con su propia línea fina. Aire y tipografía refinada.
═════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-topbar--below {
        border-bottom: 1px solid var(--et-pc-line);
        background: #fff;
    }
    .et-pc-topbar--below .et-pc-topbar__inner {
        padding: 10px var(--et-pc-gut);
    }
    .et-pc-topbar--below .et-pc-topbar__date { letter-spacing: 0.01em; }
    .et-pc-topbar--below .et-pc-topbar__link {
        letter-spacing: 0.02em;
        transition: color 0.15s;
    }
    .et-pc-topbar--below .et-pc-topbar__right { gap: 16px; }
    /* Separadores fantasma entre servicios: puntos suaves */
    .et-pc-topbar--below .et-pc-topbar__link + .et-pc-topbar__link {
        position: relative;
        padding-left: 16px;
    }
    .et-pc-topbar--below .et-pc-topbar__link + .et-pc-topbar__link::before {
        content: "·";
        position: absolute;
        left: 0;
        color: var(--et-pc-line);
    }
    /* El masthead sin laterales respira un poco más */
    .et-pc-masthead { padding: 26px 0 20px; }
}

/* ═══════════════════════════════════════════════════════════════════
   INFOPUERTOS · Header a 3 columnas · "Edición por puertos" + banner
   (solo PC; el móvil tiene su propia cabecera)
═══════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pc-masthead--3col .et-pc-masthead__inner {
        max-width: var(--et-pc-max);
        margin: 0 auto;
        padding: 20px var(--et-pc-gut);
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        gap: 24px;
    }
    .et-pc-masthead--3col .et-pc-masthead__edi { justify-self: start; }
    .et-pc-masthead--3col .et-pc-wordmark      { justify-self: center; }
    .et-pc-masthead--3col .et-pc-masthead__ad  { justify-self: end; max-width: 100%; overflow: hidden; }

    /* "con la Tecnología AI de:" + logo CAMAL AI (por defecto en la zona del banner) */
    .et-pc-poweredai { display: flex; flex-direction: column; align-items: flex-end; gap: 5px; text-align: right; }
    .et-pc-poweredai__lb { font-size: 11px; font-weight: 600; letter-spacing: .01em; color: var(--et-pc-ink3, #95A0AB); white-space: nowrap; }
    .et-pc-poweredai__link { display: block; line-height: 0; transition: opacity .15s ease; }
    .et-pc-poweredai__link:hover { opacity: .82; }
    .et-pc-poweredai__logo { height: 30px; width: auto; display: block; }

    /* ── Desplegable "Edición por puertos" ───────────────────────── */
    .et-pedi { position: relative; font-family: var(--et-pc-sans, 'Inter', sans-serif); }
    .et-pedi__toggle {
        display: inline-flex; align-items: center; gap: 9px;
        background: #fff; border: 1.5px solid var(--et-pc-line, #E2E5EA);
        border-radius: 999px; padding: 10px 16px; cursor: pointer;
        color: var(--et-pc-ink, #16202B); font-family: inherit;
        font-size: 13px; font-weight: 700; letter-spacing: .01em;
        transition: border-color .18s, box-shadow .18s, background .18s;
    }
    .et-pedi__toggle:hover { border-color: var(--et-pc-blue, #114F6E); box-shadow: 0 6px 18px -10px rgba(17,79,110,.5); }
    .et-pedi__anchor { color: var(--et-pc-blue, #114F6E); flex-shrink: 0; }
    .et-pedi__caret { color: var(--et-pc-ink4, #8A94A0); transition: transform .2s; }
    .et-pedi.is-open .et-pedi__toggle { border-color: var(--et-pc-blue, #114F6E); background: #F7FAFC; }
    .et-pedi.is-open .et-pedi__caret { transform: rotate(180deg); }

    .et-pedi__panel {
        position: absolute; top: calc(100% + 10px); left: 0; z-index: 200;
        min-width: 300px; background: #fff;
        border: 1px solid var(--et-pc-line, #E2E5EA); border-radius: 14px;
        box-shadow: 0 24px 60px -24px rgba(16,32,45,.4), 0 4px 12px -6px rgba(16,32,45,.2);
        padding: 14px; opacity: 0; visibility: hidden; transform: translateY(-8px);
        transition: opacity .18s, transform .18s, visibility .18s;
    }
    .et-pedi.is-open .et-pedi__panel { opacity: 1; visibility: visible; transform: translateY(0); }
    .et-pedi__panel::before { /* pico */
        content: ""; position: absolute; top: -6px; left: 26px; width: 12px; height: 12px;
        background: #fff; border-left: 1px solid var(--et-pc-line, #E2E5EA); border-top: 1px solid var(--et-pc-line, #E2E5EA);
        transform: rotate(45deg);
    }
    .et-pedi__panel-kicker {
        display: block; font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;
        color: var(--et-pc-ink4, #8A94A0); padding: 4px 10px 10px;
    }
    .et-pedi__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 2px; }
    .et-pedi__list a {
        display: flex; align-items: center; justify-content: space-between; gap: 10px;
        padding: 9px 11px; border-radius: 9px; text-decoration: none;
        color: var(--et-pc-ink, #16202B); font-size: 13.5px; font-weight: 600;
        transition: background .14s, color .14s;
    }
    .et-pedi__list a svg { color: var(--et-pc-ink5, #B4BCC6); opacity: 0; transform: translateX(-3px); transition: opacity .14s, transform .14s; flex-shrink: 0; }
    .et-pedi__list a:hover { background: var(--et-pc-blue, #114F6E); color: #fff; }
    .et-pedi__list a:hover svg { color: #fff; opacity: 1; transform: translateX(0); }

    /* ── Zona de banner en la cabecera ───────────────────────────── */
    .et-pc-masthead__ad { min-height: 90px; display: flex; align-items: center; justify-content: flex-end; }
}

/* ═══════════════════════════════════════════════════════════════════
   Contenedor genérico de anuncios (todas las zonas)
═══════════════════════════════════════════════════════════════════ */
/* v2.153.0 · La caja se ciñe a la creatividad (`max-content`). Con el
   sello fuera del banner y alineado a la derecha, si la caja midiera todo
   el ancho del bloque el sello se iría lejísimos del anuncio. Así queda
   pegado a su borde derecho, que es donde se pidió.
   `max-width: 100%` evita que una creatividad grande desborde. */
.et-ad { position: relative; line-height: 0; width: max-content; max-width: 100%; }
/* v2.148.0 · esquinas ligeramente redondeadas, los mismos 3px que las fotos
   de las noticias: el banner se integra sin parecer una pegatina. */
.et-ad img { max-width: 100%; height: auto; border-radius: 3px; display: block; }
.et-ad picture { display: block; line-height: 0; }
/* v2.149.0 · El sello pasa de la palabra «Publicidad» al favicon de CAMAL AI.
   El favicon es OSCURO: la píldora va sobre fondo CLARO —con el translúcido
   oscuro de antes se volvía invisible— con un hairline que la despega de
   creatividades blancas. El texto sigue en el alt/title del propio icono. */
/* v2.153.0 · El sello va FUERA de la creatividad: debajo y pegado a la
   derecha, a un pelo de distancia. Nada de superponerse al anuncio.
   `margin-left: auto` con `width: max-content` es lo que lo empuja al
   borde derecho sin tocar la alineación del banner, que puede ir
   centrado o no según la zona.
   Fuera del banner ya no hace falta fondo ni borde: el favicon es oscuro
   y se apoya en el fondo claro de la página. */
.et-ad__tag {
    display: flex;
    align-items: center;
    gap: 5px;
    width: max-content;
    margin: 5px 0 0 auto;
    line-height: 0;
    text-decoration: none;
    transition: opacity .15s ease;
}
.et-ad__tag:hover { opacity: .72; }
/* El icono NUNCA escala: `width/height` fijos y blindados. Una regla de
   zona con `img { width: auto }` lo pintaba a tamaño natural —un logo
   enorme sobre el banner—, y esto lo impide venga de donde venga. */
.et-ad__tag img {
    display: block;
    width: 12px !important; height: 12px !important;
    max-height: none !important;
    border-radius: 2px; flex: 0 0 auto;
}
/* PUBLICIDAD · caja alta, fina y espaciada: se lee sin robar protagonismo. */
.et-ad__tag-txt {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 8.5px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    line-height: 1;
    color: #114F6E;
    white-space: nowrap;
}
.et-ad--header { max-width: 728px; }
.et-ad--home_top, .et-ad--home_mid, .et-ad--article_top, .et-ad--article_end { margin: 24px auto; text-align: center; }
.et-ad--sidebar { margin: 0 auto 24px; }
/* v2.148.0 · Espacio 1 de la portada · el banner bajo el hero. Centrado y
   sin estirar: la creatividad se sirve a su tamaño (790×100 en PC, 300×100
   en móvil), que es como la entrega el anunciante. */
.et-ad--home1 { margin: 26px auto 4px; text-align: center; }
.et-ad--home1 img { margin: 0 auto; }
/* v2.186.0 · MISMA CAJA PARA LOS DOS BANNERS INDEPENDIENTES DE LA PORTADA.
   El de la Autoridad Portuaria de Las Palmas salía más grande que el de
   Baleària. La causa NO era el CSS —los dos llevan .et-ad--home1 y hasta
   ahora nadie limitaba la medida—, sino la creatividad: cada anunciante
   sube el fichero que quiere y la imagen se pintaba a su tamaño natural.

   En vez de recortar solo a Las Palmas, se le pone el techo a la CLASE
   que ambos comparten: 790×100, que es la medida de la creatividad de
   Baleària. Así son idénticos por construcción, y el día que un
   anunciante suba una pieza más grande tampoco se saldrá.

   `width/height: auto` conservan la proporción: la imagen se reduce, no
   se deforma. Las creatividades de móvil (300×100 y 300×84) están por
   debajo del techo, así que no las toca. */
.et-ad--home1 img {
    max-width: 790px;
    max-height: 100px;
    width: auto;
    height: auto;
}
@media (max-width: 767px) { .et-ad--home1 { margin: 18px auto 6px; padding: 0 16px; } }
/* v2.170.0 · La Autoridad Portuaria de Las Palmas, entre Sucesos y Opinión.
   El CEO la quiere «independiente como la de Baleària y con la misma
   distancia arriba», así que NO tiene reglas propias de espaciado: lleva
   también la clase .et-ad--home1 y hereda sus márgenes exactos. Este
   modificador existe solo para poder distinguirla el día que haga falta. */
/* El modificador se conserva para poder distinguirla el dia que haga
   falta, pero la MEDIDA ya la fija .et-ad--home1 img, compartida con
   Balearia: es lo que garantiza que sean iguales. */
.et-ad--homelp img { max-width: 100%; }
@media (max-width: 1023px) { .et-ad--header { display: none; } } /* el banner de cabecera es PC */

/* v2.158.0 · La costura del módulo de Opinión: entre «El debate» / «Buena
   proa» y la fila de «Opinión». Vive en ESTA hoja y no en pc-v2.css porque
   aquella solo la carga la portada de PC, y este anuncio también sale en el
   móvil, donde los tres bloques van apilados.
   El margen vertical es el del móvil; en PC lo anula la banda de la rejilla,
   que ya reparte su propio aire. */
.et-ad--ophmid { margin: 22px auto; text-align: center; }
.et-ad--ophmid img { margin: 0 auto; max-width: 100%; height: auto; }
@media (max-width: 767px) { .et-ad--ophmid { padding: 0 16px; } }

/* ═══════════════════════════════════════════════════════════════════
   INFOPUERTOS · "Edición por puertos" · pulido v2.50.3 (plan app nativa)
   Fuente reducida · cada zona en UNA sola línea (sin salto) · hover fino
═══════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    .et-pedi__toggle { padding: 9px 15px; font-size: 12.5px; letter-spacing: .005em; box-shadow: 0 1px 2px rgba(16,32,45,.04); }
    .et-pedi__toggle:hover { box-shadow: 0 8px 22px -12px rgba(17,79,110,.45); }

    .et-pedi__panel {
        min-width: 468px; padding: 10px; border-radius: 16px;
        border-color: rgba(16,32,45,.08);
        box-shadow: 0 30px 70px -28px rgba(16,32,45,.42), 0 8px 20px -12px rgba(16,32,45,.16);
        -webkit-backdrop-filter: saturate(1.4); backdrop-filter: saturate(1.4);
    }
    .et-pedi__panel-kicker { font-size: 9.5px; letter-spacing: .16em; padding: 6px 12px 9px; color: var(--et-pc-ink5, #9AA4B0); }

    .et-pedi__list { grid-template-columns: 1fr 1fr; gap: 1px 4px; }
    .et-pedi__list a {
        gap: 8px; padding: 8px 12px; border-radius: 10px;
        font-size: 11.75px; font-weight: 600; letter-spacing: .002em;
        white-space: nowrap; overflow: hidden; text-overflow: ellipsis;    /* UNA sola línea */
        color: var(--et-pc-ink2, #2A3542);
        transition: background .15s ease, color .15s ease, transform .12s ease;
    }
    .et-pedi__list a > span { overflow: hidden; text-overflow: ellipsis; }
    /* hover FINO: relleno suave + texto azul (no bloque azul), chevron desliza */
    .et-pedi__list a:hover {
        background: #F2F6FB; color: var(--et-pc-blue, #114F6E);
        transform: translateX(1px);
    }
    .et-pedi__list a svg { width: 12px; height: 12px; }
    .et-pedi__list a:hover svg { color: var(--et-pc-blue, #114F6E); opacity: 1; transform: translateX(0); }
    .et-pedi__list a:active { transform: scale(.985); }
}

/* ══════════════════════════════════════════════════════════════════════
   v2.183.0 · CREATIVIDAD DE CASA · .et-hb
   ──────────────────────────────────────────────────────────────────────
   Va en pc.css y NO en pc-v2.css: pc-v2.css no se carga en móvil (regla
   vieja de la casa) y este banner tiene que verse igual en los dos.

   DOS FALLOS DE LA v2.182.0, corregidos aquí:

   1. Los apoyos («Piscina privada · Obra nueva · Marruecos») se metían
      DEBAJO del botón. Causa: en un flex column los hijos encogen por
      defecto (flex-shrink:1); cuando la tarjeta no daba de sí, la fila
      de apoyos se comprimía por debajo de su contenido, el texto se
      salía de su caja y el botón —dibujado justo después— le pasaba por
      encima. Se arregla con `flex: 0 0 auto` en TODOS los hijos: nadie
      encoge por debajo de lo que mide.

   2. El sello «PUBLICIDAD» aparecía A LA DERECHA, fuera de la tarjeta.
      Causa: al poner la zona en `display:flex` para que el banner
      estirase, el sello —que es hermano de la creatividad dentro de
      .et-ad— pasó a ser otro elemento flex y se colocó al lado. Se
      arregla con `flex-direction: column`.

   Esquinas CASI RECTAS (4 px): el CEO no quiere redondeo.
   Un solo color de marca: el azul CAMAL AI #114F6E.
   ══════════════════════════════════════════════════════════════════════ */
.et-ad--econfoot {
    display: flex;
    flex-direction: column;   /* el sello DEBAJO, nunca al lado */
    flex: 1 1 auto;
    align-self: stretch;
    width: 100%;
    max-width: 100%;
    margin-top: 14px;
}
.et-ad--econfoot .et-ad__tag { align-self: flex-end; }

.et-hb {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    width: 100%;
    min-height: 268px;
    box-sizing: border-box;
    padding: 20px 18px 16px;
    background: #FFFFFF;
    border: 1px solid #E3EAF0;
    border-radius: 4px;
    box-shadow: 0 1px 2px rgba(20, 28, 36, .04), 0 4px 14px rgba(17, 79, 110, .05);
    text-decoration: none;
    font-family: 'Inter', -apple-system, system-ui, sans-serif;
    position: relative;
    overflow: hidden;
    transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}
/* NADIE encoge por debajo de su contenido: esto es lo que evitaba que
   los apoyos se solaparan con el botón. */
.et-hb > * { flex: 0 0 auto; }

/* Arco navy muy tenue en la esquina: profundidad sin fondo de color. */
.et-hb::before {
    content: '';
    position: absolute;
    top: -80px; right: -80px;
    width: 200px; height: 200px;
    border-radius: 50%;
    background: rgba(17, 79, 110, .04);
    pointer-events: none;
}
.et-hb:hover {
    border-color: #C9DBE4;
    transform: translateY(-2px);
    box-shadow: 0 2px 6px rgba(20, 28, 36, .05), 0 14px 34px rgba(17, 79, 110, .12);
}
.et-hb:focus-visible { outline: 2px solid #114F6E; outline-offset: 3px; }

.et-hb__top { position: relative; }

.et-hb__kicker {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 13px;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #114F6E;
}
.et-hb__dot {
    width: 6px; height: 6px;
    border-radius: 50%;
    background: #114F6E;
    flex-shrink: 0;
    animation: et-hb-pulse 2.8s ease-out infinite;
}
@keyframes et-hb-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(17, 79, 110, .45); }
    70%  { box-shadow: 0 0 0 6px rgba(17, 79, 110, 0); }
    100% { box-shadow: 0 0 0 0 rgba(17, 79, 110, 0); }
}

.et-hb__title {
    display: block;
    margin-bottom: 8px;
    /* v2.185.0 · MÁS NEGRITA TODAVÍA.
       900 es el peso MÁS ALTO que tiene Inter: no existe un 1000 al que
       subir. El grosor extra se consigue engordando el trazo con
       -webkit-text-stroke del MISMO color: la letra crece hacia fuera
       sin deformarse ni emborronarse, que es lo que pasaría con la
       negrita simulada del navegador.
       Soportado en Chrome, Edge, Safari y Firefox. Donde no lo esté, se
       ve el 900 de siempre: se degrada bien. */
    font-size: 29px;
    font-weight: 900;
    -webkit-text-stroke: 0.7px currentColor;
    letter-spacing: -0.045em;
    line-height: 1.02;
    color: #114F6E;
}
.et-hb__sub {
    display: block;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.46;
    color: #59677A;
    text-wrap: pretty;   /* que no quede una palabra suelta al final */
}

/* El precio, separado por filete. */
.et-hb__mid {
    display: flex;
    align-items: baseline;
    gap: 7px;
    margin: 15px 0 0;
    padding-top: 14px;
    border-top: 1px solid #EEF2F5;
}
.et-hb__from {
    font-size: 11.5px;
    font-weight: 600;
    color: #8A97A3;
    text-transform: lowercase;
}
.et-hb__num {
    font-size: 30px;
    font-weight: 800;
    letter-spacing: -0.04em;
    line-height: 1;
    color: #0F1B24;
    font-variant-numeric: tabular-nums;
}
.et-hb__num i { font-style: normal; font-size: 20px; margin-left: 2px; color: #114F6E; }

/* Los apoyos: una línea si caben, dos si no, SIEMPRE con su hueco. */
.et-hb__feats {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px 8px;
    margin: 11px 0 16px;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.35;
    color: #59677A;
}
.et-hb__feats span { display: inline-flex; align-items: center; }
.et-hb__feats span + span::before {
    content: '';
    width: 3px; height: 3px;
    border-radius: 50%;
    background: #C3CFD8;
    margin-right: 8px;
    flex-shrink: 0;
}

/* margin-top:auto empuja el botón al fondo cuando la tarjeta estira;
   el margen de arriba de .et-hb__feats garantiza el aire mínimo cuando
   NO estira. Las dos cosas hacen falta. */
.et-hb__cta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: auto;
    padding: 12px 16px;
    background: #114F6E;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .01em;
    color: #FFFFFF;
    box-shadow: 0 2px 6px rgba(17, 79, 110, .18);
    transition: background .18s ease, box-shadow .18s ease;
}
.et-hb__cta i { font-style: normal; transition: transform .18s ease; }
.et-hb:hover .et-hb__cta { background: #0B3A52; box-shadow: 0 4px 14px rgba(17, 79, 110, .28); }
.et-hb:hover .et-hb__cta i { transform: translateX(3px); }

.et-hb__brand {
    display: block;
    margin-top: 10px;
    text-align: center;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .04em;
    color: #8A97A3;
}

@media (min-width: 1100px) {
    .et-hb { padding: 22px 20px 18px; }
    .et-hb__title { font-size: 31px; -webkit-text-stroke-width: 0.8px; }
    .et-hb__num   { font-size: 33px; }
}
/* En el teléfono va a ancho completo y sin estirar de alto: allí no hay
   columna que igualar y forzar altura dejaría un hueco absurdo. */
@media (max-width: 700px) {
    .et-ad--econfoot { flex: 0 0 auto; margin-top: 12px; margin-bottom: 4px; }
    .et-hb { min-height: 0; padding: 18px 16px 14px; }
    .et-hb__title { font-size: 27px; -webkit-text-stroke-width: 0.65px; }
    .et-hb__num   { font-size: 28px; }
    .et-hb__cta   { margin-top: 14px; }
}
@media (prefers-reduced-motion: reduce) {
    .et-hb, .et-hb__cta, .et-hb__cta i { transition: none; }
    .et-hb:hover { transform: none; }
    .et-hb__dot { animation: none; }
}
