/*
* ==========================================================
*     LOGIN PAGE
* ==========================================================
*/
.login-page,
.register-page {
	width: 100%;
	background: #f5f5f5;
	min-height: auto;
	padding-bottom: 0;
}

.login-page .form-outer,
.register-page .form-outer {
	min-height: 100vh;
	max-width: 600px;
	margin: 0 auto;
	padding: 20px 0;
	position: relative;
}

.login-page .copyrights,
.register-page .copyrights {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 100%;
}

.login-page .copyrights p,
.register-page .copyrights p {
	font-size: 0.6em;
	font-weight: 300;
	margin-bottom: 10px;
}

.login-page .logo,
.register-page .logo {
	font-size: 2em;
	font-weight: 500;
}

.login-page .logo span,
.register-page .logo span {
	color: #ccc;
}

.login-page p,
.register-page p {
	font-size: 1.1em;
	font-weight: 300;
	color: #aaa;
	margin-top: 15px;
	margin-bottom: 0;
}

.login-page form,
.register-page form {
	margin: 2rem auto 1rem;
	max-width: 300px;
}

.login-page a.forgot-pass,
.login-page a.signup,
.register-page a.forgot-pass,
.register-page a.signup {
	font-size: 0.65em;
	color: #66b0ff;
}

.login-page a.forgot-pass:hover,
.login-page a.forgot-pass:focus,
.login-page a.signup:hover,
.login-page a.signup:focus,
.register-page a.forgot-pass:hover,
.register-page a.forgot-pass:focus,
.register-page a.signup:hover,
.register-page a.signup:focus {
	color: #66b0ff;
	text-decoration: none;
}

.login-page a.forgot-pass,
.register-page a.forgot-pass {
	display: block;
}

.login-page a.create-account,
.register-page a.create-account {
	border-radius: 50px;
	font-size: 0.75em;
	margin-top: 10px;
	color: #999;
	text-transform: uppercase;
}

.login-page .terms-conditions,
.register-page .terms-conditions {
	margin-top: 20px;
}

.login-page small,
.register-page small {
	font-size: 0.65em;
	color: #aaa;
	line-height: 0.9em;
}

/* LOGIN MEDIAQUERIES -------------------------- */
@media (min-width: 768px) {
	.login-page p,
	.register-page p {
		font-size: 1.1em;
	}
	.login-page form label.label-custom,
	.register-page form label.label-custom {
		font-size: 0.9em;
	}
	.login-page form small,
	.register-page form small {
		font-size: 0.8em;
	}
	.login-page .terms-conditions label,
	.register-page .terms-conditions label {
		font-size: 0.9em;
	}
	.login-page a.forgot-pass,
	.login-page a.signup,
	.register-page a.forgot-pass,
	.register-page a.signup {
		font-size: 0.8em;
	}
	.login-page small,
	.register-page small {
		font-size: 0.8em;
	}
	.login-page .copyrights p,
	.register-page .copyrights p {
		font-size: 0.85em;
		font-weight: 400;
	}
}

/*
* ==========================================================
*     FORMS ELEMENTS
* ==========================================================
*/
label {
	font-size: 0.9rem;
}

.form-control {
	height: calc(2.4rem + 2px);
	padding: 0.45rem 0.75rem;
	font-size: 1rem;
	line-height: 1.5;
	color: #495057;
	border-radius: 0;
}

.form-control::-moz-placeholder {
	font-size: 0.75em;
	font-weight: 400;
	color: #aaa;
	font-family: 'Roboto', sans-serif;
}

.form-control::-webkit-input-placeholder {
	font-size: 0.75em;
	font-weight: 400;
	color: #aaa;
	font-family: 'Roboto', sans-serif;
}

.form-control:-ms-input-placeholder {
	font-size: 0.75em;
	font-weight: 400;
	color: #aaa;
	font-family: 'Roboto', sans-serif;
}

.form-control-sm {
	height: calc(1.8125rem + 2px);
	padding: 0.25rem 0.5rem;
	font-size: 0.875rem;
	line-height: 1.5;
}

.form-control-lg {
	height: calc(2.875rem + 2px);
	padding: 0.5rem 1rem;
	font-size: 1.25rem;
	line-height: 1.5;
}

textarea.form-control {
	height: auto;
}

select.form-control {
	font-weight: 300;
}

select.form-control[size],
select.form-control[multiple] {
	height: auto;
}

