/*
 * common.css ownership:
 * - product/theme styling for the L2E portal
 * - header, footer, auth layouts, form controls, buttons and responsive behavior
 * - takes precedence over cas.css, which remains the base/legacy layer
 */

/* ============================================================================
 * SECTION 1: LEGACY COMPATIBILITY LAYER
 * ============================================================================
 * These selectors support older CAS/auth markup that is still rendered.
 * The visual/theme ownership has been migrated to the PRODUCT THEME section.
 * ============================================================================ */

/* LEGACY COMPATIBILITY - HEADER */
header{
	padding:0;
}
main {
	display: flex !important;
	flex-direction: column !important;
	flex:1;
}
/* LEGACY COMPATIBILITY - BODY / GENERAL */
.h-size-40{
	height: 40px;
}
.fa-1_8x{
	font-size: 1.8em;
	margin-left: 1rem;
}
.field{
	padding: 0px !important;
	height: 40px;
	display: table;
}

/* LEGACY COMPATIBILITY - AUTH / LOGIN */
#login, #success{
	border: none;
	background: transparent;
	overflow: visible;
}
#login.ux input[type="submit"] {
	border-radius: 0;
	width: 100%;
	min-height: 56px;
	background: linear-gradient(90deg, #8a14ff 0%, #a000ff 100%) !important;
	border: none !important;
	color: #ffffff !important;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.2px;
	text-align: center;
}
#login .login-header h2 {
	font-weight: 500;
}
#login.ux {
    padding-bottom: 0em;
}
#login.ux .login-header h1 {
	margin: unset !important;
}
#login.ux label, .ux .text-important,
#fmSelfRegistration.ux label {
    font-weight: bold !important;
}

/* LEGACY COMPATIBILITY - FORM ELEMENTS */
div#termsForm .btn-submit{
    font-size: 14px !important;
    padding-bottom: 5px !important;
    padding-top: 5px !important;
    width: 150px !important;
    cursor:pointer;
	font-weight: bold;
	margin-right: 10px;
}

/* LEGACY COMPATIBILITY - RECOVERY */
.recoveryInput{
	font-size: 1.5rem !important;
}
.policies{
   font-size:8pt;
   border: 1px solid;
   padding: 10px;
}
#formbox.ux {
    width: 100% !important;
    max-width: 1320px;
}
#formbox {
	width:100%;
	max-width: 1320px;
	margin: 0 auto;
}
#changepassbox {
	width:65%;
	margin: 0 auto;
}
#changepassbox h2, #formbox h2{
	font-size: 30px;
}
#selfregistrationbox {
	width: 100%;
	margin: 0 auto;
}
.width100{
	width: 100% !important;
	position: relative;
}
.font30{
	font-size: 18px !important
}

/* LEGACY COMPATIBILITY - SELF REGISTRATION: PASSWORD STRENGTH INDICATOR */
.meter{
	margin-top: 3px;
	display: inline-block;
	width: 160px !important;
	min-width: 160px !important;
	height: 19px;
	background-color: Gray;
	background: #424042; /* Old browsers */
	background: -moz-linear-gradient(left, #424042 0%, #f2f2f2 99%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(0%,#424042), color-stop(99%,#f2f2f2)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left, #424042 0%,#f2f2f2 99%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left, #424042 0%,#f2f2f2 99%); /* Opera11.10+ */
	background: -ms-linear-gradient(left, #424042 0%,#f2f2f2 99%); /* IE10+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#424042', endColorstr='#f2f2f2',GradientType=1 ); /* IE6-9 */
	background: linear-gradient(left, #424042 0%,#f2f2f2 99%); /* W3C */
	font-size: 12px;
	font-family: helvetica, arial, sans-serif;
	padding: 2px;
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
}
.strong {
	background-color: Green;
	background: #ffff00; /* Old browsers */
	background: -moz-linear-gradient(left, #ffff00 0%, #218400 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(0%,#ffff00), color-stop(100%,#218400)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left, #ffff00 0%,#218400 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left, #ffff00 0%,#218400 100%); /* Opera11.10+ */
	background: -ms-linear-gradient(left, #ffff00 0%,#218400 100%); /* IE10+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffff00', endColorstr='#218400',GradientType=1 ); /* IE6-9 */
	background: linear-gradient(left, #ffff00 0%,#218400 100%); /* W3C */
	display:inline-block;
}
.medium {
	background-color: orange;
	background: #ffff00; /* Old browsers */
	background: -moz-linear-gradient(left, #ffff00 0%, #f98900 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(0%,#ffff00), color-stop(100%,#f98900)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left, #ffff00 0%,#f98900 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left, #ffff00 0%,#f98900 100%); /* Opera11.10+ */
	background: -ms-linear-gradient(left, #ffff00 0%,#f98900 100%); /* IE10+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffff00', endColorstr='#f98900',GradientType=1 ); /* IE6-9 */
	background: linear-gradient(left, #ffff00 0%,#f98900 100%); /* W3C */
	display:inline-block;
}
.week {
	background-color: yellow;
	background: #ffff00; /* Old browsers */
	background: -moz-linear-gradient(left, #ffff00 0%, #fc1d00 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(0%,#ffff00), color-stop(100%,#fc1d00)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left, #ffff00 0%,#fc1d00 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left, #ffff00 0%,#fc1d00 100%); /* Opera11.10+ */
	background: -ms-linear-gradient(left, #ffff00 0%,#fc1d00 100%); /* IE10+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffff00', endColorstr='#fc1d00',GradientType=1 ); /* IE6-9 */
	background: linear-gradient(left, #ffff00 0%,#fc1d00 100%); /* W3C */
	display:inline-block;
}
.redMsg {
	background-color: red;
	background: red; /* Old browsers */
	display:inline-block;
	color: white;
}
.redMsg2 {
	background-color: red;
	background: red; /* Old browsers */
	display:inline;
	color: white;
}
.passwordPolicies{
	display: inline-block;
}

/* LEGACY COMPATIBILITY - PASSWORD VISIBILITY TOGGLE (EYE ICON) */
#login div#eye span svg,
#login div#eye2 span svg{
	fill:#818181;
}
#login div#eye span.inVisibleEye,
#login div#eye2 span.inVisibleEye{
	display:none;
}
#login div#eye,
#login div#eye2{ 
	position: absolute;
	top: 50%;
	right: 0.5em;
	transform: translateY(-50%);
	margin-top: 0;
	padding-left: 0;
}
#login.ux div#eye,  #login.ux div#eye2 {
    margin-right: 1em !important;
}
#login input[type=text], #login input[type=password] {
	padding-right: 2em;
}

/* LEGACY COMPATIBILITY - UX UTILITIES AND STATUS MESSAGES */
.ux .fa-stack.fa-1_8x.hidden-xs {
    height: 1.5em !important;
}
.ux .alert-danger {
    padding: 0.1em;
    background-color: transparent;
    border: none;
    color: #EB000F;
    line-height: 1rem;
    font-size: 0.7rem;
    width: 90%;
}
.ux #spLinkEmail a, .ux #spLinkEmail span {
    color: gray !important;
    font-size: 0.7rem !important;
}
#bottom span.ux {
    font-size: 70% !important;
}
#checkAcceptConditionLabel, 
#checkAcceptPoliciesLabel {
	font-weight: normal !important;
	font-size: var(--body_font-size, 12px) !important;
}

/* ============================================================================
 * SECTION 2: PRODUCT THEME - CORE LAYOUT
 * ============================================================================
 * Foundation, header, body/layout, buttons, and footer styling.
 * ============================================================================ */

/* PRODUCT THEME - FOUNDATION */
html{
  height: 100%;
  position: relative;
  font-family:var(--font-family,'Graphik Regular');
}

/* PRODUCT THEME - HEADER */
.main_header,
#mainHeader {
	width: var(--main_header_width, 100%);
	height: var(--main_header_height, 3.75rem);
	position: relative;
	background-color: #FFF;
	display: flex;
	justify-content: space-between;
	align-items: center
}

/* Unified h1 styling across all pages */
h1 {
	font-family: Graphik Semibold;
	font-weight: 700;
	font-style: normal;
	font-size: clamp(2rem, 3vw, 2.75rem);
	color: #111827;
	text-align: left;
}

.main_header.fijo,
.fijo#mainHeader {
	position: fixed;
	z-index: 1000;
	overflow: initial;
}

#mainHeader .enunciado1 {
	width: 14rem;
	float: left;
	margin-right: 1.04167%;
	margin-left: 0.7rem
}

#mainHeader .enunciado1 img {
	width: 60%;
	margin-top: -0.5rem;
}

