.cb-builder-section,
.cb-builder-section * {
	box-sizing: border-box;
}

.cb-builder-section {
	--cb-accent: #1675bb;
	--cb-dark: #242a2e;
	--cb-border: #dce1e4;
	margin-block: clamp(2rem, 5vw, 4.5rem);
	padding: clamp(1.5rem, 4vw, 3.5rem);
	border-radius: 14px;
}

.cb-builder-section.alignfull {
	width: 100%;
	max-width: none;
	margin-inline: 0;
	border-radius: 0;
}

.cb-builder-section--dark {
	background: linear-gradient(135deg, var(--cb-dark), #4c565c);
	color: #fff;
}

.cb-builder-section--dark :where(h1, h2, h3, p) {
	color: inherit;
}

.cb-builder-section .wp-block-columns {
	gap: clamp(1rem, 3vw, 2rem);
}

.cb-builder-card {
	height: 100%;
	padding: clamp(1.25rem, 3vw, 2rem);
	border: 1px solid var(--cb-border);
	border-radius: 12px;
	background: #fff;
	color: #252b2f;
	box-shadow: 0 8px 24px rgba(25, 35, 42, .07);
}

.cb-builder-card--outline {
	box-shadow: none;
}

.cb-builder-section .wp-block-button__link {
	border-radius: 6px;
}

.cb-builder-theme-corpiva .cb-builder-section {
	--cb-accent: var(--bs-primary, #0d6efd);
}

.cb-builder-theme-newstack .cb-builder-section {
	--cb-accent: var(--primary-color, #e21b2d);
}

@media (max-width: 700px) {
	.cb-builder-section {
		margin-block: 1.5rem;
		padding: 1.25rem;
		border-radius: 9px;
	}

	.cb-builder-section.alignfull {
		border-radius: 0;
	}
}
