/* CEMI Core v1.2.78 — single hero container fix
   Enfoque: el problema no era solo la imagen, era el marco/contenedor del hero.
   Este archivo carga al final para neutralizar límites heredados del theme y capas previas. */

body.cemi-ui-single-property.single-cemi_property,
body.cemi-ui-single-property.single-opalestate_property{
  overflow-x:hidden;
}

body.cemi-ui-single-property .cemi-single-property{
  width:100%;
  max-width:none!important;
  overflow-x:hidden;
}

/* Hero realmente full bleed, sin depender del contenedor del theme */
body.cemi-ui-single-property .cemi-single-property > .cemi-single-hero,
body.cemi-ui-single-property .cemi-single-hero{
  position:relative!important;
  left:50%!important;
  right:50%!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:-50vw!important;
  margin-right:-50vw!important;
  min-height:clamp(560px,70vh,780px)!important;
  display:flex!important;
  align-items:stretch!important;
  overflow:hidden!important;
  border-radius:0!important;
  background:#0b0f18!important;
}

body.cemi-ui-single-property .cemi-single-hero::before{display:none!important;}

body.cemi-ui-single-property .cemi-single-hero-bg{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  opacity:.84!important;
  z-index:0!important;
  background:#0b0f18!important;
}

body.cemi-ui-single-property .cemi-single-hero-overlay{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  background:
    linear-gradient(90deg,rgba(8,11,18,.96) 0%,rgba(8,11,18,.82) 34%,rgba(8,11,18,.32) 67%,rgba(8,11,18,.58) 100%),
    linear-gradient(180deg,rgba(8,11,18,.10) 0%,rgba(8,11,18,.84) 100%)!important;
}

/* Este era el límite visual: el inner/panel quedaban como rectángulo centrado.
   Se amplía el grid y se controla solo el aire lateral. */
body.cemi-ui-single-property .cemi-single-hero-inner{
  position:relative!important;
  z-index:2!important;
  width:min(100vw - clamp(28px,5vw,110px), 1880px)!important;
  max-width:none!important;
  min-height:inherit!important;
  margin:0 auto!important;
  padding:clamp(104px,12vh,156px) 0 clamp(36px,5vw,74px)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,460px)!important;
  gap:clamp(24px,4vw,70px)!important;
  align-items:end!important;
}

body.cemi-ui-single-property .cemi-single-hero-copy{
  min-width:0!important;
  max-width:none!important;
  padding:0!important;
}

body.cemi-ui-single-property .cemi-single-hero h1{
  max-width:min(980px,58vw)!important;
  font-size:clamp(40px,4.7vw,78px)!important;
  line-height:.96!important;
  letter-spacing:-.055em!important;
}

body.cemi-ui-single-property .cemi-single-hero-location{
  max-width:min(900px,60vw)!important;
}

body.cemi-ui-single-property .cemi-single-hero-specs{
  width:min(100%,940px)!important;
  max-width:940px!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(120px,1fr))!important;
  gap:10px!important;
}

body.cemi-ui-single-property .cemi-single-hero-specs span{
  min-width:0!important;
  padding:13px 14px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.11)!important;
  border:1px solid rgba(255,255,255,.16)!important;
}

body.cemi-ui-single-property .cemi-single-hero-panel{
  width:100%!important;
  max-width:460px!important;
  align-self:end!important;
  border-radius:28px!important;
  background:rgba(16,23,34,.76)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 28px 84px rgba(0,0,0,.34)!important;
}

/* El hero ya no debe ofrecer comparar/guardar; esas acciones viven fuera del encabezado. */
body.cemi-ui-single-property .cemi-single-hero .cemi-compare-btn,
body.cemi-ui-single-property .cemi-single-hero .cemi-fav-btn,
body.cemi-ui-single-property .cemi-single-hero .cemi-favorite-btn,
body.cemi-ui-single-property .cemi-single-hero [class*="fav"]{
  display:none!important;
}

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

body.cemi-ui-single-property .cemi-single-hero-actions a{
  min-height:40px!important;
}

@media (min-width:1600px){
  body.cemi-ui-single-property .cemi-single-hero-inner{
    width:min(100vw - 96px, 1880px)!important;
    grid-template-columns:minmax(0,1fr) minmax(390px,480px)!important;
  }
  body.cemi-ui-single-property .cemi-single-hero-specs{
    grid-template-columns:repeat(4,minmax(135px,1fr))!important;
  }
}

@media (min-width:1181px) and (max-width:1390px){
  body.cemi-ui-single-property .cemi-single-hero-inner{
    width:min(100vw - 56px, 1320px)!important;
    grid-template-columns:minmax(0,1fr) minmax(330px,400px)!important;
    gap:28px!important;
  }
  body.cemi-ui-single-property .cemi-single-hero h1{
    max-width:720px!important;
    font-size:clamp(38px,4.35vw,62px)!important;
  }
  body.cemi-ui-single-property .cemi-single-hero-specs{
    grid-template-columns:repeat(4,minmax(105px,1fr))!important;
  }
}

@media (max-width:1180px){
  body.cemi-ui-single-property .cemi-single-property > .cemi-single-hero,
  body.cemi-ui-single-property .cemi-single-hero{
    min-height:auto!important;
    display:block!important;
  }
  body.cemi-ui-single-property .cemi-single-hero-bg{
    object-fit:cover!important;
    opacity:.58!important;
  }
  body.cemi-ui-single-property .cemi-single-hero-overlay{
    background:linear-gradient(180deg,rgba(8,11,18,.78),rgba(8,11,18,.96))!important;
  }
  body.cemi-ui-single-property .cemi-single-hero-inner{
    width:calc(100vw - 32px)!important;
    min-height:auto!important;
    padding:96px 0 26px!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    align-items:start!important;
  }
  body.cemi-ui-single-property .cemi-single-hero h1,
  body.cemi-ui-single-property .cemi-single-hero-location{
    max-width:none!important;
  }
  body.cemi-ui-single-property .cemi-single-hero-panel{
    max-width:none!important;
  }
  body.cemi-ui-single-property .cemi-single-hero-specs{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    max-width:none!important;
  }
}

@media (max-width:720px){
  body.cemi-ui-single-property .cemi-single-hero-inner{
    width:calc(100vw - 28px)!important;
    padding:80px 0 18px!important;
    gap:14px!important;
  }
  body.cemi-ui-single-property .cemi-single-hero h1{
    font-size:clamp(30px,10vw,42px)!important;
    line-height:1!important;
    letter-spacing:-.045em!important;
  }
  body.cemi-ui-single-property .cemi-single-hero-location{
    font-size:13px!important;
    margin-top:10px!important;
  }
  body.cemi-ui-single-property .cemi-single-hero-specs{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.cemi-ui-single-property .cemi-single-hero-specs span{
    padding:10px!important;
    border-radius:14px!important;
  }
  body.cemi-ui-single-property .cemi-single-hero-panel{
    padding:14px!important;
    border-radius:20px!important;
  }
  body.cemi-ui-single-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{
    min-height:34px!important;
    font-size:11px!important;
  }
}
