:root {
    --brand: #7A2E0E;
    /* temple-maroon */
    --brand-2: #C28E1F;
    /* saffron-gold */
    --ink: #141414;
    --muted: #5a5a5a;
    --bg: #fff8ee;
    /* warm spiritual background */
    --card: #ffffff;
    --line: rgba(0, 0, 0, .08);
    --shadow: 0 10px 28px rgba(0, 0, 0, .10);
    --radius: 18px;
}


body {
    color: var(--ink);
    background:
        radial-gradient(1200px 600px at 10% 0%, rgba(194, 142, 31, .10), transparent 55%),
        radial-gradient(900px 500px at 90% 20%, rgba(122, 46, 14, .10), transparent 60%),
        linear-gradient(180deg, #fffaf3, #ffffff 40%, #ffffff);
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
    margin: 0;
}

/* Top info bar */
.topbar {
    background: #C28E1F;
    color: #fff;
    font-size: .92rem;
}

.topbar a {
    color: #fff;
    text-decoration: none;
    opacity: .95;
}

.topbar a:hover {
    opacity: 1;
    text-decoration: underline;
}

.topbar-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .75rem;
}

/* Mobile topbar toggle */
.topbar-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    background: rgba(255, 255, 255, .10);
    border: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
    padding: .55rem .75rem;
    border-radius: 12px;
    font-weight: 600;
}

.topbar-toggle:hover {
    background: rgba(255, 255, 255, .14);
}

.topbar-toggle .chev {
    transition: transform .2s ease;
}

/* Rotate chevron when expanded */
#topbarCollapse.show+.topbar-toggle .chev {
    transform: rotate(180deg);
}

/* fallback if layout differs */

/* Correct chevron rotation using aria-expanded */
.topbar-toggle[aria-expanded="true"] .chev {
    transform: rotate(180deg);
}

.topbar-mobile {
    margin-top: .5rem;
    padding: .65rem .75rem;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 12px;
}

/* Header */
.navbar {
    background: rgba(255, 255, 255, .88);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--line);
}

.nav-link {
    color: var(--ink) !important;
}

.nav-link:hover {
    color: var(--brand) !important;
}

.btn-brand {
    background: linear-gradient(135deg, var(--brand), var(--brand-2));
    border: none;
    color: #fff;
    box-shadow: 0 10px 18px rgba(122, 46, 14, .18);
}

.btn-brand:hover {
    filter: brightness(1.03);
    color: #fff;
}

.btn-ghost {
    border: 1px solid rgba(122, 46, 14, .22);
    color: var(--brand);
    background: rgba(255, 255, 255, .85);
    font-weight: 700;
}

.btn-ghost:hover {
    background: rgba(122, 46, 14, .06);
    color: var(--brand);
}

/* Dropdown polish */
.dropdown-menu {
    border: 1px solid rgba(0, 0, 0, .06);
    box-shadow: 0 18px 40px rgba(0, 0, 0, .12);
    border-radius: 14px;
    padding: .5rem;
}

.dropdown-item {
    border-radius: 10px;
    padding: .55rem .75rem;
}

.dropdown-item:hover {
    background: rgba(122, 46, 14, .08);
}

/* BRAND LOGO (img itself) */
.brand-logo {
    height: 56px;
    /* fixed height (change as you like) */
    width: auto;
    /* keeps logo proportional */
    max-width: 320px;
    /* prevents it from eating menu space */
    object-fit: contain;
    display: block;
}

.navbar {
    min-height: 90px;
    /* controls header height */
    background: #fff;
}

.navbar-brand {
    height: 90px;
    /* SAME as navbar */
    display: flex;
    align-items: center;
}

.brand-logo {
    height: 100px;
    /* logo visual size */
    width: auto;
    max-width: 360px;
    /* prevents overflow */
    object-fit: contain;
}

/* =========================
   MAIN HERO (Top full width)
   No text, big image slider
   Fits like your screenshot
========================= */

/* Make hero touch the top area under your header */
.main-hero {
    padding: 0;
    margin: 0;
}

/* Full width, no container */
.main-hero-slider {
    position: relative;
    width: 100%;
    height: 81vh;
    /* big upper part */
    min-height: 520px;
    /* desktop baseline */
    max-height: 780px;
    /* prevents too tall on large screens */
    overflow: hidden;
    background: #0b0b0b;
    isolation: isolate;
}

/* Slides */
.main-hero-slides {
    position: absolute;
    inset: 0;
}

.main-hero-slide {
    position: absolute;
    inset: 0;
    background-image: var(--bg);
    background-size: cover;
    /* cover full hero */
    background-position: center;
    /* adjust if needed */
    background-repeat: no-repeat;
    opacity: 0;
    transform: scale(1.03);
    transition: opacity .75s ease, transform 1.4s ease;
    will-change: opacity, transform;
}

.main-hero-slide.is-active {
    opacity: 1;
    transform: scale(1);
}

/* Optional overlay (very subtle, premium). Remove if not needed */
.main-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
        linear-gradient(180deg, rgba(0, 0, 0, .08) 0%, rgba(0, 0, 0, .04) 40%, rgba(0, 0, 0, .10) 100%);
    pointer-events: none;
}

/* Dots (bottom center) */
.main-hero-dots {
    position: absolute;
    z-index: 4;
    left: 50%;
    transform: translateX(-50%);
    bottom: 14px;
    display: flex;
    gap: 8px;
}

.main-hero-dot {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .55);
    background: rgba(255, 255, 255, .35);
    cursor: pointer;
}

.main-hero-dot.is-active {
    width: 26px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--brand), var(--brand-2));
    border-color: rgba(255, 255, 255, .65);
}

/* Arrows */
.main-hero-nav {
    position: absolute;
    z-index: 4;
    top: 50%;
    transform: translateY(-50%);
    width: 46px;
    height: 46px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .25);
    background: rgba(255, 255, 255, .14);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(10px);
    box-shadow: 0 16px 38px rgba(0, 0, 0, .18);
}

.main-hero-nav:hover {
    background: rgba(255, 255, 255, .22);
}

.mh-prev {
    left: 16px;
}

.mh-next {
    right: 16px;
}



/* =========================
   Vrindavan Tours Intro (vt-*)
   Clean editorial + premium buttons
========================= */
/* ===== Unique Heading: Temple Mark Style ===== */

.vt-heading {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 18px;
}

/* vertical sacred mark */
.vt-mark {
    width: 6px;
    height: 58px;
    border-radius: 6px;
    background: linear-gradient(180deg,
            var(--brand),
            var(--brand-2));
    box-shadow: 0 8px 20px rgba(122, 46, 14, .25);
    margin-top: 6px;
}

/* text block */
.vt-heading-text {
    max-width: 760px;
}

.vt-title {
    margin: 0;
    font-size: clamp(2.1rem, 3vw, 2.9rem);
    font-weight: 950;
    letter-spacing: -0.02em;
    line-height: 1.05;
    color: rgba(10, 20, 35, .92);
}

.vt-title span {
    background: linear-gradient(180deg,
            var(--brand),
            var(--brand-2));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.vt-tagline {
    margin: 8px 0 0;
    font-size: .95rem;
    font-weight: 700;
    color: rgba(10, 20, 35, .62);
    letter-spacing: .3px;
}


/* paragraphs */
.vt-lead,
.vt-text {
    color: rgba(10, 20, 35, .74);
    font-size: 1.05rem;
    line-height: 1.75;
    margin: 0 0 14px;
}

.vt-lead strong,
.vt-text strong {
    color: rgba(10, 20, 35, .92);
    font-weight: 950;
}



/* =========================
   Feature Hero (Theme-safe)
========================= */

.feature-hero {
    position: relative;
    padding: 62px 0 28px;
}

.feature-hero h2 {
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.08;
    margin-top: 14px;
    margin-bottom: 12px;
}

.feature-hero p {
    color: var(--muted);
    font-size: 1.06rem;
    max-width: 55ch;
}

/* Card */
.feature-hero-card {
    border-radius: calc(var(--radius) + 10px);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(255, 255, 255, .80)),
        radial-gradient(1200px 520px at 18% 10%, rgba(194, 142, 31, .22), transparent 62%),
        radial-gradient(900px 500px at 92% 34%, rgba(122, 46, 14, .16), transparent 62%);
    border: 1px solid var(--line);
    box-shadow: 0 22px 55px rgba(0, 0, 0, .10);
    overflow: hidden;
}

/* Kicker */
.feature-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 9px 14px;
    border-radius: 999px;
    background: rgba(194, 142, 31, .12);
    border: 1px solid rgba(194, 142, 31, .26);
    color: #6a4a11;
    font-weight: 700;
    font-size: .92rem;
}

/* Divider line */
.feature-hero .divider {
    height: 1px;
    background: linear-gradient(90deg, rgba(122, 46, 14, 0), rgba(122, 46, 14, .18), rgba(122, 46, 14, 0));
}

.flex-wrap {
    font-weight: 900;
}

/* =========================
   Feature Hero Slider – FINAL
========================= */

.feature-hero-visual {
    position: relative;
    width: 100%;
    height: 420px;
    /* desktop height */
    border-radius: calc(var(--radius) + 6px);
    overflow: hidden;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0);
    background: #000;
    /* fallback */
}



/* Slides wrapper */
.feature-hero-slides {
    position: absolute;
    inset: 0;
}

/* Each slide */
.feature-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity .6s ease, transform 1.2s ease;
    transform: scale(1.02);
    background-image: var(--bg);
    background-size: cover;
    /* 🔥 FULL CARD COVER */
    background-position: center;
    /* center crop */
    background-repeat: no-repeat;
}

/* Active slide */
.feature-slide.is-active {
    opacity: 1;
    transform: scale(1);
}

/* Overlay for brand tone (no grey bands now) */
.feature-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background:
        linear-gradient(180deg,
            rgba(0, 0, 0, .15) 0%,
            rgba(0, 0, 0, .05) 35%,
            rgba(0, 0, 0, .25) 100%);
}

/* Arrows */
.feature-hero-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .88);
    border: 1px solid rgba(255, 255, 255, .55);
    backdrop-filter: blur(6px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 3;
    cursor: pointer;
}

.feature-hero-nav.hero-prev {
    left: 16px;
}

.feature-hero-nav.hero-next {
    right: 16px;
}

.feature-hero-nav:hover {
    background: #fff;
    color: var(--brand);
}

/* Dots */
.feature-hero-dots {
    position: absolute;
    bottom: 14px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 8px;
    z-index: 3;
}

.feature-hero-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .55);
    border: 1px solid rgba(255, 255, 255, .65);
}

.feature-hero-dot.is-active {
    width: 22px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--brand), var(--brand-2));
}


/* =========================
   Controls
========================= */

.feature-hero-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 4;
    border: 1px solid rgba(255, 255, 255, .40);
    background: rgba(255, 255, 255, .86);
    backdrop-filter: blur(10px);
    box-shadow: 0 14px 28px rgba(0, 0, 0, .14);
    color: rgba(0, 0, 0, .75);
}

.feature-hero-nav:hover {
    background: rgba(255, 255, 255, .95);
    color: var(--brand);
}

.feature-hero-nav.hero-prev {
    left: 14px;
}

.feature-hero-nav.hero-next {
    right: 14px;
}



/* Dots */
.feature-hero-dots {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 14px;
    display: flex;
    gap: 8px;
    z-index: 4;
}

.feature-hero-dot {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .60);
    background: rgba(255, 255, 255, .55);
    cursor: pointer;
    box-shadow: 0 10px 18px rgba(0, 0, 0, .10);
}

.feature-hero-dot.is-active {
    width: 22px;
    background: linear-gradient(135deg, var(--brand), var(--brand-2));
    border-color: rgba(255, 255, 255, .65);
}


/* Section */
.section {
    padding: 56px 0;
}

.section-title {
    font-weight: 800;
    letter-spacing: -.02em;
    margin-bottom: 10px;
}

.section-sub {
    color: var(--muted);
    max-width: 70ch;
    margin-bottom: 22px;
}

/* Chips */
.chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 12px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: rgba(255, 255, 255, .85);
    color: var(--ink);
    text-decoration: none;
    font-weight: 600;
    font-size: .95rem;
    white-space: nowrap;
}

.chip:hover {
    background: rgba(122, 46, 14, .06);
    border-color: rgba(122, 46, 14, .18);
    color: var(--brand);
}

/* =========================================================
   UPDATED PREMIUM CSS (ft-*)
   - Fix price + rating alignment
   - Professional typography
   - Buttons in one row (left/right)
   - Premium card + clearer image
   Paste this AFTER your existing ft-* CSS
   ========================================================= */

.ft-block {
    padding-top: 10px;
    padding-bottom: 8px;
}

.ft-card {
    border-radius: 26px;
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(0, 0, 0, .06);
    box-shadow: 0 22px 60px rgba(0, 0, 0, .10);
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease;
    height: 100%;
}

.ft-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 30px 70px rgba(0, 0, 0, .14);
}

/* Bigger + cleaner image */
.ft-media {
    position: relative;
    display: block;
    height: 260px;
    border-radius: 22px 22px 0 0;
    overflow: hidden;
    border-bottom: 1px solid rgba(0, 0, 0, .06);
}

.ft-media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transform: none;
    filter: none;
}

/* Lighter overlay so image stays clear */
.ft-overlay {
    position: absolute;
    inset: 0;
    opacity: .42;
    mix-blend-mode: normal;
    background:
        radial-gradient(900px 320px at 20% 15%, rgba(194, 142, 31, .14), transparent 58%),
        linear-gradient(135deg, rgba(122, 46, 14, .22), rgba(0, 0, 0, .02));
    pointer-events: none;
}

/* Chips */
.ft-top {
    position: absolute;
    top: 14px;
    left: 14px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    z-index: 2;
}

.ft-chip {
    font-size: .78rem;
    font-weight: 900;
    padding: 7px 12px;
    border-radius: 999px;
    letter-spacing: .2px;
    color: #fff;
    background: linear-gradient(135deg, var(--brand), var(--brand-2));
    box-shadow: 0 14px 28px rgba(0, 0, 0, .18);
}

.ft-chip-soft {
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(255, 255, 255, .70);
    color: rgba(0, 0, 0, .80);
    box-shadow: 0 14px 28px rgba(0, 0, 0, .12);
}

/* Price + Rating bottom row (final smaller version applied) */
.ft-bottom {
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    z-index: 2;
}

.ft-price {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 11px;
    border-radius: 999px;
    font-weight: 800;
    font-size: .82rem;
    letter-spacing: .2px;
    color: #fff;
    background: rgba(0, 0, 0, .36);
    border: 1px solid rgba(255, 255, 255, .20);
    backdrop-filter: blur(10px);
    white-space: nowrap;
    min-width: 104px;
}

.ft-rating {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(255, 255, 255, .70);
    box-shadow: 0 14px 26px rgba(0, 0, 0, .10);
    white-space: nowrap;
    min-width: 104px;
    font-size: .82rem;
    font-weight: 800;
}

.ft-rating i {
    color: var(--brand-2);
    font-size: .85rem;
}

.ft-rate {
    font-weight: 900;
    color: rgba(0, 0, 0, .86);
    font-size: .82rem;
}

.ft-rev {
    font-weight: 800;
    color: rgba(0, 0, 0, .55);
    font-size: .78rem;
}

/* Body */
.ft-body {
    padding: 16px 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.ft-name {
    margin: 0;
    font-size: 1.06rem;
    line-height: 1.22;
    font-weight: 900;
    letter-spacing: -.01em;
}

.ft-name a {
    text-decoration: none;
    color: rgba(0, 0, 0, .86);
}

.ft-name a:hover {
    color: var(--brand);
}

/* Points */
.ft-points {
    margin: 0;
    padding-left: 1.05rem;
    color: rgba(0, 0, 0, .70);
    font-size: .94rem;
}

.ft-points li {
    margin: 7px 0;
    font-weight: 700;
}

/* Meta (final smaller pills version applied) */
.ft-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
    margin-top: 2px;
    padding-top: 6px;
    padding-bottom: 2px;
    font-size: .88rem;
    color: rgba(0, 0, 0, .72);
}

.ft-meta>span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    border-radius: 999px;
    background: rgba(122, 46, 14, .04);
    border: 1px solid rgba(122, 46, 14, .10);
    line-height: 1;
    font-weight: 700;
    white-space: nowrap;
}

.ft-meta>span>i {
    width: 16px;
    height: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    background: rgba(194, 142, 31, .14);
    color: var(--brand);
    font-size: .80rem;
}



/* Buttons in one row (final big + eye-catching version applied) */
.ft-actions {
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: nowrap;
}

.ft-actions .btn {
    height: 46px;
    padding: 0 18px;
    font-size: .95rem;
    font-weight: 800;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    letter-spacing: .2px;
    line-height: 1;
    white-space: nowrap;
    box-shadow: none;
}

