/*@font-face {
  font-family: 'ITC Legacy Sans';
  src: url('../fonts/itc-legacy-sans-bold.woff2') format('woff2'),
       url('../fonts/itc-legacy-sans-bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}*/


.paginas-prop #sp-main-body {
    padding: 50px 0;
    max-width: 1300px;
    margin: 0 auto;
}
.paginas-prop #map_canvas {
    display: none !important;
}
.paginas-prop.task-property_details #sp-title {
    display: none;
}


h1, h2, h3, .h1, .h2, .h3 {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700;
}
body {
  font-family: 'Montserrat', sans-serif !important;
}
body .sppb-btn, body .btn {
    font-family: 'Montserrat', sans-serif !important;
}
h1 {
    font-size: 3rem;
}
h4 {
    font-weight: 700;
}
.sp-megamenu-parent > li > a {
    font-family: 'Montserrat', sans-serif !important;
}
/*video home*/
.herofb {
    height: 82vh !important;
}

/*Novedades - articulos en formato blog*/
.article-intro-image img {
    width: 100% !important;
    overflow: hidden !important;
    border-radius: 15px !important;
}

select.form-control:not([multiple]), select.inputbox:not([multiple]), select:not([multiple]) {
    height: calc(2.25rem + 12px);
}

/* OS PROPERTY – OCULTAR BLOQUES DE UBICACIÓN */
#shelllocation, .map-nearby, .nearby, .mapdetails, .nearbys, #togglebtn {
  display: none !important;
}

/* MAPA CLON EN GALERÍA */
#googlemapdiv {
  width: 100% !important;
  height: 520px !important;
}

/* ===============================
   SUMMARY
=============================== */

.revstat-summary-price {
  font-size: 28px;
  font-weight: 600;
  margin-bottom: 6px;
}

.revstat-summary-address .street {
  font-size: 15px;
  font-weight: 500;
}

.revstat-summary-address .location {
  font-size: 14px;
  color: #777;
}

.revstat-col-left hr {
  border: 0;
  border-top: 1px solid #e5e5e5;
  margin: 24px 0;
}

/* ===============================
   ICONOS (HIGHLIGHTS)
=============================== */

.revstat-highlights {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
    margin: 20px 0px 50px;
    text-align: center;
}

.revstat-highlights > div {
  text-align: center;
}

.revstat-highlights img {
  max-width: 50px;
  margin-bottom: 6px;
  justify-self: anchor-center;
  filter: invert(0.5);
}

.revstat-highlights div > div:first-of-type {
  font-size: 18px;
  font-weight: 600;
}

.revstat-highlights div > div:last-of-type {
  font-size: 13px;
  color: #555;
}

/* m² superíndice */
.revstat-highlights sup {
  font-size: 11px;
  vertical-align: super;
}

/* ===============================
   TITULOS DE SECCIÓN
=============================== */

.revstat-col-left h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 20px;
  margin: 30px 0 12px;
}

.revstat-col-left h3 img {
  max-width: 22px;
}

/* ===============================
   DESCRIPCIÓN
=============================== */

.revstat-col-left p {
  font-size: 14px;
  line-height: 1.6;
  color: #444;
  margin-bottom: 18px;
}

/* ===============================
   LISTAS CON TILDE (✓)
=============================== */

.revstat-check {
  list-style: none;
  padding: 0;
  margin: 0 0 24px;
}

.revstat-check li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 8px;
  font-size: 14px;
}

.revstat-check li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #000;
  font-weight: 600;
}

/* 2 columnas */
.revstat-check.two-cols {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6px 24px;
}

/* ===============================
   FORMULARIO (derecha)
=============================== */

.revstat-col-right {
  position: sticky;
  top: 120px;
}

.requestmoredetails {
  border: 1px solid #eee;
  padding: 20px;
  border-radius: 4px;
}

/* ===============================
   RESPONSIVE
=============================== */

