html, body{
	background:none !important;
	overflow-x: hidden;
}
.total-login{
	width: 100%;
	height: 100%;
	position: absolute;
	font-family: 'Montserrat', sans-serif;
}
.total-login .fundo-login{
	width: 820px;
	height: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
	background: url('../images/fundo-login.jpg') center top no-repeat;
	background-size: cover;
}
.total-login .conteudo{
	position: absolute;
	left: 0px;
	top: 0px;
	height: 100%;
	width: 100%;
    max-width: 1200px;
    min-width: 300px;
    padding-right: 15px;
    padding-left: 15px;
}
.total-login .conteudo-login{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
}
.total-login .display-login{
	width: 910px;
	left: 50%;
	margin-left: -455px;
	height: 100%;
	position: absolute;
}

/* ESQUERDA LOGIN */
.total-login .esquerda-login{
	width: 325px;
	float: left;
	position: absolute;
	height: 100%;
}
.total-login .logo-login{
	width: 210px;
	display: table;
	margin: 0 auto;
	margin-bottom: 75px;
}
.total-login .logo-login img{
	width: 100%;
	display: block;
}
.total-login .esquerda-login h1,
.total-login .esquerda-login h1 p{
	color: #FFF;
	width: 100%;
	text-align: center;
	font-size: 30px;
}
.total-login .esquerda-login h1 strong{
	font-weight: 800!important;
}
.total-login .esquerda-login .texto{
	margin-top: 26px;
	height: 108px;
	max-height: 108px;
}
.total-login .esquerda-login .texto p{
	font-size: 18px;
	color: #FFF;
	width: 100%;
	font-weight: 400;
	text-align: center;
	line-height: 27px;
}
.total-login .esquerda-login .display-esquerda-login{
	height: 400px;
	position: absolute;
	left: 0px;
	top: 50%;
	margin-top: -200px;
}

/* DIREITA LOGIN */
.total-login .direita-login{
	width: calc(100% - 421px);
	position: absolute;
	right: 0px;
	top: 0px;
	height: 100%;
	background: #FFF;
	padding-left: 90px;
}
.total-login .direita-login .display-direita-login{
	height: 402px;
	width: calc(100% - 90px);
	position: absolute;
	top: 10%;
	margin-top: 0;
}
.total-login .direita-login h1,
.total-login .direita-login h1 p,
.total-login .direita-login .form h1 p{
	font-size: 30px;
	color: #595959;
	text-align: left;
}
.total-login .direita-login h1 strong{
	font-weight: 800!important;
}
.total-login .direita-login .mensagem{
	font-size: 14px;
	color: #595959;
	font-weight: 400;
	margin-top: 8px;
}

/* FORMULARIO */
.total-login .direita-login .form{
	width: 100%;
	margin-top: 20px
}
.total-login .direita-login .form p{
	font-size: 14px;
	color: #595959;
	font-weight: 400;
	margin-bottom: 5px;
	line-height: inherit;
}
.total-login .direita-login .form .input{
	width: 100%;
	border: 1px solid #CCC;
	border-radius: 10px;
	height: 48px;
	padding-left: 20px;
    padding-right: 25px;
	outline: none;
	color: #595959;
	font-weight: 400;
	font-size: 16px;
	margin-bottom: 21px;
}
.total-login .direita-login .form .input:hover,
.total-login .direita-login .form .input:focus{
	border: 1px solid #7b2258;
}
.total-login .direita-login .form .link-senha{
	width: 100%;
	text-align: right;
	font-weight: 400;
	font-size: 14px;
	color: #595959;
	margin-top: -13px;
}
.total-login .direita-login .form .link-senha:hover{
	text-decoration: underline;
	color: #7b2258;
}
.total-login .direita-login .form .botao-terciario{
	width: 100%;
	height: 48px;
	margin-top: 30px;
}
.total-login .direita-login .form .nao-aluno{
	width: 100%;
	font-size: 14px;
	color: #595959;
	font-weight: 400;
	margin-top: 36px;
}
.total-login .direita-login .form .nao-aluno a{
	display: inline-block;
	color: #7b2258;
}
.total-login .direita-login .form .nao-aluno a:hover{
	text-decoration: underline;
}

