/* ════════════════════════════════════════════
   ANIMAL POLÍTICO / REDACCIÓN PUNTANA
   CSS UNIFICADO — tipografía, secciones, single, archivo
   Versión corregida para mantener coherencia visual
   ════════════════════════════════════════════ */

/* ════════════════════════════════════════════
   1. VARIABLES & BASE
   ════════════════════════════════════════════ */

:root {
    --bg: #ffffff;
    --surface: #ffffff;
    --surface-soft: #fafaf8;
    --surface-muted: #f3f4f6;

    --text: #111111;
    --text-main: #111111;
    --text-muted: #555555;
    --text-light: #888888;

    --accent: #1565C0;
    --link: #1a6bbf;
    --dark: #0D2B6E;
    --border: rgba(0,0,0,.12);
    --border-soft: rgba(0,0,0,.08);
    --border-strong: #111111;

    --shadow: 8px 8px 0 #000;
    --shadow-lg: 10px 10px 0 #000;
    --container: 1280px;

    --font-sans: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, Helvetica, sans-serif;
    --font-serif: Georgia, 'Times New Roman', serif;

    --fs-meta: 12px;
    --fs-kicker: 10px;
    --fs-small: 13px;
    --fs-body: 14px;
    --fs-card: 16px;
    --fs-card-md: 18px;
    --fs-card-lg: 21px;
    --fs-section: 34px;
    --fs-hero: 42px;

    --radius-sm: 4px;
    --radius-md: 6px;
    --radius-lg: 10px;
}

* { box-sizing: border-box; }

html { font-size: 62.5%; }

body {
    margin: 0;
    padding-top: 0 !important;
    background: var(--bg);
    color: var(--text-main);
    font-family: var(--font-sans);
    font-size: 1.6rem;
    line-height: 1.55;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

img { display: block; max-width: 100%; height: auto; }
a { text-decoration: none; color: inherit; }
ul { margin: 0; padding: 0; }

.ap-container {
    width: min(100% - 32px, var(--container));
    margin: 0 auto;
}

.ap-img-cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Escala tipográfica global */
.h1 { font-size: 42px; font-weight: 800; line-height: 1.08; letter-spacing: -.025em; }
.h2 { font-size: 28px; font-weight: 750; line-height: 1.14; letter-spacing: -.018em; }
.h3 { font-size: 22px; font-weight: 700; line-height: 1.22; letter-spacing: -.012em; }
.h4 { font-size: 18px; font-weight: 700; line-height: 1.3; }
.text-lg { font-size: 18px; }
.text-md { font-size: 15px; }
.text-sm { font-size: 13px; color: var(--text-muted); }
.meta { font-size: 12px; color: var(--text-light); }

/* Encabezados de sección compartidos */
.ap-section-block {
    margin: 40px 0;
    padding-top: 20px;
    border-top: 1px solid #cfcfcf;
}

.ap-section-block__head,
.ap-section-politica .ap-section-block__head,
.ap-section-economia .ap-section-block__head,
.ap-section-turismo .ap-section-block__head,
.ap-section-policiales .ap-section-block__head,
.ap-section-internacional .ap-section-block__head,
.ap-section-opinion .ap-section-block__head {
    display: flex;
    align-items: baseline;
    gap: 12px;
    border-bottom: 2px solid currentColor;
    padding-bottom: 6px;
    margin-bottom: 20px;
}

.ap-section-block__title {
    font-family: var(--font-serif);
    font-size: var(--fs-section);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.025em;
    margin: 0;
    color: #111;
}

.ap-section-block__title a {
    color: inherit;
    text-decoration: none;
}

.ap-section-block__title a:hover { color: var(--accent); }

.ap-section-block__title--label {
    font-family: var(--font-sans);
    font-size: 22px;
    font-weight: 700;
    line-height: 1.15;
    margin: 0;
    letter-spacing: -.01em;
}

.ap-section-block__title--serif {
    font-family: var(--font-serif);
    font-size: var(--fs-section);
    font-weight: 700;
    font-style: italic;
    line-height: 1;
    margin: 0;
}

.ap-section-block__more {
    font-size: 13px;
    color: var(--text-light);
    text-decoration: none;
    margin-left: auto;
    font-weight: 500;
}

.ap-section-block__more:hover { color: var(--accent); }

/* Tags y meta compartidos */
.ap-card-categories,
.ap-hero__cats,
.ap-int-hero__cats,
.ap-commentary-card__cats,
.ap-opinion-hero__cats {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 8px;
}

.ap-card-categories a,
.ap-single-cat,
.ap-int-hero__cats a,
.ap-commentary-card__cats a,
.ap-opinion-hero__cats a {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--link);
    background: #e8f1fb;
    padding: 3px 7px;
    border-radius: 3px;
    text-decoration: none;
    transition: background .2s, color .2s, border-color .2s;
}

.ap-card-categories a:hover,
.ap-single-cat:hover,
.ap-int-hero__cats a:hover,
.ap-commentary-card__cats a:hover,
.ap-opinion-hero__cats a:hover {
    background: var(--link);
    color: #fff;
}

.ap-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    font-size: var(--fs-meta);
    color: var(--text-light);
    margin-bottom: 8px;
}

/* Títulos de cards: normalización */
.ap-story-card__title,
.ap-story-card__title--small,
.ap-rail-story__title,
.ap-lo-ultimo-featured__title,
.ap-lo-ultimo-row__title,
.ap-politica-main__title,
.ap-politica-side-featured__title,
.ap-politica-side-minor__title,
.ap-int-hero__title,
.ap-int-mini-story__title,
.ap-commentary-card__title,
.ap-opinion-hero__title,
.ap-opinion-mini__title,
.ap-econ-left__title,
.ap-econ-main__title,
.ap-econ-list__title,
.ap-energia-left__title,
.ap-energia-main__title,
.ap-energia-list__title,
.ap-turismo-hero__title,
.ap-turismo-news__title,
.ap-turismo-choice__title,
.ap-policiales-main__title,
.ap-policiales-featured__title,
.ap-policiales-list__title,
.ap-provincias-top__title,
.ap-provincias-bottom__title,
.ap-provincias-list-item__title,
.ap-negocios-top__title,
.ap-negocios-bottom__title,
.ap-archive-featured__title,
.ap-archive-card__title,
.ap-next-reading-card__title,
.ap-related-card__title {
    color: #111;
    letter-spacing: -.01em;
}

.ap-story-card__title a:hover,
.ap-story-card__title--small a:hover,
.ap-rail-story__title a:hover,
.ap-lo-ultimo-featured__title a:hover,
.ap-lo-ultimo-row__title a:hover,
.ap-politica-main__title a:hover,
.ap-politica-side-featured__title a:hover,
.ap-politica-side-minor__title a:hover,
.ap-int-hero__title a:hover,
.ap-int-mini-story__title a:hover,
.ap-commentary-card__title a:hover,
.ap-opinion-hero__title a:hover,
.ap-opinion-mini__title a:hover,
.ap-econ-left__title a:hover,
.ap-econ-main__title a:hover,
.ap-econ-list__title a:hover,
.ap-turismo-hero__title a:hover,
.ap-turismo-news__title a:hover,
.ap-turismo-choice__title a:hover,
.ap-policiales-main__title a:hover,
.ap-policiales-featured__title a:hover,
.ap-policiales-list__title a:hover,
.ap-archive-featured__title a:hover,
.ap-archive-card__title a:hover,
.ap-next-reading-card__title a:hover,
.ap-related-card__title a:hover {
    color: var(--accent);
}

/* ════════════════════════════════════════════
   2. HEADER
   ════════════════════════════════════════════ */

.ap-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 200 !important;
    width: 100% !important;
    background: transparent !important;
    transition: box-shadow .2s !important;
}

.ap-header.is-stuck { box-shadow: 0 2px 12px rgba(0,0,0,.2) !important; }

.ap-topbar {
    background: var(--dark) !important;
    color: #fff !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
    overflow: hidden !important;
    max-height: 40px !important;
    opacity: 1 !important;
    transition: max-height .25s ease, opacity .25s ease !important;
}

.ap-topbar-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: 34px !important;
    min-height: 34px !important;
}

.ap-topbar-date {
    font-size: 11px;
    color: rgba(255,255,255,.55);
    letter-spacing: .02em;
}

.ap-topbar-actions { display: flex; gap: 20px; }

.ap-topbar-actions a {
    font-size: 11px;
    color: rgba(255,255,255,.6);
    text-decoration: none;
    transition: color .2s;
}

