/* ==========================================================================
   MegaImporter · Estilos base del tema hijo
   --------------------------------------------------------------------------
   1. Variables (colores, fuentes, medidas)
   2. Accesibilidad (foco, texto solo para lectores de pantalla)
   3. Estructura (secciones, contenedor)
   4. Tipografía (títulos, eyebrow con píxeles)
   5. Botones
   6. Componentes compartidos (etiquetas, avatar, acordeón, listas, CTA)
   7. Motivo de píxeles
   8. Cabecera y pie de Blocksy
   9. Clases para Elementor (se ponen en Avanzado → Clases CSS)
   10. Responsive (cortes de Blocksy y Elementor: 999.98px y 689.98px)
   ========================================================================== */

/* 1. Variables ============================================================ */
:root {
	--mi-azul: var(--theme-palette-color-1, #02B2FE);
	--mi-azul-texto: var(--theme-palette-color-2, #0073B0);
	--mi-texto: var(--theme-palette-color-3, #0B1020);
	--mi-navy: var(--theme-palette-color-4, #000058);
	--mi-borde: var(--theme-palette-color-5, #E3E8F0);
	--mi-fondo: var(--theme-palette-color-6, #F5F8FC);
	--mi-blanco: #FFFFFF;
	--mi-sec: var(--theme-palette-color-9, #4A5568);
	--mi-turquesa: var(--theme-palette-color-10, #3EECF3);
	--mi-cian: var(--theme-palette-color-11, #0AD3E5);
	--mi-pie: #C9D3E6;
	--mi-sombra: 0 4px 16px rgba(0, 0, 88, 0.06);
	--mi-titulo: ct_font_montserrat, Montserrat, system-ui, sans-serif;
	--mi-cuerpo: ct_font_inter, Inter, system-ui, sans-serif;
	--mi-ancho: 1200px;
	--mi-lateral: 24px;
	--mi-radio: 14px;
}

/* 2. Accesibilidad ======================================================== */
a:focus-visible,
button:focus-visible,
summary:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.elementor-button:focus-visible {
	outline: 2px solid var(--mi-navy);
	outline-offset: 3px;
}
.mi-oscuro a:focus-visible,
.mi-sec--oscura a:focus-visible,
.mi-cta a:focus-visible,
.mi-cta-mitad a:focus-visible,
#footer a:focus-visible {
	outline-color: var(--mi-turquesa);
}
.screen-reader-text:not(:focus) {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* 3. Estructura =========================================================== */
.mi-dir *,
.mi-dir *::before,
.mi-dir *::after {
	box-sizing: border-box;
}
.mi-sec {
	padding-inline: var(--mi-lateral);
}
.mi-sec--grande {
	padding-block: clamp(64px, 8vw, 96px);
}
.mi-sec--fondo {
	background: var(--mi-fondo);
}
.mi-sec--oscura {
	background: var(--mi-navy);
	color: var(--mi-blanco);
}
.mi-wrap {
	max-width: var(--mi-ancho);
	margin-inline: auto;
}
.mi-estrecho {
	max-width: 860px;
	margin-inline: auto;
}

/* 4. Tipografía =========================================================== */
.mi-h1 {
	margin: 0;
	font-family: var(--mi-titulo);
	font-weight: 700;
	font-size: clamp(34px, 3vw + 10px, 52px);
	line-height: 1.12;
	letter-spacing: -0.02em;
	color: var(--mi-navy);
}
.mi-h2 {
	margin: 0;
	font-family: var(--mi-titulo);
	font-weight: 700;
	font-size: clamp(28px, 1.2vw + 20px, 36px);
	line-height: 1.22;
	letter-spacing: -0.01em;
	color: var(--mi-navy);
}
.mi-sec--oscura .mi-h2,
.mi-cta .mi-h2 {
	color: var(--mi-blanco);
}
.mi-intro {
	margin: 0;
	max-width: 780px;
	font-size: 18px;
	line-height: 30px;
	color: var(--mi-sec);
}
/* Eyebrow: texto en mayúsculas precedido de dos píxeles */
p.mi-eyebrow,
.mi-eyebrow .elementor-heading-title {
	margin: 0;
	display: inline-flex;
	align-items: center;
	font-family: var(--mi-cuerpo);
	font-size: 14px;
	line-height: 20px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--mi-azul-texto);
}
p.mi-eyebrow::before,
.mi-eyebrow .elementor-heading-title::before {
	content: "";
	flex: none;
	width: 8px;
	height: 8px;
	margin-right: 20px;
	background: var(--mi-azul);
	box-shadow: 10px -5px 0 var(--mi-navy);
	transform: translateY(2px);
}
.mi-oscuro p.mi-eyebrow,
.mi-oscuro .mi-eyebrow .elementor-heading-title {
	color: var(--mi-turquesa);
}
.mi-oscuro p.mi-eyebrow::before,
.mi-oscuro .mi-eyebrow .elementor-heading-title::before {
	box-shadow: 10px -5px 0 var(--mi-turquesa);
}

/* 5. Botones ============================================================== */
.mi-btn {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 48px;
	padding: 0 24px;
	border-radius: 10px;
	border: 1px solid transparent;
	font: 600 16px/20px var(--mi-cuerpo);
	text-decoration: none;
	transition: background-color 0.15s, color 0.15s;
}
body .mi-btn.mi-btn--pri {
	background: var(--mi-azul);
	color: var(--mi-navy);
}
body .mi-btn.mi-btn--pri:hover {
	background: var(--mi-cian);
	color: var(--mi-navy);
}
body .mi-btn.mi-btn--sec {
	border-color: var(--mi-navy);
	color: var(--mi-navy);
	background: transparent;
}
body .mi-btn.mi-btn--sec:hover {
	background: var(--mi-navy);
	color: var(--mi-blanco);
}
body .mi-btn.mi-btn--claro {
	border-color: var(--mi-blanco);
	color: var(--mi-blanco);
	background: transparent;
}
body .mi-btn.mi-btn--claro:hover {
	background: var(--mi-blanco);
	color: var(--mi-navy);
}
.mi-btn--peq {
	min-height: 44px;
	padding: 0 18px;
	font-size: 15px;
}
.mi-btns {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

/* 6. Componentes compartidos ============================================== */
/* Etiquetas */
.mi-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}
.mi-tag {
	display: inline-flex;
	align-items: center;
	padding: 3px 9px;
	border-radius: 6px;
	background: var(--mi-fondo);
	border: 1px solid var(--mi-borde);
	color: var(--mi-navy);
	font-size: 13px;
	line-height: 18px;
	font-weight: 500;
	text-decoration: none;
}
a.mi-tag:hover {
	border-color: var(--mi-navy);
	color: var(--mi-navy);
}
.mi-tag--ds {
	background: var(--mi-navy);
	border-color: var(--mi-navy);
	color: var(--mi-blanco);
	font-weight: 600;
}

/* Chips (filtros de sector, anclas de página) */
.mi-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
body a.mi-chip {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 16px;
	border-radius: 999px;
	border: 1px solid var(--mi-borde);
	background: var(--mi-blanco);
	color: var(--mi-navy);
	font-size: 15px;
	font-weight: 500;
	text-decoration: none;
	white-space: nowrap;
	box-sizing: border-box;
}
body a.mi-chip:hover {
	border-color: var(--mi-navy);
	color: var(--mi-navy);
}
body a.mi-chip.is-on,
body a.mi-chip.is-on:hover {
	background: var(--mi-navy);
	border-color: var(--mi-navy);
	color: var(--mi-blanco);
	font-weight: 600;
}

/* Avatar con iniciales (nunca logotipos de terceros) */
.mi-av {
	flex: none;
	width: 56px;
	height: 56px;
	border-radius: 999px;
	background: var(--mi-turquesa);
	color: var(--mi-navy);
	display: grid;
	place-items: center;
	font-family: var(--mi-titulo);
	font-weight: 700;
	font-size: 19px;
	line-height: 1;
}

/* Acordeón con <details> (plantillas) */
.mi-acc {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.mi-acc details {
	margin: 0;
	background: var(--mi-blanco);
	border: 1px solid var(--mi-borde);
	border-radius: var(--mi-radio);
}
.mi-acc details[open] {
	border-color: var(--mi-azul);
}
.mi-acc summary {
	list-style: none;
	cursor: pointer;
	min-height: 56px;
	padding: 14px 20px 14px 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	font: 600 17px/25px var(--mi-titulo);
	color: var(--mi-navy);
	border-radius: var(--mi-radio);
}
.mi-acc summary::-webkit-details-marker {
	display: none;
}
.mi-acc summary::after {
	content: "";
	flex: none;
	width: 24px;
	height: 24px;
	background: no-repeat center/24px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000058' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E");
}
.mi-acc details[open] summary::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000058' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E");
}
.mi-acc__resp {
	margin: 0;
	padding: 0 24px 20px;
	color: var(--mi-sec);
	font-size: 17px;
	line-height: 28px;
}

/* Lista con check */
.mi-checks {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.mi-checks li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	margin: 0;
	font-size: 17px;
	line-height: 28px;
}
.mi-checks li::before {
	content: "";
	flex: none;
	width: 20px;
	height: 20px;
	margin-top: 4px;
	background: no-repeat center/20px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230073B0' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
}

/* Caja blanca con borde y sombra */
.mi-caja {
	position: relative;
	background: var(--mi-blanco);
	border: 1px solid var(--mi-borde);
	border-radius: var(--mi-radio);
	box-shadow: var(--mi-sombra);
	padding: 32px;
}

/* Banner final */
.mi-sec--cta {
	padding-bottom: clamp(64px, 8vw, 96px);
}
.mi-cta {
	position: relative;
	overflow: hidden;
	background: var(--mi-navy);
	border-radius: 20px;
	padding: clamp(48px, 5vw, 64px) clamp(24px, 5vw, 64px);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
}
.mi-cta__txt {
	flex: 1 1 520px;
	min-width: 0;
	max-width: 680px;
}

/* 7. Motivo de píxeles ===================================================== */
.mi-px {
	position: absolute;
	pointer-events: none;
}
.mi-px--cta {
	right: 34px;
	top: 24px;
	width: 8px;
	height: 8px;
	background: var(--mi-turquesa);
	box-shadow: 10px 0 0 var(--mi-azul), 10px 10px 0 var(--mi-cian), -10px 10px 0 var(--mi-azul), 0 20px 0 var(--mi-turquesa);
}
.mi-px--caja,
.mi-px--mitad {
	top: 16px;
	right: 26px;
	width: 6px;
	height: 6px;
	background: var(--mi-turquesa);
	box-shadow: 8px 0 0 var(--mi-azul), 8px 8px 0 var(--mi-cian);
}
.mi-px--mitad {
	top: 20px;
	right: 32px;
	background: var(--mi-azul);
	box-shadow: 8px 0 0 var(--mi-turquesa), 8px 8px 0 var(--mi-cian);
}

/* 8. Cabecera y pie de Blocksy ============================================ */
/* Cabecera: fondo blanco, línea inferior, menú en navy sin mayúsculas */
#header [data-row="middle"] {
	background: var(--mi-blanco);
	border-bottom: 1px solid var(--mi-borde);
}
#header .ct-menu-link {
	font-family: var(--mi-cuerpo);
	font-size: 16px;
	font-weight: 500;
	text-transform: none;
	letter-spacing: 0;
	color: var(--mi-navy);
}
#header .ct-menu-link:hover {
	color: var(--mi-azul-texto);
}
#header .current-menu-item > .ct-menu-link,
#header .current_page_item > .ct-menu-link,
#header .current-menu-ancestor > .ct-menu-link {
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: var(--mi-azul);
	text-decoration-thickness: 2px;
	text-underline-offset: 8px;
}
#header [data-id="button"] .ct-button {
	min-height: 44px;
	padding-inline: 20px;
	border-radius: 10px;
	background: var(--mi-azul);
	color: var(--mi-navy);
	font-family: var(--mi-cuerpo);
	font-size: 16px;
	font-weight: 600;
}
#header [data-id="button"] .ct-button:hover {
	background: var(--mi-cian);
	color: var(--mi-navy);
}
#header .ct-header-trigger {
	min-width: 44px;
	min-height: 44px;
	color: var(--mi-navy);
}
#offcanvas .ct-menu-link {
	font-size: 20px;
	font-weight: 500;
	text-transform: none;
}