.ft-actions .btn-ghost {
    flex: 1;
    background: #fff;
    border: 2px solid rgba(122, 46, 14, .25);
    color: var(--brand);
}

.ft-actions .btn-ghost:hover {
    background: rgba(122, 46, 14, .06);
    border-color: var(--brand);
}

.ft-actions .btn-brand {
    flex: 1;
    background: linear-gradient(135deg, var(--brand), var(--brand-2));
    color: #fff;
    border: none;
    box-shadow: 0 14px 34px rgba(122, 46, 14, .28);
    position: relative;
    overflow: hidden;
}

.ft-actions .btn-brand::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(120px 40px at 30% -10%, rgba(255, 255, 255, .35), transparent 60%);
    opacity: .6;
    pointer-events: none;
}

.ft-actions .btn-brand:hover {
    transform: translateY(-1px);
    box-shadow: 0 20px 44px rgba(122, 46, 14, .35);
}

.ft-actions .btn i {
    margin-right: 6px;
    font-size: 1rem;
}



/* Gallery */
.gallery-tile {
    border-radius: var(--radius);
    overflow: hidden;
    border: 1px solid var(--line);
    box-shadow: 0 12px 24px rgba(0, 0, 0, .08);
    background: #eee;
    height: 220px;
    position: relative;
}

.gallery-tile img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.gallery-tile:hover img {
    transform: scale(1.06);
}

.gallery-tile::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(700px 260px at 20% 20%, rgba(194, 142, 31, .18), transparent 60%),
        linear-gradient(180deg, rgba(0, 0, 0, .0), rgba(0, 0, 0, .25));
    pointer-events: none;
}

/* Reviews */
.review-card {
    background: rgba(255, 255, 255, .90);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: 0 12px 24px rgba(0, 0, 0, .06);
    height: 100%;
}

.stars {
    color: #c28e1f;
    letter-spacing: 1px;
}

/* Utilities */
.divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 0, 0, .12), transparent);
}

/* Taxi feet */

/* ====== WRAPPER ====== */
.vt-fleet2 {
    background:
        radial-gradient(980px 420px at 10% 10%, rgba(194, 142, 31, .14), transparent 60%),
        radial-gradient(980px 420px at 90% 18%, rgba(122, 46, 14, .10), transparent 60%),
        rgba(255, 255, 255, .55);
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 14px 34px rgba(0, 0, 0, .08);
}

/* ====== HEADER ====== */
.vt-fleet2__head {
    padding: 22px 20px;
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: flex-end;
    border-bottom: 1px solid rgba(0, 0, 0, .08);
    background: linear-gradient(180deg, rgba(255, 248, 238, .92), rgba(255, 255, 255, .88));
}

.vt-fleet2__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
    font-size: .9rem;
    color: #7A2E0E;
    background: rgba(122, 46, 14, .06);
    border: 1px solid rgba(122, 46, 14, .12);
    padding: 6px 10px;
    border-radius: 999px;
    width: fit-content;
    margin-bottom: 10px;
}

.vt-fleet2__title {
    margin: 0 0 6px;
    font-weight: 900;
    letter-spacing: -.02em;
    color: #1f1f1f;
}

.vt-fleet2__sub {
    margin: 0;
    color: #5a5a5a;
    max-width: 75ch;
}

.vt-fleet2__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 14px;
}

.vt-chip {
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 999px;
    padding: 8px 12px;
    font-weight: 800;
    font-size: .82rem;
    color: #2b2b2b;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.vt-chip i {
    color: rgba(122, 46, 14, .9);
}

.vt-chip--ac {
    background: rgba(194, 142, 31, .16);
    border-color: rgba(194, 142, 31, .26);
    color: #6a4a11;
}

.vt-fleet2__head-right {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

/* ====== BUTTONS ====== */
.vt-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 900;
    border: 1px solid rgba(0, 0, 0, .08);
    background: rgba(255, 255, 255, .92);
    color: #7A2E0E;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
    white-space: nowrap;
}

.vt-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 20px rgba(0, 0, 0, .10);
    color: #7A2E0E;
}

.vt-btn--ghost {
    background: rgba(255, 255, 255, .78);
    border-color: rgba(122, 46, 14, .18);
}

.vt-btn--brand {
    border: none;
    color: #fff;
    background: linear-gradient(135deg, #7A2E0E, #9a3b16);
    box-shadow: 0 12px 22px rgba(122, 46, 14, .20);
}

.vt-btn--brand:hover {
    color: #fff;
    filter: brightness(1.02);
}

/* ====== TOOLBAR (tabs + search) ====== */
.vt-fleet2__toolbar {
    padding: 14px 16px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid rgba(0, 0, 0, .08);
    background: rgba(255, 255, 255, .72);
    backdrop-filter: blur(10px);
}

.vt-fleet2__tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.vt-tab {
    border: 1px solid rgba(122, 46, 14, .20);
    background: rgba(255, 255, 255, .92);
    color: #7A2E0E;
    border-radius: 999px;
    padding: 8px 12px;
    font-weight: 900;
    font-size: .85rem;
    transition: background .15s ease, transform .15s ease;
}

.vt-tab:hover {
    transform: translateY(-1px);
}

.vt-tab.is-active {
    background: rgba(122, 46, 14, .08);
    border-color: rgba(122, 46, 14, .35);
}

.vt-fleet2__search {
    position: relative;
    min-width: 260px;
    flex: 1;
    max-width: 420px;
}

.vt-fleet2__search i {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: rgba(122, 46, 14, .75);
    pointer-events: none;
}

.vt-fleet2__search input {
    width: 100%;
    border-radius: 999px;
    padding: 10px 12px 10px 36px;
    border: 1px solid rgba(0, 0, 0, .10);
    background: rgba(255, 255, 255, .92);
    outline: none;
    font-weight: 700;
}

.vt-fleet2__search input:focus {
    border-color: rgba(194, 142, 31, .45);
    box-shadow: 0 0 0 4px rgba(194, 142, 31, .14);
}

/* ====== CARD ====== */
.vt-card2 {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 18px;
    overflow: hidden;
    height: 100%;
    box-shadow: 0 14px 28px rgba(0, 0, 0, .08);
    transition: transform .18s ease, box-shadow .18s ease;
    position: relative;
}

.vt-card2:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 34px rgba(0, 0, 0, .12);
}

.vt-card2__media {
    height: 250px;
    position: relative;
    background: #f2efe9;
    overflow: hidden;
}

.vt-card2__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.03);
}

.vt-card2__overlay {
    position: absolute;
    inset: 0;
}

.vt-card2__badges {
    position: absolute;
    left: 12px;
    top: 12px;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.vt-badge {
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 999px;
    padding: 6px 10px;
    font-weight: 900;
    font-size: .78rem;
}

.vt-badge--ac {
    background: rgba(194, 142, 31, .16);
    border-color: rgba(194, 142, 31, .26);
    color: #6a4a11;
}

.vt-card2__corner {
    position: absolute;
    right: 12px;
    bottom: 12px;
    z-index: 2;
}

.vt-corner-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 999px;
    padding: 7px 10px;
    font-weight: 900;
    color: #7A2E0E;
    background: rgba(255, 255, 255, .94);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 12px 18px rgba(0, 0, 0, .12);
    white-space: nowrap;
}

.vt-card2__body {
    padding: 14px 14px 12px;
}

.vt-card2__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}

.vt-card2__name {
    margin: 0;
    font-weight: 900;
    font-size: 1.06rem;
    line-height: 1.25;
    color: #1f1f1f;
}

.vt-tag {
    flex: 0 0 auto;
    border-radius: 999px;
    padding: 6px 10px;
    font-weight: 900;
    font-size: .78rem;
    border: 1px solid rgba(122, 46, 14, .18);
    background: rgba(122, 46, 14, .06);
    color: #7A2E0E;
    white-space: nowrap;
}

.vt-tag--gold {
    border-color: rgba(194, 142, 31, .28);
    background: rgba(194, 142, 31, .14);
    color: #6a4a11;
}

.vt-card2__foot {
    border-top: 1px dashed rgba(0, 0, 0, .12);
    padding: 12px 14px;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    align-items: center;
}

/* ====== FOOT NOTE ====== */
.vt-fleet2__note {
    padding: 14px 16px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid rgba(0, 0, 0, .08);
    background: rgba(255, 255, 255, .74);
}

.vt-note {
    color: #5a5a5a;
    font-size: .92rem;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.vt-note i {
    color: rgba(122, 46, 14, .8);
}

.vt-fleet2__note-cta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}



/* ===== Vrindavan Featured Tours ===== */

#vrindavan-featured .vt-secHead {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
    margin-bottom: 22px;
}



.vt-kicker {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(122, 46, 14, .1);
    color: var(--brand);
    font-weight: 800;
    font-size: .85rem;
}

.vt-secTitle {
    margin: 8px 0 6px;
    font-weight: 900;
    letter-spacing: -.3px;
}

.vt-secSub {
    color: var(--muted);
    max-width: 680px;
}

.vt-viewAll {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border-radius: 999px;
    border: 1px solid var(--line);
    text-decoration: none;
    font-weight: 800;
    color: var(--ink);
    background: #fff;
    white-space: nowrap;
}

/* ===== Slider Shell ===== */
.vt-packSlider {
    position: relative;
    border-radius: 26px;
}

.vt-packViewport {
    overflow: hidden;
    border-radius: 26px;
}

/* Track */
.vt-packTrack {
    display: flex;
    gap: 22px;
    will-change: transform;
    transition: transform .55s cubic-bezier(.22, .75, .2, 1);
    padding: 2px;
}

/* Slide sizing: default 3 per view */
.vt-packCard {
    flex: 0 0 calc((100% - (22px * 2)) / 3);
    text-decoration: none;
    color: #fff;
    outline: none;
}



/* ===== Card ===== */
.vt-packMedia {
    position: relative;
    height: 450px;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: var(--shadow);
}



.vt-packMedia img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.05);
    transition: .45s ease;
}

.vt-packCard:hover img {
    transform: scale(1.12);
}

.vt-packOverlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,
            rgba(0, 0, 0, 0) 0%,
            rgba(0, 0, 0, .65) 78%,
            rgba(0, 0, 0, .8) 100%);
}

.vt-packBadge {
    position: absolute;
    top: 14px;
    left: 14px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(0, 0, 0, .7);
    font-weight: 800;
    z-index: 2;
    backdrop-filter: blur(6px);
}

.vt-packContent {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 18px;
    z-index: 2;
}

.vt-packTitle {
    font-weight: 900;
    font-size: 1.22rem;
    margin-bottom: 10px;
}

.vt-packRoute {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: .9rem;
    background: rgba(0, 0, 0, .35);
    padding: 8px 12px;
    border-radius: 12px;
    margin-bottom: 10px;
    backdrop-filter: blur(6px);
}

.vt-packMeta {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: .9rem;
    margin-bottom: 10px;
    flex-wrap: wrap;
}

.vt-sep {
    width: 1px;
    height: 14px;
    background: rgba(255, 255, 255, .4);
}

.vt-packBottom {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    border-top: 1px solid rgba(255, 255, 255, .22);
    padding-top: 10px;
    gap: 12px;
}

.vt-old {
    text-decoration: line-through;
    opacity: .65;
    display: block;
}

.vt-price {
    font-size: 1.32rem;
    font-weight: 900;
    color: var(--brand-2);
}

.vt-rating {
    color: var(--brand-2);
    font-weight: 900;
    white-space: nowrap;
}

/* ===== Nav Buttons ===== */
.vt-packNav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(10, 10, 10, .45);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 5;
    cursor: pointer;
    backdrop-filter: blur(10px);
    transition: transform .15s ease, background .15s ease;
}

.vt-packNav:hover {
    transform: translateY(-50%) scale(1.05);
    background: rgba(10, 10, 10, .6);
}

.vt-packNav--prev {
    left: 10px;
}

.vt-packNav--next {
    right: 10px;
}



/* ===== Dots ===== */
.vt-packDots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 14px;
}

.vt-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    border: 0;
    background: rgba(0, 0, 0, .25);
    cursor: pointer;
    padding: 0;
}

.vt-dot.is-active {
    background: var(--brand);
    width: 22px;
}

/* ===== Holi Special Section (Background Image + Mini Cards) ===== */
.hs-holi {
    position: relative;
    padding: 40px 0;
    overflow: hidden;
    background: #0b0b0f;
    color: #fff;
}

.hs-holi__bg {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(115deg, rgba(122, 118, 118, 0.92) 18%, rgba(122, 46, 14, .55) 58%, rgba(194, 142, 31, .22) 100%),
        url("/images/tours/holi.webp");
    background-size: cover;
    background-position: center;
    filter: saturate(1.05);
    transform: scale(1.02);
    z-index: 0;
}

.hs-holi__wrap {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 42px;
    align-items: center;
    container-type: inline-size;
}

/* Left Content */
.hs-pill {
    display: inline-block;
    padding: 8px 14px;
    border-radius: 999px;
    background: linear-gradient(135deg, #7A2E0E, #C28E1F);
    color: #ffffff;
    font-weight: 800;
    font-size: 12px;
    letter-spacing: .2px;
}

.hs-title {
    margin: 14px 0 6px;
    font-size: 40px;
    line-height: 1.15;
    font-weight: 800;
}

.hs-locations {
    color: #C28E1F;
    font-size: 18px;
    font-weight: 650;
    margin-bottom: 14px;
}

.hs-sub {
    color: rgba(255, 255, 255, .86);
    font-size: 16px;
    max-width: 560px;
    margin-bottom: 18px;
}

.hs-list {
    list-style: none;
    padding: 0;
    margin: 0 0 26px;
}

.hs-list li {
    position: relative;
    padding-left: 30px;
    margin: 10px 0;
    color: rgba(255, 255, 255, .90);
    font-size: 15px;
}

.hs-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    width: 18px;
    height: 18px;
    border-radius: 6px;
    background: rgba(194, 142, 31, .18);
    border: 1px solid rgba(194, 142, 31, .42);
}

.hs-list li::after {
    content: "✓";
    position: absolute;
    left: 4px;
    top: 0px;
    font-weight: 900;
    color: #C28E1F;
}

.hs-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.hs-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 26px;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 800;
    letter-spacing: .2px;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.hs-btn--primary {
    background: linear-gradient(135deg, #7A2E0E, #C28E1F);
    color: #ffffff;
    box-shadow: 0 14px 30px rgba(194, 142, 31, .20);
}

.hs-btn--primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 38px rgba(194, 142, 31, .28);
}

.hs-btn--ghost {
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
}

.hs-btn--ghost:hover {
    background: rgba(255, 255, 255, .10);
    transform: translateY(-2px);
}

/* Right Panel */
.hs-holi__panel {
    position: relative;
    min-height: 430px;
    border-radius: 22px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    box-shadow: 0 18px 44px rgba(0, 0, 0, .38);
}

.hs-holi__panelBg {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(600px 260px at 15% 25%, rgba(194, 142, 31, .22), transparent 60%),
        linear-gradient(180deg, rgba(10, 10, 14, .40), rgba(10, 10, 14, .78));
    background-size: cover;
    background-position: center;
    filter: contrast(1.05);
}

/* Mini Cards Grid (2x2 on larger screens) */
.hs-miniGrid {
    position: relative;
    z-index: 2;
    padding: 20px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.hs-miniCard {
    display: block;
    text-decoration: none;
    color: #fff;
    border-radius: 14px;
    overflow: hidden;
    background: rgba(15, 15, 20, .45);
    backdrop-filter: blur(8px);
    transition: transform .18s ease, box-shadow .18s ease;
}

.hs-miniCard:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 34px rgba(0, 0, 0, .35);
}

.hs-miniCard__img {
    position: relative;
    height: 120px;
}

.hs-miniCard__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hs-miniCard__tag {
    position: absolute;
    top: 10px;
    left: 10px;
    background: #7A2E0E;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    padding: 5px 10px;
    border-radius: 999px;
}

.hs-miniCard__tag.hs-gold {
    background: #C28E1F;
    color: #141414;
}

.hs-miniCard__body {
    padding: 12px 14px 14px;
}

.hs-miniCard__body h4 {
    margin: 0 0 4px;
    font-size: 15px;
    font-weight: 800;
}

.hs-miniCard__body p {
    margin: 0;
    font-size: 13px;
    color: rgba(255, 255, 255, .78);
}


/* ===== About Us (Vrindavan Tours) - Collage + Trust Rail ===== */
.va-about {
    position: relative;
    padding: 70px 0;
    background: #fff8ee;
    overflow: hidden;
    color: #141414;
}

.va-about__bg {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(800px 420px at 14% 22%, rgba(194, 142, 31, .16), transparent 60%),
        radial-gradient(700px 360px at 86% 28%, rgba(122, 46, 14, .11), transparent 62%),
        linear-gradient(180deg, rgba(255, 248, 238, 1), rgba(255, 248, 238, .96));
    z-index: 0;
}

