.booking-form .mphb_sc_search-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 160px auto;
	align-items: end;
	gap: 16px;
	margin: 0;
}

.booking-form .mphb_sc_search-form > p {
	margin: 0;
}


/* Убираем надпись
   "Обязательные для заполнения поля..."
*/
.booking-form .mphb-required-fields-tip {
	display: none;
}


/* =========================
   LABELS
========================= */

.booking-form label {
	display: block;
	margin-bottom: 8px;

	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;

	color: var(--main);
}

.booking-form abbr {
	color: var(--green);
	text-decoration: none;
}


/* =========================
   INPUTS
========================= */

.booking-form input[type="text"],
.booking-form input[type="date"],
.booking-form select {
	width: 100%;
	height: 56px;

	margin: 0;
	padding: 0 48px 0 16px;

	font-family: "Inter", sans-serif;
	font-size: 16px;
	font-weight: 400;

	color: var(--main);
	-webkit-text-fill-color: var(--main);

	background-color: var(--white);
	border: 1px solid rgba(100, 100, 100, 0.35);
	border-radius: 12px;

	outline: none;
	box-shadow: none;

	transition: var(--transition);
}


/* hover */

.booking-form input[type="text"]:hover,
.booking-form input[type="date"]:hover,
.booking-form select:hover {
	border-color: var(--green);
}


/* focus */

.booking-form input[type="text"]:focus,
.booking-form input[type="date"]:focus,
.booking-form select:focus {
	border-color: var(--green);
	box-shadow: 0 0 0 3px rgba(92, 159, 54, 0.12);
}


/* placeholder */

.booking-form input::placeholder {
	color: var(--grey);
	-webkit-text-fill-color: var(--grey);
}
.mphb-rooms-added .mphb-book-button {
    display: none !important;
}

/* =========================
   DATE INPUT
========================= */

.booking-form .mphb-datepick {
	background-image: url(../icon/calendar.svg);
	background-repeat: no-repeat;
	background-position: right 16px center;
	background-size: 20px 20px;
}


/* =========================
   SELECT
========================= */

.booking-form select {
	cursor: pointer;

	appearance: none;
	-webkit-appearance: none;

	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8' fill='none'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%23646464' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

	background-repeat: no-repeat;
	background-position: right 16px center;
	background-size: 14px 8px;
}


/* =========================
   BUTTON
========================= */

.booking-form .mphb_sc_search-submit-button-wrapper {
	margin: 0;
}

.booking-form input[type="submit"] {
	position: relative;

	display: flex;
	align-items: center;
	justify-content: center;

	width: 100%;
	min-width: 210px;
	height: 56px;

	margin: 0;
	padding: 12px 20px;

	font-family: "Inter", sans-serif;
	font-size: 18px;
	font-weight: 500;
	line-height: 110%;

	color: var(--white);

	background-color: var(--green);
	border: 2px solid var(--green);
	border-radius: 12px;

	outline: none;
	cursor: pointer;

	transition: var(--transition);
}

.booking-form input[type="submit"]:hover {
	color: var(--green);
	background-color: transparent;
}

.booking-form input[type="submit"]:focus {
	box-shadow: none;
}


/* =========================
   NICE SELECT
   если он применяется на сайте
========================= */

.booking-form .nice-select {
	width: 100%;
	height: 56px;

	padding-left: 16px;
	padding-right: 42px;

	line-height: 54px;

	color: var(--main);
	background-color: var(--white);

	border: 1px solid rgba(100, 100, 100, 0.35);
	border-radius: 12px;

	transition: var(--transition);
}

.booking-form .nice-select:hover,
.booking-form .nice-select.open {
	border-color: var(--green);
}

.booking-form .nice-select .current {
	position: static;
	top: auto;

	font-size: 16px;
}

.booking-form .nice-select .list {
	width: 100%;
	margin-top: 6px;

	border-radius: 12px;
	box-shadow: var(--shadow);

	overflow: hidden;
}

