/* Case Listing - базовая сетка и карточки. Оформление (цвета/границы/тени)
   задаётся настройками виджета инлайн-стилями и перекрывает эти значения. */

.clp-listing {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(3, 1fr);
	margin: 0;
}

.clp-cols-1 { grid-template-columns: 1fr; }
.clp-cols-2 { grid-template-columns: repeat(2, 1fr); }
.clp-cols-3 { grid-template-columns: repeat(3, 1fr); }
.clp-cols-4 { grid-template-columns: repeat(4, 1fr); }
.clp-cols-5 { grid-template-columns: repeat(5, 1fr); }
.clp-cols-6 { grid-template-columns: repeat(6, 1fr); }

@media (max-width: 1024px) {
	.clp-listing { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
	.clp-listing { grid-template-columns: 1fr; }
}

.clp-card {
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	overflow: hidden;
	height: 100%;
}

.clp-card__thumb {
	display: block;
	line-height: 0;
}

.clp-card__thumb img {
	width: 100%;
	height: auto;
	object-fit: cover;
}

.clp-card__body {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 20px;
	flex: 1 1 auto;
}

.clp-card__title {
	margin: 0;
	font-size: 18px;
	line-height: 1.35;
}

.clp-card__title a {
	text-decoration: none;
}

.clp-card__excerpt {
	margin: 0;
}

.clp-card__excerpt p {
	margin: 0 0 0.6em;
}

.clp-card__btn {
	display: inline-block;
	align-self: flex-start;
	margin-top: auto;
	padding: 10px 18px;
	border-radius: 6px;
	background: #1f2937;
	color: #fff;
	text-decoration: none;
}

.clp-empty {
	margin: 0;
	opacity: 0.7;
}