select.form-control option {
	color: #999;
	font-weight: 300;
}

.form-group {
	margin-bottom: 10px;
}

.form-group div[class*='col-'] {
	margin-bottom: 10px;
}

.input-group-text {
	color: #868e96;
	background: #fff;
	border-radius: 0;
}

.form-group-material {
	position: relative;
	margin-bottom: 30px;
}

input.input-material {
	width: 100%;
	border: none;
	border-bottom: 1px solid #eee;
	padding: 10px 0;
	color: #868e96;
	font-weight: 300;
}

input.input-material.is-valid {
	border-color: #28a745 !important;
}

input.input-material.is-invalid {
	border-color: #dc3545 !important;
}

input.input-material:focus {
	border-color: #ff3f3f;
	outline: none;
}

input.input-material ~ label {
	color: #aaa;
	position: absolute;
	top: 14px;
	left: 0;
	cursor: text;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	font-weight: 300;
}

input.input-material ~ label.active {
	font-size: 0.8rem;
	top: -10px;
	color: #ff3f3f;
}

input.input-material.is-invalid ~ label {
	color: #dc3545;
}

input.form-control-custom {
	visibility: hidden;
	width: 1px;
}

input.form-control-custom:checked + label::before {
	background: #ff3f3f !important;
}

input.form-control-custom:checked + label::after {
	opacity: 1 !important;
}

input.form-control-custom.radio-custom + label::before {
	border-radius: 50%;
}

input.form-control-custom.radio-custom + label::after {
	content: '';
	width: 6px;
	height: 6px;
	line-height: 6px;
	background: #fff;
	border-radius: 50%;
	top: 7px;
	left: 5px;
}

input.form-control-custom[disabled] + label {
	cursor: not-allowed;
}

input.form-control-custom[disabled] + label::before,
input.form-control-custom[disabled] + label::after {
	border: 2px solid #aaa;
	cursor: not-allowed;
}

input.form-control-custom[checked] + label::before,
input.form-control-custom[checked] + label::after {
	border: none;
}

input.form-control-custom + label {
	font-size: 0.85rem;
	margin-bottom: 0;
	margin-left: 0;
	color: #999;
	padding-left: 25px;
	padding-top: 2px;
	position: relative;
}

input.form-control-custom + label span {
	margin-left: 20px;
}

input.form-control-custom + label::before {
	content: '';
	display: block;
	width: 16px;
	height: 16px;
	line-height: 16px;
	background: #ddd;
	color: #fff;
	text-align: center;
	position: absolute;
	top: 2px;
	left: 0;
	-webkit-transition: all 0.1s;
	transition: all 0.1s;
	cursor: pointer;
}

input.form-control-custom + label::after {
	/* content: '\f00c'; */
	display: block;
	/* font-family: 'FontAwesome'; */
	font-size: 8px;
	color: #fff;
	position: absolute;
	top: 4px;
	left: 4px;
	-webkit-transition: all 0.1s;
	transition: all 0.1s;
	opacity: 0;
	cursor: pointer;
}

button {
	cursor: pointer;
}
/*
  * ==========================================================
  *     AGREGADOS IT
  * ==========================================================
  */
.icon {
	position: absolute;
	bottom: 15px;
	right: 50px;
	width: 26px;
	height: 26px;
	top: 17px;
}
.input_container {
	position: relative;
	padding: 10px 15px 0px 0px;
	width: 480px;
}
.flex-conteiner {
	display: flex;
	flex-direction: column;
	width: 50%;
	justify-content: center;
}

/*
  * ==========================================================
  *     FORMS GENERAL
  * ==========================================================
  */
.forms .line {
	width: 100%;
	height: 1px;
	border-bottom: 1px dashed #eee;
	margin: 20px 0 30px;
}

.forms p {
	font-size: 0.8rem;
	color: #868e96;
}

.forms small {
	color: #868e96;
}

/* FORMS MEDIAQUERIES -------------------------- */
@media (min-width: 768px) {
	.forms h2 {
		font-size: 1rem;
	}
	.forms input.form-control {
		border-radius: 0;
	}
	.forms input.form-control::-moz-placeholder {
		font-size: 0.85em;
	}
	.forms input.form-control::-webkit-input-placeholder {
		font-size: 0.85em;
	}
	.forms input.form-control:-ms-input-placeholder {
		font-size: 0.85em;
	}
	.forms p {
		font-size: 0.9em;
	}
}
