.room-item-card { transition: all 0.3s ease; border: 1px solid #eee; }
	.room-item-card:hover { transform: translateY(-5px); border-color: var(--bs-primary); }
	.icon-box-sm { width: 35px; height: 35px; display: flex; align-items: center; justify-content: center; }
	.sticky-booking-sidebar { position: sticky; top: 100px; }
	.main-gallery-img { transition: transform 0.3s ease; }
	.main-gallery-img:hover { transform: scale(1.01); cursor: pointer; }
	
	.activity-gallery-grid { position: relative; }
	.view-all-badge {
		position: absolute;
		bottom: 15px;
		right: 15px;
		background: rgba(255, 255, 255, 0.95);
		color: #333;
		padding: 8px 16px;
		border-radius: 50px;
		font-weight: 700;
		font-size: 0.85rem;
		box-shadow: 0 4px 12px rgba(0,0,0,0.15);
		cursor: pointer;
		z-index: 10;
		border: 1px solid #ddd;
		transition: all 0.2s ease;
		display: flex;
		align-items: center;
	}
	.view-all-badge:hover { background: #fff; transform: scale(1.05); box-shadow: 0 6px 15px rgba(0,0,0,0.2); }
	
	#sticky-search-reminder {
		position: fixed;
		top: 85px;
		left: 0;
		width: 100%;
		height: 60px;
		background: rgba(255, 255, 255, 0.98);
		backdrop-filter: blur(5px);
		z-index: 999;
		border-bottom: 1px solid #eee;
		transform: translateY(-100%);
		transition: transform 0.3s ease-in-out;
	}
	#sticky-search-reminder.visible { transform: translateY(0); }
	.search-field {
    display: flex !important;
    flex-direction: row;
    align-items: center;
    width: 100%;
}

.search-field input {
    flex: 1; /* Force l'input à occuper tout l'espace restant après l'icône */
    background: transparent;
    border: none;
    outline: none;
}
/* Optionnel : style pour les jours non disponibles on annule le grisé */
.flatpickr-day:not(.is-available) {
    opacity: unset;
    cursor: default;
}
#hotel-search-card-container {
	overflow: visible;
}
.search-box {
    padding: 10px;
}
.card-body p {
    margin-bottom: 10px;
    height: 30px;
}
.card:hover {
	transform:none;
	box-shadow:none;
}