.booking-form .nice-select .option.focus,
.booking-form .nice-select .option.selected.focus,
.booking-form .nice-select .option:hover {
	background-color: rgba(92, 159, 54, 0.1);
}
.booking-form .mphb_sc_search-form label + br {
	display: none;
}
.datepick {
	border: 1px solid rgba(100, 100, 100, 0.2) !important;
	border-radius: 12px !important;
	background: var(--white) !important;
	box-shadow: var(--shadow) !important;
	overflow: hidden;
	font-family: "Inter", sans-serif !important;
}


/* Верхняя навигация */
.datepick-nav {
	background: var(--white) !important;
	border-bottom: 1px solid rgba(100, 100, 100, 0.15) !important;
}

.datepick-nav a {
	background: transparent !important;
	color: var(--main) !important;
}

.datepick-nav a:hover {
	color: var(--green) !important;
}

.datepick-nav .datepick-cmd-today {
	color: var(--green) !important;
}


/* Заголовок месяца */
.datepick-month-header {
	background: var(--light) !important;
	color: var(--blue) !important;
}


/* Select месяца и года */
.datepick-month-header select,
.datepick-month-header input {
	color: var(--main) !important;
	background: var(--white) !important;
	border: 1px solid rgba(100, 100, 100, 0.25) !important;
	border-radius: 6px;
}


/* Дни недели */
.datepick-month th {
	background: var(--light) !important;
	color: var(--main) !important;
}


/* Ячейки */
.datepick-month td {
	background: var(--white) !important;
}


/* Обычные дни */
.datepick-month td a {
	background: transparent !important;
	color: var(--main) !important;
}


/* Hover */
.datepick-month td a:hover {
	background: rgba(92, 159, 54, 0.12) !important;
	color: var(--green) !important;
}


/* Сегодня */
.datepick-month td .datepick-today {
	background: transparent !important;
	color: var(--green) !important;
	border: 1px solid var(--green) !important;
}


/* Выбранный день */
.datepick-month td .datepick-selected {
	background: var(--green) !important;
	color: var(--white) !important;
}


/* Подсвеченный диапазон */
.datepick-month td .datepick-highlight {
	background: rgba(92, 159, 54, 0.12) !important;
	color: var(--green) !important;
}


/* Недоступные / прошедшие дни */
.datepick-month td .datepick-disabled,
.datepick-month td span {
	color: #d5d5d5 !important;
}


/* Нижняя панель */
.datepick-ctrl {
	background: var(--white) !important;
	border-top: 1px solid rgba(100, 100, 100, 0.15) !important;
}

.datepick-ctrl a {
	background: transparent !important;
	color: var(--main) !important;
}

.datepick-ctrl a:hover {
	color: var(--green) !important;
}
.datepick {
	border-color: rgba(100, 100, 100, 0.14) !important;
}

/* Границы между двумя месяцами */
.datepick-month + .datepick-month {
	border-left-color: rgba(100, 100, 100, 0.12) !important;
}

/* Все ячейки календаря */
.datepick-month td,
.datepick-month th {
	border-color: rgba(100, 100, 100, 0.12) !important;
}

/* Верхняя граница/разделители */
.datepick-month {
	border-color: rgba(100, 100, 100, 0.12) !important;
}

/* Панель навигации сверху */
.datepick-nav {
	border-bottom-color: rgba(100, 100, 100, 0.12) !important;
}

/* Нижняя панель */
.datepick-ctrl {
	border-top-color: rgba(100, 100, 100, 0.12) !important;
}
.booking-form .nice-select .list {
	max-height: 220px;
	overflow-y: auto;
}


/* =========================
   TABLET
========================= */

@media (max-width: 991px) {

	.booking__wrapper {
		padding: 30px;
	}

	.booking-form .mphb_sc_search-form {
		grid-template-columns: 1fr 1fr;
	}


	.booking-form input[type="submit"] {
		width: 100%;
	}

}


/* =========================
   MOBILE
========================= */

