/* Cabecera de servicio integrada en los diálogos de reserva Amelia. */
:is(.am-forms-dialog, .amelia-v2-booking-dialog) .el-dialog__header {
	position: relative !important;
	z-index: 20 !important;
}

:is(.am-forms-dialog, .amelia-v2-booking-dialog) .el-dialog__headerbtn {
	z-index: 30 !important;
	color: #9A7540 !important;
	pointer-events: auto;
}

:is(.am-forms-dialog, .amelia-v2-booking-dialog) .el-dialog__headerbtn .el-dialog__close,
:is(.am-forms-dialog, .amelia-v2-booking-dialog) .el-dialog__headerbtn .am-icon-close {
	color: #9A7540 !important;
}

/* Amelia usa un glifo propio que en algunos temas queda invisible; dibujamos la X de forma explícita. */
:is(.am-forms-dialog, .amelia-v2-booking-dialog) .el-dialog__headerbtn .am-icon-close::before {
	content: "×" !important;
	display: block;
	font-family: Arial, sans-serif !important;
	font-size: 24px;
	font-weight: 400;
	line-height: 16px;
}

:is(.am-forms-dialog, .amelia-v2-booking-dialog) .el-dialog__body > .jc-reserva__cabecera {
	position: sticky;
	top: 0;
	z-index: 5;
	margin: 0;
	padding: 20px 28px 18px;
	background: #FBF6EF;
	border-bottom: 1px solid rgba(176, 141, 87, .35);
	color: #251E27;
}

:is(.am-forms-dialog, .amelia-v2-booking-dialog) .jc-reserva__modalidad {
	margin: 0 0 8px;
	color: #9A7540;
	font-family: 'Mulish', sans-serif;
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .16em;
	line-height: 1.4;
	text-transform: uppercase;
}

:is(.am-forms-dialog, .amelia-v2-booking-dialog) .jc-reserva__resumen {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 18px;
}

:is(.am-forms-dialog, .amelia-v2-booking-dialog) .jc-reserva__nombre {
	margin: 0;
	color: #2B0A4F;
	font-family: 'Cormorant Garamond', serif;
	font-size: min(1.8em, 1.8rem);
	font-weight: 600;
	line-height: 1.1;
}

:is(.am-forms-dialog, .amelia-v2-booking-dialog) .jc-reserva__precio {
	flex: 0 0 auto;
	margin: 0;
	color: #67317D;
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-weight: 600;
	line-height: 1;
}

@media (max-width: 600px) {
	:is(.am-forms-dialog, .amelia-v2-booking-dialog) .el-dialog__body > .jc-reserva__cabecera {
		padding: 16px 18px 15px;
	}

	:is(.am-forms-dialog, .amelia-v2-booking-dialog) .jc-reserva__resumen {
		align-items: flex-start;
		gap: 12px;
	}

	:is(.am-forms-dialog, .amelia-v2-booking-dialog) .jc-reserva__nombre {
		font-size: 1.35rem;
	}

	:is(.am-forms-dialog, .amelia-v2-booking-dialog) .jc-reserva__precio {
		font-size: 1.5rem;
	}
}
