.dropdown {
    position: relative;
    display: inline-block;
}

.dropdown-label {
    display: block;
    line-height: 30px;
    padding-left: 10px;
    padding-right: 25px;
    border: 1px solid #ddd;
    border-radius: 5px;
    background-color: white;
    cursor: pointer;
    box-sizing: border-box;
    position: relative;
    user-select: none;
}

.dropdown-label:after {
    content: '';
    position: absolute;
    right: 6px;
    top: 50%;
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 8px solid black;
    transform: translateY(-50%);
    transition: transform 0.4s ease;
}

/* Add rotation for active state */
.dropdown.active .dropdown-label:after {
    transform: translateY(-50%) rotate(180deg);
}

.dropdown-label:hover {
    border-color: darkgray;
}

.dropdown-placeholder {
    color: #666;
}

.dropdown-selected {
    color: #000;
}

.dropdown-content {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: white;
    border: 1px solid #ccc;
    border-radius: 4px;
    margin-top: 4px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    z-index: 1000;
}

/* Show dropdown when dropdown has active class */
.dropdown.active .dropdown-content {
    display: block;
}

.dropdown-item {
    padding: 1px 0 1px 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    user-select: none;
    line-height: 30px;
}

.dropdown-item:hover {
    background-color: #f5f5f5;
}

.dropdown-item input[type="checkbox"] {
    margin: 0;
    cursor: pointer;
    pointer-events: none;
}

.dropdown-item label {
    cursor: pointer;
    flex-grow: 1;
    pointer-events: none;
}

.dropdown-item.dropdown-header {
    font-weight: bold;
    color: #666;
    background-color: #f5f5f5;
    border-bottom: 1px solid #ddd;
    line-height: 26px;
    cursor: default;
    user-select: none;
    font-size: 14px;
    pointer-events: none;
    border-radius: 4px; 
}

.dropdown-item.dropdown-header:not(:first-child) {
    border-top: 1px solid #ddd;
    border-radius: 0;
}

/* Set the make dropdown wider */
#make-dropdown.dropdown.active {
	width: 320px;
}

#make-dropdown.dropdown.active .dropdown-content {
	column-count: 2; 
	column-gap: 5px;
}

/* Set the preset dropdown width */
.preset-control.dropdown {
    width: 200px;
    min-width: fit-content;
}

/* Preset action links */
.preset-action-link {
    color: #0066cc;
    text-decoration: dashed underline;
    text-underline-offset: 2px;
}

.preset-action-link:hover {
    text-decoration: solid underline;
}

@media only screen and (max-width:575px) {
	
    #make-dropdown.dropdown.active {
        width: 100%;
    }

    #make-dropdown.dropdown.active .dropdown-content {
        width: 320px;
    }

    .dropdown-item {
        gap: 5px;
    }
    

}

.jplist-panel.panel-top {
	padding: 2.5%;
	width: 100%; 
	font-size: 14px;
	box-sizing: border-box;
	color: #333;
	display: grid;
	gap: 0;
	border-bottom: solid 1px #ddd;
}

.jplist-panel.panel-top > *:not(#toggle-more-options):not(.more-options-container) {
	margin-bottom: 10px;
}

.jplist-panel.panel-top > .more-options-container.show {
	margin-top: 10px;
}

.price {
	font-size: 17px;
}

.jplist-no-results {
    padding: 10% 0;
}

.jplist-no-results p {
	margin: 20px 0;
}
.jplist-no-results a {
	text-decoration: underline;
}
.jplist-no-results a:hover {
	font-weight: 400;
}
	
.second-row-options button,
.third-row-options button {
	width: 155px;
}

.jplist-checkbox-group {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(2, auto);
	gap: 10px;
	justify-items: center;
	box-sizing: border-box;
	border: 1px solid #dbdbdb;
	border-radius: 3px;
	color: #27252a;
	padding: 5px;
}

.jplist-panel .jplist-checkbox-group input {
	display: none;
}

.jplist-panel .jplist-checkbox-group :checked + label,
.jplist-panel .dropdown-selected,
[data-jplist-control="slider-range-filter"]:has(.jplist-slider-applied) .jplist-slider-label {
	color: green;
}
	
