/* Bali Hilltop brand-only overrides for the locked Tourm visual contract. */
:root {
    --theme-color: #168447;
    --primary-color: #168447;
    --title-color: #173c2a;
    --body-color: #67736c;
    --smoke-color: #eef7ed;
    --smoke-color2: #f6f8f3;
    --yellow-color: #e8c73a;
    --th-border-color: #e1eadf;
}

html { scroll-behavior: smooth; }
body.tourm-visual-contract { overflow-x: hidden; }
.bht-skip-link { position: fixed; left: 16px; top: -70px; z-index: 10000; padding: 12px 18px; border-radius: 0 0 10px 10px; background: var(--title-color); color: #fff; transition: top .2s ease; }
.bht-skip-link:focus { top: 0; color: #fff; }

/* Original Tourm loader, branded only. */
.preloader-inner { top: 31%; z-index: 110; }
.preloader-inner img { width: 126px; height: 126px; object-fit: contain; margin-bottom: 0; }
.preloader .preloaderCls { position: fixed; right: 28px; top: 24px; z-index: 120; padding: 10px 18px; font-size: 12px; opacity: .78; }
.th-preloader .animation-preloader .txt-loading { font-size: clamp(34px, 5vw, 72px); }

/* Header follows Tourm header-layout1 geometry. */
.header-layout1 .header-logo { position: relative; z-index: 2; width: 195px; }
.header-layout1 .header-logo img { width: 184px; height: 72px; object-fit: contain; }
.header-layout1 .header-top .header-links li i { color: var(--theme-color); }
.header-layout1 .header-right .header-links ul { display: flex; align-items: center; }
.header-layout1 .header-right .header-links li { display: inline-flex; align-items: center; }
.header-layout1 .header-right .header-links li a { width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--smoke-color); color: var(--title-color); }
.header-layout1 .header-right .header-links li a:hover { background: var(--theme-color); color: #fff; }
.header-layout1 .main-menu > ul > li > a.active:before { width: 100%; }
.mobile-logo img { width: 178px; max-height: 82px; object-fit: contain; }
.th-menu-wrapper .mobile-logo { padding: 20px 10px 8px; }

/* Hero keeps Tourm animation/controls. Only content-image fit and brand tone are adjusted. */
.hero-1 .th-hero-bg { background-position: center; }
.hero-1 .th-hero-bg:before { background: rgba(10, 31, 19, .50); }
.hero-style1 .hero-title { max-width: 910px; }
.hero-style1 .sub-title { color: #fff; }
.hero-1 .th-swiper-custom .swiper-pagination-bullet-active { background-color: var(--yellow-color); border-color: var(--yellow-color); }

/* Booking form remains the original floating Tourm block. */
.booking-form { border-color: var(--theme-color); }
.booking-form .form-group .icon { color: var(--theme-color); }
.booking-form .form-btn .th-btn img { filter: brightness(0) invert(1); }
.booking-form select { cursor: pointer; }

/* Category images retain the original Tourm square geometry at every slide width. */
.category-area { padding-bottom: 80px; }
.category-card .box-img {
    background: #fff;
    aspect-ratio: 1 / 1;
}
.category-card .box-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.category-card .box-title { min-height: 34px; }
.category-card .line-btn { color: var(--body-color); }
.category-card .line-btn:hover { color: var(--theme-color); }

.bht-stage-footer .copyright-wrap { background: var(--title-color); padding: 22px 0; }
.bht-stage-footer .copyright-text, .bht-stage-footer .copyright-text a, .bht-footer-wa { color: #fff; }
.bht-footer-wa { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; }
.bht-floating-whatsapp { position: fixed; right: 25px; bottom: 95px; z-index: 98; width: 58px; height: 58px; display: grid; place-items: center; border-radius: 50%; background: #25d366; color: #fff; font-size: 27px; box-shadow: 0 14px 35px rgba(13, 76, 42, .25); }
.bht-floating-whatsapp:hover { color: #fff; transform: translateY(-3px); }

@media (max-width: 1199px) {
    .header-layout1 .header-logo { width: 176px; }
    .header-layout1 .header-logo img { width: 164px; height: 62px; }
}
@media (max-width: 767px) {
    .preloader-inner { top: 34%; }
    .preloader-inner img { width: 96px; height: 96px; }
    .preloader .preloaderCls { right: 12px; top: 12px; }
    .hero-style1 .hero-title { font-size: 48px; }
    .bht-floating-whatsapp { right: 18px; bottom: 86px; }
}
@media (max-width: 575px) {
    .hero-style1 .hero-title { font-size: 41px; }
    .hero-style1 .btn-group { align-items: flex-start; }
    .booking-sec { margin-top: -34px; }
    .booking-form { padding: 24px 18px; }
    .category-area { padding-top: 65px; }
}
@media (hover: none), (pointer: coarse) {
    .cursor-follower, .slider-drag-cursor { display: none !important; }
}
/* Header branding hotfix: white logo zone and new wide Bali Hilltop logo. */
.header-layout1 .logo-bg {
    background-color: #ffffff !important;
}
.header-layout1 .header-logo {
    width: 230px;
}
.header-layout1 .header-logo img {
    width: 214px;
    height: 82px;
    object-fit: contain;
    object-position: left center;
}
.mobile-logo img {
    width: 205px;
    max-height: 118px;
}
@media (max-width: 1199px) {
    .header-layout1 .header-logo { width: 210px; }
    .header-layout1 .header-logo img { width: 194px; height: 72px; }
}
@media (max-width: 575px) {
    .header-layout1 .header-logo { width: 195px; }
    .header-layout1 .header-logo img { width: 180px; height: 68px; }
}



/* Homepage completion: preserve Tourm geometry while binding Bali Hilltop content. */
.bht-destination-section { padding-top: 105px; }
.destination-box .destination-img img { width: 100%; height: 520px; object-fit: cover; }
.destination-box .destination-content { background: linear-gradient(180deg, transparent 0%, rgba(8, 42, 26, .92) 100%); }
.bht-tour-summary { margin: 10px 0 18px; min-height: 48px; color: var(--body-color); font-size: 14px; line-height: 1.7; }
.tour-box_img img { width: 100%; height: 265px; object-fit: cover; }

.blog-box .blog-img img { width: 100%; height: 285px; object-fit: cover; }

.bht-final-footer .widget-area { padding-top: 90px; padding-bottom: 70px; }
.bht-final-footer .about-logo { background: #fff; border-radius: 18px; padding: 10px 14px; display: inline-block; }
.bht-final-footer .about-logo img { width: 220px; max-height: 105px; object-fit: contain; }
.bht-final-footer .th-widget-contact .details p { margin-bottom: 5px; }
.bht-final-footer .copyright-wrap { background-position: center; background-size: cover; }
.bht-final-footer .footer-card { display: inline-flex; align-items: center; gap: 14px; color: #fff; }
.bht-final-footer .footer-card img { max-width: 160px; }
.bht-final-footer .copyright-text, .bht-final-footer .copyright-text a { color: #fff; }

/* Public booking form. */
.bht-booking-breadcrumb { min-height: 420px; background-position: center; }
.bht-booking-breadcrumb:before { background: rgba(7, 38, 23, .60); }
.bht-booking-card { background: #fff; padding: 46px; border-radius: 28px; box-shadow: 0 20px 70px rgba(12, 61, 36, .10); }
.bht-booking-card .form-control,
.bht-booking-card .form-select { background-color: var(--smoke-color2); }
.bht-booking-sidebar { position: sticky; top: 120px; padding: 34px; border-radius: 28px; background: var(--title-color); color: #fff; }
.bht-booking-sidebar .box-title, .bht-booking-sidebar a { color: #fff; }
.bht-booking-sidebar > p { color: rgba(255,255,255,.72); }
.bht-booking-contact-item { display: flex; gap: 15px; padding: 18px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.bht-booking-contact-item > i { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: var(--theme-color); color: #fff; font-size: 18px; }
.bht-booking-contact-item span { display: block; color: rgba(255,255,255,.58); font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
.bht-booking-contact-item p { color: #fff; margin: 4px 0 0; }
.bht-booking-qr { margin-top: 22px; padding: 16px; text-align: center; background: #fff; border-radius: 18px; color: var(--title-color); }
.bht-booking-qr img { width: 150px; max-width: 100%; display: block; margin: 0 auto 10px; }
.bht-booking-qr span { font-size: 12px; font-weight: 700; }
.bht-booking-note { display: flex; align-items: center; gap: 12px; margin-top: 22px; padding: 15px 18px; border-radius: 16px; background: rgba(232,199,58,.14); color: #fff; }
.bht-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }
.bht-booking-success-section { min-height: 70vh; display: flex; align-items: center; background: var(--smoke-color2); }
.bht-booking-success-card { max-width: 780px; margin: auto; padding: 60px; border-radius: 32px; background: #fff; box-shadow: 0 20px 70px rgba(12,61,36,.10); }
.bht-success-icon { width: 92px; height: 92px; margin: 0 auto 25px; display: grid; place-items: center; border-radius: 50%; background: var(--theme-color); color: #fff; font-size: 38px; }
.bht-booking-code { display: inline-flex; flex-direction: column; gap: 6px; margin: 25px 0 30px; padding: 16px 28px; border-radius: 18px; background: var(--smoke-color); }
.bht-booking-code span { font-size: 11px; text-transform: uppercase; letter-spacing: .12em; color: var(--body-color); }
.bht-booking-code strong { font-size: 22px; color: var(--title-color); }

@media (max-width: 1199px) {
    .destination-box .destination-img img { height: 440px; }
    .bht-booking-sidebar { position: static; }
}
@media (max-width: 767px) {
    .bht-destination-section { padding-top: 75px; }
    .destination-box .destination-img img { height: 390px; }
    .bht-booking-card { padding: 28px 20px; }
    .bht-booking-success-card { padding: 40px 22px; }
    .bht-final-footer .footer-card { justify-content: flex-start; flex-wrap: wrap; }
}

/* Homepage About Collage V1: restore the original Tourm 3-image composition. */
#about-sec .bht-about-collage {
    position: relative;
    width: min(100%, 648px);
    min-height: 650px;
    margin: 0 auto 20px;
    overflow: visible;
}
#about-sec .bht-about-collage__item {
    position: absolute;
    display: block;
    max-width: none;
    margin: 0;
    overflow: hidden;
    background: var(--smoke-color);
    box-shadow: 0 18px 45px rgba(13, 52, 31, .10);
}
#about-sec .bht-about-collage__item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .7s ease;
}
#about-sec .bht-about-collage__item:hover img {
    transform: scale(1.035);
}
#about-sec .bht-about-collage__item--1 {
    top: 0;
    left: 0;
    width: 312px;
    height: 630px;
    border-radius: 156px 156px 0 156px;
}
#about-sec .bht-about-collage__item--1 img {
    border-radius: inherit;
    object-position: center center;
}
#about-sec .bht-about-collage__item--2 {
    top: 0;
    right: 0;
    width: 312px;
    height: 315px;
    border-radius: 156px 156px 156px 0;
}
#about-sec .bht-about-collage__item--2 img {
    border-radius: inherit;
    object-position: center center;
}
#about-sec .bht-about-collage__item--3 {
    right: 0;
    bottom: 0;
    width: 312px;
    height: 315px;
    border-radius: 156px 0 156px 156px;
}
#about-sec .bht-about-collage__item--3 img {
    border-radius: inherit;
    object-position: center center;
}
#about-sec .bht-about-collage__accent {
    position: absolute;
    z-index: 4;
    top: 24%;
    left: calc(50% + 3px);
    width: 20px;
    height: 20px;
    border: 4px solid #fff;
    border-radius: 50%;
    background: var(--theme-color);
    box-shadow: 0 8px 20px rgba(13, 52, 31, .16);
    pointer-events: none;
}

@media (max-width: 1399px) and (min-width: 1200px) {
    #about-sec .bht-about-collage {
        width: 570px;
        min-height: 590px;
    }
    #about-sec .bht-about-collage__item--1 {
        width: 280px;
        height: 570px;
        border-radius: 140px 140px 0 140px;
    }
    #about-sec .bht-about-collage__item--2,
    #about-sec .bht-about-collage__item--3 {
        width: 270px;
        height: 275px;
    }
    #about-sec .bht-about-collage__item--2 { border-radius: 138px 138px 138px 0; }
    #about-sec .bht-about-collage__item--3 { border-radius: 138px 0 138px 138px; }
}

@media (max-width: 1199px) {
    #about-sec .bht-about-collage {
        width: min(100%, 648px);
        margin-bottom: 65px;
    }
}

@media (max-width: 767px) {
    #about-sec .bht-about-collage {
        width: 100%;
        min-height: 560px;
    }
    #about-sec .bht-about-collage__item--1 {
        width: calc(50% - 10px);
        height: 540px;
        border-radius: 120px 120px 0 120px;
    }
    #about-sec .bht-about-collage__item--2,
    #about-sec .bht-about-collage__item--3 {
        width: calc(50% - 10px);
        height: 260px;
    }
    #about-sec .bht-about-collage__item--2 { border-radius: 120px 120px 120px 0; }
    #about-sec .bht-about-collage__item--3 { border-radius: 120px 0 120px 120px; }
}

@media (max-width: 575px) {
    #about-sec .bht-about-collage {
        display: grid;
        grid-template-columns: 1.08fr .92fr;
        grid-template-rows: 215px 215px;
        gap: 14px;
        min-height: 444px;
        margin-bottom: 45px;
    }
    #about-sec .bht-about-collage__item {
        position: relative;
        inset: auto;
        width: 100%;
        height: 100%;
        max-width: none;
    }
    #about-sec .bht-about-collage__item--1 {
        grid-row: 1 / 3;
        border-radius: 90px 90px 0 90px;
    }
    #about-sec .bht-about-collage__item--2 {
        grid-column: 2;
        grid-row: 1;
        border-radius: 78px 78px 78px 0;
    }
    #about-sec .bht-about-collage__item--3 {
        grid-column: 2;
        grid-row: 2;
        border-radius: 78px 0 78px 78px;
    }
    #about-sec .bht-about-collage__accent {
        top: 21%;
        left: 52%;
        width: 16px;
        height: 16px;
        border-width: 3px;
    }
}

/* Homepage Gallery Layout V1 - original Tourm 5-column / 7-image composition */
.gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-layout {
    --bs-gutter-x: 17px;
}
.gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-column {
    min-width: 0;
}
.gallery-area[data-bht-gallery-layout="tourm-original-v1"] .gallery-card .box-img,
.gallery-area[data-bht-gallery-layout="tourm-original-v1"] .gallery-card .box-img > a {
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 24px;
}
.gallery-area[data-bht-gallery-layout="tourm-original-v1"] .gallery-card .box-img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 24px;
}
.gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-card--outer .box-img {
    aspect-ratio: 742 / 696;
}
.gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-card--stacked .box-img {
    aspect-ratio: 743 / 575;
}
.gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-card--portrait .box-img {
    aspect-ratio: 743 / 1200;
}
.gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-column .gallery-card:nth-child(2) {
    margin-top: 17px;
}
@media (max-width: 991px) {
    .gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-column {
        margin-bottom: 17px;
    }
    .gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-card--portrait .box-img {
        aspect-ratio: 743 / 760;
    }
}
@media (max-width: 767px) {
    .gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-layout {
        --bs-gutter-x: 24px;
    }
    .gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-column {
        width: 100%;
        max-width: 560px;
    }
    .gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-card--outer .box-img,
    .gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-card--stacked .box-img,
    .gallery-area[data-bht-gallery-layout="tourm-original-v1"] .bht-gallery-card--portrait .box-img {
        aspect-ratio: 16 / 11;
    }
}

/* Dedicated Contact Us page - Tourm contact visual contract with Bali Hilltop content. */
.bht-contact-breadcrumb {
    min-height: 420px;
    background-position: center;
    background-size: cover;
}
.bht-contact-breadcrumb:before {
    background: rgba(7, 38, 23, .62);
}
.bht-contact-information .sec-text {
    max-width: 760px;
}
.bht-contact-information .about-contact-grid {
    min-height: 188px;
}
.bht-contact-form-area {
    position: relative;
    background-position: center;
    background-size: cover;
}
.bht-contact-form-area:before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(246, 248, 243, .92);
}
.bht-contact-form-area > .container {
    position: relative;
    z-index: 1;
}
.bht-contact-form {
    box-shadow: 0 24px 70px rgba(12, 61, 36, .12);
}
.bht-contact-form .form-control,
.bht-contact-form .form-select {
    background-color: #fff;
}
.bht-contact-form .invalid-feedback {
    margin-top: 7px;
    font-size: 12px;
}
.bht-contact-visual {
    position: relative;
    min-height: 650px;
    overflow: hidden;
    border-radius: 110px 110px 26px 110px;
    background-position: center;
    background-size: cover;
    box-shadow: 0 25px 80px rgba(12, 61, 36, .18);
}
.bht-contact-visual:before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(7, 38, 23, 0) 42%, rgba(7, 38, 23, .88) 100%);
}
.bht-contact-visual-label {
    position: absolute;
    left: 34px;
    right: 34px;
    bottom: 32px;
    z-index: 1;
    padding: 22px 25px;
    border-radius: 20px;
    background: rgba(255, 255, 255, .94);
    backdrop-filter: blur(12px);
}
.bht-contact-visual-label span,
.bht-contact-visual-label strong {
    display: block;
}
.bht-contact-visual-label span {
    margin-bottom: 5px;
    color: var(--theme-color);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.bht-contact-visual-label strong {
    color: var(--title-color);
    font-size: 24px;
    line-height: 1.3;
}
.bht-contact-status {
    display: none;
    margin-bottom: 22px;
    padding: 14px 18px;
    border-radius: 14px;
    font-weight: 700;
}
.bht-contact-status.is-success,
.bht-contact-status.is-warning,
.bht-contact-status.is-error {
    display: block;
}
.bht-contact-status.is-success {
    background: #e8f7ee;
    color: #116b39;
}
.bht-contact-status.is-warning {
    background: #fff7d6;
    color: #755d00;
}
.bht-contact-status.is-error {
    background: #fdebea;
    color: #a62f2a;
}
.bht-contact-form .bht-is-loading {
    pointer-events: none;
    opacity: .68;
}
.bht-contact-map-section {
    background: #fff;
}
.bht-contact-map {
    min-height: 520px;
}
.bht-contact-map iframe {
    display: block;
    width: 100%;
    height: 520px;
    border: 0;
}
@media (max-width: 1199px) {
    .bht-contact-visual { min-height: 560px; }
}
@media (max-width: 991px) {
    .bht-contact-visual { min-height: 520px; border-radius: 70px 70px 22px 70px; }
}
@media (max-width: 575px) {
    .bht-contact-breadcrumb { min-height: 340px; }
    .bht-contact-visual { min-height: 430px; border-radius: 44px 44px 18px 44px; }
    .bht-contact-visual-label { left: 18px; right: 18px; bottom: 18px; padding: 17px 18px; }
    .bht-contact-visual-label strong { font-size: 19px; }
    .bht-contact-map, .bht-contact-map iframe { min-height: 430px; height: 430px; }
}

/* BHT_HOME_HERO_HEIGHT_V1_1_BEGIN */

/*
 * Explicit Tourm hero geometry.
 * Height must be applied to the Swiper chain and hero-inner, not only
 * to hero-style1 padding.
 */
.bht-homepage #hero {
    --bht-hero-height: 700px;
    overflow: hidden;
}

.bht-homepage #hero,
.bht-homepage #heroSlide1,
.bht-homepage #heroSlide1 > .swiper-wrapper,
.bht-homepage #heroSlide1 > .swiper-wrapper > .swiper-slide,
.bht-homepage #heroSlide1 .hero-inner {
    height: var(--bht-hero-height) !important;
    min-height: var(--bht-hero-height) !important;
    max-height: var(--bht-hero-height) !important;
}

.bht-homepage #heroSlide1 .hero-inner {
    position: relative;
    display: flex !important;
    align-items: center !important;
}

.bht-homepage #heroSlide1 .hero-inner > .container {
    position: relative;
    z-index: 3;
    height: 100%;
    display: flex;
    align-items: center;
}

.bht-homepage #heroSlide1 .hero-style1 {
    width: 100%;
    padding-top: 0 !important;
    padding-bottom: 40px !important;
}

.bht-homepage #heroSlide1 .th-hero-bg {
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    background-position: center center !important;
    background-size: cover !important;
}

@media (max-width: 1399.98px) {
    .bht-homepage #hero {
        --bht-hero-height: 650px;
    }
}

@media (max-width: 1199.98px) {
    .bht-homepage #hero {
        --bht-hero-height: 600px;
    }
}

@media (max-width: 991.98px) {
    .bht-homepage #hero {
        --bht-hero-height: 560px;
    }

    .bht-homepage #heroSlide1 .hero-style1 {
        padding-bottom: 30px !important;
    }
}

@media (max-width: 767.98px) {
    .bht-homepage #hero {
        --bht-hero-height: 520px;
    }

    .bht-homepage #heroSlide1 .hero-style1 {
        padding-bottom: 20px !important;
    }
}

@media (max-width: 575.98px) {
    .bht-homepage #hero {
        --bht-hero-height: 500px;
    }
}

/* BHT_HOME_HERO_HEIGHT_V1_1_END */

/* BHT_POPULAR_DESTINATION_GEOMETRY_V1_BEGIN */

/*
 * Original Tourm Popular Destination geometry.
 * CMS images are landscape 1200x900, while Tourm destination assets use
 * a portrait ratio close to 423x636. Apply the ratio to the media frame
 * and crop the CMS image without altering the source file.
 */
.bht-homepage .bht-destination-section .destination-slider .destination-img {
    width: 100% !important;
    aspect-ratio: 423 / 636 !important;
    overflow: hidden !important;
    border-radius: 24px !important;
}

.bht-homepage .bht-destination-section .destination-slider .destination-img > img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 24px !important;
}

.bht-homepage .bht-destination-section .destination-slider .destination-box {
    width: 100% !important;
}

@media (max-width: 575.98px) {
    .bht-homepage .bht-destination-section .destination-slider .destination-img,
    .bht-homepage .bht-destination-section .destination-slider .destination-img > img {
        border-radius: 15px !important;
    }
}

/* BHT_POPULAR_DESTINATION_GEOMETRY_V1_END */

/* BHT_HEADER_LOCATION_ORANGE_ACCENT_V1_BEGIN */

/*
 * Secondary brand accent sampled from the Bali Hilltop logo.
 * Green remains the primary color; orange is intentionally restrained.
 */
:root {
    --bht-brand-orange: #e6a203;
}

.header-top .header-links .fa-location-dot,
.header-top .header-links .fa-clock {
    color: var(--bht-brand-orange) !important;
}

.header-button .th-btn {
    border-color: var(--bht-brand-orange) !important;
    box-shadow: inset 0 0 0 1px rgba(230, 162, 3, 0.38);
}

.header-button .th-btn:hover {
    box-shadow: inset 0 0 0 1px var(--bht-brand-orange);
}

/* BHT_HEADER_LOCATION_ORANGE_ACCENT_V1_END */

