@charset "UTF-8";

/* Estilo para poner el asterisco en rojo */
.ui-outputlabel-rfi {
	color: #AE1C22;
}

.obligatorio {
	color: #AE1C22;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 19px;
}

/* Estilos para textos */
.texto-opcional {
	color: #767676;
	text-align: center;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 12px !important;
	font-style: normal;
	font-weight: 400;
	line-height: 19px;
}

.text-14-captcha {
	color: #434343;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 14px !important;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.text-14 {
	color: #161A1D;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 14px !important;
	font-style: normal;
	font-weight: 400;
	line-height: 19px;
}

.text-24 {
	color: #161A1D;
	text-align: center;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 24px !important;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.text-14-requeridos {
	color: #767676;
}

.text-16 {
	color: #434343;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	text-align: left !important;
}

.text-16-bold {
	font-weight: 600;
}

.text-16-black {
	color: #161A1D !important;
}

.text-16-reenvio {
	color: #767676;
	font-weight: 600;
}

.text-links {
	color: #611232;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 600 !important;
	line-height: 22px !important;
	text-decoration: none;
}

.text-links-02 {
	color: #9B2247;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 400 !important;
	line-height: 22px !important;
	text-decoration-line: underline;
}

.text-update {
	overflow: hidden;
	color: #9B2247;
	text-overflow: ellipsis;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 600;
	line-height: 22px;
}

.text-20 {
	color: #161A1D;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 20px !important;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.text-20-500 {
	font-weight: 500;
}

.text-verified {
	color: #434343;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 14px !important;
	font-style: normal;
	font-weight: 400;
	line-height: 19px;
}

.text-contact {
	color: #611232;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 14px !important;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

/* Estilos para posicionamiento */
.alineado-derecha {
	display: flex;
	align-items: center;
	justify-content: right;
}

.espaciado {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.centrado {
	display: flex;
	justify-content: center;
}

.alineado-izquierda {
	display: flex;
	justify-content: left;
	align-items: center;
}


/* Estilo para aplicar borde derecho */
.borde {
	position: relative;
}

.borde::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: .5px;
	height: 100%;
	background-color: #DDD;
}

.borde-bottom {
	position: relative;
}

.borde-bottom::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: .5px;
	background-color: #DDD;
}

/* Estilos para paneles informativos */
.panel-azul {
	border-radius: 8px;
	background: #EDF2FE;
}

.contenido-panel {
	display: flex;
	align-items: start;
	gap: 5px;
}

.text-azul {
	color: #224497;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 14px !important;
	font-style: normal;
	font-weight: 400;
	line-height: 19px;
}

.panel-rojo {
	border-radius: 8px;
	background: #FAE5E5;
}

.text-rojo {
	color: #AE1C22;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 14px !important;
	font-style: normal;
	font-weight: 400;
	line-height: 19px;
}

.panel-amarillo {
	border-radius: 8px;
	background: #FFEB99;
}

.text-amarillo {
	color: #161A1D;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 14px !important;
	font-style: normal;
	font-weight: 400;
	line-height: 19px;
}

/* Estilos para botones */
.btn-primario {
	border-radius: 8px !important;
	background-color: #611232 !important;
	border: 1px solid #611232 !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 600;
	line-height: 22px;
	font-family: "Noto Sans", sans-serif !important;
	color: #fff !important;
/*	width: 40% !important;*/
	height: 44px;
}

.btn-primario.btn-siguiente {
	display: flex;
	align-items: center;
	justify-content: center;
}

.btn-primario.btn-siguiente::after {
	content: "";
	background-image: url('/resources/img/mx/ui/arrow-right.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 25px;
	height: 25px;
}

.btn-secundario {
	border-radius: 8px !important;
	background: #FFF !important;
	border: 1px solid #611232 !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 600;
	line-height: 22px;
	font-family: "Noto Sans", sans-serif !important;
	color: #611232 !important;
	height: 44px;
}

/* Media query para botones en pantallas pequeñas */
@media (max-width: 768px) {
	.btn-primario {
		width: 100% !important;
		white-space: nowrap !important;
	}
	
	.btn-secundario {
		width: 100% !important;
		white-space: nowrap !important;
	}

}

/* Estilo para agregar el icono atrás */
.btn-secundario.btn-atras:before {
	content: "";
	background-image: url('/resources/img/mx/ui/arrow-left.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 25px;
	height: 25px;
}

.btn-secundario.btn-atras {
	display: flex;
	align-items: center;
	justify-content: center;
}

body .ui-button.btn-secundario:hover {
	border: 1px solid #611232 !important;
}

.btn-deshabilitado {
	border-radius: 8px !important;
	background-color: #DDD !important;
	border: 1px solid #DDD !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 600;
	line-height: 22px;
	font-family: "Noto Sans", sans-serif !important;
	color: #AAA !important;
	width: 40% !important;
	height: 44px;
}

/* Estilos para los componentes <p:inputText> */
.estilo-input-text {
	border-radius: 8px !important;
	border: 1px solid #DDD !important;
	height: 40px;
	color: #161A1D !important;
	text-overflow: ellipsis;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 400 !important;
	line-height: normal;
}

.estilo-input-text::placeholder {
	color: #767676 !important;
	text-overflow: ellipsis !important;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 400 !important;
	line-height: normal;
}

.input-registro-datos {
	border-radius: 8px;
	border: 1px solid #F3F3F3;
	height: 40px;
	background: #F3F3F3 !important;
	overflow: hidden;
	color: #434343 !important;
	text-overflow: ellipsis;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px !important;
	font-style: normal !important;
	font-weight: 400 !important;
	line-height: normal !important;
}

/* Estilos para componentes <p:selectOneMenu> */
.estilos-select-one {
	border-radius: 8px !important;
	border: 1px solid #DDD !important;
	height: 40px;
}

.ui-selectonemenu-label:not([aria-label*="Selecciona"]) {
	color: #161A1D;
}

.ui-selectonemenu-label[aria-label*="Selecciona"] {
	color: #AAA;
}

.estilos-select-one .ui-selectonemenu-label {
	overflow: hidden;
	text-overflow: ellipsis;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 400;
	line-height: 22px;
}

body .ui-selectonemenu .ui-selectonemenu-trigger .ui-icon {
	color: #161A1D;
	font-size: 14px;
}

.ui-selectonemenu-panel .ui-selectonemenu-list {
	color: #AAA !important;
	text-overflow: ellipsis;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 400 !important;
	line-height: normal;
}

body .ui-fluid .estilos-select-one .ui-selectonemenu-label {
	padding: 8px .5rem !important;
}

/* Estilo para <p:inputTextArea> */
.text-area {
	border-radius: 8px !important;
	border: 1px solid #DDD !important;
	background: #FFF !important;
	color: #161A1D !important;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 400 !important;
	line-height: normal;
}

.text-area::placeholder {
	color: #7A7C7E !important;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

/* Estilo para <p:fileUpload> */
.drag-and-drop {
	border: 1px dashed #bbb;
	border-radius: 16px;
	background-color: #ffffff;
	padding: 2.5rem;
	text-align: center;
	cursor: pointer;
	transition: border-color 0.3s;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.drag-and-drop:hover {
	border-color: #611232;
	background-color: #f3f3f3;
}

.drag-and-drop .texto-principal {
	color: #161A1D;
	text-align: center;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px;
	font-weight: 600;
	line-height: 22px;
}

.drag-and-drop .texto-secundario {
	color: #434343;
	text-align: center;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 14px;
	font-weight: 400;
	line-height: 19px;
	margin-top: 0.5rem;
}

.contenedor-archivo {
	padding: 1rem;
	border: 1px solid #DDD;
	border-radius: 16px;
	background-color: #fff;
	max-width: 600px;
	margin: 1rem auto;
}

.info-archivo {
	flex-direction: column;
}

.info-archivo-columnas {
	display: flex;
	align-items: center;
	gap: 1.5rem;
}

.columna-icono {
	flex: 0 0 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 100px;
	background: #F0FAF5;
}

.icono-archivo {
	width: 30px;
	height: 30px;
	margin-top: 8px;
	margin-left: 4px;
}

.columna-contenido {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.nombre-archivo {
	color: #161A1D;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 600 !important;
	line-height: 22px;
	margin-bottom: 10px;
	word-break: break-word;
}

.contenedor-barra-progreso {
	width: 100%;
	background-color: #e0e0e0;
	border-radius: 8px;
	margin-bottom: 1rem;
}

.barra-progreso-doc {
	width: 0;
	height: 10px;
	background-color: #4caf50;
	border-radius: 8px;
}

.barra-progreso-doc.completado {
	width: 100%;
	background-color: #4caf50;
}

.carga-exitosa {
	color: #2A872A !important;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 12px !important;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.columna-boton {
	display: flex;
	justify-content: center;
	align-items: center;
}

.alineacion-boton-eliminar {
	display: flex;
	align-items: center;
}

.btn-eliminar {
	background-image: url('/resources/img/mx/ui/trash.svg') !important;
	background-size: contain !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-color: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
}


/* Estilos para <p:password> */
.password {
	border-radius: 8px !important;
	border: 2px solid #224497 !important;
	background: #FFF !important;
	color: #161A1D !important;
	text-overflow: ellipsis;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 400 !important;
	line-height: normal;
}

input.password+.ui-password-icon {
	color: #161A1D !important;
	font-size: 21px !important;
	top: 7px !important;
	right: 9px !important;
}

/* Estilos para <p:selectBooleanCheckbox> */
.checkbox {
	color: #161A1D !important;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.checkbox.ui-chkbox .ui-chkbox-box {
	border-radius: 0px !important;
	border: 2px solid #767676;
	width: 18px;
	height: 18px;
}

.checkbox.ui-chkbox .ui-chkbox-box.ui-state-active {
	border-color: #611232 !important;
	background: #ffffff !important;
}

.checkbox.ui-chkbox .ui-chkbox-box .ui-chkbox-icon {
	color: #611232 !important;
}

.checkbox.ui-chkbox .ui-chkbox-box .ui-chkbox-icon.ui-icon-check {
	font-weight: bold !important;
}

.checkbox.ui-chkbox .ui-chkbox-box.ui-state-focus {
	box-shadow: none !important;
}

.checkbox.ui-chkbox .ui-chkbox-box.ui-state-hover {
	border-color: #611232 !important;
}

/* Estilos para mensajes */
.ui-message:empty {
	display: none;
}

.ui-message-error {
	padding: 3px 0px !important;
}

body .ui-message.ui-message-error {
	border-width: 0 !important;
	background: #fff !important;
	border: none !important;
	overflow: hidden;
	color: #AE1C22 !important;
	text-overflow: ellipsis;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 14px !important;
	font-style: normal;
	font-weight: 400;
	line-height: 19px;
	text-align: left;
}

.ui-outputlabel.ui-state-error {
	color: #AE1C22 !important;
}

/* Estilo para la sección de botones en mobile */
.panel-botones {
	border-radius: 16px 16px 0 0;
	background: #FFF;
	box-shadow: 0 -4px 4px 0 rgba(180, 180, 180, 0.25);
	margin-top: 25px;
}

.panel-encabezado-mobile {
	position: fixed;	
	border-radius: 0 0 16px 16px;
	background: #FFF;
	box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
	margin-bottom: 5px;
	z-index: 2;
    width: 100%;
    height: 115px;
    align-content: center;
    padding: 10px;
}

/* Clase para ocultar los paneles para resoluciones mobiles */
.panel-mobile {
	display: none;
}

/* Se sobreescribe estilo para hr */
hr {
	margin-top: 8px !important;
	margin-bottom: 8px !important;
	border-top: 1px solid #ddd !important;
}

/* Estilo para <pe:inputPhone> */
.iti__selected-dial-code {
	color: #161A1D !important;
	text-overflow: ellipsis;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 400 !important;
	line-height: normal;
}

/* Estilo para el input del teléfono dentro de pe:inputPhone */
#formExtranjero\:txtInputPhone .iti__tel-input,
#formExtranjero\:txtInputPhone input.iti__tel-input,
#formExtranjero\:txtInputPhone input[type="tel"],
.iti__tel-input,
input.iti__tel-input,
.iti input[type="tel"] {
	border: 1px solid #DDD !important;
	border-radius: 8px !important;
	height: 40px !important;
	width: 100% !important;
	padding: 8px 12px 8px 92px !important;
	box-sizing: border-box !important;
	color: #161A1D !important;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	background: #FFFFFF !important;
}

.iti__tel-input:focus,
input.iti__tel-input:focus {
	border: 1px solid #602333 !important;
}

.iti__tel-input::placeholder {
	color: #767676 !important;
}

/* Forzar ancho del contenedor del input phone */
div[id*="txtInputPhone"] {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
}

#formExtranjero\:txtInputPhone .iti {
	width: 100% !important;
	max-width: none !important;
	min-width: 100% !important;
	display: block !important;
}

/* Sobrescribir el ancho inline que aplica intl-tel-input */
body #formExtranjero\:txtInputPhone .iti[style],
body .iti.iti--allow-dropdown[style],
body div[id*="txtInputPhone"] .iti[style] {
	width: 100% !important;
	max-width: none !important;
	min-width: 100% !important;
}

.iti__country-container {
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	bottom: 0 !important;
}

/* Estilo para botones tipo link */
.btn-link {
	background: #FFF !important;
	border: none !important;
	color: #611232 !important;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 600 !important;
	line-height: normal;
	text-decoration: none !important;
	color: #611232 !important;
}

body .btn-link.ui-button.ui-state-focus {
	box-shadow: none !important;
	outline: none !important;
}

/* Estilo para el card de mi cuenta */
.card-personalizado {
	border-radius: 16px !important;
	box-shadow: none !important;
}

.card-encabezado {
	display: flex;
	justify-content: flex-end;
	gap: 5px;
}

/* Clase para los componentes de verificado */
.verificado {
	display: flex;
	align-items: center;
	gap: 5px;
	background: #F0FAF5;
	border-radius: 100px;
	padding: 8px 16px;
}

/* Clase para los componentes no verificados */
.sin-verificar {
	display: flex;
	align-items: center;
	gap: 5px;
	background: #FAE5E5;
	border-radius: 100px;
	padding: 8px 16px;
	border: 1px solid #AE1C22;
}

.padding-5 {
	padding: 5px !important;
}

.medio-contacto {
	display: flex;
	align-items: center;
	gap: 5px;
	border-radius: 24px;
	border: 1px solid #9B2247;
	background: #F0ECED;
	padding: 4px 16px;
}

/* Estilos para modal */
.modal-personalizado {
	border-radius: 16px !important;
	top: calc(50% - 150px) !important;
	max-width: 500px !important;
	text-align: center;
}

.ui-dialog-title {
	color: #161A1D !important;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 20px !important;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.ui-icon .ui-icon-closethick {
	color: #161A1D !important;
}

.modal-text {
	color: #161A1D !important;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

/* Estilo <p:link> */
.text-link-decoration {
	color: #611232 !important;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 600;
	line-height: 22px;
	text-decoration-line: underline !important;
	text-decoration-style: solid;
	text-decoration-skip-ink: none;
	text-decoration-thickness: auto;
	text-underline-offset: auto;
	text-underline-position: from-font;
	text-align: left !important;
}

/* Estilos para apartado de documento */
.panel-doc {
	padding: 12px 16px;
	border-radius: 16px !important;
	border: 1px solid #161A1D;
}

.contenedor-doc {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	flex-wrap: wrap;   
}

.columna-doc {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 1;
}

.icono-circulo {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: #ddd;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
}

.nombre-doc {
	color: #161A1D;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 600;
	line-height: 22px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ver-archivo {
	display: flex;
	align-items: center;
	gap: 10px;
	white-space: nowrap; 
}

@media (max-width: 768px) {
	.contenedor-doc {
		flex-direction: column;
		align-items: flex-start;
	}
	.columna-doc {
		width: 100%;
	}
	.nombre-doc {
		white-space: normal;
	}
	.ver-archivo {
		align-self: flex-end;
	}
}

@media (max-width: 480px) {
	.nombre-doc {
		font-size: 14px !important;
	}
	.icono-circulo {
		width: 36px;
		height: 36px;
	}
	.ver-archivo img {
		width: 20px;
		height: 20px;
	}
}

.link-salir {
	color: #611232 !important;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 16px !important;
	font-style: normal;
	font-weight: 600;
	line-height: 22px;
}

.link-cuenta {
	color: #161A1D !important;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 20px !important;
	font-style: normal;
	font-weight: 600;
	line-height: 27px;
}

.contendor-botones {
	display: flex;
	justify-content: space-between;
	gap: 20px;
}

.titulo-barra {
	color: #161A1D;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 24px !important;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.etiquetas-barra {
	color: #161A1D;
	text-align: center;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 19px;
}

.progresbar {
	display: flex;
	text-align: center !important;
	width: 100%;
	padding: 10px 0;
}

.progresbar-container {
	background-color: #DDD;
	height: 8px;
	border-radius: 100px;
	width: 100%;
	display: inline-block;
}

.progresbar-percentage {
	background-color: #A57F2C;
	height: 8px;
	border-radius: 100px;
}

.ui-panel-notificacion-warn{
	border-radius: 8px;
	background: #FFEB99;
}
.detalle-notificacion{
	color: #161A1D;
	font-family: "Noto Sans", sans-serif !important;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 19px; 
}

.ui-pmessage-captcha.ui-message.ui-message-error, .ui-pmessage-captcha.ui-message.ui-message-fatal {
	background: #FAE5E5 !important;
	border: none !important;
	padding: 8px !important;
	color: #AE1C22 !important;
	border-radius: 8px !important;
	margin-top: 1.5% !important;
	display: inline-flex !important;
	text-align: left !important;
	align-items: center !important;
	width: 100% !important;
}

.ui-pmessage-captcha.ui-message.ui-message-error::before, .ui-pmessage-captcha.ui-message.ui-message-fatal::before
	{
	content: url('/resources/img/mx/ui/warning_red.svg');
	width: 24px;
	height: 24px;
	margin-right: 3%;
}

/* ========================================
   Estilos para Modal de Recuperación de Contraseña (Diseño Figma)
   ======================================== */

/* Contenedor principal del modal */
.nuevo-modal-recuperacion,
.nuevo-modal-recuperacion.ui-dialog,
.nuevo-modal-recuperacion .ui-dialog,
.nuevo-modal-recuperacion .ui-widget,
.nuevo-modal-recuperacion .ui-widget-content,
.nuevo-modal-recuperacion .ui-corner-all {
	border-radius: 16px !important;
	overflow: hidden !important;
	border: none !important;
}

.nuevo-modal-recuperacion .ui-dialog-content {
	border-radius: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	border: none !important;
}

.nuevo-modal-recuperacion .ui-dialog-titlebar {
	display: none !important;
	height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
}

.contenedor-modal-recuperacion {
	position: relative;
	padding: 24px;
	font-family: 'Noto Sans', sans-serif;
	background: #FFFFFF;
}

/* Botón X para cerrar */
.btn-cerrar-container {
	position: absolute;
	top: 16px;
	right: 16px;
}

.btn-cerrar-modal {
	width: 24px !important;
	height: 24px !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	color: #161A1D !important;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}

.btn-cerrar-modal:hover {
	background: rgba(22, 26, 29, 0.1) !important;
	border-radius: 4px;
}

.btn-cerrar-modal .ui-button-icon-left {
	color: #161A1D !important;
	font-size: 16px;
}

/* Título del modal */
.titulo-modal-recuperacion {
	color: #161A1D;
	font-family: 'Noto Sans', sans-serif;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	margin: 0 0 16px 0;
	padding-right: 32px;
	text-align: left;
}

/* Contenido del modal */
.contenido-modal-recuperacion {
	text-align: left;
	margin-bottom: 24px;
}

.texto-principal-modal {
	color: #161A1D;
	font-family: 'Noto Sans', sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin: 0 0 16px 0;
}

.texto-contacto-modal {
	color: #161A1D;
	font-family: 'Noto Sans', sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 22px;
	margin: 0 0 12px 0;
}

/* Lista de contacto */
.lista-contacto-modal {
	color: #161A1D;
	font-family: 'Noto Sans', sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 22px;
	margin: 0;
	padding-left: 20px;
}

.lista-contacto-modal li {
	margin-bottom: 8px;
}

/* Enlaces de teléfono */
.link-telefono {
	color: #611232 !important;
	font-family: 'Noto Sans', sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: 22px;
	text-decoration: none;
}

.link-telefono:hover {
	text-decoration: underline;
}

/* Enlace de email */
.link-email {
	color: #611232 !important;
	font-family: 'Noto Sans', sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: 22px;
	text-decoration: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: none;
	text-decoration-thickness: auto;
	text-underline-offset: auto;
	text-underline-position: from-font;
}

.link-email:hover {
	color: #9B2247 !important;
}

/* Botón Cerrar principal */
.btn-cerrar-recuperacion {
	display: flex !important;
	height: 40px !important;
	padding: 8px 24px !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 8px;
	border-radius: 8px !important;
	background: #611232 !important;
	color: white !important;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	border: none !important;
	cursor: pointer;
	width: 100% !important;
	text-align: center;
}

.btn-cerrar-recuperacion:hover {
	background: #9B2247 !important;
}

.btn-cerrar-recuperacion .ui-button-text {
	padding: 0 !important;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
}

/* Media query para botones en móvil */
@media (max-width : 768px) {
	.btn-secundario{
		width: 100% !important;
	}
	.nuevo-modal-recuperacion {
		width: 96% !important;
	}
	.titulo-modal-recuperacion{
		font-size: 18px !important;
	}
	.texto-principal-modal , .texto-contacto-modal, .lista-contacto-modal{
		font-size: 14px !important;
	}
}