:root {
	--menubg:#fff;
	--menu-seleccion:#6666ff;
	--fondo-menu:#fff;
	--fondo-idiomas:#ffffff;
	--texto-idiomas:#a09a68;
	--titulo-texto:#4466aa;
	--titulo-texto:#4466aa;
}

/*
hide checkbox
*/

html {
	font-family: 'JosefinSansRegular';
}

.demo-frame{
	font-size:15px!important;
}

.shadow:not(.demo-frame){
	background-color:rgba(80,80,80,0.7);
	width: 100%;
	height:100%;
	z-index:1000;
}

.shadow .demo-frame {
	-webkit-transition: background 1s ease-in-out;
    -moz-transition: background 1s ease-in-out;
    -o-transition: background 1s ease-in-out;
    transition: background 1s ease-in-out;
}

#errbutton {
	position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	display: flex;
    justify-content: center;
}

#newmenu{
	right:300px;
	overflow:hidden;
	display:block;
	width:300px;
	height:100%;
	margin-top:0;
	background-color:var(--fondo-idiomas);
	position: fixed;
	text-align: center;
	z-index:204;
	box-shadow:0 0 10px -1px #333;
	-moz-box-shadow:0 0 10px -1px #333;
	-webkit-box-shadow:0 0 10px -1px #333;
	filter: shadow(color=#333333, direction=340, strength=1);
}

#newmenu ul{
	position: relative;
	list-style: none;
	/*margin: 0;*/
	padding: 0;
	top:5px;
}

#newmenu li{
	display:inline-flex;
	margin:8px 0;
	width:100%;
	background-color:#fff;
	color:#999;
}

#newmenu a {
	text-decoration: none;
	color: #999999;
	width:260px;
}

#newmenu p {
	font-family: 'JosefinSansRegular';
	font-size: 22px;
	
	text-align: left;
	margin: 0;
}

#newmenu p:nth-child(2) {
	font-size: 12px;
}



#newmenu li :hover{
	background-color:#eef;
	color:#88a;
}


#newmenu li span:nth-child(1){
	font-size:32px;
	height:100%;
}

#newmenu li span:nth-child(2n){
	height:100%;
}

#newmenu.menuenabled, #newmenu.menudisabled {
	-webkit-transition: all 0.2s, -webkit-transform 0.2s;
    transition: all 0.2s, transform 0.2s;
}

#newmenu.menuenabled {
	left:0px;
}

#newmenu.menudisabled {
	left:-300px;
}


#contenedor_global.menuenabled, #contenedor_global.menudisabled {
	-webkit-transition: all 0.5s, -webkit-transform 0.5s;
    transition: all 0.5s, transform 0.5s;
}

#contenedor_global.menuenabled {
	left:300px;
}

#contenedor_global.menudisabled {
	left:0;
}

#contenedor_global {
		-webkit-transition: all 0.5s, -webkit-transform 0.5s;
transition: all 0.5s, transform 0.5s;
}
	


#loader-overlay, #loader-content, #loader-content-remove-app {
	width:100%;
	height:100%;
	position:fixed;
	z-index:200;
	overflow:hidden;
	background-color:rgba(40,40,40,0.6);
}

.spinner {
  margin: 0 auto 0;
  width: 70px;
  text-align: center;
}

.spinner > div {
  width: 18px;
  height: 18px;
  background-color: #fff;

  border-radius: 100%;
  display: inline-block;
  -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}

