:root {
  --listing-card-ink: #182235;
  --listing-card-muted: #64748b;
  --listing-card-line: #dbe3ed;
  --listing-card-orange: #cf430a;
}

body .listing-card-standard {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  height: 100%;
  border: 1px solid var(--listing-card-line) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(15, 35, 59, .09) !important;
  transition: transform .24s ease, box-shadow .24s ease;
}

body .listing-card-standard:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 42px rgba(15, 35, 59, .16) !important;
}

body .listing-card-standard > a:first-child {
  display: flex;
  flex: 1 0 auto;
  flex-direction: column;
  color: inherit !important;
  text-decoration: none !important;
}

body .listing-card-standard .card-img-top,
body .listing-card-standard .card-img-proyek-baru {
  display: block;
  width: 100%;
  height: auto !important;
  min-height: 0;
  max-height: none;
  aspect-ratio: 4 / 3;
  border-radius: 0 !important;
  object-fit: cover;
  transition: transform .4s ease;
}

body .listing-card-standard:hover .card-img-top,
body .listing-card-standard:hover .card-img-proyek-baru {
  transform: scale(1.025);
}

body .listing-card-standard .card-body,
body .listing-card-standard .card-body-properti,
body .listing-card-standard .card-body-proyek-baru {
  flex: 1 0 auto;
  padding: 1.2rem 1.25rem .95rem !important;
  background: #fff;
}

body .listing-card-standard .info-price-main,
body .listing-card-standard .harga-proyek-baru {
  margin-bottom: .2rem;
  color: var(--listing-card-ink) !important;
  font-size: 1.1rem;
  font-weight: 800 !important;
}

body .listing-card-standard .info-published-since,
body .listing-card-standard .lokasi-proyek-baru {
  color: var(--listing-card-muted) !important;
  font-size: .78rem !important;
}

body .listing-card-standard .info-property,
body .listing-card-standard .nama-proyek-baru {
  color: var(--listing-card-ink) !important;
  font-size: .96rem;
  font-weight: 800;
  line-height: 1.45 !important;
}

body .listing-card-standard .container-facility {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .5rem;
  margin-top: 1rem !important;
}

body .listing-card-standard .container-facility > div {
  margin: 0 !important;
}

body .listing-card-standard .facility-text {
  margin: 0;
  color: var(--listing-card-ink);
  font-size: .76rem;
  white-space: nowrap;
}

body .listing-card-standard .card-footer {
  padding: 0 1.25rem 1rem !important;
  margin-top: auto;
  border: 0 !important;
  background: #fff !important;
}

body .listing-card-standard .horizontal-separator {
  height: 1px;
  margin: 0 0 .95rem !important;
  background: var(--listing-card-line);
  border: 0 !important;
}

body .listing-card-standard .wrapper-single-agent-container,
body .listing-card-standard .link-property-secondary {
  display: block;
  width: 100%;
  color: inherit !important;
  text-decoration: none !important;
}

body .listing-card-standard .wrapper-agent {
  display: grid !important;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: .7rem;
  align-items: center !important;
}

body .listing-card-standard .img-agent-photo {
  width: 46px !important;
  height: 46px !important;
  border-radius: 50%;
  object-fit: cover;
}

body .listing-card-standard .title-agent-name {
  margin: 0 0 .2rem !important;
  color: var(--listing-card-ink);
  font-size: .86rem !important;
}

body .listing-card-standard .title-agent-kantor,
body .listing-card-standard .title-agent-lokasi {
  color: var(--listing-card-muted) !important;
  font-size: .74rem !important;
}

body .listing-card-standard .listing-card-cta {
  display: flex;
  width: 100%;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  margin-top: .9rem;
  padding: .65rem 1rem;
  color: #fff !important;
  border-radius: 11px;
  background: var(--listing-card-orange);
  font-size: .86rem;
  font-weight: 800;
  text-decoration: none !important;
  transition: background-color .2s ease, transform .2s ease;
}

body .listing-card-standard .listing-card-cta:hover,
body .listing-card-standard .listing-card-cta:focus-visible {
  color: #fff !important;
  background: #a93408;
  transform: translateY(-1px);
}

body .listing-card-standard .card-footer-proyek-baru {
  height: auto !important;
  max-height: none !important;
  padding: 0 1.25rem 1rem !important;
}

body .listing-card-standard .card-footer-proyek-baru .row {
  display: block;
  margin: 0;
}

body .listing-card-standard .card-footer-proyek-baru [class*="col-"] {
  width: 100%;
  max-width: none;
  padding: 0 !important;
}

body .listing-card-standard .card-footer-proyek-baru .btn-dev-partner {
  width: 100%;
  margin-bottom: .75rem;
}

body .listing-card-standard .card-footer-proyek-baru .btn-hubungi-primary {
  display: flex;
  width: 100%;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  color: #fff !important;
  border-radius: 11px;
  background: var(--listing-card-orange) !important;
  font-weight: 800;
}

@media (max-width: 767.98px) {
  body .listing-card-standard .card-img-top,
  body .listing-card-standard .card-img-proyek-baru {
    aspect-ratio: 16 / 10;
  }
}

@media (prefers-reduced-motion: reduce) {
  body .listing-card-standard,
  body .listing-card-standard .card-img-top,
  body .listing-card-standard .card-img-proyek-baru,
  body .listing-card-standard .listing-card-cta {
    transition: none;
  }
}
