/* Booking date fields — no focus/active chrome */
.booking-date-fields .form-group.is-active-date-field,
.booking-date-fields .form-group.is-complete-date-field,
.booking-date-fields .form-group:focus-within {
	background: transparent;
	box-shadow: none;
	outline: none;
}

.booking-date-fields input[name="check_in"],
.booking-date-fields input[name="check_out"] {
	color: #222;
	cursor: pointer;
	caret-color: transparent;
	outline: none !important;
	box-shadow: none !important;
}

.booking-date-fields input[name="check_in"]:focus,
.booking-date-fields input[name="check_out"]:focus,
.booking-date-fields input[name="check_in"]:focus-visible,
.booking-date-fields input[name="check_out"]:focus-visible {
	outline: none !important;
	box-shadow: none !important;
	border: 0 !important;
}

.booking-date-fields input[name="check_in"]::placeholder,
.booking-date-fields input[name="check_out"]::placeholder {
	color: #717171;
}

.booking-date-helper {
	display: none !important;
}

/* Legacy inline error — never show inside the date grid */
.stay-requirement-error {
	display: none !important;
}

.escapelux-booking-toast {
	position: fixed;
	top: 24px;
	right: 24px;
	z-index: 100050;
	display: flex;
	align-items: flex-start;
	gap: 10px;
	max-width: min(360px, calc(100vw - 32px));
	padding: 14px 16px;
	border-radius: 12px;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.18);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.4;
	opacity: 0;
	transform: translateY(-8px);
	transition: opacity 0.2s ease, transform 0.2s ease;
	pointer-events: auto;
}

.escapelux-booking-toast.is-visible {
	opacity: 1;
	transform: translateY(0);
}

.escapelux-booking-toast--error {
	background: #fff;
	color: #9b1c1c;
	border: 1px solid #f5c2c2;
}

.escapelux-booking-toast__icon {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	margin-top: 1px;
}

.escapelux-booking-toast__text {
	flex: 1;
}

.escapelux-booking-toast__close {
	flex-shrink: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
	padding: 0 0 0 4px;
	opacity: 0.7;
}

.escapelux-booking-toast__close:hover {
	opacity: 1;
}

@media (max-width: 767px) {
	.escapelux-booking-toast {
		top: auto;
		bottom: 24px;
		left: 16px;
		right: 16px;
		max-width: none;
	}
}

/* -------------------------------------------------------------------------- */
/* Flatpickr shell — SCOPED to booking calendars only                         */
/* (do not affect hero/search .search-component datepicker)                   */
/* -------------------------------------------------------------------------- */

.escapelux-fp-calendar {
	font-family: inherit;
	background: #fff;
	border: 0 !important;
	border-radius: 16px;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
	padding: 16px 20px 12px !important;
	width: auto !important;
}

#inline-property-calendar .flatpickr-calendar,
#inline-property-calendar + .flatpickr-calendar {
	font-family: inherit;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	width: auto !important;
}

#inline-property-calendar .flatpickr-calendar.inline,
#inline-property-calendar + .flatpickr-calendar.inline {
	box-shadow: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

.escapelux-fp-calendar.animate.open,
#inline-property-calendar .flatpickr-calendar.animate.open {
	animation: none;
}

.escapelux-fp-calendar .flatpickr-months,
#inline-property-calendar .flatpickr-months {
	align-items: center;
	margin-bottom: 4px;
}

.escapelux-fp-calendar .flatpickr-month,
#inline-property-calendar .flatpickr-month {
	height: 44px;
	overflow: visible;
	background: transparent;
}

.escapelux-fp-calendar .flatpickr-current-month,
#inline-property-calendar .flatpickr-current-month {
	font-size: 16px !important;
	font-weight: 600 !important;
	color: #222;
	padding-top: 6px !important;
}

/* Airbnb-style month chevrons — thin arrows on the outer edges */
.escapelux-fp-calendar .flatpickr-months .flatpickr-prev-month,
.escapelux-fp-calendar .flatpickr-months .flatpickr-next-month,
#inline-property-calendar .flatpickr-months .flatpickr-prev-month,
#inline-property-calendar .flatpickr-months .flatpickr-next-month {
	padding: 0 !important;
	top: 0 !important;
	height: 36px !important;
	width: 36px !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	fill: #222;
	color: #222;
	z-index: 5;
}

/* Popup calendar has header chrome — push arrows down to month row */
.escapelux-fp-calendar .flatpickr-months .flatpickr-prev-month,
.escapelux-fp-calendar .flatpickr-months .flatpickr-next-month {
	top: 75px !important;
}

/* Inline calendar — keep arrows on the month title row */
#inline-property-calendar .flatpickr-months .flatpickr-prev-month,
#inline-property-calendar .flatpickr-months .flatpickr-next-month {
	top: 0 !important;
}

.escapelux-fp-calendar .flatpickr-months .flatpickr-prev-month,
#inline-property-calendar .flatpickr-months .flatpickr-prev-month {
	left: 0 !important;
}

.escapelux-fp-calendar .flatpickr-months .flatpickr-next-month,
#inline-property-calendar .flatpickr-months .flatpickr-next-month {
	right: 0 !important;
}

.escapelux-fp-calendar .flatpickr-months .flatpickr-prev-month:hover,
.escapelux-fp-calendar .flatpickr-months .flatpickr-next-month:hover,
#inline-property-calendar .flatpickr-months .flatpickr-prev-month:hover,
#inline-property-calendar .flatpickr-months .flatpickr-next-month:hover {
	background: #f7f7f7;
}

