.filters-wrapper.custom-filters, .filters-wrapper.custom-filters button {
    font-family: 'DM Sans', sans-serif;
}

.filters-wrapper {
	display: block!important;
	justify-content: flex-start;
	align-items: center;
	gap: 20px;
}

.filtercontainer  span.label.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.filtercontainer input[type=text]{
    padding: 4px 10px;
}

.clear-filters {
  background-color: #191f2c;
  color:white;
  border: 1px solid rgba(255,255,255,0.35);
  padding: 6px 12px;
  cursor: pointer;
  border-radius: 30px;
  font-size: 14px;
  transition:all ease-in 0.1s;
  margin-top:10px;
}

body[data-form-style="minimal"] input[type="text"] {
    border: 1px solid rgba(255,255,255,0.35)!important;
    border-radius: 30px;
}

.clear-filters:hover {
  background: #191f2c;
  border: 1px solid white;
}

.filtercontainer {
    display: block;
    align-items: center;
    flex-grow: 1;
	margin-bottom: 10px;
}

body[data-fancy-form-rcs="1"] .filtercontainer .fancy-select-wrap {
    padding-top: 0px;
}

.filters-wrapper {
    display: flex;
    gap: 25px;
    justify-content: flex-start;
    align-items: center;
}

.filtercontainer span.label {
    padding-right: 10px;
}

.filtercontainer .fancy-select-wrap {
    flex-grow: 1;
}

body[data-form-style="minimal"] .filtercontainer input[type="text"] {
    border-color:#e0e0e0;
    background-color:transparent;
}

.filtercontainer .select2-container--default .select2-selection--single {
    border-radius: 0px;
	  border-top:0px;
	  border-left:0px;
	  border-right:0px;
	border-color:#e0e0e0!important;
}

@media screen and (max-width:768px){
    .filters-wrapper {
    display: grid;
		gap: 14px;}
}

body[data-form-style="minimal"] .filtercontainer input[type="text"] {
    color: #ffffff!important;
}

/* Placeholder du champ de recherche en blanc pour contraste suffisant */
body[data-form-style="minimal"] .filtercontainer input[type="text"]::placeholder {
    color: #ffffff;
    opacity: 1;
}

/* Combobox accessible */
.sfw-filter-label {
    padding-right: 10px;
    font-weight: 500;
}

.sfw-combobox {
    position: relative;
    flex-grow: 1;
}

.sfw-combobox-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 8px 10px;
    border: 1px solid rgba(255,255,255,0.35);
    background-color: transparent;
    color: #ffffff;
    cursor: pointer;
    text-align: left;
    white-space: normal;
    overflow-wrap: anywhere;
    box-sizing: border-box;
	font-weight:500;
}

.sfw-combobox-list {
    position: absolute;
    z-index: 1000;
    top: 100%;
    left: 0;
    right: 0;
    margin: 0;
    padding: 4px 0;
    list-style: none;
    max-height: 260px;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background-color: #ffffff;
    border: 1px solid #e0e0e0;
    box-sizing: border-box;
    display: none;
}

.sfw-combobox.is-open .sfw-combobox-list {
    display: block;
}

.sfw-combobox-option {
    padding: 6px 10px;
    cursor: pointer;
    white-space: normal;
    overflow-wrap: anywhere;
    color: #00162e;
}

/* Barre de scroll visible dans la liste des options */

.sfw-combobox-list {
  overscroll-behavior: contain;
}

.sfw-combobox-list::-webkit-scrollbar {
    width: 6px;
}

.sfw-combobox-list::-webkit-scrollbar-track {
    background: #f0f0f0;
}

.sfw-combobox-list::-webkit-scrollbar-thumb {
    background: #c4b089;
}

.sfw-combobox-list::-webkit-scrollbar-thumb:hover {
    background: #a89163;
}

.sfw-combobox-option.is-active,
.sfw-combobox-option.is-selected {
    background-color: #f0f0f0;
}

/* Bouton Filtrer aligné avec Effacer */
.apply-filters {
  background-color: white;
  color:#191f2c;
  border: 1px solid white;
  padding: 6px 12px;
  cursor: pointer;
  border-radius: 0;
  font-size: 14px;
  transition:all ease-in 0.1s;
  margin-top:10px;
  margin-right: 8px;
}

.apply-filters:hover {
  background-color:#191f2c;
  color:white;
  border: 1px solid white;
}

.filters-wrapper .sfw-combobox-trigger:focus,
.filters-wrapper .apply-filters:focus,
.filters-wrapper .clear-filters:focus,
.filters-wrapper input.filter:focus {
    outline: none !important;
    box-shadow: none !important;
}

body.sfw-keyboard-nav .filters-wrapper .sfw-combobox-trigger:focus,
body.sfw-keyboard-nav .filters-wrapper .apply-filters:focus,
body.sfw-keyboard-nav .filters-wrapper .clear-filters:focus,
body.sfw-keyboard-nav .filters-wrapper input.filter:focus {
    outline: 2px solid #ff4b4b!important;
    outline-offset: 2px!important;
}
.sfw-label {
    display: block;
    font-size: 14px;
    margin-bottom: 6px;
    padding-left: 3px;
    color:rgba(255,255,255,0.6);
    padding-top: 10px;
}

.sfw-combobox.is-filled .sfw-combobox-trigger {
	border: 1px solid white;
    background-color:#3f4a5b;
}

