/* Aeropark Reservas — frontend styles. Tokens del Kit Elementor #5. */
.aeropark-form {
	--ap-primary: #004F9F;
	--ap-accent: #FBBA00;
	--ap-text: #1f2a37;
	--ap-muted: #707070;
	--ap-border: #d6d5d5;
	--ap-fill: #f1f3f6;
	--ap-green-bg: #eaf7ef;
	--ap-green-border: #57b97f;
	--ap-radius: 10px;
	--ap-ease-out: cubic-bezier(0.23, 1, 0.32, 1);
	--ap-ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
	font-family: "Raleway", system-ui, sans-serif;
	color: var(--ap-text);
	box-sizing: border-box;
}
.aeropark-form *,
.aeropark-form *::before,
.aeropark-form *::after {
	box-sizing: inherit;
}

/* ----------------------------------------------------------------------
 * Inicio block ([aeropark_inicio])
 * -------------------------------------------------------------------- */
.aeropark-inicio {
	position: relative;
	max-width: 460px;
	padding-top: 18px;
	background: transparent;
}
.aeropark-inicio__badge {
	position: absolute;
	top: 0;
	left: 5%;
	/* transform: translateX(-70%); */
	z-index: 2;
	background: var(--ap-accent);
	color: var(--ap-text);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	padding: 8px 18px;
	border-radius: 999px;
	text-align: center;
	white-space: nowrap;
	max-width: calc(100% - 24px);
	box-shadow: 0 2px 8px rgba(0, 0, 0, .08);
}
.aeropark-inicio__card {
	background: #fff;
	border-radius: 16px;
	padding: 32px 24px 20px;
	box-shadow: 0 8px 32px rgba(0, 0, 0, .12);
}
.aeropark-inicio__titulo {
	margin: 0 0 20px;
	font-weight: 800;
	font-size: 28px;
	line-height: 1.15;
	text-transform: none;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.aeropark-inicio__titulo-l1 {
	color: var(--ap-text);
}
.aeropark-inicio__titulo-l2 {
	color: var(--ap-primary);
}

/* Vehicle tabs */
.aeropark-tabs {
	display: flex;
	gap: 10px;
	margin-bottom: 18px;
}
.aeropark-tabs__tab,
.aeropark-form button.aeropark-tabs__tab,
.aeropark-form button.aeropark-tabs__tab:hover,
.aeropark-form button.aeropark-tabs__tab:focus,
.aeropark-form button.aeropark-tabs__tab:active {
	flex: 1;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 10px 14px;
	border: 2px solid var(--ap-border);
	border-radius: 10px;
	background: #fff;
	color: var(--ap-muted);
	font: inherit;
	font-weight: 600;
	cursor: pointer;
	box-shadow: none;
	text-decoration: none;
	transition: border-color 150ms ease, color 150ms ease, background-color 150ms ease;
}
.aeropark-tabs__tab.is-active,
.aeropark-tabs__tab[aria-selected="true"],
.aeropark-form button.aeropark-tabs__tab.is-active,
.aeropark-form button.aeropark-tabs__tab[aria-selected="true"],
.aeropark-form button.aeropark-tabs__tab.is-active:hover,
.aeropark-form button.aeropark-tabs__tab.is-active:focus,
.aeropark-form button.aeropark-tabs__tab[aria-selected="true"]:hover,
.aeropark-form button.aeropark-tabs__tab[aria-selected="true"]:focus {
	border-color: var(--ap-primary);
	color: var(--ap-primary);
	background: rgba(0, 79, 159, .04);
}
@media (hover: hover) and (pointer: fine) {
	.aeropark-form button.aeropark-tabs__tab:not(.is-active):not([aria-selected="true"]):hover {
		border-color: var(--ap-primary);
		color: var(--ap-primary);
		background: rgba(0, 79, 159, .06);
	}
	.aeropark-form button.aeropark-tabs__tab.is-active:hover,
	.aeropark-form button.aeropark-tabs__tab[aria-selected="true"]:hover {
		border-color: var(--ap-primary);
		color: var(--ap-primary);
		background: rgba(0, 79, 159, .1);
	}
}
.aeropark-tabs__tab:focus-visible,
.aeropark-form button.aeropark-tabs__tab:focus-visible {
	outline: 2px solid var(--ap-primary);
	outline-offset: 2px;
}
.aeropark-tabs__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	height: 20px;
}
.aeropark-tabs__icon svg {
	display: block;
}
.aeropark-tabs__label {
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
}

