/**
 * Generic content components only.
 * No homepage content, copy, imagery or section composition is defined here.
 */
.bp-section-header {
	display: grid;
	gap: var(--bp-space-4);
	max-width: 48rem;
}

.bp-section-header--center {
	margin-inline: auto;
	text-align: center;
}

.bp-section-header__description {
	color: var(--bp-color-text-muted);
	font-size: var(--bp-font-size-body-large);
}

.bp-hero {
	position: relative;
	display: grid;
	align-items: center;
	min-height: clamp(34rem, 75vh, 52rem);
	padding-block: var(--bp-space-section);
	background: var(--bp-color-primary);
	color: var(--bp-color-text-inverse);
	isolation: isolate;
}

.bp-hero__content {
	display: grid;
	gap: var(--bp-space-6);
	max-width: 46rem;
}

.bp-hero :is(h1, .bp-heading, .bp-hero__description) {
	color: inherit;
}

.bp-hero__description {
	max-width: 62ch;
	font-size: var(--bp-font-size-body-large);
	opacity: 0.86;
}

.bp-hero__actions,
.bp-cta-block__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--bp-space-3);
}

.bp-trust-badge {
	display: inline-flex;
	gap: var(--bp-space-2);
	align-items: center;
	width: fit-content;
	min-height: 2rem;
	padding: var(--bp-space-1) var(--bp-space-3);
	border: 1px solid var(--bp-color-border);
	border-radius: var(--bp-radius-pill);
	background: var(--bp-color-surface);
	color: var(--bp-color-primary);
	font-size: var(--bp-font-size-small);
	font-weight: var(--bp-font-weight-semibold);
}

.bp-trust-badge__icon {
	width: 1rem;
	height: 1rem;
	color: var(--bp-color-success);
}

.bp-cta-block {
	display: grid;
	gap: var(--bp-space-6);
	padding: clamp(var(--bp-space-8), 5vw, var(--bp-space-16));
	border-radius: var(--bp-radius-lg);
	background: var(--bp-color-primary);
	color: var(--bp-color-text-inverse);
}

.bp-cta-block :is(h2, h3, .bp-heading) {
	color: inherit;
}

.bp-cta-block--supplier {
	border: 1px solid var(--bp-color-border);
	background: var(--bp-color-surface-subtle);
	color: var(--bp-color-text);
}

.bp-cta-block--supplier :is(h2, h3, .bp-heading) {
	color: var(--bp-color-primary);
}

.bp-logo-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--bp-grid-gap);
	align-items: center;
	padding: 0;
	list-style: none;
}

.bp-logo-list__item {
	display: grid;
	place-items: center;
	min-height: 5rem;
	padding: var(--bp-space-4);
	border: 1px solid var(--bp-color-border);
	border-radius: var(--bp-radius-sm);
	background: var(--bp-color-surface);
	filter: grayscale(1);
	opacity: 0.75;
}

@media (min-width: 48rem) {
	.bp-cta-block {
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
	}

	.bp-logo-list {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}