@media (max-width: 1024px) {
  .revstat-highlights {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 768px) {
  .revstat-detail-grid {
    grid-template-columns: 1fr;
  }

  .revstat-col-right {
    position: static;
    margin-top: 30px;
  }

  .revstat-highlights {
    grid-template-columns: repeat(2, 1fr);
  }

  .revstat-check.two-cols {
    grid-template-columns: 1fr;
  }
}
/* =========================================================
   VARIABLES BÁSICAS
========================================================= */
:root {
  --revstat-text: #222;
  --revstat-muted: #666;
  --revstat-border: #e5e5e5;
  --revstat-accent: #000;
}

/* =========================================================
   SUMMARY
========================================================= */
.revstat-summary {
  margin-bottom: 20px;
}

.revstat-summary-price {
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 6px;
}

.fb-property-image,
.fb-card-image,
.property-image,
figure,
.fb-card-media,
.revstat-property-hero__media {
  position: relative;
}

.fb-property-badges{
  position:absolute;
  top:12px;
  left:12px;
  z-index:6;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  max-width:calc(100% - 24px);
}

.fb-property-badge{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:6px;
  font-size:12px;
  line-height:1;
  color:#fff;
  white-space:nowrap;
}

.fb-property-badge--status{
  background:#f97316;
  font-weight:700;
}

.fb-property-badge--temporary{
  background:#6b7280;
  font-weight:500;
}

.fb-property-badge--type{
  background:#f2f3f2;
  color:#1f2937;
  font-weight:600;
}

.revstat-summary-address .street {
  font-weight: 600;
}

.revstat-summary-address .location {
  color: var(--revstat-muted);
  font-size: 14px;
}

/* =========================================================
   SEPARADORES
========================================================= */
.revstat-separator {
  height: 1px;
  background: var(--revstat-border);
  margin: 24px 0;
}

/* =========================================================
   ICONOS / HIGHLIGHTS
========================================================= */
.revstat-highlights {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px 16px;
}

.revstat-highlight {
  text-align: center;
  font-size: 14px;
}

.revstat-highlight img {
  max-width: 35px;
  margin-bottom: 6px;
}

.revstat-highlight .value {
  font-weight: 600;
}

.revstat-highlight .label {
  font-size: 12px;
  color: var(--revstat-muted);
}

/* m² como superíndice global */
.revstat-highlight sup,
.revstat-section sup {
  font-size: 10px;
  vertical-align: super;
}

/* =========================================================
   DESCRIPCIÓN (SOLO LARGA)
========================================================= */
.revstat-description {
  font-size: 15px;
  line-height: 1.6;
  color: var(--revstat-text);
}

/* ocultamos descripción corta si existe */
.revstat-description .short,
.descriptionTop .short {
  display: none;
}

/* =========================================================
   SECCIONES (Características / Superficies / Legal)
========================================================= */
.revstat-section {
  margin-top: 30px;
}

.revstat-section-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 16px;
}

.revstat-section-title img {
  max-width: 24px;
}

/* =========================================================
   LISTAS CON TILDE – 2 COLUMNAS
========================================================= */
.revstat-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px 30px;
}

.revstat-list li {
  list-style: none;
  position: relative;
  padding-left: 22px;
  font-size: 14px;
}

.revstat-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--revstat-accent);
  font-weight: 700;
}

/* =========================================================
   RESPONSIVE
========================================================= */
@media (max-width: 900px) {
  .revstat-highlights {
    grid-template-columns: repeat(2, 1fr);
  }

  .revstat-list {
    grid-template-columns: 1fr;
  }
}
/* Reset listas */
.revstat-section ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Ítems */
.revstat-section li {
  position: relative;
  padding-left: 26px;
  margin-bottom: 10px;
}

/* ✓ único */
.revstat-section li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #111;
  font-weight: 600;
}
/* ===============================
   TITULOS CON ICONO
=============================== */
.revstat-title-marginsup{
  margin-top: 40px;
}
.revstat-title {
  display: flex !important;
  align-items: center; /* icono y texto centrados vertical */
  gap: 10px;           /* espacio entre icono y texto */
  margin-bottom: 15px;
}

.revstat-title-icon {
  width: 30px;         /* un poco más grande */
  height: auto;
  flex-shrink: 0;      /* que no se achique */
  filter: invert(0.5);
}

/*propiedades relacionadas*/
.osproperty-related .property-item {
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
}

.osproperty-related img {
  width: 100%;
  height: 220px;
  object-fit: cover;
}

.osproperty-related .property-title {
  font-size: 18px;
  font-weight: 700;
  color: #ff6a00;
}

.osproperty-related .btn {
  background: #ff6a00;
  border-radius: 30px;
  padding: 6px 18px;
  color: #fff;
}

