/* PortalGraf Next 0.5.54 — módulo editorial reutilizable. No afecta al cuerpo del artículo ni a la cabecera. */
.pg-next {
  --pg-mod-title: #174d40;
  --pg-mod-copy: #253832;
  --pg-mod-link: #155b95;
  --pg-mod-hover: #0c4675;
  --pg-mod-border: #dce7e0;
  --pg-mod-tint: #f7f9f8;
}
/* Módulos actualmente renderizados por Cassiopeia: conservar geometría, afinar jerarquía. */
.pg-next :is(.pg-sidebar, .pg-primary-content > .moduletable, .pg-main-bottom, .pg-modules-band) :is(.card-header, .card > h2, .card > h3, .moduletable > h2, .moduletable > h3) {
  color: var(--pg-mod-title);
  font-size: clamp(1.075rem, 1.06rem + .15vw, 1.25rem);
  line-height: 1.28;
  font-weight: 700;
  letter-spacing: -.01em;
}
.pg-next :is(.pg-sidebar, .pg-main-bottom, .pg-modules-band) :is(.card-body, .mod-custom, .moduletable) { color: var(--pg-mod-copy); }
.pg-next :is(.pg-sidebar, .pg-main-bottom, .pg-modules-band) a:not(.btn):not(.badge) {
  color: var(--pg-mod-link);
  text-decoration-color: transparent;
  text-underline-offset: .16em;
}
.pg-next :is(.pg-sidebar, .pg-main-bottom, .pg-modules-band) a:not(.btn):not(.badge):is(:hover, :focus-visible) {
  color: var(--pg-mod-hover);
  text-decoration: underline;
}
/* Encabezados Cassiopeia: suavizar la superficie, no alterar la rejilla ni el contenido. */
.pg-next .pg-sidebar .card > .card-header {
  background: #f8faf9;
  border-bottom-color: var(--pg-mod-border);
}
/* Enlaces por defecto: azul editorial distinguible del verde de los títulos.
   Respetar los botones, insignias y cualquier navegación fuera del contenido. */
