/* === Grid/Karten-Layout in Immobilienübersicht =============================================== */
.oo-listobject {
	width: 100%!important;
}
.oo-listtitle {
	height: 120px!important;
}
button.onoffice.favorize {
	display: none!important;
}
.oo-listframe {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}
@media (max-width: 1100px){ .oo-listframe{ grid-template-columns: repeat(2,1fr);} }
@media (max-width: 640px){ .oo-listframe{ grid-template-columns: 1fr;} }

/* eine Karte */
.oo-listobject .oo-listobjectwrap{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:16px;
  box-shadow:0 10px 30px rgba(0,0,0,.06);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  height:100%;
}

/* nur das erste Bild zeigen (weitere Bilder sind vom Plugin oft für Slider vorgesehen) */
.oo-listobject .oo-listimage:not(:first-of-type){ display:none !important; }

/* Bildbereich */
.oo-listobject .oo-listimage{
  display:block;
  position:relative;
  aspect-ratio: 16/10;
  overflow:hidden;
}
.oo-listobject .oo-responsive-image{
  width:100%; height:100%; object-fit:cover; display:block;
}

/* Infobereich */
.oo-listobject .oo-listinfo{ padding:18px 18px 0; }
.oo-listobject .oo-listtitle{
  font-size:1.125rem; line-height:1.25; font-weight:700; margin:0 0 10px;
}

/* die alte "Tabelle" hübsch als Chips */
.oo-chips{
  display:flex; flex-wrap:wrap; gap:8px; margin:0 0 14px;
}
.oo-chip{
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border-radius:999px; background:#eef2f5; font-size:.87rem;
}
.oo-chip .oo-chip-label{ opacity:.7; }

/* Preis hervorgehoben wie im Screenshot */
.oo-price{
  font-weight:700; font-size:1.1rem; margin:2px 18px 14px;
}

/* Footer mit Buttons */
.oo-detailslink{ margin-top:auto; padding:0 18px 18px; }

.oo-details-btn{
  display:block; width:100%;
  border-radius:12px; padding:12px 16px; text-align:center;
  background: var(--onoffice-primary, #0a6e7a); color:#fff;
  transition:transform .08s ease, opacity .2s ease;
}
.oo-details-btn:hover{ opacity:.9; transform: translateY(-1px); }

/* Favoriten-Button dezent sekundär */
button.onoffice.favorize{
  width:100%; margin-top:10px; padding:10px 16px;
  background:transparent; color:#334155;
  border:1px solid #cbd5e1; border-radius:12px;
}

/* Kleinkram */
.oo-estate-map:empty{ display:none; }             /* leere Kartenzeile ausblenden */
.oo-estate-sort .col-lg-12{ display:none; }       /* leere Sortierzeile entfernen */