#toggle-more-options {
	vertical-align: middle;
	text-align: center;
}

	#toggle-more-options:hover {
		text-decoration: underline;
		cursor: pointer
	}
	
#default-options,
#more-options {
	display: grid;
	gap: 10px;
}

.more-options-container {
    max-height: 0;
    overflow: hidden;
	position: relative;
    
}

.more-options-container.show {
    max-height: 1000px; /* Adjust this value based on your content height */
	overflow: visible;
	transition: max-height 1s ease-out;
}

.jplist-panel .dropdown-group {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2%;
	justify-items: stretch;
}

.second-row-options,
.third-row-options {
	margin-bottom: 15px;
}

.jplist-panel .slider-group {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
	justify-items: center;
}

.jplist .list {
	display: grid;
	grid-template-columns: 1fr;
	width: 100%;	
}

.jplist .list .img {
	position: relative;
  display: inline-block;
	width: 226px;
	height: 128px;
}

.jplist .list .img a {
	display: block;
	z-index: 1;	
}

.jplist .list .img img {
	display: block;
  width: 224px;
  height: 126px;
  object-fit: cover;
  border-radius: 5px;
  border: 1px solid #B1B1B1
}

.jplist .list .vehicle-checkbox-container {
	position: absolute;
  top: 0px;
  left: 0px;
  z-index: 2;
	padding: 5px; 
	line-height: 0;
	opacity: 0.75;
}

.jplist .list .vehicle-checkbox {
	width: 22px;
	height: 22px;
	border: 1px solid #B1B1B1;
} 

.jplist .list .vehicle-checkbox:disabled {
	opacity: 0.5;
}

.jplist .list .block p {
    margin: 0;
}

.jplist .list .list-item {
    display: flex;
    width: 100%;
		gap: 10px;
    padding: 2% 2.5%;
    border-bottom: dashed 1px #ddd;
    box-sizing: border-box;
}

.jplist .list .list-item:last-child {
    border-bottom: 0;
}

.jplist .list .list-ad {
    padding: 2% 2.5%;
    border-bottom: dashed 1px #ddd;
    box-sizing: border-box;
}

.item-data {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
  width: 100%;
}

.title-wrap {
  display: flex;
  flex-direction: column;
}

  .title-wrap h2 {
	  white-space: nowrap;
	}

.icons {
	display: flex;
	flex-direction: column;	
}
	.icons .icons-row-1,
	.icons .icons-row-2 {
		display: flex;
		justify-content: right;
	}
	.icons .icons-row-1 span,
	.icons .icons-row-2 span {
		line-height: 24px;
	}

a.title:hover {
	text-decoration: none;
	border-bottom: 1px solid #505050;
}

.title-wrap .current,
.title-wrap .archive,
.title-wrap .upcoming {
	font-size: 13px;
	display: block;
	line-height: 17px;
}
.archive,
.jplist .dropdown-item label[for="availability-archive"] {
		color: IndianRed;
	}

.jplist .dropdown-item label[for="availability-current"],
.current {
		color: SeaGreen;
	}

.jplist .dropdown-item label[for="availability-upcoming"],
.upcoming {
		color: CornflowerBlue;
	}
	
.n-a {
		color: lightgrey;
	}

.specs {
	display: grid;
	grid-auto-flow: row;
	grid-template-columns: repeat(5, auto);
	row-gap: 10px;
	line-height: 14px;
	font-size: 14px;
	width: calc(100% - 100px);
	max-width: 500px;
}

	.specs div {
		display: grid;
	}

	.specs .label {
		font-size: 12px;
		line-height: 12px;
		font-weight: 500;
		padding-bottom: 1px;
	}

.pricing {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: flex-end;
	flex-shrink: 0;
}
	
.pricing.org {
	line-height: 20px;
	font-size: 14px;
}

.pricing.org .price_buy {
	display: flex;
	justify-content: right;
	gap: 7px;
}

.pricing.org .price_buy .flag-icon {
	width: 1.2em;
}

