/* ==========================================================================
   Plantilla de crucero (Elementor Pro) · inc/cruise-template.php
   Clases propias en los widgets nativos (Avanzado → Clases CSS):
   .tourm-child-cruise-card, -carousel, -cta, -facts, -tabs, -accordion, -gallery.
   ========================================================================== */

/* ---- Barras fijas (cruise-template.js publica las alturas) ----
   Navegación: fija bajo el header durante todo el crucero. Pestañas: fijas bajo la
   navegación mientras se recorre su contenido. Bajo el header (z-index 41) y su menú. */
.elementor-widget-tourm-child-cruise-nav,
.elementor-widget-tourm-child-cruise-nav-manual {
	position: sticky;
	top: var(--tourm-child-cruise-top, 0px);
	z-index: 30;
	background: var(--white-color);
	transition: top 0.3s ease-in-out;
}
.tourm-child-cruise-nav { padding: 10px 0 0; }
:root:has(.th-header .sticky-wrapper.sticky) .elementor-widget-tourm-child-cruise-nav,
:root:has(.th-header .sticky-wrapper.sticky) .elementor-widget-tourm-child-cruise-nav-manual {
	box-shadow: 0 6px 10px -8px rgba(0, 0, 0, 0.2);
}
body .elementor .tourm-child-cruise-tabs .e-n-tabs-heading {
	position: sticky;
	top: calc(var(--tourm-child-cruise-top, 0px) + var(--tourm-child-cruise-nav-h, 0px));
	z-index: 20;
	background: var(--white-color);
	transition: top 0.3s ease-in-out;
}

/* ---- Navegación: "‹ Categoría ›" + barcos (estilo de T22) ---- */
.tourm-child-cruise-nav__head {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 44px;
}
.tourm-child-cruise-nav__title {
	margin: 0;
	color: var(--title-color2);
	font-family: var(--title-font);
	font-size: clamp(22px, 6.8vw, 32px);
	font-weight: 500;
	line-height: 1.15;
	text-align: center;
}
.tourm-child-cruise-nav__arrow {
	position: absolute;
	top: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	color: var(--body-color);
	font-size: 22px;
	transform: translateY(-50%);
}
.tourm-child-cruise-nav__arrow--prev { left: 0; }
.tourm-child-cruise-nav__arrow--next { right: 0; }
.tourm-child-cruise-nav__arrow:hover { color: var(--title-color); }

.tourm-child-cruise-nav__tabs {
	display: flex;
	gap: 28px;
	margin: 16px 0 0;
	padding: 0 4px;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x proximity;
	scrollbar-width: none;
}
.tourm-child-cruise-nav__tabs::-webkit-scrollbar { display: none; }
.tourm-child-cruise-nav__tabs li { flex: 0 0 auto; margin: 0; scroll-snap-align: center; }
.tourm-child-cruise-nav__tabs li:first-child { margin-left: auto; }
.tourm-child-cruise-nav__tabs li:last-child { margin-right: auto; }
.tourm-child-cruise-nav__tab {
	display: block;
	padding: 4px 2px 8px;
	border-bottom: 4px solid transparent;
	color: var(--body-color);
	font-family: var(--title-font);
	font-size: 18px;
	font-weight: 500;
	text-decoration: none;
	white-space: nowrap;
}
.tourm-child-cruise-nav__tab:hover { color: var(--title-color); }
.tourm-child-cruise-nav__tab.is-current {
	color: var(--title-color2);
	border-bottom-color: var(--title-color2);
}
.tourm-child-cruise-nav__arrow:focus-visible,
.tourm-child-cruise-nav__tab:focus-visible { outline: 3px solid var(--primary-color); outline-offset: 2px; }

/* ---- Tarjeta ---- */
.tourm-child-cruise-card {
	overflow: hidden;
	overflow: clip; /* clip no crea contenedor de scroll: deja funcionar position: sticky dentro */
	border-radius: 16px;
	background: var(--white-color);
	box-shadow: 0 10px 30px rgba(17, 61, 72, 0.12);
}