/* ocultar subtítulo interno */
.shellrelatedproperties .block_caption {
  display: none !important;
}

/* =========================================================
   PROPIEDADES RELACIONADAS – CARDS
========================================================= */
.shellrelatedproperties h2 {
  border-top: 1px solid #d3d7d9 !important;
  border-bottom: 0px solid #d3d7d9 !important;
}

.revstat-related > .row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
  align-items: start;
}

.revstat-related .col-md-3 {
  width: 100% !important;
}

.revstat-related .col-md-5,
.revstat-related .col-md-7 {
  width: 100%;
}

.revstat-related .img-thumbnail {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 15px;
  margin-bottom: 10px;
  padding: 0;
  background-color: #fff0;
  border: 0px solid #fff0;
}
/* tarjeta */
.revstat-related .relate_property {
  padding: 0;
}

.revstat-related strong {
  display: block;
  font-size: 17px;
  font-weight: 700;
  margin-bottom: 4px;
}

.revstat-related .property_type_name {
  display: block;
  font-size: 13px;
  color: #777;
  margin-bottom: 6px;
}

.revstat-related .market_price {
  display: block;
  font-size: 18px;
  font-weight: 700;
  color: #ff6a00;
  margin-bottom: 6px;
}

.revstat-related .property_address {
  font-size: 13px;
  color: #666;
  line-height: 1.4;
}

/* responsive */
@media (max-width: 992px) {
  .revstat-related > .row {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 576px) {
  .revstat-related > .row {
    grid-template-columns: 1fr;
  }
}
/* =========================================================
   FORZAR CARD VERTICAL (imagen arriba, texto abajo)
========================================================= */

/* cada card */
.revstat-related .col-md-3 > .row {
  display: flex;
  flex-direction: column;
  margin: 0;
  gap: 0px;
}

/* imagen arriba */
.revstat-related .col-md-5 {
  order: 1;
  padding: 0;
}

/* texto abajo */
.revstat-related .col-md-7 {
  order: 2;
  padding: 0;
}


/* ===============================
   OS PROPERTY – SIDEBAR FINAL
   =============================== */

.osp-listing-layout{
  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 24px;
  align-items: flex-start;
}

.osp-sidebar{
  position: sticky;
  top: 110px;
}

/* Forzar grilla legacy a una columna */
.osp-sidebar .row,
.osp-sidebar [class*="col-"]{
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
}

/* Acciones abajo */
.osp-filter-actions{
  margin-top: 24px;
  display: flex;
  gap: 12px;
}

.osp-filter-actions input,
.osp-filter-actions a{
  flex: 1;
}

/* Ocultar Search Tool residual */
#btn_search_tool{
  display: none !important;
}

/* Mobile */
@media (max-width: 991px){
  .osp-listing-layout{
    grid-template-columns: 1fr;
  }

  .osp-sidebar{
    position: static;
  }
}
.paginas-prop select:not([multiple]) {
    width: 100% ! IMPORTANT;
}
.paginas-prop .btn-group.pull-right {
    display: block;
}
.paginas-prop input.btn.btn-info {
    background-color: #fff0;
    border: solid 1px #e5e7eb;
    width: 100%;
    margin: 20px 0px;
    font-size: 14px;
    border-radius: 5px;
}
.paginas-prop .btn.btn-warning.filterResetLink {
    background-color: #fff0;
    color: #fdc7a2 !important;
    width: 100%;
    border: solid 1px #fdc7a2 !important;
    border-radius: 5px;
    font-size: 14px;
}

.paginas-prop aside.osp-sidebar {
    border: solid 1px #e5e7eb;
    padding: 20px;
    border-radius: 5px;
    margin-right: 20px;
}

.paginas-prop aside.osp-sidebar .osp-sidebar-block {
  margin-bottom: 18px;
}

/* ==================================================
   OSP SIDEBAR – NORMALIZACIÓN TOTAL DE LAYOUT
   ================================================== */

/* Sidebar = una sola columna real */
.paginas-prop aside.osp-sidebar * {
  box-sizing: border-box;
}

/* Anular Bootstrap grid DENTRO del sidebar */
.paginas-prop aside.osp-sidebar .row {
  display: block !important;
  margin: 0 !important;
}

