.site {
    margin: 0;
    padding: 0;
    height: 100%;
    font-size: 12px;
    line-height: 18px;
    color: #333333;
    min-height: 100vh;
    position: relative;
}

.login-box {
    overflow: hidden;
    width: 360px;
    padding: 10px;
	  position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

.login-box::after {
    position: absolute;
    display: block;
    top: 0;
    content: "";
    width: 120%;
    height: 120%;
    background: url('../img/registro-login.png') no-repeat center center/cover;
    filter: blur(40px);
    -webkit-filter: blur(40px);
    margin: -40px -40px;
}

@media screen and (-ms-high-contrast:active), screen and (-ms-high-contrast:none) {
	.login-box::after {
	    background: rgba(150,150,150,0.5);
	}
}

@media only screen and (max-width: 768px) {
	.login-box {top:60%;}
}

canvas {
    margin: auto;
    position: relative;
}

div #info {
    position: relative;
    top: 0;
    left: 0;
    padding: 15px;
    z-index: 100;
}

.div-header {
    text-align: center;
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
}

#capa-recuerda {
	position: relative;
	top: 0;
	left: 0;
	width: 30%;
	margin: auto;
	padding: 15% 0;
}

#newpws {
	background: rgba(255,255,255,.6);
	padding: 20px;
	border-radius: 10px;
}

div #header-info {
	width: 59.5%;
	height: 10px;
	margin:-3px 0; 
	border-top:solid 1px #d8182d;
}	

div #registro-connect {
	width:100%;
	height: 100px;
}

div #login, div #registro-connect {
	position:relative;
	top: 15px;
	left: 0;
}

div #header-connect {
	width: 59.5%;
	height: 10px;
	margin:10px 0; 
	border-top:solid 3px #00803e;
}	

div #registro-connect a {
	outline: none;
	text-decoration: none;
}	

div #registro-connect a span {
	width: 94%;
	font-family: ProximaNovaExCnReg, Helvetica, sans-serif; 
	font-size:16px; font-weight:normal; 
	line-height: 20px;
	text-align:center; color: #fff;
	display: inline-block;
	padding: 5px;
	margin-top: 5px;
}	

div #registro-connect a span:hover {
	cursor: pointer;
	box-shadow: 0px 0px 2px 2px rgba(237,28,36,0.6);
}

div #header-intro {
	width: 100%;
	border-bottom:solid 1px #d8182d;
}

div #header-datos {
	height: 33px;
  background: url('../img/logos/Advantage-clientes2.png') no-repeat top left;
  margin: auto;
	width: 500px;
}

div #datos {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 45%;
	padding: 15px;
	background-color: #ffffff;
	height: 80%;
	min-height: 210px;
	min-width: 850px;
	box-shadow: 0 2px 2px 0 rgba(0,0,0,0.16),0 0 0 1px rgba(0,0,0,0.08);
}

div #datos.center {
	float: none;
	margin: auto;
}

div #legal h3:hover {
	cursor:default;
	border-bottom: solid 1px #d8182d;
	background-color: transparent;
}	

div #divTips { 
	text-align: right;
}

div #divTips-login { 
	width: 100%;
	text-align: left;
	position: absolute;
	bottom: 0;
	z-index: 1;
}
	
/* -------- Components ------------------ */
.inputItem div {
  height:auto;
  line-height:auto;
  margin: .1em 0;
 	clear:both;
}

.inputItem div label {
  width: 40%;
  float: left;
  font-size: 18px;
  line-height:18px;
  padding: 10px 0;
}

.inputItem-v div {
  height:auto;
  line-height:auto;
  margin: .5em 0;
 	clear:both;
}
.inputItem-v div label {
  width: 94%;
  float: left;
  font-size: 12px;
  line-height:18px;
}

.bloc-d-e {
	padding-bottom: 5px;
	margin-top: 0 !important;
}

.bloc-d-e h3 {
	height: 20px;
	border-bottom: solid 1px #d8182d;
	font-size: 2em;
}	
.bloc-d-e h3 span {
	float:left;
  width: 31.75%;
  font-family: 'Trebuchet MS', Helvetica, sans-serif; font-size:14px; font-weight:bold; text-align:left; color: #d8182d; line-height: 20px;
  border:none;
}