@media (max-width: 576px) {

	.booking__wrapper {
		padding: 24px 16px;
		border-radius: 20px;
	}

	.booking__header {
		margin-bottom: 24px;
	}

	.booking-form .mphb_sc_search-form {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.booking-form .mphb_sc_search-submit-button-wrapper {
		grid-column: auto;
	}

	.booking-form input[type="text"],
	.booking-form input[type="date"],
	.booking-form select,
	.booking-form .nice-select,
	.booking-form input[type="submit"] {
		height: 54px;
	}

	.booking-form input[type="submit"] {
		min-width: 0;
		font-size: 16px;
	}

}
/* ==========================================================
   MOTOPRESS HOTEL BOOKING
   SEARCH RESULTS
========================================================== */

.mphb_sc_search_results-wrapper {
	color: var(--main);
	font-family: "Inter", sans-serif;
}

.mphb_sc_search_results-wrapper a {
	color: var(--main);
	transition: var(--transition);
}

.mphb_sc_search_results-wrapper a:hover {
	color: var(--green);
}


/* ==========================================================
   ИНФОРМАЦИЯ О ПОИСКЕ
========================================================== */

.mphb_sc_search_results-info {
	margin: 0 0 25px;
	font-size: 16px;
	line-height: 1.4;
}


/* ==========================================================
   РЕКОМЕНДАЦИЯ
========================================================== */

.mphb-recommendation-title {
	margin: 0 0 20px;

	font-family: var(--second-font);
	font-size: 28px;
	font-weight: 400;
	line-height: 1.2;

	color: var(--blue);
	text-transform: uppercase;
}


/*
 * MotoPress выводит recommendation и reservation cart
 * отдельными элементами.
 */

#mphb-recommendation,
#mphb-reservation-cart {
	padding: 24px;

	background-color: var(--white);

	border-radius: 20px;
	box-shadow: var(--shadow);
}

.mphb-recommendation-title,
#mphb-recommendation,
#mphb-reservation-cart {
	display: none !important;
}


/* Список рекомендованных вариантов */

#mphb-recommendation ul {
	margin: 0;
	padding-left: 20px;
}

#mphb-recommendation li {
	margin-bottom: 5px;
	line-height: 1.4;
}

#mphb-recommendation li:last-child {
	margin-bottom: 0;
}

#mphb-recommendation a {
	text-decoration: underline;
	text-underline-offset: 3px;
}

#mphb-recommendation a:hover {
	color: var(--green);
}


/* Корзина рекомендации */

#mphb-reservation-cart {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

#mphb-reservation-cart p {
	margin: 0 0 15px;
}

#mphb-reservation-cart p:last-child {
	margin-bottom: 0;
}

#mphb-reservation-cart .mphb-price {
	font-family: var(--second-font);
	font-size: 26px;
	font-weight: 400;
	color: var(--green);
}


/* ==========================================================
   КАРТОЧКА НОМЕРА
========================================================== */

.mphb_sc_search_results-wrapper .mphb-room-type {
	display: grid;
	grid-template-columns: minmax(300px, 40%) minmax(0, 1fr);
	column-gap: 30px;
	align-items: start;

	margin: 30px 0 0;
	padding: 24px;

	background-color: var(--white);

	border-radius: 24px;
	box-shadow: var(--shadow);

	overflow: hidden;
}


/* ==========================================================
   ГАЛЕРЕЯ
========================================================== */

/*
 * ВАЖНО:
 * не задаём размеры всем img внутри .mphb-room-type-images.
 *
 * Главное фото и миниатюры стилизуем отдельно.
 */

.mphb_sc_search_results-wrapper .mphb-room-type-images {
	grid-column: 1;
	grid-row: 1 / 20;

	min-width: 0;
	width: 100%;

	margin: 0;
}


/* Основной слайдер */

.mphb_sc_search_results-wrapper .mphb-gallery-main-slider {
	width: 100%;

	margin: 0 0 8px;

	border-radius: 16px;
	overflow: hidden;
}

.mphb_sc_search_results-wrapper
.mphb-gallery-main-slider .slides {
	margin: 0;
	padding: 0;

	list-style: none;
}

.mphb_sc_search_results-wrapper
.mphb-gallery-main-slider .slides > li {
	margin: 0;
}

.mphb_sc_search_results-wrapper
.mphb-gallery-main-slider .slides img {
	display: block;

	width: 100%;
	height: 340px;

	object-fit: cover;

	border-radius: 16px;
}


/* Слайдер миниатюр */

.mphb_sc_search_results-wrapper
.mphb-gallery-thumbnail-slider {
	width: 100%;
	margin: 8px 0 0;
	overflow: hidden;
}