/* Pie: navy, seis columnas (logo + cinco menús), texto claro */
#footer [data-row] {
	background: var(--mi-navy);
	color: var(--mi-pie);
}
#footer [data-row="middle"] {
	padding-top: 64px;
	padding-bottom: 48px;
}
#footer [data-row="middle"] > .ct-container {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 32px;
}
#footer [data-row="bottom"] > .ct-container {
	padding-top: 24px;
	padding-bottom: 32px;
	border-top: 1px solid rgba(255, 255, 255, 0.18);
}
#footer .widget_media_image img {
	width: 180px;
	height: auto;
}
#footer .widget-title {
	margin: 0 0 8px;
	font-family: var(--mi-titulo);
	font-weight: 600;
	font-size: 15px;
	line-height: 22px;
	color: var(--mi-blanco);
}
#footer .widget_nav_menu ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
#footer .widget_nav_menu li {
	margin: 0;
}
#footer .widget_nav_menu a {
	display: inline-block;
	padding: 6px 0;
	font-size: 15px;
	line-height: 22px;
	color: var(--mi-pie);
	text-decoration: none;
}
#footer .widget_nav_menu a:hover {
	color: var(--mi-blanco);
	text-decoration: underline;
}
#footer .ct-footer-copyright {
	display: flex;
	align-items: center;
	color: var(--mi-pie);
	font-size: 14px;
	line-height: 20px;
}
#footer .ct-footer-copyright::before {
	content: "";
	flex: none;
	width: 8px;
	height: 8px;
	margin-right: 48px;
	background: var(--mi-azul);
	box-shadow: 12px 0 0 var(--mi-turquesa), 24px 0 0 var(--mi-cian);
}

/* 9. Clases para Elementor ================================================= */
/* Sección oscura: textos y enlaces claros */
.mi-oscuro {
	color: var(--mi-blanco);
}
.mi-oscuro a:not(.elementor-button) {
	color: var(--mi-turquesa);
}
/* Tarjeta: contenedor blanco con borde, radio y sombra */
.mi-tarjeta {
	background: var(--mi-blanco);
	border: 1px solid var(--mi-borde);
	border-radius: var(--mi-radio);
	box-shadow: var(--mi-sombra);
}
/* Píxeles decorativos en la esquina de un contenedor (posición relativa) */
.mi-con-px {
	position: relative;
}
.mi-con-px::after {
	content: "";
	position: absolute;
	top: 16px;
	right: 26px;
	width: 6px;
	height: 6px;
	background: var(--mi-turquesa);
	box-shadow: 8px 0 0 var(--mi-azul), 8px 8px 0 var(--mi-cian);
	pointer-events: none;
}
/* Botón secundario y botón claro para el widget Botón */
body .elementor-widget.mi-boton-sec .elementor-button {
	background: transparent;
	color: var(--mi-navy);
	border: 1px solid var(--mi-navy);
}
body .elementor-widget.mi-boton-sec .elementor-button:hover {
	background: var(--mi-navy);
	color: var(--mi-blanco);
}
body .elementor-widget.mi-boton-claro .elementor-button {
	background: transparent;
	color: var(--mi-blanco);
	border: 1px solid var(--mi-blanco);
}
body .elementor-widget.mi-boton-claro .elementor-button:hover {
	background: var(--mi-blanco);
	color: var(--mi-navy);
}
.elementor-button {
	min-height: 48px;
	display: inline-flex;
	align-items: center;
}

