/* =========================================
   OpenEstate Immobilienliste – Kartenlayout
   ========================================= */

/* Allgemeine Hintergründe statt grün */
.light_background {
  background-color: #ffffff !important;
}

.dark_background {
  background-color: #f6f6f7 !important;
}

/* Immobilienkarte */
#openestate_listing .openestate_listing_entry {
  display: block;
  padding: 18px;
  margin: 0 0 18px 0;
  border: 1px solid #d9d9d9 !important;
  border-radius: 10px;
  background: #ffffff;
  box-sizing: border-box;
}

/* Zebra-Effekt */
#openestate_listing .openestate_listing_entry:nth-child(odd) {
  background: #ffffff;
}

#openestate_listing .openestate_listing_entry:nth-child(even) {
  background: #f8f8f8;
}

/* Bild oben, nicht floaten */
#openestate_listing .openestate_listing_entry .image {
  float: none !important;
  display: block;
  margin: 0 0 12px 0;
}

/* Bildgröße beibehalten- hochwertiger wirken lassen */
#openestate_listing .openestate_listing_entry .image img {
  width: 220px;
  height: auto;
  display: block;
  border-radius: 8px;
  border: 1px solid #e2e2e2;
}

/* Inhalt */
#openestate_listing .openestate_listing_entry .listing_content {
  display: block;
  min-width: 0;
}

/* Titel */
#openestate_listing .openestate_listing_entry h2 {
  font-size: 20px;
  line-height: 1.35;
  margin: 0 0 10px 0;
  font-weight: 500;
}

#openestate_listing .openestate_listing_entry h2 a {
  color: #4a4a4a;
  text-decoration: none;
}

#openestate_listing .openestate_listing_entry h2 a:hover {
  text-decoration: underline;
}

/* Meta-Infos */
#openestate_listing .openestate_listing_entry .listing_meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 14px;
}

#openestate_listing .openestate_listing_entry .listing_meta span {
  display: inline-block;
  padding: 6px 10px;
  background: #efefef;
  border-radius: 999px;
  font-size: 14px;
  color: #555;
}

/* Fakten / Kennzahlen */
#openestate_listing .openestate_listing_entry .listing_facts {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 16px;
}

#openestate_listing .openestate_listing_entry .listing_facts span {
  display: inline-block;
  padding: 8px 12px;
  background: #f5f5f5;
  border: 1px solid #dddddd;
  border-radius: 8px;
  font-size: 15px;
  color: #333;
}

/* Preis hervorheben - Hauptpreis hervorheben */
#openestate_listing .openestate_listing_entry .listing_facts .price_main {
  font-weight: 700;
  font-size: 20px;
  background: #f5f5f5;
  border: 1px solid #d9d9d9;
  padding: 10px 14px;
  border-radius: 8px;
}

/* Gesamtmiete etwas betonen */
#openestate_listing .openestate_listing_entry .listing_facts .price_total {
  font-weight: 700;
  background: #fafafa;
  border: 1px solid #e5e5e5;
}

/* Links / Buttons */
#openestate_listing .openestate_listing_entry .listing_links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

#openestate_listing .openestate_listing_entry .listing_links a {
  display: inline-block;
  padding: 10px 14px;
  border: 1px solid #bdbdbd;
  border-radius: 8px;
  text-decoration: none;
  color: #444;
  background: #ffffff;
}

#openestate_listing .openestate_listing_entry .listing_links a:hover {
  background: #f3f3f3;
  border-color:#999;
  transform: translateY(-1px);
}


/* Pagination grau */
#openestate_listing_pagination_top ul {
  border-bottom: 1px solid #a0a0a0;
}

#openestate_listing_pagination_bottom ul {
  border-top: 1px solid #a0a0a0;
}

/* Pagination-Links grau */
#openestate_listing_pagination_top ul li a,
#openestate_listing_pagination_bottom ul li a {
  border: 1px solid #a0a0a0 !important;
}

/* Filter grau */
#openestate_listing_menu select,
#openestate_listing_menu input {
  border: 1px solid #a0a0a0 !important;
}

/* Responsive */
@media (max-width: 768px) {
  #openestate_listing .openestate_listing_entry {
    display: block;
    padding: 14px;
  }

/* Bilder hochwertiger wirken lassen*/  
#openestate_listing .openestate_listing_entry .image img {
    width: 100%;
    max-width: 220px;
    height: auto;
  }

  #openestate_listing .openestate_listing_entry h2 {
    font-size: 18px;
    margin-top: 10px;
  }

  #openestate_listing .openestate_listing_entry .listing_meta,
  #openestate_listing .openestate_listing_entry .listing_facts,
  #openestate_listing .openestate_listing_entry .listing_links {
    gap: 8px;
  }
}

/* Provision separat unter den Fakten */
#openestate_listing .listing_provision{
  margin-top:8px;
  font-size:14px;
  color:#555;
  line-height:1.4;
}

/* Karten Hover-Effekt */
#openestate_listing .openestate_listing_entry{
  transition: all 0.2s ease;
}

#openestate_listing .openestate_listing_entry:hover{
  transform: translateY(-3px);
  box-shadow: 0 8px 18px rgba(0,0,0,0.08);
}