.mphb_sc_search_results-wrapper
.mphb-gallery-thumbnail-slider .flex-viewport {
	overflow: hidden;
}

.mphb_sc_search_results-wrapper
.mphb-gallery-thumbnail-slider .slides {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mphb_sc_search_results-wrapper
.mphb-gallery-thumbnail-slider .slides > li {
	width: 90px !important;
	margin-right: 8px !important;
	cursor: pointer;
}

.mphb_sc_search_results-wrapper
.mphb-gallery-thumbnail-slider .slides img {
	display: block;

	width: 90px !important;
	height: 65px !important;

	object-fit: cover;

	border-radius: 8px;

	opacity: 0.65;
	transition: var(--transition);
}

.mphb_sc_search_results-wrapper
.mphb-gallery-thumbnail-slider .slides > li:hover img,
.mphb_sc_search_results-wrapper
.mphb-gallery-thumbnail-slider .slides > li.flex-active-slide img {
	opacity: 1;
}

.mphb_sc_search_results-wrapper .mphb-rooms-quantity-wrapper {
	display: none !important;
}


/* ==========================================================
   НАЗВАНИЕ
========================================================== */

.mphb_sc_search_results-wrapper
.mphb-room-type-title {
	grid-column: 2;

	margin: 0 0 12px;

	font-family: var(--second-font);
	font-size: 24px;
	font-weight: 400;
	line-height: 1.2;

	color: var(--blue);
	text-transform: uppercase;
}

.mphb_sc_search_results-wrapper
.mphb-room-type-title a {
	font-family: inherit;
	color: var(--blue);
	text-decoration: none;
}

.mphb_sc_search_results-wrapper
.mphb-room-type-title a:hover {
	color: var(--green);
}


/* ==========================================================
   ОПИСАНИЕ
========================================================== */

.mphb_sc_search_results-wrapper
.mphb-room-type-description {
	grid-column: 2;

	margin: 0 0 18px;

	font-size: 15px;
	line-height: 1.5;
}

.mphb_sc_search_results-wrapper
.mphb-room-type-description p:last-child {
	margin-bottom: 0;
}


/* ==========================================================
   ХАРАКТЕРИСТИКИ
========================================================== */

.mphb_sc_search_results-wrapper
.mphb-loop-room-type-attributes {
	grid-column: 2;

	display: flex;
	flex-wrap: wrap;
	gap: 7px;

	margin: 0 0 18px;
	padding: 0;

	list-style: none;
}

.mphb_sc_search_results-wrapper
.mphb-loop-room-type-attributes li {
	margin: 0;
	padding: 7px 10px;

	font-size: 13px;
	line-height: 1.3;

	background-color: var(--light);

	border-radius: 8px;
}

.mphb_sc_search_results-wrapper
.mphb-loop-room-type-attributes li::marker {
	content: "";
}


/* ==========================================================
   ЦЕНА
========================================================== */

.mphb_sc_search_results-wrapper
.mphb-regular-price {
	grid-column: 2;

	margin: 10px 0 18px;

	font-size: 15px;
}

.mphb_sc_search_results-wrapper
.mphb-price {
	font-family: var(--second-font);

	font-size: 27px;
	font-weight: 400;

	color: var(--green);
}

.mphb_sc_search_results-wrapper
.mphb-price-period {
	font-family: "Inter", sans-serif;
	font-size: 13px;

	color: var(--grey);
}


/* ==========================================================
   DETAILS
========================================================== */

.mphb_sc_search_results-wrapper
.mphb-view-details-button-wrapper {
	grid-column: 2;

	margin: 0 0 15px;
}


/* ==========================================================
   БРОНИРОВАНИЕ
========================================================== */

.mphb_sc_search_results-wrapper
.mphb-reserve-room-section {
	grid-column: 2;

	margin: 0;
}

.mphb_sc_search_results-wrapper
.mphb-rooms-quantity-wrapper {
	margin: 0 0 12px;
}


/* Select */

.mphb_sc_search_results-wrapper select {
	min-height: 42px;

	padding: 7px 38px 7px 12px;

	font-family: "Inter", sans-serif;
	font-size: 15px;

	color: var(--main);

	background-color: var(--white);

	border: 1px solid rgba(100, 100, 100, 0.25);
	border-radius: 10px;

	outline: none;

	transition: var(--transition);
}

.mphb_sc_search_results-wrapper select:hover,
.mphb_sc_search_results-wrapper select:focus {
	border-color: var(--green);
}


/* ==========================================================
   КНОПКИ
========================================================== */

.mphb_sc_search_results-wrapper input[type="submit"],
.mphb_sc_search_results-wrapper button,
.mphb_sc_search_results-wrapper .button,
.mphb_sc_search_results-wrapper .mphb-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	min-height: 46px;

	padding: 10px 18px;

	font-family: "Inter", sans-serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.1;

	border-radius: 12px;

	text-decoration: none;
	outline: none;
	box-shadow: none;

	cursor: pointer;

	transition: var(--transition);
}


