/**
 * BT Reservas — estilos.
 * Marca Bicotorto: oro #C99417 · verde #33432F · carbón #1C1C1C · crema #FFF7EA.
 * Tipografías del kit del sitio: Cormorant Garamond (display), Jost (cuerpo), Sacramento (script).
 * Regla de la casa: aire generoso. Nada apretujado.
 */

.btr {
	--btr-oro: #c99417;
	--btr-oro-claro: #e0b443;
	--btr-oro-link: #9a6f10;
	--btr-verde: #33432f;
	--btr-verde-claro: #47583f;
	--btr-carbon: #1c1c1c;
	--btr-tinta: #2a2620;
	--btr-crema: #fff7ea;
	--btr-linea: #e6dcc8;
	--btr-suave: #6b6355;

	font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
	color: var(--btr-tinta);
	max-width: 1120px;
	margin: 0 auto;
	line-height: 1.7;
	font-size: 16px;
}

.btr *,
.btr *::before,
.btr *::after {
	box-sizing: border-box;
}

.btr h2,
.btr h3,
.btr .btr-h2,
.btr .btr-h3 {
	font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif;
	font-weight: 400;
	color: var(--btr-tinta);
	margin: 0 0 18px;
	line-height: 1.15;
}

.btr .btr-h2 {
	font-size: clamp(28px, 3.4vw, 42px);
}

.btr .btr-h3 {
	font-size: clamp(22px, 2.4vw, 28px);
}

.btr .btr-eyebrow {
	font-size: 12px;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--btr-oro);
	font-weight: 700;
	margin: 0 0 10px;
}

.btr .btr-lead {
	font-size: 17px;
	color: #4a453d;
	margin: 0 0 28px;
	max-width: 62ch;
}

.btr .btr-mini {
	font-size: 12px;
	color: var(--btr-suave);
}

.btr .btr-claim {
	display: inline-block;
	font-size: 13.5px;
	letter-spacing: 0.02em;
	color: var(--btr-verde);
	background: #f2f5ef;
	border-left: 3px solid var(--btr-oro);
	padding: 12px 18px;
	margin: 0 0 34px;
}

/* ---------- Panel de búsqueda ---------- */

.btr-panel {
	background: var(--btr-crema);
	border: 1px solid var(--btr-linea);
	padding: 34px 34px 30px;
	display: grid;
	grid-template-columns: 1.2fr 1.2fr 1fr auto;
	gap: 26px;
	align-items: end;
}

.btr-bar .btr-panel {
	padding: 22px 24px;
	gap: 18px;
	grid-template-columns: 1.5fr 1fr auto;
}

/* En la barra compacta el contador de noches sobra: ocupa sitio y empieza vacío. */
.btr-bar .btr-panel > .btr-field:nth-child(2) {
	display: none;
}

.btr-field {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 7px;
	min-width: 0;
}

.btr-field > label,
.btr-label {
	font-size: 11px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--btr-oro-link);
	font-weight: 700;
}

.btr-input,
.btr-field select,
.btr-field input,
.btr-field textarea {
	font-family: inherit;
	font-size: 16px;
	color: var(--btr-tinta);
	background: #fff;
	border: 1px solid var(--btr-linea);
	border-radius: 0;
	padding: 13px 14px;
	width: 100%;
	transition: border-color 0.2s ease;
}

.btr-input:focus,
.btr-field select:focus,
.btr-field input:focus,
.btr-field textarea:focus {
	outline: none;
	border-color: var(--btr-oro);
}

.btr-dateview {
	cursor: pointer;
	text-align: left;
	min-height: 49px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.btr-dateview span.btr-ph {
	color: #a49b8a;
}

.btr-guests {
	display: flex;
	gap: 12px;
}

.btr-guests .btr-input {
	padding: 13px 8px 13px 12px;
}

/* ---------- Botones ---------- */

.btr-btn,
.btr a.btr-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	font-family: inherit;
	font-size: 13px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--btr-carbon);
	background: var(--btr-oro);
	border: 1px solid var(--btr-oro);
	padding: 16px 30px;
	cursor: pointer;
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
	white-space: nowrap;
}

.btr-btn:hover {
	background: var(--btr-oro-claro);
	transform: translateY(-2px);
	box-shadow: 0 8px 22px rgba(201, 148, 23, 0.28);
}