#sidebar {
   /* padding-right: 1.5rem;*/
}

.sidebar-content {
	width:5.5rem;
}

#list-languages {
    font-size: 1rem;
    display: flex;
    margin-right: 1rem;
    margin-bottom: 0 ;
    width: 6rem;
    height: 3.75rem;
    align-items: center;
}

.languages.ux .dropbtn {
    color: black;
	width:100%;
	height: 4rem;
    border: none;
    padding-left: 2rem;
    margin-bottom: -0.3rem;
} 

.dropdown {
    position: relative;
	right: 3rem;
    width: 9rem;
    margin-bottom: 0 !important;
}


.dropdown-content a, .dropdown-content a:visited {
	text-decoration: none !important;
	color: black !important;
	border-bottom-color:white;
	border-top-color:white;
	border-width:5px;
	border-style: none;
	height: 4rem;
	width: 9.5rem;
	align-items: center;
    display: flex;
}

.dropdown-content, .dropbtn {
    color: black;
}

.dropdown-content {
	padding: 0;
	margin-top: 5px;
}

.dropdown-content a{
	padding: 1.4rem;
	padding-left: 0.8rem;
}

.dropdown:hover, .dropdown:focus, .dropdown-content a:hover, .dropdown-content a:focus, .languages.ux .dropbtn:focus {
    border-bottom-color: #460073;
	border-bottom-style: solid;	
	border-width: 5px;
	outline:0;
}

.arrowUp {
	display:none;
}

/* PRODUCT THEME - BODY / GENERAL */
body{
	line-height:0.2em;
	font-size: var(--body_font-size,12px) !important;
	min-height: 100vh;
    margin: 0;
	font-family:var(--root_font-family,'Graphik Regular');
	display: flex;
	flex-direction: column;
}

#container {
	margin-left:0px !important;	
	overflow:hidden;
	margin: 0 auto;
	display: flex;
	flex:1;
	align-items: center;
	justify-content: center;
}

.container {
	padding-left:0px !important;	
	padding-right:0px !important;	
}

#formbox, #errorbox {
	margin-left: auto;
	margin-right: auto;
	width: min(1320px, 96%) !important;
	z-index: 0;
}

#changepassbox #login .login-header{
	padding: 0%;
	padding-left: 2em;
	font-size: 12px !important;
}

/* PRODUCT THEME - BUTTONS (NON-AUTH) */
.btn-submit{
	color:  #fff !important;
	background-color: var(--main_header_color,#460073) !important;
	border-color: #71B7D0 !important;
	font-size:1.3em;
}

.btn-submit:disabled:hover {
    outline: none !important;
}

.btn-submit:hover {
	box-shadow: unset !important;
	outline: 2px solid #000 !important;
}

.btn-submit:focus {
	box-shadow: unset;
	outline: 2px solid #000;
}

.btn-submit:read-only {
  background-color: #d8aef9 !important;
}

.btn-self {
  padding: 0px 25px !important;
}

a:link, a:visited {
    color: blue;
    text-decoration: underline;
}

#logo1 {
	padding-top:20px;
}

.required {
    margin-top: 0rem;
    padding-bottom: 1.3rem;
    line-height: 1em;
}

.requiredinfo{
	margin-top: 0.125rem;
	font-family: 'Graphik Light';
	padding-bottom: 1.3rem;
	text-align: left;
	padding-top: 0.77rem;
}

/* PRODUCT THEME - FOOTER */
#mainFooter {
	background-color: #fbfbfb;
	margin: 0;
	height: 4.5rem;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	float: left;
	margin-right: 1.04167%;
	padding:0;
	font-family: var(--root_font-family,'Graphik Regular') !important;
}

.main_footer .firstfooter,
#mainFooter .firstfooter {
	justify-content: space-between;
	display: flex;
	flex-wrap: wrap;
	padding: 3.75rem;
	padding-top: 1.875rem;
	padding-bottom: 1.875rem;
	width: 100%;
	float: left;
	margin-right: 1.04167%;
	margin-right: 0;
	background-color: var(--main_footer_background_color,#7500c0);
	font-family: var(--root_font-family,'Graphik Regular');
}

.main_footer .firstfooter .conoce_content .conoce_logo,
#mainFooter .firstfooter .conoce_content .conoce_logo {
	width: 35%;
}

.main_footer .firstfooter .conoce_content .conoce_texto,
#mainFooter .firstfooter .conoce_content .conoce_texto {
	color: #FFF;
	font-size: 0.875rem;
	font-weight: normal;
	font-stretch: normal;
	font-style: normal;
	line-height: normal;
	letter-spacing: normal
}

.main_footer .firstfooter .conoce_content .conoce_texto .enlace,
#mainFooter .firstfooter .conoce_content .conoce_texto .enlace {
	color: #FFF;
	font-weight: bold;
	font-size: 0.875rem
}

.main_footer .firstfooter .conoce_content .conoce_texto .enlace:hover,
#mainFooter .firstfooter .conoce_content .conoce_texto .enlace:hover {
	outline: 5px auto -webkit-focus-ring-color;
    text-decoration: none !important;
    color: #fff !important;
}

.main_footer .firstfooter .fundacion,
#mainFooter .firstfooter .fundacion {
	width: 19%
}

.main_footer .firstfooter .fundacion img,
#mainFooter .firstfooter .fundacion img {
	width: 100%
}

.main_footer .firstfooter .fundacion .social,
#mainFooter .firstfooter .fundacion .social {
	color: #FFF;
	font-size: 1.55rem
}

.main_footer .firstfooter .fundacion .social,
#mainFooter .firstfooter .fundacion .social{
	line-height:1em;
}

.main_footer .firstfooter .fundacion .social:hover,
#mainFooter .firstfooter .fundacion .social:hover {
	outline: 5px auto -webkit-focus-ring-color;
    outline-offset: 1px;
}

.main_footer .enunciado10,
#mainFooter .enunciado10 {
	width: 100%;
	float: left;
	margin-right: 0.5688%;
}

.main_footer .enunciado10 img,
#mainFooter .enunciado10 img {
	width: 100%
}

.main_footer #copyr,
#mainFooter #copyr {
	width: 100%;
	float: left;
	margin-right: 1.04167%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0;
	padding: 1.9rem;
	background-color:var(--copyr_background_color,#460073);
}

.main_footer #copyr .copyright,
#mainFooter #copyr .copyright {
	width: 66%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.main_footer #copyr .copyright .texto,
#mainFooter #copyr .copyright .texto {
	color: #FFF;
	font-size: 0.69rem;
	font-weight: normal;
	font-stretch: normal;
	font-style: normal;
	line-height: normal;
	letter-spacing: normal;
	margin-right: 1.2rem;
}

.main_footer #copyr .copyright a:hover .texto,
#mainFooter #copyr .copyright a:hover .texto {
	text-decoration: underline
}

#mainFooter #copyr .copyright a:link {
	text-decoration: none !important;
}

.main_footer #copyr .accenture,
#mainFooter #copyr .accenture {
	width: 25%;
    line-height: 1em;
    font-size: 0.7rem;
}

#mainFooter #copyr .accenture div{
	text-align:right;
	color: white;
}

.main_footer #copyr .accenture img,
#mainFooter #copyr .accenture img {
	width: 100%
}

.bienvenida {
	width: 100%
}

.bienvenida a {
	text-decoration: underline
}

