/* CEMI Core v1.2.83 — Single hero polish
   - Precio y métodos de pago separados, sin encimarse.
   - Specs centradas y en una línea en escritorio cuando el ancho lo permite.
   - Specs más compactas en tablet/móvil.
   - Botones Fotos/Mapa/Contacto más visibles en rosa CEMI. */

body.cemi-ui-single-property .cemi-single-hero-panel,
body.single-cemi_property .cemi-single-hero-panel,
body.single-opalestate_property .cemi-single-hero-panel{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  overflow:visible!important;
  height:auto!important;
  min-height:0!important;
  box-sizing:border-box!important;
}

body.cemi-ui-single-property .cemi-single-hero-price-label,
body.single-cemi_property .cemi-single-hero-price-label,
body.single-opalestate_property .cemi-single-hero-price-label{
  display:block!important;
  margin:0 0 4px!important;
}

body.cemi-ui-single-property .cemi-single-hero-price,
body.single-cemi_property .cemi-single-hero-price,
body.single-opalestate_property .cemi-single-hero-price{
  display:block!important;
  position:relative!important;
  z-index:1!important;
  margin:0!important;
  padding:0!important;
  max-width:100%!important;
  line-height:1.02!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}

body.cemi-ui-single-property .cemi-single-hero-payments,
body.single-cemi_property .cemi-single-hero-payments,
body.single-opalestate_property .cemi-single-hero-payments{
  position:relative!important;
  z-index:0!important;
  margin:0!important;
  clear:both!important;
  width:100%!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}

body.cemi-ui-single-property .cemi-single-hero-pay-pills,
body.single-cemi_property .cemi-single-hero-pay-pills,
body.single-opalestate_property .cemi-single-hero-pay-pills{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
}

body.cemi-ui-single-property .cemi-single-hero-pay-pills span,
body.single-cemi_property .cemi-single-hero-pay-pills span,
body.single-opalestate_property .cemi-single-hero-pay-pills span{
  flex:0 1 auto!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  text-align:center!important;
}

/* Botones del hero: más claros y comerciales */
body.cemi-ui-single-property .cemi-single-hero-actions,
body.single-cemi_property .cemi-single-hero-actions,
body.single-opalestate_property .cemi-single-hero-actions{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:9px!important;
  width:100%!important;
  margin-top:0!important;
}

body.cemi-ui-single-property .cemi-single-hero-actions a,
body.single-cemi_property .cemi-single-hero-actions a,
body.single-opalestate_property .cemi-single-hero-actions a{
  min-width:0!important;
  min-height:42px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#D7266B,#C81768)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 12px 28px rgba(215,38,107,.22)!important;
  font-weight:900!important;
  text-decoration:none!important;
}

body.cemi-ui-single-property .cemi-single-hero-actions a:hover,
body.single-cemi_property .cemi-single-hero-actions a:hover,
body.single-opalestate_property .cemi-single-hero-actions a:hover{
  transform:translateY(-1px);
  filter:saturate(1.08);
}

/* Escritorio: las características deben sentirse como una sola barra ordenada */
@media (min-width:1181px){
  body.cemi-ui-single-property .cemi-single-hero-inner,
  body.single-cemi_property .cemi-single-hero-inner,
  body.single-opalestate_property .cemi-single-hero-inner{
    align-items:center!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-copy,
  body.single-cemi_property .cemi-single-hero-copy,
  body.single-opalestate_property .cemi-single-hero-copy{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-specs,
  body.single-cemi_property .cemi-single-hero-specs,
  body.single-opalestate_property .cemi-single-hero-specs{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:center!important;
    width:min(100%,1120px)!important;
    max-width:1120px!important;
    gap:10px!important;
    margin-top:24px!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-specs span,
  body.single-cemi_property .cemi-single-hero-specs span,
  body.single-opalestate_property .cemi-single-hero-specs span{
    flex:1 1 0!important;
    min-width:0!important;
    max-width:220px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    text-align:left!important;
    padding:14px 16px!important;
    min-height:70px!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-specs strong,
  body.single-cemi_property .cemi-single-hero-specs strong,
  body.single-opalestate_property .cemi-single-hero-specs strong{
    font-size:clamp(20px,1.45vw,26px)!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-specs small,
  body.single-cemi_property .cemi-single-hero-specs small,
  body.single-opalestate_property .cemi-single-hero-specs small{
    margin-top:5px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-panel,
  body.single-cemi_property .cemi-single-hero-panel,
  body.single-opalestate_property .cemi-single-hero-panel{
    align-self:center!important;
    padding:24px!important;
    gap:15px!important;
  }
}

/* Tablet: compactar para que no se sienta recortado */
@media (min-width:721px) and (max-width:1180px){
  body.cemi-ui-single-property .cemi-single-hero-specs,
  body.single-cemi_property .cemi-single-hero-specs,
  body.single-opalestate_property .cemi-single-hero-specs{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
    max-width:none!important;
  }
  body.cemi-ui-single-property .cemi-single-hero-specs span,
  body.single-cemi_property .cemi-single-hero-specs span,
  body.single-opalestate_property .cemi-single-hero-specs span{
    min-height:58px!important;
    padding:10px 11px!important;
    border-radius:14px!important;
  }
}

/* Móvil: permitir 3 columnas cuando quepan; si hay más, baja a segunda línea sin romper */
@media (max-width:720px){
  body.cemi-ui-single-property .cemi-single-hero-specs,
  body.single-cemi_property .cemi-single-hero-specs,
  body.single-opalestate_property .cemi-single-hero-specs{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    max-width:none!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-specs span,
  body.single-cemi_property .cemi-single-hero-specs span,
  body.single-opalestate_property .cemi-single-hero-specs span{
    min-height:54px!important;
    padding:8px 8px!important;
    border-radius:13px!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-specs strong,
  body.single-cemi_property .cemi-single-hero-specs strong,
  body.single-opalestate_property .cemi-single-hero-specs strong{
    font-size:clamp(15px,4.7vw,20px)!important;
    line-height:1!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-specs small,
  body.single-cemi_property .cemi-single-hero-specs small,
  body.single-opalestate_property .cemi-single-hero-specs small{
    font-size:8.4px!important;
    line-height:1.05!important;
    letter-spacing:.045em!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-panel,
  body.single-cemi_property .cemi-single-hero-panel,
  body.single-opalestate_property .cemi-single-hero-panel{
    gap:12px!important;
    padding:14px!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-payments,
  body.single-cemi_property .cemi-single-hero-payments,
  body.single-opalestate_property .cemi-single-hero-payments{
    padding:12px!important;
    border-radius:17px!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-pay-pills span,
  body.single-cemi_property .cemi-single-hero-pay-pills span,
  body.single-opalestate_property .cemi-single-hero-pay-pills span{
    font-size:10px!important;
    padding:6px 8px!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-actions,
  body.single-cemi_property .cemi-single-hero-actions,
  body.single-opalestate_property .cemi-single-hero-actions{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }

  body.cemi-ui-single-property .cemi-single-hero-actions a,
  body.single-cemi_property .cemi-single-hero-actions a,
  body.single-opalestate_property .cemi-single-hero-actions a{
    min-height:36px!important;
    border-radius:12px!important;
    font-size:10.5px!important;
    padding:0 6px!important;
  }
}

@media (max-width:360px){
  body.cemi-ui-single-property .cemi-single-hero-specs,
  body.single-cemi_property .cemi-single-hero-specs,
  body.single-opalestate_property .cemi-single-hero-specs{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