.spinner .bounce2 {
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
  0%, 80%, 100% { -webkit-transform: scale(0) }
  40% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bouncedelay {
	
  0%, 100% { 
    -webkit-transform: scale(0);
    transform: scale(0);
  } 40% { 
    -webkit-transform: scale(1.0);
    transform: scale(1.0);
  }
}


.nopadding {
	padding:0!important;
	margin:0!important;
}

.errorglobe {
	 position:absolute;
 }

.checkbox-container {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.checkbox-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  border-radius:5px;
  border-width:1px;
  border-style:solid;
  border-color:#999;
}

/* On mouse-over, add a grey background color */
.checkbox-container:hover input ~ .checkmark {
}

/* When the checkbox is checked, add a blue background */
.checkbox-container input:checked ~ .checkmark {
  background-color: #2196F3;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.checkbox-container input:checked ~ .checkmark:after {
  display: block;
  border-style:transparent;
}

/* Style the checkmark/indicator */
.checkbox-container .checkmark:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/*
end input chekckbox
*/



.gliphicons-input {
	text-size:48px;
	color:light-gray;
}

.glyphicons-bg {
	vertical-align:middle!important;
	background-color:rgba(255,255,255,.65);
	border-radius:5px;
	/*box-shadow:0px 0px 20px 1px #333;
	-moz-box-shadow:0px 0px 20px 1px #333;
	-webkit-box-shadow:0px 0px 20px 1px #333;
	filter: shadow(color=#333333, direction=135, strength=2);*/
}

.glyphicons-x {
	font-size:16px;
	color:var(--texto-contraste-claro);
	margin:-5px -7px;
}

.glyphicons {
	vertical-align:middle!important;
}

.glyphicons-nopadding:before {
	padding:1px 3px 0 0!important;
}

.glyphicons-heart-empty:before{color:#ff7779;}

.icon-big {
	font-size:24px;
}

.hidden{
	display:none!important;
}

.errbox .errorarrow .errorarrow-bottom {
	/*
    -webkit-box-shadow:
		1px 1px 8px 8px rgba(74, 71, 71, 0.35),
		0px 1px 16px 0px rgba(0,0,0,.2);
    -moz-box-shadow:
		1px 1px 8px 8px rgba(74, 71, 71, 0.35), 
		0px 1px 16px 0px rgba(0,0,0,.2);
    box-shadow:
		1px 1px 8px 8px rgba(74, 71, 71, 0.35), 
		0px 1px 16px 0px rgba(0,0,0,.2);
		*/
}

.errbox {
	overflow:hidden;
	background-color:#ff3322;
	padding:5px,5px,3px,20px;
	display:block;
	border-radius:3px;
	/*height:25px;*/
	width:280px;
	color:#ffffff;
}

.errbox span {
	margin:3px;
	text-align:center!important;
	font-family:lato,arial;
	font-size:12px;
}
	
.errorarrow {

	margin:3px 0 0 17px;
	width: 0; 
	height: 0; 
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	border-bottom: 9px solid #ff3322;
}

.errorarrow-bottom {

	margin:0 0 3px 17px;
	width: 0; 
	height: 0; 
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	border-top: 9px solid #ff3322;
}

.errbox a {
color:#ffffff;
}

.input-error {
	border-style:solid;
	border-width:2px;
	border-color:#ff0000!important;
}

.input-ok {
	border-style:solid;
	border-width:2px;
	border-color:#00ff00!important;
}

.input-ok:after {
	margin-right: 10px;
    content: '\E207';
    font-family: 'Glyphicons Regular';
    font-weight: normal;
    font-style: normal;
    text-decoration: none;
    color: #00ff00;
    font-size: 24px;
    display: flex;
}

.bien:not(.fb-data-fill) {
		height:400px;
	max-width: 400px;
}

.bien{
	background-color: #ffffff;
	color: #4c4c4c;
	font-family: 'JosefinSansRegular';
	border-radius:3px;
	margin:auto;
	text-align: center;
	z-index:1000;
	-webkit-box-shadow: 0 5px 15px rgba(0,0,0,.5);
    box-shadow: 0 5px 15px rgba(0,0,0,.5);
}

.bien :not(.demo-frame){
	font-size: 20px;
}

.bien:not(.fb-data-fill){
	padding: 10px;
}

.bien:not(.fb-data-fill) span {
	width:100%;
	display:inline-block;
}

.bien span:nth-child(1){
	text-align:right!important;
}

.cooquiesAlert-cont {
	background-color:rgba(60,60,60,.85);
	height:50px;
	width:calc(100% - 10px);
	position:fixed;
	bottom:0;
	left:4px;
	overflow:hidden;
	z-index:1000;
	border-radius:5px;
	color:var(--fondo-idiomas);
	font-family:JosefinSansRegular;
	text-shadow:0px 1px 0px rgba(0,0,0,.15);
 
    -webkit-box-shadow:
        inset 0px 1px 0px rgba(255,255,255,35),
        0px 1px 1px rgba(0,0,0,.2);
    -moz-box-shadow:
        inset 0px 1px 0px rgba(255,255,255,.35),
        0px 1px 1px rgba(0,0,0,.2);
    box-shadow:
        inset 0px 1px 0px rgba(255,255,255,.35),
        0px 1px 1px rgba(0,0,0,.2);
	position:fixed;

}

.cooquiesAlert-cont h4{
	margin-left:20px;
	margin-right:50px;
	width:250px;
	float:left;
}

.cooquies-text{
	font-size:12px;
}


.bg {
	position: fixed;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
	z-index:-1;
}

.bg .embebed {
	background-color:rgba(0,0,0,0.3);
}

.bg img:not(.embebed){
	width:100%;
	filter: brightness(60%);
}

.logoimg{
	max-width:140px!important;
	max-height:40px;
}

.logoimg-login{
	max-width:140px!important;
	max-height:50px;
	margin:38px 0 0 20px;
}

html, body {
	height: 100%;
	width: 100%;
	margin: 0; 
	padding: 0;
	font-size: 100%;
	/* text anti-aliasing fix */
	text-rendering: optimizeLegibility;
	text-rendering: geometricPrecision;
	font-smooth: always;

	font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
	-webkit-font-smoothing: subpixel-antialiased;
	
	-webkit-user-select: none;
	-webkit-tap-highlight-color: transparent;
	
}

a {
    text-decoration: none;
    font-family: inherit;
}
/* Chrome font-size fix, see bellow */
body {
	font-size: 16px;
}

/*pre {
	white-space: pre;           /* CSS 2.0 *//*
	white-space: pre-wrap;      /* CSS 2.1 *//*
	white-space: pre-line;      /* CSS 3.0 *//*
	white-space: -pre-wrap;     /* Opera 4-6 *//*
	white-space: -o-pre-wrap;   /* Opera 7 *//*
	white-space: -moz-pre-wrap; /* Mozilla *//*
	white-space: -hp-pre-wrap;  /* HP Printers *//*
	word-wrap: break-word;      /* IE 5+ *//*
}*/

#contenedor_global {
	position: absolute;
	width: 100%;
	height: 100%;
	min-height: 800px;
	padding:0;
	margin: 0;
}

#centerbox {
	position: relative;
	top: 50%;
	margin-top: -300px;
	margin-left: auto;
	margin-right: auto;
	max-width: 930px;
	/*height: 720px;*/
	padding: 0;

}