/* Inicio date fields — stacked rows with bordered wrapper */
.aeropark-inicio__fechas {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-bottom: 16px;
}
.aeropark-inicio__fecha-row {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid var(--ap-border);
	border-radius: 10px;
	background: var(--ap-fill);
	transition: border-color 150ms ease, box-shadow 150ms ease;
}
.aeropark-inicio__fecha-row:focus-within {
	border-color: var(--ap-primary);
	box-shadow: 0 0 0 1px var(--ap-primary);
}
.aeropark-inicio__fecha-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: var(--ap-primary);
	width: 24px;
}
.aeropark-inicio__fecha-body {
	flex: 1;
	min-width: 0;
}
.aeropark-inicio__fecha-label {
	display: block;
	font-size: 13px;
	font-weight: 700;
	color: var(--ap-text);
	margin-bottom: 2px;
	line-height: 1.2;
}
.aeropark-field--placa {
	margin-bottom: 0;
}
.aeropark-inicio__accion {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	gap: 12px;
	margin: 0;
}
.aeropark-inicio__accion .aeropark-field--placa {
	flex: 0 1 42%;
	min-width: 0;
	margin: 0;
	display: block;
}
.aeropark-form .aeropark-inicio__accion .aeropark-field--placa input {
	width: 100%;
	height: 48px;
	margin: 0;
	padding: 0 16px;
	border: 1px solid var(--ap-border);
	border-radius: 10px;
	font: inherit;
	font-size: 15px;
	line-height: 48px;
	background: var(--ap-fill);
	box-sizing: border-box;
}
.aeropark-form .aeropark-inicio__accion .aeropark-field--placa input:focus {
	outline: none;
	border-color: var(--ap-primary);
	background: #fff;
}
.aeropark-form .aeropark-inicio__accion .aeropark-inicio__submit {
	flex: 1 1 58%;
	width: auto;
	height: 48px;
	margin: 0;
	padding: 0 20px;
	border-radius: 10px;
	font-size: 15px;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}
.aeropark-inicio__tarifa {
	margin: 16px 0 0;
	font-size: 13px;
	color: var(--ap-muted);
	text-align: center;
	line-height: 1.45;
}
.aeropark-inicio__tarifa a {
	color: var(--ap-primary);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 2px;
}
.aeropark-inicio__nota {
	margin: 10px 0 0;
	font-size: 11px;
	color: #9aa1aa;
	text-align: center;
	line-height: 1.4;
}

/* Compact datetime — inicio form (inside bordered row) */
.aeropark-inicio__fechas .aeropark-dt--inicio {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) minmax(0, 0.65fr);
	gap: 8px;
	align-items: center;
}
.aeropark-inicio__fechas .aeropark-dt--inicio .aeropark-dt__hora-min {
	display: contents;
}
.aeropark-inicio__fechas .aeropark-dt--inicio > input[type="hidden"] {
	display: none;
}
.aeropark-inicio__fechas .aeropark-dt--inicio input[type="date"],
.aeropark-inicio__fechas .aeropark-dt--inicio select {
	width: 100%;
	padding: 6px 8px;
	font-size: 13px;
	border: 1px solid rgba(0, 0, 0, .1);
	border-radius: 6px;
	background: #fff;
	color: var(--ap-text);
	transition: border-color 150ms ease, box-shadow 150ms ease;
}
.aeropark-inicio__fechas .aeropark-dt--inicio input[type="date"]:focus,
.aeropark-inicio__fechas .aeropark-dt--inicio select:focus {
	outline: none;
	border-color: var(--ap-primary);
	box-shadow: 0 0 0 1px var(--ap-primary);
}
.aeropark-dt--compact {
	grid-template-columns: 1fr;
	gap: 6px;
}
.aeropark-dt--compact:not(.aeropark-dt--inicio) input[type="date"],
.aeropark-dt--compact:not(.aeropark-dt--inicio) select {
	padding: 8px 10px;
	font-size: 13px;
	border: 0;
	border-bottom: 2px solid var(--ap-border);
	border-radius: 0;
	background: transparent;
}
.aeropark-dt--compact:not(.aeropark-dt--inicio) input[type="date"]:focus,
.aeropark-dt--compact:not(.aeropark-dt--inicio) select:focus {
	border-bottom-color: var(--ap-primary);
	background: transparent;
}
.aeropark-dt--compact:not(.aeropark-dt--inicio) .aeropark-dt__hora-min {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 6px;
}

