/* DanangLuxe — Houzez Property single, global production stylesheet */
.single-property{
  --dnl-prop-line:var(--dnl-line);
  --dnl-prop-ink:var(--dnl-navy);
  --dnl-prop-muted:var(--dnl-muted);
  --dnl-prop-gold:var(--dnl-gold);
  --dnl-prop-radius:var(--dnl-radius-lg);
  background:#fff;
}
.single-property .htb-single-listing-wrapper,
.single-property .elementor-22226,
.single-property .elementor-22226 .e-con,
.single-property .elementor-22226 .e-con-inner{min-width:0;max-width:100%}
.single-property .elementor-22226>.e-con{background:#fff}
.single-property .elementor-22226 .e-con-inner{max-width:1440px}
.single-property .elementor-22226 img,
.single-property .elementor-22226 iframe{max-width:100%}

/* Header content */
.single-property .elementor-22226 .property_title,
.single-property .elementor-22226 .page-title h1{
  margin:0;
  color:var(--dnl-prop-ink);
  font-size:clamp(34px,3.3vw,52px);
  line-height:1.08;
  letter-spacing:-.035em;
  font-weight:600;
}
.single-property .elementor-22226 .item-address{font-size:14px;color:var(--dnl-prop-muted)}
.single-property .elementor-22226 .hz-ele-price .price,
.single-property .elementor-22226 .property-price-wrap .price{
  color:var(--dnl-prop-ink);
  font-size:clamp(24px,2.2vw,34px);
  line-height:1.15;
  letter-spacing:-.02em;
  font-weight:600;
}

/* Gallery */
.single-property .elementor-widget-houzez-property-toparea-v3 .page-title-wrap{display:none!important}
.single-property .elementor-widget-houzez-property-toparea-v3 .property-banner{
  margin:0 32px;
  overflow:hidden;
  border-radius:var(--dnl-prop-radius);
}
.single-property .elementor-widget-houzez-property-toparea-v3 .top-gallery-section,
.single-property .elementor-widget-houzez-property-toparea-v3 .listing-slider-ele,
.single-property .elementor-widget-houzez-property-toparea-v3 .listing-slider,
.single-property .elementor-widget-houzez-property-toparea-v3 .tab-pane{
  overflow:hidden;
  border-radius:var(--dnl-prop-radius);
}
.single-property .elementor-widget-houzez-property-toparea-v3 iframe{width:100%;height:auto;aspect-ratio:16/9}

/* Consistent property sections */
.single-property .elementor-22226 .property-section-wrap>.block-wrap,
.single-property .elementor-22226 .property-form-wrap{
  margin:0;
  padding:28px;
  overflow:hidden;
  border:1px solid var(--dnl-prop-line);
  border-radius:var(--dnl-prop-radius);
  box-shadow:none;
  background:#fff;
}
.single-property .elementor-22226 .block-title-wrap{margin-bottom:20px}
.single-property .elementor-22226 .block-title-wrap h2,
.single-property .elementor-22226 h2.elementor-heading-title{
  margin:0;
  color:#242420;
  font-size:clamp(25px,2.3vw,33px);
  line-height:1.2;
  letter-spacing:-.025em;
  font-weight:600;
  text-transform:none;
}
.single-property .elementor-22226 .block-title-wrap h3{font-size:21px;line-height:1.3}
.single-property .elementor-widget-houzez-property-content{
  color:#4b4944;
  font-size:16px;
  line-height:1.8;
}
.single-property .elementor-widget-houzez-property-content h2,
.single-property .elementor-element-a1b2c314 .elementor-heading-title{
  color:#242420;
  font-size:30px!important;
  line-height:1.26;
  letter-spacing:-.02em;
}
.single-property .elementor-widget-houzez-property-content h3{
  margin:28px 0 10px;
  color:#2d2c28;
  font-size:20px;
  line-height:1.35;
}
.single-property .elementor-widget-houzez-property-content ul{padding-left:20px}
.single-property .elementor-widget-houzez-property-content .houzez-read-more-link{
  display:inline-flex;
  margin-top:8px;
  color:#8b6b2d;
  font-weight:600;
}

/* Overview — keep facts, remove the duplicate internal map */
.single-property .dnl-overview-compact .property-overview-wrap-v2>.block-wrap>.row>.col-md-4{
  display:none!important;
}
.single-property .dnl-overview-compact .property-overview-wrap-v2>.block-wrap>.row>.col-md-8{
  width:100%!important;
  max-width:100%!important;
  flex:0 0 100%!important;
}
.single-property .property-overview-wrap-v2 .property-overview-data{
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  row-gap:22px!important;
}
.single-property .dnl-overview-compact .property-overview-data>.col{
  width:25%!important;
  max-width:25%!important;
  flex:0 0 25%!important;
  min-width:0;
}
.single-property .property-overview-wrap-v2 strong{font-size:18px;color:#262621}
.single-property .property-overview-wrap-v2 .hz-meta-label{font-size:13px;color:#77736d}
.single-property .property-overview-wrap-v2 i{color:var(--dnl-prop-gold)}

/* Address + dedicated Leaflet location map */
.single-property .dnl-address-compact .detail-zip,
.single-property .dnl-address-compact .detail-country,
.single-property .dnl-address-compact .detail-state{display:none!important}
.single-property .property-address-wrap .list-lined-item{gap:20px}
.single-property #houzez-single-listing-map-elementor,
.single-property .property-map-wrap,
.single-property .block-map-wrap{
  min-height:360px;
  overflow:hidden;
  border-radius:var(--dnl-prop-radius);
}
.single-property .leaflet-container,
.single-property .leaflet-control,
.single-property .leaflet-control a,
.single-property .leaflet-control span{font-family:var(--dnl-sans)!important}
.single-property .elementor-widget-houzez-property-section-map .block-wrap{padding:0!important}

/* Video / floor plan / media */
.single-property .property-video-wrap .block-video-wrap,
.single-property .property-video-wrap iframe{width:100%}
.single-property .property-video-wrap iframe{aspect-ratio:16/9;height:auto;border:0;border-radius:6px}
.single-property .property-floor-plans-wrap .accordion-item{border-color:var(--dnl-prop-line)}

/* Forms and actions */
.single-property .form-control,
.single-property input,
.single-property select,
.single-property textarea{
  border-radius:6px!important;
  font-family:var(--dnl-sans)!important;
}
.single-property .form-control{border-color:#dcd8cf}
.single-property .form-control:focus,
.single-property input:focus,
.single-property select:focus,
.single-property textarea:focus{
  border-color:var(--dnl-navy)!important;
  box-shadow:0 0 0 2px rgba(16,36,54,.12)!important;
  outline:0;
}
.single-property .item-price,
.single-property .property-price-wrap,
.single-property .property_title{overflow-wrap:anywhere}
.single-property .property_title{text-wrap:balance}
.single-property .dnl-contact-form .houzez-ele-button{
  background:#20201e!important;
  border-color:#20201e!important;
  color:#fff!important;
  border-radius:6px!important;
}
.single-property .dnl-contact-form .houzez-ele-button:hover{
  background:#000!important;
  border-color:#000!important;
}
.single-property .dnl-contact-form .hz-btn-call,
.single-property .dnl-contact-form .hz-btn-whatsapp{
  background:#fff!important;
  border:1px solid #20201e!important;
  color:#20201e!important;
  border-radius:6px!important;
}
.single-property .dnl-contact-form .hz-btn-call:hover,
.single-property .dnl-contact-form .hz-btn-whatsapp:hover{
  background:#f7f5f0!important;
  color:#000!important;
}
.single-property .dnl-contact-form .agent-verified-icon{
  background:#20201e!important;
  border-color:#20201e!important;
  color:#fff!important;
}
.single-property .dnl-contact-form .agent-image img{border-radius:8px!important}
.single-property .dnl-contact-form .property-schedule-tour-type-form{flex-wrap:wrap}
.single-property .dnl-contact-form .property-schedule-tour-type-form>*{min-width:0}

/* Mobile sticky agent/contact bar */
.single-property .mobile-property-contact{
  padding:9px 10px;
  border-top:1px solid var(--dnl-prop-line);
  background:#fff;
  box-shadow:0 -8px 24px rgba(0,0,0,.07);
}
.single-property .mobile-property-contact>.d-flex{
  width:100%;
  align-items:center;
  gap:7px;
}
.single-property .mobile-property-contact .agent-details{
  min-width:0;
  flex:1 1 auto!important;
}
.single-property .mobile-property-contact .agent-details>.d-flex{
  min-width:0;
  gap:9px!important;
}
.single-property .mobile-property-contact .agent-image{
  flex:0 0 42px;
  width:42px;
  height:42px;
}
.single-property .mobile-property-contact .agent-image img{
  display:block;
  width:42px!important;
  height:42px!important;
  object-fit:cover;
  border-radius:7px!important;
}
.single-property .mobile-property-contact .agent-information{
  min-width:0;
  max-width:100%;
}
.single-property .mobile-property-contact .agent-name{
  max-width:100%;
  overflow:hidden;
  color:#20201e;
  font-size:13px;
  font-weight:650;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.single-property .mobile-property-contact .btn{
  display:inline-flex!important;
  flex:0 0 42px!important;
  align-items:center;
  justify-content:center;
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  margin:0!important;
  padding:0!important;
  border-radius:6px!important;
  line-height:1!important;
}
.single-property .mobile-property-contact button.btn-secondary{
  background:#20201e!important;
  border-color:#20201e!important;
  color:#fff!important;
}
.single-property .mobile-property-contact a.btn-secondary-outlined{
  background:#fff!important;
  border:1px solid #20201e!important;
  color:#20201e!important;
}
.single-property .mobile-property-contact .houzez-icon{
  margin:0!important;
  color:inherit!important;
  font-size:18px;
}

/* Cards and labels */
.single-property .label,
.single-property .label-status,
.single-property .hz-label{
  padding:5px 8px!important;
  border-radius:5px!important;
  font-size:11px!important;
  line-height:1.2!important;
}
.single-property .property-item-tools .item-tool>span{border-radius:6px}
.single-property .elementor-widget-houzez-property-section-similar .item-wrap{
  overflow:hidden;
  border:1px solid var(--dnl-prop-line);
  border-radius:var(--dnl-prop-radius)!important;
  box-shadow:none;
  background:#fff;
}
.single-property .elementor-widget-houzez-property-section-similar .item-body{padding:18px}
.single-property .elementor-widget-houzez-property-section-similar .item-title{font-size:18px;line-height:1.3;font-weight:600}
.single-property .elementor-widget-houzez-property-section-similar .item-price{color:#242420;font-weight:600}

/* Defensive responsive rules */
@media(max-width:991px){
  .single-property .elementor-widget-houzez-property-toparea-v3 .property-banner{margin:0 24px}
  .single-property .elementor-22226 .property-section-wrap>.block-wrap,
  .single-property .elementor-22226 .property-form-wrap{padding:22px}
}
@media(max-width:767px){
  .single-property .elementor-22226,
  .single-property .elementor-22226 .e-con,
  .single-property .elementor-22226 .e-con-inner,
  .single-property .elementor-22226 .elementor-widget,
  .single-property .property-section-wrap,
  .single-property .block-wrap{max-width:100%;min-width:0}
  .single-property .elementor-widget-houzez-property-toparea-v3 .property-banner{margin:0 16px;border-radius:8px}
  .single-property .elementor-22226 .property_title,
  .single-property .elementor-22226 .page-title h1{font-size:30px;line-height:1.12}
  .single-property .elementor-22226 .hz-ele-price .price,
  .single-property .elementor-22226 .property-price-wrap .price,
  .single-property .item-price{font-size:25px!important;line-height:1.2}
  .single-property .elementor-22226 .property-section-wrap>.block-wrap,
  .single-property .elementor-22226 .property-form-wrap{padding:18px;border-radius:8px}
  .single-property .elementor-22226 .block-title-wrap h2,
  .single-property .elementor-22226 h2.elementor-heading-title,
  .single-property .elementor-widget-houzez-property-content h2,
  .single-property .elementor-element-a1b2c314 .elementor-heading-title{font-size:24px!important;line-height:1.24}
  .single-property .elementor-widget-houzez-property-content{font-size:15px;line-height:1.72}
  .single-property .dnl-overview-compact .property-overview-data>.col{
    width:50%!important;
    max-width:50%!important;
    flex:0 0 50%!important;
  }
  .single-property .property-address-wrap .list-lined-item{gap:12px}
  .single-property .property-address-wrap .list-lined-item strong,
  .single-property .property-address-wrap .list-lined-item span{min-width:0;overflow-wrap:anywhere}
  .single-property #houzez-single-listing-map-elementor,
  .single-property .property-map-wrap,
  .single-property .block-map-wrap{min-height:300px}
  .single-property .sub-listings-table{display:block;max-width:100%;overflow-x:auto}
  .single-property table{max-width:100%}
  .single-property .dnl-contact-form .property-schedule-tour-type-form{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important}
  .single-property .dnl-contact-form .property-schedule-tour-type-form .btn{width:100%!important}
}
@media(max-width:390px){
  .single-property .mobile-property-contact{padding:8px}
  .single-property .mobile-property-contact>.d-flex{gap:5px}
  .single-property .mobile-property-contact .agent-details>.d-flex{gap:7px!important}
  .single-property .mobile-property-contact .agent-image,
  .single-property .mobile-property-contact .agent-image img{width:38px!important;height:38px!important;flex-basis:38px}
  .single-property .mobile-property-contact .btn{width:39px!important;min-width:39px!important;height:39px!important;min-height:39px!important;flex-basis:39px!important}
  .single-property .mobile-property-contact .agent-name{font-size:12px}
}