.btr-btn[disabled] {
	opacity: 0.55;
	cursor: default;
	transform: none;
	box-shadow: none;
}

.btr-btn-ghost {
	background: transparent;
	color: var(--btr-oro-link);
	border-color: var(--btr-linea);
}

.btr-btn-ghost:hover {
	background: transparent;
	border-color: var(--btr-oro);
	box-shadow: none;
}

.btr-btn-block {
	width: 100%;
}

.btr-link {
	background: none;
	border: 0;
	padding: 0;
	font: inherit;
	color: var(--btr-oro-link);
	text-decoration: underline;
	cursor: pointer;
}

/* ---------- Calendario ---------- */

.btr-cal {
	position: absolute;
	z-index: 60;
	top: calc(100% + 10px);
	left: 0;
	background: #fff;
	border: 1px solid var(--btr-linea);
	box-shadow: 0 22px 60px rgba(28, 28, 28, 0.16);
	padding: 22px;
	display: flex;
	gap: 30px;
	min-width: 620px;
}

.btr-cal[hidden] {
	display: none;
}

.btr-cal-month {
	width: 280px;
	max-width: 100%;
	flex: 0 0 auto;
	min-width: 0;
	overflow: hidden;
}

.btr-cal-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 14px;
}

.btr-cal-title {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 20px;
	text-transform: capitalize;
}

.btr .btr-cal-nav {
	background: none;
	border: 1px solid var(--btr-linea);
	border-radius: 0;
	box-shadow: none;
	width: 32px;
	height: 32px;
	min-width: 0;
	padding: 0;
	margin: 0;
	cursor: pointer;
	color: var(--btr-tinta);
	font-size: 15px;
	line-height: 1;
	letter-spacing: normal;
}

.btr-cal-nav:hover {
	border-color: var(--btr-oro);
	color: var(--btr-oro-link);
}

.btr-cal-grid {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 2px;
	min-width: 0;
}

.btr-cal-dow {
	text-align: center;
	font-size: 10.5px;
	letter-spacing: 0.12em;
	color: var(--btr-suave);
	text-transform: uppercase;
	padding-bottom: 6px;
}

/* El tema y el kit de Elementor estilan <button> con padding y min-width propios:
   si no se resetean, las celdas desbordan la rejilla y los dos meses se solapan. */
.btr .btr-day {
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	cursor: pointer;
	color: var(--btr-tinta);
	font-family: inherit;
	font-weight: 400;
	letter-spacing: normal;
	text-transform: none;
	position: relative;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	padding: 0;
	margin: 0;
	line-height: 1;
}

.btr-day:hover:not(:disabled) {
	background: var(--btr-crema);
}

.btr-day:disabled {
	color: #cdc6ba;
	cursor: default;
	text-decoration: line-through;
}

.btr-day.is-in,
.btr-day.is-out {
	background: var(--btr-verde);
	color: #fff;
}

.btr-day.is-between {
	background: #eef2ea;
}

.btr-day.is-empty {
	visibility: hidden;
}

.btr-cal-foot {
	margin-top: 12px;
	font-size: 12.5px;
	color: var(--btr-suave);
	display: flex;
	justify-content: flex-end;
	gap: 16px;
	align-items: center;
	flex: 0 0 100%;
	width: 100%;
}

/* ---------- Resultados ---------- */

.btr-results-head {
	display: flex;
	flex-wrap: wrap;
	gap: 14px 26px;
	align-items: baseline;
	justify-content: space-between;
	margin: 0 0 30px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--btr-linea);
}

.btr-results-dates {
	font-size: 17px;
}

.btr-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
	gap: 30px;
}

.btr-card {
	border: 1px solid var(--btr-linea);
	background: #fff;
	display: flex;
	flex-direction: column;
}

.btr-card-img {
	aspect-ratio: 4 / 3;
	background: #ded6c6 center/cover no-repeat;
}

.btr-card-body {
	padding: 26px 26px 28px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	flex: 1;
}

.btr-card-name {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 26px;
	line-height: 1.15;
	margin: 0;
}

.btr-card-claim {
	font-size: 14.5px;
	color: #4a453d;
	margin: 0;
	flex: 1;
}

.btr-card-meta {
	font-size: 12px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--btr-suave);
}

