.flex-wrap {
	flex-wrap: wrap;
}

.flex-nowrap {
	flex-wrap: nowrap;
}

.flex-column {
	flex-direction: column;
}

.align-items-start {
	align-items: flex-start;
}

.align-items-center {
	align-items: center;
}

.align-items-end {
	align-items: flex-end;
}

.align-items-stretch {
	align-items: stretch;
}

.align-self-start {
	align-self: flex-start;
}

.align-self-stretch {
	align-self: stretch;
}

.justify-content-start {
	justify-content: flex-start;
}

.justify-content-center {
	justify-content: center;
}

.justify-content-end {
	justify-content: flex-end;
}

.justify-content-between {
	justify-content: space-between;
}

.justify-self-end {
	justify-self: flex-end;
}

.flex-grow-1 {
	flex-grow: 1;
}

.flex-grow-0 {
	flex-grow: 0;
}

.flex-shrink-0 {
	flex-shrink: 0;
}

.flex-shrink-1 {
	flex-shrink: 1;
}

.flex-1 {
	flex: 1 1 0%;
}

.gap-0 {
	gap: 0;
}

.gap-3 {
	gap: 3 / 16 * 1rem;
}

.gap-5 {
	gap: 5 / 16 * 1rem;
}

.gap-7 {
	gap: 7 / 16 * 1rem;
}

.gap-9 {
	gap: 9 / 16 * 1rem;
}

.gap-10 {
	gap: 10 / 16 * 1rem;
}

.gap-15 {
	gap: 15 / 16 * 1rem;
}

.gap-20 {
	gap: 20 / 16 * 1rem;
}

.gap-24 {
	gap: 24 / 16 * 1rem;
}

.gap-25 {
	gap: 25 / 16 * 1rem;
}

.gap-30 {
	gap: 30 / 16 * 1rem;
}

.gap-40 {
	gap: 40 / 16 * 1rem;
}

.gap-60 {
	gap: 60 / 16 * 1rem;
}

.gap-custom {
	gap: var(--grid-gap);
}

.column-gap-5 {
	column-gap: 5 / 16 * 1rem;
}

.column-gap-20 {
	column-gap: 20 / 16 * 1rem;
}

.column-gap-30 {
	column-gap: 30 / 16 * 1rem;
}

.column-gap-60 {
	column-gap: 60 / 16 * 1rem;
}

.row-gap-3 {
	row-gap: 3 / 16 * 1rem;
}

.row-gap-15 {
	row-gap: 15 / 16 * 1rem;
}

.row-gap-20 {
	row-gap: 20 / 16 * 1rem;
}

.row-gap-40 {
	row-gap: 40 / 16 * 1rem;
}

.column-custom {
	flex: 0 0 auto;
	width: var(--col-width, 50%);
}

.column-custom-remaining {
	flex: 0 0 calc(100% - var(--col-width, 50%) - var(--col-gap));
    width: calc(100% - var(--col-width, 50%) - var(--col-gap));
}

@media (min-width: 768px) {
	.flex-md-row {
		flex-direction: row;
	}

	.flex-md-row-reverse {
		flex-direction: row-reverse;
	}

	.align-items-md-center {
		align-items: center;
	}

	.flex-wrap-md {
		flex-wrap: wrap;
	}

	.flex-nowrap-md {
		flex-wrap: nowrap;
	}

	.gap-md-20 {
		gap: 20 / 16 * 1rem;
	}

	.gap-md-30 {
		gap: 30 / 16 * 1rem;
	}

	.column-md-custom {
        flex: 0 0 auto;
        width: var(--col-width, 50%);
    }

	.column-md-custom-remaining {
		flex: 0 0 calc(100% - var(--col-width) - var(--col-gap));
		width: calc(100% - var(--col-width) - var(--col-gap));
	}
}

@media (min-width: 992px) {
	.flex-lg-row {
		flex-direction: row;
	}

	.align-items-lg-start {
		align-items: flex-start;
	}

	.align-items-lg-center {
		align-items: center;
	}

	.align-items-lg-stretch {
		align-items: stretch;
	}

	.justify-content-lg-start {
		justify-content: flex-start;
	}

	.flex-nowrap-lg {
		flex-wrap: nowrap;
	}

	.gap-lg-0 {
		gap: 0;
	}
}

@media (min-width: 1025px) {
	.flex-xl-row {
		flex-direction: row;
	}

	.flex-xl-row-reverse {
		flex-direction: row-reverse;
	}

	.gap-xl-40 {
		gap: 40 / 16 * 1rem;
	}

	.gap-xl-60 {
		gap: 60 / 16 * 1rem;
	}

	.gap-xl-10 {
		gap: 10 / 16 * 1rem;
	}

	.justify-content-xl-center {
		justify-content: center;
	}

	.column-xl-custom {
        flex: 0 0 auto;
        width: var(--col-width, 50%);
    }

	.column-xl-custom-remaining {
		flex: 0 0 calc(100% - var(--col-width) - var(--col-gap));
		width: calc(100% - var(--col-width) - var(--col-gap));
	}
}