/* Hero Header Section Start */

.hero {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 5px;
  flex-wrap: wrap;
  background: #1a3454;
  color: white;
  padding: 20px 20px;
  margin: 10px;
  border-radius: 5px;
}

/* Left column (50%) */
.property-header {
  flex: 0 0 45%;
  color: white;
  text-align: left;
  font-family: Roboto, sans-serif;
}

.property-header .status-badge {
  background: #1a3454; /* dynamically update */
  padding: 6px 12px;
  border-radius: 3px;
  font-size: 14px;
  text-transform: uppercase;
  display: inline-block;
 
}

.property-header .price-tag {
  font-size: 32px;
  margin: 0 0 8px;
  padding-top: 20px;
}

.property-header .address-block {
  font-size: 28px;
  margin-bottom: 15px;
  line-height: 0.9;
}
.address-block .city {
  display: block;
  margin-top: 2px; /* optional spacing */
  line-height: 0.9;
}


.property-header .mls {
  font-size: 12px;
  opacity: 0.9;
}



 /* Right column (45%) */
.header-icon {
  flex: 1 0 50%;
}

.header-icon .icons {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 0px;
  justify-content: center;
  text-align: center;
}

.header-icon .icons span {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: #0000001c;
  color: #fff;
  border-radius: 5px;
  padding: 5px 3px 10px;
  margin: 5px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  gap: 5px;
 
  
}

.header-icon .icons span .icon-value {
 
  padding: 0px;
  border-radius: 4px;
  color: #4aa1eb !important;
  font-weight: bold;
  font-size: 14px;
  margin: 0px;
  background: none;
}

.header-icon i {
  font-size: 30px !important;
  margin: 0px 0;
  color: #fff;
}

/* Desktop only */
@media (min-width: 1024px) {
  .header-icon .icons {
    justify-content: center;
  }
}

/* Highlighted values */
#daysOnMarket,
#BedroomsAboveGrade,
#BathroomsTotalInteger,
#ParkingTotal,
#AboveGradeFinishedArea,
#StructureType {
  font-weight: normal;
  color: #fff;
  font-size: 14px !important;
}

/* Status dynamic colors */
#status {
  padding: 8px 12px;
  font-size: 12px;
  font-weight: bold;
  border-radius: 3px;
  text-align: left;
  color: #fff;
  margin-bottom: 20px;
}

#status.for-sale {
  background-color: #28a745;
}
#status.for-rent {
  background-color: #ff5733;
}

/* Mobile layout */
@media (max-width: 768px) {
  .property-header .address-block {
    font-size: 20px;
  }
  
  #status {
   position: absolute;
  right: 33px; 
    
  }
  
  .property-header .price-tag {
  
  padding-top: 0px;
}

  .hero {
    flex-direction: column;
  }

  .property-header {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  .header-icon {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  .header-icon .icons {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* Force 3 per row */
    gap: 8px !important; /* tighter gap for mobile */
    width: 100%;
    justify-items: center;
  }

  .header-icon .icons span {
    gap: 0px !important; /* reduce spacing between icon, value, label */
    width: 90%; /* make each span fill its grid cell */
    height: 80%; /* no fixed height to avoid tall empty boxes */
  
  }
}


/* Hero Section End */