:root {
  --primary-green: #44C662;
  --dark-gray: #5a5a5a;
}

/* General body styling */
body {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  color: var(--dark-gray);
}

/* Navbar styles */
.navbar {
  background-color: #fff;
  border-bottom: 1px solid #ddd;
}

.navbar-brand {
  color: var(--primary-green);
  font-size: 1.4rem;
}

.navbar-brand:hover {
  color: var(--primary-green);
  text-decoration: none;
}

.navbar-nav .nav-link {
  color: var(--dark-gray);
  font-weight: 500;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus {
  color: var(--primary-green);
}

/* Active link */
.navbar-nav .active .nav-link {
  color: var(--primary-green) !important;
}

/* Dropdown menu */
.dropdown-menu {
  border-radius: 0;
  border-color: #ddd;
}

.dropdown-item:hover {
  background-color: var(--primary-green);
  color: white;
}

/* Buttons */
.btn-primary,
.btn-success {
  background-color: var(--primary-green);
  border-color: var(--primary-green);
}

.btn-primary:hover,
.btn-success:hover {
  background-color: #3bb056;
  border-color: #3bb056;
}

/* Logo styling */
#logo-home {
  color: var(--primary-green);
  font-weight: bold;
}

#logo-estate {
  color: var(--dark-gray);
}
.logo-img {
  height: 50px;
  max-width: 100%;
  object-fit: contain;
}

/* Footer, headings, etc. */
footer {
  background-color: var(--dark-gray);
  color: white;
  padding: 20px 0;
}

h1, h2, h3, h4, h5, h6 {
  color: var(--dark-gray);
}

.hero-banner {
  position: relative;
  height: 90vh;
  overflow: hidden;
}

/* Carousel images */
.hero-banner .carousel-inner img {
  height: 100%;
  object-fit: cover;
  filter: brightness(0.6);
}

/* Fixed search form on the left */
.search-form-fixed {
  position: absolute;
  top: 50%;
  left: 5%;
  transform: translateY(-50%);
  width: 320px;
  background-color: rgba(255, 255, 255, 0.95);
  color: var(--dark-gray);
  border-radius: 10px;
  z-index: 10;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.search-property h2 {
  color: var(--primary-green);
  font-weight: bold;
}

.search-property .form-label {
  color: var(--dark-gray);
}

.search-property .btn-primary {
  background-color: var(--primary-green);
  border-color: var(--primary-green);
}

.search-property .btn-primary:hover {
  background-color: #3bb056;
  border-color: #3bb056;
}

/* Responsive tweak */
@media (max-width: 767.98px) {
  .search-form-fixed {
    position: static;
    transform: none;
    width: 100%;
    margin-top: 1rem;
    padding: 1rem;
  }

  .hero-banner {
    height: auto;
  }
}


.fade-in {
  animation: fadeIn 0.5s ease-in-out;
}
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
