/* Booking search 01 — floating panel over hero */
.bpro-section--booking-search{
	padding:0 0 var(--bpro-space-5);
	margin-top:-4.5rem;
	position:relative;
	z-index:8;
	background:transparent;
}
.bpro-booking-search-01{
	padding:0;
}
.bpro-booking-search-01__panel{
	background:var(--bpro-surface);
	border:1px solid var(--bpro-border);
	box-shadow:0 22px 56px rgba(49,49,49,.12);
	padding:1.75rem 1.75rem 1.5rem;
}
.bpro-booking-search-01__head{
	margin-bottom:1.25rem;
	max-width:40rem;
}
.bpro-booking-search-01__head .bpro-section__title{
	font-size:clamp(1.75rem,2.6vw,2.35rem);
	margin:0 0 .4rem;
	color:var(--bpro-heading);
}
.bpro-booking-search-01__head .bpro-section__subtitle{
	margin:0;
	color:var(--bpro-muted);
	font-size:.95rem;
}
.bpro-booking-search-01 .bs-search{
	margin:0;
}
.bpro-booking-search-01 .bs-search-form{
	background:transparent !important;
	border:0 !important;
	border-radius:0 !important;
	box-shadow:none !important;
	padding:0 !important;
	max-width:none !important;
}
.bpro-booking-search-01 .bs-search-form__fields{
	display:grid !important;
	grid-template-columns:repeat(5, minmax(0, 1fr));
	gap:1rem .9rem !important;
	margin:0 !important;
	align-items:end;
}
.bpro-booking-search-01 .bs-search-form__fields > label{
	display:flex;
	flex-direction:column;
	gap:.4rem;
	margin:0;
	min-width:0;
}
.bpro-booking-search-01 .bs-search-form__fields > label > span{
	font-size:.65rem;
	letter-spacing:.12em;
	text-transform:uppercase;
	color:var(--bpro-muted);
	font-weight:500;
}
.bpro-booking-search-01 .bs-input,
.bpro-booking-search-01 input,
.bpro-booking-search-01 select{
	width:100%;
	min-height:46px;
	padding:.7rem .85rem;
	border:1px solid var(--bpro-border);
	border-radius:0;
	background:#fffcf8;
	color:var(--bpro-text);
	font:inherit;
	font-size:.92rem;
}
.bpro-booking-search-01 .bs-input:focus,
.bpro-booking-search-01 input:focus,
.bpro-booking-search-01 select:focus{
	outline:none;
	border-color:var(--bpro-heading);
}
.bpro-booking-search-01 .bs-btn,
.bpro-booking-search-01 button[type="submit"]{
	min-height:46px;
	padding:.75rem 1.25rem;
	background:var(--bpro-button) !important;
	color:var(--bpro-button-text) !important;
	border:0 !important;
	border-radius:0 !important;
	letter-spacing:.12em;
	text-transform:uppercase;
	font-weight:500;
	font-size:.75rem;
	cursor:pointer;
	width:100%;
}
.bpro-booking-search-01 .bs-btn:hover,
.bpro-booking-search-01 button[type="submit"]:hover{
	background:var(--bpro-button-hover) !important;
}
.bpro-booking-search-01 .bs-search-results{
	margin-top:1.25rem;
}
.bpro-booking-search-01 .bs-search-results:empty{display:none}

@media(max-width:1100px){
	.bpro-booking-search-01 .bs-search-form__fields{
		grid-template-columns:repeat(3, minmax(0, 1fr));
	}
}
@media(max-width:768px){
	.bpro-section--booking-search{margin-top:-2rem;padding-bottom:var(--bpro-space-4)}
	.bpro-booking-search-01__panel{padding:1.25rem}
	.bpro-booking-search-01 .bs-search-form__fields{
		grid-template-columns:repeat(2, minmax(0, 1fr));
	}
}
@media(max-width:520px){
	.bpro-booking-search-01 .bs-search-form__fields{
		grid-template-columns:1fr;
	}
}
