 :root {
            --gold: #c9a45c;
            --ink: #0c0f0d;
            --ink2: #141a16;
            --cream: #f4ecd9
        }

        html {
            scroll-behavior: smooth
        }

        body {
            font-family: Inter, sans-serif;
            background: var(--cream);
            color: #d8d4c8;
            overflow-x: hidden
        }

        h1,
        h2,
        h3,
        h4,
        .serif {
            font-family: 'Cormorant Garamond', serif;
            color: var(--cream)
        }

        .gold {
            color: var(--gold);
        }
           .dark {
            color: var(--ink);
        }

        .eyebrow {
            letter-spacing: .35em;
            font-size: .72rem;
            text-transform: uppercase;
            color: var(--gold)
        }

        section {
            padding: 6rem 0;
            position: relative
        }

        .navbar {
            transition: .4s;
            padding: 1rem 0
        }

        .navbar.scrolled {
            background: rgba(12, 15, 13, .92);
            backdrop-filter: blur(10px);
            padding: .5rem 0;
            box-shadow: 0 1px 0 rgba(201, 164, 92, .25)
        }

        .navbar .nav-link {
            color: #e8e2d2;
            font-size: .8rem;
            letter-spacing: .15em;
            text-transform: uppercase
        }

        .navbar .nav-link:hover {
            color: var(--gold)
        }

        .navbar-brand img {
           /*  height: 44px;
            filter: brightness(0) invert(1) */
        }

        .btn-gold {
            background: linear-gradient(135deg, #e2c37f, #b88f3f);
            color: #171309;
            border: 0;
            letter-spacing: .12em;
            text-transform: uppercase;
            font-size: .78rem;
            font-weight: 600;
            padding: .9rem 2rem;
            border-radius: 0;
            position: relative;
            overflow: hidden
        }

        .btn-gold:hover {
            color: #000;
            box-shadow: 0 0 30px rgba(201, 164, 92, .5)
        }

        .btn-gold::after {
            content: "";
            position: absolute;
            top: 0;
            left: -80%;
            width: 50%;
            height: 100%;
            background: rgba(255, 255, 255, .45);
            transform: skewX(-25deg);
            animation: shine 3.5s infinite
        }

        @keyframes shine {
            to {
                left: 150%
            }
        }

        .btn-line {
            border: 1px solid var(--gold);
            color: var(--gold);
            border-radius: 0;
            letter-spacing: .12em;
            text-transform: uppercase;
            font-size: .78rem;
            padding: .9rem 2rem
        }

        .btn-line:hover {
            background: var(--gold);
            color: #111
        }

        /* hero */
        #home {
            min-height: 100vh;
            display: flex;
            align-items: center;
            overflow: hidden;
            padding: 0;
            background: linear-gradient(180deg, rgba(12, 15, 13, .55), rgba(12, 15, 13, .95)), radial-gradient(circle at 70% 30%, #2b3a2f, #0c0f0d 70%)
        }

        #heroBg {
            position: absolute;
            inset: -10% 0;
            background: url(https://venkateshbuildcon.com/wp-content/uploads/2026/07/2106-Venkatesh-Tresor-Baner_Cam_001_Opt01-scaled.jpg) center/cover;
            opacity: .55;
            will-change: transform;
            animation: kb 24s ease-in-out infinite alternate
        }

        @keyframes kb {
            from {
                scale: 1
            }

            to {
                scale: 1.12
            }
        }

        #home::before {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(180deg, rgba(12, 15, 13, .6), var(--ink));
            z-index: 1
        }

        #home .container {
            position: relative;
            z-index: 2
        }

        .hero-title {
            font-size: clamp(3.2rem, 10vw, 8rem);
            line-height: .95;
            font-weight: 700
        }

        .hero-title span {
            display: inline-block;
            opacity: 0;
            transform: translateY(60px);
            animation: rise .9s forwards
        }

        @keyframes rise {
            to {
                opacity: 1;
                transform: none
            }
        }

        .fade-in {
            opacity: 0;
            animation: rise 1s .9s forwards
        }

        canvas#sparks {
            position: absolute;
            inset: 0;
            z-index: 1;
            pointer-events: none
        }

        .scroll-cue {
            position: absolute;
            bottom: 28px;
            left: 50%;
            width: 22px;
            height: 38px;
            border: 1px solid var(--gold);
            border-radius: 12px;
            z-index: 2
        }

        .scroll-cue::after {
            content: "";
            position: absolute;
            top: 7px;
            left: 50%;
            width: 4px;
            height: 8px;
            margin-left: -2px;
            background: var(--gold);
            border-radius: 2px;
            animation: dot 1.6s infinite
        }

        @keyframes dot {
            to {
                transform: translateY(14px);
                opacity: 0
            }
        }

        /* marquee */
        .marquee {
            background: var(--gold);
            color: #16120a;
            overflow: hidden;
            white-space: nowrap;
            padding: .8rem 0;
            font-family: 'Cormorant Garamond', serif;
            font-weight: 700;
            font-size: 1.25rem
        }

        .marquee div {
            display: inline-block;
            animation: mq 30s linear infinite
        }

        @keyframes mq {
            to {
                transform: translateX(-50%)
            }
        }

        /* reveal */
        .rv {
            opacity: 0;
            transform: translateY(50px);
            transition: all 1s cubic-bezier(.2, .7, .2, 1)
        }

        .rv.l {
            transform: translateX(-60px)
        }

        .rv.r {
            transform: translateX(60px)
        }

        .rv.in {
            opacity: 1;
            transform: none
        }

        /* stats */
        .stat {
            border: 1px solid rgba(201, 164, 92, .25);
            padding: 2rem 1rem;
            text-align: center;
            transition: .4s;
            background: rgba(255, 255, 255, .02)
        }

        .stat:hover {
            transform: translateY(-8px);
            border-color: var(--gold);
            background: rgba(201, 164, 92, .07)
        }

        .stat b {
            font-family: 'Cormorant Garamond', serif;
            font-size: 3.6rem;
            color: var(--gold);
            display: block;
            line-height: 1
        }

        .frame {
            position: relative
        }

        .frame img {
            width: 100%;
            display: block
        }

        .frame::before {
            content: "";
            position: absolute;
            inset: -14px 14px 14px -14px;
            border: 1px solid var(--gold);
            z-index: -1;
            transition: .5s
        }

        .frame:hover::before {
            inset: -6px 6px 6px -6px
        }

        /* amenities */
        .am {
            padding: 2rem 1.2rem;
            text-align: center;
            border: 1px solid rgba(201, 164 ,92);
            height: 100%;
            transition: .4s;
            position: relative;
            overflow: hidden
        }

        .am::before {
            content: "";
            position: absolute;
            inset: auto 0 0 0;
            height: 0;
            background: linear-gradient(0deg, rgba(201, 164, 92, .18), transparent);
            transition: .5s
        }

        .am:hover::before {
            height: 100%
        }

        .am:hover {
            border-color: var(--gold);
            transform: translateY(-6px)
        }

        .am i {
            font-size: 2.2rem;
            font-style: normal;
            display: block;
            margin-bottom: .8rem;
            transition: .5s
        }

        .am:hover i {
            transform: scale(1.3) rotate(8deg)
        }

        /* gallery */
        .g {
            position: relative;
            overflow: hidden;
            cursor: zoom-in;
            aspect-ratio: 4/3;
            background: var(--ink2)
        }

        .g img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 1.2s
        }

        .g:hover img {
            transform: scale(1.15)
        }

        .g span {
            position: absolute;
            left: 0;
            right: 0;
            bottom: 0;
            padding: 1.2rem;
            background: linear-gradient(0deg, rgba(0, 0, 0, .8), transparent);
            color: var(--cream);
            transform: translateY(100%);
            transition: .5s;
            font-family: 'Cormorant Garamond', serif;
            font-size: 1.3rem
        }

        .g:hover span {
            transform: none
        }

        /* location timeline */
        .loc {
            display: flex;
            justify-content: space-between;
            border-bottom: 1px dashed rgba(201, 164, 92, .3);
            padding: .9rem 0
        }

        .loc b {
            color: var(--gold)
        }

        iframe {
            border: 0;
            width: 100%;
            height: 100%;
            min-height: 380px;
            filter: grayscale(1) invert(.9) contrast(.85)
        }

        /* spec accordion */
        .accordion-item {
            background: transparent;
            border: 0;
            border-bottom: 1px solid rgba(201, 164, 92, .25)
        }

        .accordion-button {
            background: transparent;
            color: var(--cream);
            font-family: 'Cormorant Garamond', serif;
            font-size: 1.4rem;
            box-shadow: none !important
        }

        .accordion-button:not(.collapsed) {
            color: var(--gold);
            background: transparent
        }

        .accordion-button::after {
            filter: invert(1)
        }

        .accordion-body {
            color: #bdb8aa;
            font-size: .92rem
        }

        .form-control {
            background: transparent;
            border: 0;
            border-bottom: 1px solid rgba(201, 164, 92, .5);
            border-radius: 0;
            color: #fff;
            padding-left: 0
        }

        .form-control:focus {
            background: transparent;
            color: #fff;
            box-shadow: none;
            border-color: var(--gold)
        }

        .form-control::placeholder {
            color: #8d897d
        }

        /* pricing */
        .pc {
            border: 1px solid rgba(201, 164, 92, .3);
            padding: 2.6rem 2rem;
            height: 100%;
            position: relative;
            overflow: hidden;
            background: linear-gradient(160deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, 0));
            transition: .5s
        }

        .pc:hover {
            transform: translateY(-10px);
            border-color: var(--gold);
            box-shadow: 0 20px 50px rgba(0, 0, 0, .5), 0 0 40px rgba(201, 164, 92, .12)
        }

        .pc::after {
            content: "";
            position: absolute;
            width: 220px;
            height: 220px;
            right: -90px;
            top: -90px;
            border-radius: 50%;
            background: radial-gradient(circle, rgba(201, 164, 92, .25), transparent 70%);
            transition: .6s
        }

        .pc:hover::after {
            transform: scale(1.8)
        }

        .pc .amt {
            font-family: 'Cormorant Garamond', serif;
            font-size: 3rem;
            color: var(--gold);
            line-height: 1.1
        }

        .pc .tag {
            position: absolute;
            top: 1.2rem;
            right: 1.2rem;
            font-size: .65rem;
            letter-spacing: .2em;
            text-transform: uppercase;
            background: var(--gold);
            color: #16120a;
            padding: .25rem .7rem;
            z-index: 1
        }

        .pc ul {
            list-style: none;
            padding: 0;
            margin: 1.4rem 0 2rem
        }

        .pc li {
            padding: .45rem 0;
            border-bottom: 1px dashed rgba(201, 164, 92, .25);
            font-size: .9rem
        }

        .pc li::before {
            content: "◆";
            color: var(--gold);
            font-size: .55rem;
            margin-right: .7rem;
            vertical-align: middle
        }

        /* plans */
        .nav-pills .nav-link {
            color: #cfc9b8;
            border-radius: 0;
            border: 1px solid rgba(201, 164, 92, .3);
            letter-spacing: .14em;
            text-transform: uppercase;
            font-size: .75rem;
            padding: .8rem 1.6rem;
            margin: 0 .3rem .6rem
        }

        .nav-pills .nav-link.active,
        .nav-pills .nav-link:hover {
            background: var(--gold);
            color: #16120a;
            border-color: var(--gold)
        }

        .plan-box {
            border: 1px solid rgba(201, 164, 92, .3);
            background: rgba(255, 255, 255, .02);
            padding: 1.5rem;
            min-height: 340px;
            display: grid;
            place-items: center;
            text-align: center
        }

        .plan-box img {
            max-width: 100%;
            max-height: 520px;
            cursor: zoom-in;
            transition: transform .6s
        }

        .plan-box img:hover {
            transform: scale(1.03)
        }

        .fp path,
        .fp rect,
        .fp line {
            fill: none;
            stroke: var(--gold);
            stroke-width: 2;
            stroke-dasharray: 1400;
            stroke-dashoffset: 1400
        }

        .tab-pane.active .fp path,
        .tab-pane.active .fp rect,
        .tab-pane.active .fp line {
            animation: draw 2.6s forwards
        }

        .fp .unit {
            fill: rgba(201, 164, 92, .08);
            transition: .4s
        }

        .fp .unit:hover {
            fill: rgba(201, 164, 92, .3)
        }

        .fp text {
            fill: var(--cream);
            font-family: 'Cormorant Garamond', serif;
            font-size: 19px;
            text-anchor: middle
        }

        .fp text.s {
            font-family: Inter, sans-serif;
            font-size: 11px;
            fill: #bdb8aa;
            letter-spacing: .1em
        }

        @keyframes draw {
            to {
                stroke-dashoffset: 0
            }
        }

        footer {
            background: #070908;
            padding: 3rem 0;
            font-size: .78rem;
            color: #8d897d
        }

        .fab {
            position: fixed;
            right: 18px;
            bottom: 18px;
            z-index: 99;
            width: 56px;
            height: 56px;
            border-radius: 50%;
            background: #25d366;
            display: grid;
            place-items: center;
            color: #fff;
            font-size: 1.6rem;
            text-decoration: none;
            animation: pulse 2s infinite
        }

        @keyframes pulse {
            0% {
                box-shadow: 0 0 0 0 rgba(37, 211, 102, .6)
            }

            100% {
                box-shadow: 0 0 0 22px rgba(37, 211, 102, 0)
            }
        }

        @media(prefers-reduced-motion:reduce) {
            * {
                animation: none !important;
                transition: none !important
            }

            .rv,
            .hero-title span,
            .fade-in {
                opacity: 1;
                transform: none
            }
        }