@media (max-width: 480px) {
	.aeropark-inicio__fechas .aeropark-dt--inicio {
		grid-template-columns: 1fr 1fr;
	}
	.aeropark-inicio__fechas .aeropark-dt--inicio input[type="date"] {
		grid-column: 1 / -1;
	}
	.aeropark-inicio__badge {
		font-size: 12px;
		padding: 7px 14px;
		white-space: normal;
	}
	.aeropark-inicio__accion {
		flex-direction: column;
	}
	.aeropark-form .aeropark-inicio__accion .aeropark-inicio__submit {
		flex: 1 1 auto;
		width: 100%;
	}
}

/* Legacy promo (unused in new layout, kept for backward compat) */
.aeropark-inicio__promo {
	color: var(--ap-primary);
	font-weight: 600;
	margin: 0 0 18px;
}

/* ----------------------------------------------------------------------
 * Fields & buttons (shared)
 * -------------------------------------------------------------------- */
.aeropark-field {
	margin-bottom: 18px;
	display: flex;
	flex-direction: column;
}
.aeropark-field label {
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 7px;
}
.aeropark-field input,
.aeropark-field select {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--ap-border);
	border-radius: 8px;
	font: inherit;
	background: var(--ap-fill);
	color: var(--ap-text);
	transition: border-color 150ms ease, background-color 150ms ease;
}
.aeropark-field input::placeholder {
	color: #9aa1aa;
}
.aeropark-field input:focus,
.aeropark-field select:focus {
	outline: none;
	border-color: var(--ap-primary);
	background: #fff;
}
.aeropark-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 22px;
}
.aeropark-grid--bottom {
	align-items: end;
	margin-top: 4px;
}

/* `.aeropark-form` prefix beats theme/Elementor kit `button` selectors. */
.aeropark-form .aeropark-btn {
	appearance: none;
	border: 0;
	border-radius: 8px;
	padding: 13px 28px;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	box-shadow: none;
	transition: background-color 150ms ease, color 150ms ease, opacity 150ms ease, transform 160ms var(--ap-ease-out);
}
/* Press feedback: the UI confirms it heard the click. */
.aeropark-form .aeropark-btn:not([disabled]):active {
	transform: scale(0.97);
}
.aeropark-form .aeropark-btn--primary {
	background: var(--ap-primary);
	color: #fff;
}
.aeropark-form .aeropark-btn--soft {
	background: #eceef1;
	color: #5b6470;
}
/* Hover only on devices with a real pointer (touch taps fire false hovers). */
@media (hover: hover) and (pointer: fine) {
	.aeropark-form .aeropark-btn--primary:hover {
		background: var(--ap-accent);
		color: var(--ap-primary);
	}
	.aeropark-form .aeropark-btn--soft:hover {
		background: var(--ap-primary);
		color: #fff;
	}
}
.aeropark-form .aeropark-btn--primary:focus-visible {
	background: var(--ap-accent);
	color: var(--ap-primary);
}
.aeropark-form .aeropark-btn--soft:focus-visible {
	background: var(--ap-primary);
	color: #fff;
}
.aeropark-form .aeropark-btn[disabled] {
	opacity: .6;
	cursor: default;
}