.bienvenida a,
.bienvenida span,
.bienvenida div,
.bienvenida li {
	font-size: 1.6rem;
    line-height: 1.9rem;
}

.bienvenida .flex_center {
	display: flex;
	justify-content: center;
	align-items: center
}

.bienvenida .flex_space_between {
	display: flex;
	justify-content: space-between
}

.bienvenida .enunciado5 {
    width: 49.47917%;
    float: left;
    margin-right: 1.04167%;
}

.bienvenida .enunciado8 {
    width: 89%;
    float: left;
    margin-right: 1%;
}

.bienvenida .enunciado10 {
	width: 100%;
	float: left;
	margin-right: 1.04167%
}

.bienvenida .enunciado10 img {
	width: 100%
}

.bienvenida .enunciado10_right {
    float: right;
    margin-right: 0;
}

.bienvenida .enunciado2 {
	width: 25%;
	float: left;
}

.bienvenida .enunciado2 img {
	width: 100%
}

.bienvenida .sin_margen {
    margin: 0;
}

.bienvenida .texto_pequeno {
    font-size: 0.815rem;
    line-height: 2.5rem;
}

.bienvenida .negrita {
    font-family: var(--root_font-family-bold,"Graphik Bold");
}

.bienvenida .seminegrita {
    font-family: var(--root_font-family-bold,"Graphik Semibold");
}

.bienvenida .light {
    font-family: var(--root_font-family-bold,"Graphik Light");
}

/* ============================================================================
 * SECTION 3: PRODUCT THEME - AUTH PAGES
 * ============================================================================
 * Styling for specific authentication pages: success, logout, error, etc.
 * ============================================================================ */

/* PRODUCT THEME - AUTH / LEGACY LOGIN MARKUP */
#login{
	background-color: #ffffff;
	border-color: var(--main_header_color,#460073);
	color: #000;
	font-family: var(--root_font-family,'Graphik Regular');
	padding-bottom: 1.6rem;
	border-top-width:0px;
	border-top-left-radius: 0;
    border-top-right-radius: 0;
    width: 100%;
	max-width:100%;
	margin-bottom: 1.2rem;
	float:left;
}

.heightLogin {	
	height: auto;
	min-height: 0;
}

/* Keep footer close to login content on login screen */
.login #container, .logout #container, .success #container { 
	min-height: auto;
	margin-top: 3.75rem; /* equal to header height*/
}
.error #container {
	min-height: auto;
}
#login .row {
	margin-top:0em;
	margin-bottom:1.5em;
	line-height: normal;
}

#login img{
	width: 90%;
}

#login .login-header {
	background:#fff !important;
	padding-left: 0em !important;
	padding-bottom: 0em !important;
}

#login input[type=text], #login input[type=password],
#login input[type=email]{
	border-color: #555555 !important;
	background: #fff;
	border-radius: 3px;
	color: #616161;
	-webkit-text-fill-color: black;
	-webkit-appearance: none;
	height: 1rem;	
	font-size: 0.85rem;
	padding-top: 0.5rem;
	padding-bottom: 0.45rem;
	padding-left: 0rem;
}

#login input[name=captcha]{
	margin-top: 0.85rem;
	width: 60% !important;
	height: auto;
}

#login input[type=text]:focus, #login input[type=password]:focus,
#login input[type=checkbox]:focus,
span#visibleEye:focus, span#inVisibleEye:focus, span#visibleEye2:focus, span#inVisibleEye2:focus,
imgg:focus{
	 outline: 2px solid #000000;
}

#login input[type=submit]:not(:disabled):not(.disabled):not([aria-disabled="true"]){
	border-radius: 3px;	
	width:100% !important;	
	background: #FFF !important;
    border: solid 2px #5a5a5a !important;
    color: #5a5a5a !important;
	font-size: 1.1rem;
    font-weight: 400;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: 1px;
    text-align: center;
}

#login .btn-login{	
	margin-top:1.5em;
	width:100% !important;
}

#login input[type=submit]:not(:disabled):not(.disabled):not([aria-disabled="true"]) {
	border: solid 2px var(--main_header_color,#FFFFFF) !important;
    background: var(--main_header_color,#460073) !important;
    color: #FFF !important;
}

.field { 
    height: 0px !important;
}

#login label, #changepassbox label{
	font-size: 0.85rem !important;
	margin-bottom: 0px;
	font-weight: bold;
	margin-bottom: 0.7rem;
}

#login select{
	border-color: var(--main_header_color,#460073);
	border-bottom-color: var(--main_header_color,#460073);
	width: 100%;
}

#login hr{
	border-color: var(--main_header_color,#460073);
}

#login .fa-inverse, #logout .fa-sign-out-alt, #maintenance .fa-cogs, #success .fa-user-check,
#success .fa-envelope{
	color: var(--main_header_color,#460073);
}

#maintenance p{
	line-height: 1em;
	margin-top:1em ;		
	font-size:1.2em;
}

#maintenance{
	height: 45em !important;
}

#login .login-header .fa-circle {
    color: #ffffff;
}

.login-header {
    text-align: center;    
    background-color: #d5d5d5;    
    margin-bottom: 0px;
    padding-bottom: 0px;
	padding-top: 0px;
	font-size:1.2em;
	font-weight:bold;
	font-family: var(--root_font-family-bold,'Graphik Bold');
	border-style:solid;
	border-color:var(--main_header_color,#460073);
	background: #fff;	
	width:100%;
	border-style:solid;
	border-width:0px;
	border-radius:3px;
	margin: 0px !important;	
}

.login-header h1 {
	text-shadow: 0 1px 0 rgba(238, 187, 163, 0.5);
	margin-top: 0;
}

#login .header-title h1{
	font-size:2em;
	font-weight:bold;
	margin-bottom: .5rem;
	font-family: var(--root_font-family-predefined,Graphik SemiBold);
	line-height: 1.2;
	color: inherit;
	margin-top: 0;
}

.header-title {
	margin-bottom: 0.5em !important;
}

#login .header-subtitle h2{
	font-size:1.1em;
	line-height:1.5em;
	font-weight:normal;
	margin-bottom:0.2em;
	margin-top: 0;
}

.l2e-form-box .header-subtitle.row, #changepassbox .header-subtitle.row {
    margin-bottom: 0rem !important;
}

@font-face {
    font-family: 'Graphik Bold';
    src: url("/cas/fonts/Graphik-Bold-a2ad888ee7706e84cb509d5a9cce6f1b.eot");
    src: url("/cas/fonts/Graphik-Bold-a2ad888ee7706e84cb509d5a9cce6f1b.eot?#iefix") format("embedded-opentype"),url("/cas/fonts/Graphik-Bold-2ca4c9fcc1ad6864928d40f273fa7e4a.woff2") format("woff2"),url("/cas/fonts/Graphik-Bold-d98ed4b8c033815b10842bdac8c69372.woff") format("woff"),url("/cas/fonts/Graphik-Bold-6d0adc7f1398537ad42167df46093cf7.ttf") format("truetype"),url("/cas/fonts/Graphik-Bold-2bb0183dd2f9125e84672d69c86d65c1.svg#Graphik-Bold") format("svg");
    font-weight: bold;
    font-style: normal
}

@font-face {
    font-family: 'Graphik Regular Italic';
    src: url("/cas/fonts/Graphik-RegularItalic-6f14fd858028cc104132c8709911eb0e.eot");
    src: url("/cas/fonts/Graphik-RegularItalic-6f14fd858028cc104132c8709911eb0e.eot?#iefix") format("embedded-opentype"),url("/cas/fonts/Graphik-RegularItalic-d23f65df4d8041e8646959792ac29867.woff2") format("woff2"),url("/cas/fonts/Graphik-RegularItalic-2eb72f6d742a98f0ecb10c5e0038481b.woff") format("woff"),url("/cas/fonts/Graphik-RegularItalic-c58d0a989157529520424463aa2b6042.ttf") format("truetype"),url("/cas/fonts/Graphik-RegularItalic-9d9b8df27215a86d02ffc376b96cbb67.svg#Graphik-RegularItalic") format("svg");
    font-weight: normal;
    font-style: italic
}