.pricing .incentive {
  border-radius: 5px;
  background: lightseagreen;
  padding: 2px; 
  color: white;
  display: block;
  font-size: 11px;
  font-weight: 500;
  text-align: center;
}

.homepage-legend {
	width: 100%;
	box-sizing: border-box;
	font-size: 12px;
	padding: 1% 2.5%;
	line-height: 15px;
	text-align: center;
  border-top: solid 1px #ddd;
}		

.index-notification {
  box-sizing: border-box;
	max-width: 768px;
	padding: 10px;
	border: 1px dashed grey;
	background: #ffb833;
	display: block;
	text-align: center;
	margin: 10px auto
}

.list-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    z-index: 100;
    display: flex;
    justify-content: center;
    align-items: top;
	padding-top: 100px;
}

.list {
    position: relative;
	max-height: 100vh;
    overflow: hidden;
}

.list.jplist-ready {
    opacity: 1;
	max-height: none;
	overflow: visible;
}

.spinner {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #3498db;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* JPLIST */
.jplist-hidden {
    display: none !important;
}

.jplist-panel button {
    font-weight: 300;
    height: 30px;
    box-sizing: border-box;
    border: 1px solid #dbdbdb;
    border-radius: 5px;
    color: #27252a;
    background: #fff;
    padding: 0 5px;
}

.jplist-panel button:hover,
.jplist-panel button.jplist-selected {
    background: #f2f2f2;
}

.jplist-panel button.jplist-disabled {
	color: #ddd !important;
    cursor: default;
}

.jplist-panel button.jplist-disabled:hover {
	background: #fff !important;
	cursor: initial;
  }

.jplist-panel input[type=checkbox],
.jplist-panel input[type=radio],
.jplist-panel label {
    box-sizing: border-box;
    color: #27252a;
}

.jplist-panel input[type=checkbox],
.jplist-panel input[type=radio] {
    background: #fff;
    box-sizing: border-box;
}

.jplist-panel label {
    line-height: 30px;
    box-sizing: border-box;
    cursor: pointer;
	text-wrap: nowrap;
}

.jplist-icon {
    height: 30px;
    background: inherit;
    box-sizing: border-box;
    border: 1px solid #fff;
    border-radius: 0 5px 5px 0;
    color: #fff;
    display: inline-block;
    line-height: 30px;
    padding: 0 10px;
    border-left: 0;
}

.jplist-icon:hover {
    color: #0381bb;
}

.jplist-drop-down,
.jplist-label {
    color: #27252a;
    height: 30px;
}

.jplist-label {
    box-sizing: border-box;
    border: 1px solid #dbdbdb;
    border-radius: 5px;
    line-height: 30px;
    background: #fff;
    padding: 0 10px;
}

.jplist-drop-down,
.jplist-drop-down ul {
    border: 1px solid #dbdbdb;
    background: #fff;
}

.jplist-box {
    height: 30px;
    margin: 10px 10px 0 0;
}

.jplist-drop-down {
    box-shadow: 0 0 1px #fff;
    box-sizing: border-box;
    border-radius: 5px;
    text-shadow: 1px 1px 1px #fff;
    width: 155px;
    position: relative;
}

.jplist-drop-down ul li:hover {
  background-color: #ececec;
}

.jplist-drop-down:hover .jplist-dd-panel,
.jplist-drop-down:hover .jplist-dd-panel:after {
  color: #0381bb;
}

.jplist-select {
  height: 30px;
  box-shadow: 0 0 1px #fff;
  background: #fff;
  box-sizing: border-box;
  border: 1px solid #dbdbdb;
  border-radius: 5px;
  color: #27252a;
  margin: 10px 10px 0 0;
  padding: 5px;
  text-shadow: none;
}

.jplist-pagination {
	display: flex;
	justify-content: space-between;
	gap: 5px;
	line-height: 30px;
	width: 100%;
}

.jplist-pagination .pagination-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: space-between;
}

.jplist-pagination .pagination-wrapper .pagination-nav {
	display: flex;
	gap: 5px;
}

