/*Iconos social media*/
svg.social-icon {
    width: 18px;
}

/*icono de email y contraseña*/
.teseo__i {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translatey(-50%);
	font-size: 18px;
	/*fill: #fc0494;*/
	fill: #000;
	transition: .5s;
	padding-right: 5px;
}

/*Fondo de la derecha (el formulario de acceso)*/
#panel-right {
    display: flex !important;
    align-items: center;
    /*background-color: #05070A;*/
	background: #FFF;
	z-index: 999; 
}

/*texto: Email y contraseña*/
.teseo__label {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translatey(-50%);
	font-size: 16px;
	/*color: #fc0494!important;*/
	color: #000!important;
	pointer-events: none;
	padding-left: 25px;
	transition: .5s
}

/*icono cuando se hace focus*/
.teseo__input:focus~.teseo__label, 
.teseo__input:valid~.teseo__label{
	top: -3px;
	/*color: #fc0494!important;*/
	color: #000!important;
}

/*borde inferior cuando se hace focus*/
.teseo__input:focus, 
.teseo__input:valid{
	/*border-bottom-color: #83f53d!important;*/	
	border-bottom-color: #000!important;	
} 

/*icono de eye*/
.teseo__i_password {
	fill: #000;
}

/*Botón de INICIAR SESIÓN*/
.teseo__btn, .teseo__btn:focus  {
	position: relative;
	width: 100%!important;
	height: 45px;
	/*background: #fc0494;*/
	background: #0071BC;
	outline: none;
	border-radius: 40px!important;
	cursor: pointer;
	color: #FFF!important;
	font-weight: 600;
	z-index: 1;
	overflow: hidden;
	font-size: 13px!important;
    font-weight: 600!important;
    text-transform: uppercase!important;
    line-height: 1em!important;
	/*border: 2px solid #fc0494!important;*/
	border: 2px solid #0071BC!important;
}

.teseo__btn:hover {
	color: #fff!important;
	/*background: #D84C28;*/
	background: #415C99;
}

/*Hover de INICIO DE SESIÓN*/
#teseo__submit_login:hover {
	background:#415C99;
}

/*Mensaje bajo el botón de INICIO DE SESIÓN*/
.teseo__logreg-link {
	font-size: 14.5px;
	/*color: #FFF;*/
	color: #000;
	text-align: center;
	margin:20px 0 10px;	
}

.teseo__texto_borde {
	/*color: #83f53d;*/
	color: #415C99;
}

.teseo__logreg-link-a {
	/*color: #00B5E2!important;*/
	color: #0071BC!important;
	text-decoration: none!important;
	font-weight: 600;
	cursor: pointer;
}

.teseo__logreg-link-a:hover {
	text-decoration: underline;
}

.teseo__texto_borde:hover {
	/*color: #83f53d;*/
	color: #0071BC;
}


.teseo__i_right {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translatey(-50%);
    font-size: 18px;
    color: #fc0494;
    transition: .5s;
    padding-right: 5px;
	cursor: pointer;
}


.container_sup {
	background:#97D700;
	align-self: start;
    padding: 20px 20px 20px 20px;
	color: #FFF;
	font-family: "Roboto", Sans-serif;
	z-index: 4;
}

.container_inf {
	background:#228848;
	align-self: end;
    padding: 20px 20px 20px 20px;
	color: #FFF;
	font-family: "Roboto", Sans-serif;
	z-index: 3;
}

#panel-left h1 {
	font-weight:bold;
	font-family: "Roboto", Sans-serif;
	font-size:90px;
}

#panel-left .container {
	background: #FFFFFFA0;
	max-width: 100%!important;
	height: 320px;
	align-content: center;
	z-index: 3;
}

#teseo__submit_login {
	pointer-events: none;
	opacity: 0.5;
}



#teseo__submit_login.active {
	pointer-events: unset;
}


#panel-left {
  width: 100%;
  background-size: cover;
  background-position: center;
  transition: opacity 1s ease-in-out;
  flex-direction: column;
  justify-content: center;
  background-repeat: no-repeat;
}

#panel-left::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.4); /* Ajusta la opacidad aquí (0.4 = 40% oscuro) */
  z-index: 3;
  pointer-events: none;
}

.slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 1s ease-in-out;
}

#slide1 {
  z-index: 1;
  transform: translateX(0);
}

#slide2 {
  z-index: 2;
  transform: translateX(100%);
}


.vertical-nav-menu a:hover {
	color: #8ab35e!important;
}




.row-principal {
	height:100vh;
}

.teseo__form_login {
	width: 400px;
}

.card_section {
	position: relative; 
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0,0,0,.125);
    border-radius: 0.25rem;
}

.table-responsive, .div_section {
    padding: 20px;
}

