: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;
}

/* ===== Base ===== */
.vtp-container {
    padding: 40px 0px
}

.vtp-row {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 18px;
    align-items: start;
}

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

.vtp-card {
    background: var(--card);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    overflow: hidden;
    /* margin: 0px 10px; */
}

.vtp-section {
    padding: 18px;
}

.vtp-h2 {
    font-size: 22px;
    line-height: 1.2;
    margin: 0 0 8px;
    letter-spacing: .2px;
}

.vtp-sub {
    margin: 0;
    color: var(--muted);
    line-height: 1.65;
    font-size: 15px;
}

/* ===== Hero ===== */
.vtp-hero {
    border-radius: calc(var(--radius) + 8px);
    overflow: hidden;
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    margin-bottom: 18px;
    background: #f3ece3;
}

.vtp-hero__media {
    position: relative;
    min-height: 400px;
    background:
        linear-gradient(90deg, rgba(20, 20, 20, .55), rgba(20, 20, 20, .12)),
        url("/images/krishna-janambhoomi.webp");
    background-size: cover;
    background-position: center;
}

@media (max-width: 576px) {
    .vtp-hero__media {
        min-height: 400px;
    }
}

.vtp-hero__content {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    padding: 18px;
}

.vtp-hero__inner {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: flex-end;
    justify-content: space-between;
}

.vtp-crumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 13px;
    color: rgba(255, 255, 255, .85);
}

.vtp-crumbs a {
    color: rgba(255, 255, 255, .92);
    text-decoration: none;
    border-bottom: 1px dashed rgba(255, 255, 255, .35);
}

.vtp-crumbs a:hover {
    border-bottom-color: rgba(255, 255, 255, .85);
}

.vtp-hero__title {
    color: #fff;
    font-size: 34px;
    margin: 6px 0 6px;
    line-height: 1.12;
    letter-spacing: .2px;
}

@media (max-width:576px) {
    .vtp-hero__title {
        font-size: 28px;
    }
}

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

.vtp-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .16);
    color: #fff;
    font-size: 13px;
    backdrop-filter: blur(8px);
}

.vtp-pill strong {
    font-weight: 700;
}

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

.vtp-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 11px 14px;
    border-radius: 14px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    border: 1px solid transparent;
    cursor: pointer;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
    white-space: nowrap;
}

.vtp-btn:active {
    transform: translateY(1px);
}

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

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

.vtp-btn--ghost {
    color: #fff;
    background: rgba(255, 255, 255, .10);
    border-color: rgba(255, 255, 255, .18);
}

.vtp-btn--ghost:hover {
    transform: translateY(-1px);
    background: rgba(255, 255, 255, .14);
}

/* ===== Content nav chips ===== */
.vtp-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 14px 16px;
    background: linear-gradient(180deg, rgba(194, 142, 31, .14), rgba(255, 255, 255, 0));
    border-bottom: 1px solid var(--line);
}

.vtp-chip {
    text-decoration: none;
    color: var(--ink);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    padding: 9px 12px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: #fff;
    transition: transform .15s ease, border-color .15s ease;
}

.vtp-chip:hover {
    transform: translateY(-1px);
    border-color: rgba(122, 46, 14, .25);
}

.vtp-chip b {
    color: var(--brand);
}

/* ===== Overview layout ===== */
.vt-overview-section {
    padding: 36px 0;
    /* reduced from 60px */
    background: #FFF8EE;
}

.vt-overview-card {
    background: #ffffff;
    border-radius: 20px;
    padding: 16px 18px;
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.08);
    border-left: 6px solid #7A2E0E;
}

.vt-overview-head {
    margin-bottom: 18px;
}

.vt-overview-tag {
    display: inline-block;
    background: rgba(194, 142, 31, 0.15);
    color: #7A2E0E;
    font-weight: 700;
    padding: 6px 14px;
    border-radius: 50px;
    font-size: 14px;
    margin-bottom: 10px;
}