.escapelux-fp-calendar .flatpickr-months .flatpickr-prev-month svg,
.escapelux-fp-calendar .flatpickr-months .flatpickr-next-month svg,
#inline-property-calendar .flatpickr-months .flatpickr-prev-month svg,
#inline-property-calendar .flatpickr-months .flatpickr-next-month svg {
	display: none !important;
}

.escapelux-fp-calendar .flatpickr-months .flatpickr-prev-month::before,
.escapelux-fp-calendar .flatpickr-months .flatpickr-next-month::before,
#inline-property-calendar .flatpickr-months .flatpickr-prev-month::before,
#inline-property-calendar .flatpickr-months .flatpickr-next-month::before {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	background-color: #222;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 12px 12px;
	mask-size: 12px 12px;
}

.escapelux-fp-calendar .flatpickr-months .flatpickr-prev-month::before,
#inline-property-calendar .flatpickr-months .flatpickr-prev-month::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='m13.7 16.29a1 1 0 1 1-1.42 1.41l-8-8a1 1 0 0 1 0-1.41l8-8a1 1 0 1 1 1.42 1.41l-7.29 7.29z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='m13.7 16.29a1 1 0 1 1-1.42 1.41l-8-8a1 1 0 0 1 0-1.41l8-8a1 1 0 1 1 1.42 1.41l-7.29 7.29z'/%3E%3C/svg%3E");
}

.escapelux-fp-calendar .flatpickr-months .flatpickr-next-month::before,
#inline-property-calendar .flatpickr-months .flatpickr-next-month::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='m4.29 1.71a1 1 0 1 1 1.42-1.41l8 8a1 1 0 0 1 0 1.41l-8 8a1 1 0 1 1-1.42-1.41l7.29-7.29z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='m4.29 1.71a1 1 0 1 1 1.42-1.41l8 8a1 1 0 0 1 0 1.41l-8 8a1 1 0 1 1-1.42-1.41l7.29-7.29z'/%3E%3C/svg%3E");
}

.escapelux-fp-calendar .flatpickr-current-month .numInputWrapper span.arrowUp,
.escapelux-fp-calendar .flatpickr-current-month .numInputWrapper span.arrowDown,
#inline-property-calendar .flatpickr-current-month .numInputWrapper span.arrowUp,
#inline-property-calendar .flatpickr-current-month .numInputWrapper span.arrowDown {
	display: none !important;
}

.escapelux-fp-calendar .flatpickr-current-month .numInputWrapper,
#inline-property-calendar .flatpickr-current-month .numInputWrapper {
	width: auto !important;
}

.escapelux-fp-calendar .flatpickr-current-month input.cur-year,
#inline-property-calendar .flatpickr-current-month input.cur-year {
	pointer-events: none;
	font-weight: 700 !important;
	font-size: 16px !important;
	color: #222 !important;
	appearance: textfield;
	-moz-appearance: textfield;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
}
#inline-property-calendar + .flatpickr-calendar .flatpickr-current-month input.cur-year {
	font-weight: 700 !important;
}
.escapelux-fp-calendar .flatpickr-current-month input.cur-year::-webkit-outer-spin-button,
.escapelux-fp-calendar .flatpickr-current-month input.cur-year::-webkit-inner-spin-button,
#inline-property-calendar .flatpickr-current-month input.cur-year::-webkit-outer-spin-button,
#inline-property-calendar .flatpickr-current-month input.cur-year::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.escapelux-fp-calendar .flatpickr-current-month span.cur-month,
#inline-property-calendar .flatpickr-current-month span.cur-month {
	font-weight: 600 !important;
	margin: 0 4px 0 0 !important;
	font-size: 16px !important;
	color: #222;
}

.escapelux-fp-calendar .flatpickr-weekdays,
#inline-property-calendar .flatpickr-weekdays {
	height: 36px;
	background: transparent;
}

.escapelux-fp-calendar span.flatpickr-weekday,
#inline-property-calendar span.flatpickr-weekday {
	color: #717171;
	font-size: 12px;
	font-weight: 600;
	background: transparent;
}

.escapelux-fp-calendar {
	--fp-day: 40px;
	--fp-range: #f7f7f7;
	--fp-selected: #222;
}

.escapelux-fp-calendar .dayContainer {
	width: calc(var(--fp-day) * 7) !important;
	min-width: calc(var(--fp-day) * 7) !important;
	max-width: calc(var(--fp-day) * 7) !important;
	padding: 0 !important;
	box-shadow: none !important;
	justify-content: flex-start !important;
}

.escapelux-fp-calendar .flatpickr-weekdaycontainer {
	width: calc(var(--fp-day) * 7) !important;
	min-width: calc(var(--fp-day) * 7) !important;
	max-width: calc(var(--fp-day) * 7) !important;
}

.escapelux-fp-calendar span.flatpickr-weekday {
	flex: 0 0 var(--fp-day) !important;
	width: var(--fp-day) !important;
	max-width: var(--fp-day) !important;
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
}

.escapelux-fp-calendar .flatpickr-day,
#inline-property-calendar .flatpickr-day {
	position: relative;
	z-index: 1;
	border-radius: 50% !important;
	border: 1px solid transparent !important;
	color: #222;
	font-weight: 400;
	font-size: 14px;
	margin: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.escapelux-fp-calendar.rangeMode .flatpickr-day,
#inline-property-calendar .flatpickr-day {
	margin-top: 0 !important;
}

