/* =========================
   EZ TEMPLATE - STYLE.CSS
   Estética oscura, elegante y móvil
========================= */

/* Variables */
:root {
    --bg: #0d0d0d;
    --bg-soft: #151515;
    --bg-card: #1c1c1c;
    --text: #ededed;
    --muted: #b8b8b8;
    --accent: #c8a96a;
    --border: #2a2a2a;
    --max-width: 1180px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--bg);
    color: var(--text);
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.7;
}

.container {
    width: min(92%, var(--max-width));
    margin: 0 auto;
}

a {
    color: var(--accent);
    text-decoration: none;
    transition: all 0.25s ease;
}

a:hover {
    color: var(--text);
}

/* HEADER */

.site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: rgba(13, 13, 13, 0.94);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--border);
}

.header-inner {
    min-height: 76px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}

.site-logo img {
    display: block;
    height: 52px;
    width: auto;
    max-width: 140px;
    object-fit: contain;
}

/* MENU */

.site-nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 1.2rem;
}

.site-nav li {
    position: relative;
}

.site-nav a {
    color: var(--muted);
    font-size: 0.95rem;
    letter-spacing: 0.04em;
}

.site-nav a:hover,
.site-nav .active > a,
.site-nav .current > a {
    color: var(--accent);
}

/* Submenú */

.site-nav ul ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 190px;
    background: var(--bg-soft);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 0.8rem;
    z-index: 1001;
}

.site-nav li:hover > ul {
    display: block;
}

.site-nav ul ul li {
    margin: 0.35rem 0;
}

/* HERO */

.hero {
    min-height: 78vh;
    display: flex;
    align-items: center;
    text-align: center;
    background:
        radial-gradient(circle at top, rgba(200, 169, 106, 0.16), transparent 36%),
        linear-gradient(180deg, #111 0%, var(--bg) 100%);
    border-bottom: 1px solid var(--border);
}

.hero-inner {
    padding: 5rem 0;
}

.hero-logo {
    display: block;
    width: min(260px, 56vw);
    height: auto;
    max-height: 260px;
    object-fit: contain;
    margin: 0 auto 1.8rem;
}

.hero-subtitle {
    max-width: 780px;
    margin: 0 auto 2rem;
    color: var(--muted);
    font-size: clamp(1.15rem, 2.4vw, 1.65rem);
}

/* =========================
   HOME - HERO MÁS ESTABLE
========================= */

.hero {
    min-height: clamp(560px, 68vh, 760px) !important;
    display: flex !important;
    align-items: center !important;
    text-align: center !important;
}

.hero-inner {
    padding: clamp(4rem, 7vh, 6rem) 0 !important;
}

.hero-logo {
    width: clamp(180px, 18vw, 260px) !important;
    max-height: 260px !important;
}

.hero-subtitle {
    font-size: clamp(1.1rem, 1.7vw, 1.55rem) !important;
}

.hero-buttons,
.hero-social,
.footer-social {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.9rem;
}

.hero-buttons a {
    display: inline-block;
    border: 1px solid var(--accent);
    color: var(--accent);
    padding: 0.85rem 1.35rem;
    border-radius: 999px;
    font-size: 0.95rem;
    letter-spacing: 0.04em;
}

.hero-buttons a:hover {
    background: var(--accent);
    color: var(--bg);
}

.hero-social {
    margin-top: 1.7rem;
}

.hero-social a,
.footer-social a {
    color: var(--muted);
    font-size: 0.92rem;
}

.hero-social a:hover,
.footer-social a:hover {
    color: var(--accent);
}

.hero-module {
    max-width: 860px;
    margin: 0 auto;
}

/* MAIN */

.section,
.main,
.site-footer {
    padding: 4.5rem 0;
}

.main-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 3rem;
}

.content-area {
    min-width: 0;
}

.sidebar {
    background: var(--bg-soft);
    border: 1px solid var(--border);
    border-radius: 22px;
    padding: 1.5rem;
}

/* CONTENIDO JOOMLA */

.content-area h1,
.content-area h2,
.content-area h3,
.content-area h4 {
    line-height: 1.2;
    color: var(--text);
}

.content-area h1 {
    font-size: clamp(2.2rem, 6vw, 4.5rem);
    margin-bottom: 1.4rem;
}

.content-area h2 {
    font-size: clamp(1.8rem, 4vw, 3rem);
    margin-top: 2.8rem;
}

.content-area h3 {
    font-size: 1.5rem;
    color: var(--accent);
}

.content-area p,
.content-area li {
    color: var(--muted);
    font-size: 1.08rem;
}

.content-area img {
    max-width: 100%;
    height: auto;
    border-radius: 18px;
}

.item-page {
    max-width: 860px;
    margin: 0 auto;
}

.item-page p {
    font-size: 1.12rem;
}

/* LISTADOS */

.blog-items,
.items-leading,
.items-row {
    display: grid;
    gap: 2rem;
}

.blog-item {
    border: 1px solid var(--border);
    background: var(--bg-soft);
    border-radius: 24px;
    padding: 1.8rem;
}

.blog-item h2,
.blog-item h2 a {
    color: var(--text);
}

.blog-item h2 a:hover {
    color: var(--accent);
}

.article-info,
.article-info-term,
.published,
.createdby,
.category-name {
    color: #8e8e8e;
    font-size: 0.88rem;
}

/* BOTONES */

.btn,
.readmore a,
button,
input[type="submit"] {
    display: inline-block;
    border: 1px solid var(--accent);
    background: transparent;
    color: var(--accent);
    padding: 0.75rem 1.15rem;
    border-radius: 999px;
    cursor: pointer;
    transition: all 0.25s ease;
}

.btn:hover,
.readmore a:hover,
button:hover,
input[type="submit"]:hover {
    background: var(--accent);
    color: var(--bg);
}

/* FORMULARIOS */

input,
textarea,
select {
    width: 100%;
    background: var(--bg-soft);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 0.9rem 1rem;
}

label {
    color: var(--muted);
}

/* FOOTER */

.site-footer {
    border-top: 1px solid var(--border);
    text-align: center;
    background: #090909;
}

.footer-brand img {
    display: block;
    height: 64px;
    width: auto;
    max-width: 160px;
    object-fit: contain;
    margin: 0 auto 1rem;
}

.footer-brand p {
    color: var(--muted);
    margin: 0 0 1.2rem;
}