/* Inicio quote box */
.aeropark-cotizacion {
	background: rgba(255, 255, 255, .65);
	border-radius: 8px;
	padding: 14px 16px;
	margin: 6px 0 16px;
	transition: opacity 250ms var(--ap-ease-out), transform 250ms var(--ap-ease-out);
}
@starting-style {
	.aeropark-cotizacion:not([hidden]) {
		opacity: 0;
		transform: translateY(6px);
	}
}
.aeropark-cotizacion__fila {
	display: flex;
	justify-content: space-between;
	padding: 4px 0;
	font-size: 14px;
}
.aeropark-cotizacion__total {
	border-top: 1px solid rgba(0, 0, 0, .15);
	margin-top: 6px;
	padding-top: 8px;
	font-size: 16px;
	color: var(--ap-primary);
}

.aeropark-error {
	color: #870000;
	background: #ffdede;
	border-radius: 8px;
	padding: 9px 12px;
	font-size: 13px;
	margin: 12px 0 0;
	transition: opacity 200ms var(--ap-ease-out), transform 200ms var(--ap-ease-out);
}
@starting-style {
	.aeropark-error:not([hidden]) {
		opacity: 0;
		transform: translateY(-4px);
	}
}

/* ----------------------------------------------------------------------
 * Reserva ([aeropark_reserva]) — single page, accordion + summary
 * -------------------------------------------------------------------- */
.aeropark-reserva {
	max-width: 1080px;
	margin: 0 auto;
}
.aeropark-reserva--seleccion {
	max-width: 520px;
}
.aeropark-reserva--seleccion .aeropark-inicio {
	max-width: none;
}
.aeropark-volver {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--ap-primary);
	font-weight: 600;
	text-decoration: none;
	margin-bottom: 22px;
}
.aeropark-volver.is-hidden {
	display: none;
}
.aeropark-volver__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: 2px solid var(--ap-primary);
	border-radius: 50%;
	font-size: 16px;
	line-height: 1;
	transition: transform 200ms var(--ap-ease-out);
}
@media (hover: hover) and (pointer: fine) {
	.aeropark-volver:hover .aeropark-volver__icon {
		transform: translateX(-3px);
	}
}

.aeropark-reserva__layout {
	display: grid;
	grid-template-columns: 1fr 390px;
	gap: 28px;
	align-items: start;
}
/* The author `display: grid` would beat the UA [hidden] rule. */
.aeropark-reserva__layout[hidden],
.aeropark-exito[hidden] {
	display: none;
}

/* Accordion */
.aeropark-acc {
	background: #fff;
	border: 1px solid #e7e9ee;
	border-radius: 16px;
	box-shadow: 0 6px 20px rgba(0, 0, 0, .04);
	margin-bottom: 18px;
	overflow: hidden;
}
/* High specificity to beat theme/Elementor kit `button` styles. */
.aeropark-form button.aeropark-acc__head,
.aeropark-form button.aeropark-acc__head:hover,
.aeropark-form button.aeropark-acc__head:focus,
.aeropark-form button.aeropark-acc__head:active {
	width: 100%;
	background: transparent;
	color: var(--ap-primary);
	border: 0;
	box-shadow: none;
	outline: none;
	cursor: pointer;
	text-align: center;
	padding: 24px 28px;
	font: inherit;
}
.aeropark-form button.aeropark-acc__head:focus-visible {
	outline: 2px solid var(--ap-primary);
	outline-offset: -2px;
	border-radius: 16px;
}
.aeropark-acc__title {
	color: var(--ap-primary);
	font-size: 22px;
	font-weight: 800;
}
/* Open/close via grid rows: interruptible CSS transition, no JS measuring. */
.aeropark-acc__body {
	display: grid;
	grid-template-rows: 0fr;
	overflow: hidden;
	transition: grid-template-rows 250ms var(--ap-ease-out);
}
.aeropark-acc.is-open .aeropark-acc__body {
	grid-template-rows: 1fr;
}
.aeropark-acc__inner {
	min-height: 0;
	overflow: hidden;
	padding: 0 28px 28px;
	opacity: 0;
	transform: translateY(-4px);
	transition: opacity 200ms var(--ap-ease-out), transform 250ms var(--ap-ease-out), visibility 0s 250ms;
	visibility: hidden;
}
.aeropark-acc.is-open .aeropark-acc__inner {
	opacity: 1;
	transform: none;
	visibility: visible;
	transition: opacity 200ms var(--ap-ease-out) 50ms, transform 250ms var(--ap-ease-out) 50ms, visibility 0s;
}
.aeropark-form .aeropark-acc.is-open button.aeropark-acc__head {
	padding-bottom: 10px;
}
.aeropark-form button.aeropark-acc__head {
	transition: padding 250ms var(--ap-ease-out);
}
.aeropark-acc__sub {
	color: var(--ap-muted);
	margin: 0 0 24px;
	font-size: 14px;
	line-height: 1.6;
}
.aeropark-field--action {
	justify-content: flex-end;
}
.aeropark-field--action .aeropark-btn {
	width: 100%;
}