/* COPYRIGHT */
.total-copyright{
	width: 500px;
	position: absolute;
	bottom: 32px;
	left: 90px;
}
.total-copyright .esquerda{
	color: #595959;
	font-weight: 400;
	font-size: 14px;
	text-align: left;
}
.total-copyright .esquerda span{
	display: inline-block;
}
.total-copyright .esquerda a{
	color: #595959;
	display: inline-block;
}
.total-copyright .esquerda a:hover{
	color: #7b2258;
	text-decoration: underline;
}

/* TABLET E MOBILE */
@media (max-width: 991px){
	.total-login{
		position: relative;
		padding-bottom: 50px;
	}
	.total-login .conteudo{
		position: relative;
	}
	.total-login .conteudo-login{
		position: relative;
	}
	.total-login .fundo-login{
		width: 100%;
	}
	.total-login .display-login{
		width: 100%;
		left: 0px;
		top: 0px;
		margin: 0px;
		position: relative;
	}
	.total-login .esquerda-login,
	.total-login .esquerda-login .display-esquerda-login{
		width: 100%;
		position: relative;
		left: inherit;
		top: inherit;
		height: auto;
		float: none;
		margin: 0px;
	}
	.total-login .direita-login,
	.total-login .direita-login .display-direita-login{
		padding: 0px;
		width: 100%;
		position: relative;
		left: inherit;
		top: inherit;
		height: auto;
		float: none;
		margin: 0px;
		border-radius: 8px;
	}
	.total-login .direita-login{
		width: 100%;
		margin: 0 auto;
	}
	.total-login .direita-login .display-direita-login{
		padding: 25px;
	}
	.total-login .logo-login{
		padding-top: 30px;
		width: 120px;
		margin-bottom: 30px;
	}
	.total-login .total-copyright{
		position: relative;
		bottom: inherit;
		left: inherit;
		width: auto;
		display: table;
		margin: 0 auto;
		padding-left: 25px;
		padding-right: 25px;
		padding-bottom: 20px;
	}
	.total-login .direita-login .form .nao-aluno,
	.total-copyright .esquerda{
		text-align: center;
	}
	.total-login .esquerda-login .texto{
		min-height: 0px;
		height: auto;
		margin-bottom: 30px;
	}
}

/* TABLET */
@media (max-width: 991px) and (min-width: 768px){
	.total-login .direita-login{
		width: 60%;
		margin: 0 auto;
	}
	.total-login .esquerda-login .texto{
		width: 60%;
		margin: 0 auto;
		margin-top: 26px;
		margin-bottom: 30px;
	}
}
.msg-total-ok,
.msg-total-erro{
	margin-bottom: 10px;
}
/* AUTO FILL */
input:-webkit-autofill {
    background-color: red !important;
}