.btr-price {
	display: flex;
	align-items: baseline;
	gap: 8px;
	margin-top: 4px;
}

.btr-price strong {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 30px;
	font-weight: 500;
	color: var(--btr-tinta);
}

.btr-price span {
	font-size: 13px;
	color: var(--btr-suave);
}

.btr-card.is-off {
	opacity: 0.72;
}

.btr-card.is-off .btr-card-img {
	filter: grayscale(1);
}

.btr-nope {
	font-size: 13.5px;
	color: #8a5a2b;
	background: #fbf3e6;
	padding: 10px 14px;
}

/* ---------- Checkout ---------- */

.btr-checkout {
	display: grid;
	grid-template-columns: 1.5fr 1fr;
	gap: 54px;
	align-items: start;
}

.btr-form-block {
	margin-bottom: 42px;
}

.btr-form-block > h3 {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 26px;
	margin: 0 0 20px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--btr-linea);
}

.btr-grid2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 22px;
}

.btr-extra {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	padding: 18px 0;
	border-bottom: 1px solid var(--btr-linea);
}

.btr-extra:last-child {
	border-bottom: 0;
}

.btr-extra input[type="checkbox"] {
	width: 18px;
	height: 18px;
	margin-top: 4px;
	accent-color: var(--btr-oro);
	flex: none;
}

.btr-extra-name {
	font-weight: 500;
}

.btr-extra-desc {
	font-size: 13.5px;
	color: var(--btr-suave);
	margin: 2px 0 0;
}

.btr-extra-todos {
	color: var(--btr-oro-link);
	margin-top: 6px;
}

.btr-extra-price {
	margin-left: auto;
	text-align: right;
	white-space: nowrap;
	font-size: 14.5px;
}

.btr-extra-qty {
	width: 62px;
	margin-top: 8px;
	padding: 7px 8px;
	font-size: 14px;
	border: 1px solid var(--btr-linea);
}

.btr-pay-opt {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	border: 1px solid var(--btr-linea);
	padding: 18px 20px;
	margin-bottom: 12px;
	cursor: pointer;
	transition: border-color 0.2s ease, background 0.2s ease;
}

.btr-pay-opt:hover,
.btr-pay-opt.is-on {
	border-color: var(--btr-oro);
	background: var(--btr-crema);
}

.btr-pay-opt input {
	margin-top: 5px;
	accent-color: var(--btr-oro);
}

.btr-terms {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	font-size: 14px;
	margin: 26px 0 22px;
	color: #4a453d;
}

.btr-terms input {
	margin-top: 4px;
	width: 18px;
	height: 18px;
	accent-color: var(--btr-oro);
	flex: none;
}

.btr-terms a {
	color: var(--btr-oro-link);
	text-decoration: underline;
}

.btr-hp {
	position: absolute;
	left: -9999px;
	opacity: 0;
	height: 0;
	width: 0;
}

/* ---------- Resumen ---------- */

.btr-summary {
	background: var(--btr-crema);
	border: 1px solid var(--btr-linea);
	padding: 30px 28px;
	position: sticky;
	top: 110px;
}

.btr-summary h3 {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 24px;
	margin: 0 0 6px;
}

.btr-summary-unit {
	font-size: 13px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--btr-oro-link);
	font-weight: 700;
	margin-bottom: 18px;
}

.btr-lines {
	width: 100%;
	border-collapse: collapse;
	font-size: 14.5px;
}

.btr-lines th,
.btr-lines td {
	text-align: left;
	padding: 9px 0;
	font-weight: 400;
	color: #4a453d;
	vertical-align: top;
}

.btr-lines td {
	text-align: right;
	white-space: nowrap;
	color: var(--btr-tinta);
}

.btr-lines tr.btr-total th,
.btr-lines tr.btr-total td {
	border-top: 1px solid var(--btr-linea);
	padding-top: 16px;
	font-size: 19px;
	color: var(--btr-tinta);
	font-weight: 600;
}

.btr-lines tr.btr-gratis td s {
	color: var(--btr-suave);
	margin-right: 6px;
}

.btr-lines tr.btr-gratis td strong,
.btr-lines tr.btr-promo th,
.btr-lines tr.btr-promo td {
	color: var(--btr-verde);
	font-weight: 600;
}