.aeropark-acciones {
	display: flex;
	justify-content: flex-end;
	margin-top: 20px;
}

/* Services */
.aeropark-servicios {
	display: flex;
	flex-direction: column;
}
.aeropark-servicio {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 16px 2px;
	border-bottom: 1px solid #e7e9ee;
	cursor: pointer;
}
.aeropark-servicio:first-child {
	padding-top: 4px;
}
.aeropark-servicio__info {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.aeropark-servicio__nombre {
	font-weight: 700;
	color: var(--ap-text);
}
.aeropark-servicio__desc {
	font-size: 13px;
	color: var(--ap-muted);
}
.aeropark-servicio input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}
.aeropark-servicio__check {
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
	border: 2px solid #b9c4d4;
	border-radius: 50%;
	position: relative;
	transition: border-color 150ms ease, background-color 150ms ease, transform 160ms var(--ap-ease-out);
}
/* Press feedback on the whole row. */
.aeropark-servicio:active .aeropark-servicio__check {
	transform: scale(0.9);
}
.aeropark-servicio input:checked + .aeropark-servicio__check {
	border-color: var(--ap-primary);
	background: var(--ap-primary);
}
/* Inner dot always exists; it scales in (never from 0) instead of popping. */
.aeropark-servicio__check::after {
	content: "";
	position: absolute;
	inset: 5px;
	border-radius: 50%;
	background: #fff;
	opacity: 0;
	transform: scale(0.4);
	transition: opacity 150ms var(--ap-ease-out), transform 200ms var(--ap-ease-out);
}
.aeropark-servicio input:checked + .aeropark-servicio__check::after {
	opacity: 1;
	transform: scale(1);
}
.aeropark-servicio input:focus-visible + .aeropark-servicio__check {
	box-shadow: 0 0 0 3px rgba(0, 79, 159, .25);
}

/* Confirm */
.aeropark-check {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-size: 14px;
}
.aeropark-check input {
	margin-top: 3px;
}
.aeropark-check a {
	color: var(--ap-primary);
	font-weight: 600;
	text-decoration: underline;
}

/* ----------------------------------------------------------------------
 * Summary card
 * -------------------------------------------------------------------- */
.aeropark-resumen-card {
	background: #fff;
	border: 1.5px solid #c8d8ea;
	border-radius: 18px;
	padding: 24px 22px;
	position: sticky;
	top: 24px;
}
.aeropark-resumen-card__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 18px;
}
.aeropark-resumen-card__titulo {
	color: var(--ap-primary);
	font-size: 20px;
	font-weight: 800;
	margin: 0;
	line-height: 1.2;
}
.aeropark-form button.aeropark-editar,
.aeropark-form button.aeropark-editar:hover,
.aeropark-form button.aeropark-editar:focus {
	background: transparent;
	border: 0;
	box-shadow: none;
	color: var(--ap-primary);
	font: inherit;
	font-size: 14px;
	font-weight: 700;
	text-decoration: underline;
	cursor: pointer;
	padding: 4px 0;
	white-space: nowrap;
	transition: opacity 150ms ease;
}
.aeropark-form button.aeropark-editar:active {
	opacity: .6;
}

