 body {
 font-family: 'Inter', sans-serif;
 }

 .dropdown:hover .dropdown-menu {
 display: block;
 }

 .dropdown-menu {
 display: none;
 }

 .nav-link {
 position: relative;
 }

 .nav-link::after {
 content: '';
 position: absolute;
 bottom: -2px;
 left: 0;
 width: 0;
 height: 2px;
 background: linear-gradient(to right, #DFB162, #744424);
 transition: width 0.3s ease;
 }

 .nav-link:hover::after {
 width: 100%;
 }

 .mobile-dropdown.active .dropdown-icon {
 transform: rotate(180deg);
 }

 .mobile-dropdown-menu {
 max-height: 0;
 overflow: hidden;
 transition: max-height 0.3s ease;
 }

 .mobile-dropdown.active .mobile-dropdown-menu {
 max-height: 500px;
 }

 .no-scroll {
 overflow: hidden;
 }

 /* Header scroll effect */
 .header-transparent {
 background-color: transparent;
 backdrop-filter: none;
 border-bottom: 1px solid rgba(255, 255, 255, 0.1);
 box-shadow: none;
 }

 .header-scrolled {
 background-color: rgba(255, 255, 255, 0.95);
 backdrop-filter: blur(10px);
 border-bottom: 1px solid rgba(0, 0, 0, 0.1);
 box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
 }

 .header-scrolled.dark {
 background-color: rgba(15, 23, 42, 0.95);
 border-bottom: 1px solid rgba(255, 255, 255, 0.1);
 }



 .dropdown-menu::before {
 content: '';
 position: absolute;
 top: -0.5rem;
 left: 0;
 right: 0;
 height: 0.5rem;
 }



 .hover-lift {
 transition: transform 0.3s ease, color 0.3s ease;
 }

 .hover-lift:hover {
 transform: translateY(-2px);
 }

 .icon-hover {
 transition: all 0.3s ease;
 }

 .icon-hover:hover {
 transform: scale(1.15);
 }

 .gradient-border {
 position: relative;
 }

 .gradient-border::before {
 content: '';
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 height: 1px;
 background: linear-gradient(90deg, transparent, rgba(254, 129, 6, 0.3), transparent);
 }

 /* Hero section for demo */
 .hero-section {
 background: linear-gradient(135deg, #3f44ef 0%, #2429d3 100%);
 min-height: 100vh;
 display: flex;
 align-items: center;
 justify-content: center;
 color: white;
 text-align: center;
 padding-top: 80px;
 }


 /* estate section  */

 .fade-in {
 animation: fadeIn 0.6s ease-in;
 }
 @keyframes fadeIn {
 from { opacity: 0; transform: translateY(20px); }
 to { opacity: 1; transform: translateY(0); }
 }
 .estates-carousel {
 scroll-behavior: smooth;
 scrollbar-width: none;
 scroll-snap-type: x mandatory;
 }
 .estates-carousel::-webkit-scrollbar {
 display: none;
 }
 .estate-card {
 scroll-snap-align: start;
 }
 /* Gradient overlay for next card peek */
 .carousel-peek-gradient {
 position: absolute;
 right: 0;
 top: 0;
 bottom: 0;
 width: 50px;
 background: linear-gradient(to right, transparent, white);
 pointer-events: none;
 z-index: 5;
 }
 @media (max-width: 768px) {
 .carousel-peek-gradient {
 width: 50px;
 }
 }

 .carousel-container {
 scroll-behavior: smooth;
 scrollbar-width: none;
 }
 .carousel-container::-webkit-scrollbar {
 display: none;
 }



 /* hero section  */
 
        .slide {
            position: absolute;
            inset: 0;
            opacity: 0;
            transition: opacity 0.8s ease-in-out;
            pointer-events: none;
        }
        
        .slide.active {
            opacity: 1;
            pointer-events: auto;
        }
        
        @keyframes fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
        }
        
        @keyframes slideInLeft {
            from {
                opacity: 0;
                transform: translateX(-50px);
            }
            to {
                opacity: 1;
                transform: translateX(0);
            }
        }
        
        .slide.active .content-animate {
            animation: slideInLeft 0.8s ease-out forwards;
        }
        
        .nav-button {
            transition: all 0.3s ease;
        }
        
        .nav-button:hover {
            background: rgba(255, 255, 255, 0.3);
            /* transform: scale(1.1); */
        }
        
        .dot {
            width: 0.5rem;
            height: 0.5rem;
            background: rgba(255, 255, 255, 0.5);
            border-radius: 9999px;
            transition: all 0.4s ease;
            cursor: pointer;
        }
        
        .dot:hover {
            background: rgba(255, 255, 255, 0.8);
        }
        
        .dot.active {
            width: 3rem;
            height: 0.5rem;
            background: #DFB162;
            border-radius: 9999px;
        }
        
        .dot.active:hover {
            background: #DFB162;
        }





          .projects-carousel {
            scrollbar-width: none;
            -ms-overflow-style: none;
            scroll-behavior: smooth;
        }
        .projects-carousel::-webkit-scrollbar {
            display: none;
        }
        
        .project-card {
            scroll-snap-align: start;
            transition: all 0.3s ease;
        }

        .project-card:hover {
            transform: translateY(-8px);
        }

        .carousel-peek-gradient {
            position: absolute;
            top: 0;
            bottom: 0;
            width: 100px;
            pointer-events: none;
            z-index: 10;
        }

        .carousel-peek-gradient.left {
            left: 0;
            background: linear-gradient(to right, white, transparent);
        }

        .carousel-peek-gradient.right {
            right: 0;
            background: linear-gradient(to left, white, transparent);
        }

        /* Modal styles */
        .modal {
            display: none;
            position: fixed;
            z-index: 9999;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.95);
            animation: fadeIn 0.3s ease;
        }

        .modal.active {
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .modal-content {
            position: relative;
            max-width: 95vw;
            max-height: 95vh;
            animation: zoomIn 0.3s ease;
        }

        .modal-content img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            max-height: 90vh;
        }

        @keyframes fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
        }

        @keyframes zoomIn {
            from {
                transform: scale(0.8);
                opacity: 0;
            }
            to {
                transform: scale(1);
                opacity: 1;
            }
        }

        .close-modal {
            position: absolute;
            top: 20px;
            right: 30px;
            font-size: 40px;
            font-weight: bold;
            color: white;
            cursor: pointer;
            transition: all 0.3s ease;
            z-index: 10000;
        }

        .close-modal:hover {
            color: #f59e0b;
            transform: rotate(90deg);
        }

        .modal-nav {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: rgba(255, 255, 255, 0.2);
            backdrop-filter: blur(10px);
            color: white;
            font-size: 24px;
            padding: 20px;
            cursor: pointer;
            transition: all 0.3s ease;
            border: 2px solid rgba(255, 255, 255, 0.3);
            border-radius: 50%;
            width: 60px;
            height: 60px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .modal-nav:hover {
            background: rgba(245, 158, 11, 0.8);
            border-color: #f59e0b;
        }

        .modal-nav.prev {
            left: 20px;
        }

        .modal-nav.next {
            right: 20px;
        }

        .image-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, rgba(0,0,0,0.3), transparent);
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .project-card:hover .image-overlay {
            opacity: 1;
        }

        .view-icon {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%) scale(0);
            background: rgba(245, 158, 11, 0.9);
            color: white;
            width: 60px;
            height: 60px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 24px;
            transition: all 0.3s ease;
        }

        .project-card:hover .view-icon {
            transform: translate(-50%, -50%) scale(1);
        }