.vt-overview-head h2 {
    font-size: 30px;
    font-weight: 700;
    color: #7A2E0E;
    line-height: 1.3;
}

.vt-overview-text {
    font-size: 16.5px;
    line-height: 1.75;
    color: #333;
    margin-bottom: 14px;
}

.vt-overview-text strong {
    color: #7A2E0E;
}


/* Responsive */
@media (max-width: 768px) {
    .vt-overview-card {
        padding: 26px 22px;
    }

    .vt-overview-head h2 {
        font-size: 24px;
    }
}


/* ===== Highlights ===== */
.vth3 {
    padding-bottom: 36px;
    /* keep compact */
    background: #FFF8EE;
}

.vth3__box {
    background: #ffffff;
    border-radius: 16px;
    padding: 16px 18px;
    /* compact padding */
    border: 1px solid rgba(0, 0, 0, .07);
    border-left: 5px solid #7A2E0E;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .08);
    position: relative;
    overflow: hidden;
}

/* header */
.vth3__head {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 10px;
    padding-bottom: 10px;
    margin-bottom: 12px;
    border-bottom: 1px dashed rgba(122, 46, 14, .18);
}

.vth3__tag {
    padding: 5px 12px;
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 800;
    color: #7A2E0E;
    background: rgba(194, 142, 31, .16);
    border: 1px solid rgba(194, 142, 31, .20);
}

.vth3__title {
    margin: 0;
    font-size: 18.5px;
    font-weight: 900;
    color: #7A2E0E;
    letter-spacing: .2px;
}

/* grid */
.vth3__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 16px;
    /* compact but neat */
}

/* each highlight row (looks premium + tidy) */
.vth3__item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 10px;
    border-radius: 14px;
    background: rgba(255, 248, 238, .60);
    border: 1px solid rgba(0, 0, 0, .06);
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.055);
}

.vth3__item:hover {
    transform: translateY(-2px);
    background: rgba(255, 248, 238, .82);
    box-shadow: 0 14px 28px rgba(0, 0, 0, .10);
}

/* icon becomes a premium badge (big upgrade) */
.vth3__icon {
    width: 30px;
    height: 30px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid rgba(194, 142, 31, .30);
    box-shadow: 0 10px 18px rgba(0, 0, 0, .06);
    flex-shrink: 0;
    margin-top: 1px;
}

.vth3__icon i {
    font-size: 15px;
    color: #C28E1F;
}

/* text */
.vth3__text {
    font-size: 14.4px;
    line-height: 1.55;
    color: #2f2f2f;
}

/* mobile */
@media (max-width: 768px) {
    .vth3__grid {
        grid-template-columns: 1fr;
    }

    .vth3__box {
        padding: 14px 14px;
    }

    .vth3__title {
        font-size: 18px;
    }
}

/* ===== Inclusions / Exclusions ===== */
.vx2 {
    padding-bottom: 36px;
    background: #FFF8EE;
}

.vx2__wrap {
    background: #ffffff;
    border-radius: 16px;
    padding: 16px 18px;
    /* compact padding */
    border: 1px solid rgba(0, 0, 0, .07);
    border-left: 5px solid #7A2E0E;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .08);
    position: relative;
    overflow: hidden;
}

.vx2__head {
    position: relative;
    z-index: 1;
    padding: 6px 6px 12px;
    border-bottom: 1px dashed rgba(122, 46, 14, .18);
    margin-bottom: 14px;
}

.vx2__tag {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 999px;
    font-weight: 800;
    font-size: 12.5px;
    color: #7A2E0E;
    background: rgba(194, 142, 31, .16);
    border: 1px solid rgba(194, 142, 31, .20);
}

.vx2__title {
    margin: 10px 0 4px;
    font-size: 22px;
    font-weight: 900;
    color: #7A2E0E;
}

.vx2__sub {
    margin: 0;
    color: #444;
    font-size: 14.8px;
    line-height: 1.55;
}

/* grid */
.vx2__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    border: 1px solid rgba(0, 0, 0, .06);
    border-radius: 16px;
    overflow: hidden;
    background: rgba(255, 255, 255, .92);
}

