.relefy-posts {
	color: var(--e-global-color-primary, #171717);
}

.relefy-posts__filters {
	margin: 0 0 24px;
}

.relefy-posts__filter-row {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 6px;
}

.relefy-posts .relefy-posts__filter {
	padding: 4px 11px;
	border: 1px solid currentColor;
	border-radius: 999px;
	background: transparent;
	font: 0.8rem sans-serif;
	line-height: 1.4;
	font-weight: 400;
	letter-spacing: normal;
	text-transform: none;
	transition: none;
	cursor: pointer;
}

.relefy-posts__filter-row--category .relefy-posts__filter {
	--relefy-filter-color: var(--e-global-color-d2e862e, #15460C);
}

.relefy-posts__filter-row--region .relefy-posts__filter {
	--relefy-filter-color: var(--e-global-color-9d16d63, #4092B5);
}

.relefy-posts__filter-row--tag .relefy-posts__filter {
	--relefy-filter-color: var(--e-global-color-8404017, #33B679);
}

.relefy-posts .relefy-posts__filter:not(.is-active),
.relefy-posts .relefy-posts__filter:not(.is-active):hover,
.relefy-posts .relefy-posts__filter:not(.is-active):focus,
.relefy-posts .relefy-posts__filter:not(.is-active):active {
	color: var(--relefy-filter-color);
	background: transparent;
	border-color: var(--relefy-filter-color);
	box-shadow: none;
	transition: none;
}

.relefy-posts .relefy-posts__filter.is-active,
.relefy-posts .relefy-posts__filter.is-active:hover,
.relefy-posts .relefy-posts__filter.is-active:focus,
.relefy-posts .relefy-posts__filter.is-active:active {
	background: var(--relefy-filter-color);
	border-color: var(--relefy-filter-color);
	color: #fff;
	box-shadow: none;
	transition: none;
}

.relefy-posts__filter[hidden] {
	display: none;
}

.relefy-posts__filter:focus-visible,
.relefy-posts__read-more:focus-visible {
	outline: 2px solid var(--e-global-color-accent, #B79B68);
	outline-offset: 3px;
}

.relefy-posts__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.relefy-posts__card {
	min-width: 0;
	border: 1px solid var(--e-global-color-relefy-stone, #D8D3C9);
}

.relefy-posts__image,
.relefy-posts__image-placeholder,
.relefy-posts__skeleton-image {
	display: block;
	width: 100%;
	aspect-ratio: 1.6;
	background: var(--e-global-color-relefy-stone, #D8D3C9);
}

.relefy-posts__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.relefy-posts__body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 22px 24px 26px;
}

.relefy-posts__category {
	margin: 0 0 10px;
	font-size: 12px;
	line-height: 1.4;
	text-transform: uppercase;
}

.relefy-posts__title {
	margin: 0 0 16px;
	font-size: 24px;
	line-height: 1.35;
}

.relefy-posts__read-more {
	color: inherit;
	font-size: 18px;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.relefy-posts__empty {
	grid-column: 1 / -1;
	margin: 0;
}

.relefy-posts__skeleton {
	min-width: 0;
	border: 1px solid var(--e-global-color-relefy-stone, #D8D3C9);
	animation: relefy-posts-fade-in 333ms ease both, relefy-posts-pulse 1800ms ease-in-out 333ms infinite;
}

.relefy-posts__skeleton-image,
.relefy-posts__skeleton-category,
.relefy-posts__skeleton-title,
.relefy-posts__skeleton-link {
	background: var(--e-global-color-relefy-stone, #D8D3C9);
}

.relefy-posts__skeleton-body {
	padding: 22px 24px 26px;
}

.relefy-posts__skeleton-category {
	width: 38%;
	height: 12px;
	margin-bottom: 14px;
}

.relefy-posts__skeleton-title {
	width: 90%;
	height: 52px;
	margin-bottom: 16px;
}

.relefy-posts__skeleton-link {
	width: 30%;
	height: 18px;
}

@keyframes relefy-posts-fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes relefy-posts-pulse {
	0%, 100% { opacity: 0.72; }
	50% { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
	.relefy-posts__skeleton {
		animation-duration: 0.01ms;
		animation-iteration-count: 1;
	}
}
