/*
Theme Name: Vectorquince Child
Template: blocksy
Version: 1.0.0
Description: Child theme for Vectorquince project templates and visual overrides.
Text Domain: vectorquince-child
*/

body.post-type-archive-proyectos,
body.single-proyectos {
	background-color: var(--theme-palette-color-8, #f7f4ef);
	background:
		radial-gradient(circle at top left, rgba(152, 163, 172, 0.08), transparent 28%),
		radial-gradient(circle at top right, rgba(184, 144, 103, 0.08), transparent 24%),
		linear-gradient(180deg, var(--theme-palette-color-8, #f7f4ef) 0%, var(--theme-palette-color-7, #f2eee7) 100%);
	color: var(--theme-text-color, #171b20);
	font-family: var(--theme-font-family, var(--theme-font-stack-default));
}

.project-archive,
	body.post-type-archive-proyectos,
	body.single-proyectos {
	--vq-project-text: var(--theme-text-color, #171b20);
	--vq-project-heading: var(--theme-heading-color, var(--theme-headings-color, var(--theme-text-color, #111417)));
	--vq-project-accent: var(--theme-palette-color-1, #b08a66);
	--vq-project-accent-strong: var(--theme-link-hover-color, var(--theme-palette-color-1, #7f5f46));
	--vq-project-border: var(--theme-border-color, rgba(31, 36, 40, 0.12));
	--vq-project-surface: var(--theme-palette-color-8, #ffffff);
	font-family: var(--theme-font-family, var(--theme-font-stack-default));
		background:
			radial-gradient(circle at top left, rgba(152, 163, 172, 0.08), transparent 28%),
			radial-gradient(circle at top right, rgba(184, 144, 103, 0.08), transparent 24%),
			linear-gradient(180deg, var(--theme-palette-color-8, #f7f4ef) 0%, var(--theme-palette-color-7, #f2eee7) 100%);
	color: var(--vq-project-text);
	}

	.project-archive,
	.project-single {
		width: min(1680px, calc(100vw - 48px));
		margin: 0 auto;
		padding: 0px 0 88px;
	}

	.project-archive__hero,
	.project-single__hero {
		position: relative;
		overflow: hidden;
		border: 1px solid var(--vq-project-border);
		border-radius: 28px;
		background: var(--theme-palette-color-8, rgba(255, 255, 255, 0.9));
		backdrop-filter: blur(10px);
		box-shadow: 0 18px 60px rgba(32, 35, 39, 0.1);
	}

	.project-archive__hero {
		margin-bottom: 28px;
	}

	.project-archive__hero-inner,
	.project-single__hero-grid {
		padding: clamp(28px, 4vw, 56px);
	}

	.project-archive__eyebrow,
	.project-single__eyebrow {
		margin: 0 0 16px;
		font-size: 0.76rem;
		font-weight: 700;
		letter-spacing: 0.22em;
		text-transform: uppercase;
		color: var(--vq-project-accent-strong);
	}

	.project-archive__title,
	.project-single__title {
		margin: 0;
		font-size: clamp(2.4rem, 6vw, 5rem);
		line-height: 0.95;
		letter-spacing: -0.04em;
		color: var(--vq-project-heading);
	}

	.project-archive__description,
	.project-single__lead {
		max-width: 720px;
		margin: 18px 0 0;
		font-size: 1.05rem;
		line-height: 1.7;
		color: var(--vq-project-text);
	}

	.project-archive__controls {
		padding-top: 6px;
		padding-bottom: 10px;
	}

	.project-archive__filters {
		display: flex;
		flex-wrap: wrap;
		gap: 12px;
		align-items: center;
	}

	.project-archive__filter {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 42px;
		padding: 0 16px;
		border: 1px solid var(--vq-project-border);
		border-radius: 999px;
		background: var(--theme-palette-color-8, rgba(255, 255, 255, 0.9));
		box-shadow: 0 8px 22px rgba(32, 35, 39, 0.06);
		font-size: 0.82rem;
		font-weight: 700;
		letter-spacing: 0.1em;
		text-transform: uppercase;
		color: var(--vq-project-text);
		font-family: var(--theme-button-font-family, var(--theme-font-family, var(--theme-font-stack-default)));
		cursor: pointer;
		transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
	}

	.project-archive__filter:hover {
		transform: translateY(-1px);
		background: rgba(255, 255, 255, 0.95);
		color: var(--vq-project-heading);
	}

	.project-archive__filter.is-active {
		background: var(--vq-project-accent-strong);
		border-color: var(--vq-project-accent-strong);
		color: var(--theme-palette-color-8, #f7f4ef);
	}

	.project-archive__layout {
		padding-top: 28px;
	}

	.project-archive__grid {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
		gap: 24px;
		align-items: start;
	}

	.project-archive__grid [hidden] {
		display: none !important;
	}

	.project-card {
		display: flex;
		flex-direction: column;
		overflow: hidden;
		border: 1px solid var(--vq-project-border);
		border-radius: 24px;
		background: var(--theme-palette-color-8, rgba(255, 255, 255, 0.92));
		box-shadow: 0 10px 35px rgba(32, 35, 39, 0.07);
		transition: transform 0.25s ease, box-shadow 0.25s ease;
	}

	.project-card:hover {
		transform: translateY(-3px);
		box-shadow: 0 18px 44px rgba(32, 35, 39, 0.1);
	}

	.project-card__media {
		display: block;
		overflow: hidden;
		min-height: 154px;
		aspect-ratio: 16 / 7;
		background: linear-gradient(135deg, var(--theme-palette-color-8, #c9c0b1), var(--theme-palette-color-7, #e6ddd0));
	}

	.project-card__image {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
		transition: transform 420ms cubic-bezier(.2,.9,.2,1), filter 420ms cubic-bezier(.2,.9,.2,1);
		transform-origin: center center;
	}

	.project-card:hover .project-card__image,
	.project-card:focus-within .project-card__image {
		transform: scale(1.09);
		filter: saturate(1.03) contrast(1.02);
	}

	/* Respect user preferences for reduced motion */
	@media (prefers-reduced-motion: reduce) {
		.project-card__image {
			transition: none;
		}
		.project-card:hover .project-card__image,
		.project-card:focus-within .project-card__image {
			transform: none;
			filter: none;
		}
	}

/* Gallery modal / lightbox */
.vq-modal {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 9999;
	align-items: center;
	justify-content: center;
}
.vq-modal.vq-modal--open {
	display: flex;
}
.vq-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.65);
	backdrop-filter: blur(6px);
}
.vq-modal__dialog {
	position: relative;
	max-width: min(1200px, 96vw);
	max-height: 90vh;
	padding: 18px;
	margin: 0 20px;
	display: grid;
	gap: 12px;
	align-items: center;
	justify-items: center;
}
.vq-modal__image {
	max-width: 100%;
	max-height: 80vh;
	width: auto;
	height: auto;
	border-radius: 12px;
	box-shadow: 0 20px 60px rgba(0,0,0,0.5);
	object-fit: contain;
}
.vq-modal__caption {
	color: #fff;
	font-size: 0.95rem;
	text-align: center;
}
.vq-modal__close {
	position: absolute;
	right: 8px;
	top: 8px;
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.12);
	color: #fff;
	width: 40px;
	height: 40px;
	border-radius: 999px;
	display: inline-grid;
	place-items: center;
	cursor: pointer;
	font-size: 1.1rem;
}

@media (prefers-reduced-motion: reduce) {
	.vq-modal__image,
	.vq-modal__dialog {
		transition: none !important;
	}
}

	.project-card__placeholder {
		display: grid;
		place-items: center;
		width: 100%;
		height: 100%;
		font-weight: 700;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		color: var(--vq-project-text);
	}

	.project-card__body {
		display: grid;
		gap: 16px;
		padding: 24px;
		flex: 1;
	}

	.project-card__meta,
	.project-single__chips {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
	}

	.project-card__chip,
	.project-single__chip {
		display: inline-flex;
		align-items: center;
		min-height: 32px;
		padding: 0 12px;
		border: 1px solid var(--vq-project-border);
		border-radius: 999px;
		background: var(--theme-palette-color-8, rgba(247, 244, 239, 0.92));
		font-size: 0.78rem;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		color: var(--vq-project-text);
		font-family: var(--theme-button-font-family, var(--theme-font-family, var(--theme-font-stack-default)));
	}

	.project-card__title {
		margin: 0;
		font-size: clamp(1.45rem, 2.4vw, 2rem);
		line-height: 1.05;
		letter-spacing: -0.03em;
		color: var(--vq-project-heading) !important;
	}

	.project-card__title a,
	.project-card__link,
	.project-single__backlink,
	.project-single__navigation a {
		color: var(--vq-project-heading) !important;
		text-decoration: none;
	}

	.project-card__excerpt {
		margin: 0;
		line-height: 1.7;
		color: var(--vq-project-text);
	}

	.project-card__link,
	.project-single__backlink,
	.project-single__navigation a {
		width: fit-content;
		font-size: 0.84rem;
		font-weight: 700;
		letter-spacing: 0.12em;
		text-transform: uppercase;
		border-bottom: 1px solid currentColor;
		padding-bottom: 3px;
	}

	.project-archive__pagination {
		display: flex;
		justify-content: center;
		margin-top: 30px;
	}

	.project-archive__pagination .page-numbers {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 42px;
		min-height: 42px;
		margin: 0 4px;
		padding: 0 14px;
		border: 1px solid var(--vq-project-border);
		border-radius: 999px;
		background: var(--theme-palette-color-8, rgba(255, 255, 255, 0.92));
		color: inherit;
		text-decoration: none;
	}

	.project-archive__pagination .page-numbers.current {
		background: var(--vq-project-accent-strong);
		color: var(--theme-palette-color-8, #f7f4ef);
	}

	.project-archive__empty {
		padding: 56px 24px;
		text-align: center;
		border: 1px solid var(--vq-project-border);
		border-radius: 24px;
		background: var(--theme-palette-color-8, rgba(255, 255, 255, 0.9));
	}

	.project-archive__empty--filters {
		margin-top: 24px;
	}

	.project-single__hero {
		margin-bottom: 28px;
		width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		border-radius: 0;
		border-left: 0;
		border-right: 0;
		box-shadow: none;
	}

	.project-single__layout,
	.project-single__gallery {
		width: min(1680px, calc(100vw - 48px));
		margin-left: auto;
		margin-right: auto;
	}

	.project-single__layout {
		margin-top: 28px;
	}

	.project-single__gallery {
		margin-top: 28px;
	}

	.project-single__hero-media {
		position: relative;
		overflow: hidden;
		min-height: clamp(520px, 72vh, 860px);
		border-radius: 0;
		background: linear-gradient(135deg, var(--theme-palette-color-8, #c9c0b1), var(--theme-palette-color-7, #e6ddd0));
		box-shadow: none;
	}

	.project-single__hero-image,
	.project-single__hero-placeholder {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.project-single__hero-placeholder {
		display: grid;
		place-items: center;
		padding: 24px;
		text-align: center;
		font-size: 1rem;
		font-weight: 700;
		letter-spacing: 0.18em;
		text-transform: uppercase;
		color: var(--vq-project-text);
	}

	.project-single__hero-overlay {
		position: absolute;
		inset: 0;
		background:
			linear-gradient(180deg, rgba(11, 15, 18, 0.05) 0%, rgba(11, 15, 18, 0.03) 36%, rgba(11, 15, 18, 0.45) 100%),
			linear-gradient(90deg, rgba(11, 15, 18, 0.28) 0%, rgba(11, 15, 18, 0.04) 60%, rgba(11, 15, 18, 0.14) 100%);
		pointer-events: none;
	}

	.project-single__hero-content {
		position: absolute;
		left: clamp(20px, 4vw, 48px);
		right: clamp(20px, 4vw, 48px);
		bottom: clamp(20px, 4vw, 48px);
		max-width: 860px;
		padding: clamp(22px, 3vw, 36px);
		border: 1px solid rgba(255, 255, 255, 0.18);
		border-radius: 24px;
		background: rgba(8, 12, 14, 0.34);
		backdrop-filter: blur(10px);
		color: #fff;
		box-shadow: 0 18px 40px rgba(0, 0, 0, 0.16);
		z-index: 2;
	}

	.project-single__hero-content .project-single__eyebrow,
	.project-single__hero-content .project-single__lead {
		color: rgba(255, 255, 255, 0.92);
	}

	.project-single__hero-content .project-single__lead {
		max-width: 760px;
	}

	.project-single__hero-content .project-single__title {
		color: #fff;
	}

	.project-single__hero-content .project-single__summary-label {
		color: rgba(255, 255, 255, 0.72);
	}

	.project-single__hero-content .project-single__summary-value {
		color: #fff;
	}

	.project-single__hero-content .project-single__summary-card {
		border-color: rgba(255, 255, 255, 0.16);
		background: rgba(255, 255, 255, 0.08);
		backdrop-filter: blur(8px);
		box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
	}

	.project-single__hero-content .project-single__chip {
		border-color: rgba(255, 255, 255, 0.18);
		background: rgba(255, 255, 255, 0.08);
		color: #fff;
	}

	.project-single__summary-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
		margin: 22px 0 0;
	}

	.project-single__summary-card {
		padding: 16px 18px;
		border: 1px solid var(--vq-project-border);
		border-radius: 18px;
		background: var(--theme-palette-color-8, rgba(255, 255, 255, 0.9));
		box-shadow: 0 8px 24px rgba(32, 35, 39, 0.06);
		display: grid;
		gap: 6px;
	}

	.project-single__summary-label {
		font-size: 0.72rem;
		font-weight: 700;
		letter-spacing: 0.18em;
		text-transform: uppercase;
		color: var(--vq-project-text);
	}

	.project-single__summary-value {
		font-size: 1rem;
		line-height: 1.35;
		color: var(--vq-project-heading);
	}

	.project-single__layout {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 32px;
		align-items: start;
	}

	.project-card__kicker {
		margin: -8px 0 0;
		font-size: 0.92rem;
		line-height: 1.6;
		color: var(--vq-project-text);
	}

	.project-single__details-block {
		margin-top: 18px;
		padding: 28px;
		border: 1px solid var(--vq-project-border);
		border-radius: 24px;
		background: var(--theme-palette-color-8, rgba(255, 255, 255, 0.92));
		box-shadow: 0 10px 35px rgba(32, 35, 39, 0.07);
	}

	.project-single__details-header {
		display: grid;
		gap: 10px;
		margin-bottom: 16px;
	}

	.project-single__details-title {
		margin: 0;
		font-size: 1.35rem;
		letter-spacing: -0.03em;
		color: var(--vq-project-heading);
	}

	.project-single__details-intro {
		max-width: 720px;
		margin: 0;
		line-height: 1.7;
		color: var(--vq-project-text);
	}

	.project-single__details-content {
		font-size: 1rem;
		line-height: 1.8;
		color: var(--vq-project-text);
	}

	.project-single__details-content h1,
	.project-single__details-content h2,
	.project-single__details-content h3,
	.project-single__details-content h4,
	.project-single__details-content h5,
	.project-single__details-content h6 {
		margin-top: 1.4em;
		margin-bottom: 0.55em;
		line-height: 1.15;
		letter-spacing: -0.03em;
		color: var(--vq-project-heading);
	}

	.project-single__details-content p,
	.project-single__details-content li {
		color: var(--vq-project-text);
	}

	.project-single__details-content a {
		color: var(--vq-project-accent-strong);
		text-decoration: underline;
		text-underline-offset: 0.14em;
	}

	.project-single__details-content strong {
		color: var(--vq-project-heading);
	}

	.project-single__details-content ul,
	.project-single__details-content ol {
		padding-left: 1.25em;
	}

	.project-single__details-content blockquote {
		margin: 1.4em 0;
		padding: 1em 1.2em;
		border-left: 4px solid var(--vq-project-accent);
		background: rgba(247, 244, 239, 0.9);
		color: var(--vq-project-text);
	}

	.project-single__details-content > *:first-child {
		margin-top: 0;
	}

	.project-single__details-content > *:last-child {
		margin-bottom: 0;
	}

	.project-single__gallery {
		margin-top: 28px;
		padding: 28px;
		border: 1px solid var(--vq-project-border);
		border-radius: 24px;
		background: var(--theme-palette-color-8, rgba(255, 255, 255, 0.92));
		box-shadow: 0 10px 35px rgba(32, 35, 39, 0.07);
	}

	.project-single__gallery-header {
		display: grid;
		gap: 10px;
		margin-bottom: 20px;
	}

	.project-single__gallery-title {
		margin: 0;
		font-size: 1.35rem;
		letter-spacing: -0.03em;
		color: var(--vq-project-heading);
	}

	.project-single__gallery-description {
		max-width: 720px;
		margin: 0;
		line-height: 1.7;
		color: var(--vq-project-text);
	}

	.project-single__carousel-header {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 16px 24px;
		align-items: end;
	}

	.project-single__carousel-status {
		display: flex;
		justify-content: flex-end;
	}

	.project-single__carousel-counter {
		display: inline-flex;
		align-items: center;
		min-height: 38px;
		padding: 0 14px;
		border-radius: 999px;
		background: rgba(31, 36, 40, 0.08);
		font-size: 0.82rem;
		font-weight: 700;
		letter-spacing: 0.12em;
		text-transform: uppercase;
		color: var(--vq-project-text);
	}

	.project-single__carousel-stage {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr) auto;
		gap: 14px;
		align-items: center;
		margin-top: 18px;
	}

	.project-single__carousel-viewport {
		overflow: hidden;
		padding: 6px 0;
	}

	.project-single__carousel-track {
		display: flex;
		align-items: stretch;
		gap: 14px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-behavior: smooth;
		-ms-overflow-style: none;
		scrollbar-width: none;
		padding: 8px calc((100% - min(760px, 100%)) / 2);
	}

	.project-single__carousel-track::-webkit-scrollbar {
		display: none;
	}

	.project-single__carousel-slide {
		flex: 0 0 clamp(260px, 72vw, 760px);
		padding: 0;
		border: 0;
		background: transparent;
		cursor: pointer;
		scroll-snap-align: center;
		transition: transform 0.45s ease, opacity 0.45s ease, filter 0.45s ease;
	}

	.project-single__carousel-slide-inner {
		position: relative;
		display: block;
		overflow: hidden;
		border-radius: 24px;
		background: linear-gradient(135deg, var(--theme-palette-color-8, #d2c5b5), var(--theme-palette-color-7, #e7ddd0));
		box-shadow: 0 10px 28px rgba(32, 35, 39, 0.1);
		aspect-ratio: 4 / 3;
		transform: scale(0.84);
		opacity: 0.7;
		filter: saturate(0.92) brightness(0.98);
		transition: transform 0.45s ease, opacity 0.45s ease, filter 0.45s ease, box-shadow 0.45s ease;
	}

	.project-single__carousel-slide.is-active .project-single__carousel-slide-inner {
		transform: scale(1);
		opacity: 1;
		filter: none;
		box-shadow: 0 20px 54px rgba(32, 35, 39, 0.16);
	}

	.project-single__carousel-image {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.project-single__carousel-caption {
		position: absolute;
		left: 14px;
		right: 14px;
		bottom: 14px;
		padding: 10px 12px;
		border-radius: 14px;
		background: rgba(17, 20, 23, 0.74);
		color: #fff;
		font-size: 0.82rem;
		line-height: 1.4;
	}

	.project-single__carousel-nav {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 46px;
		height: 46px;
		border: 1px solid var(--vq-project-border);
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.94);
		box-shadow: 0 10px 28px rgba(32, 35, 39, 0.08);
		color: var(--vq-project-heading);
		transition: transform 0.2s ease, background 0.2s ease;
	}

	.project-single__carousel-nav:hover {
		transform: translateY(-1px);
		background: #fff;
	}

	.project-single__carousel-nav:disabled {
		opacity: 0.35;
		pointer-events: none;
	}

	.project-single__carousel[data-count="1"] .project-single__carousel-track {
		justify-content: center;
	}

	.project-single__carousel[data-count="1"] .project-single__carousel-slide {
		flex-basis: min(100%, 860px);
	}

	.project-single__panel,
	.project-single__body {
		border: 1px solid var(--vq-project-border);
		border-radius: 24px;
		background: var(--theme-palette-color-8, rgba(255, 255, 255, 0.92));
		box-shadow: 0 10px 35px rgba(32, 35, 39, 0.07);
	}

	.project-single__panel {
		padding: 24px;
	}

	.project-single__panel-title {
		margin: 0 0 20px;
		font-size: 0.88rem;
		letter-spacing: 0.2em;
		text-transform: uppercase;
		color: var(--vq-project-accent-strong);
	}

	.project-single__detail {
		display: grid;
		gap: 6px;
		padding: 16px 0;
		border-top: 1px solid var(--vq-project-border);
	}

	.project-single__detail:first-of-type {
		border-top: 0;
		padding-top: 0;
	}

	.project-single__detail-label {
		font-size: 0.76rem;
		font-weight: 700;
		letter-spacing: 0.18em;
		text-transform: uppercase;
		color: var(--vq-project-text);
	}

	.project-single__detail-value {
		line-height: 1.7;
		color: var(--vq-project-text);
	}

	.project-single__body {
		padding: clamp(22px, 3vw, 36px);
	}

	.project-single__body > *:first-child {
		margin-top: 0;
	}

	.project-single__body > *:last-child {
		margin-bottom: 0;
	}

	.project-single__footer {
		display: flex;
		flex-wrap: wrap;
		gap: 18px 24px;
		justify-content: space-between;
		align-items: center;
		padding: 22px 6px 0;
		color: var(--vq-project-heading);
	}

	.project-single__navigation {
		display: flex;
		flex-wrap: wrap;
		gap: 16px;
	}

	@media (max-width: 960px) {
		.project-archive__grid {
			grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
		}

		.project-single__layout {
			grid-template-columns: 1fr;
		}

		.project-single__summary-grid {
			grid-template-columns: 1fr;
		}

		.project-single__hero-media {
			min-height: clamp(420px, 62vh, 720px);
		}

		.project-single__carousel-stage {
			grid-template-columns: 1fr;
		}

		.project-single__carousel-nav {
			display: none;
		}

		.project-single__carousel-track {
			padding: 8px 0;
		}

		.project-single__carousel-slide {
			flex-basis: min(82vw, 420px);
		}

		.project-single__carousel-slide-inner {
			transform: scale(1);
			opacity: 1;
		}

		.project-single__carousel-slide.is-active .project-single__carousel-slide-inner {
			transform: scale(1);
		}

		.project-single__hero-content {
			left: 16px;
			right: 16px;
			bottom: 16px;
		}

		.project-archive__filters {
			gap: 10px;
		}
	}

	@media (max-width: 640px) {
		.project-archive,
		.project-single {
			width: min(100% - 20px, 1680px);
			padding-top: 18px;
			padding-bottom: 56px;
		}

		.project-archive__hero-inner,
		.project-card__body,
		.project-single__panel,
		.project-single__body,
		.project-single__details-block,
		.project-single__gallery {
			padding-left: 20px;
			padding-right: 20px;
		}

		.project-single__hero {
			width: 100vw;
			margin-left: calc(50% - 50vw);
			margin-right: calc(50% - 50vw);
		}

		.project-single__layout,
		.project-single__gallery {
			width: min(100% - 20px, 1680px);
		}

		.project-single__hero-content {
			padding: 18px;
		}

		.project-archive__grid {
			gap: 16px;
			grid-template-columns: 1fr;
		}

		.project-archive__filter {
			min-height: 40px;
			padding: 0 14px;
			font-size: 0.74rem;
		}

		.project-single__title,
		.project-archive__title {
			font-size: clamp(2rem, 12vw, 3.4rem);
		}
	}