.btn-primary {
    margin-bottom: 5px!important;
}


#panel-left {
    display: flex !important;
    align-items: center;
    /*background-color: #8AB35E;*/
}



h1 {
    color: #fff;
    font-size: 60px;
    font-weight: 900;
}
h2 {
    color: #14274E;
    font-size: 40px;
    font-weight: 700;
}

.description {
    color: #228848;
    font-size: 24px;
    font-weight: bold;
	font-style: italic; 
	font-family: serif;
	margin-top: -20px;
}

#panel-left .logo-container svg {
    width: 220px;
}


#panel-right form input {
    background-color: unset;
    border: 0;
    border-bottom: 2px solid #394867;
    border-radius: 0;
    font-weight: 400;
}

.links a {
    color: #14274E;
    
}

@media only screen and (max-width: 767px) {
    #panel-left {
        display: none !important;
    }
  }


.teseo__form_login {
	margin: 0 auto;
}

.teseo__container {
	display: flex;
    justify-content: center;
    align-items: center;
    background: #F7F7F7!important;
	box-shadow: 0px 30px 60px 0px rgba(0, 0, 0, 0.2);
	width: 1000px;
    margin: 50px auto;
	max-width: -webkit-fill-available;
}

.teseo__wrapper {
	border-radius: 50px 0px 0px 0px;
	position: relative;
	width: 1000px;
	height: 800px;
	background: #152351;
	/*border: 2px solid #0ef;*/
	overflow: hidden;
	/*box-shadow: 0 0 25px #0ef;*/
}

.teseo__info {
	color: #14274E;
	font-size: 12px!important;
}

/*Parte izquierda del Login*/
.teseo__form-box {
	position: absolute;
	top: 0;
	width: 50%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.teseo__h2 {
	color: #FFFFFF!important;
    font-family: "Poppins", Sans-serif!important;
    font-size: 38px!important;
    font-weight: 600!important;
    line-height: 1.1em!important;
} 

.teseo__input-box {
	position: relative;
	width: 100%;
	height: 45px;
	margin: 40px 0;
}

.teseo__input {
	width: 100%!important;
	height: 100%;
	background: transparent!important;
	border: none!important;
	outline: none;
	border-bottom: 2px solid #14274E!important;
	transition: .5s!important;
	font-size: 16px;
	transition: .5s;
	font-weight: 500;
	color: #000!important;
	padding-right: 23px!important;
}







.teseo__i-eye.active {
	color: #ABFF00;
}
.teseo__i-eye_empresa.active {
	color: #ABFF00;
}



.teseo__i-right {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translatey(-50%);
	font-size: 18px;
	color: #FFFFFF;
	transition: .5s;
	cursor: pointer;
}

.teseo__input:focus~.teseo__i, 
.teseo__input:valid~.teseo__i{
	top: -3px;
	color: #FFFFFF;
}



.teseo__btn::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 300%;
	top: -100%;
	left: 0;
	z-index: -1;
}

.teseo__btn:hover::before {
	top: 0;
}





.teseo__forget-pass {
	color: #00B5E2!important;
	text-decoration: none!important;
	font-weight: 600;
	cursor: pointer;
}

.teseo__login {
	left: 0;
	padding: 0 60px 0 40px;
	z-index: 1;
}

.teseo__login.active {
	z-index: 2;
}

.teseo__register {
	z-index: 1;
}

.teseo__register.active {
	z-index: 2;
}

/*Parte derecha del Login*/

.teseo__info-text {
	position: absolute;
	top: 0;
	width: 50%;
	height: 100%;
	display: flex;
	justify-content: center;
	flex-direction: column;
}

.teseo__login-text {
	right: 0;
	text-align: right;
	padding: 0 40px 60px 90px;
}

.teseo__h2-text {
	text-transform: uppercase!important;
	color: #FFFFFF!important;
    font-family: "Poppins", Sans-serif!important;
    font-size: 38px!important;
    font-weight: 600!important;
    line-height: 1.1em!important;
}

.teseo__login-message {
	font-size: 16px;
	color: #fff;
}

.teseo__bg-animate {
	position: absolute;
    top: -4px;
    right: 0;
    width: 1500px;
    height: 1650px;
    /*background: linear-gradient(45deg, #081b29, #0ef);*/
    background: #00B5E2;
    transform: rotate(11deg) skewY(60deg);
    transform-origin: bottom right;
    border-bottom: 3px solid #0ef;
    transition: 1.5s ease;
    transition-delay: 1.6s;
}

.teseo__wrapper.active .teseo__bg-animate {
	transform: rotate(0) skewY(0);
	transition-delay: .5s;
}

