/* UHN Plus Editorial v12 — premium newsroom layer
   Reuters-like density + Axios-like briefing patterns, while keeping UHN Plus branding. */

:root {
    --u12-ink: #242424;
    --u12-muted: #6a6a66;
    --u12-line: #d7d7d2;
    --u12-soft: #f6f6f4;
    --u12-soft-2: #f1f1ef;
    --u12-warm: #f4eadf;
    --u12-accent: var(--brand-red, #f4511e);
    --u12-blue: #2857c5;
    --u12-green: #2f7d2c;
    --u12-sans: Arial, Helvetica, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --u12-serif: Georgia, "Times New Roman", serif;
    --u12-shell: 1280px;
}

/* ---------- Home discovery: Top stories / popular ---------- */
.newsroom-ranking {
    margin-top: 30px;
    margin-bottom: 64px;
    padding-top: 22px;
    border-top: 1px solid #111;
}
.newsroom-ranking-tabs {
    width: min(100%, 640px);
    margin-bottom: 22px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 4px;
    border-radius: 999px;
    background: #efefed;
}
.newsroom-ranking-tabs button {
    min-height: 46px;
    padding: 0 18px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #333;
    font: 800 13px/1 var(--u12-sans);
    letter-spacing: .02em;
    text-transform: uppercase;
    cursor: pointer;
}
.newsroom-ranking-tabs button.is-active {
    background: #222;
    color: #fff;
}
.newsroom-ranking-panel[hidden] { display: none !important; }
.newsroom-ranking-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 30px;
}
.ranking-story {
    min-width: 0;
    display: grid;
    grid-template-columns: 34px minmax(0,1fr) 96px;
    gap: 13px;
    align-items: center;
    min-height: 126px;
    padding: 16px 0;
    border-bottom: 1px solid var(--u12-line);
}
.ranking-number {
    align-self: start;
    padding-top: 4px;
    color: var(--u12-accent);
    font: 800 18px/1 var(--u12-sans);
}
.ranking-story-meta {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 7px;
    color: var(--u12-muted);
    font: 600 10px/1.25 var(--u12-sans);
}
.ranking-story-meta a {
    color: var(--u12-accent);
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
}
.ranking-story h3 {
    margin: 0;
    font: 800 20px/1.14 var(--u12-sans);
    letter-spacing: -.028em;
}
.ranking-story h3 a { color: var(--u12-ink); text-decoration: none; }
.ranking-story h3 a:hover { color: var(--u12-accent); }
.ranking-story-media {
    width: 96px;
    height: 76px;
    overflow: hidden;
    background: #e8e8e4;
}
.ranking-story-media img { width: 100%; height: 100%; object-fit: cover; }
.ranking-empty {
    max-width: 620px;
    padding: 22px;
    border: 1px solid var(--u12-line);
    background: var(--u12-soft);
}
.ranking-empty strong { font: 800 18px/1.2 var(--u12-sans); }
.ranking-empty p { margin: 7px 0 0; color: var(--u12-muted); font: 400 14px/1.5 var(--u12-sans); }
.ranking-empty code { font-size: .9em; }