/* 10. Responsive =========================================================== */
@media (max-width: 999.98px) {
	#footer [data-row="middle"] > .ct-container {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	#footer [data-column="widget-area-1"] {
		grid-column: 1 / -1;
	}
}
@media (max-width: 689.98px) {
	#footer [data-row="middle"] > .ct-container {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.mi-chips--desliza {
		flex-wrap: nowrap;
		overflow-x: auto;
		scrollbar-width: none;
		padding-bottom: 4px;
	}
	.mi-chips--desliza::-webkit-scrollbar {
		display: none;
	}
	.mi-chips--desliza .mi-chip {
		flex: none;
	}
	:root {
		--mi-lateral: 16px;
	}
	.mi-btns .mi-btn,
	.mi-cta .mi-btn {
		width: 100%;
	}
	.mi-acc summary {
		font-size: 16px;
		line-height: 24px;
	}
	.mi-acc__resp,
	.mi-checks li {
		font-size: 16px;
		line-height: 26px;
	}
	.mi-caja {
		padding: 24px;
	}
	#footer .ct-footer-copyright::before {
		margin-right: 40px;
	}
}

/* 11. Enlaces dentro de texto (AA: no se distinguen solo por el color) ===== */
.elementor-widget-text-editor p a,
.elementor-widget-text-editor li a,
.mi-intro a,
.mi-plataformas a,
.mi-post p a,
.mi-nota a,
.mi-vacio a,
.mi-cf7 .wpcf7-form a,
.mi-legal a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
.elementor-widget-text-editor p a:hover,
.elementor-widget-text-editor li a:hover,
.mi-intro a:hover,
.mi-plataformas a:hover,
.mi-post p a:hover,
.mi-nota a:hover,
.mi-vacio a:hover,
.mi-cf7 .wpcf7-form a:hover,
.mi-legal a:hover {
	text-decoration-thickness: 2px;
}

