/*
 * Carveoo Marketplace UI v0.8.0
 * Mobile-first global marketplace shell.
 */

.cv-market-header,
.cv-market-header *,
.cv-market-header *::before,
.cv-market-header *::after {
	box-sizing: border-box;
}

.cv-market-header {
	width: 100%;
	background: #fff;
	font-family: inherit;
	color: #17202a;
	border-bottom: 1px solid #ece7df;
}

.cv-market-topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 64px;
	padding: 10px 16px 6px;
}

.cv-market-brand {
	display: inline-flex;
	align-items: center;
	min-width: 0;
	text-decoration: none;
}

.cv-market-brand__image {
	display: block;
	width: auto;
	max-width: 126px;
	max-height: 38px;
	object-fit: contain;
}

.cv-market-brand__text {
	font-size: 20px;
	font-weight: 800;
	color: #17202a;
}

.cv-market-actions {
	display: flex;
	align-items: center;
	gap: 6px;
	flex: 0 0 auto;
}

.cv-market-action {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border: 1px solid transparent;
	border-radius: 50%;
	color: #17202a;
	text-decoration: none;
	transition: background-color .18s ease, border-color .18s ease;
}

.cv-market-action:hover,
.cv-market-action:focus-visible {
	background: #f7f4ee;
	border-color: #e7dfd2;
}

.cv-market-action svg {
	display: block;
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.cv-market-search-row {
	padding: 4px 16px 14px;
}

.cv-marketplace-search-shell {
	width: 100%;
}

.cv-search-trigger {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	min-height: 58px;
	margin: 0;
	padding: 9px 16px;
	border: 1px solid #dedbd5;
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 4px 16px rgba(15, 23, 42, .09);
	color: #17202a;
	text-align: left;
	cursor: pointer;
}

.cv-search-trigger__icon {
	position: relative;
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	border: 2px solid #17202a;
	border-radius: 50%;
}

.cv-search-trigger__icon::after {
	content: "";
	position: absolute;
	right: -5px;
	bottom: -3px;
	width: 7px;
	height: 2px;
	border-radius: 2px;
	background: #17202a;
	transform: rotate(45deg);
}

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

.cv-search-trigger__title {
	overflow: hidden;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.cv-search-trigger__meta {
	overflow: hidden;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.3;
	color: #737373;
	white-space: nowrap;
	text-overflow: ellipsis;
}

/* Search overlay */
.cv-search-overlay {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: none;
}

.cv-search-overlay.is-open {
	display: block;
}

.cv-search-overlay__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, .36);
}

.cv-search-panel {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100dvh;
	background: #f7f7f7;
	color: #17202a;
	overflow: hidden;
}

.cv-search-panel__header {
	flex: 0 0 auto;
	display: grid;
	grid-template-columns: 42px 1fr 42px;
	align-items: center;
	min-height: 68px;
	padding: 10px 14px;
	border-bottom: 1px solid #e8e8e8;
	background: #fff;
}

.cv-search-panel__header h2 {
	grid-column: 2;
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.25;
	text-align: center;
}

.cv-search-panel__close {
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	margin: 0;
	padding: 0;
	border: 1px solid #dedede;
	border-radius: 50%;
	background: #fff;
	color: #17202a;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
}