.pg-next :is(.pg-sidebar, .pg-main-bottom, .pg-modules-band) a:not(.btn):not(.badge):focus-visible {
  outline: 2px solid var(--pg-mod-link);
  outline-offset: 3px;
}
/* Tres estilos optativos (Advanced > Module Style), independientes de la posición. */
.pg-next .pg-module { min-width: 0; color: var(--pg-mod-copy); }
.pg-next .pg-module__title {
  margin: 0 0 .85rem;
  color: var(--pg-mod-title);
  font-size: clamp(1.075rem, 1.06rem + .15vw, 1.25rem);
  line-height: 1.28;
  font-weight: 700;
  letter-spacing: -.012em;
}
.pg-next .pg-module__body { min-width: 0; }
.pg-next .pg-module__body > :last-child { margin-bottom: 0; }
.pg-next .pg-module a:not(.btn):not(.badge) { color: var(--pg-mod-link); text-decoration-color: transparent; text-underline-offset: .16em; }
.pg-next .pg-module a:not(.btn):not(.badge):is(:hover, :focus-visible) { color: var(--pg-mod-hover); text-decoration: underline; }
.pg-next .pg-module--editorial { padding: .2rem 0; background: transparent; border: 0; }
.pg-next .pg-module--editorial .pg-module__title { padding-bottom: .6rem; border-bottom: 1px solid var(--pg-mod-border); }
.pg-next .pg-module--card { padding: 1.1rem; background: #fff; border: 1px solid var(--pg-mod-border); border-radius: 12px; }
.pg-next .pg-module--hybrid .pg-module__title { padding-left: .8rem; border-left: 3px solid #f28c20; }
.pg-next .pg-module--hybrid .pg-module__body { background: var(--pg-mod-tint); border: 1px solid var(--pg-mod-border); border-radius: 10px; padding: 1rem; }
/* Modos de distribución opcionales, sobre el contenido directo que produzca el módulo.
   No fuerzan listados internos de terceros ni provocan desbordamientos. */
.pg-next .pg-module.pg-layout--horizontal .pg-module__body,
.pg-next .pg-module.pg-layout--grid .pg-module__body { display: grid; gap: 1rem; align-items: start; }
.pg-next .pg-module.pg-layout--horizontal .pg-module__body { grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); }
.pg-next .pg-module.pg-layout--grid .pg-module__body { grid-template-columns: repeat(auto-fit, minmax(min(100%, 245px), 1fr)); }
.pg-next .pg-module.pg-layout--horizontal .pg-module__body > *,
.pg-next .pg-module.pg-layout--grid .pg-module__body > * { min-width: 0; }
@media (max-width: 640px) {
  .pg-next .pg-module--card { padding: .95rem; }
  .pg-next .pg-module--hybrid .pg-module__body { padding: .85rem; }
  .pg-next .pg-module.pg-layout--horizontal .pg-module__body,
  .pg-next .pg-module.pg-layout--grid .pg-module__body { grid-template-columns: minmax(0, 1fr); }
}

/* Acentos opcionales POR MÓDULO mediante «Clase CSS del módulo».
   No hay barras CMYK globales repetidas: sólo donde el editor las seleccione. */
.pg-next :is(.pg-module.pg-accent--cmyk, .card.pg-accent--cmyk, .moduletable.pg-accent--cmyk) {
  border-top: 0;
  position: relative;
}
.pg-next :is(.pg-module.pg-accent--cmyk, .card.pg-accent--cmyk, .moduletable.pg-accent--cmyk)::before {
  content: "";
  display: block;
  height: 3px;
  background: linear-gradient(to right, #02a9d5 0 25%, #d92b91 25% 50%, #f0d400 50% 75%, #23282a 75% 100%);
  border-radius: 8px 8px 0 0;
}
.pg-next :is(.pg-module.pg-accent--green, .card.pg-accent--green, .moduletable.pg-accent--green) {
  border-top: 3px solid #258362;
}
.pg-next :is(.pg-module.pg-accent--orange, .card.pg-accent--orange, .moduletable.pg-accent--orange) {
  border-top: 3px solid #d57718;
}
/* El chrome editorial sin marco no debe recibir relleno de tarjeta por el acento. */
.pg-next .pg-module--editorial.pg-accent--cmyk::before { margin-bottom: .7rem; }
.pg-next .pg-module--editorial:is(.pg-accent--green,.pg-accent--orange) { padding-top: .7rem; }

/* v0.5.83 | Chrome Joomla pgRelatedEditorial: visual abierto, acento vertical.
   No modifica pgEditorial/pgHybrid ni módulos que no seleccionen este chrome. */
.pg-next .pg-module--related-editorial {
  padding: .2rem 0; background: transparent; border: 0; box-shadow: none;
}
.pg-next .pg-module--related-editorial .pg-module__title {
  padding: .12rem 0 .12rem .72rem;
  margin: 0 0 .85rem;
  border: 0; border-left: 3px solid #f28c20;
  background: transparent;
}
.pg-next .pg-module--related-editorial .pg-module__body {
  padding: 0; border: 0; background: transparent;
}
/* Lista nativa mod_related_items: separadores discretos, sin cuadros. */
.pg-next .pg-module--related-editorial .pg-module__body ul {
  list-style: none; margin: 0; padding: 0;
}
.pg-next .pg-module--related-editorial .pg-module__body li {
  margin: 0; padding: .62rem 0;
  border-bottom: 1px solid var(--pg-mod-border);
  line-height: 1.45; overflow-wrap: anywhere;
}
.pg-next .pg-module--related-editorial .pg-module__body li:first-child { padding-top: .15rem; }
.pg-next .pg-module--related-editorial .pg-module__body li:last-child { border-bottom: 0; }
.pg-next .pg-module--related-editorial .pg-module__body a {
  display: inline-block; max-width: 100%; font-weight: 400;
}

/* v0.5.86 — Chrome dedicado a PortalGraf Últimos, sin alterar pgRelatedEditorial. */
.pg-next .pg-module--latest-editorial {padding:.2rem 0;background:transparent;border:0;box-shadow:none}
.pg-next .pg-module--latest-editorial .pg-module__title {padding:.12rem 0 .12rem .72rem;margin:0 0 .85rem;border:0;border-left:3px solid #f28c20;background:transparent}
.pg-next .pg-module--latest-editorial .pg-module__body {padding:0;border:0;background:transparent}