/* columns */
.vx2__col {
    padding: 14px 16px 12px;
}

.vx2__col--in {
    background: linear-gradient(180deg, rgba(255, 248, 238, .75), rgba(255, 255, 255, .92));
}

.vx2__col--ex {
    background: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(255, 248, 238, .55));
    border-left: 1px solid rgba(0, 0, 0, .06);
}

.vx2__colHead {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid rgba(0, 0, 0, .06);
}

.vx2__hchip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .90);
    border: 1px solid rgba(194, 142, 31, .25);
    box-shadow: 0 12px 22px rgba(0, 0, 0, .06);
    font-weight: 900;
    color: #1f1f1f;
    font-size: 13.5px;
}

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

.vx2__hchip--ex {
    border-color: rgba(122, 46, 14, .22);
}

.vx2__hchip--ex i {
    color: #7A2E0E;
}

.vx2__hint {
    font-size: 13.2px;
    font-weight: 700;
    color: #555;
    white-space: nowrap;
}

/* lists - no inner cards */
.vx2__list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
}

.vx2__list li {
    position: relative;
    padding: 10px 10px 10px 34px;
    font-size: 14.6px;
    line-height: 1.55;
    color: #2f2f2f;
    border-bottom: 1px solid rgba(0, 0, 0, .06);
}

.vx2__list li:last-child {
    border-bottom: 0;
}

/* premium bullet */
.vx2__list li::before {
    content: "";
    position: absolute;
    left: 10px;
    top: 16px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #C28E1F;
    box-shadow: 0 0 0 6px rgba(194, 142, 31, .12);
}

/* exclusions bullet */
.vx2__list--ex li::before {
    background: #7A2E0E;
    box-shadow: 0 0 0 6px rgba(122, 46, 14, .12);
}

/* note */
.vx2__note {
    position: relative;
    z-index: 1;
    margin-top: 14px;
    padding: 10px 12px;
    border-radius: 14px;
    background: rgba(255, 248, 238, .78);
    border: 1px solid rgba(0, 0, 0, .06);
    color: #3a3a3a;
    font-size: 13.8px;
    display: flex;
    gap: 10px;
    align-items: flex-start;
}

.vx2__note i {
    color: #7A2E0E;
    margin-top: 2px;
}

/* responsive */
@media (max-width: 768px) {
    .vx2__grid {
        grid-template-columns: 1fr;
    }

    .vx2__col--ex {
        border-left: 0;
        border-top: 1px solid rgba(0, 0, 0, .06);
    }

    .vx2__hint {
        white-space: normal;
    }
}

/* ===== Itinerary ===== */
.vtitx {
    padding-bottom: 36px;
    background: #FFF8EE;
}

.vtitx__wrap {
    background: #ffffff;
    border-radius: 16px;
    padding: 16px 18px;
    /* compact padding */
    border: 1px solid rgba(0, 0, 0, .07);
    border-left: 5px solid #7A2E0E;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .08);
    position: relative;
    overflow: hidden;
}

.vtitx__head {
    position: relative;
    z-index: 1;
    padding: 6px 6px 12px;
    border-bottom: 1px dashed rgba(122, 46, 14, .18);
    margin-bottom: 14px;
}

.vtitx__tag {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 999px;
    font-weight: 800;
    font-size: 12.5px;
    color: #7A2E0E;
    background: rgba(194, 142, 31, .16);
    border: 1px solid rgba(194, 142, 31, .20);
}

.vtitx__title {
    margin: 10px 0 4px;
    font-size: 22px;
    font-weight: 900;
    color: #7A2E0E;
}

.vtitx__sub {
    margin: 0;
    color: #444;
    font-size: 14.8px;
    line-height: 1.55;
}

.vtitx__list {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 14px;
}

/* Card base */
.vtitx__card {
    position: relative;
    border-radius: 18px;
    border: 1px solid rgba(0, 0, 0, .08);
    background: #fff;
    box-shadow: 0 14px 32px rgba(0, 0, 0, .07);
    padding: 14px 14px 12px;
    overflow: hidden;
}