.va-about__wrap {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 1.05fr;
    gap: 44px;
    align-items: center;
}

/* ----- Left Collage ----- */
.va-about__media {
    position: relative;
}

.va-collage {
    position: relative;
    min-height: 470px;
    border-radius: 26px;
    background: linear-gradient(135deg, rgba(122, 46, 14, .10), rgba(194, 142, 31, .12));
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 18px 46px rgba(0, 0, 0, .10);
    overflow: hidden;
}

.va-collage__img {
    position: absolute;
    overflow: hidden;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, .55);
    box-shadow: 0 18px 44px rgba(0, 0, 0, .18);
}

.va-collage__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.04);
    display: block;
}

.va-collage__img--a {
    left: 18px;
    top: 18px;
    width: 66%;
    height: 64%;
}

.va-collage__img--b {
    right: 18px;
    bottom: 18px;
    width: 54%;
    height: 44%;
}

/* Brand chip */
.va-collage__chip {
    position: absolute;
    left: 22px;
    bottom: 22px;
    width: 58%;
    padding: 14px 14px;
    border-radius: 18px;
    background: rgba(255, 255, 255, .78);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(0, 0, 0, .08);
}

.va-collage__chipTop {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
}

.va-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #C28E1F;
    box-shadow: 0 0 0 6px rgba(194, 142, 31, .20);
}

.va-chipBrand {
    font-weight: 950;
    color: #7A2E0E;
    letter-spacing: .2px;
}

.va-chipText {
    font-size: 13px;
    color: rgba(20, 20, 20, .78);
    line-height: 1.35;
}

/* Stamp */
.va-collage__stamp {
    position: absolute;
    right: 18px;
    top: 18px;
    padding: 14px 14px;
    border-radius: 18px;
    background: rgba(122, 46, 14, .92);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .22);
    transform: rotate(2deg);
}

.va-stamp__line1 {
    font-size: 12px;
    letter-spacing: .18em;
    text-transform: uppercase;
    opacity: .9;
    font-weight: 800;
}

.va-stamp__line2 {
    font-size: 18px;
    font-weight: 950;
    margin-top: 2px;
}

/* ----- Right content ----- */
.va-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
    color: #7A2E0E;
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: 12px;
}

.va-kicker__bar {
    width: 34px;
    height: 3px;
    border-radius: 20px;
    background: #C28E1F;
}

.va-title {
    margin: 14px 0 12px;
    font-size: 38px;
    line-height: 1.12;
    font-weight: 950;
}

.va-title span {
    color: #7A2E0E;
    position: relative;
    padding: 0 4px;
}

.va-title span::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 6px;
    height: 10px;
    background: rgba(194, 142, 31, .22);
    z-index: -1;
    border-radius: 6px;
}

.va-text {
    margin: 0 0 12px;
    color: rgba(20, 20, 20, .82);
    font-size: 16px;
    line-height: 1.75;
    max-width: 640px;
}

/* Trust rail */
.va-rail {
    margin-top: 18px;
    padding-left: 16px;
    border-left: 3px solid rgba(194, 142, 31, .55);
    display: grid;
    gap: 14px;
}

.va-rail__item {
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 12px;
    align-items: start;
}

.va-rail__title {
    font-weight: 950;
    font-size: 16px;
    margin-bottom: 2px;
}

.va-rail__sub {
    color: rgba(20, 20, 20, .75);
    font-size: 13.5px;
    line-height: 1.5;
}

.va-rail__icon {
    width: 44px;
    height: 44px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    background: rgba(194, 142, 31, .18);
    border: 1px solid rgba(122, 46, 14, .18);
    color: #7A2E0E;
    font-size: 18px;
}



/* ===== WHY CHOOSE US (Premium Layout - No CTA) ===== */
.vt-wcuX {
    position: relative;
    padding: 45px 0;
    background: #fff8ee;
    overflow: hidden;
    color: #141414;
}

.vt-wcuX__bg {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(900px 420px at 14% 18%, rgba(194, 142, 31, .18), transparent 60%),
        radial-gradient(820px 380px at 88% 26%, rgba(122, 46, 14, .12), transparent 62%),
        linear-gradient(180deg, rgba(255, 248, 238, 1), rgba(255, 248, 238, .96));
    z-index: 0;
}

.vt-wcuX .container {
    position: relative;
    z-index: 2;
}

.vt-wcuX__head {
    max-width: 920px;
    margin-bottom: 26px;
}

.vt-wcuX__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
    color: #7A2E0E;
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: 12px;
}

.vt-wcuX__line {
    width: 34px;
    height: 3px;
    border-radius: 20px;
    background: #C28E1F;
}

.vt-wcuX__title {
    margin: 12px 0 10px;
    font-size: 40px;
    line-height: 1.12;
    font-weight: 950;
}

.vt-wcuX__title span {
    color: #7A2E0E;
    position: relative;
    padding: 0 4px;
}

.vt-wcuX__title span::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 6px;
    height: 10px;
    background: rgba(194, 142, 31, .22);
    z-index: -1;
    border-radius: 6px;
}

.vt-wcuX__sub {
    margin: 0;
    color: rgba(20, 20, 20, .82);
    font-size: 16px;
    line-height: 1.75;
}

/* Main Layout */
.vt-wcuX__wrap {
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    gap: 18px;
    align-items: start;
}

/* Hero Panel (Left Side) */
.vt-wcuX__hero {
    position: relative;
    border-radius: 24px;
    overflow: hidden;
    min-height: 560px;
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 26px 62px rgba(0, 0, 0, .14);
}

.vt-wcuX__heroBg {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(10, 10, 14, .06), rgba(10, 10, 14, .72)),
        url("/images/gokul-mthura-vrindavan.webp");
    background-size: cover;
    background-position: center;
    transform: scale(1.04);
    filter: saturate(1.05) contrast(1.05);
}

.vt-wcuX__heroGlow {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(720px 340px at 25% 20%, rgba(194, 142, 31, .28), transparent 62%),
        radial-gradient(560px 280px at 85% 35%, rgba(122, 46, 14, .28), transparent 65%);
    pointer-events: none;
}

.vt-wcuX__heroTop {
    position: relative;
    z-index: 2;
    padding: 18px;
    display: grid;
    gap: 14px;
}

.vt-wcuX__stamp {
    width: fit-content;
    padding: 12px 12px;
    border-radius: 18px;
    background: rgba(122, 46, 14, .92);
    border: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
    box-shadow: 0 18px 44px rgba(0, 0, 0, .28);
}

.vt-wcuX__stampSmall {
    font-size: 11px;
    letter-spacing: .18em;
    text-transform: uppercase;
    opacity: .92;
    font-weight: 900;
}

.vt-wcuX__stampBig {
    font-size: 18px;
    font-weight: 950;
    margin-top: 2px;
}

.vt-wcuX__meta {
    display: grid;
    gap: 10px;
    max-width: 420px;
}

.vt-wcuX__metaRow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .20);
    color: rgba(255, 255, 255, .92);
    backdrop-filter: blur(12px);
    font-weight: 850;
    font-size: 12.5px;
}

.vt-wcuX__dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #C28E1F;
    box-shadow: 0 0 0 5px rgba(194, 142, 31, .20);
}

.vt-wcuX__dot--maroon {
    background: #7A2E0E;
    box-shadow: 0 0 0 5px rgba(122, 46, 14, .22);
}

.vt-wcuX__heroBottom {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 16px;
    z-index: 2;
    border-radius: 20px;
    padding: 16px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .20);
    backdrop-filter: blur(14px);
}

.vt-wcuX__quote {
    color: #fff;
    font-weight: 950;
    font-size: 15px;
    margin-bottom: 12px;
}

.vt-wcuX__badges {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

.vt-wcuX__badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 14px;
    background: rgba(10, 10, 14, .28);
    border: 1px solid rgba(255, 255, 255, .18);
    color: rgba(255, 255, 255, .92);
    font-weight: 900;
    font-size: 12px;
}

.vt-wcuX__badge i {
    color: #C28E1F;
    font-size: 16px;
}

/* Right Side Tiles */
.vt-wcuX__right {
    display: grid;
    gap: 12px;
}

.vt-wcuX__tiles {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}

.vt-wcuX__tile {
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 12px;
    align-items: start;
    border-radius: 20px;
    padding: 16px;
    background: rgba(255, 255, 255, .90);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 18px 44px rgba(0, 0, 0, .09);
}

.vt-wcuX__tile--wide {
    grid-column: 1 / -1;
}

.vt-wcuX__icon {
    width: 56px;
    height: 56px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: linear-gradient(180deg, #fff4e2, #f6e2c2);
    border: 1px solid rgba(122, 46, 14, .22);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75), 0 12px 24px rgba(122, 46, 14, .12);
    color: #7A2E0E;
    font-size: 22px;
}

.vt-wcuX__info h3 {
    margin: 0 0 6px;
    font-size: 16px;
    font-weight: 950;
}

.vt-wcuX__info p {
    margin: 0;
    color: rgba(20, 20, 20, .74);
    font-size: 13.8px;
    line-height: 1.55;
}

/* Tip Tile */
.vt-wcuX__tile--tip {
    background: rgba(122, 46, 14, .06);
    border: 1px dashed rgba(122, 46, 14, .22);
    box-shadow: none;
    grid-template-columns: 1fr;
}

.vt-wcuX__tipTop {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
    color: #7A2E0E;
    font-weight: 950;
}

.vt-wcuX__tipTitle {
    font-size: 15px;
}

.vt-wcuX__tipText {
    color: rgba(20, 20, 20, .78);
    font-size: 13.5px;
    line-height: 1.6;
}

/* Trust Strip */
.vt-wcuX__strip {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.vt-wcuX__stripItem {
    border-radius: 18px;
    padding: 14px;
    background: rgba(255, 255, 255, .75);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 14px 34px rgba(0, 0, 0, .06);
    display: grid;
    gap: 4px;
}

.vt-wcuX__stripNum {
    font-weight: 950;
    color: #7A2E0E;
    letter-spacing: .06em;
}

.vt-wcuX__stripText {
    font-weight: 900;
    color: rgba(20, 20, 20, .80);
    font-size: 13px;
}


/* ===== Tour Categories Nav ===== */
.vt-catnav {
    padding: 40px 0;
}

.vt-catnav__head {
    max-width: 850px;
    margin-bottom: 18px;
}

.vt-catnav__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
    color: #7A2E0E;
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: 12px;
}

.vt-catnav__line {
    width: 34px;
    height: 3px;
    border-radius: 20px;
    background: #C28E1F;
}

.vt-catnav__title {
    margin: 10px 0 8px;
    font-size: 34px;
    font-weight: 950;
    line-height: 1.15;
    color: #141414;
}

.vt-catnav__sub {
    margin: 0;
    color: rgba(20, 20, 20, .78);
    font-size: 16px;
    line-height: 1.7;
}

/* Chips wrap */
.vt-catnav__wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 14px;
    border-radius: 18px;
    background: rgba(255, 255, 255, .72);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24);
}

/* Chip style */
.vt-catnav__chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 14px;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 900;
    font-size: 13px;
    color: #7A2E0E;
    background: #fff;
    border: 1px solid rgba(122, 46, 14, .16);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
    white-space: nowrap;
}

.vt-catnav__chip:hover {
    transform: translateY(-2px);
    border-color: rgba(194, 142, 31, .50);
    box-shadow: 0 14px 28px rgba(0, 0, 0, .08);
    background: rgba(194, 142, 31, .10);
}

/* Optional: active chip (JS will add this class) */
.vt-catnav__chip.is-active {
    background: linear-gradient(135deg, rgba(122, 46, 14, .10), rgba(194, 142, 31, .18));
    border-color: rgba(194, 142, 31, .55);
}


/* ===== Tours From Cities (Premium Split) ===== */
.vt-cityHub {
    position: relative;
    padding: 55px 0;
    overflow: hidden;
    color: #141414;
}

.vt-cityHub .container {
    position: relative;
    z-index: 2;
}

.vt-cityHub__wrap {
    display: grid;
    grid-template-columns: 1fr 1.15fr;
    gap: 18px;
    align-items: stretch;
}

/* LEFT PANEL */
.vt-cityHub__panel {
    position: relative;
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 22px 60px rgba(0, 0, 0, .12);
    min-height: 420px;
}

.vt-cityHub__panelBg {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(10, 10, 14, .20), rgba(10, 10, 14, .78)),
        url("/images/map.webp");
    background-size: cover;
    background-position: center;
    transform: scale(1.04);
    filter: saturate(1.05) contrast(1.05);
}

.vt-cityHub__panelGlow {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(700px 320px at 25% 20%, rgba(194, 142, 31, .34), transparent 62%),
        radial-gradient(540px 260px at 85% 35%, rgba(122, 46, 14, .32), transparent 64%);
    pointer-events: none;
}

.vt-cityHub__panelInner {
    position: relative;
    z-index: 2;
    padding: 22px;
}

.vt-cityHub__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
    color: rgba(255, 255, 255, .92);
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: 12px;
}

.vt-cityHub__line {
    width: 34px;
    height: 3px;
    border-radius: 20px;
    background: #C28E1F;
}

.vt-cityHub__title {
    margin: 12px 0 10px;
    font-size: 40px;
    line-height: 1.12;
    font-weight: 950;
    color: #fff;
}

.vt-cityHub__title span {
    color: #fff;
    position: relative;
    padding: 0 4px;
}

.vt-cityHub__title span::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 6px;
    height: 10px;
    background: rgba(194, 142, 31, .25);
    z-index: -1;
    border-radius: 6px;
}

.vt-cityHub__sub {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, .82);
    font-size: 14.8px;
    line-height: 1.7;
    max-width: 520px;
}

/* stats */
.vt-cityHub__stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin: 14px 0 12px;
}

.vt-stat {
    border-radius: 18px;
    padding: 12px;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .18);
    backdrop-filter: blur(12px);
}

.vt-stat__num {
    font-weight: 950;
    color: #fff;
    font-size: 16px;
    margin-bottom: 2px;
}

.vt-stat__label {
    font-size: 12px;
    color: rgba(255, 255, 255, .78);
    font-weight: 850;
}

.vt-cityHub__note {
    margin-top: 10px;
    padding: 12px 14px;
    border-radius: 18px;
    background: rgba(10, 10, 14, .30);
    border: 1px solid rgba(255, 255, 255, .18);
    color: rgba(255, 255, 255, .86);
    font-size: 13px;
    line-height: 1.55;
}

/* RIGHT */
.vt-cityHub__right {
    border-radius: 24px;
    background: rgba(255, 255, 255, .72);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 22px 60px rgba(0, 0, 0, .10);
    padding: 18px;
}

.vt-cityHub__chips {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}

/* City pill */
.vt-chipCity {
    text-decoration: none;
    color: #141414;
    border-radius: 18px;
    padding: 12px 12px;
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 14px 34px rgba(0, 0, 0, .07);
    display: grid;
    grid-template-columns: 44px 1fr 28px;
    gap: 10px;
    align-items: center;
    position: relative;
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.vt-chipCity::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(320px 140px at 10% 20%, rgba(194, 142, 31, .22), transparent 60%);
    opacity: 0;
    transition: opacity .18s ease;
    pointer-events: none;
}

.vt-chipCity:hover {
    transform: translateY(-2px);
    border-color: rgba(194, 142, 31, .40);
    box-shadow: 0 18px 44px rgba(0, 0, 0, .10);
}

.vt-chipCity:hover::before {
    opacity: 1;
}

.vt-chipCity__ic {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    background: linear-gradient(180deg, #fff4e2, #f6e2c2);
    border: 1px solid rgba(122, 46, 14, .22);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75), 0 10px 20px rgba(122, 46, 14, .12);
    color: #7A2E0E;
    font-size: 18px;
}

.vt-chipCity__txt {
    font-weight: 950;
    font-size: 15px;
    line-height: 1.1;
}

.vt-chipCity__txt small {
    display: block;
    font-size: 11px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: rgba(20, 20, 20, .62);
    font-weight: 900;
    margin-bottom: 2px;
}

.vt-chipCity__go {
    width: 28px;
    height: 28px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: rgba(122, 46, 14, .08);
    border: 1px solid rgba(122, 46, 14, .14);
    color: #7A2E0E;
    transition: transform .18s ease;
}

.vt-chipCity:hover .vt-chipCity__go {
    transform: translate(1px, -1px);
}

/* Footer row */
.vt-cityHub__foot {
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
}

.vt-cityHub__footItem {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    border-radius: 999px;
    background: rgba(255, 248, 238, .9);
    border: 1px solid rgba(122, 46, 14, .14);
    font-weight: 900;
    font-size: 12.5px;
    color: rgba(20, 20, 20, .84);
}