/* Exact square cells — circle diameter === range bar height */
.escapelux-fp-calendar .flatpickr-day {
	box-sizing: border-box !important;
	width: var(--fp-day) !important;
	max-width: var(--fp-day) !important;
	min-width: var(--fp-day) !important;
	height: var(--fp-day) !important;
	min-height: var(--fp-day) !important;
	max-height: var(--fp-day) !important;
	line-height: var(--fp-day) !important;
	flex: 0 0 var(--fp-day) !important;
	flex-basis: var(--fp-day) !important;
	border: 0 !important;
	border-radius: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	vertical-align: top !important;
	padding: 0 !important;
}

.escapelux-fp-calendar .flatpickr-day:hover:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange),
.escapelux-fp-calendar .flatpickr-day:focus:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange) {
	background: transparent !important;
	box-shadow: inset 0 0 0 1px #222 !important;
	border-radius: 50% !important;
	color: #222 !important;
	outline: none !important;
}

#inline-property-calendar .flatpickr-day:hover:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange),
#inline-property-calendar .flatpickr-day:focus:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange) {
	background: transparent !important;
	border-color: #222 !important;
	color: #222 !important;
	outline: none !important;
	box-shadow: none !important;
}

.escapelux-fp-calendar .flatpickr-day.today:not(.selected):not(.startRange):not(.endRange) {
	box-shadow: inset 0 0 0 1px #222 !important;
	border-radius: 50% !important;
	background: transparent !important;
	color: #222 !important;
	font-weight: 600;
}

#inline-property-calendar .flatpickr-day.today:not(.selected):not(.startRange):not(.endRange) {
	border-color: #222 !important;
	border-radius: 50% !important;
	background: transparent !important;
	color: #222 !important;
	font-weight: 600;
}

/* Mid-range cells only — full gray strip (start/end stay transparent + circle) */
.escapelux-fp-calendar .flatpickr-day.inRange,
.escapelux-fp-calendar .flatpickr-day.prevMonthDay.inRange,
.escapelux-fp-calendar .flatpickr-day.nextMonthDay.inRange,
.escapelux-fp-calendar .flatpickr-day.inRange:hover,
.escapelux-fp-calendar .flatpickr-day.inRange:focus,
.escapelux-fp-calendar .flatpickr-day.prevMonthDay.inRange:hover,
.escapelux-fp-calendar .flatpickr-day.nextMonthDay.inRange:hover {
	z-index: 1;
	background: var(--fp-range) !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: none !important;
	color: #222 !important;
	height: var(--fp-day) !important;
	min-height: var(--fp-day) !important;
	max-height: var(--fp-day) !important;
}

#inline-property-calendar .flatpickr-day.inRange,
#inline-property-calendar .flatpickr-day.prevMonthDay.inRange,
#inline-property-calendar .flatpickr-day.nextMonthDay.inRange,
#inline-property-calendar .flatpickr-day.inRange:hover,
#inline-property-calendar .flatpickr-day.inRange:focus {
	z-index: 0;
	background: #f7f7f7 !important;
	border-color: #f7f7f7 !important;
	border-radius: 0 !important;
	box-shadow: -5px 0 0 #f7f7f7, 5px 0 0 #f7f7f7 !important;
	color: #222 !important;
	outline: none !important;
}

/* Circle overlays — same size as the gray strip (no height mismatch) */
.escapelux-fp-calendar .flatpickr-day.selected::before,
.escapelux-fp-calendar .flatpickr-day.startRange::before,
.escapelux-fp-calendar .flatpickr-day.endRange::before,
.escapelux-fp-calendar .flatpickr-day.selected:hover::before,
.escapelux-fp-calendar .flatpickr-day.startRange:hover::before,
.escapelux-fp-calendar .flatpickr-day.endRange:hover::before,
.escapelux-fp-calendar .flatpickr-day.selected:focus::before,
.escapelux-fp-calendar .flatpickr-day.startRange:focus::before,
.escapelux-fp-calendar .flatpickr-day.endRange:focus::before {
	content: "" !important;
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	width: 100% !important;
	height: 100% !important;
	border-radius: 50% !important;
	background: var(--fp-selected) !important;
	/* Stay above cell gray, below the day number (parent creates stacking context) */
	z-index: -1 !important;
	pointer-events: none !important;
	display: block !important;
}

.escapelux-fp-calendar .flatpickr-day.selected,
.escapelux-fp-calendar .flatpickr-day.startRange,
.escapelux-fp-calendar .flatpickr-day.endRange,
.escapelux-fp-calendar .flatpickr-day.selected:hover,
.escapelux-fp-calendar .flatpickr-day.startRange:hover,
.escapelux-fp-calendar .flatpickr-day.endRange:hover,
.escapelux-fp-calendar .flatpickr-day.selected:focus,
.escapelux-fp-calendar .flatpickr-day.startRange:focus,
.escapelux-fp-calendar .flatpickr-day.endRange:focus,
.escapelux-fp-calendar .flatpickr-day.today.selected,
.escapelux-fp-calendar .flatpickr-day.today.startRange,
.escapelux-fp-calendar .flatpickr-day.today.endRange {
	z-index: 2;
	color: #fff !important;
	font-weight: 600;
	/* Kill Flatpickr default pill radii (50px 0 0 50px / 0 50px 50px 0) */
	border-radius: 0 !important;
}

.escapelux-fp-calendar .flatpickr-day.selected.startRange,
.escapelux-fp-calendar .flatpickr-day.startRange.startRange,
.escapelux-fp-calendar .flatpickr-day.endRange.startRange,
.escapelux-fp-calendar .flatpickr-day.selected.endRange,
.escapelux-fp-calendar .flatpickr-day.startRange.endRange,
.escapelux-fp-calendar .flatpickr-day.endRange.endRange,
.escapelux-fp-calendar .flatpickr-day.selected.startRange.endRange {
	border-radius: 0 !important;
}

