:root {
  --dh-card-page-bg: #F7F9F8;
  --dh-card-bg: #FFFFFF;
  --dh-card-text: #102033;
  --dh-card-muted: rgba(16, 32, 51, 0.58);
  --dh-card-soft-muted: rgba(16, 32, 51, 0.46);
  --dh-card-border: rgba(16, 32, 51, 0.12);
  --dh-card-top-bg: #FFFFFF;
  --dh-card-title: #102033;
  --dh-card-meta: rgba(16, 32, 51, 0.58);
  --dh-card-label: rgba(16, 32, 51, 0.52);
  --dh-card-price: #00A6AE;
  --dh-card-neutral-btn-bg: #E6ECEC;
  --dh-card-neutral-btn-text: #102033;
  --dh-card-neutral-btn-hover-bg: #D8E1E1;
  --dh-card-whatsapp-bg: #075E54;
  --dh-card-whatsapp-text: #FFFFFF;
  --dh-card-whatsapp-hover-bg: #064C43;
  --dh-card-image-badge-bg: rgba(14, 95, 106, 0.84);
  --dh-card-image-badge-text: #FFFFFF;
  --dh-card-special-bg: #FFB84D;
  --dh-card-special-text: #102033;
  --dh-card-progress-track: rgba(53, 166, 91, 0.16);
  --dh-card-progress-fill: #35A65B;
}

.dh-project-card,
.dh-project-card * { box-shadow: none !important; }

body .listing-tools-wrap .flex-grow-1,
body .listing-tools-wrap .save-search-form-wrap { display: none !important; }

body .listing-tools-wrap { margin-bottom: 16px; }
body .listing-tools-wrap > .d-flex { justify-content: flex-start !important; margin-bottom: 0 !important; }
body .listing-tools-wrap .sort-by { margin-left: 0 !important; }
body .listing-tools-wrap .sort-by .d-flex { gap: 8px; }
body .listing-tools-wrap .sort-by-title { color: var(--dh-card-label); font-size: 12px; font-weight: 760; }

