.bk-booking-container {
	box-shadow: 0 10px 30px 0 rgb(115 125 146 / 11%), 0 1px 2px 0 rgb(160 170 185 / 60%);
	border: 1px solid #efefef;
	border-radius: 8px;
	padding-bottom:20px;

}
.bk-datepicker-container-visible {
	visibility: visible !important;
	opacity: 1 !important;
}

#bk-time-container, #bk-persons-container, #bk-actions-container,
#bk-user-registration-container, #bk-user-login-container {
	visibility: hidden;
	opacity: 0;
	transition: visibility 0s, opacity 0.5s linear;
}

#bk-time-container, #bk-persons-container, #bk-actions-container, .bk-booking-title,
.datepicker-inline {
	min-width:400px;
	text-align: center;
	display: inline-block;
}

.bk-booking-title {
	display: inline-block;
	text-align: center;
	border-bottom: 1px solid #549134;
	line-height: 6px;
	margin: 15px 0;
	font-size: 16px;
	padding-top:15px;
}

#bk-booking-summary-container .bk-booking-title {
	width:100%;
	min-width: 100%;
	text-align: left;
	padding-left:20px;
}

.bk-booking-title span {
	background-color: white;
	padding:0 10px;
	color: #549134;
}


.datepicker-inline {
	display: inline-block;
}

.datepicker-days {
	text-align: center;
	display: inline-block;
}

.datepicker td, .datepicker th {
	width:50px;
	height: 45px;
	font-size: 14px;
	line-height: 33px;
	padding: 2px !important;
	transition: line-height 0.2s ease;
}

.datepicker th {
	color: #646464;
}

.datepicker table tr td.day:hover,
.datepicker table tr td.day.focused {
	background-color: transparent;
	line-height: 28px;
}

.datepicker table thead tr th {
	background-color: transparent !important;
}

.datepicker .datepicker-switch:hover, .datepicker .prev:hover, .datepicker .next:hover, .datepicker tfoot tr th:hover {
	background: transparent;
}

.datepicker-day-container, .datepicker-time-container,
.datepicker-persons-container {
	width:40px;
	height: 35px;
	background-color: #d9ffd9;
	border-radius: 5px;
	margin: 5px;
	border: 1px solid #a9ffa9;
	box-shadow: 1px 1px 1px 1px rgb(0 0 0 / 5%);
	cursor: pointer;
}

.disabled .datepicker-day-container {
	background-color: #f7e9e9;
	border-color: #fbe1e1;
	color:#752f2f;
}

.active .datepicker-day-container,
.datepicker-time-container.active,
.datepicker-persons-container.active,
.bk-booking-next, .bk-booking-prev,
.bk-booking-register.active,
.bk-user-submit {
	background-color: #4b64e8;
	border-color: #4b64e8;
	color: #ffffff;
	font-weight: bold;
}

.bk-booking-next:hover,  .bk-booking-register:hover,
.bk-user-submit:hover {
	background-color: #4b64e8 !important;
	border-color: #4b64e8 !important;
	color: #ffffff !important;
	font-weight: bold;
}

.datepicker table tr td.active, .datepicker table tr td.active:hover, .datepicker table tr td.active.disabled, .datepicker table tr td.active.disabled:hover {
	background-color: transparent !important;
	background-image: none;
}

.datepicker-time-container, .datepicker-persons-container {
	width: 70px;
	display: inline-block;
	font-size: 14px;
	height: 25px;
	line-height: 22px;
	transition: border-color 0.2s ease;
	cursor: pointer;
}

.datepicker-time-container:hover, .datepicker-persons-container:hover,
.bk-booking-register:hover {
	border-color: #08cc08;
}

.bk-booking-next, .bk-booking-prev, .bk-booking-register, .bk-user-submit {
	width: 100px;
	height: 35px;
	line-height: 33px;
	font-size: 14px;
	padding: 0 10px;
	margin: 0;
	border-width: 1px;
	border-radius: 5px;
	font-weight: normal;
	text-align: right;
}

.bk-booking-prev, .bk-booking-prev:hover {
	text-align: left;
	background-color: transparent !important;
	border: none !important;
	color: #495057 !important;
}