/* Solo check-in: no gray half-sliver beside the circle */
.escapelux-fp-calendar .flatpickr-day.startRange:not(.endRange),
.escapelux-fp-calendar .flatpickr-day.startRange:not(.endRange):hover,
.escapelux-fp-calendar .flatpickr-day.startRange:not(.endRange):focus,
.escapelux-fp-calendar .flatpickr-day.endRange:not(.startRange),
.escapelux-fp-calendar .flatpickr-day.endRange:not(.startRange):hover,
.escapelux-fp-calendar .flatpickr-day.endRange:not(.startRange):focus,
.escapelux-fp-calendar .flatpickr-day.startRange.endRange,
.escapelux-fp-calendar .flatpickr-day.selected:not(.startRange):not(.endRange) {
	background: transparent !important;
}

/* Only when a range exists (mid days or end), connect gray under the circles */
.escapelux-fp-calendar .flatpickr-days:has(.inRange) .flatpickr-day.startRange:not(.endRange),
.escapelux-fp-calendar .flatpickr-days:has(.endRange) .flatpickr-day.startRange:not(.endRange),
.escapelux-fp-calendar .flatpickr-days:has(.inRange) .flatpickr-day.startRange:not(.endRange):hover,
.escapelux-fp-calendar .flatpickr-days:has(.endRange) .flatpickr-day.startRange:not(.endRange):hover {
	background: linear-gradient(
		to right,
		transparent 50%,
		var(--fp-range) 50%
	) !important;
}

.escapelux-fp-calendar .flatpickr-days:has(.inRange) .flatpickr-day.endRange:not(.startRange),
.escapelux-fp-calendar .flatpickr-days:has(.startRange) .flatpickr-day.endRange:not(.startRange),
.escapelux-fp-calendar .flatpickr-days:has(.inRange) .flatpickr-day.endRange:not(.startRange):hover,
.escapelux-fp-calendar .flatpickr-days:has(.startRange) .flatpickr-day.endRange:not(.startRange):hover {
	background: linear-gradient(
		to left,
		transparent 50%,
		var(--fp-range) 50%
	) !important;
}

.escapelux-fp-calendar .flatpickr-day.selected::after,
.escapelux-fp-calendar .flatpickr-day.startRange::after,
.escapelux-fp-calendar .flatpickr-day.endRange::after {
	content: none !important;
	display: none !important;
}

/* Inline calendar keeps solid circles (separate layered rules below) */
#inline-property-calendar .flatpickr-day.selected,
#inline-property-calendar .flatpickr-day.startRange,
#inline-property-calendar .flatpickr-day.endRange,
#inline-property-calendar .flatpickr-day.selected:hover,
#inline-property-calendar .flatpickr-day.startRange:hover,
#inline-property-calendar .flatpickr-day.endRange:hover,
#inline-property-calendar .flatpickr-day.selected:focus,
#inline-property-calendar .flatpickr-day.startRange:focus,
#inline-property-calendar .flatpickr-day.endRange:focus,
#inline-property-calendar .flatpickr-day.today.selected,
#inline-property-calendar .flatpickr-day.today.startRange,
#inline-property-calendar .flatpickr-day.today.endRange {
	z-index: 2;
	background: #222 !important;
	border-color: #222 !important;
	color: #fff !important;
	border-radius: 50% !important;
	box-shadow: none !important;
	font-weight: 600;
}

#inline-property-calendar .flatpickr-day.startRange:not(.endRange) {
	box-shadow: 8px 0 0 #f7f7f7 !important;
}

#inline-property-calendar .flatpickr-day.endRange:not(.startRange) {
	box-shadow: -8px 0 0 #f7f7f7 !important;
}

#inline-property-calendar .flatpickr-day.startRange.endRange {
	border-radius: 50% !important;
	box-shadow: none !important;
}

/* Adjacent-month filler days — faint, no strike */
.escapelux-fp-calendar .flatpickr-day.prevMonthDay:not(.flatpickr-disabled),
.escapelux-fp-calendar .flatpickr-day.nextMonthDay:not(.flatpickr-disabled),
#inline-property-calendar .flatpickr-day.prevMonthDay:not(.flatpickr-disabled),
#inline-property-calendar .flatpickr-day.nextMonthDay:not(.flatpickr-disabled),
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.prevMonthDay:not(.flatpickr-disabled),
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.nextMonthDay:not(.flatpickr-disabled) {
	color: #dddddd !important;
	background: transparent !important;
	border-color: transparent !important;
	box-shadow: none !important;
	cursor: default;
}

/*
 * Disabled (min-stay / not a valid start) — muted only.
 * Strikethrough is reserved for real inventory blocks below.
 */
.escapelux-fp-calendar .flatpickr-day.flatpickr-disabled,
.escapelux-fp-calendar .flatpickr-day.flatpickr-disabled:hover,
#inline-property-calendar .flatpickr-day.flatpickr-disabled,
#inline-property-calendar .flatpickr-day.flatpickr-disabled:hover,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.flatpickr-disabled,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.flatpickr-disabled:hover,
.calendar-section-inline .flatpickr-day.flatpickr-disabled,
.calendar-section-inline .flatpickr-day.flatpickr-disabled:hover {
	position: relative;
	color: #b0b0b0 !important;
	background: transparent !important;
	border-color: transparent !important;
	box-shadow: none !important;
	cursor: default;
	text-decoration: none !important;
	padding: 0 !important;
}

