.property-card {
  border-radius: 20px !important;
  box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px !important;
  box-sizing: border-box;
  overflow: hidden;
  cursor: pointer;
  padding: 0;
}
.property-card .property-image {
  height: 240px;
  overflow: hidden;
  position: relative;
}
.property-card .card-title {
  margin-top: 0;
}

.property-card img {
  transition: all 0.3s ease-out;
}
.property-card:hover img {
  scale: 1.05;
}
/* Favorite Button */
.favicon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: white;
  border: 1px solid black;
  position: absolute;
  top: 180px;
  right: 15px;
  padding: 0px;
  margin: 0;
  box-sizing: border-box;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  overflow: hidden;
}

.favicon:hover {
  transform: scale(1.1);
  background-color: white;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.favicon:active {
  transform: scale(0.95);
}

.favicon i {
  padding: 3px;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  border-radius: 50%;
  scale: 1.4;
  color: #333;
}

.favicon.active {
  background-color: rgb(250, 250, 247);
  border-color: #ff4d4d;
}

.favicon.active i {
  color: #ff4d4d;
  animation: heartPop 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

@keyframes heartPop {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.4);
  }
  100% {
    transform: scale(1);
  }
}

.favicon:hover i {
  transform: scale(1.1);
}

.favicon.active {
  box-shadow: 0 0 15px rgba(255, 77, 77, 0.2);
}

.property-card .badge {
  background-color: #1e61d9;
  padding: 6px 15px;
  font-size: 0.9rem;
  border-radius: 30px;
}

.property-card .contact-btn {
  font-size: 1rem;
  padding: 10px 20px;
  border-radius: 20px;
  border: 1px solid rgba(57, 57, 60, 0.423);
  color: black;
}
.property-card .card-body h4 {
  margin: 10px 0 !important;
}
.property-card .contact-btn:hover {
  background-color: rgb(240, 238, 238);
}
