/* css/style.css */
:root {
    --maroon: #9b0001;
    --maroon-rgb: 155,0,1;
  }
  body { font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial; }
  .text-maroon { color: var(--maroon) !important; }
  .btn-maroon { background: var(--maroon); color: #fff; border: none; }
  .btn-maroon:hover { background: #7f0001; color: #fff; }
  .hero-img { height: 500px; object-fit: cover; }
  .hero-caption {
    background: rgba(var(--maroon-rgb), 0.85);
    padding: 20px;
    border-radius: 8px;
    left: 5%;
    right: auto;
    bottom: 30%;
    max-width: 40%;
  }
  .hero-caption h3, .hero-caption p, .hero-caption a { color: #fff; }
  .price { font-size: 1.2rem; font-weight: 700; }
  
  .property-card {
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    border: none;
  }
  .property-card:hover { transform: translateY(-6px); box-shadow: 0 12px 28px rgba(150, 18, 18, 0.658); }
  .property-card img { height: 200px; object-fit: cover; }
  
  /* Equal height property cards */
.property-card {
  display: flex;
  flex-direction: column;
}

.property-card img {
  height: 200px;
  object-fit: cover;
}

.property-card .card-body {
  display: flex;
  flex-direction: column;
}
/* Truncate long text inside cards */
.property-card .card-title {
  font-size: 1rem;
  font-weight: 600;
  white-space: nowrap;        /* prevent wrapping */
  overflow: hidden;           /* hide overflow */
  text-overflow: ellipsis;    /* add ... */
}

.property-card .card-text {
  font-size: 0.9rem;
  line-height: 1.4;
  max-height: 2.8em;          /* about 2 lines */
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;      /* limit to 2 lines */
  -webkit-box-orient: vertical;
}

  /* sticky nav twiddle */
  .navbar { z-index: 999; }
  
  /* small screens hero */
  @media (max-width: 767px) {
    .hero-img { height: 280px; }
    .hero-caption { max-width: 90%; bottom: 15%; }
  }
  
  /* footer */
  footer { font-size: 0.95rem; }
  
  /* badges, etc */
  .badge { font-size: 0.9rem; }
  .btn-maroon {
    background-color: #9b0001;
    color: #fff;
    border: none;
  }
  .btn-maroon:hover {
    background-color: #f31a1a;
  }
  .card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }
  .card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(139, 6, 6, 0.932);
  }
  .pagination .page-item.active .page-link {
    background-color: #9b000091;
    border-color: #9b00006b;
  }
  /* Responsive navbar logo */
/* Responsive navbar logo */
.logo-img {
  height: 45px;   /* default for mobile/tablet */
  width: auto;
}

@media (min-width: 992px) { /* laptops and up */
  .logo-img {
    height: 60px;
  }
}

@media (min-width: 1400px) { /* very large desktops */
  .logo-img {
    height: 70px;
  }
}

.navbar .nav-link {
  color: #fff !important;   /* make all nav links white */
}

.navbar .nav-link:hover,
.navbar .nav-link:focus {
  color: #f1f1f1 !important; /* slightly lighter white/gray on hover */
}

.navbar .dropdown-menu {
  background-color: #9b0001; /* match dropdown background with navbar */
}

.navbar .dropdown-item {
  color: #fff !important;
}

.navbar .dropdown-item:hover {
  background-color: #7a0000; /* darker shade on hover */
  color: #fff !important;
}