.vt-cityHub__footItem i {
    color: #7A2E0E;
}

/* ===== Client Gallery Slider ===== */
.vt-cgal {
    position: relative;
    padding: 50px 0;
    overflow: hidden;
}

.vt-cgal .container {
    position: relative;
    z-index: 2;
}

.vt-cgal__head {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    flex-wrap: wrap;
    align-items: end;
    margin-bottom: 14px;
}

.vt-cgal__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
    color: #7A2E0E;
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: 12px;
}

.vt-cgal__line {
    width: 34px;
    height: 3px;
    border-radius: 20px;
    background: #C28E1F;
}

.vt-cgal__title {
    margin: 10px 0 6px;
    font-size: 34px;
    font-weight: 950;
    line-height: 1.15;
    color: #141414;
}

.vt-cgal__sub {
    margin: 0;
    max-width: 720px;
    color: rgba(20, 20, 20, .78);
    font-size: 16px;
    line-height: 1.7;
}

.vt-cgal__meta {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.vt-cgal__chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .78);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 10px 22px rgba(0, 0, 0, .06);
    font-weight: 900;
    font-size: 12.5px;
    color: rgba(20, 20, 20, .86);
}

.vt-cgal__chip i {
    color: #7A2E0E;
}

/* Slider wrap */
.vt-cgal__wrap {
    position: relative;
    border-radius: 22px;
    padding: 14px;
    background: rgba(255, 255, 255, .70);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 20px 55px rgba(0, 0, 0, .10);
}

/* Track */
.vt-cgal__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - (14px * 3)) / 4);
    /* 4 cards */
    gap: 14px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    padding: 4px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.vt-cgal__track::-webkit-scrollbar {
    display: none;
}

.vt-cgal__card {
    scroll-snap-align: start;
    text-decoration: none;
    color: inherit;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 16px 44px rgba(0, 0, 0, .10);
    background: #fff;
    display: block;
    transform: translateZ(0);
}

.vt-cgal__media {
    position: relative;
    height: 300px;
    overflow: hidden;
}

.vt-cgal__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.03);
    transition: transform .25s ease;
}

.vt-cgal__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(10, 10, 14, .06), rgba(10, 10, 14, .60));
    opacity: 0;
    transition: opacity .25s ease;
}

.vt-cgal__cap {
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    opacity: 0;
    transform: translateY(6px);
    transition: opacity .25s ease, transform .25s ease;
}

.vt-cgal__tag {
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(194, 142, 31, .22);
    border: 1px solid rgba(194, 142, 31, .30);
    color: #fff;
    font-weight: 950;
    font-size: 12px;
    backdrop-filter: blur(10px);
}

.vt-cgal__txt {
    color: rgba(255, 255, 255, .92);
    font-weight: 950;
    font-size: 13px;
    text-align: right;
}

.vt-cgal__card:hover .vt-cgal__media img {
    transform: scale(1.08);
}

.vt-cgal__card:hover .vt-cgal__overlay {
    opacity: 1;
}

.vt-cgal__card:hover .vt-cgal__cap {
    opacity: 1;
    transform: translateY(0);
}

/* Nav buttons */
.vt-cgal__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 999px;
    border: 1px solid rgba(0, 0, 0, .10);
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 18px 40px rgba(0, 0, 0, .12);
    display: grid;
    place-items: center;
    color: #7A2E0E;
    z-index: 5;
}

.vt-cgal__prev {
    left: -10px;
}

.vt-cgal__next {
    right: -10px;
}

/* Dots */
.vt-cgal__dots {
    margin-top: 12px;
    display: flex;
    justify-content: center;
    gap: 8px;
}

.vt-cgal__dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: rgba(122, 46, 14, .22);
    border: 1px solid rgba(122, 46, 14, .18);
}

.vt-cgal__dot.is-active {
    width: 26px;
    background: #7A2E0E;
    border-color: rgba(122, 46, 14, .25);
}

/* ===== Real Reviews Section (Google-Style with Horizontal Slider) ===== */
.vt-rw {
    position: relative;
    padding: 78px 0;
    background: #fff8ee;
    overflow: hidden;
    color: #141414;
}

.vt-rw .container {
    position: relative;
    z-index: 2;
}

/* Main Layout Grid - Fixed width summary + flexible slider */
.vt-rw__grid {
    display: grid;
    grid-template-columns: minmax(280px, 360px) minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

/* ===== Left: Review Summary ===== */
.vt-rw__summary {
    border-radius: 22px;
    background: rgba(255, 255, 255, .78);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 20px 55px rgba(0, 0, 0, .10);
    padding: 18px;
}

.vt-rw__brand {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 950;
    color: #7A2E0E;
    letter-spacing: .02em;
}

.vt-rw__gDot {
    width: 10px;
    height: 10px;
    border-radius: 99px;
    background: #C28E1F;
    box-shadow: 0 0 0 6px rgba(194, 142, 31, .18);
}

.vt-rw__scoreRow {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 14px 0 10px;
}

.vt-rw__score {
    font-size: 46px;
    line-height: 1;
    font-weight: 950;
    color: #141414;
}

.vt-rw__scoreMeta {
    line-height: 1.15;
}

.vt-rw__stars {
    color: #C28E1F;
    display: inline-flex;
    gap: 3px;
    font-size: 14px;
    margin-bottom: 6px;
}

.vt-rw__count {
    font-weight: 850;
    color: rgba(20, 20, 20, .65);
    font-size: 13px;
}

/* Rating Bars */
.vt-rw__bars {
    margin-top: 8px;
}

.vt-rw__bar {
    display: grid;
    grid-template-columns: 14px 1fr 40px;
    gap: 10px;
    align-items: center;
    margin: 8px 0;
    font-weight: 900;
    color: rgba(20, 20, 20, .70);
    font-size: 12.5px;
}

.vt-rw__bar em {
    font-style: normal;
    text-align: right;
    color: rgba(20, 20, 20, .55);
    font-weight: 900;
}

.vt-rw__barLine {
    height: 10px;
    border-radius: 999px;
    background: rgba(0, 0, 0, .06);
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .06);
}

.vt-rw__barLine i {
    display: block;
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(122, 46, 14, .90), rgba(194, 142, 31, .90));
}

.vt-rw__trust {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.vt-rw__trustChip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 10px;
    border-radius: 999px;
    background: rgba(255, 248, 238, .95);
    border: 1px solid rgba(122, 46, 14, .12);
    font-weight: 900;
    font-size: 12px;
    color: rgba(20, 20, 20, .80);
}

.vt-rw__trustChip i {
    color: #7A2E0E;
}

.vt-rw__note {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px dashed rgba(0, 0, 0, .12);
    color: rgba(20, 20, 20, .62);
    font-size: 12.5px;
    line-height: 1.55;
}

/* ===== Right: Reviews Slider Panel ===== */
.vt-rw__panel {
    min-width: 0;
    /* Critical: allows shrinking in grid */
    border-radius: 22px;
    background: rgba(255, 255, 255, .70);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 20px 55px rgba(0, 0, 0, .10);
    padding: 16px;
    overflow: hidden;
    /* Prevents internal overflow bleed */
}

.vt-rw__panelHead {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.vt-rw__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
    color: #7A2E0E;
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: 12px;
}

.vt-rw__line {
    width: 34px;
    height: 3px;
    border-radius: 20px;
    background: #C28E1F;
}

.vt-rw__title {
    margin: 10px 0 0;
    font-size: 26px;
    font-weight: 950;
    line-height: 1.2;
}

/* Navigation Buttons */
.vt-rw__nav {
    display: flex;
    gap: 8px;
}

.vt-rw__btn {
    width: 42px;
    height: 42px;
    border-radius: 999px;
    border: 1px solid rgba(0, 0, 0, .10);
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 18px 40px rgba(0, 0, 0, .10);
    display: grid;
    place-items: center;
    color: #7A2E0E;
}

/* Horizontal Scroll Track */
.vt-rw__track {
    min-width: 0;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 14px) / 2);
    /* 2 cards visible on desktop */
    gap: 14px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    padding: 4px 2px;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

.vt-rw__track::-webkit-scrollbar {
    display: none;
}

/* Individual Review Card */
.vt-rwCard {
    scroll-snap-align: start;
    width: 100%;
    min-width: 0;
    border-radius: 18px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 16px 44px rgba(0, 0, 0, .10);
    padding: 14px;
}

.vt-rwCard__top {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: flex-start;
    margin-bottom: 8px;
}

.vt-rwCard__who {
    display: flex;
    gap: 10px;
    align-items: center;
    min-width: 0;
}

.vt-rwCard__avatar {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    font-weight: 950;
    color: #fff;
    background: #7A2E0E;
    box-shadow: 0 14px 28px rgba(0, 0, 0, .12);
}

.vt-rwCard__nameRow {
    display: flex;
    align-items: center;
    gap: 8px;
    line-height: 1.15;
    flex-wrap: wrap;
}

.vt-rwCard__nameRow strong {
    font-weight: 950;
}

.vt-rwCard__meta {
    margin-top: 4px;
    color: rgba(20, 20, 20, .62);
    font-weight: 850;
    font-size: 12.5px;
    line-height: 1.35;
}

.vt-rwCard__ver {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 9px;
    border-radius: 999px;
    background: rgba(122, 46, 14, .08);
    border: 1px solid rgba(122, 46, 14, .14);
    color: #7A2E0E;
    font-weight: 900;
    font-size: 11.5px;
    white-space: nowrap;
}

.vt-rwCard__ver i {
    color: #C28E1F;
}

.vt-rwCard__src {
    flex: 0 0 auto;
    font-weight: 950;
    font-size: 12px;
    color: rgba(20, 20, 20, .55);
    padding: 7px 10px;
    border-radius: 999px;
    border: 1px solid rgba(0, 0, 0, .08);
    background: rgba(255, 248, 238, .90);
    white-space: nowrap;
}

.vt-rwCard__stars {
    color: #C28E1F;
    display: inline-flex;
    gap: 3px;
    font-size: 13px;
    margin: 6px 0 8px;
}

.vt-rwCard__text {
    margin: 0;
    color: rgba(20, 20, 20, .82);
    font-size: 14.2px;
    line-height: 1.75;
}

/* Slider Dots Indicator */
.vt-rw__dots {
    margin-top: 12px;
    display: flex;
    justify-content: center;
    gap: 8px;
}

.vt-rw__dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: rgba(122, 46, 14, .22);
    border: 1px solid rgba(122, 46, 14, .18);
}

.vt-rw__dot.is-active {
    width: 26px;
    background: #7A2E0E;
    border-color: rgba(122, 46, 14, .25);
}

/* ===== FAQ Section ===== */
.vt-faq {
    position: relative;
    padding: 55px 0;
    overflow: hidden;
    color: #141414;
}

.vt-faq .container {
    position: relative;
    z-index: 2;
}

.vt-faq__head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 16px;
}

.vt-faq__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
    color: #7A2E0E;
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: 12px;
}

.vt-faq__line {
    width: 34px;
    height: 3px;
    border-radius: 20px;
    background: #C28E1F;
}

.vt-faq__title {
    margin: 10px 0 6px;
    font-size: 34px;
    font-weight: 950;
    line-height: 1.15;
}

.vt-faq__sub {
    margin: 0;
    max-width: 720px;
    color: rgba(20, 20, 20, .78);
    font-size: 16px;
    line-height: 1.7;
}

.vt-faq__chips {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.vt-faq__chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .78);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 10px 22px rgba(0, 0, 0, .06);
    font-weight: 900;
    font-size: 12.5px;
    color: rgba(20, 20, 20, .86);
}

.vt-faq__chip i {
    color: #7A2E0E;
}

/* Grid */
.vt-faq__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
    gap: 18px;
    align-items: start;
}

/* Accordion */
.vt-faq__acc {
    min-width: 0;
    border-radius: 22px;
    background: rgba(255, 255, 255, .72);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 20px 55px rgba(0, 0, 0, .10);
    padding: 10px;
}

.vt-faqItem {
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 18px;
    margin: 10px;
    overflow: hidden;
    box-shadow: 0 14px 34px rgba(0, 0, 0, .07);
}

.vt-faqItem__q {
    width: 100%;
    text-align: left;
    border: 0;
    background: transparent;
    padding: 14px 48px 14px 14px;
    font-weight: 950;
    color: rgba(20, 20, 20, .92);
    font-size: 15px;
    line-height: 1.35;
    position: relative;
}

.vt-faqItem__q:hover {
    background: radial-gradient(320px 140px at 10% 30%, rgba(194, 142, 31, .14), transparent 60%);
}

.vt-faqItem__icon {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 26px;
    height: 26px;
    border-radius: 999px;
    border: 1px solid rgba(122, 46, 14, .14);
    background: rgba(122, 46, 14, .06);
}

.vt-faqItem__icon::before,
.vt-faqItem__icon::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 12px;
    height: 2px;
    background: #7A2E0E;
    transform: translate(-50%, -50%);
    border-radius: 2px;
}

.vt-faqItem__icon::after {
    width: 2px;
    height: 12px;
}

.vt-faqItem__a {
    max-height: 0;
    overflow: hidden;
    padding: 0 14px;
    color: rgba(20, 20, 20, .74);
    font-size: 14.2px;
    line-height: 1.75;
    transition: max-height .28s ease, padding .22s ease;
    border-top: 1px solid rgba(0, 0, 0, .06);
}

.vt-faqItem.is-open .vt-faqItem__a {
    max-height: 260px;
    padding: 12px 14px 14px;
}

.vt-faqItem.is-open .vt-faqItem__icon::after {
    height: 0;
    /* turn + into - */
}

/* Side card */
.vt-faq__side {
    border-radius: 22px;
    background: rgba(255, 255, 255, .78);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 20px 55px rgba(0, 0, 0, .10);
    padding: 16px;
}

.vt-faq__badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    border-radius: 999px;
    background: rgba(255, 248, 238, .92);
    border: 1px solid rgba(122, 46, 14, .12);
    font-weight: 950;
    color: #7A2E0E;
    font-size: 12px;
}

.vt-faq__badgeDot {
    width: 10px;
    height: 10px;
    border-radius: 99px;
    background: #C28E1F;
    box-shadow: 0 0 0 6px rgba(194, 142, 31, .18);
}

.vt-faq__sideTitle {
    margin: 12px 0 6px;
    font-size: 18px;
    font-weight: 950;
}

.vt-faq__sideSub {
    color: rgba(20, 20, 20, .74);
    font-size: 13.5px;
    line-height: 1.7;
}

.vt-faq__bullets {
    margin-top: 12px;
    display: grid;
    gap: 10px;
}

.vt-faqB {
    display: flex;
    gap: 10px;
    padding: 12px;
    border-radius: 18px;
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(0, 0, 0, .08);
}

.vt-faqB__ic {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    color: #7A2E0E;
    background: linear-gradient(180deg, #fff4e2, #f6e2c2);
    border: 1px solid rgba(122, 46, 14, .22);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75), 0 10px 20px rgba(122, 46, 14, .10);
}

.vt-faqB__t {
    font-weight: 950;
    margin-bottom: 2px;
}

.vt-faqB__s {
    color: rgba(20, 20, 20, .70);
    font-size: 13px;
    line-height: 1.55;
}

.vt-faq__fine {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px dashed rgba(0, 0, 0, .12);
    color: rgba(20, 20, 20, .62);
    font-size: 12.5px;
    line-height: 1.55;
}


/* ===== Enquiry CTA Card (Premium) ===== */
.vt-enq3 {
    position: relative;
    border-radius: 24px;
    padding: 34px;
    overflow: hidden;
    border: 1px solid rgba(122, 46, 14, .18);
    background: linear-gradient(180deg, #ffffff, #fff8ee);
    box-shadow:
        0 26px 70px rgba(0, 0, 0, .10),
        inset 0 1px 0 rgba(255, 255, 255, .95);
}

/* Left accent rail */
.vt-enq3::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 7px;
    background: linear-gradient(180deg, #C28E1F, #7A2E0E);
    opacity: .95;
}

/* Subtle background motif + glow */
.vt-enq3__bg {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(700px 280px at 12% 40%, rgba(194, 142, 31, .18), transparent 62%),
        radial-gradient(620px 260px at 92% 60%, rgba(122, 46, 14, .12), transparent 60%),
        repeating-linear-gradient(45deg,
            rgba(122, 46, 14, .05) 0px,
            rgba(122, 46, 14, .05) 1px,
            transparent 1px,
            transparent 14px);
    pointer-events: none;
}

/* Saffron glow ring (behind buttons on larger screens) */
.vt-enq3__ring {
    position: absolute;
    right: -120px;
    top: -120px;
    width: 320px;
    height: 320px;
    border-radius: 999px;
    background: radial-gradient(circle at 30% 30%, rgba(194, 142, 31, .28), rgba(194, 142, 31, 0) 60%);
    pointer-events: none;
    opacity: .95;
}

/* Header */
.vt-enq3__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
    letter-spacing: .10em;
    text-transform: uppercase;
    font-size: 12px;
    color: rgba(122, 46, 14, .92);
    margin-bottom: 10px;
}