.footer-modules {
    margin-top: 2rem;
    color: var(--muted);
}

/* EFECTOS JS */

.site-header.is-scrolled {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
}

.fade-in {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.fade-in.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* RESPONSIVE */

@media (min-width: 960px) {
    .main-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .sidebar {
        max-width: 320px;
    }
}

@media (max-width: 768px) {
    .header-inner {
        flex-direction: column;
        padding: 1rem 0;
        gap: 1rem;
    }

    .site-logo img {
        height: 46px;
    }

    .site-nav ul,
    .site-nav .mod-menu,
    .site-nav .navbar-nav {
        justify-content: center;
        gap: 0.8rem 1rem;
    }

    .site-nav ul ul {
        position: static;
        display: block;
        border: none;
        background: transparent;
        padding: 0.4rem 0 0.4rem 1rem;
    }

    .hero {
        min-height: auto !important;
        padding: 3.5rem 0 !important;
    }

    .hero-inner {
        padding: 3rem 0 !important;
    }

    .hero-logo {
        width: min(210px, 58vw) !important;
    }

    .section,
    .main,
    .site-footer {
        padding: 3rem 0;
    }

    .blog-item {
        padding: 1.3rem;
    }
}

@media (max-width: 480px) {
    .hero-buttons a {
        width: 100%;
        max-width: 270px;
    }

    .item-page p,
    .content-area p {
        font-size: 1.02rem;
    }
}

/* CORRECCIÓN LOGO HEADER */

.site-header .site-logo img {
    display: block !important;
    height: 52px !important;
    width: auto !important;
    max-width: 140px !important;
    object-fit: contain;
}

/* CORRECCIÓN MENÚ JOOMLA */

.site-nav ul,
.site-nav .mod-menu,
.site-nav .navbar-nav {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 1.2rem;
}

.site-nav li,
.site-nav .nav-item {
    display: inline-flex !important;
    position: relative;
}

.site-nav a,
.site-nav .nav-link {
    color: var(--muted);
    font-size: 0.95rem;
    letter-spacing: 0.04em;
    padding: 0 !important;
}

.site-nav a:hover,
.site-nav .active > a,
.site-nav .current > a,
.site-nav .active > .nav-link {
    color: var(--accent);
}

.home-intro {
    max-width: 860px;
    margin: 0 auto;
    text-align: center;
}

.eyebrow {
    color: var(--accent) !important;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 0.82rem !important;
}

.home-intro h2,
.home-social h2 {
    font-size: clamp(2rem, 5vw, 4rem);
    line-height: 1.15;
    margin: 0 0 1.2rem;
}

.home-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.home-card {
    background: var(--bg-soft);
    border: 1px solid var(--border);
    border-radius: 28px;
    padding: 2rem;
    min-height: 280px;
}

.home-card h2 {
    margin-top: 0;
    color: var(--text);
}

.home-card p {
    color: var(--muted);
}

.home-social {
    text-align: center;
    max-width: 780px;
    margin: 4rem auto 0;
}

.social-buttons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.9rem;
    margin-top: 1.5rem;
}

.social-buttons a {
    border: 1px solid var(--accent);
    border-radius: 999px;
    padding: 0.8rem 1.2rem;
}

@media (max-width: 900px) {
    .home-cards {
        grid-template-columns: 1fr;
    }
}

/* =========================
   HOME - CORRECCIONES
========================= */

