/* Glass navbar styles (glassmorphism)
   We apply the effect to .site-nav .menu-bg-wrap because the original
   template sets a solid background on .menu-bg-wrap which would hide
   any backdrop-filter applied to the parent. */

/* Ensure nav sits above hero and keeps rounded look */
.site-nav {
  position: absolute; /* preserve original layout */
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
}

.site-nav .menu-bg-wrap {
  /* translucent glass layer */
  background: rgba(255, 255, 255, 0.12) !important;
  -webkit-backdrop-filter: blur(10px) saturate(120%) !important;
  backdrop-filter: blur(10px) saturate(120%) !important;
  border-radius: 50px !important; /* keep pill look from template */
  padding: 14px 22px !important; /* match original spacing roughly */
  border: 1px solid rgba(255,255,255,0.08) !important;
  box-shadow: 0 8px 24px rgba(8,15,25,0.08) !important;
  transition: background 250ms ease, box-shadow 250ms ease, backdrop-filter 250ms ease;
}

/* Make sure inner nav elements don't draw opaque backgrounds */
.site-nav .site-navigation,
.site-nav .site-navigation * {
  background: transparent !important;
}

/* Links and logo should be visible over images */
.site-nav .logo,
.site-nav .site-menu a,
.site-nav .burger {
  color: #fff !important;
}

/* Slightly lighten active menu item */
.site-nav .site-navigation .site-menu li.active > a {
  color: rgba(255, 255, 255, 0.95) !important;
}

/* Mobile menu (offcanvas) glass background - override solid white */
.site-mobile-menu {
  background: rgba(255,255,255,0.06) !important;
  -webkit-backdrop-filter: blur(12px) saturate(120%) !important;
  backdrop-filter: blur(12px) saturate(120%) !important;
  border-left: 1px solid rgba(255,255,255,0.04) !important;
}

/* Mobile menu header & links keep readable color */
.site-mobile-menu .site-mobile-menu-header,
.site-mobile-menu .site-mobile-menu-body,
.site-mobile-menu .site-mobile-menu-body a {
  background: transparent !important;
  color: #fff !important;
}

/* Darker glass helper */
.site-nav.dark-glass .menu-bg-wrap {
  background: rgba(0,0,0,0.36) !important;
  border: 1px solid rgba(255,255,255,0.04) !important;
  box-shadow: 0 8px 20px rgba(0,0,0,0.22) !important;
}

/* Small tweak so the burger icon is visible */
.burger span,
.icofont-close {
  color: #ffffff !important;
}