.btr-lines tr.btr-pay th,
.btr-lines tr.btr-pay td {
	color: var(--btr-verde);
	font-weight: 600;
}

.btr-note {
	font-size: 13px;
	color: var(--btr-suave);
	margin-top: 16px;
	line-height: 1.6;
}

.btr-coupon {
	display: flex;
	gap: 10px;
	margin-top: 20px;
}

.btr-coupon .btr-input {
	padding: 11px 12px;
	font-size: 14px;
}

.btr-coupon .btr-btn {
	padding: 11px 18px;
	font-size: 11.5px;
}

/* ---------- Avisos ---------- */

.btr-msg,
.btr-msg-err {
	padding: 16px 20px;
	font-size: 15px;
	margin: 24px 0;
	background: #fbf3e6;
	border-left: 3px solid var(--btr-oro);
	color: #6d4b12;
}

.btr-msg-ok {
	background: #eef4ea;
	border-left-color: var(--btr-verde);
	color: var(--btr-verde);
}

.btr-aviso {
	background: var(--btr-crema);
	border-left: 3px solid var(--btr-oro);
	padding: 18px 22px;
	margin: 26px 0;
	font-size: 15px;
}

.btr-loading {
	display: inline-block;
	width: 15px;
	height: 15px;
	border: 2px solid rgba(28, 28, 28, 0.25);
	border-top-color: var(--btr-carbon);
	border-radius: 50%;
	animation: btr-spin 0.7s linear infinite;
}

@keyframes btr-spin {
	to {
		transform: rotate(360deg);
	}
}

/* ---------- Confirmación ---------- */

.btr-confirm {
	max-width: 720px;
	padding: 10px 0 20px;
}

.btr-card-resumen {
	padding: 28px 30px;
	background: var(--btr-crema);
}

.btr-tabla {
	width: 100%;
	border-collapse: collapse;
	font-size: 15px;
}

.btr-tabla th {
	text-align: left;
	font-weight: 400;
	color: var(--btr-suave);
	padding: 11px 0;
	border-bottom: 1px solid var(--btr-linea);
	width: 45%;
}

.btr-tabla td {
	text-align: right;
	padding: 11px 0;
	border-bottom: 1px solid var(--btr-linea);
}

.btr-firma {
	font-family: "Sacramento", "Cormorant Garamond", cursive;
	font-size: 30px;
	color: var(--btr-verde);
	margin-top: 34px;
}

/* ---------- Calendario de una casa ---------- */

.btr-unitcal .btr-cal {
	position: static;
	box-shadow: none;
	border: 1px solid var(--btr-linea);
	min-width: 0;
	padding: 26px;
	flex-wrap: wrap;
}

.btr-unitcal-foot {
	display: flex;
	flex-wrap: wrap;
	gap: 18px 30px;
	align-items: center;
	justify-content: space-between;
	margin-top: 26px;
	padding-top: 22px;
	border-top: 1px solid var(--btr-linea);
}

.btr-legend {
	display: flex;
	gap: 20px;
	font-size: 12.5px;
	color: var(--btr-suave);
	margin-top: 16px;
}

.btr-legend i {
	display: inline-block;
	width: 12px;
	height: 12px;
	margin-right: 7px;
	vertical-align: -1px;
	background: #eef2ea;
}