.mphb_sc_search_results-wrapper
.mphb-view-details-button-wrapper {
	grid-column: 2;
	margin: 0 0 15px;
}

.mphb_sc_search_results-wrapper
.mphb-view-details-button {
	display: inline;

	min-height: auto;
	padding: 0;

	font-family: "Inter", sans-serif;
	font-size: 16px;
	font-weight: 500;

	color: var(--green) !important;
	background: transparent !important;

	border: none !important;
	border-radius: 0;

	text-decoration: underline;
	text-underline-offset: 4px;

	cursor: pointer;

	transition: var(--transition);
}

.mphb_sc_search_results-wrapper
.mphb-view-details-button:hover {
	color: var(--blue) !important;
	background: transparent !important;
}

/* --------------------------------
   Основная: Забронировать
-------------------------------- */

.mphb_sc_search_results-wrapper input[type="submit"],
.mphb_sc_search_results-wrapper button,
.mphb_sc_search_results-wrapper .button:not(.mphb-view-details-button),
.mphb_sc_search_results-wrapper .mphb-button:not(.mphb-view-details-button) {
	color: var(--white) !important;

	background-color: var(--green) !important;

	border: 2px solid var(--green) !important;
}

.mphb_sc_search_results-wrapper input[type="submit"]:hover,
.mphb_sc_search_results-wrapper button:hover,
.mphb_sc_search_results-wrapper .button:not(.mphb-view-details-button):hover,
.mphb_sc_search_results-wrapper .mphb-button:not(.mphb-view-details-button):hover {
	color: var(--green) !important;
	background-color: transparent !important;
}


/* ==========================================================
   NICE SELECT
========================================================== */

.mphb_sc_search_results-wrapper .nice-select {
	height: 42px;

	padding-left: 12px;
	padding-right: 38px;

	line-height: 40px;

	color: var(--main);
	background-color: var(--white);

	border: 1px solid rgba(100, 100, 100, 0.25);
	border-radius: 10px;

	transition: var(--transition);
}

.mphb_sc_search_results-wrapper .nice-select:hover,
.mphb_sc_search_results-wrapper .nice-select.open {
	border-color: var(--green);
}

.mphb_sc_search_results-wrapper
.nice-select .current {
	position: static;
	top: auto;

	font-size: 15px;
}

.mphb_sc_search_results-wrapper
.nice-select .list {
	width: 100%;
	max-height: 220px;

	overflow-y: auto;

	border-radius: 10px;
	box-shadow: var(--shadow);
}

.mphb_sc_search_results-wrapper
.nice-select .option:hover,
.mphb_sc_search_results-wrapper
.nice-select .option.focus,
.mphb_sc_search_results-wrapper
.nice-select .option.selected.focus {
	background-color: rgba(92, 159, 54, 0.1);
}




