.login {
    position: relative;
    min-height: 100vh;
    padding: 120px 0 70px;
    overflow-x: hidden;
    background: #f7f9fc;
}
    
.login:before {
    position: absolute;
    width: 100%;
    height: 100%;
    background: #f7f9fc;
    z-index: 2;
}
    
.login:after {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: contain;
    top: 50%;
    background-color: #f7f9fc;
    background-repeat: no-repeat;
    z-index: 1;
}
	
.login main {
    z-index: 4;
    position: relative;
    width: 360px;
    height: auto;
    background: #ffffff;
    border-radius: 15px;
    left: 50%; right: 50%;
    transform: translateX(-50%);
    box-shadow: 0px 4px 12px rgba(0,0,0,0.1);
    padding: 30px 20px;
    margin-top: 50px;
}

.titulo {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 20px;
}

.titulo i {
    color: #B3C5CC;
    text-align: center;
    letter-spacing: 0.2px;
    font: 500 18px 'Nunito';
}

.login main .titulo {
    position: relative;
    margin: 0 0 21px;
}

.login main .titulo .iconeLogo {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 310px;
    width: 100%;
    margin: 0 auto;
    padding-bottom: 10px;
}

.login main .titulo .iconeLogo img {
    max-width: 50%;
    width: 100%;
    filter: drop-shadow(0px -16px 10px rgba(0, 0, 0, 0.15));
    user-select: none;
    margin-bottom: 10px;
}

.login main .titulo h1 em {
    display: block;
    color: #1d72b8;
    text-align: center;
    letter-spacing: 0.2px;
    text-transform: uppercase;
    font: 500 20px/15px;
    margin-bottom: 6px;
}

.login main .titulo h1 em span {
    color: #0019a1;
    letter-spacing: 0.2px;
    text-transform: uppercase;
    font: 800 20px/15px;
}

.login main .titulo h1 i {
    display: block;
    color: #B3C5CC;
    text-align: center;
    letter-spacing: 0.14px;
    font: 500 14px/15px;
}

.login .aguardeCarregando {
    width: calc(100% - 30px);
    max-width: 460px;
    min-height: 220px;
    margin: 23px auto 0;
    padding: 32px 20px 24px;
    background: #fff;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 25px;
    font-weight: 600;
    text-transform: uppercase;
    
}

.login .boxForm span.mensagemStatus {
    display: block;
    margin: 0 auto 15px;
    text-align: center;
    font: 400 13px/18px;
    letter-spacing: -0.010em;
    color: #3A4654;
    width: 100%;
}

.login .boxForm span.mensagemStatus a:link,
.login .boxForm span.mensagemStatus a:active,
.login .boxForm span.mensagemStatus a:visited {
    font: 600 13px/18px;
    letter-spacing: -0.010em;
    text-decoration: underline;
    transition: all 0.5s ease;
    color: #728682;
}

.login .boxForm span.mensagemStatus a:hover {
    color: #728682;
}

.login .boxForm .retornoCodigo span.mensagemStatus {
    color: #FF3D3D;
    text-align: center;
    font: 600 13px/16px;
    margin: 7px auto 16px;
}

.login .boxForm .retornoCodigo span.mensagemStatus b {
    font-weight: 600;
}
	
.login .boxForm.cadastrarSenha .retornoCodigo span.mensagemStatus {
    margin: 10px auto 20px;
}

._320 .login .boxForm span.mensagemStatus br {
    display: none;
}

.login .boxForm span.mensagemStatus.sucesso {
    color: #2AB340;
    text-align: center;
    letter-spacing: -0.14px;
    font: 700 14px/18px;
    margin: 18px auto 20px;
}

.login .boxForm span.mensagemStatus.sucesso b {
    display: block;
    color: #2AB340;
}
		
.login .boxForm.boxAcesso span.mensagemStatus.sucesso {
    margin: -2px auto 25px;
}

.login .boxForm.cadastrarSenha span.mensagemStatus.sucesso b {
    display:inline;
}

