:root {
	/* Aspect ratios for images */
	--fc-ar-16-9: 56.25%;
	--fc-ar-3-2: 66.7%;
	--fc-ar-4-3: 75%;
	--fc-ar-1-1: 100%;
	--fc-ar-3-4: 133%;
	--fc-ar-2-3: 150%;
	--fc-ar-9-16: 177.8%;
}

.flexicol .content-grid p:last-child {
	margin-bottom: 0;
}

.flexicol.tcc-50-50 .content-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-areas: "flexi-left-col flexi-right-col";
	grid-gap: 20px 40px;
}

.flexicol .left {
	grid-area: flexi-left-col;
}

.flexicol .right {
	grid-area: flexi-right-col;
}

.flexicol.tcc-50-50 .content-grid.wide-gutter,
.flexicol.tcc-50-50 .content-grid.no-gutter {
	grid-gap: 20px 0;
}

.flexicol.tcc-50-50 .content-grid.wide-gutter .left,
.flexicol.tcc-33-66 .content-grid.wide-gutter .left,
.flexicol.tcc-66-33 .content-grid.wide-gutter .left {
	padding-right: 20.7%;
}

.flexicol.tcc-50-50 .content-grid.no-gutter .left.has-text,
.flexicol.tcc-33-66 .content-grid.no-gutter .left.has-text,
.flexicol.tcc-66-33 .content-grid.no-gutter .left.has-text {
	padding-right: 20.7%;
}

.flexicol.tcc-50-50 .content-grid.wide-gutter .right,
.flexicol.tcc-33-66 .content-grid.wide-gutter .right,
.flexicol.tcc-66-33 .content-grid.wide-gutter .right {
	padding-left: 20.7%;
}

.flexicol.tcc-50-50 .content-grid.no-gutter .right.has-text,
.flexicol.tcc-33-66 .content-grid.no-gutter .right.has-text,
.flexicol.tcc-66-33 .content-grid.no-gutter .right.has-text {
	padding-left: 20.7%;
}

.flexicol.tcc-33-66 .content-grid {
	display: grid;
	grid-template-columns: 33% 1fr;
	grid-template-areas: "flexi-left-col flexi-right-col";
	grid-gap: 20px 40px;
}

.flexicol.tcc-33-66 .content-grid.wide-gutter,
.flexicol.tcc-33-66 .content-grid.no-gutter {
	grid-gap: 20px 0;
}

.flexicol.tcc-66-33 .content-grid {
	display: grid;
	grid-template-columns: 1fr 33%;
	grid-template-areas: "flexi-left-col flexi-right-col";
	grid-gap: 20px 40px;
}

.flexicol.tcc-66-33 .content-grid.wide-gutter,
.flexicol.tcc-66-33 .content-grid.no-gutter {
	grid-gap: 20px 0;
}

.flexicol.ttc-vertically-center .content-grid .left,
.flexicol.ttc-vertically-center .content-grid .right {
	display: flex;
	align-items: center;
}

.flexicol.tcc-width-narrow .tcc__width-constrainer {
	position: relative;
	max-width: 840px;
	margin: 0 auto;
}

.flexicol.tcc-width-normal .tcc__width-constrainer {
	position: relative;
	max-width: 100%;
	margin: 0 auto;
}

.flexicol img {
	max-width: 100%;
	height: auto;
}

.flexicol .image-wrapper {
	position: relative;
	padding: 0 0 var(--fc-ar-1-1);
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.flexicol .image-wrapper.crop-ar-16-9 {
	padding: 0 0 var(--fc-ar-16-9);
}

.flexicol .image-wrapper.crop-ar-4-3 {
	padding: 0 0 var(--fc-ar-4-3);
}

.flexicol .image-wrapper.crop-ar-3-2 {
	padding: 0 0 var(--fc-ar-3-2);
}

.flexicol .image-wrapper.crop-ar-1-1 {
	padding: 0 0 var(--fc-ar-1-1);
}

.flexicol .image-wrapper.crop-ar-3-4 {
	padding: 0 0 var(--fc-ar-3-4);
}

.flexicol .image-wrapper.crop-ar-2-3 {
	padding: 0 0 var(--fc-ar-2-3);
}

.flexicol .image-wrapper.crop-ar-9-16 {
	padding: 0 0 var(--fc-ar-9-16);
}

.flexicol .image-wrapper .absolute-fill {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.flexicol .image-wrapper.crop-image img {
	display: none;
}

.flexicol.tcc-mt-lg {
	margin-top: 110px;
}

.flexicol.tcc-mt-md {
	margin-top: 80px;
}

.flexicol.tcc-mt-sm {
	margin-top: 40px;
}

.flexicol.tcc-mb-lg {
	margin-bottom: 110px;
}

.flexicol.tcc-mb-md {
	margin-bottom: 80px;
}

.flexicol.tcc-mb-sm {
	margin-bottom: 40px;
}

@media only screen and (max-width: 768px) {
	.flexicol.tcc-33-66 .content-grid,
	.flexicol.tcc-66-33 .content-grid {
		grid-template-columns: 1fr;
		grid-template-areas: "flexi-left-col" "flexi-right-col";
	}

	.flexicol.tcc-33-66.reverse-collapse .content-grid,
	.flexicol.tcc-66-33.reverse-collapse .content-grid {
		grid-template-columns: 1fr;
		grid-template-areas: "flexi-right-col" "flexi-left-col";
	}
}

@media only screen and (max-width: 700px) {
	.flexicol.tcc-50-50 .content-grid {
		grid-template-columns: 1fr;
		grid-template-areas: "flexi-left-col" "flexi-right-col";
	}

	.flexicol.tcc-50-50.reverse-collapse .content-grid {
		grid-template-columns: 1fr;
		grid-template-areas: "flexi-right-col" "flexi-left-col";
	}

	.flexicol.tcc-50-50 .content-grid.wide-gutter .left,
	.flexicol.tcc-33-66 .content-grid.wide-gutter .left,
	.flexicol.tcc-66-33 .content-grid.wide-gutter .left {
		padding-right: 0;
	}

	.flexicol.tcc-50-50 .content-grid.wide-gutter .right,
	.flexicol.tcc-33-66 .content-grid.wide-gutter .right,
	.flexicol.tcc-66-33 .content-grid.wide-gutter .right {
		padding-left: 0;
	}
}

@media only screen and (max-width: 680px) {
	.flexicol .content-grid {
		grid-template-columns: 1fr;
	}
}