/*** CABECERA ****/
.menunotification {
	position:absolute;
	margin-top:-0.5em;
	margin-left:-1em;
	min-width:10px;
	min-height:1em;
    text-shadow:0px 1px 0px rgba(0,0,0,.15);
 
    -webkit-box-shadow:
		1px 1px 8px 8px rgba(74, 71, 71, 0.35),
		0px 1px 16px 0px rgba(0,0,0,.2);
    -moz-box-shadow:
		1px 1px 8px 8px rgba(74, 71, 71, 0.35), 
		0px 1px 16px 0px rgba(0,0,0,.2);
    box-shadow:
		1px 1px 8px 8px rgba(74, 71, 71, 0.35), 
		0px 1px 16px 0px rgba(0,0,0,.2);
 
    -webkit-border-radius:4em;
    -moz-border-radius:4em;
    border-radius:4em;
	font-size: 12px;
	font-weight:100%;
	color:#fff;
	padding:0 5px 5px 5px;
	background-color:#ff0000;
}

.sticky {
	height:90px!important;
}

	.sticky #logo,
	.sticky #bienvenida
	{
		top:10px;
	}
	

	
	#logo,
	#bienvenida,
	.htitulo,
	#menu {
		-webkit-transition: all .7s, -webkit-transform .7s;
		transition: all .7s, transform 7s;
	}
	

header {
	position: fixed;
	top: 0;
	padding: 0;
	/*margin: 14px 10px;
	margin-left: auto;
	margin-right: auto;*/
	width:100%;
	height: 105px;
	background-color: #f6f6ff;
	z-index:100;
			-webkit-transition: height .5s, -webkit-transform 1s;
		transition: height .5s, transform 1s;

		-moz-box-shadow: 0 0 10px #000000;
		-webkit-box-shadow: 0 0 10px #000000;
		box-shadow: 0px -1px 20px 2px #888888;


}