.dh-project-card-wrap {
  display: block !important;
  margin: 0 0 16px !important;
  background: transparent !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

body .listing-view .dh-project-card-wrap.item-listing-wrap,
body .list-view .dh-project-card-wrap.item-listing-wrap,
body .dh-project-card-wrap.item-listing-wrap {
  margin-top: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 16px !important;
  margin-left: 0 !important;
  padding: 0 !important;
}

.dh-project-card {
  width: 100%;
  background: var(--dh-card-bg);
  color: var(--dh-card-text);
  border: 1px solid var(--dh-card-border);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: none !important;
}

.dh-project-card-horizontal {
  display: grid;
  grid-template-columns: clamp(370px, 38%, 390px) minmax(0, 1fr);
  min-height: 292px;
}

.dh-project-card-image {
  position: relative;
  overflow: hidden;
  display: block;
  min-height: 292px;
  background: #102033;
}

.dh-project-card-image-link { display: block; height: 100%; text-decoration: none !important; }
.dh-project-card-track {
  --dh-card-active-slide: 0;
  height: 100%; display: flex;
  transform: translateX(calc(var(--dh-card-active-slide, 0) * -100%));
  transition: transform 0.24s ease; will-change: transform;
}
.dh-project-card-slide { min-width: 100%; height: 100%; margin: 0; position: relative; background: linear-gradient(110deg, rgba(16,32,51,.88), rgba(14,95,106,.34), rgba(16,32,51,.78)); }
.dh-project-card-slide::before { content:""; position:absolute; inset:0; z-index:0; background: linear-gradient(100deg, rgba(255,255,255,.04), rgba(255,255,255,.14), rgba(255,255,255,.04)); opacity:.75; pointer-events:none; }
.dh-project-card-slide img { width: 100%; height: 100%; display: block; object-fit: cover; position:relative; z-index:1; }
.dh-project-card.images-js .dh-project-card-img { opacity:0; transition:opacity .26s ease; }
.dh-project-card.images-js .dh-project-card-img.is-loaded { opacity:1; }
.dh-project-card-slide-placeholder { display:flex; align-items:center; justify-content:center; padding:18px; color:#fff; background:#102033; font-weight:650; text-align:center; }

.dh-project-card-image-badges { position:absolute; top:12px; left:12px; z-index:3; display:flex; flex-wrap:wrap; gap:6px; max-width:calc(100% - 24px); }
.dh-project-card-image-badge { min-height:26px; display:inline-flex; align-items:center; border-radius:999px; padding:0 10px; background:var(--dh-card-image-badge-bg); color:var(--dh-card-image-badge-text); font-size:11px; font-weight:750; line-height:1; white-space:nowrap; }
.dh-project-card-arrow { position:absolute; top:50%; z-index:4; transform:translateY(-50%); border:0; background:transparent; color:#fff; width:28px; height:44px; padding:0; font-size:34px; line-height:1; font-weight:300; cursor:pointer; text-shadow:none; }
.dh-project-card-arrow-prev { left:10px; }
.dh-project-card-arrow-next { right:10px; }

.dh-project-card-details { min-width:0; height:100%; display:grid; grid-template-rows: minmax(0, 1fr) auto; background:#fff; }
.dh-project-card-content-link { min-width:0; min-height:0; display:grid; grid-template-rows: auto minmax(0,1fr) auto; color:inherit !important; text-decoration:none !important; background:#fff; }
.dh-project-card-content-link:hover, .dh-project-card-content-link:focus { color:inherit !important; text-decoration:none !important; }

.dh-project-card-top-block { min-width:0; display:grid; grid-template-columns:minmax(0,1fr) 54px; align-items:center; gap:14px; padding:12px 16px 9px; background:var(--dh-card-top-bg); color:var(--dh-card-title); border-bottom:1px solid rgba(16,32,51,0.08); }
.dh-project-card-top-copy { min-width:0; }
.dh-project-card-title-line { min-width:0; display:block; white-space:nowrap; overflow:hidden; }
.dh-project-card-title { display:block; min-width:0; color:var(--dh-card-title) !important; font-size:clamp(19px,1.25vw,22px); line-height:1.22; font-weight:700; letter-spacing:-0.035em; overflow:hidden; text-overflow:ellipsis; }
.dh-project-card-developer { display:block; min-width:0; margin-top:2px; color:var(--dh-card-meta) !important; font-size:12.5px; line-height:1.28; font-weight:560; overflow:hidden; text-overflow:ellipsis; }
.dh-project-card-price { margin-top:6px; display:flex; align-items:baseline; gap:7px; min-width:0; white-space:nowrap; overflow:hidden; }
.dh-project-card-price span { flex:0 0 auto; color:var(--dh-card-label); font-size:10px; line-height:1.2; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.dh-project-card-price strong { min-width:0; color:var(--dh-card-price); font-size:clamp(21px,1.65vw,25px); line-height:1.16; font-weight:780; letter-spacing:-.04em; overflow:hidden; text-overflow:ellipsis; }
.dh-project-card.no-price .dh-project-card-price { visibility:hidden; }

.dh-project-card-dev-logo-wrap { width:54px; height:54px; display:block; overflow:hidden; background:transparent; border:0; }
.dh-project-card-dev-logo { width:54px; height:54px; display:block; object-fit:contain; aspect-ratio:1 / 1; background:transparent; border:0; }
.dh-project-card.no-logo .dh-project-card-dev-logo, .dh-project-card.no-logo .dh-project-card-dev-logo-wrap { visibility:hidden; }

.dh-project-card-facts-grid { padding:7px 16px 4px; display:grid; grid-template-columns:max-content minmax(0,1fr); column-gap:12px; row-gap:3px; background:#fff; align-content:start; }
.dh-project-card-fact { display:contents; }
.dh-project-card-fact-label { color:var(--dh-card-label); font-size:11.5px; line-height:1.36; font-weight:780; white-space:nowrap; }
.dh-project-card-fact-value, .dh-project-card-progress-number { min-width:0; color:var(--dh-card-text); font-size:13px; line-height:1.36; font-weight:650; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dh-project-card-progress-value-wrap { display:inline-flex; align-items:center; gap:8px; min-width:0; white-space:nowrap; }
.dh-project-card-progress-track { width:100px; max-width:110px; height:6px; border-radius:999px; overflow:hidden; background:var(--dh-card-progress-track); flex:0 0 auto; }
.dh-project-card-progress-fill { display:block; height:100%; border-radius:999px; background:var(--dh-card-progress-fill); }
.dh-project-card.no-progress .dh-project-card-fact-progress { visibility:hidden; }
.dh-project-card.no-location .dh-project-card-fact-location .dh-project-card-fact-value, .dh-project-card.no-size .dh-project-card-fact-size .dh-project-card-fact-value, .dh-project-card.no-handover .dh-project-card-fact-handover .dh-project-card-fact-value { visibility:hidden; }

.dh-project-card-specials { padding:2px 16px 4px; min-height:30px; display:flex; align-items:center; justify-content:flex-start; gap:7px; background:#fff; }
.dh-project-card-special { min-height:24px; display:inline-flex; align-items:center; border-radius:999px; padding:0 10px; background:var(--dh-card-special-bg); color:var(--dh-card-special-text); font-size:11.5px; line-height:1; font-weight:780; white-space:nowrap; border:0; }
.dh-project-card.no-offer .dh-project-card-special-offer, .dh-project-card.no-posthandover .dh-project-card-special-posthandover { display:none; }

.dh-project-card-actions { padding:6px 16px 10px; display:grid; grid-template-columns:repeat(auto-fit,minmax(0,1fr)); gap:8px; align-items:center; background:#fff; }
.dh-project-card-btn { height:34px; min-width:0; border-radius:10px; display:inline-flex; align-items:center; justify-content:center; gap:6px; font-size:12.5px; line-height:1; font-weight:760; text-decoration:none !important; white-space:nowrap; border:0; padding:0 10px; transition:background-color .16s ease; }
.dh-project-card-btn-details, .dh-project-card-btn-call, .dh-project-card-btn-sms { background:var(--dh-card-neutral-btn-bg); color:var(--dh-card-neutral-btn-text) !important; }
.dh-project-card-btn-whatsapp { background:var(--dh-card-whatsapp-bg); color:var(--dh-card-whatsapp-text) !important; }
.dh-project-card-btn-details:hover, .dh-project-card-btn-call:hover, .dh-project-card-btn-sms:hover { background:var(--dh-card-neutral-btn-hover-bg); color:var(--dh-card-neutral-btn-text) !important; }
.dh-project-card-btn-whatsapp:hover { background:var(--dh-card-whatsapp-hover-bg); color:var(--dh-card-whatsapp-text) !important; }
.dh-project-card-btn-icon { width:15px; height:15px; display:inline-flex; flex:0 0 auto; }
.dh-project-card-btn-icon svg { width:15px; height:15px; display:block; }
.dh-project-card-btn-call .dh-project-card-btn-icon, .dh-project-card-btn-sms .dh-project-card-btn-icon { color:#102033; }
.dh-project-card-btn-whatsapp .dh-project-card-btn-icon { color:#fff; }

@media (min-width: 1200px) {
  .listing-view.list-view .dh-project-card-wrap,
  .listing-view .dh-project-card-wrap,
  body .listing-tools-wrap { width: calc(100% - 344px); max-width: 990px; margin-right: auto; }
}

@media (min-width: 1024px) {
  .dh-project-card-horizontal { height:292px; }
  .dh-project-card-horizontal .dh-project-card-image, .dh-project-card-horizontal .dh-project-card-details { height:292px; }
}

@media (max-width: 1023px) {
  .dh-project-card-horizontal { height:auto; display:block; }
  .dh-project-card-image { height:auto; min-height:0; aspect-ratio:16 / 10; }
  .dh-project-card-details { height:auto; display:block; }
  .dh-project-card-content-link { display:block; }
  .dh-project-card-top-block, .dh-project-card-facts-grid, .dh-project-card-specials, .dh-project-card-actions { height:auto; padding-left:14px; padding-right:14px; }
  .dh-project-card-title-line { white-space:nowrap; }
}

@media (max-width: 767px) {
  .dh-project-card-wrap { margin-bottom:14px !important; }
  .dh-project-card { width:100%; border-radius:18px; }
  .dh-project-card-image { height:auto; min-height:0; aspect-ratio:16 / 10; }
  .dh-project-card-title { font-size:clamp(19px,5.4vw,21px); }
  .dh-project-card-developer { font-size:13px; }
  .dh-project-card-price strong { font-size:clamp(22px,6.2vw,24px); }
  .dh-project-card-fact-label { font-size:11.5px; }
  .dh-project-card-fact-value, .dh-project-card-progress-number { font-size:13.5px; }
  .dh-project-card-btn { font-size:13.5px; height:36px; }
  .dh-project-card-progress-track { width:90px; max-width:100px; }
  .dh-project-card-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dh-project-card.no-call .dh-project-card-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* v0.8.18: desktop search-results right sidebar slot. The slot is empty by default and ready for future widgets. */
.dh-results-layout {
  width: 100%;
}

.dh-results-main {
  min-width: 0;
}

.dh-results-sidebar {
  display: none;
  min-width: 0;
  color: var(--dh-card-text);
}

.dh-results-sidebar:empty {
  min-height: 1px;
}

.dh-results-sidebar-widget {
  margin: 0 0 16px;
  padding: 16px;
  background: var(--dh-card-bg);
  border: 1px solid var(--dh-card-border);
  border-radius: 20px;
  color: var(--dh-card-text);
  box-shadow: none !important;
}

.dh-results-sidebar-widget * {
  box-shadow: none !important;
}

.dh-results-sidebar-title {
  margin: 0 0 10px;
  color: var(--dh-card-title);
  font-size: 16px;
  line-height: 1.25;
  font-weight: 760;
}

@media (min-width: 1200px) {
  .dh-results-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 24px;
    align-items: start;
  }

  .dh-results-sidebar {
    display: block;
  }

  .dh-results-main .listing-tools-wrap,
  .dh-results-main .listing-view.list-view .dh-project-card-wrap,
  .dh-results-main .listing-view .dh-project-card-wrap,
  .dh-results-main .dh-project-card-wrap {
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
  }

  /* v0.8.19: align the Search Results Sort control to the right edge of the card column and add breathing space above the first card. */
  .dh-results-main .listing-tools-wrap {
    margin-top: -4px !important;
    margin-bottom: 18px !important;
  }

  .dh-results-main .listing-tools-wrap > .d-flex {
    justify-content: flex-end !important;
    align-items: center !important;
    margin-bottom: 0 !important;
  }

  .dh-results-main .listing-tools-wrap .sort-by {
    margin-left: auto !important;
    margin-right: 0 !important;
  }
}

@media (max-width: 1199px) {
  .dh-results-layout {
    display: block;
  }

  .dh-results-sidebar {
    display: none !important;
  }
}

/* v0.8.67: search-results card color/weight polish only.
   Scope: search results listing cards only; homepage, single property, search boxes, cards layout, buttons, and logic stay untouched. */
body.search-results .dh-project-card,
body.page-id-16859 .dh-project-card,
body.post-type-archive-property .dh-project-card,
body.tax-property_city .dh-project-card,
body.tax-property_area .dh-project-card,
body.tax-property_type .dh-project-card,
body.tax-property_status .dh-project-card {
  --dh-card-price: #0E5F6A;
  --dh-card-special-bg: #C89B5E;
  --dh-card-image-badge-bg: rgba(14, 95, 106, 0.70);
}

body.search-results .dh-project-card .dh-project-card-fact-value,
body.search-results .dh-project-card .dh-project-card-progress-number,
body.page-id-16859 .dh-project-card .dh-project-card-fact-value,
body.page-id-16859 .dh-project-card .dh-project-card-progress-number,
body.post-type-archive-property .dh-project-card .dh-project-card-fact-value,
body.post-type-archive-property .dh-project-card .dh-project-card-progress-number,
body.tax-property_city .dh-project-card .dh-project-card-fact-value,
body.tax-property_city .dh-project-card .dh-project-card-progress-number,
body.tax-property_area .dh-project-card .dh-project-card-fact-value,
body.tax-property_area .dh-project-card .dh-project-card-progress-number,
body.tax-property_type .dh-project-card .dh-project-card-fact-value,
body.tax-property_type .dh-project-card .dh-project-card-progress-number,
body.tax-property_status .dh-project-card .dh-project-card-fact-value,
body.tax-property_status .dh-project-card .dh-project-card-progress-number {
  font-weight: 400;
}

body.search-results .dh-project-card .dh-rhb-card-offer-badge,
body.page-id-16859 .dh-project-card .dh-rhb-card-offer-badge,
body.post-type-archive-property .dh-project-card .dh-rhb-card-offer-badge,
body.tax-property_city .dh-project-card .dh-rhb-card-offer-badge,
body.tax-property_area .dh-project-card .dh-rhb-card-offer-badge,
body.tax-property_type .dh-project-card .dh-rhb-card-offer-badge,
body.tax-property_status .dh-project-card .dh-rhb-card-offer-badge {
  background: #C89B5E;
  color: #102033;
}

/* v0.3.21: apply the old v0.8.67 search-results color/weight polish to the current DubaiHome /search-results/ body class too. */
body.dhhwb-search-results-page .dh-project-card {
  --dh-card-price: #0E5F6A;
  --dh-card-special-bg: #C89B5E;
  --dh-card-image-badge-bg: rgba(14, 95, 106, 0.70);
}

body.dhhwb-search-results-page .dh-project-card .dh-project-card-fact-value,
body.dhhwb-search-results-page .dh-project-card .dh-project-card-progress-number {
  font-weight: 400;
}

body.dhhwb-search-results-page .dh-project-card .dh-rhb-card-offer-badge {
  background: #C89B5E;
  color: #102033;
}
