.bc_search_hotel .item-loop.item-hotel,
.bc_search_hotel .item-loop-list.item-hotel {
	position: relative;
	background: #ffffff;
	border: 1px solid #eef1f6;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
}

.bc_search_hotel .item-loop.item-hotel .thumb-image,
.bc_search_hotel .item-loop-list.item-hotel .thumb-image {
	position: relative;
	border-radius: 18px;
	overflow: hidden;
}

.bc_search_hotel .item-loop.item-hotel .thumb-image img,
.bc_search_hotel .item-loop-list.item-hotel .thumb-image img {
	width: 100%;
	height: 200px;
	object-fit: cover;
	display: block;
}

.bc_search_hotel .item-loop.item-hotel .featured,
.bc_search_hotel .item-loop.item-hotel .sale_info,
.bc_search_hotel .item-loop-list.item-hotel .featured,
.bc_search_hotel .item-loop-list.item-hotel .sale_info {
	position: absolute;
	top: 12px;
	left: 12px;
	background: #ff4d4f;
	color: #ffffff;
	font-size: 12px;
	font-weight: 600;
	padding: 4px 10px;
	border-radius: 999px;
	z-index: 3;
}

.bc_search_hotel .item-loop.item-hotel .service-wishlist,
.bc_search_hotel .item-loop-list.item-hotel .service-wishlist {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.12);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 4;
}

.bc_search_hotel .item-loop.item-hotel .service-wishlist i,
.bc_search_hotel .item-loop-list.item-hotel .service-wishlist i {
	color: #9ca3af;
	font-size: 14px;
}

.bc_search_hotel .item-loop.item-hotel .service-wishlist.active i,
.bc_search_hotel .item-loop-list.item-hotel .service-wishlist.active i {
	color: #ff4d4f;
}

.bc_search_hotel .item-loop.item-hotel .item-title,
.bc_search_hotel .item-loop-list.item-hotel .item-title {
	padding: 12px 14px 4px;
}

.bc_search_hotel .item-loop.item-hotel .item-title a,
.bc_search_hotel .item-loop-list.item-hotel .item-title a {
	color: #111827;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-decoration: none;
}

.bc_search_hotel .item-loop.item-hotel .meta-row,
.bc_search_hotel .item-loop-list.item-hotel .meta-row {
	padding: 0 14px 6px;
}

.bc_search_hotel .item-loop.item-hotel .location,
.bc_search_hotel .item-loop-list.item-hotel .location {
	display: flex;
	align-items: center;
	gap: 6px;
	color: #6b7280;
	font-size: 13px;
}

.bc_search_hotel .item-loop.item-hotel .location i,
.bc_search_hotel .item-loop-list.item-hotel .location i {
	color: #9ca3af;
}