.paginas-prop aside.osp-sidebar [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 0 12px 0 !important;
}

/* Anular floats */
.paginas-prop aside.osp-sidebar .pull-left,
.paginas-prop aside.osp-sidebar .pull-right {
  float: none !important;
}

/* ==================================================
   TÍTULOS DE SECCIÓN
   ================================================== */

/* ==================================================
   SELECTS – todos iguales
   ================================================== */

/* ==================================================
   PRECIO – slider bien contenido
   ================================================== */

.paginas-prop aside.osp-sidebar #price_filter {
  margin: 0 0 16px 0 !important;
}

.paginas-prop aside.osp-sidebar #price_filter .ui-slider {
  margin: 10px 0;
}

/* Ocultar labels viejos "Precio / Categoría" */
.paginas-prop aside.osp-sidebar label.form-control-label {
  display: none !important;
}

/* ==================================================
   CATEGORÍAS – una sola columna limpia
   ================================================== */

.paginas-prop aside.osp-sidebar .filterformlabel {
  display: block;
  margin-bottom: 6px;
}

/* ==================================================
   BOTONES
   ================================================== */

.paginas-prop aside.osp-sidebar input.btn,
.paginas-prop aside.osp-sidebar a.btn {
  width: 100%;
  margin-top: 10px;
}



/* ===============================
   FIX: Ubicación en 1 columna
   =============================== */

/* sacar floats legacy de los selects de ubicación */
.paginas-prop .osp-sidebar .btn-group.pull-left,
.paginas-prop .osp-sidebar #div_state,
.paginas-prop .osp-sidebar #city_div{
  float: none !important;
  display: block !important;
  width: 100% !important;
  margin: 0 0 10px 0 !important;
}

/* selects al 100% dentro del sidebar */
.paginas-prop .osp-sidebar select{
  width: 100% !important;
  max-width: 100% !important;
}

/* el label "Filtrar por ubicacion:" que te queda raro, forzarlo full width */
.paginas-prop .osp-sidebar label.col-md-3.form-control-label{
  width: 100% !important;
  float: none !important;
  display: block !important;
  margin: 12px 0 8px 0 !important;
}

/* ===============================
   FIX: Precio Min/Max en 1 línea
   =============================== */
.paginas-prop .osp-sidebar #price_filter .row{
  display: flex !important;
  gap: 12px !important;
}

.paginas-prop .osp-sidebar #price_filter .row > [class*="col-"]{
  flex: 1 1 0 !important;
  width: auto !important;
  float: none !important;
}

/* =========================================================
   OSP – LISTADO PROPIEDADES (LIMPIO + PRECIO EN BADGE)
   Base: lo que ya usás, pero bien armado y sin efectos raros
   ========================================================= */

.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item,
.fb-home-properties .property_item{
  position: relative;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
}

/* Imagen */
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item figure,
.fb-home-properties .property_item figure{
  position: relative;
  margin: 0;
  overflow: hidden;
}

.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item figure img,
.fb-home-properties .property_item figure img{
  display: block;
  width: 100%;
  height: auto;
}

/* Ocultar la etiqueta nativa de tipo de operacion; las fajas comerciales
   Reservado/Vendido/Alquilado se muestran con .fb-commercial-status. */
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item:not(.has-status-label) h6.snipe,
.fb-home-properties .property_item:not(.has-status-label) h6.snipe,
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item h6.snipe:not(.is-status-label),
.fb-home-properties .property_item h6.snipe:not(.is-status-label){
  display: none !important;
}

.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item.has-status-label h6.snipe.is-status-label,
.fb-home-properties .property_item.has-status-label h6.snipe.is-status-label{
  display: block !important;
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 7;
  width: auto;
  margin: 0;
  padding: 0;
  line-height: 1;
}

/* Badge de CATEGORÍA (solo si existe data-category en el item o figure)
   - Hoy no existe, pero lo dejamos listo para cuando lo agreguemos con JS */
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item[data-category] figure::before,
.fb-home-properties .property_item[data-category] figure::before{
  content: attr(data-category);
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 5;
  background: rgba(17,24,39,0.92);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  padding: 6px 10px;
  border-radius: 6px;
  line-height: 1;
}

