/* CEMI Core v1.2.128 — Servicios y Características en stack limpio
   Objetivo: el bloque Servicios no debe estirarse ni montarse; va arriba de Características con espacio real. */

@media (min-width:1180px){
  .cemi-single-property .cemi-property-wrap{
    width:min(1480px, calc(100vw - 72px))!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:56px 0 42px!important;
    display:grid!important;
    grid-template-columns:minmax(640px, 1.55fr) minmax(360px, 440px)!important;
    gap:34px!important;
    align-items:start!important;
    justify-content:center!important;
    background:transparent!important;
  }

  .cemi-single-property .cemi-prop-left,
  .cemi-single-property .cemi-prop-right{
    min-width:0!important;
    max-width:none!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    float:none!important;
    position:relative!important;
    align-self:start!important;
    justify-self:stretch!important;
    display:block!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    background:transparent!important;
    transform:none!important;
  }

  .cemi-single-property .cemi-sticky-panel{
    position:relative!important;
    top:auto!important;
    inset:auto!important;
    transform:none!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:18px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  .cemi-single-property .cemi-card-services:not(.cemi-card-services-land-left),
  .cemi-single-property .cemi-card-property-summary{
    position:relative!important;
    top:auto!important;
    inset:auto!important;
    transform:none!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    align-self:stretch!important;
    justify-self:stretch!important;
    margin:0!important;
    clear:both!important;
    box-sizing:border-box!important;
  }

  .cemi-single-property .cemi-card-services:not(.cemi-card-services-land-left){
    order:1!important;
    padding:24px 24px 26px!important;
  }
  .cemi-single-property .cemi-card-property-summary{
    order:2!important;
    padding:24px 24px 26px!important;
  }

  .cemi-single-property .cemi-card-services:not(.cemi-card-services-land-left) + .cemi-card-property-summary{
    margin-top:0!important;
  }

  .cemi-single-property .cemi-card-services:not(.cemi-card-services-land-left) .cemi-services-grid,
  .cemi-single-property .cemi-card-property-summary .cemi-property-summary-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }

  .cemi-single-property .cemi-card-services:not(.cemi-card-services-land-left) .cemi-service-item,
  .cemi-single-property .cemi-card-property-summary .cemi-property-summary-item{
    min-height:68px!important;
    height:auto!important;
    max-height:none!important;
    padding:14px 15px!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  .cemi-single-property .cemi-card-services:not(.cemi-card-services-land-left) h3,
  .cemi-single-property .cemi-card-property-summary h3{
    margin:0 0 15px!important;
    font-size:clamp(22px,1.45vw,30px)!important;
    line-height:1.04!important;
  }

  .cemi-single-property .cemi-card-services:not(.cemi-card-services-land-left) .cemi-service-item strong,
  .cemi-single-property .cemi-card-property-summary .cemi-property-summary-item strong,
  .cemi-single-property .cemi-card-property-summary .cemi-property-summary-main{
    font-size:clamp(17px,1.05vw,23px)!important;
    line-height:1.05!important;
  }

  /* El contacto solo vive abajo; no debe aparecer ni ocupar espacio en esta columna. */
  .cemi-single-property .cemi-prop-right .cemi-card-contact,
  .cemi-single-property .cemi-sticky-panel > .cemi-card-contact{
    display:none!important;
  }
}

@media (min-width:1500px){
  .cemi-single-property .cemi-property-wrap{
    width:min(1600px, calc(100vw - 96px))!important;
    grid-template-columns:minmax(760px, 1.6fr) minmax(400px, 480px)!important;
    gap:42px!important;
  }
}

@media (max-width:1179px){
  .cemi-single-property .cemi-property-wrap{
    display:flex!important;
    flex-direction:column!important;
    gap:18px!important;
    width:min(1040px, calc(100vw - 28px))!important;
    margin:0 auto!important;
    padding:34px 0 34px!important;
  }
  .cemi-single-property .cemi-prop-right,
  .cemi-single-property .cemi-sticky-panel{
    display:flex!important;
    flex-direction:column!important;
    gap:16px!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    position:relative!important;
  }
  .cemi-single-property .cemi-card-services:not(.cemi-card-services-land-left){order:1!important; margin:0!important; height:auto!important; min-height:0!important;}
  .cemi-single-property .cemi-card-property-summary{order:2!important; margin:0!important; height:auto!important; min-height:0!important;}
}
