/**
 * Publication Detail Adaptive Height V1 · v277
 * Ajusta la ficha al alto real de imagen + contenido. Sin mínimos rígidos.
 */

/* Ficha genérica: ninguna columna fuerza la altura de la otra. */
.jc-pd275-active.jc-pd277-adaptive .jc-pd275-hero{
  align-items:start!important;
}
.jc-pd275-active.jc-pd277-adaptive .jc-pd275-hero>.jc-listing-gallery-card,
.jc-pd275-active.jc-pd277-adaptive .jc-pd275-hero>.jc-listing-header{
  height:auto!important;
  min-height:0!important;
  align-self:start!important;
}
.jc-pd275-active.jc-pd277-adaptive .jc-listing-header{
  justify-content:flex-start!important;
}

/* La imagen manda su alto natural, pero nunca desborda el viewport. */
.jc-pd275-active.jc-pd277-adaptive .jc-gallery-main-wrap{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
}
.jc-pd275-active.jc-pd277-adaptive .jc-gallery-main-wrap>img,
.jc-pd275-active.jc-pd277-adaptive .jc-gallery-main-wrap>.jc-publication-image:not(.jc-publication-placeholder){
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:min(52vh,420px)!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:auto!important;
  flex:0 1 auto!important;
}

/* Fallbacks sin foto: mantienen una presencia mínima razonable, no una caja gigante. */
.jc-pd275-active.jc-pd277-adaptive .jc-gallery-main-wrap>.jc-publication-placeholder,
.jc-pd275-active.jc-pd277-adaptive .jc-gallery-main-wrap>.jc-listing-generic-image.jc-publication-placeholder{
  width:100%!important;
  height:auto!important;
  min-height:150px!important;
  max-height:260px!important;
  align-self:stretch!important;
}

/* Comercio: misma regla adaptativa sin afectar botones ni datos. */
.jc-pd275-active.jc-pd277-adaptive .jc-commerce-main-photo{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
}
.jc-pd275-active.jc-pd277-adaptive .jc-commerce-main-photo>img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:min(54vh,420px)!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:auto!important;
}
.jc-pd275-active.jc-pd277-adaptive .jc-commerce-photo-placeholder{
  min-height:150px!important;
  height:auto!important;
}

/* Evita aire vertical heredado cuando la ficha es corta. */
.jc-pd275-active.jc-pd277-adaptive .jc-listing-main{
  align-content:start!important;
}
.jc-pd275-active.jc-pd277-adaptive .jc-listing-section,
.jc-pd275-active.jc-pd277-adaptive .jc-listing-author,
.jc-pd275-active.jc-pd277-adaptive .jc-listing-related{
  align-self:start!important;
}

@media(max-width:620px){
  .jc-pd275-active.jc-pd277-adaptive .jc-gallery-main-wrap{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  .jc-pd275-active.jc-pd277-adaptive .jc-gallery-main-wrap>img,
  .jc-pd275-active.jc-pd277-adaptive .jc-gallery-main-wrap>.jc-publication-image:not(.jc-publication-placeholder){
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:min(48vh,360px)!important;
  }
  .jc-pd275-active.jc-pd277-adaptive .jc-gallery-main-wrap>.jc-publication-placeholder,
  .jc-pd275-active.jc-pd277-adaptive .jc-gallery-main-wrap>.jc-listing-generic-image.jc-publication-placeholder{
    min-height:120px!important;
    max-height:220px!important;
  }
  .jc-pd275-active.jc-pd277-adaptive .jc-commerce-main-photo{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  .jc-pd275-active.jc-pd277-adaptive .jc-commerce-main-photo>img{
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:min(48vh,360px)!important;
  }
}