/* Inventory blocked only — strikethrough */
.escapelux-fp-calendar .flatpickr-day.booking-day--unavailable,
.escapelux-fp-calendar .flatpickr-day.flatpickr-disabled.booking-day--unavailable,
#inline-property-calendar .flatpickr-day.booking-day--unavailable,
#inline-property-calendar .flatpickr-day.flatpickr-disabled.booking-day--unavailable,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.booking-day--unavailable,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.flatpickr-disabled.booking-day--unavailable,
.calendar-section-inline .flatpickr-day.booking-day--unavailable,
.calendar-section-inline .flatpickr-day.flatpickr-disabled.booking-day--unavailable {
	color: #b0b0b0 !important;
	text-decoration: line-through !important;
	text-decoration-color: #b0b0b0 !important;
	text-decoration-thickness: 1px;
	cursor: default;
}

.escapelux-fp-calendar .flatpickr-day.booking-day--no-checkin,
#inline-property-calendar .flatpickr-day.booking-day--no-checkin,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.booking-day--no-checkin,
.calendar-section-inline .flatpickr-day.booking-day--no-checkin {
	color: #b0b0b0 !important;
	text-decoration: none !important;
	cursor: default !important;
	pointer-events: none;
}

/* Below min stay — muted but clickable so toast can explain the 3-night rule */
.escapelux-fp-calendar .flatpickr-day.booking-day--below-min-stay,
#inline-property-calendar .flatpickr-day.booking-day--below-min-stay,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.booking-day--below-min-stay,
.calendar-section-inline .flatpickr-day.booking-day--below-min-stay {
	color: #b0b0b0 !important;
	text-decoration: none !important;
	cursor: pointer !important;
	pointer-events: auto !important;
}

/*
 * Necessary leave-morning checkout: keep unavailable look (strikethrough),
 * but remain clickable — Flatpickr also rejects .notAllowed, so clear that.
 */
.escapelux-fp-calendar .flatpickr-day.booking-day--checkout-only,
.escapelux-fp-calendar .flatpickr-day.flatpickr-disabled.booking-day--checkout-only,
.escapelux-fp-calendar .flatpickr-day.notAllowed.booking-day--checkout-only,
#inline-property-calendar .flatpickr-day.booking-day--checkout-only,
#inline-property-calendar .flatpickr-day.flatpickr-disabled.booking-day--checkout-only,
#inline-property-calendar .flatpickr-day.notAllowed.booking-day--checkout-only,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.booking-day--checkout-only,
.calendar-section-inline .flatpickr-day.booking-day--checkout-only,
.calendar-section-inline .flatpickr-day.notAllowed.booking-day--checkout-only {
	color: #b0b0b0 !important;
	text-decoration: line-through !important;
	text-decoration-color: #b0b0b0 !important;
	cursor: pointer !important;
	pointer-events: auto !important;
	opacity: 1 !important;
}

/* While selecting a range, inRange/start/end must beat the min-stay outline */
.escapelux-fp-calendar .flatpickr-day.booking-day--below-min-stay.inRange,
.escapelux-fp-calendar .flatpickr-day.booking-day--below-min-stay.inRange:hover,
.escapelux-fp-calendar .flatpickr-day.booking-day--below-min-stay.inRange:focus {
	background: var(--fp-range) !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #222 !important;
	outline: none !important;
}

#inline-property-calendar .flatpickr-day.booking-day--below-min-stay.inRange,
#inline-property-calendar .flatpickr-day.booking-day--below-min-stay.inRange:hover,
#inline-property-calendar .flatpickr-day.booking-day--below-min-stay.inRange:focus {
	background: #f7f7f7 !important;
	border-color: #f7f7f7 !important;
	border-radius: 0 !important;
	box-shadow: -5px 0 0 #f7f7f7, 5px 0 0 #f7f7f7 !important;
	color: #222 !important;
	outline: none !important;
}

.escapelux-fp-calendar .flatpickr-day.booking-day--below-min-stay.selected,
.escapelux-fp-calendar .flatpickr-day.booking-day--below-min-stay.startRange,
.escapelux-fp-calendar .flatpickr-day.booking-day--below-min-stay.endRange {
	color: #fff !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

#inline-property-calendar .flatpickr-day.booking-day--below-min-stay.selected,
#inline-property-calendar .flatpickr-day.booking-day--below-min-stay.startRange,
#inline-property-calendar .flatpickr-day.booking-day--below-min-stay.endRange {
	background: #222 !important;
	border-color: #222 !important;
	color: #fff !important;
	border-radius: 50% !important;
	box-shadow: none !important;
}

#inline-property-calendar .flatpickr-day.booking-day--below-min-stay.startRange:not(.endRange) {
	box-shadow: 8px 0 0 #f7f7f7 !important;
}

#inline-property-calendar .flatpickr-day.booking-day--below-min-stay.endRange:not(.startRange) {
	box-shadow: -8px 0 0 #f7f7f7 !important;
}

/* Kill Flatpickr’s default vertical divider between months.
   Inline calendar can be a child OR next sibling of #inline-property-calendar. */