.aeropark-fechas {
	background: #f4f5f7;
	border-radius: 12px;
	padding: 14px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}
.aeropark-fecha__label {
	display: block;
	font-size: 13px;
	color: var(--ap-muted);
	margin-bottom: 8px;
	text-align: center;
}
.aeropark-fecha__pills {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}
.aeropark-pill {
	background: #e7e9ee;
	border-radius: 8px;
	padding: 10px 8px;
	text-align: center;
	font-size: 14px;
	color: #3b4654;
}
.aeropark-fecha__edit {
	margin-top: 10px;
}

/* Date + hour + quarter-minute picker */
.aeropark-dt {
	display: grid;
	grid-template-columns: 1.5fr 1.1fr .9fr;
	gap: 8px;
}
.aeropark-dt input[type="date"],
.aeropark-dt select {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--ap-border);
	border-radius: 8px;
	font: inherit;
	background: var(--ap-fill);
	color: var(--ap-text);
	transition: border-color 150ms ease, background-color 150ms ease;
}
.aeropark-dt input[type="date"]:focus,
.aeropark-dt select:focus {
	outline: none;
	border-color: var(--ap-primary);
	background: #fff;
}
.aeropark-fecha__edit .aeropark-dt input[type="date"],
.aeropark-fecha__edit .aeropark-dt select {
	background: #fff;
	padding: 10px 12px;
}
/* Blocked-entry-date notice spans the whole picker row. */
.aeropark-dt .aeropark-dt__bloqueo {
	grid-column: 1 / -1;
	margin: 4px 0 0;
}

.aeropark-duracion {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 16px 4px;
	border-bottom: 1px solid #e7e9ee;
	font-size: 15px;
}
.aeropark-duracion strong {
	color: var(--ap-primary);
}

/* Breakdown */
.aeropark-desglose {
	padding-top: 6px;
}
.aeropark-fila {
	display: flex;
	justify-content: space-between;
	padding: 7px 4px;
	font-size: 15px;
}
.aeropark-fila.is-strong {
	font-weight: 700;
}
.aeropark-fila--total {
	border-top: 1px solid #e7e9ee;
	margin-top: 4px;
	padding-top: 12px;
	font-size: 17px;
	font-weight: 800;
}
.aeropark-fila--total span:last-child {
	color: var(--ap-primary);
}
.aeropark-desglose__rows--muted .aeropark-fila {
	color: var(--ap-muted);
}
.aeropark-desglose__rows--muted .aeropark-fila.is-strong {
	color: var(--ap-text);
}
.aeropark-desglose__hint {
	font-size: 13px;
	color: var(--ap-muted);
	margin: 10px 4px 0;
}

/* Tope (smart rate) highlight */
.aeropark-tope {
	background: var(--ap-green-bg);
	border: 1px solid var(--ap-green-border);
	border-radius: 12px;
	padding: 16px;
	margin-bottom: 14px;
}
.aeropark-tope__badge {
	display: inline-block;
	background: var(--ap-accent);
	color: var(--ap-primary);
	font-size: 13px;
	font-weight: 700;
	border-radius: 20px;
	padding: 5px 14px;
	margin-bottom: 10px;
}
.aeropark-tope__tit {
	display: block;
	font-size: 16px;
	color: var(--ap-text);
	margin-bottom: 4px;
}
.aeropark-tope__txt {
	font-size: 13px;
	color: #54616e;
	margin: 0 0 10px;
}
.aeropark-tope--desc {
	padding: 14px 16px;
}
.aeropark-tope--desc .aeropark-tope__txt {
	margin-bottom: 0;
}
.aeropark-tope__precio {
	display: block;
	font-size: 26px;
	font-weight: 800;
	color: var(--ap-primary);
}

.aeropark-nota {
	font-size: 11.5px;
	color: var(--ap-muted);
	line-height: 1.5;
	margin: 16px 0 0;
}

/* ----------------------------------------------------------------------
 * Success screen
 * -------------------------------------------------------------------- */