.login .boxForm span.mensagemStatus b {
    font-weight: 700;
    color: #FF3D3D;
    font-size: 16px;
    line-height: 18px;
    display: block;
}

.login .boxForm.boxAcesso span.mensagemStatus b {
    display: block;
    margin-top: 9px;
}

.login .boxForm.boxAcesso span.mensagemStatus a:any-link,
.login .boxForm.boxAcesso span.mensagemStatus a:active {
    color: #0019a1;
    font-weight: 700;
}

.login .boxForm.boxAcesso span.mensagemStatus a:hover {
    color: #0028ff;
}

.login main em.emailDestaque {
    position: relative;
    max-width: 296px;
    width: 100%;
    margin: 0 auto 9px;
    text-align: left;
    overflow: hidden;
    display: flex;
    height: 44px;
    padding: 13px 10px 13px 40px;
    align-items: center;
    gap: 8px;
    border-radius: 4px;
    background: #F1F3F3;
}

.login main em.emailDestaque span {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
}

.login main em.emailDestaque b {
    display: block;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    opacity: 0.75;
    color: #A1B0AD;
    letter-spacing: 0.14px;
    font: 600 14px/16px;
}

.login main .recuperarSenha em.emailDestaque {
    margin: 22px auto;
}

.login main .boxForm.recuperarSenha p.retornoAJAX {
    margin-bottom: 24px;
}

.login main .boxForm.recuperarSenha form ul div.retornoCodigo {
    height: fit-content;
}

.login main .boxForm.recuperarSenha {
    background: #fff;
    position: relative;
    z-index: 999;
    margin-top: -58px;
}

.login main .boxForm h2 {
    margin-bottom: 14px;
    color: #1D4673;
    text-align: center;
    letter-spacing: 0.2px;
    text-transform: uppercase;
    font: 400 20px/15px;
}
	
.login main .boxForm h2 b {
    color: #0019a1;
    letter-spacing: 0.2px;
    text-transform: uppercase;
    font: 800 20px/15px;
}
		
.login main .boxForm > p {
    margin: 0 auto;
    color: #929F9C;
    text-align: center;
    letter-spacing: -0.14px;
    font: 600 14px/18px;
}
	
.login main .boxForm > p.retornoAJAX {
    max-width: 300px;
    color: #3A4654;
    text-align: center;
    letter-spacing: -0.14px;
    font: 600 14px/18px;
}
	
.login main .boxForm > p.retornoAJAX i {
    display: block;
    color: #A8B6B3;
    letter-spacing: -0.13px;
    font: 600 13px/18px;
}

.login main .boxForm > p.retornoAJAX b {
    font-weight: 800;
}

.login main .boxForm.cadastrarSenha {
    margin-top: -60px;
    background: #fff;
    position: relative;
    z-index: 9;
}

.login main .boxForm.cadastrarSenha a.voltar:any-link,
.login main .boxForm.cadastrarSenha a.voltar:active {
    margin-top: 12px!important;
}

.login main form {
    max-width: 430px;
    width: 100%;
    margin: 0 auto;
}
    
