.ce-image,
.ce-textmedia,
.ce-textpic {
	--bs-gutter-x: 60px;
	display: flex;
	flex-direction: column;
	gap: calc(var(--bs-gutter-x) / 2) var(--bs-gutter-x);
}

.ce-textmedia.ce-intext,
.ce-textpic.ce-intext {
	display: unset;
}

.ce-textmedia.ce-above,
.ce-textmedia.ce-below,
.ce-textpic.ce-above,
.ce-textpic.ce-below {
	flex-direction: column;
}

.ce-image,
.ce-gallery,
.ce-bodytext {
	order: 1;
	flex-grow: 1;
}

.ce-textpic.ce-right .ce-gallery {
	order: 2;
}

.ce-textpic.ce-intext .ce-gallery {
	margin-bottom: calc(var(--bs-gutter-x) / 4);
}
	
@media(min-width: 768px) {
	.ce-textpic.ce-intext.ce-left .ce-gallery {
		float: left;
		margin-right: calc(var(--bs-gutter-x) / 2);
	}
	
	.ce-textpic.ce-intext.ce-right .ce-gallery {
		float: right;
		margin-left: calc(var(--bs-gutter-x) / 2);
		max-width: 50%;
		width: auto;
	}
	
	.ce-textpic.ce-left.ce-intext .ce-bodytext,
	.ce-textpic.ce-right.ce-intext .ce-bodytext {
		width: 100%;
	}
}

@media (min-width: 992px) {
	.ce-image,
	.ce-textmedia,
	.ce-textpic {
		flex-direction: row;
	}
	
	.ce-textpic.ce-left .ce-gallery,
	.ce-textpic.ce-right .ce-gallery {
		width: calc(50% - (var(--bs-gutter-x) / 2));
	}
	
	.ce-textpic.ce-intext.ce-left .ce-gallery {
		float: left;
		margin-right: calc(var(--bs-gutter-x) / 2);
	}
	
	.ce-textpic.ce-intext.ce-right .ce-gallery {
		float: right;
		margin-left: calc(var(--bs-gutter-x) / 2);
		width: auto;
	}
	
	.ce-textpic.ce-left .ce-bodytext,
	.ce-textpic.ce-right .ce-bodytext {
		width: calc(50% - (var(--bs-gutter-x) / 2));
	}

	.ce-textpic.ce-left.ce-intext .ce-bodytext,
	.ce-textpic.ce-right.ce-intext .ce-bodytext {
		width: 100%;
	}
}

.ce-gallery {
	--gallery-gap: calc(var(--bs-gutter-x) / 2);
	display: flex;
	flex-direction: column;
	gap: var(--gallery-gap);
}

.ce-row {
	display: flex;
	flex-wrap: wrap;
	gap: var(--gallery-gap);
}

.ce-gallery.columns-1 {
	--gallery-columns: 1;
}

.ce-gallery.columns-2 {
	--gallery-columns: 2;
}

.ce-gallery.columns-3 {
	--gallery-columns: 3;
}

.ce-gallery.columns-4 {
	--gallery-columns: 4;
}

.ce-gallery.columns-6 {
	--gallery-columns: 6;
}

.ce-column {
	width: calc((100% / var(--gallery-columns)) - (var(--gallery-gap) * (var(--gallery-columns) - 1)) / var(--gallery-columns));
}

figure {
	display: block;
	margin: 0;
}

.ce-col figure {
	margin-bottom: 0;
}

figure figcaption {
	font-size: 0.85rem;
	padding-top: 0.25rem;
	word-wrap: break-word;
}

.ce-gallery .image {
	/* text-align: center; */
}

.ce-gallery img {
	border-radius: var(--t-image-border-radius);
}

.ce-border img {
	border: 1px solid var(--elektra-black);
}

.embed-responsive {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	overflow: hidden;
}

.embed-responsive::before {
	display: block;
	content: "";
}

.embed-responsive-16by9::before {
	padding-top: 56.25%;
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}
