/* Stack primitive */
/* Adds vertical spacing between sibling elements using flexbox */

.stack {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
}

.stack > * + * {
	margin-block-start: var(--s1);
}

/* NEW: Variable gap sizes */
.stack.gap-sm > * + * {
	margin-block-start: var(--s-1);
}

.stack.gap-md > * + * {
	margin-block-start: var(--s1);
}

.stack.gap-lg > * + * {
	margin-block-start: var(--s2);
}

.stack.gap-xl > * + * {
	margin-block-start: var(--s3);
}