.login main form fieldset {
    width: 100%;
    min-width: initial;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
		
.login main form fieldset ul {
    max-width: 336px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}
	        
.login main form fieldset ul:not(ul.acessoRapido) li.codigoSenha {
    margin: 0 auto 9px;
}

.login main form fieldset ul:not(ul.acessoRapido) li.codigoSenha > span.icon-loginSenha {
    top: 23px;
}
				
.login main form fieldset ul:not(ul.acessoRapido) li.codigoSenha a.reenviar:active,
.login main form fieldset ul:not(ul.acessoRapido) li.codigoSenha a.reenviar:any-link {
    display: block;
    margin: 8px 0 25px;
    font: 600 normal 14px/14px;
    color: #A0B3B0;
    transition: all 0.5s ease;
}

.login main form fieldset ul:not(ul.acessoRapido) li.codigoSenha a.reenviar:hover {
    color: #102fd5;
}

.login main form fieldset ul:not(ul.acessoRapido) li {
    position: relative;
    margin-bottom: 8px;
    max-width: 296px;
    width: 100%;
}

	.login main form fieldset ul:not(ul.acessoRapido) li:last-of-type {
	    margin-bottom:0;
	}
	
.login main form fieldset ul:not(ul.acessoRapido) li > span.iconeEmail {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
}

.login main form fieldset ul:not(ul.acessoRapido) li > span.iconeSenha {
    position: absolute;
    left: 10px;
    top: 18px;
    transform: translateY(-50%);
    width: 24px;
    height: 14px;
}

.login main form fieldset ul li label {
    display: none;
}

.login main form fieldset ul li input {
    max-width: 296px;
    width: 100%;
    transition: all 0.5s ease;
    color: #A1B0AD;
    letter-spacing: 0.14px;
    font: 600 14px/16px;
    display: flex;
    height: 44px;
    padding: 13px 10px 13px 40px;
    align-items: center;
    gap: 8px;
    border-radius: 4px;
    border: 1px solid rgba(192, 201, 199, 0.50);
    background: #FFF;
    margin: 0 auto;
    color: #3A4654;
}

    .login main form fieldset ul li input::placeholder {
        font: 600 14px/16px;
        color:#3A4654;
    }
    
    .login main form fieldset ul li input:hover {
        border-color: #0000007d;
        box-shadow: 0 3px 0 rgb(0 0 0 / 10%);
    }
    
	.login main form fieldset ul li input:focus {
	    border-color: #0000007d;
	    box-shadow: 0 3px 0 rgb(0 0 0 / 10%);
	}
	
.login main form fieldset ul li .mostrarSenha {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    padding: 0 2px;
    cursor: pointer;
}
	            
.login main form fieldset ul li .mostrarSenha:before {
    display: block;
    content: '';
    font-size: 12px;
    color: #D3DFDD;
    transition: all 0.5s ease;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='18' fill='none' viewBox='0 0 22 18'%3E%3Cg fill='%2372A29A' opacity='.3'%3E%3Cpath d='M17.863 2.346C15.933.874 13.533 0 11.009 0 5.901 0 1.3 3.579.034 8.451c-.084.302 0 .604.127.82.126.258.38.43.675.517.295.086.591 0 .802-.13.253-.129.422-.387.507-.69C3.158 5.132 6.957 2.2 11.009 2.2c1.903 0 3.76.647 5.294 1.735l1.56-1.588ZM19.24 3.582l-1.534 1.564c1.033 1.085 1.803 2.408 2.168 3.866.084.302.253.517.506.69.169.086.338.172.549.172h.253c.296-.086.507-.258.676-.517.126-.259.168-.56.126-.82l-.042-.086a10.976 10.976 0 0 0-2.701-4.869Z'/%3E%3Cpath d='M14.376 5.896a4.627 4.627 0 0 0-3.367-1.469c-2.575 0-4.686 2.156-4.686 4.787 0 1.34.549 2.557 1.427 3.429l1.56-1.588a2.567 2.567 0 0 1-.791-1.841c0-1.38 1.14-2.544 2.49-2.544.704 0 1.35.316 1.808.813l1.56-1.587ZM13.49 9.438l1.895-1.93c.2.531.31 1.106.31 1.706 0 2.63-2.111 4.786-4.686 4.786a4.55 4.55 0 0 1-1.683-.322l1.895-1.93c1.185-.103 2.163-1.068 2.269-2.31Z'/%3E%3Cpath fill-rule='evenodd' d='M3.746 16.423a.917.917 0 0 1 0-1.297L18.224.648a.917.917 0 0 1 1.296 1.297L5.042 16.423a.917.917 0 0 1-1.296 0Z' clip-rule='evenodd'/%3E%3C/g%3E%3C/svg%3E");
    width: 22px;
    height: 18px;
}
					
.login main form fieldset ul li .mostrarSenha:after {
    content: "";
    position: absolute;
    left: 4px;
    top: 6px;
    transform: rotate(25deg);
    width: 7px;
    height: 8px;
    background: #81ada7;
    border-radius: 100%;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s ease;
}

.login main form fieldset ul li .mostrarSenha.visivel:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='14' fill='none' viewBox='0 0 22 14'%3E%3Cpath fill='%232AB39C' d='M11.01 0c5.107 0 9.708 3.579 10.932 8.451l.042.087c.042.258 0 .56-.127.819-.168.259-.38.431-.675.517h-.253c-.211 0-.38-.086-.549-.172a1.188 1.188 0 0 1-.506-.69c-.971-3.88-4.813-6.813-8.865-6.813-4.052 0-7.851 2.932-8.864 6.77-.085.302-.254.56-.507.69-.211.13-.507.215-.802.13-.295-.087-.549-.26-.675-.518-.127-.216-.211-.518-.127-.82C1.3 3.58 5.901 0 11.009 0Z'/%3E%3Cpath fill='%232AB39C' fill-rule='evenodd' d='M6.324 9.214c0-2.63 2.11-4.787 4.685-4.787 2.575 0 4.685 2.156 4.685 4.787 0 2.63-2.11 4.786-4.685 4.786-2.575 0-4.686-2.156-4.686-4.786Zm4.685 2.544c1.35 0 2.49-1.121 2.49-2.544 0-1.38-1.14-2.544-2.49-2.544-1.35 0-2.49 1.164-2.49 2.544 0 1.38 1.14 2.544 2.49 2.544Z' clip-rule='evenodd'/%3E%3C/svg%3E");
    height: 14px;
}

.login main form fieldset ul li .mostrarSenha.visivel:after {
    /* opacity: 1;
    visibility: visible; */
}

.login main .recuperarSenha form fieldset ul li input {
    text-align: center;
    padding: 13px 10px 13px;
}

.login main form fieldset button {
    display: flex;
    width: 100%;
    margin: 20px auto;
    height: 48px;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background: #1d72b8;
    box-shadow: 0px 2px 4px rgba(29,114,184,0.4);
    transition: 0.3s ease;
    cursor: pointer;
}

.login main form fieldset button:hover {
    background: #155a8a;
}

.login main form fieldset button:hover {
    background: #1b69df;
}

.login main form fieldset button b {
    color: #FFF;
    text-align: center;
    letter-spacing: 0.16px;
    text-transform: uppercase;
    font: 600 16px/12px;
    position: relative;
}

.login .boxForm .botaoAcao.inativo {
    position: relative;
    pointer-events: none;
    background: #dcdcdc !important;
    box-shadow: 0 3px rgb(0 0 0 / 25%) !important;
}

.login .boxForm .botaoAcao.inativo::before {
    display:none;
}

.login main form a.botaoAcao:active,
.login main form a.botaoAcao:any-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 190px;
    min-height: 45px;
    margin: 25px auto 0;
    padding: 10px 20px 12px;
    border-radius: 54px;
    background: linear-gradient(270deg, rgba(233, 255, 130, 0.60) 0%, rgba(234, 255, 133, 0.00) 100%), #B5D537;
    box-shadow: 0px -4px 0px 0px rgba(32, 33, 33, 0.09) inset;
    transition: all 0.5s ease;
}
	
.login main form a.botaoAcao:hover {
    box-shadow: inset 0 -3px rgb(255 255 255 / 40%), 0 10px 15px rgb(114 96 42 / 40%), inset 0 50px 50px 100px #67ada8;
}

.login main form a.botaoAcao b {
    text-transform: uppercase;
    font: 800 18px/18px;
    color: #533A89;
}

.login main form.boxAcesso a.botaoAcao:active,
.login main form.boxAcesso a.botaoAcao:any-link {
    background: none;
    box-shadow: none;
    margin-top: 15px;
    padding: 10px 0 2px;
    min-height: inherit;
}

.login main form.boxAcesso a.botaoAcao b {
    color: #AFC3BF;
    letter-spacing: 0.13px;
    text-transform: uppercase;
    font: 600 13px/12px;
    transition:0.5s all ease;
}
	