.jplist-panel .jplist-pagination button {
	display: inline-block;
	color: #000;
	height: 30px;
	line-height: 30px;
	padding: 0 10px;
	font-weight: 300;
}

.jplist-panel .jplist-pagination .jplist-selected {
	color: #000;
	text-decoration: underline;
}

.jplist-panel .jplist-pagination button:not([data-type="page"]) {
	font-size: 20px;
	color: #6F6F6F;
	font-family: "Courier New", Courier, monospace;
}

.jplist-empty,
.jplist-one-page {
	display: none;
}

.jplist-panel .jplist-pagination .not-active button {
	color: #ddd !important;
}

.jplist-panel .jplist-pagination .not-active button:hover {
	background: #fff !important;
	cursor: initial;
}

.jplist-panel .jplist-holder {
	display: flex;
	gap: 5px;
}

/* Base dropdown styles - can be used for both custom dropdowns and selects */
.jplist-dd {
	width: 155px;
    position: relative;
    cursor: pointer;
    user-select: none;
}

.jplist-dd[data-jplist-control="dropdown-sort"] {
	width: 200px;
}

/* Dropdown panel (visible part) - reuses some existing select styles */
.jplist-dd-panel {
    height: 30px;
    text-indent: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
    background-color: white;
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
}

/* Reuse the existing dropdown arrow style */
.jplist-dd-panel::after {
    content: '';
    position: absolute;
    right: 6px;
    top: 50%;
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 8px solid black;
    transform: translateY(-50%);
    transition: transform 0.4s ease;
}

/* Dropdown content */
.jplist-dd-content {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #ddd;
    border-radius: 0 0 5px 5px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    z-index: 100;
}

/* Show dropdown when opened */
.jplist-dd-content.jplist-dd-opened {
    display: block;
	z-index: 9999;
	margin-top: 4px;
}

.jplist-dd-opened .jplist-dd-panel::after {
    transform: translateY(-50%) rotate(180deg);
}


/* Dropdown items */
.jplist-dd-item {
    line-height: 30px;
	text-indent: 10px;
    transition: background-color 0.2s;
}

.jplist-dd-item:hover {
    background-color: #f5f5f5;
}

.jplist-dd-label {
    font-weight: bold;
    color: #666;
    background-color: #f5f5f5;
    border-bottom: 1px solid #ddd;
    cursor: default; 
    user-select: none;
	font-size: 14px;
}

/* JPLIST Slider */
/**
 * horizontal
 */

/* Add styles for the slider container */
[data-jplist-control="slider-range-filter"] {
	width: 85%;
	box-sizing: border-box;
}

 .jplist-slider {
	width: 100%;
	height: 20px;
	border-radius: 2px;
	position: relative;
	box-sizing: border-box;
  }
  
  .jplist-slider::before {
	content: '';
	display: block;
	width: 100%;
	height: 10px;
	background: white;
	border: 1px solid #d3d3d3;
	border-radius: 5px;
	position: absolute;
	z-index: 100;
	left: 0;
	top: 50%;
	transform: translate(0, -50%);
  }
    
  .jplist-slider-range {
    height: 8px;
    background: #ddd;
	display: block;
	position: absolute;
	left: var(--range-start, 0%);
	width: var(--range-width, 100%);
	top: 50%;
	transform: translateY(-50%);
	z-index: 101;
  }

  .jplist-slider-holder-1,
  .jplist-slider-holder-2  {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: block;
    cursor: pointer;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-50%, -50%);
    z-index: 200;
    padding: 0;
    margin: 0;
    border: 1px solid #d3d3d3;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
	background: #ddd;
  }

	.jplist-slider-holder-1:hover,
	.jplist-slider-holder-2:hover {
		border-color: darkgray; /* Darker blue on hover */
	}
  
  .jplist-slider-holder-1:active,
  .jplist-slider-holder-2:active {
    transform: translate(-50%, -50%) scale(1.2); /* Scale up on active */
    box-shadow: 0 1px 5px rgba(0,0,0,0.3);
	background: white;
  }

  .jplist-slider.jplist-slider-applied .jplist-slider-range {
	background: #66bb6a; /* Lighter, less intense green */
  }
  
  .jplist-slider.jplist-slider-applied .jplist-slider-holder-1,
  .jplist-slider.jplist-slider-applied .jplist-slider-holder-2 {
	background: #66bb6a; /* Lighter, less intense green */
	border-color: #5ba75f; /* Slightly darker but still soft green for border */
  }
  
  .jplist-slider.jplist-slider-applied .jplist-slider-holder-1:hover,
  .jplist-slider.jplist-slider-applied .jplist-slider-holder-2:hover {
	border-color: #4c9a50; /* Darker but not too intense green on hover */
  }
  
  .jplist-slider.jplist-slider-applied .jplist-slider-holder-1:active,
  .jplist-slider.jplist-slider-applied .jplist-slider-holder-2:active {
	background: #fff;
	border-color: #66bb6a;
  }

  .jplist-slider-label {
	display: flex;
	justify-content: center;
  }

  .jplist-search {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: 200px;
    height: 30px;
    box-sizing: border-box;
}