@font-face {
    font-family: 'Graphik Regular';
    src: url("/cas/fonts/Graphik-Regular-d50d6acec25a9d6e50db46a1fac28a82.eot");
    src: url("/cas/fonts/Graphik-Regular-d50d6acec25a9d6e50db46a1fac28a82.eot?#iefix") format("embedded-opentype"),url("/cas/fonts/Graphik-Regular-2e2c5b799ba925d31f062ff8b2190306.woff2") format("woff2"),url("/cas/fonts/Graphik-Regular-174cdf1f8023ff26ecb53dda08bb51d0.woff") format("woff"),url("/cas/fonts/Graphik-Regular-9968f43003b348dba36a45324310ac9d.ttf") format("truetype"),url("/cas/fonts/Graphik-Regular-8810eba9d6dca210bdd749b9e42aa146.svg#Graphik-Regular") format("svg");
    font-weight: normal;
    font-style: normal
}

@font-face {
    font-family: 'Graphik Light';
    src: url("/cas/fonts/Graphik-Light-a86d0a9966e670c5f56e2782f0b8932d.ttf") format("truetype");
    font-weight: 300;
    font-style: normal
}

#fm1 label{
	color: #000 ;
	font-family: var(--root_font-family,'Graphik Regular');
	font-weight: bold;
}

h1 span{
	font-size: 18px;
    margin-bottom: 10px;
	display: block;
    -webkit-margin-before: 0.67em;
    -webkit-margin-after: 0.67em;
    -webkit-margin-start: 0px;
    -webkit-margin-end: 0px;
	font-weight: bold;
}

#self-account {
    text-align: center;
}

.smallItalics {
    font-size: 0.8em;
    font-style: italic;
}

.meter {
    width: 225px !important;
    min-width: 225px !important;
}

.policies span{
	font-weight: normal !important;
	color: #337722 !important;;
}

.policies {
	line-height: 1em;
}

span.accesskey {
	font-weight: normal !important;
}

#fm1 input{
	border-color: #000 !important;
	border-bottom-color: #000;
}

fieldset div .disabled {
    background: none repeat scroll 0 0 var(--main_header_color,#460073) !important;
}

/* PRODUCT THEME - AUTH PAGE - SUCCESS */
/* Success: use centered box layout like other box-center auth pages */
.success .l2e-form-box.box-center {
	display: block;
	width: 40vw !important;
	max-width: calc(100% - 2rem);
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: auto;
	margin-right: auto;
}

.success #success.l2e-form-box.box-center {
	float: none !important;
	width: 40vw !important;
	max-width: calc(100% - 2rem) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	height: auto;
	min-height: 0;
	padding-top: 1rem;
	padding-bottom: 1.2rem;
	margin-bottom: 1rem;
	border: 0;
	background: transparent;
}

.success #success .l2e-success-panel {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0;
}

.success #success .l2e-success-illustration {
	display: flex;
	justify-content: center;
	width: 100%;
	margin-bottom: 0.8rem;
}

.success #success .l2e-success-illustration img {
	width: clamp(4.5rem, 8vw, 7.5rem);
	height: auto;
}

.success #success .header-title,
.success #success .l2e-success-copy {
	width: 100%;
	margin: 0;
	justify-content: center;
}

.success #success .header-title.row,
.success #success .l2e-success-copy.row,
.success #success .success-bottom.row {
	margin-left: 0;
	margin-right: 0;
}

.success #success h1,
.success #success p,
.success #success a {
	text-align: center;
}

.success #success h1 {
	margin-bottom: 0.35rem;
	line-height: 1.15;
}

.success #success .l2e-success-copy p {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 1.1rem;
	line-height: 1.4;
	/*max-width: 32ch;*/
}

.success #success .success-bottom {
	position: static;
	top: auto;
	width: 100%;
	margin-top: 1.55rem;
}

.success #success #fmSuccess {
	width: 100% !important;
}

.success #success .btn-continue {
	width: 100%;
	border-radius: 0;
}

/* PRODUCT THEME - AUTH PAGE - LOGOUT */
/* Logout split box: image left, content right */
#logout, #maintenance {
	background-color: #ffffff;
	border-color: var(--main_header_color,#460073);
	color: #000;
	font-family: var(--root_font-family,'Graphik Regular');
	padding-top: 17%;
	padding-bottom: 3em;
	border-top-left-radius: 0;
    border-top-right-radius: 0;
    width: 100%;
	height: 38.5em;
	border-width: 1px;
	border-style: solid;
	margin-bottom: 20em;
}

#logout p, #logout a, #success p, #success a {
    font-size: 1.5em;
    line-height: 1.3em;    
    text-align: center;
}

#logout p {
    margin-top: 0;
}

#logout a, #success a {
	line-height: 1.2em !important;
}

#logout .logout-bottom, #success .success-bottom {
	position: relative;
    top: 4em;
}

#headerLogout {
    margin-top: 0;
    line-height: 1.2;
    color: inherit;
}

.logout #logout.box-2-split {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: start;
	column-gap: clamp(1rem, 2.8vw, 2.5rem);
	padding: 0.75rem 0 !important;
	height: auto !important;
	margin-bottom: 1rem !important;
	border: none;
}

.logout #logout.box-2-split .l2e-logout-panel {
	align-self: start;
	padding-left: 10%;
	padding-right: 0;
}

.logout #logout.box-2-split .l2e-logout-panel p,
.logout #logout.box-2-split .l2e-logout-panel span,
.logout #logout.box-2-split .l2e-logout-panel a {
	text-align: left;
}

.logout #logout.box-2-split .l2e-login-title-wrap,
.error #error.box-2-split .l2e-login-title-wrap {
	margin-bottom: 0.35rem;
}

.logout #logout.box-2-split .l2e-login-title {
	margin: 0;
	line-height: 1.08;
	font-family: var(--root_font-family-predefined, Graphik SemiBold);
	font-weight: 600;
	color: #111827;
}

.logout #logout.box-2-split .l2e-logout-message {
	display: block;
	margin: 0.5rem 0 0.9rem 0;
	font-size: 1rem;
	line-height: 1.35;
	font-weight: 400;
	color: #374151;
}

.error #error.box-2-split .l2e-error-panel .header-title,
.logout #logout.box-2-split .l2e-logout-panel .header-title {
	margin-top: 0;
	margin-bottom: 0.35rem;
	justify-content: flex-start !important;
}

.logout #logout.box-2-split .logout-bottom {
	top: 1.2rem;
}

/* PRODUCT THEME - AUTH PAGE - ERROR */
/* Error split box: image left, content right */
.error #error.box-2-split {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: start;
	column-gap: clamp(1rem, 2.8vw, 2.5rem);
	padding: 0.75rem 0 !important;
	height: auto !important;
	margin-bottom: 1rem !important;
	border: none;
	width: 100%;
}

.error #error.box-2-split .l2e-error-illustration {
	padding: 0;
	min-height: 0;
	width: 100%;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}

.error #error.box-2-split .l2e-error-illustration img {
	width: calc(100% - 1rem) !important;
	max-width: 100%;
	height: auto;
	object-fit: contain;
	max-height: 430px;
}

.error #error.box-2-split .l2e-error-panel {
	align-self: start;
	padding-left: 10%;
	padding-right: 0;
}

.error #error.box-2-split .l2e-error-panel .l2e-login-title {
	margin: 0;
	line-height: 1.08;
	font-family: var(--root_font-family-predefined, Graphik SemiBold);
	font-weight: 600;
	color: #111827;
}

.error #error.box-2-split .l2e-error-panel .l2e-error-message {
	display: block;
	margin: 0.5rem 0 0.9rem 0;
	font-size: 1rem;
	line-height: 1.35;
	font-weight: 400;
	color: #374151;
	text-align: left;
}

/* PRODUCT THEME - AUTH PAGE - REGISTRATION */
/* Registration look remediation */
.login #selfregistrationbox .l2e-register-panel {
	padding-left: 10%;
}

