/*==========================================================================
  ADD BY MANU LOADER
  ==========================================================================*/
#cargador {
	/*display: none;*/
	visibility:hidden;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 99999999999;
	/*background-color: rgba(0,0,0,0.5);*/
	background: rgba(255,255,255,0.65);
}
.loader {
	max-width: 140px;
	max-height: 140px;
	margin: -70px 0 0 -70px;
	top: 50%;
	left: 50%;
	position: absolute;
	width: 100%;
	height: 50%;
	z-index: 20;
	/*background-color: #ffffff;*/
	/*background-color: #6CC24A;verde*/
	background-color: #6297d1; /*azul*/
	border-radius: 100%;
	-webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
	animation: sk-scaleout 1.0s infinite ease-in-out;
}

 @-webkit-keyframes sk-scaleout {
	 0% {
	-webkit-transform: scale(0)
	}
	 100% {
	 -webkit-transform: scale(1.0);
	 opacity: 0;
	}
}
 @keyframes sk-scaleout {
	 0% {
	 -webkit-transform: scale(0);
	 transform: scale(0);
	}
	100% {
	 -webkit-transform: scale(1.0);
	 transform: scale(1.0);
	 opacity: 0;
	}
}

/*==========================================================================
  ADD BY MANU DIALOG
  ==========================================================================*/
  
.dialog,
.dialog__overlay {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.dialog {
	position: fixed;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	pointer-events: none;
	z-index:2147483647;
}

.dialog__overlay {
	position: absolute;
	z-index: 1;
	/*background: rgba(55, 58, 71, 0.9);*/
	background: rgba(255,255,255,0.65);
	opacity: 0;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
	-webkit-backface-visibility: hidden;
}

.dialog--open .dialog__overlay {
	opacity: 1;
	pointer-events: auto;
}

.dialog__content {
	width: 90%;
	max-width: 560px;
	min-width: 290px;
	/*background: #6CC24A;*/
	background: #fff;
	padding: 3em;
	text-align: center;
	position: relative;
	z-index: 5;
	opacity: 0;
	/*border-radius:40px;*/
	border: 1px solid #6297d1;
}
.dialog--open .dialog__content {
	pointer-events: auto;
}

/* Content */
/* Content TITULAR, Content MENSAJE */
.dialog h2,.dialog #titModal,.dialog #msgModal  {
	margin: 0;
	font:inherit;
	font-weight: 400;
	/*font-family:"Winston-Bold";*/
	font-size: 22px;
	line-height:32px;
	padding: 0 0 1em;
	margin: 0;
	/*color:#ffffff;*/
	color:#6297d1;
  font-family:Arial, sans-serif;
}
/* Content TITULAR */
.dialog #titModal{
	text-align:left !important;
	font-size: 30px;
}

.dialog__overlay {
	-webkit-transition-duration: 0.4s;
	transition-duration: 0.4s;
}

.dialog__content {
	overflow: hidden;
	box-sizing: border-box;
}

.dialog.dialog--open .dialog__content,
.dialog.dialog--close .dialog__content {
	-webkit-animation-duration: 0.4s;
	animation-duration: 0.4s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
}

.dialog.dialog--open .dialog__content {
	-webkit-animation-name: anim-open;
	animation-name: anim-open;
	-webkit-animation-timing-function: cubic-bezier(0.7,0,0.3,1);
	animation-timing-function: cubic-bezier(0.7,0,0.3,1);
}

.dialog.dialog--close .dialog__content {
	-webkit-animation-name: anim-close;
	animation-name: anim-close;
}

.dialog.dialog--open h2,
.dialog.dialog--open button {
	-webkit-animation: anim-elem 0.4s both;
	animation: anim-elem 0.4s both;
}

.dialog.dialog--open h2 {
	-webkit-animation-delay: 0.25s;
	animation-delay: 0.25s;
}

.dialog.dialog--open button {
	-webkit-animation-delay: 0.15s;
	animation-delay: 0.15s;
}

@-webkit-keyframes anim-open {
	0% { opacity: 0; -webkit-transform: translate3d(0, -400px, 0); }
	100% { opacity: 1; -webkit-transform: translate3d(0, 0, 0); }
}

@keyframes anim-open {
	0% { opacity: 0; -webkit-transform: translate3d(0, -400px, 0); transform: translate3d(0, -400px, 0); }
	100% { opacity: 1; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
}

@-webkit-keyframes anim-close {
	0% { opacity: 1; -webkit-transform: translate3d(0, 0, 0); }
	100% { opacity: 0; -webkit-transform: translate3d(0, 100px, 0); }
}

@keyframes anim-close {
	0% { opacity: 1; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
	100% { opacity: 0; -webkit-transform: translate3d(0, 100px, 0); transform: translate3d(0, 100px, 0); }
}

/* Inner elements animations */

@-webkit-keyframes anim-elem {
	0% { opacity: 0; -webkit-transform: translate3d(0, -100px, 0); }
	100% { opacity: 1; -webkit-transform: translate3d(0, 0, 0); }
}

@keyframes anim-elem {
	0% { opacity: 0; -webkit-transform: translate3d(0, -100px, 0); transform: translate3d(0, -100px, 0); }
	100% { opacity: 1; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
}

.dialog__content {
    max-width: 565px
}

.mobile .dialog__content{
  max-width: 90%;
  box-sizing: border-box;
  padding:2.5em;
}

.mobile .dialog__content h2{
  font-size: 1.3em;
}

/* DIALOG BUTTONS */
.btn-container{
  position:relative;
  box-sizing: border-box;
}

.btn-close{
  right:0;
  font-family: Arial;
  /*color: #0a438a;*/
  color: #fff;
  font-size:12px;
  background-image:url(../img/cerrar.png);
  background-repeat:no-repeat;
  background-size:cover;
  position:absolute;
  width:30px;
  height:30px;
  transform:translateY(-100%) translateX(100%);
}

.mobile  .btn-close{
  width:15px;
  height:15px;
} 

.btn-generico {
    margin: 0.5em 0;
    text-decoration: none;
    min-width: 200px;
    max-width: 100%;
    padding: .7em 1.5em;
    vertical-align: middle;
    display: inline-block;
    cursor: pointer;
    position: relative;
    font-size: 25px;
	color: #fff;
    padding: 10px 20px;
	/*
    background: linear-gradient(#6297d1, #740691);
	*/
	background: #6297d1;
    border-radius: 30px;
	font-family: Arial;
	box-sizing: border-box;
}
.btn-generico:hover {
	/* color: #6297d1; */
	color:#fff;
    background: #6297d1;
	border: 1px solid #6297d1;
}
.link-generico {
    font-size: 1.42em
}

/*==========================================================================
  ADD BY MANU VALIDACION FORMULARIOS HTML5
  ==========================================================================*/

/* // [START invalidstyle] */

input.dirty:not([type="submit"]):invalid ,select.dirty:invalid ,textarea.dirty:invalid { 
  border: 1px solid #909 !important; 
  background-color: #FFD9D9 !important;
}
input.dirty:not([type="submit"]):valid ,select.dirty:valid ,textarea.dirty:valid { 
  border:1px solid #660 !important;
  background-color: #D9FFD9 !important;
}

input:focus:invalid ,select.focus:invalid ,textarea.focus:invalid {
	border: 1px solid #909 !important; 
    background-color: #FFD9D9 !important;
}

/* input:not([type="submit"]):invalid ,select:invalid ,textarea:invalid { 
	border: 1px solid #909 !important; 
	background-color: #FFD9D9 !important;
}
input:not([type="submit"]):valid ,select:valid ,textarea:valid { 
	border:1px solid #660 !important;
	background-color: #D9FFD9 !important;
} */

/*CASO CUSTOM: checkboxes necesitamos "tunearlos" para poder validarlos*/

.checkboxs input[type="checkbox"]{
	display: none;
}

.checkboxs input[type="checkbox"] + label  span {
  display: inline-block;
  width: 15px;
  height: 15px;
  /*margin: -1px 4px 0 0;*/
  margin: 10px 10px 0 0;
  vertical-align: middle;
  background-size: cover;
  cursor: pointer;
  border: 1px solid #CCCCCC;
  border-radius: 2px;
}

.checkboxs input[type="checkbox"]:checked + label  span {
  background: url(../img/check.png);
  background-size: cover;
}

.checkboxs input[type="checkbox"] + label  span.dirty{
	border:1px solid #909 !important;
	background-color: #FFD9D9 !important;
}

.checkboxs input[type="checkbox"] + label  span.clean{
	border:1px solid #660 !important;
  	background-color: #D9FFD9 !important;
}

.checkboxs_label {
    width: 5% !important;
}
@media only screen and (max-width: 576px) and (min-width: 320px) {
  .checkboxs_label {
    width: 10% !important;
  }
}

/*CASO CUSTOM: input files SOLO CON EL BOTON*/
.inputfiles.dirty{
	border:1px solid #909 !important;
	background-color: #FFD9D9 !important;
}
.inputfiles .btn.dirty{
	color:#909 !important;
	background-color: #FFD9D9 !important;
}

.inputfiles.clean{
	border:1px solid #660 !important;
  	background-color: #D9FFD9 !important;
}
.inputfiles .btn.clean{
	color:#660 !important;
	background-color: #D9FFD9 !important;
}

/* // [END invalidstyle] */

/*==========================================================================
  ADD BY MANU FALDON DE COOKIES
  ==========================================================================*/

#cookies-aviso {
  display: none;
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  box-sizing: border-box;
  z-index: 200;
  background: white;
  padding: 1.4880952381vw 1.4880952381vw 1.4880952381vw 1.4880952381vw;
}
#cookies-aviso .content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
}
@media only screen and (min-width: 1024px) {
  #cookies-aviso .content {
    flex-direction: row;
  }
}
#cookies-aviso .content #cookies-close {
  padding: 0.8928571429vw 1.1904761905vw;
  font-family: Roboto, sans-serif;
  font-size: 15px;
  text-align: center;
  white-space: nowrap;
  cursor: pointer;
  background: #6297d1;
  color: white;
  border: solid 1px #6297d1;
  transition: all 0.3s;
}
#cookies-aviso .content #cookies-close:hover {
  background: white;
  color: #6297d1;
}
#cookies-aviso .content p {
  font-family: Roboto, sans-serif;
  font-size: 15px;
  text-align: center;
  padding-bottom: 30px;
}

@media only screen and (min-width: 1024px) {
  #cookies-aviso .content p {
    padding-bottom: 0;
    padding-right: 20px;
    text-align: left;
  }
}

/*Pois de google maps*/
#bloqueMapa p{font-size: 20px;font-family: "Oswald-Light", Helvetica, Arial, sans-serif;text-align: left; padding-left:20px; padding-right:20px;}
#bloqueMapa p strong{color:#6297d1;}