@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@100&display=swap');

:root{
    --Azul-Mercantil: #004E9B;
    --Naranja-Mercantil: #FF5000;
    --Texto-Activo: #333;
    --Azul-Gradiente: #00A6E9;
    --Boton-Activo: linear-gradient(#fff 0 0) padding-box, linear-gradient(to top, #00519D 0.06%, #0073B8 45.32%, #0093D1 95.26%) border-box;
    --Gradiente-Azul: linear-gradient(90deg, rgba(0,159,218,1) 0%, rgba(0,78,155,1) 100%);
    --Gradiente-Naranja: linear-gradient(90deg, rgba(249,227,48,1) 0%, rgba(255,88,0,1) 100%);
    --Borde-Gradiente-Azul: linear-gradient(#fff 0 0) padding-box, var(--Gradiente-Azul) border-box;
    --Error: #F33;
} 

.titulo-azul{
    color: var(--Azul-Mercantil);
    text-align: center;
    font-family: 'Poppins', sans-serif;
    font-style: normal;
    font-weight: 500;
    line-height: 25px;
}

.container-login{
    text-align: center;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    position: fixed;
    border: solid 2px #97B8DB;
    width: 100%;
    height: 100%;
    min-width: 380px;
    border-radius: 24px 24px 0px 0px;
    background: #f2f2fb;
    padding: 0;
    background-image: url(../img/fondo-pantalla.svg);
    background-position-y: -20px;
    background-position-x: -139px;
    overflow: hidden;
    border-bottom: none;
}

.container-login:not(.loading){
    background:#EDF4FF;
    background-image: url(../img/fondo-pantalla-post-loading.svg);
    background-position-x: -115px;
    background-position-y: -135px;
    display: grid;
    align-content: stretch;
    grid-template-rows: 178px auto 35px;
    align-items: stretch;
    background-repeat: no-repeat;
}
.mensaje_seguridad{
    display: flex;
    overflow: hidden;
    align-items: flex-end;
}

.welcome_segment{
    display: grid;
    grid-template-rows: 210px 354px 35px;
    transition: all .5s;
    position: relative;
    background-position: center -13px;
    border-radius: 26px 26px 0px 0px;
}

.welcome_segment:not(.loading){
    margin-top: 8px;
    background-color: transparent;
    background-position: -113px -149px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.welcome_segment:not(.loading)  .logo-mercantil{
    margin-right: auto;
    height: 13px;
}

.welcome_segment:not(.loading)  .logo-mercantil img {
    margin-right: auto;
    width: 81px;
    height: 24px;
    float: left;
    margin-left: 24px;
    margin-top: 12px;
}
.welcome_segment.loading .logo-mercantil{
    display: flex;
}

.welcome_segment .logo-mercantil img {
    width: 73px;
    height: 12px;
    float: left;
}

.welcome_segment.loading .logo-mercantil img{
    margin: auto;
    width: 190px;
    height: 120px;
    margin-top: 56px;
}

.welcome_segment .avatar-mia{
    transition: transform .5s;
    width: 170px;
    height: 185px;
    z-index: 3;
    position: relative;
    display: flex;
    justify-content: center;
    transform: scale(1.0);
    margin-top: 10px;
    transform-origin: top;
    
}

.welcome_segment.loading .avatar-mia {
    background-image: url(../img/circulo-avatar-inicio.svg);
    position: relative;
    background-size: 140px;
    background-repeat: no-repeat;
    background-position: bottom center;
    margin: -30px auto;
    transform: scale(1.6);
}


.welcome_segment:not(.loading) .avatar-mia::before,
.welcome_segment:not(.loading) .avatar-mia::after{
    content: "";
    position: fixed;
    display: block;
    background-repeat: no-repeat;
    background-size: 228px;
    background-position-x: center;
    transition: background-image 0.5s;
    
}
.welcome_segment:not(.loading) .avatar-mia::before{
    background-image: url(../img/circulo-avatar-azul.svg);
    z-index: 4;
    background-size: 160px;
    width: 160px;
    height: 160px;
}

.welcome_segment:not(.loading) .avatar-mia::after{
    width: 166px;
    height: 165px;
    background-image: url(../img/circulo-avatar-azul-vacio.svg);
    z-index: 1;
    background-size: 166px 165px;
}

.welcome_segment:not(.loading) .avatar-mia.error::before{
    filter: hue-rotate(145deg);
}
.welcome_segment:not(.loading) .avatar-mia.error::after{
    filter: hue-rotate(145deg);
}
.welcome_segment .avatar-mia .video-conatiner{
    position: relative;
    z-index: 2;
    overflow: hidden;
    border-radius: 50%;
    margin: 3px 7px 0 8px;
    display: flex;
    justify-content: center;
    width: 134px;
    margin-top: -19px;
}

.welcome_segment.loading .avatar-mia .video-conatiner{

position: relative;
    border-radius: 45%;
    margin: -2px 0px 6px 0px;
}

.welcome_segment:not(.loading) .avatar-mia .video-conatiner{
    height: 170px;
    border-radius: 38%;
    top: -10px;
}


.welcome_segment .avatar-mia .video-conatiner video{
    height: 190px;
    pointer-events: none;
}
.welcome_segment .avatar-mia .video-conatiner img{
    height: 183px;
}

.welcome_segment:not(.loading) .avatar-mia .video-conatiner img{
    height: 100%;
}

.welcome_segment .avatar-mia .circulo-env-mia{
    position: relative;
    top: -243px;
    left: 101px;
    width: 260px;
}

.welcome_segment .bienvenido{
    text-shadow: 0px 2px 2px rgba(0, 78, 155, 0.25);
    font-size: 33px;
    letter-spacing: 0.165px;
    width: 208px;
    margin: auto;
    overflow: hidden;
    opacity: 1;
    margin-top: -73px;
    transition: height, opacity .3s;
    padding-top: 2.4px;
    height: 28px;
}
.welcome_segment:not(.loading) .bienvenido.titulo-azul{
    transition: none;
    display: none;
}
.ocultar{
    visibility: hidden;
}

.welcome_segment:not(.loading) .bienvenido{
    opacity: .0;
}
.login{
    opacity: 0;
    transition: opacity .5s;
}
.login.loaded{
    opacity: 1;
    border-radius: 30px 30px 0px 0px;
    background: #FFF;
    display: grid;
    padding-top: 77px;
    margin-top: -60px;
    grid-template-rows: 35px 60px 48px 20px 68px auto;
    width: 368px;
    margin-inline: auto;
    box-shadow: 0px 0px 5px 0px #004E9B40;
}

.login.loaded .bienvenido{
    font-size: 25px;
}
.login .bienvenido{
    font-size: 35px;
    line-height: 24px;
    margin: 0px auto;
    transition: font-size 0.5s;
}
.estilo-mia {
    color: var(--Azul-Mercantil);
    font-family: 'Poppins', sans-serif;
    font-size: 25px;
    font-style: normal;
    font-weight: 600;
    line-height: 23.417px;
    letter-spacing: 0.125px;
}
.login .subtitulo{
    width: 255px;
    margin: 0px auto;
    color: #666;
    text-align: center;
    font-family: 'Poppins', sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 20px;
    margin-top: 13px;
}

.id_form{
    display: flex;
    justify-content: center;
}
.id_form .input{
    border-radius: 26px;
    background: #FFF;
    box-shadow: 0px 2px 2px 0px rgba(0, 78, 155, 0.25);
    height: 48px;
    display: inline-flex;
    margin: 0 6px;
    align-items: center;
}

.id_form .input.id_tipo{
    width: 76px;
    color: var(--Azul-Mercantil);
    transition: border .3s;
}

.id_form .input.id_tipo li{
    height: 27px;
    padding: 2px 24px;
    text-align: initial;
}
.id_form .input.id_tipo button{
    display: flex;
    justify-content: space-evenly;
    width: 66px;
    height: 33px;
    margin: 0;
    background-color: transparent;
    color: #A1A1A1;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    cursor: pointer;
    outline: none;
    border: none;
    align-items: center;
    padding: 0px 0px 0px 15px;
}

.id_form .input.id_tipo ul{
    list-style: none;
    position: fixed;
    width: 81px;
    min-height: 48px;
    background-color: #FFF;
    margin: -25px 0 0 -1px;
    padding: 0;
    display: none;
    overflow: hidden;
    height: fit-content;
    border-radius: 27px;
    z-index: 2;
}

.id_form .input.id_tipo:is(.gradient-boton-activo) button, .id_form .input.id_tipo:is(.gradient-boton-activo) input{
    color: var(--Azul-Mercantil);
}
.id_form .input.id_tipo input:focus{
    opacity: 0;
    height: 0px;
    width: 0px;
    padding: 0;
    margin: 0;
    position: absolute; 
    top: -100px;
    border: 2px solid var(--Azul-Gradiente);

}

.id_form .input.id_tipo:has(input:focus) ul{
    border: 1.5px solid transparent;
    outline: none;
    background: linear-gradient(#fff 0 0) padding-box, linear-gradient(to top, #00519D 0.06%, #0073B8 45.32%, #0093D1 95.26%) border-box;
    display: block;
    transition: border .2s;
} 
.id_form .input.id_tipo.has_input_focus_moz ul{
    border: 1.5px solid transparent;
    outline: none;
    background: linear-gradient(#fff 0 0) padding-box, linear-gradient(to top, #00519D 0.06%, #0073B8 45.32%, #0093D1 95.26%) border-box;
    display: flex;
    transition: border .2s;
    flex-direction: column;
}
.id_form .input.id_tipo:has(input:focus) li:hover{   
    background-color:  rgba(180, 216, 232);
} 
.id_form .input.id_tipo.has_input_focus_moz li:hover{   
    background-color:  rgba(180, 216, 232);
}

.list-firefox{
    border: 1.5px solid transparent;
    outline: none;
    background: linear-gradient(#fff 0 0) padding-box, linear-gradient(to top, #00519D 0.06%, #0073B8 45.32%, #0093D1 95.26%) border-box;
    display: block;
    transition: border .2s;
}

.id_form .input.id_number{
    width: 185px;
    border: 2px solid transparent;
    transition: border .3s;
}
.id_form .input.id_number:has(input:focus){
    border: 2px solid var(--Azul-Gradiente);
}
.id_form .input input, 
.id_form .input li {
    color: var(--Azul-Mercantil);
    border: none;
    outline: none;
    background: none;
    margin: 0px;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
}
.id_form .input input{
    color: #272626;
    border: none;
    outline: none;
    background: none;
    padding-top: 3px;
    width: 100%;
    margin: 0px 12px;
    font-family: 'Poppins', sans-serif;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 3.75px;
    text-align: center;
}
.id_form .input input:placeholder-shown{
    font-family: 'Poppins', sans-serif;
    font-size: 9px;
    font-style: normal;
    font-weight: 300;
    letter-spacing: 0.2px;
    text-align: center;
    line-height: 21px;
    color: #a1a1a1;
}

.id_form .input.id_tipo .selector{
    display: none;
    width: 100%;
    height: 100%;
    list-style: none;
    margin: 0px;
    padding: 0px;
    background-color: blueviolet;
    border-radius: 30px;
    border: 2px solid var(--Azul-Gradiente);
}

.id_form .continuar{
    display: block;
    margin: 20px auto;
}
.login .continuar{
    width: 274px;
    padding: 8px 52px;
    height: 48px;
    border-radius: 60px;
    background: var(--Degrade-azul, linear-gradient(180deg, #009FDA 0%, var(--Azul-Mercantil) 100%));
    color: var(--blancos-blanco, #FFF);
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
    outline: none;
    border: none;
    margin: 10px auto;
}
.login .fields-aditionals{
    display: none;
}
.login .campo-error{
    display: flex;
    height: 100%;
    margin: 10px auto;
    color: var(--Error, #F33);
    text-align: center;
    font-family: 'Poppins', sans-serif;
    font-size: 11px;
    font-style: normal;
    font-weight: 300;
    line-height: 10px;
    letter-spacing: 0.11px;
    align-items: center;
}
.container-login footer{
    background-color: #fff;
    margin-inline: auto;
    width: 368px;
    height: 35px;
    color: #666;
    font-size: 10px;
    font-style: normal;
    padding: 4px 26px;
    line-height: 12px;
    display: grid;
    grid-template-columns: 30px auto;
    opacity: 0;
    transition: opacity .5s;
    box-shadow: 0px 0px 5px 0px #004E9B40;
}
.container-login footer.loaded{
    opacity: 1;
}
.icon-googlerecpatcha{
    background-image: url(../img/logo_recaptcha.svg);
    width: 25px;
    height: 24px;
    padding: 0;
}

.welcome_segment:not(.loading) .close-icon{
    float: right;
    margin-top: -7px;
    position: absolute;
    top: -5px;
    right: -12px;
    opacity: 1;
    cursor: pointer;
    width: 80px;
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    scale: 0.60;
}

.welcome_segment .close-icon{
    opacity: 0;
    transition: opacity .2s;
}

#id_number:-webkit-autofill {
    border-radius: 20px;
}

.container-id-tipo{
    margin-left: -1px;
    margin-top: -1px;
}
.gradient-boton-activo{
    border: 1.5px solid transparent;
    outline: none;
    background: var(--Boton-Activo) !important;
}

li span .naranja-mercantil {
    color: var(--Naranja-Mercantil);
    font-weight: 500;
}

.azul-mercantil {
    color: var(--Azul-Mercantil);
}
.mensaje-seguridad {
    font-size: 10px;
}
.off-login{
    background: #96B5D1!important;
    cursor: initial !important;
}
.telon {
    position: absolute;
    background: rgba(0, 78, 155, 0.15);
    width: 1000%;
    height: 2000%;
    top: -50px;
}

.globo-texto{
    position: absolute;
    bottom: 0px;
    right: -18px;
    z-index: 4;
    background-color: #FFF;
    border-radius: 0 41px 41px 41px;
    box-shadow: 0px 2.72831px 2.72831px 0px rgba(0, 0, 0, 0.25), 0px 4px 4px 0px rgba(0, 78, 155, 0.25);
}


/* -- Animacion de texto -- */

@keyframes slide {
	0% { transform: translateX(0); }
	10% { transform: translateX(0); }

	15% { transform: translateX(-100%); }
	30% { transform: translateX(-100%); }

	35% { transform: translateX(-200%); }
	50% { transform: translateX(-200%); }

	55% { transform: translateX(-300%); }
	70% { transform: translateX(-300%); }

	75% { transform: translateX(-400%); }
	90% { transform: translateX(-400%); }

	95% { transform: translateX(-500%); }
	100% { transform: translateX(-500%); }
}

* { 
    box-sizing: border-box; 
    scrollbar-color: #D1D2D5 #FFF;
}

html { scroll-behavior: smooth; }

body {
	font-family: sans-serif;
}

.wrapper {
    margin: 0 auto;
    width: 300px;
}

.slide-1r {
	position: relative;
    overflow: hidden;
}

.slide-1s {
    display: inline-flex;
    overflow: hidden;
    margin: 0;
    padding: 0px;
    text-align: left;
    font-size: 12px;
}

.slide-1 {
    display: grid;
    width: 300px;
    animation-name: slide;
    animation-duration: 20s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    align-items: center;
    grid-template-columns: auto auto;
}

.slide-1s:hover .slide-1 {
	animation-play-state: paused;
}

.slide-1 img {
	width: 100%;
	vertical-align: top;
}

.slide-1 span {
    padding-left: 4px;
    font-size: 12px;
    font-family: 'Poppins', sans-serif;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-align: left;
}

.slide-1 span span{
    margin: 0;
    padding: 0;
    cursor: default;
}

.caption {
	color: white;
	text-shadow: 1px 1px black;
	font-size: 8vw;
	position: absolute;
	bottom: 8vw;
	right: 4vw;
}

.slide-1:target {
	animation-name: none;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 50;
}

.slide-1r-controler {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	text-align: center;
	padding: 5px;
	z-index: 100;
}

.slide-1r-controler li {
	margin: 0 0.5rem;
	display: inline-block;
	vertical-align: top;
}

.slide-1r-controler a {
	display: inline-block;
	vertical-align: top;
	text-decoration: none;
	color: white;
	font-size: 1.5rem;
}

@media only screen and (min-width: 1200px) {
	.slide-1 {
		width: 1200px;
	}

	.caption {
		font-size: 96px;
		bottom: 96px;
		right: 50px;
	}
}

ul {
    list-style: none;
    margin-bottom: 0px
}
  
li {
    list-style: none;
}

ul > li {
    list-style: disc;
}

.font-footer{
    color: #666;
    font-family: Arial, sans-serif;
    font-size: 10px;
    font-style: normal;
    font-weight: 400;
    line-height: 12px; /* 120% */
    letter-spacing: -0.1px;
    width: 246px;
    height: 24px;
    margin: auto;
}
.font-tip-seguridad{
    color: #666;
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.option-id-type{
    cursor: default;
}

input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance:textfield;
    appearance:textfield;
}

dialog .close-icon{
    float: right;
    margin-top: 0px;
    position: absolute;
    top: -8px;
    right: 3px;
    opacity: 1;
    cursor: pointer;
}

dialog.modal-cumple-usuario{
    padding: 0;
    border: none;
    outline: none;
    overflow: visible;
    width: 100%;
    height: 100%;
    margin: 0;
    border-radius: 16px 16px 0 0;
    border-top: 0px;
    background-color: transparent;
    font-family: 'Poppins', sans-serif;
    font-size: 0px;
    font-weight: 700;
    display: flex;
    justify-content: center;
    margin-top: 0vh;
    transition: margin-top 0.5s;
}
dialog.modal-cumple-usuario::backdrop{
    width: 100%;
    margin: auto;
    height: 100%;
    border-radius: 16px 16px 0 0;
    background: #f2f8ff;
    background-image: url(../img/fondo-pantalla-post-loading.svg);
    background-position-x: -115px;
    background-position-y: -135px;
    margin-top: 0vh;
    transition: margin-top 0.5s;
  }

  canvas{
    margin-top: 0vh;
    transition: margin-top 0.5s;
  }
  
  dialog.modal-cumple-usuario.oculto, dialog.modal-cumple-usuario.oculto::backdrop, dialog.oculto :where(canvas){
    margin-top: 100vh;
  }

  dialog.modal-cumple-usuario .contenido{
    display: grid;
    grid-template-rows: auto min-content 50px;
    align-items: end;
    height: 100vh;
    position: absolute;
    justify-content: center;
    top: -12px;

  }
  dialog.modal-cumple-usuario .video{
    display: flex;
  }
  dialog.modal-cumple-usuario .video video{
    height: 200px;
    margin: auto;
    margin-bottom: 0;
    z-index: 100;
  }
  dialog.modal-cumple-usuario .mensaje{
    background-image: url(../img/fondo-cumple-cliente.png);
    width: 300px;
    height: 340px;
    border-radius: 20px;
    background-color: #fff;
    margin: auto;
    box-shadow: 0px 0px 18px 0px #00000040;
    display: grid;
    padding: 13px 0;
    justify-items: center;
    grid-template-rows: 105px 30px 77px 37px;
  }
  dialog.modal-cumple-usuario .mensaje .titulo{
    width: auto;
    font-size: 18px;
    margin-top: 10px;
  }
  dialog.modal-cumple-usuario .blue-gradient{
    background-image: linear-gradient(90deg, #009FDA 0%, #004E9B 100%);
    color: transparent;
    background-clip: text;
    font-weight: 700;
  }
  dialog.modal-cumple-usuario .mensaje .nombre{
    font-size: 18px;
  }
  dialog.modal-cumple-usuario .mensaje .texto{
    font-size: 12px;
    color: #666666;
    text-align: center;
    font-weight: 400;
    line-height: 18px;
    padding: 10px 20px;
  }
  dialog.modal-cumple-usuario .mensaje button{
    width: 270px;
    padding: 8px 52px;
    border-radius: 20px;
    background: var(--Degrade-azul, linear-gradient(180deg, #009FDA 0%, var(--Azul-Mercantil-Dos) 100%));
    color: var(--blancos-blanco, #FFF);
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
    outline: none;
    border: none;
    margin: auto;
    box-shadow: 0px 2px 2px 0px #0000004D;

  }



  
  dialog.modal-cumple-usuario .contenido img{
    width: 360px;
  }

.capa-login{
    position: absolute;
    width: 100%;
    height: 100%;
    background: #004E9B26;
    z-index: -1;
}