.login main form.boxAcesso a.botaoAcao:hover b {
    color: #0019a1;
}

.login main form p.enviando {
    display: none;
    padding: 18px 20px;
    max-width: 296px;
    width: 100%;
    margin: 0 auto;
    height: 48px;
    border-radius: 4px;
    background: linear-gradient(270deg, rgba(233, 255, 130, 0.60) 0%, rgba(234, 255, 133, 0.00) 100%), #0019a1;
    box-shadow: 0px 2px 0px 0px #0019a1;
    position: relative;
    transition: 0.5s all ease;
    overflow: hidden;
    cursor: pointer;
    color: #FFF;
    text-align: center;
    letter-spacing: 0.16px;
    text-transform: uppercase;
    font: 600 16px/12px;
}

.login main form fieldset .termosResponsabilidade {
    max-width: 312px;
    margin: 8px auto 0;
    height: fit-content;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.login main form fieldset .termosResponsabilidade h2 {
    margin-bottom: 3px;
    text-transform: uppercase;
    font: 700 16px/19px;
    color: #383636;
}

.login main form fieldset .termosResponsabilidade p:not(p.enviando) {
    color: #929F9C;
    text-align: center;
    letter-spacing: -0.14px;
    font: 600 14px/18px;
    max-width: 290px;
}

.login main form fieldset .termosResponsabilidade p:not(p.enviando) strong {
    display: block;
    margin-top: 13px;
    color: #3A4654;
    text-align: center;
    text-transform: uppercase;
    font: 600 14px/19px;
}

.login main form fieldset .termosResponsabilidade a.linkTermos:active,
.login main form fieldset .termosResponsabilidade a.linkTermos:any-link {
    margin: 13px 0 18px;
    transition: all 0.5s ease;
    display: flex;
    width: 296px;
    padding: 11px 35px;
    justify-content: center;
    gap: 12px;
    border-radius: 6px;
    border: 1px solid #E0E2E3;
    background: #F6F8F9;
}

.login main form fieldset .termosResponsabilidade a.linkTermos:hover {
    border-color: #0000007d;
    box-shadow: 0 3px 0 rgb(0 0 0 / 10%);
}

.login main form fieldset .termosResponsabilidade a.linkTermos:hover span {
    color: #9b874a;
}
	
.login main form fieldset .termosResponsabilidade a.linkTermos:hover b {
    color: #1b2e30;
}

.login main form fieldset .termosResponsabilidade a.linkTermos span {
    transition: all 0.5s ease;
    width: max-content;
    height: 44px;
    padding-top: 3px;
}
			
.login main form fieldset .termosResponsabilidade a.linkTermos span:before {
    display: none;
}
		
.login main form fieldset .termosResponsabilidade a.linkTermos b {
    display: block;
    text-align: left;
    transition: all 0.5s ease;
    color: #3A4654;
    letter-spacing: -0.16px;
    font: 500 16px/20px;
}
	
.login main form fieldset .termosResponsabilidade button,
.login main form fieldset .termosResponsabilidade p.enviando {
    max-width: 296px;
    margin: 18px auto 10px;
}

.login main form fieldset .termosResponsabilidade label.container {
    position: relative;
    margin: 0 auto;
    color: #929F9C;
    text-align: center;
    letter-spacing: -0.14px;
    font: 600 14px/18px;
    padding-left: 30px;
    cursor: pointer;
}
		
.login main form fieldset .termosResponsabilidade label.container span.checkmark {
    vertical-align: bottom;
    position: absolute;
    left: 0;
    top: 45%;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    border-radius: 4px;
    border: 2px solid #E2E5E7;
    background: #FFF;
    transition: 0.5s all ease;
}

.login main form fieldset .termosResponsabilidade label.container span.checkmark::before {
    content:'';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 13px;
    height: 10px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='10' fill='none' viewBox='0 0 13 10'%3E%3Cpath fill='%2371CCBA' d='M5.147 10 0 4.744 1.972 2.73l3.175 3.243L11.028 0 13 2.014 5.147 10Z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0;
    transition: 0.5s all ease;
}

.login main form fieldset .termosResponsabilidade label.container.ativo span.checkmark::before {
    opacity: 1;
}

.login main form fieldset.emailEnviado {
    width: initial;
    padding: 15px 0 0;
    border-top: 1px solid #E8ECEB;
}

.login main form fieldset.emailEnviado h2 {
    margin-bottom: 2px;
    text-transform: uppercase;
    font: 700 17px/22px;
    letter-spacing: -0.020em;
    color: #383636;
}

.login main form fieldset.emailEnviado p {
    max-width: 270px;
    margin: 0 auto;
    font: 500 14px/19px;
    letter-spacing: 0.010em;
    color: rgb(192 192 193);
}

.login main form fieldset.emailEnviado p:last-of-type {
    max-width: 330px;
    font-size: 13px;
}

.login main form fieldset.emailEnviado ul.acessoRapido {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0 8px;
    margin: 25px 0 20px;
}

.login main form fieldset.emailEnviado ul.acessoRapido li:first-of-type {
    width: 100%;
    margin: 0 0 7px;
    text-transform: uppercase;
    font: 600 13px/13px;
    letter-spacing: 0.010em;
    color: #C8CCCF;
}

.login main form fieldset.emailEnviado ul.acessoRapido li:not(li:first-of-type) a:active,
.login main form fieldset.emailEnviado ul.acessoRapido li:not(li:first-of-type) a:any-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 5px;
    height: 43px;
    padding: 9px 15px 10px;
    background: linear-gradient(0deg, #E8ECED, transparent);
    border: 1px solid #E5EEEB;
    border-radius: 10px;
    transition: all 0.5s ease;
}

.login main form fieldset.emailEnviado ul.acessoRapido li:not(li:first-of-type) a:hover span,
.login main form fieldset.emailEnviado ul.acessoRapido li:not(li:first-of-type) a:hover b {
    color: #fff;
}

.login main form fieldset.emailEnviado ul.acessoRapido li:not(li:first-of-type) a span {
    display: none;
    transition: all 0.5s ease;
}

.login main form fieldset.emailEnviado ul.acessoRapido li:not(li:first-of-type) a b {
    text-transform: uppercase;
    font: 800 13px/13px;
    letter-spacing: -0.020em;
    color: #496163;
    transition: all 0.5s ease;
}

.login main form fieldset.emailEnviado ul.acessoRapido li.gmail a span {
    font-size: 19px;
    color: #D64650;
}

.login main form fieldset.emailEnviado ul.acessoRapido li.gmail a:hover {
    border-color: #d64650 !important;
    box-shadow: inset 0 0 20px 20px #d64650, 0 3px 0 rgb(0 0 0 / 15%);
}

.login main form fieldset.emailEnviado ul.acessoRapido li.yahoo a span{font-size: 17px;color: #7127DC;}

.login main form fieldset.emailEnviado ul.acessoRapido li.yahoo a:hover {
    border-color: #7127DC !important;
    box-shadow: inset 0 0 20px 20px #7127DC, 0 3px 0 rgb(0 0 0 / 15%);
}

.login main form fieldset.emailEnviado ul.acessoRapido li.outlook a span {
    font-size: 19px;
    color: #387ADB;
}

.login main form fieldset.emailEnviado ul.acessoRapido li.outlook a:hover {
    border-color: #387ADB !important;
    box-shadow: inset 0 0 20px 20px #387ADB, 0 3px 0 rgb(0 0 0 / 15%);
}

.login main form a.btEsqueci:active,
.login main form a.btEsqueci:any-link,
.login main form a.voltar:active,
.login main form a.voltar:any-link {
    display: block;
    width: max-content;
    margin: 13px auto -14px;
    transition: all 0.5s ease;
    color: #9FBFC1;
    text-align: center;
    text-decoration-line: underline;
    font: 500 14px/13px;
    position: relative;
}

.login main form a.btEsqueci:hover,
.login main form a.voltar:hover {
    color: #1130d6;
}

.login main form a.voltar:hover svg path {
    fill: #0019a1;
}

.login main form a.voltar {
    margin: 5px auto 0 !important;
}

.login main form a.btEsqueci::before {
    position:absolute;
    width: 425px;
    height: 0;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    border-top: 1px solid #E1EDED;
    background: #FFF;
}

.login main form a.voltar:active,
.login main form a.voltar:any-link {
    left: 0;
    text-transform: uppercase;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 8px;
}

.login main form a.voltar:any-link .seta {
    max-width: max-content;
    margin-top: 5px;
}

.login main form a.voltar:any-link .seta svg path {
    transition:0.5s all ease;
}

.login main .recuperarSenha form a.voltar:any-link {
    margin-top: 20px!important;
}

.login main form a.reenviado:active,
.login main form a.reenviar:any-link {
    color: #0019a1;
    text-align: center;
    letter-spacing: 0.14px;
    text-transform: uppercase;
    font: 600 14px/15px;
    display: block;
    margin-top: 25px;
    transition: 0.5s all ease;
}

.login main form a.reenviar:hover {
    color: #19ddbc;
}

/* FOOTER */
.login footer {
    max-width: 390px;
    margin: 0 auto;
    background: none;
    position: relative;
    z-index: 9;
    text-align: center;
}

.login footer:before {
    bottom: -37px;
    left: 50%;
    transform: translatex(-50%);
    position: absolute;
    width: 64px;
    height: 28px;
}

.login footer p {
    display: block;
    text-align: center;
    margin: 0 auto;
    padding-top: 20px;
    color: #000;
    max-width: max-content;
    font-size: 15px;
    line-height: 17px;
}

.login footer p a:link,
.login footer p a:active,
.login footer p a:visited {
    position: relative;
    text-decoration-line: underline;
    transition: 0.5s all ease;
    font-size: 15px;
    line-height: 17px;
    color: #000;
}

.login footer p a:hover {
    color: #0019a1;
}

.login footer p a:hover:after {
    width: 100%;
}

.login footer p a:after {
    content: '';
    position: absolute;
    width: 0;
    background: #FFFFFFCC;
    height: 1px;
    z-index: -1;
    left: 0;
    bottom: 2px;
    transition: all ease 0.5s;
}

.login footer .logoDiamante {
    display: block;
    max-width: max-content;
    margin: 8px auto 0;
}

.login main em.emailDestaque ~ span.mensagemStatus {
    margin-top: 20px;
}
	
/*** MOBILE ***/
._320 .login {
    max-width: 440px;
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
}

._320 .login:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 414px;
    background-repeat: no-repeat;
    z-index: -1;
}

.login main {
    min-height: initial;
    padding: 27px 45px 40px;
    max-width: 385px;
}

._320 .login main:before {
    top: 63px;
    left: -15px;
}

._320 .login main .titulo {
    margin: 26px 0 20px;
}

._320 .login main .titulo .iconeLogo {
    top: -145px;
    max-width: 300px;
}

._320 .login main .boxForm > p br {
    display: none;
}

._320 .login main form fieldset.emailEnviado {
    padding-top: 17px;
}
._320 .login main form fieldset.emailEnviado ul.acessoRapido {
    gap: 5px;
    margin: 20px 0;
}

._320 .login main form fieldset.emailEnviado ul.acessoRapido li:not(li:first-of-type) {
    width: 100%;
}

._320 .login main form fieldset.emailEnviado p:last-of-type {
    margin-bottom: 0;
}

._320 .login main form fieldset .termosResponsabilidade {
    margin: 20px auto 0px;
    max-width: 400px;
}

._320 .login main form fieldset .termosResponsabilidade a.linkTermos {
    margin: 15px 0 20px;
    padding: 15px;
}

._320 .login main form fieldset .termosResponsabilidade label.container {
    letter-spacing: -0.010em;
}

._320 .login main form fieldset .termosResponsabilidade button,
._320 .login main form fieldset .termosResponsabilidade p.enviando {
    margin: 15px auto 0;
}