/* Carrusel de fotos: las flechas pasan a la foto siguiente (no al barco siguiente). */
.tourm-child-cruise-carousel .swiper-slide-image {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}
.tourm-child-cruise-carousel .elementor-swiper-button {
	color: var(--white-color);
	font-size: 34px;
	filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.5));
}
.tourm-child-cruise-carousel .elementor-swiper-button svg { fill: var(--white-color); }

/* Botón "Check availability" sobre el borde inferior de la foto. */
body .elementor .tourm-child-cruise-cta .elementor-button {
	border-radius: 999px;
	background: var(--theme-color);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
	color: var(--title-color);
	font-family: var(--title-font);
	font-weight: 700;
}
body .elementor .tourm-child-cruise-cta .elementor-button:hover,
body .elementor .tourm-child-cruise-cta .elementor-button:focus-visible {
	background: var(--title-color);
	color: var(--theme-color);
}

/* Estrellas (widget Rating). "body .elementor" gana a los valores por defecto del widget. */
body .elementor .elementor-element.tourm-child-cruise-stars {
	--e-rating-icon-marked-color: var(--theme-color);
	--e-rating-icon-font-size: 30px;
	--e-rating-gap: 4px;
}

/* Resumen: nombre y precio a la izquierda, datos a la derecha (también en móvil). */
body .elementor .tourm-child-cruise-summary__main { --width: auto; flex: 1 1 0; min-width: 0; }
.tourm-child-cruise-name .elementor-heading-title { color: var(--title-color); }

/* Precio. */
.tourm-child-cruise-price {
	color: var(--title-color);
	font-family: var(--title-font);
	font-size: 18px;
	white-space: nowrap;
}
.tourm-child-cruise-price strong { margin: 0 4px; font-size: 1.4em; font-weight: 700; }
.tourm-child-cruise-price small { font-size: 0.9em; }
.tourm-child-cruise-summary__main .elementor-widget-text-editor p:last-child { margin-bottom: 0; }

/* Datos (duraciones y huéspedes). */
.tourm-child-cruise-facts .elementor-icon-list-text { white-space: nowrap; }
.tourm-child-cruise-facts .elementor-icon-list-icon i,
.tourm-child-cruise-facts .elementor-icon-list-icon svg { color: var(--title-color); fill: var(--title-color); }

/* ---- Pestañas Description · Itinerary · Gallery ----
   Variables del widget Tabs anidado; "body .elementor" gana a sus valores por defecto. */
body .elementor .elementor-element.tourm-child-cruise-tabs {
	--n-tabs-title-background-color: transparent;
	--n-tabs-title-background-color-hover: transparent;
	--n-tabs-title-background-color-active: transparent;
	--n-tabs-title-color: var(--body-color);
	--n-tabs-title-color-hover: var(--title-color);
	--n-tabs-title-color-active: var(--title-color);
	--n-tabs-title-font-size: 20px;
	--n-tabs-title-padding-top: 10px;
	--n-tabs-title-padding-bottom: 8px;
	--n-tabs-title-padding-left: 14px;
	--n-tabs-title-padding-right: 14px;
	--n-tabs-title-gap: 0px;
	--n-tabs-gap: 0px;
}
.tourm-child-cruise-tabs .e-n-tabs-heading {
	flex-wrap: nowrap;
	border-bottom: 2px solid var(--gray-color);
}
body .elementor .tourm-child-cruise-tabs .e-n-tab-title {
	margin-bottom: -2px;
	border: 0;
	border-bottom: 4px solid transparent;
	border-radius: 0;
	font-family: var(--title-font);
	font-weight: 500;
}
body .elementor .tourm-child-cruise-tabs .e-n-tab-title[aria-selected="true"] { border-bottom-color: var(--theme-color); }

/* Descripción: listas con ✓ como en el diseño. */
.tourm-child-cruise-tabs .elementor-widget-text-editor ul:not(.tourm-child-cruise-cost) { padding-left: 0; list-style: none; }
.tourm-child-cruise-tabs .elementor-widget-text-editor ul:not(.tourm-child-cruise-cost) li::before { content: "\2713\00a0"; }