.teseo__bg-animate2 {
	position: absolute;
    top: 100%;
    left: 550px;
    width: 1500px;
    height: 1350px;
    background: #152351;
    /* transform: rotate(-11deg) skewY(-41deg); */
    transform: rotate(0) skewY(0);
    transform-origin: bottom left;
    border-top: 3px solid #0ef;
    transition: 1.5s ease;
    transition-delay: .5s;
}

.teseo__wrapper.active .teseo__bg-animate2 {
	transform: rotate(-11deg) skewY(-60deg);
	transition-delay: 1.2s;
}

/*Formulario de registro*/
.teseo__register{
	right: 0;
	padding: 0 40px 0 40px;
}

.teseo__wrapper.active .teseo__register{
	pointer-events: auto;
}

.teseo__wrapper .teseo__register .teseo__animation {
	transform: translatex(120%);
	opacity: 0;
	filter: blur(10px);
	transition: .7s ease;
	transition-delay: calc(.1s * var(--j));
}

.teseo__wrapper.active .teseo__register .teseo__animation {
	transform: translatex(0);
	opacity: 1;
	filter: blur(0);
	transition-delay: calc(.1s * var(--i));
}

.teseo__wrapper .teseo__register-text .teseo__animation {
	transform: translatex(-120%);
	transition: .7s ease;
	opacity: 0;
	filter: blur(10px);
	transition-delay: calc(.1s * var(--j));
}

.teseo__wrapper.active .teseo__register-text .teseo__animation {
	transform: translatex(0);
	filter: blur(0);
	opacity: 1;
	transition-delay: calc(.1s * var(--i));
}

.teseo__wrapper .teseo__register-text {
	left: 0;
	text-align: left;
	padding: 0 90px 60px 40px;
	pointer-events: none;
}

.teseo__register .teseo__h2 {
	text-align: right;
}

.teseo__wrapper.active .teseo__register-text {
	pointer-events: auto;
}

.teseo__wrapper .teseo__login .teseo__animation {
	transform: translatex(0);
	transition: .7s ease;
	opacity: 1;
	filter: blur(0);
	transition-delay: calc(.1s * var(--j));
	
}

.teseo__wrapper.active .teseo__login .teseo__animation {
	transform: translatex(-120%);
	transition-delay: calc(.1s * var(--i));
	opacity: 0;
	filter: blur(10px);
}

.teseo__animation-text {
	transform: translatex(0);
	transition: .7s ease;
	opacity: 1;
	filter: blur(0);
	transition-delay: calc(.1s * var(--j));
}

.teseo__wrapper.active .teseo__animation-text {
	transform: translatex(120%);
	transition-delay: calc(.1s * var(--i));
	opacity: 0;
	filter: blur(10px);
}


/*switch*/
.teseo__switch {
	display: flex;
    align-self: flex-end;
    color: #FFF;
	gap: 5px;
	/*position: absolute;
    right: 40px;*/
}

input.switch {
	 position: relative;
	 appearance: none;
	 -moz-appearance: none;
	 -webkit-appearance: none;
	 width: 35px !important;
	 height: 20px;
	 border-radius: 30px;
	 cursor: pointer;
	 background: #ccc;
	 transition: box-shadow 0.3s ease-in-out, padding 0.25s ease-in-out;
	 transition-delay: 0.1s, 0s;
}
 input.switch:focus {
	 border: 0;
	 outline: 0;
}
 input.switch:checked {
	 transition-delay: 0s, 0s;
	 box-shadow: inset 0 0 0 2.62857em #00c169 !important;
	 padding-left: 15px;
}
 input.switch:before {
	 display: inline-block;
	 height: 14px;
	 width: 14px;
	 margin: 3px;
	 background-color: #fff;
	 border-radius: 2.1em;
	 transition: all 0.1s ease 0.1s;
}
 input.switch:before, input.switch:after {
	 content: "";
	 display: block;
}
 input.switch:active::before {
	 transition: all 0.1s ease 0.05s;
}

.teseo__switch-persona {
	opacity: 0.5;
}

.teseo__switch-empresa {
	opacity: 0.5;
}

.teseo__switch-persona.active, .teseo__switch-empresa.active {
	opacity: 1;
}

.teseo__form_empresa, .teseo__form_persona {
	display: none;
}

.teseo__form_empresa.active, .teseo__form_persona.active {
	display: block;
}


.containerRedes {
    display: flex;
    justify-content: center;
    gap: 20px;
}


#cliente__reg_nombres, #cliente__reg_razon {
	margin-top:20px;
}



@media (min-width: 1200px) {

}

@media (max-width: 768px) { 
	.teseo__form-box {
		width: 100%;
	}
	
	.teseo__info-text {
		display: none;
	}
	
	.teseo__texto_borde {
		color: #152351;
	}
}

@media (max-width: 480px) {
	.teseo__login, .teseo__register {
    	padding: 0 20px 0 20px;
	}
}