.jplist-search input {
    width: 100%;
    height: 100%;
    padding-left: 30px;
    padding-right: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
    box-sizing: border-box;
	color: #505050;
	font-weight: 300;
}

.jplist-search .search-icon {
    position: absolute;
    left: 10px;
    color: #666;
    pointer-events: none;
    z-index: 1;
}

.jplist-search .jplist-clear-btn {
    position: absolute;
    right: 0;
    border: none;
    background: none;
    padding: 0 8px;
    cursor: pointer;
    color: #666;
	font-size: 12px;
}

.jplist-search .jplist-clear-btn:hover {
    color: #333;
}
  
@media only screen and (max-width:900px) {

	[data-type="items-per-page-dd"] {
		display: none;
	}

	.jplist-pagination .pagination-wrapper{
		width: 100%;
	}
	
	html, body {
    	font-size: 14px;	
	}

	.jplist-slider-holder-1,
	.jplist-slider-holder-2 {
		width: 24px;
		height: 24px;
	}

}	

@media only screen and (max-width:730px) {	

	.jplist-pagination .pagination-wrapper .pagination-nav {
			width: 100%;
			justify-content: space-between;	
	}

	.jplist-pagination .pagination-nav-firstprev,
	.jplist-pagination .pagination-nav-nextlast {
		display: flex;
		gap: 5px;
	}

	.jplist-panel.panel-bottom .jplist-label:first-child {
		order: 2;
	}

	.jplist-panel.panel-bottom .jplist-label:last-child {
		order: 3;
	}	

	.jplist-panel .dropdown-group {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: repeat(2, auto);
    	column-gap: 5%;
    	row-gap: 15px;
	}

	.jplist-checkbox-group {
			grid-template-columns: repeat(2, 1fr);
			grid-template-rows: repeat(4, auto);
			gap: 20px; 
			padding: 0;
	}
	
	.jplist-panel .slider-group {
			grid-template-columns: repeat(1, 1fr);
			gap: 20px;
			min-height: 150px;
	}

	.sub-header {
		flex-wrap: wrap;
		justify-content: center;
		gap: 10px;
	}
	
	.subheader-title {
		width: 100%;
		text-align: center
	}	

	.sort-reset {
		padding-top: 2.5%;
		display: flex;
		justify-content: space-between;	
	}

	.jplist-panel .jplist-range-slider  {
		width: 75%;
		cursor: pointer;
	}		
		
	.jplist .list .list-item {
		flex-direction: column;	
		align-items: center;
		padding: 4% 1%;
		gap: 5px;
	}

	.jplist .list .list-item .item-data {
		flex-direction: column;
		gap: 10px; 

	}
		
	.title-wrap {
		align-items: center;
	}

	.icons {
		justify-content: center;
		flex-direction: row;
		gap: 10px;	
	}
	
	.specs {
		width: 100%;
		max-width: unset;
	}
		.specs div {
			justify-items: center;
		}

	.pricing {
		min-width: unset;
		align-items: center;
	}

	.pricing.org {
		flex-direction: row;
		justify-content: space-around;		
	}

}