/* ---- Included / Not included ---- */
body .elementor .elementor-element.tourm-child-cruise-accordion {
	--n-accordion-title-normal-color: var(--title-color2);
	--n-accordion-title-hover-color: var(--title-color2);
	--n-accordion-title-active-color: var(--title-color2);
	--n-accordion-icon-normal-color: var(--title-color2);
	--n-accordion-icon-hover-color: var(--title-color2);
	--n-accordion-icon-active-color: var(--title-color2);
	--n-accordion-title-font-size: 22px;
	--n-accordion-border-width: 0px;
	--n-accordion-padding: 10px 0;
	--n-accordion-icon-gap: 12px;
}
.tourm-child-cruise-accordion .e-n-accordion-item-title {
	padding: 10px 0;
	border: 0;
	background: transparent;
}
.tourm-child-cruise-accordion .e-n-accordion-item-title-text {
	color: var(--title-color2);
	font-family: var(--title-font);
	font-size: 22px;
	font-weight: 700;
}
.tourm-child-cruise-accordion .e-n-accordion-item-title-icon i,
.tourm-child-cruise-accordion .e-n-accordion-item-title-icon svg { color: var(--title-color2); fill: var(--title-color2); }
.tourm-child-cruise-accordion .e-n-accordion-item > .e-con { border: 0; }
.tourm-child-cruise-cost { margin: 0; padding-left: 20px; }
.tourm-child-cruise-cost li { margin-bottom: 4px; }

/* ---- Itinerarios ---- */
.tourm-child-cruise-itin__map { margin: 0 0 16px; }
.tourm-child-cruise-itin__map img { display: block; width: 100%; height: auto; border-radius: 8px; }
.tourm-child-cruise-itin { border-bottom: 1px solid var(--th-border-color); }
.tourm-child-cruise-itin__summary {
	position: relative;
	padding: 16px 0 16px 32px;
	color: var(--title-color);
	font-family: var(--title-font);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	list-style: none;
	cursor: pointer;
}
.tourm-child-cruise-itin__summary::-webkit-details-marker { display: none; }
.tourm-child-cruise-itin__summary::before {
	content: "+";
	position: absolute;
	left: 4px;
	top: 50%;
	color: var(--title-color2);
	font-size: 24px;
	font-weight: 400;
	line-height: 1;
	transform: translateY(-50%);
}
.tourm-child-cruise-itin[open] > .tourm-child-cruise-itin__summary::before { content: "\2212"; }
.tourm-child-cruise-itin__summary:focus-visible { outline: 3px solid var(--primary-color); outline-offset: 2px; }
.tourm-child-cruise-itin__body { padding: 0 0 20px; }

.tourm-child-cruise-itin__days { width: 100%; margin: 0; border-collapse: collapse; font-size: 14px; }
.tourm-child-cruise-itin__days tr { border-bottom: 1px solid var(--th-border-color); }
.tourm-child-cruise-itin__days tr:nth-child(odd) { background: var(--smoke-color2); }
.tourm-child-cruise-itin__days th,
.tourm-child-cruise-itin__days td { padding: 10px 12px; border: 0; vertical-align: top; text-align: left; }
.tourm-child-cruise-itin__days th {
	width: 34%;
	color: var(--title-color);
	font-weight: 500;
	text-transform: uppercase;
}
.tourm-child-cruise-itin__days td strong { display: block; color: var(--title-color); }
.tourm-child-cruise-itin__days td p { margin: 2px 0 0; }
.tourm-child-cruise-itin__price { margin: 14px 0 0; color: var(--title-color); }
.tourm-child-cruise-itin__price a { color: var(--primary-color); text-decoration: underline; }

/* ---- Galería: 2 columnas también en móvil (Elementor pasa a 1) ---- */
body .elementor .tourm-child-cruise-gallery .gallery-item { max-width: 50%; }
.tourm-child-cruise-gallery img {
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	border-radius: 4px;
}

@media (max-width: 767px) {
	body .elementor .elementor-element.tourm-child-cruise-tabs {
		--n-tabs-title-font-size: 18px;
		--n-tabs-title-padding-left: 10px;
		--n-tabs-title-padding-right: 10px;
	}
	.tourm-child-cruise-price { font-size: 15px; }
	.tourm-child-cruise-facts .elementor-icon-list-text { font-size: 14px; }
	.tourm-child-cruise-itin__days th { width: 38%; }
}

