/* ABOUTME: Base layout styles for regular content sections with columns. */
/* ABOUTME: Defines content wrapper, column grid, padding, and background theming. */
section.regular_section {
	padding-inline: var(--outer-margin);
}

section.section--card-background-colored .content_wrapper {
	background-color: var(--card-bg-color);
	color: var(--card-text-color, currentColor);
	border-radius: var(--rbr);
	padding: min(2rem, 4vw);
}

section.content-dark-blue .content_wrapper svg *,
.section--background-dark-blue .content_wrapper svg * {
	fill: var(--section-text-color, currentColor) !important;
}

section.regular_section .content_wrapper {
	max-width: var(--mcw);
	width: 100%;
	display: flex;
	gap: var(--rcg);
	margin: 0 auto;
	position: relative;
}

section.regular_section .content_wrapper .column {
	width: 100%;
	height: auto;
}

@media screen and (max-width: 768px) {
	section.regular_section .content_wrapper {
		flex-direction: column;
		gap: calc(var(--rcg) * 6);
	}
}

@media screen and (max-width: 1024px) {
	section.regular_section.section--two_col_content .content_wrapper {
		flex-direction: column;
		gap: calc(var(--rcg) * 6);
	}
}

.regular_section .column {
	gap: 1rem;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	align-items: flex-start;
	align-content: space-between;
}
.regular_section .column .button {
	flex: 0 0 auto; /* shrink to content */
}

.regular_section .column .button-group .button {
	align-self: center;
}

.regular_section .column .block {
	width: 100%;
}

.column.single_content {
	max-width: 90ch;
}

.column.single_column {
	max-width: 70ch;
}

section.image-first-true .content_wrapper {
	flex-direction: row-reverse;
}
section.align-first_top .content_wrapper .column,
section.align-all_bottom .content_wrapper .column {
	justify-content: flex-end;
}

section.align-last_bottom .content_wrapper .column {
	display: flex;
	flex-direction: column;
}

section.align-first_top .content_wrapper .column *:first-child {
	margin-bottom: auto;
}
section.align-last_bottom .content_wrapper .column *:last-child {
	margin-top: auto;
}

.section--two_col_with_icon .icon {
}

.section--two_col_with_icon .icon svg {
	width: 100%;
	height: auto;
}

@media screen and (max-width: 1024px) {
	.section--two_col_with_icon .content_wrapper {
		flex-wrap: wrap;
		flex-direction: row !important;
	}

	.section--two_col_with_icon .left_column {
		width: 70% !important;
		flex-basis: 70%;
	}
	.section--two_col_with_icon .icon {
		width: 28% !important;
		float: right;
	}

	.section--two_col_with_icon .right_column {
		order: 4;
	}
}

@media screen and (max-width: 540px) {
	.section--two_col_with_icon .content_wrapper {
		flex-direction: column !important;
	}

	.section--two_col_with_icon .left_column {
		width: 100% !important;
		flex-basis: 100%;
	}

	.section--two_col_with_icon .icon {
		order: -1;
		text-align: right;
	}
}

.content_block {
	width: 100%;
}

@media screen and (max-width: 768px) {
	section.regular_section.section--content_with_image .content_wrapper {
		flex-direction: column-reverse;
	}
}