.login #selfregistrationbox .l2e-register-link {
	color: #2563eb;
	text-decoration: none;
}

.login #selfregistrationbox .l2e-register-link:hover,
.login #selfregistrationbox .l2e-register-link:focus {
	text-decoration: underline;
}

.login #selfregistrationbox .l2e-register-panel form {
	margin-top: 0.6rem;
}

.login #selfregistrationbox #login .width100 {
	width: 100% !important;
}

.login #selfregistrationbox .l2e-register-captcha-row {
	display: grid;
	grid-template-columns: minmax(0, 25rem) minmax(10rem, 12rem);
	gap: 0.2rem;
	align-items: center;
}

.captcha-style{
	width: 100% !important;
}
.login #selfregistrationbox .l2e-register-captcha-row .col-md-8,
.login #selfregistrationbox .l2e-register-captcha-row .col-md-4 {
	width: 100%;
	max-width: 100%;
	flex: none;
}

/* PRODUCT THEME - AUTH PAGE - RECOVERY */
/* Recovery by email UX form */
.login #formbox .l2e-recovery-panel,.login #formbox .l2e-change-panel, .login #changepassbox .l2e-recovery-panel, .success #success .l2e-success-panel {
	width: 100%;
	padding-left: 0;
	padding-right: 0;
}

.login #formbox .l2e-recovery-back-row, .login #formbox .l2e-change-back-row, .login #changepassbox .l2e-recovery-back-row {
	margin-bottom: 1.5rem;
}

.login #formbox .l2e-recovery-back, 
.login #changepassbox .l2e-change-back, 
.login #changepassbox .l2e-recovery-back, 
.login #formbox .l2e-change-back{
	border: none;
	background: transparent;
	padding: 0;
	font-size: 2rem;
	line-height: 1;
	color: #111827;
	cursor: pointer;
}

.login #formbox .l2e-hidden-title {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.login #formbox .l2e-recovery-field-row, .login #formbox .l2e-change-field-row {
	margin-bottom: 0.9rem;
}

.login #formbox #fmRecoveryByEmail .l2e-recovery-field-row, .l2e-change-field-row {
	margin-left: 0;
	margin-right: 0;
}

.login #formbox #fmRecoveryByEmail .l2e-recovery-field-row .col-md-12, .l2e-change-field-row
.login #formbox #fmRecoveryByEmail .l2e-recovery-field-row .field, l2e-change-field-row .field
.login #formbox #fmRecoveryByEmail .l2e-recovery-field-row .width100, .l2e-change-field-row .width100 {
	width: 100%;
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}

.login #formbox #fmRecoveryByEmail .l2e-recovery-field-row .col-md-12, .l2e-change-field-row .col-md-12 {
	float: none;
}

.login #formbox #fmRecoveryByEmail .l2e-recovery-field-row label, .l2e-change-field-row label,
.login #formbox #fmRecoveryByEmail .l2e-recovery-field-row .l2e-recovery-input, .l2e-change-field-row .l2e-change-input {
	display: block;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.login #formbox #fmRecoveryByEmail .row.btn-row {
	margin-top: 0.55rem;
	margin-bottom: 0;
}

/* ============================================================================
 * SECTION 4: PRODUCT THEME - AUTH THEME & CONTROLS
 * ============================================================================
 * Shared auth utilities, typography, form controls, buttons, and validation.
 * ============================================================================ */

/* PRODUCT THEME - AUTH LAYOUTS - SHARED CONTAINER OVERRIDES */
/* Final responsive login/registration container overrides */
.login #formbox,
.login #selfregistrationbox,
.login #changepassbox {
	max-width:90vw !important;
}

/* changepassbox is a Bootstrap row; keep inner wrapper full-width so box-center can truly center */
.login #changepassbox {
	display: flex;
	justify-content: center;
}
/*
.login #changepassbox > div {
	width: 100%;
	display: block;
}*/

.login #formbox {
	z-index: 0;
}

/* PRODUCT THEME - AUTH LAYOUTS - SHARED FORM BOX VARIANTS */
.login .l2e-form-box {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

/* Box-2-split: Image on left (50%), form on right (50%), full-width on mobile with image hidden */
.login .l2e-form-box.box-2-split,
.success .l2e-form-box.box-2-split
 {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: start;
	column-gap: clamp(1rem, 2.8vw, 2.5rem);
	row-gap: 1rem;
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	margin-bottom: 0.5rem;
	width: 100%;
}
.success .l2e-form-box.box-2-split{
	width:90% !important;
}

/* Box-center: Centered form (33.333vw on desktop, full-width with margins on mobile) */
.login .l2e-form-box.box-center {
	display: block;
	width: 35%;
	max-width: calc(100% - 2rem);
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: auto;
	margin-right: auto;
}

/* Legacy #login sets float/width globally; explicitly neutralize that for centered variants */
.login #login.l2e-form-box.box-center {
	float: none !important;
	width: 35%;
	max-width: calc(100% - 2rem) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.login .l2e-form-box.box-center .login-header,
.login .l2e-form-box.box-center .header-subtitle,
.login .l2e-form-box.box-center form {
	width: 100%;
}

/* Keep split-layout hero images at a consistent height across auth pages */
.login #login .l2e-login-illustration,
.logout #logout .l2e-logout-illustration,
.success #success .l2e-success-illustration,
.login #formbox .l2e-recovery-illustration {
	padding: 0;
	min-height: 0;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;	
	flex-direction: column;
}

.login #selfregistrationbox .l2e-register-illustration {
	padding-top: 4rem !important;
}

#infoBodyl2e{
	position: relative;
	margin-top: 1rem;
	font-size: 1rem;
	line-height: 1.2rem;
	justify-content: center; 
	text-align: center;
}
.login #login .l2e-login-illustration img,
.login #selfregistrationbox .l2e-register-illustration img,
.login #formbox .l2e-recovery-illustration img,
.l2e-change-illustration img,
.success #success .l2e-success-illustration img,
.login #changepassbox .l2e-recovery-illustration img,
.logout #logout .l2e-logout-illustration img {
	width: calc(100% - 1rem) !important;
	max-width: 100%;
	height: auto;
	object-fit: contain;
	max-height: 430px;
}
.l2e-change-illustration img,
.login #changepassbox .l2e-recovery-illustration img {
	margin-top: 4rem
	}
.login #login .l2e-login-panel,
.login #login .l2e-conditions-panel {
	padding-left: 10%;
	padding-right: 0;
}

/* PRODUCT THEME - AUTH THEME - SHARED TYPOGRAPHY, FIELDS AND VALIDATION */
.login .l2e-form-box .header-subtitle h2,
.login .l2e-form-box .l2e-register-subtitle,
.login .l2e-form-box .l2e-recovery-subtitle h2,
.l2e-change-subtitle h2
.login .l2e-form-box .l2e-login-subtitle {
	margin: 0.5rem 0 0.9rem 0;
	font-size: 1rem;
	line-height: normal;
	font-weight: 400;
	color: #374151;
}

.login .l2e-form-box .row {
	margin-top: 0;
	margin-bottom: 0.85rem;
	margin-left: 0;
	margin-right: 0;
}

.login .l2e-form-box label {
	display: block;
	margin-bottom: 0.35rem;
	font-size: 0.95rem !important;
	line-height: 1.2;
	font-weight: 600;
	color: #111827;
}

.login .l2e-form-box input[type=text],
.login .l2e-form-box input[type=password],
.login .l2e-form-box input[type=email],
.login .l2e-form-box select,
.login .l2e-form-box textarea,
.login .l2e-form-box .l2e-recovery-input,
.l2e-change-input {
	width: 100%;
	box-sizing: border-box;
	height: 3.1rem;
	padding: 0.55rem 0.85rem;
	border: 1px solid #9ca3af !important;
	border-radius: 0;
	background: #ffffff;
	font-size: 1rem !important;
	color: #111827;
}