/* Móviles: barcos más compactos, para que quepan los 4 de Luxury (si aun así no caben, la barra se
   desplaza y cruise-template.js deja el barco actual a la vista). */
@media (max-width: 480px) {
	.tourm-child-cruise-nav__tabs { gap: 18px; margin-top: 10px; }
	.tourm-child-cruise-nav__tab { font-size: 16px; }
}

/* Móviles estrechos (320–400 px, p. ej. iPhone con "Zoom de pantalla" o Android de 360 px):
   nada se monta ni se sale. */
@media (max-width: 400px) {
	/* Navegación: título en una línea. */
	.tourm-child-cruise-nav__head { padding: 0 34px; }
	.tourm-child-cruise-nav__arrow { width: 34px; font-size: 20px; }
	.tourm-child-cruise-nav__title,
	body .tourm-child-cruise-nav h1.tourm-child-cruise-nav__title { font-size: 20px; }
	.tourm-child-cruise-nav__tabs { gap: 14px; padding: 0; }
	.tourm-child-cruise-nav__tab { font-size: 15px; }

	/* Resumen: estrellas, nombre y precio a todo el ancho; duración y huéspedes debajo, en una fila. */
	body .elementor .e-con:has(> .tourm-child-cruise-summary__main) {
		flex-wrap: wrap;
		align-items: flex-start;
	}
	body .elementor .tourm-child-cruise-summary__main { flex: 1 1 100%; }
	body .elementor .elementor-element.tourm-child-cruise-stars { --e-rating-icon-font-size: 24px; }
	body .elementor .tourm-child-cruise-facts .elementor-icon-list-items {
		display: flex;
		flex-wrap: wrap;
		gap: 4px 18px;
	}
	body .elementor .tourm-child-cruise-facts .elementor-icon-list-item { margin: 0; padding: 0; }

	/* Páginas de barco: Description · Itinerary · Gallery en una sola fila. (En las categorías, sin
	   tarjetas de barco dentro, "Why …?" y "… Yachts" siguen una encima de otra si no caben.) */
	body .elementor .elementor-element.tourm-child-cruise-tabs:not(:has(.tourm-child-cruise-cards)) {
		--n-tabs-title-font-size: 16px;
		--n-tabs-title-padding-left: 6px;
		--n-tabs-title-padding-right: 6px;
	}
	body .elementor .tourm-child-cruise-tabs:not(:has(.tourm-child-cruise-cards)) .e-n-tabs-heading { flex-wrap: nowrap; }
	body .elementor .tourm-child-cruise-tabs:not(:has(.tourm-child-cruise-cards)) .e-n-tab-title { flex: 1 1 auto; white-space: nowrap; }
}
@media (max-width: 340px) {
	.tourm-child-cruise-nav__tabs { gap: 10px; }
	.tourm-child-cruise-nav__tab { font-size: 14px; }
}

/* ==========================================================================
   Bloques comunes: "Travel with purpose" (Cetacea) y "Plan your Galápagos adventure"
   ========================================================================== */
.tourm-child-cruise-sec-title .elementor-heading-title { color: var(--title-color); }
.tourm-child-cruise-plan .tourm-child-cruise-sec-title .elementor-heading-title::after {
	content: "";
	display: block;
	width: 90px;
	height: 4px;
	margin-top: 12px;
	background: var(--theme-color);
}
.tourm-child-cruise-sec-subtitle .elementor-heading-title {
	color: var(--title-color2);
	font-family: var(--title-font);
	font-size: 24px;
	font-weight: 700;
	line-height: 1.25; /* el del kit es enorme cuando el título ocupa dos líneas */
}
.tourm-child-cruise-sec-text p { margin: 0; color: var(--body-color); }

.tourm-child-cruise-purpose__img img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: 16px 16px 50% 50% / 16px 16px 14% 14%; /* borde inferior en ola suave, como el diseño */
}
.tourm-child-cruise-eyebrow .elementor-heading-title {
	color: var(--title-color);
	font-family: var(--title-font);
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
.tourm-child-cruise-eyebrow .elementor-heading-title::after {
	content: "";
	display: block;
	width: 90px;
	height: 4px;
	margin: 12px auto 0;
	background: var(--theme-color);
}
.tourm-child-cruise-pillars .elementor-icon { color: var(--title-color); fill: var(--title-color); }
.tourm-child-cruise-pillars .elementor-icon-box-title,
.tourm-child-cruise-pillars .elementor-icon-box-title span {
	margin: 0;
	color: var(--title-color);
	font-family: var(--title-font);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.3;
}

.tourm-child-cruise-plan__img img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 18px;
}
.tourm-child-cruise-plan__list .elementor-icon-list-text { white-space: normal; color: var(--title-color); font-size: 15px; }