.escapelux-fp-calendar .dayContainer + .dayContainer,
.escapelux-fp-calendar.multiMonth .flatpickr-days .dayContainer + .dayContainer,
.escapelux-fp-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n + 2),
.calendar-section-inline .dayContainer + .dayContainer,
.calendar-section-inline .flatpickr-days .dayContainer:nth-child(n + 2),
#inline-property-calendar .dayContainer + .dayContainer,
#inline-property-calendar .flatpickr-days .dayContainer + .dayContainer,
#inline-property-calendar .flatpickr-calendar.multiMonth .flatpickr-days .dayContainer + .dayContainer,
#inline-property-calendar .flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n + 2),
#inline-property-calendar + .flatpickr-calendar .dayContainer + .dayContainer,
#inline-property-calendar + .flatpickr-calendar .flatpickr-days .dayContainer:nth-child(n + 2),
.calendar-section-inline .flatpickr-weekdaycontainer + .flatpickr-weekdaycontainer,
#inline-property-calendar .flatpickr-weekdaycontainer + .flatpickr-weekdaycontainer,
#inline-property-calendar + .flatpickr-calendar .flatpickr-weekdaycontainer + .flatpickr-weekdaycontainer {
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
	border: 0 !important;
	border-left: 0 !important;
}

.escapelux-fp-calendar.loading,
#inline-property-calendar .flatpickr-calendar.loading {
	opacity: 0.7;
	pointer-events: none;
}

/* -------------------------------------------------------------------------- */
/* Popup chrome                                                               */
/* -------------------------------------------------------------------------- */

.escapelux-fp-calendar {
	padding: 16px 20px 12px !important;
}

.escapelux-fp-chrome {
	width: 100%;
	padding: 0 0 12px;
	margin: 0;
	text-align: center;
}

.escapelux-fp-chrome__title {
	margin: 0;
	font-size: 22px;
	line-height: 1.2;
	font-weight: 600;
	color: #222;
}

.escapelux-fp-chrome__subtitle {
	margin: 4px 0 0;
	font-size: 14px;
	line-height: 1.35;
	color: #717171;
}

.escapelux-fp-footer {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	width: 100%;
	padding: 12px 0 0;
	margin-top: 8px;
	border-top: 1px solid #ebebeb;
}

.escapelux-fp-clear {
	background: transparent;
	border: 0;
	padding: 10px 12px;
	font-size: 14px;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
	color: #222;
	cursor: pointer;
}

.escapelux-fp-clear:hover {
	color: #000;
}

.escapelux-fp-close {
	background: #222;
	color: #fff;
	border: 0;
	border-radius: 8px;
	padding: 10px 16px;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}

.escapelux-fp-close:hover {
	background: #000;
}

/* -------------------------------------------------------------------------- */
/* Inline calendar — full width                                               */
/* -------------------------------------------------------------------------- */

.calendar-section-inline {
	width: 100%;
}

.calendar-section-inline .inline-calendar-heading {
	margin: 0 0 28px;
}

.calendar-section-inline .inline-calendar-heading__row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.calendar-section-inline .inline-calendar-heading__text {
	min-width: 0;
	flex: 1 1 auto;
}

.calendar-section-inline .inline-calendar-heading__title {
	margin: 0;
	font-size: 22px;
	line-height: 1.25;
	font-weight: 400;
	color: #222;
}

.calendar-section-inline .inline-calendar-heading__subtitle {
	margin: 6px 0 0;
	font-size: 14px;
	line-height: 1.4;
	color: #717171;
}

.calendar-section-inline .inline-calendar-heading .escapelux-inline-footer {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	margin: 0;
	padding: 0;
	/* Match first line of title (22px × 1.25) so Clear sits on the same line */
	min-height: calc(22px * 1.25);
	width: auto;
}

.calendar-section-inline .inline-calendar-heading .escapelux-inline-footer .escapelux-fp-clear {
	padding: 0;
	line-height: 1.25;
	white-space: nowrap;
}

.calendar-section-inline .booking-inline-helper {
	display: none !important;
}

#inline-property-calendar {
	width: 100%;
	max-width: 100%;
}

#inline-property-calendar .flatpickr-calendar.inline,
#inline-property-calendar + .flatpickr-calendar {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	display: block !important;
	box-shadow: none !important;
	border: 0 !important;
	outline: none !important;
	padding: 0 !important;
	background: transparent !important;
}

#inline-property-calendar .flatpickr-innerContainer,
#inline-property-calendar .flatpickr-rContainer {
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
}

/* Month titles / weekdays / days — two equal columns with 40px desktop gap */
.calendar-section-inline .flatpickr-months,
#inline-property-calendar .flatpickr-months,
#inline-property-calendar + .flatpickr-calendar .flatpickr-months {
	width: 100% !important;
	max-width: 100% !important;
	display: flex !important;
	align-items: center;
	gap: 40px !important;
	margin-bottom: 20px !important;
}

#inline-property-calendar .flatpickr-calendar.inline.multiMonth .flatpickr-month,
#inline-property-calendar + .flatpickr-calendar.inline.multiMonth .flatpickr-month {
	flex: 1 1 0 !important;
	width: auto !important;
	max-width: none !important;
}

.calendar-section-inline .flatpickr-weekdays,
#inline-property-calendar .flatpickr-weekdays,
#inline-property-calendar + .flatpickr-calendar .flatpickr-weekdays {
	width: 100% !important;
	max-width: 100% !important;
	display: flex !important;
	gap: 40px !important;
}

#inline-property-calendar .flatpickr-weekdaycontainer,
#inline-property-calendar + .flatpickr-calendar .flatpickr-weekdaycontainer {
	flex: 1 1 0 !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
}

.calendar-section-inline .flatpickr-days,
#inline-property-calendar .flatpickr-days,
#inline-property-calendar + .flatpickr-calendar .flatpickr-days {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	display: flex !important;
	flex-wrap: nowrap !important;
	justify-content: space-between;
	align-items: flex-start;
	gap: 40px !important;
}

