/**
 * Related vacancies shortcode styles.
 *
 * Reuses the vacancies-list card UI with a dedicated section layout.
 */

.tr-ui.tr-related-vacancies {
	display: block;
}

.tr-ui .tr-related-vacancies__title {
	margin: 0 0 16px;
	font-size: clamp(24px, 3vw, 32px);
	line-height: 1.14;
	letter-spacing: -0.015em;
	font-weight: 740;
	color: var(--tr-secondary);
}

.tr-ui .tr-related-vacancies__list {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	align-items: stretch;
	grid-auto-rows: 1fr;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card--related-compact {
	height: 100%;
	padding: 15px 15px 14px;
	min-width: 0;
	overflow: hidden;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card__body--related-compact {
	grid-template-columns: 1fr;
	gap: 10px;
	height: 100%;
	min-width: 0;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card__main--related-compact {
	height: 100%;
	min-width: 0;
	overflow: hidden;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card--related-compact .tr-vacancy-card__header {
	margin-bottom: 10px;
	gap: 6px;
	min-width: 0;
	overflow: visible;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card--related-compact .tr-vacancy-card__title {
	min-width: 0;
	overflow: visible;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card--related-compact .tr-vacancy-card__title-link {
	display: -webkit-box;
	min-width: 0;
	max-width: 100%;
	line-height: 1.2;
	padding-block: 1px;
	overflow: hidden;
	white-space: normal;
	text-overflow: ellipsis;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card--related-compact .tr-vacancy-card__location {
	display: -webkit-box;
	min-width: 0;
	max-width: 100%;
	line-height: 1.3;
	overflow: hidden;
	white-space: normal;
	text-overflow: ellipsis;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card--related-compact .tr-vacancy-card__excerpt {
	display: -webkit-box;
	min-width: 0;
	max-width: 100%;
	margin: 0;
	line-height: 1.35;
	padding-block: 1px;
	overflow: hidden;
	white-space: normal;
	text-overflow: ellipsis;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card__meta--related-compact {
	height: auto;
	align-self: auto;
	margin-top: 10px;
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	gap: 8px;
	max-height: none;
	overflow: visible;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card__meta--related-compact .tr-vacancy-card__meta-item {
	align-items: flex-start;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card__actions--related-compact {
	margin-top: auto;
	padding-top: 14px;
	gap: 10px;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: stretch;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card__actions--related-compact .tr-vacancy-card__action {
	flex: 0 0 auto;
	width: 100%;
	min-width: 0;
	height: 38px;
	padding: 0 14px;
	font-size: 13px;
	justify-content: center;
}

.tr-ui .tr-related-vacancies__list .tr-vacancy-card__actions--related-compact .tr-vacancy-card__action--primary,
.tr-ui .tr-related-vacancies__list .tr-vacancy-card__actions--related-compact .tr-vacancy-card__action--secondary {
	min-width: 0;
}

@media (max-width: 1180px) {
	.tr-ui .tr-related-vacancies__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 780px) {
	.tr-ui .tr-related-vacancies__list {
		grid-template-columns: 1fr;
	}

	.tr-ui .tr-related-vacancies__list .tr-vacancy-card__actions--related-compact {
		padding-top: 12px;
	}

	.tr-ui .tr-related-vacancies__list .tr-vacancy-card__actions--related-compact .tr-vacancy-card__action {
		height: 36px;
	}
}
