/**
 * Filtres dispo / listing — parité passionchalets (charge en dernier).
 */

/* Preloader home : au-dessus du header Elementor */
#preloader {
	position: fixed !important;
	inset: 0 !important;
	z-index: 2147483646 !important;
	isolation: isolate;
}

#preloader .overlay {
	z-index: 2;
}

#preloader .reveal {
	z-index: 3;
}

#preloader #preloader-lottie {
	z-index: 10;
}

body.passionchalets-preloader-active #masthead,
body.passionchalets-preloader-active #masthead-sticky-wrapper,
body.passionchalets-preloader-active #sticky-wrapper,
body.passionchalets-preloader-active .menu-desktop-passion,
body.passionchalets-preloader-active .menu-mobile-passion {
	z-index: 1 !important;
}

/* Badge coup de cœur — image ACF limitée (listing / grilles) */
.chalet-item .coup-de-coeur {
	overflow: hidden;
	width: 34px !important;
	height: 34px !important;
	max-width: 34px;
	max-height: 34px;
	box-sizing: border-box;
}

.chalet-item .coup-de-coeur .ii-heart {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-size: 0;
	line-height: 0;
}

.chalet-item .coup-de-coeur .coup-de-coeur-icon,
.chalet-item .coup-de-coeur img {
	width: 34px !important;
	height: 34px !important;
	max-width: 34px !important;
	max-height: 34px !important;
	object-fit: contain;
}

.filters .form-check-label {
	font-size: 10px;
	font-weight: 400;
}

.filters .filters-inner .sttl-filter {
	color: #000;
	font-size: 11px;
	font-weight: 700;
	margin-bottom: 14px;
}

.dispo-form .btn.btn-default.btn-dispo-global {
	color: #000 !important;
	background-color: #8d785c !important;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.dispo-form .btn.btn-default.btn-dispo-global:before {
	background-color: #b09e86;
	z-index: 0;
}

.dispo-form .btn.btn-default.btn-dispo-global:hover,
.dispo-form .btn.btn-default.btn-dispo-global:focus {
	color: #000 !important;
}

.dispo-form .btn.btn-default.btn-dispo-global:hover:before,
.dispo-form .btn.btn-default.btn-dispo-global:focus:before {
	width: 100%;
}

.dispo-form .btn.btn-default.btn-dispo-global span {
	position: relative;
	z-index: 1;
}

.filters .filters-inner .filter-group .col-md-12 {
	padding: 0;
	margin: 0;
}

.filters .filters-inner .filter-group .col-md-12 .form-check {
	margin-bottom: 3px;
	min-height: auto;
}

.filters .filters-inner .filter-group .col-md-12:last-child .form-check:last-child {
	margin-bottom: 0;
}

.filters .filters-inner .filter-category-group .form-check {
	margin-bottom: 3px;
	min-height: auto;
}

.filters .filters-inner .filter-category-group .form-check:last-child {
	margin-bottom: 0;
}

.filters .filters-inner select.select-filter {
	font-size: 11px;
	font-weight: 400;
}

.filters .filters-inner > .row > .col-md-3.fs-12:first-child {
	padding-left: 8px;
}

/* custom.scss + _form_dispo.scss */
.filters .filters-inner .row {
	--bs-gutter-x: 0;
	--bs-gutter-y: 0;
	gap: 0;
}

@media (min-width: 1521px) {
	.filters .filters-inner.lrg {
		max-width: 1500px;
	}
}

@media (min-width: 1024px) {
	.filters .filters-inner .filter-category-group {
		width: 30%;
	}

	.filters .filters-inner .filter-options-group {
		width: 38%;
	}
}

@media (min-width: 575px) {
	.filters .filters-inner .filter-group {
		display: grid;
		grid-auto-flow: column;
		grid-column-gap: 15px;
		grid-row-gap: 3px;
		align-items: start;
	}
}

.filters .filters-inner .form-check {
	align-items: flex-start;
}

.filters .filters-inner .form-check .form-check-input {
	margin-top: 1px;
}

.filters-home {
	top: calc(100% + 4px);
}

.filters .filters-inner .fs-12 {
	font-size: 11px !important;
	line-height: 16px;
}

/* btn-default load-more / infinite (listing, attraits, similaires) */
.btn.btn-default.trigger-infinite,
.btn.btn-default[id^="load-more"],
#load-more.btn.btn-default {
	color: #000 !important;
	background-color: #8d785c !important;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.btn.btn-default.trigger-infinite:before,
.btn.btn-default[id^="load-more"]:before,
#load-more.btn.btn-default:before {
	background-color: #b09e86;
	z-index: 0;
}

.btn.btn-default.trigger-infinite:hover,
.btn.btn-default.trigger-infinite:focus,
.btn.btn-default[id^="load-more"]:hover,
.btn.btn-default[id^="load-more"]:focus,
#load-more.btn.btn-default:hover,
#load-more.btn.btn-default:focus {
	color: #000 !important;
}

.btn.btn-default.trigger-infinite:hover:before,
.btn.btn-default.trigger-infinite:focus:before,
.btn.btn-default[id^="load-more"]:hover:before,
.btn.btn-default[id^="load-more"]:focus:before,
#load-more.btn.btn-default:hover:before,
#load-more.btn.btn-default:focus:before {
	width: 100%;
}

.btn.btn-default.trigger-infinite span,
.btn.btn-default[id^="load-more"] span,
#load-more.btn.btn-default span {
	position: relative;
	z-index: 1;
}
