/*
 * Código 00 — Popup Maker + Formidable + Polylang
 * Estilos del botón, popups, teléfono, dirección y campos auxiliares.
 */

/* ============================================================================
   BOTÓN WHATSAPP FLOTANTE
   - Solo controla el botón flotante.
   - La ventana emergente de Popup Maker se controla desde el plugin.
============================================================================ */
#raco-wa-pum-floating-button {
	position: fixed !important;
	left: 22px !important;
	right: auto !important;
	bottom: 24px !important;
	z-index: 9999990 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 60px !important;
	height: 60px !important;
	min-width: 60px !important;
	min-height: 60px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #25D366 !important;
	border: 0 !important;
	border-radius: 999px !important;
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.22) !important;
	cursor: pointer !important;
	text-decoration: none !important;
	transition: transform 0.18s ease, box-shadow 0.18s ease !important;
}

#raco-wa-pum-floating-button:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.28) !important;
}

#raco-wa-pum-floating-button img,
#raco-wa-pum-floating-button svg {
	display: block !important;
	width: 38px !important;
	height: 38px !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #ffffff !important;
	object-fit: contain !important;
	pointer-events: none !important;
}

/* ============================================================================
   TELÉFONO INTERNACIONAL
   - Solo mantiene funcionalidad visual del selector de país.
   - No controla tamaño de la ventana emergente.
============================================================================ */
body .pum-content .iti {
	display: block !important;
	width: 100% !important;
	position: relative !important;
}

body .pum-content .iti input[type="tel"],
body .pum-content input.frm-intl-tel-input {
	width: 100% !important;
	min-height: 44px !important;
	padding-right: 14px !important;
	box-sizing: border-box !important;
}

body .pum-content .iti--allow-dropdown input[type="tel"],
body .pum-content .iti--show-flags input[type="tel"],
body .pum-content .iti input.frm-intl-tel-input {
	padding-left: 58px !important;
}

body .pum-content .iti__country-container {
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	bottom: 0 !important;
	width: 50px !important;
	z-index: 5 !important;
}

body .pum-content .iti__selected-country {
	width: 50px !important;
	min-height: 44px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-right: 1px solid #d8dee7 !important;
	border-radius: 4px 0 0 4px !important;
	box-shadow: none !important;
	cursor: pointer !important;
}

body .pum-content .iti__selected-country-primary {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 5px !important;
	width: 100% !important;
}

body .pum-content .iti__flag,
body .pum-content .iti__arrow {
	margin: 0 !important;
	flex: 0 0 auto !important;
}

body .pum-content .iti__selected-dial-code,
body .pum-content .raco-iti-selected-dial-code {
	display: none !important;
}

body .iti--container,
body .iti__dropdown-content,
body .iti__country-list {
	z-index: 100000001 !important;
}

body .iti__dropdown-content {
	box-sizing: border-box !important;
}

body .iti__country-list {
	max-height: 220px !important;
}

/* Lista de países del teléfono internacional dentro de Popup Maker
   - Estilo tipo campo auxiliar, no como una segunda ventana emergente
   - Se ancla al campo teléfono y respeta el ancho del formulario */
body .iti__dropdown-content.raco-iti-in-popup {
	position: fixed !important;
	z-index: 100000060 !important;
	max-width: calc(100vw - 24px) !important;
	box-sizing: border-box !important;
	background: #ffffff !important;
	border: 1px solid #cfd8e3 !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	box-shadow: 0 8px 22px rgba(15, 23, 42, 0.12) !important;
	padding: 8px 0 6px 0 !important;
}

body .iti__dropdown-content.raco-iti-in-popup .iti__search-input {
	display: block !important;
	width: calc(100% - 20px) !important;
	max-width: calc(100% - 20px) !important;
	min-height: 38px !important;
	margin: 0 10px 7px 10px !important;
	padding: 8px 11px !important;
	box-sizing: border-box !important;
	background: #ffffff !important;
	border: 1px solid #cfd8e3 !important;
	border-radius: 5px !important;
	font-size: 14px !important;
	line-height: 1.25 !important;
}

body .iti__dropdown-content.raco-iti-in-popup .iti__country-list {
	width: 100% !important;
	max-width: 100% !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	box-sizing: border-box !important;
	background: transparent !important;
}

