/**
 * Chesaalula — Discovery Insight Block
 * Reusable editorial pattern for territory insight sections.
 */

.vk-discovery-insight {
	--vk-color-isthmus-teal: #006d77;
	--vk-color-celebration-coral: #ff6f61;
	--vk-color-fiesta-yellow: #ffb703;
	--vk-di-section-title-size: 3.5rem;
	--vk-di-subtitle-size: 1.5rem;
	--vk-di-icon-size: 6rem;
	--vk-di-label-size: 0.75rem;
	--vk-di-headline-size: 1.75rem;
	--vk-di-headline-max-width: 26.25rem;
	--vk-di-description-size: 1.125rem;
	--vk-di-description-max-width: 27.5rem;
	--vk-di-space-title-subtitle: 1rem;
	--vk-di-space-subtitle-grid: 2.25rem;
	--vk-di-space-icon-label: 0.75rem;
	--vk-di-space-label-headline: 0.75rem;
	--vk-di-space-headline-description: 1.25rem;
	--vk-di-accent: var(--vk-color-isthmus-teal, #006d77);
	--vk-di-icon-bg: rgba(0, 109, 119, 0.1);
	--vk-di-icon-ring: 0.5rem;
}

.vk-discovery-insight-header {
	max-width: 48rem;
	margin-inline: auto;
	margin-bottom: var(--vk-di-space-subtitle-grid);
	text-align: center;
}

.vk-discovery-insight-header__title {
	margin: 0 0 var(--vk-di-space-title-subtitle);
	font-size: var(--vk-di-section-title-size);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -0.028em;
	color: var(--vk-d-midnight, #0f172a);
}

.vk-discovery-insight-header__subtitle {
	margin: 0 auto;
	max-width: 44ch;
	font-size: var(--vk-di-subtitle-size);
	font-weight: 400;
	line-height: 1.6;
	color: rgba(15, 23, 42, 0.55);
}

.vk-discovery-insight-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 3rem;
}

.vk-discovery-insight-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	min-width: 0;
	padding: 2rem 1.25rem;
}

.vk-discovery-insight-item--accent-teal {
	--vk-di-accent: var(--vk-color-isthmus-teal, #006d77);
	--vk-di-icon-bg: rgba(0, 109, 119, 0.1);
}

.vk-discovery-insight-item--accent-coral {
	--vk-di-accent: var(--vk-color-celebration-coral, #ff6f61);
	--vk-di-icon-bg: rgba(255, 111, 97, 0.1);
}

.vk-discovery-insight-item--accent-gold {
	--vk-di-accent: var(--vk-color-fiesta-yellow, #ffb703);
	--vk-di-icon-bg: rgba(255, 183, 3, 0.1);
}

.vk-discovery-insight-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: calc(var(--vk-di-icon-size) + var(--vk-di-icon-ring));
	height: calc(var(--vk-di-icon-size) + var(--vk-di-icon-ring));
	margin: 0 auto var(--vk-di-space-icon-label);
	border-radius: 50%;
	background: var(--vk-di-icon-bg);
	color: var(--vk-di-accent);
}

.vk-discovery-insight-icon svg {
	display: block;
	width: var(--vk-di-icon-size);
	height: var(--vk-di-icon-size);
}

.vk-discovery-insight-label {
	margin: 0 0 var(--vk-di-space-label-headline);
	font-size: var(--vk-di-label-size);
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--vk-di-accent);
}

.vk-discovery-insight-title {
	margin: 0 auto var(--vk-di-space-headline-description);
	max-width: var(--vk-di-headline-max-width);
	font-family: inherit;
	font-size: var(--vk-di-headline-size);
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.018em;
	color: rgba(15, 23, 42, 0.9);
}

.vk-discovery-insight-description {
	margin: 0 auto;
	max-width: var(--vk-di-description-max-width);
	font-size: var(--vk-di-description-size);
	font-weight: 400;
	line-height: 1.7;
	color: rgba(15, 23, 42, 0.58);
}

@media (min-width: 992px) {
	.vk-discovery-insight-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0;
		align-items: stretch;
	}

	.vk-discovery-insight-item {
		padding: 2.5rem 1.75rem;
	}

	.vk-discovery-insight-item:not(:first-child) {
		border-left: 1px solid rgba(15, 23, 42, 0.09);
	}
}

@media (max-width: 991px) {
	.vk-discovery-insight-item:not(:last-child) {
		padding-bottom: 3rem;
		border-bottom: 1px solid rgba(15, 23, 42, 0.08);
	}
}

/* Subregion + event detail — compact editorial insight rhythm */
body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight,
body.vk-event-detail-page #primary.vk-detail .vk-discovery-insight {
	--vk-di-section-title-size: clamp(2.1rem, 3.65vw, 2.85rem);
	--vk-di-subtitle-size: clamp(1rem, 1.05vw, 1.125rem);
	--vk-di-icon-size: 4.75rem;
	--vk-di-icon-ring: 0.375rem;
	--vk-di-label-size: 0.6875rem;
	--vk-di-headline-size: clamp(1.22rem, 1.32vw, 1.38rem);
	--vk-di-description-size: clamp(1rem, 1.02vw, 1.0625rem);
	--vk-di-headline-max-width: 100%;
	--vk-di-description-max-width: 100%;
	--vk-di-space-title-subtitle: 0.875rem;
	--vk-di-space-subtitle-grid: clamp(1.125rem, 2vw, 1.625rem);
	--vk-di-space-icon-label: 0.4375rem;
	--vk-di-space-label-headline: 0.375rem;
	--vk-di-space-headline-description: 0.5625rem;
}

