.cp-print-intro,
.cp-print-materials,
.cp-print-faq {
	display: grid;
	grid-template-columns: minmax(0, 0.78fr) minmax(320px, 1fr);
	gap: clamp(28px, 5vw, 72px);
	align-items: start;
}

.cp-print-intro__text {
	display: grid;
	gap: 16px;
}

.cp-print-intro__text p,
.cp-print-card p,
.cp-print-stack p,
.cp-print-quality__grid p,
.cp-print-process p,
.cp-print-materials__copy > p {
	margin: 0;
	color: var(--cp-muted);
	font-size: var(--cp-text-sm);
	line-height: 1.7;
}

.cp-print-grid,
.cp-print-quality__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.cp-print-card,
.cp-print-quality__grid article {
	overflow: hidden;
	min-height: 170px;
	border: 1px solid var(--cp-line);
	border-radius: 8px;
	background: var(--cp-paper);
}

.cp-print-card {
	display: grid;
	grid-template-rows: auto 1fr;
}

.cp-print-card img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-bottom: 1px solid var(--cp-line);
}

.cp-print-card h3,
.cp-print-card p {
	padding-right: 24px;
	padding-left: 24px;
}

.cp-print-card h3 {
	padding-top: 22px;
}

.cp-print-card p {
	padding-bottom: 24px;
}

.cp-print-quality__grid article {
	padding: 22px;
}

.cp-print-card h3,
.cp-print-stack h3,
.cp-print-quality__grid h3,
.cp-print-process h3 {
	margin: 0 0 10px;
	color: var(--cp-black);
	font-weight: 700;
	line-height: 1.3;
}

.cp-print-stack {
	display: grid;
	gap: 18px;
	margin-top: 24px;
}

.cp-print-stack article {
	padding-top: 18px;
	border-top: 1px solid var(--cp-line);
}

.cp-print-materials {
	align-items: center;
}

.cp-print-materials__media,
.cp-print-quality__media {
	overflow: hidden;
	border: 1px solid var(--cp-line);
	border-radius: 8px;
	background: var(--cp-soft);
}

.cp-print-materials__media img,
.cp-print-quality__media img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.cp-print-quality {
	background: var(--cp-black);
	color: var(--cp-white);
}

.cp-print-quality__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 0.54fr);
	gap: clamp(28px, 5vw, 64px);
	align-items: center;
}

.cp-print-quality .cp-title-main,
.cp-print-quality__grid h3 {
	color: var(--cp-white);
}

.cp-print-quality .cp-title-tag {
	color: var(--cp-accent);
}

.cp-print-quality__grid article {
	border-color: rgba(255, 255, 255, 0.16);
	background: rgba(255, 255, 255, 0.06);
}

.cp-print-quality__grid p {
	color: rgba(255, 255, 255, 0.68);
}

.cp-print-process {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 1px;
	border: 1px solid var(--cp-line);
	background: var(--cp-line);
}

.cp-print-process article {
	min-height: 190px;
	padding: 22px;
	background: var(--cp-white);
}

.cp-print-process span {
	display: block;
	margin-bottom: 32px;
	color: var(--cp-accent);
	font-size: var(--cp-text-sm);
	font-weight: 800;
}

.cp-print-faq__items {
	display: grid;
	gap: 10px;
}

@media (max-width: 1024px) {
	.cp-print-intro,
	.cp-print-materials,
	.cp-print-quality__layout,
	.cp-print-faq {
		grid-template-columns: 1fr;
	}

	.cp-print-grid,
	.cp-print-quality__grid,
	.cp-print-process {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.cp-print-grid,
	.cp-print-quality__grid,
	.cp-print-process {
		grid-template-columns: 1fr;
	}

	.cp-print-quality__grid article,
	.cp-print-process article {
		min-height: auto;
		padding: 20px;
	}

	.cp-print-card h3,
	.cp-print-card p {
		padding-right: 20px;
		padding-left: 20px;
	}

	.cp-print-card h3 {
		padding-top: 20px;
	}

	.cp-print-card p {
		padding-bottom: 20px;
	}

	.cp-print-process span {
		margin-bottom: 18px;
	}
}