.home-intro,
.home-social {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.home-intro .eyebrow,
.eyebrow {
    color: var(--accent) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.18em !important;
    font-size: 0.82rem !important;
    font-weight: 600 !important;
}

.home-cards {
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 2rem !important;
    align-items: stretch !important;
}

.home-card {
    text-align: left;
    background: var(--bg-soft) !important;
    border: 1px solid var(--border) !important;
    border-radius: 28px !important;
    padding: 2rem !important;
    min-height: 280px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.home-card h2 {
    color: var(--text) !important;
    margin-top: 0 !important;
}

.home-card p {
    color: var(--muted) !important;
}

@media (max-width: 900px) {
    .home-cards {
        grid-template-columns: 1fr !important;
        max-width: 620px !important;
    }

    .home-card {
        text-align: center;
    }
}

/* =========================
   ARTÍCULO - ESTILO EZ
========================= */

.item-page {
    max-width: 760px;
    margin: 0 auto;
}

.item-page h1 {
    text-align: left;
    margin-bottom: 1.5rem;
}

.item-page .article-info {
    text-align: left;
    margin-bottom: 2rem;
    font-size: 0.85rem;
}

.item-page p {
    margin-bottom: 1.6rem;
    line-height: 1.9;
    font-size: 1.12rem;
}

.item-page p:first-of-type {
    font-size: 1.25rem;
    color: var(--text);
}

.item-page blockquote {
    border-left: 3px solid var(--accent);
    padding-left: 1.2rem;
    margin: 2rem 0;
    color: var(--muted);
    font-style: italic;
}

/* POESÍA (muy importante para ti) */

.item-page p:has(br) {
    line-height: 2.1;
}

/* Separación elegante */

.item-page hr {
    border: none;
    border-top: 1px solid var(--border);
    margin: 3rem 0;
}


/* =========================
   POESÍA - ESTILO EZ
========================= */

.poema-ez {
    max-width: 760px;
    margin: 0 auto;
    text-align: center;
}

.poema-ez h1 {
    font-size: clamp(2.4rem, 6vw, 4.8rem);
    margin-bottom: 2.5rem;
    letter-spacing: 0.04em;
}

.poema-ez p {
    color: var(--text);
    font-size: clamp(1.15rem, 2vw, 1.32rem);
    line-height: 2.25;
    margin-bottom: 2rem;
}

.poema-ez .estrofa {
    margin: 2.4rem 0;
}

.poema-ez .firma {
    margin-top: 4rem;
    color: var(--accent);
    font-style: italic;
}


/* =========================
   POESÍA - FORZADO JOOMLA
========================= */

/* =========================
   POESÍA - SOLO CUERPO DEL POEMA
========================= */

.com-content-article__body .poema-ez {
    max-width: 760px;
    margin: 2rem auto 0;
    text-align: center;
}

.com-content-article__body .poema-ez p {
    color: var(--text) !important;
    font-size: clamp(1.15rem, 2vw, 1.32rem) !important;
    line-height: 2.25 !important;
    margin-bottom: 2rem !important;
    text-align: center !important;
}

.com-content-article__body .poema-ez .estrofa {
    margin: 2.4rem 0 !important;
}

.com-content-article__body .poema-ez .firma {
    margin-top: 4rem !important;
    color: var(--accent) !important;
    font-style: italic;
}

.poema-ez {
    max-width: 760px;
    margin: 0 auto;
    text-align: center;
}

.poema-ez p {
    color: var(--text) !important;
    font-size: clamp(1.15rem, 2vw, 1.32rem) !important;
    line-height: 2.25 !important;
    margin-bottom: 2rem !important;
    text-align: center !important;
}

.poema-ez .estrofa {
    margin: 2.4rem 0 !important;
}

.poema-ez .firma {
    margin-top: 4rem !important;
    color: var(--accent) !important;
    font-style: italic;
}

body .item-page .poema-ez {
    max-width: 760px !important;
    margin: 0 auto !important;
    text-align: center !important;
}

body .item-page .poema-ez p {
    color: #ededed !important;
    font-size: 1.3rem !important;
    line-height: 2.4 !important;
    text-align: center !important;
    margin-bottom: 2rem !important;
}

body .item-page .poema-ez .estrofa {
    margin: 2.8rem 0 !important;
}

body .item-page .poema-ez .firma {
    color: #c8a96a !important;
    font-style: italic !important;
    margin-top: 4rem !important;
}


/* =========================
   POESÍA - DETALLE FINAL
========================= */

.com-content-article__body .poema-ez {
    background: radial-gradient(circle at center, rgba(200,169,106,0.08), transparent 65%);
    border-radius: 24px;
    padding: 2rem 1rem;
}

.com-content-article__body .poema-ez .estrofa {
    margin: 2.8rem 0 !important;
    position: relative;
}

.com-content-article__body .poema-ez .estrofa::after {
    content: "";
    display: block;
    width: 42px;
    height: 1px;
    background: var(--accent);
    margin: 2rem auto 0;
    opacity: 0.45;
}

.com-content-article__body .poema-ez .estrofa:last-of-type::after {
    display: none;
}

.com-content-article__body .poema-ez .estrofa:first-of-type p::first-letter {
    font-size: 2.4rem;
    color: var(--accent);
    line-height: 1;
}

/* =========================
   LISTADO POEMAS - ESTILO EZ
========================= */

.blog-item {
    position: relative;
    overflow: hidden;
}

.blog-item h2 {
    font-size: 1.6rem;
    margin-bottom: 0.6rem;
}

.blog-item h2 a {
    transition: all 0.3s ease;
}

.blog-item h2 a:hover {
    color: var(--accent);
}

/* Extracto más elegante */
.blog-item p {
    line-height: 1.8;
}

/* Hover sutil */
.blog-item:hover {
    transform: translateY(-4px);
    border-color: var(--accent);
}

/* =========================
   BLOG DE CATEGORÍA - TARJETAS
========================= */

.com-content-category-blog .blog-items,
.com-content-category-blog .items-leading,
.com-content-category-blog .items-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
}

.com-content-category-blog .blog-item,
.com-content-category-blog .item,
.com-content-category-blog article {
    background: var(--bg-soft);
    border: 1px solid var(--border);
    border-radius: 24px;
    padding: 1.8rem;
    transition: all 0.3s ease;
}

.com-content-category-blog .blog-item:hover,
.com-content-category-blog .item:hover,
.com-content-category-blog article:hover {
    transform: translateY(-4px);
    border-color: var(--accent);
}

.com-content-category-blog h2 a,
.com-content-category-blog h3 a {
    color: var(--text);
}

.com-content-category-blog h2 a:hover,
.com-content-category-blog h3 a:hover {
    color: var(--accent);
}

@media (max-width: 800px) {
    .com-content-category-blog .blog-items,
    .com-content-category-blog .items-leading,
    .com-content-category-blog .items-row {
        grid-template-columns: 1fr;
    }
}

/* =========================
   PAGINACIÓN
========================= */

.pagination,
ul.pagination {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 0.5rem !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 3rem auto 0 !important;
}

.pagination li {
    display: inline-flex !important;
}

.pagination a,
.pagination span {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 0.8rem;
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--muted);
}

.pagination a:hover,
.pagination .active span {
    border-color: var(--accent);
    color: var(--accent);
}

.pagination .page-link {
    color: var(--muted) !important;
    font-size: 0.95rem !important;
}

.pagination .icon-angle-double-left::before,
.pagination .icon-first::before {
    content: "Inicio";
}

.pagination .icon-angle-left::before,
.pagination .icon-previous::before {
    content: "Anterior";
}

.pagination .icon-angle-right::before,
.pagination .icon-next::before {
    content: "Siguiente";
}

.pagination .icon-angle-double-right::before,
.pagination .icon-last::before {
    content: "Final";
}

/* =========================
   PAGINACIÓN - TEXTO EN BOTONES
========================= */

.pagination .page-link .icon-angle-double-left,
.pagination .page-link .icon-angle-left,
.pagination .page-link .icon-angle-right,
.pagination .page-link .icon-angle-double-right {
    font-size: 0 !important;
}

.pagination .page-link .icon-angle-double-left::after {
    content: "Inicio";
    font-size: 0.9rem;
}

.pagination .page-link .icon-angle-left::after {
    content: "Anterior";
    font-size: 0.9rem;
}

.pagination .page-link .icon-angle-right::after {
    content: "Siguiente";
    font-size: 0.9rem;
}

.pagination .page-link .icon-angle-double-right::after {
    content: "Final";
    font-size: 0.9rem;
}

.pagination .disabled .page-link {
    opacity: 0.45;
}

/* =========================
   PAGINACIÓN - PÁGINA ACTIVA
========================= */

.pagination .page-item.active .page-link,
.pagination .page-item.active a.page-link,
.pagination .page-item.active span.page-link {
    background: var(--accent) !important;
    border-color: var(--accent) !important;
    color: var(--bg) !important;
    font-weight: 700 !important;
}

.pagination .page-item:not(.active) .page-link {
    background: transparent !important;
}

.pagination .page-item:not(.active) .page-link:hover {
    border-color: var(--accent) !important;
    color: var(--accent) !important;
}

/* =========================
   POEMA DESTACADO
========================= */