/* Brand accent strip (instant premium) */
.vtitx__card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 6px;
    background: linear-gradient(180deg, #7A2E0E, #C28E1F);
}

/* Background image as watermark (NOT overpowering) */
.vtitx__card::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--img);
    background-size: cover;
    background-position: center;
    opacity: .14;
    /* watermark */
    filter: saturate(1.05) contrast(1.05);
    transform: scale(1.05);
    pointer-events: none;
}

/* Inner soft overlay to keep clean white feel */
.vtitx__card>* {
    position: relative;
    z-index: 1;
}

.vtitx__top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    margin-left: 6px;
    /* to balance strip */
}

.vtitx__day {
    display: inline-block;
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 950;
    font-size: 12px;
    color: #fff;
    background: linear-gradient(90deg, #7A2E0E, #C28E1F);
}

.vtitx__h {
    margin: 8px 0 0;
    font-size: 16.8px;
    font-weight: 950;
    color: #1f1f1f;
    letter-spacing: .2px;
}

.vtitx__routePills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.vtitx__pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .90);
    border: 1px solid rgba(0, 0, 0, .10);
    box-shadow: 0 10px 18px rgba(0, 0, 0, .06);
    font-size: 12.8px;
    font-weight: 850;
    color: #2a2a2a;
}

.vtitx__pill i {
    color: #C28E1F;
}

.vtitx__p {
    margin: 10px 0 0;
    margin-left: 6px;
    color: #333;
    font-size: 14.6px;
    line-height: 1.6;
    max-width: 92ch;
}

/* Flow blocks (unique but compact) */
.vtitx__flow {
    margin-top: 12px;
    margin-left: 6px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.vtitx__slot {
    background: rgba(255, 248, 238, .72);
    border: 1px solid rgba(122, 46, 14, .12);
    border-radius: 14px;
    padding: 10px 10px;
    box-shadow: 0 10px 18px rgba(0, 0, 0, .05);
}

.vtitx__slot span {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 950;
    color: #7A2E0E;
    background: rgba(194, 142, 31, .16);
    border: 1px solid rgba(194, 142, 31, .20);
    margin-bottom: 6px;
}

.vtitx__slot p {
    margin: 0;
    color: #2f2f2f;
    font-size: 13.8px;
    line-height: 1.5;
}

/* hover */
.vtitx__card:hover {
    box-shadow: 0 18px 40px rgba(0, 0, 0, .11);
    transform: translateY(-2px);
    transition: .18s ease;
}

/* Responsive */
@media (max-width: 992px) {
    .vtitx__top {
        flex-direction: column;
    }

    .vtitx__routePills {
        justify-content: flex-start;
    }
}

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

/* ===== FAQ ===== */
.vtfaq {
    padding-bottom: 36px;
    background: #FFF8EE;
}

.vtfaq__wrap {
    background: #ffffff;
    border-radius: 16px;
    padding: 16px 18px;
    /* compact padding */
    border: 1px solid rgba(0, 0, 0, .07);
    border-left: 5px solid #7A2E0E;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .08);
    position: relative;
    overflow: hidden;
}

.vtfaq__head {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    gap: 14px;
    align-items: flex-end;
    padding: 6px 6px 12px;
    border-bottom: 1px dashed rgba(122, 46, 14, .18);
    margin-bottom: 14px;
}

.vtfaq__tag {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 999px;
    font-weight: 800;
    font-size: 12.5px;
    color: #7A2E0E;
    background: rgba(194, 142, 31, .16);
    border: 1px solid rgba(194, 142, 31, .20);
}

.vtfaq__title {
    margin: 10px 0 4px;
    font-size: 22px;
    font-weight: 900;
    color: #7A2E0E;
}

.vtfaq__sub {
    margin: 0;
    color: #444;
    font-size: 14.8px;
    line-height: 1.55;
    max-width: 62ch;
}

.vtfaq__actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.vtfaq__btn {
    border: 1px solid rgba(0, 0, 0, .10);
    background: #fff;
    border-radius: 999px;
    padding: 9px 12px;
    font-weight: 800;
    font-size: 13px;
    color: #1f1f1f;
    box-shadow: 0 12px 24px rgba(0, 0, 0, .06);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}

.vtfaq__btn i {
    color: #C28E1F;
}

.vtfaq__btn--ghost {
    background: rgba(255, 248, 238, .75);
}

.vtfaq__list {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 10px;
}

/* Item */
.vtfaq__item {
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(255, 248, 238, .72));
    box-shadow: 0 12px 24px rgba(0, 0, 0, .06);
    overflow: hidden;
}