.login .l2e-form-box div[id^=eye] {
	position: absolute;
	right: 0.75rem;
	top: 50%;
	transform: translateY(-50%);
	color: #111827;
}

.login .l2e-form-box div[id^=eye] span svg {
	height: 25px;
	width: 25px;
}

.login .l2e-form-box div[id^=eye] span.inVisibleEye {
	display: none;
}

.login .l2e-form-box input[type=submit],
.login .l2e-form-box button.btn {
	width: 100% !important;
	min-height: 3.35rem;
	border-radius: 0;
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: 0.2px;
}

.login .l2e-form-box .errfield.alert-danger,
.login .l2e-form-box .alert.alert-danger,
.login .l2e-form-box .validatefield.errfield {
	margin-top: 0.35rem;
	margin-bottom: 0;
	padding: 0.55rem 0.7rem;
	font-size: 0.93rem;
	line-height: 1.25;
}

/* PRODUCT THEME - AUTH THEME - SHARED BUTTONS */
/* Unified button styling for CAS auth flows */
body#cas .l2e-form-box :is(input[type=submit], button.btn, .btn-submit, .btn-login, .btn-expiracy),
body#cas .l2e-form-box :is(input[type=submit], button.btn, .btn-submit, .btn-login, .btn-expiracy):is(:hover, :focus) {
  background: #460073 !important;
  color: #FFFFFF !important;
  border: 1px solid #FFFFFF00 !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  font-family: var(--root_font-family-predefined, Graphik SemiBold) !important;
}

body#cas .l2e-form-box :is(input[type=submit], button.btn, .btn-submit, .btn-login, .btn-expiracy):is(:disabled, .disabled, [aria-disabled="true"]) {
  background: #CFCFCF !important;
  color: #555555 !important;
  border: 1px solid #FFFFFF00 !important;
  box-shadow: none !important;
  cursor: not-allowed;
}

/* PRODUCT THEME - AUTH THEME - SHARED BUTTON ROWS */
/* Full-width action buttons inside auth form boxes */
.login .l2e-form-box .btn-row,
.login .l2e-form-box .l2e-btn-row {
	width: 100%;
	margin-left: 0;
	margin-right: 0;
}

.login .l2e-form-box .btn-row > div,
.login .l2e-form-box .l2e-btn-row > div,
.login .l2e-form-box #Dbutton {
	width: 100%;
}

.login .l2e-form-box input[type=submit],
.login .l2e-form-box button.btn,
.login .l2e-form-box .btn-submit,
.login .l2e-form-box .btn-login,
.login .l2e-form-box .l2e-submit {
	display: block;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.login .l2e-form-box .ms-auto {
	margin-left: 0 !important;
}

/* PRODUCT THEME - AUTH THEME - PROCESSING STATE */
/* Show processing cursor while login request is in flight */
body.l2e-processing,
body.l2e-processing * {
	cursor: progress !important;
}

/* PRODUCT THEME - AUTH THEME - SHARED FIELD STATES */
/* Unified rectangular fields in auth flows (MFA OTP boxes excluded) */
.login .l2e-form-box :is(
  input[type=text],
  input[type=password]
):not(.l2e-otp-digit),
.login .l2e-form-box :is(select, textarea) {
  border: 1px solid #555555 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  padding: 0.6rem 0.75rem !important;
  min-height: 2.5rem;
  color: #111827;
  outline: none;
  box-shadow: none;
}

.login .l2e-form-box :is(
  input[type=text],
  input[type=password]
):not(.l2e-otp-digit):focus,
.login .l2e-form-box :is(select, textarea):focus {
  border-color: #8a14ff !important;
  outline: 2px solid rgba(138, 20, 255, 0.18);
  outline-offset: 0;
}

.login .l2e-form-box :is(
  input[type=text],
  input[type=password]
):is([aria-invalid="true"], .is-invalid):not(.l2e-otp-digit),
.login .l2e-form-box :is(select, textarea):is([aria-invalid="true"], .is-invalid) {
  border-color: #dc2626 !important;
  outline: 2px solid rgba(220, 38, 38, 0.16);
  outline-offset: 0;
}

/* PRODUCT THEME - AUTH UTILITIES AND SHARED STATUS ELEMENTS */
span#visibleEye, span#inVisibleEye, span#visibleEye2, span#inVisibleEye2 {
	font-size:0.7em;
	font-weight:bold;
}

span#visibleEye:hover, span#inVisibleEye:hover, span#visibleEye2:hover, span#inVisibleEye2:hover {
	cursor:pointer;
}

#Dbutton {
	width: 100%;
	margin-top: 1rem;
}

.width50{
	width: 50% !important;
}

#textInfo {
	color: white;    
    font-family:var(--root_font-family,'Graphik Regular');
    width: 32%;
    text-align: left;
    line-height: 1.6em;
	position:absolute;
	top: 12rem;
    left: 60em;
	float:left;
}

#infoTitle{
	font-size: 2.5em;
    margin-bottom: 0.6em;
    font-weight: bold;
	letter-spacing: 0.05em;
	font-family: var(--root_font-family-predefined,Graphik Bold);
	color: var(--infoTitle_color,inherit);
}

#infoBody{
	font-size: 1.4em;
	line-height:1.5em;
	letter-spacing: 0.05em;
}

#infoBody a {
    color: white;
}

#warningBrowser {
	color: white;    
    font-family: var(--root_font-family-bold,'Graphik Bold');
    width: 80%;
    text-align: left;
	position:absolute;
	top:10rem;
    left: 4rem;
	float:left;
	display:none;
	line-height:12em;
}

#textCookie{
	line-height: 0.8rem !important;
}

#cookieBody{
	font-size:0.69rem !important;
	margin-top: 1em;
	text-align: justify;
	font-style: italic;
	font-weight: normal;
}

#login div#width100check{
	margin-bottom: 0.7em;
	line-height: 1.5em;
}

.tipMessage{
    text-align: left;
    line-height: 1.3em;
    margin-bottom: 0em !important;
}

.errfield.alert-danger {
    padding: 0.1em;
    background-color: transparent;
    border: none;
    color: #EB000F;
    line-height: 1rem;
    font-size: 0.7rem;
}

.alert-danger {
    margin-top: 0.75rem;
    line-height:1.2em;	   
	border: unset;
	background: unset;
	color: #EB000F; 
}

.alert-success {
    margin-top: 1rem;
    line-height:1.2em;	    
}

.logout #content, .success #content {
    background: transparent !important;
}

.btn-expiracy{
	font-size: 0.9rem;
	font-weight: 500 !important;
}

#mainHeader #noprod {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	float: none;
	width: clamp(4.25rem, 8.5vw, 7.25rem);
	min-width: 18%;
	max-width: 30%;
	z-index: 2;
	display: flex;
	justify-content: center;
	align-items: center;
	pointer-events: none;
}

#mainHeader #noprod img {
	display: block;
	width: 100%;
	height: auto;
	max-height: calc(var(--main_header_height, 3.75rem) - 0.5rem);
	object-fit: contain;
}

#capslock-on, #caps-on-user, #capslock-on-cp {
	color: #EB000F;
    line-height: 1rem;
    font-size: 0.7rem;
    display:none;
}

#ot-sdk-btn.ot-sdk-show-settings, #ot-sdk-btn.optanon-show-settings {
    color: white !important;
    border: none !important;
    height: auto;
    white-space: normal;
    word-wrap: break-word;
    padding: 0 !important;
    font-size: 0.69rem;
    line-height: 1 !important;
    cursor: pointer;
	 background-color: transparent !important;
}

#ot-sdk-btn.ot-sdk-show-settings:hover, #ot-sdk-btn.optanon-show-settings:hover {
    color: #fff !important;
    background-color: transparent !important;
    text-decoration: underline !important;
}

a#ancla_cont {
    position: absolute;
    top: -1000em;
    left: 0;
    color: #5a5a5a;
}

a#ancla_cont:focus {
    display: block;
    position: static;
    margin-bottom: 1rem;
    margin-top: 1rem;
    background-color: black;
    color: white;
    min-height: 2em;
    line-height: 2em;
    padding-left: 1em;
}

