/* ==========================================================================
           VIMO VRINDA TOUR — Premium stylesheet
           Palette drawn from the subject itself: red-sandstone maroon (Agra Fort),
           antique gold (temple gilding), warm marble ivory, and ink.
           Signature motif: a jali (marble lattice) texture, referencing the carved
           screens of Agra Fort & the Taj Mahal, used sparingly on dark bands.
           ========================================================================== */

        :root {
            /* ---- core palette ---- */
            --ivory: #FBF6EC;
            /* page base — warm marble, not paper-white */
            --ivory-2: #fff;
            /* alt section tint */
            --maroon: #cb8f31;
            /* red sandstone / Agra Fort */
            --maroon-deep: #cb8f31;
            /* footer / deepest ink-maroon */
            --gold: #B8862F;
            /* antique brass, temple gilding */
            --gold-light: #D9A94C;
            /* hover / highlight gold */
            --gold-pale: #F0DCA6;
            /* faint gold for hairlines on dark */
            --ink: #241C13;
            /* near-black warm ink */
            --ink-soft: #000;
            /* muted body copy */
            --line: rgba(36, 28, 19, .10);

            --shadow-sm: 0 2px 10px rgba(58, 16, 19, .08);
            --shadow-md: 0 18px 40px -18px rgba(58, 16, 19, .28);
            --shadow-lg: 0 30px 60px -22px rgba(58, 16, 19, .35);

            --radius: 10px;
            --radius-lg: 18px;

            --bs-body-font-family: 'Inter', sans-serif;
        }

        * {
            box-sizing: border-box;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: 'Inter', sans-serif;
            color: var(--ink);
            background: var(--ivory);
            -webkit-font-smoothing: antialiased;
        }

        h1,
        h2,
        h3,
        h4,
        .display-font {
            font-family: 'Cormorant Garamond', serif;
            font-weight: 700;
            letter-spacing: .2px;
            color: var(--ink);
        }

        .eyebrow {
            font-family: 'Inter', sans-serif;
            text-transform: uppercase;
            letter-spacing: .2em;
            font-size: 1.72rem;
            font-weight: 600;
            color: var(--gold);
        }

        a {
            text-decoration: none;
        }

        p {
            /*font-size: 1.05rem;*/
            font-size:22px;
            line-height: 1.7;
            color: var(--ink-soft);
        }

        .lead {
            font-size: 1.25rem;
            color: var(--ink-soft);
        }

        /* ---- Jali lattice texture (signature motif), used only on dark bands ---- */
        .jali-texture {
            background-image:
                radial-gradient(circle at center, rgba(217, 169, 76, .16) 0 1.5px, transparent 1.6px);
            background-size: 26px 26px;
            background-position: 0 0, 13px 13px;
        }

        /* ---- Arch divider ---- */
        .arch-divider {
            width: 100%;
            height: 38px;
            background: var(--ivory);
            overflow: hidden;
        }

        .arch-divider svg path {
            fill: var(--maroon) !important;
            opacity: 1 !important;
        }

        /* ==========================================================================
             Navbar
             ========================================================================== */
        .navbar-vrinda {
            /*background: var(--ivory);*/
            background: #fff;
            border-bottom: 1px solid var(--line);
            padding-top: .7rem;
            padding-bottom: .7rem;
            transition: box-shadow .25s ease;
        }

        .navbar-vrinda.sticky-top {
            box-shadow: 0 4px 20px rgba(58, 16, 19, .06);
        }

        .navbar-vrinda .navbar-brand {
            font-family: 'Cormorant Garamond', serif;
            font-weight: 700;
        }

        .navbar-vrinda .nav-link {
            color: var(--ink);
            font-weight: 500;
            font-size: 1rem;
            margin: 0 .55rem;
            position: relative;
            padding-bottom: .2rem;
        }

        .navbar-vrinda .nav-link::after {
            content: "";
            position: absolute;
            left: 0;
            bottom: -2px;
            width: 0;
            height: 1.5px;
            background: var(--gold);
            transition: width .25s ease;
        }

        .navbar-vrinda .nav-link:hover {
            color: var(--maroon);
        }

        .navbar-vrinda .nav-link:hover::after {
            width: 100%;
        }

        /* ---- Buttons ---- */
        .btn-marigold {
            background: linear-gradient(135deg, var(--gold-light), var(--gold));
            border: none;
            color: var(--ink);
            font-weight: 700;
            letter-spacing: .02em;
            padding: .62rem 1.5rem;
            border-radius: 3px;
            box-shadow: 0 8px 20px -8px rgba(184, 134, 47, .55);
            transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
        }

        .btn-marigold:hover {
            transform: translateY(-2px);
            box-shadow: 0 12px 26px -8px rgba(184, 134, 47, .65);
            color: var(--ink);
        }

        .btn-outline-stone {
            border: 1.5px solid var(--maroon);
            color: var(--maroon);
            font-weight: 600;
            padding: .55rem 1.4rem;
            border-radius: 3px;
            background: transparent;
            transition: all .2s ease;
        }

        .btn-outline-stone:hover {
            background: var(--maroon);
            border-color: var(--maroon);
            color: #fff;
        }

        /* ---- Marquee ---- */
        .tour-marquee {
            background: linear-gradient(90deg, var(--maroon), var(--maroon-deep));
            color: var(--gold-pale);
            padding: .6rem 0;
            font-size: 1rem;
            font-weight: 600;
            letter-spacing: .03em;
            border-bottom: 1px solid rgba(217, 169, 76, .25);
        }

        /* ==========================================================================
             Sections — shared rhythm
             ========================================================================== */
        section {
            padding: 5.5rem 0;
        }

        .section-head {
            max-width: 640px;
            margin-bottom: 2.8rem;
        }

        .section-head h2 {
            font-size: clamp(1.9rem, 3.4vw, 2.7rem);
        }

        .section-head p {
            color: var(--ink-soft);
        }

        .section-cream {
            background: var(--ivory);
        }

        .bg-light {
            background: var(--ivory-2) !important;
        }

        /* ==========================================================================
             About / hero-adjacent intro
             ========================================================================== */
        .about-img,
        img.img-fluid.rounded-4 {
            box-shadow: var(--shadow-lg);
        }

        .position-absolute.bottom-0.start-0.bg-white,
        .position-absolute.bottom-0.bg-white {
            border-radius: var(--radius-lg) !important;
            box-shadow: var(--shadow-md) !important;
            border-top: 3px solid var(--gold);
        }

        /* ==========================================================================
             Booking card
             ========================================================================== */
        #book {
            scroll-margin-top: 90px;
        }

        .booking-card {
            background: #fff;
            border-radius: var(--radius);
            box-shadow: var(--shadow-lg);
            padding: 2.1rem 2.1rem 1.7rem;
            position: relative;
            z-index: 5;
            border-top: 4px solid var(--gold);
        }

        .trip-toggle-wrap {
            display: flex;
            gap: .6rem;
            margin-bottom: 1.4rem;
            flex-wrap: wrap;
        }

        .trip-btn {
            border: 1.5px solid var(--ivory-2);
            background: var(--ivory);
            color: var(--ink-soft);
            font-weight: 600;
            font-size: .86rem;
            padding: .5rem 1.15rem;
            border-radius: 30px;
            transition: all .2s ease;
        }

        .trip-btn i {
            margin-right: .4rem;
        }

        .trip-btn.active,
        .trip-btn:hover {
            background: var(--maroon);
            border-color: var(--maroon);
            color: #fff;
        }

        .booking-card .form-label {
            font-size: .75rem;
            text-transform: uppercase;
            letter-spacing: .08em;
            color: var(--ink-soft);
            font-weight: 600;
            margin-bottom: .3rem;
        }

        .booking-card .form-control {
            border: 1.5px solid var(--ivory-2);
            border-radius: 3px;
            padding: .6rem .8rem;
            font-size: .92rem;
            background: var(--ivory);
        }

        .booking-card .form-control:focus {
            border-color: var(--gold);
            box-shadow: 0 0 0 3px rgba(184, 134, 47, .16);
            background: #fff;
        }

        .booking-card .input-icon {
            position: relative;
        }

        .booking-card .input-icon i {
            position: absolute;
            left: .8rem;
            top: 50%;
            transform: translateY(-50%);
            color: var(--gold);
            font-size: .9rem;
        }

        .booking-card .input-icon .form-control {
            padding-left: 2.2rem;
        }

        /* ==========================================================================
             Services
             ========================================================================== */
        .svc-card {
            background: #fff;
            border-radius: var(--radius);
            padding: 2.1rem 1.8rem;
            height: 100%;
            border-bottom: 3px solid transparent;
            box-shadow: 0 10px 26px -18px rgba(58, 16, 19, .22);
            transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease;
        }

        .svc-card:hover {
            border-color: var(--gold);
            transform: translateY(-5px);
            box-shadow: var(--shadow-md);
        }

        .svc-card .num {
            font-family: 'Cormorant Garamond', serif;
            font-size: 1rem;
            color: var(--gold);
            font-weight: 700;
            letter-spacing: .1em;
        }

        .svc-card i.bi {
            font-size: 1.7rem;
            color: #fff;
            margin: .8rem 0 1.1rem;
            display: flex;
            align-items: center;
            justify-content: center;
            width: 52px;
            height: 52px;
            border-radius: 50%;
            background: linear-gradient(135deg, var(--maroon), var(--maroon-deep));
        }

        .svc-card h4 {
            color: var(--ink);
            font-size: 1.3rem;
            margin-bottom: .5rem;
        }

        .svc-card p {
            color: var(--ink-soft);
            font-size: .95rem;
            margin-bottom: 0;
        }

        /* ==========================================================================
             About / Founders
             ========================================================================== */
        .founder-card {
            border-radius: var(--radius-lg);
            transition: .3s ease;
        }

        .founder-card:hover {
            transform: translateY(-6px);
            box-shadow: var(--shadow-md) !important;
        }

        .founder-avatar {
            width: 150px;
            height: 150px;
            border-radius: 50%;
            background: linear-gradient(135deg, var(--gold-light), var(--gold));
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 28px;
            color: #fff;
            flex-shrink: 0;
            box-shadow: 0 8px 20px -8px rgba(184, 134, 47, .55);
        }

        .badge {
            font-weight: 600;
            letter-spacing: .03em;
        }

        .bg-warning {
            background: var(--gold) !important;
            color: #fff !important;
        }

        .bg-warning.text-dark {
            color: var(--ink) !important;
            background: var(--gold-pale) !important;
        }

        /* Sacred-journeys highlight panel */
        .p-5.rounded-4.text-center.bg-warning {
            background: linear-gradient(150deg, var(--gold-light), var(--gold)) !important;
            color: #fff;
        }

        .p-5.rounded-4.text-center.bg-warning h3,
        .p-5.rounded-4.text-center.bg-warning h4 {
            color: #fff !important;
        }

        /* ==========================================================================
             Package / itinerary cards
             ========================================================================== */
        .premium-card {
            border: none;
            border-radius: var(--radius-lg);
            overflow: hidden;
            background: #fff;
            box-shadow: 0 8px 26px -16px rgba(58, 16, 19, .22);
            border-top: 3px solid transparent;
            transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
        }

        .premium-card:hover {
            transform: translateY(-8px);
            box-shadow: var(--shadow-lg);
            border-top-color: var(--gold);
        }

        .card-img-wrapper {
            position: relative;
            overflow: hidden;
            height: 220px;
        }

        .card-img-top {
            object-fit: cover;
            height: 100%;
            width: 100%;
            transition: transform .5s ease;
        }

        .premium-card:hover .card-img-top {
            transform: scale(1.08);
        }

        .badge-duration {
            position: absolute;
            top: 14px;
            left: 14px;
            background: rgba(251, 246, 236, .95);
            color: var(--maroon);
            font-weight: 700;
            font-size: .8rem;
            padding: .4rem .9rem;
            border-radius: 30px;
            box-shadow: 0 4px 12px rgba(0, 0, 0, .12);
            backdrop-filter: blur(4px);
        }

        .itinerary-timeline {
            border-left: 2px dashed var(--line);
            padding-left: 20px;
            margin-left: 10px;
        }

        .timeline-item {
            position: relative;
            margin-bottom: 16px;
        }

        .timeline-item strong {
            color: var(--ink);
        }

        .timeline-item::before {
            content: "\f058";
            font-family: "Font Awesome 6 Free";
            font-weight: 900;
            position: absolute;
            left: -29px;
            top: -2px;
            background: #fff;
            color: var(--gold);
            font-size: 14px;
        }

        .btn-itinerary {
            border-radius: 8px;
            font-weight: 600;
            padding: .65rem 1.2rem;
        }

        .btn-outline-dark {
            border-color: var(--ink-soft);
            color: var(--ink);
        }

        .btn-outline-dark:hover {
            background: var(--maroon);
            border-color: var(--maroon);
        }

        .icon-rotate {
            transition: transform .2s ease;
        }

        .custom-itinerary-box {
            display: none;
            overflow: hidden;
        }

        .custom-itinerary-box.show-box {
            display: block !important;
            animation: fadeSlide .25s ease;
        }

        @keyframes fadeSlide {
            from {
                opacity: 0;
                transform: translateY(-6px);
            }

            to {
                opacity: 1;
                transform: none;
            }
        }

        .border-warning-subtle {
            border-color: rgba(184, 134, 47, .25) !important;
        }

        /* ==========================================================================
             International visitors
             ========================================================================== */
        .badge-international {
            background: #fff;
            color: var(--maroon);
            font-weight: 600;
            font-size: .92rem;
            padding: .5rem 1rem;
            border-radius: 50px;
            border: 1px solid rgba(107, 30, 36, .18);
            box-shadow: var(--shadow-sm);
            display: inline-block;
        }

        .intl-list {
            list-style: none;
        }

        .intl-list li {
            font-size: 1.05rem;
            margin-bottom: .85rem;
            position: relative;
            padding-left: 32px;
            color: var(--ink-soft);
        }

        .intl-list li i {
            position: absolute;
            left: 0;
            top: 3px;
            color: var(--gold);
            font-size: 1.05rem;
        }

        #international .rounded-3.shadow-sm {
            border: 1px solid var(--line) !important;
            box-shadow: var(--shadow-md) !important;
        }

        /* ==========================================================================
             Why choose us
             ========================================================================== */
        .why-item {
            display: flex;
            gap: 1.15rem;
            margin-bottom: 2.1rem;
        }

        .why-item .ico {
            flex: 0 0 54px;
            height: 54px;
            width: 54px;
            background: linear-gradient(135deg, var(--ivory-2), #fff);
            border: 1px solid rgba(184, 134, 47, .25);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--maroon);
            font-size: 1.35rem;
        }

        .why-item h4 {
            font-size: 1.25rem;
            margin-bottom: .3rem;
        }

        .why-item p {
            font-size: .95rem;
            margin: 0;
        }

        .quote-card,
        #why .rounded-3[style*="cream"] {
            background: var(--ivory-2) !important;
            border: 1px solid var(--line) !important;
            border-radius: var(--radius-lg) !important;
        }

        #why .bi-quote {
            color: var(--gold) !important;
        }

        #why .fst-italic {
            color: var(--ink);
        }

        /* ==========================================================================
             CTA strip
             ========================================================================== */
        .cta-strip {
            background: linear-gradient(120deg, var(--maroon) 0%, var(--maroon-deep) 100%);
            color: #fff;
            padding: 2.8rem 0;
            position: relative;
        }

        .cta-strip h3 {
            color: #fff !important;
            font-family: 'Cormorant Garamond', serif;
        }

        .cta-strip .text-white {
            color: #f2e2c6 !important;
        }

        .cta-strip .btn-light {
            font-weight: 700;
            color: var(--maroon);
            background: #fff;
            box-shadow: 0 8px 20px -8px rgba(0, 0, 0, .35);
        }

        .cta-strip a[style*="fff2e2"] {
            background: var(--gold) !important;
            color: #fff !important;
        }

        /* ==========================================================================
             Reviews
             ========================================================================== */
        .carousel-item .card {
            border-radius: var(--radius-lg);
            box-shadow: 0 10px 30px -16px rgba(58, 16, 19, .25) !important;
            transition: transform .25s ease, box-shadow .25s ease;
        }

        .carousel-item .card:hover {
            transform: translateY(-4px);
            box-shadow: var(--shadow-md) !important;
        }

        .carousel-item .card img.rounded-circle {
            border: 3px solid var(--gold-pale);
        }

        .carousel-item .text-warning {
            color: var(--gold) !important;
            letter-spacing: .15em;
        }

        #reviewCarousel .carousel-control-prev-icon,
        #reviewCarousel .carousel-control-next-icon {
            background-color: var(--maroon) !important;
        }

        /* ==========================================================================
             Gallery
             ========================================================================== */
        .gallery-img {
            height: 220px;
            width: 100%;
            object-fit: cover;
            border-radius: 8px;
            transition: transform .35s ease, box-shadow .35s ease;
            cursor: pointer;
        }

        @media (min-width:576px) {
            .gallery-img {
                height: 250px;
            }
        }

        .gallery-img:hover {
            transform: scale(1.04);
            box-shadow: var(--shadow-md);
        }

        #galleryModal .modal-content {
            background: var(--ink);
            border-radius: 14px;
        }

        /* ==========================================================================
             FAQ
             ========================================================================== */
        .accordion-item {
            border: none;
            border-bottom: 1px solid var(--line);
            background: transparent;
        }

        .accordion-button {
            background: transparent;
            font-family: 'Cormorant Garamond', serif;
            font-weight: 700;
            font-size: 1.18rem;
            color: var(--ink);
            padding: 1.15rem 0;
            box-shadow: none !important;
        }

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

        .accordion-button::after {
            filter: none;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23B8862F' d='M1.5 4.5l6.5 6.5 6.5-6.5'/%3E%3C/svg%3E");
        }

        .accordion-button:focus {
            box-shadow: 0 0 0 .15rem rgba(184, 134, 47, .3);
        }

        .accordion-body {
            color: var(--ink-soft);
            padding: 0 0 1.4rem;
            font-size: .98rem;
        }

        /* ==========================================================================
             Footer
             ========================================================================== */
        footer {
            background: linear-gradient(160deg, var(--maroon-deep), #241014 65%);
            color: rgba(255, 255, 255, .78);
            padding: 4.2rem 0 1.6rem;
            position: relative;
        }

        footer h5 {
            font-family: 'Cormorant Garamond', serif;
            color: #fff;
            font-size: 1.3rem;
            margin-bottom: 1.1rem;
        }

        footer .brand {
            font-family: 'Cormorant Garamond', serif;
            font-weight: 700;
            font-size: 1.7rem;
            color: #fff;
        }

        footer .brand span {
            color: var(--gold-light);
        }

        footer a {
            color: rgba(255, 255, 255, .78);
        }

        footer a:hover {
            color: var(--gold-light);
        }

        footer ul {
            list-style: none;
            padding: 0;
        }

        footer ul li {
            margin-bottom: .6rem;
            font-size: .94rem;
        }

        .footer-social a {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 38px;
            height: 38px;
            border: 1px solid rgba(217, 169, 76, .35);
            border-radius: 50%;
            margin-right: .5rem;
            transition: background .2s ease, border-color .2s ease;
        }

        .footer-social a:hover {
            background: var(--gold);
            border-color: var(--gold);
            color: #fff;
        }

        .footer-bottom {
            border-top: 1px solid rgba(217, 169, 76, .2);
            margin-top: 2.6rem;
            padding-top: 1.3rem;
            font-size: .84rem;
        }

        /* ==========================================================================
             Motion & accessibility
             ========================================================================== */
        @media (prefers-reduced-motion: reduce) {
            .svc-card,
            .btn-marigold,
            .premium-card,
            .gallery-img,
            .founder-card,
            .carousel-item .card {
                transition: none;
            }
        }

        a:focus-visible,
        button:focus-visible,
        .form-control:focus-visible {
            outline: 2px solid var(--gold);
            outline-offset: 2px;
        }

        /* ==========================================================================
             Responsive
             ========================================================================== */
        @media (max-width: 767px) {
            .trip-toggle-wrap {
                display: grid;
                grid-template-columns: 1fr 1fr;
            }

            .booking-card {
                margin-top: 1.5rem;
                padding: 1.6rem 1.3rem 1.3rem;
            }

            section {
                padding: 3.5rem 0;
            }

            p {
                font-size: 1rem !important;
            }

            .lead {
                font-size: 1.1rem !important;
            }
        }


        /* Desktop */
        .logo {
            max-width: 437px;
            width: 100%;
            height: auto;
        }

        /* Tablet */
        @media (max-width:991.98px) {
            .logo {
                max-width: 240px;
            }
        }

        /* Mobile */
        @media (max-width:576px) {
            .logo {
                max-width: 248px;
            }
        }


        .tour-box{
            background:#fff;
            border-radius:12px;
            overflow:hidden;
            box-shadow:0 10px 25px rgba(0,0,0,.08);
        }

        .tour-box-title{
            background:#d97706;
            padding:16px 20px;
        }

        .tour-box-title h4,
        .tour-box-title h5{
            color:#fff;
            margin:0;
            font-weight:600;
        }

        .tour-box-content{
            padding:20px;
        }

        .tour-box-content ul{
            margin:0;
            padding-left:18px;
        }

        .tour-box-content li{
            margin-bottom:10px;
            color:#555;
        }


        .tour-timeline{
            background:#f8f9fa;
        }

        .timeline{
            position:relative;
            max-width:900px;
            margin:auto;
        }

        .timeline::before{
            content:"";
            position:absolute;
            left:35px;
            top:0;
            width:4px;
            height:100%;
            background:#f4b400;
            border-radius:10px;
        }

        .timeline-item{
            position:relative;
            padding-left:90px;
            margin-bottom:45px;
        }

        .timeline-icon{
            position:absolute;
            left:0;
            top:0;
            width:70px;
            height:70px;
            background:#ff9800;
            border-radius:50%;
            color:#fff;
            display:flex;
            justify-content:center;
            align-items:center;
            font-size:24px;
            font-weight:700;
            border:5px solid #fff;
            box-shadow:0 5px 20px rgba(0,0,0,.15);
        }

        .timeline-content{
            background:#fff;
            border-radius:15px;
            padding:25px;
            box-shadow:0 10px 30px rgba(0,0,0,.08);
            transition:.3s;
        }

        .timeline-content:hover{
            transform:translateY(-5px);
            box-shadow:0 15px 40px rgba(0,0,0,.12);
        }

        .timeline-content h4{
            color:#d97706;
            font-weight:700;
            margin-bottom:18px;
        }

        .timeline-content ul{
            margin:0;
            padding-left:20px;
        }

        .timeline-content li{
            margin-bottom:10px;
            color:#555;
        }

        @media(max-width:768px){
            .timeline::before{
                left:20px;
            }

            .timeline-item{
                padding-left:60px;
            }

            .timeline-icon{
                width:40px;
                height:40px;
                font-size:16px;
            }

            .timeline-content{
                padding:18px;
            }
        }

        .custom-modal-content {
            border: none;
            border-radius: 24px;
            overflow: hidden;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
        }

        /* Top Header Area with Golden Gradient */
        .custom-modal-header {
            background: linear-gradient(135deg, #DFAC56, #B8862F);
            padding: 2rem 1.5rem 1.5rem 1.5rem;
            position: relative;
            border-bottom: none;
        }

        .badge-consultation {
            background-color: rgba(255, 255, 255, 0.25);
            color: #fff;
            font-size: 0.75rem;
            text-transform: uppercase;
            letter-spacing: 1px;
            padding: 6px 14px;
            border-radius: 50px;
            display: inline-flex;
            align-items: center;
            gap: 5px;
            font-weight: 600;
        }

        .custom-modal-header .btn-close-custom {
            position: absolute;
            top: 20px;
            right: 20px;
            background: rgba(255, 255, 255, 0.25);
            border: none;
            color: white;
            width: 32px;
            height: 32px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: 0.2s;
        }

        .custom-modal-header .btn-close-custom:hover {
            background: rgba(255, 255, 255, 0.4);
        }

        /* Form Body Area */
        .custom-modal-body {
            background-color: #fff;
            padding: 1.5rem;
            border-radius: 24px 24px 0 0;
            margin-top: -15px;
            position: relative;
            z-index: 2;
        }

        .form-label-custom {
            font-weight: 600;
            font-size: 0.85rem;
            color: #333;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            margin-bottom: 6px;
            display: flex;
            align-items: center;
            gap: 6px;
        }

        .form-control-custom {
            border: 1px solid #E2E8F0;
            border-radius: 12px;
            padding: 10px 14px;
            font-size: 0.95rem;
            background-color: #F8FAFC;
        }

        .form-control-custom:focus {
            border-color: #B8862F;
            box-shadow: 0 0 0 3px rgba(184, 134, 47, 0.15);
            background-color: #fff;
        }

        /* Phone Input Grouping */
        .country-code {
            max-width: 75px;
            text-align: center;
            font-weight: 500;
        }

        /* Date Picker Input Group Integration */
        .date-input-group {
            position: relative;
        }
        .date-input-group i {
            position: absolute;
            right: 15px;
            top: 50%;
            transform: translateY(-50%);
            color: #B8862F;
            pointer-events: none;
        }

        /* Action Button */
        .btn-submit-gold {
            background-color: #B8862F;
            color: white;
            font-weight: 600;
            border-radius: 14px;
            padding: 12px;
            font-size: 1.1rem;
            border: none;
            transition: all 0.2s;
            box-shadow: 0 4px 12px rgba(184, 134, 47, 0.3);
        }

        .btn-submit-gold:hover {
            background-color: #966D24;
            color: white;
            box-shadow: 0 6px 16px rgba(184, 134, 47, 0.4);
        }

        /* Bottom trust signals */
        .trust-badge-container {
            display: flex;
            justify-content: space-between;
            font-size: 0.8rem;
            font-weight: 500;
            color: #64748B;
            margin-top: 15px;
        }
        .trust-badge-container span i {
            margin-right: 4px;
        }
        .icon-green { color: #10B981; }
        .icon-orange { color: #F59E0B; }
        .icon-gold { color: #B8862F; }

        /* ==========================================================================
           INTEGRATED VEHICLE COMPONENT STYLING 
           (Adapting your brand palette for the car UI grid cards)
           ========================================================================== */
        .fleet-badge {
            background-color: var(--gold-pale);
            color: var(--ink);
            font-family: 'Inter', sans-serif;
            text-transform: uppercase;
            letter-spacing: .15em;
            font-weight: 600;
            padding: 8px 18px;
            border-radius: 50px;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            font-size: 13px;
        }

        .fleet-title span {
            color: var(--gold);
        }

        .fleet-divider {
            display: flex;
            justify-content: center;
            gap: 8px;
            margin-top: 10px;
        }

        .fleet-divider span {
            width: 40px;
            height: 4px;
            background-color: var(--gold);
            border-radius: 2px;
            display: inline-block;
        }

        .fleet-card {
            border: none;
            border-radius: var(--radius-lg);
            box-shadow: var(--shadow-sm);
            transition: transform .3s ease, box-shadow .3s ease;
            position: relative;
            background-color: #fff;
            overflow: hidden;
            height: 100%;
        }

        .fleet-card:hover {
            transform: translateY(-5px);
            box-shadow: var(--shadow-md);
        }

        .fleet-fav-btn {
            position: absolute;
            top: 20px;
            left: 20px;
            background-color: var(--gold);
            color: white;
            border: none;
            width: 36px;
            height: 36px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 16px;
            cursor: pointer;
            z-index: 10;
        }

        .fleet-img-wrapper {
            padding: 40px 20px 10px 20px;
            display: flex;
            justify-content: center;
            align-items: center;
            height: 180px;
        }

        .fleet-img {
            max-height: 100%;
            max-width: 100%;
            object-fit: contain;
        }

        .fleet-name {
            font-family: 'Cormorant Garamond', serif;
            color: var(--ink);
            font-weight: 700;
            font-size: 1.5rem;
            margin-bottom: 12px;
        }

        .fleet-icon {
            color: var(--gold);
            width: 20px;
            font-size: 14px;
        }

        .fleet-text {
            color: var(--ink-soft);
            font-size: 0.9rem;
            font-weight: 500;
        }

        .fleet-divider-line {
            border-top: 1px dashed var(--line);
            margin: 15px 0;
        }

        .btn-fleet-whatsapp {
            background: linear-gradient(135deg, var(--gold-light), var(--gold));
            color: var(--ink);
            border: none;
            border-radius: 50px;
            padding: 10px 24px;
            font-weight: 700;
            width: fit-content;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            font-size: 0.9rem;
            box-shadow: 0 4px 12px rgba(184, 134, 47, .2);
            transition: all 0.2s ease;
        }

        .btn-fleet-whatsapp:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 16px rgba(184, 134, 47, .35);
            color: var(--ink);
        }
        
        
        /* State Header */
    .state-section {
      position: relative;
      margin-bottom: 3.5rem;
    }

    .state-title {
      font-weight: 800;
      font-size: 1.6rem;
      color: #0f172a;
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 1.75rem;
    }

    .state-title i {
      background: var(--accent-gradient);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    .state-title::after {
      content: '';
      flex-grow: 1;
      height: 2px;
      background: linear-gradient(to right, #e2e8f0, transparent);
      margin-left: 10px;
    }

    /* Premium Image Cards */
    .destination-card {
      background: var(--card-bg);
      border: 1px solid #e2e8f0;
      border-radius: 20px;
      overflow: hidden;
      height: 100%;
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.03);
      display: flex;
      flex-direction: column;
    }

    .destination-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 20px 25px -5px rgba(15, 23, 42, 0.12);
      border-color: #cbd5e1;
    }

    .card-img-wrapper {
      position: relative;
      height: 180px;
      overflow: hidden;
    }

    .card-img-wrapper img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.5s ease;
    }

    .destination-card:hover .card-img-wrapper img {
      transform: scale(1.08);
    }

    .img-overlay {
      position: absolute;
      top: 0; left: 0; right: 0; bottom: 0;
      background: linear-gradient(180deg, rgba(0,0,0,0) 50%, rgba(0,0,0,0.6) 100%);
    }

    .city-badge-on-img {
      position: absolute;
      bottom: 12px;
      left: 16px;
      color: #ffffff;
      font-weight: 700;
      font-size: 1.2rem;
      text-shadow: 0 2px 4px rgba(0,0,0,0.5);
    }

    .card-body-content {
      padding: 1.25rem;
      display: flex;
      flex-direction: column;
      flex-grow: 1;
    }

    /* Custom Badges */
    .attraction-badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: var(--badge-bg);
      color: var(--badge-text);
      border: 1px solid var(--badge-border);
      padding: 6px 12px;
      border-radius: 30px;
      font-size: 0.8rem;
      font-weight: 600;
      transition: all 0.2s ease;
    }

    .attraction-badge:hover {
      background: #4f46e5;
      color: #ffffff;
      border-color: #4f46e5;
    }

    .badge-container {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }