.coda-single-image {
	display: flex;
	width: 100%;
	margin-bottom: 20px;
}

.coda-single-image--align-left {
	justify-content: flex-start;
}

.coda-single-image--align-center {
	justify-content: center;
}

.coda-single-image--align-right {
	justify-content: flex-end;
}

.coda-single-image__link {
	display: block;
	max-width: 100%;
	width: fit-content;
	line-height: 0;
}

.coda-image-ratio {
	position: relative;
	display: block;
	overflow: hidden;
	max-width: 100%;
}

/* Preset ratios use padding-bottom boxes */
.coda-image-ratio:not(.coda-image-ratio--custom) {
	width: 100%;
	height: 0;
}

.coda-image-ratio--square {
	padding-bottom: 100%;
}

.coda-image-ratio--6_4 {
	padding-bottom: 66.6667%;
}

.coda-image-ratio--4_6 {
	padding-bottom: 150%;
}

.coda-image-ratio--16_9 {
	padding-bottom: 56.25%;
}

.coda-image-ratio--3_2 {
	padding-bottom: 66.6667%;
}

/* Custom ratio uses explicit width/height from inline styles */
.coda-image-ratio--custom {
	max-width: 100%;
}

.coda-single-image__img {
	max-width: 100%;
}

.coda-image-ratio .coda-single-image__img {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	object-fit: cover !important;
	display: block !important;
	border: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}
