/* Controlled section spacing for public root modules. */
:root {
	--bl-section-spacing-small: clamp(0.75rem, 1.5vw, 1.5rem);
	--bl-section-spacing-medium: clamp(1.5rem, 3vw, 3rem);
	--bl-section-spacing-large: clamp(2.5rem, 5vw, 5rem);
	--bl-section-spacing-xlarge: clamp(4rem, 7vw, 7rem);
}

.has-spacing-top-default {
	--bl-section-space-top: var(--bl-module-default-space-top, 0px);
}

.has-spacing-top-none {
	--bl-section-space-top: 0px;
	margin-block-start: 0;
}

.has-spacing-top-small {
	--bl-section-space-top: var(--bl-section-spacing-small);
	margin-block-start: var(--bl-section-spacing-small);
}

.has-spacing-top-medium {
	--bl-section-space-top: var(--bl-section-spacing-medium);
	margin-block-start: var(--bl-section-spacing-medium);
}

.has-spacing-top-large {
	--bl-section-space-top: var(--bl-section-spacing-large);
	margin-block-start: var(--bl-section-spacing-large);
}

.has-spacing-top-xlarge {
	--bl-section-space-top: var(--bl-section-spacing-xlarge);
	margin-block-start: var(--bl-section-spacing-xlarge);
}

.has-spacing-bottom-default {
	--bl-section-space-bottom: var(--bl-module-default-space-bottom, 0px);
}

.has-spacing-bottom-none {
	--bl-section-space-bottom: 0px;
	margin-block-end: 0;
}

.has-spacing-bottom-small {
	--bl-section-space-bottom: var(--bl-section-spacing-small);
	margin-block-end: var(--bl-section-spacing-small);
}

.has-spacing-bottom-medium {
	--bl-section-space-bottom: var(--bl-section-spacing-medium);
	margin-block-end: var(--bl-section-spacing-medium);
}

.has-spacing-bottom-large {
	--bl-section-space-bottom: var(--bl-section-spacing-large);
	margin-block-end: var(--bl-section-spacing-large);
}

.has-spacing-bottom-xlarge {
	--bl-section-space-bottom: var(--bl-section-spacing-xlarge);
	margin-block-end: var(--bl-section-spacing-xlarge);
}

/*
 * Default keeps historical module CSS everywhere except the first module of
 * the configured static homepage. Explicit values and all non-home pages keep
 * their authored spacing.
 */
.bl-home.banaslap-first-block-flush .bl-home-content > .has-spacing-top-default:first-child {
	--bl-section-space-top: 0px;
	margin-block-start: 0;
}
