.card {
	--card-gap: var(--spacing-10);

	@media (width > 768px) {
		--card-gap: var(--spacing-20);
	}

	display: flex;
	flex-direction: column;
	justify-content: start;
	gap: var(--card-gap);
}

.card--featured {
	grid-column: span 2;

	&:not(:first-child) {
		padding-block-start: var(--spacing-20);

		@media (width > 768px) {
			padding-block-start: var(--spacing-40);
		}
	}
}

.card__image {
	.card--featured & {
		clear: both;
		justify-self: center;
		width: 100%;
		max-width: var(--xxl);

		@media (width > 1440px) {
			width: var(--xxl);
			margin-left: calc((var(--xxl) - var(--l)) / -2);
		}
	}
}

.card__embed {
	width: 100%;
	max-width: var(--xxl);

	@media (width > 1440px) {
		width: var(--xxl);
		margin-left: calc((var(--xxl) - var(--l)) / -2);
	}
}

.card__text {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin: 0;

	.card--featured & {
		padding-block: var(--spacing-20);

		@media (width > 768px) {
			padding-block: var(--spacing-40);
		}
	}
}

.card__description--html {
	p {
		column-count: 2;
		column-gap: var(--spacing-30);

		&:first-child {
			padding-block-start: var(--spacing-30);

			@media (width > 1000px) {
				padding-block-start: var(--spacing-70);
			}
		}

		&:last-child {
			padding-block-end: var(--spacing-30);

			@media (width > 1000px) {
				padding-block-end: var(--spacing-70);
			}
		}
	}
}

.card__title {
	font-size: var(--h4);
	margin: 0;
}

.card__subtitle {
	margin: 0;
}

.card__link {
	a {
		display: inline-block;
		font-weight: 700;
	}
}
