.hk-team {
	--hk-team-gap: 25px;

	position: relative;
}

.hk-team--grid .hk-team__track {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: var(--hk-team-gap);
}

.hk-team__card {
	--hk-team-radius: 15px;

	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	border-radius: var(--hk-team-radius);
	background: var(--hk-white);
	color: inherit;
	text-decoration: none;
	transition: transform .3s var(--hk-ease), box-shadow .3s var(--hk-ease);
}

a.hk-team__card:hover,
.hk-team__card:hover {
	color: inherit;
	transform: translateY(-4px);
	box-shadow: 0 14px 30px rgba(102, 50, 14, .12);
}

.hk-team__photo {
	position: relative;
	height: 237px;
	overflow: hidden;
	background: var(--hk-orange);
	isolation: isolate;
}

.hk-team__swirl {
	position: absolute;
	top: -12%;
	left: -2.5%;
	z-index: -1;
	width: 102%;
	height: 119%;
	background: var(--hk-cream-2);
	-webkit-mask: url("../../../assets/images/decor/team-swirl.svg") center / contain no-repeat;
	mask: url("../../../assets/images/decor/team-swirl.svg") center / contain no-repeat;
	pointer-events: none;
}

.hk-team__img {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: auto !important;
	max-width: 90% !important;
	height: 100% !important;
	object-fit: contain;
	object-position: bottom center;
	transform: translateX(-50%);
	transition: transform .4s var(--hk-ease);
}

.hk-team__card:hover .hk-team__img {
	transform: translateX(-50%) scale(1.04);
	transform-origin: 50% 100%;
}

.hk-team__info {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 13px 9px 18px;
}

.hk-team__name {
	margin: 0 0 3px;
	color: #000;
	font-family: var(--hk-font);
	font-size: clamp(18px, 1.55vw, 22px);
	font-weight: 600;
	line-height: 1.35;
}

.hk-team__meta {
	display: flex;
	align-items: flex-start;
	gap: 6px;
	margin: 0;
	color: #000;
	font-size: 14px;
	line-height: 1.35;
}

.hk-team__meta img {
	flex: none;
	width: 15px;
	height: auto;
	margin-top: 2px;
}

/* Carousel */
.hk-team--carousel .hk-team__viewport {
	overflow: hidden;
}

.hk-team--carousel .hk-team__item {
	height: auto;
}

.hk-team__nav {
	display: flex;
	justify-content: center;
	gap: 12px;
	margin-top: 24px;
}

@media (max-width: 1024px) {
	.hk-team--grid .hk-team__track {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.hk-team--grid .hk-team__track {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		--hk-team-gap: 14px;
	}

	.hk-team__photo {
		height: 190px;
	}

	.hk-team__meta {
		font-size: 13px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.hk-team__card,
	.hk-team__img {
		transition: none;
	}
}