.com-content-category-blog .items-leading {
    margin-bottom: 3rem;
}

.com-content-category-blog .items-leading article {
    background: linear-gradient(
        180deg,
        rgba(200,169,106,0.08),
        rgba(0,0,0,0)
    );
    border: 1px solid var(--accent);
    border-radius: 28px;
    padding: 2.5rem;
}

.com-content-category-blog .items-leading h2 {
    font-size: clamp(1.8rem, 4vw, 2.6rem);
    text-align: center;
}

.com-content-category-blog .items-leading p {
    text-align: center;
    max-width: 720px;
    margin: 0 auto;
}

.com-content-category-blog .items-leading article:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.35);
}

/* =========================
   POEMA DESTACADO - FORZADO
========================= */

.com-content-category-blog .items-leading {
    display: block !important;
    width: 100% !important;
    margin-bottom: 3rem !important;
}

.com-content-category-blog .items-leading .blog-item,
.com-content-category-blog .items-leading .item,
.com-content-category-blog .items-leading article {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    margin: 0 auto 3rem !important;
    padding: 3rem 2rem !important;
    border: 1px solid var(--accent) !important;
    border-radius: 30px !important;
    background:
        radial-gradient(circle at top, rgba(200,169,106,0.14), transparent 55%),
        var(--bg-soft) !important;
    text-align: center !important;
}

.com-content-category-blog .items-leading h2,
.com-content-category-blog .items-leading h2 a,
.com-content-category-blog .items-leading h3,
.com-content-category-blog .items-leading h3 a {
    text-align: center !important;
    font-size: clamp(2rem, 5vw, 3.2rem) !important;
    line-height: 1.15 !important;
    color: var(--text) !important;
}

.com-content-category-blog .items-leading p {
    max-width: 760px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    font-size: 1.15rem !important;
}

.com-content-category-blog .items-leading .readmore {
    text-align: center !important;
    margin-top: 1.5rem !important;
}

.com-content-category-blog .items-leading + .blog-items,
.com-content-category-blog .items-leading + .items-row {
    margin-top: 3rem !important;
}

.com-content-category-blog .items-leading .article-info,
.com-content-category-blog .items-leading .article-info *,
.com-content-category-blog .items-leading .category-name,
.com-content-category-blog .items-leading .create {
    text-align: left !important;
    justify-content: flex-start !important;
}

.com-content-category-blog .items-leading p {
    margin-bottom: 1.6rem !important;
}

.com-content-category-blog .items-leading p + p {
    margin-top: 1.6rem !important;
}


/* =========================
   LEAD - READ MORE A LA IZQUIERDA
========================= */

.com-content-category-blog .items-leading .readmore {
    text-align: left !important;
}

.com-content-category-blog .items-leading .readmore a {
    display: inline-block;
}

.com-content-category-blog .items-leading .readmore a {
    margin-top: 1rem;
    border-color: var(--accent);
}

/* =========================
   LEAD - FORZAR LEER MÁS A LA IZQUIERDA
========================= */

.com-content-category-blog .items-leading .readmore,
.com-content-category-blog .items-leading .readmore p,
.com-content-category-blog .items-leading p.readmore,
.com-content-category-blog .items-leading .readmore-container {
    text-align: left !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
}

.com-content-category-blog .items-leading .readmore {
    display: block !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}

.com-content-category-blog .items-leading .readmore a,
.com-content-category-blog .items-leading a.readmore,
.com-content-category-blog .items-leading .btn {
    margin-left: 0 !important;
    margin-right: auto !important;
}

/* =========================
   MEDIA EN ARTÍCULOS
========================= */

.com-content-article__body iframe {
    display: block;
    width: 100%;
    max-width: 860px;
    aspect-ratio: 16 / 9;
    height: auto;
    margin: 3rem auto;
    border-radius: 22px;
}

.com-content-article__body img {
    display: block;
    margin: 3rem auto;
    border-radius: 22px;
    max-width: 100%;
}


/* =========================
   NAVEGACIÓN ENTRE ARTÍCULOS
========================= */

.pagenavigation {
    max-width: 860px;
    margin: 4rem auto 2rem;
    padding-top: 2rem;
    border-top: 1px solid var(--border);
}

.pagenavigation .pagination {
    display: flex !important;
    justify-content: space-between !important;
    gap: 1rem !important;
    margin: 0 !important;
}

.pagenavigation .pagination li {
    list-style: none !important;
}

.pagenavigation .btn,
.pagenavigation a {
    border: 1px solid var(--accent) !important;
    border-radius: 999px !important;
    padding: 0.8rem 1.2rem !important;
    color: var(--accent) !important;
    background: transparent !important;
}

.pagenavigation .btn:hover,
.pagenavigation a:hover {
    background: var(--accent) !important;
    color: var(--bg) !important;
}

.pagenavigation .visually-hidden,
.pagenavigation .icon-chevron-left,
.pagenavigation .icon-chevron-right {
    display: none !important;
}

@media (max-width: 640px) {
    .pagenavigation .pagination {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .pagenavigation .btn,
    .pagenavigation a {
        text-align: center !important;
    }
}

/* =========================
   NAVEGACIÓN TIPO LIBRO - AJUSTADA
========================= */

.pagenavigation {
    max-width: 760px;
    margin: 4rem auto 2rem;
    padding-top: 2rem;
    border-top: 1px solid var(--border);
}

.pagenavigation .pagination {
    display: flex !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 1rem !important;
    margin: 0 !important;
}

.pagenavigation .pagination li {
    flex: 0 1 360px !important;
}

.pagenavigation .pagination a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 56px;
    padding: 1rem 1.4rem !important;
    border-radius: 20px !important;
    border: 1px solid var(--border) !important;
    background: var(--bg-soft) !important;
    color: var(--text) !important;
    transition: all 0.3s ease;
    text-align: center !important;
}

.pagenavigation .pagination a:hover {
    border-color: var(--accent) !important;
    background: rgba(200,169,106,0.08) !important;
}

/* Botón anterior */
.pagenavigation .pagination a.previous::before,
.pagenavigation .pagination .previous a::before {
    content: "← Anterior";
    color: var(--accent);
}

/* Botón siguiente */
.pagenavigation .pagination a.next::before,
.pagenavigation .pagination .next a::before {
    content: "Siguiente →";
    color: var(--accent);
}