.bk-booking-next:focus, .bk-booking-prev:focus,
.bk-booking-register:focus,
.bk-booking-container input[type='text']:focus,
.bk-booking-container input[type='email']:focus,
.bk-booking-container input[type='password']:focus,
.bk-booking-container input[type='checkbox']:focus,
.bk-user-submit:focus,
.bk-booking-container textarea:focus {
	outline: 0;
}

.bk-user-submit[disabled],
.bk-booking-next[disabled] {
	background-color: #484848;
	pointer-events: none;
}

.bk-booking-register {
	width:45%;
	text-align: center;
	background-color: #d9ffd9;
	border-radius: 5px;
	margin: 5px;
	border: 1px solid #a9ffa9;
	box-shadow: 1px 1px 1px 1px rgb(0 0 0 / 5%);
	color:#3d464d;
}

#bk-booking-summary-container {
	border-left: 1px solid #efefef;
}

#bk-booking-summary-container h5 {
	display: block;
	font-size:14px;
	font-weight: normal;
	padding-left:10px;
}

.bk-booking-summary-subtitle {
	color: #4b64e8;
}

.bk-booking-summary-image, .bk-booking-summary-description {
	display: inline-block;
	width:30%;
	vertical-align: top;
	padding-top:10px;
}

.bk-booking-summary-image img {
	border-radius: 5px;
	box-shadow: 1px 1px 1px 1px rgb(0 0 0 / 5%);
}

.bk-booking-summary-description {
	display: inline-block;
	width:65%;
}

.step-container {
	display: none;
}

.bk-booking-container input[type='text'],
.bk-booking-container input[type='email'],
.bk-booking-container input[type='password'],
.bk-booking-container input[type='checkbox'],
.bk-booking-container textarea {
	margin-top:10px;
	width: calc(45% - 10px);
	height: 35px;
	padding: 10px;
	font-size: 14px;
	font-weight: normal;
	line-height: 35px;
	color: #495057;
	border-radius: 2px;
	background-color: #fff;
	border: 1px solid #ced4da;
}

.bk-booking-container input[type='checkbox'] {
	width: auto;
	height: auto;
	border: none;
	margin-left: 35px;
}

.bk-booking-container textarea {
	width: calc(90% - 16px);
	height: 160px;
	display: inline-block;
	line-height: 26px;
	resize: none;
}

#booking-login-result, #booking-registration-result,
#booking-finalize-result, #booking-finalize-text {
	font-size: 14px;
	line-height:14px;
	display: block;
	color: #ab1919;
	text-align: center;
}

#booking-finalize-text {
	color: #0a0a0a;
	margin-bottom:30px;
}

.bk-button-container {
	width: 48%;
	display: inline-block;
}

@media screen and (max-width: 768px) {
	.col-sm-0 {
		display: none !important;
	}

	.bk-padding-sm-none {
		padding: 0 !important;
	}

	#bk-time-container, #bk-persons-container, #bk-actions-container, .bk-booking-title,
	.datepicker-inline {
		width: 350px;
		min-width:350px;
		max-width: 350px;
	}

	.datepicker td, .datepicker th,
	.datepicker-day-container {
		width:35px;
		height: 35px;
	}

	.bk-booking-container {
		box-shadow: none;
		border: none;
		border-radius: 0;
	}
}


#booking-finalize-paypal-canvas,
#booking-finalize-carnet-canvas {
	overflow: hidden;
	display: block;
	border:1px solid #efefef;
	height:65px;
	padding-left:10px;
	padding-right:10px;
	padding-bottom:10px;
	transition: height 0.3s ease, background-color 0.3s ease;
	margin-bottom:10px;
	font-size:14px;

}
#booking-finalize-paypal-canvas.active,
#booking-finalize-carnet-canvas.active {
	height: auto;
	background-color: #e2eeff;
}

#booking-finalize-paypal-canvas-title,
#booking-finalize-carnet-canvas-title {
	height:65px;
	font-size:14px;
	cursor: pointer;
}

#booking-finalize-paypal-canvas:hover,
#booking-finalize-carnet-canvas:hover {
	background-color: #e2eeff;
}

.bk-booking-next[bk-value="4"][disabled="disabled"] {
	display: none;
}