.bc_search_hotel .item-loop.item-hotel .info,
.bc_search_hotel .item-loop-list.item-hotel .g-rate-price {
	padding: 8px 14px 14px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.bc_search_hotel .item-loop.item-hotel .info .g-price .text-price,
.bc_search_hotel .item-loop-list.item-hotel .g-rate-price .g-price .text-price {
	font-size: 16px;
	font-weight: 700;
	color: #111827;
}

.bc_search_hotel .item-loop.item-hotel .info .g-price .unit,
.bc_search_hotel .item-loop-list.item-hotel .g-rate-price .g-price .unit {
	font-size: 12px;
	color: #6b7280;
	font-weight: 500;
}

.bc_search_hotel .item-loop.item-hotel .review-row,
.bc_search_hotel .item-loop-list.item-hotel .review-row {
	display: flex;
	align-items: center;
	gap: 4px;
	font-size: 13px;
	color: #111827;
}

.bc_search_hotel .item-loop.item-hotel .review-row .fa-star,
.bc_search_hotel .item-loop-list.item-hotel .review-row .fa-star {
	color: #f59e0b;
}

.bc_search_hotel .item-loop.item-hotel .review-row .review,
.bc_search_hotel .item-loop-list.item-hotel .review-row .review {
	color: #6b7280;
}

@media (max-width: 766px) {
	.bc_search_hotel .item-loop.item-hotel .thumb-image img,
	.bc_search_hotel .item-loop-list.item-hotel .thumb-image img {
		height: 180px;
	}

	.bc_search_hotel .item-loop.item-hotel .item-title a,
	.bc_search_hotel .item-loop-list.item-hotel .item-title a {
		font-size: 15px;
	}
}


/* ============================================================
   TRIPMANGA — SECTION HEADINGS (List blocks)
   Apply heading-section treatment to hotel/tour/car/news blocks
   ============================================================ */

/* Make each list-block's header look like .heading-section */
.bc-list-hotel .title,
.bc-list-tour .title,
.bc-list-car .title,
.bc-list-news .title {
    font-size: 22px;
    font-weight: 800;
    color: var(--tm-navy, #0f172a);
    font-family: var(--tm-font, 'Poppins', sans-serif);
    margin: 0 0 14px;
    text-align: center;
    line-height: 1.2;
    position: relative;
    display: block;
    padding-bottom: 18px;
}

/* Green underline accent */
.bc-list-hotel .title::after,
.bc-list-tour .title::after,
.bc-list-car .title::after,
.bc-list-news .title::after {
    content: '';
    display: block;
    width: 50px;
    height: 3px;
    background: var(--tm-green, #038a52);
    border-radius: 2px;
    margin: 12px auto 0;
}

.bc-list-hotel .sub-title,
.bc-list-tour .sub-title,
.bc-list-car .sub-title,
.bc-list-news .sub-title {
    font-size: 16px;
    color: var(--tm-muted, #64748b);
    text-align: center;
    max-width: 580px;
    margin: 0 auto 32px;
    line-height: 1.6;
    font-family: var(--tm-font, 'Poppins', sans-serif);
}

/* Section spacing — add breathing room between homepage blocks */
.bc-list-hotel,
.bc-list-tour,
.bc-list-car,
.bc-list-news {
    padding-top: 60px;
    padding-bottom: 40px;
}

/* Responsive: shrink headings on smaller screens */
@media (max-width: 991px) {
    .bc-list-hotel .title,
    .bc-list-tour .title,
    .bc-list-car .title,
    .bc-list-news .title { font-size: 30px; }
}
@media (max-width: 767px) {
    .bc-list-hotel .title,
    .bc-list-tour .title,
    .bc-list-car .title,
    .bc-list-news .title { font-size: 24px; }
    .bc-list-hotel .sub-title,
    .bc-list-tour .sub-title,
    .bc-list-car .sub-title,
    .bc-list-news .sub-title { font-size: 15px; }
    .bc-list-hotel,
    .bc-list-tour,
    .bc-list-car,
    .bc-list-news { padding-top: 40px; padding-bottom: 24px; }
}

/* ============================================================
   BC-SECTION — Children maximize height, mobile responsive
   ============================================================ */
.page-template-content .bc-section { padding: 20px 0; }
.page-template-content .bc-section > .container > .row,
.page-template-content .bc-section > .container-fluid > .row {
    display: flex !important;
    flex-wrap: wrap;
    margin-left: -8px;
    margin-right: -8px;
}
.page-template-content .bc-section > .container > .row > .bc-column,
.page-template-content .bc-section > .container-fluid > .row > .bc-column {
    display: flex !important;
    flex-direction: column;
    padding-left: 8px;
    padding-right: 8px;
    margin-bottom: 16px;
}
/* Children fill the column height */
.page-template-content .bc-section .bc-column > * { flex: 1; }

/* Mobile: single column, stacked rows */
@media (max-width: 767px) {
    .page-template-content .bc-section { padding: 12px 0; }
    .bc-section .row > .bc-column.col-6,
    .bc-section .row > .bc-column.col-4,
    .bc-section .row > .bc-column.col-3,
    .bc-section .row > .bc-column[class*="col-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}

/* ============================================================
   LOCATIONS STYLE_4 — Mobile horizontal swipe carousel
   ============================================================ */
@media (max-width: 767px) {
    .bc-list-locations.style_4 .list-item .row {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        gap: 12px;
        padding-bottom: 10px;
        margin-left: -5px;
        margin-right: -5px;
    }
    .bc-list-locations.style_4 .list-item .row > [class*="col-"] {
        flex: 0 0 75% !important;
        max-width: 75% !important;
        width: 75% !important;
        scroll-snap-align: start;
        padding-left: 5px;
        padding-right: 5px;
    }
    .bc-list-locations.style_4 .list-item .destination-item {
        min-height: 220px;
        margin-bottom: 0;
    }
    .bc-list-locations.style_4 .list-item .destination-item .image {
        min-height: 220px;
    }
    /* Hide scrollbar but keep functionality */
    .bc-list-locations.style_4 .list-item .row::-webkit-scrollbar {
        display: none;
    }
    .bc-list-locations.style_4 .list-item .row {
        -ms-overflow-style: none;
        scrollbar-width: none;
    }
}

/* ============================================================
   OFFER BLOCK — Taller, more impactful images
   ============================================================ */

/* Equal-height cards */
.bc-offer .row { display: flex !important; flex-wrap: wrap; }
.bc-offer .row > [class*="col-"] { display: flex !important; }
.bc-offer .item { min-height: 380px; width: 100%; height: 100% !important; }
.bc-offer .col-lg-6 .item { min-height: unset !important; }
/* Background image fit */
.bc-offer .item .img-cover { background-size: cover !important; background-position: center !important; background-repeat: no-repeat !important; }

@media (max-width: 991px) {
    .bc-offer .item { min-height: 300px; }
}
@media (max-width: 767px) {
    .bc-offer .item { min-height: 260px; }
}

/* ============================================================
   Search Form Date Fields — more spacing, normal weight text
   ============================================================ */

/* Hotel date field */
.hotel-sf__field--dates { padding: 22px 28px !important; }
.hotel-sf__label { margin-bottom: 6px !important; }
.hotel-sf__date-display { font-weight: 400 !important; font-size: 15px; }
.hotel-sf__input { font-weight: 400 !important; }

/* ============================================================
   Hotel & Tour — circled icons, smooth dropdowns, clean look
   ============================================================ */

/* Hotel icons — 50% border-radius, neutral bg, text color */
.hotel-sf__icon {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    border-radius: 50% !important;
    background: #f5f6f8 !important;
    border: 1px solid #e8ecf1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.hotel-sf__icon i {
    font-size: 18px !important;
    color: #1a2b48 !important;
}

/* Hotel chevron — hide */
.hotel-sf__chevron { display: none !important; }

/* Hotel travellers dropdown — smooth transition, clean white, proper height */
.hotel-sf__dropdown {
    display: block !important;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
    pointer-events: none;
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 32px rgba(0,0,0,0.10), 0 2px 6px rgba(0,0,0,0.04) !important;
    z-index: 2000 !important;
    padding: 16px 20px !important;
    min-width: 280px !important;
    max-height: none !important;
}
.hotel-sf__dropdown.is-open {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}
.hotel-sf__dropdown .tm-dropdown__guest-row {
    padding: 12px 0 !important;
    border-bottom: 1px solid #f3f4f6 !important;
}
.hotel-sf__dropdown .tm-dropdown__guest-row:last-of-type {
    border-bottom: none !important;
}
.hotel-sf__dropdown .tm-dropdown__guest-label {
    font-size: 15px !important;
    color: #1a2b48 !important;
}
.hotel-sf__dropdown .tm-dropdown__counter-btn {
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    border: 1px solid #d0d5dd !important;
    font-size: 16px !important;
}
.hotel-sf__dropdown .tm-dropdown__counter-btn:hover {
    border-color: #038a52 !important;
    color: #038a52 !important;
    background: #f0faf5 !important;
}
.hotel-sf__dropdown .tm-dropdown__counter-value {
    font-size: 16px !important;
    min-width: 24px !important;
}
.hotel-sf__done-btn {
    margin-top: 14px !important;
    padding: 11px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

/* Hotel travellers trigger – make entire field clickable */
.hotel-sf__travellers-trigger {
    font-weight: 400 !important;
}
/* Hotel travellers summary text */
.hotel-sf__travellers-summary {
    font-weight: 400 !important;
}

/* ============================================================
   ALL form input/display text — normal weight (not bold)
   ============================================================ */
.tour-sf__date-display,
.car-sf__date-display { font-weight: 400 !important; }
.car-search-form-inline .search-field input.form-control,
.car-search-form-inline .search-field input.location-input { font-weight: 400 !important; }
/* Car time trigger */
.car-sf__time-trigger { font-weight: 400 !important; }
.car-sf__time-pickup, .car-sf__time-dropoff { font-weight: 400 !important; }
/* Car/Tour passenger & dropdown values */
.tm-dropdown__value { font-weight: 400 !important; }
.tm-dropdown__trigger { font-weight: 400 !important; }

/* Tour & Car date fields (shared .search-field / .field-label classes) */
.car-search-form-inline .search-field--dates { padding: 22px 24px !important; }
.car-search-form-inline .search-field .field-label { margin-bottom: 8px !important; }

/* Flight date field */
.flight-sf__date-display { font-weight: 400 !important; }
.bc_form.flight-search-form .form-content { padding: 16px 18px 16px 44px !important; }
.bc_form.flight-search-form .form-content .form-control { font-weight: 400 !important; }
.flight-date-sub label { margin-bottom: 6px !important; }

/* Homepage combined search (bc-form-search-all) */
.bc-form-search-all .hotel-sf__date-display { font-weight: 400 !important; }
.bc-form-search-all .hotel-sf__input { font-weight: 400 !important; }

/* ============================================================
   Car Rental Pills — styled for search page (light background)
   ============================================================ */
.car-search-bar .car-search-service-toggle {
    margin-bottom: 10px;
}
.car-search-bar .car-service-pill {
    color: #1a2b48;
    border-color: #d0d5dd;
    background: #fff;
}
.car-search-bar .car-service-pill.active {
    background: #038a52;
    border-color: #038a52;
    color: #fff;
}
.car-search-bar .car-service-pill:hover:not(.active) {
    background: #f0faf5;
    border-color: #038a52;
    color: #038a52;
}

/* ============================================================
   Car Search Form — field proportion overrides
   ============================================================ */
.car-search-form-inline .search-field--dates { flex: 1.8 !important; }
.car-search-form-inline .search-field--passengers {
    flex: 0 0 160px !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
}
.car-search-btn {
    padding: 0 22px !important;
    min-height: 68px !important;
    font-size: 14px !important;
    border-radius: 0 0 14px 0 !important;
    letter-spacing: 0.3px;
}

/* ============================================================
   Car Dropdowns — smooth, professional, downward
   ============================================================ */

/* ── Generic dropdown transition (replaces display:none toggle) ── */
.car-search-form-inline .tm-dropdown__menu,
.car-search-form-inline .car-sf__time-menu {
    display: block !important;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
    pointer-events: none;
    /* Always downward */
    top: calc(100% + 6px) !important;
    bottom: auto !important;
    /* Clean white look */
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 32px rgba(0,0,0,0.10), 0 2px 6px rgba(0,0,0,0.04) !important;
    z-index: 2000 !important;
}
.car-search-form-inline .tm-dropdown__menu.is-open,
.car-search-form-inline .car-sf__time-menu.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* ── Time dropdown — proper sizing & clean look ── */
.car-sf__time-menu {
    min-width: 300px !important;
    padding: 0 !important;
}
.car-sf__time-cols {
    border-bottom: none !important;
}
.car-sf__time-col {
    display: flex !important;
    flex-direction: column !important;
}
.car-sf__time-col:first-child {
    border-right: 1px solid #f1f3f5 !important;
}
.car-sf__time-col-label {
    padding: 12px 16px 8px !important;
    font-size: 11px !important;
    color: #64748b !important;
    background: #fafbfc !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 2 !important;
}
.car-sf__time-list {
    max-height: 240px !important;
    overflow-y: auto !important;
    padding: 4px 0 !important;
    scrollbar-width: thin;
    scrollbar-color: #d0d5dd transparent;
}
.car-sf__time-menu .tm-dropdown__item {
    padding: 8px 16px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #334155 !important;
    transition: background 0.15s ease, color 0.15s ease !important;
    border-radius: 0 !important;
}
.car-sf__time-menu .tm-dropdown__item:hover {
    background: #f0faf5 !important;
    color: #038a52 !important;
}
.car-sf__time-menu .tm-dropdown__item.is-selected {
    background: #e8f5ee !important;
    color: #038a52 !important;
    font-weight: 600 !important;
}
.car-sf__time-done {
    border-top: 1px solid #f1f3f5 !important;
    background: #fff !important;
    color: #038a52 !important;
    font-weight: 600 !important;
    padding: 10px !important;
    border-radius: 0 0 12px 12px !important;
    transition: background 0.15s ease !important;
    position: sticky !important;
    bottom: 0 !important;
    z-index: 2 !important;
}
.car-sf__time-done:hover {
    background: #f0faf5 !important;
}

/* ── Passengers dropdown — proper sizing & downward ── */
.car-search-form-inline .search-field--passengers .tm-dropdown__menu {
    min-width: 180px !important;
    max-height: 280px !important;
    padding: 4px 0 !important;
}
.car-search-form-inline .search-field--passengers .tm-dropdown__item {
    padding: 9px 16px !important;
    font-size: 14px !important;
}

/* ── Time trigger — hide chevron, make whole field clickable look ── */
.car-sf__time-chevron { display: none !important; }
.tm-dropdown__icon { display: none !important; }

/* ── Circled icons for ALL car search fields (dates, times, passengers) ── */
.car-search-form-inline .search-field--dates,
.car-search-form-inline .search-field--times,
.car-search-form-inline .search-field--passengers {
    flex-direction: row !important;
    align-items: center !important;
    gap: 16px !important;
    padding-left: 20px !important;
}
.car-search-form-inline .search-field--dates > .location-icon,
.car-search-form-inline .search-field--times > .location-icon,
.car-search-form-inline .search-field--passengers > .location-icon {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    border-radius: 50% !important;
    background: #f5f6f8 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    border: 1px solid #e8ecf1 !important;
}
.car-search-form-inline .search-field--dates > .location-icon i,
.car-search-form-inline .search-field--times > .location-icon i,
.car-search-form-inline .search-field--passengers > .location-icon i {
    font-size: 18px !important;
    color: #1a2b48 !important;
}
.car-search-form-inline .search-field--dates > .location-text,
.car-search-form-inline .search-field--times > .location-text,
.car-search-form-inline .search-field--passengers > .location-text {
    flex: 1 !important;
    min-width: 0 !important;
}

/* ── Dropoff input — no focus border ── */
.car-search-form-inline .search-field--dropoff input,
.car-search-form-inline .search-field--dropoff input:focus,
.car-search-form-inline .search-field--dropoff input:active,
.car-search-form-inline .search-field--pickup input,
.car-search-form-inline .search-field--pickup input:focus,
.car-search-form-inline .search-field--pickup input:active {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}
/* Google Places autocomplete container styling */
.pac-container {
    border-radius: 12px !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 10px 32px rgba(0,0,0,0.10), 0 2px 6px rgba(0,0,0,0.04) !important;
    margin-top: 6px !important;
    font-family: 'Poppins', sans-serif !important;
}
.pac-item {
    padding: 10px 14px !important;
    font-size: 14px !important;
    border-bottom: 1px solid #f5f5f5 !important;
    cursor: pointer !important;
}
.pac-item:hover {
    background: #f0faf5 !important;
}

/* ── Dropdown width: 75% of parent, centered ── */
.car-search-form-inline .search-field--passengers .tm-dropdown {
    position: relative !important;
}
.car-search-form-inline .search-field--passengers .tm-dropdown__menu {
    width: 75% !important;
    min-width: 160px !important;
    left: 50% !important;
    transform: translateX(-50%) translateY(8px) !important;
}
.car-search-form-inline .search-field--passengers .tm-dropdown__menu.is-open {
    transform: translateX(-50%) translateY(0) !important;
}
.car-search-form-inline .search-field--times {
    position: relative !important;
}
.car-search-form-inline .car-sf__time-menu {
    width: 75% !important;
    min-width: 280px !important;
    left: 50% !important;
    transform: translateX(-50%) translateY(8px) !important;
}
.car-search-form-inline .car-sf__time-menu.is-open {
    transform: translateX(-50%) translateY(0) !important;
}

/* ============================================================
   Mobile — passenger field height & dropdown centering
   ============================================================ */
@media (max-width: 767px) {
    /* Reduce passenger field height on mobile */
    .car-search-form-inline .search-field--passengers {
        padding: 8px 16px !important;
    }
    /* Center all car form dropdowns at 75% width on mobile */
    .car-search-form-inline .tm-dropdown__menu,
    .car-search-form-inline .car-sf__time-menu {
        width: 75% !important;
        left: 50% !important;
        transform: translateX(-50%) translateY(8px) !important;
    }
    .car-search-form-inline .tm-dropdown__menu.is-open,
    .car-search-form-inline .car-sf__time-menu.is-open {
        transform: translateX(-50%) translateY(0) !important;
    }
    /* Hotel travellers dropdown on mobile */
    .hotel-sf__dropdown {
        width: 75% !important;
        min-width: 0 !important;
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) translateY(8px) !important;
    }
    .hotel-sf__dropdown.is-open {
        transform: translateX(-50%) translateY(0) !important;
    }
}

/* ============================================================
   Date Range Picker — always show 2 months, including mobile
   ============================================================ */
@media (max-width: 564px) {
    .daterangepicker {
        width: 100% !important;
        left: 0 !important;
        right: 0 !important;
    }
    .daterangepicker .drp-calendar.left,
    .daterangepicker .drp-calendar.right {
        display: block !important;
        float: none !important;
        clear: both !important;
        max-width: 100% !important;
        padding: 8px !important;
    }
    .daterangepicker .drp-calendar .calendar-table {
        width: 100% !important;
    }
}

/* ============================================================
   SOURCE MAP (keep at bottom)
   ============================================================ */
/*# sourceMappingURL=app.custom.css.map */