#inline-property-calendar .flatpickr-calendar.inline .dayContainer,
#inline-property-calendar .dayContainer,
#inline-property-calendar + .flatpickr-calendar .dayContainer,
.calendar-section-inline .dayContainer {
	display: flex !important;
	flex-wrap: wrap !important;
	justify-content: flex-start !important;
	flex: 1 1 0 !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
	border: 0 !important;
}

/* Fluid day cells fill each month column — fixed 1/7 width so last row stays aligned.
   Cells stay rectangular for the range bar; selected dates get a true circle via ::before. */
#inline-property-calendar .flatpickr-day,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day,
.calendar-section-inline .flatpickr-day {
	flex: 0 0 14.2857143% !important;
	max-width: 14.2857143% !important;
	width: 14.2857143% !important;
	height: 48px !important;
	line-height: 46px !important;
	box-sizing: border-box !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	border-radius: 0 !important;
}

/* Circular hover / today ring (square hit-target would oval with border-radius:50%) */
#inline-property-calendar .flatpickr-day:hover:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange)::before,
#inline-property-calendar .flatpickr-day:focus:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange)::before,
#inline-property-calendar .flatpickr-day.today:not(.selected):not(.startRange):not(.endRange):not(.inRange)::before,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day:hover:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange)::before,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day:focus:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange)::before,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.today:not(.selected):not(.startRange):not(.endRange):not(.inRange)::before,
.calendar-section-inline .flatpickr-day:hover:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange)::before,
.calendar-section-inline .flatpickr-day:focus:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange)::before,
.calendar-section-inline .flatpickr-day.today:not(.selected):not(.startRange):not(.endRange):not(.inRange)::before {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	width: 40px;
	height: 40px;
	margin: -20px 0 0 -20px;
	border-radius: 50%;
	border: 1px solid #222;
	background: transparent;
	z-index: -1;
	pointer-events: none;
	box-sizing: border-box;
}

#inline-property-calendar .flatpickr-day:hover:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange),
#inline-property-calendar .flatpickr-day:focus:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange),
#inline-property-calendar .flatpickr-day.today:not(.selected):not(.startRange):not(.endRange):not(.inRange),
#inline-property-calendar + .flatpickr-calendar .flatpickr-day:hover:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange),
#inline-property-calendar + .flatpickr-calendar .flatpickr-day:focus:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange),
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.today:not(.selected):not(.startRange):not(.endRange):not(.inRange),
.calendar-section-inline .flatpickr-day:hover:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange),
.calendar-section-inline .flatpickr-day:focus:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange):not(.inRange),
.calendar-section-inline .flatpickr-day.today:not(.selected):not(.startRange):not(.endRange):not(.inRange) {
	border-color: transparent !important;
	background: transparent !important;
}

#inline-property-calendar .flatpickr-day.inRange:hover,
#inline-property-calendar .flatpickr-day.inRange:focus,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.inRange:hover,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.inRange:focus,
.calendar-section-inline .flatpickr-day.inRange:hover,
.calendar-section-inline .flatpickr-day.inRange:focus {
	background: #f7f7f7 !important;
	border-color: #f7f7f7 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: none !important;
}

#inline-property-calendar .flatpickr-day.inRange:hover::before,
#inline-property-calendar .flatpickr-day.inRange:focus::before,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.inRange:hover::before,
.calendar-section-inline .flatpickr-day.inRange:hover::before {
	content: none !important;
	display: none !important;
}

/*
 * Inline start/end: layered backgrounds so the gray range runs under the
 * circle with no white gap (radial circle + half-cell gray gradient).
 */