body .iti__dropdown-content.raco-iti-in-popup .iti__country {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	width: calc(100% - 12px) !important;
	min-height: 38px !important;
	margin: 0 6px !important;
	padding: 8px 10px !important;
	box-sizing: border-box !important;
	border-radius: 5px !important;
	background: transparent !important;
}

body .iti__dropdown-content.raco-iti-in-popup .iti__country:hover,
body .iti__dropdown-content.raco-iti-in-popup .iti__country.iti__highlight {
	background: #f4f6f8 !important;
}

body .iti__dropdown-content.raco-iti-in-popup .iti__country-name {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
	font-size: 14px !important;
	color: #12344d !important;
}

body .iti__dropdown-content.raco-iti-in-popup .iti__dial-code {
	flex: 0 0 auto !important;
	font-size: 13px !important;
	color: #4a5b6d !important;
}

/* El selector conserva en escritorio su desplegable nativo. Esta regla solo
   neutraliza durante unos milisegundos la capa fullscreen creada en móvil,
   antes de que el runtime la convierta al mismo desplegable de escritorio. */
body .iti--container.iti--fullscreen-popup {
	background: transparent !important;
}

body .iti--container.raco-iti-dropdown-container {
	position: fixed !important;
	left: 0 !important;
	top: 0 !important;
	right: auto !important;
	bottom: auto !important;
	display: block !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	overflow: visible !important;
	pointer-events: none !important;
	z-index: 100000060 !important;
}

body .iti--container.raco-iti-dropdown-container .iti__dropdown-content {
	pointer-events: auto !important;
}

/* ============================================================================
   CALENDARIO JQUERY UI DENTRO DE POPUP MAKER
   - Se ancla al campo activo y acompaña cualquier desplazamiento del popup.
   - Antes de elegir una fecha, "hoy" sirve como referencia.
   - Después de elegir, solo la fecha seleccionada conserva el relleno activo.
============================================================================ */
body #ui-datepicker-div.raco-datepicker-in-popup {
	position: fixed !important;
	max-width: calc(100vw - 24px) !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	transform: none !important;
	z-index: 100000070 !important;
	will-change: left, top !important;
}

/* jQuery UI mantiene por separado las clases de "hoy" y "seleccionado".
   Se neutralizan ambas y el runtime asigna exactamente un marcador propio. */
body #ui-datepicker-div.raco-datepicker-in-popup td,
body #ui-datepicker-div.raco-datepicker-in-popup td.ui-datepicker-today,
body #ui-datepicker-div.raco-datepicker-in-popup td.ui-datepicker-current-day {
	background: transparent !important;
	border-color: transparent !important;
	box-shadow: none !important;
}

body #ui-datepicker-div.raco-datepicker-in-popup td a.ui-state-default,
body #ui-datepicker-div.raco-datepicker-in-popup td a.ui-state-highlight,
body #ui-datepicker-div.raco-datepicker-in-popup td a.ui-state-active {
	background: transparent !important;
	border-color: transparent !important;
	color: #4a5b6d !important;
	box-shadow: none !important;
}

body #ui-datepicker-div.raco-datepicker-in-popup td a.ui-state-hover {
	background: #f4f6f8 !important;
	border-color: transparent !important;
	color: #12344d !important;
	box-shadow: none !important;
}

body #ui-datepicker-div.raco-datepicker-in-popup td.raco-datepicker-marker a,
body #ui-datepicker-div.raco-datepicker-in-popup td.raco-datepicker-marker a.ui-state-default,
body #ui-datepicker-div.raco-datepicker-in-popup td.raco-datepicker-marker a.ui-state-highlight,
body #ui-datepicker-div.raco-datepicker-in-popup td.raco-datepicker-marker a.ui-state-active,
body #ui-datepicker-div.raco-datepicker-in-popup td.raco-datepicker-marker a.ui-state-hover {
	background: #02a6ae !important;
	border-color: #02a6ae !important;
	color: #ffffff !important;
	box-shadow: none !important;
}

