        :root {
            --beige: #F5F2ED;
            --charcoal: #1A1A1A;
            --bronze: #A68A64;
            --ivory: #FAF9F6;
        }

        body {
            font-family: 'Inter', sans-serif;
            background-color: var(--ivory);
            color: var(--charcoal);
            overflow-x: hidden;
        }

        .serif { font-family: 'Playfair Display', serif; }
        .heading { font-family: 'DM Sans', sans-serif; }

        /* Luxury Animations */
        @keyframes reveal {
            from { opacity: 0; transform: translateY(30px); }
            to { opacity: 1; transform: translateY(0); }
        }

        .reveal { animation: reveal 1s cubic-bezier(0.2, 1, 0.3, 1) forwards; }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 6px; }
        ::-webkit-scrollbar-track { background: var(--ivory); }
        ::-webkit-scrollbar-thumb { background: var(--bronze); border-radius: 10px; }

        /* Property Cards - Lookbook Style */
        .property-card {
            position: relative;
            overflow: hidden;
            transition: all 0.7s cubic-bezier(0.4, 0, 0.2, 1);
            background: white;
            border: 1px solid rgba(0,0,0,0.03);
        }

        .property-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 30px 60px -15px rgba(0,0,0,0.1);
        }

        .property-card img {
            transition: transform 1.2s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .property-card:hover img {
            transform: scale(1.08);
        }

        .bronze-btn {
            background-color: var(--bronze);
            color: white;
            transition: all 0.4s ease;
        }

        .bronze-btn:hover {
            background-color: var(--charcoal);
            letter-spacing: 0.15em;
        }

        .nav-glass {
            background: rgba(250, 249, 246, 0.8);
            backdrop-filter: blur(15px);
            border-bottom: 1px solid rgba(166, 138, 100, 0.1);
        }

        .modal-bg {
            background: rgba(26, 26, 26, 0.95);
            backdrop-filter: blur(8px);
            display: none;
            position: fixed;
            inset: 0;
            z-index: 1000;
            padding: 2rem;
            align-items: center;
            justify-content: center;
        }

        .filter-chip.active {
            background: var(--bronze);
            color: white;
            border-color: var(--bronze);
        }
        @keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.animate-marquee {
  animation: marquee 35s linear infinite;
}


        .page { display: none; }
        .page.active { display: block; animation: reveal 0.8s ease-out; }

        /* Multi-page Navigation Helpers */
        .nav-link {
            position: relative;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.2em;
            text-transform: uppercase;
        }
        
        .nav-link::after {
            content: '';
            position: absolute;
            bottom: -5px;
            left: 0;
            width: 0;
            height: 1px;
            background: var(--bronze);
            transition: width 0.3s ease;
        }

        .nav-link:hover::after { width: 100%; }

        .image-placeholder {
            background: linear-gradient(45deg, #f0ede9, #e5e0d8);
            display: flex;
            align-items: center;
            justify-content: center;
            color: #b8b0a5;
            font-style: italic;
        }
        @keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.animate-marquee {
  animation: marquee 32s linear infinite;
}
.hero-slider {
  position: relative;
  width: 100%;
  height: 100%;
}

.hero-slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 1.5s ease-in-out;
}

.hero-slide.active {
  opacity: 1;
}
@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.animate-marquee {
  animation: marquee 36s linear infinite;
}
.nav-glass {
  backdrop-filter: blur(14px);
  background: rgba(15, 15, 15, 0.55);
  border-bottom: 1px solid rgba(255,255,255,0.08);
}

.nav-link {
  position: relative;
  font-size: 12px;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.8);
}

.nav-link::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 0;
  height: 1px;
  background: #c6a45a;
  transition: width 0.3s ease;
}

.nav-link:hover::after {
  width: 100%;
}