/* ---------- Axios-inspired catch-up module ---------- */
.catch-up {
    margin-top: 70px;
    margin-bottom: 76px;
}
.catch-up-heading { margin-bottom: 24px !important; }
.catch-up-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(340px, .75fr);
    gap: 34px;
}
.catch-up-lead {
    min-width: 0;
    border-bottom: 1px solid var(--u12-line);
    padding-bottom: 26px;
}
.catch-up-lead-media {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9.6;
    overflow: hidden;
    background: #e9e9e5;
}
.catch-up-lead-media img { width: 100%; height: 100%; object-fit: cover; }
.catch-up-view {
    position: absolute;
    right: 18px;
    bottom: 18px;
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: rgba(35,35,35,.86);
    color: #fff;
    font-size: 21px;
}
.catch-up-lead-copy {
    max-width: 760px;
    margin: 24px auto 0;
    text-align: center;
}
.catch-up-kicker,
.catch-up-item-kicker {
    color: var(--u12-accent);
    font: 800 11px/1 var(--u12-sans);
    text-transform: uppercase;
    letter-spacing: .045em;
    text-decoration: none;
}
.catch-up-lead h3 {
    margin: 14px 0 20px;
    font: 500 clamp(34px, 3.3vw, 50px)/1.08 var(--u12-sans);
    letter-spacing: -.042em;
}
.catch-up-lead h3 a { color: var(--u12-ink); text-decoration: none; }
.catch-up-author {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #333;
    font: 600 13px/1 var(--u12-sans);
    text-decoration: none;
}
.catch-up-author img {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    object-fit: cover;
}
.catch-up-item {
    display: grid;
    grid-template-columns: 134px minmax(0,1fr);
    gap: 16px;
    align-items: center;
    min-height: 136px;
    padding: 16px 0;
    border-bottom: 1px solid var(--u12-line);
}
.catch-up-item:first-child { padding-top: 0; }
.catch-up-item-media { width: 134px; height: 92px; overflow: hidden; background: #e8e8e4; }
.catch-up-item-media img { width: 100%; height: 100%; object-fit: cover; }
.catch-up-item h3 {
    margin: 7px 0 8px;
    font: 700 22px/1.13 var(--u12-sans);
    letter-spacing: -.028em;
}
.catch-up-item h3 a { color: var(--u12-ink); text-decoration: none; }
.catch-up-item time { color: var(--u12-muted); font: 500 11px/1.2 var(--u12-sans); }

/* ---------- Newsletter card ---------- */
.newsletter-cta--media {
    width: min(calc(100% - 40px), var(--u12-shell)) !important;
    margin: 64px auto 76px !important;
    min-height: 180px;
    display: grid !important;
    grid-template-columns: 116px minmax(0,1fr) auto;
    align-items: center;
    gap: 24px;
    padding: 28px 30px !important;
    border: 0 !important;
    background: #f5f5f3 !important;
}
.newsletter-visual {
    width: 116px;
    height: 116px;
    display: grid;
    place-items: center;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e2e2df;
}
.newsletter-visual img { width: 100%; height: 100%; object-fit: cover; }
.newsletter-visual span { font-size: 34px; }
.newsletter-copy .section-kicker {
    display: block;
    margin-bottom: 8px;
    color: #4b4b47;
    font: 600 13px/1 var(--u12-sans);
}
.newsletter-copy h2 {
    margin: 0 0 10px !important;
    font: 800 clamp(27px,2.5vw,38px)/1 var(--u12-sans) !important;
    letter-spacing: -.04em;
}
.newsletter-copy p {
    max-width: 720px;
    margin: 0 !important;
    color: #4f4f4b !important;
    font: 400 17px/1.48 var(--u12-sans) !important;
}
.newsletter-toggle {
    display: grid;
    justify-items: center;
    gap: 7px;
    color: #333;
    font: 700 11px/1 var(--u12-sans);
    text-decoration: none;
}
.newsletter-toggle > span {
    position: relative;
    width: 70px;
    height: 38px;
    border-radius: 999px;
    background: #bbb;
    transition: background .2s ease;
}
.newsletter-toggle > span::after {
    content: '';
    position: absolute;
    top: 4px;
    left: 4px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 4px rgba(0,0,0,.15);
    transition: transform .2s ease;
}
.newsletter-toggle:hover > span,
.newsletter-toggle.is-on > span { background: var(--u12-green); }
.newsletter-toggle:hover > span::after,
.newsletter-toggle.is-on > span::after { transform: translateX(32px); }

/* ---------- Special coverage ---------- */
.special-coverage {
    margin-top: 72px;
    margin-bottom: 80px;
    border-top: 1px solid #111;
}
.special-coverage-heading {
    min-height: 74px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border-bottom: 1px solid var(--u12-line);
}
.special-coverage-heading span:first-child {
    color: var(--u12-accent);
    font: 800 11px/1 var(--u12-sans);
    text-transform: uppercase;
    letter-spacing: .05em;
}
.special-coverage-heading h2 {
    margin: 5px 0 0;
    font: 800 clamp(30px,2.6vw,42px)/1 var(--u12-sans);
    letter-spacing: -.04em;
}
.special-coverage-heading > span:last-child { font-size: 28px; }
.special-coverage-grid {
    display: grid;
    grid-template-columns: minmax(0,1.35fr) minmax(320px,.65fr);
    gap: 34px;
    padding-top: 26px;
}
.special-coverage-lead { min-width: 0; }
.special-coverage-media { display: block; aspect-ratio: 16/9.5; overflow: hidden; }
.special-coverage-media img { width: 100%; height: 100%; object-fit: cover; }
.special-coverage-copy { padding-top: 16px; }
.special-coverage-kicker {
    color: var(--u12-accent);
    font: 800 11px/1 var(--u12-sans);
    text-transform: uppercase;
    text-decoration: none;
}
.special-coverage-lead h3 {
    margin: 9px 0 10px;
    font: 800 clamp(31px,3vw,45px)/1.03 var(--u12-sans);
    letter-spacing: -.042em;
}
.special-coverage-lead h3 a { color: var(--u12-ink); text-decoration: none; }
.special-coverage-lead p { margin: 0; color: #555550; font: 400 16px/1.5 var(--u12-sans); }
.special-coverage-item {
    display: grid;
    grid-template-columns: 30px minmax(0,1fr) 94px;
    gap: 13px;
    align-items: center;
    min-height: 126px;
    padding: 15px 0;
    border-bottom: 1px solid var(--u12-line);
}
.special-coverage-index { color: var(--u12-accent); font: 800 17px/1 var(--u12-sans); }
.special-coverage-item h3 { margin: 0 0 8px; font: 800 19px/1.13 var(--u12-sans); letter-spacing: -.026em; }
.special-coverage-item h3 a { color: var(--u12-ink); text-decoration: none; }
.special-coverage-item time { color: var(--u12-muted); font: 500 11px/1 var(--u12-sans); }
.special-coverage-thumb { width: 94px; height: 74px; overflow: hidden; }
.special-coverage-thumb img { width: 100%; height: 100%; object-fit: cover; }

/* ---------- Native Ghost recommendations ---------- */
.recommendations-module { margin-top: 72px; margin-bottom: 80px; }
.recommendations-more {
    border: 0;
    background: transparent;
    cursor: pointer;
}
.uhn-recommendations {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 18px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.uhn-recommendations li { min-width: 0; }
.uhn-recommendations a {
    height: 100%;
    display: block;
    border: 1px solid var(--u12-line);
    color: var(--u12-ink);
    text-decoration: none;
    background: #fff;
}
.uhn-recommendation-image { width: 100%; aspect-ratio: 16/9; object-fit: cover; background: #eee; }
.uhn-recommendation-copy { padding: 16px; }
.uhn-recommendation-host { color: var(--u12-accent); font: 800 10px/1.2 var(--u12-sans); text-transform: uppercase; }
.uhn-recommendation-copy strong { display: block; margin-top: 8px; font: 800 20px/1.1 var(--u12-sans); letter-spacing: -.025em; }
.uhn-recommendation-copy p { margin: 9px 0 0; color: var(--u12-muted); font: 400 13px/1.45 var(--u12-sans); }

/* ---------- Article format badges / live coverage ---------- */
.article-format-badge {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 8px;
    border: 1px solid #cfcfcb;
    color: #444;
    font: 800 10px/1 var(--u12-sans);
    letter-spacing: .05em;
}
.article-live-control {
    max-width: 940px;
    min-height: 48px;
    margin: 4px 0 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 10px 12px;
    border: 1px solid #e0bdb6;
    background: #fff7f5;
}
.article-live-control > div { display: flex; align-items: center; gap: 8px; min-width: 0; }
.article-live-control strong { color: #922b1c; font: 800 13px/1 var(--u12-sans); }
.article-live-control span:not(.live-dot) { color: #6d5a56; font: 500 12px/1 var(--u12-sans); }
.article-live-control button {
    min-height: 32px;
    padding: 0 12px;
    border: 1px solid #b17b70;
    background: #fff;
    color: #732417;
    font: 800 11px/1 var(--u12-sans);
    cursor: pointer;
}

/* Axios-style semantic paragraphs authored as: <strong>Por qué importa:</strong> ... */
.article-content--v8 .article-brief-paragraph {
    position: relative;
    margin: 1.75em 0 !important;
    padding: 18px 20px 18px 23px;
    border-left: 4px solid var(--u12-blue);
    background: #f8f9ff;
    font-family: var(--u12-serif) !important;
    font-size: 1.06em !important;
    line-height: 1.58 !important;
}
.article-content--v8 .article-brief-paragraph > strong:first-child {
    color: #171717;
    font-family: var(--u12-sans);
    font-size: .82em;
    letter-spacing: -.01em;
}
.article-content--v8 .article-brief-paragraph[data-brief-label="En cifras"] { border-left-color: var(--u12-green); background: #f6fbf5; }
.article-content--v8 .article-brief-paragraph[data-brief-label="Qué sigue"] { border-left-color: var(--u12-accent); background: #fff8f5; }

/* More editorial article rhythm */
.article-content--v8 > p:not(.article-brief-paragraph) { text-wrap: pretty; }
.article-content--v8 > h2 { margin-top: 2.15em !important; }
.article-content--v8 .kg-image-card,
.article-content--v8 .kg-gallery-card,
.article-content--v8 .kg-video-card { margin-top: 2em; margin-bottom: 2em; }
.article-content--v8 .kg-image-card img,
.article-content--v8 .kg-gallery-card img { background: #efefec; }
.article-content--v8 figcaption { max-width: 90ch; }
.article-summary-module { box-shadow: none !important; }
.article-author-chip img { display: block !important; }

/* Archive pages */
.archive-header,
.tag-header,
.author-header { border-bottom-color: var(--u12-line) !important; }
.archive-grid .post-card { border-bottom: 1px solid var(--u12-line); }
.archive-grid .post-card-title { font-family: var(--u12-sans) !important; letter-spacing: -.028em; }

@media (min-width: 1100px) {
    .newsroom-ranking-list .ranking-story:nth-child(odd) { padding-right: 24px; border-right: 1px solid var(--u12-line); }
    .newsroom-ranking-list .ranking-story:nth-child(even) { padding-left: 24px; }
}

@media (max-width: 900px) {
    .newsroom-ranking-list { grid-template-columns: 1fr; }
    .catch-up-layout { grid-template-columns: 1fr; gap: 10px; }
    .special-coverage-grid { grid-template-columns: 1fr; gap: 18px; }
    .uhn-recommendations { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 760px) {
    .newsroom-ranking { width: calc(100% - 28px) !important; margin: 36px 14px 48px !important; padding-top: 0; border-top: 0; }
    .newsroom-ranking-tabs {
        width: 100%;
        margin-bottom: 20px;
        padding: 3px;
    }
    .newsroom-ranking-tabs button { min-height: 43px; padding: 0 10px; font-size: 12px; }
    .ranking-story {
        grid-template-columns: 28px minmax(0,1fr) 84px;
        min-height: 112px;
        padding: 14px 0;
    }
    .ranking-story h3 { font-size: 18px; }
    .ranking-story-media { width: 84px; height: 68px; }

    .catch-up { width: calc(100% - 28px) !important; margin: 48px 14px 56px !important; }
    .catch-up-heading { text-align: center; border-top: 0 !important; border-bottom: 0 !important; }
    .catch-up-heading h2 { width: 100%; max-width: none !important; font-weight: 500 !important; font-size: 27px !important; }
    .catch-up-heading h2::after { content: ''; display: block; width: 56px; height: 1px; margin: 14px auto 0; background: #bdbdb9; }
    .catch-up-lead-media { aspect-ratio: 16/9.6; }
    .catch-up-lead-copy { margin-top: 22px; }
    .catch-up-lead h3 { font-size: 33px; line-height: 1.08; }
    .catch-up-author img { width: 40px; height: 40px; }
    .catch-up-item { grid-template-columns: 126px minmax(0,1fr); min-height: 124px; }
    .catch-up-item-media { width: 126px; height: 84px; }
    .catch-up-item h3 { font-size: 20px; }

    .newsletter-cta--media {
        width: calc(100% - 28px) !important;
        margin: 50px 14px 58px !important;
        min-height: 0;
        grid-template-columns: 74px minmax(0,1fr) auto;
        gap: 14px;
        padding: 18px !important;
    }
    .newsletter-visual { width: 74px; height: 74px; }
    .newsletter-copy h2 { font-size: 22px !important; }
    .newsletter-copy p { grid-column: 1 / -1; font-size: 14px !important; }
    .newsletter-toggle > span { width: 58px; height: 32px; }
    .newsletter-toggle > span::after { width: 26px; height: 26px; top: 3px; left: 3px; }
    .newsletter-toggle:hover > span::after,
    .newsletter-toggle.is-on > span::after { transform: translateX(26px); }
    .newsletter-toggle strong { display: none; }

    .special-coverage { width: calc(100% - 28px) !important; margin: 54px 14px 64px !important; }
    .special-coverage-heading { min-height: 66px; }
    .special-coverage-heading h2 { font-size: 29px; }
    .special-coverage-lead h3 { font-size: 31px; }
    .special-coverage-item { grid-template-columns: 28px minmax(0,1fr) 84px; min-height: 116px; }
    .special-coverage-thumb { width: 84px; height: 68px; }
    .special-coverage-item h3 { font-size: 18px; }

    .recommendations-module { width: calc(100% - 28px) !important; margin: 54px 14px 64px !important; }
    .uhn-recommendations { grid-template-columns: 1fr; gap: 12px; }
    .uhn-recommendations a { display: grid; grid-template-columns: 104px minmax(0,1fr); }
    .uhn-recommendation-image { width: 104px; height: 100%; aspect-ratio: auto; }
    .uhn-recommendation-copy { padding: 14px; }
    .uhn-recommendation-copy strong { font-size: 18px; }
    .uhn-recommendation-copy p { display: none; }

    .article-live-control { margin-bottom: 14px; }
    .article-live-control > div { display: grid; grid-template-columns: auto 1fr; gap: 4px 8px; }
    .article-live-control span:not(.live-dot) { grid-column: 2; }
    .article-live-control button { flex: 0 0 auto; }
    .article-format-badge { font-size: 9px; }

    .article-content--v8 .article-brief-paragraph {
        margin-left: -2px !important;
        margin-right: -2px !important;
        padding: 16px 16px 16px 19px;
        font-size: 1.03em !important;
    }
}

@media (max-width: 430px) {
    .newsletter-cta--media { grid-template-columns: 64px minmax(0,1fr) auto; }
    .newsletter-visual { width: 64px; height: 64px; }
    .newsletter-copy p { display: none; }
    .catch-up-item { grid-template-columns: 112px minmax(0,1fr); }
    .catch-up-item-media { width: 112px; height: 78px; }
}

@media (prefers-reduced-motion: reduce) {
    .newsletter-toggle > span,
    .newsletter-toggle > span::after { transition: none !important; }
}

/* Tag-driven article templates without requiring duplicated Ghost templates. */
.article-format-visual .article-heading-wrap--v8 { width: min(calc(100% - 40px), 1220px) !important; }
.article-format-visual .article-heading-wrap--v8 > h1 { max-width: 1180px !important; font-size: clamp(50px,6vw,86px) !important; }
.article-format-visual .article-heading-wrap--v8 .article-dek { max-width: 980px !important; }
.article-format-visual .article-content--v8 { --article-v8-width: 820px; }
.article-format-visual .article-content--v8 .kg-width-wide { max-width: 1160px; }
.article-format-briefing .article-summary-module { border-top-color: var(--u12-blue) !important; }
.article-format-briefing .article-heading-wrap--v8 > h1 { max-width: 900px !important; }

@media (max-width: 760px) {
    .article-format-visual .article-heading-wrap--v8 > h1 { font-size: clamp(38px,10vw,52px) !important; }
}

/* ---------- Compact explanatory cards ---------- */
.quick-cards {
    margin-top: 54px;
    margin-bottom: 72px;
    padding-top: 22px;
    border-top: 1px solid var(--u12-line);
}
.quick-cards-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}
.quick-cards-heading > span {
    color: var(--u12-accent);
    font: 800 11px/1 var(--u12-sans);
    text-transform: uppercase;
    letter-spacing: .05em;
}
.quick-cards-heading h2 {
    margin: 0;
    font: 800 26px/1 var(--u12-sans);
    letter-spacing: -.035em;
}
.quick-cards-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
.quick-card {
    min-height: 188px;
    display: grid;
    grid-template-columns: minmax(0,1fr) 190px;
    gap: 18px;
    align-items: stretch;
    padding: 18px;
    border: 1px solid #cfcfca;
    border-radius: 18px;
    background: #fff;
}
.quick-card-copy { align-self: center; }
.quick-card-kicker {
    color: var(--u12-muted);
    font: 700 11px/1 var(--u12-sans);
    text-transform: uppercase;
    text-decoration: none;
}
.quick-card h3 {
    margin: 7px 0 9px;
    font: 800 25px/1.08 var(--u12-sans);
    letter-spacing: -.032em;
}
.quick-card h3 a { color: var(--u12-ink); text-decoration: none; }
.quick-card p { margin: 0; color: var(--u12-muted); font: 400 13px/1.4 var(--u12-sans); }
.quick-card-media { min-height: 150px; border-radius: 14px; overflow: hidden; background: #eee; }
.quick-card-media img { width: 100%; height: 100%; object-fit: cover; }

@media (max-width: 900px) {
    .quick-cards-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
    .quick-cards { width: calc(100% - 28px) !important; margin: 46px 14px 56px !important; }
    .quick-cards-heading { display: grid; gap: 7px; }
    .quick-card { min-height: 148px; grid-template-columns: minmax(0,1fr) 118px; gap: 13px; padding: 13px; border-radius: 14px; }
    .quick-card h3 { font-size: 20px; }
    .quick-card p { display: none; }
    .quick-card-media { min-height: 118px; border-radius: 11px; }
}

/* ---------- Section fronts / tag archives ---------- */
.archive-header--section {
    padding-top: 42px;
    padding-bottom: 22px;
    border-bottom: 1px solid #111 !important;
}
.archive-header--section h1 {
    margin: 6px 0 8px;
    font: 800 clamp(42px,4.2vw,64px)/.98 var(--u12-sans);
    letter-spacing: -.05em;
}
.archive-header--section p { max-width: 760px; color: var(--u12-muted); font: 400 17px/1.5 var(--u12-sans); }
.section-front-feed {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 28px 20px;
    padding-top: 26px;
}
.section-front-lead {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
    gap: 34px;
    padding-bottom: 28px;
    border-bottom: 1px solid var(--u12-line);
}
.section-front-lead-copy { align-self: center; }
.section-front-lead h2 {
    margin: 10px 0 14px;
    font: 800 clamp(38px,3.8vw,58px)/1.02 var(--u12-sans);
    letter-spacing: -.045em;
}
.section-front-lead h2 a { color: var(--u12-ink); text-decoration: none; }
.section-front-lead p { margin: 0 0 14px; color: #50504c; font: 400 17px/1.5 var(--u12-sans); }
.section-front-lead time { color: var(--u12-muted); font: 500 12px/1 var(--u12-sans); }
.section-front-lead-media { display: block; aspect-ratio: 16/9.6; overflow: hidden; background: #eee; }
.section-front-lead-media img { width: 100%; height: 100%; object-fit: cover; }
.section-front-card { border-bottom: 1px solid var(--u12-line); padding-bottom: 18px; }

@media (max-width: 760px) {
    .archive-header--section { padding-top: 28px; }
    .archive-header--section h1 { font-size: 42px; }
    .section-front-feed { grid-template-columns: 1fr; gap: 22px; }
    .section-front-lead { display: flex; flex-direction: column; gap: 18px; }
    .section-front-lead-copy { order: 2; }
    .section-front-lead-media { order: 1; margin-inline: -14px; width: calc(100% + 28px); }
    .section-front-lead h2 { font-size: 34px; }
}

/* First story in the segmented module gets a stronger reporter-led treatment. */
.ranking-story--lead { grid-column: 1 / -1; grid-template-columns: 40px minmax(0,1fr) 150px; min-height: 148px; }
.ranking-story--lead h3 { font-size: 28px; line-height: 1.08; }
.ranking-story--lead .ranking-story-media { width: 150px; height: 100px; }
.ranking-author {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 7px;
    color: #353532;
    font: 600 12px/1 var(--u12-sans);
    text-decoration: none;
}
.ranking-author img { width: 30px; height: 30px; border-radius: 50%; object-fit: cover; }
@media (max-width: 760px) {
    .ranking-story--lead { grid-template-columns: 28px minmax(0,1fr) 92px; min-height: 132px; }
    .ranking-story--lead h3 { font-size: 21px; }
    .ranking-story--lead .ranking-story-media { width: 92px; height: 74px; }
    .ranking-author img { width: 28px; height: 28px; }
}
@media (min-width: 1100px) {
    .newsroom-ranking-list .ranking-story--lead { border-right: 0 !important; padding-right: 0 !important; }
    .newsroom-ranking-list .ranking-story--lead + .ranking-story { padding-left: 0; }
}

/* ---------- Final QA refinements ---------- */
.newsletter-cta--media .newsletter-copy h2 { color: var(--u12-ink) !important; }
.newsletter-cta--media .newsletter-copy p { color: #4f4f4b !important; }
.newsletter-cta--media .newsletter-visual span { color: var(--u12-ink); }

@media (max-width: 760px) {
    .article-author-chip img {
        display: block !important;
        width: 38px !important;
        height: 38px !important;
        flex: 0 0 38px;
        border-radius: 50%;
        object-fit: cover;
    }
    .article-author-overline { gap: 10px !important; }
    .article-author-chip { gap: 9px !important; }
}