/* Botones grandes en píldora. */
body .elementor .tourm-child-cruise-btn .elementor-button {
	padding: 18px 24px;
	border-radius: 999px;
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.22);
	font-family: var(--title-font);
	font-size: 19px;
	font-weight: 700;
	line-height: 1.25;
	text-transform: uppercase;
	white-space: normal;
}
body .elementor .tourm-child-cruise-btn--navy .elementor-button { background: var(--tourm-child-navy); color: var(--white-color); }
body .elementor .tourm-child-cruise-btn--navy .elementor-button:hover { background: var(--title-color); color: var(--theme-color); }
body .elementor .tourm-child-cruise-btn--yellow .elementor-button { background: var(--theme-color); color: var(--title-color); }
body .elementor .tourm-child-cruise-btn--yellow .elementor-button:hover { background: var(--title-color); color: var(--theme-color); }

/* ==========================================================================
   Popup "Check Availability for This Cruise" (formulario de Elementor Pro)
   ========================================================================== */
.tourm-child-cruise-form .elementor-field-label { color: var(--title-color); font-size: 14px; font-weight: 500; }
.tourm-child-cruise-form .elementor-mark-required .elementor-field-label::after { color: var(--error-color); }
body .elementor .tourm-child-cruise-form .elementor-field-textual,
body .elementor .tourm-child-cruise-form select {
	min-height: 44px;
	border: 1px solid var(--gray-color);
	border-radius: 8px;
	background: var(--white-color);
	color: var(--title-color);
	font-size: 15px;
}
body .elementor .tourm-child-cruise-form .elementor-field-textual:focus,
body .elementor .tourm-child-cruise-form select:focus { border-color: var(--primary-color); outline: none; box-shadow: 0 0 0 3px rgba(28, 168, 203, 0.2); }
.tourm-child-cruise-form .elementor-message-danger,
.tourm-child-cruise-form .elementor-error .elementor-field-textual { border-color: var(--error-color); }
.tourm-child-cruise-form .elementor-field-type-acceptance label { color: var(--title-color); font-size: 14px; }
body .elementor .elementor-element.tourm-child-cruise-form .elementor-button[type="submit"] {
	min-width: 220px;
	padding: 14px 28px;
	border-radius: 999px;
	background: var(--theme-color);
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.18);
	color: var(--title-color);
	font-family: var(--title-font);
	font-size: 17px;
	font-weight: 700;
}
body .elementor .elementor-element.tourm-child-cruise-form .elementor-button[type="submit"]:hover { background: var(--title-color); color: var(--theme-color); }

/* ==========================================================================
   Escritorio (> 1024px, tablet de Elementor): como la ficha de trip, columna principal +
   aside de 390px con "Travel with purpose" y "Plan your Galápagos adventure"
   (tools/cruises/lib-layout.php). Aside fijo: cruise-template.js calcula su "top" para
   que, si es más alto que la pantalla, se fije cuando ya se ve su final.
   ========================================================================== */
@media (min-width: 1025px) {
	body .elementor .elementor-element.tourm-child-cruise-main {
		flex: 1 1 0;
		min-width: 0;
	}
	body .elementor .elementor-element.tourm-child-cruise-aside {
		flex: 0 0 390px;
		position: sticky;
		top: var(--tourm-child-cruise-aside-top, 125px);
		transition: top 0.3s ease-in-out;
	}
}

/* ==========================================================================
   Páginas de categoría de crucero (tools/cruises/build-category-page.php):
   cabecera, tarjetas de barco ("Cruise boat card (manual)"), tabla y fotos de los desplegables.
   ========================================================================== */