/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 991px) {

	#mphb-recommendation,
	#mphb-reservation-cart {
		margin-bottom: 20px;
	}

	.mphb_sc_search_results-wrapper
	.mphb-room-type {
		grid-template-columns: 1fr;

		gap: 18px;

		padding: 20px;
	}

	.mphb_sc_search_results-wrapper
	.mphb-room-type-images,
	.mphb_sc_search_results-wrapper
	.mphb-loop-room-thumbnail,
	.mphb_sc_search_results-wrapper
	.mphb-room-type-title,
	.mphb_sc_search_results-wrapper
	.mphb-room-type-description,
	.mphb_sc_search_results-wrapper
	.mphb-loop-room-type-attributes,
	.mphb_sc_search_results-wrapper
	.mphb-view-details-button-wrapper,
	.mphb_sc_search_results-wrapper
	.mphb-regular-price,
	.mphb_sc_search_results-wrapper
	.mphb-reserve-room-section {
		grid-column: 1;
		grid-row: auto;
	}

	.mphb_sc_search_results-wrapper
	.mphb-gallery-main-slider .slides img,
	.mphb_sc_search_results-wrapper
	.mphb-loop-room-thumbnail img {
		height: 320px;
	}

}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 576px) {

	.mphb-recommendation-title {
		font-size: 22px;
	}

	#mphb-recommendation,
	#mphb-reservation-cart {
		padding: 18px;

		border-radius: 16px;
	}

	.mphb_sc_search_results-wrapper
	.mphb-room-type {
		padding: 15px;

		border-radius: 18px;
	}

	.mphb_sc_search_results-wrapper
	.mphb-gallery-main-slider .slides img,
	.mphb_sc_search_results-wrapper
	.mphb-loop-room-thumbnail img {
		height: 240px;

		border-radius: 12px;
	}

	.mphb_sc_search_results-wrapper
	.mphb-gallery-thumbnail-slider .slides img {
		height: 55px;
	}

	.mphb_sc_search_results-wrapper
	.mphb-room-type-title {
		font-size: 20px;
	}

	.mphb_sc_search_results-wrapper
	.mphb-room-type-description {
		font-size: 14px;
	}

	.mphb_sc_search_results-wrapper input[type="submit"],
	.mphb_sc_search_results-wrapper button,
	.mphb_sc_search_results-wrapper .button,
	.mphb_sc_search_results-wrapper .mphb-button {
		width: 100%;
	}

}

/* ==========================================================
   MOTOPRESS HOTEL BOOKING
   CHECKOUT
========================================================== */

.mphb_sc_checkout-wrapper {
	color: var(--main);
	font-family: "Inter", sans-serif;
}


/* ==========================================================
   ЗАГОЛОВКИ
========================================================== */

.mphb_sc_checkout-wrapper h2,
.mphb_sc_checkout-wrapper h3,
.mphb_sc_checkout-wrapper h4 {
	font-family: var(--second-font);
	font-weight: 400;
	line-height: 1.2;
	color: var(--blue);
}

.mphb_sc_checkout-wrapper h2 {
	margin-bottom: 24px;
	font-size: 30px;
}

.mphb_sc_checkout-wrapper h3 {
	margin: 30px 0 18px;
	font-size: 24px;
}

.mphb_sc_checkout-wrapper h4 {
	margin: 20px 0 14px;
	font-size: 20px;
}


/* ==========================================================
   ОБЩИЕ КАРТОЧКИ
========================================================== */

.mphb_sc_checkout-wrapper
.mphb-check-in-date,
.mphb_sc_checkout-wrapper
.mphb-check-out-date,
.mphb_sc_checkout-wrapper
.mphb-room-details,
.mphb_sc_checkout-wrapper
.mphb-price-breakdown,
.mphb_sc_checkout-wrapper
.mphb-customer-details {
	margin-bottom: 24px;
}


/* ==========================================================
   ДАТЫ БРОНИРОВАНИЯ
========================================================== */

.mphb_sc_checkout-wrapper
.mphb-check-in-date,
.mphb_sc_checkout-wrapper
.mphb-check-out-date {
	font-size: 16px;
	line-height: 1.5;
}

.mphb_sc_checkout-wrapper
.mphb-check-in-date strong,
.mphb_sc_checkout-wrapper
.mphb-check-out-date strong {
	font-weight: 600;
	color: var(--main);
}


/* ==========================================================
   БЛОК РАЗМЕЩЕНИЯ
========================================================== */

.mphb_sc_checkout-wrapper
.mphb-room-details {
	padding: 24px;
    width: 80%;
	background: var(--white);

	border-radius: 20px;
	box-shadow: var(--shadow);
}