.vt-enq3__spark {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #C28E1F;
    box-shadow: 0 0 0 6px rgba(194, 142, 31, .18);
}

.vt-enq3__title {
    margin: 0 0 10px;
    font-size: 30px;
    line-height: 1.22;
    font-weight: 950;
    color: #141414;
    max-width: 820px;
}

.vt-enq3__sub {
    margin: 0;
    max-width: 720px;
    color: rgba(20, 20, 20, .75);
    font-size: 15.5px;
    line-height: 1.75;
}

/* Mini trust pills */
.vt-enq3__mini {
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.vt-enq3__pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .78);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 12px 24px rgba(0, 0, 0, .06);
    font-weight: 900;
    font-size: 12.5px;
    color: rgba(20, 20, 20, .82);
}

.vt-enq3__pill i {
    color: #7A2E0E;
}

/* Actions Row */
.vt-enq3__actionRow {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px dashed rgba(122, 46, 14, .18);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

/* Button container (compact pill on desktop) */
.vt-enq3__actions {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    width: fit-content;
    max-width: 100%;
    border-radius: 999px;
    background: rgba(255, 255, 255, .78);
    border: 1px solid rgba(122, 46, 14, .18);
    box-shadow:
        0 16px 34px rgba(0, 0, 0, .10),
        inset 0 1px 0 rgba(255, 255, 255, .95);
    backdrop-filter: blur(10px);
}

.vt-enq3__actions .btn {
    margin: 0;
    white-space: nowrap;
}

/* Hint text on the right */
.vt-enq3__hint {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 900;
    font-size: 12.5px;
    color: rgba(20, 20, 20, .70);
    background: rgba(255, 255, 255, .55);
    border: 1px solid rgba(0, 0, 0, .08);
    padding: 10px 12px;
    border-radius: 999px;
}

.vt-enq3__hint i {
    color: #7A2E0E;
}


/* =========================
     Theme helpers (uses your existing --brand/--brand-2)
  ========================= */
.tfe-sec {
    padding: 34px 0;
}

.tfe-grid {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 18px;
    align-items: start;
}

.tfe-head {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 18px;
    padding: 16px 16px;
    box-shadow: 0 12px 26px rgba(0, 0, 0, .06);
    display: flex;
    gap: 14px;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 12px;
}

.tfe-title {
    margin: 0 0 6px;
    font-weight: 900;
    letter-spacing: -.2px;
}

.tfe-sub {
    margin: 0;
    opacity: .78;
}

.tfe-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    margin-top: 2px;
}

.tfe-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(0, 0, 0, .08);
    background: linear-gradient(180deg, rgba(0, 0, 0, .02), rgba(0, 0, 0, .00));
    font-weight: 800;
    font-size: 12px;
    opacity: .92;
    white-space: nowrap;
}

.tfe-pill i {
    color: var(--brand);
}

/* Cards area: you will paste your own tour card HTML */
.tfe-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

/* SAMPLE HOLDER ONLY (so layout shows) */
.tfe-sample-card {
    border: 2px dashed rgba(0, 0, 0, .14);
    border-radius: 18px;
    background: rgba(0, 0, 0, .02);
    min-height: 310px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    opacity: .6;
}

/* Right form (theme look) */
.tfe-right {
    position: sticky;
    top: 92px;
}

.tfe-formcard {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .10);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 18px 46px rgba(0, 0, 0, .10);
}

.tfe-formhead {
    padding: 16px 16px 14px;
    color: #fff;
    background: linear-gradient(135deg, var(--brand), var(--brand-2));
}

.tfe-formtitle {
    margin: 0 0 4px;
    font-weight: 950;
    letter-spacing: -.2px;
}

.tfe-formsub {
    margin: 0;
    opacity: .92;
    font-size: 13px;
}

.tfe-form {
    padding: 14px 16px 16px;
}

.tfe-row {
    margin-bottom: 12px;
}

.tfe-label {
    display: block;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 6px;
    opacity: .78;
}

.tfe-input,
.tfe-textarea {
    width: 100%;
    border: 1px solid rgba(0, 0, 0, .14);
    border-radius: 14px;
    padding: 12px 12px;
    outline: none;
    background: #fff;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.tfe-input:focus,
.tfe-textarea:focus {
    border-color: rgba(0, 0, 0, .12);
    box-shadow: 0 0 0 4px rgba(0, 0, 0, .06), 0 0 0 6px rgba(255, 255, 255, .65) inset;
    box-shadow: 0 0 0 4px rgba(0, 0, 0, .05), 0 0 0 4px rgba(0, 0, 0, .00);
    border-color: rgba(0, 0, 0, .20);
}

.tfe-2col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

/* Button in your brand style (pill + gradient) */
.tfe-btn {
    width: 100%;
    border: 0;
    border-radius: 999px;
    padding: 13px 16px;
    font-weight: 950;
    letter-spacing: .2px;
    color: #fff;
    background: linear-gradient(135deg, var(--brand), var(--brand-2));
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    box-shadow: 0 16px 34px rgba(0, 0, 0, .16);
    transition: transform .16s ease, box-shadow .16s ease, filter .16s ease;
}

.tfe-btn:hover {
    transform: translateY(-1px);
    filter: brightness(1.02);
    box-shadow: 0 20px 40px rgba(0, 0, 0, .18);
}

.tfe-note {
    margin-top: 10px;
    font-size: 12px;
    opacity: .72;
}

/* =========================
   FORCE 2-CARD GRID (Theme Safe)
========================= */
.tfe-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

/* Kill Bootstrap column widths inside this section only */
.tfe-card-grid>[class*="col-"] {
    width: 100%;
    max-width: 100%;
    flex: unset;
}

/* =========================
   VTX FOOTER (Premium)
   ========================= */
.vtx-footer {
    position: relative;
    background:
        radial-gradient(900px 420px at 18% 12%, rgba(194, 142, 31, .22), rgba(194, 142, 31, 0) 55%),
        radial-gradient(780px 360px at 82% 20%, rgba(255, 255, 255, .08), rgba(255, 255, 255, 0) 60%),
        linear-gradient(180deg, #7A2E0E 0%, #5c2108 55%, #3f1605 100%);
    color: rgba(255, 255, 255, .92);
    padding: 0;
    overflow: hidden;
}

/* Subtle premium texture overlay */
.vtx-footer::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(135deg, rgba(255, 255, 255, .08) 0, rgba(255, 255, 255, .08) 1px, transparent 1px, transparent 14px);
    opacity: .10;
    pointer-events: none;
}

/* Top saffron divider */
.vtx-footer__topline {
    height: 3px;
    background: linear-gradient(90deg, rgba(194, 142, 31, 0), #C28E1F, rgba(194, 142, 31, 0));
    box-shadow: 0 10px 30px rgba(194, 142, 31, .25);
}

.vtx-footer__wrap {
    position: relative;
    padding: 28px 10px 22px;
}

/* Trust Strip */
.vtx-footer__trust {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    padding: 16px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 18px;
    background: rgba(0, 0, 0, .12);
    backdrop-filter: blur(6px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, .22);
    margin-top: 18px;
}

.vtx-trust {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    padding: 10px;
    border-radius: 14px;
    transition: transform .18s ease, background .18s ease, border-color .18s ease;
    border: 1px solid rgba(255, 255, 255, .10);
    background: rgba(255, 255, 255, .04);
}

.vtx-trust i {
    color: #C28E1F;
    font-size: 18px;
    margin-top: 1px;
}

.vtx-trust strong {
    display: block;
    font-weight: 700;
    font-size: 14px;
    color: #fff;
    line-height: 1.2;
}

.vtx-trust span {
    display: block;
    font-size: 13px;
    color: rgba(255, 255, 255, .78);
    line-height: 1.3;
}

.vtx-trust:hover {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, .06);
    border-color: rgba(194, 142, 31, .38);
}

/* Main Grid */
.vtx-footer__grid {
    display: grid;
    grid-template-columns: 1.35fr 1fr 1fr 1.15fr;
    gap: 26px;
    margin-top: 18px;
    padding-top: 12px;
}

/* Brand Box */
.vtx-brandbox {
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 18px;
    background: rgba(0, 0, 0, .14);
    backdrop-filter: blur(6px);
    box-shadow: 0 18px 45px rgba(0, 0, 0, .22);
    padding: 18px;
}

.vtx-brandbox__logo {
    display: block;
    max-width: 190px;
    width: 100%;
    height: auto;
    margin-bottom: 10px;
    filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .25));
}

.vtx-brandbox__text {
    color: rgba(255, 255, 255, .80);
    line-height: 1.6;
    margin: 0 0 14px;
    font-size: 14px;
}

.vtx-brandbox__mini {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    margin-bottom: 14px;
}

.vtx-brandbox__mini span {
    font-size: 13px;
    color: rgba(255, 255, 255, .86);
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.vtx-brandbox__mini i {
    color: #C28E1F;
}

/* Social Links */
.vtx-brandbox__social {
    display: flex;
    gap: 10px;
}

.vtx-brandbox__social a {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .05);
    color: rgba(255, 255, 255, .9);
    text-decoration: none;
    transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.vtx-brandbox__social a:hover {
    transform: translateY(-2px);
    border-color: rgba(194, 142, 31, .55);
    background: rgba(194, 142, 31, .14);
    color: #fff;
}

/* Column Titles */
.vtx-footer__title {
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .2px;
    color: #C28E1F;
    margin: 10px 0 12px;
    position: relative;
    padding-bottom: 10px;
}

.vtx-footer__title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 46px;
    height: 2px;
    background: linear-gradient(90deg, #C28E1F, rgba(194, 142, 31, 0));
    opacity: .95;
}

/* Links List */
.vtx-footer__list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.vtx-footer__list li {
    margin: 9px 0;
}

.vtx-footer__list a {
    color: rgba(255, 255, 255, .86);
    text-decoration: none;
    transition: color .18s ease, transform .18s ease;
    display: inline-flex;
    gap: 8px;
}

.vtx-footer__list a:hover {
    color: #fff;
    transform: translateX(2px);
}

/* Contact Info */
.vtx-footer__contact {
    list-style: none;
    padding: 0;
    margin: 0 0 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.vtx-footer__contact li {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    color: rgba(255, 255, 255, .84);
}

.vtx-footer__contact i {
    color: #C28E1F;
    margin-top: 2px;
}

/* CTA Card */
.vtx-cta {
    border-radius: 18px;
    padding: 14px;
    border: 1px solid rgba(194, 142, 31, .35);
    background: linear-gradient(180deg, rgba(194, 142, 31, .16), rgba(0, 0, 0, .12));
    box-shadow: 0 16px 40px rgba(0, 0, 0, .22);
}

.vtx-cta__head {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin-bottom: 12px;
}

.vtx-cta__head i {
    font-size: 20px;
    color: #C28E1F;
}

.vtx-cta__head strong {
    display: block;
    font-weight: 800;
    color: #fff;
    line-height: 1.2;
}

.vtx-cta__head span {
    display: block;
    font-size: 13px;
    color: rgba(255, 255, 255, .78);
    margin-top: 2px;
}

.vtx-cta__btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    padding: 11px 14px;
    border-radius: 999px;
    font-weight: 800;
    text-decoration: none;
    color: #3b1b07;
    background: linear-gradient(135deg, #C28E1F, #f0c24b);
    box-shadow: 0 14px 28px rgba(0, 0, 0, .22);
    transition: transform .18s ease, box-shadow .18s ease;
}

.vtx-cta__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 34px rgba(0, 0, 0, .28);
}

/* Bottom Bar */
.vtx-footer__bottom {
    margin-top: 22px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, .14);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
}

.vtx-footer__bottomlinks {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.vtx-footer__bottomlinks a {
    color: rgba(255, 255, 255, .78);
    text-decoration: none;
}

.vtx-footer__bottomlinks a:hover {
    color: #fff;
}

.vtx-dot {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: rgba(194, 142, 31, .9);
    display: inline-block;
}

/* ABout us */

/* Uses your theme variables from :root */
.vtabout {
    padding: 42px 0;
    background:
        radial-gradient(900px 420px at 10% 10%, rgba(194, 142, 31, .18), transparent 60%),
        radial-gradient(900px 420px at 90% 30%, rgba(122, 46, 14, .10), transparent 62%),
        var(--bg);
}

.vtabout__wrap {
    display: grid;
    grid-template-columns: 1.05fr 1fr;
    gap: 22px;
    align-items: center;
}

@media (max-width: 992px) {
    .vtabout__wrap {
        grid-template-columns: 1fr;
    }
}

/* ===== MEDIA / COLLAGE ===== */
.vtabout__media {
    position: relative;
}

.vtabout__mgrid {
    position: relative;
    border-radius: calc(var(--radius) + 6px);
    padding: 14px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .85), rgba(255, 255, 255, .65));
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    overflow: hidden;
}

.vtabout__mgrid:before {
    content: "";
    position: absolute;
    inset: -60px -60px auto auto;
    width: 260px;
    height: 260px;
    background: radial-gradient(circle at 30% 30%, rgba(194, 142, 31, .28), transparent 60%);
    transform: rotate(14deg);
    pointer-events: none;
}

.vtabout__img {
    margin: 0;
    position: relative;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .08);
    background:
        linear-gradient(90deg, rgba(20, 20, 20, .25), rgba(20, 20, 20, .05)),
        var(--img);
    background-size: cover;
    background-position: center;
    box-shadow: 0 14px 30px rgba(0, 0, 0, .12);
}

.vtabout__img--tall {
    height: 360px;
}

.vtabout__img--wide {
    height: 170px;
}

.vtabout__img--small {
    height: 170px;
}

.vtabout__mgrid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    grid-template-rows: 170px 170px;
    gap: 12px;
}

.vtabout__img--tall {
    grid-column: 1 / 2;
    grid-row: 1 / 3;
}

.vtabout__img--wide {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
}

.vtabout__img--small {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
}

@media (max-width: 576px) {
    .vtabout__mgrid {
        grid-template-columns: 1fr;
        grid-template-rows: 220px 170px 170px;
    }

    .vtabout__img--tall {
        grid-column: 1;
        grid-row: 1;
        height: 220px;
    }

    .vtabout__img--wide {
        grid-column: 1;
        grid-row: 2;
    }

    .vtabout__img--small {
        grid-column: 1;
        grid-row: 3;
    }
}

.vtabout__cap {
    position: absolute;
    left: 12px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 999px;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .2px;
    background: rgba(20, 20, 20, .35);
    border: 1px solid rgba(255, 255, 255, .18);
    backdrop-filter: blur(8px);
}

/* Floating badge (different from sample) */
.vtabout__float {
    position: absolute;
    left: 20px;
    top: 18px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 18px;
    background:
        linear-gradient(135deg, rgba(122, 46, 14, .96), rgba(91, 34, 10, .96));
    border: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
    box-shadow: 0 18px 40px rgba(122, 46, 14, .20);
    z-index: 2;
}

.vtabout__floatIcon {
    width: 40px;
    height: 40px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    letter-spacing: .3px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
}

.vtabout__floatText b {
    display: block;
    font-size: 13px;
}

.vtabout__floatText span {
    display: block;
    font-size: 12px;
    opacity: .92;
    margin-top: 2px;
}

/* ===== CONTENT ===== */
.vtabout__content {
    border-radius: calc(var(--radius) + 6px);
    padding: 18px;
    background: var(--card);
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
}

.vtabout__tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: var(--brand);
    background: rgba(194, 142, 31, .14);
    border: 1px solid rgba(194, 142, 31, .22);
}

.vtabout__title {
    margin: 12px 0 8px;
    font-size: 34px;
    line-height: 1.12;
    letter-spacing: .2px;
    color: var(--ink);
}

.vtabout__title span {
    color: var(--brand);
    position: relative;
}

.vtabout__title span:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 100%;
    height: 10px;
    background: rgba(194, 142, 31, .28);
    border-radius: 999px;
    z-index: -1;
}

.vtabout__sub {
    margin: 0;
    color: var(--muted);
    line-height: 1.75;
    font-size: 15px;
}

