/* Works filter fallback visibility (only used if Isotope is unavailable). */
.works.filtered-content .entry.mf-filter-hidden {
	display: none !important;
}

.works.filtered-content.mf-isotope-filtering .entry {
	will-change: transform, opacity;
}

/* Empty state shown only when no item matches current category. */
.mf-works-empty {
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 10px;
	margin-top: 20px;
	padding: 14px 16px;
	text-align: center;
}

/* Accessibility: visible keyboard focus for full-card links in "View More Works". */
.single-work #work-grid-container .entry-work-grid .entry-link-mask.vision-work-card-link:focus-visible,
.single-work #work-grid-container .entry-work-masonry .entry-link-mask.vision-work-card-link:focus-visible,
.single-work #work-grid-container .entry-work-grid .entry-link-mask.vision-work-card-overlay-link:focus-visible,
.single-work #work-grid-container .entry-work-masonry .entry-link-mask.vision-work-card-overlay-link:focus-visible {
	outline: 2px solid rgba(255, 255, 255, 0.92);
	outline-offset: 3px;
	border-radius: 10px;
}

/* Full-card click layer for "View More Works" without changing visual design. */
.single-work #work-grid-container .entry .entry-container {
	position: relative;
}

.single-work #work-grid-container .entry .vision-work-card-overlay-link {
	position: absolute;
	inset: 0;
	z-index: 7;
	display: block;
}

.single-work #work-grid-container .entry .vision-work-entry-media .vision-work-video-badge {
	z-index: 8;
}

/* Works module: spinner removed at source; keep this scoped fallback hidden. */
.category-filter-work + .filter-pagination-spinner,
.category-filter-work ~ .filter-pagination-spinner {
	display: none !important;
}

/* Works thumbnails reliability: avoid persistent "lazy-hidden" state on some browsers/race conditions. */
.filtered-content[data-post-type="work"] .vision-work-entry-media img.lazy-hidden,
.filtered-content[data-post-type="work"] .vision-work-entry-media img.lazy-img {
	opacity: 1 !important;
	visibility: visible !important;
}

/* Portfolio categories: force a clean centered layout on all breakpoints. */
.category-filter.category-filter-work {
	width: 100%;
	padding-inline: clamp(10px, 2.2vw, 20px);
	box-sizing: border-box;
}

.category-filter.category-filter-work ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 10px 14px;
	width: 100%;
	max-width: 940px;
	margin: clamp(20px, 3.2vw, 30px) auto;
	padding: 0;
	list-style: none;
}

.category-filter.category-filter-work ul li {
	display: block;
	margin: 0;
	padding: 0;
	float: none;
}

.category-filter.category-filter-work ul li a.filter-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 8px 16px;
	text-align: center;
	white-space: normal;
	line-height: 1.12;
}

@media (max-width: 640px) {
	.category-filter.category-filter-work ul {
		gap: 8px 10px;
		max-width: 100%;
		margin: 18px auto 16px;
	}

	.category-filter.category-filter-work ul li a.filter-link {
		min-height: 38px;
		padding: 7px 12px;
		font-size: 0.9rem;
	}
}

@media (max-width: 980px) {
	.filtered-content[data-post-type="work"].display-grid {
		height: auto !important;
		position: relative !important;
	}

	.filtered-content[data-post-type="work"].display-grid .entry {
		position: relative !important;
		inset: auto !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;
		transform: none !important;
	}
}
