/* Your existing body and base styles remain unchanged */
      body {
        font-family: "Arial", sans-serif;
        background-image: url("https://e.staedtlercdn.com/images/RgHAsNOt_8HR9WzxpGbaONwJXUV4LxEd-6wcegIJs3k/w:1120/h:631/fn:Y3NtX01hbmRhbGEtTWFyaWFubmVfMjVkNWQ5NGVlMw:t/cb:b2db328845af36fc2b1f9d4fd3f89f5ad3335f79/el:1/fq:jpeg:85:avif:70:webp:80/c:3911.1111111111:2200:fp:0.5:0.5/rt:force/aHR0cHM6Ly9lLnN0YWVkdGxlcmNkbi5jb20vZmlsZWFkbWluL3VzZXJfdXBsb2FkL0NvbnRlbnQvQXJ0aWNsZXMvSTM5LU1hbmRhbGEtTWFyaWFubmUvTWFuZGFsYS1NYXJpYW5uZS5qcGc_MTY1OTAxMjIyNg");
        background-size: cover;
        background-position: center;
        background-attachment: fixed;
        position: relative;
      }

      body::before {
        content: "";
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(26, 26, 26, 0.8);
        z-index: -1;
      }

      .overlay {
        background-color: rgba(0, 0, 0, 0.6);
        min-height: 100vh;
      }

      .dropdown:hover .dropdown-menu {
        display: block;
      }

      .search-card {
        background: rgba(30, 30, 47, 0.9);
        backdrop-filter: blur(10px);
      }

      .property-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 10px 25px rgba(0, 201, 167, 0.2);
      }

      /* Mobile menu styles - unchanged */
      .mobile-menu {
        display: none;
        transition: all 0.3s ease;
      }

      .mobile-menu.active {
        display: block;
      }

      /* Mobile dropdown styles - unchanged */
      .mobile-dropdown-content {
        display: none;
        padding-left: 1rem;
      }

      .mobile-dropdown-content.active {
        display: block;
      }

      /* ===== NAVBAR PROTECTION ===== */
      /* .main-nav {
      position: sticky;
      top: 0;
      z-index: 50;
      width: 100%;
      background-color: rgba(30, 30, 47, 0.9);
    } */
      

      /* ===== CAROUSEL STYLES (NON-INTRUSIVE) ===== */
      /* #cardCarousel {
        overflow-x: auto;
        scrollbar-width: none;
        -ms-overflow-style: none;
        margin-top: 1rem;
      }

      #cardCarousel::-webkit-scrollbar {
        display: none;
      }

      #cardCarousel .flex {
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        display: flex !important;
        gap: 1.5rem;
        padding-bottom: 1rem;
      }

      /* Navigation Buttons - Specific to Carousel Only */
      #cardCarousel #prevBtn,
      #cardCarousel #nextBtn {
        position: absolute;
        top: 50%;
        z-index: 10;
        background: rgba(30, 30, 47, 0.9);
        border: none;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0.75rem;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
        transition: all 0.3s ease;
        opacity: 0;
        pointer-events: none;
        transform: translateY(-50%);
        width: 40px;
        height: 40px;
      }

      #cardCarousel #prevBtn {
        left: 1rem;
      }

      #cardCarousel #nextBtn {
        right: 1rem;
      }

      #cardCarousel #prevBtn.visible,
      #cardCarousel #nextBtn.visible {
        opacity: 1;
        pointer-events: auto;
      }

      #cardCarousel #prevBtn:hover,
      #cardCarousel #nextBtn:hover {
        background: #b98007;
      }

      /* Mobile Styles (up to 767px) */
      @media (max-width: 767px) {
        #cardCarousel .flex > div {
          min-width: 85%;
          scroll-snap-align: start;
        }

        #cardCarousel .flex > div .relative {
          height: 160px;
        }
      }

      /* Tablet Styles (768px to 1023px) */
      @media (min-width: 768px) and (max-width: 1023px) {
        #cardCarousel .flex > div {
          min-width: calc(50% - 0.75rem);
        }
      }

      /* Desktop Styles (1024px and up) */
      @media (min-width: 1024px) {
        #cardCarousel .flex > div {
          min-width: calc(25% - 1.125rem);
        }
      }
      #cityCarousel {
        overflow-x: auto;
        scrollbar-width: none;
        -ms-overflow-style: none;
        padding-bottom: 1rem;
      }

      #cityCarousel::-webkit-scrollbar {
        display: none;
      }

      #cityCarousel .flex {
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 4px;
      }

      #cityPrevBtn,
      #cityNextBtn {
        width: 40px;
        height: 40px;
        background: rgba(30, 30, 47, 0.9);
        transition: all 0.3s ease;
      }

      #cityPrevBtn:hover,
      #cityNextBtn:hover {
        background: #b98007;
      }

      @media (max-width: 767px) {
        #cityCarousel .flex > div {
          min-width: 85%;
          scroll-snap-align: start;
          margin-right: 1rem;
        }

        #cityPrevBtn,
        #cityNextBtn {
          width: 36px;
          height: 36px;
        }
      }

      @media (min-width: 768px) and (max-width: 1023px) {
        #cityCarousel .flex > div {
          min-width: calc(50% - 0.75rem);
        }
      }

      @media (min-width: 1024px) {
        #cityCarousel .flex > div {
          min-width: calc(25% - 0.75rem);
        }
      }
      #typeCarousel {
        overflow-x: auto;
        scrollbar-width: none;
        -ms-overflow-style: none;
        padding-bottom: 1rem;
      }

      #typeCarousel::-webkit-scrollbar {
        display: none;
      }

      #typeCarousel .flex {
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 4px;
      }

      #typePrevBtn,
      #typeNextBtn {
        width: 40px;
        height: 40px;
        background: rgba(30, 30, 47, 0.9);
        transition: all 0.3s ease;
      }

      #typePrevBtn:hover,
      #typeNextBtn:hover {
        background: #b98007;
      }

      @media (max-width: 767px) {
        #typeCarousel .flex > div {
          min-width: 85%;
          scroll-snap-align: start;
          margin-right: 1rem;
        }

        #typePrevBtn,
        #typeNextBtn {
          width: 36px;
          height: 36px;
        }
      }

      @media (min-width: 768px) and (max-width: 1023px) {
        #typeCarousel .flex > div {
          min-width: calc(50% - 0.75rem);
        }
      }

      @media (min-width: 1024px) {
        #typeCarousel .flex > div {
          min-width: calc(25% - 0.75rem);
        }
      }

      /* Image size adjustments */
      .w-10.h-10 {
        width: 2.5rem;
        height: 2.5rem;
      }

      /* Text truncation for small screens */
      .truncate {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }

      /* Add these styles to your existing style section */
      #featuredCarousel {
        overflow-x: auto;
        scrollbar-width: none;
        -ms-overflow-style: none;
        padding-bottom: 1rem;
      }

      #featuredCarousel::-webkit-scrollbar {
        display: none;
      }

      #featuredCarousel .flex {
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 4px;
      }

      #featuredPrevBtn,
      #featuredNextBtn {
        width: 40px;
        height: 40px;
        background: rgba(30, 30, 47, 0.9);
        transition: all 0.3s ease;
      }

      #featuredPrevBtn:hover,
      #featuredNextBtn:hover {
        background: #b98007;
      }

      @media (max-width: 767px) {
        #featuredCarousel .flex > div {
          min-width: calc(100% - 32px);
          scroll-snap-align: start;
          margin-right: 1rem;
        }

        #featuredPrevBtn,
        #featuredNextBtn {
          width: 36px;
          height: 36px;
        }
      }

      @media (min-width: 768px) and (max-width: 1023px) {
        #featuredCarousel .flex > div {
          min-width: calc(50% - 16px);
        }
      }

      @media (min-width: 1024px) {
        #featuredCarousel .flex > div {
          min-width: calc(25% - 18px);
        }
      }