/* Stats */
.vtabout__stats {
    margin-top: 16px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

@media (max-width: 576px) {
    .vtabout__stats {
        grid-template-columns: 1fr;
    }
}

.vtabout__stat {
    border-radius: 18px;
    padding: 14px 12px;
    border: 1px solid rgba(0, 0, 0, .08);
    background:
        radial-gradient(420px 180px at 18% 20%, rgba(194, 142, 31, .14), transparent 60%),
        #fff;
    text-align: center;
}

.vtabout__stat b {
    display: block;
    font-size: 30px;
    letter-spacing: .2px;
    color: var(--ink);
}

.vtabout__stat span {
    display: block;
    margin-top: 6px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 700;
}

.vtabout__stat--brand {
    background:
        radial-gradient(520px 220px at 20% 20%, rgba(255, 255, 255, .16), transparent 60%),
        linear-gradient(135deg, rgba(122, 46, 14, .96), rgba(91, 34, 10, .96));
    border-color: rgba(122, 46, 14, .18);
    box-shadow: 0 16px 34px rgba(122, 46, 14, .18);
}

.vtabout__stat--brand b,
.vtabout__stat--brand span {
    color: #fff;
}

.vtabout__stat--brand span {
    opacity: .92;
}

/* Trust bullets (clean, not icon-row) */
.vtabout__trust {
    margin-top: 14px;
    display: grid;
    gap: 10px;
}

.vtabout__trustItem {
    border-radius: 18px;
    padding: 12px 12px;
    border: 1px dashed rgba(0, 0, 0, .12);
    background:
        linear-gradient(180deg, rgba(122, 46, 14, .05), rgba(255, 255, 255, 0));
}

.vtabout__trustItem b {
    display: block;
    font-size: 14px;
    color: var(--ink);
    letter-spacing: .2px;
}

.vtabout__trustItem span {
    display: block;
    margin-top: 6px;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.6;
}

/* CTA */
.vtabout__cta {
    margin-top: 16px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.vtabout__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 14px;
    border-radius: 16px;
    text-decoration: none;
    font-weight: 900;
    font-size: 14px;
    border: 1px solid transparent;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
}

.vtabout__btn:active {
    transform: translateY(1px);
}

.vtabout__btn--brand {
    color: #fff;
    background: linear-gradient(135deg, var(--brand), #5b220a);
    box-shadow: 0 14px 28px rgba(122, 46, 14, .22);
    border-color: rgba(255, 255, 255, .14);
}

.vtabout__btn--brand:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(122, 46, 14, .28);
}

.vtabout__btn--ghost {
    color: var(--brand);
    background: rgba(194, 142, 31, .10);
    border-color: rgba(194, 142, 31, .22);
}

.vtabout__btn--ghost:hover {
    transform: translateY(-1px);
    border-color: rgba(122, 46, 14, .20);
    background: rgba(194, 142, 31, .14);
}

/* ===== WHY BOOK WITH ===== */
.vtwhy {
    padding: 46px 0;
    background:
        radial-gradient(900px 420px at 10% 10%, rgba(194, 142, 31, .16), transparent 60%),
        radial-gradient(900px 420px at 90% 30%, rgba(122, 46, 14, .10), transparent 62%),
        var(--bg);
}

.vtwhy__wrap {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 22px;
    align-items: center;
}

@media (max-width: 992px) {
    .vtwhy__wrap {
        grid-template-columns: 1fr;
    }
}

/* LEFT */
.vtwhy__title {
    margin: 0;
    font-size: 44px;
    line-height: 1.08;
    letter-spacing: .2px;
    color: var(--ink);
}

.vtwhy__title span {
    color: var(--brand);
    position: relative;
    display: inline-block;
}

.vtwhy__title span:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 100%;
    height: 12px;
    background: rgba(194, 142, 31, .28);
    border-radius: 999px;
    z-index: -1;
}

@media (max-width: 576px) {
    .vtwhy__title {
        font-size: 34px;
    }
}

.vtwhy__sub {
    margin: 12px 0 0;
    color: var(--muted);
    font-size: 15px;
    line-height: 1.75;
    max-width: 760px;
}

.vtwhy__list {
    margin-top: 18px;
    display: grid;
    gap: 14px;
}

.vtwhy__item {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 16px 16px;
    border-radius: 18px;
    border: 1px solid rgba(122, 46, 14, .14);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .88), rgba(255, 255, 255, .72));
    box-shadow: 0 12px 26px rgba(0, 0, 0, .06);
    position: relative;
    overflow: hidden;
}

.vtwhy__item:before {
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    right: -90px;
    top: -90px;
    background: radial-gradient(circle at 30% 30%, rgba(194, 142, 31, .25), transparent 60%);
    transform: rotate(10deg);
    pointer-events: none;
}

.vtwhy__num {
    min-width: 138px;
    border-radius: 16px;
    padding: 14px 12px;
    background:
        linear-gradient(135deg, rgba(122, 46, 14, .96), rgba(91, 34, 10, .96));
    border: 1px solid rgba(255, 255, 255, .14);
    box-shadow: 0 16px 34px rgba(122, 46, 14, .18);
    color: #fff;
    text-align: left;
    position: relative;
    z-index: 1;
}

.vtwhy__num b {
    display: block;
    font-size: 34px;
    line-height: 1;
    letter-spacing: .2px;
}

.vtwhy__num span {
    display: block;
    margin-top: 8px;
    font-size: 13px;
    font-weight: 800;
    opacity: .92;
}

/* alternate item number card */
.vtwhy__item:nth-child(2) .vtwhy__num {
    background: linear-gradient(135deg, rgba(194, 142, 31, .98), rgba(146, 102, 18, .98));
    color: #1c1406;
    box-shadow: 0 16px 34px rgba(194, 142, 31, .20);
}

.vtwhy__item:nth-child(3) .vtwhy__num {
    background: linear-gradient(135deg, #1f1f1f, #141414);
    box-shadow: 0 16px 34px rgba(0, 0, 0, .22);
}

.vtwhy__text {
    margin: 0;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.75;
    position: relative;
    z-index: 1;
    padding-top: 2px;
}

/* RIGHT Mosaic */
.vtwhy__right {
    display: flex;
    justify-content: flex-end;
}

.vtwhy__mosaic {
    width: 100%;
    max-width: 560px;
    border-radius: calc(var(--radius) + 8px);
    border: 1px solid var(--line);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(255, 255, 255, .65));
    box-shadow: var(--shadow);
    padding: 14px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 170px 170px 170px;
    gap: 12px;
    position: relative;
    overflow: hidden;
}

.vtwhy__mosaic:before {
    content: "";
    position: absolute;
    inset: -70px auto auto -70px;
    width: 260px;
    height: 260px;
    background: radial-gradient(circle at 30% 30%, rgba(122, 46, 14, .16), transparent 60%);
    transform: rotate(-10deg);
    pointer-events: none;
}

.vtwhy__ph {
    margin: 0;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .08);
    background:
        linear-gradient(90deg, rgba(20, 20, 20, .18), rgba(20, 20, 20, .04)),
        var(--img);
    background-size: cover;
    background-position: center;
    box-shadow: 0 14px 30px rgba(0, 0, 0, .12);
    position: relative;
    z-index: 1;
}

/* Different arrangement than reference */
.vtwhy__ph--a {
    grid-column: 1 / 3;
    grid-row: 1 / 2;
}

/* wide top */
.vtwhy__ph--b {
    grid-column: 1 / 2;
    grid-row: 2 / 4;
}

/* tall left */
.vtwhy__ph--c {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
}

.vtwhy__ph--d {
    grid-column: 2 / 3;
    grid-row: 3 / 4;
}

@media (max-width: 576px) {
    .vtwhy__mosaic {
        grid-template-columns: 1fr;
        grid-template-rows: 180px 160px 160px 160px;
    }

    .vtwhy__ph--a {
        grid-column: 1;
        grid-row: 1;
    }

    .vtwhy__ph--b {
        grid-column: 1;
        grid-row: 2;
    }

    .vtwhy__ph--c {
        grid-column: 1;
        grid-row: 3;
    }

    .vtwhy__ph--d {
        grid-column: 1;
        grid-row: 4;
    }
}

.vtwhy__glow {
    position: absolute;
    right: 18px;
    top: 18px;
    padding: 10px 12px;
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(194, 142, 31, .96), rgba(146, 102, 18, .96));
    color: #1c1406;
    border: 1px solid rgba(255, 255, 255, .18);
    box-shadow: 0 18px 40px rgba(194, 142, 31, .20);
    z-index: 2;
}

.vtwhy__glow span {
    display: block;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .35px;
    opacity: .95;
}

.vtwhy__glow b {
    display: block;
    margin-top: 2px;
    font-size: 14px;
    letter-spacing: .2px;
    font-weight: 900;
}

/* contact us */

/* ===== CONTACT US ===== */
.vtcu {
    padding: 46px 0;
    background:
        radial-gradient(900px 420px at 12% 10%, rgba(194, 142, 31, .16), transparent 60%),
        radial-gradient(900px 420px at 88% 30%, rgba(122, 46, 14, .10), transparent 62%),
        var(--bg);
}

.vtcu__wrap {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 18px;
    align-items: start;
    /* ✅ KEY FIX */
}


@media (max-width: 992px) {
    .vtcu__wrap {
        grid-template-columns: 1fr;
    }
}

/* LEFT */
.vtcu__info {
    border-radius: calc(var(--radius) + 6px);
    background: var(--card);
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    overflow: hidden;
}

.vtcu__head {
    padding: 18px 18px 12px;
    background:
        linear-gradient(180deg, rgba(194, 142, 31, .14), rgba(255, 255, 255, 0));
    border-bottom: 1px solid var(--line);
}

.vtcu__tag {
    display: inline-flex;
    align-items: center;
    padding: 8px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: var(--brand);
    background: rgba(194, 142, 31, .14);
    border: 1px solid rgba(194, 142, 31, .22);
}

.vtcu__title {
    margin: 12px 0 8px;
    font-size: 34px;
    line-height: 1.12;
    color: var(--ink);
    letter-spacing: .2px;
}

.vtcu__title span {
    color: var(--brand);
    position: relative;
}

.vtcu__title span:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 100%;
    height: 10px;
    background: rgba(194, 142, 31, .28);
    border-radius: 999px;
    z-index: -1;
}

.vtcu__sub {
    margin: 0;
    color: var(--muted);
    line-height: 1.7;
    font-size: 14px;
}

.vtcu__card {
    padding: 16px 18px 18px;
}

.vtcu__row {
    padding: 12px 0;
    border-bottom: 1px dashed rgba(0, 0, 0, .10);
    display: grid;
    grid-template-columns: 170px 1fr;
    gap: 10px;
}

.vtcu__row:last-of-type {
    border-bottom: 0;
    padding-bottom: 6px;
}

@media (max-width: 576px) {
    .vtcu__row {
        grid-template-columns: 1fr;
    }
}

.vtcu__k {
    font-weight: 900;
    color: var(--ink);
    font-size: 13px;
    letter-spacing: .2px;
}

.vtcu__v {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.65;
}

.vtcu__link {
    color: var(--brand);
    text-decoration: none;
    font-weight: 900;
    border-bottom: 1px dashed rgba(122, 46, 14, .40);
}

.vtcu__link:hover {
    border-bottom-color: rgba(122, 46, 14, .85);
}

.vtcu__quick {
    margin-top: 14px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.vtcu__qbtn {
    flex: 1;
    min-width: 140px;
    text-align: center;
    text-decoration: none;
    font-weight: 900;
    font-size: 14px;
    padding: 12px 14px;
    border-radius: 16px;
    border: 1px solid transparent;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
}

.vtcu__qbtn:active {
    transform: translateY(1px);
}

.vtcu__qbtn--brand {
    color: #fff;
    background: linear-gradient(135deg, var(--brand), #5b220a);
    box-shadow: 0 14px 28px rgba(122, 46, 14, .22);
    border-color: rgba(255, 255, 255, .14);
}

.vtcu__qbtn--brand:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(122, 46, 14, .28);
}

.vtcu__qbtn--gold {
    color: #1c1406;
    background: linear-gradient(135deg, var(--brand-2), #a16d0e);
    box-shadow: 0 14px 28px rgba(194, 142, 31, .22);
    border-color: rgba(255, 255, 255, .14);
}

.vtcu__qbtn--gold:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(194, 142, 31, .28);
}

/* RIGHT */
.vtcu__formWrap {
    border-radius: calc(var(--radius) + 6px);
    background: var(--card);
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    overflow: hidden;
}

.vtcu__formHead {
    padding: 18px 18px 14px;
    background:
        linear-gradient(135deg, rgba(122, 46, 14, .96), rgba(91, 34, 10, .96));
    color: #fff;
}

.vtcu__formHead h3 {
    margin: 0;
    font-size: 20px;
    letter-spacing: .2px;
}

.vtcu__formHead p {
    margin: 8px 0 0;
    opacity: .92;
    font-size: 13px;
    line-height: 1.55;
}

.vtcu__form {
    padding: 16px 18px 18px;
}

.vtcu__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 12px;
}

.vtcu__grid--dates {
    margin-top: 10px;
}

@media (max-width: 576px) {
    .vtcu__grid {
        grid-template-columns: 1fr;
    }
}

.vtcu__field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.vtcu__field label {
    font-size: 12px;
    font-weight: 900;
    color: var(--muted);
    letter-spacing: .2px;
}

.vtcu__field input,
.vtcu__field select,
.vtcu__field textarea {
    width: 100%;
    padding: 13px 14px;
    border-radius: 999px;
    border: 1px solid rgba(122, 46, 14, .20);
    background: rgba(255, 248, 238, .60);
    outline: none;
    font-size: 14px;
    transition: box-shadow .15s ease, border-color .15s ease, background .15s ease;
}

.vtcu__field textarea {
    border-radius: 18px;
    resize: vertical;
    min-height: 110px;
}

.vtcu__field input:focus,
.vtcu__field select:focus,
.vtcu__field textarea:focus {
    border-color: rgba(122, 46, 14, .45);
    box-shadow: 0 0 0 4px rgba(122, 46, 14, .12);
    background: #fff;
}

.vtcu__btn {
    margin-top: 12px;
    width: 100%;
    border: 0;
    padding: 13px 14px;
    border-radius: 18px;
    font-weight: 900;
    font-size: 15px;
    cursor: pointer;
    background: linear-gradient(135deg, var(--brand-2), #a16d0e);
    color: #1c1406;
    box-shadow: 0 16px 34px rgba(194, 142, 31, .22);
    transition: transform .15s ease, box-shadow .15s ease;
}

.vtcu__btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 20px 40px rgba(194, 142, 31, .28);
}

.vtcu__fine {
    margin: 10px 0 0;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.55;
    text-align: center;
}

/* online payment */

/* ===== ONLINE PAYMENT ===== */
.vtpay {
    padding: 46px 0;
    background:
        radial-gradient(900px 420px at 12% 10%, rgba(194, 142, 31, .16), transparent 60%),
        radial-gradient(900px 420px at 88% 30%, rgba(122, 46, 14, .10), transparent 62%),
        var(--bg);
}

.vtpay__wrap {}

.vtpay__head {
    padding: 18px 18px 16px;
    border-radius: calc(var(--radius) + 6px);
    background: var(--card);
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    margin-bottom: 16px;
}

.vtpay__tag {
    display: inline-flex;
    align-items: center;
    padding: 8px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: var(--brand);
    background: rgba(194, 142, 31, .14);
    border: 1px solid rgba(194, 142, 31, .22);
}

.vtpay__title {
    margin: 12px 0 8px;
    font-size: 40px;
    line-height: 1.1;
    color: var(--ink);
    letter-spacing: .2px;
}

.vtpay__title span {
    color: var(--brand);
    position: relative;
}

.vtpay__title span:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 100%;
    height: 12px;
    background: rgba(194, 142, 31, .28);
    border-radius: 999px;
    z-index: -1;
}

.vtpay__sub {
    margin: 0;
    color: var(--muted);
    font-size: 15px;
    line-height: 1.75;
    max-width: 980px;
}

/* grid */
.vtpay__grid {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 16px;
    align-items: start;
    /* important: natural height */
}

@media (max-width: 992px) {
    .vtpay__grid {
        grid-template-columns: 1fr;
    }
}

.vtpay__card {
    border-radius: calc(var(--radius) + 6px);
    background: var(--card);
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    overflow: hidden;
}

.vtpay__cardHead {
    padding: 16px 18px 14px;
    background:
        linear-gradient(180deg, rgba(122, 46, 14, .06), rgba(255, 255, 255, 0));
    border-bottom: 1px solid var(--line);
}

.vtpay__cardHead h3 {
    margin: 0;
    font-size: 18px;
    letter-spacing: .2px;
    color: var(--ink);
}

.vtpay__cardHead p {
    margin: 8px 0 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.55;
}

/* table (div-based) */
.vtpay__table {
    padding: 6px 18px 12px;
}

.vtpay__tr {
    display: grid;
    grid-template-columns: 180px 1fr;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px dashed rgba(0, 0, 0, .10);
}

.vtpay__tr:last-child {
    border-bottom: 0;
}

@media (max-width: 576px) {
    .vtpay__tr {
        grid-template-columns: 1fr;
    }
}