/* Ocultar texto original Anterior/Siguiente */
.pagenavigation .pagination a.previous,
.pagenavigation .pagination a.next {
    font-size: 0 !important;
}

.pagenavigation .pagination a.previous::before,
.pagenavigation .pagination a.next::before {
    font-size: 0.95rem !important;
}

@media (max-width: 640px) {
    .pagenavigation .pagination {
        flex-direction: column !important;
    }

    .pagenavigation .pagination li {
        flex: 1 1 auto !important;
    }
}

/* Quitar iconos/círculos vacíos en navegación entre artículos */

.pagenavigation .pagination a span,
.pagenavigation .pagination .icon-chevron-left,
.pagenavigation .pagination .icon-chevron-right {
    display: none !important;
    border: none !important;
    min-width: 0 !important;
    width: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.poemas-esenciales {
  text-align: center;
  padding: 70px 20px 85px;
  margin: 0 auto 70px;
  max-width: 1100px;
  border-bottom: 1px solid rgba(212,175,55,0.22);
}

.poemas-esenciales h2 {
  font-size: 2rem;
  margin-bottom: 18px;
}

.esenciales-intro {
  color: #aaa;
  margin-bottom: 34px;
}

.esenciales-lista {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 18px 24px;
}

.esenciales-lista a {
  color: #d4af37;
  text-decoration: none;
  font-size: 1rem;
  border-bottom: 1px solid rgba(212,175,55,0.35);
  padding-bottom: 5px;
  transition: all 0.3s ease;
}

.esenciales-lista a:hover {
  color: #fff;
  border-bottom-color: #d4af37;
}

/* HEADER / MENÚ MÓVIL */

@media (max-width: 768px) {

    .header-inner {
        min-height: auto;
        padding: 14px 16px 18px;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 14px;
    }

    .site-logo img {
        height: 58px;
        max-width: 120px;
    }

    .site-nav {
        width: 100%;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .site-nav::-webkit-scrollbar {
        display: none;
    }

    .site-nav ul {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        gap: 1.25rem;
        width: max-content;
        min-width: 100%;
        white-space: nowrap;
        padding: 0 8px;
    }

    .site-nav a {
        font-size: 0.95rem;
        letter-spacing: 0.02em;
    }
}

.footer-copy {
    margin-top: 1.2rem;
    color: var(--muted);
    font-size: 0.9rem;
    opacity: 0.75;
}

/* TEXTURA GENERAL SUAVE */

body::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: -1;
    background:
        radial-gradient(circle at 20% 10%, rgba(212, 175, 55, 0.08), transparent 28%),
        radial-gradient(circle at 80% 30%, rgba(255, 255, 255, 0.035), transparent 26%),
        linear-gradient(180deg, rgba(255,255,255,0.025), transparent 40%);
}

/* HERO MÁS CÁLIDO */

.hero {
    position: relative;
    overflow: hidden;
}

.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at center, rgba(212, 175, 55, 0.10), transparent 35%),
        linear-gradient(135deg, rgba(255,255,255,0.035), transparent 45%);
    opacity: 0.8;
    pointer-events: none;
}

.hero > * {
    position: relative;
    z-index: 1;
}

/* POEMAS ESENCIALES CON AMBIENTE EDITORIAL */

.poemas-esenciales {
    position: relative;
    overflow: hidden;
}

.poemas-esenciales::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, transparent, rgba(212,175,55,0.055), transparent),
        radial-gradient(circle at 50% 50%, rgba(255,255,255,0.025), transparent 45%);
    pointer-events: none;
}

.poemas-esenciales > * {
    position: relative;
    z-index: 1;
}

/* TEXTURA TAMBIÉN EN MÓVIL */

@media (max-width: 768px) {

    body {
        background:
            radial-gradient(circle at 50% 0%, rgba(212,175,55,0.08), transparent 35%),
            #0d0d0d;
    }

    .hero::before {
        opacity: 1;
        background:
            radial-gradient(circle at center, rgba(212,175,55,0.16), transparent 42%),
            linear-gradient(135deg, rgba(255,255,255,0.05), transparent 55%);
    }

    .poemas-esenciales::before {
        opacity: 1;
        background:
            radial-gradient(circle at 50% 40%, rgba(212,175,55,0.10), transparent 45%),
            linear-gradient(90deg, transparent, rgba(255,255,255,0.04), transparent);
    }
}

/* AMBIENTE SUAVE EN SECCIONES PRINCIPALES */

.manifiesto,
.home-sections,
.connect-section,
.site-footer {
    position: relative;
    overflow: hidden;
}

.manifiesto::before,
.home-sections::before,
.connect-section::before,
.site-footer::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 50% 0%, rgba(212,175,55,0.045), transparent 40%),
        linear-gradient(180deg, rgba(255,255,255,0.018), transparent 55%);
    pointer-events: none;
}

.manifiesto > *,
.home-sections > *,
.connect-section > *,
.site-footer > * {
    position: relative;
    z-index: 1;
}

/* TEXTURA MÁS VISIBLE EN MÓVIL */

@media (max-width: 768px) {

    .hero,
    .poemas-esenciales {
        background:
            radial-gradient(circle at top, rgba(212,175,55,0.18), transparent 42%),
            linear-gradient(180deg, rgba(255,255,255,0.045), rgba(13,13,13,0) 65%);
    }

    .manifiesto {
        background:
            linear-gradient(180deg, rgba(212,175,55,0.08), rgba(13,13,13,0) 70%);
    }

}

.ez-etiqueta-musica {
    color: var(--accent);
    font-size: 0.78rem;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 1rem;
}

.obra-escrita-portada {
  width: min(960px, calc(100vw - 40px));
  margin: 0 auto;
  padding: 64px 0 72px;
}

.obra-hero {
  width: 100%;
  margin: 0 auto 34px;
  padding: 38px 42px;
  border: 1px solid rgba(201, 166, 92, 0.28);
  border-radius: 22px;
  background:
    radial-gradient(circle at top left, rgba(201, 166, 92, 0.14), transparent 40%),
    linear-gradient(135deg, rgba(255,255,255,0.05), rgba(255,255,255,0.018));
  box-shadow: 0 18px 45px rgba(0,0,0,0.25);
}

.obra-etiqueta {
  margin: 0 0 12px;
  color: #c9a65c;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-size: 0.8rem;
}