.vtfaq__q {
    width: 100%;
    text-align: left;
    border: 0;
    background: transparent;
    padding: 12px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    cursor: pointer;
    font-weight: 900;
    color: #202020;
    font-size: 15.2px;
}

.vtfaq__q i {
    color: #7A2E0E;
    font-size: 18px;
    transition: transform .18s ease;
}

/* Answer area (animated) */
.vtfaq__a {
    max-height: 0;
    overflow: hidden;
    transition: max-height .22s ease;
    border-top: 1px solid rgba(0, 0, 0, .06);
}

.vtfaq__a p {
    margin: 0;
    padding: 12px 14px;
    color: #3b3b3b;
    font-size: 14.6px;
    line-height: 1.6;
}

/* Open state */
.vtfaq__item.is-open .vtfaq__a {
    max-height: 220px;
    /* enough for short answers */
}

.vtfaq__item.is-open .vtfaq__q i {
    transform: rotate(180deg);
}

/* Responsive */
@media (max-width: 768px) {
    .vtfaq__head {
        flex-direction: column;
        align-items: flex-start;
    }

    .vtfaq__actions {
        justify-content: flex-start;
    }
}


/* ===== Sidebar ===== */
.vtp-side {
    position: sticky;
    top: 14px;
}

@media (max-width: 992px) {
    .vtp-side {
        position: static;
    }
}

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

.vtp-formHead h3 {
    margin: 0;
    font-size: 16px;
    letter-spacing: .2px;
}

.vtp-formHead p {
    margin: 6px 0 0;
    opacity: .9;
    font-size: 13px;
    line-height: 1.5;
}

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

.vtp-field {
    margin-bottom: 10px;
}

.vtp-field label {
    display: block;
    font-size: 13px;
    color: var(--muted);
    margin: 0 0 6px;
}

.vtp-field input,
.vtp-field textarea {
    width: 100%;
    padding: 12px 12px;
    border-radius: 14px;
    border: 1px solid rgba(0, 0, 0, .10);
    outline: none;
    background: #fff;
    font-size: 14px;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.vtp-field textarea {
    min-height: 92px;
    resize: vertical;
}

.vtp-field input:focus,
.vtp-field textarea:focus {
    border-color: rgba(122, 46, 14, .35);
    box-shadow: 0 0 0 4px rgba(122, 46, 14, .10);
}

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

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

.vtp-formFine {
    margin: 10px 0 0;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.55;
}

/* ===== Special Tour Card ===== */
.spx-card__wrap {
    display: block;
    text-decoration: none;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .10);
    box-shadow: 0 18px 44px rgba(0, 0, 0, .14);
    background: #0f0f0f;
    transition: transform .15s ease, box-shadow .15s ease;
    margin-top: 20px;
}

.spx-card__wrap:hover {
    transform: translateY(-2px);
    box-shadow: 0 24px 56px rgba(0, 0, 0, .18);
}

.spx-card__media {
    position: relative;
    height: 400px;
    /* sidebar friendly */
    background: #111;
}

/* --- Collage layout (DIAGONAL SPLIT) --- */
.spx-card__img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(1.05) contrast(1.05);
}

.spx-card__img--a {
    clip-path: polygon(0 0, 72% 0, 45% 100%, 0 100%);
    transform: scale(1.04);
}