.vtpay__th {
    font-weight: 900;
    color: var(--ink);
    font-size: 13px;
    letter-spacing: .2px;
}

.vtpay__td {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.6;
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}

.vtpay__mono {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-weight: 800;
    color: var(--ink);
    background: rgba(255, 248, 238, .70);
    border: 1px solid rgba(122, 46, 14, .18);
    border-radius: 12px;
    padding: 6px 10px;
}

.vtpay__link {
    color: var(--brand);
    font-weight: 900;
    text-decoration: none;
    border-bottom: 1px dashed rgba(122, 46, 14, .40);
}

.vtpay__link:hover {
    border-bottom-color: rgba(122, 46, 14, .85);
}

.vtpay__copy {
    border: 1px solid rgba(0, 0, 0, .10);
    background: #fff;
    color: var(--brand);
    font-weight: 900;
    font-size: 12px;
    padding: 8px 10px;
    border-radius: 12px;
    cursor: pointer;
    transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.vtpay__copy:hover {
    transform: translateY(-1px);
    border-color: rgba(122, 46, 14, .22);
    box-shadow: 0 12px 24px rgba(0, 0, 0, .08);
}

.vtpay__copy.is-copied {
    color: #1c1406;
    border-color: rgba(194, 142, 31, .30);
    background: rgba(194, 142, 31, .14);
}

.vtpay__note {
    margin: 0 18px 14px;
    padding: 12px 12px;
    border-radius: 18px;
    border: 1px solid rgba(194, 142, 31, .22);
    background:
        linear-gradient(135deg, rgba(194, 142, 31, .14), rgba(255, 255, 255, 0));
    color: var(--muted);
    font-size: 13px;
    line-height: 1.6;
}

.vtpay__note b {
    color: var(--ink);
}

.vtpay__actions {
    padding: 0 18px 18px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.vtpay__btn {
    flex: 1;
    min-width: 220px;
    text-align: center;
    text-decoration: none;
    font-weight: 900;
    font-size: 14px;
    padding: 12px 14px;
    border-radius: 16px;
    border: 1px solid transparent;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
}

.vtpay__btn:active {
    transform: translateY(1px);
}

.vtpay__btn--brand {
    color: #fff;
    background: linear-gradient(135deg, var(--brand), #5b220a);
    box-shadow: 0 14px 28px rgba(122, 46, 14, .22);
    border-color: rgba(255, 255, 255, .14);
}

.vtpay__btn--brand:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(122, 46, 14, .28);
}

.vtpay__btn--ghost {
    color: var(--brand);
    background: rgba(194, 142, 31, .10);
    border-color: rgba(194, 142, 31, .22);
}

.vtpay__btn--ghost:hover {
    transform: translateY(-1px);
    border-color: rgba(122, 46, 14, .20);
    background: rgba(194, 142, 31, .14);
}

/* Right side */
.vtpay__side {
    display: grid;
    gap: 16px;
}

.vtpay__paypalBox {
    padding: 16px 18px 18px;
}

.vtpay__paypalTop {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 12px;
}

.vtpay__pill {
    display: inline-flex;
    align-items: center;
    padding: 8px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    color: var(--ink);
    border: 1px solid rgba(0, 0, 0, .10);
    background:
        linear-gradient(180deg, rgba(194, 142, 31, .12), rgba(255, 255, 255, 0));
}

.vtpay__ppBtn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    text-decoration: none;
    padding: 14px 16px;
    border-radius: 18px;
    border: 1px solid rgba(122, 46, 14, .16);
    background:
        radial-gradient(520px 220px at 18% 20%, rgba(194, 142, 31, .20), transparent 62%),
        linear-gradient(135deg, rgba(122, 46, 14, .96), rgba(91, 34, 10, .96));
    color: #fff;
    box-shadow: 0 16px 34px rgba(122, 46, 14, .18);
    transition: transform .15s ease, box-shadow .15s ease;
}

.vtpay__ppBtn:hover {
    transform: translateY(-1px);
    box-shadow: 0 20px 40px rgba(122, 46, 14, .24);
}

.vtpay__ppBtn span {
    font-weight: 900;
    font-size: 14px;
    letter-spacing: .2px;
    opacity: .95;
}

.vtpay__ppBtn b {
    font-weight: 900;
    font-size: 16px;
    letter-spacing: .2px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    padding: 8px 10px;
    border-radius: 14px;
}

.vtpay__ppFine {
    margin: 12px 0 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.65;
}

/* Steps */
.vtpay__steps {
    margin: 0;
    padding: 14px 22px 18px;
    display: grid;
    gap: 12px;
    color: var(--muted);
}

.vtpay__steps li {
    line-height: 1.65;
    font-size: 13px;
}

.vtpay__steps b {
    display: block;
    color: var(--ink);
    font-size: 13px;
    font-weight: 900;
    margin-bottom: 4px;
}

.vtpay__steps span {
    display: block;
}

.vtpay__support {
    margin: 0 18px 18px;
    padding: 12px 12px;
    border-radius: 18px;
    border: 1px solid rgba(122, 46, 14, .14);
    background:
        linear-gradient(135deg, rgba(194, 142, 31, .14), rgba(255, 255, 255, 0));
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.vtpay__supportText b {
    display: block;
    font-size: 13px;
    font-weight: 900;
    color: var(--ink);
}

.vtpay__supportText span {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    color: var(--muted);
}

.vtpay__supportBtn {
    text-decoration: none;
    font-weight: 900;
    font-size: 13px;
    padding: 11px 12px;
    border-radius: 16px;
    background: linear-gradient(135deg, var(--brand-2), #a16d0e);
    color: #1c1406;
    border: 1px solid rgba(255, 255, 255, .14);
    box-shadow: 0 14px 28px rgba(194, 142, 31, .18);
    transition: transform .15s ease, box-shadow .15s ease;
    white-space: nowrap;
}

.vtpay__supportBtn:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(194, 142, 31, .24);
}


/* ===== PRIVACY POLICY ===== */
.vtpol {
    padding: 46px 0;
    background:
        radial-gradient(900px 420px at 12% 10%, rgba(194, 142, 31, .16), transparent 60%),
        radial-gradient(900px 420px at 88% 30%, rgba(122, 46, 14, .10), transparent 62%),
        var(--bg);
}

.vtpol__head {
    border-radius: calc(var(--radius) + 6px);
    background: var(--card);
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    padding: 18px 18px 16px;
    margin-bottom: 16px;
}

.vtpol__tag {
    display: inline-flex;
    align-items: center;
    padding: 8px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: var(--brand);
    background: rgba(194, 142, 31, .14);
    border: 1px solid rgba(194, 142, 31, .22);
}

.vtpol__title {
    margin: 12px 0 8px;
    font-size: 40px;
    line-height: 1.1;
    color: var(--ink);
    letter-spacing: .2px;
}

.vtpol__sub {
    margin: 0;
    color: var(--muted);
    font-size: 15px;
    line-height: 1.75;
    max-width: 980px;
}

.vtpol__meta {
    margin-top: 12px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    padding-top: 12px;
    border-top: 1px dashed rgba(0, 0, 0, .10);
    color: var(--ink);
    font-size: 13px;
}

.vtpol__muted {
    color: var(--muted);
}

.vtpol__link {
    color: var(--brand);
    font-weight: 900;
    text-decoration: none;
    border-bottom: 1px dashed rgba(122, 46, 14, .40);
}

.vtpol__link:hover {
    border-bottom-color: rgba(122, 46, 14, .85);
}

.vtpol__card {
    border-radius: calc(var(--radius) + 6px);
    background: var(--card);
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    padding: 8px 18px 18px;
}

.vtpol__block {
    padding: 14px 0;
    border-bottom: 1px dashed rgba(0, 0, 0, .10);
}

.vtpol__block:last-of-type {
    border-bottom: 0;
    padding-bottom: 10px;
}

.vtpol__block h2 {
    margin: 0 0 10px;
    font-size: 18px;
    color: var(--ink);
    letter-spacing: .2px;
}

.vtpol__p {
    margin: 0;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.8;
}

.vtpol__list {
    margin: 0;
    padding-left: 18px;
    display: grid;
    gap: 10px;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.8;
}

.vtpol__list b {
    color: var(--ink);
}

/* CTA */
.vtpol__cta {
    margin-top: 16px;
    padding: 14px 14px;
    border-radius: 18px;
    border: 1px solid rgba(194, 142, 31, .22);
    background:
        linear-gradient(135deg, rgba(194, 142, 31, .14), rgba(255, 255, 255, 0));
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.vtpol__ctaText b {
    display: block;
    color: var(--ink);
    font-size: 14px;
    font-weight: 900;
}

.vtpol__ctaText span {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.6;
}

.vtpol__ctaBtns {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.vtpol__btn {
    text-decoration: none;
    font-weight: 900;
    font-size: 14px;
    padding: 12px 14px;
    border-radius: 16px;
    border: 1px solid transparent;
    transition: transform .15s ease, box-shadow .15s ease;
    white-space: nowrap;
}

.vtpol__btn:active {
    transform: translateY(1px);
}

.vtpol__btn--brand {
    color: #fff;
    background: linear-gradient(135deg, var(--brand), #5b220a);
    box-shadow: 0 14px 28px rgba(122, 46, 14, .22);
    border-color: rgba(255, 255, 255, .14);
}

.vtpol__btn--brand:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(122, 46, 14, .28);
}

.vtpol__btn--gold {
    color: #1c1406;
    background: linear-gradient(135deg, var(--brand-2), #a16d0e);
    box-shadow: 0 14px 28px rgba(194, 142, 31, .20);
    border-color: rgba(255, 255, 255, .14);
}

.vtpol__btn--gold:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(194, 142, 31, .26);
}

/* ===== CLEAN GALLERY ===== */
.vtgal2 {
    padding: 50px 0;
    background: var(--bg);
}

.vtgal2__head {
    margin-bottom: 24px;
}

.vtgal2__tag {
    display: inline-block;
    padding: 8px 14px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    color: var(--brand);
    background: rgba(194, 142, 31, .15);
    border: 1px solid rgba(194, 142, 31, .25);
}

.vtgal2__title {
    margin: 14px 0 6px;
    font-size: 40px;
    color: var(--ink);
}

.vtgal2__title span {
    color: var(--brand);
}

.vtgal2__sub {
    color: var(--muted);
    font-size: 15px;
    max-width: 720px;
}

/* GRID */
.vtgal2__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

@media (max-width: 1100px) {
    .vtgal2__grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .vtgal2__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .vtgal2__grid {
        grid-template-columns: 1fr;
    }
}

/* IMAGE CARD */
.vtgal2__item {
    display: block;
    border-radius: var(--radius);
    overflow: hidden;
    background: var(--card);
    box-shadow: var(--shadow);
    transition: transform .25s ease, box-shadow .25s ease;
}

.vtgal2__item img {
    width: 100%;
    height: 240px;
    object-fit: cover;
    display: block;
}

.vtgal2__item:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 36px rgba(0, 0, 0, .14);
}



/* ===== CAR RENTAL CHARGES ===== */
.vtfare {
    padding: 46px 0;
    background:
        radial-gradient(900px 420px at 12% 10%, rgba(194, 142, 31, .16), transparent 60%),
        radial-gradient(900px 420px at 88% 30%, rgba(122, 46, 14, .10), transparent 62%),
        var(--bg);
}

.vtfare__head {
    border-radius: calc(var(--radius) + 6px);
    background: var(--card);
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    padding: 18px 18px 16px;
    margin-bottom: 16px;
}

.vtfare__tag {
    display: inline-flex;
    align-items: center;
    padding: 8px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: var(--brand);
    background: rgba(194, 142, 31, .14);
    border: 1px solid rgba(194, 142, 31, .22);
}

.vtfare__title {
    margin: 12px 0 8px;
    font-size: 36px;
    line-height: 1.1;
    color: var(--ink);
    letter-spacing: .2px;
}

.vtfare__title span {
    color: var(--brand);
    position: relative;
}

.vtfare__title span:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 100%;
    height: 12px;
    background: rgba(194, 142, 31, .28);
    border-radius: 999px;
    z-index: -1;
}

.vtfare__sub {
    margin: 0;
    color: var(--muted);
    font-size: 15px;
    line-height: 1.75;
    max-width: 980px;
}

.vtfare__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    align-items: start;
}

@media (max-width: 992px) {
    .vtfare__grid {
        grid-template-columns: 1fr;
    }
}

.vtfare__card {
    border-radius: calc(var(--radius) + 6px);
    background: var(--card);
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    overflow: hidden;
}

.vtfare__cap {
    padding: 14px 16px;
    background:
        linear-gradient(135deg, rgba(122, 46, 14, .96), rgba(91, 34, 10, .96));
    color: #fff;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.vtfare__cap b {
    display: block;
    font-size: 16px;
    font-weight: 900;
    letter-spacing: .2px;
}

.vtfare__cap span {
    display: block;
    margin-top: 6px;
    font-size: 12px;
    opacity: .92;
    font-weight: 800;
}

.vtfare__tableWrap {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

.vtfare__table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    min-width: 620px;
}

.vtfare__table thead th {
    top: 0;
    z-index: 1;
    text-align: left;
    padding: 12px 12px;
    font-size: 12px;
    letter-spacing: .3px;
    text-transform: uppercase;
    font-weight: 900;
    color: #fff;
    background: linear-gradient(135deg, var(--brand), #5b220a);
    border-bottom: 1px solid rgba(255, 255, 255, .10);
}

.vtfare__table tbody td {
    padding: 12px 12px;
    font-size: 15px;
    color: var(--muted);
    border-bottom: 1px solid rgba(0, 0, 0, .06);
    background: #fff;
    vertical-align: top;
}

.vtfare__table tbody tr:nth-child(even) td {
    background: rgba(255, 248, 238, .55);
}

.vtfare__table tbody td:first-child {
    font-weight: 900;
    color: var(--ink);
}

.vtfare__rate {
    text-align: right;
    white-space: nowrap;
    font-weight: 900;
    color: var(--ink);
}

.vtfare__note {
    margin-top: 14px;
    padding: 12px 14px;
    border-radius: 18px;
    border: 1px solid rgba(194, 142, 31, .22);
    background:
        linear-gradient(135deg, rgba(194, 142, 31, .14), rgba(255, 255, 255, 0));
    color: var(--muted);
    font-size: 13px;
    line-height: 1.65;
}

.vtfare__note b {
    color: var(--ink);
}

/* ===== VISIBILITY FIX (override) ===== */
.vtfare__card {
    border: 1px solid rgba(122, 46, 14, .18) !important;
    background: #fff !important;
}

.vtfare__cap {
    background: linear-gradient(135deg, #7A2E0E, #5b220a) !important;
    color: #fff !important;
}

.vtfare__table {
    background: #fff !important;
}

.vtfare__table thead th {
    background: linear-gradient(135deg, rgba(122, 46, 14, .92), rgba(91, 34, 10, .92)) !important;
    color: #fff !important;
    border-right: 1px solid rgba(255, 255, 255, .16) !important;
    border-bottom: 1px solid rgba(255, 255, 255, .18) !important;
}

.vtfare__table thead th:last-child {
    border-right: 0 !important;
}

/* stronger row separation */
.vtfare__table tbody td {
    border-bottom: 1px solid rgba(0, 0, 0, .10) !important;
    color: #2d2d2d !important;
    /* stronger than muted */
    font-weight: 600;
}

/* make vehicle column bold + darker */
.vtfare__table tbody td:first-child {
    color: #141414 !important;
    font-weight: 900 !important;
}

/* better zebra */
.vtfare__table tbody tr:nth-child(even) td {
    background: rgba(255, 248, 238, .85) !important;
}

/* rate highlight */
.vtfare__rate {
    color: #141414 !important;
    font-weight: 900 !important;
}

/* improve scroll on small screens */
.vtfare__tableWrap {
    border-top: 1px solid rgba(0, 0, 0, .08);
    border-bottom: 1px solid rgba(0, 0, 0, .08);
}

/* OPTIONAL: sticky first column for readability */
@media (max-width: 768px) {
    .vtfare__table {
        min-width: 720px !important;
    }

    .vtfare__table thead th:first-child,
    .vtfare__table tbody td:first-child {
        left: 0;
        z-index: 2;
        background: #fff;
        box-shadow: 10px 0 18px rgba(0, 0, 0, .06);
    }

    .vtfare__table thead th:first-child {
        background: linear-gradient(135deg, rgba(122, 46, 14, .92), rgba(91, 34, 10, .92)) !important;
        z-index: 3;
    }
}

/* ===== TOUR PACKAGE TABLE ===== */
.vtpt {
    padding: 50px 0;
    background: var(--bg);
}

.vtpt__card {
    background: var(--card);
    border-radius: 22px;
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    overflow: visible;
}

/* Horizontal scroll */
.vtpt__tableWrap {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Table */
.vtpt__table {
    width: 100%;
    min-width: 980px;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
}

/* Header */
.vtpt__table thead th {
    background: linear-gradient(135deg, var(--brand), #5b220a);
    color: #fff;
    padding: 16px;
    font-size: 14px;
    text-align: left;
    font-weight: 900;
    text-transform: uppercase;
}

/* Body */
.vtpt__table tbody td {
    padding: 16px;
    font-size: 15px;
    color: #2d2d2d;
    border-bottom: 1px solid rgba(0, 0, 0, .08);
    background: #fff;
}

.vtpt__table tbody tr:nth-child(even) td {
    background: rgba(255, 248, 238, .9);
}

/* Column styles */
.vtpt__table tbody td:first-child {
    font-weight: 900;
    color: var(--ink);
}

.vtpt__table tbody td:nth-child(3) {
    font-weight: 900;
    white-space: nowrap;
}

/* Booking button */
.vtpt__table tbody td:last-child {
    text-align: center;
}

.vtpt__btn {
    display: inline-block;
    padding: 10px 16px;
    background: linear-gradient(135deg, var(--brand), #5b220a);
    color: #fff;
    border-radius: 14px;
    font-size: 14px;
    font-weight: 900;
    text-decoration: none;
    box-shadow: 0 12px 26px rgba(122, 46, 14, .22);
    transition: transform .15s ease;
}

.vtpt__btn:hover {
    transform: translateY(-2px);
}

/* Mobile swipe comfort */
@media (max-width: 768px) {
    .vtpt__tableWrap {
        padding-bottom: 10px;
    }
}


/* ===== PREMIUM POPUP (ONLY .vtpop* — will NOT touch your buttons) ===== */
.vtpop {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: none;
}
.vtpop.is-open { display: block; }

.vtpop__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(20, 20, 20, .62);
  backdrop-filter: blur(7px);
}

.vtpop__dialog {
  position: relative;
  width: min(920px, calc(100% - 18px));
  margin: 18px auto;
  max-height: 92vh;
  overflow: auto;
  border-radius: 24px;
  background:
    radial-gradient(900px 420px at 12% 10%, rgba(194, 142, 31, .16), transparent 60%),
    radial-gradient(900px 420px at 88% 30%, rgba(122, 46, 14, .12), transparent 62%),
    #fff;
  border: 1px solid rgba(0, 0, 0, .10);
  box-shadow: 0 30px 70px rgba(0, 0, 0, .40);
  animation: vtpopIn .18s ease-out;
  -webkit-overflow-scrolling: touch;
}

@keyframes vtpopIn {
  from { transform: translateY(10px) scale(.99); opacity: .65; }
  to { transform: translateY(0) scale(1); opacity: 1; }
}

.vtpop__close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 44px;
  height: 44px;
  border-radius: 16px;
  border: 1px solid rgba(0, 0, 0, .10);
  background: rgba(255, 255, 255, .88);
  cursor: pointer;
  font-size: 26px;
  font-weight: 900;
  color: var(--ink);
  display: flex;
  align-items: center;
  justify-content: center;
}

.vtpop__bar {
  display: grid;
  grid-template-columns: 1.35fr .65fr;
  gap: 12px;
  padding: 18px 18px 12px;
  border-bottom: 1px solid rgba(0, 0, 0, .08);
  background: rgba(255, 255, 255, .60);
}

.vtpop__tag {
  display: inline-flex;
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .4px;
  text-transform: uppercase;
  color: var(--brand);
  background: rgba(194, 142, 31, .14);
  border: 1px solid rgba(194, 142, 31, .22);
}

.vtpop__title {
  margin: 10px 0 6px;
  font-size: 30px;
  line-height: 1.15;
  color: var(--ink);
  letter-spacing: .2px;
}
.vtpop__title span { color: var(--brand); }

.vtpop__sub {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.7;
  max-width: 520px;
}

.vtpop__chips {
  margin-top: 10px;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.vtpop__chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  color: #2d2d2d;
  background: rgba(255, 248, 238, .85);
  border: 1px solid rgba(0, 0, 0, .08);
}

.vtpop__miniCard {
  border-radius: 18px;
  border: 1px solid rgba(122, 46, 14, .14);
  background: linear-gradient(135deg, rgba(122, 46, 14, .06), rgba(194, 142, 31, .10));
  padding: 12px;
}

.vtpop__miniTop {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  color: var(--ink);
}

.vtpop__miniTop i {
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: rgba(122, 46, 14, .10);
  color: var(--brand);
  border: 1px solid rgba(122, 46, 14, .14);
}

.vtpop__miniTop small {
  display: block;
  font-weight: 900;
  color: var(--muted);
}
.vtpop__miniTop b { display: block; font-size: 15px; font-weight: 900; }

.vtpop__miniBtn {
  margin-top: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-decoration: none;
  padding: 10px 12px;
  border-radius: 14px;
  font-weight: 900;
  color: #1c1406;
  background: linear-gradient(135deg, var(--brand-2), #a16d0e);
  border: 1px solid rgba(255, 255, 255, .14);
}

.vtpop__form { padding: 16px 18px 18px; }

.vtpop__grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 12px;
}

.vtpop__field { display: flex; flex-direction: column; gap: 7px; }
.vtpop__field--full { grid-column: 1 / -1; }

.vtpop__lbl {
  font-size: 12px;
  font-weight: 900;
  color: var(--ink);
  letter-spacing: .2px;
}

.vtpop__inp {
  width: 100%;
  height: 48px;
  border-radius: 16px;
  border: 1px solid rgba(0, 0, 0, .10);
  background: rgba(255, 255, 255, .95);
  padding: 10px 12px;
  font-size: 14px;
  outline: none;
  transition: box-shadow .15s ease, border-color .15s ease;
}

.vtpop__inp:focus {
  border-color: rgba(122, 46, 14, .34);
  box-shadow: 0 0 0 4px rgba(194, 142, 31, .16);
}

.vtpop__txt {
  height: auto;
  min-height: 120px;
  padding: 12px;
  resize: vertical;
}

.vtpop__actions {
  margin-top: 14px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.vtpop__submit,
.vtpop__ghost,
.vtpop__gold {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 14px;
  border-radius: 16px;
  font-size: 14px;
  font-weight: 900;
  text-decoration: none;
  border: 0;
  cursor: pointer;
}

.vtpop__submit {
  color: #fff;
  background: linear-gradient(135deg, var(--brand), #5b220a);
  box-shadow: 0 14px 28px rgba(122, 46, 14, .20);
}

.vtpop__ghost {
  color: var(--brand);
  background: rgba(255, 248, 238, .85);
  border: 1px solid rgba(122, 46, 14, .18);
}

.vtpop__gold {
  color: #1c1406;
  background: linear-gradient(135deg, var(--brand-2), #a16d0e);
  box-shadow: 0 14px 28px rgba(194, 142, 31, .18);
}

.vtpop__fine {
  margin: 10px 0 0;
  font-size: 12px;
  color: var(--muted);
  line-height: 1.65;
}

/* ===== Number CAPTCHA ===== */
.vtpop__captcha{
  margin-top: 14px;
  padding: 14px;
  border-radius: 18px;
  background: rgba(255,248,238,.85);
  border: 1px dashed rgba(122,46,14,.35);
}

.vtpop__captcha strong{
  color: var(--brand);
  font-size: 15px;
}

.vtpop__capMsg{
  display:none;
  margin-top:8px;
  font-size:12px;
  font-weight:800;
  color:#b42318;
}

/* ✅ Force visibility even if any other CSS overrides */
#vtCapMsg.vtpop__capMsg.is-show{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}

.vtpop__inp.is-bad{
  border-color:#b42318;
  box-shadow:0 0 0 3px rgba(180,35,24,.18);
}

/* Mobile layout */
@media (max-width: 920px) {
  .vtpop__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .vtpop__bar { grid-template-columns: 1fr; }
  .vtpop__grid { grid-template-columns: 1fr; }
  .vtpop__title { font-size: 26px; }
}
@media(max-width:480px){
  .vtpop__captcha{ padding: 12px; }
}


/* call button */

.vt-callfab {
    position: fixed;
    left: 18px;
    bottom: 18px;
    z-index: 9999;

    width: 58px;
    height: 58px;
    border-radius: 999px;

    display: grid;
    place-items: center;

    text-decoration: none;
    color: #ffffff;

    background: radial-gradient(circle at 30% 25%, #8a3a16, #5f2309);
    border: 2px solid rgba(194, 142, 31, 0.75);
    box-shadow:
        0 14px 28px rgba(0, 0, 0, 0.28),
        0 0 0 6px rgba(194, 142, 31, 0.10);

    transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
    -webkit-tap-highlight-color: transparent;
}

/* soft spiritual halo */
.vt-callfab__halo {
    position: absolute;
    inset: -10px;
    border-radius: 999px;
    background: radial-gradient(circle,
            rgba(194, 142, 31, 0.28),
            rgba(194, 142, 31, 0) 60%);
    filter: blur(2px);
    opacity: .9;
    animation: vtHalo 2.8s ease-in-out infinite;
    pointer-events: none;
}

/* phone icon */
.vt-callfab__icon svg {
    width: 22px;
    height: 22px;
    fill: #ffffff;
    filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.25));
}

/* label popup */
.vt-callfab__label {
    position: absolute;
    left: 0;
    bottom: 68px;

    min-width: 190px;
    padding: 10px 12px;

    border-radius: 14px;
    background: rgba(255, 247, 234, 0.96);
    border: 1px solid rgba(194, 142, 31, 0.35);
    box-shadow: 0 12px 26px rgba(0, 0, 0, 0.18);

    color: #2b1a12;
    transform: translateY(8px);
    opacity: 0;
    pointer-events: none;
    transition: opacity .22s ease, transform .22s ease;
}

.vt-callfab__label strong {
    display: block;
    font-size: 14px;
    line-height: 1.1;
    color: #7A2E0E;
}

.vt-callfab__label small {
    display: block;
    margin-top: 2px;
    font-size: 12px;
    color: rgba(43, 26, 18, 0.72);
}

/* hover / focus */
.vt-callfab:hover,
.vt-callfab:focus-visible {
    transform: translateY(-3px);
    box-shadow:
        0 18px 36px rgba(0, 0, 0, 0.32),
        0 0 0 8px rgba(194, 142, 31, 0.12);
    filter: saturate(1.06);
}

.vt-callfab:hover .vt-callfab__label,
.vt-callfab:focus-visible .vt-callfab__label {
    opacity: 1;
    transform: translateY(0);
}

/* mobile cleanup */
@media (max-width: 768px) {
    .vt-callfab {
        width: 56px;
        height: 56px;
        left: 16px;
        bottom: 16px;
    }

    .vt-callfab__label {
        display: none;
    }
}

@keyframes vtHalo {

    0%,
    100% {
        transform: scale(1);
        opacity: .75;
    }

    50% {
        transform: scale(1.06);
        opacity: 1;
    }
}

/* Pulse ring */
@keyframes vtHalo {
    0% {
        box-shadow:
            0 0 0 0 rgba(194, 142, 31, 0.6);
    }

    70% {
        box-shadow:
            0 0 0 18px rgba(194, 142, 31, 0);
    }

    100% {
        box-shadow:
            0 0 0 0 rgba(194, 142, 31, 0);
    }
}


    /* =========================
   Quick Enquiry Popup (vtQe)
   Clean + Premium (single final CSS)
   ========================= */

    .vtQe {
        position: fixed;
        left: 14px;
        bottom: 92px;
        z-index: 99999;

        width: 290px;
        max-width: calc(100vw - 28px);

        border-radius: 20px;
        background: linear-gradient(180deg, rgba(255, 247, 234, 0.92), rgba(255, 247, 234, 0.78));
        backdrop-filter: blur(18px);

        box-shadow:
            0 26px 70px rgba(0, 0, 0, 0.28),
            0 0 0 1px rgba(194, 142, 31, 0.28),
            inset 0 1px 0 rgba(255, 255, 255, 0.55);

        overflow: visible;

        opacity: 0;
        transform: translateY(12px) translateX(-10px);
        pointer-events: none;
        transition: all .22s ease;
    }

    .vtQe.is-open {
        opacity: 1;
        transform: translateY(0) translateX(0);
        pointer-events: auto;
    }

    /* Close button */
    .vtQe__x {
        position: absolute;
        right: 10px;
        top: 10px;

        width: 34px;
        border-radius: 999px;

        border: 1px solid rgba(0, 0, 0, 0.10);
        background: rgba(255, 255, 255, 0.95);

        color: #2b1a12;
        font-size: 18px;
        line-height: 34px;

        cursor: pointer;
        box-shadow: 0 12px 26px rgba(0, 0, 0, 0.20);
        transition: transform .18s ease, filter .18s ease;
    }

    .vtQe__x:hover {
        transform: translateY(-1px);
        filter: saturate(1.05);
    }

    /* Header area */
    .vtQe__head {
        position: relative;
        padding: 54px 16px 10px;
        /* top space for floating image */
    }

    /* Floating image (bigger + premium ring/glow) */
    .vtQe__pic {
        position: absolute;
        top: -40px;
        left: 16px;

        width: 84px;
        height: 84px;

        border-radius: 18px;
        overflow: hidden;

        background: #ffffff;
        box-shadow:
            0 18px 45px rgba(0, 0, 0, 0.30),
            0 0 0 3px rgba(194, 142, 31, 0.40),
            0 0 0 10px rgba(194, 142, 31, 0.12);
    }

    .vtQe__pic::after {
        content: "";
        position: absolute;
        inset: 0;
        background: radial-gradient(circle at 30% 20%, rgba(255, 255, 255, 0.35), rgba(255, 255, 255, 0) 55%);
        pointer-events: none;
    }

    .vtQe__pic img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        transform: scale(1.03);
    }

    /* Title + Subtitle wrapper (SUBTEXT Quick Enquiry ke niche) */
    .vtQe__titleWrap {
        text-align: left;
    }

    .vtQe__ttl {
        font-weight: 900;
        font-size: 15px;
        letter-spacing: .3px;
        color: #7A2E0E;
        margin: 0;
    }

    .vtQe__ttl::after {
        content: "";
        display: block;
        width: 70px;
        height: 3px;
        margin: 8px 0 0;
        /* left aligned underline */
        border-radius: 999px;
        background: linear-gradient(90deg, rgba(194, 142, 31, 0), rgba(194, 142, 31, 0.9), rgba(194, 142, 31, 0));
    }

    .vtQe__sub {
        margin-top: 6px;
        font-size: 12px;
        color: rgba(43, 26, 18, 0.65);
        letter-spacing: .2px;
    }

    /* Form */
    .vtQe__form {
        padding: 6px 16px 16px;
        display: grid;
        gap: 12px;
    }

    /* Inputs */
    .vtQe__in {
        width: 100%;
        padding: 12px 14px;
        border-radius: 16px;

        border: 1px solid rgba(43, 26, 18, 0.12);
        background: rgba(255, 255, 255, 0.72);

        outline: none;
        font-size: 13.5px;
        color: #2b1a12;

        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
    }

    .vtQe__in:focus {
        border-color: rgba(194, 142, 31, 0.70);
        box-shadow:
            0 0 0 4px rgba(194, 142, 31, 0.18),
            inset 0 1px 0 rgba(255, 255, 255, 0.60);
        background: rgba(255, 255, 255, 0.88);
    }

    /* Button (premium shine) */
    .vtQe__btn {
        width: 100%;
        padding: 13px 16px;
        border-radius: 16px;
        border: none;
        cursor: pointer;

        background: linear-gradient(135deg, #7A2E0E, #5F2309);
        color: #fff;

        font-weight: 900;
        letter-spacing: .3px;

        box-shadow: 0 18px 36px rgba(122, 46, 14, 0.26);
        position: relative;
        overflow: hidden;

        transition: transform .18s ease, filter .18s ease;
    }

    .vtQe__btn::before {
        content: "";
        position: absolute;
        top: -40%;
        left: -30%;
        width: 60%;
        height: 180%;
        transform: rotate(18deg);
        background: rgba(255, 255, 255, 0.18);
        filter: blur(2px);
    }

    .vtQe__btn:hover {
        transform: translateY(-1px);
        filter: saturate(1.06);
    }

    /* Mobile tweak */
    @media (max-width: 380px) {
        .vtQe {
            width: 280px;
        }

        .vtQe__titleWrap {
            margin-left: 94px;
        }

        .vtQe__pic {
            width: 80px;
            height: 80px;
        }
    }

    /* FIX: ensure close button is clickable */
    .vtQe__x {
        z-index: 999999;
        pointer-events: auto;
    }

    /* FIX: ensure image/pseudo layers never block the close button */
    .vtQe__pic,
    .vtQe__pic::after {
        pointer-events: none;
    }