/* ============================================================================
   AVISO ANTES DE REDIRIGIR A WHATSAPP
   - Se aplica al bloque HTML recomendado dentro de Formidable.
============================================================================ */
.raco-form-whatsapp-notice {
	display: flex !important;
	align-items: flex-start !important;
	gap: 11px !important;
	width: 100% !important;
	margin: 4px 0 18px !important;
	padding: 14px 15px !important;
	background: #f3faf9 !important;
	border: 1px solid rgba(1, 113, 122, 0.24) !important;
	border-radius: 8px !important;
	box-sizing: border-box !important;
	color: #27465a !important;
}

.raco-form-whatsapp-notice-icon {
	display: inline-flex !important;
	flex: 0 0 22px !important;
	align-items: center !important;
	justify-content: center !important;
	width: 22px !important;
	height: 22px !important;
	margin-top: 1px !important;
	background: #01717a !important;
	border-radius: 50% !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	font-style: normal !important;
	line-height: 1 !important;
}

.raco-form-whatsapp-notice p {
	margin: 0 !important;
	color: inherit !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
}

/* ============================================================================
   DIRECCIÓN ASISTIDA
   - Se mantiene el estilo y la lógica visual de dirección.
   - No modifica ancho, alto ni padding de la ventana Popup Maker.
============================================================================ */
.raco-address-helper {
	display: block !important;
	width: 100% !important;
	margin: 18px auto 18px auto !important;
	padding: 16px 16px !important;
	background: #f3faf9 !important;
	border: 1px solid rgba(1, 113, 122, 0.22) !important;
	border-radius: 8px !important;
	box-sizing: border-box !important;
	text-align: center !important;
}

.raco-address-helper-title {
	margin: 0 0 8px 0 !important;
	color: #12344d !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
}

.raco-address-helper-text {
	margin: 0 0 14px 0 !important;
	color: #4a5b6d !important;
	font-size: 14px !important;
	line-height: 1.4 !important;
}

.raco-address-helper-actions {
	display: flex !important;
	gap: 10px !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
	align-items: center !important;
}

.raco-address-helper button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 42px !important;
	padding: 10px 14px !important;
	border-radius: 5px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	cursor: pointer !important;
}

.raco-address-auto {
	background: #01717a !important;
	color: #ffffff !important;
	border: 1px solid #01717a !important;
}

.raco-address-auto:hover {
	background: #019AA3 !important;
	border-color: #019AA3 !important;
	color: #ffffff !important;
}

.raco-address-manual {
	background: #ffffff !important;
	color: #01717a !important;
	border: 1px solid #01717a !important;
}

.raco-address-manual:hover {
	background: #eefafa !important;
	color: #01717a !important;
}

.raco-address-status {
	margin-top: 12px !important;
	color: #4a5b6d !important;
	font-size: 13px !important;
	line-height: 1.4 !important;
	text-align: center !important;
}

.raco-address-hidden {
	display: none !important;
}

/* Dirección 2 no se utiliza. El selector por ID sigue la estructura
   oficial de subcampos de Formidable y cubre contenido en caché. */
#pum-45202 div[id^="frm_field_"][id$="-line2_container"],
#pum-45206 div[id^="frm_field_"][id$="-line2_container"],
.raco-address-line2-hidden {
	display: none !important;
}

/* Producto consultado: el input original permanece activo para Formidable.
   La presentación visual evita repetir la caja del aviso. */
#frm_field_170_container {
	margin-bottom: 17px !important;
}

#frm_field_170_container .frm_primary_label {
	display: block !important;
	margin: 0 0 6px !important;
	color: #526979 !important;
	font-family: "Montserrat", "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
	font-size: 10.5px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.075em !important;
	text-align: center !important;
	text-transform: uppercase !important;
}

#frm_field_170_container input.raco-product-consulted-source {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

#frm_field_170_container .raco-product-consulted-card {
	position: relative !important;
	box-sizing: border-box !important;
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 10px 12px !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: 0 !important;
	font-family: "Montserrat", "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
	text-align: center !important;
}

#frm_field_170_container .raco-product-consulted-card[hidden] {
	display: none !important;
}

#frm_field_170_container .raco-product-consulted-name {
	display: block !important;
	max-width: 31ch !important;
	margin: 0 auto !important;
	color: #1e344f !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.008em !important;
	text-align: center !important;
	overflow-wrap: anywhere !important;
	word-break: normal !important;
}