.btr-legend i.busy {
	background: repeating-linear-gradient(-45deg, #ded6c6, #ded6c6 3px, #fff 3px, #fff 6px);
}

/* ---------- Blindaje frente al kit de Elementor ----------
   El kit del sitio estila TODOS los <button> (fondo de acento en :hover/:focus/:active,
   padding, radio, sombra). Sin esto, el campo de fechas se pone rosa al pulsarlo y las
   celdas del calendario pierden el color de selección. Mismo gotcha que el selector de
   idioma del header. Aquí el !important está justificado: es defensa, no capricho. */

.btr button {
	-webkit-appearance: none;
	appearance: none;
}

.btr button:focus,
.btr button:focus-visible,
.btr button:active {
	box-shadow: none;
	outline: none;
}

.btr .btr-dateview,
.btr .btr-dateview:hover,
.btr .btr-dateview:focus,
.btr .btr-dateview:active {
	background: #fff !important;
	color: var(--btr-tinta) !important;
	border-color: var(--btr-linea);
}

.btr .btr-dateview:focus {
	border-color: var(--btr-oro);
}

.btr .btr-day,
.btr .btr-day:focus,
.btr .btr-day:active {
	background: transparent !important;
	color: var(--btr-tinta) !important;
}

.btr .btr-day:hover:not(:disabled) {
	background: var(--btr-crema) !important;
}

.btr .btr-day.is-between,
.btr .btr-day.is-between:hover {
	background: #eef2ea !important;
	color: var(--btr-tinta) !important;
}

.btr .btr-day.is-in,
.btr .btr-day.is-out,
.btr .btr-day.is-in:hover,
.btr .btr-day.is-out:hover,
.btr .btr-day.is-in:focus,
.btr .btr-day.is-out:focus {
	background: var(--btr-verde) !important;
	color: #fff !important;
}

.btr .btr-day:disabled {
	background: transparent !important;
	color: #cdc6ba !important;
}

.btr .btr-cal-nav,
.btr .btr-cal-nav:hover,
.btr .btr-cal-nav:focus,
.btr .btr-cal-nav:active {
	background: transparent !important;
	color: var(--btr-tinta) !important;
}

.btr .btr-btn,
.btr .btr-btn:focus,
.btr .btr-btn:active {
	background: var(--btr-oro) !important;
	color: var(--btr-carbon) !important;
}

.btr .btr-btn:hover {
	background: var(--btr-oro-claro) !important;
}

.btr .btr-btn-ghost,
.btr .btr-btn-ghost:hover,
.btr .btr-btn-ghost:focus,
.btr .btr-btn-ghost:active {
	background: transparent !important;
	color: var(--btr-oro-link) !important;
}

.btr .btr-link,
.btr .btr-link:hover,
.btr .btr-link:focus,
.btr .btr-link:active {
	background: none !important;
	color: var(--btr-oro-link) !important;
	padding: 0 !important;
}

/* ---------- Adaptación a pantallas pequeñas ---------- */

@media (max-width: 980px) {
	.btr-panel {
		grid-template-columns: 1fr 1fr;
	}

	.btr-panel .btr-field-btn {
		grid-column: 1 / -1;
	}

	.btr-checkout {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.btr-summary {
		position: static;
	}

	.btr-cal {
		min-width: 0;
		width: min(92vw, 620px);
		flex-wrap: wrap;
		gap: 22px;
	}

	.btr-cal-month {
		width: 100%;
	}
}

@media (max-width: 620px) {
	.btr-panel {
		grid-template-columns: 1fr;
		padding: 26px 22px;
		gap: 20px;
	}

	.btr-grid2 {
		grid-template-columns: 1fr;
	}

	.btr-cal {
		left: 50%;
		transform: translateX(-50%);
		padding: 18px;
	}

	.btr-btn {
		width: 100%;
	}
}

/* Desglose de plazas bajo la capacidad: la letra pequeña que evita la decepción. */
.btr .btr-card-note {
	font-size: .82em;
	line-height: 1.45;
	color: #6b6355;
	margin: .15em 0 0;
}

/* Casilla de aviso si no termina la reserva. Discreta: es un servicio, no un reclamo. */
.btr .btr-check-optin {
	display: flex;
	align-items: flex-start;
	gap: .55em;
	margin-top: 18px;
	font-size: .88em;
	line-height: 1.45;
	color: #6b6355;
	cursor: pointer;
}
.btr .btr-check-optin input { margin-top: .25em; flex: 0 0 auto; }

/* ── Pre-check-in ─────────────────────────────────────────────────────────────────────── */
.btr .btr-chk { max-width: 720px; margin: 0 auto; }
.btr .btr-chk-eyebrow { font-size: .78em; letter-spacing: .14em; text-transform: uppercase; color: #C99417; font-weight: 700; margin: 0 0 .4em; }
.btr .btr-chk-title { font-size: 1.9em; font-weight: 400; margin: 0 0 .8em; }
.btr .btr-chk-reserva { background: #FFF7EA; padding: 16px 18px; margin: 0 0 1.4em; line-height: 1.6; }
.btr .btr-chk-why { line-height: 1.7; margin: 0 0 2em; }
.btr .btr-chk-viajero { border: 1px solid #e6dfd0; padding: 20px; margin: 0 0 22px; }
.btr .btr-chk-viajero legend { padding: 0 10px; font-weight: 600; color: #33432F; }
.btr .btr-chk-doc { background: #FFF7EA; padding: 14px 16px; margin: 0 0 18px; }
.btr .btr-chk-foto { display: inline-flex; align-items: center; gap: .6em; cursor: pointer; font-weight: 600; }
.btr .btr-chk-consent { border: 2px solid #33432F; padding: 20px; margin: 28px 0; }
.btr .btr-chk-consent h3 { margin: 0 0 .4em; font-weight: 500; }
.btr .btr-chk-consent .btr-check { display: flex; align-items: flex-start; gap: .55em; margin: .8em 0; cursor: pointer; line-height: 1.45; }
.btr .btr-chk-err { background: #fdf0ee; border-left: 4px solid #b3402f; padding: 14px 18px; margin: 0 0 1.6em; }
.btr .btr-chk-err ul { margin: .5em 0 0; padding-left: 1.2em; }
.btr .btr-chk-ok { background: #eef3ec; border-left: 4px solid #33432F; padding: 26px 28px; }
.btr .btr-chk-ok h2 { margin: 0 0 .4em; font-weight: 400; }
/* Campo con error: se ve de un vistazo cuál hay que tocar, sin leer la lista de arriba. */
.btr .btr-field-mal .btr-input { border-color: #b3402f !important; background: #fdf6f5; }
.btr .btr-chk-priv { margin-top: 1.6em; color: #8a8375; }
@media (max-width: 600px) { .btr .btr-chk-viajero { padding: 14px; } }

/* ── Política de cancelación ──────────────────────────────────────────────────────────── */
/* Va justo encima del botón de reserva: el art. 97.1 del RDL 1/2007 obliga a informarla
   antes de que la persona quede vinculada, y una fecha concreta se entiende mejor que
   «30 días antes». */
.btr .btr-cancel { background: #FFF7EA; border-left: 3px solid #C99417; padding: 16px 18px; margin: 22px 0 4px; }
.btr .btr-cancel strong { display: block; margin: 0 0 .5em; color: #33432F; }
.btr .btr-cancel ul { margin: 0; padding-left: 1.15em; }
.btr .btr-cancel li { margin: .35em 0; line-height: 1.55; font-size: .92em; }
.btr .btr-cancel .btr-mini { margin: .8em 0 0; font-size: .84em; color: #6b6355; line-height: 1.5; }
.btr .btr-promo-more { color: #33432F; font-weight: 600; }

/* Aviso de que no se pudo cargar la ocupación. Ver Calendar.prototype.render. */
.btr-cal-error{margin:0 0 14px;padding:12px 14px;background:#FFF4E5;border-left:3px solid #C99417;
  font:400 13.5px/1.6 Jost,sans-serif;color:#6b4d10}
.btr-cal-error .btr-link{margin-top:6px;font-weight:600}

/* ── Ficha técnica de la unidad ──────────────────────────────────────────────
   Dos columnas en escritorio, apiladas en móvil. Aire generoso a propósito:
   es la última cosa que lee el huésped antes del buscador. */
.btr-ficha{max-width:820px;margin:56px auto;font-family:Jost,sans-serif}
.btr-ficha__t{font-family:'Cormorant Garamond',serif;font-size:30px;font-weight:600;color:#2A2620;margin:0 0 26px;letter-spacing:.2px}
.btr-ficha__l{margin:0;padding:0;border-top:1px solid #e6e1d6}
.btr-ficha__f{display:grid;grid-template-columns:210px 1fr;gap:18px;padding:15px 2px;border-bottom:1px solid #e6e1d6}
.btr-ficha__f dt{margin:0;font-size:12px;font-weight:500;letter-spacing:1.3px;text-transform:uppercase;color:#8a8478;align-self:center}
.btr-ficha__f dd{margin:0;font-size:16.5px;font-weight:300;line-height:1.65;color:#3f3a33}
.btr-ficha__n{margin:22px 0 0;font-size:14.5px;font-weight:300;line-height:1.75;color:#7a7367;font-style:italic}
@media(max-width:640px){
  .btr-ficha{margin:40px auto}
  .btr-ficha__f{grid-template-columns:1fr;gap:5px;padding:14px 2px}
  .btr-ficha__f dd{font-size:16px}
}