/* Footer styles to match provided image */
.site-footer {
  background: #212121;
  color: #d1d1d1;
  padding: 60px 0 30px;
  border-top: 1px solid rgba(255,255,255,0.03);
  font-size: 15px;
}
.site-footer .footer-logo img { filter: none; }
.site-footer .footer-title {
  color: #fff;
  font-weight: 700;
  margin: 0 0 8px;
  line-height: 1.05;
}
.site-footer .footer-title .muted {
  display: block;
  font-size: 12px;
  color: #f0a500;
  font-weight:700;
  letter-spacing: .06em;
}
.site-footer .footer-desc {
  color: #bdbdbd;
  max-width: 320px;
}
.site-footer .widget-title { color: #f0a500; font-weight:700; margin-bottom:18px; }
.site-footer .links li { margin-bottom: 12px; }
.site-footer .links a { color: #ccc; text-decoration: none; }
.site-footer .links a:hover { color: #fff; }
.site-footer .contact-info li { margin-bottom: 12px; color:#cfcfcf; }
.site-footer .contact-info span { margin-right:10px; color:#f0a500; }

.site-footer .social { margin-top:18px; }
.site-footer .social li { display:inline-block; margin-right:12px; }
.site-footer .social .social-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  border-radius:50%;
  background:#3e3528; /* brownish */
  color:#fff;
  text-decoration:none;
  box-shadow: 0 4px 10px rgba(0,0,0,0.25);
}
.site-footer .social .social-btn span { font-size:18px; }
.site-footer .social .social-btn:hover { transform: translateY(-3px); }

.site-footer .footer-bottom { border-top: 1px solid rgba(255,255,255,0.03); padding-top:20px; margin-top:30px; }
.site-footer .copyright { color:#bfbfbf; margin:0; }
.site-footer .footer-links { list-style:none; margin:0; padding:0; }
.site-footer .footer-links li { display:inline-block; margin-left:18px; }
.site-footer .footer-links a { color:#bfbfbf; text-decoration:none; }
.site-footer .footer-links a:hover { color:#fff; }

@media (max-width: 767.98px) {
  .site-footer .footer-desc { max-width: 100%; }
  .site-footer .col-lg-2, .site-footer .offset-lg-1 { margin-top:18px; }
  .site-footer .footer-bottom .col-md-6 { text-align:center !important; margin-top:12px; }
}

/* Property card enhancements to match sample design */
.property-item .img img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 12px 12px 0 0;
  display: block;
}
.property-item .img { position: relative; overflow: hidden; }
.property-item .img .badge-type {
  position: absolute;
  left: 5px;
  top: 5px;
  background: #ffbd59;
  color: #fff;
  padding: 8px 14px;
  border-radius: 12px 12px 12px 0;
  font-weight: 700;
  box-shadow: 0 6px 16px rgba(0,0,0,0.12);
}
.property-item .property-content {
  border-radius: 0 0 12px 12px;
  padding: 24px;
  margin-top: -40px; /* pull card up slightly */
  box-shadow: 0 10px 30px rgba(8,15,25,0.08);
}
.property-item .property-title{
  font-size: 22px;
  margin: 0 0 8px;
  font-weight: 700;
}
.property-item .property-address{
  margin: 0 0 14px;
  color: #9aa0a6;
}
.property-item .price{
  font-size: 24px;
  color: #ffbd59;
  font-weight: 800;
}
.property-item .price .per{font-size:14px; color:#666; font-weight:600;}
.property-item .specs .caption{color:#6f6f6f; font-weight:600}

/* Slightly increase spacing for button */
.property-item .btn{margin-top:8px}

@media (max-width: 767.98px){
  .property-item .img img{height:160px}
  .property-item .property-content{margin-top:-30px}
}

/* Rent nav button (rounded orange pill) */
.site-nav .site-menu a.nav-btn-rent {
  display: inline-block;
  padding: 12px 32px !important;
  border-radius: 30px;
  background: linear-gradient(90deg, #f2a900 0%, #e78b00 100%) !important;
  color: #ffffff !important;
  font-weight: 800;
  box-shadow: 0 8px 18px rgba(0,0,0,0.28);
  text-decoration: none !important;
  transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease;
  /* border: 1px solid rgba(0,0,0,0.08); */
}
.site-nav .site-menu a.nav-btn-rent:hover,
.site-nav .site-menu a.nav-btn-rent:focus {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(0,0,0,0.32);
  opacity: 0.98;
}

/* Small-screen tweak: reduce padding */
@media (max-width: 991.98px) {
  .site-nav .site-menu a.nav-btn-rent { padding: 6px 16px; font-size: 0.95rem; }
}

/* ----- Listings page styles ----- */
/* Filter form */
.section-properties .col-12.mb-4 { margin-bottom: 0; }
.section-properties form .form-control, .section-properties form .form-select {
  border-radius: 8px;
  padding: 10px 12px;
  background: #fff;
  border: 1px solid rgba(15,20,25,0.06);
}
.section-properties form .btn { padding: 10px 16px; }

/* Property cards */
.section-properties .property-item {
  background: #ffffff;
  border-radius: 12px;
  overflow: hidden;
  transition: transform .28s cubic-bezier(.2,.9,.3,1), box-shadow .28s ease;
  border: 1px solid rgba(18,24,28,0.04);
}
.section-properties .property-item:hover { transform: translateY(-8px); box-shadow: 0 18px 40px rgba(12,18,24,0.08); }

.section-properties .property-item .img { position: relative; overflow: hidden; }
.section-properties .property-item .img img { width:100%; height:220px; object-fit:cover; display:block; }
.section-properties .property-item .img::after{ content:''; position:absolute; inset:0; background: linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,0.18) 100%); pointer-events:none; }

.section-properties .property-item .property-content{ padding:18px; }
.section-properties .property-item .property-title{ font-size:1.05rem; margin:0 0 6px; color:#0f1720; font-weight:700; }
.section-properties .property-item .property-address, .section-properties .property-item .city{ color:#6b7280; font-size:0.92rem; }
.section-properties .property-item .price{ color:#ff7a18; font-weight:800; font-size:1.15rem; }
.section-properties .property-item .specs .caption{ color:#6b7280; font-weight:600; }

/* Badge style (overrides older rules to match new look) */
.section-properties .badge-type{ position:absolute; left:12px; top:12px; background: linear-gradient(90deg,#ff7a18,#ffb200); color:#fff; padding:6px 12px; border-radius:10px; font-weight:700; box-shadow:0 8px 22px rgba(255,122,24,0.12); font-size:0.82rem; }

/* Pagination */
.custom-pagination{ display:inline-flex; gap:8px; align-items:center; }
.custom-pagination a{ display:inline-flex; align-items:center; justify-content:center; min-width:36px; height:36px; padding:0 10px; border-radius:8px; background:transparent; color:#374151; text-decoration:none; border:1px solid rgba(15,20,25,0.06); }
.custom-pagination a.active{ background: #ff7a18; color:#fff; border-color:transparent; box-shadow:0 8px 20px rgba(255,122,24,0.12); }
.custom-pagination a:hover{ transform:translateY(-2px); }

@media (max-width: 991.98px){
  .section-properties .property-item .img img{ height:180px; }
}
@media (max-width: 575.98px){
  .section-properties .property-item .img img{ height:150px; }
  .custom-pagination a{ min-width:32px; height:32px; }
}

/* Keep filter row tidy on small screens */
@media (max-width:767.98px){
  .section-properties .row > .col-12.mb-4 .row.g-2 > .col-auto, .section-properties .row > .col-12.mb-4 .row.g-2 > .col-sm-4 { width:100%; }
}

/* End listings styles */

/* Force filter form onto a single line on desktop */
@media (min-width: 992px) {
  .section-properties .col-12.mb-4 { overflow: visible; }
  .section-properties .col-12.mb-4 .row.g-2 {
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
    align-items: end;
  }
  .section-properties .col-12.mb-4 .row.g-2 > [class*="col-"] {
    flex: 0 0 auto;
    max-width: none;
  }
  /* approximate widths to fit typical desktop layout */
  /* Fixed pixel widths for desktop filter controls */
  .section-properties .col-12.mb-4 .col-md-3 { flex: 0 0 420px; }
  .section-properties .col-12.mb-4 .col-md-2.search-small { flex: 0 0 180px; }
  .section-properties .col-12.mb-4 .col-md-2 { flex: 0 0 140px; }
  .section-properties .col-12.mb-4 .col-auto { flex-basis: auto; }
  .section-properties .col-12.mb-4 .form-control, .section-properties .col-12.mb-4 .form-select { min-width: 0; }
}

/* Prevent horizontal scrollbar while keeping layout responsive.
  On small screens the filter row will wrap; on desktop it's single-line. */
.section-properties .col-12.mb-4 { overflow-x: hidden; }