#contbannerhead {
	/*position:absolute;
	left:-50%;*/
	display:inline-flex;
	margin-top:40px;
	/*text-align:center;*/
	-webkit-transition: margin .5s, -webkit-transform 1s;
	transition: margin .5s, top 1s;
	    width: calc(100% - 200px);
    display: inline-flex;
    margin: 30px 80px;
}

#bannerhead {
	/*
	margin-left: auto;
	margin-right:auto;
	padding: 50%;
	position: relative;*/
	height: 100%;
	top: 0;
	width: 100%;
	display:inline-block;

}

#idiomas {
	position: absolute;
	top: 5px;
	right: 5px;
	text-align: center;
	padding: 0;
	margin: 0px 5px 0 0;
	color: var(--texto-idiomas);
	font-family: 'JosefinSansRegular';
	width: 65px;
	z-index: 900;
			-webkit-transition: top .7s, -webkit-transform .7s;
		transition: top .7s, transform .7s;
}

#idiomas p {
	margin: 0;
	padding: 0;
}

.linkButton {
	height:20px!important;
	background: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 16px !important;
	width: 32px;
	color: var(--texto-idiomas)!important;
	font-family: 'JosefinSansRegular' !important; 
}

#idiomas ul {
	list-style: none;
	margin: 0;
	padding: 0;
	border: 0;
	width: 70px;
}

#idiomas ul li {
	float: left;
	margin: 0;
	padding: 0;
	border: 0;
	width: 32px;
	cursor: pointer;
	height: 20px;
}
/* Barra de seoaracion entre las opciones del idioma */
#idiomas ul li:nth-child(1) {
	border-right: 1px solid var(--texto-idiomas);
}

#idiomas ul li:nth-child(2) {
	border-left: 1px solid var(--texto-idiomas);
}

.cont-htitulo2 {
	width:100%;
	display:inline-flex;
	text-align:center;
}

.htitulo2 {
	width:40%;
}

.logocontent .htitulo2 {
	width:100%;
}

.menu-header {
	display:inline-flex;
	color:#999999;
	width:100%;
	padding:5px 0 0 0;
}

.menu-header span:nth-child(1){
	font-size:30px;
}

.menu-header span:nth-child(2){
	font-size:12px;
}
.menu-header span:nth-child(3){
	font-size:10px;
}

.menu-header img{
	position:absolute;
	right:5px;
	width:48px;
	height:48px;
}



.htitulo {
	position: relative;
	text-align: center;
	width: 100%;
	height: 100%;
	display: inline-block;
	top: 0;
	margin: 0;
	padding: 0 0 0 0;
}

h1.titulo {
	color: var(--titulo-texto);
	letter-spacing: 1px;
	font-weight: 100;
	font-style: normal;
	font-family: 'JosefinSansRegular';
	font-size: 50px;
	z-index: 500;
	line-height: 40px;
	margin: 0;
	padding: 0;
}

#separador {
	position: relative;
	/*left: calc(50% + 35px);
	top: 35px;*/
	width: 100%;
	text-align: center;
	/*display: inline-block*/
	/*margin: 0 auto;*/
}

ul.rombos {
	list-style: none;
	margin: 15px auto 0 auto;
	width: 75px;
	padding: 0;
}

ul.rombos li {
  background: transparent;
  border: 2px solid var(--idiomas-texto);
  border-width: 1px;
  transform: rotate(-45deg);
  position: relative;
  margin: 0 -1px 0 -1px;
  width: 12px;
  height: 12px;
  float: left;
}

/*** Contenedor del resto de la caja central ***/

#contenido {
	position: relative;
	max-width: 930px;
	min-height: 560px; /*calc(100% -50px);*/
	top: 0;
	padding: 10px 0 30px 0;
	margin: 0;
	/*background-color:rgba(180, 230, 230, 0.4);*/
	height:auto;
	overflow: visible;
}

h2:not(.bien) :not(.demo-frame) {
	position: relative;
	font-weight: 100;
	font-style: normal;
	font-family: 'JosefinSansRegular';
	color: #ffffff;
	font-size: 30px;
	text-align: center;
	line-height: 55px;
}
 
.clase-general {
 	display: table-row;
}
/*******************************/

#bloqueizquierdo {
	width: 265px;
	height: 200px;
	float: left;
}

#bloquederecha{
	width: 265px; height: 200px;
	float: left;
}