/* Badge de PRECIO (reusar el price existente, sin duplicarlo) */
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item .propertypricevalue,
.fb-home-properties .property_item .propertypricevalue{
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 6;
  margin: 0 !important;
}
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item .propertypricevalue ,
.fb-home-properties .property_item .propertypricevalue {
    background: #fff0 !important;
}
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item .propertypricevalue .listing-price,
.fb-home-properties .property_item .propertypricevalue .listing-price{
  display: inline-block;
  background: rgb(232 102 24);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  padding: 7px 10px;
  border-radius: 6px;
  line-height: 1;
  white-space: nowrap;
}

/* Info */
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item .grid-listing-info,
.fb-home-properties .property_item .grid-listing-info{
  text-align: left;
  padding: 16px 16px 18px;
}

/* Título */
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item h5.marB0,
.fb-home-properties .property_item h5.marB0{
  padding: 0 !important;
  margin: 0 0 8px !important;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
}

.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item h5.marB0 a,
.fb-home-properties .property_item h5.marB0 a{
  color: #111827;
  text-decoration: none;
}


/* Ubicación con ícono */
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item .locationaddress,
.fb-home-properties .property_item .locationaddress{
  margin: 0;
  font-size: 13px;
  color: #6b7280;
  line-height: 1.35;
  display: flex;
  gap: 6px;
  align-items: flex-start;
}

.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item .locationaddress::before,
.fb-home-properties .property_item .locationaddress::before{
  content: "";
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  margin-top: 2px;
  background: url("https://mikmac.ar/fb-inmobiliaria/images/iconos/ubicacion.svg") no-repeat center / contain;
  opacity: .9;
}