.spx-card__img--b {
    clip-path: polygon(72% 0, 100% 0, 100% 100%, 45% 100%);
    transform: scale(1.06);
}

/* Soft theme overlay (maroon + gold) */
.spx-card__media::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(520px 260px at 10% 15%, rgba(194, 142, 31, .28), transparent 60%),
        radial-gradient(520px 260px at 90% 20%, rgba(122, 46, 14, .26), transparent 60%),
        linear-gradient(180deg, rgba(0, 0, 0, .12), rgba(0, 0, 0, .62));
    z-index: 2;
}

/* subtle shine stroke */
.spx-card__media::after {
    content: "";
    position: absolute;
    inset: 10px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, .10);
    z-index: 3;
    pointer-events: none;
}

/* Top badges */
.spx-card__badges {
    position: absolute;
    left: 12px;
    right: 12px;
    top: 12px;
    display: flex;
    justify-content: space-between;
    gap: 10px;
    z-index: 4;
}

.spx-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    border-radius: 999px;
    font-weight: 950;
    font-size: 12px;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .10);
    color: #fff;
    backdrop-filter: blur(6px);
}

.spx-badge--hot {
    background: rgba(194, 142, 31, .18);
    border-color: rgba(194, 142, 31, .25);
}

.spx-badge--rate i {
    color: #C28E1F;
}

.spx-badge--rate em {
    font-style: normal;
    font-weight: 800;
    opacity: .9;
}

/* Content overlay */
.spx-card__content {
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 12px;
    z-index: 4;
    padding: 12px 12px 12px;
    border-radius: 16px;
    background: rgba(10, 10, 10, .55);
    border: 1px solid rgba(255, 255, 255, .12);
    backdrop-filter: blur(8px);
}

.spx-card__title {
    margin: 0 0 4px;
    color: #fff;
    font-size: 16px;
    font-weight: 950;
    line-height: 1.25;
}

.spx-card__meta {
    margin: 0 0 10px;
    color: rgba(255, 255, 255, .88);
    font-size: 13px;
    font-weight: 800;
}

/* Pills */
.spx-card__pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 10px;
}

.spx-card__pills span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    border-radius: 999px;
    font-size: 12.4px;
    font-weight: 900;
    color: #fff;
    background: rgba(255, 255, 255, .10);
    border: 1px solid rgba(255, 255, 255, .14);
}

.spx-card__pills i {
    color: #C28E1F;
}

/* Bottom row */
.spx-card__bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
}

.spx-card__price small {
    display: block;
    font-size: 11.8px;
    font-weight: 800;
    color: rgba(255, 255, 255, .80);
    line-height: 1.2;
}

.spx-card__price strong {
    display: block;
    font-size: 18px;
    font-weight: 1000;
    color: #FFD28A;
    /* warm gold */
    letter-spacing: .2px;
    margin: 1px 0;
}

/* CTA button */
.spx-card__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 12px;
    border-radius: 999px;
    font-weight: 950;
    font-size: 12.6px;
    color: #1a1a1a;
    background: linear-gradient(90deg, rgba(194, 142, 31, .98), rgba(194, 142, 31, .72));
    border: 1px solid rgba(194, 142, 31, .35);
    box-shadow: 0 18px 34px rgba(0, 0, 0, .18);
    white-space: nowrap;
}

/* Responsive */
@media (max-width: 992px) {
    .spx-card__media {
        height: 350px;
    }
}


/* ===== Quick Contact ===== */
.qcside__card {
    border-radius: 18px;
    border: 1px solid rgba(0, 0, 0, .10);
    background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(255, 248, 238, .72));
    box-shadow: 0 16px 44px rgba(0, 0, 0, .10);
    overflow: hidden;
    margin-top: 20px;
}

.qcside__head {
    padding: 14px 14px 12px;
    border-bottom: 1px dashed rgba(122, 46, 14, .18);
    position: relative;
}