.ap-topbar-actions a:hover { color: #fff; }
.ap-header.is-stuck .ap-topbar { max-height: 0 !important; opacity: 0 !important; }

.ap-brandbar {
    background: var(--dark) !important;
    border-bottom: 3px solid #42A5F5 !important;
    padding: 14px 0 !important;
    transition: padding .25s ease !important;
}

.ap-brandbar-inner {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 24px !important;
    background: transparent !important;
}

.ap-header.is-stuck .ap-brandbar { padding: 7px 0 !important; }

.ap-logo a,
.ap-logo img {
    display: block;
    max-height: 56px;
    width: auto;
    transition: max-height .25s ease;
}

.ap-logo-text {
    font-size: 26px;
    font-weight: 900;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: -.02em;
    transition: font-size .25s ease;
}

.ap-header.is-stuck .ap-logo img { max-height: 36px !important; }
.ap-header.is-stuck .ap-logo-text { font-size: 20px !important; }

.ap-header-tools { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }

.ap-search-wrap {
    display: flex;
    align-items: center;
    background: rgba(255,255,255,.1);
    border: .5px solid rgba(255,255,255,.2);
    border-radius: 3px;
    overflow: hidden;
    transition: background .2s;
}

.ap-search-wrap:focus-within {
    background: rgba(255,255,255,.15);
    border-color: rgba(255,255,255,.4);
}

.ap-search-field {
    background: none !important;
    border: none !important;
    outline: none !important;
    color: #fff !important;
    font-size: 13px;
    padding: 8px 12px;
    width: 220px;
    height: auto !important;
    font-family: inherit;
    transition: width .25s ease;
}

.ap-search-field::placeholder { color: rgba(255,255,255,.4); }
.ap-header.is-stuck .ap-search-field { width: 160px !important; }

.ap-search-submit {
    background: none !important;
    border: none !important;
    border-left: .5px solid rgba(255,255,255,.15) !important;
    color: rgba(255,255,255,.6);
    padding: 8px 12px;
    cursor: pointer;
    display: flex;
    align-items: center;
    height: auto !important;
    transition: color .2s;
}

.ap-search-submit:hover { color: #fff; }

.ap-menu-toggle {
    display: none;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 36px;
    height: 36px;
    background: rgba(255,255,255,.1);
    border: .5px solid rgba(255,255,255,.2) !important;
    border-radius: 3px;
    cursor: pointer;
    padding: 8px;
    flex-shrink: 0;
}

.ap-menu-toggle__bar {
    display: block;
    width: 100%;
    height: 1.5px;
    background: rgba(255,255,255,.85);
    border-radius: 1px;
    transition: transform .25s, opacity .25s;
}

.ap-menu-toggle[aria-expanded="true"] .ap-menu-toggle__bar:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.ap-menu-toggle[aria-expanded="true"] .ap-menu-toggle__bar:nth-child(2) { opacity: 0; }
.ap-menu-toggle[aria-expanded="true"] .ap-menu-toggle__bar:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

.ap-nav {
    background: #E3F2FD !important;
    border-bottom: 1px solid #ddd !important;
    border-top: none !important;
    position: static !important;
    overflow: hidden !important;
    max-height: 60px !important;
    opacity: 1 !important;
    transition: max-height .25s ease, opacity .25s ease !important;
    z-index: 100;
}

.ap-header.is-stuck .ap-nav {
    max-height: 0 !important;
    opacity: 0 !important;
    border-bottom: none !important;
}

.ap-nav-spacer { display: none !important; height: 0 !important; }

.ap-menu {
    list-style: none !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    max-height: none !important;
    overflow: visible !important;
}

.ap-menu > li { position: relative; list-style: none; }

.ap-menu > li > a {
    display: block !important;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #000 !important;
    text-decoration: none;
    padding: 15px 16px;
    transition: color .2s;
    white-space: nowrap;
}

.ap-menu > li > a:hover,
.ap-menu > li.current-menu-item > a,
.ap-menu > li.current-menu-ancestor > a { color: var(--accent) !important; }

.ap-menu > li > .sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 220px;
    background: #fff;
    border: 2px solid #000;
    box-shadow: 6px 6px 0 #000;
    list-style: none;
    margin: 0;
    padding: 6px 0;
    z-index: 200;
}

.ap-menu > li:hover > .sub-menu,
.ap-menu > li:focus-within > .sub-menu { display: block; }

.ap-menu > li > .sub-menu li { list-style: none; }

.ap-menu > li > .sub-menu li a {
    display: block;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    color: #000 !important;
    text-decoration: none;
    padding: 10px 16px;
    transition: background .15s;
}

.ap-menu > li > .sub-menu li a:hover {
    background: #f5f5f5;
    color: var(--accent) !important;
}

@media (max-width: 768px) {
    .ap-topbar { display: none !important; }
    .ap-brandbar { padding: 10px 0 !important; }
    .ap-logo img { max-height: 40px !important; }
    .ap-logo-text { font-size: 18px !important; }
    .ap-menu-toggle { display: flex !important; }
    .ap-search-field { width: 120px !important; }
    .ap-nav,
    .ap-header.is-stuck .ap-nav {
        max-height: none !important;
        opacity: 1 !important;
        background: #E3F2FD !important;
        border-bottom: 1px solid #b8d4ef !important;
        overflow: visible !important;
    }
    .ap-nav .ap-container { padding: 0 !important; }
    .ap-menu {
        flex-direction: column !important;
        align-items: stretch !important;
        max-height: 0 !important;
        overflow: hidden !important;
        background: #E3F2FD !important;
        transition: max-height .3s ease !important;
    }
    .ap-menu.is-open { max-height: 700px !important; overflow-y: auto !important; }
    .ap-menu > li { border-bottom: 1px solid #f0f0f0 !important; }
    .ap-menu > li:last-child { border-bottom: none !important; }
    .ap-menu > li > a {
        padding: 14px 16px !important;
        font-size: 13px !important;
        color: #111 !important;
        white-space: normal !important;
    }
    .ap-menu > li > a:hover,
    .ap-menu > li.current-menu-item > a {
        color: var(--accent) !important;
        background: #dbeafe !important;
    }
    .ap-menu > li > .sub-menu {
        display: block !important;
        position: static !important;
        border: none !important;
        box-shadow: none !important;
        background: #d0e8fb !important;
        padding: 0 !important;
        margin: 0 !important;
        min-width: auto !important;
        max-height: 0 !important;
        overflow: hidden !important;
        transition: max-height .25s ease !important;
    }
    .ap-menu > li.is-open > .sub-menu { max-height: 400px !important; }
    .ap-menu > li > .sub-menu li { border-top: 1px solid #ececec !important; }
    .ap-menu > li > .sub-menu li a {
        padding: 11px 16px 11px 28px !important;
        font-size: 12px !important;
        color: #555 !important;
    }
    .ap-menu > li > .sub-menu li a:hover {
        color: var(--accent) !important;
        background: #c5e0f8 !important;
    }
}

@media (max-width: 400px) { .ap-search-wrap { display: none !important; } }

/* ════════════════════════════════════════════
   3. FOOTER
   ════════════════════════════════════════════ */

.ap-footer {
    margin-top: 40px;
    background-color: #000 !important;
    color: #fff !important;
    padding: 80px 0 0;
    font-family: var(--font-sans);
    width: 100%;
}

.ap-footer .ap-container { background: transparent !important; }

.ap-footer-grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr;
    gap: 60px;
    padding-bottom: 60px;
    align-items: start;
}

.ap-footer-title {
    font-size: 2.2rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: -0.02em;
    margin: 0 0 15px;
    color: #fff;
}

.ap-footer-subtitle {
    font-size: 1.2rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 0 0 25px;
    color: #fff;
}

.ap-footer-text {
    color: #a1a1a1;
    line-height: 1.6;
    font-size: 1.1rem;
    max-width: 300px;
}

.ap-footer-menu,
.ap-footer-contact { list-style: none !important; padding: 0 !important; margin: 0 !important; }

.ap-footer-menu li,
.ap-footer-contact li {
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #a1a1a1;
}

.ap-footer-menu a {
    color: #a1a1a1;
    text-decoration: none;
    transition: all .3s ease;
    font-size: 1.1rem;
}

.ap-footer-menu a:hover { color: #1565C0; padding-left: 5px; }
.ap-footer-contact span { font-size: 1.2rem; filter: grayscale(100%); }

.ap-footer-bottom {
    border-top: 1px solid #1a1a1a;
    padding: 30px 0;
    margin-top: 20px;
    background-color: #050505;
}

.ap-footer-bottom-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #666;
    font-size: .95rem;
}

.ap-footer-legal { display: flex; gap: 25px; }
.ap-footer-legal a { color: #666; text-decoration: none; transition: color .3s; }
.ap-footer-legal a:hover { color: #fff; }

.ap-footer-fomeb {
    text-align: center;
    padding: 24px 0;
    border-top: 1px solid rgba(255,255,255,.1);
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ap-footer-fomeb-logo {
    height: 48px;
    width: auto;
    opacity: .85;
    transition: opacity .2s ease;
    display: block;
    margin: 0 auto;
}

.ap-footer-fomeb a:hover .ap-footer-fomeb-logo { opacity: 1; }

@media (max-width: 991px) { .ap-footer-grid { grid-template-columns: 1fr 1fr; gap: 40px; } }
@media (max-width: 600px) {
    .ap-footer-grid { grid-template-columns: 1fr; text-align: center; }
    .ap-footer-text { margin: 0 auto; }
    .ap-footer-menu li, .ap-footer-contact li { justify-content: center; }
    .ap-footer-bottom-flex { flex-direction: column; gap: 15px; text-align: center; }
}

/* ════════════════════════════════════════════
   4. HOME / HERO PRINCIPAL
   ════════════════════════════════════════════ */

.ap-home--pro { padding: 24px 0 50px; }

.ap-home-hero-grid {
    display: grid;
    grid-template-columns: minmax(0,1.7fr) minmax(280px,.8fr);
    gap: 28px;
    align-items: start;
    margin-bottom: 28px;
}

.ap-home-hero-main,
.ap-home-hero-rail { min-width: 0; }

.ap-hero-story {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    background: #fff;
    overflow: hidden;
    border-bottom: 1px solid #ddd;
}

.ap-hero-story__media { min-height: 480px; background: #d8d8d8; }

.ap-hero-story__content {
    padding: 22px 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.ap-hero-story__title {
    margin: 0 0 14px;
    font-size: clamp(3rem, 3.5vw, 4.6rem);
    line-height: 1.02;
    font-weight: 850;
    letter-spacing: -.028em;
}

.ap-hero-story__title a { color: #111; }
.ap-hero-story__title a:hover { color: var(--accent); }

.ap-hero-story__excerpt {
    margin: 0;
    font-size: 1.65rem;
    line-height: 1.6;
    color: #333;
}

.ap-rail-block {
    background: #fff;
    border-left: 1px solid #ddd;
    padding-left: 24px;
}

.ap-rail-block__title {
    margin: 0 0 18px;
    font-size: 2.2rem;
    font-weight: 800;
    text-transform: uppercase;
    color: #111;
}

.ap-rail-story {
    padding: 0 0 16px;
    margin: 0 0 16px;
    border-bottom: 1px solid #e4e4e4;
}

.ap-rail-story:last-child { margin-bottom: 0; }
.ap-rail-story__title { margin: 0; font-size: 1.8rem; line-height: 1.22; font-weight: 750; }
.ap-rail-story__title a { color: #111; }

.ap-news-strip {
    display: flex;
    align-items: center;
    gap: 16px;
    background: #E3F2FD;
    border-top: 1px solid #b8d4ef;
    border-bottom: 1px solid #b8d4ef;
    padding: 14px 0;
    margin-bottom: 30px;
}

.ap-news-strip__label {
    flex-shrink: 0;
    background: #0D2B6E;
    color: #fff;
    padding: 8px 12px;
    font-size: 1.15rem;
    font-weight: 800;
    text-transform: uppercase;
}

.ap-news-strip__items {
    display: flex;
    gap: 18px;
    overflow: auto;
    white-space: nowrap;
    scrollbar-width: none;
}

.ap-news-strip__items::-webkit-scrollbar { display: none; }
.ap-news-strip__item { font-size: 1.45rem; color: #111; }
.ap-news-strip__item:hover { color: var(--accent); }

.ap-home-secondary-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 24px;
    margin-bottom: 34px;
}

.ap-story-card {
    background: #fff;
    border-bottom: 1px solid #ddd;
    overflow: hidden;
}

.ap-story-card--horizontal .ap-story-card__media { height: 220px; background: #d8d8d8; }
.ap-story-card__content { padding: 16px 0 0; }

.ap-story-card__title {
    margin: 0 0 10px;
    font-size: 2.2rem;
    line-height: 1.14;
    font-weight: 750;
}

.ap-story-card__title a { color: #111; }

.ap-story-card__excerpt {
    margin: 0;
    font-size: 1.45rem;
    line-height: 1.6;
    color: #333;
}

.ap-home-grid-section { margin-bottom: 40px; }

.ap-home-section-head {
    margin-bottom: 18px;
    border-bottom: 2px solid #111;
    padding-bottom: 10px;
}

.ap-home-section-head h2 {
    margin: 0;
    font-size: 2.6rem;
    text-transform: uppercase;
    font-weight: 850;
}

.ap-home-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 24px;
}

.ap-story-card--vertical { display: flex; flex-direction: column; background: #fff; }
.ap-story-card--vertical .ap-story-card__media--fixed { height: 220px; background: #d8d8d8; }
.ap-story-card__content--grid { padding: 14px 0 0; }

.ap-story-card__title--small {
    margin: 0 0 8px;
    font-size: 1.7rem;
    line-height: 1.18;
    font-weight: 750;
}

.ap-story-card__title--small a { color: #111; }
.ap-story-card__excerpt--small { font-size: 1.4rem; line-height: 1.55; color: #333; }

.ap-home--pro .ap-card,
.ap-home--pro .ap-story-card,
.ap-home--pro .ap-hero-story,
.ap-home--pro .ap-rail-block {
    box-shadow: none !important;
    border: 0 !important;
}

@media (max-width: 1199px) {
    .ap-hero-story__title { font-size: 3.8rem; }
    .ap-home-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}

@media (max-width: 991px) {
    .ap-home-hero-grid { grid-template-columns: 1fr; }
    .ap-hero-story { grid-template-columns: 1fr; }
    .ap-hero-story__media { min-height: 340px; }
    .ap-rail-block { border-left: 0; padding-left: 0; }
    .ap-home-secondary-row { grid-template-columns: 1fr 1fr; }
    .ap-home-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 767px) {
    .ap-hero-story__title { font-size: 2.8rem; }
    .ap-home-secondary-row,
    .ap-home-grid { grid-template-columns: 1fr; }
    .ap-hero-story__content { padding: 18px 0 0; }
    .ap-story-card__content { padding: 14px 0 0; }
}

/* ════════════════════════════════════════════
   5. HERO ASIMÉTRICO
   ════════════════════════════════════════════ */

.ap-section-hero { margin-bottom: 40px; }

.ap-hero {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 480px;
    border-radius: 8px;
    overflow: hidden;
    border: .5px solid rgba(0,0,0,.15);
}

.ap-hero__img { position: relative; overflow: hidden; background: #0D2B6E; }
.ap-hero__img a { display: block; width: 100%; height: 100%; }

.ap-hero__img img,
.ap-hero__img .ap-img-cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .5s ease;
}

.ap-hero__img a:hover img,
.ap-hero__img a:hover .ap-img-cover { transform: scale(1.04); }
.ap-hero__no-img { width: 100%; height: 100%; min-height: 480px; background: #0D2B6E; }

.ap-hero__body {
    background: #0D2B6E;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 36px 32px;
    position: relative;
}

.ap-hero__body::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 3px;
    height: 100%;
    background: var(--accent);
}

.ap-hero__top { display: flex; flex-direction: column; gap: 16px; }

.ap-hero__cat {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: var(--accent);
    border: .5px solid var(--accent);
    padding: 3px 8px;
    border-radius: 2px;
    text-decoration: none;
    transition: background .2s, color .2s;
}

.ap-hero__cat:hover { background: var(--accent); color: #fff; }

.ap-hero__title {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.16;
    color: #f5f5f0;
    font-family: var(--font-sans);
    margin: 0;
    letter-spacing: -.02em;
}

.ap-hero__title a { color: inherit; text-decoration: none; }
.ap-hero__title a:hover { opacity: .85; }
.ap-hero__excerpt { font-size: 14px; line-height: 1.65; color: rgba(255,255,255,.8); margin: 0; }
.ap-hero__bottom { display: flex; flex-direction: column; gap: 14px; margin-top: 28px; }
.ap-hero__meta { font-size: 12px; color: rgba(255,255,255,.6); display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.ap-hero__meta-dot { width: 3px; height: 3px; background: rgba(255,255,255,.4); border-radius: 50%; display: inline-block; flex-shrink: 0; }

.ap-hero__read {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 700;
    color: #f5f5f0;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: .1em;
    border-bottom: 1px solid rgba(255,255,255,.4);
    padding-bottom: 4px;
    width: fit-content;
    transition: border-color .2s;
}

.ap-hero__read:hover { border-color: var(--accent); }
.ap-hero__read:hover .ap-hero__read-arrow { transform: translateX(4px); }
.ap-hero__read-arrow { transition: transform .2s; }

@media (max-width: 768px) {
    .ap-hero { grid-template-columns: 1fr; min-height: auto; }
    .ap-hero__img { aspect-ratio: 16/9; min-height: auto; }
    .ap-hero__img a { aspect-ratio: 16/9; }
    .ap-hero__body { padding: 24px 20px; }
    .ap-hero__body::before { width: 100%; height: 3px; top: 0; left: 0; }
    .ap-hero__title { font-size: 22px; }
}

/* ════════════════════════════════════════════
   6. LO ÚLTIMO
   ════════════════════════════════════════════ */

.ap-section-lo-ultimo {
    margin: 40px 0;
    padding-top: 20px;
    border-top: 1px solid #cfcfcf;
}

.ap-section-lo-ultimo .ap-section-block__head {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-bottom: 20px;
}

.ap-lo-ultimo__cat {
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--accent);
    margin-bottom: 4px;
}

.ap-lo-ultimo-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    align-items: start;
    border-top: 2px solid #111;
    padding-top: 20px;
}

.ap-lo-ultimo-featured {
    display: grid;
    grid-template-columns: 220px 1fr;
    gap: 20px;
    align-items: start;
    padding-right: 32px;
    border-right: .5px solid rgba(0,0,0,.1);
    min-width: 0;
}

.ap-lo-ultimo-featured__img {
    display: block;
    width: 220px;
    aspect-ratio: 3/4;
    overflow: hidden;
    flex-shrink: 0;
    background: #e8e8e4;
}

.ap-lo-ultimo-featured__img img,
.ap-lo-ultimo-featured__img .ap-img-cover,
.ap-lo-ultimo-row__thumb img,
.ap-lo-ultimo-row__thumb .ap-img-cover {
    width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease;
}

.ap-lo-ultimo-featured__img:hover img,
.ap-lo-ultimo-featured__img:hover .ap-img-cover { transform: scale(1.03); }
.ap-lo-ultimo-featured__no-img { width: 100%; height: 100%; min-height: 280px; background: #e8e8e4; }
.ap-lo-ultimo-featured__body { display: flex; flex-direction: column; gap: 8px; min-width: 0; }

.ap-lo-ultimo-featured__title {
    font-size: 22px;
    font-weight: 750;
    line-height: 1.16;
    letter-spacing: -.018em;
    margin: 0;
}

.ap-lo-ultimo-featured__title a { color: #111; text-decoration: none; }
.ap-lo-ultimo-featured__excerpt { font-size: 14px; line-height: 1.6; color: #444; margin: 0; }

.ap-lo-ultimo-list { padding-left: 32px; display: flex; flex-direction: column; gap: 0; }

.ap-lo-ultimo-row {
    display: grid;
    grid-template-columns: 1fr 110px;
    gap: 16px;
    align-items: start;
    padding: 20px 0;
    border-bottom: .5px solid rgba(0,0,0,.1);
}

.ap-lo-ultimo-row:first-child { padding-top: 0; }
.ap-lo-ultimo-row:last-child { border-bottom: none; padding-bottom: 0; }
.ap-lo-ultimo-row__body { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.ap-lo-ultimo-row__title { font-size: 17px; font-weight: 700; line-height: 1.22; letter-spacing: -.01em; margin: 0; }
.ap-lo-ultimo-row__title a { color: #111; text-decoration: none; }

.ap-lo-ultimo-row__thumb {
    display: block;
    width: 110px;
    aspect-ratio: 3/2;
    overflow: hidden;
    flex-shrink: 0;
    background: #e8e8e4;
}

.ap-lo-ultimo-row__thumb:hover img,
.ap-lo-ultimo-row__thumb:hover .ap-img-cover { transform: scale(1.05); }
.ap-lo-ultimo-row__no-img { width: 100%; height: 100%; background: #e8e8e4; }
.ap-section-lo-ultimo .ap-card-meta { font-size: 12px; color: #999; display: flex; gap: 5px; flex-wrap: wrap; }

@media (max-width: 900px) {
    .ap-lo-ultimo-layout { grid-template-columns: 1fr; }
    .ap-lo-ultimo-featured {
        padding-right: 0;
        border-right: none;
        border-bottom: .5px solid rgba(0,0,0,.1);
        padding-bottom: 24px;
        margin-bottom: 8px;
    }
    .ap-lo-ultimo-list { padding-left: 0; }
}

@media (max-width: 600px) {
    .ap-lo-ultimo-featured { grid-template-columns: 140px 1fr; gap: 14px; }
    .ap-lo-ultimo-featured__img { width: 140px; }
    .ap-lo-ultimo-featured__title { font-size: 18px; }
    .ap-lo-ultimo-row { grid-template-columns: 1fr 80px; gap: 12px; }
    .ap-lo-ultimo-row__thumb { width: 80px; }
    .ap-lo-ultimo-row__title { font-size: 15px; }
}

/* ════════════════════════════════════════════
   7. SECCIÓN POLÍTICA
   ════════════════════════════════════════════ */

.ap-section-politica {
    margin: 40px 0;
    padding-top: 20px;
    border-top: 1px solid #cfcfcf;
}

.ap-politica-layout {
    display: grid;
    grid-template-columns: 1fr 1.5fr 1fr;
    gap: 0;
    align-items: start;
}

.ap-politica-col--side { display: flex; flex-direction: column; gap: 0; }

.ap-politica-col--side:first-child .ap-politica-side-featured,
.ap-politica-col--side:first-child .ap-politica-side-minor {
    padding-right: 20px;
    border-right: .5px solid var(--border);
}

.ap-politica-col--side:last-child .ap-politica-side-featured,
.ap-politica-col--side:last-child .ap-politica-side-minor {
    padding-left: 20px;
    border-left: .5px solid var(--border);
}

.ap-politica-side-featured__media,
.ap-politica-main__media {
    display: block;
    overflow: hidden;
    border-radius: var(--radius-md);
    margin-bottom: 12px;
    background: #e8e8e4;
}

.ap-politica-side-featured__media { aspect-ratio: 3/2; }
.ap-politica-main__media { aspect-ratio: 16/10; margin-bottom: 14px; }

.ap-politica-side-featured__media img,
.ap-politica-side-featured__media .ap-img-cover,
.ap-politica-main__media img,
.ap-politica-main__media .ap-img-cover,
.ap-politica-side-minor__thumb img,
.ap-politica-side-minor__thumb .ap-img-cover {
    width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease;
}

.ap-politica-side-featured__media:hover img,
.ap-politica-side-featured__media:hover .ap-img-cover,
.ap-politica-main__media:hover img,
.ap-politica-main__media:hover .ap-img-cover { transform: scale(1.03); }

.ap-politica-side-featured__body {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: .5px solid var(--border);
}

.ap-politica-side-featured__title { font-size: 16px; font-weight: 650; line-height: 1.32; margin: 0; }
.ap-politica-side-featured__title a,
.ap-politica-side-minor__title a,
.ap-politica-main__title a { color: inherit; text-decoration: none; }

.ap-politica-side-minor {
    display: grid;
    grid-template-columns: 64px 1fr;
    gap: 10px;
    align-items: start;
}

.ap-politica-side-minor__thumb {
    display: block;
    width: 64px;
    height: 52px;
    border-radius: var(--radius-sm);
    overflow: hidden;
    flex-shrink: 0;
    background: #e8e8e4;
}

.ap-politica-side-minor__thumb:hover img,
.ap-politica-side-minor__thumb:hover .ap-img-cover { transform: scale(1.06); }
.ap-politica-side-minor__body { display: flex; flex-direction: column; gap: 4px; }
.ap-politica-side-minor__title { font-size: 13px; font-weight: 650; line-height: 1.35; margin: 0; }
.ap-politica-col--main { padding: 0 20px; }
.ap-politica-main__body { display: flex; flex-direction: column; gap: 7px; }
.ap-politica-main__title { font-size: 22px; font-weight: 700; line-height: 1.24; margin: 0; text-transform: none; }
.ap-politica-main__excerpt { font-size: 14px; line-height: 1.6; color: #555; margin: 0; }

@media (max-width: 960px) {
    .ap-politica-layout { grid-template-columns: 1fr 1fr; gap: 20px; }
    .ap-politica-col--main {
        grid-column: 1/-1;
        padding: 0 0 20px;
        border-bottom: .5px solid var(--border);
        order: -1;
    }
    .ap-politica-col--side:first-child .ap-politica-side-featured,
    .ap-politica-col--side:first-child .ap-politica-side-minor,
    .ap-politica-col--side:last-child .ap-politica-side-featured,
    .ap-politica-col--side:last-child .ap-politica-side-minor {
        padding-right: 0;
        padding-left: 0;
        border-right: none;
        border-left: none;
    }
}

@media (max-width: 600px) {
    .ap-politica-layout { grid-template-columns: 1fr; }
    .ap-politica-col--side:first-child { border-bottom: .5px solid var(--border); padding-bottom: 20px; }
}

/* ════════════════════════════════════════════
   8. SECCIÓN INTERNACIONAL
   ════════════════════════════════════════════ */

.ap-section-internacional {
    margin: 40px 0;
    padding-top: 20px;
    border-top: 1px solid #cfcfcf;
}

.ap-internacional-layout {
    display: grid;
    grid-template-columns: 1fr 220px;
    gap: 0;
    align-items: start;
}

.ap-internacional-layout > * { min-width: 0; }
.ap-internacional-main { min-width: 0; padding-right: 24px; border-right: .5px solid rgba(0,0,0,.1); }
.ap-internacional-side { padding-left: 24px; }

.ap-int-hero {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    align-items: start;
    padding-bottom: 20px;
    border-bottom: .5px solid rgba(0,0,0,.1);
    overflow: hidden;
}

.ap-int-hero__body { min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.ap-int-hero__title { font-size: 20px; font-weight: 700; line-height: 1.28; margin: 0; word-break: break-word; overflow-wrap: break-word; }
.ap-int-hero__title a { color: #111; text-decoration: none; }
.ap-int-hero__excerpt { font-size: 13px; line-height: 1.6; color: #555; margin: 0; }

.ap-int-hero__media {
    display: block;
    width: 100%;
    aspect-ratio: 4/3;
    overflow: hidden;
    border-radius: 5px;
    min-width: 0;
    background: #e8e8e4;
}

.ap-int-hero__media img,
.ap-int-hero__media .ap-img-cover,
.ap-int-mini-story__thumb img,
.ap-int-mini-story__thumb .ap-img-cover,
.ap-commentary-card__media img,
.ap-commentary-card__media .ap-img-cover {
    width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease;
}

.ap-int-hero__media:hover img,
.ap-int-hero__media:hover .ap-img-cover { transform: scale(1.03); }

.ap-int-mini-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0; }

.ap-int-mini-story {
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 10px;
    align-items: start;
    padding: 14px 0;
    border-bottom: .5px solid rgba(0,0,0,.08);
}

.ap-int-mini-story:nth-child(odd) { padding-right: 16px; border-right: .5px solid rgba(0,0,0,.08); }
.ap-int-mini-story:nth-child(even) { padding-left: 16px; }
.ap-int-mini-story:nth-child(3),
.ap-int-mini-story:nth-child(4) { border-bottom: none; padding-bottom: 0; }

.ap-int-mini-story__thumb {
    display: block;
    width: 56px;
    height: 44px;
    border-radius: 3px;
    overflow: hidden;
    flex-shrink: 0;
    background: #e8e8e4;
}

.ap-int-mini-story__thumb:hover img,
.ap-int-mini-story__thumb:hover .ap-img-cover { transform: scale(1.06); }
.ap-int-mini-story__body { display: flex; flex-direction: column; gap: 4px; }
.ap-int-mini-story__title { font-size: 13px; font-weight: 650; line-height: 1.3; margin: 0; }
.ap-int-mini-story__title a { color: #111; text-decoration: none; }

.ap-commentary-label {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: var(--link);
    margin-bottom: 14px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--link);
}

.ap-commentary-card { display: flex; flex-direction: column; gap: 0; }
.ap-commentary-card__media { display: block; aspect-ratio: 3/2; overflow: hidden; border-radius: 4px; margin-bottom: 12px; background: #e8e8e4; }
.ap-commentary-card__media:hover img,
.ap-commentary-card__media:hover .ap-img-cover { transform: scale(1.04); }
.ap-commentary-card__body { display: flex; flex-direction: column; gap: 7px; }
.ap-commentary-card__title { font-size: 14px; font-weight: 650; line-height: 1.3; margin: 0; font-family: var(--font-serif); }
.ap-commentary-card__title a { color: #111; text-decoration: none; }
.ap-commentary-card__author { font-size: 12px; color: var(--link); font-style: italic; }

.ap-commentary-empty {
    font-size: 13px;
    color: #999;
    line-height: 1.5;
    padding: 14px;
    background: #f7f7f5;
    border-radius: 4px;
    border: .5px dashed var(--border);
}

.ap-commentary-more { margin-top: 16px; padding-top: 12px; border-top: .5px solid rgba(0,0,0,.1); }
.ap-commentary-more a { font-size: 12px; color: var(--link); text-decoration: none; font-weight: 500; }
.ap-commentary-more a:hover { text-decoration: underline; }

@media (max-width: 900px) {
    .ap-internacional-layout { grid-template-columns: 1fr; }
    .ap-internacional-main {
        padding-right: 0;
        border-right: none;
        border-bottom: .5px solid rgba(0,0,0,.1);
        padding-bottom: 24px;
        margin-bottom: 24px;
    }
    .ap-internacional-side { padding-left: 0; }
}

@media (max-width: 768px) {
    .ap-int-hero { grid-template-columns: 1fr; gap: 14px; }
    .ap-int-hero__media { order: -1; aspect-ratio: 16/9; width: 100%; min-width: 0; }
    .ap-int-hero__title { font-size: 18px; }
    .ap-int-mini-grid { grid-template-columns: 1fr; }
    .ap-int-mini-story {
        padding: 12px 0;
        border-right: none !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        border-bottom: .5px solid rgba(0,0,0,.08);
    }
    .ap-int-mini-story:nth-child(3),
    .ap-int-mini-story:nth-child(4) { border-bottom: none; padding-bottom: 0; }
}

@media (max-width: 400px) {
    .ap-int-hero__title { font-size: 16px; }
    .ap-int-mini-story__title { font-size: 12px; }
}

/* ════════════════════════════════════════════
   9. SECCIÓN OPINIÓN
   ════════════════════════════════════════════ */

.ap-section-opinion {
    margin: 40px 0;
    padding-top: 20px;
    border-top: 1px solid #cfcfcf;
}

.ap-section-opinion .ap-section-block__head { margin-bottom: 24px; }
.ap-section-opinion .ap-section-block__title--serif { font-family: var(--font-serif); font-style: italic; }

.ap-opinion-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; align-items: start; }

.ap-opinion-hero {
    display: grid;
    grid-template-columns: 180px 1fr;
    gap: 20px;
    align-items: start;
    padding-bottom: 24px;
    border-bottom: .5px solid rgba(0,0,0,.1);
}

.ap-opinion-hero__media,
.ap-opinion-mini__avatar {
    display: block;
    overflow: hidden;
    flex-shrink: 0;
    background: #e8e8e4;
}

.ap-opinion-hero__media { width: 180px; aspect-ratio: 3/2; border-radius: 4px; }
.ap-opinion-mini__avatar { width: 64px; height: 64px; border-radius: 50%; }

.ap-opinion-hero__media img,
.ap-opinion-hero__media .ap-img-cover,
.ap-opinion-mini__avatar img,
.ap-opinion-mini__avatar .ap-img-cover {
    width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease;
}

.ap-opinion-hero__media:hover img,
.ap-opinion-hero__media:hover .ap-img-cover { transform: scale(1.04); }
.ap-opinion-hero__body { display: flex; flex-direction: column; gap: 10px; }
.ap-opinion-hero__title { font-size: 22px; font-weight: 750; line-height: 1.2; margin: 0; }
.ap-opinion-hero__title a { color: #111; text-decoration: none; }
.ap-opinion-hero__author { font-size: 13px; color: var(--link); font-style: italic; }

.ap-opinion-mini-list {
    display: flex;
    flex-direction: column;
    gap: 0;
    border-left: .5px solid rgba(0,0,0,.1);
    padding-left: 32px;
}

.ap-opinion-mini {
    display: grid;
    grid-template-columns: 64px 1fr;
    gap: 14px;
    align-items: center;
    padding: 16px 0;
    border-bottom: .5px solid rgba(0,0,0,.08);
}

.ap-opinion-mini:first-child { padding-top: 0; }
.ap-opinion-mini:last-child { border-bottom: none; padding-bottom: 0; }
.ap-opinion-mini__avatar:hover img,
.ap-opinion-mini__avatar:hover .ap-img-cover { transform: scale(1.06); }
.ap-opinion-mini__body { display: flex; flex-direction: column; gap: 5px; }
.ap-opinion-mini__title { font-size: 13px; font-weight: 750; line-height: 1.3; text-transform: uppercase; letter-spacing: .01em; margin: 0; }
.ap-opinion-mini__title a { color: #111; text-decoration: none; }
.ap-opinion-mini__author { font-size: 12px; color: var(--link); font-style: italic; }

@media (max-width: 900px) {
    .ap-opinion-layout { grid-template-columns: 1fr; gap: 0; }
    .ap-opinion-mini-list { border-left: none; padding-left: 0; border-top: .5px solid rgba(0,0,0,.1); padding-top: 4px; margin-top: 4px; }
}

@media (max-width: 600px) {
    .ap-opinion-hero { grid-template-columns: 120px 1fr; gap: 14px; }
    .ap-opinion-hero__media { width: 120px; }
    .ap-opinion-hero__title { font-size: 18px; }
    .ap-section-block__title--serif { font-size: 28px; }
}

/* ════════════════════════════════════════════
   10. ECONOMÍA / ENERGÍA / TURISMO — layouts editoriales compartidos
   ════════════════════════════════════════════ */

.ap-section-economia,
.ap-section-turismo,
.ap-section-policiales {
    margin: 40px 0;
    padding-top: 20px;
    border-top: 1px solid #cfcfcf;
}

.ap-econ-layout,
.ap-energia-layout,
.ap-turismo-layout {
    display: grid;
    grid-template-columns: 1fr 1.4fr 1fr;
    gap: 0;
    align-items: start;
}

.ap-turismo-layout { grid-template-columns: 1.4fr 1fr 1fr; }

.ap-econ-left,
.ap-energia-left,
.ap-turismo-hero {
    padding-right: 20px;
    border-right: .5px solid var(--border);
}

.ap-econ-main,
.ap-energia-main,
.ap-turismo-middle {
    padding: 0 20px;
    border-right: .5px solid var(--border);
}

.ap-econ-list,
.ap-energia-list,
.ap-turismo-choice { padding-left: 20px; }

.ap-econ-left__media,
.ap-econ-main__media,
.ap-energia-left__media,
.ap-energia-main__media,
.ap-turismo-hero__media,
.ap-turismo-choice__media {
    display: block;
    overflow: hidden;
    border-radius: var(--radius-md);
    margin-bottom: 12px;
    background: #e8e8e4;
}

.ap-econ-left__media,
.ap-energia-left__media,
.ap-turismo-choice__media { aspect-ratio: 3/2; }
.ap-econ-main__media,
.ap-energia-main__media,
.ap-turismo-hero__media { aspect-ratio: 16/10; margin-bottom: 14px; }

.ap-econ-left__media img,
.ap-econ-left__media .ap-img-cover,
.ap-econ-main__media img,
.ap-econ-main__media .ap-img-cover,
.ap-energia-left__media img,
.ap-energia-left__media .ap-img-cover,
.ap-energia-main__media img,
.ap-energia-main__media .ap-img-cover,
.ap-turismo-hero__media img,
.ap-turismo-hero__media .ap-img-cover,
.ap-turismo-choice__media img,
.ap-turismo-choice__media .ap-img-cover,
.ap-econ-list__thumb img,
.ap-econ-list__thumb .ap-img-cover,
.ap-energia-list__thumb img,
.ap-energia-list__thumb .ap-img-cover,
.ap-turismo-news__thumb img,
.ap-turismo-news__thumb .ap-img-cover {
    width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease;
}

.ap-econ-left__media:hover img,
.ap-econ-left__media:hover .ap-img-cover,
.ap-econ-main__media:hover img,
.ap-econ-main__media:hover .ap-img-cover,
.ap-energia-left__media:hover img,
.ap-energia-left__media:hover .ap-img-cover,
.ap-energia-main__media:hover img,
.ap-energia-main__media:hover .ap-img-cover,
.ap-turismo-hero__media:hover img,
.ap-turismo-hero__media:hover .ap-img-cover,
.ap-turismo-choice__media:hover img,
.ap-turismo-choice__media:hover .ap-img-cover { transform: scale(1.03); }

.ap-econ-left__body,
.ap-econ-main__body,
.ap-energia-left__body,
.ap-energia-main__body,
.ap-turismo-hero__body { display: flex; flex-direction: column; gap: 7px; }

.ap-econ-left__title,
.ap-energia-left__title { font-size: 16px; font-weight: 650; line-height: 1.35; margin: 0; }
.ap-econ-main__title,
.ap-energia-main__title,
.ap-turismo-hero__title { font-size: 22px; font-weight: 700; line-height: 1.24; margin: 0; }
.ap-econ-list__title,
.ap-energia-list__title,
.ap-turismo-choice__title { font-size: 13px; font-weight: 650; line-height: 1.35; margin: 0; }
.ap-turismo-news__title { font-size: 16px; font-weight: 700; line-height: 1.28; margin: 0 0 10px; }

.ap-econ-left__title a,
.ap-econ-main__title a,
.ap-econ-list__title a,
.ap-energia-left__title a,
.ap-energia-main__title a,
.ap-energia-list__title a,
.ap-turismo-hero__title a,
.ap-turismo-news__title a,
.ap-turismo-choice__title a { color: inherit; text-decoration: none; }

.ap-econ-left__excerpt,
.ap-energia-left__excerpt,
.ap-turismo-news__excerpt { font-size: 13px; line-height: 1.6; color: #666; margin: 0; }
.ap-econ-main__excerpt,
.ap-energia-main__excerpt,
.ap-turismo-hero__excerpt { font-size: 14px; line-height: 1.6; color: #555; margin: 0; }

.ap-econ-list__item,
.ap-energia-list__item,
.ap-turismo-news,
.ap-turismo-choice__item {
    padding: 12px 0;
    border-bottom: .5px solid var(--border);
}

.ap-turismo-news { padding-bottom: 16px; margin-bottom: 16px; }
.ap-turismo-news:last-child,
.ap-turismo-choice__item:last-child,
.ap-econ-list__item:last-child,
.ap-energia-list__item:last-child { border-bottom: none; padding-bottom: 0; margin-bottom: 0; }
.ap-econ-list__item:first-child,
.ap-energia-list__item:first-child { padding-top: 0; }

.ap-econ-list__item,
.ap-energia-list__item,
.ap-turismo-news__row {
    display: grid;
    grid-template-columns: 72px 1fr;
    gap: 10px;
    align-items: start;
}

.ap-energia-list__item { grid-template-columns: 68px 1fr; }

.ap-econ-list__thumb,
.ap-energia-list__thumb,
.ap-turismo-news__thumb {
    display: block;
    width: 72px;
    height: 54px;
    border-radius: var(--radius-sm);
    overflow: hidden;
    flex-shrink: 0;
    background: #e8e8e4;
}

.ap-energia-list__thumb { width: 68px; height: 52px; }
.ap-econ-list__thumb:hover img,
.ap-econ-list__thumb:hover .ap-img-cover,
.ap-energia-list__thumb:hover img,
.ap-energia-list__thumb:hover .ap-img-cover,
.ap-turismo-news__thumb:hover img,
.ap-turismo-news__thumb:hover .ap-img-cover { transform: scale(1.06); }
.ap-econ-list__body,
.ap-energia-list__body { display: flex; flex-direction: column; gap: 4px; }

/* Energía mantiene su bloque verde, pero con tipografía coherente */
.ap-section-energia {
    background-color: #eef4ee;
    border-radius: var(--radius-lg);
    margin: 40px 0;
    padding-top: 0;
    border-top: 0;
}

.ap-energia-inner { padding: 28px 32px 32px; }
.ap-section-energia .ap-section-block__head { border-bottom: 2px solid #4a7c4e; }
.ap-section-energia .ap-section-block__title a { color: #2d5a31; }
.ap-section-energia .ap-section-block__more { color: #6a9a6e; }
.ap-section-energia .ap-section-block__more:hover { color: #2d5a31; }
.ap-energia-left,
.ap-energia-main,
.ap-energia-list__item { border-color: #c2d9c4; }
.ap-energia-left__title a,
.ap-energia-main__title a,
.ap-energia-list__title a { color: #1e3d21; }
.ap-energia-left__excerpt,
.ap-energia-main__excerpt { color: #5a7a5d; }
.ap-section-energia .ap-card-meta { color: #6a9a6e; }

.ap-turismo-choice__label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--link);
    margin: 0 0 14px;
}

@media (max-width: 900px) {
    .ap-econ-layout,
    .ap-energia-layout,
    .ap-turismo-layout { grid-template-columns: 1fr 1fr; gap: 20px; }
    .ap-econ-left,
    .ap-energia-left,
    .ap-turismo-hero {
        padding-right: 0;
        border-right: none;
        border-bottom: .5px solid var(--border);
        padding-bottom: 20px;
        grid-column: 1/-1;
    }
    .ap-econ-main,
    .ap-energia-main,
    .ap-turismo-middle { padding: 0; border-right: none; }
    .ap-energia-list,
    .ap-turismo-choice { border-left: .5px solid var(--border); padding-left: 20px; }
}

@media (max-width: 600px) {
    .ap-energia-inner { padding: 20px 18px 24px; }
    .ap-econ-layout,
    .ap-energia-layout,
    .ap-turismo-layout { grid-template-columns: 1fr; gap: 0; }
    .ap-econ-main,
    .ap-energia-main,
    .ap-turismo-middle {
        border-bottom: .5px solid var(--border);
        padding-bottom: 20px;
        margin-bottom: 20px;
    }
    .ap-econ-list,
    .ap-energia-list,
    .ap-turismo-choice { padding-left: 0; border-left: none; }
    .ap-turismo-hero__title,
    .ap-econ-main__title,
    .ap-energia-main__title { font-size: 20px; }
}

/* ════════════════════════════════════════════
   11. POLICIALES
   ════════════════════════════════════════════ */

.ap-policiales-layout {
    display: grid;
    grid-template-columns: 1.25fr 1fr 1fr;
    gap: 0;
    align-items: start;
}

.ap-policiales-featured {
    padding-right: 24px;
    border-right: .5px solid var(--border);
}

.ap-policiales-main {
    padding: 0 24px;
    border-right: .5px solid var(--border);
}

.ap-policiales-list { padding-left: 24px; }

.ap-policiales-featured__media,
.ap-policiales-main__media,
.ap-policiales-list__media {
    display: block;
    overflow: hidden;
    border-radius: var(--radius-md);
    background: #e8e8e4;
    margin-bottom: 12px;
}

.ap-policiales-featured__media { aspect-ratio: 4/3; }
.ap-policiales-main__media,
.ap-policiales-list__media { aspect-ratio: 3/2; }

.ap-policiales-featured__media img,
.ap-policiales-featured__media .ap-img-cover,
.ap-policiales-main__media img,
.ap-policiales-main__media .ap-img-cover,
.ap-policiales-list__media img,
.ap-policiales-list__media .ap-img-cover {
    width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease;
}

.ap-policiales-featured__media:hover img,
.ap-policiales-featured__media:hover .ap-img-cover,
.ap-policiales-main__media:hover img,
.ap-policiales-main__media:hover .ap-img-cover,
.ap-policiales-list__media:hover img,
.ap-policiales-list__media:hover .ap-img-cover { transform: scale(1.03); }

.ap-policiales-featured__title,
.ap-policiales-main__title {
    font-size: 22px;
    font-weight: 750;
    line-height: 1.2;
    margin: 0 0 10px;
    text-transform: uppercase;
}

.ap-policiales-list__title {
    font-size: 16px;
    font-weight: 750;
    line-height: 1.25;
    margin: 0 0 8px;
    text-transform: uppercase;
}

.ap-policiales-featured__title a,
.ap-policiales-main__title a,
.ap-policiales-list__title a { color: #111; }

.ap-policiales-featured__excerpt,
.ap-policiales-main__excerpt,
.ap-policiales-list__excerpt {
    font-size: 14px;
    line-height: 1.55;
    color: #555;
    margin: 0 0 10px;
}

.ap-policiales-list__item {
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: .5px solid var(--border);
}

.ap-policiales-list__item:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }

@media (max-width: 900px) {
    .ap-policiales-layout { grid-template-columns: 1fr 1fr; gap: 20px; }
    .ap-policiales-featured { grid-column: 1/-1; padding-right: 0; border-right: none; border-bottom: .5px solid var(--border); padding-bottom: 20px; }
    .ap-policiales-main { padding: 0; border-right: none; }
    .ap-policiales-list { padding-left: 20px; border-left: .5px solid var(--border); }
}

@media (max-width: 600px) {
    .ap-policiales-layout { grid-template-columns: 1fr; }
    .ap-policiales-main { border-bottom: .5px solid var(--border); padding-bottom: 20px; margin-bottom: 20px; }
    .ap-policiales-list { padding-left: 0; border-left: none; }
}

/* ════════════════════════════════════════════
   12. SINGLE POST
   ════════════════════════════════════════════ */

.ap-single-wrap { padding: 36px 0 64px; }

.ap-single-layout {
    display: grid;
    grid-template-columns: minmax(0,1fr) 300px;
    gap: 48px;
    align-items: start;
}

.ap-single { min-width: 0; }
.ap-sidebar-column { position: sticky; top: 24px; }

.ap-single-cats { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 14px; }

.ap-single-title {
    font-size: clamp(30px, 4vw, 42px);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -.025em;
    margin: 0 0 16px;
    color: #111;
}

.ap-single-deck {
    font-size: 19px;
    line-height: 1.55;
    color: #444;
    font-weight: 400;
    margin: 0 0 18px;
    border-left: 3px solid var(--accent);
    padding-left: 16px;
}

.ap-single-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    font-size: 13px;
    color: #777;
    margin-bottom: 22px;
}

.ap-single-featured-media {
    display: block;
    margin: 0 0 28px;
    overflow: hidden;
    border-radius: var(--radius-md);
    background: #e8e8e4;
}

.ap-single-featured-media img,
.ap-single-featured-media .ap-img-cover { width: 100%; height: auto; display: block; }

.ap-single-content {
    font-size: 18px;
    line-height: 1.75;
    color: #222;
}

.ap-single-content p { margin: 0 0 22px; }
.ap-single-content h2 { font-size: 26px; font-weight: 750; line-height: 1.2; margin: 36px 0 14px; color: #111; }
.ap-single-content h3 { font-size: 21px; font-weight: 750; line-height: 1.25; margin: 28px 0 12px; color: #111; }
.ap-single-content ul,
.ap-single-content ol { padding-left: 24px; margin: 0 0 22px; }
.ap-single-content li { margin-bottom: 8px; }

.ap-single-content blockquote {
    margin: 28px 0;
    padding: 20px 24px;
    border-left: 3px solid var(--accent);
    background: var(--surface-soft);
    font-size: 19px;
    line-height: 1.6;
    color: #333;
    font-style: italic;
}

.ap-single-content blockquote p { margin: 0; }
.ap-single-content a { color: var(--link); text-decoration: underline; text-underline-offset: 2px; }
.ap-single-content a:hover { color: var(--accent); }
.ap-single-content img { max-width: 100%; height: auto; border-radius: 4px; margin: 8px 0; }

.ap-single-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 40px;
    padding: 20px 0;
    border-top: .5px solid var(--border);
    border-bottom: .5px solid var(--border);
}

.ap-single-footer__author { font-size: 13px; color: #888; font-style: italic; white-space: nowrap; }

.ap-block-label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: #111;
    border-bottom: 2px solid #111;
    padding-bottom: 8px;
    margin-bottom: 20px;
}

.ap-next-reading { margin-top: 48px; }

.ap-next-reading-card {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 0;
    border: .5px solid var(--border);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.ap-next-reading-card__media { display: block; overflow: hidden; background: #e8e8e4; }

.ap-next-reading-card__media img,
.ap-next-reading-card__media .ap-img-cover,
.ap-related-card__media img,
.ap-related-card__media .ap-img-cover {
    width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease;
}

.ap-next-reading-card__media:hover img,
.ap-next-reading-card__media:hover .ap-img-cover,
.ap-related-card__media:hover img,
.ap-related-card__media:hover .ap-img-cover { transform: scale(1.04); }

.ap-next-reading-card__no-img { width: 100%; height: 100%; min-height: 200px; background: #e8e8e4; }

.ap-next-reading-card__body {
    padding: 24px 28px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 10px;
    background: var(--surface-soft);
}

.ap-next-reading-card__title { font-size: 20px; font-weight: 750; line-height: 1.25; margin: 0; }
.ap-next-reading-card__title a { color: #111; text-decoration: none; }
.ap-next-reading-card__excerpt { font-size: 14px; line-height: 1.6; color: #666; margin: 0; }

.ap-next-reading-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: #111;
    text-decoration: none;
}

.ap-related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 20px;
}

.ap-related-card__media {
    display: block;
    aspect-ratio: 3/2;
    overflow: hidden;
    border-radius: var(--radius-md);
    margin-bottom: 10px;
    background: #e8e8e4;
}

.ap-related-card__body { display: flex; flex-direction: column; gap: 6px; }
.ap-related-card__title { font-size: 15px; font-weight: 650; line-height: 1.35; margin: 0; }
.ap-related-card__title a { color: #111; text-decoration: none; }

@media (max-width: 1024px) {
    .ap-single-layout { grid-template-columns: 1fr; }
    .ap-sidebar-column { position: static; }
}

@media (max-width: 768px) {
    .ap-single-title { font-size: 26px; }
    .ap-single-deck { font-size: 16px; }
    .ap-single-content { font-size: 17px; }
    .ap-next-reading-card { grid-template-columns: 1fr; }
    .ap-next-reading-card__media { aspect-ratio: 16/9; }
    .ap-next-reading-card__body { padding: 20px; }
    .ap-related-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 480px) {
    .ap-single-title { font-size: 22px; }
    .ap-related-grid { grid-template-columns: 1fr; }
    .ap-single-footer { flex-direction: column; align-items: flex-start; }
}

/* ════════════════════════════════════════════
   13. ARCHIVO / CATEGORÍA
   ════════════════════════════════════════════ */

.ap-main-archive { padding: 32px 0 60px; }

.ap-archive-header {
    margin-bottom: 32px;
    padding-bottom: 20px;
    border-bottom: .5px solid var(--border);
}

.ap-archive-header__kicker {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: #999;
    margin-bottom: 6px;
}

.ap-archive-header__title {
    font-size: 36px;
    font-family: var(--font-serif);
    font-weight: 700;
    line-height: 1.1;
    color: #111;
    margin: 0 0 8px;
    text-transform: none;
}

.ap-archive-header__desc {
    font-size: 15px;
    line-height: 1.6;
    color: #666;
    max-width: 640px;
    margin: 0;
}

.ap-archive-featured {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    align-items: center;
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: .5px solid var(--border);
}

.ap-archive-featured__media {
    display: block;
    aspect-ratio: 16/10;
    overflow: hidden;
    border-radius: 8px;
    background: #e8e8e4;
}

.ap-archive-featured__media img,
.ap-archive-featured__media .ap-img-cover,
.ap-archive-card__media img,
.ap-archive-card__media .ap-img-cover {
    width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease;
}

.ap-archive-featured__media:hover img,
.ap-archive-featured__media:hover .ap-img-cover,
.ap-archive-card__media:hover img,
.ap-archive-card__media:hover .ap-img-cover { transform: scale(1.03); }

.ap-archive-featured__body { display: flex; flex-direction: column; gap: 10px; }
.ap-archive-featured__title { font-size: 28px; font-weight: 750; line-height: 1.15; margin: 0; }
.ap-archive-featured__title a { color: #111; text-decoration: none; }
.ap-archive-featured__excerpt { font-size: 15px; line-height: 1.6; color: #555; margin: 0; }

.ap-archive-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 28px 24px;
}

.ap-archive-card { border-bottom: .5px solid var(--border); padding-bottom: 18px; }
.ap-archive-card__media { display: block; aspect-ratio: 3/2; overflow: hidden; border-radius: var(--radius-md); background: #e8e8e4; margin-bottom: 12px; }
.ap-archive-card__body { display: flex; flex-direction: column; gap: 7px; }
.ap-archive-card__title { font-size: 18px; font-weight: 700; line-height: 1.25; margin: 0; }
.ap-archive-card__title a { color: #111; text-decoration: none; }
.ap-archive-card__excerpt { font-size: 14px; line-height: 1.55; color: #555; margin: 0; }

@media (max-width: 900px) {
    .ap-archive-featured { grid-template-columns: 1fr; }
    .ap-archive-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 600px) {
    .ap-archive-header__title { font-size: 30px; }
    .ap-archive-featured__title { font-size: 22px; }
    .ap-archive-grid { grid-template-columns: 1fr; }
}

/* ════════════════════════════════════════════
   14. PROVINCIAS / CAMPO / TECNOLOGÍA — patrones de apoyo
   ════════════════════════════════════════════ */

.ap-section-provincias,
.ap-section-campo,
.ap-section-tecnologia {
    margin: 40px 0;
    padding-top: 20px;
    border-top: 1px solid #cfcfcf;
}

.ap-provincias-top,
.ap-campo-top,
.ap-tecnologia-top {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    align-items: start;
    padding-bottom: 22px;
    border-bottom: .5px solid var(--border);
}

.ap-provincias-top__card,
.ap-campo-top__card,
.ap-tecnologia-top__card { padding-right: 20px; border-right: .5px solid var(--border); }
.ap-provincias-top__card:last-child,
.ap-campo-top__card:last-child,
.ap-tecnologia-top__card:last-child { padding-right: 0; padding-left: 20px; border-right: none; }

.ap-provincias-top__media,
.ap-campo-top__media,
.ap-tecnologia-top__media {
    display: block;
    aspect-ratio: 16/9;
    overflow: hidden;
    border-radius: var(--radius-md);
    margin-bottom: 12px;
    background: #e8e8e4;
}

.ap-provincias-top__media img,
.ap-provincias-top__media .ap-img-cover,
.ap-campo-top__media img,
.ap-campo-top__media .ap-img-cover,
.ap-tecnologia-top__media img,
.ap-tecnologia-top__media .ap-img-cover,
.ap-provincias-bottom__media img,
.ap-provincias-bottom__media .ap-img-cover,
.ap-provincias-list-item__thumb img,
.ap-provincias-list-item__thumb .ap-img-cover {
    width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease;
}

.ap-provincias-top__media:hover img,
.ap-provincias-top__media:hover .ap-img-cover,
.ap-campo-top__media:hover img,
.ap-campo-top__media:hover .ap-img-cover,
.ap-tecnologia-top__media:hover img,
.ap-tecnologia-top__media:hover .ap-img-cover { transform: scale(1.03); }

.ap-provincias-top__title,
.ap-campo-top__title,
.ap-tecnologia-top__title {
    font-size: 20px;
    font-weight: 750;
    line-height: 1.22;
    margin: 0 0 8px;
}

.ap-provincias-top__title a,
.ap-campo-top__title a,
.ap-tecnologia-top__title a { color: #111; }

.ap-provincias-top__excerpt,
.ap-campo-top__excerpt,
.ap-tecnologia-top__excerpt { font-size: 14px; line-height: 1.55; color: #555; margin: 0; }

.ap-provincias-bottom {
    display: grid;
    grid-template-columns: 1fr 1.6fr;
    gap: 24px;
    padding-top: 22px;
}

.ap-provincias-bottom__featured {
    display: grid;
    grid-template-columns: 140px 1fr;
    gap: 14px;
    padding-right: 20px;
    border-right: .5px solid var(--border);
}

.ap-provincias-bottom__media {
    display: block;
    width: 140px;
    aspect-ratio: 4/3;
    overflow: hidden;
    border-radius: var(--radius-md);
    background: #e8e8e4;
}

.ap-provincias-bottom__title { font-size: 18px; font-weight: 750; line-height: 1.25; margin: 0 0 8px; }
.ap-provincias-bottom__title a { color: #111; }
.ap-provincias-bottom__excerpt { font-size: 14px; line-height: 1.55; color: #555; margin: 0; }

.ap-provincias-list { display: flex; flex-direction: column; gap: 0; }
.ap-provincias-list-item { display: grid; grid-template-columns: 72px 1fr; gap: 10px; padding: 12px 0; border-bottom: .5px solid var(--border); }
.ap-provincias-list-item:first-child { padding-top: 0; }
.ap-provincias-list-item:last-child { border-bottom: none; padding-bottom: 0; }
.ap-provincias-list-item__thumb { display: block; width: 72px; height: 54px; border-radius: var(--radius-sm); overflow: hidden; background: #e8e8e4; }
.ap-provincias-list-item__title { font-size: 13px; font-weight: 650; line-height: 1.35; margin: 0; }
.ap-provincias-list-item__title a { color: #111; }

@media (max-width: 900px) {
    .ap-provincias-top,
    .ap-campo-top,
    .ap-tecnologia-top { grid-template-columns: 1fr; gap: 20px; }
    .ap-provincias-top__card,
    .ap-campo-top__card,
    .ap-tecnologia-top__card { padding-right: 0; border-right: none; padding-left: 0 !important; border-bottom: .5px solid var(--border); padding-bottom: 20px; }
    .ap-provincias-top__card:last-child,
    .ap-campo-top__card:last-child,
    .ap-tecnologia-top__card:last-child { border-bottom: none; padding-bottom: 0; }
    .ap-provincias-bottom { grid-template-columns: 1fr; }
    .ap-provincias-bottom__featured { padding-right: 0; border-right: none; border-bottom: .5px solid var(--border); padding-bottom: 20px; }
}

@media (max-width: 600px) {
    .ap-provincias-bottom__featured { grid-template-columns: 100px 1fr; gap: 10px; }
    .ap-provincias-bottom__media { width: 100px; }
    .ap-provincias-top__title { font-size: 16px; }
}

/* ════════════════════════════════════════════
   15. NEGOCIOS — banner oscuro
   ════════════════════════════════════════════ */

.ap-section-negocios {
    margin: 40px 0;
    background: #0D2B6E;
    border-radius: 8px;
    overflow: hidden;
    padding: 0;
    border-top: none;
}

.ap-section-negocios .ap-section-block__head {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 20px 28px 0;
    margin-bottom: 16px;
    border-bottom: 0;
}

.ap-section-negocios .ap-section-block__title--label a,
.ap-section-negocios .ap-section-block__title a { color: #fff; text-decoration: none; }
.ap-section-negocios .ap-section-block__more { color: rgba(255,255,255,.55); font-size: 12px; }
.ap-section-negocios .ap-section-block__more:hover { color: #fff; }

.ap-negocios-top {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    padding: 0 28px 24px;
    border-bottom: .5px solid rgba(255,255,255,.12);
}

.ap-negocios-top__card { padding-right: 20px; border-right: .5px solid rgba(255,255,255,.12); }
.ap-negocios-top__card:last-child { padding-right: 0; padding-left: 20px; border-right: none; }

.ap-negocios-top__media,
.ap-negocios-bottom__media {
    display: block;
    aspect-ratio: 16/9;
    overflow: hidden;
    border-radius: var(--radius-md);
    background: #222;
    margin-bottom: 12px;
}

.ap-negocios-top__media img,
.ap-negocios-top__media .ap-img-cover,
.ap-negocios-bottom__media img,
.ap-negocios-bottom__media .ap-img-cover {
    width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease;
}

.ap-negocios-top__media:hover img,
.ap-negocios-top__media:hover .ap-img-cover,
.ap-negocios-bottom__media:hover img,
.ap-negocios-bottom__media:hover .ap-img-cover { transform: scale(1.03); }

.ap-negocios-top__title,
.ap-negocios-bottom__title { font-size: 20px; font-weight: 750; line-height: 1.22; margin: 0 0 8px; color: #fff; }
.ap-negocios-top__title a,
.ap-negocios-bottom__title a { color: #fff; }
.ap-negocios-top__title a:hover,
.ap-negocios-bottom__title a:hover { color: #ddd; }
.ap-negocios-top__excerpt,
.ap-negocios-bottom__excerpt { font-size: 14px; line-height: 1.55; color: rgba(255,255,255,.72); margin: 0; }
.ap-section-negocios .ap-card-meta { color: rgba(255,255,255,.55); }

.ap-negocios-bottom {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 20px;
    padding: 24px 28px 28px;
}

@media (max-width: 800px) {
    .ap-negocios-top,
    .ap-negocios-bottom { grid-template-columns: 1fr; }
    .ap-negocios-top__card { padding-right: 0; padding-left: 0 !important; border-right: none; border-bottom: .5px solid rgba(255,255,255,.12); padding-bottom: 20px; margin-bottom: 20px; }
    .ap-negocios-top__card:last-child { border-bottom: none; padding-bottom: 0; margin-bottom: 0; }
}

/* ════════════════════════════════════════════
   16. SIDEBAR / TAGS / NOT FOUND
   ════════════════════════════════════════════ */

.ap-sidebar-widget {
    margin-bottom: 28px;
    padding-bottom: 22px;
    border-bottom: 1px solid #e5e7eb;
}

.ap-sidebar-widget__title,
.ap-sidebar-tags__title {
    font-size: 14px;
    font-weight: 800;
    color: #111;
    margin: 0 0 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e5e7eb;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.ap-sidebar-tags__list { display: flex; flex-wrap: wrap; gap: 8px; }

.ap-sidebar-tags__tag {
    display: inline-block;
    background: #f3f4f6;
    color: #333;
    font-size: 12px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 20px;
    text-decoration: none;
    border: 1px solid #e5e7eb;
    transition: all .15s;
    white-space: nowrap;
}

.ap-sidebar-tags__tag:hover { background: #111; color: #fff; border-color: #111; }
.ap-nf-card-wrap { position: relative; display: block; }

/* ════════════════════════════════════════════
   17. UTILIDADES RESPONSIVE FINALES
   ════════════════════════════════════════════ */

@media (max-width: 768px) {
    .ap-section-block__title { font-size: 30px; }
    .ap-section-block { margin: 32px 0; padding-top: 18px; }
}

@media (max-width: 480px) {
    .ap-container { width: min(100% - 24px, var(--container)); }
    .ap-section-block__title { font-size: 27px; }
    .ap-card-categories a { font-size: 9px; }
}
/* =========================================================
   FIX FINAL - RESTAURAR HOME / SECCIONES ROTAS
   PEGAR AL FINAL DEL CSS
   ========================================================= */

body {
    margin: 0;
    padding-top: 0 !important;
    background: #fff;
    color: #111;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.5;
}

.ap-container {
    width: min(100% - 32px, 1280px);
    margin: 0 auto;
}

/* Imágenes */
.ap-img-cover,
img.ap-img-cover,
.ap-hero-story__media img,
.ap-politica-main__media img,
.ap-politica-side-featured__media img,
.ap-econ-main__media img,
.ap-econ-left__media img,
.ap-turismo-hero__media img,
.ap-turismo-news__thumb img,
.ap-turismo-choice__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: none !important;
    opacity: 1 !important;
    transform: none;
}

/* Títulos de sección */
.ap-section-block__head {
    display: flex;
    align-items: baseline;
    gap: 12px;
    border-bottom: 2px solid #111;
    padding-bottom: 6px;
    margin-bottom: 20px;
}

.ap-section-block__title {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 38px;
    font-weight: 700;
    line-height: 1;
    color: #111;
}

.ap-section-block__title a {
    color: inherit;
    text-decoration: none;
}

.ap-section-block__more {
    margin-left: auto;
    font-size: 13px;
    color: #888;
    text-decoration: none;
}

/* Categorías */
.ap-card-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 8px;
}

.ap-card-categories a {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: #1a6bbf;
    background: #e8f1fb;
    padding: 3px 7px;
    border-radius: 3px;
    text-decoration: none;
}

/* Meta */
.ap-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 12px;
    color: #666;
    margin-bottom: 8px;
}

/* ================= POLÍTICA ================= */

.ap-section-politica {
    margin: 40px 0;
    padding-top: 20px;
    border-top: 1px solid #cfcfcf;
}

.ap-politica-layout {
    display: grid;
    grid-template-columns: 1fr 1.5fr 1fr;
    gap: 0;
    align-items: start;
}

.ap-politica-col--main {
    padding: 0 20px;
}

.ap-politica-col--side:first-child {
    padding-right: 20px;
    border-right: .5px solid rgba(0,0,0,.12);
}

.ap-politica-col--side:last-child {
    padding-left: 20px;
    border-left: .5px solid rgba(0,0,0,.12);
}

.ap-politica-main__media,
.ap-politica-side-featured__media {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: 6px;
    margin-bottom: 14px;
    background: #e8e8e4;
}

.ap-politica-side-featured__media {
    aspect-ratio: 3 / 2;
}

.ap-politica-main__title {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.25;
    margin: 0 0 8px;
}

.ap-politica-side-featured__title {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
    margin: 0 0 8px;
}

.ap-politica-main__excerpt,
.ap-politica-side-featured__excerpt {
    font-size: 14px;
    line-height: 1.55;
    color: #555;
    margin: 0;
}

.ap-politica-side-minor {
    display: grid;
    grid-template-columns: 64px 1fr;
    gap: 10px;
    align-items: start;
    padding-top: 14px;
    margin-top: 14px;
    border-top: .5px solid rgba(0,0,0,.12);
}

.ap-politica-side-minor__thumb {
    display: block;
    width: 64px;
    height: 52px;
    overflow: hidden;
    border-radius: 4px;
}

.ap-politica-side-minor__title {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
    margin: 0;
}

/* ================= TURISMO / NATURALEZA ================= */

.ap-section-turismo {
    margin: 40px 0;
    padding-top: 20px;
    border-top: 1px solid #cfcfcf;
}

.ap-turismo-layout {
    display: grid;
    grid-template-columns: 1.35fr 1fr 1fr;
    gap: 0;
    align-items: start;
}

.ap-turismo-hero {
    padding-right: 20px;
    border-right: .5px solid rgba(0,0,0,.12);
}

.ap-turismo-hero__media {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: 6px;
    margin-bottom: 14px;
    background: #e8e8e4;
}

.ap-turismo-hero__title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.25;
    margin: 0 0 8px;
    letter-spacing: 0;
}

.ap-turismo-hero__excerpt {
    font-size: 14px;
    line-height: 1.55;
    color: #555;
    margin: 0;
}

.ap-turismo-middle {
    padding: 0 20px;
    border-right: .5px solid rgba(0,0,0,.12);
}

.ap-turismo-news {
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: .5px solid rgba(0,0,0,.12);
}

.ap-turismo-news:last-child {
    border-bottom: none;
}

.ap-turismo-news__title {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.28;
    margin: 0 0 10px;
}

.ap-turismo-news__row {
    display: grid;
    grid-template-columns: 72px 1fr;
    gap: 10px;
    align-items: start;
}

.ap-turismo-news__thumb {
    display: block;
    width: 72px;
    height: 54px;
    overflow: hidden;
    border-radius: 4px;
    background: #e8e8e4;
}

.ap-turismo-news__excerpt {
    font-size: 13px;
    line-height: 1.45;
    color: #555;
    margin: 0;
}

.ap-turismo-choice {
    padding-left: 20px;
}

.ap-turismo-choice__label {
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: #1a6bbf;
    margin: 0 0 14px;
}

.ap-turismo-choice__item {
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: .5px solid rgba(0,0,0,.12);
}

.ap-turismo-choice__media {
    display: block;
    aspect-ratio: 3 / 2;
    overflow: hidden;
    border-radius: 6px;
    margin-bottom: 10px;
    background: #e8e8e4;
}

.ap-turismo-choice__title {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
}

/* ================= ECONOMÍA ================= */

.ap-section-economia {
    margin: 40px 0;
    padding-top: 20px;
    border-top: 1px solid #cfcfcf;
}

.ap-econ-layout {
    display: grid;
    grid-template-columns: 1fr 1.4fr 1fr;
    gap: 0;
    align-items: start;
}

.ap-econ-left {
    padding-right: 20px;
    border-right: .5px solid rgba(0,0,0,.12);
}

.ap-econ-main {
    padding: 0 20px;
    border-right: .5px solid rgba(0,0,0,.12);
}

.ap-econ-list {
    padding-left: 20px;
}

.ap-econ-left__media,
.ap-econ-main__media {
    display: block;
    aspect-ratio: 3 / 2;
    overflow: hidden;
    border-radius: 6px;
    margin-bottom: 12px;
    background: #e8e8e4;
}

.ap-econ-main__media {
    aspect-ratio: 16 / 10;
}

.ap-econ-main__title {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.3;
    margin: 0;
}

.ap-econ-left__title {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
    margin: 0;
}

.ap-econ-list__item {
    display: grid;
    grid-template-columns: 72px 1fr;
    gap: 10px;
    align-items: start;
    padding: 12px 0;
    border-bottom: .5px solid rgba(0,0,0,.12);
}

.ap-econ-list__thumb {
    display: block;
    width: 72px;
    height: 54px;
    overflow: hidden;
    border-radius: 4px;
}

.ap-econ-list__title {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
    margin: 0;
}

/* ================= POLICIALES / GENERALES ================= */

.ap-section-policiales,
.ap-section-provincias,
.ap-section-campo,
.ap-section-tecnologia {
    margin: 40px 0;
    padding-top: 20px;
    border-top: 1px solid #cfcfcf;
}

.ap-policiales-layout,
.ap-provincias-layout,
.ap-campo-layout,
.ap-tecnologia-layout {
    display: grid;
    grid-template-columns: 1.2fr 1fr 1fr;
    gap: 24px;
    align-items: start;
}

/* Links */
.ap-turismo-layout a,
.ap-politica-layout a,
.ap-econ-layout a,
.ap-policiales-layout a {
    color: inherit;
    text-decoration: none;
}

.ap-turismo-layout a:hover,
.ap-politica-layout a:hover,
.ap-econ-layout a:hover,
.ap-policiales-layout a:hover {
    color: #1565C0;
}

/* Responsive */
@media (max-width: 960px) {
    .ap-politica-layout,
    .ap-turismo-layout,
    .ap-econ-layout,
    .ap-policiales-layout,
    .ap-provincias-layout,
    .ap-campo-layout,
    .ap-tecnologia-layout {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }

    .ap-politica-col--main,
    .ap-turismo-hero,
    .ap-econ-main {
        grid-column: 1 / -1;
        padding: 0 0 20px;
        border-right: none;
        border-bottom: .5px solid rgba(0,0,0,.12);
    }

    .ap-turismo-middle,
    .ap-econ-left,
    .ap-econ-list {
        padding: 0;
        border-right: none;
    }

    .ap-turismo-choice {
        padding-left: 20px;
        border-left: .5px solid rgba(0,0,0,.12);
    }
}

@media (max-width: 600px) {
    .ap-section-block__title {
        font-size: 30px;
    }

    .ap-politica-layout,
    .ap-turismo-layout,
    .ap-econ-layout,
    .ap-policiales-layout,
    .ap-provincias-layout,
    .ap-campo-layout,
    .ap-tecnologia-layout {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .ap-turismo-choice,
    .ap-econ-list {
        padding-left: 0;
        border-left: none;
    }

    .ap-turismo-middle,
    .ap-econ-main,
    .ap-politica-col--main {
        margin-bottom: 20px;
    }
}
/* =========================================================
   FIX SECCIÓN BREAKING (HOME)
   ========================================================= */

.ap-section-breaking {
    margin: 24px 0 32px;
}

.ap-breaking-row {
    display: grid;
    grid-template-columns: 1.6fr 1fr 1fr;
    gap: 20px;
    align-items: start;
}

/* ITEMS */

.ap-breaking-item {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* PRIMER ITEM (DESTACADO) */

.ap-breaking-item--with-img {
    padding-right: 16px;
    border-right: .5px solid rgba(0,0,0,.12);
}

.ap-breaking-item__thumb {
    display: block;
    width: 100%;
    height: 180px;
    overflow: hidden;
    border-radius: 6px;
    background: #e8e8e4;
    margin-bottom: 8px;
}

.ap-breaking-item__thumb img,
.ap-breaking-item__thumb .ap-img-cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* TEXTO */

.ap-breaking-item__body {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.ap-breaking-item__title {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.25;
    margin: 0;
}

.ap-breaking-item__title a {
    color: #111;
    text-decoration: none;
}

.ap-breaking-item__title a:hover {
    color: #1565C0;
}

.ap-breaking-item__excerpt {
    font-size: 13px;
    color: #555;
    line-height: 1.4;
    margin: 0;
}

/* ITEMS 2 Y 3 */

.ap-breaking-item:not(.ap-breaking-item--with-img) {
    padding-left: 16px;
    border-left: .5px solid rgba(0,0,0,.12);
}

/* CATEGORÍAS */

.ap-breaking-item .ap-card-categories {
    margin-bottom: 4px;
}

/* RESPONSIVE */

@media (max-width: 900px) {
    .ap-breaking-row {
        grid-template-columns: 1fr 1fr;
        gap: 16px;
    }

    .ap-breaking-item--with-img {
        grid-column: 1 / -1;
        padding-right: 0;
        border-right: none;
        border-bottom: .5px solid rgba(0,0,0,.12);
        padding-bottom: 16px;
    }

    .ap-breaking-item:not(.ap-breaking-item--with-img) {
        padding-left: 0;
        border-left: none;
    }
}

@media (max-width: 600px) {
    .ap-breaking-row {
        grid-template-columns: 1fr;
    }

    .ap-breaking-item__thumb {
        height: 200px;
    }
}/* =========================================================
   BREAKING / LATEST NEWS - FORMATO HORIZONTAL
   ========================================================= */

.ap-section-breaking {
    margin: 26px 0 34px;
    padding: 0;
    background: #fff;
}

.ap-section-breaking .ap-container {
    width: min(100% - 32px, 1280px);
    margin: 0 auto;
}

.ap-breaking-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
}

.ap-breaking-head h2 {
    margin: 0;
    color: var(--accent);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 26px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: -0.02em;
}

.ap-breaking-head span {
    color: var(--accent);
    font-size: 24px;
    line-height: 1;
    font-weight: 900;
}

.ap-breaking-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.ap-breaking-card {
    min-width: 0;
    background: #fff;
    border: 1px solid #cfcfcf;
    border-radius: 10px;
    overflow: hidden;
}

.ap-breaking-card__link {
    display: block;
    min-height: 96px;
    padding: 18px 18px;
    color: #000;
    text-decoration: none;
}

.ap-breaking-card__link:hover {
    background: #fafafa;
}

.ap-breaking-card__title {
    display: inline;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 17px;
    line-height: 1.25;
    font-weight: 800;
    color: #000;
}

.ap-breaking-card__tag {
    display: inline;
    margin-right: 10px;
    color: var(--accent);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 17px;
    line-height: 1.25;
    font-weight: 900;
}

.ap-breaking-item,
.ap-breaking-item--with-img,
.ap-breaking-item__thumb,
.ap-breaking-item__body,
.ap-breaking-item__excerpt,
.ap-breaking-item__title,
.ap-breaking-item .ap-card-categories {
    all: unset;
}

@media (max-width: 900px) {
    .ap-breaking-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .ap-section-breaking {
        margin: 20px 0 28px;
    }

    .ap-breaking-head h2 {
        font-size: 24px;
    }

    .ap-breaking-row {
        display: flex;
        gap: 12px;
        overflow-x: auto;
        padding-bottom: 4px;
        scroll-snap-type: x mandatory;
    }

    .ap-breaking-card {
        min-width: 260px;
        scroll-snap-align: start;
    }

    .ap-breaking-card__link {
        min-height: 92px;
    }

    .ap-breaking-card__title,
    .ap-breaking-card__tag {
        font-size: 16px;
    }
}/* =========================================================
   BREAKING / AHORA - ESTRUCTURA EDITORIAL
   ========================================================= */

.ap-section-breaking {
    margin: 28px 0 36px;
    padding: 0;
}

.ap-breaking-row {
    width: min(100% - 32px, 1280px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.25fr 1fr 1fr;
    gap: 22px;
    align-items: stretch;
}

.ap-breaking-item {
    min-width: 0;
    background: #fff;
    border-left: 1px solid #ddd;
    padding-left: 22px;
}

.ap-breaking-item:first-child {
    border-left: none;
    padding-left: 0;
}

.ap-breaking-item__thumb {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: 6px;
    background: #eee;
    margin-bottom: 10px;
}

.ap-breaking-item__thumb img,
.ap-breaking-item__thumb .ap-img-cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: none !important;
    opacity: 1 !important;
}

.ap-breaking-item__body {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.ap-breaking-item .ap-card-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin: 0 0 4px;
}

.ap-breaking-item .ap-card-categories a {
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #1a6bbf;
    background: #eaf3ff;
    border-radius: 3px;
    padding: 4px 7px;
}

.ap-breaking-item__title {
    margin: 0;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 800;
    letter-spacing: -.01em;
}

.ap-breaking-item__title a {
    color: #111;
    text-decoration: none;
}

.ap-breaking-item__title a:hover {
    color: #1565C0;
}

.ap-breaking-item__excerpt {
    margin: 0;
    font-size: 13px;
    line-height: 1.45;
    color: #555;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Secundarias: sin imagen, más compactas */
.ap-breaking-item:not(.ap-breaking-item--with-img) {
    padding-top: 4px;
}

.ap-breaking-item:not(.ap-breaking-item--with-img) .ap-breaking-item__title {
    font-size: 19px;
    line-height: 1.22;
}

.ap-breaking-item:not(.ap-breaking-item--with-img) .ap-breaking-item__excerpt {
    font-size: 14px;
    -webkit-line-clamp: 3;
}

/* Si querés que las secundarias sean todavía más limpias */
.ap-breaking-item:not(.ap-breaking-item--with-img) .ap-card-categories {
    margin-bottom: 8px;
}

@media (max-width: 900px) {
    .ap-breaking-row {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .ap-breaking-item {
        border-left: none;
        padding-left: 0;
        padding-bottom: 16px;
        border-bottom: 1px solid #ddd;
    }

    .ap-breaking-item:last-child {
        border-bottom: none;
    }

    .ap-breaking-item__thumb {
        max-height: 280px;
    }
}

@media (max-width: 600px) {
    .ap-section-breaking {
        margin: 22px 0 30px;
    }

    .ap-breaking-row {
        width: min(100% - 24px, 1280px);
    }

    .ap-breaking-item__title,
    .ap-breaking-item:not(.ap-breaking-item--with-img) .ap-breaking-item__title {
        font-size: 17px;
    }
}/* =========================================================
   FIX SINGLE: SIDEBAR / BANNERS / COMENTARIOS
   PEGAR AL FINAL DEL CSS
   ========================================================= */

/* Layout single */
.ap-single-wrap {
    padding: 36px 0 64px;
}

.ap-single-layout {
    width: min(100% - 32px, 1280px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 46px;
    align-items: start;
}

.ap-single {
    min-width: 0;
}

.ap-sidebar-column,
.ap-single-sidebar,
aside {
    min-width: 0;
}

/* Sidebar visual */
.ap-sidebar-column {
    position: sticky;
    top: 120px;
}

.ap-sidebar-widget,
.widget {
    margin-bottom: 30px;
    padding-bottom: 24px;
    border-bottom: 1px solid #e1e1e1;
}

.ap-sidebar-widget-title,
.widget-title,
.ap-sidebar-title {
    margin: 0 0 14px;
    padding-bottom: 8px;
    border-bottom: 2px solid #111;
    font-size: 12px;
    line-height: 1;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #111;
}

/* Últimas */
.ap-sidebar-column ul,
.ap-single-sidebar ul,
.widget ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ap-sidebar-column li,
.ap-single-sidebar li,
.widget li {
    list-style: none !important;
    margin: 0 !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #eee;
    font-size: 14px;
    line-height: 1.35;
}

.ap-sidebar-column li:last-child,
.ap-single-sidebar li:last-child,
.widget li:last-child {
    border-bottom: none;
}

.ap-sidebar-column li a,
.ap-single-sidebar li a,
.widget li a {
    color: #111;
    text-decoration: none;
    font-weight: 700;
}

.ap-sidebar-column li a:hover,
.ap-single-sidebar li a:hover,
.widget li a:hover {
    color: #1565C0;
}

/* En foco / tags */
.ap-sidebar-column .tag-cloud-link,
.ap-sidebar-column .wp-tag-cloud a,
.ap-single-sidebar .tag-cloud-link,
.widget .tag-cloud-link {
    display: inline-flex !important;
    align-items: center;
    margin: 0 6px 8px 0 !important;
    padding: 7px 11px !important;
    border: 1px solid #ddd;
    border-radius: 999px;
    background: #f5f5f5;
    color: #333 !important;
    font-size: 12px !important;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
}

.ap-sidebar-column .tag-cloud-link:hover,
.widget .tag-cloud-link:hover {
    background: #111;
    border-color: #111;
    color: #fff !important;
}

/* Publicidad / banners */
.ap-ad,
.ap-publicidad,
.ap-banner,
.ap-sidebar-ad,
.widget_media_image,
.wp-block-image {
    margin: 22px 0;
    text-align: center;
}

.ap-ad-label,
.ap-publicidad-label,
.publicidad-label {
    display: block;
    margin: 0 0 8px;
    color: #aaa;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .12em;
    text-align: center;
}

.ap-sidebar-column img,
.ap-single-sidebar img,
.widget img,
.ap-ad img,
.ap-publicidad img,
.ap-banner img {
    max-width: 100%;
    height: auto;
    border-radius: 6px;
    object-fit: contain;
}

/* Banner horizontal dentro de nota */
.ap-single-content .ap-ad,
.ap-single-content .ap-publicidad,
.ap-single-content .ap-banner,
.entry-content .ap-ad,
.entry-content .ap-publicidad,
.entry-content .ap-banner {
    margin: 34px auto;
    max-width: 760px;
}

.ap-single-content .ap-ad img,
.ap-single-content .ap-publicidad img,
.ap-single-content .ap-banner img,
.entry-content .ap-ad img,
.entry-content .ap-publicidad img,
.entry-content .ap-banner img {
    width: 100%;
    height: auto;
    max-height: 110px;
    object-fit: contain;
}

/* Comentarios */
.ap-comments,
.comments-area,
#comments {
    margin-top: 44px;
    padding-top: 22px;
    border-top: 2px solid #111;
    font-family: Arial, Helvetica, sans-serif;
}

.ap-comments-title,
.comments-title,
.comment-reply-title,
#reply-title {
    margin: 0 0 18px;
    font-size: 13px;
    line-height: 1;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #111;
}

.logged-in-as {
    margin: 0 0 18px;
    color: #555;
    font-size: 14px;
}

.logged-in-as a {
    color: #111;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Form comentarios */
.comment-form {
    display: grid;
    gap: 12px;
    max-width: 720px;
}

.comment-form label {
    display: block;
    margin-bottom: 6px;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #111;
}

.comment-form textarea,
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"] {
    width: 100%;
    border: 1px solid #cfcfcf;
    background: #fff;
    border-radius: 6px;
    padding: 12px 14px;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    color: #111;
    outline: none;
}

.comment-form textarea {
    min-height: 140px;
    resize: vertical;
}

.comment-form textarea:focus,
.comment-form input:focus {
    border-color: #111;
    box-shadow: 0 0 0 3px rgba(0,0,0,.06);
}

.comment-form .submit,
.comment-form input[type="submit"],
#submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    border: none;
    border-radius: 999px;
    background: #0D2B6E;
    color: #fff;
    padding: 11px 18px;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
    cursor: pointer;
}

.comment-form .submit:hover,
.comment-form input[type="submit"]:hover,
#submit:hover {
    background: #1565C0;
}

/* Lista comentarios */
.comment-list {
    list-style: none !important;
    margin: 28px 0 0 !important;
    padding: 0 !important;
}

.comment,
.pingback,
.trackback {
    list-style: none !important;
    padding: 18px 0 !important;
    border-bottom: 1px solid #ddd;
}

.comment-body {
    display: grid;
    gap: 8px;
}

.comment-author {
    font-size: 14px;
    font-weight: 800;
    color: #111;
}

.comment-meta,
.comment-metadata {
    font-size: 12px;
    color: #888;
}

.comment-content {
    font-size: 15px;
    line-height: 1.6;
    color: #333;
}

.reply a {
    display: inline-flex;
    margin-top: 8px;
    color: #1565C0;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    text-decoration: none;
}

/* Categorías nativas WP en sidebar */
.ap-sidebar-column .cat-item,
.widget_categories li {
    display: flex;
    justify-content: space-between;
    gap: 8px;
}

.widget_categories li a {
    font-weight: 600;
}

/* Responsive */
@media (max-width: 980px) {
    .ap-single-layout {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .ap-sidebar-column {
        position: static;
        top: auto;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 24px;
    }

    .ap-sidebar-widget,
    .widget {
        margin-bottom: 0;
    }
}

@media (max-width: 640px) {
    .ap-single-layout {
        width: min(100% - 24px, 1280px);
    }

    .ap-sidebar-column {
        display: block;
    }

    .ap-sidebar-widget,
    .widget {
        margin-bottom: 26px;
    }

    .comment-form textarea {
        min-height: 120px;
    }
}/* =========================================================
   FIX DEFINITIVO CAJA DE COMENTARIOS
   ========================================================= */

#comments,
.comments-area {
    margin-top: 50px;
}

/* CONTENEDOR */
.comment-respond {
    background: #f6f6f6;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 24px;
    max-width: 720px;
}

/* TÍTULO */
.comment-reply-title {
    margin: 0 0 16px;
    font-size: 14px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #111;
}

/* USER INFO */
.logged-in-as {
    font-size: 13px;
    color: #555;
    margin-bottom: 14px;
}

/* TEXTAREA */
.comment-form textarea {
    width: 100%;
    min-height: 140px;
    padding: 14px;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-size: 14px;
    font-family: Arial, sans-serif;
    resize: vertical;
    background: #fff;
}

/* LABEL */
.comment-form label {
    font-size: 12px;
    font-weight: 700;
    color: #111;
    display: block;
    margin: 10px 0 6px;
}

/* BOTÓN */
.comment-form input[type="submit"] {
    margin-top: 10px;
    background: #0D2B6E;
    color: #fff;
    border: none;
    padding: 10px 16px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    cursor: pointer;
}

.comment-form input[type="submit"]:hover {
    background: #1565C0;
}/* =========================================================
   FOOTER EDITORIAL
   ========================================================= */

.ap-footer {
    margin-top: 60px;
    background: #050505;
    color: #fff;
    border-top: 4px solid #1565C0;
}

.ap-footer-main {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 70px;
    padding: 64px 0 48px;
}

.ap-footer-title {
    margin: 0 0 14px;
    font-size: 28px;
    font-weight: 900;
    letter-spacing: -.03em;
    text-transform: uppercase;
}

.ap-footer-text {
    margin: 0;
    max-width: 320px;
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255,255,255,.68);
}

.ap-footer-subtitle {
    margin: 0 0 18px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: #fff;
}

.ap-footer-menu,
.ap-footer-contact {
    list-style: none;
    margin: 0;
    padding: 0;
}

.ap-footer-menu {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 22px;
}

.ap-footer-menu li,
.ap-footer-contact li {
    margin: 0;
    color: rgba(255,255,255,.68);
    font-size: 14px;
    line-height: 1.4;
}

.ap-footer-menu a {
    color: rgba(255,255,255,.68);
    text-decoration: none;
}

.ap-footer-menu a:hover {
    color: #fff;
}

.ap-footer-contact {
    display: grid;
    gap: 12px;
}

.ap-footer-contact span {
    margin-right: 8px;
    opacity: .75;
}

.ap-footer-fomeb {
    border-top: 1px solid rgba(255,255,255,.08);
    border-bottom: 1px solid rgba(255,255,255,.08);
    padding: 24px 0;
    text-align: center;
}

.ap-footer-fomeb span {
    display: block;
    margin-bottom: 10px;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .12em;
    color: rgba(255,255,255,.38);
}

.ap-footer-fomeb img {
    width: 145px;
    height: auto;
    margin: 0 auto;
    opacity: .85;
}

.ap-footer-bottom {
    padding: 22px 0;
}

.ap-footer-bottom-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
}

.ap-footer-bottom p {
    margin: 0;
    font-size: 12px;
    color: rgba(255,255,255,.42);
}

.ap-footer-legal {
    display: flex;
    gap: 22px;
}

.ap-footer-legal a {
    color: rgba(255,255,255,.42);
    font-size: 12px;
    text-decoration: none;
}

.ap-footer-legal a:hover {
    color: #fff;
}

@media (max-width: 900px) {
    .ap-footer-main {
        grid-template-columns: 1fr;
        gap: 34px;
        padding: 48px 0 38px;
    }

    .ap-footer-menu {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 600px) {
    .ap-footer {
        margin-top: 42px;
    }

    .ap-footer-title {
        font-size: 24px;
    }

    .ap-footer-menu {
        grid-template-columns: 1fr;
    }

    .ap-footer-bottom-flex {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ═══════════════════════════════════════════════════════
   OVERRIDE FINAL — PALETA AZUL (fuerza sobre todo)
   ═══════════════════════════════════════════════════════ */

/* ── BRANDBAR (barra del logo) ── */
#ap-hdr,
.ap-header,
.h3-brandbar,
.ap-brandbar,
#ap-hdr .h3-brandbar,
.ap-header .ap-brandbar {
    background: #0D2B6E !important;
    border-bottom: 2px solid rgba(255,255,255,.12) !important;
}

/* Línea superior: azul claro en lugar de rojo */
#ap-hdr::before,
.ap-header::before {
    background: #42A5F5 !important;
}

/* ── Logo: forzar blanco ── */
#ap-hdr .h3-logo img,
.ap-header .ap-logo img,
.h3-logo img,
.ap-logo img {
    filter: brightness(0) invert(1) !important;
}
#ap-hdr .h3-logo-text,
.ap-header .ap-logo-text,
.h3-logo-text,
.ap-logo-text {
    color: #ffffff !important;
}

/* ── Íconos en brandbar: blancos ── */
#ap-hdr .h3-icon-btn,
.ap-header .ap-header-tools a,
.ap-header .ap-header-tools button,
.ap-header-tools svg,
.h3-icon-btn {
    color: #ffffff !important;
}
#ap-hdr .h3-icon-btn:hover {
    background: rgba(255,255,255,.15) !important;
}

/* Barras del hamburger: blancas */
.h3-burger span,
.ap-hamburger span {
    background: #ffffff !important;
}

/* ── NAVBAR (categorías): celeste ── */
.h3-navbar,
.ap-nav,
#ap-hdr .h3-navbar,
.ap-header .ap-nav,
.ap-header.is-stuck .ap-nav {
    background: #E3F2FD !important;
    border-bottom: 1px solid #90CAF9 !important;
    border-top: none !important;
}

/* Links de nav sobre celeste: azul oscuro */
.h3-menu > li > a,
.ap-menu > li > a {
    color: #0D2B6E !important;
}
.h3-menu > li > a:hover,
.h3-menu > li.current-menu-item > a,
.ap-menu > li > a:hover,
.ap-menu > li.current-menu-item > a {
    color: #1565C0 !important;
    border-bottom-color: #1565C0 !important;
}

/* ── TICKER: celeste ── */
.h3-ticker,
.ap-news-strip {
    background: #E3F2FD !important;
    border-top: 1px solid #90CAF9 !important;
    border-bottom: 1px solid #90CAF9 !important;
}
.ap-news-strip__label {
    background: #0D2B6E !important;
    color: #ffffff !important;
}
.h3-ticker-label {
    color: #1565C0 !important;
}
.h3-ticker-dot {
    background: #1565C0 !important;
}
.h3-ticker-wrap::before {
    background: linear-gradient(to right, #E3F2FD, transparent) !important;
}
.h3-ticker-wrap::after {
    background: linear-gradient(to left, #E3F2FD, transparent) !important;
}

/* ── TOPBAR (si existe): azul oscuro ── */
.ap-topbar {
    background: #0D2B6E !important;
}

/* ── HERO principal (caja oscura) ── */
.ap-hero__body {
    background: #0D2B6E !important;
}
/* ═══════════════════════════════════════════
   HERO V2 — layout diario (foto + último momento)
   ═══════════════════════════════════════════ */

.slh-hero2 {
    display: grid;
    grid-template-columns: 58% 1fr;
    gap: 28px;
    padding: 20px 0 28px;
    margin-bottom: 8px;
    border-bottom: 1px solid #e0e0e0;
    align-items: start;
    font-family: Arial, Helvetica, sans-serif;
}

/* ── Columna principal ── */
.slh-hero2__main {
    min-width: 0;
}

.slh-hero2__img-wrap {
    display: block;
    overflow: hidden;
    border-radius: 4px;
    margin-bottom: 12px;
}

.slh-hero2__img {
    width: 100%;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    object-position: center top;
    display: block;
    transition: transform .4s ease;
}

.slh-hero2__img-wrap:hover .slh-hero2__img {
    transform: scale(1.03);
}

.slh-hero2__img-ph {
    width: 100%;
    aspect-ratio: 3 / 2;
    background: #c8d8e8;
    border-radius: 4px;
    display: block;
    margin-bottom: 12px;
}

.slh-hero2__section {
    font-size: 11px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: .07em;
    margin-bottom: 6px;
}

.slh-hero2__title {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 1.45rem;
    font-weight: 700;
    line-height: 1.22;
    color: #111;
    margin: 0 0 9px;
}

.slh-hero2__title a {
    color: inherit;
    text-decoration: none;
}

.slh-hero2__title a:hover { color: #1565C0; }

.slh-hero2__title b {
    color: #1565C0;
    font-weight: 700;
}

.slh-hero2__excerpt {
    font-size: .875rem;
    line-height: 1.6;
    color: #555;
    margin: 0 0 12px;
}

.slh-hero2__meta {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: .72rem;
    color: #aaa;
}

.slh-hero2__meta-sep {
    width: 3px;
    height: 3px;
    background: #ccc;
    border-radius: 50%;
    flex-shrink: 0;
}

/* ── Panel último momento ── */
.slh-hero2__panel {
    display: flex;
    flex-direction: column;
    border-left: 1px solid #e8e8e8;
    padding-left: 24px;
    min-width: 0;
}

.slh-hero2__panel-head {
    font-family: Georgia, serif;
    font-size: 1rem;
    font-weight: 700;
    color: #111;
    padding-bottom: 8px;
    border-bottom: 2px solid #1565C0;
    margin-bottom: 0;
    flex-shrink: 0;
}

.slh-hero2__feed {
    overflow-y: auto;
    max-height: 380px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #ddd transparent;
}

.slh-hero2__feed::-webkit-scrollbar {
    width: 3px;
}

.slh-hero2__feed::-webkit-scrollbar-thumb {
    background: #ddd;
    border-radius: 2px;
}

.slh-hero2__item {
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 10px 0;
    border-bottom: 1px solid #f0f0f0;
}

.slh-hero2__item:last-child {
    border-bottom: none;
}

.slh-hero2__item-time {
    font-size: 10px;
    color: #bbb;
    letter-spacing: .02em;
}

.slh-hero2__item-text {
    font-size: .875rem;
    line-height: 1.42;
    color: #222;
}

.slh-hero2__item-text a {
    color: inherit;
    text-decoration: none;
}

.slh-hero2__item-text a:hover {
    color: #1565C0;
}

.slh-hero2__item-label {
    margin-right: 2px;
}

/* ── Responsive ── */
@media (max-width: 860px) {
    .slh-hero2 {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .slh-hero2__main {
        border-bottom: 1px solid #e8e8e8;
        padding-bottom: 22px;
        margin-bottom: 22px;
    }

    .slh-hero2__panel {
        border-left: none;
        padding-left: 0;
    }

    .slh-hero2__feed {
        max-height: 260px;
    }
}

@media (max-width: 480px) {
    .slh-hero2__title {
        font-size: 1.25rem;
    }

    .slh-hero2__excerpt {
        display: none;
    }
}