.obra-hero h1 {
  max-width: 620px;
  margin: 0 0 20px;
  color: #f4ead2;
  font-size: clamp(2.3rem, 4vw, 3.6rem);
  line-height: 1.05;
}

.obra-hero p {
  max-width: 760px;
  color: #cfcfcf;
  font-size: 1.02rem;
  line-height: 1.8;
  margin: 0 0 14px;
}

.obra-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.obra-card {
  display: flex;
  flex-direction: column;
  min-height: 260px;
  padding: 30px 30px;
  border: 1px solid rgba(201, 166, 92, 0.20);
  border-radius: 20px;
  background:
    radial-gradient(circle at top right, rgba(201, 166, 92, 0.11), transparent 38%),
    rgba(255,255,255,0.038);
  text-decoration: none;
  transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}

.obra-card:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 166, 92, 0.48);
  background:
    radial-gradient(circle at top right, rgba(201, 166, 92, 0.17), transparent 40%),
    rgba(255,255,255,0.06);
}

.obra-categoria {
  display: inline-block;
  margin-bottom: 18px;
  color: #9f9f9f;
  font-size: 0.78rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.obra-card h2 {
  margin: 0 0 14px;
  color: #c9a65c;
  font-size: 1.55rem;
}

.obra-card p {
  margin: 0 0 24px;
  color: #c8c8c8;
  font-size: 1rem;
  line-height: 1.7;
}

.obra-link {
  margin-top: auto;
  color: #f0d28a;
  font-size: 0.95rem;
}

@media (max-width: 760px) {
  .obra-escrita-portada {
    width: min(100%, calc(100vw - 32px));
    padding: 36px 0 54px;
  }

  .obra-hero {
    padding: 28px 24px;
    border-radius: 18px;
  }

  .obra-hero h1 {
    font-size: 2.15rem;
  }

  .obra-grid {
    grid-template-columns: 1fr;
  }

  .obra-card {
    min-height: auto;
    padding: 26px 24px;
  }
}

/* =========================
   OBRA ESCRITA - ANCHO DE PORTADA
========================= */

/* Permite que la portada de Obra escrita no quede limitada
   por el ancho estrecho de los artículos normales */
.item-page:has(.obra-escrita-portada) {
    max-width: none !important;
    width: 100% !important;
}

/* Ancho similar a Poemas, Música y Home */
.obra-escrita-portada {
    width: min(92%, 1180px) !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 64px 0 72px !important;
}

/* Hero más amplio */
.obra-hero {
    width: 100% !important;
    max-width: 100% !important;
}

/* Cuadrícula amplia de tarjetas */
.obra-grid {
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 2rem !important;
}

@media (max-width: 760px) {
    .obra-escrita-portada {
        width: min(100%, calc(100vw - 32px)) !important;
        padding: 36px 0 54px !important;
    }

    .obra-grid {
        grid-template-columns: 1fr !important;
        gap: 1.4rem !important;
    }
}


/* =========================
   OBRA ESCRITA - FORZAR ANCHO REAL
========================= */

.obra-escrita-portada {
    width: min(1180px, 92vw) !important;
    max-width: 1180px !important;
    margin-left: 50% !important;
    margin-right: 0 !important;
    transform: translateX(-50%) !important;
    padding: 64px 0 72px !important;
}

/* Hero ocupa el ancho completo de la portada */
.obra-hero {
    width: 100% !important;
    max-width: 100% !important;
    padding: 44px 48px !important;
}

/* Grid igual de ancho que la portada */
.obra-grid {
    width: 100% !important;
    max-width: 1180px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 2rem !important;
}

/* Tarjetas más presentes */
.obra-card {
    min-height: 270px !important;
    padding: 34px 34px !important;
}

/* Texto del hero un poco más amplio */
.obra-hero p {
    max-width: 880px !important;
}

/* Móvil */
@media (max-width: 760px) {
    .obra-escrita-portada {
        width: calc(100vw - 32px) !important;
        margin-left: 50% !important;
        transform: translateX(-50%) !important;
        padding: 36px 0 54px !important;
    }

    .obra-hero {
        padding: 28px 24px !important;
    }

    .obra-grid {
        grid-template-columns: 1fr !important;
        gap: 1.4rem !important;
    }

    .obra-card {
        min-height: auto !important;
        padding: 26px 24px !important;
    }
}

/* =========================
   CABECERA EDITORIAL DE SECCIONES
========================= */

.seccion-intro-ez {
    width: min(1180px, 92vw);
    margin: 0 auto 2.5rem;
    padding: 38px 42px;
    border: 1px solid rgba(201, 166, 92, 0.24);
    border-radius: 22px;
    background:
        radial-gradient(circle at top left, rgba(201, 166, 92, 0.12), transparent 38%),
        linear-gradient(135deg, rgba(255,255,255,0.045), rgba(255,255,255,0.015));
    box-shadow: 0 18px 45px rgba(0,0,0,0.22);
}

.seccion-intro-ez .seccion-etiqueta {
    margin: 0 0 12px;
    color: var(--accent);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 0.8rem;
    font-weight: 600;
}

.seccion-intro-ez h1,
.seccion-intro-ez h2 {
    max-width: 760px;
    margin: 0 0 20px;
    color: #f4ead2;
    font-size: clamp(2.3rem, 4vw, 3.6rem);
    line-height: 1.05;
}

.seccion-intro-ez p {
    max-width: 880px;
    color: #cfcfcf;
    font-size: 1.02rem;
    line-height: 1.8;
    margin: 0 0 14px;
}

.seccion-intro-ez p:last-child {
    margin-bottom: 0;
}

@media (max-width: 760px) {
    .seccion-intro-ez {
        width: calc(100vw - 32px);
        padding: 28px 24px;
        border-radius: 18px;
        margin-bottom: 2rem;
    }

    .seccion-intro-ez h1,
    .seccion-intro-ez h2 {
        font-size: 2.15rem;
    }
}

/* =========================
   ARTÍCULOS INDIVIDUALES - ANCHO EDITORIAL
========================= */

.item-page {
    max-width: 1040px;
    width: min(92%, 1040px);
    margin: 0 auto !important;
}

/* Título del artículo */
.item-page h1 {
    max-width: 860px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: clamp(2.6rem, 5vw, 4.6rem) !important;
    line-height: 1.12 !important;
}

/* Cuerpo del artículo */
.com-content-article__body {
    max-width: 820px !important;
    margin: 0 auto !important;
}

/* Párrafos */
.item-page p,
.com-content-article__body p {
    font-size: 1.12rem !important;
    line-height: 1.9 !important;
}

/* Listas */
.com-content-article__body ul,
.com-content-article__body ol {
    max-width: 760px !important;
    margin: 1.5rem auto 2rem !important;
    color: var(--muted);
}

/* Imágenes y videos dentro de artículos */
.com-content-article__body img,
.com-content-article__body iframe {
    max-width: 860px !important;
}

/* Navegación anterior / siguiente */
.pagenavigation {
    max-width: 860px !important;
}

/* =========================
   ARTÍCULOS INDIVIDUALES - ANCHO FINAL
========================= */

/* Contenedor general del artículo */
.item-page {
    width: min(1180px, 92vw) !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Título más amplio */
.item-page h1 {
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Cuerpo del artículo: más amplio, pero aún legible */
.com-content-article__body {
    width: 100% !important;
    max-width: 960px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Párrafos de artículos */
.com-content-article__body p {
    max-width: 960px !important;
}

/* Listas dentro de artículos */
.com-content-article__body ul,
.com-content-article__body ol {
    max-width: 900px !important;
}

/* Imágenes y videos pueden respirar más */
.com-content-article__body img,
.com-content-article__body iframe {
    max-width: 960px !important;
}

/* Navegación entre artículos */
.pagenavigation {
    max-width: 960px !important;
}

/* =========================
   POEMAS INDIVIDUALES - ANCHO FINAL
========================= */

body .item-page .poema-ez,
.com-content-article__body .poema-ez,
.poema-ez {
    max-width: 920px !important;
    width: 100% !important;
}

body .item-page .poema-ez p,
.com-content-article__body .poema-ez p,
.poema-ez p {
    max-width: 920px !important;
}

/* =========================
   NOVELAS - PORTADA
========================= */

.novelas-portada {
    width: min(1180px, 92vw);
    margin: 0 auto 4rem;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
}

.novela-card {
    display: flex;
    flex-direction: column;
    min-height: 330px;
    padding: 38px 40px;
    border: 1px solid rgba(201, 166, 92, 0.22);
    border-radius: 24px;
    background:
        radial-gradient(circle at top right, rgba(201, 166, 92, 0.12), transparent 38%),
        rgba(255,255,255,0.035);
    text-decoration: none;
    transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}

.novela-card:hover {
    transform: translateY(-4px);
    border-color: rgba(201, 166, 92, 0.5);
    background:
        radial-gradient(circle at top right, rgba(201, 166, 92, 0.18), transparent 40%),
        rgba(255,255,255,0.055);
}

.novela-estado {
    display: inline-block;
    margin-bottom: 18px;
    color: #9f9f9f;
    font-size: 0.78rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.novela-card h2 {
    margin: 0 0 12px;
    color: #c9a65c;
    font-size: clamp(1.8rem, 3vw, 2.5rem);
    line-height: 1.1;
}

.novela-card h3 {
    margin: 0 0 20px;
    color: #f4ead2;
    font-size: 1.15rem;
    font-weight: 500;
}

.novela-card p {
    margin: 0 0 28px;
    color: #c8c8c8;
    font-size: 1.05rem;
    line-height: 1.75;
}

.novela-link {
    margin-top: auto;
    color: #f0d28a;
    font-size: 0.95rem;
}

@media (max-width: 760px) {
    .novelas-portada {
        width: calc(100vw - 32px);
        grid-template-columns: 1fr;
        gap: 1.4rem;
    }

    .novela-card {
        min-height: auto;
        padding: 28px 24px;
    }
}

/* =========================
   ANTAGONISMO - ÍNDICE DE NOVELA
========================= */

.pagina-antagonismo .com-content-category-blog .blog-items,
.pagina-antagonismo .com-content-category-blog .items-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1.4rem !important;
    max-width: 960px !important;
    margin: 0 auto !important;
}

.pagina-antagonismo .com-content-category-blog .items-leading {
    display: block !important;
    max-width: 960px !important;
    margin: 0 auto 2rem !important;
}

.pagina-antagonismo .com-content-category-blog .blog-item,
.pagina-antagonismo .com-content-category-blog .item,
.pagina-antagonismo .com-content-category-blog article {
    padding: 2rem 2.2rem !important;
    border-radius: 22px !important;
}

.pagina-antagonismo .com-content-category-blog h2,
.pagina-antagonismo .com-content-category-blog h2 a,
.pagina-antagonismo .com-content-category-blog h3,
.pagina-antagonismo .com-content-category-blog h3 a {
    text-align: left !important;
    font-size: clamp(1.35rem, 2.4vw, 1.8rem) !important;
    line-height: 1.25 !important;
}

.pagina-antagonismo .com-content-category-blog p {
    text-align: left !important;
    max-width: 820px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}

.pagina-antagonismo .com-content-category-blog .readmore {
    text-align: left !important;
}

/* =========================
   ANTAGONISMO - FORZAR UNA COLUMNA
========================= */

body.menu-26-antagonismo .com-content-category-blog .blog-items,
body.menu-26-antagonismo .com-content-category-blog .items-row,
body.menu-26-antagonismo .com-content-category-blog .items-leading {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1.4rem !important;
    max-width: 960px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.menu-26-antagonismo .com-content-category-blog .blog-item,
body.menu-26-antagonismo .com-content-category-blog .item,
body.menu-26-antagonismo .com-content-category-blog article {
    width: 100% !important;
    max-width: 100% !important;
    padding: 2rem 2.2rem !important;
    text-align: left !important;
}

body.menu-26-antagonismo .com-content-category-blog h2,
body.menu-26-antagonismo .com-content-category-blog h2 a,
body.menu-26-antagonismo .com-content-category-blog h3,
body.menu-26-antagonismo .com-content-category-blog h3 a {
    text-align: left !important;
    font-size: clamp(1.35rem, 2.4vw, 1.8rem) !important;
    line-height: 1.25 !important;
}

body.menu-26-antagonismo .com-content-category-blog p {
    text-align: left !important;
    max-width: 820px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}

body.menu-26-antagonismo .com-content-category-blog .readmore {
    text-align: left !important;
}

/* =========================
   KASINAS - ÍNDICE DE OBRA EN PROGRESO
========================= */

body.menu-28-la-rebelion-de-los-kasinas .com-content-category-blog .blog-items,
body.menu-28-la-rebelion-de-los-kasinas .com-content-category-blog .items-row,
body.menu-28-la-rebelion-de-los-kasinas .com-content-category-blog .items-leading {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1.4rem !important;
    max-width: 960px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.menu-28-la-rebelion-de-los-kasinas .com-content-category-blog .blog-item,
body.menu-28-la-rebelion-de-los-kasinas .com-content-category-blog .item,
body.menu-28-la-rebelion-de-los-kasinas .com-content-category-blog article {
    width: 100% !important;
    max-width: 100% !important;
    padding: 2rem 2.2rem !important;
    text-align: left !important;
}

body.menu-28-la-rebelion-de-los-kasinas .com-content-category-blog h2,
body.menu-28-la-rebelion-de-los-kasinas .com-content-category-blog h2 a,
body.menu-28-la-rebelion-de-los-kasinas .com-content-category-blog h3,
body.menu-28-la-rebelion-de-los-kasinas .com-content-category-blog h3 a {
    text-align: left !important;
    font-size: clamp(1.35rem, 2.4vw, 1.8rem) !important;
    line-height: 1.25 !important;
}

body.menu-28-la-rebelion-de-los-kasinas .com-content-category-blog p {
    text-align: left !important;
    max-width: 820px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}

body.menu-28-la-rebelion-de-los-kasinas .com-content-category-blog .readmore {
    text-align: left !important;
}

/* =========================
   POEMAS INDIVIDUALES - PRESENCIA FINAL
========================= */

body .item-page .poema-ez {
    max-width: 960px !important;
    padding-top: 1.5rem !important;
}

body .item-page .poema-ez h1 {
    font-size: clamp(3rem, 5.4vw, 5.2rem) !important;
    line-height: 1.08 !important;
    margin-bottom: 2.4rem !important;
    text-align: center !important;
}

body .item-page .poema-ez p {
    font-size: clamp(1.18rem, 1.45vw, 1.45rem) !important;
    line-height: 2.35 !important;
    max-width: 780px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body .item-page .poema-ez img {
    max-width: min(760px, 92vw) !important;
    margin-top: 3.5rem !important;
}

/* =========================
   ARTÍCULOS INDIVIDUALES - TÍTULO EQUILIBRADO
========================= */

.item-page h1,
body .item-page .poema-ez h1 {
    font-size: clamp(2.4rem, 4vw, 3.8rem) !important;
    line-height: 1.12 !important;
    max-width: 920px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 2.2rem !important;
    text-align: center !important;
}

/* En poemas, mantener presencia sin exagerar */
body .item-page .poema-ez h1 {
    font-size: clamp(2.5rem, 4.2vw, 4rem) !important;
    letter-spacing: 0.01em !important;
}

/* En móvil, evitar títulos gigantes */
@media (max-width: 760px) {
    .item-page h1,
    body .item-page .poema-ez h1 {
        font-size: clamp(2rem, 9vw, 2.8rem) !important;
        line-height: 1.15 !important;
        margin-bottom: 1.8rem !important;
    }
}

/* =========================
   ARTÍCULOS INDIVIDUALES - LECTURA MÁS CÓMODA
========================= */

.item-page,
.com-content-article__body {
    font-size: 1.08rem !important;
}

/* Párrafos principales de artículos */
.item-page p,
.com-content-article__body p {
    font-size: clamp(1.08rem, 1.15vw, 1.22rem) !important;
    line-height: 1.95 !important;
    color: #cfcfcf !important;
}

/* Listas dentro de artículos */
.com-content-article__body li,
.item-page li {
    font-size: clamp(1.08rem, 1.15vw, 1.2rem) !important;
    line-height: 1.85 !important;
}

/* Citas o textos destacados */
.item-page blockquote,
.com-content-article__body blockquote {
    font-size: clamp(1.12rem, 1.25vw, 1.28rem) !important;
    line-height: 1.9 !important;
}

/* Evitar que los textos se vuelvan demasiado grandes en móvil */
@media (max-width: 760px) {
    .item-page p,
    .com-content-article__body p,
    .item-page li,
    .com-content-article__body li {
        font-size: 1.06rem !important;
        line-height: 1.85 !important;
    }
}

/* =========================
   MÓVIL - IMÁGENES RESPONSIVAS EN ARTÍCULOS
========================= */

.item-page img,
.com-content-article__body img,
.item-page figure img,
.com-content-article__body figure img {
    max-width: 100% !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Evitar que figuras o contenedores de imagen desborden */
.item-page figure,
.com-content-article__body figure,
.item-page .image,
.com-content-article__body .image,
.item-page .img_caption,
.com-content-article__body .img_caption {
    max-width: 100% !important;
    width: 100% !important;
    overflow: hidden !important;
}

/* Imágenes específicamente en móvil */
@media (max-width: 760px) {
    .item-page img,
    .com-content-article__body img {
        max-width: calc(100vw - 32px) !important;
        width: auto !important;
        height: auto !important;
    }

    .item-page,
    .com-content-article__body {
        overflow-x: hidden !important;
    }
}

/* =========================
   COMPARTIR ARTÍCULOS
========================= */

.ez-share {
    width: min(960px, 92vw);
    margin: 3.5rem auto 2.5rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(255,255,255,0.12);
    text-align: center;
}

.ez-share-title {
    margin: 0 0 1rem;
    color: #9f9f9f;
    font-size: 0.85rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.ez-share-links {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.8rem;
}

.ez-share-links a,
.ez-share-links button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0.7rem 1.1rem;
    border: 1px solid rgba(201, 166, 92, 0.75);
    border-radius: 999px;
    background: transparent;
    color: #d6b46a;
    font: inherit;
    font-size: 0.95rem;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.ez-share-links a:hover,
.ez-share-links button:hover {
    background: rgba(201, 166, 92, 0.16);
    color: #f4ead2;
    border-color: rgba(201, 166, 92, 1);
}

@media (max-width: 760px) {
    .ez-share {
        width: calc(100vw - 32px);
        margin-top: 2.5rem;
    }

    .ez-share-links {
        gap: 0.6rem;
    }

    .ez-share-links a,
    .ez-share-links button {
        flex: 1 1 calc(50% - 0.6rem);
        min-width: 130px;
    }
}