.qcside__head::before {
    content: "";
    position: absolute;
    inset: -2px;
    background:
        radial-gradient(420px 180px at 10% 10%, rgba(194, 142, 31, .14), transparent 55%),
        radial-gradient(420px 180px at 92% 25%, rgba(122, 46, 14, .10), transparent 55%);
    pointer-events: none;
}

.qcside__title {
    position: relative;
    margin: 0;
    font-size: 16.5px;
    font-weight: 950;
    color: #7A2E0E;
    letter-spacing: .2px;
}

.qcside__sub {
    position: relative;
    margin: 4px 0 0;
    font-size: 13.6px;
    font-weight: 750;
    color: #555;
    line-height: 1.45;
}

/* rows */
.qcside__list {
    padding: 12px;
    display: grid;
    gap: 10px;
}

.qcside__row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 10px;
    border-radius: 16px;
    text-decoration: none;
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 12px 22px rgba(0, 0, 0, .06);
    transition: transform .15s ease, box-shadow .15s ease;
}

.qcside__row:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 30px rgba(0, 0, 0, .10);
}

.qcside__ico {
    width: 40px;
    height: 40px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(194, 142, 31, .16);
    border: 1px solid rgba(194, 142, 31, .22);
    flex-shrink: 0;
}

.qcside__ico i {
    font-size: 18px;
    color: #7A2E0E;
}

.qcside__ico--wa {
    background: rgba(194, 142, 31, .12);
    border-color: rgba(194, 142, 31, .22);
}

.qcside__ico--wa i {
    color: #C28E1F;
}

.qcside__ico--mail {
    background: rgba(122, 46, 14, .10);
    border-color: rgba(122, 46, 14, .16);
}

.qcside__ico--mail i {
    color: #7A2E0E;
}

.qcside__txt {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}

.qcside__txt strong {
    font-size: 14px;
    font-weight: 950;
    color: #1f1f1f;
}

.qcside__txt small {
    font-size: 12.8px;
    font-weight: 800;
    color: #666;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 220px;
}

.qcside__go {
    margin-left: auto;
    width: 34px;
    height: 34px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 248, 238, .85);
    border: 1px solid rgba(0, 0, 0, .06);
    flex-shrink: 0;
}

.qcside__go i {
    color: #7A2E0E;
    font-size: 16px;
}

/* note */
.qcside__note {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    padding: 12px 14px 14px;
    border-top: 1px solid rgba(0, 0, 0, .06);
    background: rgba(255, 248, 238, .72);
    color: #3a3a3a;
    font-size: 13.2px;
    font-weight: 750;
    line-height: 1.45;
}

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

/* ===== Tour Links / More Tours ===== */
.tcloud__card {
    border-radius: 18px;
    border: 1px solid rgba(0, 0, 0, .10);
    background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(255, 248, 238, .74));
    box-shadow: 0 16px 44px rgba(0, 0, 0, .10);
    overflow: hidden;
    margin-top: 20px;
}

.tcloud__head {
    padding: 14px 14px 12px;
    border-bottom: 1px dashed rgba(122, 46, 14, .18);
    position: relative;
}

.tcloud__head::before {
    content: "";
    position: absolute;
    inset: -2px;
    background:
        radial-gradient(420px 180px at 10% 10%, rgba(194, 142, 31, .14), transparent 55%),
        radial-gradient(420px 180px at 92% 25%, rgba(122, 46, 14, .10), transparent 55%);
    pointer-events: none;
}

.tcloud__title {
    position: relative;
    margin: 0;
    font-size: 16.5px;
    font-weight: 950;
    color: #7A2E0E;
}

.tcloud__sub {
    position: relative;
    margin: 4px 0 0;
    font-size: 13.4px;
    font-weight: 750;
    color: #555;
}

/* chip container */
.tcloud__wrap {
    padding: 12px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    max-height: 270px;
    /* makes it scalable for many links */
    overflow: auto;
    /* scroll inside sidebar */
}

/* nice scrollbar (optional) */
.tcloud__wrap::-webkit-scrollbar {
    width: 10px;
}