.aeropark-exito {
	text-align: center;
	max-width: 720px;
	margin: 0 auto;
	padding: 10px 0 20px;
}
/* One-time screen: stagger the entrance for a touch of delight. */
.aeropark-exito > * {
	opacity: 0;
	transform: translateY(10px);
	animation: aeropark-rise 400ms var(--ap-ease-out) forwards;
}
.aeropark-exito > :nth-child(2) {
	animation-delay: 50ms;
}
.aeropark-exito > :nth-child(3) {
	animation-delay: 100ms;
}
.aeropark-exito > :nth-child(4) {
	animation-delay: 150ms;
}
.aeropark-exito > :nth-child(5) {
	animation-delay: 200ms;
}
.aeropark-exito > :nth-child(6) {
	animation-delay: 250ms;
}
.aeropark-exito[hidden] > * {
	animation: none;
}
@keyframes aeropark-rise {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
.aeropark-exito__icono {
	margin-bottom: 14px;
}
.aeropark-exito__titulo {
	color: var(--ap-primary);
	font-size: 28px;
	font-weight: 800;
	margin: 0 0 14px;
}
.aeropark-exito__msg {
	font-size: 15px;
	font-weight: 600;
	max-width: 620px;
	margin: 0 auto 26px;
}
.aeropark-exito__card {
	border: 1px solid #e7e9ee;
	border-radius: 16px;
	padding: 26px;
	text-align: center;
}
.aeropark-exito__card h4 {
	color: var(--ap-primary);
	font-size: 19px;
	font-weight: 800;
	margin: 0 0 18px;
}
.aeropark-exito__card .aeropark-fechas {
	background: none;
	padding: 0;
}
.aeropark-exito__duracion {
	border-top: 1px solid #e7e9ee;
	margin-top: 16px;
	padding-top: 16px;
	font-size: 15px;
}
.aeropark-exito__duracion strong,
.aeropark-exito__tarifa strong {
	color: var(--ap-primary);
}
.aeropark-exito__servicios {
	border-top: 1px solid #e7e9ee;
	margin-top: 4px;
	padding-top: 16px;
	font-size: 14px;
}
.aeropark-exito__servicios-tit {
	display: block;
	font-weight: 700;
	margin-bottom: 4px;
}
.aeropark-exito__tarifa {
	border-top: 1px solid #e7e9ee;
	margin-top: 16px;
	padding-top: 16px;
	font-size: 18px;
	font-weight: 700;
}
.aeropark-exito__legal {
	font-size: 12px;
	color: var(--ap-muted);
	max-width: 560px;
	margin: 20px auto 24px;
}
.aeropark-exito__btn {
	min-width: 220px;
}

.aeropark-exito__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
	margin-top: 8px;
}

/* ----------------------------------------------------------------------
 * Responsive
 * -------------------------------------------------------------------- */
@media (max-width: 900px) {
	.aeropark-reserva__layout {
		grid-template-columns: 1fr;
	}
	.aeropark-resumen-card {
		position: static;
		order: -1;
	}
}
@media (max-width: 600px) {
	.aeropark-grid {
		grid-template-columns: 1fr;
	}
	.aeropark-acc__title {
		font-size: 19px;
	}
}

/* ----------------------------------------------------------------------
 * Reduced motion: keep opacity/color fades, drop movement.
 * -------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
	.aeropark-form .aeropark-btn,
	.aeropark-servicio__check,
	.aeropark-servicio__check::after,
	.aeropark-volver__icon,
	.aeropark-acc__body,
	.aeropark-acc__inner,
	.aeropark-form button.aeropark-acc__head,
	.aeropark-cotizacion,
	.aeropark-error {
		transition-duration: 0s;
	}
	.aeropark-form .aeropark-btn:not([disabled]):active,
	.aeropark-servicio:active .aeropark-servicio__check,
	.aeropark-volver:hover .aeropark-volver__icon {
		transform: none;
	}
	.aeropark-exito > * {
		animation-duration: 0.2s;
		transform: none;
	}
}

