.hvv-photos-archive {
	width: 100%;
	overflow-x: hidden;
}

.hvv-photos-archive__header {
	display: flex;
	align-items: center;
	gap: 70px;
	padding: 100px 80px 0 0;
	margin-bottom: 80px;
}

.hvv-photos-archive__bar {
	width: 111px;
	height: 10px;
	background: #1A8DA1;
	border-top-right-radius: 10px;
	border-bottom-right-radius: 10px;
	flex-shrink: 0;
	display: block;
}

.hvv-photos-archive__title {
	margin: 0;
	color: #000;
	font-family: Montserrat, sans-serif;
	font-size: 40px;
	font-weight: 700;
	letter-spacing: 1.6px;
	line-height: normal;
	text-transform: uppercase;
}

.hvv-photos-archive__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 50px;
	max-width: 1760px;
	margin: 0 auto;
	padding: 0 80px;
	box-sizing: border-box;
}

.hvv-photos-archive__empty {
	text-align: center;
	font-family: Montserrat, sans-serif;
	font-size: 20px;
	color: #393737;
	padding: 60px 20px;
}

/* Pagination (same look as other archives) */
.hvv-photos-pagination {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 36px;
	margin: 80px auto 120px;
	max-width: 1760px;
	padding: 0 80px;
	box-sizing: border-box;
}

.hvv-photos-pagination .page-numbers {
	color: #393737;
	font-family: Montserrat, sans-serif;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.96px;
	text-decoration: none;
	line-height: normal;
	display: inline-flex;
	align-items: center;
	transition: color 0.3s ease;
}

.hvv-photos-pagination .page-numbers:hover { color: #1A8DA1; }
.hvv-photos-pagination .page-numbers.current { color: #1A8DA1; }

.hvv-photos-pagination .prev,
.hvv-photos-pagination .next {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.hvv-photos-pagination .prev .hvv-arrow,
.hvv-photos-pagination .next .hvv-arrow {
	width: 45px;
	height: 45px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: currentColor;
}

.hvv-photos-pagination .prev .hvv-arrow { transform: rotate(90deg); }
.hvv-photos-pagination .next .hvv-arrow { transform: rotate(-90deg); }

.hvv-photos-pagination .disabled,
.hvv-photos-pagination .disabled:hover {
	color: #ADAAAA;
	cursor: not-allowed;
	pointer-events: none;
}

.hvv-photos-pagination .dots { color: #393737; }

@media screen and (max-width: 1199px) {
	.hvv-photos-archive__header {
		padding: 60px 40px 0 0;
		gap: 40px;
	}
	.hvv-photos-archive__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 32px;
		padding: 0 40px;
	}
	.hvv-photos-pagination {
		padding: 0 40px;
	}
}

@media screen and (max-width: 768px) {
	.hvv-photos-archive__header {
		padding: 40px 20px 0 0;
		gap: 16px;
		margin-bottom: 40px;
	}
	.hvv-photos-archive__bar {
		width: 48px;
		height: 8px;
	}
	.hvv-photos-archive__title {
		font-size: 28px;
		letter-spacing: 1.12px;
	}
	.hvv-photos-archive__grid {
		grid-template-columns: 1fr;
		gap: 24px;
		padding: 0 20px;
	}
	.hvv-photos-pagination {
		margin: 48px auto 60px;
		padding: 0 20px;
		justify-content: center;
		gap: 16px;
	}
	.hvv-photos-pagination .page-numbers { font-size: 18px; }
	.hvv-photos-pagination .prev .hvv-arrow,
	.hvv-photos-pagination .next .hvv-arrow {
		width: 32px;
		height: 32px;
	}
}

/* ----- Figma "Медіатека усі фото моб" (390px wide) ----- */
@media screen and (max-width: 640px) {
	/* Header: bar 34×3 teal + title "фото" 12px dark gray on same row, x=20 */
	.hvv-photos-archive__header {
		padding: 24px 20px 0 0 !important;
		gap: 16px !important;
		margin-bottom: 16px !important;
		align-items: center !important;
	}
	.hvv-photos-archive__bar {
		width: 34px !important;
		height: 3px !important;
		border-top-right-radius: 10px !important;
		border-bottom-right-radius: 10px !important;
		border-top-left-radius: 0 !important;
		border-bottom-left-radius: 0 !important;
		background: #1A8DA1 !important;
		flex-shrink: 0 !important;
	}
	.hvv-photos-archive__title {
		font-size: 12px !important;
		font-weight: 700 !important;
		letter-spacing: 0.48px !important;
		color: #393737 !important;
		text-transform: uppercase !important;
		line-height: 1.2 !important;
	}

	/* Grid — single column, full available width with 20px side padding */
	.hvv-photos-archive__grid {
		grid-template-columns: 1fr !important;
		gap: 15px !important;
		padding: 0 20px !important;
		max-width: 100% !important;
	}

	/* Card — white bg, drop shadow, rounded 6px, inner padding 17px 22px */
	.hvv-photos-archive__grid .hvv-photo-card {
		background: #FFFFFF !important;
		box-shadow: 0 4px 2px rgba(0,0,0,0.25) !important;
		border-radius: 6px !important;
		padding: 17px 22px !important;
		display: flex !important;
		flex-direction: column !important;
		gap: 12px !important;
		width: 100% !important;
		max-width: none !important;
		height: auto !important;
		box-sizing: border-box !important;
	}
	.hvv-photos-archive__grid .hvv-photo-card__image {
		width: 100% !important;
		height: auto !important;
		aspect-ratio: 256 / 131 !important;
		border-radius: 6px !important;
		overflow: hidden !important;
		margin: 0 !important;
	}
	.hvv-photos-archive__grid .hvv-photo-card__image img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
		display: block !important;
	}
	.hvv-photos-archive__grid .hvv-photo-card__body {
		padding: 0 !important;
	}
	.hvv-photos-archive__grid .hvv-photo-card__date {
		font-size: 10px !important;
		font-weight: 600 !important;
		color: #1A8DA1 !important;
		margin: 0 0 13px !important;
		text-transform: none !important;
		letter-spacing: 0 !important;
	}
	.hvv-photos-archive__grid .hvv-photo-card__description {
		font-size: 10px !important;
		font-weight: 500 !important;
		color: #2F2E2E !important;
		line-height: 1.35 !important;
		margin: 0 !important;
		text-transform: lowercase !important;
	}

	/* Pagination — "◁ Назад 1 2 3 Вперед ▷" 15px Bold, gap 25px between groups, 30px between numbers */
	.hvv-photos-pagination {
		margin: 32px auto 40px !important;
		padding: 0 20px !important;
		justify-content: center !important;
		gap: 25px !important;
	}
	.hvv-photos-pagination .page-numbers {
		font-size: 15px !important;
		font-weight: 700 !important;
		letter-spacing: 0.6px !important;
		color: #393737 !important;
	}
	.hvv-photos-pagination .page-numbers.current {
		color: #1A8DA1 !important;
	}
	.hvv-photos-pagination .prev,
	.hvv-photos-pagination .next { gap: 4px !important; }
	.hvv-photos-pagination .prev .hvv-arrow,
	.hvv-photos-pagination .next .hvv-arrow {
		width: 23px !important;
		height: 23px !important;
	}
}
