/* Home H2 — grids (desktop-first; refinar en home-h2-responsive.css) */
.h2-grid--3col {
	display: grid;
	grid-template-columns: 1fr 1.2fr 1fr;
	gap: clamp(0.75rem, 2vw, 1.25rem);
	align-items: start;
}

.h2-grid--3equal {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(0.75rem, 2vw, 1rem);
}

.h2-grid--destino {
	display: grid;
	grid-template-columns: 1fr 1.35fr 1fr;
	gap: clamp(0.75rem, 2vw, 1rem);
	align-items: start;
}

.h2-grid--video {
	display: grid;
	grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
	gap: clamp(0.75rem, 2vw, 1rem);
	align-items: start;
}

.h2-grid--hoteles,
.h2-grid--aero,
.h2-grid--cruceros {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) minmax(0, 0.95fr);
	gap: clamp(0.75rem, 2vw, 1rem);
	align-items: start;
}

.h2-aero__left,
.h2-cruce__mid,
.h2-hotel__mid {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.h2-int__row--small {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(0.5rem, 1.5vw, 0.75rem);
}

/* Tablet ancha: triple → 2 columnas, lista ancha abajo */
@media screen and (max-width: 1100px) {
	.h2-grid--3col,
	.h2-grid--destino,
	.h2-grid--hoteles,
	.h2-grid--aero,
	.h2-grid--cruceros {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.h2-col--usa,
	.h2-destino__right,
	.h2-hotel__list,
	.h2-aero__right,
	.h2-cruce__right {
		grid-column: 1 / -1;
	}

	.h2-int__row--small {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* Tablet / móvil grande: una columna */
@media screen and (max-width: 782px) {
	.h2-grid--3col,
	.h2-grid--3equal,
	.h2-grid--destino,
	.h2-grid--video,
	.h2-grid--hoteles,
	.h2-grid--aero,
	.h2-grid--cruceros {
		grid-template-columns: minmax(0, 1fr);
	}

	.h2-col--usa,
	.h2-destino__right,
	.h2-hotel__list,
	.h2-aero__right,
	.h2-cruce__right {
		grid-column: auto;
	}

	.h2-int__row--small {
		grid-template-columns: minmax(0, 1fr);
	}

	/* Destacado al inicio en móvil */
	.h2-grid--destino .h2-destino__center {
		order: -1;
	}

	.h2-grid--aero .h2-aero__center {
		order: -1;
	}

	/* Cultura: columna central primero */
	.h2-grid--cultura .h2-col--cultura-center {
		order: -1;
	}
}
