/* Cozy booking form */
.page-id-728 .mphb-booking-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 1rem 1.25rem;
	max-width: 760px;
	margin: 1.25rem 0 3rem;
	padding: clamp(1.25rem, 3vw, 2rem);
	border: 1px solid #dfe5d8;
	border-radius: 16px;
	background: #f7f9f4;
	box-shadow: 0 14px 38px rgba(29, 48, 19, 0.08);
}

.page-id-728 .mphb-booking-form > p {
	margin: 0;
}

.page-id-728 .mphb-booking-form .mphb-required-fields-tip,
.page-id-728 .mphb-booking-form .mphb-errors-wrapper {
	grid-column: 1 / -1;
}

.page-id-728 .mphb-booking-form label {
	display: inline-block;
	margin-bottom: 0.45rem;
	font-weight: 700;
	color: #24351c;
}

.page-id-728 .mphb-booking-form input[type="text"],
.page-id-728 .mphb-booking-form select {
	width: 100%;
	min-height: 50px;
	margin: 0;
	padding: 0.7rem 0.85rem;
	border: 1px solid #aebca5;
	border-radius: 8px;
	background: #fff;
	color: #172112;
	font-size: 1rem;
}

.page-id-728 .mphb-booking-form input[type="text"]:focus,
.page-id-728 .mphb-booking-form select:focus {
	border-color: #4d7c20;
	box-shadow: 0 0 0 3px rgba(77, 124, 32, 0.16);
	outline: none;
}

.page-id-728 .mphb-booking-form .mphb-reserve-btn-wrapper {
	display: flex;
	align-items: end;
}

.page-id-728 .mphb-booking-form .mphb-reserve-btn {
	width: 100%;
	min-height: 50px;
	margin: 0;
	border-radius: 999px;
}

/* Search results: one clear summary instead of three repeated sections. */
.mphb_sc_search_results-wrapper {
	max-width: 820px;
}