#usernameRules, #passwordRules{
    display: none;
    background-color: white;
    color: black;
    font-family: var(--root_font-family,'Graphik Regular');
    font-size: 1.2em;
    padding-bottom: 0em;
    position: relative;
}

#selfregistrationbox #usernameRules{
	display: block;
}

.rulesTitle{
	font-family: var(--root_font-family-bold,'Graphik Bold');
	font-size: 1.3em;
	color: var(--main_header_color,#460073);
	margin-bottom: 0.5em !important;
	margin-top: 0.5em !important;
}

.toggle.fa.fa-question-circle.fa-question-size{
		display: none;
}

.sr-only{
	border:0 none;
	clip:rect(0px,0px,0px,0px);
	height:1px;
	margin:-1px;
	overflow:hidden;
	padding:0;
	position:absolute;
	width:1px;
}

.error{
	color: #990000;
    font-weight: bold;
}

.success{
	color: black;
    font-weight: bold;
}

#bullet {
    width: 4% !important;
}

.no-bullets li {
    margin-bottom: 0.5em;
}

#checkAcceptCondition,
#checkAcceptPolicies{
	margin-right: 0.4em !important;
}

.lex-web-ui-iframe {
	min-width: calc(35vw - 3vw) !important;
}

div#termsForm .btn-submit {
    font-size: 1.1rem !important;
    padding: 9.5px 25px !important;   
    width: 100% !important;
    cursor:pointer;
	font-weight: 400 !important;
}

.col-md-6, .col-md-12{
	position: relative;
}

#onetrust-banner-sdk, #onetrust-pc-sdk, #ot-sdk-cookie-policy, #ot-sync-ntfy {
    font-size: 14px !important;
}

/* ============================================================================
 * SECTION 5: RESPONSIVE OVERRIDES (MEDIA QUERIES)
 * ============================================================================
 * Browser/device size-specific overrides for mobile, tablet, and desktop.
 * ============================================================================ */

@media (max-width: 479px){
	#login input[type=submit]:not(:disabled):not(.disabled):not([aria-disabled="true"]) {
	    padding-left: 0.55rem;
	   /* width: 64% !important;*/
	    font-size: 0.7rem !important;
	}
	.toggle.fa.fa-question-circle.fa-question-size{
		display: inline-block !important;
	}
	
	/* HEADER 479px */
	.main_header,
	#mainHeader {
		height: 3.119rem;
	}
	#mainHeader .enunciado1 {
		width: 30%;
		float: left;
		margin-top: -0.1rem;
		margin-left: 0.9rem;
	}

	#textInfo { 
		width: 85% !important;
		left: 7% !important;
	}
	#login{
		margin-bottom:24em;
	}
	#login label{
		font-size: 3.8vw!important;
	}
	.logout #textInfo { 
		top: 65% !important;
	}
	#formbox, #selfregistrationbox, #changepassbox {
		margin-top: 3.35rem;
		margin-left: auto;
		margin-right: auto;
		width: 94% !important;
		z-index: 0;
	}
	.btn-expiracy {
		font-size: 0.63rem !important;
	}
	.heightLogin {
	    height: auto;
	    min-height: 0;
	}
	
	/* FOOTER 479px */
	.main_footer,
	#mainFooter {
		background-color: #fbfbfb;
		margin: 0;
		height: 4.5rem;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap
	}
	.main_footer .footerControls,
	#mainFooter .footerControls {
		margin-top: 0.5rem
	}
	.main_footer .firstfooter,
	#mainFooter .firstfooter {
		justify-content: space-between;
		display: flex;
		padding: 2rem;
		width: 100%;
		float: left;
		margin-right: 1.04167%;
		margin-right: 0;
		background-color: var(--main_footer_background_color,#7500c0);
	}
	.main_footer .firstfooter .conoce_content,
	#mainFooter .firstfooter .conoce_content {
		width: 71%;
	}
	.main_footer .firstfooter .conoce_content .conoce_logo, 
	#mainFooter .firstfooter .conoce_content .conoce_logo {
	    margin-bottom: 0.4rem;
	}
	.main_footer .firstfooter .conoce_content .conoce_logo img,
	#mainFooter .firstfooter .conoce_content .conoce_logo img {
		width: 100%
	}
	#mainFooter #copyr .copyright {
    width: 66%;
	}
	#mainFooter .firstfooter .flex_center {
		flex-wrap: nowrap;
	}
	.main_footer .firstfooter .conoce_content .conoce_texto,
	#mainFooter .firstfooter .conoce_content .conoce_texto {
		color: #FFF;
		font-size: 0.78rem
	}
	.main_footer .firstfooter .fundacion .social, #mainFooter .firstfooter .fundacion .social {
	    font-size: 1.25rem;
	}
	.main_footer .firstfooter .fundacion,
	#mainFooter .firstfooter .fundacion {
		width: 20%;
		margin-right: 2rem;
	}
	.bienvenida .enunciado8 {
	    margin-right: 2%;
	}
	.main_footer .enunciado10,
	#mainFooter .enunciado10 {
		width: 100%;
		float: left;
		margin-right: 1.04167%;
		margin-bottom: 1rem;
	}
	.main_footer .enunciado10 img,
	#mainFooter .enunciado10 img {
		width: 100%
	}
	.main_footer #copyr .copyright,
	#mainFooter #copyr .copyright {
		flex-flow: wrap
	}
	.main_footer #copyr .copyright .texto,
	#mainFooter #copyr .copyright .texto {
		font-size: 0.68rem;
		width:100%;
	}
	.main_footer #copyr .copyright a, #mainFooter #copyr .copyright a {
		width: 100%;
	}
	.main_footer #copyr .copyright a:hover .texto,
	#mainFooter #copyr .copyright a:hover .texto {
		text-decoration: underline
	}
	.main_footer #copyr .accenture,
	#mainFooter #copyr .accenture {
		width: 15%
	}
	.main_footer #copyr .accenture img,
	#mainFooter #copyr .accenture img {
		width: 100%
	}
	.bienvenida a,
	.bienvenida span,
	.bienvenida p,
	.bienvenida div,
	.bienvenida li {
		line-height: 1.1rem
	}
	
	.bienvenida p {
		font-size: 0.78rem;
	}
	.bienvenida {
		width: 100%
	}
	.bienvenida .flex_center,
	.bienvenida .flex_center_vert,
	.bienvenida .flex_top_vert {
		flex-wrap: wrap
	}
	.bienvenida .texto_pequeno {
	    line-height: 1rem;
	    font-size: 0.7rem;
	}
	.main_footer .firstfooter .conoce_content .conoce_texto .enlace, #mainFooter .firstfooter .conoce_content .conoce_texto .enlace {
		font-size: 0.71rem;
	}
	.bienvenida .enunciado2 {    
    	width:0.1%;
    	margin-top:1rem;
    	margin-right: 1.5rem;
	}
	.opt.logo {
	    color: #00baff;
	    font-weight: 700;
	    font-size: 13pt;
	    color: white;
	    width: 14%;
	}
	.row.sinpadding.header-ang {
	    display: flex;
	    align-items: center;
	    justify-content: space-between;
	    height: 8rem;
	}
	#logout, #maintenance, #success{
		height: 35em !important;
	}	
	#logout .header-title span, #maintenance .header-title span, #success .header-title span{
		line-height: 1.2em;
	}
	#logout p, #success p{
		line-height: 1.2em;
	}	
	#maintenance p{
		line-height: 1em;
		margin-top:0.5em !important;		
		margin-bottom:0em !important;		
		font-size:1.2em;
	}	
	.tipMessage {
		font-size: 0.9em;
	}
	#mainHeader #noprod img {
		width: 100%;
	}
	#warningBrowser {
		top: 6rem !important;
		left: 3rem !important;
		line-height: 6em !important;
	}
}

