.carousel--programs {
	grid-auto-flow: column;
	grid-auto-columns: calc(50% - 0.75rem);
	gap: var(--space-5);
	padding: var(--space-3);
	margin: calc(0rem - var(--space-3));
}

.program-card {
	position: relative;
	min-width: 0;
	border-radius: var(--radius-lg);
	background: #a9a5a3;
	transform: translate(0.45rem, 0.45rem);
}

.program-card__link {
	position: relative;
	display: block;
	min-height: clamp(24rem, 30vw, 32rem);
	overflow: hidden;
	border: var(--border-width) solid var(--color-border);
	border-radius: var(--radius-lg);
	background: var(--color-secondary);
	color: var(--color-secondary);
	text-decoration: none;
	transform: translate(-0.45rem, -0.45rem);
}

.program-card__link::after {
	position: absolute;
	inset: 0.45rem;
	border: 2px solid var(--color-primary);
	border-radius: calc(var(--radius-lg) - 0.45rem);
	content: "";
	pointer-events: none;
}

.program-card__image { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; }

.program-card__content {
	position: absolute;
	z-index: 2;
	right: var(--space-4);
	bottom: var(--space-5);
	left: var(--space-4);
	max-height: calc(100% - (2 * var(--space-5)));
	overflow: hidden;
}

.program-card__title { margin: 0; font-size: clamp(1.35rem, 1.9vw, 2.5rem); line-height: 1.12; overflow-wrap: anywhere; }
.program-card__excerpt { margin: 0.45rem 0 0; font-size: clamp(0.95rem, 1.1vw, 1.25rem); line-height: 1.32; overflow-wrap: anywhere; }
.program-card__text-shape {
	padding: 0.12em 0.38em 0.18em;
	border-radius: 0.38em;
	background: var(--color-surface);
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
}

#panel-quiero-conocer .home-programs .carousel-controls {
	--program-control-offset: clamp(2rem, 3vw, 3.5rem);
	left: calc(0rem - var(--program-control-offset));
	width: calc(100% + var(--program-control-offset) + var(--program-control-offset));
}

#panel-quiero-conocer .home-programs .carousel-control {
	color: var(--color-text);
}

#panel-quiero-conocer .home-programs .carousel-control:hover {
	color: var(--color-primary);
}

#panel-quiero-conocer .home-programs .carousel-control[disabled] { opacity: 1; }

@media (max-width: 74.9375rem) {
	.carousel--programs { grid-auto-columns: calc(50% - 0.75rem); }
}

@media (max-width: 47.9375rem) {
	.carousel--programs { grid-auto-columns: 90%; gap: var(--space-4); }
	.program-card__link { min-height: clamp(25rem, 125vw, 32rem); }
	#panel-quiero-conocer .home-programs .carousel-controls { right: var(--space-4); left: auto; width: auto; }
}
