        :root {
            /* Primary Blue Palette - More vibrant and modern */
            --primary-blue-900: hsl(215, 85%, 20%);
            --primary-blue-800: hsl(215, 80%, 30%);
            --primary-blue-700: hsl(215, 75%, 40%);
            --primary-blue-600: hsl(215, 70%, 50%);
            --primary-blue-500: hsl(215, 75%, 60%);
            --primary-blue-400: hsl(215, 80%, 70%);
            --primary-blue-300: hsl(215, 85%, 80%);
            --primary-blue-200: hsl(215, 90%, 90%);
            --primary-blue-100: hsl(215, 95%, 95%);
            --primary-blue-50: hsl(215, 100%, 98%);
            
            /* Accent Gold/Yellow Palette - Warmer and more premium */
            --accent-gold-700: hsl(42, 90%, 45%);
            --accent-gold-600: hsl(42, 92%, 50%);
            --accent-gold-500: hsl(42, 95%, 55%);
            --accent-gold-400: hsl(43, 96%, 60%);
            --accent-gold-300: hsl(44, 97%, 70%);
            --accent-gold-200: hsl(45, 98%, 80%);
            --accent-gold-100: hsl(46, 100%, 90%);
            
            /* Neutral Palette - Better contrast */
            --neutral-white: hsl(0, 0%, 100%);
            --neutral-gray-50: hsl(215, 25%, 97%);
            --neutral-gray-100: hsl(215, 20%, 94%);
            --neutral-gray-200: hsl(215, 18%, 88%);
            --neutral-gray-300: hsl(215, 15%, 75%);
            --neutral-gray-400: hsl(215, 12%, 60%);
            --neutral-gray-500: hsl(215, 10%, 50%);
            --neutral-gray-600: hsl(215, 12%, 40%);
            --neutral-gray-700: hsl(215, 15%, 30%);
            --neutral-gray-800: hsl(215, 18%, 20%);
            --neutral-gray-900: hsl(215, 20%, 12%);
        }
        
        * {
            font-family: 'Inter', sans-serif;
        }
        
        .font-display {
            font-family: 'Playfair Display', serif;
        }
        
        .font-poppins {
            font-family: 'Poppins', sans-serif;
        }
        
        body {
            background: linear-gradient(to bottom, var(--neutral-gray-50), var(--neutral-white));
        }
        
        /* Enhanced Gradients with corrected colors */
        .gradient-primary {
            background: linear-gradient(135deg, var(--primary-blue-800) 0%, var(--primary-blue-600) 50%, var(--primary-blue-500) 100%);
        }
        
        .gradient-primary-soft {
            background: linear-gradient(135deg, var(--primary-blue-500) 0%, var(--primary-blue-400) 100%);
        }
        
        .gradient-accent {
            background: linear-gradient(135deg, var(--accent-gold-600) 0%, var(--accent-gold-500) 50%, var(--accent-gold-400) 100%);
        }
        
        .gradient-mesh {
            background: 
                radial-gradient(at 0% 0%, hsla(215, 70%, 60%, 0.12) 0px, transparent 50%),
                radial-gradient(at 100% 0%, hsla(42, 95%, 55%, 0.08) 0px, transparent 50%),
                radial-gradient(at 100% 100%, hsla(215, 75%, 70%, 0.1) 0px, transparent 50%),
                radial-gradient(at 0% 100%, hsla(43, 96%, 60%, 0.06) 0px, transparent 50%);
        }
        
        /* Glassmorphism */
        .glass-effect {
            background: rgba(255, 255, 255, 0.85);
            backdrop-filter: blur(20px) saturate(180%);
            border: 1px solid rgba(255, 255, 255, 0.5);
            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
        }
        
        .glass-dark {
            background: rgba(30, 41, 59, 0.7);
            backdrop-filter: blur(20px) saturate(180%);
            border: 1px solid rgba(255, 255, 255, 0.1);
        }
        
        /* Hover Effects */
        .hover-lift {
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        .hover-lift:hover {
            transform: translateY(-12px) scale(1.02);
            box-shadow: 0 25px 50px rgba(30, 64, 175, 0.15);
        }
        
        .hover-glow:hover {
            box-shadow: 0 0 30px rgba(251, 191, 36, 0.4);
        }
        
        /* Animations */
        .animate-fade-in {
            animation: fadeIn 0.8s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        @keyframes fadeIn {
            from {
                opacity: 0;
                transform: translateY(30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        
        .animate-slide-in {
            animation: slideIn 1s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        @keyframes slideIn {
            from {
                opacity: 0;
                transform: translateX(-60px);
            }
            to {
                opacity: 1;
                transform: translateX(0);
            }
        }
        
        .animate-float {
            animation: float 6s ease-in-out infinite;
        }
        
        @keyframes float {
            0%, 100% { transform: translateY(0px); }
            50% { transform: translateY(-20px); }
        }
        
        /* Property Card Effects */
        .property-card {
            position: relative;
            overflow: hidden;
            background: white;
            border-radius: 1.5rem;
        }
        
        .property-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, transparent, rgba(251, 191, 36, 0.2), transparent);
            transition: left 0.6s ease;
            z-index: 1;
        }
        
        .property-card:hover::before {
            left: 100%;
        }
        
        .property-image-wrapper {
            position: relative;
            overflow: hidden;
        }
        
        .property-image {
            transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        .property-card:hover .property-image {
            transform: scale(1.1);
        }
        
        /* Navigation */
        .nav-link {
            position: relative;
            transition: all 0.3s ease;
            padding-bottom: 4px;
        }
        
        .nav-link::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 0;
            height: 3px;
            background: linear-gradient(90deg, var(--accent-gold-600), var(--accent-gold-400));
            border-radius: 2px;
            transition: width 0.3s ease;
        }
        
        .nav-link:hover::after {
            width: 100%;
        }

        #header.bg-white .nav-link {
            color: #374151;
        }

        #header.bg-white .nav-link:hover {
            color: #2563eb;
        }
        
        /* Search Box */
        .search-box {
            box-shadow: 0 20px 60px rgba(30, 64, 175, 0.15);
            border: 2px solid rgba(255, 255, 255, 0.8);
        }
        
        /* Stats */
        .stat-number {
            background: linear-gradient(135deg, var(--neutral-white), var(--primary-blue-100));
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            font-weight: 800;
            text-shadow: 0 2px 10px rgba(255, 255, 255, 0.3);
        }
        
        .stat-card {
            background: rgba(255, 255, 255, 0.15);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.3);
            border-radius: 1rem;
            padding: 1.5rem;
            transition: all 0.3s ease;
        }
        
        .stat-card:hover {
            background: rgba(255, 255, 255, 0.25);
            transform: translateY(-5px);
        }
        
        /* Service Cards */
        .service-card {
            position: relative;
            overflow: hidden;
        }
        
        .service-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 4px;
            background: linear-gradient(90deg, var(--primary-blue-600), var(--accent-gold-500));
            transform: scaleX(0);
            transition: transform 0.3s ease;
        }
        
        .service-card:hover::before {
            transform: scaleX(1);
        }
        
        /* Icon Containers */
        .icon-container {
            position: relative;
            overflow: hidden;
        }
        
        .icon-container::before {
            content: '';
            position: absolute;
            inset: -2px;
            background: linear-gradient(45deg, var(--primary-blue-600), var(--accent-gold-500));
            border-radius: inherit;
            opacity: 0;
            transition: opacity 0.3s ease;
        }
        
        .service-card:hover .icon-container::before {
            opacity: 1;
            animation: rotate 2s linear infinite;
        }
        
        @keyframes rotate {
            from { transform: rotate(0deg); }
            to { transform: rotate(360deg); }
        }
        
        .icon-inner {
            position: relative;
            z-index: 1;
            border-radius: inherit;
            display: flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            height: 100%;
        }
        
        /* Badge */
        .badge-premium {
            background: linear-gradient(135deg, var(--accent-gold-600), var(--accent-gold-400));
            box-shadow: 0 4px 20px rgba(251, 191, 36, 0.5);
        }
        
        /* Testimonial */
        .testimonial-card {
            background: linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.7));
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.5);
        }
        
        /* Scroll Indicator */
        .scroll-indicator {
            animation: bounce 2s infinite;
        }
        
        @keyframes bounce {
            0%, 100% { transform: translateY(0); }
            50% { transform: translateY(10px); }
        }

        @media (max-width: 640px) {
            #logo-image {
                width: 120px !important;
            }
        }