.checkbox {
	font-family: 'JosefinSansRegular'; 
	color: #0E0D39;
	font-size: 15px;

}
.copyrig {
	font-family: 'JosefinSansRegular'; 
	color:#8d8c9d;
	letter-spacing: 6px;
}

/* Chrome font-size fix, see above */
@media screen and (-webkit-min-device-pixel-ratio:0) { 
  body {
    font-size: 16px;      
    }
}

/** FOOTER ***/
footer {
	z-index:3;
	position: fixed;
	top: calc(100% - 35px);
	width: 100%;
	height: 35px;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 0;
	background-color: rgba(0,0,0,0.17);
	text-align: center;
	overflow:hidden;
}

footer p {
	position: relative;
	height: 12px;
	margin-top: 12px;
	font-family: 'JosefinSansRegular';
	font-size: 14px;
	line-height: 12px;
}

/*****************************************************/
/******* ESTILOS CHECK BUTTON Y RADIO BUTTON *********/



@media (max-width: 930px) {
	
	h1.titulo {
		font-size: 40px;
	}
	
	#contbannerhead {
		margin-top:40px;
		width: 100%;
		margin: 35px 20px;
	}
	
	.cooquiesAlert-cont {
		height:150px;
		width:100%;
		left:0;
	}

	.cooquiesAlert-cont h4{
		height:20px;
		width:100%;
		float:left;
		margin:5px 0 10px 0;
	}

	.cooquies-text {
		margin:0 5px 0 5px;
		font-size:12px;
	}

	.bg img {
		height:100%!important;
	}	

	header {
		-moz-box-shadow: 0 0 10px #000000;
		-webkit-box-shadow: 0 0 10px #000000;
		box-shadow: 0px -1px 20px 2px #888888;
		height:90px!important;
	}
	
	.sticky {
		height:70px!important;
	}
	
	.sticky #contbannerhead{
		margin-top:5px;
	}
	.sticky #menu{
		height:40px;
	}
	
	
	#contbannerhead{
		font-size: 38px;
		line-height: 38px;
	}
	

	/*#loginoutreg {
		margin: 0 5% !important;
		width: 90%  !important;
	}
	#loginoutreg ul {
		width: calc(100% - 27px);
	}
	#logininreg {
		width: calc(100% - 8px);
	}*/
}

@media (max-width: 920px) {
		.bg img {
		height:100%!important;
	}
	/*#loginoutreg {
		margin: 0 10px 0 200px !important;
		width: calc(100% - 210px) !important;
	}
	#loginoutreg ul {
		width: calc(100% - 27px);
	}
	#logininreg {
		width: calc(100% - 8px);
	}*/
}




@media (max-width: 800px) {
	
	.sticky {
		height:40px!important;
	}
	.sticky #signout,
	.sticky #bienvenida,
	.sticky #idiomas {
		top:-100px;
		overflow:hidden;
		-webkit-transition: top .7s, -webkit-transform .7s;
		transition: top .7s, transform .7s;
		
	}
	
	
	.sticky h1.titulo {
		font-size:24px!important;
	}
	
	.logoimg{
		
		max-width:100px!important;
		/*
		margin-top:-10px;
		margin-left:-15px;
		*/
	}
	.logoimg:not(#menu, #logoimg-main-logo){
		margin:0 0 0 20px;
	}
		
	
	h1.titulo, .htitulo2 {
		font-size:30px!important;
	}
	
	#contenido {
		min-height: calc(100% - 75px);*/
	}
	footer {
		display:none;
		top: calc(100% - 20px);
	}
	footer p {
		margin-top: -10px;
	}
}

@media (max-width: 480px) {
	#contbannerhead {
		margin-top:20px;
		width: 100%;
		margin: 0;
	}
	
	.sticky #contbannerhead{
		margin-top:5px;
	}
	
	#newmenu ul{
		top:5px;
	}

	#newmenu li{
		margin:2px 0;
	}
	
	#newmenu p {
		font-size: 18px;
	}



	#centerbox {
		top: 0;
		margin-top: 0;
	}
	#contenido {
		min-height: calc(100% - 90px);
	}
	footer p {
		height: auto !important;
		margin: 10px 0 10px 0 !important;
	}
	ul.rombos {
		display:none;
	}
}