/* Variante A: premium compacta, inspirada en los títulos del inicio. */
#frm_field_170_container .raco-product-style-premium .raco-product-consulted-name {
	font-size: clamp(15px, 3.8vw, 18px) !important;
	font-weight: 800 !important;
	line-height: 1.28 !important;
	letter-spacing: 0.012em !important;
}

@supports ((-webkit-background-clip: text) or (background-clip: text)) {
	#frm_field_170_container .raco-product-style-premium .raco-product-consulted-name {
		background: linear-gradient(90deg, #1e344f 0%, #1e344f 37%, #007b83 67%, #02a6ae 100%) !important;
		-webkit-background-clip: text !important;
		background-clip: text !important;
		-webkit-text-fill-color: transparent !important;
	}
}

#frm_field_170_container .raco-product-style-premium::after {
	content: "" !important;
	display: block !important;
	width: min(126px, 42vw) !important;
	height: 3px !important;
	margin: 9px auto 0 !important;
	border-radius: 999px !important;
	background: linear-gradient(90deg, rgba(247, 192, 14, 0) 0%, #f7c00e 18%, #02a6ae 50%, #ea7221 82%, rgba(234, 114, 33, 0) 100%) !important;
	box-shadow: 0 3px 8px rgba(2, 166, 174, 0.10) !important;
	pointer-events: none !important;
}

/* Variante B: minimalista, sin degradado y con separador discreto. */
#frm_field_170_container .raco-product-style-minimal .raco-product-consulted-name {
	color: #1e344f !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.38 !important;
	letter-spacing: 0 !important;
	background: transparent !important;
	-webkit-text-fill-color: currentColor !important;
}

#frm_field_170_container .raco-product-style-minimal::after {
	content: "" !important;
	display: block !important;
	width: 48px !important;
	height: 2px !important;
	margin: 9px auto 0 !important;
	border-radius: 999px !important;
	background: rgba(2, 166, 174, 0.42) !important;
	box-shadow: none !important;
	pointer-events: none !important;
}

@media (max-width: 480px) {
	#frm_field_170_container .raco-product-consulted-card {
		padding-right: 7px !important;
		padding-left: 7px !important;
	}

	#frm_field_170_container .raco-product-style-premium .raco-product-consulted-name {
		font-size: clamp(15px, 4.4vw, 17px) !important;
	}
}

.raco-address-helper.raco-address-helper-error {
	background: #fff7f6 !important;
	border-color: rgba(195, 57, 43, 0.42) !important;
}

.raco-address-helper.raco-address-helper-error .raco-address-status {
	color: #b42318 !important;
	font-weight: 800 !important;
}

.raco-address-field-error {
	border-color: #b42318 !important;
	box-shadow: 0 0 0 2px rgba(180, 35, 24, 0.10) !important;
}

@media (max-width: 768px) {
	#raco-wa-pum-floating-button {
		left: 16px !important;
		bottom: 18px !important;
		width: 58px !important;
		height: 58px !important;
		min-width: 58px !important;
		min-height: 58px !important;
	}

	#raco-wa-pum-floating-button img {
		width: 33px !important;
		height: 33px !important;
	}

	.raco-address-helper-actions {
		flex-direction: column !important;
	}

	.raco-address-helper button {
		width: 100% !important;
	}
}

