/* ============================================================
   BOUTON RÉSERVATION FLOTTANT  –  [bouton_reservation]
   ============================================================ */

.wc-bouton-reservation {
	position: fixed;
	bottom: var(--s-xl);
	right: var(--s-xl);
	z-index: var(--z-floating);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	background: var(--c-primary);
	color: var(--c-text-inverse);
	text-decoration: none !important;
	font-size: var(--fs-button);
	font-weight: var(--fw-bold);
	letter-spacing: var(--ls-wide);
	text-transform: uppercase;
	line-height: 1;
	padding: var(--s-md) var(--s-xl);
	border-radius: var(--br-pill);
	border: 2px solid var(--c-primary-light);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.28) !important;
	transform: translateY(0);
	transition:
		background-color var(--tr-base),
		transform        var(--tr-base),
		box-shadow       var(--tr-base);
	outline: none !important;
	-webkit-tap-highlight-color: transparent !important;

	&:hover,
	&:focus {
		background-color: var(--c-primary-hover) !important;
		color: var(--c-text-inverse) !important;
		transform: translateY(-3px);
		box-shadow: 0 10px 28px rgba(0, 0, 0, 0.34) !important;
	}

	&:active {
		transform: translateY(-1px);
		box-shadow: 0 3px 12px rgba(0, 0, 0, 0.22) !important;
	}
}

.wc-bouton-reservation__icon {
	display: none;
	fill: none !important;
	stroke: var(--c-white) !important;
	width: 1.25rem !important;
	height: 1.25rem !important;
	flex-shrink: 0;
}

.wc-bouton-reservation__label {
	display: inline-block;
	white-space: nowrap;
	line-height: 1;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 600px) {
	.wc-bouton-reservation {
		bottom: var(--s-ld);
		right: var(--s-ld);
		padding: var(--s-md);
		border-radius: var(--br-circle);
	}

	.wc-bouton-reservation__icon {
		display: block;
		width: 1.375rem !important;
		height: 1.375rem !important;
	}

	.wc-bouton-reservation__label {
		display: none;
	}
}
