.ad-banner-media {
	position: relative;
	width: 100%;
}

.ad-banner-media.is-loading {
	overflow: hidden;
}

.ad-banner-layout-1.is-loading {
	aspect-ratio: 2 / 1;
}

.ad-banner-layout-2.is-loading {
	aspect-ratio: 2 / 1;
}

.ad-banner-layout-3.is-loading {
	aspect-ratio: 16 / 9;
}

.ad-banner-layout-4.is-loading {
	aspect-ratio: 3 / 2;
}

.ad-banner-placeholder {
	display: none;
	background: rgba(130, 130, 130, 0.2);
	background: linear-gradient(to right, rgba(130, 130, 130, 0.2) 8%, rgba(130, 130, 130, 0.3) 18%, rgba(130, 130, 130, 0.2) 33%);
	background-size: 800px 100%;
	animation: ad-banner-wave 2s infinite ease-out;
}

.ad-banner-media.is-loading .ad-banner-placeholder {
	display: block;
	position: absolute;
	inset: 0;
}

.ad-banner-media img {
	display: block;
	width: 100%;
	height: auto;
}

.ad-banner-media.is-loading img,
.ad-banner-media.is-loading picture {
	opacity: 0;
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@keyframes ad-banner-wave {
	0% {
		background-position: -468px 0;
	}
	100% {
		background-position: 468px 0;
	}
}