/* (Opcional) limitar a 2 líneas la ubicación */
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item .locationaddress,
.fb-home-properties .property_item .locationaddress{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
/* Ocultar bloques viejos */
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item .propinfo,
.fb-home-properties .property_item .propinfo,
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item .brokerage,
.fb-home-properties .property_item .brokerage{
  display: none !important;
}

/* Separador sutil bajo ubicación (queda prolijo aunque no haya descripción) 
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item .grid-listing-info::after,
.fb-home-properties .property_item .grid-listing-info::after{
  content: "";
  display: block;
  height: 1px;
  background: #eef2f7;
  margin-top: 14px;
}*/

/* =========================
   CARD ALTURA UNIFORME
========================= */

.com_osproperty .property_item ,
.fb-home-properties .property_item {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.com_osproperty .property_item img ,
.fb-home-properties .property_item img {
    overflow: hidden;
    transition: ease .3s !important;
}
.com_osproperty .property_item:hover img ,
.fb-home-properties .property_item:hover img {
    transform: scale(1.2) !important;
}
.com_osproperty .property_item:hover h5 a ,
.fb-home-properties .property_item:hover h5 a {
  color: #e96c21 !important;
}

.com_osproperty .property_item .grid-listing-info ,
.fb-home-properties .property_item .grid-listing-info {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.com_osproperty .property_item .grid-listing-info header ,
.fb-home-properties .property_item .grid-listing-info header {
  min-height: 60px;
}

.com_osproperty .property_item .propertypricevalue ,
.fb-home-properties .property_item .propertypricevalue {
  margin-top: auto;
}
/* =========================
   CLAMP TÍTULO 2 LÍNEAS
========================= */

.com_osproperty .property_item h5 a ,
.fb-home-properties .property_item h5 a {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.3;
  height: calc(1.3em * 2);
  margin-bottom: 10px;
}

/* Ocultar bloques viejos */
.com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item .propinfo,
.fb-home-properties .property_item .propinfo, .com_osproperty.com-osproperty.view-ltype.layout-default.task-none .toplisting .property_item .brokerage ,
.fb-home-properties .property_item .brokerage {
  display: none !important;
}

/* direc */
.com_osproperty .property_item .locationaddress ,
.fb-home-properties .property_item .locationaddress {
  display: flex !important;
  align-items: flex-start;
  gap: 6px;
  height: calc(1.1rem * 3) !important;
}
.com_osproperty .property_item .locationaddress::before ,
.fb-home-properties .property_item .locationaddress::before {
  content: "";
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  margin-top: 3px;
  background: url('/fb-inmobiliaria/images/iconos/ubicacion.svg') no-repeat center;
  background-size: contain;
  opacity: 1;
  filter: invert(0.5);
}
.toplisting .col-md-12 {
    margin-bottom: 30px !important;
}

/*articulos blog*/
.boton-art {
    background-color: #e2d8d6 !important;
    color: #505f66 !important;
    box-shadow: -2px -2px #505f66 !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    padding: 9px 30px;
    border-radius: 15px 0px !important;
}
.view-article .article-details {
    padding-top: 0px;
}
.view-article .article-details .article-header h1 {
    text-align: -webkit-center;
    font-size: 55px;
    margin-bottom: 50px;
}


.relate_property .property_description .price .market_price {
    color: #000 !important;
}

/* =========================================================
   FIX — WhatsApp flotante vs scroll to top
   Evita solapamiento con el ascensor de Helix
========================================================= */

.whatsappchat_130 {
  bottom: 95px !important;
}

.whatsappchat_130 .help_btn_130 {
  transform: scale(0.85);
  transform-origin: bottom right;
}

.whatsappchat_130 .help_btn_130 img {
  width: 64px !important;
  height: auto !important;
}

/* ========================================
   HOME - MODULOS OS PROPERTY RANDOM
   Destacadas / Últimos Ingresos
======================================== */

.osp-random-properties-wrapper .osp-random-grid{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:28px !important;
}

.osp-random-properties-wrapper .osp-random-card-inner{
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  background:#fff !important;
  border:1px solid #d9dee3 !important;
  border-radius:8px !important;
  overflow:hidden !important;
  box-shadow:none !important;
  transition:box-shadow .22s ease !important;
}

.osp-random-properties-wrapper .osp-random-card-inner:hover{
  transform:none !important;
  box-shadow:none !important;
}

.osp-random-properties-wrapper .osp-random-card-image img{
  width:100% !important;
  height:290px !important;
  object-fit:cover !important;
  display:block !important;
}

.osp-random-properties-wrapper .osp-random-card-content{
  padding:14px 16px 16px !important;
  display:flex !important;
  flex-direction:column !important;
  flex:1 !important;
}

.osp-random-properties-wrapper .osp-random-ref{
  display:none !important;
}

.osp-random-properties-wrapper .osp-random-card-title{
  margin:0 0 8px !important;
  font-size:19px !important;
  line-height:1.28 !important;

  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}

.osp-random-properties-wrapper .osp-random-card-title a{
  color:#f04a18 !important;
  text-decoration:none !important;
}

.osp-random-properties-wrapper .property_price{
  color:#f04a18 !important;
  font-size:20px !important;
  font-weight:700 !important;
}

.osp-random-properties-wrapper .osp-random-card-price{
  margin:0 0 8px !important;
}

.osp-random-properties-wrapper .osp-random-card-address{
  font-size:13px !important;
  line-height:1.35 !important;
  color:#6f7882 !important;
  margin:0 0 10px !important;
  padding-left:20px !important;
  position:relative !important;

  display:-webkit-box !important;
  -webkit-line-clamp:1 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}

.osp-random-properties-wrapper .osp-random-card-address i{
  display:none !important;
}

.osp-random-properties-wrapper .osp-random-card-address::before{
  content:"\f3c5";
  font-family:"Font Awesome 5 Free";
  font-weight:900;
  display:inline-block;
  position:absolute;
  left:0;
  top:1px;
  width:auto;
  height:auto;
  margin-right:6px;
  font-size:14px;
  line-height:1;
  color:#6f7882;
  opacity:1;
  background:none !important;
}

.osp-random-properties-wrapper .osp-random-card-category,
.osp-random-properties-wrapper .osp-random-badges,
.osp-random-properties-wrapper .osp-random-card-description{
  display:none !important;
}

.osp-random-properties-wrapper .osp-random-card-content::after{
  content:"VER DETALLES";
  display:block;
  margin-top:14px;
  background:#4b5563;
  color:#fff;
  text-align:center;
  padding:13px 14px;
  border-radius:7px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
}

/* Responsive */
@media (max-width: 1199px){
  .osp-random-properties-wrapper .osp-random-grid{
    grid-template-columns:repeat(2,1fr) !important;
  }
}

@media (max-width: 767px){
  .osp-random-properties-wrapper .osp-random-grid{
    grid-template-columns:1fr !important;
  }

  .osp-random-properties-wrapper .osp-random-card-image img{
    height:240px !important;
  }
}

/* mod_ospropertyrandom cards in home: align with listing .fb-card */
.osp-random-properties-wrapper .fb-card-media {
  position: relative;
  overflow: hidden;
}

.osp-random-properties-wrapper .fb-card-badges {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 3;
}

.osp-random-properties-wrapper .fb-card-price {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 3;
  margin: 0;
}

.osp-random-properties-wrapper .fb-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  overflow: hidden;
}

.osp-random-properties-wrapper .fb-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 6px 16px 16px;
}

.osp-random-properties-wrapper .fb-card-title {
  margin: 0 0 4px;
  font-size: 15px;
  line-height: 1.3;
  font-weight: 700;
  min-height: 2.6em;
  font-family: 'Montserrat', sans-serif !important;
}

.osp-random-properties-wrapper .fb-card-title a {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  color: #1f2937;
  text-decoration: none;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.3;
  min-height: 2.6em;
  font-family: 'Montserrat', sans-serif !important;
}

.osp-random-properties-wrapper .fb-card-location {
  margin: 0 0 8px;
  color: #6b7280;
  font-size: 12px;
  line-height: 1.4;
}

.osp-random-properties-wrapper .fb-card-location::before {
  content: "\f3c5";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  margin-right: 6px;
  font-size: 14px;
  line-height: 1;
}

.osp-random-properties-wrapper .fb-card-divider {
  height: 1px;
  margin: 0 0 10px;
  background: #e5e7eb;
}

.osp-random-properties-wrapper .fb-card-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: auto;
  min-height: 36px;
  padding: 8px 14px;
  background: #4b5563;
  color: #fff;
  text-decoration: none;
  border-radius: 7px;
  font-weight: 600;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.osp-random-properties-wrapper .fb-card-cta:hover {
  color: #fff;
  text-decoration: none;
}

.fb-home-properties .fb-card-price {
  margin: 0;
}

.osp-random-properties-wrapper .fb-card-category > a {
  background: #fff;
  color: #e86618;
}

.osp-random-properties-wrapper .fb-card-price .property_price {
  background: #ff6a00;
  color: #fff;
}

.osp-random-properties-wrapper .fb-card-category > a {
  background: #fff !important;
  color: #e86618 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  padding: 6px 10px !important;
  border-radius: 6px !important;
  line-height: 1 !important;
  display: inline-block !important;
  text-decoration: none !important;
}

.osp-random-properties-wrapper .fb-card-price .property_price {
  background: #ff6a00 !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 7px 10px !important;
  border-radius: 6px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  display: inline-block !important;
}

.osp-random-properties-wrapper .fb-card-price,
.osp-random-properties-wrapper .fb-card-price .listing-price {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.revstat-related .fb-card-col {
  width: 100% !important;
}

.revstat-related .fb-row,
.revstat-related .fb-col {
  width: 100% !important;
}

.revstat-related {
  width: 100%;
}

.revstat-related > .row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 28px !important;
  align-items: start;
}

.revstat-related .fb-card {
  height: 100%;
}

@media (max-width: 1199px) {
  .revstat-related > .row {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 991px) {
  .revstat-related > .row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575px) {
  .revstat-related > .row {
    grid-template-columns: 1fr !important;
  }
}

.fb-related-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 28px;
  align-items: stretch;
}

.fb-related-grid > .fb-card-col {
  width: 100% !important;
  min-width: 0;
  max-width: none;
  display: block !important;
  flex: none;
}

.fb-related-grid > .fb-card-col > .fb-row {
  width: 100% !important;
  display: block !important;
  flex: none;
  margin: 0;
}

.fb-related-grid > .fb-card-col > .fb-row > .fb-col {
  width: 100% !important;
  display: block !important;
  flex: none;
  margin: 0;
}

.fb-related-grid .fb-card {
  width: 100% !important;
  height: 100%;
}

@media (max-width: 991px) {
  .fb-related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575px) {
  .fb-related-grid {
    grid-template-columns: 1fr !important;
  }
}

/* Related — consistencia de alturas */

.fb-related-grid .fb-card-title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.3em;
  min-height: calc(1.3em * 2);
}

.fb-related-grid .fb-card-location {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.4em;
  min-height: calc(1.4em * 4);
}

.shellrelatedproperties h2 {
  padding-top: 40px;
}