#inline-property-calendar .flatpickr-day.selected,
#inline-property-calendar .flatpickr-day.startRange,
#inline-property-calendar .flatpickr-day.endRange,
#inline-property-calendar .flatpickr-day.selected:hover,
#inline-property-calendar .flatpickr-day.startRange:hover,
#inline-property-calendar .flatpickr-day.endRange:hover,
#inline-property-calendar .flatpickr-day.selected:focus,
#inline-property-calendar .flatpickr-day.startRange:focus,
#inline-property-calendar .flatpickr-day.endRange:focus,
#inline-property-calendar .flatpickr-day.today.selected,
#inline-property-calendar .flatpickr-day.today.startRange,
#inline-property-calendar .flatpickr-day.today.endRange,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.selected,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.startRange,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.endRange,
.calendar-section-inline .flatpickr-day.selected,
.calendar-section-inline .flatpickr-day.startRange,
.calendar-section-inline .flatpickr-day.endRange {
	border-color: transparent !important;
	border-radius: 0 !important;
	color: #fff !important;
	box-shadow: none !important;
	z-index: 1;
	/* circle only (single-day or fallback) */
	background:
		radial-gradient(circle 20px at 50% 50%, #222 99.5%, transparent 100%) !important;
}

/* Start: gray from center → right, under the circle */
#inline-property-calendar .flatpickr-day.startRange:not(.endRange),
#inline-property-calendar .flatpickr-day.startRange:not(.endRange):hover,
#inline-property-calendar .flatpickr-day.startRange:not(.endRange):focus,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.startRange:not(.endRange),
.calendar-section-inline .flatpickr-day.startRange:not(.endRange) {
	background:
		radial-gradient(circle 20px at 50% 50%, #222 99.5%, transparent 100%),
		linear-gradient(to right, transparent 50%, #f7f7f7 50%) !important;
}

/* End: gray from left → center, under the circle */
#inline-property-calendar .flatpickr-day.endRange:not(.startRange),
#inline-property-calendar .flatpickr-day.endRange:not(.startRange):hover,
#inline-property-calendar .flatpickr-day.endRange:not(.startRange):focus,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.endRange:not(.startRange),
.calendar-section-inline .flatpickr-day.endRange:not(.startRange) {
	background:
		radial-gradient(circle 20px at 50% 50%, #222 99.5%, transparent 100%),
		linear-gradient(to left, transparent 50%, #f7f7f7 50%) !important;
}

/* Kill leftover ::before/::after from earlier circle approach */
#inline-property-calendar .flatpickr-day.selected::before,
#inline-property-calendar .flatpickr-day.startRange::before,
#inline-property-calendar .flatpickr-day.endRange::before,
#inline-property-calendar .flatpickr-day.selected::after,
#inline-property-calendar .flatpickr-day.startRange::after,
#inline-property-calendar .flatpickr-day.endRange::after,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.selected::before,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.startRange::before,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.endRange::before,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.selected::after,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.startRange::after,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.endRange::after,
.calendar-section-inline .flatpickr-day.selected::before,
.calendar-section-inline .flatpickr-day.startRange::before,
.calendar-section-inline .flatpickr-day.endRange::before,
.calendar-section-inline .flatpickr-day.selected::after,
.calendar-section-inline .flatpickr-day.startRange::after,
.calendar-section-inline .flatpickr-day.endRange::after {
	content: none !important;
	display: none !important;
}

#inline-property-calendar .flatpickr-day.inRange,
#inline-property-calendar .flatpickr-day.prevMonthDay.inRange,
#inline-property-calendar .flatpickr-day.nextMonthDay.inRange,
#inline-property-calendar + .flatpickr-calendar .flatpickr-day.inRange,
.calendar-section-inline .flatpickr-day.inRange {
	background: #f7f7f7 !important;
	border-color: #f7f7f7 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}


@media (max-width: 1023px) {
	/* Booking popup — centered full-width bottom sheet on mobile/tablet */
	.flatpickr-calendar.escapelux-fp-calendar.open,
	.flatpickr-calendar.escapelux-fp-calendar.escapelux-fp-calendar--mobile-sheet {
		position: fixed !important;
		top: auto !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		max-height: min(78vh, 640px) !important;
		margin: 0 auto !important;
		padding: 16px 16px 12px !important;
		border-radius: 20px 20px 0 0 !important;
		transform: none !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch;
		z-index: 120 !important;
		box-shadow: 0 -8px 28px rgba(0, 0, 0, 0.18) !important;
	}

	.escapelux-fp-calendar .flatpickr-innerContainer,
	.escapelux-fp-calendar .flatpickr-rContainer,
	.escapelux-fp-calendar .flatpickr-months,
	.escapelux-fp-calendar .flatpickr-weekdays,
	.escapelux-fp-calendar .flatpickr-days {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.escapelux-fp-calendar .flatpickr-weekdaycontainer,
	.escapelux-fp-calendar .dayContainer {
		display: flex !important;
		flex: 1 1 100% !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		justify-content: flex-start !important;
	}

	.escapelux-fp-calendar span.flatpickr-weekday,
	.escapelux-fp-calendar .flatpickr-day {
		flex: 0 0 14.2857143% !important;
		width: 14.2857143% !important;
		max-width: 14.2857143% !important;
		margin: 0 !important;
		box-sizing: border-box !important;
	}

	.escapelux-fp-calendar span.flatpickr-weekday {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
	}

	/* Keep days square on mobile so circle height = range bar height */
	.escapelux-fp-calendar .flatpickr-day {
		height: auto !important;
		aspect-ratio: 1 / 1 !important;
		line-height: normal !important;
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
	}

	.escapelux-fp-calendar .flatpickr-current-month {
		left: 0 !important;
		width: 100% !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 6px !important;
		flex-wrap: nowrap !important;
		white-space: nowrap !important;
		transform: none !important;
		padding-top: 0 !important;
	}

	.escapelux-fp-calendar .flatpickr-current-month span.cur-month,
	.escapelux-fp-calendar .flatpickr-current-month .numInputWrapper,
	.escapelux-fp-calendar .flatpickr-current-month input.cur-year {
		float: none !important;
		display: inline-flex !important;
		align-items: center !important;
		margin: 0 !important;
		vertical-align: middle;
	}

	.escapelux-fp-calendar .flatpickr-current-month input.cur-year {
		width: 4.5ch !important;
		max-width: 5ch !important;
	}

	.escapelux-fp-calendar .escapelux-fp-footer {
		position: sticky;
		bottom: 0;
		background: #fff;
		padding-bottom: max(12px, env(safe-area-inset-bottom));
	}

	.calendar-section-inline .flatpickr-months,
	.calendar-section-inline .flatpickr-weekdays,
	.calendar-section-inline .flatpickr-days,
	#inline-property-calendar .flatpickr-months,
	#inline-property-calendar .flatpickr-weekdays,
	#inline-property-calendar .flatpickr-days,
	#inline-property-calendar + .flatpickr-calendar .flatpickr-months,
	#inline-property-calendar + .flatpickr-calendar .flatpickr-weekdays,
	#inline-property-calendar + .flatpickr-calendar .flatpickr-days,
	#inline-property-calendar .flatpickr-calendar.inline.multiMonth .flatpickr-days {
		flex-direction: column;
		gap: 24px !important;
	}

	#inline-property-calendar .flatpickr-calendar.inline.multiMonth .flatpickr-month {
		width: 100%;
	}

	#inline-property-calendar .flatpickr-day {
		height: 44px !important;
		line-height: 42px !important;
	}
}
