.psc-single {
	--psc-accent: #8b6b3f;
	width: min(1240px, calc(100% - 40px));
	margin: 56px auto;
}

.psc-single__hero {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) minmax(320px, .85fr);
	gap: clamp(30px, 5vw, 72px);
	align-items: start;
}

.psc-single__main-image,
.psc-single__image-placeholder {
	display: block;
	width: 100%;
	height: auto;
	max-height: 760px;
	object-fit: cover;
	background: #f2f0ec;
}

.psc-single__image-placeholder {
	aspect-ratio: 4 / 3;
}

.psc-single__gallery {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin-top: 10px;
}

.psc-single__gallery img {
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.psc-single__summary {
	position: sticky;
	top: 30px;
}

.psc-single__eyebrow {
	color: var(--psc-accent);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.psc-single__title {
	margin: 8px 0 18px;
	font-size: clamp(36px, 5vw, 64px);
	line-height: 1.05;
}

.psc-single__lead {
	color: #5f5f5f;
	font-size: 18px;
	line-height: 1.65;
}

.psc-single__details {
	margin: 28px 0;
	border-top: 1px solid #dedede;
}

.psc-single__details > div {
	display: grid;
	grid-template-columns: 1fr 1.4fr;
	gap: 18px;
	padding: 11px 0;
	border-bottom: 1px solid #dedede;
}

.psc-single__details dt {
	font-weight: 700;
}

.psc-single__details dd {
	margin: 0;
}

.psc-single__cta {
	display: inline-flex;
	padding: 13px 22px;
	background: #1b1b1b;
	color: #fff;
	text-decoration: none;
}

.psc-single__content {
	width: min(820px, 100%);
	margin: 64px auto 0;
}

@media (max-width: 800px) {
	.psc-single__hero {
		grid-template-columns: 1fr;
	}

	.psc-single__summary {
		position: static;
	}
}