h3.notarget span { color: #6D6D6D; }
h3.notarget { border-bottom: solid 1px #6D6D6D; }	

.d-e { width:50%; }
.d-e:disabled { color: #856d85; background-color: #f0f0f0; }

.d-e-disabled { color: #856d85; background-color: #f0f0f0; }
select.d-e  {  width: 52.3% !important; background: none;font-size: 25px;}
textarea.d-e {resize: both !important; min-width:32%; max-width:67%; height: 100px; min-height: 100px; max-height: 150px;font-size:25px;}
#textlegal {
	resize: none;
	color: #666;
	width: 100%;
	height: 290px;
	background: none;
	font-size: 16px;
}

.d-info {  width: 31.5%; border-style:none !important; background-color:transparent; }
.d-e-v { width: 94%;}

.div-w-led {
	position: relative;
}
.div-w-led::before {
	content: '\00a0 ';
	position: absolute;
	right: 0px;
	z-index: 10;
	font-size: 2em;
	top: 8px;
	width: 9px;
	height: 9px;
	border: 1px solid #d8182d;
	border-radius: 9px;
}

.div-w-led-norequired::before { color: #ffffff; background-color: #ffffff; }
.div-w-led-required::before {color: #d8182d;background-color: #d8182d;}

.led {
	border: solid 1px #d8182d;
	border-radius: 9px;
	margin: 8px 3px 0 3px;
	background-color: #d8182d;
	padding: 0px 7px;
}

#btsubmit, #btlogin, #_submit, #btenvia, #btsubmitGDPR {
	font-size:16px; font-weight:normal; 
	background-color: #00803e;
	float: right;
}

#btsubmit:disabled, #btlogin:disabled, #_submit:disabled {
	background-color: #ccc;
	color: #f4f3f8; 
}

#btsubmit:hover:enabled, #btlogin:hover:enabled, #btenvia:hover {
	cursor: pointer;
	box-shadow: 0px 0px 2px 2px rgba(0,128,62,0.6);
}

#btbajavhc {
	float:none;
	margin:auto;
	display: inline;
}
#btbajavhc:hover {
	cursor: pointer;
	box-shadow: 0px 0px 2px 2px rgba(237,28,36,0.6);
}

#bajavhc > span:hover {
	box-shadow: none !important;
}	

form input:enabled:hover, select:enabled:hover {
	box-shadow: 0px 0px 2px 2px rgba(0,128,62,0.3);
}
form input:enabled:focus, select:enabled:focus {
	box-shadow: 0px 0px 2px 2px rgba(249,247,5,0.6);
}

/* Msg Alerta ADVANTAGE - News */
.advalert-new { padding: 2px 0 2px 5px;}
.advalert-new:hover {
	cursor: pointer;
	background-color: #eeeeee;
}	
.advalert-new span, .advalert-new a {
	font-size: 14px !important;
}	
.advalert-disabled { color: #cccccc; }

/* Msg Alert APP*/
.msg-success:before { content:url('../img/iconos/ledgreen.png'); position:relative; top:3px; left:-5px;}
.msg-error:before { content:url('../img/iconos/ledred.png'); position:relative; top:3px; left:-5px; }

.alert {
	padding: 6px 8px 7px 6px;
	margin-bottom: 18px;
	color: #c09853;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
	background-color: #fcf8e3;
	border: 1px solid #fee6b9;
}
.alert-heading {
color: inherit;
}
.alert .close {
position: relative;
top: -2px;
right: -21px;
line-height: 18px;
}
.alert-success {
color: #468847;
background-color: #dff0d8;
border-color: #d6e9c6;
}
.alert-danger,
.alert-error {
color: #b94a48;
background-color: #f2dede;
border-color: #eed3d7;
cursor: pointer;
}
.alert-info {
color: #3a87ad;
background-color: #d9edf7;
border-color: #bce8f1;
}

/* --- CheckBox --- */
input[type=checkbox].css-checkbox {
		position: absolute;
		overflow: hidden; 
		clip: rect(0 0 0 0); 
		height:1px; 
		width:1px; 
		margin:-1px; 
		padding:0;
		border:0;
	}
	
input[type=checkbox].css-checkbox + label.css-label {
	width: auto;
	padding:0 12px 0 25px; 
	display:inline-block;
	background-repeat:no-repeat;
	background-position: 0 0;
	vertical-align:middle;
	cursor:pointer;
}


input[type=checkbox].css-checkbox:checked + label.css-label {
	background-position: 0 -20px;
}

.css-label{ background-image:url('../img/iconos/web-two-style.png'); }

/* --- Compatibilitat IE8 --- */
.ie8-checkbox{ float: left; margin-left:375px; }

/* ----------------------------------- Responsive ---------------------------------------------- */
/*@media (min-width : 320px) and (max-width : 568px) { */
@media (max-width : 568px) {
	#canvas { 
		background: transparent;
	}
	div #wrapper { 
		width: 100%; 
		background-color: #f3f2f8;
	}
	div #datos { 
		width: 90%;
		clear:both;
		position: relative;
		top: 0; 
		padding-bottom: 20px;
	}
	.d-info { display: none; }
	.inputItem div {
	  height:auto;
	  line-height:auto;
	  margin: .5em 0;
	 	clear:both;
	}
	.inputItem div label {
	  width: 94%;
	  float: left;
	  font-size: 12px;
	  line-height:18px;
	}
	.d-e { width: 92%; }	

	.alert {
		padding: 5px 5px;
    font-size: 11px;
	}
	
	#textlegal { width: 96% !important;}

	div #divTips-login-rpv { 
		width:100%;
		text-align: left; 	
		position: relative;
		top:0; left:0;
		margin: 0 0 10px;
		font-size:9px;
	}
}