body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-header,
body.vk-event-detail-page #primary.vk-detail .vk-discovery-insight-header {
	max-width: 52rem;
}

body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-header__title,
body.vk-event-detail-page #primary.vk-detail .vk-discovery-insight-header__title {
	line-height: 1.06;
	text-wrap: pretty;
	white-space: normal;
	overflow-wrap: break-word;
	hyphens: manual;
}

body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-header__subtitle,
body.vk-event-detail-page #primary.vk-detail .vk-discovery-insight-header__subtitle {
	max-width: 48ch;
	font-weight: 400;
	line-height: 1.48;
	letter-spacing: 0.01em;
	color: rgba(15, 23, 42, 0.5);
	text-wrap: pretty;
	white-space: normal;
}

body.vk-subregion-detail-page #primary.vk-detail .vk-detail-section.vk-discovery-insight,
body.vk-event-detail-page #primary.vk-detail .vk-detail-section.vk-discovery-insight {
	padding-block: 0;
}

/* First block after hero — homologated header offset */
body.vk-subregion-detail-page #primary.vk-detail #vk-discovery-intro.vk-discovery-insight--territory,
body.vk-event-detail-page #primary.vk-detail #vk-discovery-intro.vk-discovery-insight--territory {
	padding-top: var(--vk-d-header-offset, clamp(2.35rem, 4.2vw, 3.1rem));
	padding-bottom: 0;
}

body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-label {
	font-weight: 800;
	letter-spacing: 0.18em;
}

body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-title {
	font-weight: 600;
	line-height: 1.18;
	letter-spacing: -0.02em;
	color: rgba(15, 23, 42, 0.88);
	text-wrap: balance;
}

body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-description {
	line-height: 1.52;
	letter-spacing: 0.008em;
	color: rgba(15, 23, 42, 0.54);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-grid {
	gap: 2rem;
}

body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-item {
	padding: 0.75rem 1.15rem 1.35rem;
}

/* Subregion + event detail — section shells only; layout lives in .vk-discovery-insight */
body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight--territory,
body.vk-event-detail-page #primary.vk-detail .vk-discovery-insight--territory {
	background: linear-gradient(180deg, #fffefb 0%, rgba(250, 246, 239, 0.28) 100%);
}

body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight--reasons,
body.vk-event-detail-page #primary.vk-detail .vk-discovery-insight--reasons {
	background: linear-gradient(180deg, rgba(250, 246, 239, 0.42) 0%, #fffefb 38%, rgba(255, 254, 251, 0.96) 100%);
	padding-top: var(--vk-d-header-offset, clamp(2.35rem, 4.2vw, 3.1rem));
	padding-bottom: clamp(2.5rem, 4.5vw, 3.35rem);
	border-top: 1px solid rgba(0, 109, 119, 0.08);
	overflow-x: clip;
}

body.vk-subregion-detail-page #primary.vk-detail #vk-detail-places + .vk-discovery-insight--reasons,
body.vk-event-detail-page #primary.vk-detail #vk-event-places + .vk-discovery-insight--reasons {
	padding-top: var(--vk-d-header-offset, clamp(2.35rem, 4.2vw, 3.1rem));
}

/* Lodging — same editorial shell as Razones (title + subtitle + pillars + carousel) */
body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight--lodging,
body.vk-event-detail-page #primary.vk-detail .vk-discovery-insight--lodging {
	background: linear-gradient(180deg, rgba(250, 246, 239, 0.42) 0%, #fffefb 38%, rgba(255, 254, 251, 0.96) 100%);
	padding-top: var(--vk-d-header-offset, clamp(2.35rem, 4.2vw, 3.1rem));
	padding-bottom: clamp(2.5rem, 4.5vw, 3.35rem);
	border-top: 1px solid rgba(0, 109, 119, 0.08);
	overflow-x: clip;
}

body.vk-subregion-detail-page #primary.vk-detail #vk-detail-experiences + .vk-discovery-insight--lodging,
body.vk-event-detail-page #primary.vk-detail #vk-event-related + .vk-discovery-insight--lodging {
	padding-top: var(--vk-d-header-offset, clamp(2.35rem, 4.2vw, 3.1rem));
}

@media (min-width: 1100px) {
	body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-header,
	body.vk-event-detail-page #primary.vk-detail .vk-discovery-insight-header {
		max-width: 58rem;
	}

	body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight--territory .vk-discovery-insight-title,
	body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight--reasons .vk-discovery-insight-title,
	body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight--lodging .vk-discovery-insight-title,
	body.vk-event-detail-page #primary.vk-detail .vk-discovery-insight--lodging .vk-discovery-insight-title {
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		width: 100%;
	}
}

@media (min-width: 992px) {
	body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-grid {
		align-items: center;
	}

	body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-item {
		padding: clamp(0.65rem, 1.1vw, 0.85rem) clamp(1.35rem, 1.85vw, 1.65rem) clamp(1.35rem, 2vw, 1.75rem);
	}

	body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-item:not(:first-child) {
		border-left: none;
	}

	body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-item:not(:first-child)::before {
		content: "";
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
		width: 1px;
		height: clamp(7.5rem, 62%, 13.5rem);
		background: rgba(15, 23, 42, 0.09);
		pointer-events: none;
	}

	body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-item {
		position: relative;
	}
}

@media (max-width: 991px) {
	body.vk-subregion-detail-page #primary.vk-detail .vk-discovery-insight-item:not(:last-child) {
		padding-bottom: 2rem;
	}
}