/* El H1 de la categoría con el mismo aspecto que el título de la navegación (gana al h1 del kit). */
body .tourm-child-cruise-nav h1.tourm-child-cruise-nav__title {
	margin: 0;
	color: var(--title-color2);
	font-family: var(--title-font);
	font-size: clamp(22px, 6.8vw, 32px);
	font-weight: 500;
	line-height: 1.15;
}

.tourm-child-cruise-hero img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: 16px;
}

/* Tarjeta de barco. */
.tourm-child-cruise-boatcard {
	display: block;
	overflow: hidden;
	border-radius: 14px;
	background: var(--white-color);
	box-shadow: 0 10px 26px rgba(17, 61, 72, 0.14);
	color: inherit;
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
a.tourm-child-cruise-boatcard:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(17, 61, 72, 0.2); color: inherit; }
a.tourm-child-cruise-boatcard:focus-visible { outline: 3px solid var(--primary-color); outline-offset: 3px; }
.tourm-child-cruise-boatcard__media { position: relative; }
.tourm-child-cruise-boatcard__media img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}
.tourm-child-cruise-boatcard__stars {
	position: absolute;
	top: 14px;
	left: 16px;
	display: flex;
	gap: 4px;
	color: var(--theme-color);
	font-size: 22px;
	filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35));
}
.tourm-child-cruise-boatcard__body {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 18px 16px;
}
.tourm-child-cruise-boatcard__main { flex: 1 1 0; min-width: 0; }
body .tourm-child-cruise-boatcard h3.tourm-child-cruise-boatcard__name {
	margin: 0 0 4px;
	color: var(--title-color);
	font-family: var(--title-font);
	font-size: 22px;
	font-weight: 700;
	line-height: 1.15;
	text-transform: uppercase;
}
.tourm-child-cruise-boatcard .tourm-child-cruise-price { margin: 0; font-size: 14px; white-space: normal; }
.tourm-child-cruise-boatcard .tourm-child-cruise-price strong { margin: 0 3px; font-size: 1.3em; }
.tourm-child-cruise-boatcard__facts {
	flex: 0 0 auto;
	margin: 0;
	padding: 0;
	list-style: none;
	color: var(--title-color);
	font-size: 14px;
	white-space: nowrap;
}
body .tourm-child-cruise-boatcard__facts li {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 4px 0;
	padding: 0;
	list-style: none;
}
body .tourm-child-cruise-boatcard__facts li::before { content: none; }
.tourm-child-cruise-boatcard__facts i { flex: 0 0 18px; color: var(--title-color); font-size: 15px; text-align: center; }

/* Contenido de las pestañas de categoría. */
.tourm-child-cruise-tabs .elementor-widget-text-editor table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	font-size: 13px;
}
.tourm-child-cruise-tabs .elementor-widget-text-editor table th,
.tourm-child-cruise-tabs .elementor-widget-text-editor table td {
	padding: 8px 10px;
	border: 0;
	border-bottom: 1px solid var(--th-border-color);
	vertical-align: top;
	text-align: left;
}
/* Cabecera: la fila del <thead> o, sin él, la primera fila de la tabla. */
.tourm-child-cruise-tabs .elementor-widget-text-editor table thead tr,
.tourm-child-cruise-tabs .elementor-widget-text-editor table > tbody:first-child > tr:first-child { font-weight: 700; color: var(--title-color); }
.tourm-child-cruise-tabs .elementor-widget-text-editor table tbody td { font-weight: 400; font-size: 13px; line-height: 1.5; }
.tourm-child-cruise-accordion .elementor-widget-image img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 8px; }
.tourm-child-cruise-cards { gap: 22px; }
@media (min-width: 1025px) {
	/* PC: tarjetas de barco en dos columnas. */
	body .elementor .elementor-element.tourm-child-cruise-cards {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: start;
	}
}

@media (max-width: 767px) {
	body .tourm-child-cruise-boatcard h3.tourm-child-cruise-boatcard__name { font-size: 18px; }
	.tourm-child-cruise-boatcard__body { gap: 8px; padding: 12px 14px 14px; }
	.tourm-child-cruise-boatcard__facts { font-size: 13px; }
	.tourm-child-cruise-boatcard .tourm-child-cruise-price { font-size: 13px; white-space: nowrap; }
}
