/* Filters */
.r1zn-project-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	justify-content: flex-end;
}

.r1zn-filter-link {
	display: inline-block;
    padding: 1px 5px;
    text-decoration: none;
    color: inherit;
    font-size: 0.92rem;
    line-height: 1.2;
    transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
    color: #e9e4e0;
    border: 1px solid #000;
}

.r1zn-filter-link:hover,
.r1zn-filter-link:focus {
	border-color: #e9e4e0;
	outline: none;
    color: #e9e4e0;
    
}

.r1zn-filter-link.is-active {
	background: #e9e4e0;
    color: #000000;
    border: 1px solid #e9e4e0;
}

/* Grid + cards */
.r1zn-projects-grid {
	/* display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 1.5rem; */

	 display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  max-width: calc(3 * 280px + 2 * 20px); /* 3 колони + gap */
  margin: 0 auto;
  gap: 20px;
}

.r1zn-project-card {
	
}

.r1zn-project-card__image {
	display: block;
	aspect-ratio: 4 / 3;
	background: #f5f5f5;
}

.r1zn-project-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.r1zn-project-card__placeholder {
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #f2f2f2, #e9e9e9);
}

.r1zn-project-card__content {
	padding: 10px 0;
	display: grid;
	gap: 5px;
}

.r1zn-project-card__meta {
	font-size: 0.8rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #777;
}

.r1zn-project-card__title {
	margin: 0;
	font-size: 1.125rem;
	line-height: 1.3;
}

.r1zn-project-card__title a {
	color: inherit;
	text-decoration: none;
}

.r1zn-project-card__title a:hover,
.r1zn-project-card__title a:focus {
	text-decoration: underline;
}

.r1zn-project-card__excerpt p {
	margin: 0;
	color: #555;
}

.r1zn-project-card__link {
	display: inline-block;
	font-weight: 600;
	text-decoration: none;
}

.r1zn-project-card__link:hover,
.r1zn-project-card__link:focus {
	text-decoration: underline;
}

/* JS filtering helpers */
.r1zn-project-card.is-hidden,
.r1zn-projects-empty.is-hidden {
	display: none;
}

.r1zn-projects-empty {
	margin-top: 1rem;
	color: #666;
}

.r1zn-term-description {
	margin-top: 1rem;
	max-width: 90ch;
	color: #555;
}