.drr-review-spotlight {
	--drr-panel: #faf9f6;
	--drr-panel-text: #201912;
	--drr-border: #d9d9d2;
	--drr-bar: #3e4f23;
	--drr-heading: #3e4f23;
	--drr-accent: #3e4f23;
	--drr-stars: #d99400;

	margin: clamp(1.5rem, 4vw, 2.5rem) 0;
	padding: clamp(1.1rem, 3vw, 1.6rem);
	border: 1px solid var(--drr-border);
	border-left: 4px solid var(--drr-bar);
	background: var(--drr-panel);
	color: var(--drr-panel-text);
}

/* No panel — the block sits directly on the page and is marked by a single rule. */
.drr-review-spotlight--minimal {
	padding: clamp(.9rem, 2vw, 1.2rem) 0 0;
	border: 0;
	border-top: 3px solid var(--drr-bar);
	background: none;
	color: inherit;
}

.drr-review-spotlight__heading {
	margin: 0 0 1rem;
	color: var(--drr-heading);
	font-family: inherit;
	line-height: 1.25;
}

/* A quiet eyebrow above the quote. */
.drr-review-spotlight__heading--label {
	font-size: .82em;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

/* Reads at the weight of a section heading without being one in the markup. */
.drr-review-spotlight__heading--heading {
	margin-bottom: .8rem;
	font-size: 1.35em;
	font-weight: 700;
	letter-spacing: -.01em;
}

.drr-review-spotlight__heading--large {
	margin-bottom: .8rem;
	font-size: 1.7em;
	font-weight: 700;
	letter-spacing: -.015em;
}

.drr-review-spotlight__stars {
	color: var(--drr-stars);
	letter-spacing: .08em;
}

.drr-review-spotlight__reviews {
	display: grid;
	gap: 1rem;
}

.drr-review-spotlight__review {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
}

.drr-review-spotlight__review p {
	margin: .3rem 0 .55rem;
	font-size: 1.08em;
	line-height: 1.55;
}

.drr-review-spotlight__review cite {
	font-size: .92em;
	font-style: normal;
	opacity: .76;
}

.drr-review-spotlight__aggregate {
	margin: 0 0 .75rem;
	font-size: 1.08em;
}

/* Under a quote the average is a summary, not the headline, so it sits quieter. */
.drr-review-spotlight__aggregate--beside {
	margin: .9rem 0 0;
	padding-top: .75rem;
	border-top: 1px solid var(--drr-border);
	font-size: .95em;
	opacity: .88;
}

/* On a filled panel the border colour is the fill, and on no panel at all there is
   nothing to draw against, so both borrow the text colour for the rule. */
.drr-review-spotlight--prominent .drr-review-spotlight__aggregate--beside,
.drr-review-spotlight--minimal .drr-review-spotlight__aggregate--beside {
	border-top-color: currentColor;
	opacity: .78;
}

.drr-review-spotlight__link {
	display: inline-block;
	margin-top: .9rem;
	color: inherit;
	font-size: .88em;
	font-weight: 700;
}

.drr-review-spotlight--minimal .drr-review-spotlight__link {
	color: var(--drr-accent);
}

@media (min-width: 760px) {
	.drr-review-spotlight__reviews--2,
	.drr-review-spotlight__reviews--3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