.tcloud__wrap::-webkit-scrollbar-thumb {
    background: rgba(122, 46, 14, .18);
    border-radius: 999px;
    border: 3px solid rgba(255, 255, 255, .85);
}

/* chip */
.tcloud__chip {
    position: relative;
    flex: 1 1 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 11px 12px;
    border-radius: 999px;
    text-decoration: none;
    color: #1f1f1f;
    font-weight: 950;
    font-size: 13.6px;

    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 12px 24px rgba(0, 0, 0, .06);
    transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

/* unique “premium stroke” */
.tcloud__chip::before {
    content: "";
    position: absolute;
    inset: -2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(122, 46, 14, .22), rgba(194, 142, 31, .18));
    opacity: 0;
    z-index: 0;
    transition: opacity .15s ease;
}

.tcloud__chip>* {
    position: relative;
    z-index: 1;
}

.tcloud__chip span {
    font-size: 12.2px;
    font-weight: 950;
    color: #7A2E0E;
    background: rgba(194, 142, 31, .16);
    border: 1px solid rgba(194, 142, 31, .22);
    padding: 5px 10px;
    border-radius: 999px;
    white-space: nowrap;
}

.tcloud__chip:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 36px rgba(0, 0, 0, .10);
    border-color: rgba(194, 142, 31, .30);
}

.tcloud__chip:hover::before {
    opacity: 1;
}

/* active/current page */
.tcloud__chip.is-active {
    border-color: rgba(194, 142, 31, .48);
    background: rgba(255, 248, 238, .92);
}

.tcloud__chip.is-active span {
    color: #fff;
    background: linear-gradient(90deg, #7A2E0E, #C28E1F);
    border-color: rgba(194, 142, 31, .35);
}

/* footer */
.tcloud__foot {
    padding: 12px 14px 14px;
    border-top: 1px solid rgba(0, 0, 0, .06);
    background: rgba(255, 248, 238, .70);
}

.tcloud__btn {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    padding: 11px 12px;
    border-radius: 14px;
    font-weight: 950;
    text-decoration: none;
    color: #1f1f1f;
    background: linear-gradient(90deg, rgba(194, 142, 31, .95), rgba(194, 142, 31, .72));
    border: 1px solid rgba(194, 142, 31, .35);
    box-shadow: 0 16px 34px rgba(0, 0, 0, .14);
}

.tcloud__btn i {
    color: #7A2E0E;
}

/* optional: 2 columns on wider sidebar */
@media (min-width: 1200px) {
    .tcloud__chip {
        flex: 1 1 calc(50% - 10px);
    }
}

/* ===== Soft divider ===== */
.vtp-divider {
    height: 1px;
    background: rgba(0, 0, 0, .07);
    margin: 16px 0;
}


  /* ===== SINGLE IMAGE SECTION ===== */
  .vtoneimg{
    padding-bottom: 36px;
    background:#FFF8EE;
  }
  .vtoneimg__card{
    margin:0;
    border-radius: calc(var(--radius) + 10px);
    overflow:hidden;
    background: var(--card);
    border: 1px solid rgba(122,46,14,.14);
    box-shadow: 0 18px 40px rgba(0,0,0,.10);
    position:relative;
  }

  /* subtle frame glow */
  .vtoneimg__card:before{
    content:"";
    position:absolute;
    inset:-2px;
    border-radius: inherit;
    pointer-events:none;
    background: linear-gradient(135deg, rgba(122,46,14,.22), rgba(194,142,31,.18), rgba(122,46,14,.10));
    filter: blur(14px);
    opacity:.55;
  }

  .vtoneimg__img{
    position:relative;
    width:100%;
    height: clamp(280px, 46vw, 520px);
    object-fit: cover;
    display:block;
    transform: scale(1.001);
    transition: transform .35s ease;
  }

  .vtoneimg__card:hover .vtoneimg__img{
    transform: scale(1.03);
  }

  @media (max-width: 520px){
    .vtoneimg__title{ font-size: 28px; }
    .vtoneimg__img{ height: 320px; }
  }
