/* ==========================================================================
   YETI Category Cards widget
   ========================================================================== */

.yeti-cats {
	padding-block: 32px;
	--yeti-cats-cols: 4;
}
.yeti-cats__grid {
	display: grid;
	grid-template-columns: repeat(var(--yeti-cats-cols), minmax(0, 1fr));
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.yeti-cats__card {
	display: flex;
	align-items: center;
	gap: 18px;
	height: 100%;
	padding: 20px 22px;
	background: var(--yeti-card);
	border-radius: var(--yeti-radius);
	color: var(--yeti-ink);
	transition: transform var(--yeti-ease), box-shadow var(--yeti-ease);
}
.yeti-cats__card:hover {
	color: var(--yeti-ink);
	transform: translateY(-4px);
	box-shadow: var(--yeti-shadow);
}

.yeti-cats__img {
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 84px;
	height: 150px;
}
.yeti-cats__photo {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.yeti-cats__body {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}
.yeti-cats__title {
	font-size: 15.5px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--yeti-ink);
}
.yeti-cats__sub {
	font-size: 13.5px;
	color: var(--yeti-muted);
}
.yeti-cats__cta {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	align-self: flex-start;
	margin-top: 12px;
	padding-bottom: 2px;
	border-bottom: 2px solid var(--yeti-ink);
	font-size: 12.5px;
	font-weight: 700;
}
.yeti-cats__card:hover .yeti-cats__cta svg {
	transform: translateX(3px);
}
.yeti-cats__cta svg {
	transition: transform var(--yeti-ease);
}

/* ---- Small phones: image on top, centred ---- */
@media (max-width: 600px) {
	.yeti-cats__grid {
		gap: 12px;
	}
	.yeti-cats__card {
		flex-direction: column;
		justify-content: center;
		gap: 10px;
		padding: 16px 12px;
		text-align: center;
	}
	.yeti-cats__img {
		width: 100%;
		height: 110px;
	}
	.yeti-cats__body {
		align-items: center;
	}
	.yeti-cats__cta {
		align-self: center;
		margin-top: 8px;
	}
}