@media only screen and (min-width: 480px) and (max-width: 767px){
	/* HEADER 480-767px */
	.main_header,
	#mainHeader {
		height: 3.119rem;
	}
	#mainHeader .enunciado1 {
		width: 35%;
		float: left;
		margin-top: -0.1rem;
		margin-left: 1.05rem;
	}

	#login{
		max-width:100%;
		margin-bottom:25em;
	}
	.login-header {
		width:100% !important;
	}
	#formbox, #selfregistrationbox, #changepassbox{
		margin-top: 13%;
    	margin-left: 5%;
    	width: 90% !important;
    	z-index:0;
	}
	.logout #textInfo { 
		top: 61% !important;
	}
	
	/* FOOTER 480-767px */
	#mainFooter .firstfooter .conoce_content .conoce_logo {
		width: 35%
	}
	#mainFooter .firstfooter .fundacion img {
		width: 80%
	}
	#mainFooter #copyr .accenture {
		width: 15%;
		margin-left: 0.7rem
	}
	.main_footer,
	#mainFooter {
		background-color: #fbfbfb;
		margin: 0;
		height: 4.5rem;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap
	}
	.main_footer .footerControls,
	#mainFooter .footerControls {
		margin-top: 0.5rem
	}
	.main_footer .firstfooter,
	#mainFooter .firstfooter {
		justify-content: space-between;
		display: flex;
		padding: 2.3rem;
		width: 100%;
		float: left;
		margin-right: 1.04167%;
		margin-right: 0;
		background-color: var(--main_footer_background_color,#7500c0);
	}
	.main_footer .firstfooter .conoce_content,
	#mainFooter .firstfooter .conoce_content {
		width: 77%;
		margin-bottom: 1rem;
	}
	.main_footer .firstfooter .conoce_content .conoce_logo img,
	#mainFooter .firstfooter .conoce_content .conoce_logo img {
		width: 100%
	}
	.main_footer .firstfooter .conoce_content .conoce_texto,
	#mainFooter .firstfooter .conoce_content .conoce_texto {
		color: #FFF;
		font-size: 0.785rem
	}
	.main_footer .firstfooter .conoce_content .conoce_texto .enlace, #mainFooter .firstfooter .conoce_content .conoce_texto .enlace, #mainFooter .firstfooter .conoce_content .conoce_texto p {
		font-size: 0.785rem;
	}
	.main_footer .firstfooter .fundacion,
	#mainFooter .firstfooter .fundacion {
		width: 25%
	}
	.main_footer .firstfooter .fundacion .social, #mainFooter .firstfooter .fundacion .social {
	    font-size: 1.35rem;
	}
	.main_footer .enunciado10,
	#mainFooter .enunciado10 {
		width: 100%;
		float: left;
		margin-right: 1.04167%
	}
	.main_footer .enunciado10 img,
	#mainFooter .enunciado10 img {
		width: 100%
	}
	.main_footer #copyr .copyright,
	#mainFooter #copyr .copyright {
		flex-flow: wrap
	}
	.main_footer #copyr .copyright .texto,
	#mainFooter #copyr .copyright .texto {
		font-size: 0.7rem;
		width:100%;
	}
	.main_footer #copyr .copyright a, #mainFooter #copyr .copyright a {
    width: 100%;
	}
	.main_footer #copyr .copyright a:hover .texto,
	#mainFooter #copyr .copyright a:hover .texto {
		text-decoration: underline
	}
	.main_footer #copyr .accenture,
	#mainFooter #copyr .accenture {
		width: 100%
	}
	.main_footer #copyr .accenture div, #mainFooter #copyr .accenture div {
    text-align: left;
	}
	.main_footer #copyr .accenture img,
	#mainFooter #copyr .accenture img {
		width: 100%
	}
	.bienvenida a,
	.bienvenida span,
	.bienvenida p,
	.bienvenida div,
	.bienvenida li {
		line-height: 1.1rem
	}
	#fundacion .bienvenida .enunciado10 {
		flex-direction: inherit
	}
	.bienvenida .texto_pequeno {
	    font-size: 0.8rem;
	    line-height: 0em;
	}
	.bienvenida .enunciado8 {
	    margin-right: 4.042%;
	}
	.opt.logo {
    color: #00baff;
    font-weight: 700;
    font-size: 13pt;
    color: white;
    width: 14%;
	}
	.row.sinpadding.header-ang {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 8rem;
	}
	.btn-expiracy{
		font-size: 0.7rem !important;
	}
	.tipMessage{
		font-size: 0.9em ;
	}
	.heightLogin {
	    height: fit-content;
	}
	#warningBrowser {
		line-height: 6em !important;
	}
	.toggle.fa.fa-question-circle.fa-question-size{
		display: inline-block !important;
	}
}

@media only screen and (min-width: 768px) and (max-width: 1199px) {
	#mainHeader #noprod {
		width: clamp(3.75rem, 7vw, 5.75rem);
		max-width: 14%;
	}
}

@media only screen and (min-width: 768px) {
	/* Desktop/tablet: centered middle third */
	.login .l2e-form-box.box-center {
		width: 40vw !important;
		max-width: 40vw !important;
	}

	.login #login.l2e-form-box.box-center {
		width: 40vw !important;
		max-width: 40vw !important;
	}
}

@media only screen and (max-width: 767px) {
	#mainHeader .enunciado1 img {
	  width: 70%;
	}
	
	.login #formbox,
	.login #selfregistrationbox,
	.login #changepassbox {
		margin-top: 0rem !important;
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.login .l2e-form-box.box-2-split {
		grid-template-columns: 1fr;
		column-gap: 0;
		row-gap: 0.75rem;
	}

	.login .l2e-form-box.box-center {
        width: 80% !important;
		max-width: calc(100% - 2rem);
		padding-left: 0;
		padding-right: 0;
	}

	.success .l2e-form-box.box-center,
	.success #success.l2e-form-box.box-center {
		width: calc(100% - 2rem) !important;
		max-width: calc(100% - 2rem) !important;
	}

	#mainHeader #noprod {
		width: clamp(3.25rem, 16vw, 5rem);
		min-width: 30%;
		max-width: 40%;
	}

	#mainHeader #noprod img {
		max-height: calc(var(--main_header_height, 3.75rem) - 0.35rem);
	}

	.success #success.l2e-form-box.box-center {
		padding-top: 0.75rem;
		padding-bottom: 1rem;
	}

	/*.success #success .l2e-success-illustration {
		margin-bottom: 0.65rem;
	}*/

	.success #success .l2e-success-copy p {
		font-size: 1rem;
	}

	.success #success .success-bottom {
		margin-top: 1.25rem;
	}

	.login #changepassbox > div {
		display: block;
	}

	/* Hide illustrations on mobile for box-2-split layouts */
	.login #login .l2e-login-illustration,
	.login #selfregistrationbox .l2e-register-illustration,
	.login #formbox .l2e-recovery-illustration,
	.login #changepassbox .l2e-change-illustration,
	.success #success .l2e-success-illustration,
	.logout #logout .l2e-logout-illustration {
		display: none;
	}
	
	.logout #logout.box-2-split {
		grid-template-columns: 1fr;
		column-gap: 0;
		row-gap: 0.75rem;
	}

	.logout #logout.box-2-split .l2e-logout-panel {
		padding-left: 0;
	}

	.error #error.box-2-split {
		grid-template-columns: 1fr;
		column-gap: 0;
		row-gap: 0.75rem;
	}

	.error #error.box-2-split .l2e-error-illustration {
		display: none;
	}

	.error #error.box-2-split .l2e-error-panel,
	.login #selfregistrationbox .l2e-register-panel,
	.login #formbox .l2e-recovery-panel,
	.success #success .l2e-success-panel,
	.login #formbox .l2e-change-panel{
		padding-left: 0;
	}
	
	.login #selfregistrationbox .l2e-register-captcha-row {
		grid-template-columns: 1fr;
	}
}

/*#mainHeader .languages .dropdown-content div a:focus, #mainHeader .languages .dropdown-content div a:hover {
	border-bottom: 5px solid #460073;
	outline: 0;
}*/