/* BOTÃƒO TERCIARIO */
.botao-terciario{
	color: #FFF;
	text-align: center;
	font-size: 14px;
	cursor: pointer;
	outline: none;
	border: 0px;
	border-radius: 100px;
	background: #464646;
	font-weight: 400;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.botao-terciario:hover{
	background: #555;
	color: #FFF;
}

/* BOTÃƒO TERCIARIO */
.botao-terciario{
	text-align: center;
	cursor: pointer;
	outline: none;
	font-weight: bold;
	font-size: 14px;
	color: #FFF;
	background: #757575;
	border-radius: 100px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 0px !important;
	-webkit-box-shadow: 0 2px 10px -4px #000;
    -moz-box-shadow: 0 2px 10px -4px #000;
    box-shadow: 0 2px 10px -4px #000;
}
.botao-terciario:hover{
	background: #757575 !important;
}

.botao-esqueci-minha-senha{
	text-align: center;
	cursor: pointer;
	outline: none;
	font-weight: bold;
	font-size: 14px;
	color: #7b2258;
	background: #FFb708;
	border-radius: 100px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 0px !important;
	-webkit-box-shadow: 0 2px 10px -4px #000;
    -moz-box-shadow: 0 2px 10px -4px #000;
    box-shadow: 0 2px 10px -4px #000;
	padding: 10px 20px;
	gap: 15px;
}
.botao-esqueci-minha-senha:hover{
	color: #FFb708;
	background: #7b2258;
}

.recuperar-voltar-container {
    display: inline-flex;
    align-items: center;
    gap: 15px;
}

.recuperar-voltar-container .link-senha {
    margin-left: 10px;
    position: relative;
    top: 6px;
}

.msg-total-sucesso{
	background-color:#DFF0D8;
	border:1px solid #9FC76F;
	color:#468847;
	padding:15px;
	font-size: 14px;
}

.total-cadastro{
	width: 100%;
	min-height: 100vh;
	position: relative;
}
.total-cadastro .fundo-cadastro{
    width: 820px;
    height: 100vh;
    position: fixed;
    left: 0;
    top: 0;
    background: url('../images/fundo-login.jpg') center top no-repeat;
    background-size: cover;
}
.total-cadastro .conteudo{
	position: absolute;
	left: 0px;
	top: 0px;
	height: 100%;
}
.total-cadastro .conteudo-cadastro{
	width: 100%;
	height: 1080px;
	position: absolute;
	left: 0px;
	top: 0px;
}
.total-cadastro .display-cadastro{
	width: 1160px;
	left: 50%;
	margin-left: -455px;
	height: 100%;
	position: absolute;
}

/* ESQUERDA cadastro */
.total-cadastro .esquerda-cadastro{
	width: 325px;
	float: left;
	position: absolute;
	height: 100%;
}
.total-cadastro .logo-cadastro{
	width: 210px;
	display: table;
	margin: 0 auto;
	margin-bottom: 75px;
}
.total-cadastro .logo-cadastro img{
	width: auto;
	height: auto;
	max-height: 100%;
	display: block;
}
.total-cadastro .esquerda-cadastro h1,
.total-cadastro .esquerda-cadastro h1 p{
	color: #FFF;
	width: 100%;
	text-align: center;
	font-size: 30px;
}
.total-cadastro .esquerda-cadastro h1 strong{
	font-weight: 800!important;
}
.total-cadastro .esquerda-cadastro .texto{
	margin-top: 26px;
	height: 108px;
	max-height: 108px;
}
.total-cadastro .esquerda-cadastro .texto p{
	font-size: 18px;
	color: #FFF;
	width: 100%;
	font-weight: 400;
	text-align: center;
	line-height: 27px;
}
.total-cadastro .esquerda-cadastro .display-esquerda-cadastro{
	height: 400px;
	position: absolute;
	left: 0px;
	top: 50%;
	margin-top: -300px;
}

/* DIREITA CADASTRO */
.total-cadastro .direita-cadastro{
	width: calc(100% - 421px);
	position: absolute;
	right: 0px;
	top: 0px;
	height: 100%;
	background: #FFF;
	padding-left: 90px;
}
.total-cadastro .direita-cadastro .display-direita-cadastro{
	height: 402px;
	width: calc(100% - 90px);
	position: absolute;
	top: 90px;
}
.total-cadastro .direita-cadastro h1,
.total-cadastro .direita-cadastro h1 p{
	font-size: 30px;
	color: #595959;
	text-align: left;
}
.total-cadastro .direita-cadastro h1 strong{
	font-weight: 800!important;
	line-height: 40px;
}
.total-cadastro .direita-cadastro .mensagem{
	font-size: 14px;
	color: #595959;
	font-weight: 400;
	margin-top: 8px;
}

/* FORMULARIO */
.total-cadastro .direita-cadastro form{
	width: 100%;
	margin-top: 20px;
}
.total-cadastro .direita-cadastro form p{
	font-size: 14px;
	color: #595959;
	font-weight: 400;
	margin-bottom: 5px;
	line-height: inherit;
}
.total-cadastro .direita-cadastro form .input{
	width: 100%;
    border: 1px solid #CCC;
    border-radius: 10px;
    height: 40px;
    padding-left: 10px;
	padding-right: 25px;
    outline: none;
    color: #595959;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 14px;
}
.total-cadastro .direita-cadastro form .input:hover,
.total-cadastro .direita-cadastro form .input:focus{
	border: 1px solid #7b2258;
}
.total-cadastro .direita-cadastro form .link-senha{
	width: 100%;
	text-align: right;
	font-weight: 400;
	font-size: 14px;
	color: #595959;
	margin-top: -13px;
}
.total-cadastro .direita-cadastro form .link-senha:hover{
	text-decoration: underline;
	color: #7b2258;
}
.total-cadastro .direita-cadastro form .botao-terciario{
	width: 200px;
	height: 48px;
	margin-top: 15px;
}
.total-cadastro .direita-cadastro form .nao-aluno{
	width: 100%;
	font-size: 14px;
	color: #595959;
	font-weight: 400;
	margin-top: 36px;
}
.total-cadastro .direita-cadastro form .nao-aluno a{
	display: inline-block;
	color: #7b2258;
}
.total-cadastro .direita-cadastro form .nao-aluno a:hover{
	text-decoration: underline;
}
.campo-termos .bola-selecionar, .campo-termos .bola-radio {
    border-radius: 0px !important;
}

/* COPYRIGHT */
.total-copyright{
	width: 500px;
	position: absolute;
	bottom: 32px;
	left: 90px;
}
.total-copyright .esquerda{
	color: #595959;
	font-weight: 400;
	font-size: 14px;
	text-align: left;
}
.total-copyright .esquerda span{
	display: inline-block;
}
.total-copyright .esquerda a{
	color: #595959;
	display: inline-block;
}
.total-copyright .esquerda a:hover{
	color: #7b2258;
	text-decoration: underline;
}

@media (max-width: 1360px){
	.total-cadastro .display-cadastro{
		width: 1030px;
	}
	.total-cadastro .display-cadastro{
		margin-left: -555px;
	}
	.total-cadastro .esquerda-cadastro{
		left:7%;
	}
	.total-cadastro .direita-cadastro{
		padding-left:45px;
	}
}
/* TABLET E MOBILE */
@media (max-width: 991px){
	.total-cadastro .direita-cadastro h1, 
	.total-cadastro .direita-cadastro h1 p,
	.total-cadastro .direita-cadastro .mensagem{
		text-align: center !important;
	}
	.total-cadastro{
		position: relative;
		padding-bottom: 50px;
	}
	.total-cadastro .conteudo{
		position: relative;
	}
	.total-cadastro .conteudo-cadastro{
		position: relative;
	}
	.total-cadastro .fundo-cadastro{
		width: 100%;
	}
	.total-cadastro .display-cadastro{
		width: 100%;
		left: 0px;
		top: 0px;
		margin: 0px;
		position: relative;
	}
	.total-cadastro .esquerda-cadastro,
	.total-cadastro .esquerda-cadastro .display-esquerda-cadastro{
		width: 100%;
		position: relative;
		left: inherit;
		top: inherit;
		height: auto;
		float: none;
		margin: 0px;
	}
	.total-cadastro .direita-cadastro,
	.total-cadastro .direita-cadastro .display-direita-cadastro{
		padding: 0px;
		width: 100%;
		position: relative;
		left: inherit;
		top: inherit;
		height: auto;
		float: none;
		margin: 0px;
		border-radius: 8px;
	}
	.total-cadastro .direita-cadastro{
		width: 100%;
		margin: 0 auto;
		padding-left: 60px;
	}
	.total-cadastro .direita-cadastro .display-direita-cadastro{
		padding: 25px;
		width: calc(100% - 60px);
	}
	.total-cadastro .logo-cadastro{
		padding-top: 30px;
		width: 120px;
		margin-bottom: 30px;
	}
	.total-cadastro form .contorno-campo{
		width: 48%;
		padding-left: 10px;
		padding-right: 10px;
	}
	.total-cadastro .total-copyright{
		position: relative;
		bottom: inherit;
		left: inherit;
		width: auto;
		display: table;
		margin: 0 auto;
		padding-left: 25px;
		padding-right: 25px;
		padding-bottom: 20px;
	}
	.total-cadastro .direita-cadastro form .nao-aluno,
	.total-copyright .esquerda{
		text-align: center;
	}
	.total-cadastro .esquerda-cadastro .texto{
		min-height: 0px;
		height: auto;
		margin-bottom: 30px;
	}
}

/* TABLET */
@media (max-width: 991px) and (min-width: 768px){
	.total-cadastro .direita-cadastro{
		width: 60%;
		margin: 0 auto;
	}
	.total-cadastro .esquerda-cadastro .texto{
		width: 60%;
		margin: 0 auto;
		margin-top: 26px;
		margin-bottom: 30px;
	}
}
.msg-total-ok,
.msg-total-erro{
	margin-bottom: 10px;
}
/* AUTO FILL */
input:-webkit-autofill {
    background-color: red !important;
}
.total-cadastro form{
	width: 100%;
}
.total-cadastro form .row{
	margin-left: -15px;
	margin-right: -15px;
}
.total-cadastro form h2{
	font-weight: 800;
	font-size: 18px;
	color: #595959;
	padding-left: 15px;
	padding-top: 15px;
	margin-bottom: 10px;
}
.total-cadastro form .contorno-campo{
	float: left;
	width: 50%;
	padding-left: 15px;
	padding-right: 15px;
}
.total-cadastro form p{
	font-size: 14px;
	color: #595959;
	font-weight: 400;
	margin-bottom: 5px;
	line-height: inherit;
}
.total-cadastro form .input{
	width: 100%;
	border: 1px solid #8C8C8C;
	border-radius: 10px;
	height: 100px;
	padding-left: 20px;
	outline: none;
	color: #595959;
	font-weight: 400;
	font-size: 16px;
	margin-bottom: 21px;
	-webkit-appearance: none;
}
.total-cadastro form .input:hover,
.total-cadastro form .input:focus{
	border: 1px solid #7b2258;
}
.total-cadastro .select{
	cursor: pointer;
	background: url('../../imagens/cadastro/select.svg') right -3px no-repeat;
}
.total-cadastro .select:hover,
.total-cadastro .select:focus{
	background: url('../../imagens/cadastro/select-hover.svg') right -3px no-repeat;
}
.total-cadastro form .botao-terciario{
	display: table;
	height: 40px;
	padding-left: 40px;
	padding-right: 40px;
	margin-top: 10px;
}
.total-cadastro form .campo-termos{
	width: 100%;
	float: none;
}
.total-cadastro form .campo-termos a{
	display: inline;
	color: #7b2258;
}
.total-cadastro form .campo-termos a:hover{
	text-decoration: underline;
}
.total-cadastro form .contorno-campo-radio{
	float: left;
	display: table;
	height: 48px;
	margin-bottom: 5px;
}
.total-cadastro form .contorno-campo-radio + .contorno-campo-radio{
	margin-left: 35px;
}
.total-cadastro form .contorno-campo-radio .bola-radio{
	width: 18px;
	height: 18px;
	float: left;
	position: relative;
	border: 1px solid #8C8C8C;
	border-radius: 100px;
	margin-top: 15px;
	cursor:pointer;
}
.total-cadastro form .contorno-campo-radio .texto-radio{
	width: calc(100% - 18px);
	float: left;
	padding-left: 8px;
	font-weight: 400;
	color: #595959;
	font-size: 14px;
	line-height: 48px;
}
.total-cadastro .campo-termos .texto-radio a{
    text-decoration: underline;
}
.total-cadastro form .contorno-campo-radio:hover .bola-radio{
	border: 1px solid #7b2258;
}
.total-cadastro form .contorno-campo-radio .bola-selecionar{
	width: 10px;
	height: 10px;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-top: -5px;
	margin-left: -5px;
	background: #7b2258;
	border-radius: 100px;
	display: none;
}
.total-cadastro form .contorno-campo-radio:hover .bola-selecionar{
	display: block;
}
@media (max-width:767px){
    .total-cadastro .campo-termos .texto-radio{
        line-height:23px !important;
        padding-top:13px;
    }
}

/* ESTILOS PARA CAMPOS HORIZONTAIS */
.campos-horizontais {
    display: flex;
    gap: 20px;
    margin-bottom: 21px;
}

.campos-horizontais .contorno-campo {
    flex: 1;
    min-width: 0;
}

/* Ajuste para mobile */
@media (max-width: 767px) {
    .campos-horizontais {
        flex-direction: column;
        gap: 0;
    }
    
    .campos-horizontais .contorno-campo {
        width: 100%;
    }
}

.campos-horizontais.grupo-cpf-data {
    margin-top: -15px;
    margin-bottom: 6px;
}

/* Ajuste para mobile */
@media (min-width: 768px) {
    .campos-horizontais.grupo-cpf-data {
        margin-top: -15px;
        margin-bottom: 6px;
    }
}

.campos-horizontais.grupo-profissao-nivel {
    margin-top: -15px;
    margin-bottom: 6px;
}

/* Ajuste para mobile */
@media (min-width: 768px) {
    .campos-horizontais.grupo-profissao-nivel {
        margin-top: -15px;
        margin-bottom: 6px;
    }
}

.contorno-campo-radio{
	float: left;
	display: table;
	height: 48px;
	margin-bottom: 5px;
}
.contorno-campo-radio + .contorno-campo-radio{
	margin-left: 35px;
}
.contorno-campo-radio .bola-radio{
	width: 18px;
	height: 18px;
	float: left;
	position: relative;
	border: 1px solid #8C8C8C;
	border-radius: 100px;
	margin-top: 15px;
	cursor:pointer;
}
.contorno-campo-radio .texto-radio{
	width: calc(100% - 18px);
	float: left;
	padding-left: 8px;
	font-weight: 400;
	color: #595959;
	font-size: 14px;
	line-height: 48px;
}
.campo-termos .texto-radio a{
    text-decoration: underline;
}
.contorno-campo-radio:hover .bola-radio{
	border: 1px solid #7b2258;
}
.contorno-campo-radio .bola-selecionar{
	width: 10px;
	height: 10px;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-top: -5px;
	margin-left: -5px;
	background: #7b2258;
	border-radius: 100px;
	display: none;
}
.contorno-campo-radio:hover .bola-selecionar{
	display: block;
}
@media (max-width:767px){
    .total-cadastro .campo-termos .texto-radio{
        line-height:23px !important;
        padding-top:13px;

	}
}

.contorno-campo-radio.selecionado .bola-selecionar {
    display: block;
}

.contorno-campo-radio.selecionado .bola-radio {
    border: 1px solid #7b2258 !important;
}

.contorno-campo-radio.selecionado .bola-selecionar {
    display: block !important;
    background: #7b2258 !important;
}

.contorno-campo-radio:hover .bola-radio {
    border: 1px solid #7b2258;
}

.contorno-campo-radio:hover .bola-selecionar {
    display: block;
}
/*MENSAGEM DE ERRO CADASTRO */
.msg-total-erro-cadastro {
    background-color: #fcecec; 
    border: 1px solid #e99b9b;
    color: #8a1f1f;
    padding: 10px 15px;
    border-radius: 5px;
    margin-bottom: 20px;
    font-size: 14px;
}

.lista-erros {
    margin: 0;
    padding-left: 20px;
}

.lista-erros li {
    margin-bottom: 5px;
    list-style: disc;
}

.erro-campo {
    border: 1px solid #e99b9b !important;
}
/*TERMOS DE USO */
.politica-conteudo {
    max-height: 70vh;
    overflow-y: auto;
    padding-right: 40px;
    margin-right: -20px;
    scrollbar-gutter: stable both-edges;
}
.politica-conteudo h2 {
    font-size: 1.5rem;
    margin-top: 1.5rem;
    margin-bottom: 1rem;
    color: #333;
}
.politica-conteudo h3 {
    font-size: 1.2rem;
    margin-top: 1.2rem;
    margin-bottom: 0.8rem;
    color: #444;
}
.politica-conteudo p, .politica-conteudo ul {
    margin-bottom: 1rem;
    line-height: 1.6;
    color: #555;
}
.politica-conteudo ul {
    padding-left: 1.5rem;
}
.politica-conteudo li {
    margin-bottom: 0.5rem;
}
/*MENSAGEM TENTATIVA DE LOGIN */

.msg-total-erro {
    background-color: #F2DEDE;
    border: 1px solid #F27B81;
    color: #B94A48;
    padding: 14px;
    font-size: 14px;
}