/* Mobile search page redesign (bottom nav → Search) */
@media (max-width: 767px) {
	body.vnd-has-mobile-bottom-nav .mainsearch.srp-main {
		padding-top: 8px;
		padding-bottom: 12px;
	}

	body.vnd-has-mobile-bottom-nav .mainsearch .container,
	body.vnd-has-mobile-bottom-nav .mainsearch .container-fluid {
		padding-left: 14px;
		padding-right: 14px;
	}

	/* Hide header search bar on mobile — page has its own search UI */
	body.vnd-has-mobile-bottom-nav .inner-header .navbar-form.header-form {
		display: none !important;
	}

	/* ── Search query bar ── */
	.vnd-search-mobile-shell {
		display: block;
		margin-bottom: 14px;
	}

	.vnd-search-mobile-query {
		display: flex;
		align-items: center;
		gap: 10px;
		padding: 12px 14px;
		border: 2px solid #4abdac;
		border-radius: 999px;
		background: #fff;
		margin-bottom: 12px;
	}

	.vnd-search-mobile-query i {
		color: #4abdac;
		font-size: 17px;
		flex: 0 0 auto;
	}

	.vnd-search-mobile-query input {
		flex: 1 1 auto;
		min-width: 0;
		border: 0;
		outline: none;
		box-shadow: none;
		font-size: 14px;
		line-height: 1.35;
		color: #1a2b3d;
		background: transparent;
		padding: 0;
		height: auto;
	}

	.vnd-search-mobile-query input::placeholder {
		color: #8a94a6;
		font-size: 13px;
	}

	/* ── Recent searches ── */
	.vnd-search-recent-wrap {
		margin-bottom: 12px;
	}

	.vnd-search-recent-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin-bottom: 8px;
	}

	.vnd-search-recent-head span {
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 0.06em;
		text-transform: uppercase;
		color: #8a94a6;
	}

	.vnd-search-recent-clear {
		border: 0;
		background: transparent;
		color: #4abdac;
		font-size: 12px;
		font-weight: 700;
		padding: 0;
	}

	.vnd-search-recent-list {
		display: flex;
		flex-wrap: nowrap;
		gap: 8px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding-bottom: 2px;
	}

	.vnd-search-recent-chip {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		padding: 7px 12px;
		border-radius: 999px;
		border: 1px solid #c5ebe6;
		background: #fff;
		color: #2b3a4d;
		font-size: 12px;
		font-weight: 600;
		cursor: pointer;
		white-space: nowrap;
		flex: 0 0 auto;
	}

	.vnd-search-recent-chip i {
		color: #4abdac;
		font-size: 11px;
	}

	/* ── Top filter bar (From | To | Category) ── */
	.mainsearch.srp-main .search-top-menu {
		float: none !important;
		width: 100% !important;
		padding: 0 !important;
		margin: 0 0 10px !important;
	}

	.mainsearch.srp-main .search-top-menu > .col-md-7,
	.mainsearch.srp-main .search-top-menu > .col-md-5 {
		width: 100% !important;
		float: none !important;
		padding: 0 !important;
	}

	.mainsearch.srp-main .search-top-menu > .col-md-5 {
		display: none !important;
	}

	.mainsearch.srp-main .search-top-menu .col-md-7 > .row,
	.mainsearch.srp-main .vnd-search-mobile-filters-card {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		margin: 0 0 10px !important;
		width: 100% !important;
		float: none !important;
		border: 1px solid #e3e8ef;
		border-radius: 14px;
		background: #fff;
		overflow: hidden;
		box-shadow: none;
	}

	.mainsearch.srp-main .vnd-search-mobile-filters-card::before,
	.mainsearch.srp-main .vnd-search-mobile-filters-card::after {
		display: none !important;
		content: none !important;
	}

	.mainsearch.srp-main .vnd-search-mobile-filters-card > .vnd-search-filter-cell {
		flex: 1 1 0 !important;
		width: 33.333% !important;
		max-width: 33.333% !important;
		min-width: 0 !important;
		float: none !important;
		padding: 0 !important;
		position: relative;
	}

	.mainsearch.srp-main .vnd-search-mobile-filters-card > .vnd-search-desktop-submit {
		display: none !important;
		flex: 0 0 0 !important;
		width: 0 !important;
		max-width: 0 !important;
		overflow: hidden !important;
		padding: 0 !important;
		margin: 0 !important;
		border: 0 !important;
	}

	.mainsearch.srp-main .vnd-search-desktop-submit {
		display: none !important;
	}

	.mainsearch.srp-main .vnd-search-filter-cell {
		display: block !important;
		visibility: visible !important;
		border-right: 1px solid #e8edf5;
		min-width: 0;
	}

	.mainsearch.srp-main .vnd-search-filter-cell:last-of-type {
		border-right: 0;
	}

	.mainsearch.srp-main .vnd-filter-display-value {
		display: block;
		font-size: 12px;
		font-weight: 700;
		color: #1a2b3d;
		line-height: 1.3;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.mainsearch.srp-main .vnd-filter-select-wrap {
		position: relative;
		flex: 1 1 auto;
		min-width: 0;
		margin: 0 !important;
	}

	.mainsearch.srp-main .vnd-filter-select-wrap .bootstrap-select {
		position: absolute !important;
		inset: 0 !important;
		width: 100% !important;
		height: 100% !important;
		margin: 0 !important;
		opacity: 0 !important;
		z-index: 2;
	}

	.mainsearch.srp-main .vnd-filter-select-wrap .bootstrap-select > .dropdown-toggle {
		width: 100% !important;
		height: 100% !important;
		min-height: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
		border: 0 !important;
	}

	.mainsearch.srp-main .vnd-filter-select-wrap > select.selectpicker {
		display: none !important;
	}

	.mainsearch.srp-main .vnd-filter-cell-inner {
		display: flex;
		align-items: flex-start;
		gap: 6px;
		padding: 11px 8px 11px 10px;
		min-height: 58px;
		height: 100%;
		box-sizing: border-box;
		cursor: pointer;
	}

	.mainsearch.srp-main .vnd-filter-cell-icon {
		flex: 0 0 auto;
		color: #4abdac;
		font-size: 15px;
		line-height: 1;
		margin-top: 2px;
	}

	.mainsearch.srp-main .vnd-filter-cell-content {
		flex: 1 1 auto;
		min-width: 0;
		display: flex;
		flex-direction: column;
		gap: 2px;
	}

	.mainsearch.srp-main .vnd-filter-cell-label {
		display: block !important;
		font-size: 10px;
		font-weight: 600;
		color: #9aa5b5;
		text-transform: none;
		letter-spacing: 0;
		margin: 0;
		line-height: 1.2;
		white-space: nowrap;
	}

	.mainsearch.srp-main .vnd-filter-cell-control {
		display: flex;
		align-items: center;
		gap: 2px;
		min-width: 0;
		width: 100%;
	}

	.mainsearch.srp-main .vnd-filter-cell-control .form-group {
		margin: 0 !important;
		flex: 1 1 auto;
		min-width: 0;
	}

	.mainsearch.srp-main .vnd-filter-cell-control .input-group,
	.mainsearch.srp-main .vnd-filter-cell-control .bootstrap-select {
		width: 100% !important;
		display: block !important;
		margin: 0 !important;
	}

	.mainsearch.srp-main .vnd-filter-cell-control .input-group .form-control,
	.mainsearch.srp-main .vnd-filter-cell-control .bootstrap-select > .dropdown-toggle {
		border: 0 !important;
		box-shadow: none !important;
		background: transparent !important;
		padding: 0 !important;
		height: auto !important;
		min-height: 0 !important;
		font-size: 12px !important;
		font-weight: 700 !important;
		color: #1a2b3d !important;
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
		line-height: 1.3;
	}

	.mainsearch.srp-main .vnd-filter-cell-control .form-control::placeholder {
		color: #1a2b3d !important;
		font-weight: 700 !important;
		opacity: 1;
	}

	.mainsearch.srp-main .vnd-filter-cell-control .bootstrap-select .filter-option {
		font-size: 12px !important;
		font-weight: 700 !important;
		color: #1a2b3d !important;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.mainsearch.srp-main .vnd-filter-cell-control .bootstrap-select .caret {
		display: none !important;
	}

	.mainsearch.srp-main .vnd-filter-cell-control--select .bootstrap-select.btn-group {
		width: 100% !important;
	}

	.mainsearch.srp-main .vnd-filter-cell-control--select .bootstrap-select > .dropdown-toggle {
		padding-right: 0 !important;
	}

	.mainsearch.srp-main .vnd-filter-cell-caret {
		flex: 0 0 auto;
		color: #9aa5b5;
		font-size: 13px;
		line-height: 1;
		margin-top: 1px;
	}

	.mainsearch.srp-main .vnd-search-filter-cell .input-group-addon {
		display: none !important;
	}

	/* legacy label hook — hidden on mobile */
	.mainsearch.srp-main .vnd-filter-label {
		display: none !important;
	}

	/* ── More filters (full width, below filter card) ── */
	.vnd-search-mobile-actions {
		display: flex;
		gap: 0;
		align-items: stretch;
		margin: 0 0 14px;
	}

	.vnd-search-more-filters-btn {
		flex: 1 1 auto;
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		min-height: 46px;
		padding: 0 16px;
		border: 1px solid #e3e8ef;
		border-radius: 14px;
		background: #fff;
		color: #4abdac;
		font-size: 14px;
		font-weight: 700;
		text-decoration: none !important;
	}

	.vnd-search-more-filters-btn i.fa-sliders,
	.vnd-search-more-filters-btn::before {
		color: #4abdac;
	}

	.vnd-search-mobile-submit {
		display: none !important;
	}

	/* ── Quick filters: 3-column grid ── */
	.mainsearch.srp-main .quick-filter {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 8px !important;
		width: 100% !important;
		padding: 0 !important;
		margin: 0 0 14px !important;
		float: none !important;
		white-space: normal !important;
		flex-wrap: unset !important;
		align-items: stretch !important;
		font-size: 1rem !important;
	}

	.mainsearch.srp-main .quick-filter h3 {
		grid-column: 1 / -1;
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		margin: 0 0 4px !important;
		padding: 0 !important;
		font-size: 11px !important;
		font-weight: 800 !important;
		letter-spacing: 0.06em;
		color: #8a94a6 !important;
		text-transform: uppercase;
	}

	.mainsearch.srp-main .quick-filter .vnd-quick-view-all {
		font-size: 12px;
		font-weight: 700;
		color: #4abdac;
		text-transform: none;
		letter-spacing: 0;
	}

	.mainsearch.srp-main .quick-ftr-bx {
		display: block !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		float: none !important;
		vertical-align: unset !important;
	}

	.mainsearch.srp-main .quick-ftr-bx .is-custom-rdo {
		display: block;
		width: 100%;
		height: 100%;
	}

	.mainsearch.srp-main .quick-ftr-bx label {
		width: 100% !important;
		min-width: 0 !important;
		min-height: 0 !important;
		height: 100%;
		padding: 10px 6px !important;
		border-radius: 12px !important;
		border: 1px solid #e8edf5 !important;
		background: #fff !important;
		font-size: 10px !important;
		font-weight: 700 !important;
		line-height: 1.25 !important;
		text-align: center !important;
		text-transform: none !important;
		color: #2b3a4d !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		margin: 0 !important;
	}

	.mainsearch.srp-main .quick-ftr-bx label:before,
	.mainsearch.srp-main .quick-ftr-bx label:after {
		display: none !important;
	}

	.mainsearch.srp-main .quick-ftr-bx input[type="radio"]:checked + label {
		background: #4abdac !important;
		border-color: #4abdac !important;
		color: #fff !important;
	}

	/* ── Tip banner ── */
	.vnd-search-mobile-tip {
		margin: 0 0 12px;
		padding: 12px 14px;
		border-radius: 12px;
		background: #eefaf8;
		color: #2b5d57;
		font-size: 13px;
		line-height: 1.45;
		font-weight: 600;
	}

	.vnd-search-mobile-tip i {
		color: #4abdac;
		margin-right: 6px;
	}

	/* ── Results below filters on mobile ── */
	body.vnd-has-mobile-bottom-nav .mainsearch .searchAbnb,
	body.vnd-has-mobile-bottom-nav .mainsearch .mapframe {
		width: 100% !important;
		float: none !important;
	}

	body.vnd-has-mobile-bottom-nav .mainsearch .mapframe {
		min-height: 280px;
		height: 42vh;
		margin-top: 12px;
	}
}

@media (min-width: 768px) {
	.vnd-search-mobile-shell,
	.vnd-search-mobile-actions,
	.vnd-search-mobile-tip {
		display: none;
	}

	.vnd-filter-label {
		display: none;
	}

	.mainsearch.srp-main .vnd-filter-cell-inner {
		display: block;
		padding: 0;
		min-height: 0;
	}

	.mainsearch.srp-main .vnd-filter-cell-icon,
	.mainsearch.srp-main .vnd-filter-cell-label,
	.mainsearch.srp-main .vnd-filter-cell-caret {
		display: none;
	}

	.mainsearch.srp-main .vnd-filter-cell-content,
	.mainsearch.srp-main .vnd-filter-cell-control {
		display: block;
	}

	.mainsearch.srp-main .vnd-search-mobile-filters-card {
		display: block !important;
		border: 0;
		border-radius: 0;
		background: transparent;
		margin: 0 !important;
	}

	.mainsearch.srp-main .vnd-search-mobile-filters-card > [class*="col-"] {
		width: auto !important;
		max-width: none !important;
		float: left !important;
		border-right: 0;
	}
}