.mphb_sc_checkout-wrapper
.mphb-room-details a {
	color: var(--main);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.mphb_sc_checkout-wrapper
.mphb-room-details a:hover {
	color: var(--green);
}


/* ==========================================================
   ПОЛЯ ГОСТЕЙ
========================================================== */

.mphb_sc_checkout-wrapper
.mphb-room-details label,
.mphb_sc_checkout-wrapper
.mphb-customer-details label {
	display: block;

	margin-bottom: 7px;

	font-size: 15px;
	font-weight: 500;
	line-height: 1.2;
}

.mphb_sc_checkout-wrapper
abbr {
	color: var(--green);
	text-decoration: none;
}


/* ==========================================================
   INPUT / SELECT / TEXTAREA
========================================================== */

.mphb_sc_checkout-wrapper
input[type="text"],
.mphb_sc_checkout-wrapper
input[type="email"],
.mphb_sc_checkout-wrapper
input[type="tel"],
.mphb_sc_checkout-wrapper
input[type="number"],
.mphb_sc_checkout-wrapper
select,
.mphb_sc_checkout-wrapper
textarea {
	width: 100%;

	min-height: 50px;

	padding: 10px 14px;

	font-family: "Inter", sans-serif;
	font-size: 16px;

	color: var(--main);

	background: var(--white);

	border: 1px solid rgba(100, 100, 100, 0.25);
	border-radius: 10px;

	outline: none;
	box-shadow: none;

	transition: var(--transition);
}

.mphb_sc_checkout-wrapper
textarea {
	min-height: 110px;
	resize: vertical;
}

.mphb_sc_checkout-wrapper
input:hover,
.mphb_sc_checkout-wrapper
select:hover,
.mphb_sc_checkout-wrapper
textarea:hover {
	border-color: var(--green);
}

.mphb_sc_checkout-wrapper
input:focus,
.mphb_sc_checkout-wrapper
select:focus,
.mphb_sc_checkout-wrapper
textarea:focus {
	border-color: var(--green);

	box-shadow:
		0 0 0 3px rgba(92, 159, 54, 0.1);
}


/* ==========================================================
   NICE SELECT
========================================================== */

.mphb_sc_checkout-wrapper
.nice-select {
	width: 100%;
	height: 50px;
    margin-bottom: 12px;
	padding-left: 14px;
	padding-right: 40px;

	line-height: 48px;

	color: var(--main);
	background: var(--white);

	border: 1px solid rgba(100, 100, 100, 0.25);
	border-radius: 10px;

	transition: var(--transition);
}

.mphb_sc_checkout-wrapper
.nice-select:hover,
.mphb_sc_checkout-wrapper
.nice-select.open {
	border-color: var(--green);
}

.mphb_sc_checkout-wrapper
.nice-select .current {
	position: static;
	top: auto;

	font-size: 16px;
}

.mphb_sc_checkout-wrapper
.nice-select .list {
	width: 100%;

	max-height: 220px;
	overflow-y: auto;

	border-radius: 10px;

	box-shadow: var(--shadow);
}

.mphb_sc_checkout-wrapper
.nice-select .option:hover,
.mphb_sc_checkout-wrapper
.nice-select .option.focus,
.mphb_sc_checkout-wrapper
.nice-select .option.selected.focus {
	background-color: rgba(92, 159, 54, 0.1);
}


/* ==========================================================
   РАЗБИВКА ЦЕНЫ
========================================================== */

.mphb_sc_checkout-wrapper
.mphb-price-breakdown {
	padding: 24px;

	background: var(--white);

	border-radius: 20px;
	box-shadow: var(--shadow);
}

.mphb_sc_checkout-wrapper
.mphb-price-breakdown table {
	width: 100%;

	border-collapse: collapse;
}

.mphb_sc_checkout-wrapper
.mphb-price-breakdown th,
.mphb_sc_checkout-wrapper
.mphb-price-breakdown td {
	padding: 10px;

	border-bottom:
		1px solid rgba(100, 100, 100, 0.1);

	text-align: left;
}

.mphb_sc_checkout-wrapper
.mphb-price-breakdown tr:last-child th,
.mphb_sc_checkout-wrapper
.mphb-price-breakdown tr:last-child td {
	border-bottom: none;
}

.mphb_sc_checkout-wrapper
.mphb-price-breakdown .mphb-price {
	font-family: var(--second-font);
	font-size: 22px;

	color: var(--green);
}

.mphb_sc_checkout-wrapper label + br {
	display: none;
}

.mphb_sc_checkout-wrapper label {
	display: block;
	margin-bottom: 8px;
}
.mphb_sc_checkout-wrapper p {
	margin-bottom: 16px;
}


/* ==========================================================
   ДАННЫЕ ГОСТЯ
========================================================== */

.mphb_sc_checkout-wrapper
.mphb-customer-details {
	padding: 24px;
    width: 80%;
	background: var(--white);

	border-radius: 20px;
	box-shadow: var(--shadow);
}

.mphb_sc_checkout-wrapper
.mphb-customer-details p {
	margin-bottom: 16px;
}

.mphb_sc_checkout-wrapper
.mphb-customer-details p:last-child {
	margin-bottom: 0;
}

.mphb_sc_checkout-services-list {
	padding-left: 0;
}


/* ==========================================================
   КНОПКА ПОДТВЕРЖДЕНИЯ
========================================================== */

.mphb_sc_checkout-wrapper
input[type="submit"],
.mphb_sc_checkout-wrapper
button,
.mphb_sc_checkout-wrapper
.button,
.mphb_sc_checkout-wrapper
.mphb-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	min-height: 50px;

	padding: 12px 22px;

	font-family: "Inter", sans-serif;
	font-size: 17px;
	font-weight: 500;

	color: var(--white) !important;

	background: var(--green) !important;

	border: 2px solid var(--green) !important;
	border-radius: 12px;

	outline: none;
	box-shadow: none;

	cursor: pointer;

	transition: var(--transition);
}