/* BHT_BOOKING_ENGINE_CART_V1_BEGIN */
.bht-engine-section{background:#fff}.bht-engine-heading{max-width:820px;margin-left:auto;margin-right:auto}.bht-engine-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 40px}.bht-engine-tab{display:flex;flex-direction:column;gap:6px;padding:20px 22px;border:1px solid rgba(11,82,52,.14);border-radius:20px;background:#f7faf8;color:#153d2c;transition:.25s ease}.bht-engine-tab strong{font-size:18px}.bht-engine-tab span{font-size:13px;color:#6c7f75}.bht-engine-tab:hover,.bht-engine-tab.is-active{background:#0d5034;color:#fff;border-color:#0d5034;transform:translateY(-2px);box-shadow:0 14px 35px rgba(8,70,44,.16)}.bht-engine-tab.is-active span,.bht-engine-tab:hover span{color:rgba(255,255,255,.78)}.bht-engine-card{height:100%;border:1px solid rgba(11,82,52,.1);border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 12px 35px rgba(17,65,45,.08)}.bht-engine-card__image{height:285px;overflow:hidden;background:#eef4f0}.bht-engine-card__image img{width:100%;height:100%;object-fit:cover}.bht-engine-card__body{padding:24px}.bht-engine-card__meta{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#0e7d4d}.bht-engine-card__body p{min-height:48px;color:#667a70}.bht-engine-price{display:flex;align-items:baseline;gap:7px;margin:18px 0}.bht-engine-price strong{font-size:22px;color:#0d5034}.bht-engine-price span{font-size:12px;color:#839188}.bht-engine-add-form label,.bht-cart-update-form label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#60746a}.bht-engine-add-form input,.bht-engine-add-form select,.bht-cart-update-form input{width:100%;height:46px;border:1px solid rgba(11,82,52,.14);border-radius:12px;padding:0 12px;background:#f8fbf9}.bht-cart-summary{position:sticky;top:130px;padding:28px;border-radius:24px;background:#f1f7f3;border:1px solid rgba(11,82,52,.12);box-shadow:0 18px 45px rgba(17,65,45,.09)}.bht-cart-summary h3{font-size:24px;margin-bottom:20px}.bht-cart-summary__total{display:flex;justify-content:space-between;gap:16px;padding:18px 0;margin:18px 0;border-top:1px solid rgba(11,82,52,.14);border-bottom:1px solid rgba(11,82,52,.14)}.bht-cart-summary__total strong{color:#0d5034}.bht-price-note{font-size:12px;color:#75867d;margin:18px 0 0}.bht-engine-empty{padding:55px;border:1px dashed rgba(11,82,52,.25);border-radius:24px;text-align:center;background:#f8fbf9}.bht-cart-items{display:flex;flex-direction:column;gap:18px}.bht-cart-item{display:grid;grid-template-columns:210px 1fr;border:1px solid rgba(11,82,52,.1);border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 12px 30px rgba(17,65,45,.07)}.bht-cart-item__image{min-height:220px;background:#eef4f0}.bht-cart-item__image img{width:100%;height:100%;object-fit:cover}.bht-cart-item__content{padding:22px;position:relative}.bht-cart-item__type{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:#0e7d4d}.bht-cart-item__content h3{font-size:22px;margin:8px 0}.bht-related-tour{font-size:13px;color:#52675c}.bht-cart-update-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-top:15px}.bht-cart-update-form label{width:125px}.bht-cart-item__price{font-size:20px;font-weight:900;color:#0d5034;margin-top:18px}.bht-remove-item{position:absolute;right:22px;bottom:20px;background:none;border:0;color:#b94a48;font-size:12px;font-weight:800}.bht-checkout-items,.bht-success-items{display:flex;flex-direction:column;gap:10px}.bht-checkout-items>div,.bht-success-items>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid rgba(11,82,52,.1);font-size:13px}.bht-checkout-items small,.bht-success-items small{display:block;color:#0e7d4d}.bht-success-items{max-width:720px;margin:28px auto;text-align:left}.bht-success-total{display:flex;justify-content:space-between;max-width:720px;margin:0 auto 30px;padding:18px 20px;border-radius:16px;background:#f1f7f3;font-size:18px}.bht-success-total strong{color:#0d5034}@media(max-width:1199.98px){.bht-cart-summary{position:static}.bht-engine-tabs{grid-template-columns:1fr}}@media(max-width:767.98px){.bht-cart-item{grid-template-columns:1fr}.bht-cart-item__image{height:230px}.bht-engine-card__image{height:250px}.bht-cart-update-form label{width:100%}.bht-remove-item{position:static;margin-top:12px;padding:0}.bht-engine-tab{padding:16px 18px}}
/* BHT_BOOKING_ENGINE_CART_V1_END */

/* BHT_BOOKING_ONE_PAGE_V2_BEGIN */
.bht-booking-app{position:relative}.bht-booking-toast{position:fixed;right:28px;bottom:28px;z-index:9998;max-width:min(390px,calc(100vw - 32px));padding:14px 18px;border-radius:14px;background:#0d5034;color:#fff;font-size:13px;font-weight:750;box-shadow:0 18px 50px rgba(8,55,37,.28);opacity:0;visibility:hidden;transform:translateY(12px);transition:.24s ease}.bht-booking-toast[data-tone="error"]{background:#a33e35}.bht-booking-toast.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.bht-engine-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin:0 0 30px!important}.bht-engine-tab{appearance:none;text-align:left;display:grid!important;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 15px!important;border:1px solid rgba(11,82,52,.12)!important;border-radius:17px!important;background:#fff!important;color:#173e2d!important;box-shadow:0 8px 26px rgba(20,72,49,.055);cursor:pointer;transform:none!important}.bht-engine-tab:hover{border-color:rgba(230,162,3,.52)!important;box-shadow:0 12px 30px rgba(20,72,49,.1)}.bht-engine-tab.is-active{background:linear-gradient(135deg,#0d5034,#176441)!important;border-color:#0d5034!important;color:#fff!important;box-shadow:0 14px 35px rgba(8,70,44,.19)}.bht-engine-tab__icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#eff6f1;color:#0d7047;font-size:18px}.bht-engine-tab.is-active .bht-engine-tab__icon{background:rgba(255,255,255,.14);color:#f0b63d}.bht-engine-tab__copy{min-width:0;display:flex;flex-direction:column;gap:2px}.bht-engine-tab__copy strong{font-size:14px!important;line-height:1.25}.bht-engine-tab__copy small{display:block;color:#708278;font-size:11px;line-height:1.4}.bht-engine-tab.is-active .bht-engine-tab__copy small{color:rgba(255,255,255,.74)}.bht-engine-tab__count{min-width:27px;height:27px;padding:0 7px;display:grid;place-items:center;border-radius:999px;background:#f4f7f5;color:#617269;font-size:11px;font-weight:850}.bht-engine-tab.is-active .bht-engine-tab__count{background:#e6a203;color:#fff}
.bht-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.bht-engine-card{height:auto!important;border-radius:18px!important;box-shadow:0 10px 30px rgba(17,65,45,.065)!important;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.bht-engine-card:hover{transform:translateY(-3px);border-color:rgba(230,162,3,.34)!important;box-shadow:0 17px 38px rgba(17,65,45,.105)!important}.bht-engine-card__image{position:relative;display:block;height:178px!important;overflow:hidden;background:#eef4f0}.bht-engine-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.bht-engine-card__image:hover img{transform:scale(1.045)}.bht-engine-card__zoom-icon{position:absolute;right:12px;top:12px;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:rgba(255,255,255,.92);color:#0d5034;box-shadow:0 7px 18px rgba(7,45,29,.14);opacity:0;transform:translateY(-5px);transition:.22s ease}.bht-engine-card__image:hover .bht-engine-card__zoom-icon{opacity:1;transform:translateY(0)}.bht-engine-card__duration{position:absolute;left:12px;bottom:12px;padding:6px 9px;border-radius:9px;background:rgba(10,65,42,.88);color:#fff;font-size:10px;font-weight:800;letter-spacing:.04em;backdrop-filter:blur(6px)}.bht-engine-card__body{padding:17px!important}.bht-engine-card__meta{margin-bottom:8px!important;font-size:9px!important}.bht-engine-card__body h3{font-size:18px;line-height:1.25;margin-bottom:7px}.bht-engine-card__summary{min-height:40px!important;margin-bottom:13px!important;font-size:12px;line-height:1.55;color:#687970!important}.bht-engine-fields{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(66px,.65fr) minmax(66px,.65fr);gap:8px}.bht-field{display:flex;flex-direction:column;gap:4px;min-width:0}.bht-field--wide{grid-column:1/-1}.bht-field span{font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:#6e8076}.bht-engine-add-form input,.bht-engine-add-form select{height:39px!important;border-radius:10px!important;padding:0 9px!important;font-size:12px!important;background:#f8fbf9!important}.bht-engine-card__action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;padding-top:12px;border-top:1px solid rgba(11,82,52,.09)}.bht-engine-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px;margin:0!important}.bht-engine-price strong{font-size:16px!important}.bht-engine-price span{font-size:10px!important}.bht-add-button{height:38px;min-width:78px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:11px;background:#0d5034;color:#fff;font-size:11px;font-weight:850;letter-spacing:.02em;box-shadow:0 8px 18px rgba(8,70,44,.16);transition:.22s ease}.bht-add-button:hover{background:#e6a203;color:#fff;transform:translateY(-1px)}.bht-add-button:disabled{opacity:.68;cursor:wait}.bht-add-button i{font-size:10px}
.bht-cart-summary{top:112px!important;padding:20px!important;border-radius:19px!important;background:#fff!important;box-shadow:0 18px 48px rgba(17,65,45,.1)!important}.bht-cart-summary.is-updated{animation:bhtCartPulse .46s ease}.bht-cart-summary__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:14px;border-bottom:1px solid rgba(11,82,52,.1)}.bht-cart-summary__header .sub-title{font-size:13px}.bht-cart-summary h3{font-size:17px!important;margin:4px 0 0!important}.bht-cart-badge{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#eef6f1;color:#0d5034}.bht-cart-summary__items{display:flex;flex-direction:column;gap:10px;max-height:440px;overflow:auto;margin:13px -5px 0 0;padding-right:5px;scrollbar-width:thin;scrollbar-color:rgba(13,80,52,.28) transparent}.bht-mini-cart-empty{padding:25px 12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:7px;color:#75877d}.bht-mini-cart-empty i{font-size:27px;color:#b5c6bc}.bht-mini-cart-empty strong{color:#294d3c;font-size:13px}.bht-mini-cart-empty span{font-size:11px;line-height:1.5}.bht-mini-cart-item{position:relative;display:block!important;padding:11px!important;border:1px solid rgba(11,82,52,.1)!important;border-radius:14px!important;background:#fbfdfc!important;box-shadow:none!important}.bht-mini-cart-item__top{display:grid;grid-template-columns:54px minmax(0,1fr);gap:10px}.bht-mini-cart-item__top>img,.bht-mini-cart-item__placeholder{width:54px;height:54px;border-radius:11px;object-fit:cover;background:#edf4ef;display:grid;place-items:center;color:#9aac9f}.bht-mini-cart-item__copy{min-width:0}.bht-mini-cart-item h4{font-size:12px;line-height:1.35;margin:0 0 4px;color:#173e2d}.bht-mini-cart-item p{display:flex;align-items:center;gap:5px;margin:2px 0;font-size:9.5px;line-height:1.35;color:#718178}.bht-mini-cart-item__related{color:#0d7047!important}.bht-mini-cart-item__pricing{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:9px;padding-top:8px;border-top:1px dashed rgba(11,82,52,.13)}.bht-mini-cart-item__pricing span{font-size:9px;line-height:1.4;color:#718178;max-width:68%}.bht-mini-cart-item__pricing strong{font-size:11px;color:#0d5034;text-align:right}.bht-mini-cart-edit{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(50px,.6fr) minmax(50px,.6fr) 32px;gap:6px;align-items:end;margin-top:9px}.bht-mini-cart-edit label{display:flex;flex-direction:column;gap:3px}.bht-mini-cart-edit label span{font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;color:#7b8b82}.bht-mini-cart-edit input{width:100%;height:31px;border:1px solid rgba(11,82,52,.12);border-radius:8px;background:#fff;padding:0 6px;font-size:9.5px;color:#2f4c3e}.bht-mini-cart-save{grid-column:-2/-1;width:32px;height:31px;border:0;border-radius:8px;background:#0d5034;color:#fff;font-size:10px}.bht-mini-cart-remove-form{margin-top:6px;text-align:right}.bht-mini-cart-remove{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:#a34b43;font-size:9px;font-weight:800;padding:2px}.bht-cart-summary__quote{display:flex;gap:8px;align-items:flex-start;margin-top:12px;padding:9px 10px;border-radius:10px;background:#fff8e6;color:#7a5a14;font-size:9.5px;line-height:1.45}.bht-cart-summary__total{padding:13px 0!important;margin:13px 0!important}.bht-cart-summary__total span{font-size:11px}.bht-cart-summary__total strong{font-size:17px}.bht-cart-checkout{height:45px!important;font-size:12px!important}.bht-cart-checkout.is-disabled{opacity:.45;pointer-events:auto;cursor:not-allowed}.bht-full-cart-link{display:block;margin-top:10px;text-align:center;color:#557067;font-size:10px;font-weight:800;text-decoration:underline}.bht-price-note{font-size:9.5px!important;line-height:1.5!important;margin-top:13px!important}
.bht-image-zoom-modal[hidden]{display:none!important}.bht-image-zoom-modal{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:30px;background:rgba(3,22,14,.88);backdrop-filter:blur(8px)}.bht-image-zoom-modal figure{margin:0;max-width:min(1000px,92vw);max-height:88vh;text-align:center}.bht-image-zoom-modal img{display:block;max-width:100%;max-height:80vh;margin:auto;border-radius:18px;box-shadow:0 28px 90px rgba(0,0,0,.38)}.bht-image-zoom-modal figcaption{margin-top:12px;color:#fff;font-size:13px}.bht-image-zoom-modal__close{position:absolute;right:24px;top:24px;width:44px;height:44px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:18px}.bht-modal-open{overflow:hidden}@keyframes bhtCartPulse{0%{box-shadow:0 18px 48px rgba(17,65,45,.1)}50%{box-shadow:0 18px 55px rgba(230,162,3,.25)}100%{box-shadow:0 18px 48px rgba(17,65,45,.1)}}
@media(max-width:1399.98px){.bht-service-grid{gap:15px}.bht-engine-card__image{height:168px!important}.bht-cart-summary{padding:17px!important}.bht-mini-cart-edit{grid-template-columns:minmax(0,1fr) 54px 54px 31px}}
@media(max-width:1199.98px){.bht-cart-summary{position:static!important}.bht-cart-summary__items{max-height:none}.bht-engine-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:991.98px){.bht-engine-tabs{grid-template-columns:1fr!important}.bht-engine-tab{grid-template-columns:42px minmax(0,1fr) auto}.bht-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767.98px){.bht-service-grid{grid-template-columns:1fr}.bht-engine-card__image{height:190px!important}.bht-engine-fields{grid-template-columns:minmax(0,1.3fr) minmax(66px,.7fr) minmax(66px,.7fr)}.bht-booking-toast{right:16px;bottom:16px}.bht-image-zoom-modal{padding:18px}.bht-image-zoom-modal__close{right:14px;top:14px}}
@media(max-width:479.98px){.bht-engine-fields{grid-template-columns:1fr 1fr}.bht-field--date,.bht-field--wide{grid-column:1/-1}.bht-mini-cart-edit{grid-template-columns:1fr 1fr 1fr 32px}.bht-mini-cart-edit__date{grid-column:1/3}.bht-engine-card__action{align-items:flex-end}.bht-engine-price strong{font-size:14px!important}}
/* BHT_BOOKING_ONE_PAGE_V2_END */

/* BHT_BOOKING_COMMERCE_CUSTOMER_PORTAL_V3_BEGIN */
:root{--bht-green:#08783f;--bht-green-dark:#075d34;--bht-orange:#e6a203;--bht-ink:#17352a;--bht-muted:#6b7c74;--bht-line:#dfe9e3;--bht-soft:#f5f8f6;--bht-shadow:0 18px 55px rgba(12,67,43,.10)}
body:not(.homepage){background:#fff;color:var(--bht-ink)}
.bht-inner-breadcrumb,.bht-booking-breadcrumb{position:relative;background-position:center;background-size:cover}.bht-inner-breadcrumb:before,.bht-booking-breadcrumb:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,48,28,.82),rgba(5,48,28,.36))}.bht-inner-breadcrumb .container,.bht-booking-breadcrumb .container{position:relative}
.bht-header-commerce-actions{display:flex;align-items:center;gap:8px;margin-right:10px}.bht-header-commerce-link{width:42px;height:42px;border:1px solid rgba(8,120,63,.18);border-radius:50%;display:grid;place-items:center;position:relative;color:var(--bht-green);background:#fff;transition:.25s}.bht-header-commerce-link:hover{background:var(--bht-green);color:#fff;transform:translateY(-2px)}.bht-header-commerce-count{position:absolute;top:-5px;right:-3px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--bht-orange);color:#17352a;font-size:11px;font-weight:800;display:grid;place-items:center;border:2px solid #fff}
.bht-commerce-checkout,.bht-account-page,.bht-account-auth-page,.bht-catalog-page,.bht-service-detail-page,.bht-destination-list-page,.bht-destination-detail,.bht-gallery-page-content,.bht-travel-guide-list,.bht-guide-detail,.bht-faq-page-content,.bht-pricing-page-content{background:linear-gradient(180deg,#fff 0,#f8fbf9 100%)}
.bht-returning-customer{display:flex;align-items:center;gap:12px;background:#fff7df;border:1px solid rgba(230,162,3,.3);padding:16px 20px;border-radius:14px;margin-bottom:24px}.bht-returning-customer i{color:var(--bht-orange);font-size:24px}.bht-returning-customer a{font-weight:800;color:var(--bht-green)}
.bht-commerce-card,.bht-commerce-order-review,.bht-account-panel,.bht-account-welcome,.bht-invoice-sheet,.bht-account-auth-card,.bht-destination-cta,.bht-guide-sidebar,.bht-detail-booking-card{background:#fff;border:1px solid var(--bht-line);border-radius:22px;box-shadow:var(--bht-shadow)}.bht-commerce-card{padding:28px}.bht-checkout-step-heading{display:flex;gap:15px;align-items:center;margin-bottom:24px}.bht-checkout-step-heading>span{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--bht-green);color:#fff;font-weight:800}.bht-checkout-step-heading small{display:block;text-transform:uppercase;letter-spacing:.12em;color:var(--bht-orange);font-weight:800}.bht-checkout-step-heading h2{font-size:25px;margin:2px 0 0}
.bht-checkout-mode-grid,.bht-payment-method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.bht-checkout-mode,.bht-payment-method{position:relative;display:flex;align-items:flex-start;gap:14px;padding:18px;border:1px solid var(--bht-line);border-radius:16px;cursor:pointer;transition:.25s;background:#fff}.bht-checkout-mode:hover,.bht-payment-method:hover,.bht-checkout-mode.is-selected,.bht-payment-method.is-selected{border-color:var(--bht-green);box-shadow:0 10px 25px rgba(8,120,63,.09);transform:translateY(-2px)}.bht-checkout-mode>input,.bht-payment-method>input{position:absolute;opacity:0}.bht-checkout-mode>i,.bht-payment-method__icon{width:42px;height:42px;border-radius:13px;background:#edf7f1;color:var(--bht-green);display:grid;place-items:center;font-size:19px;flex:none}.bht-checkout-mode strong,.bht-payment-method strong{display:block;color:var(--bht-ink)}.bht-checkout-mode p,.bht-payment-method small{display:block;margin:4px 25px 0 0;color:var(--bht-muted);font-size:13px;line-height:1.55}.bht-mode-check{position:absolute;top:12px;right:12px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#e8efeb;color:transparent;font-size:11px}.is-selected>.bht-mode-check{background:var(--bht-orange);color:#18372b}.bht-guest-manual-notice,.bht-payment-security,.bht-quote-warning,.bht-secure-access-banner,.bht-success-account-note{display:flex;align-items:flex-start;gap:12px;padding:15px 17px;border-radius:14px;background:#f0f8f4;border:1px solid #d7ebdf;color:var(--bht-ink)}.bht-guest-manual-notice{margin-bottom:20px}.bht-payment-security{margin-top:18px}.bht-honeypot{position:absolute!important;left:-10000px!important}
.bht-commerce-order-review{padding:25px;position:sticky;top:112px}.bht-commerce-order-review h3{font-size:24px}.bht-commerce-review-items article,.bht-success-items article{display:flex;justify-content:space-between;gap:16px;padding:15px 0;border-bottom:1px solid var(--bht-line)}.bht-commerce-review-items article>div{display:grid;gap:4px}.bht-commerce-review-items small,.bht-commerce-review-items span{font-size:12px;color:var(--bht-muted)}.bht-commerce-total-row{display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--bht-line)}.bht-commerce-total-row.is-grand{font-size:20px;border:0}.bht-commerce-order-review .th-btn{width:100%}.bht-commerce-order-review .bht-review-note{text-align:center;font-size:12px;color:var(--bht-muted);margin-top:12px}
.bht-account-auth-card{max-width:560px;margin:auto;padding:34px}.bht-auth-links{display:flex;justify-content:space-between;gap:15px;margin-top:18px;font-size:14px}.bht-token-error-icon,.bht-success-icon{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;margin:0 auto 20px;background:#eaf7ef;color:var(--bht-green);font-size:33px}.bht-account-nav{background:#0b5f38;color:#fff;border-radius:22px;padding:18px;position:sticky;top:112px}.bht-account-nav__profile{display:flex;gap:12px;align-items:center;padding:12px 10px 20px;border-bottom:1px solid rgba(255,255,255,.15);margin-bottom:12px}.bht-account-nav__profile i{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12)}.bht-account-nav__profile strong,.bht-account-nav__profile span{display:block}.bht-account-nav__profile span{font-size:12px;opacity:.72}.bht-account-nav a{display:flex;align-items:center;gap:11px;color:#fff;padding:12px;border-radius:12px;margin:3px 0}.bht-account-nav a:hover,.bht-account-nav a.active{background:rgba(255,255,255,.13);color:#fff}.bht-account-nav a:last-child{color:#ffd883}.bht-account-welcome{padding:28px;display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:22px}.bht-account-welcome h1{font-size:32px;margin:2px 0}.bht-account-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.bht-account-stat-grid article{display:flex;gap:13px;align-items:center;background:#fff;border:1px solid var(--bht-line);border-radius:17px;padding:18px}.bht-account-stat-grid i{font-size:23px;color:var(--bht-orange)}.bht-account-stat-grid strong,.bht-account-stat-grid span{display:block}.bht-account-stat-grid strong{font-size:23px}.bht-account-stat-grid span{font-size:12px;color:var(--bht-muted)}.bht-account-panel{padding:27px}.bht-account-panel__heading,.bht-booking-detail-head,.bht-invoice-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.bht-booking-history-list>a,.bht-payment-history article{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:15px 0;border-bottom:1px solid var(--bht-line);color:var(--bht-ink)}.bht-booking-history-list a span{display:block;color:var(--bht-muted);font-size:13px}.bht-status-pill,.bht-payment-pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eef6f1;color:var(--bht-green);font-size:11px;font-weight:800;margin:2px}.bht-payment-pill{background:#fff4d3;color:#8a6200}.bht-booking-meta-grid,.bht-booking-finance-summary,.bht-invoice-party-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.bht-booking-meta-grid>div,.bht-booking-finance-summary>div,.bht-invoice-party-grid>div{padding:15px;background:var(--bht-soft);border-radius:14px}.bht-booking-meta-grid small,.bht-booking-meta-grid strong,.bht-booking-meta-grid span,.bht-booking-finance-summary small,.bht-booking-finance-summary strong,.bht-booking-finance-summary span{display:block}.bht-booking-meta-grid span,.bht-booking-finance-summary span{font-size:12px;color:var(--bht-muted)}.bht-booking-detail-items article{display:grid;grid-template-columns:70px 1fr auto;gap:14px;align-items:center;padding:15px 0;border-bottom:1px solid var(--bht-line)}.bht-booking-detail-item__image img{width:70px;height:60px;object-fit:cover;border-radius:12px}.bht-account-actions,.bht-success-actions,.bht-error-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:22px}.bht-invoice-sheet{padding:34px}.bht-invoice-table th{background:#f0f7f3}.bht-invoice-totals{margin-left:auto;max-width:390px}.bht-invoice-totals>div{display:flex;justify-content:space-between;padding:9px 0}.bht-invoice-totals .is-grand,.bht-invoice-totals .is-balance{font-size:19px;font-weight:800;border-top:1px solid var(--bht-line)}.bht-proof-upload{display:flex;gap:12px;align-items:end;background:var(--bht-soft);padding:15px;border-radius:14px}.bht-proof-upload label{flex:1}.bht-payment-history article small{display:block;color:var(--bht-muted)}.bht-saved-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.bht-saved-grid article{border:1px solid var(--bht-line);border-radius:17px;overflow:hidden}.bht-saved-grid img{width:100%;height:150px;object-fit:cover}.bht-saved-grid article>div{padding:15px}.bht-empty-state{text-align:center;padding:38px}.bht-empty-state>i{font-size:40px;color:var(--bht-orange)}
.bht-success-shell{max-width:900px;margin:auto;text-align:center;background:#fff;border:1px solid var(--bht-line);box-shadow:var(--bht-shadow);border-radius:28px;padding:45px}.bht-success-reference-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:28px 0}.bht-success-reference-grid>div{background:var(--bht-soft);padding:16px;border-radius:15px}.bht-success-reference-grid small,.bht-success-reference-grid strong{display:block}.bht-success-account-note{text-align:left;margin-top:22px}.bht-success-actions{justify-content:center}
.bht-catalog-filter{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:-15px 0 34px}.bht-catalog-filter a{padding:9px 17px;border-radius:999px;border:1px solid var(--bht-line);font-weight:700;color:var(--bht-ink)}.bht-catalog-filter a.active,.bht-catalog-filter a:hover{background:var(--bht-green);color:#fff}.bht-public-service-card{height:100%;background:#fff;border:1px solid var(--bht-line);border-radius:20px;overflow:hidden;transition:.3s;box-shadow:0 10px 30px rgba(12,67,43,.06)}.bht-public-service-card:hover{transform:translateY(-7px);box-shadow:var(--bht-shadow)}.bht-public-service-card__image{display:block;position:relative;overflow:hidden}.bht-public-service-card__image img{width:100%;height:220px;object-fit:cover;transition:.5s}.bht-public-service-card:hover img{transform:scale(1.05)}.bht-public-service-card__image>span{position:absolute;right:16px;bottom:16px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--bht-green)}.bht-public-service-card__body{padding:20px}.bht-card-kicker{display:flex;justify-content:space-between;gap:10px;color:var(--bht-orange);font-size:12px;font-weight:800;text-transform:uppercase}.bht-card-kicker small{color:var(--bht-muted)}.bht-public-service-card h3{font-size:21px;margin:10px 0}.bht-public-service-card p{color:var(--bht-muted);font-size:14px;min-height:66px}.bht-public-service-card__footer{display:flex;justify-content:space-between;align-items:end;gap:12px}.bht-public-service-card__footer small,.bht-public-service-card__footer strong,.bht-public-service-card__footer span{display:block}.bht-public-service-card__footer span{font-size:11px;color:var(--bht-muted)}.bht-compact-cta{padding:11px 15px!important;min-width:auto!important}
.bht-detail-hero{display:block;width:100%;border:0;background:none;padding:0;position:relative;border-radius:24px;overflow:hidden}.bht-detail-hero img{width:100%;height:510px;object-fit:cover}.bht-detail-hero span{position:absolute;right:18px;bottom:18px;background:rgba(255,255,255,.94);padding:10px 15px;border-radius:999px;font-weight:700;color:var(--bht-green)}.bht-detail-copy{padding-top:30px}.bht-detail-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:24px 0}.bht-detail-feature-grid>div{background:var(--bht-soft);border-radius:15px;padding:17px}.bht-detail-feature-grid i,.bht-detail-feature-grid small,.bht-detail-feature-grid strong{display:block}.bht-detail-feature-grid i{color:var(--bht-orange);font-size:21px}.bht-detail-feature-grid small{color:var(--bht-muted);margin-top:7px}.bht-detail-booking-card{padding:26px;position:sticky;top:112px}.bht-detail-booking-card h2{font-size:29px}.bht-detail-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:17px}.bht-detail-trust span{text-align:center;font-size:11px;color:var(--bht-muted)}.bht-detail-trust i{display:block;color:var(--bht-green);font-size:18px;margin-bottom:5px}.bht-related-services{margin-top:70px}.bht-related-mini{display:block;border-radius:17px;overflow:hidden;background:#fff;border:1px solid var(--bht-line);color:var(--bht-ink)}.bht-related-mini img{width:100%;height:145px;object-fit:cover}.bht-related-mini span{display:block;padding:13px;font-weight:800}.bht-image-zoom{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.88);display:grid;place-items:center;padding:30px}.bht-image-zoom[hidden]{display:none}.bht-image-zoom img{max-width:min(1150px,92vw);max-height:88vh;border-radius:15px}.bht-image-zoom button{position:absolute;top:22px;right:22px;width:46px;height:46px;border:0;border-radius:50%;background:#fff}.bht-modal-open{overflow:hidden}
.bht-destination-list-card{display:block;position:relative;border-radius:22px;overflow:hidden;height:430px}.bht-destination-list-card img{width:100%;height:100%;object-fit:cover;transition:.5s}.bht-destination-list-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(3,38,22,.86))}.bht-destination-list-card>span{position:absolute;left:22px;right:22px;bottom:22px;z-index:2;color:#fff}.bht-destination-list-card small,.bht-destination-list-card strong{display:block}.bht-destination-list-card strong{font-size:26px}.bht-destination-list-card i{position:absolute;right:0;bottom:5px}.bht-destination-list-card:hover img{transform:scale(1.06)}.bht-destination-detail__image{width:100%;height:500px;object-fit:cover;border-radius:24px;margin-bottom:25px}.bht-destination-cta{padding:28px;position:sticky;top:112px}.bht-destination-cta>i{font-size:43px;color:var(--bht-orange)}
.bht-gallery-masonry{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:14px}.bht-gallery-masonry>a{position:relative;overflow:hidden;border-radius:18px}.bht-gallery-masonry .is-wide{grid-column:span 2}.bht-gallery-masonry img{width:100%;height:100%;object-fit:cover;transition:.5s}.bht-gallery-masonry a:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(4,43,25,.78));opacity:.6}.bht-gallery-masonry a>span{position:absolute;z-index:2;left:16px;right:16px;bottom:14px;color:#fff}.bht-gallery-masonry a>span i{margin-right:8px}.bht-gallery-masonry a:hover img{transform:scale(1.06)}
.bht-guide-card{height:100%;background:#fff;border:1px solid var(--bht-line);border-radius:19px;overflow:hidden}.bht-guide-card img{width:100%;height:220px;object-fit:cover}.bht-guide-card>div{padding:20px}.bht-guide-card>div>span{font-size:12px;color:var(--bht-orange);font-weight:800}.bht-guide-card h3{font-size:21px;margin:10px 0}.bht-guide-card p{color:var(--bht-muted)}.bht-guide-article{background:#fff;border:1px solid var(--bht-line);border-radius:22px;padding:25px}.bht-guide-article__hero{width:100%;height:430px;object-fit:cover;border-radius:17px}.bht-guide-meta{display:flex;gap:15px;color:var(--bht-muted);font-size:13px;margin:18px 0}.bht-rich-content img{max-width:100%;height:auto}.bht-rich-content p{line-height:1.8}.bht-guide-sidebar{padding:25px;position:sticky;top:112px}.bht-guide-related{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--bht-line);font-weight:700}
.bht-faq-contact{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid var(--bht-line);border-radius:17px;background:#fff;margin-top:25px}.bht-faq-contact>i{font-size:30px;color:var(--bht-orange)}.bht-faq-contact p{margin:0}.bht-faq-contact .th-btn{margin-left:auto}.bht-faq-accordion .accordion-card{border:1px solid var(--bht-line);border-radius:16px;overflow:hidden;margin-bottom:12px;background:#fff}.bht-faq-accordion .accordion-button{font-weight:800;font-size:17px;padding:19px;background:#fff}.bht-faq-accordion .accordion-body{padding:0 19px 19px;color:var(--bht-muted)}
.bht-pricing-card{height:100%;background:#fff;border:1px solid var(--bht-line);border-radius:22px;padding:24px;box-shadow:0 12px 35px rgba(12,67,43,.06)}.bht-pricing-card__head{display:flex;gap:13px;align-items:center;padding-bottom:17px;border-bottom:1px solid var(--bht-line)}.bht-pricing-card__head>i{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#fff4d3;color:#8a6200;font-size:21px}.bht-pricing-card__head small,.bht-pricing-card__head h3{display:block;margin:0}.bht-pricing-card ul{list-style:none;padding:0;margin:17px 0}.bht-pricing-card li a{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--bht-line);color:var(--bht-ink)}.bht-pricing-card li span strong,.bht-pricing-card li span small{display:block}.bht-pricing-card li small{color:var(--bht-muted)}
.bht-error-page{min-height:100vh;background:radial-gradient(circle at 75% 20%,rgba(230,162,3,.16),transparent 32%),linear-gradient(135deg,#edf7f1,#fff);display:grid;place-items:center}.bht-error-shell{max-width:760px;text-align:center;padding:45px}.bht-error-logo img{width:170px;height:auto;border-radius:12px}.bht-error-code{font-size:150px;line-height:1;font-weight:900;color:transparent;-webkit-text-stroke:3px var(--bht-green);margin:20px 0 0}.bht-error-shell h1{font-size:42px}.bht-error-actions{justify-content:center}.bht-error-shell nav{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:30px}.bht-error-shell nav a{font-weight:700;color:var(--bht-green)}
@media(max-width:1199px){.bht-commerce-order-review,.bht-detail-booking-card,.bht-destination-cta,.bht-guide-sidebar,.bht-account-nav{position:static}.bht-account-stat-grid,.bht-success-reference-grid{grid-template-columns:repeat(2,1fr)}.bht-gallery-masonry{grid-template-columns:repeat(3,1fr)}}
@media(max-width:767px){.bht-checkout-mode-grid,.bht-payment-method-grid,.bht-detail-feature-grid,.bht-booking-meta-grid,.bht-booking-finance-summary,.bht-invoice-party-grid,.bht-saved-grid{grid-template-columns:1fr}.bht-commerce-card,.bht-commerce-order-review,.bht-account-panel,.bht-invoice-sheet,.bht-success-shell{padding:20px}.bht-account-welcome,.bht-account-panel__heading,.bht-booking-detail-head,.bht-invoice-head{display:block}.bht-account-welcome .th-btn{margin-top:14px}.bht-account-stat-grid,.bht-success-reference-grid{grid-template-columns:1fr 1fr}.bht-public-service-card__image img{height:190px}.bht-detail-hero img,.bht-destination-detail__image,.bht-guide-article__hero{height:300px}.bht-gallery-masonry{grid-template-columns:1fr 1fr;grid-auto-rows:180px}.bht-gallery-masonry .is-wide{grid-column:span 2}.bht-detail-trust{grid-template-columns:1fr}.bht-proof-upload{display:block}.bht-proof-upload .th-btn{margin-top:10px}.bht-error-code{font-size:105px}.bht-error-shell h1{font-size:30px}.bht-header-commerce-actions{display:none}}
@media(max-width:480px){.bht-account-stat-grid,.bht-success-reference-grid,.bht-gallery-masonry{grid-template-columns:1fr}.bht-gallery-masonry .is-wide{grid-column:span 1}.bht-booking-detail-items article{grid-template-columns:55px 1fr}.bht-booking-detail-items article>strong{grid-column:2}.bht-faq-contact{display:block}.bht-faq-contact .th-btn{margin-top:12px}.bht-checkout-step-heading h2{font-size:21px}}
/* BHT_BOOKING_COMMERCE_CUSTOMER_PORTAL_V3_LOGOUT_FIX */
.bht-account-logout{margin:0}.bht-account-logout button{width:100%;border:0;background:transparent;color:#ffd883;display:flex;align-items:center;gap:11px;padding:12px;border-radius:12px;text-align:left}.bht-account-logout button:hover{background:rgba(255,255,255,.13)}
@media(max-width:767px){.header-layout1 .bht-header-commerce-actions{display:none}.th-menu-area .bht-header-commerce-actions{display:flex;justify-content:center;margin:12px 0 20px}}
.bht-header-button-commerce{display:flex;align-items:center;gap:10px}
/* BHT_BOOKING_COMMERCE_CUSTOMER_PORTAL_V3_END */

/* BHT_ABOUT_PAGE_V1_BEGIN */
.bht-about-page-main {
    overflow: hidden;
}

.bht-about-breadcrumb {
    min-height: 430px;
    display: flex;
    align-items: center;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.bht-about-breadcrumb .breadcumb-content {
    max-width: 760px;
}

.bht-about-breadcrumb .breadcumb-title,
.bht-about-breadcrumb .breadcumb-menu,
.bht-about-breadcrumb .breadcumb-menu a {
    color: #fff;
}

.bht-about-breadcrumb-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    color: #f2a900;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bht-about-breadcrumb-kicker::before {
    width: 42px;
    height: 2px;
    background: currentColor;
    content: "";
}

.bht-about-intro {
    background:
        radial-gradient(circle at 8% 18%, rgba(242, 169, 0, .10), transparent 22%),
        linear-gradient(180deg, #fff, #fbfdfb);
}

.bht-about-collage {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 22px;
    min-height: 620px;
}

.bht-about-collage .global-img {
    overflow: hidden;
    box-shadow: 0 22px 60px rgba(9, 48, 32, .14);
}

.bht-about-collage .global-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-about-collage-main {
    grid-row: 1 / span 2;
    border-radius: 160px 32px 32px 32px;
}

.bht-about-collage-top {
    border-radius: 32px 140px 32px 32px;
}

.bht-about-collage-bottom {
    border-radius: 32px 32px 140px 32px;
}

.bht-about-collage-accent {
    position: absolute;
    top: 50%;
    left: calc(52.5% - 14px);
    width: 28px;
    height: 28px;
    border: 7px solid #fff;
    border-radius: 50%;
    background: #f2a900;
    box-shadow: 0 8px 20px rgba(9, 48, 32, .20);
    transform: translate(-50%, -50%);
    z-index: 3;
}

.bht-about-lead {
    margin-bottom: 30px;
    color: #4f5f57;
    font-size: 1.08rem;
    line-height: 1.85;
}

.bht-about-feature-list {
    display: grid;
    gap: 18px;
}

.bht-about-feature {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    align-items: start;
    gap: 18px;
    margin: 0;
    padding: 18px 20px;
    border: 1px solid rgba(12, 71, 47, .10);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(12, 71, 47, .07);
}

.bht-about-feature-icon {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border-radius: 18px;
    background: rgba(14, 92, 60, .10);
    color: #0e5c3c;
    font-size: 24px;
}

.bht-about-feature .box-title {
    margin: 0 0 6px;
    font-size: 19px;
}

.bht-about-feature .about-item_text {
    margin: 0;
    line-height: 1.65;
}

.bht-about-story-section {
    position: relative;
    background:
        linear-gradient(135deg, rgba(8, 47, 31, .98), rgba(15, 92, 60, .95)),
        url("../vendor/img/bg/team_bg_2.jpg") center/cover;
    color: #fff;
}

.bht-about-story-section .sec-title,
.bht-about-story-section .sub-title,
.bht-about-story-section p {
    color: #fff;
}

.bht-about-story-image {
    position: relative;
    overflow: visible;
    max-width: 500px;
    margin-inline: auto;
}

.bht-about-story-image img {
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    border: 10px solid rgba(255, 255, 255, .12);
    border-radius: 44px 140px 44px 44px;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .28);
}

.bht-about-story-badge {
    position: absolute;
    right: -18px;
    bottom: 34px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 18px;
    border-radius: 999px;
    background: #f2a900;
    color: #173326;
    font-weight: 800;
    box-shadow: 0 16px 34px rgba(0, 0, 0, .22);
}

.bht-about-story-copy {
    padding-left: clamp(0px, 4vw, 50px);
}

.bht-about-story-copy p {
    margin-bottom: 18px;
    color: rgba(255, 255, 255, .84);
    font-size: 1.02rem;
    line-height: 1.85;
}

.bht-about-story-signature {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 34px;
}

.bht-about-signature-line {
    width: 66px;
    height: 3px;
    border-radius: 999px;
    background: #f2a900;
}

.bht-about-story-signature strong,
.bht-about-story-signature small {
    display: block;
}

.bht-about-story-signature small {
    margin-top: 3px;
    color: rgba(255, 255, 255, .70);
}

.bht-about-section-intro {
    max-width: 760px;
    color: #637168;
    line-height: 1.8;
}

.bht-about-services {
    background: #f7faf8;
}

.bht-about-service-card {
    position: relative;
    overflow: hidden;
    padding: 34px 28px 30px;
    border: 1px solid rgba(12, 71, 47, .10);
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 16px 44px rgba(12, 71, 47, .08);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.bht-about-service-card::after {
    position: absolute;
    right: -42px;
    bottom: -50px;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background: rgba(242, 169, 0, .10);
    content: "";
    transition: transform .25s ease;
}

.bht-about-service-card:hover {
    border-color: rgba(242, 169, 0, .50);
    box-shadow: 0 24px 60px rgba(12, 71, 47, .14);
    transform: translateY(-6px);
}

.bht-about-service-card:hover::after {
    transform: scale(1.16);
}

.bht-about-service-icon {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 72px;
    height: 72px;
    margin-bottom: 24px;
    border-radius: 22px;
    background: #0e5c3c;
    color: #fff;
    font-size: 28px;
    box-shadow: 0 14px 28px rgba(14, 92, 60, .20);
}

.bht-about-service-card .destination-content {
    position: relative;
    z-index: 1;
    padding: 0;
}

.bht-about-service-card .box-title {
    margin-bottom: 12px;
    font-size: 22px;
    line-height: 1.35;
}

.bht-about-service-card .destination-text {
    min-height: 88px;
    margin-bottom: 22px;
    color: #65746b;
    line-height: 1.7;
}

.bht-about-gallery-section {
    padding-top: 100px;
    background: #fff;
}

.bht-about-gallery-slider {
    padding: 10px 0 50px;
}

.bht-about-gallery-card {
    position: relative;
    display: block;
    overflow: hidden;
    height: 430px;
    border-radius: 30px;
    box-shadow: 0 18px 48px rgba(9, 48, 32, .14);
}

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

.bht-about-gallery-card::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 48%, rgba(7, 40, 27, .72));
    content: "";
}

.bht-about-gallery-card:hover img {
    transform: scale(1.06);
}

.bht-about-gallery-card .gallery-btn {
    position: absolute;
    right: 22px;
    bottom: 22px;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #fff;
    color: #0e5c3c;
}

.bht-about-gallery-slider .slider-pagination {
    margin-top: 28px;
}

.bht-about-cta-section {
    background: #fff;
}

.bht-about-cta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 34px;
    padding: clamp(34px, 5vw, 64px);
    border-radius: 34px;
    background:
        radial-gradient(circle at 88% 20%, rgba(242, 169, 0, .25), transparent 24%),
        linear-gradient(135deg, #0a4c32, #0e5c3c);
    color: #fff;
    box-shadow: 0 24px 70px rgba(9, 48, 32, .22);
}

.bht-about-cta h2 {
    max-width: 760px;
    margin: 6px 0 14px;
    color: #fff;
    font-size: clamp(2rem, 4vw, 3.4rem);
    line-height: 1.12;
}

.bht-about-cta p {
    max-width: 780px;
    margin: 0;
    color: rgba(255, 255, 255, .82);
    font-size: 1.04rem;
    line-height: 1.75;
}

.bht-about-cta-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 14px;
}

.bht-about-cta-secondary {
    border: 1px solid rgba(255, 255, 255, .42);
    background: transparent;
    color: #fff;
}

.bht-about-cta-secondary:hover {
    background: #fff;
    color: #0e5c3c;
}

@media (max-width: 1199.98px) {
    .bht-about-collage {
        max-width: 820px;
        min-height: 560px;
        margin-inline: auto;
    }

    .bht-about-story-copy {
        padding-left: 0;
    }
}

@media (max-width: 991.98px) {
    .bht-about-breadcrumb {
        min-height: 360px;
    }

    .bht-about-story-image {
        max-width: 560px;
    }

    .bht-about-cta {
        grid-template-columns: 1fr;
    }

    .bht-about-cta-actions {
        justify-content: flex-start;
    }
}

@media (max-width: 767.98px) {
    .bht-about-breadcrumb {
        min-height: 320px;
    }

    .bht-about-collage {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 340px 220px;
        min-height: 0;
        gap: 14px;
    }

    .bht-about-collage-main {
        grid-column: 1 / span 2;
        grid-row: 1;
        border-radius: 100px 24px 24px 24px;
    }

    .bht-about-collage-top {
        grid-column: 1;
        grid-row: 2;
        border-radius: 24px 24px 24px 70px;
    }

    .bht-about-collage-bottom {
        grid-column: 2;
        grid-row: 2;
        border-radius: 24px 24px 70px 24px;
    }

    .bht-about-collage-accent {
        top: 340px;
        left: 50%;
    }

    .bht-about-feature {
        grid-template-columns: 54px minmax(0, 1fr);
        padding: 16px;
    }

    .bht-about-feature-icon {
        width: 50px;
        height: 50px;
        border-radius: 16px;
        font-size: 21px;
    }

    .bht-about-story-badge {
        right: 12px;
        bottom: 20px;
    }

    .bht-about-gallery-card {
        height: 360px;
        border-radius: 24px;
    }
}

@media (max-width: 575.98px) {
    .bht-about-collage {
        grid-template-rows: 300px 180px;
    }

    .bht-about-collage-accent {
        top: 300px;
    }

    .bht-about-story-image img {
        border-width: 6px;
        border-radius: 30px 90px 30px 30px;
    }

    .bht-about-service-card {
        padding: 28px 22px;
    }

    .bht-about-service-card .destination-text {
        min-height: 0;
    }

    .bht-about-cta {
        padding: 32px 24px;
        border-radius: 26px;
    }

    .bht-about-cta-actions {
        display: grid;
    }

    .bht-about-cta-actions .th-btn {
        width: 100%;
        justify-content: center;
    }
}
/* BHT_ABOUT_PAGE_V1_END */

/* BHT_FULL_DAY_TOUR_10H_V1_BEGIN */
.bht-full-day-tour-10h-page .bht-fd10-breadcrumb {
    position: relative;
    overflow: hidden;
}

.bht-full-day-tour-10h-page .bht-fd10-breadcrumb::before {
    background: linear-gradient(90deg, rgba(5, 37, 25, .88), rgba(5, 37, 25, .42));
}

.bht-fd10-breadcrumb-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    color: #f3a400;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.bht-fd10-breadcrumb-kicker::before {
    width: 26px;
    height: 2px;
    background: currentColor;
    content: "";
}

.bht-fd10-page {
    --bht-fd10-green: #0e432d;
    --bht-fd10-green-dark: #082d20;
    --bht-fd10-orange: #f3a400;
    --bht-fd10-cream: #f7f6ef;
    --bht-fd10-border: rgba(14, 67, 45, .14);
    background: #fff;
}

.bht-fd10-slider {
    position: relative;
}

.bht-fd10-slider .tour-slider-img {
    position: relative;
    display: block;
    height: 540px;
    overflow: hidden;
    border-radius: 26px;
    background: var(--bht-fd10-green-dark);
}

.bht-fd10-slider .tour-slider-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-fd10-slider .bht-fd10-image-action {
    position: absolute;
    right: 22px;
    bottom: 22px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 11px 16px;
    border: 1px solid rgba(255, 255, 255, .42);
    border-radius: 999px;
    color: #fff;
    background: rgba(8, 45, 32, .76);
    backdrop-filter: blur(10px);
    font-size: 13px;
    font-weight: 700;
}

.bht-fd10-thumb-slider .tour-slider-img {
    height: 112px;
    border-radius: 16px;
    cursor: pointer;
    opacity: .72;
    transition: opacity .25s ease, transform .25s ease, box-shadow .25s ease;
}

.bht-fd10-thumb-slider .swiper-slide-thumb-active .tour-slider-img,
.bht-fd10-thumb-slider .tour-slider-img:hover {
    opacity: 1;
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(8, 45, 32, .14);
}

.bht-fd10-slider .slider-arrow {
    top: 43%;
    width: 48px;
    height: 48px;
    border: 0;
    color: #fff;
    background: rgba(8, 45, 32, .82);
}

.bht-fd10-slider .slider-arrow:hover {
    color: #fff;
    background: var(--bht-fd10-orange);
}

.bht-fd10-overview {
    padding-top: 38px;
}

.bht-fd10-overview .page-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}

.bht-fd10-meta-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #567067;
    font-size: 14px;
    font-weight: 700;
}

.bht-fd10-meta-item i {
    color: var(--bht-fd10-orange);
}

.bht-fd10-price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 10px;
    margin: 12px 0 20px;
}

.bht-fd10-price .currency {
    color: var(--bht-fd10-green);
    font-size: clamp(30px, 4vw, 46px);
    font-weight: 800;
}

.bht-fd10-price small {
    color: #6b7f78;
    font-size: 15px;
    font-weight: 700;
}

.bht-fd10-lead {
    max-width: 850px;
    margin-bottom: 30px;
    color: #425c53;
    font-size: 18px;
    line-height: 1.85;
}

.bht-fd10-info-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 0 0 48px;
}

.bht-fd10-info-grid > div {
    min-height: 144px;
    padding: 22px 18px;
    border: 1px solid var(--bht-fd10-border);
    border-radius: 20px;
    background: linear-gradient(180deg, #fff, #f8fbf9);
    box-shadow: 0 12px 35px rgba(8, 45, 32, .06);
}

.bht-fd10-info-grid i {
    display: block;
    margin-bottom: 16px;
    color: var(--bht-fd10-orange);
    font-size: 27px;
}

.bht-fd10-info-grid small {
    display: block;
    margin-bottom: 6px;
    color: #7c8d87;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bht-fd10-info-grid strong {
    display: block;
    color: var(--bht-fd10-green-dark);
    font-size: 15px;
    line-height: 1.45;
}

.bht-fd10-story-block {
    position: relative;
    margin-bottom: 48px;
    padding: 38px;
    overflow: hidden;
    border-radius: 26px;
    background:
        radial-gradient(circle at 100% 0%, rgba(243, 164, 0, .18), transparent 32%),
        linear-gradient(135deg, #f7f6ef, #fff);
}

.bht-fd10-story-block::after {
    position: absolute;
    right: -20px;
    bottom: -62px;
    color: rgba(14, 67, 45, .05);
    content: "BALI";
    font-size: 120px;
    font-weight: 900;
    letter-spacing: -.08em;
}

.bht-fd10-story-block > * {
    position: relative;
    z-index: 1;
}

.bht-fd10-rich-copy {
    color: #4b6259;
    font-size: 16px;
    line-height: 1.9;
}

.bht-fd10-highlights {
    margin-bottom: 48px;
}

.bht-fd10-highlights .checklist ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 24px;
}

.bht-fd10-highlights .checklist li {
    margin: 0;
    padding: 16px 18px 16px 46px;
    border: 1px solid var(--bht-fd10-border);
    border-radius: 15px;
    background: #fff;
}

.bht-fd10-highlights .checklist li::before {
    top: 16px;
    left: 18px;
    color: var(--bht-fd10-orange);
}

.bht-fd10-basic-info {
    margin-bottom: 48px;
    padding: 28px;
    border: 1px solid var(--bht-fd10-border);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(8, 45, 32, .06);
}

.bht-fd10-basic-info .checklist {
    flex: 1;
}

.bht-fd10-basic-info .checklist:first-child li {
    color: #70847c;
    font-weight: 700;
}

.bht-fd10-basic-info .checklist:last-child li {
    color: var(--bht-fd10-green-dark);
    font-weight: 800;
}

.bht-fd10-list-card {
    height: 100%;
    padding: 28px;
    border-radius: 22px;
}

.bht-fd10-list-card.is-included {
    border: 1px solid rgba(14, 67, 45, .18);
    background: #f2f8f4;
}

.bht-fd10-list-card.is-excluded {
    border: 1px solid rgba(169, 82, 53, .18);
    background: #fff7f3;
}

.bht-fd10-list-card__icon {
    display: grid;
    width: 52px;
    height: 52px;
    margin-bottom: 18px;
    place-items: center;
    border-radius: 16px;
    color: #fff;
    background: var(--bht-fd10-green);
    font-size: 23px;
}

.bht-fd10-list-card.is-excluded .bht-fd10-list-card__icon {
    background: #a95235;
}

.bht-fd10-list-card h3 {
    margin-bottom: 17px;
    color: var(--bht-fd10-green-dark);
    font-size: 22px;
}

.bht-fd10-list-card .checklist li {
    margin-bottom: 10px;
}

.bht-fd10-note {
    display: flex;
    gap: 14px;
    margin: 32px 0 56px;
    padding: 20px 22px;
    border-left: 4px solid var(--bht-fd10-orange);
    border-radius: 0 15px 15px 0;
    background: #fff9e8;
}

.bht-fd10-note i {
    margin-top: 3px;
    color: var(--bht-fd10-orange);
    font-size: 21px;
}

.bht-fd10-note p {
    margin: 0;
    color: #5d604f;
    line-height: 1.75;
}

.bht-fd10-timeline {
    position: relative;
    display: grid;
    gap: 18px;
}

.bht-fd10-timeline::before {
    position: absolute;
    top: 28px;
    bottom: 28px;
    left: 27px;
    width: 2px;
    background: linear-gradient(var(--bht-fd10-orange), var(--bht-fd10-green));
    content: "";
}

.bht-fd10-timeline-item {
    position: relative;
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.bht-fd10-timeline-index {
    position: relative;
    z-index: 1;
    display: grid;
    width: 56px;
    height: 56px;
    place-items: center;
    border: 5px solid #fff;
    border-radius: 50%;
    color: #fff;
    background: var(--bht-fd10-green);
    box-shadow: 0 10px 25px rgba(8, 45, 32, .18);
    font-size: 14px;
    font-weight: 900;
}

.bht-fd10-timeline-copy {
    padding: 23px 26px;
    border: 1px solid var(--bht-fd10-border);
    border-radius: 18px;
    background: #fff;
}

.bht-fd10-timeline-copy span {
    display: block;
    margin-bottom: 7px;
    color: var(--bht-fd10-orange);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.bht-fd10-timeline-copy h3 {
    margin-bottom: 8px;
    color: var(--bht-fd10-green-dark);
    font-size: 21px;
}

.bht-fd10-timeline-copy p {
    margin: 0;
    color: #60736c;
    line-height: 1.7;
}

.bht-fd10-sidebar {
    position: sticky;
    top: 125px;
}

.bht-fd10-sidebar .widget {
    border: 1px solid var(--bht-fd10-border);
    border-radius: 24px;
    box-shadow: 0 18px 50px rgba(8, 45, 32, .08);
}

.bht-fd10-booking-card {
    background:
        radial-gradient(circle at 100% 0%, rgba(243, 164, 0, .16), transparent 28%),
        #fff;
}

.bht-fd10-booking-price {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 18px;
    padding: 18px;
    border-radius: 17px;
    background: var(--bht-fd10-green);
}

.bht-fd10-booking-price strong {
    color: #fff;
    font-size: 34px;
    line-height: 1;
}

.bht-fd10-booking-price span {
    color: rgba(255, 255, 255, .76);
    font-size: 13px;
    font-weight: 700;
}

.bht-fd10-route-box {
    margin: 22px 0;
    padding: 17px;
    border-radius: 15px;
    background: var(--bht-fd10-cream);
}

.bht-fd10-route-box small {
    display: block;
    margin-bottom: 7px;
    color: var(--bht-fd10-orange);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.bht-fd10-route-box strong {
    display: block;
    color: var(--bht-fd10-green-dark);
    font-size: 14px;
    line-height: 1.65;
}

.bht-fd10-whatsapp {
    margin-top: 12px;
}

.bht-fd10-whatsapp i {
    margin-right: 8px;
}

.bht-fd10-trust {
    display: grid;
    gap: 8px;
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid var(--bht-fd10-border);
}

.bht-fd10-trust span {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #60736c;
    font-size: 13px;
    font-weight: 700;
}

.bht-fd10-trust i {
    color: var(--bht-fd10-orange);
}

.bht-fd10-poster-card a {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 16px;
}

.bht-fd10-poster-card img {
    width: 100%;
    max-height: 540px;
    object-fit: cover;
    object-position: top;
}

.bht-fd10-poster-card a span {
    position: absolute;
    right: 12px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 12px;
    border-radius: 999px;
    color: #fff;
    background: rgba(8, 45, 32, .84);
    font-size: 12px;
    font-weight: 800;
}

.bht-fd10-help-card {
    color: #fff;
    background:
        linear-gradient(rgba(8, 45, 32, .88), rgba(8, 45, 32, .88)),
        url("../../../../uploads/tour-packages/full-day-tour-10-hours/bht-fd10-handara-gate.webp") center/cover;
}

.bht-fd10-help-card .box-title,
.bht-fd10-help-card p {
    color: #fff;
}

.bht-fd10-help-card p {
    margin-bottom: 22px;
    opacity: .85;
}

.bht-fd10-destinations {
    background:
        radial-gradient(circle at 0% 20%, rgba(243, 164, 0, .08), transparent 24%),
        var(--bht-fd10-cream);
}

.bht-fd10-destination-list {
    display: grid;
    gap: 42px;
}

.bht-fd10-destination {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    align-items: center;
    overflow: hidden;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 22px 60px rgba(8, 45, 32, .09);
}

.bht-fd10-destination.is-reversed {
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
}

.bht-fd10-destination.is-reversed .bht-fd10-destination__image {
    order: 2;
}

.bht-fd10-destination__image,
.bht-fd10-destination__image a {
    position: relative;
    display: block;
    height: 100%;
    min-height: 430px;
}

.bht-fd10-destination__image img {
    width: 100%;
    height: 100%;
    min-height: 430px;
    object-fit: cover;
}

.bht-fd10-destination__image span {
    position: absolute;
    right: 20px;
    bottom: 20px;
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: rgba(8, 45, 32, .82);
}

.bht-fd10-destination__copy {
    padding: clamp(30px, 5vw, 62px);
}

.bht-fd10-destination__copy h3 {
    margin-bottom: 20px;
    color: var(--bht-fd10-green-dark);
    font-size: clamp(28px, 3vw, 42px);
}

.bht-fd10-gallery {
    padding-top: 100px;
}

.bht-fd10-gallery-card .gallery-img {
    height: 310px;
    border-radius: 20px;
}

.bht-fd10-gallery-card .gallery-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-fd10-gallery-card.is-poster .gallery-img {
    height: 430px;
}

.bht-fd10-gallery-card.is-poster .gallery-img img {
    object-position: top;
}

.bht-fd10-final-cta__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding: 45px 50px;
    overflow: hidden;
    border-radius: 28px;
    color: #fff;
    background:
        radial-gradient(circle at 100% 0%, rgba(243, 164, 0, .32), transparent 28%),
        linear-gradient(135deg, var(--bht-fd10-green-dark), var(--bht-fd10-green));
}

.bht-fd10-final-cta__inner h2,
.bht-fd10-final-cta__inner p {
    color: #fff;
}

.bht-fd10-final-cta__inner h2 {
    margin-bottom: 10px;
}

.bht-fd10-final-cta__inner p {
    max-width: 690px;
    margin: 0;
    opacity: .82;
}

@media (max-width: 1199px) {
    .bht-fd10-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bht-fd10-sidebar {
        top: 100px;
    }

    .bht-fd10-slider .tour-slider-img {
        height: 470px;
    }
}

@media (max-width: 991px) {
    .bht-fd10-sidebar {
        position: static;
    }

    .bht-fd10-destination,
    .bht-fd10-destination.is-reversed {
        grid-template-columns: 1fr;
    }

    .bht-fd10-destination.is-reversed .bht-fd10-destination__image {
        order: 0;
    }

    .bht-fd10-destination__image,
    .bht-fd10-destination__image a,
    .bht-fd10-destination__image img {
        min-height: 360px;
    }

    .bht-fd10-final-cta__inner {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 767px) {
    .bht-fd10-slider .tour-slider-img {
        height: 340px;
        border-radius: 20px;
    }

    .bht-fd10-thumb-slider .tour-slider-img {
        height: 85px;
    }

    .bht-fd10-story-block,
    .bht-fd10-basic-info,
    .bht-fd10-list-card {
        padding: 24px;
    }

    .bht-fd10-info-grid,
    .bht-fd10-highlights .checklist ul {
        grid-template-columns: 1fr;
    }

    .bht-fd10-basic-info {
        display: grid;
        grid-template-columns: .8fr 1.2fr;
        gap: 10px;
    }

    .bht-fd10-basic-info .checklist li {
        font-size: 13px;
    }

    .bht-fd10-destination__image,
    .bht-fd10-destination__image a,
    .bht-fd10-destination__image img {
        min-height: 280px;
    }

    .bht-fd10-destination__copy {
        padding: 28px 24px;
    }

    .bht-fd10-final-cta__inner {
        padding: 34px 26px;
    }
}
/* BHT_FULL_DAY_TOUR_10H_V1_END */

/* BHT_FULL_DAY_TOUR_8H_V1_BEGIN */
.bht-full-day-tour-8h-page .bht-fd8-breadcrumb {
    position: relative;
    overflow: hidden;
}

.bht-full-day-tour-8h-page .bht-fd8-breadcrumb::before {
    background: linear-gradient(90deg, rgba(5, 37, 25, .88), rgba(5, 37, 25, .42));
}

.bht-fd8-breadcrumb-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    color: #f3a400;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.bht-fd8-breadcrumb-kicker::before {
    width: 26px;
    height: 2px;
    background: currentColor;
    content: "";
}

.bht-fd8-page {
    --bht-fd8-green: #0e432d;
    --bht-fd8-green-dark: #082d20;
    --bht-fd8-orange: #f3a400;
    --bht-fd8-cream: #f7f6ef;
    --bht-fd8-border: rgba(14, 67, 45, .14);
    background: #fff;
}

.bht-fd8-slider {
    position: relative;
}

.bht-fd8-slider .tour-slider-img {
    position: relative;
    display: block;
    height: 540px;
    overflow: hidden;
    border-radius: 26px;
    background: var(--bht-fd8-green-dark);
}

.bht-fd8-slider .tour-slider-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-fd8-slider .bht-fd8-image-action {
    position: absolute;
    right: 22px;
    bottom: 22px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 11px 16px;
    border: 1px solid rgba(255, 255, 255, .42);
    border-radius: 999px;
    color: #fff;
    background: rgba(8, 45, 32, .76);
    backdrop-filter: blur(10px);
    font-size: 13px;
    font-weight: 700;
}

.bht-fd8-thumb-slider .tour-slider-img {
    height: 112px;
    border-radius: 16px;
    cursor: pointer;
    opacity: .72;
    transition: opacity .25s ease, transform .25s ease, box-shadow .25s ease;
}

.bht-fd8-thumb-slider .swiper-slide-thumb-active .tour-slider-img,
.bht-fd8-thumb-slider .tour-slider-img:hover {
    opacity: 1;
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(8, 45, 32, .14);
}

.bht-fd8-slider .slider-arrow {
    top: 43%;
    width: 48px;
    height: 48px;
    border: 0;
    color: #fff;
    background: rgba(8, 45, 32, .82);
}

.bht-fd8-slider .slider-arrow:hover {
    color: #fff;
    background: var(--bht-fd8-orange);
}

.bht-fd8-overview {
    padding-top: 38px;
}

.bht-fd8-overview .page-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}

.bht-fd8-meta-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #567067;
    font-size: 14px;
    font-weight: 700;
}

.bht-fd8-meta-item i {
    color: var(--bht-fd8-orange);
}

.bht-fd8-price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 10px;
    margin: 12px 0 20px;
}

.bht-fd8-price .currency {
    color: var(--bht-fd8-green);
    font-size: clamp(30px, 4vw, 46px);
    font-weight: 800;
}

.bht-fd8-price small {
    color: #6b7f78;
    font-size: 15px;
    font-weight: 700;
}

.bht-fd8-lead {
    max-width: 850px;
    margin-bottom: 30px;
    color: #425c53;
    font-size: 18px;
    line-height: 1.85;
}

.bht-fd8-info-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 0 0 48px;
}

.bht-fd8-info-grid > div {
    min-height: 144px;
    padding: 22px 18px;
    border: 1px solid var(--bht-fd8-border);
    border-radius: 20px;
    background: linear-gradient(180deg, #fff, #f8fbf9);
    box-shadow: 0 12px 35px rgba(8, 45, 32, .06);
}

.bht-fd8-info-grid i {
    display: block;
    margin-bottom: 16px;
    color: var(--bht-fd8-orange);
    font-size: 27px;
}

.bht-fd8-info-grid small {
    display: block;
    margin-bottom: 6px;
    color: #7c8d87;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bht-fd8-info-grid strong {
    display: block;
    color: var(--bht-fd8-green-dark);
    font-size: 15px;
    line-height: 1.45;
}

.bht-fd8-story-block {
    position: relative;
    margin-bottom: 48px;
    padding: 38px;
    overflow: hidden;
    border-radius: 26px;
    background:
        radial-gradient(circle at 100% 0%, rgba(243, 164, 0, .18), transparent 32%),
        linear-gradient(135deg, #f7f6ef, #fff);
}

.bht-fd8-story-block::after {
    position: absolute;
    right: -20px;
    bottom: -62px;
    color: rgba(14, 67, 45, .05);
    content: "BALI";
    font-size: 120px;
    font-weight: 900;
    letter-spacing: -.08em;
}

.bht-fd8-story-block > * {
    position: relative;
    z-index: 1;
}

.bht-fd8-rich-copy {
    color: #4b6259;
    font-size: 16px;
    line-height: 1.9;
}

.bht-fd8-highlights {
    margin-bottom: 48px;
}

.bht-fd8-highlights .checklist ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 24px;
}

.bht-fd8-highlights .checklist li {
    margin: 0;
    padding: 16px 18px 16px 46px;
    border: 1px solid var(--bht-fd8-border);
    border-radius: 15px;
    background: #fff;
}

.bht-fd8-highlights .checklist li::before {
    top: 16px;
    left: 18px;
    color: var(--bht-fd8-orange);
}

.bht-fd8-basic-info {
    margin-bottom: 48px;
    padding: 28px;
    border: 1px solid var(--bht-fd8-border);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(8, 45, 32, .06);
}

.bht-fd8-basic-info .checklist {
    flex: 1;
}

.bht-fd8-basic-info .checklist:first-child li {
    color: #70847c;
    font-weight: 700;
}

.bht-fd8-basic-info .checklist:last-child li {
    color: var(--bht-fd8-green-dark);
    font-weight: 800;
}

.bht-fd8-list-card {
    height: 100%;
    padding: 28px;
    border-radius: 22px;
}

.bht-fd8-list-card.is-included {
    border: 1px solid rgba(14, 67, 45, .18);
    background: #f2f8f4;
}

.bht-fd8-list-card.is-excluded {
    border: 1px solid rgba(169, 82, 53, .18);
    background: #fff7f3;
}

.bht-fd8-list-card__icon {
    display: grid;
    width: 52px;
    height: 52px;
    margin-bottom: 18px;
    place-items: center;
    border-radius: 16px;
    color: #fff;
    background: var(--bht-fd8-green);
    font-size: 23px;
}

.bht-fd8-list-card.is-excluded .bht-fd8-list-card__icon {
    background: #a95235;
}

.bht-fd8-list-card h3 {
    margin-bottom: 17px;
    color: var(--bht-fd8-green-dark);
    font-size: 22px;
}

.bht-fd8-list-card .checklist li {
    margin-bottom: 10px;
}

.bht-fd8-note {
    display: flex;
    gap: 14px;
    margin: 32px 0 56px;
    padding: 20px 22px;
    border-left: 4px solid var(--bht-fd8-orange);
    border-radius: 0 15px 15px 0;
    background: #fff9e8;
}

.bht-fd8-note i {
    margin-top: 3px;
    color: var(--bht-fd8-orange);
    font-size: 21px;
}

.bht-fd8-note p {
    margin: 0;
    color: #5d604f;
    line-height: 1.75;
}

.bht-fd8-timeline {
    position: relative;
    display: grid;
    gap: 18px;
}

.bht-fd8-timeline::before {
    position: absolute;
    top: 28px;
    bottom: 28px;
    left: 27px;
    width: 2px;
    background: linear-gradient(var(--bht-fd8-orange), var(--bht-fd8-green));
    content: "";
}

.bht-fd8-timeline-item {
    position: relative;
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.bht-fd8-timeline-index {
    position: relative;
    z-index: 1;
    display: grid;
    width: 56px;
    height: 56px;
    place-items: center;
    border: 5px solid #fff;
    border-radius: 50%;
    color: #fff;
    background: var(--bht-fd8-green);
    box-shadow: 0 10px 25px rgba(8, 45, 32, .18);
    font-size: 14px;
    font-weight: 900;
}

.bht-fd8-timeline-copy {
    padding: 23px 26px;
    border: 1px solid var(--bht-fd8-border);
    border-radius: 18px;
    background: #fff;
}

.bht-fd8-timeline-copy span {
    display: block;
    margin-bottom: 7px;
    color: var(--bht-fd8-orange);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.bht-fd8-timeline-copy h3 {
    margin-bottom: 8px;
    color: var(--bht-fd8-green-dark);
    font-size: 21px;
}

.bht-fd8-timeline-copy p {
    margin: 0;
    color: #60736c;
    line-height: 1.7;
}

.bht-fd8-sidebar {
    position: sticky;
    top: 125px;
}

.bht-fd8-sidebar .widget {
    border: 1px solid var(--bht-fd8-border);
    border-radius: 24px;
    box-shadow: 0 18px 50px rgba(8, 45, 32, .08);
}

.bht-fd8-booking-card {
    background:
        radial-gradient(circle at 100% 0%, rgba(243, 164, 0, .16), transparent 28%),
        #fff;
}

.bht-fd8-booking-price {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 18px;
    padding: 18px;
    border-radius: 17px;
    background: var(--bht-fd8-green);
}

.bht-fd8-booking-price strong {
    color: #fff;
    font-size: 34px;
    line-height: 1;
}

.bht-fd8-booking-price span {
    color: rgba(255, 255, 255, .76);
    font-size: 13px;
    font-weight: 700;
}

.bht-fd8-route-box {
    margin: 22px 0;
    padding: 17px;
    border-radius: 15px;
    background: var(--bht-fd8-cream);
}

.bht-fd8-route-box small {
    display: block;
    margin-bottom: 7px;
    color: var(--bht-fd8-orange);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.bht-fd8-route-box strong {
    display: block;
    color: var(--bht-fd8-green-dark);
    font-size: 14px;
    line-height: 1.65;
}

.bht-fd8-whatsapp {
    margin-top: 12px;
}

.bht-fd8-whatsapp i {
    margin-right: 8px;
}

.bht-fd8-trust {
    display: grid;
    gap: 8px;
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid var(--bht-fd8-border);
}

.bht-fd8-trust span {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #60736c;
    font-size: 13px;
    font-weight: 700;
}

.bht-fd8-trust i {
    color: var(--bht-fd8-orange);
}

.bht-fd8-poster-card a {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 16px;
}

.bht-fd8-poster-card img {
    width: 100%;
    max-height: 540px;
    object-fit: cover;
    object-position: top;
}

.bht-fd8-poster-card a span {
    position: absolute;
    right: 12px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 12px;
    border-radius: 999px;
    color: #fff;
    background: rgba(8, 45, 32, .84);
    font-size: 12px;
    font-weight: 800;
}

.bht-fd8-help-card {
    color: #fff;
    background:
        linear-gradient(rgba(8, 45, 32, .88), rgba(8, 45, 32, .88)),
        url("../../../../uploads/tour-packages/full-day-tour-8-hours/bht-fd8-ubud-palace.webp") center/cover;
}

.bht-fd8-help-card .box-title,
.bht-fd8-help-card p {
    color: #fff;
}

.bht-fd8-help-card p {
    margin-bottom: 22px;
    opacity: .85;
}

.bht-fd8-destinations {
    background:
        radial-gradient(circle at 0% 20%, rgba(243, 164, 0, .08), transparent 24%),
        var(--bht-fd8-cream);
}

.bht-fd8-destination-list {
    display: grid;
    gap: 42px;
}

.bht-fd8-destination {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    align-items: center;
    overflow: hidden;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 22px 60px rgba(8, 45, 32, .09);
}

.bht-fd8-destination.is-reversed {
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
}

.bht-fd8-destination.is-reversed .bht-fd8-destination__image {
    order: 2;
}

.bht-fd8-destination__image,
.bht-fd8-destination__image a {
    position: relative;
    display: block;
    height: 100%;
    min-height: 430px;
}

.bht-fd8-destination__image img {
    width: 100%;
    height: 100%;
    min-height: 430px;
    object-fit: cover;
}

.bht-fd8-destination__image span {
    position: absolute;
    right: 20px;
    bottom: 20px;
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: rgba(8, 45, 32, .82);
}

.bht-fd8-destination__copy {
    padding: clamp(30px, 5vw, 62px);
}

.bht-fd8-destination__copy h3 {
    margin-bottom: 20px;
    color: var(--bht-fd8-green-dark);
    font-size: clamp(28px, 3vw, 42px);
}

.bht-fd8-gallery {
    padding-top: 100px;
}

.bht-fd8-gallery-card .gallery-img {
    height: 310px;
    border-radius: 20px;
}

.bht-fd8-gallery-card .gallery-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-fd8-gallery-card.is-poster .gallery-img {
    height: 430px;
}

.bht-fd8-gallery-card.is-poster .gallery-img img {
    object-position: top;
}

.bht-fd8-final-cta__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding: 45px 50px;
    overflow: hidden;
    border-radius: 28px;
    color: #fff;
    background:
        radial-gradient(circle at 100% 0%, rgba(243, 164, 0, .32), transparent 28%),
        linear-gradient(135deg, var(--bht-fd8-green-dark), var(--bht-fd8-green));
}

.bht-fd8-final-cta__inner h2,
.bht-fd8-final-cta__inner p {
    color: #fff;
}

.bht-fd8-final-cta__inner h2 {
    margin-bottom: 10px;
}

.bht-fd8-final-cta__inner p {
    max-width: 690px;
    margin: 0;
    opacity: .82;
}

@media (max-width: 1199px) {
    .bht-fd8-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bht-fd8-sidebar {
        top: 100px;
    }

    .bht-fd8-slider .tour-slider-img {
        height: 470px;
    }
}

@media (max-width: 991px) {
    .bht-fd8-sidebar {
        position: static;
    }

    .bht-fd8-destination,
    .bht-fd8-destination.is-reversed {
        grid-template-columns: 1fr;
    }

    .bht-fd8-destination.is-reversed .bht-fd8-destination__image {
        order: 0;
    }

    .bht-fd8-destination__image,
    .bht-fd8-destination__image a,
    .bht-fd8-destination__image img {
        min-height: 360px;
    }

    .bht-fd8-final-cta__inner {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 767px) {
    .bht-fd8-slider .tour-slider-img {
        height: 340px;
        border-radius: 20px;
    }

    .bht-fd8-thumb-slider .tour-slider-img {
        height: 85px;
    }

    .bht-fd8-story-block,
    .bht-fd8-basic-info,
    .bht-fd8-list-card {
        padding: 24px;
    }

    .bht-fd8-info-grid,
    .bht-fd8-highlights .checklist ul {
        grid-template-columns: 1fr;
    }

    .bht-fd8-basic-info {
        display: grid;
        grid-template-columns: .8fr 1.2fr;
        gap: 10px;
    }

    .bht-fd8-basic-info .checklist li {
        font-size: 13px;
    }

    .bht-fd8-destination__image,
    .bht-fd8-destination__image a,
    .bht-fd8-destination__image img {
        min-height: 280px;
    }

    .bht-fd8-destination__copy {
        padding: 28px 24px;
    }

    .bht-fd8-final-cta__inner {
        padding: 34px 26px;
    }
}
/* BHT_FULL_DAY_TOUR_8H_V1_END */

/* BHT_TOUR_PACKAGE_COLLECTION_V1_BEGIN */
.bht-tour-package-page .bht-tour-package-breadcrumb {
    position: relative;
    overflow: hidden;
}

.bht-tour-package-page .bht-tour-package-breadcrumb::before {
    background: linear-gradient(90deg, rgba(5, 37, 25, .88), rgba(5, 37, 25, .42));
}

.bht-tour-package-breadcrumb-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    color: #f3a400;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.bht-tour-package-breadcrumb-kicker::before {
    width: 26px;
    height: 2px;
    background: currentColor;
    content: "";
}

.bht-tour-package-page {
    --bht-tour-green: #0e432d;
    --bht-tour-green-dark: #082d20;
    --bht-tour-orange: #f3a400;
    --bht-tour-cream: #f7f6ef;
    --bht-tour-border: rgba(14, 67, 45, .14);
    background: #fff;
}

.bht-tour-package-slider {
    position: relative;
}

.bht-tour-package-slider .tour-slider-img {
    position: relative;
    display: block;
    height: 540px;
    overflow: hidden;
    border-radius: 26px;
    background: var(--bht-tour-green-dark);
}

.bht-tour-package-slider .tour-slider-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-tour-package-slider  .bht-tour-package-image-action {
    position: absolute;
    right: 22px;
    bottom: 22px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 11px 16px;
    border: 1px solid rgba(255, 255, 255, .42);
    border-radius: 999px;
    color: #fff;
    background: rgba(8, 45, 32, .76);
    backdrop-filter: blur(10px);
    font-size: 13px;
    font-weight: 700;
}

.bht-tour-package-thumb-slider .tour-slider-img {
    height: 112px;
    border-radius: 16px;
    cursor: pointer;
    opacity: .72;
    transition: opacity .25s ease, transform .25s ease, box-shadow .25s ease;
}

.bht-tour-package-thumb-slider .swiper-slide-thumb-active .tour-slider-img,
.bht-tour-package-thumb-slider .tour-slider-img:hover {
    opacity: 1;
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(8, 45, 32, .14);
}

.bht-tour-package-slider .slider-arrow {
    top: 43%;
    width: 48px;
    height: 48px;
    border: 0;
    color: #fff;
    background: rgba(8, 45, 32, .82);
}

.bht-tour-package-slider .slider-arrow:hover {
    color: #fff;
    background: var(--bht-tour-orange);
}

.bht-tour-package-overview {
    padding-top: 38px;
}

.bht-tour-package-overview .page-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}

.bht-tour-package-meta-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #567067;
    font-size: 14px;
    font-weight: 700;
}

.bht-tour-package-meta-item i {
    color: var(--bht-tour-orange);
}

.bht-tour-package-price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 10px;
    margin: 12px 0 20px;
}

.bht-tour-package-price .currency {
    color: var(--bht-tour-green);
    font-size: clamp(30px, 4vw, 46px);
    font-weight: 800;
}

.bht-tour-package-price small {
    color: #6b7f78;
    font-size: 15px;
    font-weight: 700;
}

.bht-tour-package-lead {
    max-width: 850px;
    margin-bottom: 30px;
    color: #425c53;
    font-size: 18px;
    line-height: 1.85;
}

.bht-tour-package-info-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 0 0 48px;
}

.bht-tour-package-info-grid > div {
    min-height: 144px;
    padding: 22px 18px;
    border: 1px solid var(--bht-tour-border);
    border-radius: 20px;
    background: linear-gradient(180deg, #fff, #f8fbf9);
    box-shadow: 0 12px 35px rgba(8, 45, 32, .06);
}

.bht-tour-package-info-grid i {
    display: block;
    margin-bottom: 16px;
    color: var(--bht-tour-orange);
    font-size: 27px;
}

.bht-tour-package-info-grid small {
    display: block;
    margin-bottom: 6px;
    color: #7c8d87;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bht-tour-package-info-grid strong {
    display: block;
    color: var(--bht-tour-green-dark);
    font-size: 15px;
    line-height: 1.45;
}

.bht-tour-package-story-block {
    position: relative;
    margin-bottom: 48px;
    padding: 38px;
    overflow: hidden;
    border-radius: 26px;
    background:
        radial-gradient(circle at 100% 0%, rgba(243, 164, 0, .18), transparent 32%),
        linear-gradient(135deg, #f7f6ef, #fff);
}

.bht-tour-package-story-block::after {
    position: absolute;
    right: -20px;
    bottom: -62px;
    color: rgba(14, 67, 45, .05);
    content: "BALI";
    font-size: 120px;
    font-weight: 900;
    letter-spacing: -.08em;
}

.bht-tour-package-story-block > * {
    position: relative;
    z-index: 1;
}

.bht-tour-package-rich-copy {
    color: #4b6259;
    font-size: 16px;
    line-height: 1.9;
}

.bht-tour-package-highlights {
    margin-bottom: 48px;
}

.bht-tour-package-highlights .checklist ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 24px;
}

.bht-tour-package-highlights .checklist li {
    margin: 0;
    padding: 16px 18px 16px 46px;
    border: 1px solid var(--bht-tour-border);
    border-radius: 15px;
    background: #fff;
}

.bht-tour-package-highlights .checklist li::before {
    top: 16px;
    left: 18px;
    color: var(--bht-tour-orange);
}

.bht-tour-package-basic-info {
    margin-bottom: 48px;
    padding: 28px;
    border: 1px solid var(--bht-tour-border);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(8, 45, 32, .06);
}

.bht-tour-package-basic-info .checklist {
    flex: 1;
}

.bht-tour-package-basic-info .checklist:first-child li {
    color: #70847c;
    font-weight: 700;
}

.bht-tour-package-basic-info .checklist:last-child li {
    color: var(--bht-tour-green-dark);
    font-weight: 800;
}

.bht-tour-package-list-card {
    height: 100%;
    padding: 28px;
    border-radius: 22px;
}

.bht-tour-package-list-card.is-included {
    border: 1px solid rgba(14, 67, 45, .18);
    background: #f2f8f4;
}

.bht-tour-package-list-card.is-excluded {
    border: 1px solid rgba(169, 82, 53, .18);
    background: #fff7f3;
}

.bht-tour-package-list-card__icon {
    display: grid;
    width: 52px;
    height: 52px;
    margin-bottom: 18px;
    place-items: center;
    border-radius: 16px;
    color: #fff;
    background: var(--bht-tour-green);
    font-size: 23px;
}

.bht-tour-package-list-card.is-excluded  .bht-tour-package-list-card__icon {
    background: #a95235;
}

.bht-tour-package-list-card h3 {
    margin-bottom: 17px;
    color: var(--bht-tour-green-dark);
    font-size: 22px;
}

.bht-tour-package-list-card .checklist li {
    margin-bottom: 10px;
}

.bht-tour-package-note {
    display: flex;
    gap: 14px;
    margin: 32px 0 56px;
    padding: 20px 22px;
    border-left: 4px solid var(--bht-tour-orange);
    border-radius: 0 15px 15px 0;
    background: #fff9e8;
}

.bht-tour-package-note i {
    margin-top: 3px;
    color: var(--bht-tour-orange);
    font-size: 21px;
}

.bht-tour-package-note p {
    margin: 0;
    color: #5d604f;
    line-height: 1.75;
}

.bht-tour-package-timeline {
    position: relative;
    display: grid;
    gap: 18px;
}

.bht-tour-package-timeline::before {
    position: absolute;
    top: 28px;
    bottom: 28px;
    left: 27px;
    width: 2px;
    background: linear-gradient(var(--bht-tour-orange), var(--bht-tour-green));
    content: "";
}

.bht-tour-package-timeline-item {
    position: relative;
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.bht-tour-package-timeline-index {
    position: relative;
    z-index: 1;
    display: grid;
    width: 56px;
    height: 56px;
    place-items: center;
    border: 5px solid #fff;
    border-radius: 50%;
    color: #fff;
    background: var(--bht-tour-green);
    box-shadow: 0 10px 25px rgba(8, 45, 32, .18);
    font-size: 14px;
    font-weight: 900;
}

.bht-tour-package-timeline-copy {
    padding: 23px 26px;
    border: 1px solid var(--bht-tour-border);
    border-radius: 18px;
    background: #fff;
}

.bht-tour-package-timeline-copy span {
    display: block;
    margin-bottom: 7px;
    color: var(--bht-tour-orange);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.bht-tour-package-timeline-copy h3 {
    margin-bottom: 8px;
    color: var(--bht-tour-green-dark);
    font-size: 21px;
}

.bht-tour-package-timeline-copy p {
    margin: 0;
    color: #60736c;
    line-height: 1.7;
}

.bht-tour-package-sidebar {
    position: sticky;
    top: 125px;
}

.bht-tour-package-sidebar .widget {
    border: 1px solid var(--bht-tour-border);
    border-radius: 24px;
    box-shadow: 0 18px 50px rgba(8, 45, 32, .08);
}

.bht-tour-package-booking-card {
    background:
        radial-gradient(circle at 100% 0%, rgba(243, 164, 0, .16), transparent 28%),
        #fff;
}

.bht-tour-package-booking-price {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 18px;
    padding: 18px;
    border-radius: 17px;
    background: var(--bht-tour-green);
}

.bht-tour-package-booking-price strong {
    color: #fff;
    font-size: 34px;
    line-height: 1;
}

.bht-tour-package-booking-price span {
    color: rgba(255, 255, 255, .76);
    font-size: 13px;
    font-weight: 700;
}

.bht-tour-package-route-box {
    margin: 22px 0;
    padding: 17px;
    border-radius: 15px;
    background: var(--bht-tour-cream);
}

.bht-tour-package-route-box small {
    display: block;
    margin-bottom: 7px;
    color: var(--bht-tour-orange);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.bht-tour-package-route-box strong {
    display: block;
    color: var(--bht-tour-green-dark);
    font-size: 14px;
    line-height: 1.65;
}

.bht-tour-package-whatsapp {
    margin-top: 12px;
}

.bht-tour-package-whatsapp i {
    margin-right: 8px;
}

.bht-tour-package-trust {
    display: grid;
    gap: 8px;
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid var(--bht-tour-border);
}

.bht-tour-package-trust span {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #60736c;
    font-size: 13px;
    font-weight: 700;
}

.bht-tour-package-trust i {
    color: var(--bht-tour-orange);
}

.bht-tour-package-poster-card a {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 16px;
}

.bht-tour-package-poster-card img {
    width: 100%;
    max-height: 540px;
    object-fit: cover;
    object-position: top;
}

.bht-tour-package-poster-card a span {
    position: absolute;
    right: 12px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 12px;
    border-radius: 999px;
    color: #fff;
    background: rgba(8, 45, 32, .84);
    font-size: 12px;
    font-weight: 800;
}

.bht-tour-package-help-card {
    color: #fff;
    background:
        linear-gradient(rgba(8, 45, 32, .88), rgba(8, 45, 32, .88)),
        var(--bht-tour-help-image) center/cover;
}

.bht-tour-package-help-card .box-title,
.bht-tour-package-help-card p {
    color: #fff;
}

.bht-tour-package-help-card p {
    margin-bottom: 22px;
    opacity: .85;
}

.bht-tour-package-destinations {
    background:
        radial-gradient(circle at 0% 20%, rgba(243, 164, 0, .08), transparent 24%),
        var(--bht-tour-cream);
}

.bht-tour-package-destination-list {
    display: grid;
    gap: 42px;
}

.bht-tour-package-destination {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    align-items: center;
    overflow: hidden;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 22px 60px rgba(8, 45, 32, .09);
}

.bht-tour-package-destination.is-reversed {
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
}

.bht-tour-package-destination.is-reversed  .bht-tour-package-destination__image {
    order: 2;
}

.bht-tour-package-destination__image,
.bht-tour-package-destination__image a {
    position: relative;
    display: block;
    height: 100%;
    min-height: 430px;
}

.bht-tour-package-destination__image img {
    width: 100%;
    height: 100%;
    min-height: 430px;
    object-fit: cover;
}

.bht-tour-package-destination__image span {
    position: absolute;
    right: 20px;
    bottom: 20px;
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: rgba(8, 45, 32, .82);
}

.bht-tour-package-destination__copy {
    padding: clamp(30px, 5vw, 62px);
}

.bht-tour-package-destination__copy h3 {
    margin-bottom: 20px;
    color: var(--bht-tour-green-dark);
    font-size: clamp(28px, 3vw, 42px);
}

.bht-tour-package-gallery {
    padding-top: 100px;
}

.bht-tour-package-gallery-card .gallery-img {
    height: 310px;
    border-radius: 20px;
}

.bht-tour-package-gallery-card .gallery-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-tour-package-gallery-card.is-poster .gallery-img {
    height: 430px;
}

.bht-tour-package-gallery-card.is-poster .gallery-img img {
    object-position: top;
}

.bht-tour-package-final-cta__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding: 45px 50px;
    overflow: hidden;
    border-radius: 28px;
    color: #fff;
    background:
        radial-gradient(circle at 100% 0%, rgba(243, 164, 0, .32), transparent 28%),
        linear-gradient(135deg, var(--bht-tour-green-dark), var(--bht-tour-green));
}

.bht-tour-package-final-cta__inner h2,
.bht-tour-package-final-cta__inner p {
    color: #fff;
}

.bht-tour-package-final-cta__inner h2 {
    margin-bottom: 10px;
}

.bht-tour-package-final-cta__inner p {
    max-width: 690px;
    margin: 0;
    opacity: .82;
}

@media (max-width: 1199px) {
     .bht-tour-package-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

     .bht-tour-package-sidebar {
        top: 100px;
    }

     .bht-tour-package-slider .tour-slider-img {
        height: 470px;
    }
}

@media (max-width: 991px) {
     .bht-tour-package-sidebar {
        position: static;
    }

     .bht-tour-package-destination,
     .bht-tour-package-destination.is-reversed {
        grid-template-columns: 1fr;
    }

     .bht-tour-package-destination.is-reversed  .bht-tour-package-destination__image {
        order: 0;
    }

     .bht-tour-package-destination__image,
     .bht-tour-package-destination__image a,
     .bht-tour-package-destination__image img {
        min-height: 360px;
    }

     .bht-tour-package-final-cta__inner {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 767px) {
     .bht-tour-package-slider .tour-slider-img {
        height: 340px;
        border-radius: 20px;
    }

     .bht-tour-package-thumb-slider .tour-slider-img {
        height: 85px;
    }

     .bht-tour-package-story-block,
     .bht-tour-package-basic-info,
     .bht-tour-package-list-card {
        padding: 24px;
    }

     .bht-tour-package-info-grid,
     .bht-tour-package-highlights .checklist ul {
        grid-template-columns: 1fr;
    }

     .bht-tour-package-basic-info {
        display: grid;
        grid-template-columns: .8fr 1.2fr;
        gap: 10px;
    }

     .bht-tour-package-basic-info .checklist li {
        font-size: 13px;
    }

     .bht-tour-package-destination__image,
     .bht-tour-package-destination__image a,
     .bht-tour-package-destination__image img {
        min-height: 280px;
    }

     .bht-tour-package-destination__copy {
        padding: 28px 24px;
    }

     .bht-tour-package-final-cta__inner {
        padding: 34px 26px;
    }
}
/* BHT_TOUR_PACKAGE_COLLECTION_V1_END */

/* BHT_TOUR_EXPERIENCE_PAGES_V1_BEGIN */
.bht-tour-discovery-page {
    --bht-deep: #0c3b29;
    --bht-deep-2: #07291d;
    --bht-green: #0f6a42;
    --bht-gold: #eda900;
    --bht-cream: #f5f1e8;
    --bht-ink: #17221d;
    --bht-muted: #66736c;
    --bht-line: rgba(12, 59, 41, .13);
    background: #fff;
    color: var(--bht-ink);
}

.bht-experience-breadcrumb {
    min-height: 430px;
    display: flex;
    align-items: center;
    background-position: center;
    background-size: cover;
    position: relative;
}

.bht-experience-breadcrumb::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .22));
    pointer-events: none;
}

.bht-experience-breadcrumb .container {
    position: relative;
    z-index: 1;
}

.bht-page-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.bht-page-kicker::before {
    content: "";
    width: 38px;
    height: 2px;
    background: var(--bht-gold);
}

.bht-experience-breadcrumb .breadcumb-title,
.bht-experience-breadcrumb .breadcumb-menu,
.bht-experience-breadcrumb .breadcumb-menu a {
    color: #fff;
}

.bht-experience-breadcrumb .breadcumb-title {
    max-width: 920px;
    font-size: clamp(42px, 6vw, 76px);
    line-height: 1.04;
}

.bht-section-intro {
    max-width: 760px;
    color: var(--bht-muted);
    font-size: 17px;
    line-height: 1.75;
}

.bht-wide-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px;
    padding: 52px 58px;
    border-radius: 26px;
    color: #fff;
    background:
        radial-gradient(circle at 88% 18%, rgba(237, 169, 0, .28), transparent 33%),
        linear-gradient(135deg, var(--bht-deep-2), var(--bht-green));
    box-shadow: 0 24px 70px rgba(7, 41, 29, .2);
}

.bht-wide-cta h2 {
    max-width: 780px;
    margin: 4px 0 12px;
    color: #fff;
    font-size: clamp(31px, 4vw, 48px);
}

.bht-wide-cta p {
    max-width: 720px;
    margin: 0;
    color: rgba(255, 255, 255, .78);
    font-size: 17px;
}

/* All tour packages */
.bht-tour-index-intro {
    padding-bottom: 55px;
}

.bht-tour-index-lead {
    max-width: 860px;
    margin-bottom: 12px;
    color: var(--bht-muted);
    font-size: 17px;
    line-height: 1.8;
}

.bht-tour-index-summary {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 25px;
    border: 1px solid var(--bht-line);
    border-radius: 20px;
    background: var(--bht-cream);
}

.bht-tour-index-summary-number {
    display: grid;
    place-items: center;
    width: 74px;
    height: 74px;
    flex: 0 0 74px;
    border-radius: 50%;
    color: #fff;
    background: var(--bht-deep);
    font-family: var(--title-font);
    font-size: 32px;
    font-weight: 800;
}

.bht-tour-index-summary strong {
    display: block;
    margin-bottom: 5px;
    color: var(--bht-deep);
    font-size: 18px;
}

.bht-tour-index-summary p {
    margin: 0;
    color: var(--bht-muted);
    line-height: 1.55;
}

.bht-tour-filter-bar {
    margin-bottom: 35px;
    padding: 18px;
    border: 1px solid var(--bht-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 40px rgba(10, 45, 31, .07);
}

.bht-tour-search {
    position: relative;
    display: block;
}

.bht-tour-search input {
    width: 100%;
    height: 52px;
    padding: 0 48px 0 18px;
    border: 1px solid var(--bht-line);
    border-radius: 12px;
    color: var(--bht-ink);
    background: #f9fbfa;
}

.bht-tour-search i {
    position: absolute;
    top: 50%;
    right: 18px;
    transform: translateY(-50%);
    color: var(--bht-green);
}

.bht-tour-filter-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.bht-tour-filter-buttons button,
.bht-tour-view-toggle button {
    min-height: 42px;
    border: 1px solid var(--bht-line);
    border-radius: 999px;
    padding: 8px 14px;
    color: var(--bht-deep);
    background: #fff;
    font-size: 13px;
    font-weight: 700;
    transition: .25s ease;
}

.bht-tour-filter-buttons button.active,
.bht-tour-filter-buttons button:hover,
.bht-tour-view-toggle button.active,
.bht-tour-view-toggle button:hover {
    color: #fff;
    border-color: var(--bht-deep);
    background: var(--bht-deep);
}

.bht-tour-view-toggle {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.bht-tour-view-toggle button {
    display: grid;
    place-items: center;
    width: 44px;
    padding: 0;
    border-radius: 10px;
}

.bht-tour-package-card {
    overflow: hidden;
    border: 1px solid var(--bht-line);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 14px 44px rgba(10, 45, 31, .08);
    transition: transform .3s ease, box-shadow .3s ease;
}

.bht-tour-package-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 24px 62px rgba(10, 45, 31, .15);
}

.bht-tour-package-image {
    position: relative;
    display: block;
    height: 285px;
    overflow: hidden;
}

.bht-tour-package-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .55s ease;
}

.bht-tour-package-card:hover .bht-tour-package-image img {
    transform: scale(1.055);
}

.bht-tour-package-theme {
    position: absolute;
    left: 18px;
    bottom: 18px;
    padding: 8px 13px;
    border-radius: 999px;
    color: #fff;
    background: rgba(7, 41, 29, .88);
    backdrop-filter: blur(8px);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .04em;
}

.bht-tour-package-card .tour-content {
    padding: 25px;
}

.bht-tour-package-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-bottom: 12px;
    color: var(--bht-muted);
    font-size: 13px;
    font-weight: 700;
}

.bht-tour-package-meta span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.bht-tour-package-meta i {
    color: var(--bht-gold);
}

.bht-tour-package-card .box-title {
    margin-bottom: 11px;
    font-size: 24px;
    line-height: 1.28;
}

.bht-tour-package-summary {
    display: -webkit-box;
    min-height: 78px;
    margin-bottom: 18px;
    overflow: hidden;
    color: var(--bht-muted);
    line-height: 1.62;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.bht-tour-package-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding-top: 18px;
    border-top: 1px solid var(--bht-line);
}

.bht-tour-package-action .tour-box_price {
    margin: 0;
}

.bht-tour-package-action .tour-box_price small,
.bht-tour-package-action .tour-box_price strong {
    display: block;
}

.bht-tour-package-action .tour-box_price small {
    color: var(--bht-muted);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.bht-tour-package-action .tour-box_price strong {
    color: var(--bht-deep);
    font-size: 22px;
}

.bht-tour-package-grid.is-list-view .bht-tour-package-column {
    width: 100%;
}

.bht-tour-package-grid.is-list-view .bht-tour-package-card {
    display: grid;
    grid-template-columns: minmax(280px, 40%) 1fr;
}

.bht-tour-package-grid.is-list-view .bht-tour-package-image {
    height: 100%;
    min-height: 300px;
}

.bht-tour-empty-state {
    padding: 65px 30px;
    border: 1px dashed rgba(15, 106, 66, .32);
    border-radius: 24px;
    text-align: center;
    background: #f7faf8;
}

.bht-tour-empty-state i {
    color: var(--bht-gold);
    font-size: 46px;
}

.bht-tour-empty-state h3 {
    margin: 14px 0 8px;
}

.bht-tour-empty-state p {
    color: var(--bht-muted);
}

.bht-tour-index-sidebar .widget {
    border: 1px solid var(--bht-line);
    border-radius: 20px;
    box-shadow: 0 14px 44px rgba(10, 45, 31, .07);
}

.bht-tour-style-widget ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.bht-tour-style-widget li + li {
    border-top: 1px solid var(--bht-line);
}

.bht-tour-style-widget button {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 15px 0;
    border: 0;
    color: var(--bht-ink);
    background: transparent;
    text-align: left;
    font-weight: 700;
}

.bht-tour-style-widget button:hover {
    color: var(--bht-green);
}

.bht-tour-style-widget i {
    width: 28px;
    color: var(--bht-gold);
    font-size: 20px;
}

.bht-tour-support-widget {
    overflow: hidden;
    color: #fff;
    background:
        linear-gradient(155deg, rgba(7, 41, 29, .95), rgba(15, 106, 66, .9)),
        url("../../../../uploads/tour-packages/banyumala-waterfall-highland-tour-8-hours/bht-bn8-banyumala-waterfall.webp") center/cover;
}

.bht-tour-support-widget h3,
.bht-tour-support-widget p {
    color: #fff;
}

.bht-tour-support-widget p {
    color: rgba(255,255,255,.78);
}

.bht-tour-choice-section {
    background: linear-gradient(180deg, #f8faf8, #fff);
}

.bht-tour-choice-card {
    padding: 34px;
    border: 1px solid var(--bht-line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 12px 40px rgba(10, 45, 31, .06);
}

.bht-tour-choice-icon {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    margin-bottom: 20px;
    border-radius: 16px;
    color: #fff;
    background: var(--bht-deep);
    font-size: 23px;
}

.bht-tour-choice-card h3 {
    margin-bottom: 10px;
    font-size: 24px;
}

.bht-tour-choice-card p {
    margin: 0;
    color: var(--bht-muted);
    line-height: 1.7;
}

/* Custom packages */
.bht-custom-intro-image {
    position: relative;
    overflow: hidden;
    min-height: 560px;
    border-radius: 26px;
    box-shadow: 0 26px 70px rgba(7, 41, 29, .16);
}

.bht-custom-intro-image img {
    width: 100%;
    height: 560px;
    object-fit: cover;
}

.bht-custom-intro-badge {
    position: absolute;
    left: 24px;
    bottom: 24px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    color: #fff;
    background: rgba(7, 41, 29, .9);
    font-weight: 800;
}

.bht-custom-lead {
    color: var(--bht-muted);
    font-size: 17px;
    line-height: 1.8;
}

.bht-custom-intro-points {
    display: grid;
    gap: 12px;
    margin-top: 24px;
}

.bht-custom-intro-points span {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    color: var(--bht-ink);
    font-weight: 700;
}

.bht-custom-intro-points i {
    margin-top: 4px;
    color: var(--bht-gold);
}

.bht-custom-inspiration-section {
    background: #f6f8f6;
}

.bht-custom-inspiration-card {
    overflow: hidden;
    border-radius: 21px;
    background: #fff;
    box-shadow: 0 14px 44px rgba(10, 45, 31, .08);
}

.bht-custom-inspiration-image {
    position: relative;
    height: 285px;
    overflow: hidden;
}

.bht-custom-inspiration-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease;
}

.bht-custom-inspiration-card:hover img {
    transform: scale(1.055);
}

.bht-custom-inspiration-image span {
    position: absolute;
    top: 18px;
    right: 18px;
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    color: var(--bht-deep);
    background: var(--bht-gold);
    font-weight: 900;
}

.bht-custom-inspiration-copy {
    padding: 25px;
}

.bht-custom-inspiration-copy h3 {
    margin-bottom: 9px;
    font-size: 23px;
}

.bht-custom-inspiration-copy p {
    margin: 0;
    color: var(--bht-muted);
    line-height: 1.68;
}

.bht-custom-process-card {
    position: relative;
    padding: 34px 28px;
    overflow: hidden;
    border: 1px solid var(--bht-line);
    border-radius: 20px;
    background: #fff;
}

.bht-custom-process-number {
    position: absolute;
    top: 16px;
    right: 18px;
    color: rgba(15, 106, 66, .1);
    font-family: var(--title-font);
    font-size: 58px;
    font-weight: 900;
    line-height: 1;
}

.bht-custom-process-icon {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    margin-bottom: 23px;
    border-radius: 17px;
    color: #fff;
    background: var(--bht-deep);
    font-size: 22px;
}

.bht-custom-process-card h3 {
    position: relative;
    margin-bottom: 10px;
    font-size: 22px;
}

.bht-custom-process-card p {
    position: relative;
    margin: 0;
    color: var(--bht-muted);
    line-height: 1.7;
}

.bht-custom-builder-section {
    background:
        radial-gradient(circle at 7% 10%, rgba(237, 169, 0, .1), transparent 28%),
        #f7faf8;
}

.bht-custom-builder-copy {
    position: sticky;
    top: 130px;
}

.bht-custom-builder-copy > p {
    color: var(--bht-muted);
    font-size: 17px;
    line-height: 1.8;
}

.bht-custom-builder-note {
    display: flex;
    gap: 14px;
    margin-top: 25px;
    padding: 19px;
    border-left: 4px solid var(--bht-gold);
    border-radius: 12px;
    background: #fff;
}

.bht-custom-builder-note i {
    margin-top: 4px;
    color: var(--bht-gold);
    font-size: 22px;
}

.bht-custom-builder-note p {
    margin: 0;
    color: var(--bht-muted);
    line-height: 1.65;
}

.bht-custom-builder-contact {
    margin-top: 25px;
}

.bht-custom-builder-contact span {
    display: block;
    margin-bottom: 8px;
    color: var(--bht-muted);
}

.bht-custom-builder-contact a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--bht-green);
    font-size: 18px;
    font-weight: 800;
}

.bht-custom-tour-form {
    padding: 36px;
    border: 1px solid var(--bht-line);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 20px 60px rgba(10, 45, 31, .1);
}

.bht-custom-tour-form label,
.bht-custom-interest-fieldset legend {
    display: block;
    margin-bottom: 7px;
    color: var(--bht-deep);
    font-size: 13px;
    font-weight: 800;
}

.bht-custom-tour-form input,
.bht-custom-tour-form select,
.bht-custom-tour-form textarea {
    width: 100%;
    border: 1px solid var(--bht-line);
    border-radius: 11px;
    color: var(--bht-ink);
    background: #f9fbfa;
}

.bht-custom-tour-form input,
.bht-custom-tour-form select {
    height: 52px;
    padding: 0 15px;
}

.bht-custom-tour-form textarea {
    padding: 14px 15px;
    resize: vertical;
}

.bht-custom-interest-fieldset {
    padding: 0;
    border: 0;
}

.bht-custom-interest-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
}

.bht-custom-interest-grid label {
    margin: 0;
    cursor: pointer;
}

.bht-custom-interest-grid input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.bht-custom-interest-grid span {
    display: flex;
    align-items: center;
    min-height: 46px;
    padding: 10px 12px;
    border: 1px solid var(--bht-line);
    border-radius: 10px;
    color: var(--bht-muted);
    background: #fff;
    transition: .2s ease;
}

.bht-custom-interest-grid input:checked + span {
    color: #fff;
    border-color: var(--bht-deep);
    background: var(--bht-deep);
}

.bht-custom-submit {
    display: inline-flex;
    align-items: center;
    gap: 9px;
}

.bht-custom-form-privacy {
    margin: 11px 0 0;
    color: var(--bht-muted);
    font-size: 12px;
}

/* Travel guide */
.bht-guide-intro-image {
    position: relative;
    min-height: 520px;
    overflow: hidden;
    border-radius: 26px;
    box-shadow: 0 24px 68px rgba(7, 41, 29, .15);
}

.bht-guide-intro-image img {
    width: 100%;
    height: 520px;
    object-fit: cover;
}

.bht-guide-intro-label {
    position: absolute;
    right: 24px;
    bottom: 24px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    color: #fff;
    background: rgba(7, 41, 29, .9);
    font-weight: 800;
}

.bht-guide-lead {
    color: var(--bht-muted);
    font-size: 17px;
    line-height: 1.8;
}

.bht-guide-intro-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.bht-guide-story-section {
    background: #f6f8f6;
}

.bht-guide-story-list {
    display: grid;
    gap: 64px;
}

.bht-guide-story-row {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    align-items: center;
    gap: 55px;
}

.bht-guide-story-row.is-reversed .bht-guide-story-image {
    order: 2;
}

.bht-guide-story-image {
    position: relative;
    min-height: 430px;
    overflow: hidden;
    border-radius: 24px;
    box-shadow: 0 18px 58px rgba(10, 45, 31, .12);
}

.bht-guide-story-image img {
    width: 100%;
    height: 430px;
    object-fit: cover;
}

.bht-guide-story-number {
    position: absolute;
    top: 20px;
    left: 20px;
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    color: var(--bht-deep);
    background: var(--bht-gold);
    font-weight: 900;
}

.bht-guide-story-copy h3 {
    margin: 4px 0 16px;
    color: var(--bht-deep);
    font-size: clamp(28px, 3.2vw, 42px);
    line-height: 1.2;
}

.bht-guide-story-copy > p {
    color: var(--bht-muted);
    font-size: 16px;
    line-height: 1.8;
}

.bht-guide-local-tip {
    display: flex;
    gap: 14px;
    margin-top: 22px;
    padding: 18px;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 10px 32px rgba(10, 45, 31, .07);
}

.bht-guide-local-tip i {
    margin-top: 2px;
    color: var(--bht-gold);
    font-size: 24px;
}

.bht-guide-local-tip strong,
.bht-guide-local-tip span {
    display: block;
}

.bht-guide-local-tip strong {
    margin-bottom: 4px;
    color: var(--bht-deep);
}

.bht-guide-local-tip span {
    color: var(--bht-muted);
    line-height: 1.6;
}

.bht-guide-practical-card {
    padding: 30px;
    border: 1px solid var(--bht-line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 12px 40px rgba(10, 45, 31, .06);
}

.bht-guide-practical-icon {
    display: grid;
    place-items: center;
    width: 56px;
    height: 56px;
    margin-bottom: 20px;
    border-radius: 16px;
    color: #fff;
    background: var(--bht-deep);
    font-size: 22px;
}

.bht-guide-practical-card h3 {
    margin-bottom: 10px;
    font-size: 22px;
}

.bht-guide-practical-card p {
    margin: 0;
    color: var(--bht-muted);
    line-height: 1.7;
}

.bht-guide-transport-card {
    padding: 48px;
    overflow: hidden;
    border-radius: 25px;
    color: #fff;
    box-shadow: 0 20px 58px rgba(7, 41, 29, .14);
}

.bht-guide-transport-card.is-driver {
    background:
        linear-gradient(135deg, rgba(7, 41, 29, .94), rgba(15, 106, 66, .78)),
        url("../../../../uploads/travel-guide/bht-guide-local-driver.webp") center/cover;
}

.bht-guide-transport-card.is-scooter {
    background:
        linear-gradient(135deg, rgba(7, 41, 29, .94), rgba(15, 106, 66, .78)),
        url("../../../../uploads/travel-guide/bht-guide-scooter.webp") center/cover;
}

.bht-guide-transport-icon {
    display: grid;
    place-items: center;
    width: 64px;
    height: 64px;
    margin-bottom: 22px;
    border-radius: 18px;
    color: var(--bht-deep);
    background: var(--bht-gold);
    font-size: 26px;
}

.bht-guide-transport-card h2,
.bht-guide-transport-card p {
    color: #fff;
}

.bht-guide-transport-card h2 {
    margin: 5px 0 14px;
    font-size: clamp(29px, 3vw, 41px);
}

.bht-guide-transport-card p {
    color: rgba(255,255,255,.8);
    line-height: 1.75;
}

.bht-guide-featured-section {
    background: #f7faf8;
}

.bht-guide-package-card {
    overflow: hidden;
    border: 1px solid var(--bht-line);
    border-radius: 21px;
    background: #fff;
    box-shadow: 0 14px 42px rgba(10, 45, 31, .07);
}

.bht-guide-package-card .tour-box_img {
    display: block;
    height: 260px;
}

.bht-guide-package-card .tour-box_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-guide-package-card .tour-content {
    padding: 24px;
}

.bht-guide-package-meta {
    display: block;
    margin-bottom: 9px;
    color: var(--bht-green);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.bht-guide-package-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 18px;
    padding-top: 17px;
    border-top: 1px solid var(--bht-line);
}

.bht-guide-package-action strong {
    color: var(--bht-deep);
    font-size: 20px;
}

@media (max-width: 1199px) {
    .bht-experience-breadcrumb {
        min-height: 360px;
    }

    .bht-wide-cta {
        padding: 42px;
    }

    .bht-custom-builder-copy {
        position: static;
    }
}

@media (max-width: 991px) {
    .bht-tour-package-grid.is-list-view .bht-tour-package-card {
        display: block;
    }

    .bht-tour-package-grid.is-list-view .bht-tour-package-image {
        min-height: 280px;
    }

    .bht-tour-view-toggle {
        justify-content: flex-start;
    }

    .bht-guide-story-row,
    .bht-guide-story-row.is-reversed {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .bht-guide-story-row.is-reversed .bht-guide-story-image {
        order: 0;
    }

    .bht-wide-cta {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 767px) {
    .bht-experience-breadcrumb {
        min-height: 315px;
    }

    .bht-experience-breadcrumb .breadcumb-title {
        font-size: 39px;
    }

    .bht-tour-package-image,
    .bht-custom-inspiration-image {
        height: 245px;
    }

    .bht-tour-package-action,
    .bht-guide-package-action {
        align-items: flex-start;
        flex-direction: column;
    }

    .bht-custom-intro-image,
    .bht-custom-intro-image img,
    .bht-guide-intro-image,
    .bht-guide-intro-image img {
        min-height: 420px;
        height: 420px;
    }

    .bht-custom-interest-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bht-custom-tour-form {
        padding: 24px 18px;
    }

    .bht-guide-story-image,
    .bht-guide-story-image img {
        min-height: 320px;
        height: 320px;
    }

    .bht-guide-transport-card,
    .bht-wide-cta {
        padding: 34px 25px;
    }
}

@media (max-width: 479px) {
    .bht-tour-filter-buttons {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bht-tour-filter-buttons button {
        width: 100%;
    }

    .bht-custom-interest-grid {
        grid-template-columns: 1fr;
    }
}
/* BHT_TOUR_EXPERIENCE_PAGES_V1_END */

/* BHT_BLOG_EXPERIENCE_V1_BEGIN */
.bht-blog-page .breadcumb-wrapper,
.bht-blog-detail-page .breadcumb-wrapper {
    background-position: center center;
}

.bht-blog-index .bht-blog-intro {
    max-width: 760px;
}

.bht-blog-index .th-blog.blog-single,
.bht-blog-detail .th-blog.blog-single {
    border: 1px solid rgba(22, 132, 71, 0.12);
    border-radius: 24px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 16px 45px rgba(17, 49, 33, 0.08);
}

.bht-blog-index .th-blog.blog-single + .th-blog.blog-single {
    margin-top: 36px;
}

.bht-blog-index .blog-img,
.bht-blog-detail .blog-img {
    overflow: hidden;
}

.bht-blog-index .blog-img img {
    width: 100%;
    height: 430px;
    object-fit: cover;
    transition: transform 0.75s ease;
}

.bht-blog-index .th-blog.blog-single:hover .blog-img img {
    transform: scale(1.035);
}

.bht-blog-index .blog-content,
.bht-blog-detail .blog-content {
    padding: 34px 38px 38px;
}

.bht-blog-index .blog-title,
.bht-blog-detail .blog-title {
    letter-spacing: -0.025em;
}

.bht-blog-index .blog-text {
    color: #5f6f65;
    line-height: 1.8;
}

.bht-blog-index .blog-meta a,
.bht-blog-detail .blog-meta a {
    pointer-events: auto;
}

.bht-blog-empty {
    padding: 64px 36px;
    text-align: center;
    border: 1px dashed rgba(22, 132, 71, 0.3);
    border-radius: 24px;
    background: #f8fcf9;
}

.bht-blog-empty > i {
    display: inline-grid;
    place-items: center;
    width: 74px;
    height: 74px;
    margin-bottom: 20px;
    border-radius: 50%;
    background: rgba(22, 132, 71, 0.1);
    color: #168447;
    font-size: 30px;
}

.bht-blog-index .sidebar-area .widget,
.bht-blog-detail .sidebar-area .widget {
    border-radius: 20px;
    border: 1px solid rgba(22, 132, 71, 0.1);
    box-shadow: 0 12px 35px rgba(17, 49, 33, 0.06);
}

.bht-blog-index .widget_categories li a i,
.bht-blog-detail .widget_categories li a i {
    margin-right: 9px;
    color: #168447;
}

.bht-blog-sidebar-cta {
    position: relative;
    overflow: hidden;
    min-height: 370px;
    background-size: cover;
    background-position: center;
}

.bht-blog-sidebar-cta::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(8, 33, 19, 0.25), rgba(8, 33, 19, 0.9));
}

.bht-blog-sidebar-cta .offer-banner,
.bht-blog-sidebar-cta .offer {
    position: relative;
    z-index: 1;
}

.bht-blog-sidebar-cta p {
    color: rgba(255, 255, 255, 0.84);
}

.bht-blog-detail .bht-blog-lead {
    margin: 0 0 28px;
    padding: 22px 24px;
    border-left: 4px solid #f08b2f;
    background: #fff8f1;
    color: #4d5e53;
    font-size: 1.08rem;
    line-height: 1.8;
}

.bht-blog-editor-content {
    color: #4e6256;
    font-size: 1.04rem;
    line-height: 1.9;
}

.bht-blog-editor-content > *:first-child {
    margin-top: 0;
}

.bht-blog-editor-content h2,
.bht-blog-editor-content h3,
.bht-blog-editor-content h4 {
    margin-top: 36px;
    margin-bottom: 16px;
    color: #142d20;
}

.bht-blog-editor-content p {
    margin-bottom: 20px;
}

.bht-blog-editor-content ul,
.bht-blog-editor-content ol {
    margin: 0 0 24px;
    padding-left: 24px;
}

.bht-blog-editor-content li {
    margin-bottom: 10px;
}

.bht-blog-editor-content blockquote {
    margin: 34px 0;
    padding: 30px 32px;
    border: 0;
    border-radius: 18px;
    background: linear-gradient(135deg, #133a24, #168447);
    color: #fff;
    box-shadow: 0 18px 45px rgba(22, 132, 71, 0.18);
}

.bht-blog-editor-content blockquote p {
    margin: 0;
    color: #fff;
    font-size: 1.22rem;
    font-weight: 650;
    line-height: 1.65;
}

.bht-blog-editor-content a {
    color: #168447;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.bht-blog-related-card {
    height: 100%;
    overflow: hidden;
    border: 1px solid rgba(22, 132, 71, 0.1);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(17, 49, 33, 0.06);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.bht-blog-related-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 38px rgba(17, 49, 33, 0.11);
}

.bht-blog-related-image {
    display: block;
    height: 170px;
    overflow: hidden;
}

.bht-blog-related-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-blog-related-content {
    padding: 20px;
}

.bht-blog-related-content > span {
    display: inline-block;
    margin-bottom: 9px;
    color: #f08b2f;
    font-size: 0.78rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.bht-blog-related-content h4 {
    margin: 0;
    font-size: 1.04rem;
    line-height: 1.45;
}

.bht-blog-related-content h4 a {
    color: #142d20;
}

@media (max-width: 991.98px) {
    .bht-blog-index .blog-img img {
        height: 360px;
    }
}

@media (max-width: 767.98px) {
    .bht-blog-index .blog-img img {
        height: 260px;
    }

    .bht-blog-index .blog-content,
    .bht-blog-detail .blog-content {
        padding: 26px 22px 30px;
    }

    .bht-blog-editor-content blockquote {
        padding: 24px 22px;
    }
}
/* BHT_BLOG_EXPERIENCE_V1_END */


/* BHT_BLOG_PAGINATION_V1_BEGIN */
.bht-blog-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 20px 22px;
    border: 1px solid rgba(22, 132, 71, 0.14);
    border-radius: 20px;
    background:
        linear-gradient(
            135deg,
            rgba(22, 132, 71, 0.055),
            rgba(240, 139, 47, 0.055)
        ),
        #ffffff;
    box-shadow: 0 14px 38px rgba(17, 49, 33, 0.07);
}

.bht-blog-pagination-status {
    display: flex;
    flex-direction: column;
    gap: 3px;
    color: #53675b;
    line-height: 1.4;
}

.bht-blog-pagination-status span {
    font-size: 0.96rem;
}

.bht-blog-pagination-status strong {
    color: #168447;
    font-weight: 800;
}

.bht-blog-pagination-status small {
    color: #819087;
    font-size: 0.78rem;
}

.bht-blog-pagination .th-pagination {
    margin: 0;
}

.bht-blog-pagination .th-pagination ul {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
}

.bht-blog-pagination .th-pagination li {
    margin: 0;
}

.bht-blog-pagination .th-pagination a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
    padding: 0 14px;
    border: 1px solid rgba(22, 132, 71, 0.14);
    border-radius: 12px;
    background: #ffffff;
    color: #183d27;
    font-weight: 750;
    box-shadow: none;
    transition:
        transform 0.25s ease,
        background-color 0.25s ease,
        border-color 0.25s ease,
        color 0.25s ease;
}

.bht-blog-pagination .th-pagination a:hover,
.bht-blog-pagination .th-pagination a.active {
    transform: translateY(-2px);
    border-color: #168447;
    background: #168447;
    color: #ffffff;
}

.bht-blog-pagination .th-pagination a[aria-current="page"] {
    border-color: #168447;
    background: #168447;
    color: #ffffff;
}

@media (max-width: 767.98px) {
    .bht-blog-pagination {
        align-items: stretch;
        flex-direction: column;
        padding: 18px;
    }

    .bht-blog-pagination-status {
        text-align: center;
    }

    .bht-blog-pagination .th-pagination ul {
        justify-content: center;
    }

    .bht-blog-pagination .th-pagination a {
        min-width: 40px;
        height: 40px;
        padding: 0 11px;
        border-radius: 10px;
        font-size: 0.9rem;
    }
}
/* BHT_BLOG_PAGINATION_V1_END */

/* BHT_HOMEPAGE_DYNAMIC_V2_BEGIN */
.bht-homepage [data-bht-home-v2="dynamic"] {
    --bht-v2-green: #168447;
    --bht-v2-green-dark: #0f6636;
    --bht-v2-orange: #f08b2f;
    --bht-v2-ink: #173424;
    --bht-v2-muted: #647369;
    --bht-v2-surface: #f6faf7;
    --bht-v2-border: rgba(22, 132, 71, 0.14);
}

.bht-homepage [data-bht-booking-contract="v2"] .booking-form .search-input {
    min-width: 150px;
}

.bht-homepage .bht-home-featured-tours .tour-box_img {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 4 / 3;
}

.bht-homepage .bht-home-featured-tours .tour-box_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-homepage .bht-tour-duration-badge {
    position: absolute;
    top: 16px;
    left: 16px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(13, 45, 27, 0.86);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    backdrop-filter: blur(8px);
}

.bht-homepage .bht-featured-tour-card .tour-content {
    min-height: 284px;
    display: flex;
    flex-direction: column;
}

.bht-homepage .bht-featured-tour-card .bht-tour-summary {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    color: var(--bht-v2-muted);
}

.bht-homepage .bht-featured-tour-card .bht-tour-price-row {
    display: flex;
    align-items: end;
    gap: 8px;
    margin-top: auto;
    padding-top: 8px;
}

.bht-homepage .bht-featured-tour-card .bht-tour-price-row small {
    margin-bottom: 8px;
    color: var(--bht-v2-muted);
    font-size: 12px;
}

.bht-homepage .bht-home-custom-tour {
    position: relative;
}

.bht-homepage .bht-custom-tour-panel {
    position: relative;
    overflow: hidden;
    padding: 38px;
    border: 1px solid var(--bht-v2-border);
    border-radius: 30px;
    background:
        radial-gradient(circle at 95% 5%, rgba(240, 139, 47, 0.13), transparent 31%),
        linear-gradient(135deg, rgba(22, 132, 71, 0.08), rgba(255, 255, 255, 0.98));
    box-shadow: 0 24px 60px rgba(22, 55, 35, 0.09);
}

.bht-homepage .bht-custom-tour-image {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 11;
    border-radius: 26px 70px 26px 26px;
}

.bht-homepage .bht-custom-tour-image > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-homepage .bht-custom-tour-badge,
.bht-homepage .bht-guide-image__note {
    position: absolute;
    right: 18px;
    bottom: 18px;
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 176px;
    padding: 14px 17px;
    border: 1px solid rgba(255, 255, 255, 0.38);
    border-radius: 18px;
    background: rgba(15, 80, 42, 0.91);
    color: #fff;
    box-shadow: 0 14px 36px rgba(7, 43, 23, 0.24);
    backdrop-filter: blur(10px);
}

.bht-homepage .bht-custom-tour-badge i,
.bht-homepage .bht-guide-image__note i {
    font-size: 27px;
    color: #ffd6a3;
}

.bht-homepage .bht-custom-tour-badge span,
.bht-homepage .bht-guide-image__note span {
    font-size: 12px;
    line-height: 1.35;
}

.bht-homepage .bht-custom-tour-badge strong,
.bht-homepage .bht-guide-image__note strong {
    font-size: 14px;
}

.bht-homepage .bht-custom-tour-points {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.bht-homepage .bht-custom-tour-points span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 13px;
    border: 1px solid var(--bht-v2-border);
    border-radius: 999px;
    background: #fff;
    color: var(--bht-v2-ink);
    font-size: 13px;
    font-weight: 700;
}

.bht-homepage .bht-custom-tour-points i {
    color: var(--bht-v2-green);
}

.bht-homepage .bht-experience-card {
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--bht-v2-border);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(22, 55, 35, 0.07);
    transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.bht-homepage .bht-experience-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 50px rgba(22, 55, 35, 0.13);
}

.bht-homepage .bht-experience-card__image {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 4 / 3;
}

.bht-homepage .bht-experience-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.45s ease;
}

.bht-homepage .bht-experience-card:hover .bht-experience-card__image img {
    transform: scale(1.045);
}

.bht-homepage .bht-experience-card__image > span {
    position: absolute;
    left: 14px;
    bottom: 14px;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(16, 59, 33, 0.86);
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.03em;
}

.bht-homepage .bht-experience-card__body {
    padding: 22px;
}

.bht-homepage .bht-experience-card__body p {
    min-height: 72px;
    margin-bottom: 18px;
    color: var(--bht-v2-muted);
}

.bht-homepage .bht-experience-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 16px;
    border-top: 1px solid rgba(22, 132, 71, 0.1);
}

.bht-homepage .bht-experience-card__footer strong,
.bht-homepage .bht-experience-card__footer small {
    display: block;
}

.bht-homepage .bht-experience-card__footer strong {
    color: var(--bht-v2-green-dark);
    font-size: 17px;
}

.bht-homepage .bht-experience-card__footer small {
    color: var(--bht-v2-muted);
    font-size: 11px;
}

.bht-homepage .bht-trust-panel {
    padding: 34px;
    border: 1px solid var(--bht-v2-border);
    border-radius: 28px;
    background: linear-gradient(135deg, #f6faf7, #fff8f1);
}

.bht-homepage .bht-trust-card {
    display: flex;
    gap: 15px;
    height: 100%;
    padding: 20px;
    border: 1px solid rgba(22, 132, 71, 0.11);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.9);
}

.bht-homepage .bht-trust-card__icon {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: rgba(22, 132, 71, 0.1);
    color: var(--bht-v2-green);
    font-size: 19px;
}

.bht-homepage .bht-trust-card h3 {
    margin: 0 0 5px;
    color: var(--bht-v2-ink);
    font-size: 17px;
}

.bht-homepage .bht-trust-card p {
    margin: 0;
    color: var(--bht-v2-muted);
    font-size: 13px;
    line-height: 1.55;
}

.bht-homepage .bht-guide-image {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 11;
    border-radius: 70px 24px 24px 24px;
    box-shadow: 0 24px 58px rgba(22, 55, 35, 0.14);
}

.bht-homepage .bht-guide-image > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-homepage .bht-guide-checklist {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.bht-homepage .bht-guide-checklist span {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 14px;
    background: #fff;
    color: var(--bht-v2-ink);
    font-size: 13px;
    font-weight: 700;
    box-shadow: 0 9px 24px rgba(22, 55, 35, 0.06);
}

.bht-homepage .bht-guide-checklist i {
    color: var(--bht-v2-orange);
}

.bht-homepage .bht-home-blog-card {
    height: 100%;
}

.bht-homepage .bht-home-blog-card .blog-img {
    display: block;
    aspect-ratio: 16 / 10;
}

.bht-homepage .bht-home-blog-card .blog-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bht-homepage .bht-home-blog-card .blog-box_content {
    min-height: 310px;
    display: flex;
    flex-direction: column;
}

.bht-homepage .bht-home-blog-card .blog-box_content > p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    color: var(--bht-v2-muted);
}

.bht-homepage .bht-home-blog-card .th-btn {
    margin-top: auto;
    align-self: flex-start;
}

.bht-homepage .bht-home-faq-accordion .accordion-card {
    margin-bottom: 12px;
    overflow: hidden;
    border: 1px solid var(--bht-v2-border);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(22, 55, 35, 0.05);
}

.bht-homepage .bht-home-faq-accordion .accordion-button {
    padding: 19px 22px;
    background: #fff;
    color: var(--bht-v2-ink);
    font-weight: 800;
}

.bht-homepage .bht-home-faq-accordion .accordion-button:not(.collapsed) {
    background: rgba(22, 132, 71, 0.06);
    color: var(--bht-v2-green-dark);
    box-shadow: none;
}

.bht-homepage .bht-home-faq-accordion .accordion-body {
    padding: 0 22px 21px;
    color: var(--bht-v2-muted);
    line-height: 1.7;
}

.bht-homepage .bht-final-cta-card {
    position: relative;
    overflow: hidden;
    min-height: 430px;
    display: grid;
    place-items: center;
    padding: 54px 28px;
    border-radius: 32px;
    background-position: center;
    background-size: cover;
    box-shadow: 0 28px 70px rgba(13, 50, 29, 0.18);
}

.bht-homepage .bht-final-cta-card__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(7, 45, 23, 0.91), rgba(16, 88, 49, 0.72));
}

.bht-homepage .bht-final-cta-card__content {
    position: relative;
    z-index: 1;
    max-width: 850px;
    margin: 0 auto;
    text-align: center;
}

.bht-homepage .bht-final-cta-card__content p {
    max-width: 720px;
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.88);
    font-size: 17px;
    line-height: 1.75;
}

@media (max-width: 1199.98px) {
    .bht-homepage .bht-custom-tour-panel,
    .bht-homepage .bht-trust-panel {
        padding: 28px;
    }
}

@media (max-width: 767.98px) {
    .bht-homepage .bht-custom-tour-panel,
    .bht-homepage .bht-trust-panel {
        padding: 20px;
        border-radius: 22px;
    }

    .bht-homepage .bht-custom-tour-image,
    .bht-homepage .bht-guide-image {
        border-radius: 22px;
    }

    .bht-homepage .bht-guide-checklist {
        grid-template-columns: 1fr;
    }

    .bht-homepage .bht-final-cta-card {
        min-height: 380px;
        padding: 40px 20px;
        border-radius: 24px;
    }

    .bht-homepage .bht-featured-tour-card .tour-content,
    .bht-homepage .bht-home-blog-card .blog-box_content {
        min-height: auto;
    }
}

@media (max-width: 575.98px) {
    .bht-homepage .bht-custom-tour-badge,
    .bht-homepage .bht-guide-image__note {
        right: 12px;
        bottom: 12px;
        min-width: 0;
        max-width: calc(100% - 24px);
    }

    .bht-homepage .bht-custom-tour-points span {
        width: 100%;
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bht-homepage .bht-experience-card,
    .bht-homepage .bht-experience-card__image img {
        transition: none;
    }
}
/* BHT_HOMEPAGE_DYNAMIC_V2_END */

/* BHT_HOME_FAQ_GALLERY_HOTFIX_V1_BEGIN */

/*
|--------------------------------------------------------------------------
| Homepage FAQ proportional typography
|--------------------------------------------------------------------------
*/

.bht-homepage .bht-home-faq .sub-title {
    margin-bottom: 8px;
    font-size: 30px !important;
    line-height: 1.12 !important;
}

.bht-homepage .bht-home-faq .sec-title {
    max-width: 520px;
    margin-bottom: 17px !important;
    font-size: clamp(36px, 3vw, 48px) !important;
    line-height: 1.16 !important;
    letter-spacing: -0.025em;
}

.bht-homepage .bht-home-faq .sec-text {
    max-width: 560px;
    font-size: 16px !important;
    line-height: 1.65 !important;
}

.bht-homepage .bht-home-faq-accordion .accordion-card {
    margin-bottom: 11px;
    border-radius: 15px;
}

.bht-homepage .bht-home-faq-accordion .accordion-button {
    min-height: 68px;
    padding: 16px 20px !important;
    font-size: 20px !important;
    font-weight: 750 !important;
    line-height: 1.34 !important;
    letter-spacing: -0.012em;
}

.bht-homepage .bht-home-faq-accordion .accordion-button::after {
    width: 17px;
    height: 17px;
    background-size: 17px;
}

.bht-homepage .bht-home-faq-accordion .accordion-body {
    padding: 0 20px 18px !important;
    font-size: 15.5px !important;
    line-height: 1.68 !important;
}

@media (max-width: 1199.98px) {
    .bht-homepage .bht-home-faq .sec-title {
        max-width: 620px;
        font-size: 42px !important;
    }

    .bht-homepage .bht-home-faq-accordion .accordion-button {
        min-height: 64px;
        font-size: 18px !important;
    }
}

@media (max-width: 767.98px) {
    .bht-homepage .bht-home-faq .sub-title {
        font-size: 26px !important;
    }

    .bht-homepage .bht-home-faq .sec-title {
        font-size: 32px !important;
        line-height: 1.2 !important;
    }

    .bht-homepage .bht-home-faq .sec-text {
        font-size: 15px !important;
    }

    .bht-homepage .bht-home-faq-accordion .accordion-card {
        margin-bottom: 9px;
        border-radius: 13px;
    }

    .bht-homepage .bht-home-faq-accordion .accordion-button {
        min-height: 58px;
        padding: 14px 16px !important;
        font-size: 16.5px !important;
        line-height: 1.38 !important;
    }

    .bht-homepage .bht-home-faq-accordion .accordion-body {
        padding: 0 16px 16px !important;
        font-size: 15px !important;
    }
}

/* BHT_HOME_FAQ_GALLERY_HOTFIX_V1_END */

/* BHT_BOOKING_CART_UPDATE_BUTTON_V1_BEGIN */

.bht-cart-update-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-width: 132px;
    min-height: 52px;
    padding: 0 22px;
    border: 1px solid #168447 !important;
    border-radius: 14px !important;
    background:
        linear-gradient(
            135deg,
            #168447 0%,
            #0f6f3a 100%
        ) !important;
    color: #ffffff !important;
    font-family: inherit;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: 0.055em;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow:
        0 9px 20px rgba(22, 132, 71, 0.18);
    cursor: pointer;
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease,
        background 0.22s ease,
        border-color 0.22s ease;
}

.bht-cart-update-btn i {
    font-size: 14px;
    transition: transform 0.3s ease;
}

.bht-cart-update-btn:hover {
    transform: translateY(-2px);
    border-color: #0d6333 !important;
    background:
        linear-gradient(
            135deg,
            #0f763d 0%,
            #0b5b2f 100%
        ) !important;
    color: #ffffff !important;
    box-shadow:
        0 13px 27px rgba(22, 132, 71, 0.25);
}

.bht-cart-update-btn:hover i {
    transform: rotate(45deg);
}

.bht-cart-update-btn:focus,
.bht-cart-update-btn:focus-visible {
    outline: 0;
    border-color: #0f6f3a !important;
    box-shadow:
        0 0 0 4px rgba(22, 132, 71, 0.16),
        0 12px 24px rgba(22, 132, 71, 0.2);
}

.bht-cart-update-btn:active {
    transform: translateY(0);
    box-shadow:
        0 6px 14px rgba(22, 132, 71, 0.18);
}

.bht-cart-update-btn:disabled {
    transform: none;
    opacity: 0.6;
    cursor: not-allowed;
    box-shadow: none;
}

@media (max-width: 767.98px) {
    .bht-cart-update-btn {
        min-width: 118px;
        min-height: 48px;
        padding: 0 18px;
        border-radius: 12px !important;
        font-size: 13px !important;
    }
}

/* BHT_BOOKING_CART_UPDATE_BUTTON_V1_END */

/* BHT_BOOKING_PRICING_ENGINE_V4_BEGIN */
.bht-pricing-components {
    margin-top: 18px;
    padding: 16px;
    border: 1px solid rgba(22, 132, 71, .14);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(246, 251, 248, .96), #fff);
}

.bht-pricing-components__heading {
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin-bottom: 12px;
}

.bht-pricing-components__heading strong {
    color: #173c2a;
    font-size: 14px;
    font-weight: 800;
}

.bht-pricing-components__heading small,
.bht-pricing-component__copy small {
    color: #738078;
    font-size: 11px;
    line-height: 1.5;
}

.bht-pricing-component {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 11px 0;
    border-top: 1px dashed rgba(23, 60, 42, .12);
}

.bht-pricing-component:first-of-type {
    border-top: 0;
}

.bht-pricing-component__copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.bht-pricing-component__copy strong {
    color: #25382d;
    font-size: 13px;
    font-weight: 750;
}

.bht-pricing-component__required,
.bht-cart-component-fixed {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 0 10px;
    border-radius: 999px;
    background: rgba(22, 132, 71, .10);
    color: #168447;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

.bht-pricing-toggle {
    position: relative;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
}

.bht-pricing-toggle input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.bht-pricing-toggle span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 58px;
    min-height: 32px;
    padding: 0 11px;
    border: 1px solid rgba(23, 60, 42, .16);
    border-radius: 999px;
    background: #fff;
    color: #5e6c63;
    font-size: 10px;
    font-weight: 800;
    transition: .2s ease;
}

.bht-pricing-toggle input:checked + span {
    border-color: #168447;
    background: #168447;
    color: #fff;
    box-shadow: 0 8px 18px rgba(22, 132, 71, .18);
}

.bht-pricing-quantity {
    width: 76px;
    min-height: 34px;
    padding: 5px 9px;
    border: 1px solid rgba(23, 60, 42, .16);
    border-radius: 10px;
    background: #fff;
    color: #25382d;
    font-size: 12px;
    font-weight: 700;
    text-align: center;
}

.bht-pricing-capacity {
    margin-top: 10px;
    padding: 9px 11px;
    border-radius: 10px;
    background: rgba(22, 132, 71, .08);
    color: #168447;
    font-size: 11px;
    font-weight: 700;
}

.bht-pricing-capacity.is-invalid {
    background: rgba(220, 38, 38, .08);
    color: #b91c1c;
}

.bht-add-button.is-pricing-invalid {
    opacity: .6;
}

.bht-mini-cart-breakdown,
.bht-cart-breakdown {
    display: grid;
    gap: 6px;
    margin: 10px 0;
    padding: 10px 12px;
    border-radius: 12px;
    background: #f7faf8;
}

.bht-mini-cart-breakdown > div,
.bht-cart-breakdown > div {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    color: #536158;
    font-size: 10px;
}

.bht-mini-cart-breakdown span,
.bht-cart-breakdown span {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.bht-mini-cart-breakdown small,
.bht-cart-breakdown small {
    margin-top: 1px;
    color: #8a958e;
}

.bht-mini-cart-breakdown strong,
.bht-cart-breakdown strong {
    flex: 0 0 auto;
    color: #173c2a;
    font-size: 10px;
    white-space: nowrap;
}

.bht-mini-cart-components {
    grid-column: 1 / -1;
    display: grid;
    gap: 7px;
    width: 100%;
}

.bht-mini-cart-component {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 9px;
    border-radius: 10px;
    background: #f8faf9;
}

.bht-mini-cart-component > span {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.bht-mini-cart-component strong {
    color: #25382d;
    font-size: 10px;
}

.bht-mini-cart-component small {
    color: #839087;
    font-size: 9px;
}

.bht-mini-cart-component em {
    color: #168447;
    font-size: 9px;
    font-style: normal;
    font-weight: 800;
}

.bht-cart-update-form--pricing {
    align-items: end;
}

.bht-cart-component-editor {
    display: grid;
    grid-column: 1 / -1;
    gap: 8px;
    width: 100%;
    margin-top: 4px;
}

.bht-cart-component-editor__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px;
    border: 1px solid rgba(23, 60, 42, .10);
    border-radius: 12px;
    background: #fff;
}

.bht-cart-component-editor__row > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.bht-cart-component-editor__row strong {
    color: #25382d;
    font-size: 11px;
}

.bht-cart-component-editor__row small {
    color: #839087;
    font-size: 9px;
}

.bht-checkout-price-lines {
    display: grid;
    gap: 4px;
    margin: 8px 0 0;
    padding: 0;
    list-style: none;
}

.bht-checkout-price-lines li {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    color: #7a867f;
    font-size: 10px;
}

.bht-checkout-price-lines li strong {
    color: #536158;
    font-size: 10px;
}

@media (max-width: 575px) {
    .bht-pricing-component,
    .bht-cart-component-editor__row {
        align-items: flex-start;
    }

    .bht-pricing-component {
        flex-direction: column;
    }

    .bht-pricing-component__required,
    .bht-pricing-toggle,
    .bht-pricing-quantity {
        align-self: flex-start;
    }
}
/* BHT_BOOKING_PRICING_ENGINE_V4_END */

/* BHT_BOOKING_WIZARD_PARTICIPANT_CONTRACT_V4_2_BEGIN */
.bht-booking-wizard-v42 .bht-engine-heading {
    max-width: 820px;
    margin-right: auto;
    margin-left: auto;
}

.bht-booking-contract-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin: -8px 0 32px;
}

.bht-booking-contract-strip > span {
    display: flex;
    min-height: 58px;
    align-items: center;
    gap: 10px;
    padding: 12px 15px;
    border: 1px solid rgba(23, 60, 42, .1);
    border-radius: 16px;
    background: #fff;
    color: #66756c;
    font-size: 11px;
    box-shadow: 0 10px 28px rgba(23, 60, 42, .06);
}

.bht-booking-contract-strip i {
    display: inline-flex;
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgba(22, 132, 71, .09);
    color: #168447;
    font-size: 14px;
}

.bht-booking-contract-strip strong {
    color: #173c2a;
    font-weight: 850;
}

.bht-engine-card--wizard {
    overflow: visible;
}

.bht-engine-card--wizard .bht-engine-card__body {
    padding-bottom: 22px;
}

.bht-engine-card__starting-price {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    margin-top: 17px;
    padding-top: 15px;
    border-top: 1px solid rgba(23, 60, 42, .1);
}

.bht-engine-card__starting-price span {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.bht-engine-card__starting-price small {
    color: #87938b;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bht-engine-card__starting-price strong {
    color: #173c2a;
    font-size: 19px;
    line-height: 1.1;
}

.bht-engine-card__starting-price em {
    color: #7b887f;
    font-size: 10px;
    font-style: normal;
}

.bht-service-wizard {
    margin-top: 18px;
    border: 1px solid rgba(23, 60, 42, .12);
    border-radius: 18px;
    background: #fbfdfb;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.bht-service-wizard[open] {
    border-color: rgba(22, 132, 71, .28);
    box-shadow: 0 18px 38px rgba(23, 60, 42, .09);
}

.bht-service-wizard__opener {
    display: flex;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 16px;
    color: #173c2a;
    cursor: pointer;
    font-size: 12px;
    font-weight: 850;
    list-style: none;
}

.bht-service-wizard__opener::-webkit-details-marker {
    display: none;
}

.bht-service-wizard__opener i {
    transition: transform .2s ease;
}

.bht-service-wizard[open] .bht-service-wizard__opener i {
    transform: rotate(180deg);
}

.bht-wizard-form {
    padding: 0 16px 16px;
}

.bht-wizard-stepper {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 7px;
    margin: 4px 0 16px;
}

.bht-wizard-stepper span {
    display: flex;
    min-height: 31px;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    background: #eef3ef;
    color: #849087;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.bht-wizard-stepper span.is-active,
.bht-wizard-stepper span.is-complete {
    background: #168447;
    color: #fff;
}

.bht-wizard-stepper span.is-complete {
    background: rgba(22, 132, 71, .13);
    color: #168447;
}

.bht-wizard-step {
    padding: 16px;
    border: 1px solid rgba(23, 60, 42, .09);
    border-radius: 15px;
    background: #fff;
}

.bht-wizard-step__heading {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}

.bht-wizard-step__heading > span {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    padding: 0 9px;
    border-radius: 999px;
    background: rgba(22, 132, 71, .09);
    color: #168447;
    font-size: 9px;
    font-weight: 850;
    text-transform: uppercase;
}

.bht-wizard-step__heading h4 {
    margin: 0;
    color: #173c2a;
    font-size: 14px;
}

.bht-wizard-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.bht-wizard-fields .bht-field {
    min-width: 0;
}

.bht-wizard-fields .bht-field > span {
    display: block;
    margin-bottom: 6px;
    color: #4f5e54;
    font-size: 10px;
    font-weight: 800;
}

.bht-wizard-fields .bht-field input,
.bht-wizard-fields .bht-field select {
    width: 100%;
    min-height: 44px;
    padding: 0 12px;
    border: 1px solid rgba(23, 60, 42, .13);
    border-radius: 11px;
    background: #fff;
    color: #26382d;
    font-size: 12px;
    font-weight: 700;
}

.bht-wizard-fields .bht-field small {
    display: block;
    margin-top: 6px;
    color: #869188;
    font-size: 9px;
    line-height: 1.45;
}

.bht-wizard-fields .bht-field--wide {
    grid-column: 1 / -1;
}

.bht-allocation-intro {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin-bottom: 12px;
    padding: 11px 12px;
    border-radius: 12px;
    background: rgba(232, 199, 58, .12);
    color: #665b28;
    font-size: 10px;
    line-height: 1.5;
}

.bht-allocation-grid,
.bht-route-choice-grid,
.bht-transport-choice-grid {
    display: grid;
    gap: 10px;
}

.bht-allocation-choice,
.bht-route-choice > span,
.bht-transport-choice > span {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px;
    border: 1px solid rgba(23, 60, 42, .11);
    border-radius: 13px;
    background: #fff;
}

.bht-allocation-choice > div,
.bht-route-choice > span > span,
.bht-transport-choice > span > span {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.bht-allocation-choice strong,
.bht-route-choice strong,
.bht-transport-choice strong {
    color: #25382d;
    font-size: 11px;
}

.bht-allocation-choice small,
.bht-route-choice small,
.bht-transport-choice small {
    color: #829087;
    font-size: 9px;
    line-height: 1.4;
}

.bht-allocation-choice b,
.bht-route-choice b,
.bht-transport-choice b {
    color: #168447;
    font-size: 10px;
    font-weight: 850;
    white-space: nowrap;
}

.bht-allocation-choice input[type="number"] {
    width: 68px;
    min-height: 38px;
    padding: 5px 8px;
    border: 1px solid rgba(23, 60, 42, .14);
    border-radius: 10px;
    background: #f8faf8;
    color: #173c2a;
    font-weight: 850;
    text-align: center;
}

.bht-route-choice,
.bht-transport-choice {
    position: relative;
    display: block;
    cursor: pointer;
}

.bht-route-choice input,
.bht-transport-choice input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.bht-route-choice > span,
.bht-transport-choice > span {
    justify-content: flex-start;
    transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.bht-route-choice > span > i,
.bht-transport-choice > span > i {
    display: inline-flex;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #f0f5f1;
    color: #168447;
}

.bht-route-choice b,
.bht-transport-choice b {
    margin-left: auto;
}

.bht-route-choice__check {
    display: inline-flex;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(23, 60, 42, .18);
    border-radius: 50%;
    color: transparent;
}

.bht-route-choice input:checked + span,
.bht-transport-choice input:checked + span {
    border-color: #168447;
    background: rgba(22, 132, 71, .045);
    box-shadow: 0 10px 22px rgba(22, 132, 71, .09);
}

.bht-route-choice input:checked + span .bht-route-choice__check {
    border-color: #168447;
    background: #168447;
    color: #fff;
}

.bht-wizard-no-options {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 13px;
    border-radius: 13px;
    background: #f4f8f5;
}

.bht-wizard-no-options i {
    color: #168447;
    font-size: 17px;
}

.bht-wizard-no-options div {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.bht-wizard-no-options strong {
    color: #25382d;
    font-size: 11px;
}

.bht-wizard-no-options span {
    color: #829087;
    font-size: 9px;
}

.bht-wizard-review {
    display: grid;
    gap: 7px;
}

.bht-wizard-review__summary {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: flex-start !important;
    gap: 7px !important;
    padding: 0 !important;
    background: transparent !important;
}

.bht-wizard-review__summary > span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 9px;
    border-radius: 999px;
    background: rgba(22, 132, 71, .08);
    color: #456052;
    font-size: 9px;
    font-weight: 800;
}

.bht-wizard-review__lines {
    display: grid !important;
    gap: 6px !important;
    padding: 0 !important;
    background: transparent !important;
}

.bht-wizard-review__lines > div {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 9px 11px;
    border-radius: 10px;
    background: #f6f9f7;
    color: #56645b;
    font-size: 10px;
}

.bht-wizard-review__lines > div > span {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.bht-wizard-review__lines small {
    color: #87938b;
    font-size: 9px;
}

.bht-wizard-review__lines b {
    color: #173c2a;
    font-size: 10px;
    white-space: nowrap;
}

.bht-wizard-review > p {
    margin: 2px 0 0;
    color: #168447;
    font-size: 10px;
    font-weight: 750;
}

.bht-wizard-review > p.is-invalid {
    color: #b91c1c;
}

.bht-wizard-review > div:not(.bht-wizard-review__empty) {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 9px 11px;
    border-radius: 10px;
    background: #f6f9f7;
    color: #56645b;
    font-size: 10px;
}

.bht-wizard-review > div strong {
    color: #173c2a;
    font-size: 10px;
    white-space: nowrap;
}

.bht-wizard-review__empty {
    padding: 13px;
    border: 1px dashed rgba(23, 60, 42, .15);
    border-radius: 12px;
    color: #859087;
    font-size: 10px;
    text-align: center;
}

.bht-wizard-total {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    margin-top: 13px;
    padding: 13px 14px;
    border-radius: 13px;
    background: #173c2a;
    color: #fff;
}

.bht-wizard-total span {
    display: flex;
    flex-direction: column;
}

.bht-wizard-total small,
.bht-wizard-total em {
    color: rgba(255, 255, 255, .68);
    font-size: 9px;
    font-style: normal;
}

.bht-wizard-total strong {
    color: #fff;
    font-size: 18px;
}

.bht-wizard-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    margin-top: 13px;
}

.bht-wizard-back,
.bht-wizard-next {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 0 14px;
    border: 0;
    border-radius: 11px;
    font-size: 10px;
    font-weight: 850;
}

.bht-wizard-back {
    margin-right: auto;
    background: #eef3ef;
    color: #56645b;
}

.bht-wizard-next {
    background: #168447;
    color: #fff;
}

.bht-wizard-submit {
    min-height: 42px;
}

.bht-cart-contract-meta,
.bht-booking-contract-summary,
.bht-success-contract {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 9px;
}

.bht-cart-contract-meta span,
.bht-booking-contract-summary span,
.bht-success-contract span,
.bht-checkout-contract-line {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 9px;
    border-radius: 999px;
    background: #f0f5f1;
    color: #536158;
    font-size: 9px;
    font-weight: 750;
}

.bht-cart-route-editor,
.bht-cart-transport-editor {
    display: grid;
    grid-column: 1 / -1;
    gap: 7px;
    width: 100%;
    padding: 11px;
    border: 1px solid rgba(23, 60, 42, .1);
    border-radius: 12px;
    background: #fff;
}

.bht-cart-route-editor > span,
.bht-cart-transport-editor > span {
    color: #46544b;
    font-size: 10px;
    font-weight: 850;
}

.bht-cart-route-editor label,
.bht-cart-transport-editor label {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #647168;
    font-size: 10px;
    cursor: pointer;
}

.bht-booking-allocation {
    display: block;
    margin-top: 8px;
    color: #738078;
}

.bht-success-contract {
    margin-top: 6px;
}

@media (max-width: 991.98px) {
    .bht-booking-contract-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .bht-booking-contract-strip,
    .bht-wizard-fields {
        grid-template-columns: 1fr;
    }

    .bht-booking-contract-strip {
        gap: 8px;
        margin-bottom: 22px;
    }

    .bht-wizard-stepper span {
        min-height: 28px;
        font-size: 8px;
    }

    .bht-wizard-step,
    .bht-wizard-form {
        padding-right: 12px;
        padding-left: 12px;
    }

    .bht-allocation-choice,
    .bht-route-choice > span,
    .bht-transport-choice > span {
        align-items: flex-start;
    }

    .bht-route-choice b,
    .bht-transport-choice b {
        white-space: normal;
        text-align: right;
    }

    .bht-wizard-total,
    .bht-wizard-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .bht-wizard-back {
        margin-right: 0;
    }

    .bht-wizard-actions > button {
        width: 100%;
    }
}

.bht-detail-wizard-entry,
.bht-tour-package-wizard-entry,
.bht-fd10-wizard-entry,
.bht-fd8-wizard-entry {
    display: grid;
    gap: 12px;
    margin: 22px 0 16px;
}

.bht-detail-wizard-entry__steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
}

.bht-detail-wizard-entry__steps span {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 34px;
    padding: 5px;
    border: 1px solid rgba(23, 60, 42, 0.12);
    border-radius: 10px;
    background: #f7f9f6;
    color: #526159;
    font-size: 9px;
    font-weight: 800;
    text-align: center;
}

.bht-detail-wizard-entry__note,
.bht-tour-package-wizard-entry small,
.bht-fd10-wizard-entry small,
.bht-fd8-wizard-entry small {
    display: block;
    margin: 0;
    color: #6b776f;
    font-size: 11px;
    line-height: 1.55;
    text-align: center;
}

@media (max-width: 575.98px) {
    .bht-detail-wizard-entry__steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* BHT_BOOKING_WIZARD_PARTICIPANT_CONTRACT_V4_2_END */

/* BHT_DEDICATED_DETAIL_WIZARD_PASSENGER_PRICING_V4_3_BEGIN */
.bht-booking-catalog-v43 {
    background: linear-gradient(180deg, #f7faf7 0%, #fff 45%);
}
.bht-booking-catalog-v43 .bht-engine-heading {
    max-width: 800px;
    margin: 0 auto 34px;
    text-align: center;
}
.bht-booking-catalog-v43 .bht-engine-heading p {
    max-width: 690px;
    margin: 12px auto 0;
}
.bht-booking-catalog-v43 .bht-booking-contract-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 28px;
}
.bht-booking-catalog-v43 .bht-booking-contract-strip > span {
    display: flex;
    min-height: 62px;
    align-items: center;
    gap: 11px;
    padding: 13px 15px;
    border: 1px solid rgba(23, 60, 42, .1);
    border-radius: 17px;
    background: #fff;
    color: #66756c;
    font-size: 11px;
    line-height: 1.45;
    box-shadow: 0 12px 28px rgba(23, 60, 42, .06);
}
.bht-booking-catalog-v43 .bht-booking-contract-strip i {
    display: inline-flex;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: rgba(22, 132, 71, .09);
    color: #168447;
    font-size: 15px;
}
.bht-booking-catalog-v43 .bht-booking-contract-strip strong {
    color: #173c2a;
}
.bht-booking-catalog-v43 .bht-engine-card {
    height: 100%;
    overflow: hidden;
    border: 1px solid rgba(23, 60, 42, .09);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 60, 42, .08);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.bht-booking-catalog-v43 .bht-engine-card:hover {
    transform: translateY(-5px);
    border-color: rgba(22, 132, 71, .24);
    box-shadow: 0 24px 52px rgba(23, 60, 42, .13);
}
.bht-booking-catalog-v43 .bht-engine-card__body {
    display: flex;
    min-height: 280px;
    flex-direction: column;
    padding: 22px;
}
.bht-booking-catalog-v43 .bht-engine-card__summary {
    flex: 1 1 auto;
}
.bht-catalog-detail-action {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    margin-top: 18px;
    padding-top: 17px;
    border-top: 1px solid rgba(23, 60, 42, .09);
}
.bht-catalog-detail-action > span {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}
.bht-catalog-detail-action small {
    color: #89958d;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.bht-catalog-detail-action strong {
    color: #173c2a;
    font-size: 19px;
    line-height: 1.15;
}
.bht-catalog-detail-action .th-btn {
    min-width: 154px;
    padding: 14px 18px;
    font-size: 11px;
}
.bht-catalog-cart-bar {
    position: sticky;
    z-index: 20;
    bottom: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 32px;
    padding: 17px 20px;
    border: 1px solid rgba(232, 199, 58, .28);
    border-radius: 20px;
    background: rgba(23, 60, 42, .97);
    color: #fff;
    box-shadow: 0 20px 46px rgba(12, 32, 22, .22);
    backdrop-filter: blur(14px);
}
.bht-catalog-cart-bar > div {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 14px;
}
.bht-catalog-cart-bar i {
    color: #e8c73a;
    font-size: 22px;
}
.bht-catalog-cart-bar span {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.bht-catalog-cart-bar small {
    color: rgba(255,255,255,.66);
    font-size: 10px;
}
.bht-catalog-cart-bar strong {
    color: #fff;
    font-size: 15px;
}
.bht-catalog-cart-bar .th-btn {
    min-width: 180px;
}


.bht-booking-catalog-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-bottom: 32px;
}
.bht-booking-catalog-tabs a {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    gap: 9px;
    padding: 0 18px;
    border: 1px solid rgba(23,60,42,.11);
    border-radius: 999px;
    background: #fff;
    color: #59675e;
    font-size: 11px;
    font-weight: 850;
    box-shadow: 0 9px 22px rgba(23,60,42,.05);
    transition: border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease;
}
.bht-booking-catalog-tabs a:hover,
.bht-booking-catalog-tabs a.is-active {
    border-color: #168447;
    background: #168447;
    color: #fff;
    transform: translateY(-2px);
}
.bht-booking-catalog-card {
    display: flex;
    height: 100%;
    overflow: hidden;
    flex-direction: column;
    border: 1px solid rgba(23,60,42,.09);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23,60,42,.08);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.bht-booking-catalog-card:hover {
    transform: translateY(-5px);
    border-color: rgba(22,132,71,.24);
    box-shadow: 0 24px 52px rgba(23,60,42,.13);
}
.bht-booking-catalog-card__image {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 16 / 10;
}
.bht-booking-catalog-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s ease;
}
.bht-booking-catalog-card:hover .bht-booking-catalog-card__image img {
    transform: scale(1.055);
}
.bht-booking-catalog-card__image > span {
    position: absolute;
    right: 14px;
    bottom: 14px;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(23,60,42,.9);
    color: #fff;
    font-size: 9px;
    font-weight: 850;
    backdrop-filter: blur(8px);
}
.bht-booking-catalog-card__body {
    display: flex;
    min-height: 282px;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 22px;
}
.bht-booking-catalog-card__meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 7px;
    margin-bottom: 9px;
    color: #168447;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.bht-booking-catalog-card h3 {
    margin: 0 0 9px;
    font-size: 20px;
    line-height: 1.25;
}
.bht-booking-catalog-card h3 a {
    color: #173c2a;
}
.bht-booking-catalog-card p {
    flex: 1 1 auto;
    margin: 0;
    color: #718077;
    font-size: 11px;
    line-height: 1.65;
}
.bht-booking-catalog-card__footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 13px;
    margin-top: 18px;
    padding-top: 17px;
    border-top: 1px solid rgba(23,60,42,.09);
}
.bht-booking-catalog-card__footer > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}
.bht-booking-catalog-card__footer small {
    color: #89958d;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.bht-booking-catalog-card__footer strong {
    color: #173c2a;
    font-size: 16px;
    line-height: 1.15;
}
.bht-booking-catalog-card__footer .th-btn {
    min-width: 148px;
    padding: 13px 15px;
    font-size: 10px;
}
.bht-booking-catalog-cartbar {
    position: sticky;
    z-index: 20;
    bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 32px;
    padding: 16px 19px;
    border: 1px solid rgba(232,199,58,.28);
    border-radius: 19px;
    background: rgba(23,60,42,.97);
    color: #fff;
    box-shadow: 0 20px 46px rgba(12,32,22,.22);
    backdrop-filter: blur(14px);
}
.bht-booking-catalog-cartbar > div {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 13px;
}
.bht-booking-catalog-cartbar > div > i {
    color: #e8c73a;
    font-size: 22px;
}
.bht-booking-catalog-cartbar span {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.bht-booking-catalog-cartbar strong {
    color: #fff;
    font-size: 13px;
}
.bht-booking-catalog-cartbar small {
    color: rgba(255,255,255,.64);
    font-size: 9px;
}
.bht-booking-catalog-cartbar > a {
    display: inline-flex;
    min-height: 43px;
    align-items: center;
    justify-content: center;
    padding: 0 17px;
    border-radius: 11px;
    background: #e8c73a;
    color: #173c2a;
    font-size: 10px;
    font-weight: 900;
}

.bht-service-detail-page .row.align-items-start > [class*="col-xl-5"],
.bht-tour-package-sidebar,
.bht-fd10-sidebar,
.bht-fd8-sidebar {
    position: sticky;
    top: 102px;
}
.bht-dedicated-wizard-v43 {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(23, 60, 42, .12);
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 24px 64px rgba(23, 60, 42, .13);
}
.bht-dedicated-wizard-v43::before {
    position: absolute;
    z-index: 0;
    top: -90px;
    right: -80px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(232,199,58,.22), rgba(232,199,58,0) 68%);
    content: "";
    pointer-events: none;
}
.bht-dedicated-wizard__head,
.bht-dedicated-wizard-v43 form,
.bht-dedicated-added,
.bht-dedicated-trust {
    position: relative;
    z-index: 1;
}
.bht-dedicated-wizard__head {
    padding: 26px 26px 20px;
    border-bottom: 1px solid rgba(23, 60, 42, .08);
    background: linear-gradient(145deg, #f7faf7 0%, #fff 72%);
}
.bht-dedicated-wizard__head .sub-title {
    margin-bottom: 6px;
    color: #168447;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.bht-dedicated-wizard__head h2 {
    margin: 0;
    color: #173c2a;
    font-size: clamp(22px, 2.2vw, 29px);
    line-height: 1.16;
}
.bht-dedicated-wizard__head p {
    margin: 9px 0 0;
    color: #6e7b73;
    font-size: 12px;
    line-height: 1.65;
}
.bht-dedicated-wizard__toast {
    position: absolute;
    z-index: 15;
    top: 15px;
    right: 15px;
    left: 15px;
    padding: 12px 15px;
    border-radius: 13px;
    background: #173c2a;
    color: #fff;
    font-size: 11px;
    font-weight: 750;
    opacity: 0;
    transform: translateY(-12px);
    pointer-events: none;
    transition: opacity .2s ease, transform .2s ease;
}
.bht-dedicated-wizard__toast[data-tone="error"] {
    background: #9f2f2f;
}
.bht-dedicated-wizard__toast.is-visible {
    opacity: 1;
    transform: translateY(0);
}
.bht-dedicated-wizard-v43 form {
    padding: 22px 24px 24px;
}
.bht-dedicated-stepper {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 7px;
    margin-bottom: 20px;
}
.bht-dedicated-stepper button {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 48px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    padding: 5px 3px;
    border: 0;
    border-radius: 12px;
    background: #eef3ef;
    color: #7e8b82;
    cursor: pointer;
    transition: background .2s ease, color .2s ease, transform .2s ease;
}
.bht-dedicated-stepper button:not(:disabled):hover {
    transform: translateY(-2px);
}
.bht-dedicated-stepper button > span {
    display: inline-flex;
    width: 21px;
    height: 21px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255,255,255,.78);
    font-size: 9px;
    font-weight: 900;
}
.bht-dedicated-stepper button small {
    max-width: 100%;
    overflow: hidden;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: .04em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}
.bht-dedicated-stepper button.is-active {
    background: #168447;
    color: #fff;
    box-shadow: 0 10px 22px rgba(22,132,71,.18);
}
.bht-dedicated-stepper button.is-complete {
    background: rgba(22,132,71,.1);
    color: #168447;
}
.bht-dedicated-stepper button:disabled {
    cursor: not-allowed;
    opacity: .62;
}
.bht-dedicated-step {
    min-height: 310px;
    padding: 20px;
    border: 1px solid rgba(23, 60, 42, .09);
    border-radius: 19px;
    background: #fbfdfb;
}
.bht-dedicated-step[hidden] {
    display: none !important;
}
.bht-dedicated-step__title {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 18px;
}
.bht-dedicated-step__title > span {
    display: inline-flex;
    min-height: 28px;
    flex: 0 0 auto;
    align-items: center;
    padding: 0 10px;
    border-radius: 999px;
    background: rgba(22,132,71,.09);
    color: #168447;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.bht-dedicated-step__title h3 {
    margin: 0;
    color: #173c2a;
    font-size: 17px;
    line-height: 1.25;
}
.bht-dedicated-step__title p {
    margin: 4px 0 0;
    color: #7b887f;
    font-size: 10px;
    line-height: 1.55;
}
.bht-dedicated-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}
.bht-dedicated-fields--two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.bht-dedicated-fields label,
.bht-dedicated-select {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 6px;
}
.bht-dedicated-fields label.is-wide,
.bht-dedicated-select {
    grid-column: 1 / -1;
}
.bht-dedicated-fields label > span,
.bht-dedicated-select > span {
    color: #4e5d53;
    font-size: 10px;
    font-weight: 850;
}
.bht-dedicated-fields input,
.bht-dedicated-fields select,
.bht-dedicated-fields textarea,
.bht-dedicated-select select {
    width: 100%;
    min-height: 47px;
    padding: 0 13px;
    border: 1px solid rgba(23, 60, 42, .14);
    border-radius: 12px;
    outline: 0;
    background: #fff;
    color: #26382d;
    font-size: 12px;
    font-weight: 700;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.bht-dedicated-fields textarea {
    min-height: 90px;
    padding-top: 11px;
    resize: vertical;
}
.bht-dedicated-fields input:focus,
.bht-dedicated-fields select:focus,
.bht-dedicated-fields textarea:focus,
.bht-dedicated-select select:focus {
    border-color: #168447;
    box-shadow: 0 0 0 3px rgba(22,132,71,.08);
}
.bht-passenger-counter-grid {
    display: grid;
    gap: 11px;
}
.bht-passenger-counter {
    display: flex;
    min-height: 67px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 14px;
    border: 1px solid rgba(23,60,42,.1);
    border-radius: 15px;
    background: #fff;
}
.bht-passenger-counter > div:first-child {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}
.bht-passenger-counter strong {
    color: #26382d;
    font-size: 12px;
}
.bht-passenger-counter small {
    color: #869289;
    font-size: 9px;
}
.bht-counter-control {
    display: grid;
    grid-template-columns: 36px 42px 36px;
    align-items: center;
    overflow: hidden;
    border: 1px solid rgba(23,60,42,.13);
    border-radius: 11px;
    background: #f7faf7;
}
.bht-counter-control button {
    width: 36px;
    height: 38px;
    border: 0;
    background: transparent;
    color: #168447;
    font-size: 19px;
    font-weight: 500;
}
.bht-counter-control input {
    width: 42px;
    height: 38px;
    padding: 0;
    border: 0;
    background: #fff;
    color: #173c2a;
    font-size: 13px;
    font-weight: 900;
    text-align: center;
    appearance: textfield;
}
.bht-counter-control input::-webkit-outer-spin-button,
.bht-counter-control input::-webkit-inner-spin-button {
    margin: 0;
    appearance: none;
}
.bht-total-pax-strip {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 4px 12px;
    margin-top: 13px;
    padding: 13px 15px;
    border-radius: 14px;
    background: #173c2a;
    color: #fff;
}
.bht-total-pax-strip > span {
    font-size: 10px;
    font-weight: 750;
}
.bht-total-pax-strip strong {
    color: #e8c73a;
    font-size: 14px;
}
.bht-total-pax-strip small {
    grid-column: 1 / -1;
    color: rgba(255,255,255,.62);
    font-size: 9px;
}
.bht-dedicated-choice-grid,
.bht-dedicated-allocation-grid,
.bht-dedicated-component-list {
    display: grid;
    gap: 10px;
}
.bht-dedicated-choice {
    position: relative;
    display: block;
    cursor: pointer;
}
.bht-dedicated-choice > input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.bht-dedicated-choice > span {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px;
    border: 1px solid rgba(23,60,42,.11);
    border-radius: 15px;
    background: #fff;
    transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.bht-dedicated-choice > span > i {
    display: inline-flex;
    width: 37px;
    height: 37px;
    flex: 0 0 37px;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: rgba(22,132,71,.09);
    color: #168447;
}
.bht-dedicated-choice > span > span {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 2px;
}
.bht-dedicated-choice strong {
    color: #26382d;
    font-size: 11px;
}
.bht-dedicated-choice small {
    color: #849087;
    font-size: 9px;
    line-height: 1.4;
}
.bht-dedicated-choice em {
    color: #168447;
    font-size: 9px;
    font-style: normal;
    font-weight: 800;
}
.bht-dedicated-choice b {
    display: inline-flex;
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(23,60,42,.17);
    border-radius: 50%;
    color: transparent;
}
.bht-dedicated-choice > input:checked + span {
    border-color: #168447;
    background: rgba(22,132,71,.045);
    box-shadow: 0 12px 26px rgba(22,132,71,.09);
}
.bht-dedicated-choice > input:checked + span b {
    border-color: #168447;
    background: #168447;
    color: #fff;
}
.bht-allocation-notice {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 12px;
    padding: 12px 13px;
    border-radius: 13px;
    background: rgba(232,199,58,.13);
    color: #665c2c;
    font-size: 10px;
    line-height: 1.5;
}
.bht-dedicated-allocation,
.bht-dedicated-component {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 13px;
    padding: 13px;
    border: 1px solid rgba(23,60,42,.1);
    border-radius: 14px;
    background: #fff;
}
.bht-dedicated-allocation > div,
.bht-dedicated-component > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}
.bht-dedicated-allocation strong,
.bht-dedicated-component strong {
    color: #26382d;
    font-size: 11px;
}
.bht-dedicated-allocation small,
.bht-dedicated-component small {
    color: #849087;
    font-size: 9px;
}
.bht-dedicated-allocation input[type="number"],
.bht-dedicated-component input[type="number"] {
    width: 70px;
    min-height: 40px;
    padding: 5px 8px;
    border: 1px solid rgba(23,60,42,.14);
    border-radius: 10px;
    background: #f7faf7;
    color: #173c2a;
    font-size: 12px;
    font-weight: 900;
    text-align: center;
}
.bht-switch {
    position: relative;
    width: 44px;
    height: 24px;
}
.bht-switch input[type="checkbox"] {
    position: absolute;
    opacity: 0;
}
.bht-switch > span {
    position: absolute;
    inset: 0;
    border-radius: 999px;
    background: #dfe7e1;
    transition: background .2s ease;
}
.bht-switch > span::after {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 3px 8px rgba(23,60,42,.18);
    content: "";
    transition: transform .2s ease;
}
.bht-switch input:checked + span {
    background: #168447;
}
.bht-switch input:checked + span::after {
    transform: translateX(20px);
}
.bht-dedicated-empty-option {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 14px;
    border-radius: 14px;
    background: #eef5f0;
    color: #526157;
    font-size: 10px;
    line-height: 1.5;
}
.bht-dedicated-empty-option i {
    color: #168447;
    font-size: 16px;
}
.bht-dedicated-review {
    overflow: hidden;
    border: 1px solid rgba(23,60,42,.1);
    border-radius: 15px;
    background: #fff;
}
.bht-dedicated-review__loading,
.bht-dedicated-review__error {
    display: flex;
    min-height: 120px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 20px;
    color: #6f7c73;
    font-size: 11px;
    text-align: center;
}
.bht-dedicated-review__error {
    color: #a23a3a;
}
.bht-dedicated-review__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    padding: 13px;
    border-bottom: 1px solid rgba(23,60,42,.08);
    background: #f7faf7;
}
.bht-dedicated-review__badges span {
    padding: 6px 8px;
    border-radius: 999px;
    background: #fff;
    color: #536158;
    font-size: 9px;
    font-weight: 800;
}
.bht-dedicated-review__lines {
    padding: 5px 13px;
}
.bht-dedicated-review__lines > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 11px 0;
    border-bottom: 1px dashed rgba(23,60,42,.1);
}
.bht-dedicated-review__lines > div:last-child {
    border-bottom: 0;
}
.bht-dedicated-review__lines span {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}
.bht-dedicated-review__lines strong {
    color: #26382d;
    font-size: 10px;
}
.bht-dedicated-review__lines small {
    color: #879289;
    font-size: 9px;
}
.bht-dedicated-review__lines b {
    color: #173c2a;
    font-size: 10px;
    white-space: nowrap;
}
.bht-dedicated-grand-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-top: 12px;
    padding: 15px 16px;
    border-radius: 15px;
    background: #173c2a;
    color: #fff;
}
.bht-dedicated-grand-total > span {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.bht-dedicated-grand-total small {
    color: rgba(255,255,255,.62);
    font-size: 8px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.bht-dedicated-grand-total strong {
    color: #e8c73a;
    font-size: 20px;
}
.bht-dedicated-grand-total em {
    color: #a9d7b8;
    font-size: 9px;
    font-style: normal;
    font-weight: 800;
}
.bht-dedicated-grand-total em.is-error {
    color: #ffb5b5;
}
.bht-dedicated-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 16px;
}
.bht-dedicated-actions button {
    min-height: 46px;
}
.bht-dedicated-back,
.bht-dedicated-next {
    padding: 0 17px;
    border: 1px solid rgba(23,60,42,.13);
    border-radius: 12px;
    background: #fff;
    color: #173c2a;
    font-size: 10px;
    font-weight: 900;
}
.bht-dedicated-next {
    border-color: #168447;
    background: #168447;
    color: #fff;
}
.bht-dedicated-submit {
    min-width: 170px;
}
.bht-dedicated-added {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 24px 20px;
    padding: 14px;
    border: 1px solid rgba(22,132,71,.2);
    border-radius: 14px;
    background: rgba(22,132,71,.06);
}
.bht-dedicated-added[hidden] {
    display: none !important;
}
.bht-dedicated-added > i {
    color: #168447;
    font-size: 22px;
}
.bht-dedicated-added > div {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 2px;
}
.bht-dedicated-added strong {
    color: #173c2a;
    font-size: 11px;
}
.bht-dedicated-added span {
    color: #758178;
    font-size: 9px;
}
.bht-dedicated-added a {
    color: #168447;
    font-size: 10px;
    font-weight: 900;
}
.bht-dedicated-trust {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 1px;
    border-top: 1px solid rgba(23,60,42,.08);
    background: rgba(23,60,42,.08);
}
.bht-dedicated-trust span {
    display: flex;
    min-height: 51px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 9px 7px;
    background: #f7faf7;
    color: #68766d;
    font-size: 8px;
    font-weight: 800;
    text-align: center;
}
.bht-dedicated-trust i {
    color: #168447;
}
.bht-invoice-passenger-contract {
    margin: 18px 0;
    padding: 16px;
    border: 1px solid rgba(23,60,42,.1);
    border-radius: 16px;
    background: #f7faf7;
}
.bht-invoice-passenger-contract > small {
    display: block;
    margin-bottom: 9px;
    color: #168447;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.bht-invoice-passenger-contract > div {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
    padding: 9px 0;
    border-bottom: 1px dashed rgba(23,60,42,.1);
}
.bht-invoice-passenger-contract > div:last-child {
    border-bottom: 0;
}
.bht-invoice-passenger-contract span {
    display: flex;
    flex-direction: column;
    gap: 2px;
    color: #5f6d64;
    font-size: 10px;
}
.bht-invoice-passenger-contract strong {
    color: #173c2a;
}
.bht-invoice-passenger-contract em {
    color: #8a958e;
    font-size: 9px;
    font-style: normal;
}

@media (max-width: 1199px) {
    .bht-service-detail-page .row.align-items-start > [class*="col-xl-5"],
    .bht-tour-package-sidebar,
    .bht-fd10-sidebar,
    .bht-fd8-sidebar {
        position: static;
    }
    .bht-dedicated-wizard-v43 {
        max-width: 760px;
        margin: 0 auto;
    }
}
@media (max-width: 991px) {
    .bht-booking-catalog-v43 .bht-booking-contract-strip {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
    .bht-catalog-cart-bar {
        bottom: 10px;
    }
}
@media (max-width: 767px) {
    .bht-booking-catalog-tabs {
        display: grid;
        grid-template-columns: 1fr;
    }
    .bht-booking-catalog-tabs a {
        justify-content: center;
    }
    .bht-booking-catalog-card__footer {
        align-items: stretch;
        flex-direction: column;
    }
    .bht-booking-catalog-card__footer .th-btn {
        width: 100%;
    }
    .bht-booking-catalog-cartbar {
        align-items: stretch;
        flex-direction: column;
        margin-right: 6px;
        margin-left: 6px;
        padding: 14px;
    }
    .bht-booking-catalog-cartbar > a {
        width: 100%;
    }
    .bht-booking-catalog-v43 .bht-booking-contract-strip {
        grid-template-columns: 1fr;
    }
    .bht-catalog-detail-action {
        align-items: stretch;
        flex-direction: column;
    }
    .bht-catalog-detail-action .th-btn {
        width: 100%;
    }
    .bht-catalog-cart-bar {
        align-items: stretch;
        flex-direction: column;
        margin-right: 6px;
        margin-left: 6px;
        padding: 14px;
    }
    .bht-catalog-cart-bar .th-btn {
        width: 100%;
    }
    .bht-dedicated-wizard-v43 {
        border-radius: 22px;
    }
    .bht-dedicated-wizard__head {
        padding: 22px 19px 17px;
    }
    .bht-dedicated-wizard-v43 form {
        padding: 17px 15px 18px;
    }
    .bht-dedicated-stepper {
        gap: 4px;
    }
    .bht-dedicated-stepper button {
        min-height: 43px;
        border-radius: 9px;
    }
    .bht-dedicated-stepper button small {
        display: none;
    }
    .bht-dedicated-step {
        min-height: 0;
        padding: 16px;
    }
    .bht-dedicated-fields,
    .bht-dedicated-fields--two {
        grid-template-columns: 1fr;
    }
    .bht-dedicated-actions {
        position: sticky;
        z-index: 4;
        bottom: 8px;
        margin: 15px -5px -5px;
        padding: 8px;
        border: 1px solid rgba(23,60,42,.1);
        border-radius: 14px;
        background: rgba(255,255,255,.96);
        box-shadow: 0 12px 30px rgba(23,60,42,.14);
        backdrop-filter: blur(12px);
    }
    .bht-dedicated-actions button:not([hidden]) {
        flex: 1 1 auto;
    }
    .bht-dedicated-grand-total {
        align-items: flex-start;
        flex-direction: column;
    }
    .bht-dedicated-trust {
        grid-template-columns: 1fr;
    }
    .bht-dedicated-trust span {
        min-height: 40px;
    }
    .bht-invoice-passenger-contract > div {
        flex-direction: column;
    }
}
@media (max-width: 420px) {
    .bht-passenger-counter {
        gap: 8px;
        padding: 11px;
    }
    .bht-counter-control {
        grid-template-columns: 32px 37px 32px;
    }
    .bht-counter-control button {
        width: 32px;
    }
    .bht-counter-control input {
        width: 37px;
    }
    .bht-dedicated-choice > span,
    .bht-dedicated-allocation,
    .bht-dedicated-component {
        padding: 11px;
    }
}
/* BHT_DEDICATED_DETAIL_WIZARD_PASSENGER_PRICING_V4_3_END */

/* BHT_FULL_SCREEN_BOOKING_AVAILABILITY_ENGINE_V4_4_BEGIN */
:root {
    --bht-book-bg: #f4f6f1;
    --bht-book-surface: #ffffff;
    --bht-book-surface-soft: #f8faf6;
    --bht-book-ink: #17251f;
    --bht-book-muted: #68736d;
    --bht-book-line: #dfe6df;
    --bht-book-brand: var(--theme-color, #1f6b50);
    --bht-book-brand-dark: #154b39;
    --bht-book-accent: var(--theme-color2, #c99a4b);
    --bht-book-success: #17744c;
    --bht-book-error: #b42318;
    --bht-book-radius-lg: 28px;
    --bht-book-radius-md: 18px;
    --bht-book-shadow: 0 28px 80px rgba(23, 37, 31, 0.10);
}

body.bht-booking-engine-layout {
    min-height: 100vh;
    background:
        radial-gradient(circle at 8% 0%, rgba(201, 154, 75, 0.12), transparent 28rem),
        radial-gradient(circle at 95% 15%, rgba(31, 107, 80, 0.10), transparent 34rem),
        var(--bht-book-bg);
    color: var(--bht-book-ink);
}

body.bht-booking-engine-layout .cursor,
body.bht-booking-engine-layout .cursor2,
body.bht-booking-engine-layout .scroll-top,
body.bht-booking-engine-layout .preloader { display: none !important; }
body.bht-booking-engine-layout a { text-decoration: none; }
body.bht-booking-engine-layout input,
body.bht-booking-engine-layout select,
body.bht-booking-engine-layout textarea,
body.bht-booking-engine-layout button { font: inherit; }

.bht-skip-link {
    position: fixed;
    top: -80px;
    left: 18px;
    z-index: 99999;
    padding: 12px 18px;
    border-radius: 10px;
    background: var(--bht-book-ink);
    color: #fff;
}
.bht-skip-link:focus { top: 12px; }

.bht-booking-shell-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    min-height: 84px;
    display: grid;
    grid-template-columns: minmax(180px, 1fr) auto minmax(220px, 1fr);
    align-items: center;
    gap: 24px;
    padding: 12px clamp(20px, 4vw, 68px);
    background: rgba(255, 255, 255, 0.94);
    border-bottom: 1px solid rgba(23, 37, 31, 0.09);
    backdrop-filter: blur(18px);
    box-shadow: 0 8px 32px rgba(23, 37, 31, 0.04);
}
.bht-booking-shell-brand { display: inline-flex; align-items: center; width: fit-content; }
.bht-booking-shell-brand img { width: auto; height: 54px; max-width: 200px; object-fit: contain; }
.bht-booking-shell-secure {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 10px 16px;
    border-radius: 999px;
    color: var(--bht-book-success);
    background: rgba(23, 116, 76, 0.08);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.02em;
}
.bht-booking-shell-actions { display: flex; align-items: center; justify-content: flex-end; gap: 12px; }
.bht-booking-shell-summary {
    display: flex;
    align-items: flex-end;
    flex-direction: column;
    line-height: 1.2;
    color: var(--bht-book-ink);
}
.bht-booking-shell-summary span { font-size: 11px; color: var(--bht-book-muted); text-transform: uppercase; letter-spacing: .08em; }
.bht-booking-shell-summary strong { font-size: 14px; }
.bht-booking-shell-exit {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    padding: 0 16px;
    border: 1px solid var(--bht-book-line);
    border-radius: 999px;
    color: var(--bht-book-ink);
    font-weight: 700;
    font-size: 13px;
}
.bht-booking-shell-exit:hover { border-color: var(--bht-book-brand); color: var(--bht-book-brand); }

.bht-booking-shell-main {
    width: min(1460px, calc(100% - 40px));
    min-height: calc(100vh - 84px);
    margin: 0 auto;
    padding: clamp(36px, 5vw, 76px) 0 90px;
}
.bht-booking-flash {
    max-width: 1160px;
    margin: 0 auto 22px;
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 16px 18px;
    border-radius: 14px;
    font-weight: 600;
}
.bht-booking-flash.is-success { color: #145c3e; background: #e8f6ee; border: 1px solid #bfdfcb; }
.bht-booking-flash.is-error { color: #8f2018; background: #fff0ed; border: 1px solid #f0c7c0; }

.bht-booking-progress {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    max-width: 960px;
    margin: 0 auto 38px;
    position: relative;
}
.bht-booking-progress::before {
    content: "";
    position: absolute;
    top: 21px;
    left: 8%;
    right: 8%;
    height: 2px;
    background: var(--bht-book-line);
}
.bht-booking-progress__step {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 9px;
    color: #89928d;
}
.bht-booking-progress__step > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    border: 2px solid var(--bht-book-line);
    background: var(--bht-book-bg);
    font-weight: 800;
}
.bht-booking-progress__step div { display: grid; gap: 2px; }
.bht-booking-progress__step strong { font-size: 13px; color: inherit; }
.bht-booking-progress__step small { font-size: 11px; color: inherit; }
.bht-booking-progress__step.is-active { color: var(--bht-book-brand); }
.bht-booking-progress__step.is-active > span { color: #fff; border-color: var(--bht-book-brand); background: var(--bht-book-brand); box-shadow: 0 0 0 7px rgba(31, 107, 80, .10); }
.bht-booking-progress__step.is-complete { color: var(--bht-book-success); }
.bht-booking-progress__step.is-complete > span { color: #fff; border-color: var(--bht-book-success); background: var(--bht-book-success); }

.bht-booking-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--bht-book-brand);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .14em;
}
.bht-booking-search__intro,
.bht-booking-stage-head,
.bht-booking-results__head,
.bht-booking-configure__head { max-width: 1280px; margin: 0 auto; }
.bht-booking-search__intro { max-width: 980px; text-align: center; margin-bottom: 30px; }
.bht-booking-search__intro h1,
.bht-booking-stage-head h1,
.bht-booking-results__title h1,
.bht-booking-configure__hero h1 {
    margin: 8px 0 10px;
    color: var(--bht-book-ink);
    font-size: clamp(34px, 5vw, 66px);
    line-height: 1.05;
    letter-spacing: -.035em;
}
.bht-booking-search__intro p,
.bht-booking-stage-head > p,
.bht-booking-results__title p { max-width: 760px; margin: 0 auto; color: var(--bht-book-muted); font-size: 16px; line-height: 1.75; }

.bht-booking-search-card {
    max-width: 1180px;
    margin: 0 auto;
    overflow: hidden;
    background: var(--bht-book-surface);
    border: 1px solid rgba(23, 37, 31, .08);
    border-radius: var(--bht-book-radius-lg);
    box-shadow: var(--bht-book-shadow);
}
.bht-booking-search-card__top { display: grid; grid-template-columns: 1.25fr .75fr; border-bottom: 1px solid var(--bht-book-line); }
.bht-booking-search-card__field {
    min-height: 112px;
    padding: 26px 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-left: 1px solid var(--bht-book-line);
}
.bht-booking-search-card__field:first-child { border-left: 0; }
.bht-booking-search-card__field > span { color: var(--bht-book-muted); font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .09em; }
.bht-booking-search-card__field > span i { color: var(--bht-book-brand); margin-right: 7px; }
.bht-booking-search-card__field strong { margin-top: 7px; color: var(--bht-book-ink); font-size: clamp(18px, 2.1vw, 26px); }
.bht-booking-search-card__field small { color: var(--bht-book-muted); }
.bht-booking-search-card__field select,
.bht-booking-wide-select select {
    width: 100%;
    min-height: 48px;
    margin-top: 8px;
    border: 0;
    outline: 0;
    color: var(--bht-book-ink);
    background: transparent;
    font-size: 19px;
    font-weight: 700;
}

.bht-booking-calendar { padding: 30px; border-bottom: 1px solid var(--bht-book-line); }
.bht-booking-calendar__toolbar { display: grid; grid-template-columns: 48px 1fr 48px; align-items: center; margin-bottom: 22px; text-align: center; }
.bht-booking-calendar__toolbar button {
    width: 46px;
    height: 46px;
    border: 1px solid var(--bht-book-line);
    border-radius: 50%;
    background: #fff;
    color: var(--bht-book-ink);
    cursor: pointer;
}
.bht-booking-calendar__toolbar button:hover { color: #fff; border-color: var(--bht-book-brand); background: var(--bht-book-brand); }
.bht-booking-calendar__toolbar div { display: grid; gap: 2px; }
.bht-booking-calendar__toolbar strong { font-size: 18px; }
.bht-booking-calendar__toolbar small { color: var(--bht-book-muted); }
.bht-booking-calendar__months { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 42px; }
.bht-booking-calendar__month h3 { margin: 0 0 16px; text-align: center; font-size: 17px; }
.bht-booking-calendar__weekdays,
.bht-booking-calendar__days { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 5px; }
.bht-booking-calendar__weekdays span { padding: 5px 0 8px; text-align: center; color: var(--bht-book-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.bht-booking-calendar__days button,
.bht-booking-calendar__days > span {
    aspect-ratio: 1;
    min-width: 0;
    display: grid;
    place-items: center;
}
.bht-booking-calendar__days button {
    position: relative;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: var(--bht-book-ink);
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}
.bht-booking-calendar__days button:hover:not(:disabled) { color: var(--bht-book-brand); background: rgba(31, 107, 80, .10); }
.bht-booking-calendar__days button.is-in-range { border-radius: 0; background: rgba(31, 107, 80, .09); }
.bht-booking-calendar__days button.is-start,
.bht-booking-calendar__days button.is-end { border-radius: 12px; color: #fff; background: var(--bht-book-brand); }
.bht-booking-calendar__days button.is-today::after { content: ""; position: absolute; bottom: 5px; width: 4px; height: 4px; border-radius: 50%; background: var(--bht-book-accent); }
.bht-booking-calendar__days button.is-disabled { color: #bec5c1; cursor: not-allowed; text-decoration: line-through; }
.bht-booking-calendar__duration { margin-top: 24px; padding: 18px 20px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-radius: 16px; background: var(--bht-book-surface-soft); }
.bht-booking-calendar__duration > div:first-child { display: grid; gap: 3px; }
.bht-booking-calendar__duration span { font-weight: 800; }
.bht-booking-calendar__duration small { color: var(--bht-book-muted); }

.bht-booking-stepper { display: inline-grid; grid-template-columns: 40px 54px 40px; align-items: center; border: 1px solid var(--bht-book-line); border-radius: 999px; background: #fff; overflow: hidden; }
.bht-booking-stepper button { height: 40px; border: 0; background: transparent; color: var(--bht-book-brand); cursor: pointer; }
.bht-booking-stepper button:hover { background: rgba(31, 107, 80, .08); }
.bht-booking-stepper input { width: 100%; height: 40px; padding: 0; border: 0; outline: 0; background: transparent; text-align: center; font-weight: 800; appearance: textfield; }
.bht-booking-stepper input::-webkit-inner-spin-button { appearance: none; }

.bht-booking-party { padding: 30px; }
.bht-booking-party__heading { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.bht-booking-party__heading > span { font-size: 18px; font-weight: 800; }
.bht-booking-party__heading > span i { color: var(--bht-book-brand); margin-right: 8px; }
.bht-booking-party__heading small { color: var(--bht-book-muted); }
.bht-booking-party__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.bht-booking-counter { min-height: 86px; padding: 18px; display: flex; align-items: center; justify-content: space-between; gap: 14px; border: 1px solid var(--bht-book-line); border-radius: 16px; background: #fff; }
.bht-booking-counter > div:first-child { display: grid; }
.bht-booking-counter strong { font-size: 15px; }
.bht-booking-counter small { color: var(--bht-book-muted); font-size: 12px; }
.bht-booking-search-card__submit { padding: 25px 30px; display: flex; align-items: center; justify-content: space-between; gap: 22px; background: #17251f; color: #fff; }
.bht-booking-search-card__submit > div { display: flex; align-items: center; gap: 12px; }
.bht-booking-search-card__submit > div > i { color: #dfba78; font-size: 23px; }
.bht-booking-search-card__submit span { display: grid; }
.bht-booking-search-card__submit small { color: rgba(255,255,255,.65); }
.bht-booking-search-card__submit .th-btn { flex: 0 0 auto; }

.bht-booking-results__title { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.bht-booking-results__title p { margin: 0; }
.bht-booking-change-search,
.bht-booking-back-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--bht-book-brand);
    font-weight: 800;
}
.bht-booking-search-summary { margin: 28px 0 36px; display: grid; grid-template-columns: 1.35fr .75fr 1.2fr .9fr; overflow: hidden; border: 1px solid var(--bht-book-line); border-radius: 18px; background: rgba(255,255,255,.74); }
.bht-booking-search-summary > div { min-height: 88px; padding: 18px 20px; display: flex; align-items: center; gap: 12px; border-left: 1px solid var(--bht-book-line); }
.bht-booking-search-summary > div:first-child { border-left: 0; }
.bht-booking-search-summary i { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; color: var(--bht-book-brand); background: rgba(31,107,80,.09); }
.bht-booking-search-summary span { display: grid; gap: 2px; }
.bht-booking-search-summary small { color: var(--bht-book-muted); font-size: 11px; text-transform: uppercase; letter-spacing: .06em; }
.bht-booking-search-summary strong { font-size: 14px; }
.bht-booking-results__body { max-width: 1280px; margin: 0 auto; }
.bht-booking-result-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; }
.bht-booking-result-card { display: grid; grid-template-columns: 42% 58%; min-height: 310px; overflow: hidden; border: 1px solid rgba(23,37,31,.08); border-radius: 24px; background: #fff; box-shadow: 0 18px 50px rgba(23,37,31,.08); }
.bht-booking-result-card__image { position: relative; min-height: 100%; overflow: hidden; }
.bht-booking-result-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.bht-booking-result-card:hover .bht-booking-result-card__image img { transform: scale(1.05); }
.bht-booking-availability-badge { position: absolute; top: 16px; left: 16px; padding: 8px 11px; border-radius: 999px; color: #fff; background: var(--bht-book-success); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.bht-booking-result-card__content { padding: 25px; display: flex; flex-direction: column; }
.bht-booking-result-card__content > span { color: var(--bht-book-brand); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .10em; }
.bht-booking-result-card__content h2 { margin: 6px 0 9px; font-size: 26px; line-height: 1.15; }
.bht-booking-result-card__content p { color: var(--bht-book-muted); line-height: 1.55; }
.bht-booking-result-card__meta { display: flex; flex-wrap: wrap; gap: 8px 14px; color: var(--bht-book-muted); font-size: 12px; }
.bht-booking-result-card__meta i { color: var(--bht-book-brand); margin-right: 5px; }
.bht-booking-result-card__availability { margin-top: auto; padding: 12px 0; display: flex; align-items: center; gap: 8px; color: var(--bht-book-success); font-size: 13px; font-weight: 700; }
.bht-booking-result-card__footer { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; }
.bht-booking-result-card__footer small { display: block; color: var(--bht-book-muted); }
.bht-booking-result-card__footer strong { font-size: 18px; }
.bht-booking-result-card__footer .th-btn { padding: 13px 18px; }
.bht-booking-unavailable-list { max-width: 1280px; margin: 54px auto 0; }
.bht-booking-unavailable-list > h2 { font-size: 28px; }
.bht-booking-unavailable-list > p { color: var(--bht-book-muted); }
.bht-booking-unavailable-list__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.bht-booking-unavailable-list__grid article { padding: 20px; border: 1px solid var(--bht-book-line); border-radius: 16px; background: rgba(255,255,255,.65); }
.bht-booking-unavailable-list__grid h3 { margin: 0 0 5px; font-size: 17px; }
.bht-booking-unavailable-list__grid p { margin: 0 0 10px; color: var(--bht-book-muted); font-size: 13px; }
.bht-booking-empty-state,
.bht-booking-soldout { max-width: 760px; margin: 40px auto; padding: 58px 36px; text-align: center; border: 1px solid var(--bht-book-line); border-radius: 24px; background: #fff; box-shadow: var(--bht-book-shadow); }
.bht-booking-empty-state > i,
.bht-booking-soldout > i { font-size: 52px; color: var(--bht-book-accent); }
.bht-booking-empty-state h2,
.bht-booking-soldout h2 { margin: 18px 0 8px; }
.bht-booking-empty-state p,
.bht-booking-soldout p { color: var(--bht-book-muted); }
.bht-booking-soldout > div { margin: 20px 0; display: flex; justify-content: center; gap: 8px; flex-wrap: wrap; }
.bht-booking-soldout > div a { padding: 8px 12px; border-radius: 999px; color: var(--bht-book-brand); background: rgba(31,107,80,.09); font-weight: 700; }

.bht-booking-configure__head { margin-bottom: 28px; }
.bht-booking-configure__hero { margin-top: 20px; display: grid; grid-template-columns: minmax(320px, 43%) 1fr; overflow: hidden; border-radius: 26px; background: #17251f; color: #fff; box-shadow: var(--bht-book-shadow); }
.bht-booking-configure__hero > img { width: 100%; min-height: 360px; height: 100%; object-fit: cover; }
.bht-booking-configure__hero > div { padding: clamp(30px, 5vw, 62px); display: flex; flex-direction: column; justify-content: center; }
.bht-booking-configure__hero h1 { color: #fff; font-size: clamp(34px, 4.6vw, 58px); }
.bht-booking-configure__hero p { color: rgba(255,255,255,.72); line-height: 1.7; }
.bht-booking-configure__quickfacts { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.bht-booking-configure__quickfacts span { padding: 9px 12px; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; color: rgba(255,255,255,.88); font-size: 12px; }
.bht-booking-configure__quickfacts i { color: #dfba78; margin-right: 6px; }
.bht-booking-configure-form { max-width: 1180px; margin: 0 auto; }
.bht-booking-config-section { display: grid; grid-template-columns: 64px minmax(0,1fr); gap: 18px; margin: 18px 0; }
.bht-booking-config-section__number { width: 54px; height: 54px; display: grid; place-items: center; position: sticky; top: 106px; border-radius: 50%; color: #fff; background: var(--bht-book-brand); font-weight: 900; box-shadow: 0 10px 26px rgba(31,107,80,.22); }
.bht-booking-config-section__body,
.bht-booking-form-panel { padding: clamp(24px, 4vw, 42px); border: 1px solid rgba(23,37,31,.08); border-radius: 24px; background: #fff; box-shadow: 0 16px 48px rgba(23,37,31,.06); }
.bht-booking-config-section__title { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.bht-booking-config-section__title span { color: var(--bht-book-brand); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .10em; }
.bht-booking-config-section__title h2 { margin: 4px 0 0; font-size: clamp(23px, 3vw, 34px); }
.bht-booking-config-section__title > a { color: var(--bht-book-brand); font-weight: 800; font-size: 13px; }
.bht-booking-config-grid { display: grid; gap: 14px; }
.bht-booking-config-grid.is-two { grid-template-columns: repeat(2,minmax(0,1fr)); }
.bht-booking-config-grid.is-three { grid-template-columns: repeat(3,minmax(0,1fr)); }
.bht-booking-input-card,
.bht-booking-wide-select { padding: 18px; display: grid; gap: 7px; border: 1px solid var(--bht-book-line); border-radius: 16px; background: var(--bht-book-surface-soft); }
.bht-booking-input-card span,
.bht-booking-wide-select > span { color: var(--bht-book-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.bht-booking-input-card input { min-height: 44px; padding: 0 12px; border: 1px solid var(--bht-book-line); border-radius: 10px; background: #fff; }
.bht-booking-wide-select { margin-top: 16px; }
.bht-booking-wide-select select { font-size: 16px; }
.bht-booking-party--configure { padding: 0; }
.bht-booking-option-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.bht-booking-option-grid.is-two { grid-template-columns: repeat(2,minmax(0,1fr)); }
.bht-booking-option-card { display: block; cursor: pointer; }
.bht-booking-option-card > input { position: absolute; opacity: 0; pointer-events: none; }
.bht-booking-option-card > span { min-height: 134px; padding: 20px; display: grid; grid-template-columns: 42px 1fr 28px; gap: 12px; align-items: flex-start; border: 1px solid var(--bht-book-line); border-radius: 17px; background: #fff; transition: .2s ease; }
.bht-booking-option-card > span > i { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; color: var(--bht-book-brand); background: rgba(31,107,80,.09); }
.bht-booking-option-card > span > span { display: grid; gap: 4px; }
.bht-booking-option-card small { color: var(--bht-book-muted); line-height: 1.45; }
.bht-booking-option-card em { color: var(--bht-book-brand); font-size: 11px; font-style: normal; font-weight: 700; }
.bht-booking-option-card b { width: 26px; height: 26px; display: grid; place-items: center; border: 1px solid var(--bht-book-line); border-radius: 50%; color: transparent; }
.bht-booking-option-card input:checked + span { border-color: var(--bht-book-brand); background: rgba(31,107,80,.045); box-shadow: 0 0 0 3px rgba(31,107,80,.08); }
.bht-booking-option-card input:checked + span b { color: #fff; border-color: var(--bht-book-brand); background: var(--bht-book-brand); }
.bht-booking-allocation-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.bht-booking-quantity-card { padding: 18px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border: 1px solid var(--bht-book-line); border-radius: 17px; background: #fff; }
.bht-booking-quantity-card > div { display: flex; gap: 12px; align-items: center; }
.bht-booking-quantity-card > div > i { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; color: var(--bht-book-brand); background: rgba(31,107,80,.09); }
.bht-booking-quantity-card > div span { display: grid; }
.bht-booking-quantity-card small { color: var(--bht-book-muted); }
.bht-booking-quantity-card > input { width: 82px; min-height: 46px; padding: 0 10px; border: 1px solid var(--bht-book-line); border-radius: 12px; text-align: center; font-weight: 800; }
.bht-booking-capacity-callout { margin-bottom: 14px; padding: 16px 18px; display: grid; grid-template-columns: 28px 1fr auto; align-items: center; gap: 10px; border-radius: 14px; color: #5b461d; background: #fff8e8; border: 1px solid #ead7ad; }
.bht-booking-capacity-callout strong { font-size: 13px; }
.bht-booking-capacity-callout strong.is-valid { color: var(--bht-book-success); }
.bht-booking-capacity-callout strong.is-invalid { color: var(--bht-book-error); }
.bht-booking-addon-list { display: grid; gap: 10px; }
.bht-booking-addon-row { padding: 16px 18px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 16px; border: 1px solid var(--bht-book-line); border-radius: 14px; }
.bht-booking-addon-row > div { display: grid; }
.bht-booking-addon-row small { color: var(--bht-book-muted); }
.bht-booking-addon-row > span { color: var(--bht-book-success); font-weight: 700; }
.bht-booking-addon-row > input { width: 80px; min-height: 42px; border: 1px solid var(--bht-book-line); border-radius: 10px; text-align: center; }
.bht-switch input { position: absolute; opacity: 0; }
.bht-switch span { width: 50px; height: 28px; display: block; position: relative; border-radius: 999px; background: #cbd3ce; cursor: pointer; }
.bht-switch span::after { content: ""; position: absolute; top: 4px; left: 4px; width: 20px; height: 20px; border-radius: 50%; background: #fff; transition: .2s ease; }
.bht-switch input:checked + span { background: var(--bht-book-brand); }
.bht-switch input:checked + span::after { transform: translateX(22px); }
.bht-booking-no-options { padding: 18px; display: flex; gap: 10px; align-items: center; border-radius: 14px; color: var(--bht-book-success); background: #edf8f1; }

.bht-booking-price-review { margin: 22px 0 0 82px; overflow: hidden; border-radius: 24px; background: #17251f; color: #fff; box-shadow: var(--bht-book-shadow); }
.bht-booking-price-review__head { padding: 30px; display: flex; justify-content: space-between; align-items: flex-start; gap: 22px; border-bottom: 1px solid rgba(255,255,255,.10); }
.bht-booking-price-review__head span { color: #dfba78; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.bht-booking-price-review__head h2 { margin: 5px 0; color: #fff; }
.bht-booking-price-review__head p { margin: 0; color: rgba(255,255,255,.60); }
.bht-booking-availability-status { display: inline-flex; gap: 8px; align-items: center; padding: 10px 13px; border-radius: 999px; color: #bbf2d2; background: rgba(49,166,104,.15); font-size: 12px; }
.bht-booking-price-review__lines { padding: 24px 30px; display: grid; gap: 12px; }
.bht-booking-preview-loading,
.bht-booking-preview-error { padding: 16px; display: flex; align-items: center; gap: 10px; border-radius: 12px; background: rgba(255,255,255,.07); }
.bht-booking-preview-error { color: #ffd2cc; background: rgba(180,35,24,.20); }
.bht-booking-preview-line { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.bht-booking-preview-line > span { display: grid; }
.bht-booking-preview-line small { color: rgba(255,255,255,.58); }
.bht-booking-preview-line b { white-space: nowrap; }
.bht-booking-price-review__total { padding: 22px 30px; display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; border-top: 1px solid rgba(255,255,255,.10); background: rgba(255,255,255,.035); }
.bht-booking-price-review__total span { display: grid; }
.bht-booking-price-review__total small { color: rgba(255,255,255,.58); }
.bht-booking-price-review__total strong { color: #fff; font-size: clamp(26px,3.5vw,42px); }
.bht-booking-price-review__total em { color: rgba(255,255,255,.65); font-size: 12px; font-style: normal; }
.bht-booking-price-review__total em.is-success { color: #baf0cf; }
.bht-booking-price-review__total em.is-error { color: #ffd2cc; }
.bht-booking-price-review__actions { padding: 20px 30px 28px; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.bht-booking-secondary-button { display: inline-flex; align-items: center; gap: 8px; color: inherit; font-weight: 800; }
.bht-booking-price-review__actions .bht-booking-secondary-button { color: #fff; }
.bht-booking-price-review button:disabled { opacity: .45; cursor: not-allowed; }

.bht-booking-stage-head { max-width: 1100px; margin-bottom: 30px; text-align: center; }
.bht-booking-stage-head .bht-booking-back-link { display: flex; width: fit-content; margin: -5px auto 22px 0; }
.bht-booking-stage-head h1 { font-size: clamp(34px,5vw,58px); }
.bht-booking-guest-form,
.bht-booking-payment-form { max-width: 1080px; margin: 0 auto; display: grid; gap: 18px; }
.bht-booking-form-panel__head { display: flex; gap: 14px; align-items: flex-start; margin-bottom: 24px; }
.bht-booking-form-panel__head > span { flex: 0 0 40px; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--bht-book-brand); font-weight: 800; }
.bht-booking-form-panel__head h2 { margin: 0 0 4px; font-size: 25px; }
.bht-booking-form-panel__head p { margin: 0; color: var(--bht-book-muted); }
.bht-booking-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.bht-booking-form-grid label { display: grid; gap: 7px; }
.bht-booking-form-grid label.is-wide { grid-column: 1 / -1; }
.bht-booking-form-grid label > span,
.bht-booking-age-grid label > span { color: var(--bht-book-muted); font-size: 12px; font-weight: 800; }
.bht-booking-form-grid input,
.bht-booking-form-grid select,
.bht-booking-form-grid textarea,
.bht-booking-age-grid input { width: 100%; min-height: 52px; padding: 12px 15px; border: 1px solid var(--bht-book-line); border-radius: 12px; outline: none; background: #fff; color: var(--bht-book-ink); }
.bht-booking-form-grid textarea { min-height: 120px; resize: vertical; }
.bht-booking-form-grid input:focus,
.bht-booking-form-grid select:focus,
.bht-booking-form-grid textarea:focus,
.bht-booking-age-grid input:focus { border-color: var(--bht-book-brand); box-shadow: 0 0 0 3px rgba(31,107,80,.09); }
.bht-booking-participant-summary { padding: 18px; display: flex; flex-wrap: wrap; gap: 10px; border-radius: 16px; background: var(--bht-book-surface-soft); }
.bht-booking-participant-summary span { padding: 8px 11px; border-radius: 999px; color: var(--bht-book-ink); background: #fff; border: 1px solid var(--bht-book-line); font-size: 13px; font-weight: 700; }
.bht-booking-age-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.bht-booking-age-grid label { display: grid; gap: 7px; }
.bht-booking-stage-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-top: 6px; }

.bht-booking-review-layout { max-width: 1180px; margin: 0 auto; display: grid; grid-template-columns: minmax(0,1fr) 360px; gap: 22px; align-items: start; }
.bht-booking-review-main { display: grid; gap: 18px; }
.bht-booking-review-package,
.bht-booking-review-contact,
.bht-booking-review-total,
.bht-booking-payment-summary { border: 1px solid rgba(23,37,31,.08); border-radius: 22px; background: #fff; box-shadow: 0 16px 45px rgba(23,37,31,.06); }
.bht-booking-review-package { overflow: hidden; }
.bht-booking-review-package__hero { display: grid; grid-template-columns: 180px 1fr; }
.bht-booking-review-package__hero img { width: 100%; height: 100%; min-height: 170px; object-fit: cover; }
.bht-booking-review-package__hero > div { padding: 22px; }
.bht-booking-review-package__hero h2 { margin: 5px 0 8px; }
.bht-booking-review-package__facts { display: flex; flex-wrap: wrap; gap: 8px 14px; color: var(--bht-book-muted); font-size: 13px; }
.bht-booking-review-package__facts i { color: var(--bht-book-brand); margin-right: 5px; }
.bht-booking-review-package__pricing { padding: 18px 22px; border-top: 1px solid var(--bht-book-line); }
.bht-booking-review-package__pricing > div { padding: 7px 0; display: flex; justify-content: space-between; gap: 16px; }
.bht-booking-review-package__pricing > div:last-child { margin-top: 7px; padding-top: 14px; border-top: 1px solid var(--bht-book-line); font-size: 18px; font-weight: 800; }
.bht-booking-review-ages { padding: 14px 22px; border-top: 1px solid var(--bht-book-line); }
.bht-booking-review-ages span { margin-right: 10px; color: var(--bht-book-muted); font-size: 13px; }
.bht-booking-review-contact { padding: 24px; }
.bht-booking-review-contact__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.bht-booking-review-contact__head h2 { margin: 0; }
.bht-booking-review-contact__head a { color: var(--bht-book-brand); font-weight: 800; }
.bht-booking-review-contact__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.bht-booking-review-contact__grid > div { padding: 14px; display: flex; gap: 10px; border-radius: 12px; background: var(--bht-book-surface-soft); }
.bht-booking-review-contact__grid i { color: var(--bht-book-brand); }
.bht-booking-review-contact__grid span { display: grid; }
.bht-booking-review-contact__grid small { color: var(--bht-book-muted); }
.bht-booking-review-note { margin-top: 14px; padding: 14px; border-radius: 12px; background: #fff8e8; }
.bht-booking-review-note p { margin: 4px 0 0; }
.bht-booking-review-total { position: sticky; top: 106px; padding: 28px; }
.bht-booking-review-total h2 { margin: 5px 0 22px; }
.bht-booking-review-total__rows { display: grid; gap: 10px; }
.bht-booking-review-total__rows > div { display: flex; justify-content: space-between; gap: 12px; }
.bht-booking-review-total__rows span { color: var(--bht-book-muted); }
.bht-booking-review-total__rows .is-success { color: var(--bht-book-success); }
.bht-booking-review-total__grand { margin: 22px 0; padding: 20px 0; display: grid; border-top: 1px solid var(--bht-book-line); border-bottom: 1px solid var(--bht-book-line); }
.bht-booking-review-total__grand small { color: var(--bht-book-muted); }
.bht-booking-review-total__grand strong { color: var(--bht-book-ink); font-size: 31px; }
.bht-booking-review-total__grand span { color: var(--bht-book-muted); font-size: 12px; }
.bht-booking-review-total .th-btn { width: 100%; justify-content: center; }
.bht-booking-review-trust { margin-top: 18px; display: grid; gap: 8px; color: var(--bht-book-muted); font-size: 12px; }
.bht-booking-review-trust i { color: var(--bht-book-success); margin-right: 6px; }

.bht-booking-payment-summary { overflow: hidden; }
.bht-booking-payment-summary__head { padding: 22px 25px; display: flex; align-items: center; justify-content: space-between; gap: 15px; border-bottom: 1px solid var(--bht-book-line); }
.bht-booking-payment-summary__head span { color: var(--bht-book-muted); font-size: 11px; text-transform: uppercase; letter-spacing: .07em; }
.bht-booking-payment-summary__head h2 { margin: 2px 0 0; }
.bht-booking-payment-summary__head a { color: var(--bht-book-brand); font-weight: 800; }
.bht-booking-payment-summary__items { padding: 8px 25px; }
.bht-booking-payment-summary__items article { padding: 14px 0; display: flex; justify-content: space-between; gap: 20px; border-bottom: 1px solid var(--bht-book-line); }
.bht-booking-payment-summary__items article:last-child { border-bottom: 0; }
.bht-booking-payment-summary__items article > div { display: grid; }
.bht-booking-payment-summary__items span { color: var(--bht-book-muted); font-size: 13px; }
.bht-booking-payment-summary__total { padding: 22px 25px; display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; color: #fff; background: #17251f; }
.bht-booking-payment-summary__total span { display: grid; }
.bht-booking-payment-summary__total small { color: rgba(255,255,255,.65); }
.bht-booking-payment-summary__total strong { color: #fff; font-size: 31px; }
.bht-booking-payment-summary__total em { color: #bbf2d2; font-size: 12px; font-style: normal; }
.bht-booking-checkout-choice,
.bht-booking-payment-method { position: relative; min-height: 100px; padding: 18px; display: grid; grid-template-columns: 44px 1fr 28px; align-items: center; gap: 14px; border: 1px solid var(--bht-book-line); border-radius: 16px; background: #fff; cursor: pointer; }
.bht-booking-checkout-choice > input,
.bht-booking-payment-method > input { position: absolute; opacity: 0; }
.bht-booking-checkout-choice > i,
.bht-booking-payment-method__icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; color: var(--bht-book-brand); background: rgba(31,107,80,.09); }
.bht-booking-checkout-choice > span,
.bht-booking-payment-method > span:nth-of-type(2) { display: grid; }
.bht-booking-checkout-choice small,
.bht-booking-payment-method small { color: var(--bht-book-muted); }
.bht-booking-checkout-choice > b,
.bht-booking-payment-method > b { width: 26px; height: 26px; display: grid; place-items: center; border: 1px solid var(--bht-book-line); border-radius: 50%; color: transparent; }
.bht-booking-checkout-choice:has(input:checked),
.bht-booking-checkout-choice.is-selected,
.bht-booking-payment-method:has(input:checked) { border-color: var(--bht-book-brand); background: rgba(31,107,80,.045); box-shadow: 0 0 0 3px rgba(31,107,80,.08); }
.bht-booking-checkout-choice:has(input:checked) > b,
.bht-booking-checkout-choice.is-selected > b,
.bht-booking-payment-method:has(input:checked) > b { color: #fff; border-color: var(--bht-book-brand); background: var(--bht-book-brand); }
.bht-booking-payment-methods { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.bht-booking-info-note { margin-top: 18px; padding: 16px; display: flex; gap: 10px; border-radius: 14px; color: #5b461d; background: #fff8e8; border: 1px solid #ead7ad; }
.bht-booking-payment-confirm { padding: 24px; border-radius: 20px; background: #17251f; color: #fff; }
.bht-booking-payment-confirm > label { display: flex; gap: 10px; align-items: flex-start; color: rgba(255,255,255,.82); }
.bht-booking-payment-confirm > label input { margin-top: 4px; }
.bht-booking-payment-confirm > div { margin-top: 20px; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.bht-booking-payment-confirm .bht-booking-secondary-button { color: #fff; }
.bht-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }

.bht-full-booking-cta {
    padding: clamp(28px,4vw,44px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    border-radius: 24px;
    color: #fff;
    background: linear-gradient(145deg, #17251f, #245f49);
    box-shadow: 0 24px 60px rgba(23,37,31,.18);
}
.bht-full-booking-cta__icon { width: 58px; height: 58px; margin-bottom: 20px; display: grid; place-items: center; border-radius: 50%; color: #17251f; background: #dfba78; font-size: 23px; }
.bht-full-booking-cta .sub-title { color: #dfba78; }
.bht-full-booking-cta h2,
.bht-full-booking-cta h3 { margin: 8px 0 10px; color: #fff; }
.bht-full-booking-cta p { color: rgba(255,255,255,.70); line-height: 1.65; }
.bht-full-booking-cta .th-btn { width: 100%; justify-content: center; margin-top: 8px; }
.bht-full-booking-cta small { margin-top: 15px; color: rgba(255,255,255,.62); }
.bht-full-booking-cta small i { color: #bbf2d2; margin-right: 5px; }
.bht-full-booking-cta--sidebar { margin-bottom: 30px; }

.bht-booking-confirmation { max-width: 980px; margin: 0 auto; }
.bht-booking-confirmation__card { overflow: hidden; border-radius: 28px; background: #fff; box-shadow: var(--bht-book-shadow); }
.bht-booking-confirmation__hero { padding: 54px clamp(28px,6vw,72px); text-align: center; color: #fff; background: linear-gradient(145deg,#17251f,#245f49); }
.bht-booking-confirmation__icon { width: 74px; height: 74px; margin: 0 auto 18px; display: grid; place-items: center; border-radius: 50%; color: #17251f; background: #dfba78; font-size: 31px; }
.bht-booking-confirmation__hero h1 { margin: 8px 0; color: #fff; font-size: clamp(36px,5vw,58px); }
.bht-booking-confirmation__hero p { max-width: 700px; margin: 0 auto; color: rgba(255,255,255,.72); }
.bht-booking-confirmation__body { padding: clamp(26px,5vw,56px); }
.bht-booking-confirmation__refs { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); overflow: hidden; border: 1px solid var(--bht-book-line); border-radius: 16px; }
.bht-booking-confirmation__refs div { padding: 18px; display: grid; gap: 3px; border-left: 1px solid var(--bht-book-line); }
.bht-booking-confirmation__refs div:first-child { border-left: 0; }
.bht-booking-confirmation__refs small { color: var(--bht-book-muted); }
.bht-booking-confirmation__items { margin-top: 24px; display: grid; gap: 10px; }
.bht-booking-confirmation__items article { padding: 18px; display: flex; justify-content: space-between; gap: 18px; border: 1px solid var(--bht-book-line); border-radius: 15px; }
.bht-booking-confirmation__items article > div { display: grid; gap: 3px; }
.bht-booking-confirmation__items span { color: var(--bht-book-muted); font-size: 13px; }
.bht-booking-confirmation__actions { margin-top: 26px; display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; }

@media (max-width: 1199px) {
    .bht-booking-shell-main { width: min(100% - 32px, 1180px); }
    .bht-booking-result-card { grid-template-columns: 38% 62%; }
    .bht-booking-result-grid { grid-template-columns: 1fr; }
    .bht-booking-review-layout { grid-template-columns: minmax(0,1fr) 320px; }
    .bht-booking-search-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .bht-booking-search-summary > div:nth-child(3) { border-left: 0; border-top: 1px solid var(--bht-book-line); }
    .bht-booking-search-summary > div:nth-child(4) { border-top: 1px solid var(--bht-book-line); }
}

@media (max-width: 991px) {
    .bht-booking-shell-header { grid-template-columns: 1fr auto; min-height: 74px; padding: 10px 20px; }
    .bht-booking-shell-brand img { height: 46px; }
    .bht-booking-shell-secure { display: none; }
    .bht-booking-shell-main { min-height: calc(100vh - 74px); padding-top: 32px; }
    .bht-booking-progress { margin-bottom: 28px; }
    .bht-booking-progress__step small { display: none; }
    .bht-booking-calendar__months { gap: 24px; }
    .bht-booking-configure__hero { grid-template-columns: 1fr; }
    .bht-booking-configure__hero > img { min-height: 300px; max-height: 420px; }
    .bht-booking-review-layout { grid-template-columns: 1fr; }
    .bht-booking-review-total { position: static; }
    .bht-booking-price-review { margin-left: 0; }
    .bht-booking-option-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .bht-booking-confirmation__refs { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .bht-booking-confirmation__refs div:nth-child(3) { border-left: 0; border-top: 1px solid var(--bht-book-line); }
    .bht-booking-confirmation__refs div:nth-child(4) { border-top: 1px solid var(--bht-book-line); }
}

@media (max-width: 767px) {
    .bht-booking-shell-header { padding: 8px 14px; }
    .bht-booking-shell-brand img { max-width: 148px; height: 42px; }
    .bht-booking-shell-summary { display: none; }
    .bht-booking-shell-exit { min-height: 40px; padding: 0 12px; }
    .bht-booking-shell-exit span { display: none; }
    .bht-booking-shell-main { width: min(100% - 22px, 680px); padding-top: 24px; padding-bottom: 54px; }
    .bht-booking-progress { grid-template-columns: repeat(5,1fr); margin-bottom: 24px; }
    .bht-booking-progress::before { top: 17px; }
    .bht-booking-progress__step > span { width: 36px; height: 36px; font-size: 12px; }
    .bht-booking-progress__step div { display: none; }
    .bht-booking-search__intro h1,
    .bht-booking-stage-head h1,
    .bht-booking-results__title h1 { font-size: 34px; }
    .bht-booking-search-card { border-radius: 20px; }
    .bht-booking-search-card__top { grid-template-columns: 1fr; }
    .bht-booking-search-card__field { min-height: 92px; padding: 20px; border-left: 0; border-top: 1px solid var(--bht-book-line); }
    .bht-booking-search-card__field:first-child { border-top: 0; }
    .bht-booking-calendar { padding: 20px 14px; }
    .bht-booking-calendar__months { grid-template-columns: 1fr; }
    .bht-booking-calendar__duration { align-items: flex-start; flex-direction: column; }
    .bht-booking-party { padding: 20px 14px; }
    .bht-booking-party__heading { align-items: flex-start; flex-direction: column; gap: 5px; }
    .bht-booking-party__grid { grid-template-columns: 1fr; }
    .bht-booking-search-card__submit { padding: 20px; flex-direction: column; align-items: stretch; }
    .bht-booking-search-card__submit .th-btn { width: 100%; justify-content: center; }
    .bht-booking-results__title { align-items: flex-start; flex-direction: column; }
    .bht-booking-search-summary { grid-template-columns: 1fr; }
    .bht-booking-search-summary > div { min-height: 72px; border-left: 0; border-top: 1px solid var(--bht-book-line); }
    .bht-booking-search-summary > div:first-child { border-top: 0; }
    .bht-booking-result-card { grid-template-columns: 1fr; }
    .bht-booking-result-card__image { min-height: 220px; }
    .bht-booking-result-card__footer { align-items: stretch; flex-direction: column; }
    .bht-booking-result-card__footer .th-btn { width: 100%; justify-content: center; }
    .bht-booking-unavailable-list__grid { grid-template-columns: 1fr; }
    .bht-booking-configure__hero > div { padding: 28px 22px; }
    .bht-booking-configure__hero > img { min-height: 230px; }
    .bht-booking-config-section { grid-template-columns: 1fr; }
    .bht-booking-config-section__number { position: static; width: 42px; height: 42px; }
    .bht-booking-config-section__body,
    .bht-booking-form-panel { padding: 22px 18px; border-radius: 18px; }
    .bht-booking-config-section__title { flex-direction: column; }
    .bht-booking-config-grid.is-two,
    .bht-booking-config-grid.is-three,
    .bht-booking-option-grid,
    .bht-booking-option-grid.is-two,
    .bht-booking-allocation-grid,
    .bht-booking-form-grid,
    .bht-booking-age-grid,
    .bht-booking-payment-methods { grid-template-columns: 1fr; }
    .bht-booking-capacity-callout { grid-template-columns: 28px 1fr; }
    .bht-booking-capacity-callout strong { grid-column: 1 / -1; }
    .bht-booking-quantity-card { align-items: flex-start; flex-direction: column; }
    .bht-booking-quantity-card > input { width: 100%; }
    .bht-booking-price-review__head,
    .bht-booking-price-review__total,
    .bht-booking-price-review__actions { flex-direction: column; align-items: stretch; }
    .bht-booking-availability-status { width: fit-content; }
    .bht-booking-price-review__actions .th-btn { width: 100%; justify-content: center; }
    .bht-booking-stage-actions { align-items: stretch; flex-direction: column-reverse; }
    .bht-booking-stage-actions .th-btn { width: 100%; justify-content: center; }
    .bht-booking-review-package__hero { grid-template-columns: 1fr; }
    .bht-booking-review-package__hero img { min-height: 210px; }
    .bht-booking-review-contact__grid { grid-template-columns: 1fr; }
    .bht-booking-payment-summary__total,
    .bht-booking-payment-confirm > div { align-items: stretch; flex-direction: column; }
    .bht-booking-payment-confirm .th-btn { width: 100%; justify-content: center; }
    .bht-booking-confirmation__refs { grid-template-columns: 1fr; }
    .bht-booking-confirmation__refs div { border-left: 0 !important; border-top: 1px solid var(--bht-book-line); }
    .bht-booking-confirmation__refs div:first-child { border-top: 0; }
    .bht-booking-confirmation__items article { flex-direction: column; }
}

.bht-booking-fixed-duration {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 46px;
    padding: 0 16px;
    border: 1px solid rgba(34, 84, 61, .15);
    border-radius: 14px;
    background: rgba(34, 84, 61, .06);
    color: var(--bht-book-green);
    font-size: 13px;
    font-weight: 800;
}

.bht-booking-package-search-page .bht-booking-search-card__field strong {
    display: block;
    margin-top: 7px;
    color: var(--bht-book-ink);
    font-size: 18px;
}

.bht-booking-package-search-page .bht-booking-search-card__field small {
    display: block;
    margin-top: 4px;
    color: var(--bht-book-muted);
}

/* BHT_FULL_SCREEN_BOOKING_AVAILABILITY_ENGINE_V4_4_END */

/* BHT_BOOKING_TYPOGRAPHY_COMPACT_V4_4_1_BEGIN */

/* More balanced full-screen booking typography */
body.bht-booking-engine-layout .bht-booking-shell-main {
    padding-top: clamp(26px, 3.2vw, 48px);
    padding-bottom: 72px;
}

/* Booking progress */
body.bht-booking-engine-layout .bht-booking-progress {
    max-width: 900px;
    margin-bottom: 28px;
}

body.bht-booking-engine-layout .bht-booking-progress::before {
    top: 19px;
}

body.bht-booking-engine-layout .bht-booking-progress__step {
    gap: 7px;
}

body.bht-booking-engine-layout .bht-booking-progress__step > span {
    width: 40px;
    height: 40px;
    font-size: 14px;
}

body.bht-booking-engine-layout .bht-booking-progress__step strong {
    font-size: 12px;
}

body.bht-booking-engine-layout .bht-booking-progress__step small {
    font-size: 10px;
}

/* Main heading and introduction */
body.bht-booking-engine-layout .bht-booking-search__intro {
    max-width: 880px;
    margin-bottom: 24px;
}

body.bht-booking-engine-layout .bht-booking-eyebrow {
    font-size: 11px;
    letter-spacing: .12em;
}

body.bht-booking-engine-layout .bht-booking-search__intro h1,
body.bht-booking-engine-layout .bht-booking-stage-head h1,
body.bht-booking-engine-layout .bht-booking-results__title h1,
body.bht-booking-engine-layout .bht-booking-configure__hero h1 {
    margin-top: 8px;
    margin-bottom: 10px;
    font-size: clamp(32px, 3.4vw, 50px);
    line-height: 1.08;
    letter-spacing: -.025em;
}

body.bht-booking-engine-layout .bht-booking-search__intro p,
body.bht-booking-engine-layout .bht-booking-stage-head > p,
body.bht-booking-engine-layout .bht-booking-results__title p {
    max-width: 720px;
    font-size: 15px;
    line-height: 1.65;
}

/* Search summary card */
body.bht-booking-engine-layout .bht-booking-search-card__field {
    min-height: 98px;
    padding: 22px 26px;
}

body.bht-booking-engine-layout .bht-booking-search-card__field > span {
    font-size: 11px;
}

body.bht-booking-engine-layout .bht-booking-search-card__field strong {
    margin-top: 6px;
    font-size: clamp(17px, 1.55vw, 22px);
    line-height: 1.25;
}

body.bht-booking-engine-layout .bht-booking-search-card__field small {
    font-size: 12px;
}

body.bht-booking-engine-layout .bht-booking-search-card__field select,
body.bht-booking-engine-layout .bht-booking-wide-select select {
    font-size: 17px;
}

/* Calendar */
body.bht-booking-engine-layout .bht-booking-calendar {
    padding: 26px 30px;
}

body.bht-booking-engine-layout .bht-booking-calendar__toolbar {
    margin-bottom: 18px;
}

body.bht-booking-engine-layout .bht-booking-calendar__toolbar strong {
    font-size: 17px;
}

body.bht-booking-engine-layout .bht-booking-calendar__month h3 {
    font-size: 16px;
}

body.bht-booking-engine-layout .bht-booking-calendar__days button {
    font-size: 13px;
}

/* Participant section */
body.bht-booking-engine-layout .bht-booking-party {
    padding: 26px 30px;
}

body.bht-booking-engine-layout .bht-booking-party__heading > span {
    font-size: 16px;
}

body.bht-booking-engine-layout .bht-booking-counter strong {
    font-size: 14px;
}

body.bht-booking-engine-layout .bht-booking-counter small {
    font-size: 11px;
}

/* Result cards */
body.bht-booking-engine-layout .bht-booking-result-card__content h2 {
    font-size: 22px;
}

body.bht-booking-engine-layout .bht-booking-result-card__content p {
    font-size: 14px;
}

/* Configuration, guest, review and checkout headings */
body.bht-booking-engine-layout .bht-booking-config-section__title h2,
body.bht-booking-engine-layout .bht-booking-price-review__head h2,
body.bht-booking-engine-layout .bht-booking-form-panel h2,
body.bht-booking-engine-layout .bht-booking-payment-summary__head h2,
body.bht-booking-engine-layout .bht-booking-review-total h2 {
    font-size: clamp(20px, 2vw, 27px);
    line-height: 1.22;
}

/* Large totals remain prominent, but not oversized */
body.bht-booking-engine-layout .bht-booking-review-total__grand strong,
body.bht-booking-engine-layout .bht-booking-payment-summary__total strong {
    font-size: 27px;
}

body.bht-booking-engine-layout .bht-booking-confirmation__hero h1 {
    font-size: clamp(32px, 3.6vw, 48px);
}

/* Tablet */
@media (max-width: 991px) {
    body.bht-booking-engine-layout .bht-booking-search__intro h1,
    body.bht-booking-engine-layout .bht-booking-stage-head h1,
    body.bht-booking-engine-layout .bht-booking-results__title h1,
    body.bht-booking-engine-layout .bht-booking-configure__hero h1 {
        font-size: clamp(30px, 5vw, 42px);
    }
}

/* Mobile */
@media (max-width: 575px) {
    body.bht-booking-engine-layout .bht-booking-shell-main {
        width: calc(100% - 24px);
        padding-top: 22px;
    }

    body.bht-booking-engine-layout .bht-booking-progress__step > span {
        width: 34px;
        height: 34px;
        font-size: 12px;
    }

    body.bht-booking-engine-layout .bht-booking-progress::before {
        top: 16px;
    }

    body.bht-booking-engine-layout .bht-booking-progress__step strong {
        font-size: 10px;
    }

    body.bht-booking-engine-layout .bht-booking-search__intro h1,
    body.bht-booking-engine-layout .bht-booking-stage-head h1,
    body.bht-booking-engine-layout .bht-booking-results__title h1,
    body.bht-booking-engine-layout .bht-booking-configure__hero h1 {
        font-size: 30px;
        line-height: 1.12;
    }

    body.bht-booking-engine-layout .bht-booking-search__intro p,
    body.bht-booking-engine-layout .bht-booking-stage-head > p,
    body.bht-booking-engine-layout .bht-booking-results__title p {
        font-size: 14px;
        line-height: 1.55;
    }

    body.bht-booking-engine-layout .bht-booking-search-card__field strong {
        font-size: 18px;
    }

    body.bht-booking-engine-layout .bht-booking-calendar,
    body.bht-booking-engine-layout .bht-booking-party {
        padding: 22px 18px;
    }
}

/* BHT_BOOKING_TYPOGRAPHY_COMPACT_V4_4_1_END */

/* BHT_CUSTOMER_IDENTITY_PORTAL_VOUCHER_ADMIN_V4_5_BEGIN */
.bht-identity-choice-grid{display:grid;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);gap:24px;align-items:stretch;max-width:1120px;margin:0 auto 44px}
.bht-identity-choice-card{background:#fff;border:1px solid #dbe7e0;border-radius:24px;padding:34px;box-shadow:0 22px 60px rgba(16,36,28,.08)}
.bht-identity-choice-card__icon{display:grid;width:52px;height:52px;place-items:center;border-radius:16px;background:#eaf6ef;color:#08783f;font-size:22px;margin-bottom:24px}
.bht-identity-choice-card>small{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#08783f}
.bht-identity-choice-card h2{font-size:27px;line-height:1.2;margin:8px 0 10px}
.bht-identity-choice-card p{font-size:14px;line-height:1.7;color:#607169;margin-bottom:24px}
.bht-identity-choice-card form label{display:block;margin-bottom:14px}
.bht-identity-choice-card form label span{display:block;font-size:12px;font-weight:800;margin-bottom:7px}
.bht-identity-choice-card input{width:100%;height:52px;border:1px solid #d5e2da;border-radius:12px;padding:0 15px;background:#fdfefd}
.bht-identity-choice-divider{display:grid;place-items:center;position:relative;color:#79877f;text-transform:uppercase;font-size:11px;font-weight:800}
.bht-identity-choice-divider:before{content:"";position:absolute;top:0;bottom:0;width:1px;background:#dbe7e0}
.bht-identity-choice-divider span{position:relative;background:#f4f8f5;padding:10px}
.bht-identity-otp-form{border-top:1px solid #e3ece6;margin-top:20px;padding-top:20px}
.bht-identity-privacy{display:flex!important;gap:7px;align-items:flex-start;margin-top:18px;color:#74827b!important;font-size:11px!important;letter-spacing:0!important;text-transform:none!important;font-weight:500!important}
.bht-identity-active-bar{max-width:1120px;margin:0 auto 24px;padding:18px 22px;background:#eaf6ef;border:1px solid #cce4d5;border-radius:16px;display:flex;justify-content:space-between;align-items:center}
.bht-identity-active-bar>div{display:flex;gap:14px;align-items:center}.bht-identity-active-bar i{color:#08783f;font-size:22px}.bht-identity-active-bar span{display:flex;flex-direction:column}.bht-identity-active-bar small{font-size:11px;color:#668074}.bht-identity-active-bar strong{font-size:15px}.bht-identity-active-bar>a{font-size:12px;font-weight:800;color:#08783f}
.bht-saved-address-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:22px}
.bht-saved-address-grid button{text-align:left;border:1px solid #d7e3dc;background:#fff;border-radius:13px;padding:14px;display:flex;flex-direction:column;transition:.2s}
.bht-saved-address-grid button:hover,.bht-saved-address-grid button.is-selected{border-color:#08783f;background:#eff9f3;transform:translateY(-2px)}
.bht-saved-address-grid button strong{font-size:13px}.bht-saved-address-grid button span{font-size:11px;color:#6a7a72}
.bht-saved-prefill-note{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:12px;background:#f5f8f6;font-size:12px;margin-top:18px}.bht-saved-prefill-note a{margin-left:auto;font-weight:800;color:#08783f}
.bht-inline-check{display:flex!important;align-items:center;gap:10px}.bht-inline-check input{width:auto!important;height:auto!important}

.bht-customer-portal-v45 .bht-account-panel,.bht-customer-portal-v45 .bht-account-welcome{border-radius:20px}
.bht-account-stat-grid-v45{grid-template-columns:repeat(3,minmax(0,1fr))}
.bht-portal-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:24px}
.bht-portal-quick-actions{display:grid;gap:12px}.bht-portal-quick-actions>a{display:flex;align-items:center;gap:14px;padding:15px;border:1px solid #e0e8e3;border-radius:13px;color:#183127}.bht-portal-quick-actions>a:hover{border-color:#08783f;background:#f2faf5}.bht-portal-quick-actions i{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#e9f6ee;color:#08783f}.bht-portal-quick-actions span{display:flex;flex-direction:column}.bht-portal-quick-actions small{color:#718078}
.bht-portal-filter-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.bht-portal-filter-tabs a{padding:9px 15px;border:1px solid #dbe5df;border-radius:999px;font-size:12px;font-weight:700;color:#64756d}.bht-portal-filter-tabs a.is-active{background:#08783f;border-color:#08783f;color:#fff}
.bht-portal-table-wrap{overflow:auto}.bht-portal-table{width:100%;border-collapse:collapse;min-width:720px}.bht-portal-table th,.bht-portal-table td{padding:15px 12px;border-bottom:1px solid #e5ece8;text-align:left;font-size:13px}.bht-portal-table th{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#6e7d75}.bht-portal-table td small{display:block;color:#7b8882}
.bht-voucher-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.bht-voucher-grid article{border:1px solid #dce6e0;border-radius:18px;padding:22px;background:linear-gradient(145deg,#fff,#f3f8f5)}.bht-voucher-card__top{display:flex;justify-content:space-between}.bht-voucher-card__top>span{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#08783f;color:#fff}.bht-voucher-card__top em{font-size:10px;font-style:normal;font-weight:800;letter-spacing:.08em}.bht-voucher-grid article>small{display:block;margin-top:22px;color:#08783f;text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.12em}.bht-voucher-grid h3{font-size:21px;margin:5px 0}.bht-voucher-grid article>div:last-child{display:flex;gap:8px;align-items:center}
.bht-voucher-sheet{background:#fff;border:1px solid #dbe6df;border-radius:24px;padding:38px;box-shadow:0 24px 80px rgba(15,36,27,.08)}.bht-voucher-sheet header{display:flex;justify-content:space-between;gap:24px;border-bottom:1px dashed #cad9d0;padding-bottom:24px}.bht-voucher-sheet h1{font-size:34px}.bht-voucher-status{height:max-content;padding:8px 13px;border-radius:99px;background:#eef3ef;font-size:11px;font-weight:800}.bht-voucher-status.is-valid{background:#dff5e7;color:#08783f}.bht-voucher-sheet__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:28px 0}.bht-voucher-sheet__grid>div{border:1px solid #e0e9e3;border-radius:13px;padding:15px;display:flex;flex-direction:column}.bht-voucher-sheet__grid small{color:#708078}.bht-voucher-sheet__services article{padding:15px;border-bottom:1px solid #e4ece7}.bht-voucher-qr{display:flex;align-items:center;gap:22px;background:#f2f7f4;border-radius:18px;padding:20px;margin:28px 0}.bht-voucher-qr img{width:150px;height:150px;background:#fff;border-radius:10px}
.bht-portal-inline-form,.bht-portal-address-form{border:1px solid #e0e9e3;background:#f7faf8;border-radius:16px;padding:20px;margin-bottom:22px}.bht-portal-inline-form{display:grid;grid-template-columns:2fr 1fr 1.3fr 1.2fr auto;gap:10px}.bht-portal-inline-form input,.bht-portal-inline-form select,.bht-portal-address-form input{height:46px;border:1px solid #d9e5dd;border-radius:10px;padding:0 12px;background:#fff}
.bht-portal-card-list{display:grid;gap:10px}.bht-portal-card-list>article,.bht-portal-card-list>a{display:flex;justify-content:space-between;align-items:center;border:1px solid #e0e8e3;border-radius:13px;padding:15px;color:#1d342b}.bht-portal-card-list>article>div,.bht-portal-card-list>a>div{display:flex;flex-direction:column}.bht-portal-card-list span{color:#738179;font-size:12px}
.bht-portal-timeline article{position:relative;display:flex;gap:15px;padding-bottom:22px}.bht-portal-timeline article>span{width:12px;height:12px;border-radius:50%;background:#08783f;margin-top:5px;box-shadow:0 0 0 5px #e4f3ea}.bht-portal-timeline article:not(:last-child):before{content:"";position:absolute;left:5px;top:17px;bottom:0;width:1px;background:#cfe0d6}.bht-portal-timeline article>div{display:flex;flex-direction:column}.bht-portal-timeline small{color:#718078}
.bht-notification-list{display:grid;gap:10px}.bht-notification-list>a{display:flex;gap:14px;padding:17px;border:1px solid #e0e8e3;border-radius:14px;color:#1d342b}.bht-notification-list>a.is-unread{background:#eef8f2;border-color:#bcdcc9}.bht-notification-list>a>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#08783f;color:#fff}.bht-notification-list p{margin:4px 0;font-size:13px}.bht-notification-list small{color:#75837c}
.bht-account-auth-card-v45{max-width:900px}.bht-auth-tab-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.bht-auth-tab-grid>div{border:1px solid #e0e8e3;border-radius:16px;padding:22px}.bht-auth-tab-grid h2{font-size:20px}
.bht-public-voucher-card{max-width:760px;margin:auto;background:#fff;border:1px solid #dae5de;border-radius:24px;padding:44px;text-align:center;box-shadow:0 24px 80px rgba(14,36,27,.1)}.bht-public-voucher-card__icon{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#e6f6ec;color:#08783f;font-size:30px;margin:0 auto 20px}.bht-public-voucher-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:28px 0;text-align:left}.bht-public-voucher-grid>div{border:1px solid #e0e8e3;border-radius:12px;padding:14px;display:flex;flex-direction:column}.bht-public-voucher-grid small{color:#718078;font-size:11px}

@media(max-width:991px){.bht-identity-choice-grid{grid-template-columns:1fr}.bht-identity-choice-divider:before{left:0;right:0;top:50%;bottom:auto;width:auto;height:1px}.bht-account-stat-grid-v45{grid-template-columns:repeat(2,minmax(0,1fr))}.bht-portal-dashboard-grid{grid-template-columns:1fr}.bht-saved-address-grid{grid-template-columns:1fr 1fr}.bht-voucher-sheet__grid{grid-template-columns:1fr 1fr}.bht-portal-inline-form{grid-template-columns:1fr 1fr}.bht-auth-tab-grid{grid-template-columns:1fr}}
@media(max-width:575px){.bht-identity-choice-card{padding:24px 18px;border-radius:18px}.bht-identity-active-bar{align-items:flex-start}.bht-saved-address-grid,.bht-account-stat-grid-v45,.bht-voucher-grid,.bht-voucher-sheet__grid,.bht-public-voucher-grid,.bht-portal-inline-form{grid-template-columns:1fr}.bht-voucher-sheet{padding:24px 18px}.bht-voucher-sheet header{flex-direction:column}.bht-voucher-qr{flex-direction:column;text-align:center}.bht-public-voucher-card{padding:30px 18px}}
/* BHT_CUSTOMER_IDENTITY_PORTAL_VOUCHER_ADMIN_V4_5_END */