/* 12. Revisión gratuita de mayoristas ([mi_comprobar], directorio, pago) ==== */
.mi-comprobar__badge {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 12px 4px 10px;
	border-radius: 999px;
	background: var(--mi-turquesa);
	color: var(--mi-navy);
	font: 600 13px/18px var(--mi-cuerpo);
	letter-spacing: 0.02em;
}
.mi-comprobar__badge svg {
	flex: none;
	stroke-width: 2.6;
}
.mi-comprobar {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 24px 48px;
	padding: 32px 36px;
	border: 1px solid var(--mi-borde);
	border-left: 4px solid var(--mi-azul);
	border-radius: var(--mi-radio);
	background: var(--mi-blanco);
	box-shadow: var(--mi-sombra);
}
.mi-comprobar__txt {
	flex: 1 1 460px;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.mi-comprobar__t {
	margin: 0;
	font: 700 24px/1.3 var(--mi-titulo);
	color: var(--mi-navy);
}
.mi-comprobar__txt p {
	margin: 0;
	font-size: 16px;
	line-height: 25px;
	color: var(--mi-texto);
}
.mi-comprobar__acc {
	flex: 0 1 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
}
.mi-comprobar__plazo {
	margin: 0;
	font-size: 14px;
	line-height: 20px;
	color: var(--mi-sec);
}
@media (max-width: 689.98px) {
	.mi-comprobar {
		padding: 24px 20px;
	}
	.mi-comprobar__t {
		font-size: 21px;
	}
	.mi-comprobar__acc,
	.mi-comprobar__acc .mi-btn {
		width: 100%;
	}
}
.mi-comprobar-linea {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 0;
	font-size: 15px;
	line-height: 22px;
	color: var(--mi-texto);
}
.mi-comprobar-linea svg {
	flex: none;
	margin-top: 2px;
	color: var(--mi-navy);
}
.mi-comprobar-linea a {
	font-weight: 600;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
.mi-comprobar-linea a:hover {
	text-decoration-thickness: 2px;
}
.mi-may-checkout .mi-comprobar-linea {
	margin: 0 0 16px;
	font-size: 14px;
}

/* 13. Promoción «Pruébalo gratis durante un mes» ========================= */
.mi-promo-etiqueta {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 12px 5px 10px;
	border-radius: 999px;
	background: var(--mi-turquesa);
	color: var(--mi-navy);
	font: 700 14px/18px var(--mi-cuerpo);
	white-space: nowrap;
}
.mi-promo-etiqueta svg {
	flex: none;
	stroke-width: 2.6;
}
/* Barra superior (toda la web) */
.mi-promo-barra {
	position: relative;
	z-index: 60;
	background: var(--mi-turquesa);
	color: var(--mi-navy);
	font: 500 15px/20px var(--mi-cuerpo);
	text-align: center;
}
.mi-promo-barra a {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 4px 6px;
	padding: 10px 16px;
	color: var(--mi-navy);
	text-decoration: none;
}
.mi-promo-barra strong {
	font-weight: 700;
}
.mi-promo-barra__cta {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-left: 8px;
	padding: 3px 10px;
	border-radius: 999px;
	background: var(--mi-navy);
	color: var(--mi-blanco);
	font-weight: 600;
	font-size: 14px;
}
.mi-promo-barra a:hover .mi-promo-barra__cta {
	background: var(--mi-azul);
	color: var(--mi-navy);
}
@media (max-width: 689.98px) {
	.mi-promo-barra span:not(.mi-promo-barra__cta) {
		display: none;
	}
}
/* Bloque destacado [mi_promo] */
.mi-promo-bloque {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 32px;
	padding: 24px 28px;
	border-radius: var(--mi-radio);
	background: var(--mi-turquesa);
	color: var(--mi-navy);
	box-shadow: 0 16px 32px -20px rgba(0, 0, 88, 0.45);
}
.mi-promo-bloque::before {
	content: "";
	position: absolute;
	right: 16px;
	top: 14px;
	width: 10px;
	height: 10px;
	background: var(--mi-navy);
	box-shadow: 12px -6px 0 var(--mi-blanco);
}
.mi-promo-bloque__txt {
	flex: 1 1 300px;
	min-width: 0;
}
.mi-promo-bloque__t {
	margin: 0 0 4px;
	font: 800 24px/1.25 var(--mi-titulo);
	color: var(--mi-navy);
}
.mi-promo-bloque__s {
	margin: 0;
	font-size: 16px;
	line-height: 24px;
	color: var(--mi-navy);
}
.mi-promo-bloque .mi-btn.mi-btn--pri {
	background: var(--mi-navy);
	color: var(--mi-blanco);
}
.mi-promo-bloque .mi-btn.mi-btn--pri:hover {
	background: var(--mi-blanco);
	color: var(--mi-navy);
}
.mi-promo-bloque--hero {
	padding: 18px 22px;
}
.mi-promo-bloque--hero .mi-promo-bloque__t {
	font-size: 21px;
}
.mi-promo-bloque--hero .mi-promo-bloque__s {
	font-size: 15px;
	line-height: 22px;
}
@media (max-width: 689.98px) {
	.mi-promo-bloque {
		padding: 20px;
	}
	.mi-promo-bloque .mi-btn {
		width: 100%;
	}
}
.mi-sc-promo:not(:has(.mi-promo-bloque, .mi-promo-etiqueta)) {
	display: none;
}
/* /contratar/ */
.mi-contratar__promo {
	margin: -8px -8px 4px;
	padding: 16px 18px;
	border-radius: 12px;
	background: var(--mi-turquesa);
	color: var(--mi-navy);
}
.mi-contratar__promo .mi-promo-etiqueta {
	background: var(--mi-navy);
	color: var(--mi-blanco);
}
.mi-contratar__promo-t {
	margin: 10px 0 2px;
	font: 800 22px/1.25 var(--mi-titulo);
}
.mi-contratar__promo-s {
	margin: 0;
	font-size: 15px;
}
.mi-contratar__hoy {
	margin: -4px 0 0;
	padding: 10px 14px;
	border-radius: 10px;
	background: rgba(62, 236, 243, 0.18);
	font-size: 14px;
	line-height: 21px;
	color: var(--mi-texto);
}
.mi-contratar__max {
	margin: 0;
	font-size: 14px;
	line-height: 20px;
	color: var(--mi-sec);
}
.mi-contratar__max a {
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* 14. Enlaces sin subrayado en toda la web (incluido el aviso de cookies) == */
a,
a:hover,
a:focus,
a:active,
.cmplz-cookiebanner a,
.cmplz-cookiebanner .cmplz-link {
	text-decoration: none !important;
}