.cv-search-panel__body {
	flex: 1 1 auto;
	min-height: 0;
	padding: 14px;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.cv-search-panel .hp-form,
.cv-search-panel .hp-form--listing-search,
.cv-search-panel .hp-form--wide {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.cv-search-panel .hp-form__fields {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 12px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.cv-search-panel .hp-form__field {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 18px !important;
	border: 1px solid #e2e2e2 !important;
	border-radius: 22px !important;
	background: #fff !important;
	box-shadow: 0 3px 12px rgba(15, 23, 42, .05) !important;
}

.cv-search-panel input[type="hidden"],
.cv-search-panel .hp-form__field:has(> input[type="hidden"]) {
	display: none !important;
}

.cv-search-panel .hp-form__field label,
.cv-search-panel .hp-field__label {
	display: block !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	font-size: 21px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: -.02em;
	text-transform: none !important;
	color: #202020 !important;
}

.cv-search-panel select.hp-field {
	width: 100% !important;
	min-height: 52px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	border: 1px solid #b9b9b9 !important;
	border-radius: 10px !important;
	background-color: #fff !important;
	font: inherit !important;
	font-size: 15px !important;
	color: #303030 !important;
}

.cv-search-panel .select2-container {
	width: 100% !important;
}

.cv-search-panel .select2-container .select2-selection--single {
	height: 52px !important;
	border: 1px solid #b9b9b9 !important;
	border-radius: 10px !important;
	background: #fff !important;
}

.cv-search-panel .select2-container .select2-selection--single .select2-selection__rendered {
	padding: 0 42px 0 14px !important;
	line-height: 50px !important;
	font-size: 15px !important;
	color: #303030 !important;
}

.cv-search-panel .select2-container .select2-selection--single .select2-selection__arrow {
	top: 12px !important;
	right: 10px !important;
	height: 28px !important;
}

.cv-search-panel .hp-field--date-range {
	width: 100% !important;
	margin: 0 !important;
}

.cv-search-panel .hp-field--date-range > input,
.cv-search-panel input[data-component*="date"] {
	width: 100% !important;
	min-height: 52px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	border: 1px solid #b9b9b9 !important;
	border-radius: 10px !important;
	background: #fff !important;
	box-shadow: none !important;
	font: inherit !important;
	font-size: 15px !important;
	color: #303030 !important;
}

.cv-search-panel .hp-form__button {
	position: fixed !important;
	z-index: 10020 !important;
	right: 16px !important;
	bottom: calc(16px + env(safe-area-inset-bottom)) !important;
	width: auto !important;
	min-width: 126px !important;
	min-height: 50px !important;
	margin: 0 !important;
	padding: 0 20px 0 48px !important;
	border: 0 !important;
	border-radius: 14px !important;
	background: #d2aa59 !important;
	box-shadow: 0 8px 20px rgba(210, 170, 89, .30) !important;
	color: #17202a !important;
	font: inherit !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	cursor: pointer;
}

.cv-search-panel .hp-form__button::before {
	content: "";
	position: absolute;
	left: 20px;
	top: 50%;
	width: 13px;
	height: 13px;
	border: 2px solid #17202a;
	border-radius: 50%;
	transform: translateY(-58%);
}

.cv-search-panel .hp-form__button::after {
	content: "";
	position: absolute;
	left: 31px;
	top: calc(50% + 6px);
	width: 6px;
	height: 2px;
	border-radius: 2px;
	background: #17202a;
	transform: rotate(45deg);
}

.cv-search-panel__footer {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	min-height: 82px;
	padding: 14px 16px calc(14px + env(safe-area-inset-bottom));
	border-top: 1px solid #e5e5e5;
	background: #fff;
}

.cv-search-clear {
	margin: 0;
	padding: 8px 4px;
	border: 0;
	border-bottom: 1px solid currentColor;
	background: transparent;
	color: #303030;
	font: inherit;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
}

html.cv-search-is-open .select2-container--open,
html.cv-search-is-open .select2-dropdown,
html.cv-search-is-open .flatpickr-calendar,
html.cv-search-is-open .flatpickr-calendar.open {
	z-index: 10100 !important;
}

html.cv-search-is-open,
html.cv-search-is-open body {
	overflow: hidden !important;
}

@media (min-width: 48rem) {
	.cv-market-topbar,
	.cv-market-search-row {
		max-width: 760px;
		margin-inline: auto;
	}

	.cv-search-panel {
		inset: 50% auto auto 50%;
		width: min(560px, calc(100% - 40px));
		height: auto;
		max-height: calc(100dvh - 40px);
		border-radius: 26px;
		transform: translate(-50%, -50%);
		box-shadow: 0 28px 80px rgba(15, 23, 42, .22);
	}

	.cv-search-panel__body {
		max-height: calc(100dvh - 190px);
	}

	.cv-search-panel .hp-form__button {
		position: absolute !important;
	}
}

.cv-marketplace-search__error {
	padding: 14px;
	border: 1px solid #d7d7d7;
	border-radius: 10px;
	background: #fff;
}


/* ---------------------------------------------------------
   MOBILE VEHICLE CATEGORY RAIL
   Real HivePress car_type terms, visual Carveoo treatment.
   --------------------------------------------------------- */

.cv-market-category-row {
	width: 100%;
	padding: 2px 0 10px;
	background: #fff;
}

.cv-car-types {
	width: 100%;
	overflow: hidden;
}

.cv-car-types__track {
	display: flex;
	align-items: stretch;
	gap: 8px;
	overflow-x: auto;
	padding: 4px 16px 8px;
	scroll-snap-type: x proximity;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}

.cv-car-types__track::-webkit-scrollbar {
	display: none;
}

.cv-car-type {
	position: relative;
	flex: 0 0 auto;
	display: grid;
	grid-template-rows: 34px auto;
	place-items: center;
	gap: 5px;
	min-width: 74px;
	padding: 8px 10px 9px;
	border: 1px solid #ebe6dd;
	border-radius: 16px;
	background: #fff;
	color: #60656c;
	text-decoration: none;
	scroll-snap-align: start;
	transition:
		transform .16s ease,
		border-color .16s ease,
		background-color .16s ease,
		color .16s ease,
		box-shadow .16s ease;
}

.cv-car-type:hover,
.cv-car-type:focus-visible {
	border-color: #d7c293;
	color: #17202a;
	transform: translateY(-1px);
}

.cv-car-type.is-active {
	border-color: #d2aa59;
	background: #fbf6ea;
	color: #17202a;
	box-shadow: 0 4px 12px rgba(210, 170, 89, .16);
}

.cv-car-type.is-active::after {
	content: "";
	position: absolute;
	left: 18px;
	right: 18px;
	bottom: -5px;
	height: 2px;
	border-radius: 999px;
	background: #d2aa59;
}

.cv-car-type__icon {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 11px;
	background: #f7f4ee;
	color: #303841;
}

.cv-car-type.is-active .cv-car-type__icon {
	background: #d2aa59;
	color: #111820;
}

.cv-car-type__icon svg {
	width: 24px;
	height: 24px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.65;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.cv-car-type:first-child .cv-car-type__icon svg {
	fill: none;
}

.cv-car-type__label {
	max-width: 96px;
	overflow: hidden;
	font-size: 11px;
	font-weight: 650;
	line-height: 1.2;
	text-align: center;
	white-space: nowrap;
	text-overflow: ellipsis;
}

/* Slightly more generous on tablet. */
@media (min-width: 48rem) {
	.cv-market-category-row {
		max-width: 760px;
		margin-inline: auto;
	}

	.cv-car-type {
		min-width: 82px;
	}
}


/* ---------------------------------------------------------
   CARVEOO SORT CONTROL
   --------------------------------------------------------- */

.cv-market-tools-row {
	position: relative;
	z-index: 30;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 100%;
	padding: 0 16px 12px;
	background: #fff;
}

.cv-sort {
	position: relative;
	width: min(100%, 190px);
}

.cv-sort__trigger {
	display: flex;
	align-items: center;
	gap: 9px;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 7px 12px;
	border: 1px solid #e4ded4;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 3px 10px rgba(15, 23, 42, .05);
	color: #17202a;
	text-align: left;
	cursor: pointer;
}

.cv-sort__spark {
	display: grid;
	place-items: center;
	flex: 0 0 30px;
	width: 30px;
	height: 30px;
	border-radius: 10px;
	background: #f7f1e5;
	color: #9c7327;
}

.cv-sort__spark svg,
.cv-sort__chevron,
.cv-sort__option svg {
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.cv-sort__spark svg {
	width: 18px;
	height: 18px;
}

.cv-sort__copy {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-width: 0;
}

.cv-sort__eyebrow {
	font-size: 9px;
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: #8b8e93;
}

.cv-sort__copy strong {
	overflow: hidden;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.25;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.cv-sort__chevron {
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	transition: transform .16s ease;
}

.cv-sort.is-open .cv-sort__chevron {
	transform: rotate(180deg);
}

.cv-sort__menu {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	z-index: 80;
	display: none;
	width: min(280px, calc(100vw - 32px));
	padding: 8px;
	border: 1px solid #e5dfd5;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 18px 50px rgba(15, 23, 42, .16);
}

.cv-sort.is-open .cv-sort__menu {
	display: grid;
}

.cv-sort__option {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	min-height: 46px;
	padding: 10px 12px;
	border-radius: 12px;
	color: #2e3339;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
}

.cv-sort__option:hover,
.cv-sort__option:focus-visible {
	background: #f8f5ef;
}

.cv-sort__option.is-active {
	background: #fbf5e8;
	color: #8f6821;
}

.cv-sort__option svg {
	width: 18px;
	height: 18px;
}

@media (min-width: 48rem) {
	.cv-market-tools-row {
		max-width: 760px;
		margin-inline: auto;
	}
}



/* ---------------------------------------------------------
   CARVEOO FILTER DRAWER V1.3
   One direct GET form. No Select2 mirror UI.
   --------------------------------------------------------- */

.cv-market-tools-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 8px;
	align-items: center;
	justify-content: stretch;
}

.cv-sort,
.cv-filter {
	width: 100%;
}

.cv-filter {
	position: relative;
}

.cv-filter__trigger {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 8px 12px;
	border: 1px solid #e4ded4;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 3px 10px rgba(15, 23, 42, .05);
	color: #17202a;
	font: inherit;
	cursor: pointer;
}

.cv-filter__trigger.has-filters {
	border-color: #d2aa59;
	background: #fbf6ea;
}

.cv-filter__icon {
	display: grid;
	place-items: center;
	width: 28px;
	height: 28px;
	border-radius: 9px;
	background: #f7f1e5;
	color: #9c7327;
}

.cv-filter__icon svg {
	width: 17px;
	height: 17px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.cv-filter__label {
	font-size: 12px;
	font-weight: 750;
}

.cv-filter__count {
	display: grid;
	place-items: center;
	min-width: 20px;
	height: 20px;
	padding: 0 5px;
	border-radius: 999px;
	background: #17202a;
	color: #fff;
	font-size: 10px;
	font-weight: 800;
}

.cv-filter-overlay {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: none;
	overflow: hidden;
}

.cv-filter-overlay.is-open { display: block; }

.cv-filter-overlay__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, .4);
}

.cv-filter-panel {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr);
	width: 100%;
	min-width: 0;
	min-height: 0;
	background: #f7f7f7;
	color: #17202a;
	overflow: hidden;
}

.cv-filter-panel__header {
	display: grid;
	grid-template-columns: 42px 1fr 42px;
	align-items: center;
	min-height: 66px;
	padding: 9px 14px;
	border-bottom: 1px solid #e8e8e8;
	background: #fff;
}

.cv-filter-panel__header h2 {
	grid-column: 2;
	margin: 0;
	font-size: 17px;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
}

.cv-filter-panel__close {
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	margin: 0;
	padding: 0;
	border: 1px solid #dedede;
	border-radius: 50%;
	background: #fff;
	color: #17202a;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
}

.cv-filter__form {
	display: grid;
	grid-template-rows: minmax(0, 1fr) auto;
	min-width: 0;
	min-height: 0;
	height: 100%;
	margin: 0;
}

.cv-filter-panel__body {
	min-width: 0;
	min-height: 0;
	padding: 14px 14px 22px;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}

.cv-filter-section {
	margin: 0 0 12px;
	padding: 16px;
	border: 1px solid #e4e0da;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 3px 12px rgba(15, 23, 42, .045);
}

.cv-filter-section h3 {
	margin: 0 0 12px;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.25;
	color: #20262c;
}

.cv-filter-choices {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.cv-filter-section--compact .cv-filter-choices {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cv-filter-choices--passengers {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cv-filter-choice {
	position: relative;
	display: block;
	min-width: 0;
	cursor: pointer;
}

.cv-filter-choice input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
}

.cv-filter-choice span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 44px;
	padding: 9px 10px;
	border: 1px solid #dcd7cf;
	border-radius: 12px;
	background: #fff;
	color: #424950;
	font-size: 12px;
	font-weight: 650;
	line-height: 1.2;
	text-align: center;
	transition: border-color .15s ease, background-color .15s ease, color .15s ease, box-shadow .15s ease;
}

.cv-filter-choice--pill span { border-radius: 999px; }

.cv-filter-choice input:checked + span {
	border-color: #d2aa59;
	background: #fbf4e4;
	color: #17202a;
	box-shadow: inset 0 0 0 1px rgba(210, 170, 89, .18);
}

.cv-filter-choice input:focus-visible + span {
	outline: 2px solid #17202a;
	outline-offset: 2px;
}

/* Dual numeric range */
.cv-dual-range { width: 100%; }

.cv-dual-range__values {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.cv-dual-range__values label { min-width: 0; }
.cv-dual-range__values label > span {
	display: block;
	margin: 0 0 5px;
	font-size: 10px;
	font-weight: 700;
	color: #8b8f94;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.cv-dual-range__number {
	width: 100%;
	height: 52px;
	margin: 0;
	padding: 0 12px;
	border: 1px solid #d8d4cd;
	border-radius: 11px;
	background: #fff;
	box-shadow: none;
	color: #4b535b;
	font: inherit;
	font-size: 14px;
}

.cv-dual-range__number::-webkit-inner-spin-button,
.cv-dual-range__number::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.cv-dual-range__number { -moz-appearance: textfield; }

.cv-dual-range__slider {
	position: relative;
	height: 34px;
	margin: 10px 9px 0;
}

.cv-dual-range__track,
.cv-dual-range__fill {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	height: 5px;
	border-radius: 999px;
	transform: translateY(-50%);
}

.cv-dual-range__track { background: #e6e1d9; }
.cv-dual-range__fill { right: auto; background: #d2aa59; }

.cv-dual-range__thumb {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 34px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	pointer-events: none;
	-webkit-appearance: none;
	appearance: none;
}

.cv-dual-range__thumb::-webkit-slider-runnable-track { height: 5px; background: transparent; border: 0; }
.cv-dual-range__thumb::-moz-range-track { height: 5px; background: transparent; border: 0; }

.cv-dual-range__thumb::-webkit-slider-thumb {
	width: 22px;
	height: 22px;
	margin-top: -8px;
	border: 2px solid #d2aa59;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 2px 8px rgba(15, 23, 42, .14);
	pointer-events: auto;
	-webkit-appearance: none;
	appearance: none;
	cursor: grab;
}

.cv-dual-range__thumb::-moz-range-thumb {
	width: 20px;
	height: 20px;
	border: 2px solid #d2aa59;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 2px 8px rgba(15, 23, 42, .14);
	pointer-events: auto;
	cursor: grab;
}

.cv-dual-range__thumb--min { z-index: 2; }
.cv-dual-range__thumb--max { z-index: 3; }

/* Toggle */
.cv-filter-section--toggle { padding: 14px 16px; }

.cv-filter-toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	cursor: pointer;
}

.cv-filter-toggle > span { display: grid; gap: 2px; }
.cv-filter-toggle strong { font-size: 14px; font-weight: 800; color: #20262c; }
.cv-filter-toggle small { font-size: 11px; color: #8c9196; }

.cv-filter-toggle input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
}

.cv-filter-toggle i {
	position: relative;
	flex: 0 0 44px;
	width: 44px;
	height: 26px;
	border-radius: 999px;
	background: #e4e1dc;
	transition: background-color .15s ease;
}

.cv-filter-toggle i::after {
	content: "";
	position: absolute;
	top: 3px;
	left: 3px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 2px 6px rgba(15, 23, 42, .18);
	transition: transform .15s ease;
}

.cv-filter-toggle input:checked + i { background: #d2aa59; }
.cv-filter-toggle input:checked + i::after { transform: translateX(18px); }

/* More filters */
.cv-filter-more {
	margin: 0 0 8px;
	border: 1px solid #dfdad2;
	border-radius: 16px;
	background: #fff;
	overflow: hidden;
}

.cv-filter-more > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 54px;
	padding: 0 16px;
	list-style: none;
	font-size: 14px;
	font-weight: 750;
	cursor: pointer;
}
.cv-filter-more > summary::-webkit-details-marker { display: none; }
.cv-filter-more > summary small { font-size: 11px; font-weight: 600; color: #92969b; }
.cv-filter-more > summary svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: transform .16s ease;
}
.cv-filter-more[open] > summary svg { transform: rotate(180deg); }
.cv-filter-more__content { padding: 0 10px 10px; }
.cv-filter-more__content .cv-filter-section { margin-bottom: 8px; background: #fcfbf8; box-shadow: none; }

.cv-filter-select {
	display: block;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 0 12px;
	border: 1px solid #d8d4cd;
	border-radius: 11px;
	background: #fff;
	box-shadow: none;
	color: #414950;
	font: inherit;
	font-size: 13px;
}
.cv-filter-select[multiple] { min-height: 122px; padding: 7px; }
.cv-filter-select[multiple] option { padding: 8px; border-radius: 6px; }
.cv-filter-help { margin: 7px 0 0; font-size: 10px; color: #8f9499; }

/* Stable footer */
.cv-filter-panel__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 78px;
	padding: 12px 14px calc(12px + env(safe-area-inset-bottom));
	border-top: 1px solid #e5e5e5;
	background: #fff;
	box-shadow: 0 -8px 24px rgba(15, 23, 42, .06);
}

.cv-filter__clear {
	min-height: 46px;
	margin: 0;
	padding: 0 4px;
	border: 0;
	border-bottom: 1px solid currentColor;
	background: transparent;
	color: #30363d;
	font: inherit;
	font-size: 14px;
	font-weight: 750;
	cursor: pointer;
}

.cv-filter__submit {
	min-width: 132px;
	min-height: 50px;
	margin: 0;
	padding: 0 20px;
	border: 0;
	border-radius: 14px;
	background: #d2aa59;
	box-shadow: 0 8px 20px rgba(210, 170, 89, .25);
	color: #17202a;
	font: inherit;
	font-size: 14px;
	font-weight: 800;
	cursor: pointer;
}

html.cv-filter-is-open,
html.cv-filter-is-open body { overflow: hidden !important; }

@media (min-width: 48rem) {
	.cv-filter-panel {
		inset: 0 0 0 auto;
		width: min(480px, 100%);
		box-shadow: -22px 0 70px rgba(15, 23, 42, .20);
	}
}

@media (max-width: 22rem) {
	.cv-filter-choices--passengers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ---------------------------------------------------------
   MOBILE SORT MENU FIX
   --------------------------------------------------------- */
@media (max-width: 47.999rem) {
	.cv-market-tools-row { position: relative !important; overflow: visible !important; }
	.cv-sort { position: static !important; }
	.cv-sort__menu {
		top: calc(100% + 8px) !important;
		left: 0 !important;
		right: 0 !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
		padding: 8px !important;
		border-radius: 16px !important;
	}
	.cv-sort__option { width: 100% !important; min-height: 48px !important; padding: 11px 14px !important; font-size: 13px !important; }
	.cv-sort__option span { overflow: visible !important; white-space: normal !important; text-overflow: clip !important; }
}

/* ---------------------------------------------------------
   v1.4.0 TABLET MARKETPLACE HEADER
   768px–1023px: one compact primary row, scrollable categories,
   compact tools aligned right. Mobile rules remain untouched.
   --------------------------------------------------------- */

@media (min-width: 48rem) and (max-width: 63.999rem) {
	.cv-market-header {
		border-bottom: 1px solid #ebe6de;
		box-shadow: 0 3px 14px rgba(15, 23, 42, .035);
	}

	/* Logo | compact search | actions */
	.cv-market-primary-row {
		display: grid;
		grid-template-columns: 142px minmax(0, 1fr) 92px;
		align-items: center;
		gap: 14px;
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		padding: 12px 20px 10px;
		background: #fff;
	}

	.cv-market-topbar {
		display: contents;
	}

	.cv-market-brand {
		grid-column: 1;
		justify-self: start;
	}

	.cv-market-brand__image {
		max-width: 128px;
		max-height: 36px;
	}

	.cv-market-actions {
		grid-column: 3;
		justify-self: end;
		gap: 4px;
	}

	.cv-market-action {
		width: 40px;
		height: 40px;
	}

	.cv-market-search-row {
		grid-column: 2;
		grid-row: 1;
		width: 100%;
		max-width: none;
		margin: 0;
		padding: 0;
		min-width: 0;
	}

	.cv-marketplace-search-shell {
		min-width: 0;
	}

	.cv-search-trigger {
		min-height: 50px;
		padding: 7px 15px;
		box-shadow: 0 3px 12px rgba(15, 23, 42, .08);
	}

	.cv-search-trigger__title {
		font-size: 13px;
	}

	.cv-search-trigger__meta {
		font-size: 11px;
	}

	/* Category rail: visually lighter than mobile cards. */
	.cv-market-category-row {
		max-width: none;
		margin: 0;
		padding: 0;
		border-top: 1px solid #f2eee8;
	}

	.cv-car-types__track {
		gap: 7px;
		padding: 8px 20px 9px;
	}

	.cv-car-type {
		grid-template-rows: 30px auto;
		gap: 4px;
		min-width: 74px;
		padding: 7px 9px 8px;
		border-radius: 14px;
	}

	.cv-car-type__icon {
		width: 30px;
		height: 30px;
		border-radius: 9px;
	}

	.cv-car-type__icon svg {
		width: 21px;
		height: 21px;
	}

	.cv-car-type__label {
		font-size: 10.5px;
	}

	/* Sort + Filters no longer stretch across the entire tablet. */
	.cv-market-tools-row {
		grid-template-columns: 190px 148px;
		justify-content: end;
		gap: 8px;
		width: 100%;
		max-width: none;
		margin: 0;
		padding: 2px 20px 12px;
	}

	.cv-sort__trigger,
	.cv-filter__trigger {
		min-height: 46px;
		border-radius: 14px;
	}

	.cv-sort__menu {
		width: 260px;
	}

	/* Search dialog remains modal, just a touch tighter for tablet. */
	.cv-search-panel {
		width: min(540px, calc(100% - 48px));
		max-height: calc(100vh - 42px);
		border-radius: 24px;
	}

	.cv-search-panel__body {
		max-height: calc(100vh - 190px);
	}

	/* Right-side filter drawer is appropriate on tablet. */
	.cv-filter-panel {
		width: min(500px, 72vw);
	}
}


/* ---------------------------------------------------------
   v1.5.0 DESKTOP MARKETPLACE HEADER
   Desktop gets its own composition instead of stretching tablet.
   --------------------------------------------------------- */

@media (min-width: 64rem) {

	.cv-market-header {
		display: grid !important;
		grid-template-columns: minmax(170px, 1fr) minmax(500px, 620px) minmax(170px, 1fr) !important;
		grid-template-rows: auto auto auto !important;
		column-gap: 28px !important;
		row-gap: 0 !important;
		width: min(1240px, calc(100% - 48px)) !important;
		max-width: 1240px !important;
		margin: 0 auto !important;
		padding: 0 !important;
		border-bottom: 1px solid #ece7df !important;
		background: #fff !important;
	}

	.cv-market-topbar {
		display: contents !important;
	}

	.cv-market-brand {
		grid-column: 1 !important;
		grid-row: 1 !important;
		align-self: center !important;
		justify-self: start !important;
		margin: 0 !important;
		padding: 20px 0 14px !important;
	}

	.cv-market-brand__image {
		max-width: 150px !important;
		max-height: 42px !important;
	}

	.cv-market-actions {
		grid-column: 3 !important;
		grid-row: 1 !important;
		align-self: center !important;
		justify-self: end !important;
		display: flex !important;
		gap: 8px !important;
		margin: 0 !important;
		padding: 20px 0 14px !important;
	}

	.cv-market-action {
		width: 42px !important;
		height: 42px !important;
	}

	.cv-market-action svg {
		width: 20px !important;
		height: 20px !important;
	}

	.cv-market-search-row {
		grid-column: 2 !important;
		grid-row: 1 !important;
		align-self: center !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 16px 0 12px !important;
	}

	.cv-search-trigger {
		min-height: 58px !important;
		padding: 9px 18px !important;
		border-radius: 999px !important;
		box-shadow: 0 5px 18px rgba(15, 23, 42, .08) !important;
	}

	.cv-market-category-row {
		grid-column: 1 / -1 !important;
		grid-row: 2 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 4px 0 8px !important;
	}

	.cv-car-types {
		overflow: visible !important;
	}

	.cv-car-types__track {
		gap: 10px !important;
		overflow-x: auto !important;
		padding: 4px 0 10px !important;
	}

	.cv-car-type {
		min-width: 84px !important;
		padding: 8px 11px 9px !important;
	}

	.cv-market-tools-row {
		grid-column: 1 / -1 !important;
		grid-row: 3 !important;
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 10px !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 2px 0 14px !important;
		background: #fff !important;
	}

	.cv-sort,
	.cv-filter {
		flex: 0 0 auto !important;
		width: auto !important;
	}

	.cv-sort {
		min-width: 198px !important;
	}

	.cv-filter {
		min-width: 132px !important;
	}

	.cv-sort__trigger,
	.cv-filter__trigger {
		min-height: 46px !important;
		border-radius: 14px !important;
	}

	.cv-sort__menu {
		top: calc(100% + 8px) !important;
		right: 0 !important;
		left: auto !important;
		width: 250px !important;
	}

	.cv-search-panel {
		inset: 50% auto auto 50% !important;
		width: min(640px, calc(100vw - 80px)) !important;
		max-width: 640px !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: calc(100vh - 72px) !important;
		border-radius: 26px !important;
		transform: translate(-50%, -50%) !important;
		overflow: hidden !important;
	}

	.cv-search-panel__body {
		max-height: calc(100vh - 230px) !important;
		padding: 16px !important;
	}

	.cv-filter-panel {
		width: min(460px, 100%) !important;
	}
}

@media (min-width: 90rem) {
	.cv-market-header {
		width: min(1320px, calc(100% - 64px)) !important;
		max-width: 1320px !important;
		grid-template-columns: minmax(190px, 1fr) minmax(540px, 660px) minmax(190px, 1fr) !important;
		column-gap: 36px !important;
	}
}


/* ---------------------------------------------------------
   v1.5.1 DESKTOP PRIMARY ROW CORRECTION
   The existing markup already has:
   .cv-market-primary-row
      .cv-market-topbar (brand + actions)
      .cv-market-search-row
   This override makes THAT row the desktop grid.
   --------------------------------------------------------- */

@media (min-width: 64rem) {

	/* Undo the earlier grid placed on the entire header. */
	.cv-market-header {
		display: block !important;
		width: min(1240px, calc(100% - 48px)) !important;
		max-width: 1240px !important;
		margin: 0 auto !important;
		padding: 0 !important;
		background: #fff !important;
		border-bottom: 1px solid #ece7df !important;
	}

	/* One true desktop row: Logo | Search | Actions */
	.cv-market-primary-row {
		display: grid !important;
		grid-template-columns: 190px minmax(520px, 620px) 190px !important;
		align-items: center !important;
		justify-content: space-between !important;
		column-gap: 28px !important;
		width: 100% !important;
		min-height: 88px !important;
		margin: 0 !important;
		padding: 14px 0 10px !important;
	}

	/*
	 * Flatten ONLY the small topbar wrapper so its brand and actions become
	 * direct grid children of .cv-market-primary-row.
	 */
	.cv-market-primary-row > .cv-market-topbar {
		display: contents !important;
		width: auto !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.cv-market-primary-row .cv-market-brand {
		grid-column: 1 !important;
		grid-row: 1 !important;
		align-self: center !important;
		justify-self: start !important;
		display: inline-flex !important;
		align-items: center !important;
		width: auto !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.cv-market-primary-row .cv-market-brand__image {
		display: block !important;
		width: auto !important;
		max-width: 150px !important;
		max-height: 42px !important;
	}

	.cv-market-primary-row .cv-market-search-row {
		grid-column: 2 !important;
		grid-row: 1 !important;
		align-self: center !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.cv-market-primary-row .cv-marketplace-search-shell {
		width: 100% !important;
	}

	.cv-market-primary-row .cv-search-trigger {
		width: 100% !important;
		min-height: 56px !important;
		margin: 0 !important;
		padding: 9px 18px !important;
		border-radius: 999px !important;
	}

	.cv-market-primary-row .cv-market-actions {
		grid-column: 3 !important;
		grid-row: 1 !important;
		align-self: center !important;
		justify-self: end !important;
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 8px !important;
		width: auto !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.cv-market-primary-row .cv-market-action {
		width: 42px !important;
		height: 42px !important;
		margin: 0 !important;
	}

	/* Full-width category rail below primary row. */
	.cv-market-category-row {
		display: block !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 4px 0 8px !important;
	}

	.cv-car-types__track {
		gap: 10px !important;
		padding: 4px 0 10px !important;
	}

	/* Compact controls on the lower right. */
	.cv-market-tools-row {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 10px !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 2px 0 14px !important;
	}

	.cv-sort {
		flex: 0 0 210px !important;
		width: 210px !important;
		min-width: 210px !important;
	}

	.cv-filter {
		flex: 0 0 138px !important;
		width: 138px !important;
		min-width: 138px !important;
	}

	.cv-sort__trigger,
	.cv-filter__trigger {
		min-height: 46px !important;
	}
}

@media (min-width: 90rem) {
	.cv-market-header {
		width: min(1320px, calc(100% - 64px)) !important;
		max-width: 1320px !important;
	}

	.cv-market-primary-row {
		grid-template-columns: 210px minmax(560px, 660px) 210px !important;
		column-gap: 36px !important;
	}
}


/* ---------------------------------------------------------
   v1.5.2 DESKTOP HEADER POLISH
   Full-width, more premium, more eye-catching.
   --------------------------------------------------------- */

@media (min-width: 64rem) {

	.cv-market-header {
		width: calc(100% - 72px) !important;
		max-width: none !important;
		margin: 18px auto 0 !important;
		padding: 18px 22px 20px !important;
		background: linear-gradient(180deg, #fffdf9 0%, #ffffff 100%) !important;
		border: 1px solid #efe4cf !important;
		border-radius: 30px !important;
		box-shadow: 0 18px 44px rgba(8, 18, 32, 0.08) !important;
	}

	.cv-market-primary-row {
		grid-template-columns: 180px minmax(680px, 1fr) 92px !important;
		column-gap: 34px !important;
		align-items: center !important;
		padding: 2px 2px 14px !important;
		min-height: 92px !important;
	}

	.cv-market-primary-row .cv-market-brand__image {
		max-width: 154px !important;
		max-height: 44px !important;
	}

	.cv-market-primary-row .cv-search-trigger {
		width: 100% !important;
		min-height: 66px !important;
		padding: 12px 22px !important;
		border-radius: 999px !important;
		border: 1px solid #cda650 !important;
		background: linear-gradient(135deg, #caa04a 0%, #d8b76a 100%) !important;
		box-shadow: 0 14px 28px rgba(183, 141, 54, 0.22) !important;
		transition: transform 0.18s ease, box-shadow 0.18s ease !important;
	}

	.cv-market-primary-row .cv-search-trigger:hover {
		transform: translateY(-1px) !important;
		box-shadow: 0 18px 34px rgba(183, 141, 54, 0.28) !important;
	}

	.cv-market-primary-row .cv-search-trigger__icon {
		width: 24px !important;
		height: 24px !important;
		margin-right: 14px !important;
	}

	.cv-market-primary-row .cv-search-trigger__title {
		font-size: 1.16rem !important;
		font-weight: 700 !important;
	}

	.cv-market-primary-row .cv-search-trigger__meta {
		font-size: 0.92rem !important;
		opacity: 0.85 !important;
	}

	.cv-market-primary-row .cv-market-actions {
		gap: 10px !important;
	}

	.cv-market-primary-row .cv-market-action {
		width: 44px !important;
		height: 44px !important;
		border-radius: 50% !important;
		border: 1px solid #efe3cf !important;
		background: #fffdf9 !important;
		box-shadow: 0 4px 14px rgba(8, 18, 32, 0.06) !important;
	}

	.cv-market-category-row {
		padding: 6px 2px 12px !important;
	}

	.cv-car-types__track {
		gap: 12px !important;
		padding: 0 !important;
	}

	.cv-car-type {
		min-width: 94px !important;
		min-height: 78px !important;
		padding: 12px 12px 10px !important;
		border-radius: 20px !important;
		border: 1px solid #e9dfce !important;
		background: #ffffff !important;
		box-shadow: 0 6px 16px rgba(8, 18, 32, 0.04) !important;
		transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease !important;
	}

	.cv-car-type:hover {
		transform: translateY(-1px) !important;
		border-color: #d7ba77 !important;
		box-shadow: 0 10px 20px rgba(8, 18, 32, 0.07) !important;
	}

	.cv-car-type.is-active {
		background: linear-gradient(180deg, #f7ebcb 0%, #f4d48c 100%) !important;
		border-color: #d6b15f !important;
		box-shadow: 0 12px 22px rgba(183, 141, 54, 0.18) !important;
	}

	.cv-car-type__icon {
		width: 42px !important;
		height: 42px !important;
		margin-bottom: 8px !important;
		border-radius: 14px !important;
		background: #f8f4ec !important;
	}

	.cv-car-type.is-active .cv-car-type__icon {
		background: rgba(255, 255, 255, 0.65) !important;
	}

	.cv-car-type__label {
		font-size: 0.93rem !important;
		font-weight: 600 !important;
	}

	.cv-market-tools-row {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 12px !important;
		padding: 0 2px 2px !important;
	}

	.cv-sort,
	.cv-filter {
		width: auto !important;
		min-width: 0 !important;
	}

	.cv-sort {
		flex: 0 0 210px !important;
	}

	.cv-filter {
		flex: 0 0 136px !important;
	}

	.cv-sort__trigger,
	.cv-filter__trigger {
		min-height: 60px !important;
		border-radius: 18px !important;
		border: 1px solid #d9bb74 !important;
		box-shadow: 0 10px 20px rgba(183, 141, 54, 0.12) !important;
	}

	.cv-sort__trigger {
		background: linear-gradient(135deg, #caa04a 0%, #d8b76a 100%) !important;
	}

	.cv-filter__trigger {
		background: #0c1523 !important;
		border-color: #0c1523 !important;
		color: #ffffff !important;
	}

	.cv-filter__label,
	.cv-filter__count {
		color: inherit !important;
	}

	.cv-filter__icon {
		background: rgba(255, 255, 255, 0.12) !important;
	}

	.cv-filter__icon svg,
	.cv-filter__trigger .cv-filter__icon svg path {
		stroke: currentColor !important;
	}

	.cv-sort__eyebrow {
		letter-spacing: 0.08em !important;
	}

	.cv-sort__menu {
		top: calc(100% + 10px) !important;
		right: 0 !important;
		left: auto !important;
		min-width: 250px !important;
		border-radius: 16px !important;
		box-shadow: 0 18px 34px rgba(8, 18, 32, 0.12) !important;
	}
}

@media (min-width: 90rem) {
	.cv-market-header {
		width: calc(100% - 96px) !important;
		padding-inline: 28px !important;
	}

	.cv-market-primary-row {
		grid-template-columns: 190px minmax(760px, 1fr) 92px !important;
		column-gap: 42px !important;
	}
}


/* =========================================================
   v1.6.0 CLIENT-REFERENCE DESKTOP HEADER
   Compact two-row marketplace header.
   Gold is an accent, not a giant surface.
   ========================================================= */

.cv-search-desktop-fields,
.cv-market-host-link,
.cv-market-account-pill {
	display: none;
}

@media (min-width: 64rem) {

	/* Full-width shell, exactly like a marketplace navigation bar. */
	.cv-market-header {
		position: relative !important;
		left: 50% !important;
		width: 100vw !important;
		max-width: none !important;
		margin: 0 0 0 -50vw !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: #fff !important;
		box-shadow: 0 1px 0 rgba(15, 23, 42, .08) !important;
	}

	/* ROW 1 */
	.cv-market-primary-row {
		display: grid !important;
		grid-template-columns: 180px minmax(520px, 610px) minmax(420px, 1fr) !important;
		align-items: center !important;
		column-gap: 24px !important;
		width: min(1360px, calc(100% - 56px)) !important;
		min-height: 76px !important;
		margin: 0 auto !important;
		padding: 10px 0 !important;
		background: #f6f7f8 !important;
	}

	/* Extend the light background to the viewport edges. */
	.cv-market-primary-row::before {
		content: "";
		position: absolute;
		z-index: -1;
		top: 0;
		left: 50%;
		width: 100vw;
		height: 76px;
		transform: translateX(-50%);
		background: #f6f7f8;
	}

	.cv-market-primary-row > .cv-market-topbar {
		display: contents !important;
	}

	.cv-market-primary-row .cv-market-brand {
		grid-column: 1 !important;
		grid-row: 1 !important;
		align-self: center !important;
		justify-self: start !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.cv-market-primary-row .cv-market-brand__image {
		width: auto !important;
		max-width: 152px !important;
		max-height: 40px !important;
	}

	/* Compact segmented search, copied from the client's visual hierarchy. */
	.cv-market-primary-row .cv-market-search-row {
		grid-column: 2 !important;
		grid-row: 1 !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.cv-market-primary-row .cv-search-trigger {
		display: block !important;
		width: 100% !important;
		min-height: 54px !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
		border: 1px solid #e1e4e8 !important;
		border-radius: 999px !important;
		background: #fff !important;
		box-shadow: 0 4px 14px rgba(15, 23, 42, .08) !important;
		color: #17202a !important;
		transform: none !important;
	}

	.cv-market-primary-row .cv-search-trigger:hover {
		border-color: #d2aa59 !important;
		box-shadow: 0 6px 18px rgba(15, 23, 42, .11) !important;
		transform: none !important;
	}

	.cv-market-primary-row .cv-search-trigger__icon,
	.cv-market-primary-row .cv-search-trigger__copy {
		display: none !important;
	}

	.cv-search-desktop-fields {
		display: grid !important;
		grid-template-columns: 1.35fr 1.05fr .9fr 48px !important;
		align-items: stretch !important;
		width: 100% !important;
		min-height: 54px !important;
	}

	.cv-search-desktop-field {
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: center;
		min-width: 0;
		padding: 6px 15px !important;
		text-align: left;
	}

	.cv-search-desktop-field + .cv-search-desktop-field::before {
		content: "";
		position: absolute;
		top: 11px;
		bottom: 11px;
		left: 0;
		width: 1px;
		background: #ececef;
	}

	.cv-search-desktop-field small {
		display: block;
		margin: 0 0 2px;
		color: #7a818a;
		font-size: 9px;
		font-weight: 700;
		line-height: 1;
		letter-spacing: .04em;
		text-transform: uppercase;
	}

	.cv-search-desktop-field strong {
		display: block;
		overflow: hidden;
		color: #243142;
		font-size: 12px;
		font-weight: 650;
		line-height: 1.2;
		white-space: nowrap;
		text-overflow: ellipsis;
	}

	.cv-search-desktop-go {
		display: grid;
		place-items: center;
		align-self: center;
		justify-self: center;
		width: 38px;
		height: 38px;
		border-radius: 50%;
		background: #d2aa59;
		color: #0c1523;
	}

	.cv-search-desktop-go svg {
		width: 19px;
		height: 19px;
		fill: none;
		stroke: currentColor;
		stroke-width: 1.8;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	/* Right-side client-style utilities. */
	.cv-market-primary-row .cv-market-actions {
		grid-column: 3 !important;
		grid-row: 1 !important;
		justify-self: end !important;
		display: flex !important;
		align-items: center !important;
		gap: 10px !important;
		width: auto !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.cv-market-host-link {
		display: inline-flex !important;
		align-items: center;
		gap: 6px;
		padding: 8px 8px;
		color: #263448;
		font-size: 12px;
		font-weight: 650;
		text-decoration: none;
		white-space: nowrap;
	}

	.cv-market-host-link__spark {
		color: #d2aa59;
		font-size: 16px;
		line-height: 1;
	}

	.cv-market-primary-row .cv-market-action--favorite {
		display: grid !important;
		place-items: center;
		width: 38px !important;
		height: 38px !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 50% !important;
		background: transparent !important;
		box-shadow: none !important;
		color: #263448 !important;
	}

	.cv-market-account-pill {
		display: inline-flex !important;
		align-items: center;
		gap: 7px;
		min-height: 40px;
		padding: 0 14px;
		border-radius: 999px;
		background: #0c1523;
		color: #fff;
		font-size: 12px;
		font-weight: 700;
		text-decoration: none;
		white-space: nowrap;
	}

	.cv-market-account-pill svg {
		width: 17px;
		height: 17px;
		fill: none;
		stroke: currentColor;
		stroke-width: 1.7;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	/* Thin navy band from the client reference. */
	.cv-market-primary-row::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		top: 76px;
		height: 6px;
		background: #101a2d;
	}

	/* ROW 2: categories and marketplace controls live together. */
	.cv-market-discovery-row {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		align-items: center !important;
		gap: 22px !important;
		width: min(1360px, calc(100% - 56px)) !important;
		min-height: 82px !important;
		margin: 6px auto 0 !important;
		padding: 8px 0 7px !important;
		background: #fff !important;
	}

	.cv-market-category-row {
		min-width: 0 !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
	}

	.cv-car-types {
		overflow: hidden !important;
	}

	.cv-car-types__track {
		display: flex !important;
		align-items: stretch !important;
		gap: 4px !important;
		overflow-x: auto !important;
		padding: 0 2px 3px !important;
		scrollbar-width: none !important;
	}

	.cv-car-type {
		position: relative;
		flex: 0 0 auto !important;
		display: grid !important;
		grid-template-rows: 30px auto !important;
		place-items: center !important;
		gap: 3px !important;
		min-width: 74px !important;
		min-height: 58px !important;
		margin: 0 !important;
		padding: 5px 8px 8px !important;
		border: 0 !important;
		border-radius: 10px !important;
		background: transparent !important;
		box-shadow: none !important;
		color: #596477 !important;
	}

	.cv-car-type:hover {
		transform: none !important;
		background: #f7f8fa !important;
		box-shadow: none !important;
	}

	.cv-car-type.is-active {
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		color: #0f8f88 !important;
	}

	.cv-car-type.is-active::after {
		content: "";
		position: absolute;
		right: 12px;
		bottom: 0;
		left: 12px;
		height: 3px;
		border-radius: 999px;
		background: #d2aa59;
	}

	.cv-car-type__icon,
	.cv-car-type.is-active .cv-car-type__icon {
		display: grid !important;
		place-items: center !important;
		width: 30px !important;
		height: 30px !important;
		margin: 0 !important;
		border-radius: 9px !important;
		background: #f3f5f6 !important;
		color: #364459 !important;
	}

	.cv-car-type.is-active .cv-car-type__icon {
		background: #fbf4e3 !important;
		color: #a57b2e !important;
	}

	.cv-car-type__icon svg {
		width: 19px !important;
		height: 19px !important;
	}

	.cv-car-type__label {
		max-width: 88px !important;
		color: inherit !important;
		font-size: 10px !important;
		font-weight: 650 !important;
		line-height: 1.15 !important;
	}

	/* Controls imitate the small client pills, not big CTA blocks. */
	.cv-market-tools-row {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 8px !important;
		width: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		background: transparent !important;
	}

	.cv-sort {
		flex: 0 0 162px !important;
		width: 162px !important;
		min-width: 162px !important;
	}

	.cv-filter {
		flex: 0 0 106px !important;
		width: 106px !important;
		min-width: 106px !important;
	}

	.cv-sort__trigger,
	.cv-filter__trigger {
		min-height: 40px !important;
		padding: 5px 10px !important;
		border: 1px solid #e1e4e8 !important;
		border-radius: 999px !important;
		background: #fff !important;
		box-shadow: 0 2px 8px rgba(15, 23, 42, .05) !important;
		color: #243142 !important;
	}

	.cv-sort__spark,
	.cv-filter__icon {
		width: 27px !important;
		height: 27px !important;
		flex-basis: 27px !important;
		border-radius: 9px !important;
		background: #f6f4ee !important;
		color: #9b742c !important;
	}

	.cv-sort__eyebrow {
		display: none !important;
	}

	.cv-sort__copy strong,
	.cv-filter__label {
		font-size: 11px !important;
		font-weight: 700 !important;
		color: #243142 !important;
	}

	.cv-filter__count {
		min-width: 18px !important;
		height: 18px !important;
		font-size: 9px !important;
	}

	.cv-sort__menu {
		top: calc(100% + 7px) !important;
		right: 0 !important;
		left: auto !important;
		width: 240px !important;
	}

	/* Search modal and filter drawer remain exactly the working versions. */
	.cv-search-panel {
		width: min(620px, calc(100vw - 80px)) !important;
	}

	.cv-filter-panel {
		width: min(460px, 100%) !important;
	}
}

@media (min-width: 90rem) {
	.cv-market-primary-row,
	.cv-market-discovery-row {
		width: min(1460px, calc(100% - 72px)) !important;
	}

	.cv-market-primary-row {
		grid-template-columns: 190px minmax(580px, 660px) minmax(460px, 1fr) !important;
	}
}


/* =========================================================
   v1.6.1 AIRBNB-INSPIRED DESKTOP HEADER REFINEMENT
   Search stays on the top row. Categories + sort/filter sit
   together beneath it, compact and aligned.
   ========================================================= */
@media (min-width: 64rem) {
	.cv-market-header {
		background: #fff !important;
		box-shadow: 0 1px 0 rgba(15, 23, 42, .08) !important;
	}

	.cv-market-primary-row {
		grid-template-columns: 170px minmax(540px, 760px) minmax(250px, 1fr) !important;
		column-gap: 18px !important;
		width: min(1440px, calc(100% - 64px)) !important;
		min-height: 86px !important;
		padding: 16px 0 12px !important;
		background: #fff !important;
	}

	.cv-market-primary-row::before {
		height: 100% !important;
		background: #fff !important;
	}

	.cv-market-primary-row::after {
		display: none !important;
	}

	.cv-market-primary-row .cv-market-brand__image {
		max-width: 142px !important;
		max-height: 34px !important;
	}

	.cv-market-primary-row .cv-market-search-row {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 100% !important;
	}

	.cv-market-primary-row .cv-search-trigger {
		max-width: 760px !important;
		min-height: 58px !important;
		border: 1px solid #e2e5e9 !important;
		border-radius: 999px !important;
		background: #fff !important;
		box-shadow: 0 4px 14px rgba(15, 23, 42, .08) !important;
	}

	.cv-market-primary-row .cv-search-trigger:hover {
		border-color: #d4d8dd !important;
		box-shadow: 0 6px 20px rgba(15, 23, 42, .10) !important;
	}

	.cv-search-desktop-fields {
		grid-template-columns: 1.35fr 1.05fr .95fr 52px !important;
		min-height: 58px !important;
	}

	.cv-search-desktop-field {
		padding: 7px 16px !important;
	}

	.cv-search-desktop-field + .cv-search-desktop-field::before {
		top: 12px !important;
		bottom: 12px !important;
	}

	.cv-search-desktop-field small {
		font-size: 10px !important;
		letter-spacing: .05em !important;
	}

	.cv-search-desktop-field strong {
		font-size: 14px !important;
		font-weight: 650 !important;
	}

	.cv-search-desktop-go {
		width: 40px !important;
		height: 40px !important;
		background: #d2aa59 !important;
		color: #0f1728 !important;
	}

	.cv-market-primary-row .cv-market-actions {
		gap: 8px !important;
	}

	.cv-market-host-link {
		padding: 0 6px !important;
		font-size: 13px !important;
	}

	.cv-market-host-link__spark {
		font-size: 14px !important;
	}

	.cv-market-primary-row .cv-market-action--favorite {
		width: 36px !important;
		height: 36px !important;
		border: 1px solid #e3e6ea !important;
		background: #fff !important;
		box-shadow: 0 2px 8px rgba(15, 23, 42, .05) !important;
	}

	.cv-market-account-pill {
		min-height: 38px !important;
		padding: 0 14px !important;
		border: 1px solid #e3e6ea !important;
		background: #fff !important;
		box-shadow: 0 2px 8px rgba(15, 23, 42, .05) !important;
		color: #243142 !important;
		font-size: 13px !important;
	}

	.cv-market-discovery-row {
		grid-template-columns: minmax(0, 1fr) auto !important;
		align-items: center !important;
		gap: 12px !important;
		width: min(1440px, calc(100% - 64px)) !important;
		min-height: 74px !important;
		margin: 0 auto !important;
		padding: 10px 0 14px !important;
		border-top: 1px solid #eff1f3 !important;
		background: #fff !important;
	}

	.cv-market-category-row {
		overflow: hidden !important;
	}

	.cv-car-types__track {
		gap: 8px !important;
		padding: 0 0 4px !important;
	}

	.cv-car-type {
		grid-template-rows: 28px auto !important;
		gap: 4px !important;
		min-width: 86px !important;
		min-height: 68px !important;
		padding: 6px 10px 8px !important;
		border: 1px solid #ece4d6 !important;
		border-radius: 16px !important;
		background: #fff !important;
	}

	.cv-car-type:hover {
		background: #fbfbfc !important;
		border-color: #e6d5b3 !important;
	}

	.cv-car-type.is-active {
		background: #fff8ea !important;
		border-color: #d2aa59 !important;
		color: #1d2a3b !important;
	}

	.cv-car-type.is-active::after {
		right: 16px !important;
		left: 16px !important;
		height: 2px !important;
		background: #d2aa59 !important;
	}

	.cv-car-type__icon,
	.cv-car-type.is-active .cv-car-type__icon {
		width: 30px !important;
		height: 30px !important;
		border-radius: 10px !important;
	}

	.cv-car-type__label {
		max-width: 92px !important;
		font-size: 11px !important;
		line-height: 1.15 !important;
	}

	.cv-market-tools-row {
		flex: 0 0 auto !important;
		gap: 8px !important;
		white-space: nowrap !important;
	}

	.cv-sort {
		flex: 0 0 160px !important;
		width: 160px !important;
		min-width: 160px !important;
	}

	.cv-filter {
		flex: 0 0 110px !important;
		width: 110px !important;
		min-width: 110px !important;
	}

	.cv-sort__trigger,
	.cv-filter__trigger {
		min-height: 40px !important;
		padding: 5px 10px !important;
		border: 1px solid #e1e4e8 !important;
		border-radius: 12px !important;
		background: #fff !important;
		box-shadow: 0 2px 8px rgba(15, 23, 42, .05) !important;
	}

	.cv-sort__trigger:hover,
	.cv-filter__trigger:hover {
		border-color: #d9c28d !important;
	}

	.cv-sort__spark,
	.cv-filter__icon {
		width: 26px !important;
		height: 26px !important;
		flex-basis: 26px !important;
		border-radius: 8px !important;
	}

	.cv-sort__copy strong,
	.cv-filter__label {
		font-size: 12px !important;
	}

	.cv-sort__menu {
		width: 220px !important;
	}
}

@media (min-width: 90rem) {
	.cv-market-primary-row,
	.cv-market-discovery-row {
		width: min(1480px, calc(100% - 72px)) !important;
	}

	.cv-market-primary-row {
		grid-template-columns: 180px minmax(620px, 820px) minmax(260px, 1fr) !important;
	}
}


/* =========================================================
   v1.6.2 DESKTOP DISCOVERY ROW FIX
   Airbnb-style: category tabs + compact sort/filter on ONE row.
   Also resets stale grid-placement rules from earlier versions.
   ========================================================= */

@media (min-width: 64rem) {

	/* Keep the desktop shell broad and clean. */
	.cv-market-primary-row,
	.cv-market-discovery-row {
		width: min(1480px, calc(100% - 64px)) !important;
	}

	.cv-market-primary-row {
		grid-template-columns: 168px minmax(600px, 780px) minmax(290px, 1fr) !important;
		column-gap: 20px !important;
		min-height: 84px !important;
		padding: 14px 0 12px !important;
	}

	.cv-market-primary-row .cv-search-trigger {
		max-width: 780px !important;
		min-height: 58px !important;
	}

	/*
	 * IMPORTANT:
	 * Previous versions assigned grid-column/grid-row directly to these
	 * children. Reset them so they can actually share this one row.
	 */
	.cv-market-discovery-row {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		grid-template-rows: 64px !important;
		align-items: center !important;
		gap: 14px !important;
		min-height: 64px !important;
		margin: 0 auto !important;
		padding: 4px 0 !important;
		border-top: 1px solid #f0f1f2 !important;
		border-bottom: 1px solid #eceeef !important;
		background: #fff !important;
	}

	.cv-market-category-row {
		grid-column: 1 !important;
		grid-row: 1 !important;
		align-self: stretch !important;
		min-width: 0 !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
		border: 0 !important;
		background: transparent !important;
	}

	.cv-market-tools-row {
		grid-column: 2 !important;
		grid-row: 1 !important;
		align-self: center !important;
		justify-self: end !important;
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 7px !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		background: transparent !important;
		white-space: nowrap !important;
	}

	/* Airbnb-like lightweight category navigation. */
	.cv-car-types {
		width: 100% !important;
		height: 100% !important;
		overflow: hidden !important;
	}

	.cv-car-types__track {
		display: flex !important;
		align-items: stretch !important;
		gap: 3px !important;
		height: 100% !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		padding: 0 !important;
		scrollbar-width: none !important;
	}

	.cv-car-types__track::-webkit-scrollbar {
		display: none !important;
	}

	.cv-car-type {
		position: relative !important;
		flex: 0 0 auto !important;
		display: grid !important;
		grid-template-rows: 28px auto !important;
		place-items: center !important;
		gap: 2px !important;
		min-width: 74px !important;
		min-height: 60px !important;
		margin: 0 !important;
		padding: 5px 7px 7px !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		color: #6a7078 !important;
		transform: none !important;
	}

	.cv-car-type:hover,
	.cv-car-type:focus-visible {
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		color: #17202a !important;
		transform: none !important;
	}

	.cv-car-type.is-active {
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		color: #17202a !important;
	}

	.cv-car-type.is-active::after {
		content: "" !important;
		position: absolute !important;
		right: 11px !important;
		bottom: 0 !important;
		left: 11px !important;
		height: 2px !important;
		border-radius: 999px !important;
		background: #d2aa59 !important;
	}

	.cv-car-type__icon,
	.cv-car-type.is-active .cv-car-type__icon {
		display: grid !important;
		place-items: center !important;
		width: 28px !important;
		height: 28px !important;
		margin: 0 !important;
		border: 0 !important;
		border-radius: 9px !important;
		background: #f5f6f7 !important;
		box-shadow: none !important;
		color: #44505f !important;
	}

	.cv-car-type.is-active .cv-car-type__icon {
		background: #fbf3df !important;
		color: #9d762e !important;
	}

	.cv-car-type__icon svg {
		width: 18px !important;
		height: 18px !important;
	}

	.cv-car-type__label {
		max-width: 80px !important;
		overflow: hidden !important;
		color: inherit !important;
		font-size: 10px !important;
		font-weight: 650 !important;
		line-height: 1.05 !important;
		white-space: nowrap !important;
		text-overflow: ellipsis !important;
	}

	/* Small utility pills, comparable to Airbnb's compact controls. */
	.cv-sort {
		flex: 0 0 146px !important;
		width: 146px !important;
		min-width: 146px !important;
	}

	.cv-filter {
		flex: 0 0 94px !important;
		width: 94px !important;
		min-width: 94px !important;
	}

	.cv-sort__trigger,
	.cv-filter__trigger {
		min-height: 36px !important;
		height: 36px !important;
		padding: 4px 8px !important;
		border: 1px solid #dedfe2 !important;
		border-radius: 999px !important;
		background: #fff !important;
		box-shadow: 0 2px 7px rgba(15, 23, 42, .05) !important;
		color: #263242 !important;
	}

	.cv-sort__trigger:hover,
	.cv-filter__trigger:hover {
		border-color: #cfcfd2 !important;
		box-shadow: 0 3px 9px rgba(15, 23, 42, .08) !important;
	}

	.cv-sort__spark,
	.cv-filter__icon {
		display: grid !important;
		place-items: center !important;
		flex: 0 0 23px !important;
		width: 23px !important;
		height: 23px !important;
		border-radius: 7px !important;
		background: #f6f4ef !important;
		color: #9e782f !important;
	}

	.cv-sort__spark svg,
	.cv-filter__icon svg {
		width: 14px !important;
		height: 14px !important;
	}

	.cv-sort__copy {
		min-width: 0 !important;
	}

	.cv-sort__eyebrow {
		display: none !important;
	}

	.cv-sort__copy strong,
	.cv-filter__label {
		overflow: hidden !important;
		color: #263242 !important;
		font-size: 10.5px !important;
		font-weight: 700 !important;
		line-height: 1.1 !important;
		white-space: nowrap !important;
		text-overflow: ellipsis !important;
	}

	.cv-sort__chevron {
		flex: 0 0 15px !important;
		width: 15px !important;
		height: 15px !important;
	}

	.cv-filter__count {
		min-width: 17px !important;
		height: 17px !important;
		padding: 0 4px !important;
		font-size: 8px !important;
	}

	.cv-sort__menu {
		top: calc(100% + 7px) !important;
		right: 0 !important;
		left: auto !important;
		width: 210px !important;
	}

	/* Keep the right-side top actions compact too. */
	.cv-market-host-link {
		font-size: 12px !important;
	}

	.cv-market-account-pill {
		min-height: 36px !important;
		padding: 0 12px !important;
		font-size: 12px !important;
	}
}

@media (min-width: 90rem) {
	.cv-market-primary-row,
	.cv-market-discovery-row {
		width: min(1520px, calc(100% - 80px)) !important;
	}

	.cv-market-primary-row {
		grid-template-columns: 176px minmax(640px, 820px) minmax(300px, 1fr) !important;
	}
}


/* =========================================================
   v1.6.3 ICON COLOR POP ONLY
   Keeps layout unchanged; enhances icon color contrast.
   ========================================================= */

@media (min-width: 64rem) {
	.cv-car-type__icon {
		background: linear-gradient(180deg, #fbf8ef 0%, #f5efe0 100%) !important;
		color: #b8892d !important;
		box-shadow: inset 0 0 0 1px rgba(210, 170, 89, .18) !important;
	}

	.cv-car-type__icon svg {
		color: #b8892d !important;
		stroke: currentColor !important;
		fill: none !important;
	}

	.cv-car-type:hover .cv-car-type__icon,
	.cv-car-type:focus-visible .cv-car-type__icon {
		background: linear-gradient(180deg, #fbf2d9 0%, #f5e4b8 100%) !important;
		color: #9f7221 !important;
	}

	.cv-car-type:hover .cv-car-type__icon svg,
	.cv-car-type:focus-visible .cv-car-type__icon svg {
		color: #9f7221 !important;
	}

	.cv-car-type.is-active .cv-car-type__icon {
		background: linear-gradient(180deg, #efd082 0%, #d6ab52 100%) !important;
		color: #ffffff !important;
		box-shadow: 0 6px 16px rgba(210, 170, 89, .22) !important;
	}

	.cv-car-type.is-active .cv-car-type__icon svg {
		color: #ffffff !important;
	}

	.cv-sort__spark,
	.cv-filter__icon {
		background: linear-gradient(180deg, #fbf2d9 0%, #f2deab 100%) !important;
		color: #9f7221 !important;
	}

	.cv-sort__spark svg,
	.cv-filter__icon svg {
		color: #9f7221 !important;
		stroke: currentColor !important;
	}
}


/* =========================================================
   v1.6.4 ACCESSIBLE CATEGORY ACCENT PALETTE
   NO layout redesign.
   - Small breathing room beneath desktop header
   - Controlled, accessible icon accents only
   - Active state remains Carveoo gold + underline
   ========================================================= */

@media (min-width: 64rem) {

	/* Requested small amount of space beneath the header. */
	.cv-market-header {
		padding-bottom: 10px !important;
	}

	/*
	 * Accessible icon palette.
	 * Each icon uses a darker foreground on a subtle same-family surface.
	 * Text stays neutral to keep the interface calm and premium.
	 */

	/* 1 — All Cars / Carveoo gold */
	.cv-car-type:nth-child(1) .cv-car-type__icon {
		background: #FBF4E4 !important;
		color: #8A6424 !important;
		box-shadow: inset 0 0 0 1px #E8D4A8 !important;
	}

	/* 2 — Compact / Caribbean teal */
	.cv-car-type:nth-child(2) .cv-car-type__icon {
		background: #E8F5F2 !important;
		color: #1C6E6A !important;
		box-shadow: inset 0 0 0 1px #CDE8E2 !important;
	}

	/* 3 — Convertible / warm coral-terra */
	.cv-car-type:nth-child(3) .cv-car-type__icon {
		background: #FAEEE9 !important;
		color: #9A5D48 !important;
		box-shadow: inset 0 0 0 1px #EED9CF !important;
	}

	/* 4 — Economy / ocean blue */
	.cv-car-type:nth-child(4) .cv-car-type__icon {
		background: #EDF4FA !important;
		color: #376B9E !important;
		box-shadow: inset 0 0 0 1px #D8E6F1 !important;
	}

	/* 5 — Electric / eco green */
	.cv-car-type:nth-child(5) .cv-car-type__icon {
		background: #ECF5EF !important;
		color: #34705A !important;
		box-shadow: inset 0 0 0 1px #D7E9DE !important;
	}

	/* 6 — Hybrid / teal */
	.cv-car-type:nth-child(6) .cv-car-type__icon {
		background: #E8F5F2 !important;
		color: #1C6E6A !important;
		box-shadow: inset 0 0 0 1px #CDE8E2 !important;
	}

	/* 7 — Luxury / muted violet */
	.cv-car-type:nth-child(7) .cv-car-type__icon {
		background: #F2EFF8 !important;
		color: #695B8F !important;
		box-shadow: inset 0 0 0 1px #E1DCEC !important;
	}

	/* 8 — Minivan / ocean blue */
	.cv-car-type:nth-child(8) .cv-car-type__icon {
		background: #EDF4FA !important;
		color: #376B9E !important;
		box-shadow: inset 0 0 0 1px #D8E6F1 !important;
	}

	/* 9 — Pickup / warm earth */
	.cv-car-type:nth-child(9) .cv-car-type__icon {
		background: #FBF0E7 !important;
		color: #8B5E34 !important;
		box-shadow: inset 0 0 0 1px #EDDCCB !important;
	}

	/* 10 — Sedan / tropical teal */
	.cv-car-type:nth-child(10) .cv-car-type__icon {
		background: #E8F5F2 !important;
		color: #1C6E6A !important;
		box-shadow: inset 0 0 0 1px #CDE8E2 !important;
	}

	/* 11 — SUV / premium navy-blue */
	.cv-car-type:nth-child(11) .cv-car-type__icon {
		background: #EFF3F7 !important;
		color: #41566E !important;
		box-shadow: inset 0 0 0 1px #DDE5EC !important;
	}

	/* 12 — Van / Carveoo warm gold */
	.cv-car-type:nth-child(12) .cv-car-type__icon {
		background: #FBF4E4 !important;
		color: #8A6424 !important;
		box-shadow: inset 0 0 0 1px #E8D4A8 !important;
	}

	/* Ensure every category SVG inherits the accessible foreground tone. */
	.cv-car-type .cv-car-type__icon svg {
		color: inherit !important;
		stroke: currentColor !important;
	}

	/*
	 * Selection uses the brand color, dark ink, and an underline.
	 * It therefore does not rely on color alone.
	 */
	.cv-car-type.is-active .cv-car-type__icon,
	.cv-car-type:nth-child(n).is-active .cv-car-type__icon {
		background: #D2AA59 !important;
		color: #17202A !important;
		box-shadow: inset 0 0 0 1px #BC913D !important;
	}

	.cv-car-type.is-active .cv-car-type__icon svg {
		color: #17202A !important;
	}

	/* Slightly richer hover without changing geometry. */
	.cv-car-type:hover .cv-car-type__icon,
	.cv-car-type:focus-visible .cv-car-type__icon {
		filter: saturate(1.08) brightness(.99);
	}

	/* Keyboard state, only visible during keyboard navigation. */
	.cv-car-type:focus-visible {
		outline: 2px solid #17202A !important;
		outline-offset: 2px !important;
	}

	/* Utilities stay in the brand family for hierarchy consistency. */
	.cv-sort__spark,
	.cv-filter__icon {
		background: #FBF4E4 !important;
		color: #8A6424 !important;
		box-shadow: inset 0 0 0 1px #E8D4A8 !important;
	}

	.cv-sort__spark svg,
	.cv-filter__icon svg {
		color: #8A6424 !important;
		stroke: currentColor !important;
	}
}


/* =========================================================
   v1.6.5 RESPONSIVE HEADER ALIGNMENT
   Extend the new desktop header language to tablet and mobile,
   adapted with an Airbnb-like lightweight feel.
   - Keep desktop intact
   - Search pill stays on top
   - Categories sit beneath
   - Sort and filter become smaller compact pills
   ========================================================= */

/* Shared: keep the category accent palette consistent everywhere. */
.cv-car-type:nth-child(1) .cv-car-type__icon { background: #FBF4E4 !important; color: #8A6424 !important; box-shadow: inset 0 0 0 1px #E8D4A8 !important; }
.cv-car-type:nth-child(2) .cv-car-type__icon { background: #E8F5F2 !important; color: #1C6E6A !important; box-shadow: inset 0 0 0 1px #CDE8E2 !important; }
.cv-car-type:nth-child(3) .cv-car-type__icon { background: #FAEEE9 !important; color: #9A5D48 !important; box-shadow: inset 0 0 0 1px #EED9CF !important; }
.cv-car-type:nth-child(4) .cv-car-type__icon { background: #EDF4FA !important; color: #376B9E !important; box-shadow: inset 0 0 0 1px #D8E6F1 !important; }
.cv-car-type:nth-child(5) .cv-car-type__icon { background: #ECF5EF !important; color: #34705A !important; box-shadow: inset 0 0 0 1px #D7E9DE !important; }
.cv-car-type:nth-child(6) .cv-car-type__icon { background: #E8F5F2 !important; color: #1C6E6A !important; box-shadow: inset 0 0 0 1px #CDE8E2 !important; }
.cv-car-type:nth-child(7) .cv-car-type__icon { background: #F2EFF8 !important; color: #695B8F !important; box-shadow: inset 0 0 0 1px #E1DCEC !important; }
.cv-car-type:nth-child(8) .cv-car-type__icon { background: #EDF4FA !important; color: #376B9E !important; box-shadow: inset 0 0 0 1px #D8E6F1 !important; }
.cv-car-type:nth-child(9) .cv-car-type__icon { background: #FBF0E7 !important; color: #8B5E34 !important; box-shadow: inset 0 0 0 1px #EDDCCB !important; }
.cv-car-type:nth-child(10) .cv-car-type__icon { background: #E8F5F2 !important; color: #1C6E6A !important; box-shadow: inset 0 0 0 1px #CDE8E2 !important; }
.cv-car-type:nth-child(11) .cv-car-type__icon { background: #EFF3F7 !important; color: #41566E !important; box-shadow: inset 0 0 0 1px #DDE5EC !important; }
.cv-car-type:nth-child(12) .cv-car-type__icon { background: #FBF4E4 !important; color: #8A6424 !important; box-shadow: inset 0 0 0 1px #E8D4A8 !important; }
.cv-car-type .cv-car-type__icon svg { color: inherit !important; stroke: currentColor !important; }
.cv-car-type.is-active .cv-car-type__icon,
.cv-car-type:nth-child(n).is-active .cv-car-type__icon { background: #D2AA59 !important; color: #17202A !important; box-shadow: inset 0 0 0 1px #BC913D !important; }
.cv-car-type.is-active .cv-car-type__icon svg { color: #17202A !important; }

/* Mobile: compact, airy and closer to Airbnb's light pill language. */
@media (max-width: 47.999rem) {
	.cv-market-header {
		padding: 0 0 10px !important;
		background: #fff !important;
		border-bottom: 1px solid #eceff2 !important;
		box-shadow: 0 1px 0 rgba(15, 23, 42, .05) !important;
	}

	.cv-market-topbar {
		min-height: 56px !important;
		padding: 12px 16px 8px !important;
	}

	.cv-market-brand__image {
		max-width: 116px !important;
		max-height: 30px !important;
	}

	.cv-market-actions {
		gap: 8px !important;
	}

	.cv-market-action {
		width: 38px !important;
		height: 38px !important;
		border: 1px solid #e5e7eb !important;
		background: #fff !important;
		box-shadow: 0 2px 8px rgba(15, 23, 42, .05) !important;
	}

	.cv-market-search-row {
		padding: 6px 16px 10px !important;
	}

	.cv-search-trigger {
		gap: 12px !important;
		min-height: 56px !important;
		padding: 0 16px !important;
		border: 1px solid #e2e5e9 !important;
		border-radius: 999px !important;
		background: #fff !important;
		box-shadow: 0 4px 14px rgba(15, 23, 42, .08) !important;
	}

	.cv-search-trigger__title {
		font-size: 14px !important;
		font-weight: 700 !important;
	}

	.cv-search-trigger__meta {
		font-size: 12px !important;
		color: #6f7782 !important;
	}

	.cv-market-category-row {
		padding: 6px 0 0 !important;
		border-top: 1px solid #eff1f3 !important;
		background: #fff !important;
	}

	.cv-car-types__track {
		gap: 6px !important;
		padding: 0 12px 4px !important;
	}

	.cv-car-type {
		position: relative !important;
		grid-template-rows: 28px auto !important;
		gap: 3px !important;
		min-width: 74px !important;
		min-height: 58px !important;
		padding: 6px 8px 8px !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		color: #6a7078 !important;
		transform: none !important;
	}

	.cv-car-type:hover,
	.cv-car-type:focus-visible,
	.cv-car-type.is-active {
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: none !important;
	}

	.cv-car-type.is-active {
		color: #17202a !important;
	}

	.cv-car-type.is-active::after {
		content: "" !important;
		position: absolute !important;
		right: 12px !important;
		bottom: 0 !important;
		left: 12px !important;
		height: 2px !important;
		border-radius: 999px !important;
		background: #d2aa59 !important;
	}

	.cv-car-type__icon,
	.cv-car-type.is-active .cv-car-type__icon {
		width: 30px !important;
		height: 30px !important;
		border-radius: 10px !important;
	}

	.cv-car-type__icon svg {
		width: 18px !important;
		height: 18px !important;
	}

	.cv-car-type__label {
		max-width: 82px !important;
		font-size: 10.5px !important;
		font-weight: 650 !important;
		line-height: 1.1 !important;
	}

	.cv-market-tools-row {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
		gap: 8px !important;
		padding: 8px 16px 0 !important;
		background: #fff !important;
		overflow-x: auto !important;
		scrollbar-width: none !important;
	}

	.cv-market-tools-row::-webkit-scrollbar {
		display: none !important;
	}

	.cv-sort,
	.cv-filter {
		flex: 0 0 auto !important;
		width: auto !important;
	}

	.cv-sort {
		min-width: 154px !important;
	}

	.cv-filter {
		min-width: 102px !important;
	}

	.cv-sort__trigger,
	.cv-filter__trigger {
		min-height: 38px !important;
		height: 38px !important;
		padding: 4px 10px !important;
		border: 1px solid #e1e4e8 !important;
		border-radius: 999px !important;
		background: #fff !important;
		box-shadow: 0 2px 8px rgba(15, 23, 42, .05) !important;
		color: #263242 !important;
	}

	.cv-sort__spark,
	.cv-filter__icon {
		flex: 0 0 24px !important;
		width: 24px !important;
		height: 24px !important;
		border-radius: 8px !important;
		background: #fbf4e4 !important;
		color: #8a6424 !important;
		box-shadow: inset 0 0 0 1px #e8d4a8 !important;
	}

	.cv-sort__spark svg,
	.cv-filter__icon svg {
		width: 14px !important;
		height: 14px !important;
		color: #8a6424 !important;
		stroke: currentColor !important;
	}

	.cv-sort__eyebrow {
		display: none !important;
	}

	.cv-sort__copy strong,
	.cv-filter__label {
		font-size: 11px !important;
		font-weight: 700 !important;
	}

	.cv-sort__chevron {
		width: 15px !important;
		height: 15px !important;
	}
}

/* Tablet: same marketplace language as desktop, compressed elegantly. */
@media (min-width: 48rem) and (max-width: 63.999rem) {
	.cv-market-header {
		padding: 0 0 10px !important;
		background: #fff !important;
		border-bottom: 1px solid #eceff2 !important;
		box-shadow: 0 1px 0 rgba(15, 23, 42, .06) !important;
	}

	.cv-market-primary-row {
		display: grid !important;
		grid-template-columns: 150px minmax(0, 1fr) 92px !important;
		align-items: center !important;
		column-gap: 16px !important;
		width: calc(100% - 40px) !important;
		max-width: none !important;
		min-height: 76px !important;
		margin: 0 auto !important;
		padding: 14px 0 12px !important;
		background: #fff !important;
	}

	.cv-market-primary-row > .cv-market-topbar {
		display: contents !important;
	}

	.cv-market-primary-row .cv-market-brand {
		grid-column: 1 !important;
		grid-row: 1 !important;
		justify-self: start !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.cv-market-primary-row .cv-market-brand__image {
		max-width: 138px !important;
		max-height: 34px !important;
	}

	.cv-market-primary-row .cv-market-search-row {
		grid-column: 2 !important;
		grid-row: 1 !important;
		padding: 0 !important;
		margin: 0 !important;
		width: 100% !important;
		max-width: none !important;
	}

	.cv-market-primary-row .cv-search-trigger {
		width: 100% !important;
		min-height: 56px !important;
		padding: 0 16px !important;
		border: 1px solid #e2e5e9 !important;
		border-radius: 999px !important;
		background: #fff !important;
		box-shadow: 0 4px 14px rgba(15, 23, 42, .08) !important;
	}

	.cv-market-primary-row .cv-market-actions {
		grid-column: 3 !important;
		grid-row: 1 !important;
		justify-self: end !important;
		display: flex !important;
		align-items: center !important;
		gap: 8px !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.cv-market-primary-row .cv-market-action {
		width: 38px !important;
		height: 38px !important;
		border: 1px solid #e5e7eb !important;
		background: #fff !important;
		box-shadow: 0 2px 8px rgba(15, 23, 42, .05) !important;
	}

	.cv-market-discovery-row {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		align-items: center !important;
		gap: 12px !important;
		width: calc(100% - 40px) !important;
		max-width: none !important;
		min-height: 66px !important;
		margin: 0 auto !important;
		padding: 10px 0 0 !important;
		border-top: 1px solid #eff1f3 !important;
		background: #fff !important;
	}

	.cv-market-category-row {
		grid-column: 1 !important;
		grid-row: 1 !important;
		min-width: 0 !important;
		padding: 0 !important;
		margin: 0 !important;
		border: 0 !important;
		background: transparent !important;
		overflow: hidden !important;
	}

	.cv-car-types {
		overflow: hidden !important;
	}

	.cv-car-types__track {
		display: flex !important;
		align-items: stretch !important;
		gap: 6px !important;
		padding: 0 0 4px !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		scrollbar-width: none !important;
	}

	.cv-car-types__track::-webkit-scrollbar {
		display: none !important;
	}

	.cv-car-type {
		position: relative !important;
		grid-template-rows: 28px auto !important;
		gap: 3px !important;
		min-width: 80px !important;
		min-height: 60px !important;
		padding: 6px 8px 8px !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		color: #6a7078 !important;
		transform: none !important;
	}

	.cv-car-type:hover,
	.cv-car-type:focus-visible,
	.cv-car-type.is-active {
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: none !important;
	}

	.cv-car-type.is-active {
		color: #17202a !important;
	}

	.cv-car-type.is-active::after {
		content: "" !important;
		position: absolute !important;
		right: 12px !important;
		bottom: 0 !important;
		left: 12px !important;
		height: 2px !important;
		border-radius: 999px !important;
		background: #d2aa59 !important;
	}

	.cv-car-type__icon,
	.cv-car-type.is-active .cv-car-type__icon {
		width: 30px !important;
		height: 30px !important;
		border-radius: 10px !important;
	}

	.cv-car-type__icon svg {
		width: 18px !important;
		height: 18px !important;
	}

	.cv-car-type__label {
		max-width: 86px !important;
		font-size: 10.5px !important;
		font-weight: 650 !important;
		line-height: 1.1 !important;
	}

	.cv-market-tools-row {
		grid-column: 2 !important;
		grid-row: 1 !important;
		justify-self: end !important;
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 8px !important;
		padding: 0 !important;
		margin: 0 !important;
		background: transparent !important;
		white-space: nowrap !important;
	}

	.cv-sort,
	.cv-filter {
		flex: 0 0 auto !important;
		width: auto !important;
		min-width: 0 !important;
	}

	.cv-sort {
		min-width: 152px !important;
	}

	.cv-filter {
		min-width: 104px !important;
	}

	.cv-sort__trigger,
	.cv-filter__trigger {
		min-height: 38px !important;
		height: 38px !important;
		padding: 4px 10px !important;
		border: 1px solid #e1e4e8 !important;
		border-radius: 999px !important;
		background: #fff !important;
		box-shadow: 0 2px 8px rgba(15, 23, 42, .05) !important;
		color: #263242 !important;
	}

	.cv-sort__spark,
	.cv-filter__icon {
		flex: 0 0 24px !important;
		width: 24px !important;
		height: 24px !important;
		border-radius: 8px !important;
		background: #fbf4e4 !important;
		color: #8a6424 !important;
		box-shadow: inset 0 0 0 1px #e8d4a8 !important;
	}

	.cv-sort__spark svg,
	.cv-filter__icon svg {
		width: 14px !important;
		height: 14px !important;
		color: #8a6424 !important;
		stroke: currentColor !important;
	}

	.cv-sort__eyebrow {
		display: none !important;
	}

	.cv-sort__copy strong,
	.cv-filter__label {
		font-size: 11px !important;
		font-weight: 700 !important;
	}

	.cv-sort__chevron {
		width: 15px !important;
		height: 15px !important;
	}

	.cv-sort__menu {
		width: 220px !important;
	}
}


/* =========================================================
   v1.6.6 MOBILE SORT DROPDOWN FIX
   Keep v1.6.5 layout exactly intact.
   The mobile tools row must not clip the absolute sort menu.
   ========================================================= */

@media (max-width: 47.999rem) {

	.cv-market-tools-row {
		position: relative !important;
		overflow: visible !important;
		z-index: 40 !important;
	}

	.cv-sort {
		position: static !important;
		z-index: 42 !important;
	}

	.cv-sort__menu {
		position: absolute !important;
		z-index: 100 !important;
		top: calc(100% + 7px) !important;
		left: 16px !important;
		right: 16px !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
		overflow: visible !important;
	}

	.cv-sort.is-open .cv-sort__menu {
		display: grid !important;
	}
}


/* =========================================================
   v1.6.7 DESKTOP SEARCH SIMPLIFICATION
   Ride selection lives in the category rail below.
   Keep only Island + Dates + Search in the desktop pill.
   ========================================================= */
@media (min-width: 64rem) {
	.cv-search-desktop-fields {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 52px !important;
	}
}


/* =========================================================
   v1.6.9 RESPONSIVE SEARCH CONTENT WIDTH ONLY
   Base: v1.6.7
   No header/layout changes.
   On tablet/mobile, use the same Island | Dates | Search
   distribution as desktop so the full pill is utilized.
   ========================================================= */

@media (max-width: 63.999rem) {

	/* Keep the existing v1.6.7 search pill geometry. */
	.cv-search-trigger {
		padding: 0 !important;
		overflow: hidden !important;
	}

	/* Replace the stacked mobile copy with the existing segmented content. */
	.cv-search-trigger__icon,
	.cv-search-trigger__copy {
		display: none !important;
	}

	.cv-search-desktop-fields {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 48px !important;
		align-items: stretch !important;
		width: 100% !important;
		min-height: inherit !important;
	}

	.cv-search-desktop-field {
		position: relative !important;
		display: flex !important;
		flex-direction: column !important;
		justify-content: center !important;
		min-width: 0 !important;
		padding: 6px 14px !important;
		text-align: left !important;
	}

	.cv-search-desktop-field + .cv-search-desktop-field::before {
		content: "" !important;
		position: absolute !important;
		top: 10px !important;
		bottom: 10px !important;
		left: 0 !important;
		width: 1px !important;
		background: #ececef !important;
	}

	.cv-search-desktop-field small {
		display: block !important;
		margin: 0 0 2px !important;
		color: #7a818a !important;
		font-size: 9px !important;
		font-weight: 700 !important;
		line-height: 1 !important;
		letter-spacing: .04em !important;
		text-transform: uppercase !important;
	}

	.cv-search-desktop-field strong {
		display: block !important;
		overflow: hidden !important;
		color: #243142 !important;
		font-size: 12px !important;
		font-weight: 650 !important;
		line-height: 1.2 !important;
		white-space: nowrap !important;
		text-overflow: ellipsis !important;
	}

	.cv-search-desktop-go {
		display: grid !important;
		place-items: center !important;
		align-self: center !important;
		justify-self: center !important;
		width: 36px !important;
		height: 36px !important;
		border-radius: 50% !important;
		background: #d2aa59 !important;
		color: #0c1523 !important;
	}

	.cv-search-desktop-go svg {
		width: 17px !important;
		height: 17px !important;
		fill: none !important;
		stroke: currentColor !important;
		stroke-width: 1.8 !important;
		stroke-linecap: round !important;
		stroke-linejoin: round !important;
	}
}

/* 390px: preserve the same idea, just make the labels a touch tighter. */
@media (max-width: 27rem) {
	.cv-search-desktop-fields {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px !important;
	}

	.cv-search-desktop-field {
		padding: 5px 10px !important;
	}

	.cv-search-desktop-field small {
		font-size: 8px !important;
	}

	.cv-search-desktop-field strong {
		font-size: 11.5px !important;
	}

	.cv-search-desktop-go {
		width: 34px !important;
		height: 34px !important;
	}
}


/* =========================================================
   v1.6.11 FILTER DRAWER HARD-ANCHOR FIX
   Base: locked v1.6.9.
   Avoid flex/grid viewport sizing entirely.
   ========================================================= */

.cv-filter-overlay {
	position: fixed !important;
	top: 0 !important;
	right: 0 !important;
	bottom: auto !important;
	left: 0 !important;
	width: 100vw !important;
	height: var(--cv-filter-viewport-h, 100dvh) !important;
	min-height: 0 !important;
	max-height: none !important;
	overflow: hidden !important;
}

.cv-filter-panel {
	position: absolute !important;
	top: 0 !important;
	right: 0 !important;
	bottom: auto !important;
	left: 0 !important;
	width: 100% !important;
	height: var(--cv-filter-viewport-h, 100dvh) !important;
	min-height: 0 !important;
	max-height: none !important;
	display: block !important;
	overflow: hidden !important;
}

/* Header gets a known fixed vertical slot. */
.cv-filter-panel__header {
	position: absolute !important;
	top: 0 !important;
	right: 0 !important;
	left: 0 !important;
	z-index: 4 !important;
	height: 66px !important;
	min-height: 66px !important;
	max-height: 66px !important;
}

/* Form occupies everything below the header, independent of content height. */
.cv-filter__form {
	position: absolute !important;
	top: 66px !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	display: block !important;
	margin: 0 !important;
	overflow: hidden !important;
}

/* Scroll area is explicitly pinned between header and footer. */
.cv-filter-panel__body {
	position: absolute !important;
	top: 0 !important;
	right: 0 !important;
	bottom: calc(82px + env(safe-area-inset-bottom)) !important;
	left: 0 !important;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	overscroll-behavior: contain !important;
	-webkit-overflow-scrolling: touch !important;
}

/* Footer can no longer float upward when form content changes. */
.cv-filter-panel__footer {
	position: absolute !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	z-index: 5 !important;
	width: auto !important;
	min-height: 78px !important;
	margin: 0 !important;
}

/* Desktop/tablet keep their existing right-side drawer width. */
@media (min-width: 48rem) {
	.cv-filter-panel {
		left: auto !important;
		width: min(460px, 100%) !important;
	}
}

/* Tablet preserves the slightly wider approved drawer. */
@media (min-width: 48rem) and (max-width: 63.999rem) {
	.cv-filter-panel {
		width: min(500px, 72vw) !important;
	}
}


/* =========================================================
   v1.6.12 MORE FILTERS VISUAL SYSTEM
   Make secondary filters match the premium primary filters.
   Functional filter keys/values remain unchanged.
   ========================================================= */

.cv-filter-more {
	margin: 4px 0 8px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	overflow: visible !important;
}

.cv-filter-more > summary {
	min-height: 48px !important;
	margin: 0 0 10px !important;
	padding: 0 4px !important;
	border: 0 !important;
	background: transparent !important;
	color: #20262c !important;
}

.cv-filter-more > summary > span {
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
}

.cv-filter-more > summary small {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 23px !important;
	padding: 0 8px !important;
	border: 1px solid #e4e0da !important;
	border-radius: 999px !important;
	background: #f8f7f4 !important;
	color: #858b91 !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
}

.cv-filter-more > summary svg {
	width: 17px !important;
	height: 17px !important;
	color: #4c535b !important;
}

.cv-filter-more__content {
	display: block !important;
	padding: 0 !important;
}

/* Undo the older "secondary beige card" treatment. */
.cv-filter-more__content .cv-filter-section,
.cv-filter-more__content .cv-filter-section--secondary {
	margin: 0 0 12px !important;
	padding: 16px !important;
	border: 1px solid #e4e0da !important;
	border-radius: 20px !important;
	background: #fff !important;
	box-shadow: 0 3px 12px rgba(15, 23, 42, .045) !important;
}

.cv-filter-more__content .cv-filter-section h3 {
	margin: 0 0 12px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	color: #20262c !important;
}

/* Choice controls now share the exact same language as main filters. */
.cv-filter-more__content .cv-filter-choices {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 8px !important;
}

.cv-filter-more__content .cv-filter-section--compact .cv-filter-choices {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.cv-filter-more__content .cv-filter-choice span {
	min-height: 44px !important;
	padding: 9px 10px !important;
	border: 1px solid #dcd7cf !important;
	border-radius: 12px !important;
	background: #fff !important;
	color: #424950 !important;
	font-size: 12px !important;
	font-weight: 650 !important;
	line-height: 1.2 !important;
	text-align: center !important;
}

.cv-filter-more__content .cv-filter-choice input:checked + span {
	border-color: #d2aa59 !important;
	background: #fbf4e4 !important;
	color: #17202a !important;
	box-shadow: inset 0 0 0 1px rgba(210, 170, 89, .18) !important;
}

/* Air conditioning should visually match Child seat. */
.cv-filter-more__content .cv-filter-section--toggle {
	padding: 14px 16px !important;
}

/* Hide obsolete native-select helper styling if an old cached field survives. */
.cv-filter-more__content .cv-filter-help {
	display: none !important;
}

/* Small phones: 3-option rows remain comfortable instead of cramped. */
@media (max-width: 25rem) {
	.cv-filter-more__content .cv-filter-section--compact .cv-filter-choices {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}


/* =========================================================
   v1.6.13 MORE FILTERS DENSITY + POLISH
   Keeps the working v1.6.11/1.6.12 filter mechanics intact.
   Visual refinement only.
   ========================================================= */

/* Tighter group rhythm */
.cv-filter-more__content .cv-filter-section,
.cv-filter-more__content .cv-filter-section--secondary {
	margin-bottom: 10px !important;
	padding: 14px !important;
	border-radius: 18px !important;
	box-shadow: 0 2px 8px rgba(15, 23, 42, .035) !important;
}

/* Force consistent UI typography instead of inherited theme serif headings. */
.cv-filter-more__content .cv-filter-section h3 {
	margin: 0 0 10px !important;
	font-family: Manrope, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
	font-size: 13px !important;
	font-weight: 750 !important;
	line-height: 1.25 !important;
	letter-spacing: -.01em !important;
	color: #252b31 !important;
}

/* Base compact choices */
.cv-filter-more__content .cv-filter-choices {
	gap: 7px !important;
}

.cv-filter-more__content .cv-filter-choice span {
	min-height: 38px !important;
	padding: 6px 8px !important;
	border-radius: 11px !important;
	font-family: Manrope, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
	font-size: 11px !important;
	font-weight: 650 !important;
	line-height: 1.15 !important;
}

/* Luggage: six short values fit beautifully in a 3-column matrix. */
.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

/* Fuel: four labels, clean 2 x 2. */
.cv-filter-more__content .cv-filter-section--fuel .cv-filter-choices {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

/*
 * Features: compact selectable chips rather than oversized tiles.
 * They still retain full-width touch targets and wrapping.
 */
.cv-filter-more__content .cv-filter-section--features .cv-filter-choices {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 7px !important;
}

.cv-filter-more__content .cv-filter-section--features .cv-filter-choice {
	flex: 1 1 calc(50% - 4px) !important;
	min-width: 132px !important;
	max-width: calc(50% - 4px) !important;
}

.cv-filter-more__content .cv-filter-section--features .cv-filter-choice span {
	min-height: 36px !important;
	padding: 6px 9px !important;
	border-radius: 999px !important;
	background: #fafafa !important;
}

.cv-filter-more__content .cv-filter-section--features .cv-filter-choice input:checked + span {
	background: #fbf4e4 !important;
}

/* Cancellation: three concise options in one row whenever space permits. */
.cv-filter-more__content .cv-filter-section--cancellation .cv-filter-choices {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

/* Air conditioning becomes a tighter single-row control. */
.cv-filter-more__content .cv-filter-section--toggle {
	min-height: 68px !important;
	padding: 13px 14px !important;
}

/* Slightly soften card borders so the controls carry the hierarchy. */
.cv-filter-more__content .cv-filter-section {
	border-color: #e7e3dc !important;
}

/* Hover polish for pointer devices. */
@media (hover: hover) {
	.cv-filter-more__content .cv-filter-choice span:hover {
		border-color: #cfc8bd !important;
		background: #fcfbf8 !important;
	}
}

/* Narrow phones: keep usability without returning to giant stacked controls. */
@media (max-width: 24rem) {
	.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.cv-filter-more__content .cv-filter-section--features .cv-filter-choice {
		flex-basis: 100% !important;
		min-width: 100% !important;
		max-width: 100% !important;
	}

	.cv-filter-more__content .cv-filter-section--cancellation .cv-filter-choices {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}


/* =========================================================
   v1.6.14 MORE FILTERS FINAL COMPACT PASS
   Density only. No behavior/query changes.
   ========================================================= */

.cv-filter-more__content .cv-filter-section,
.cv-filter-more__content .cv-filter-section--secondary {
	margin-bottom: 8px !important;
	padding: 11px 12px !important;
	border-radius: 16px !important;
}

.cv-filter-more__content .cv-filter-section h3 {
	margin-bottom: 8px !important;
	font-size: 12.5px !important;
}

.cv-filter-more__content .cv-filter-choices {
	gap: 5px !important;
}

.cv-filter-more__content .cv-filter-choice span {
	min-height: 32px !important;
	padding: 5px 7px !important;
	border-radius: 9px !important;
	font-size: 10.25px !important;
	line-height: 1.1 !important;
}

/* Luggage */
.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choice span {
	min-height: 32px !important;
}

/* Fuel */
.cv-filter-more__content .cv-filter-section--fuel .cv-filter-choice span {
	min-height: 32px !important;
}

/* Air conditioning */
.cv-filter-more__content .cv-filter-section--toggle {
	min-height: 58px !important;
	padding: 10px 12px !important;
}

.cv-filter-more__content .cv-filter-section--toggle h3 {
	margin-bottom: 3px !important;
}

/* Features: compact pills */
.cv-filter-more__content .cv-filter-section--features .cv-filter-choices {
	gap: 5px !important;
}

.cv-filter-more__content .cv-filter-section--features .cv-filter-choice {
	flex-basis: calc(50% - 3px) !important;
	min-width: 120px !important;
	max-width: calc(50% - 3px) !important;
}

.cv-filter-more__content .cv-filter-section--features .cv-filter-choice span {
	min-height: 31px !important;
	padding: 4px 7px !important;
	border-radius: 999px !important;
	font-size: 10px !important;
}

/* Cancellation */
.cv-filter-more__content .cv-filter-section--cancellation .cv-filter-choice span {
	min-height: 32px !important;
	font-size: 10px !important;
}

/* Reduce optional heading spacing slightly */
.cv-filter-more > summary {
	min-height: 42px !important;
	margin-bottom: 7px !important;
}


/* =========================================================
   v1.6.15 MORE FILTER OPTION BUTTON REFINEMENT
   Match the spacing/radius language of the main filters.
   ========================================================= */

.cv-filter-more__content .cv-filter-choices {
	gap: 8px !important;
}

/* Smaller, tidier option boxes with proper separation. */
.cv-filter-more__content .cv-filter-choice span {
	min-height: 34px !important;
	padding: 4px 6px !important;
	border-radius: 11px !important;
	font-size: 10.25px !important;
	line-height: 1.1 !important;
}

/* Luggage */
.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices {
	gap: 8px !important;
}

.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choice span {
	min-height: 34px !important;
	padding: 4px 5px !important;
}

/* Fuel */
.cv-filter-more__content .cv-filter-section--fuel .cv-filter-choices {
	gap: 8px !important;
}

.cv-filter-more__content .cv-filter-section--fuel .cv-filter-choice span {
	min-height: 34px !important;
	padding: 4px 7px !important;
}

/* Features: use the same rounded-rectangle language as the main filters. */
.cv-filter-more__content .cv-filter-section--features .cv-filter-choices {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 8px !important;
}

.cv-filter-more__content .cv-filter-section--features .cv-filter-choice {
	min-width: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

.cv-filter-more__content .cv-filter-section--features .cv-filter-choice span {
	min-height: 34px !important;
	padding: 4px 6px !important;
	border-radius: 11px !important;
	background: #fff !important;
	font-size: 10px !important;
}

/* Cancellation */
.cv-filter-more__content .cv-filter-section--cancellation .cv-filter-choices {
	gap: 8px !important;
}

.cv-filter-more__content .cv-filter-section--cancellation .cv-filter-choice span {
	min-height: 34px !important;
	padding: 4px 5px !important;
}

/* Keep selected state consistent with main filter buttons. */
.cv-filter-more__content .cv-filter-choice input:checked + span {
	border-color: #d2aa59 !important;
	background: #fbf4e4 !important;
	color: #17202a !important;
	box-shadow: inset 0 0 0 1px rgba(210, 170, 89, .16) !important;
}


/* =========================================================
   v1.6.16 RESEARCH-LED MORE FILTERS UX
   Progressive disclosure inspired by mature marketplace
   filtering patterns. Working query/drawer logic unchanged.
   ========================================================= */

/* Give secondary filters normal visual rhythm again. */
.cv-filter-more__content .cv-filter-section,
.cv-filter-more__content .cv-filter-section--secondary {
	padding: 14px 14px !important;
	margin-bottom: 10px !important;
	border-radius: 18px !important;
}

.cv-filter-more__content .cv-filter-section h3 {
	margin: 0 0 11px !important;
	font-size: 13px !important;
	font-weight: 750 !important;
}

/* Option controls: compact, but not squeezed. */
.cv-filter-more__content .cv-filter-choice span {
	min-height: 38px !important;
	padding: 7px 9px !important;
	border: 1px solid #ded9d1 !important;
	border-radius: 12px !important;
	background: #fff !important;
	font-size: 10.75px !important;
	font-weight: 650 !important;
	line-height: 1.15 !important;
}

/* Selected multi-select values gain a clear check cue, not color alone. */
.cv-filter-more__content .cv-filter-choice input[type="checkbox"]:checked + span::before {
	content: "✓" !important;
	display: inline-grid !important;
	place-items: center !important;
	flex: 0 0 16px !important;
	width: 16px !important;
	height: 16px !important;
	margin-right: 5px !important;
	border-radius: 50% !important;
	background: #d2aa59 !important;
	color: #17202a !important;
	font-size: 10px !important;
	font-weight: 900 !important;
}

.cv-filter-more__content .cv-filter-choice input[type="checkbox"] + span {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* Luggage is ordinal and short: one compact row rather than two tall rows. */
.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices {
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
	gap: 6px !important;
}

.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choice span {
	min-height: 36px !important;
	padding: 5px 3px !important;
	font-size: 10px !important;
}

/* Fuel type remains an easy-to-scan 2 x 2 matrix. */
.cv-filter-more__content .cv-filter-section--fuel .cv-filter-choices {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 8px !important;
}

/* Air conditioning remains a clean binary decision. */
.cv-filter-more__content .cv-filter-section--toggle {
	min-height: 66px !important;
	padding: 13px 14px !important;
}

/*
 * Features: expose only four common choices.
 * The rest are behind a deliberate "Show all features" action.
 */
.cv-filter-more__content .cv-filter-section--features .cv-filter-choices {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 8px !important;
}

.cv-filter-more__content .cv-filter-section--features .cv-filter-choice {
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
}

.cv-filter-more__content .cv-filter-section--features .cv-filter-choice span {
	min-height: 38px !important;
	border-radius: 12px !important;
	background: #fff !important;
}

/* Native progressive disclosure for the long tail of features. */
.cv-filter-options-more {
	margin: 8px 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.cv-filter-options-more > summary {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	min-height: 38px !important;
	padding: 4px 2px !important;
	cursor: pointer !important;
	list-style: none !important;
	color: #59616a !important;
	font-size: 11px !important;
	font-weight: 700 !important;
}

.cv-filter-options-more > summary::-webkit-details-marker {
	display: none !important;
}

.cv-filter-options-more > summary svg {
	width: 16px !important;
	height: 16px !important;
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 1.8 !important;
	transition: transform .18s ease !important;
}

.cv-filter-options-more[open] > summary svg {
	transform: rotate(180deg) !important;
}

.cv-filter-options-more .cv-filter-choices--more {
	margin-top: 5px !important;
	padding-top: 9px !important;
	border-top: 1px solid #eeebe6 !important;
}

/* Cancellation is a concise single-choice segmented row. */
.cv-filter-more__content .cv-filter-section--cancellation .cv-filter-choices {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 7px !important;
}

/* Small phones: Luggage becomes 3 x 2 before labels get cramped. */
@media (max-width: 23rem) {
	.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}


/* =========================================================
   v1.6.17 FINAL MORE FILTERS MICRO-POLISH
   Final UX refinement only. No filter/query logic changes.
   ========================================================= */

/* Quieter grouping: keep structure, reduce the nested-card feeling. */
.cv-filter-more__content .cv-filter-section,
.cv-filter-more__content .cv-filter-section--secondary {
	border-color: #ebe7e1 !important;
	box-shadow: 0 1px 5px rgba(15, 23, 42, .025) !important;
}

/* Mobile luggage: larger touch targets and easier scanning. */
@media (max-width: 47.999rem) {
	.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 7px !important;
	}

	.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choice span {
		min-height: 38px !important;
		padding: 6px 4px !important;
		font-size: 10.5px !important;
	}
}

/* Wider screens can keep the compact single-row luggage control. */
@media (min-width: 48rem) {
	.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices {
		grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
	}
}

/* Stronger but still lightweight progressive-disclosure affordance. */
.cv-filter-options-more {
	margin-top: 10px !important;
}

.cv-filter-options-more > summary {
	min-height: 42px !important;
	padding: 9px 2px 4px !important;
	border-top: 1px solid #ece9e4 !important;
	color: #303841 !important;
	font-size: 12px !important;
	font-weight: 750 !important;
}

.cv-filter-options-more > summary span {
	line-height: 1.2 !important;
}

.cv-filter-options-more > summary svg {
	width: 17px !important;
	height: 17px !important;
	color: #56606a !important;
}

/* Preserve and sharpen the multi-select check cue. */
.cv-filter-more__content .cv-filter-choice input[type="checkbox"]:checked + span::before {
	flex-basis: 17px !important;
	width: 17px !important;
	height: 17px !important;
	margin-right: 6px !important;
	font-size: 10px !important;
}


/* =========================================================
   v1.6.18 MORE FILTERS — FINAL CONTINUOUS LAYOUT
   Match the stated UX recommendation exactly:
   one section, compact controls, subtle dividers, no card stack.
   ========================================================= */

/* The More Filters area itself becomes the single visual group. */
.cv-filter-more {
	padding: 0 14px 10px !important;
	border: 0 !important;
	background: transparent !important;
}

.cv-filter-more > summary {
	margin: 0 -2px 4px !important;
	padding: 0 2px 8px !important;
}

/* Remove individual card surfaces from every secondary group. */
.cv-filter-more__content .cv-filter-section,
.cv-filter-more__content .cv-filter-section--secondary {
	position: relative !important;
	margin: 0 !important;
	padding: 14px 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* Divider between groups, not boxes around groups. */
.cv-filter-more__content .cv-filter-section + .cv-filter-section {
	border-top: 1px solid #ece9e4 !important;
}

/* Headings aligned with the main filter visual hierarchy. */
.cv-filter-more__content .cv-filter-section h3 {
	margin: 0 0 10px !important;
	font-size: 13px !important;
	font-weight: 750 !important;
	color: #282f36 !important;
}

/* Main-filter-style option controls. */
.cv-filter-more__content .cv-filter-choices {
	gap: 8px !important;
}

.cv-filter-more__content .cv-filter-choice span {
	min-height: 38px !important;
	padding: 6px 8px !important;
	border: 1px solid #ddd8d0 !important;
	border-radius: 12px !important;
	background: #fff !important;
	box-shadow: none !important;
	font-size: 10.75px !important;
	font-weight: 650 !important;
	line-height: 1.15 !important;
}

/* Gold active state identical in spirit to primary controls. */
.cv-filter-more__content .cv-filter-choice input:checked + span {
	border-color: #d2aa59 !important;
	background: #fbf4e4 !important;
	color: #17202a !important;
	box-shadow: inset 0 0 0 1px rgba(210,170,89,.14) !important;
}

/* Luggage: recommended 3 x 2 on mobile. */
@media (max-width: 47.999rem) {
	.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 8px !important;
	}

	.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choice span {
		min-height: 38px !important;
	}
}

/* Wider screens can use one line. */
@media (min-width: 48rem) {
	.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices {
		grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
	}
}

/* Fuel type remains 2 x 2. */
.cv-filter-more__content .cv-filter-section--fuel .cv-filter-choices {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

/* Air conditioning becomes a simple inline row, not a card. */
.cv-filter-more__content .cv-filter-section--toggle {
	min-height: 64px !important;
	padding: 14px 0 !important;
}

/* Features: four visible options, compact two-column grid. */
.cv-filter-more__content .cv-filter-section--features .cv-filter-choices {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 8px !important;
}

.cv-filter-more__content .cv-filter-section--features .cv-filter-choice {
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
}

/* Show all features reads as a lightweight row action. */
.cv-filter-options-more {
	margin: 10px 0 0 !important;
	padding: 0 !important;
}

.cv-filter-options-more > summary {
	min-height: 40px !important;
	padding: 9px 2px 0 !important;
	border-top: 1px solid #f0ede8 !important;
	color: #38414a !important;
	font-size: 12px !important;
	font-weight: 750 !important;
}

.cv-filter-options-more .cv-filter-choices--more {
	margin-top: 8px !important;
	padding-top: 8px !important;
}

/* Cancellation remains a compact segmented row. */
.cv-filter-more__content .cv-filter-section--cancellation .cv-filter-choices {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 8px !important;
}

/* Keep the multi-select check cue but make it subtle. */
.cv-filter-more__content .cv-filter-choice input[type="checkbox"]:checked + span::before {
	flex: 0 0 15px !important;
	width: 15px !important;
	height: 15px !important;
	margin-right: 5px !important;
	font-size: 9px !important;
}


/* =========================================================
   v1.6.19 MORE FILTER BUTTONS = TRANSMISSION BUTTONS
   Literal reuse of the approved main-filter sizing.
   ========================================================= */

/*
 * Approved Transmission baseline:
 * gap: 8px
 * min-height: 44px
 * padding: 9px 10px
 * radius: 12px
 * font-size: 12px
 * font-weight: 650
 */
.cv-filter-more__content .cv-filter-choices {
	gap: 8px !important;
}

.cv-filter-more__content .cv-filter-choice span,
.cv-filter-more__content .cv-filter-section--features .cv-filter-choice span,
.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choice span,
.cv-filter-more__content .cv-filter-section--fuel .cv-filter-choice span,
.cv-filter-more__content .cv-filter-section--cancellation .cv-filter-choice span {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 44px !important;
	padding: 9px 10px !important;
	border: 1px solid #dcd7cf !important;
	border-radius: 12px !important;
	background: #fff !important;
	color: #424950 !important;
	font-size: 12px !important;
	font-weight: 650 !important;
	line-height: 1.2 !important;
	text-align: center !important;
	box-shadow: none !important;
}

/* Exact approved selected state from the main filters. */
.cv-filter-more__content .cv-filter-choice input:checked + span {
	border-color: #d2aa59 !important;
	background: #fbf4e4 !important;
	color: #17202a !important;
	box-shadow: inset 0 0 0 1px rgba(210, 170, 89, .18) !important;
}

/* Luggage: same buttons, 3 columns on mobile. */
.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 8px !important;
}

/* Fuel: same buttons, 2 columns. */
.cv-filter-more__content .cv-filter-section--fuel .cv-filter-choices {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 8px !important;
}

/* Features: same buttons, 2 columns. */
.cv-filter-more__content .cv-filter-section--features .cv-filter-choices {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 8px !important;
}

.cv-filter-more__content .cv-filter-section--features .cv-filter-choice {
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
}

/* Cancellation: same buttons, 3 columns. */
.cv-filter-more__content .cv-filter-section--cancellation .cv-filter-choices {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 8px !important;
}

/* Remove the extra check-circle sizing from these buttons.
   The gold selected state already matches Transmission exactly. */
.cv-filter-more__content .cv-filter-choice input[type="checkbox"]:checked + span::before {
	display: none !important;
}

/* Keep wider luggage layout optional only on genuinely wide drawer space. */
@media (min-width: 64rem) {
	.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}


/* =========================================================
   v1.6.20 MORE FILTERS = TRANSMISSION GRID RHYTHM
   Final correction:
   - same 3-column rhythm
   - same 44px control height
   - same 8px gaps
   - same padding/radius/type
   ========================================================= */

/* Ensure the controls calculate exactly like the approved main controls. */
.cv-filter-more__content .cv-filter-choice,
.cv-filter-more__content .cv-filter-choice span {
	box-sizing: border-box !important;
}

/* Every option group uses the same 3-column rhythm as Transmission. */
.cv-filter-more__content .cv-filter-choices,
.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices,
.cv-filter-more__content .cv-filter-section--fuel .cv-filter-choices,
.cv-filter-more__content .cv-filter-section--features .cv-filter-choices,
.cv-filter-more__content .cv-filter-section--cancellation .cv-filter-choices,
.cv-filter-options-more .cv-filter-choices--more {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	column-gap: 8px !important;
	row-gap: 8px !important;
}

/* Literal Transmission button geometry. */
.cv-filter-more__content .cv-filter-choice span,
.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choice span,
.cv-filter-more__content .cv-filter-section--fuel .cv-filter-choice span,
.cv-filter-more__content .cv-filter-section--features .cv-filter-choice span,
.cv-filter-more__content .cv-filter-section--cancellation .cv-filter-choice span {
	width: 100% !important;
	min-height: 44px !important;
	padding: 9px 10px !important;
	border: 1px solid #dcd7cf !important;
	border-radius: 12px !important;
	background: #fff !important;
	color: #424950 !important;
	font-size: 12px !important;
	font-weight: 650 !important;
	line-height: 1.2 !important;
	text-align: center !important;
}

/* Same selected treatment as Transmission. */
.cv-filter-more__content .cv-filter-choice input:checked + span {
	border-color: #d2aa59 !important;
	background: #fbf4e4 !important;
	color: #17202a !important;
	box-shadow: inset 0 0 0 1px rgba(210, 170, 89, .18) !important;
}

/* Remove old feature flex sizing completely. */
.cv-filter-more__content .cv-filter-section--features .cv-filter-choice {
	flex: none !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
}

/* Keep the progressive disclosure clean below the 3-column feature grid. */
.cv-filter-options-more > summary {
	margin-top: 2px !important;
}

/* Very narrow phones still preserve the same rhythm where possible. */
@media (max-width: 21rem) {
	.cv-filter-more__content .cv-filter-choices,
	.cv-filter-more__content .cv-filter-section--luggage .cv-filter-choices,
	.cv-filter-more__content .cv-filter-section--fuel .cv-filter-choices,
	.cv-filter-more__content .cv-filter-section--features .cv-filter-choices,
	.cv-filter-more__content .cv-filter-section--cancellation .cv-filter-choices,
	.cv-filter-options-more .cv-filter-choices--more {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

