:root {
  --me-primary: #0d6efd;
  --me-dark: #1a2233;
}

body {
  font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  background-color: #f7f8fa;
  color: #222;
}

a.footer-link {
  color: #adb5bd;
  text-decoration: none;
}
a.footer-link:hover {
  color: #fff;
}

/* Hero */
.hero-section {
  background: linear-gradient(135deg, #0d47a1 0%, #1565c0 45%, #1e88e5 100%);
  padding-top: 3rem;
  padding-bottom: 6rem;
}
.search-card {
  margin-top: -3.5rem;
  border-radius: 14px;
}

/* Category cards */
.category-card {
  border-radius: 12px;
  transition: transform .15s ease, box-shadow .15s ease;
}
.category-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.1) !important;
}

/* Property cards */
.property-card {
  border-radius: 12px;
  overflow: hidden;
  transition: transform .15s ease, box-shadow .15s ease;
}
.property-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 .75rem 1.5rem rgba(0,0,0,.12) !important;
}
.property-card-img {
  height: 200px;
  object-fit: cover;
}
.property-gallery-img {
  height: 460px;
  object-fit: cover;
}
.property-meta > div {
  min-width: 90px;
}

.amenity-filter-list {
  max-height: 220px;
  overflow-y: auto;
}

/* CTA */
.cta-section {
  background: var(--me-dark);
}

/* Admin */
.admin-sidebar {
  min-height: 100vh;
  background: var(--me-dark);
}
.admin-sidebar .nav-link {
  color: #cbd5e1;
  border-radius: 8px;
  padding: .55rem .9rem;
}
.admin-sidebar .nav-link.active,
.admin-sidebar .nav-link:hover {
  background: rgba(255,255,255,.08);
  color: #fff;
}
.stat-card {
  border-radius: 12px;
  border: 0;
}
.image-thumb {
  width: 100px;
  height: 75px;
  object-fit: cover;
  border-radius: 6px;
}

.dashboard-sidebar .nav-link {
  color: #495057;
  border-radius: 8px;
}
.dashboard-sidebar .nav-link.active {
  background: var(--me-primary);
  color: #fff;
}
