/* Route-only presentation for legacy dynamic landing pages. The Global Header has its own dedicated stylesheet. */
:root{
  --dhhm-text: #102033;
  --dhhm-muted: rgba(16,32,51,.66);
  --dhhm-border: rgba(16,32,51,.13);
  --dhhm-bg: #fff;
  --dhhm-soft: #f7f9f8;
  --dhhm-active: #071f3a;
  --dhhm-teal: #00A6AE;
  --dhhm-gold: #C89B5E;
}



/* Dynamic plugin pages must not show the legacy Houzez mini search above our approved search/card system. */
body.dhhfe-dynamic-landing-page .advanced-search-wrap, body.dhhfe-dynamic-landing-page .advanced-search-nav, body.dhhfe-dynamic-landing-page .advanced-search-v1, body.dhhfe-dynamic-landing-page .advanced-search, body.dhhfe-dynamic-landing-page .search-expandable, body.dhhfe-dynamic-landing-page .search-expandable-wrap{
  display:none !important;
}


































.dhhm-index-main{ background:#fff; color:var(--dhhm-text); }
.dhhm-index-hero{ border-bottom:1px solid var(--dhhm-border); background:#fff; }
.dhhm-index-inner{ max-width:1310px; margin:0 auto; padding:54px 28px 30px; }
.dhhm-index-inner h1{ margin:0 0 10px; color:var(--dhhm-text); font-size:clamp(30px,4vw,48px); line-height:1.08; font-weight:800; }
.dhhm-index-inner p{ margin:0; color:var(--dhhm-muted); font-size:16px; }
.dhhm-index-grid-shell{ max-width:1310px; margin:0 auto; padding:42px 28px 70px; }
.dhhm-index-grid{ display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:28px 22px; }
.dhhm-dev-card, .dhhm-area-card{ border:0; border-radius:4px; background:#fff; overflow:visible; }
.dhhm-dev-card a, .dhhm-area-card a{ display:block; color:inherit; text-decoration:none !important; height:100%; }
.dhhm-dev-card-media, .dhhm-area-card-media{ position:relative; height:190px; background:var(--dhhm-soft); overflow:hidden; border-radius:4px; border:1px solid var(--dhhm-border); }
.dhhm-dev-card-bg, .dhhm-area-card-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.dhhm-dev-card-media:after{ content:""; position:absolute; inset:0; background:rgba(7,31,58,.18); pointer-events:none; }
.dhhm-dev-card-logo{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; padding:28px; z-index:1; background:transparent; border:0; border-radius:0; }
.dhhm-dev-card-logo img{ max-width:210px; max-height:92px; width:auto; height:auto; object-fit:contain; display:block; }
.dhhm-dev-card-logo span{ color:#fff; font-weight:800; text-align:center; font-size:19px; line-height:1.2; }
.dhhm-dev-card-body, .dhhm-area-card-body{ padding:16px 0 0; border:0; }
.dhhm-dev-card-body h2, .dhhm-area-card-body h2{ margin:0 0 8px; font-size:19px; line-height:1.2; font-weight:800; color:var(--dhhm-text); }
.dhhm-dev-card-body p, .dhhm-area-card-body p{ margin:0; color:var(--dhhm-muted); font-size:14px; line-height:1.55; }
.dhhm-area-card-body small{ display:block; margin-top:9px; color:var(--dhhm-gold); font-weight:800; }


.dhhm-developer-tools, .dhhm-area-tools{ display:flex; align-items:center; justify-content:space-between; gap:18px; margin:0 0 26px; }
.dhhm-developer-search, .dhhm-area-search{ width:min(100%, 430px); min-height:46px; border:1px solid var(--dhhm-border); border-radius:4px; padding:0 14px; color:var(--dhhm-text); background:#fff; font:inherit; font-size:15px; box-shadow:none !important; }
.dhhm-developer-search::placeholder, .dhhm-area-search::placeholder{ color:rgba(16,32,51,.52); }
.dhhm-developer-search:focus, .dhhm-area-search:focus{ outline:0; border-color:var(--dhhm-teal); }
.dhhm-load-more-wrap{ display:flex; justify-content:center; margin:34px 0 0; }
.dhhm-load-more{ min-width:180px; min-height:46px; border:0; border-radius:4px; background:var(--dhhm-teal); color:#fff; font:inherit; font-weight:600; cursor:pointer; box-shadow:none !important; }
.dhhm-load-more:hover{ background:#0e5f6a; }
.dhhm-no-results{ margin:20px 0 0; color:var(--dhhm-muted); font-size:15px; }

body.dhhfe-custom-header-enabled.dh-clean-search-results-page .dh-clean-search-main, body.dhhfe-dynamic-landing-page .dh-clean-search-main{ background:#fff; }

body.dhhfe-dynamic-landing-page .back-to-top, body.dhhfe-dynamic-landing-page #back-to-top{ right:28px !important; bottom:28px !important; width:44px !important; height:44px !important; border-radius:4px !important; box-shadow:none !important; }

@media (max-width: 1199px) {
  
  
  
  
  .dhhm-index-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .dhhm-developer-tools, .dhhm-area-tools{ align-items:stretch; }
  .dhhm-developer-search, .dhhm-area-search{ width:100%; }
}
@media (max-width: 767px) {
  .dhhm-index-inner{ padding:36px 18px 22px; }
  .dhhm-index-grid-shell{ padding:26px 18px 50px; }
  .dhhm-index-grid{ grid-template-columns:1fr; gap:24px; }
  .dhhm-developer-tools, .dhhm-area-tools{ display:block; }
  .dhhm-dev-card-media, .dhhm-area-card-media{ height:210px; }
}


/* v2.3.133: Areas index card alignment - center name/count only, keep description readable. */
.dhhm-areas-index .dhhm-area-card-body h2, .dhhm-areas-index .dhhm-area-card-body small{
  text-align: center;
}
.dhhm-areas-index .dhhm-area-card-body p{
  text-align: left;
}

/* v2.3.6 Developer detail route: clean SEO landing header before the approved search/cards system. */
.dhhm-dev-detail-hero{
  background:#fff;
  border-bottom:1px solid var(--dhhm-border);
  color:var(--dhhm-text);
}
.dhhm-dev-detail-inner{
  max-width:1310px;
  margin:0 auto;
  padding:34px 28px 30px;
}
.dhhm-route-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:0 0 18px;
  color:var(--dhhm-muted);
  font-size:13px;
  line-height:1.3;
}
.dhhm-route-breadcrumb a{
  color:var(--dhhm-muted);
  text-decoration:none !important;
}
.dhhm-route-breadcrumb a:hover{ color:var(--dhhm-gold); }
.dhhm-dev-detail-layout{
  display:grid;
  grid-template-columns:minmax(280px, 420px) minmax(0, 1fr);
  gap:34px;
  align-items:center;
}
.dhhm-dev-detail-media{
  position:relative;
  height:260px;
  border:1px solid var(--dhhm-border);
  border-radius:4px;
  overflow:hidden;
  background:var(--dhhm-soft);
}
.dhhm-dev-detail-bg{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.dhhm-dev-detail-media:after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(7,31,58,.18);
  pointer-events:none;
}
.dhhm-dev-detail-logo{
  position:absolute;
  inset:0;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:34px;
  text-align:center;
}
.dhhm-dev-detail-logo img{
  display:block;
  max-width:230px;
  max-height:110px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.dhhm-dev-detail-logo span{
  color:#fff;
  font-size:28px;
  line-height:1.15;
  font-weight:800;
}
.dhhm-dev-detail-copy h1{
  margin:0 0 14px;
  color:var(--dhhm-text);
  font-size:clamp(30px,4vw,48px);
  line-height:1.08;
  font-weight:800;
}
.dhhm-dev-detail-copy > p:not(.dhhm-dev-detail-count), .dhhm-dev-detail-description{
  max-width:760px;
  color:var(--dhhm-muted);
  font-size:15px;
  line-height:1.65;
}
.dhhm-dev-detail-description p{
  margin:0 0 10px;
}
.dhhm-dev-detail-description p:last-child{ margin-bottom:0; }
.dhhm-dev-detail-count{
  margin:14px 0 0;
  color:var(--dhhm-teal);
  font-size:14px;
  line-height:1.35;
  font-weight:700;
}
.dhhm-dev-projects-intro{
  background:#fff;
  border-bottom:1px solid var(--dhhm-border);
}
.dhhm-dev-projects-intro-inner{
  max-width:1310px;
  margin:0 auto;
  padding:24px 28px 14px;
}
.dhhm-dev-projects-intro h2{
  margin:0;
  color:var(--dhhm-text);
  font-size:24px;
  line-height:1.2;
  font-weight:800;
}
.dhhm-dev-projects-intro p{
  margin:6px 0 0;
  color:var(--dhhm-muted);
  font-size:14px;
  line-height:1.55;
}

@media (max-width: 767px) {
  .dhhm-dev-detail-inner{ padding:24px 18px 24px; }
  .dhhm-dev-detail-layout{ grid-template-columns:1fr; gap:22px; }
  .dhhm-dev-detail-media{ height:220px; }
  .dhhm-dev-detail-logo{ padding:28px; }
  .dhhm-dev-detail-logo img{ max-width:210px; max-height:96px; }
  .dhhm-dev-detail-copy h1{ font-size:30px; }
  .dhhm-dev-projects-intro-inner{ padding:22px 18px 12px; }
  .dhhm-dev-projects-intro h2{ font-size:22px; }
}

/* v2.3.20 Dynamic page header polish: premium, lighter landing headings without touching cards/search/menu logic. */
.dhhm-index-hero{
  background:linear-gradient(180deg, #fff 0%, #fbfcfd 100%);
}
.dhhm-index-inner{
  padding:46px 28px 26px;
}
.dhhm-index-inner h1{
  margin:0 0 9px;
  font-size:clamp(28px, 3.1vw, 40px);
  line-height:1.12;
  font-weight:700;
  letter-spacing:-.035em;
}
.dhhm-index-inner p{
  max-width:1040px;
  font-size:15px;
  line-height:1.55;
}
.dhhm-dev-detail-inner{
  padding:28px 28px 26px;
}
.dhhm-route-breadcrumb{
  margin-bottom:16px;
  font-size:13px;
}
.dhhm-dev-detail-layout{
  grid-template-columns:minmax(280px, 420px) minmax(0, 1fr);
  gap:36px;
}
.dhhm-dev-detail-copy h1{
  margin:0 0 12px;
  font-size:clamp(28px, 3vw, 40px);
  line-height:1.12;
  font-weight:700;
  letter-spacing:-.04em;
}
.dhhm-route-fit-title{
  white-space:nowrap;
  max-width:100%;
}
.dhhm-dev-detail-copy > p:not(.dhhm-dev-detail-count), .dhhm-dev-detail-description{
  max-width:800px;
  font-size:15px;
  line-height:1.62;
}
.dhhm-dev-detail-count{
  margin-top:13px;
  font-size:14px;
  font-weight:700;
}
.dhhm-dev-projects-intro-inner{
  padding:21px 28px 13px;
}
.dhhm-dev-projects-intro h2{
  font-size:clamp(20px, 2.25vw, 25px);
  line-height:1.18;
  font-weight:700;
  letter-spacing:-.026em;
}
.dhhm-dev-projects-intro p{
  font-size:14px;
  line-height:1.5;
}

@media (max-width: 767px) {
  .dhhm-index-inner{ padding:34px 18px 20px; }
  .dhhm-index-inner h1{ font-size:30px; }
  .dhhm-index-inner p{ font-size:14px; line-height:1.5; }
  .dhhm-dev-detail-inner{ padding:22px 18px 22px; }
  .dhhm-dev-detail-layout{ gap:20px; }
  .dhhm-dev-detail-copy h1{ font-size:28px; }
  .dhhm-route-fit-title{ white-space:nowrap; }
  .dhhm-dev-projects-intro-inner{ padding:19px 18px 11px; }
  .dhhm-dev-projects-intro h2{ font-size:21px; }
}

/* v2.3.129: Google-ready listing page intro for dynamic property-type showroom pages. */
.dhhm-listing-route-intro{
  background:#fff;
  border-bottom:1px solid var(--dhhm-border);
  color:var(--dhhm-text);
}
.dhhm-listing-route-intro-inner{
  max-width:1310px;
  margin:0 auto;
  padding:28px 28px 18px;
}
.dhhm-listing-route-intro h1{
  margin:0 0 10px;
  color:var(--dhhm-text);
  font-size:clamp(28px, 3vw, 40px);
  line-height:1.12;
  font-weight:700;
  letter-spacing:-.04em;
}
.dhhm-listing-route-intro p{
  max-width:900px;
  margin:0;
  color:var(--dhhm-muted);
  font-size:15px;
  line-height:1.62;
}
@media (max-width: 767px) {
  .dhhm-listing-route-intro-inner{
    padding:22px 18px 14px;
  }
  .dhhm-listing-route-intro h1{
    font-size:28px;
    white-space:normal;
  }
  .dhhm-listing-route-intro p{
    font-size:14px;
    line-height:1.55;
  }
}

/* v2.3.132: Developer page polish — centered cards, mobile-safe detail headings, visible FAQ. */
.dhhm-developers-index .dhhm-dev-card-body{
  text-align:center;
}
.dhhm-developers-index .dhhm-dev-card-body h2, .dhhm-developers-index .dhhm-dev-card-body p{
  text-align:center;
}
body.dhhfe-dynamic-developer_detail .dhhm-dev-detail-copy h1, body.dhhfe-dynamic-developer_detail .dhhm-dev-projects-intro h2{
  white-space:normal;
  overflow-wrap:break-word;
  hyphens:none;
}
.dhhm-route-faq{
  background:#fff;
  border-top:1px solid var(--dhhm-border);
  color:var(--dhhm-text);
}
.dhhm-route-faq-inner{
  max-width:1310px;
  margin:0 auto;
  padding:34px 28px 56px;
}
.dhhm-route-faq h2{
  margin:0 0 18px;
  color:var(--dhhm-text);
  font-size:clamp(22px,2.5vw,30px);
  line-height:1.2;
  font-weight:700;
  letter-spacing:-.02em;
}
.dhhm-route-faq-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.dhhm-route-faq-item{
  border:1px solid var(--dhhm-border);
  border-radius:4px;
  padding:18px;
  background:#fff;
  box-shadow:none !important;
}
.dhhm-route-faq-item h3{
  margin:0 0 9px;
  color:var(--dhhm-text);
  font-size:16px;
  line-height:1.35;
  font-weight:700;
}
.dhhm-route-faq-item p{
  margin:0;
  color:var(--dhhm-muted);
  font-size:14px;
  line-height:1.58;
}
@media (max-width: 991px) {
  .dhhm-route-faq-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 767px) {
  body.dhhfe-dynamic-developer_detail .dhhm-dev-detail-layout{
    grid-template-columns:1fr;
    gap:18px;
    align-items:stretch;
  }
  body.dhhfe-dynamic-developer_detail .dhhm-dev-detail-media{
    height:190px;
  }
  body.dhhfe-dynamic-developer_detail .dhhm-dev-detail-copy{
    text-align:center;
  }
  body.dhhfe-dynamic-developer_detail .dhhm-dev-detail-copy h1{
    font-size:26px;
    line-height:1.18;
    white-space:normal !important;
  }
  body.dhhfe-dynamic-developer_detail .dhhm-dev-detail-description{
    text-align:left;
    font-size:14px;
    line-height:1.6;
  }
  body.dhhfe-dynamic-developer_detail .dhhm-dev-detail-count{
    text-align:center;
  }
  body.dhhfe-dynamic-developer_detail .dhhm-dev-projects-intro h2{
    font-size:20px;
    line-height:1.2;
    white-space:normal !important;
  }
  .dhhm-route-faq-inner{
    padding:28px 18px 44px;
  }
  .dhhm-route-faq-item{
    padding:16px;
  }
}


/* v2.3.133: Single area mobile/layout safety mirrors developer detail but preserves area text readability. */
body.dhhfe-dynamic-area_detail .dhhm-dev-detail-copy h1, body.dhhfe-dynamic-area_detail .dhhm-route-fit-title{
  white-space: normal !important;
}
@media (max-width: 767px) {
  body.dhhfe-dynamic-area_detail .dhhm-dev-detail-layout{
    grid-template-columns: 1fr;
    gap: 18px;
    align-items: stretch;
  }
  body.dhhfe-dynamic-area_detail .dhhm-dev-detail-media{
    height: 190px;
  }
  body.dhhfe-dynamic-area_detail .dhhm-dev-detail-copy{
    text-align: center;
  }
  body.dhhfe-dynamic-area_detail .dhhm-dev-detail-copy h1{
    font-size: 26px;
    line-height: 1.18;
    white-space: normal !important;
  }
  body.dhhfe-dynamic-area_detail .dhhm-area-detail-description{
    text-align: left;
    font-size: 14px;
    line-height: 1.6;
  }
  body.dhhfe-dynamic-area_detail .dhhm-area-detail-count{
    text-align: center;
  }
  body.dhhfe-dynamic-area_detail .dhhm-area-projects-intro h2{
    font-size: 20px;
    line-height: 1.2;
    white-space: normal !important;
  }
}