@media only screen and (max-width:360px) {
		
	.jplist-pagination .pagination-nav .pagination-nav-firstprev button[data-type="prev"],
	.jplist-pagination .pagination-nav .pagination-nav-nextlast button[data-type="next"] {
		display: none
	}
	
}

/* Tooltip Styles */
.custom-tooltip {
    position: absolute;
    background-color: rgba(0, 0, 0, 0.75);
    color: #fff;
    padding: 6px 10px;
    border-radius: 4px;
    font-size: 12px;
    max-width: 200px;
    z-index: 1000;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
}

.custom-tooltip::after {
    content: '';
    position: absolute;
    top: 100%; /* Positions the arrow below the tooltip */
    left: 50%;
    transform: translateX(-50%);
    border-width: 5px;
    border-style: solid;
    border-color: rgba(0, 0, 0, 0.75) transparent transparent transparent;
}

[data-tooltip] {
    cursor: help;
}

/* Mobile Filter Styles */
@media (max-width: 575px) {
	.preset-filter-controls {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		width: 100%;
	}

	.panel-sort-order [data-jplist-control="counter"] {
		display: none;
	}

	.sub-header {
		border-bottom: none;
		padding-bottom: 10px;
	}

	.jplist-panel.panel-top {
		padding: 0;
		border-bottom: none;
	}

	.panel-sort-order {
		gap: 10px;
		padding-top: 0px;
		padding-bottom: 2.5%;
	}

	/* Show all filters in mobile modal */
	.mobile-filter-modal-content .more-options-container {
		max-height: none !important;
		height: auto !important;
		overflow: visible !important;
		position: static !important;
		transition: none !important;
		margin-top: 20px;
	}

	/* Hide more filters button in mobile modal */
	.mobile-filter-modal-content #toggle-more-options {
		display: none !important;
	}

	.mobile-filter-button {
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 8px 15px;
		background: #f5f5f5;
		border: 1px solid #ddd;
		border-radius: 4px;
		font-size: 14px;
		cursor: pointer;
		white-space: nowrap;
		min-width: fit-content;
		max-width: 200px;
		width: 50%
	}

	.preset-control.dropdown {
		max-width: 200px;
		width: 50%;
	}

	.mobile-filter-button i {
		margin-right: 8px;
	}

	.jplist-panel.panel-top.filter-content {
		display: none;
	}

	.mobile-filter-modal {
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: #fff;
		z-index: 1000;
		overflow-y: auto;
	}

	.mobile-filter-modal.active {
		display: block;
	}

	.mobile-filter-modal-header {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 10px;
		border-bottom: 1px solid #ddd;
		position: sticky;
		top: 0;
		background: #fff;
		z-index: 300;
		flex-wrap: wrap;
	}

	.mobile-filter-modal-header h2 {
		margin: 0;
		font-size: 20px;
		flex: 1;
	}

	.mobile-filter-counter {
		width: 100%;
	}

	.mobile-filter-close {
		background: none;
		border: none;
		font-size: 24px;
		padding: 5px;
		cursor: pointer;
		order: 1;
	}

	.mobile-filter-modal-content {
		padding: 10px;
		padding-bottom: 90px;
	}

	.mobile-filter-modal-content .filter-content {
		display: block !important;
		padding-bottom: 20px;
	}

	.mobile-filter-modal-footer {
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		padding: 10px;
		padding-top: 5px;
		background: #fff;
		border-top: 1px solid #ddd;
		text-align: center;
		z-index: 300;
		display: flex;
		flex-wrap: wrap;
		gap: 5px;
	}

	.mobile-filter-apply {
		width: 100%;
		padding: 12px;
		background: #007bff;
		color: #fff;
		border: none;
		border-radius: 4px;
		font-size: 16px;
		cursor: pointer;
	}

	.mobile-filter-apply:hover {
		background: #0056b3;
	}

}

@media (min-width: 576px) {
	.mobile-filter-button,
	.mobile-filter-modal {
		display: none;
	}

	.preset-filter-controls {
		display: block;
	}
}
