/* PortalGraf NEXT v0.5.141: optional module layouts only.
   Registered by pg_home_cards / pg_home_tiles at actual render time. */
.pg-next .pg-home-article-groups { min-width: 0; }
.pg-next .pg-home-article-group + .pg-home-article-group { margin-top: 1.5rem; }
.pg-next .pg-home-article-group__title { font-size: 1.16rem; margin: 0 0 .75rem; }
.pg-next .pg-home-article-grid { display: grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr)); gap: 1rem; }
.pg-next .pg-home-article-grid > :only-child { grid-column: 1/-1; }
.pg-next .pg-home-article-card { min-width:0; display:flex; flex-direction:column; overflow:hidden; background:#fff; border:1px solid #dce7e0; border-radius: .9rem; box-shadow: 0 5px 18px rgba(17,60,44,.055); }
.pg-next .pg-home-article-card__image { overflow:hidden; background:#f0f4f1; }
.pg-next .pg-home-article-card__image a { display:block; }
.pg-next .pg-home-article-card__image img { display:block; width:100%; aspect-ratio: 16/9; height:auto; object-fit:cover; }
.pg-next .pg-home-article-card__content { display:flex; flex-direction:column; gap:.65rem; flex:1; min-width:0; padding:1rem; }
.pg-next .pg-home-article-card__title { margin:0; font-size:clamp(1.05rem,1.02rem + .3vw,1.25rem); font-weight:750; line-height:1.3; }
.pg-next .pg-home-article-card__title a { color:#174d40; text-decoration:none; }
.pg-next .pg-home-article-card__title a:hover,.pg-next .pg-home-article-card__title a:focus-visible { text-decoration:underline; text-underline-offset:.14em; }
.pg-next .pg-home-article-card__excerpt { color:#4a5e57; font-size:.95rem; line-height:1.55; overflow-wrap:anywhere; }
.pg-next .pg-home-article-card__excerpt > :last-child { margin-bottom:0; }
.pg-next .pg-home-article-card__meta { display:flex; flex-wrap:wrap; gap:.25rem .65rem; font-size:.79rem; color:#61746c; }
.pg-next .pg-home-article-card__more { margin-top:auto; font-weight:700; font-size:.9rem; align-self:flex-start; }
.pg-next .pg-home-tiles { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.85rem; padding:0; margin:0; list-style:none; }
.pg-next .pg-home-tiles__item { min-width:0; }
.pg-next .pg-home-tile { display:flex; flex-direction:column; align-items:flex-start; gap:.7rem; min-width:0; height:100%; padding:1rem; border:1px solid #dae7df; border-radius:.85rem; background:#f8faf8; text-decoration:none; color:#174d40; }
.pg-next .pg-home-tile:hover,.pg-next .pg-home-tile:focus-visible { border-color:#d67a17; background:#fff; text-decoration:none; }
.pg-next .pg-home-tile__mark { display:grid; place-items:center; width:2rem; height:2rem; background:#e2efe7; border-radius:.6rem; font-size:1.2rem; }
.pg-next .pg-home-tile__mark img { display:block; max-width:100%; max-height:100%; object-fit:contain; }
.pg-next .pg-home-tile__title { display:block; font-weight:750; line-height:1.3; }
.pg-next .pg-home-tile__content { flex:1; min-width:0; overflow-wrap:anywhere; }
.pg-next .pg-home-tile__description { display:block; margin-top:.25rem; color:#5a6d65; font-size:.84rem; line-height:1.42; }
.pg-next .pg-home-tile__arrow { font-weight:700; margin-left:auto; }
@media (max-width:900px) { .pg-next .pg-home-tiles { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:620px) { .pg-next .pg-home-article-grid,.pg-next .pg-home-tiles { grid-template-columns:1fr; } }

/* NEXT 0.5.172: solo en la posición Explorar de Inicio, 3 x 2 en escritorio.
   Se conservan 2 columnas <=900px y 1 columna <=620px del layout original. */
@media (min-width: 901px) {
  .pg-next .pg-home-explore-position .pg-home-tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* NEXT 0.5.173: only the six home exploration tiles, center the icon/title group.
   Titles wrap naturally (one or two lines), without fixed text height. */
.pg-next .pg-home-explore-position .pg-home-tile {
  position: relative;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: .65rem;
  padding: 1.25rem 1.4rem;
}
.pg-next .pg-home-explore-position .pg-home-tile__mark { flex: 0 0 auto; }
.pg-next .pg-home-explore-position .pg-home-tile__content { flex: 0 1 auto; width: 100%; }
.pg-next .pg-home-explore-position .pg-home-tile__title { text-wrap: balance; }
.pg-next .pg-home-explore-position .pg-home-tile__arrow {
  display: none; /* Escritorio y tablet: acceso mediante tarjeta completa */
  position: absolute; right: .65rem; bottom: .45rem; margin: 0;
  font-size: .85rem; opacity: .7;
}

/* NEXT 0.5.174: iconos SVG por clase del elemento de menú, solo portada.
   No cambia la cuadrícula, el texto ni la flecha de navegación. */
.pg-next .pg-home-explore-position .pg-home-tile__mark > [class*="pg-icon-"] {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.pg-next .pg-home-explore-position .pg-home-tile__mark > .pg-icon-articulos { background-image: url("../../icons/pg-explore-articulos.svg"); }
.pg-next .pg-home-explore-position .pg-home-tile__mark > .pg-icon-calidad { background-image: url("../../icons/pg-explore-calidad.svg"); }
.pg-next .pg-home-explore-position .pg-home-tile__mark > .pg-icon-historia { background-image: url("../../icons/pg-explore-historia.svg"); }
.pg-next .pg-home-explore-position .pg-home-tile__mark > .pg-icon-eventos { background-image: url("../../icons/pg-explore-eventos.svg"); }
.pg-next .pg-home-explore-position .pg-home-tile__mark > .pg-icon-descargas { background-image: url("../../icons/pg-explore-descargas.svg"); }
.pg-next .pg-home-explore-position .pg-home-tile__mark > .pg-icon-foro { background-image: url("../../icons/pg-explore-foro.svg"); }

/* NEXT 0.5.175: navegacion compacta SOLO para Explorar en telefono.
   La disposicion de escritorio/tablet y otros menus permanecen intactos. */
@media (max-width: 620px) {
  .pg-next .pg-home-explore-position .pg-home-tiles { gap: .65rem; }
  .pg-next .pg-home-explore-position .pg-home-tile {
    display: flex; flex-direction: row; align-items: center; justify-content: flex-start;
    text-align: left; gap: .85rem; padding: .85rem 1rem; min-height: 4.75rem;
  }
  .pg-next .pg-home-explore-position .pg-home-tile__mark {
    flex: 0 0 2.3rem; width: 2.3rem; height: 2.3rem;
  }
  .pg-next .pg-home-explore-position .pg-home-tile__content {
    flex: 1 1 auto; width: auto; min-width: 0;
  }
  .pg-next .pg-home-explore-position .pg-home-tile__title {
    text-align: left; text-wrap: wrap; line-height: 1.3;
  }
  .pg-next .pg-home-explore-position .pg-home-tile__arrow {
    display: inline; /* Movil: conservar indicacion de navegacion */
    position: static; flex: 0 0 auto; margin-left: auto; font-size: 1rem; opacity: .7;
  }
}