/* ============================================================================
   WHATSAPP POPUP MAKER 45202 - AJUSTE TIPO CHAT EN MÓVIL
   - No altera escritorio.
   - Mantiene el botón WhatsApp en su ubicación móvil original.
   - En móvil convierte el formulario en una ventana más angosta, tipo chat.
   - Corrige la X para que quede completa, visible y por encima del contenido.
============================================================================ */
@media (max-width: 768px) {
	html,
	body {
		max-width: 100% !important;
		overflow-x: hidden !important;
	}

	#pum-45202,
	#pum-45202.pum-active {
		width: 100vw !important;
		max-width: 100vw !important;
		overflow: visible !important;
	}

	#popmake-45202 {
		position: fixed !important;
		left: 18px !important;
		right: auto !important;
		top: auto !important;
		bottom: 86px !important;
		width: min(340px, calc(100vw - 44px)) !important;
		max-width: calc(100vw - 44px) !important;
		height: min(680px, calc(100dvh - 145px)) !important;
		max-height: calc(100dvh - 145px) !important;
		margin: 0 !important;
		transform: none !important;
		box-sizing: border-box !important;
		overflow: visible !important;
	}

	#popmake-45202 .pum-content,
	#popmake-45202 .popmake-content {
		height: 100% !important;
		max-height: 100% !important;
		overflow-y: auto !important;
		overflow-x: hidden !important;
		-webkit-overflow-scrolling: touch !important;
		box-sizing: border-box !important;
	}

	#popmake-45202 .pum-close,
	#popmake-45202 .popmake-close {
		position: absolute !important;
		top: -14px !important;
		right: -12px !important;
		left: auto !important;
		bottom: auto !important;
		transform: none !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 38px !important;
		height: 38px !important;
		min-width: 38px !important;
		min-height: 38px !important;
		max-width: 38px !important;
		max-height: 38px !important;
		margin: 0 !important;
		padding: 0 !important;
		line-height: 1 !important;
		box-sizing: border-box !important;
		z-index: 100000010 !important;
		background: #019AA3 !important;
		color: #ffffff !important;
		border: 0 !important;
		border-radius: 8px !important;
		box-shadow: 0 8px 22px rgba(0, 0, 0, 0.24) !important;
		font-size: 18px !important;
		font-weight: 800 !important;
		cursor: pointer !important;
		overflow: visible !important;
	}
}

/* ============================================================================
   COTIZAR POPUP MAKER 45206 - AJUSTE MÓVIL
   - Solo aplica al formulario del botón "Cotizar / Consultar disponibilidad".
   - Lo deja más ancho en móvil sin convertirlo en pantalla completa.
   - Corrige la X para que no quede cortada.
============================================================================ */
@media (max-width: 768px) {
	#pum-45206,
	#pum-45206.pum-active {
		width: 100vw !important;
		max-width: 100vw !important;
		overflow: visible !important;
	}

	#popmake-45206 {
		position: fixed !important;
		left: 50% !important;
		right: auto !important;
		top: calc(42px + env(safe-area-inset-top, 0px)) !important;
		bottom: auto !important;
		transform: translateX(-50%) !important;
		width: min(430px, calc(100vw - 24px)) !important;
		max-width: calc(100vw - 24px) !important;
		height: min(760px, calc(100dvh - 88px)) !important;
		max-height: calc(100dvh - 88px) !important;
		margin: 0 !important;
		box-sizing: border-box !important;
		overflow: visible !important;
	}

	#popmake-45206 .pum-content,
	#popmake-45206 .popmake-content {
		height: 100% !important;
		max-height: 100% !important;
		overflow-y: auto !important;
		overflow-x: hidden !important;
		-webkit-overflow-scrolling: touch !important;
		box-sizing: border-box !important;
	}

	#popmake-45206 .pum-close,
	#popmake-45206 .popmake-close {
		position: absolute !important;
		top: -14px !important;
		right: -10px !important;
		left: auto !important;
		bottom: auto !important;
		transform: none !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 40px !important;
		height: 40px !important;
		min-width: 40px !important;
		min-height: 40px !important;
		max-width: 40px !important;
		max-height: 40px !important;
		margin: 0 !important;
		padding: 0 !important;
		line-height: 1 !important;
		box-sizing: border-box !important;
		z-index: 100000010 !important;
		background: #019AA3 !important;
		color: #ffffff !important;
		border: 0 !important;
		border-radius: 8px !important;
		box-shadow: 0 8px 22px rgba(0, 0, 0, 0.24) !important;
		font-size: 19px !important;
		font-weight: 800 !important;
		cursor: pointer !important;
		overflow: visible !important;
	}
}

/* ============================================================================
   GOOGLE PLACES AUTOCOMPLETE EN POPUP MAKER
   - La lista .pac-container la crea Google fuera del popup.
   - Este z-index permite que se vea sobre Popup Maker.
============================================================================ */
body .pac-container,
body .pac-container.raco-pac-in-popup {
	z-index: 100000050 !important;
	box-sizing: border-box !important;
}

body .pac-container.raco-pac-in-popup {
	position: fixed !important;
	max-width: calc(100vw - 24px) !important;
	border-radius: 0 0 8px 8px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	box-shadow: 0 12px 30px rgba(15, 23, 42, 0.22) !important;
}