.mphb_sc_checkout-wrapper
input[type="submit"]:hover,
.mphb_sc_checkout-wrapper
button:hover,
.mphb_sc_checkout-wrapper
.button:hover,
.mphb_sc_checkout-wrapper
.mphb-button:hover {
	color: var(--green) !important;
	background: transparent !important;
}

.mphb_sc_checkout-wrapper .mphb-total-price {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
    width: 80%;
	margin: 30px 0 20px;
	padding: 20px 24px;

	font-size: 18px;
	font-weight: 500;

	background-color: var(--white);

	border: 1px solid rgba(92, 159, 54, 0.2);
	border-radius: 16px;

	box-shadow: var(--shadow);
}

.mphb_sc_checkout-wrapper .mphb-total-price strong {
	font-family: var(--second-font);
	font-size: 28px;
	font-weight: 400;
	color: var(--green);
}

/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 576px) {

	.mphb_sc_checkout-wrapper h2 {
		font-size: 24px;
	}

	.mphb_sc_checkout-wrapper h3 {
		font-size: 21px;
	}

	.mphb_sc_checkout-wrapper
	.mphb-room-details,
	.mphb_sc_checkout-wrapper
	.mphb-price-breakdown,
	.mphb_sc_checkout-wrapper
	.mphb-customer-details {
		padding: 18px;

		border-radius: 16px;
	}

	.mphb_sc_checkout-wrapper
	input[type="submit"],
	.mphb_sc_checkout-wrapper
	button,
	.mphb_sc_checkout-wrapper
	.button,
	.mphb_sc_checkout-wrapper
	.mphb-button {
		width: 100%;
	}

}
@media (max-width: 576px) {

	.datepick {
		width: calc(100vw - 30px) !important;
		max-width: 100% !important;
		left: 15px !important;
		right: 15px !important;
	}

	/* показываем один месяц */
	.datepick-month {
		width: 100% !important;
		float: none !important;
	}

	.datepick-month + .datepick-month {
		display: none !important;
	}

	/* чтобы таблица занимала всю ширину */
	.datepick-month table {
		width: 100% !important;
		table-layout: fixed;
	}

	/* компактнее ячейки */
	.datepick-month th,
	.datepick-month td {
		padding: 0 !important;
	}

	.datepick-month td a,
	.datepick-month td span {
		display: flex;
		align-items: center;
		justify-content: center;

		min-height: 38px;
		padding: 5px 0 !important;
	}

	/* верхняя навигация */
	.datepick-nav {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	/* нижняя панель */
	.datepick-ctrl {
		display: flex;
		justify-content: space-between;
	}

}