.mfm-ad,
.mfm-ad * {
	box-sizing: border-box;
}

.mfm-ad {
	display: flex;
	width: 100%;
	min-height: 90px;
	aspect-ratio: 970 / 250;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: var(--mfm-ad-bg, #f4f5f6);
	color: #111;
	padding: var(--mfm-ad-padding, 0);
	text-decoration: none;
}

.mfm-ad__link,
.mfm-ad__picture,
.mfm-ad__image {
	display: block;
	width: 100%;
	height: 100%;
}

.mfm-ad__link {
	color: inherit;
	text-decoration: none;
}

.mfm-ad__image {
	object-fit: contain;
	object-position: center;
}

.mfm-ad--fit-cover .mfm-ad__image {
	object-fit: cover;
}

.mfm-ad--preset-horizontal_standard {
	aspect-ratio: 728 / 90;
}

.mfm-ad--preset-horizontal_3_1 {
	aspect-ratio: 3 / 1;
}

.mfm-ad--preset-horizontal_slim {
	aspect-ratio: 970 / 90;
}

.mfm-ad--preset-vertical_4_5 {
	aspect-ratio: 4 / 5;
}

.mfm-ad--preset-vertical_9_16 {
	aspect-ratio: 9 / 16;
}

.mfm-ad--preset-horizontal_large,
.mfm-ad--preset-horizontal_3_1,
.mfm-ad--preset-horizontal_standard,
.mfm-ad--preset-horizontal_slim,
.mfm-ad--preset-vertical_4_5,
.mfm-ad--preset-vertical_9_16 {
	min-height: 0 !important;
}

.mfm-ad--preset-adsense_responsive {
	aspect-ratio: auto;
}

.mfm-ad--fallback {
	min-height: 110px;
	border: 1px dashed #111;
	border-radius: 6px;
	background: #ffd700;
	font-weight: 800;
	text-align: center;
	padding: 16px;
}

.mfm-ad--fallback.mfm-ad--preset-horizontal_large,
.mfm-ad--fallback.mfm-ad--preset-horizontal_3_1,
.mfm-ad--fallback.mfm-ad--preset-horizontal_standard,
.mfm-ad--fallback.mfm-ad--preset-horizontal_slim,
.mfm-ad--fallback.mfm-ad--preset-vertical_4_5,
.mfm-ad--fallback.mfm-ad--preset-vertical_9_16 {
	min-height: 0 !important;
}

.mfm-ad--adsense {
	min-height: var(--mfm-ad-adsense-desktop, 90px);
	background: transparent;
	aspect-ratio: auto;
}

.mfm-ad--html {
	display: block;
	min-height: 0;
	background: transparent;
}

.mfm-ad--elementor {
	min-height: 90px;
}

.mfm-ad-auto-home-wrap {
	padding: 18px 0;
	background: #fff;
}

.mfm-ad--auto-home {
	border-radius: 6px;
}

@media (max-width: 767px) {
	.mfm-ad {
		min-height: 72px;
		aspect-ratio: 320 / 100;
	}

	.mfm-ad--preset-horizontal_slim {
		aspect-ratio: 320 / 50;
	}

	.mfm-ad--preset-horizontal_3_1 {
		aspect-ratio: 3 / 1;
	}

	.mfm-ad--preset-vertical_4_5 {
		aspect-ratio: 4 / 5;
	}

	.mfm-ad--preset-vertical_9_16 {
		aspect-ratio: 9 / 16;
	}

	.mfm-ad--adsense {
		min-height: var(--mfm-ad-adsense-mobile, 100px);
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.mfm-ad {
		aspect-ratio: 728 / 90;
	}

	.mfm-ad--preset-horizontal_3_1 {
		aspect-ratio: 3 / 1;
	}

	.mfm-ad--preset-vertical_4_5 {
		aspect-ratio: 4 / 5;
	}

	.mfm-ad--preset-vertical_9_16 {
		aspect-ratio: 9 / 16;
	}

	.mfm-ad--adsense {
		min-height: var(--mfm-ad-adsense-tablet, 90px);
	}
}

/* Preset responsive elegido desde el widget Elementor: tablet y móvil
   pueden usar una proporción distinta a la de escritorio. Cada preset
   usa la proporción que corresponde a ESE breakpoint, no la de escritorio:
   - tablet  -> 728x90 horizontales, 4:5 / 9:16 verticales
   - móvil   -> 320x100 (grande/estándar), 320x50 (slim), 4:5 / 9:16 */
@media (max-width: 1024px) {
	.mfm-ad.mfm-ad--rp-t-horizontal_large    { aspect-ratio: 728 / 90 !important; }
	.mfm-ad.mfm-ad--rp-t-horizontal_standard { aspect-ratio: 728 / 90 !important; }
	.mfm-ad.mfm-ad--rp-t-horizontal_slim     { aspect-ratio: 728 / 90 !important; }
	.mfm-ad.mfm-ad--rp-t-horizontal_3_1      { aspect-ratio: 3 / 1 !important; }
	.mfm-ad.mfm-ad--rp-t-vertical_4_5        { aspect-ratio: 4 / 5 !important; }
	.mfm-ad.mfm-ad--rp-t-vertical_9_16       { aspect-ratio: 9 / 16 !important; }
	.mfm-ad.mfm-ad--rp-t-adsense_responsive  { aspect-ratio: auto !important; }
}

@media (max-width: 767px) {
	.mfm-ad.mfm-ad--rp-m-horizontal_large    { aspect-ratio: 320 / 100 !important; }
	.mfm-ad.mfm-ad--rp-m-horizontal_standard { aspect-ratio: 320 / 100 !important; }
	.mfm-ad.mfm-ad--rp-m-horizontal_slim     { aspect-ratio: 320 / 50 !important; }
	.mfm-ad.mfm-ad--rp-m-horizontal_3_1      { aspect-ratio: 3 / 1 !important; }
	.mfm-ad.mfm-ad--rp-m-vertical_4_5        { aspect-ratio: 4 / 5 !important; }
	.mfm-ad.mfm-ad--rp-m-vertical_9_16       { aspect-ratio: 9 / 16 !important; }
	.mfm-ad.mfm-ad--rp-m-adsense_responsive  { aspect-ratio: auto !important; }
}