.mphb_sc_search_results-wrapper .mphb-reservation-cart,
.mphb_sc_search_results-wrapper > .mphb-room-type {
	display: none !important;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-title {
	margin: 1.5rem 0 0.75rem;
}

.mphb_sc_search_results-wrapper .mphb-recommendation {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 1.25rem 2rem;
	align-items: start;
	margin: 0;
	padding: clamp(1.25rem, 3vw, 2rem);
	border: 1px solid #dfe5d8;
	border-radius: 16px;
	background: #f7f9f4;
	box-shadow: 0 14px 38px rgba(29, 48, 19, 0.08);
}

.mphb_sc_search_results-wrapper .mphb-recommendation-details-list {
	grid-column: 1;
	align-self: start;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-details-list li {
	margin: 0;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-item {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.65rem;
	align-items: baseline;
}

.mphb_sc_search_results-wrapper .mphb-recommedation-item-subtotal,
.mphb_sc_search_results-wrapper .mphb-recommendation-item-count {
	display: none;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-item-link {
	font-size: 1.2rem;
	font-weight: 750;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-item-guests {
	color: #53604d;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-total {
	display: none;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-total-title {
	display: block;
	margin-bottom: 0.2rem;
	font-size: 0.9rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #53604d;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-total-value > .mphb-price {
	font-size: clamp(1.7rem, 4vw, 2.25rem);
	font-weight: 800;
	color: #24351c;
}

.mphb_sc_search_results-wrapper .mphb-tax-information {
	display: block;
	margin-top: 0.15rem;
	font-size: 0.95rem;
	font-weight: 600;
	color: #53604d;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-reserve-button {
	min-width: 190px;
	min-height: 50px;
	grid-column: 2;
	grid-row: 2;
	justify-self: end;
	align-self: start;
	margin: 0;
	border-radius: 999px;
}

.mphb_sc_search_results-wrapper .sia-stay-summary {
	grid-column: 1;
	align-self: start;
	min-width: min(100%, 370px);
}

.mphb_sc_search_results-wrapper .sia-stay-length {
	display: flex;
	align-items: baseline;
	justify-content: flex-start;
	gap: 0.65rem;
	margin: 0 0 0.7rem;
	color: #53604d;
}

.mphb_sc_search_results-wrapper .sia-stay-length strong {
	color: #24351c;
}

.mphb_sc_search_results-wrapper .sia-discount-notice {
	display: grid;
	grid-template-columns: minmax(0, 1fr) max-content;
	align-items: baseline;
	gap: 0.3rem 1rem;
	margin: 0 -0.9rem 0.85rem;
	padding: 0.75rem 0.9rem;
	border-radius: 8px;
	background: #e4f0d8;
	color: #315315;
}

.mphb_sc_search_results-wrapper .sia-price-lines {
	margin: 0;
}

.mphb_sc_search_results-wrapper .sia-price-lines > div {
	display: grid;
	grid-template-columns: minmax(0, 1fr) max-content;
	gap: 1.5rem;
	padding: 0.35rem 0;
	border-bottom: 1px solid #dfe5d8;
}

.mphb_sc_search_results-wrapper .sia-price-lines dt,
.mphb_sc_search_results-wrapper .sia-price-lines dd {
	margin: 0;
}

.mphb_sc_search_results-wrapper .sia-price-lines dd {
	font-weight: 700;
	text-align: right;
	justify-self: end;
	white-space: nowrap;
	color: #24351c;
}

.mphb_sc_search_results-wrapper .sia-price-lines .sia-booking-subtotal {
	padding-top: 0.65rem;
	border-bottom: 0;
	font-size: 1.1rem;
	font-weight: 800;
}

.mphb_sc_search_results-wrapper .sia-booking-subtotal dd {
	font-size: 1.35rem;
}

.mphb_sc_search_results-wrapper .sia-price-lines .sia-climate-fee {
	align-items: center;
	margin: 0.65rem -0.8rem 0;
	padding: 0.7rem 0.8rem;
	border: 1px dashed #aebca5;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.55);
}

.mphb_sc_search_results-wrapper .sia-climate-fee dt span {
	display: block;
	margin-top: 0.1rem;
	font-size: 0.78rem;
	font-weight: 400;
	color: #667060;
}

/* Keep every Search Results section box on one shared outer edge. */
.mphb_sc_search_results-wrapper .mphb-recommendation,
.mphb_sc_search_results-wrapper .sia-payment-plan {
	margin-inline: -0.8rem;
}

.mphb_sc_search_results-wrapper .mphb-recommendation {
	padding-inline: calc(clamp(1.25rem, 3vw, 2rem) + 0.8rem);
}

.mphb_sc_search_results-wrapper .sia-payment-plan {
	padding-inline: 1.8rem;
}

.mphb_sc_search_results-wrapper .sia-change-search {
	grid-column: 2;
	grid-row: 3;
	justify-self: end;
	align-self: start;
	margin: 0.5rem 0 0;
}

.mphb_sc_search_results-wrapper > .mphb-recommendation-reserve-button,
.mphb_sc_search_results-wrapper > .sia-change-search {
	display: block;
	width: fit-content;
	margin-left: auto;
	margin-right: 0;
}

.mphb_sc_search_results-wrapper .sia-change-search a {
	font-weight: 700;
}

/* Keep the two-month date picker usable on smaller screens. */
.datepick-popup {
	z-index: 99999 !important;
}

@media (max-width: 720px) {
	.page-id-728 .mphb-booking-form,
	.mphb_sc_search_results-wrapper .mphb-recommendation {
		grid-template-columns: 1fr;
	}

	.mphb_sc_search_results-wrapper .mphb-recommendation,
	.mphb_sc_search_results-wrapper .sia-payment-plan {
		margin-inline: 0;
	}

	.mphb_sc_search_results-wrapper .mphb-recommendation {
		padding-inline: clamp(1.25rem, 3vw, 2rem);
	}

	.mphb_sc_search_results-wrapper .sia-payment-plan {
		padding-inline: 1rem;
	}

	.page-id-728 .mphb-booking-form .mphb-reserve-btn-wrapper,
	.mphb_sc_search_results-wrapper .mphb-recommendation-reserve-button,
	.mphb_sc_search_results-wrapper .sia-change-search {
		grid-column: 1;
		grid-row: auto;
		width: 100%;
	}

	.mphb_sc_search_results-wrapper .sia-change-search {
		justify-self: start;
	}

	.mphb_sc_search_results-wrapper .sia-stay-summary {
		grid-column: 1;
		width: 100%;
	}

	.datepick-popup .datepick-multi {
		width: min(94vw, 370px) !important;
	}

	.datepick-popup .datepick-month {
		float: none;
		width: 100% !important;
	}

	.datepick-popup .datepick-month + .datepick-month {
		display: none;
	}
}

/*
 * Search-results financial summary
 * Keep the apartment choice, price breakdown and payment schedule within one
 * compact viewport on desktop. The source markup is left untouched so the
 * booking request and calculated values continue to be supplied by MotoPress.
 */
.mphb_sc_search_results-wrapper {
	max-width: 940px;
}

.mphb_sc_search_results-wrapper .mphb-recommendation {
	display: block;
	margin: 0;
	padding: 1.15rem 1.25rem;
	border-radius: 14px;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-details-list {
	display: block;
	margin: 0;
}

/* This is the older, duplicate summary inserted by a legacy callback. */
.mphb_sc_search_results-wrapper .mphb-recommendation > .sia-stay-summary:not(.sia-ssr-summary) {
	display: none;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-item {
	gap: .25rem .7rem;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-item-link {
	font-size: 1.1rem;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-item-guests {
	display: inline;
	margin: 0;
	font-size: .84rem;
}

.mphb_sc_search_results-wrapper .sia-ssr-summary {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
	gap: 1rem;
	align-items: stretch;
	margin-top: .9rem;
}

.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-price-lines,
.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-payment-plan {
	margin: 0;
	padding: 1rem;
	border: 1px solid #dfe5d8;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(29, 48, 19, .045);
}

.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-price-lines > div {
	padding: .42rem 0;
}

.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-price-lines .sia-climate-fee {
	margin: .45rem 0;
	padding: .6rem .7rem;
}

.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-price-lines .sia-contract-total {
	margin-top: .2rem;
	padding-top: .7rem;
}

.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-price-lines .sia-transfer-total {
	margin-top: .55rem;
	padding: .7rem;
	border: 0;
	border-radius: 8px;
	background: #edf5e5;
}

.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-payment-plan {
	display: flex;
	flex-direction: column;
}

.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-payment-plan-heading h3 {
	font-size: 1rem;
}

.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-payment-plan-heading p {
	font-size: .78rem;
}

.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-payment-plan li {
	padding: .65rem 0;
}

.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-payment-plan li.is-initial-payment {
	margin: 0;
	padding: .7rem;
}

.mphb_sc_search_results-wrapper .sia-bottom-continue-request {
	display: block;
	width: min(290px, 100%);
	min-height: 48px;
	margin: .9rem 0 0 auto;
	border-radius: 999px;
}

.mphb_sc_search_results-wrapper .sia-ssr-change-search {
	width: fit-content;
	margin: .55rem 0 0 auto;
}

@media (max-width: 720px) {
	.mphb_sc_search_results-wrapper .sia-ssr-summary {
		grid-template-columns: 1fr;
	}

	.mphb_sc_search_results-wrapper .sia-bottom-continue-request,
	.mphb_sc_search_results-wrapper .sia-ssr-change-search {
		width: 100%;
		margin-right: 0;
		text-align: center;
	}
}

/* Shared Search Results correction: no boxed fee rows; let the schedule size to content. */
.mphb_sc_search_results-wrapper .sia-ssr-summary {
	align-items: start;
}

.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-price-lines .sia-climate-fee {
	margin: 0;
	padding: .42rem 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.mphb_sc_search_results-wrapper .sia-ssr-summary .sia-discount-notice {
	grid-column: 1 / -1;
}
