@charset "utf-8";
*,html,body,h1,h2,h3,h4,h5,p,a,span,strong,ul,ul li,form,button,input {
font-family:'Aller';	
}
html, 
body {
width:100%;
height:100%;
}
body.cargando {
overflow:hidden;
}
@-webkit-keyframes escribiendo {from {width: 0;}}
@-moz-keyframes escribiendo {from {width: 0;}}
@-o-keyframes escribiendo {from {width: 0;}}
@keyframes escribiendo {from {width: 0;}}
@-webkit-keyframes parpadeo-puntero {50% { border-color: transparent; }}
@-moz-keyframes parpadeo-puntero {50% { border-color: transparent; }}
@-o-keyframes parpadeo-puntero {50% { border-color: transparent; }}
@keyframes parpadeo-puntero {50% { border-color: transparent; }}

.pre-carga{
z-index:10000000000;
display:block;
position:fixed;
top:0;
left:0;
right:0;
bottom:0;
width:100%;
height:100%;
background-color:#FFFFFF;
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
filter: alpha(opacity=100);
-moz-opacity:1;
-khtml-opacity: 1;
opacity:1;
-webkit-transition: opacity 2s ease-out;
-moz-transition: opacity 2s ease-out;
-o-transition: opacity 2s ease-out;
transition: opacity 2s ease-out;
}
.pre-carga img{
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
filter: alpha(opacity=60);
-moz-opacity:0.6;
-khtml-opacity: 0.6;
opacity: 0.6;
}
.pre-carga p.h2 {
display:inline-block;
border-right: .1em solid black;
width: 10.5em;
width: 17.5ch;
margin: 0 auto;
white-space: nowrap;
overflow: hidden;
-webkit-animation: escribiendo 2s steps(22, end),parpadeo-puntero .5s step-end infinite alternate;	
-moz-animation-duration: escribiendo 2s steps(22, end),parpadeo-puntero .5s step-end infinite alternate;
-o-animation-duration: escribiendo 2s steps(22, end),parpadeo-puntero .5s step-end infinite alternate;
animation-duration: escribiendo 2s steps(22, end),parpadeo-puntero .5s step-end infinite alternate;
color:#00A192;
font-family:'Aller';
}
.pre-carga.cargado {
opacity:0;	
}

#presentacion {
position:absolute;
left:0;right:0;
top:0;bottom:0;
display:block;
width:100%;
height:100%;
vertical-align:middle;
text-align:center;
background-color:#fff;
z-index:100000000000000000000000;
}
#presentacion img.img-presentacion {
margin:0 auto;
max-width: 500px;
position: absolute;
}
#presentacion p.h2 {
position:absolute;
display:inline-block;
border-right: .1em solid black;
width: 10.5em;
width: 24ch;
margin: 0 auto;
white-space: nowrap;
overflow: hidden;
-webkit-animation: escribiendo 1.5s steps(22, end),parpadeo-puntero .5s step-end infinite alternate;	
-moz-animation-duration: escribiendo 1.5s steps(22, end),parpadeo-puntero .5s step-end infinite alternate;
-o-animation-duration: escribiendo 1.5s steps(22, end),parpadeo-puntero .5s step-end infinite alternate;
animation-duration: escribiendo 1.5s steps(22, end),parpadeo-puntero .5s step-end infinite alternate;
color:#00A192;
font-family:'Aller';
}

.parpadea {
  animation-name: parpadeo;
  animation-duration: 1s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;

  -webkit-animation-name:parpadeo;
  -webkit-animation-duration: 1s;
  -webkit-animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
}
@-moz-keyframes parpadeo{
  0% { opacity: 1.0; }
  50% { opacity: 0.4; }
  100% { opacity: 1.0; }
}
@-webkit-keyframes parpadeo {
  0% { opacity: 1.0; }
  50% { opacity: 0.4; }
  100% { opacity: 1.0; }
}
@keyframes parpadeo {
  0% { opacity: 1.0; }
  50% { opacity: 0.4; }
  100% { opacity: 1.0; }
}
.relleno {min-height:300px;}
.fondo-parax > * {
text-shadow: 7px 6px 10px #000;
}
.redondeado {
-webkit-border-radius: 2vw; 
-moz-border-radius: 2vw; 
border-radius: 2vw;
}
.redondeado-min {
-webkit-border-radius: .5vw; 
-moz-border-radius: .5vw; 
border-radius: .5vw;
}
.disabled:hover {cursor:not-allowed !important;}
.sinmargen{margin:0;}
a.tabulador,
a.tabulador:hover {
background-color:transparent;
position:absolute;
left:-10000em;
color:#fff;
z-index: 10000000000000000;
width: auto;
display: block;
}
a.tabulador:focus,
a.tabulador:active {
background-color:#000000;
color:#fff;
position:absolute;
left:inherit;
z-index: 10000000000000000;
width: auto;
display: block;
}
.mayus{text-transform:uppercase !important;}
.col-5th,.col-sm-5th,.col-md-5th,.col-lg-5th,.col-xl-5th {
position: relative;
min-height: 1px;
padding-right: 15px;
padding-left: 15px;
}
.relativa {
position:relative !important;
}
.absoluta {
display:block;
position:absolute;
top:0;bottom:0;
left:0;right:0;
}
.texto {color:#58595B;}
.fondo {background-color:#58595B;}
.borde {border-color:#58595B;}

.text-gris {color:#575757 !important;}
.fondo-gris {background-color:#575757 !important;}
.borde-gris {border-color:#575757 !important;}
.text-blanco {color:#FFFFFF !important;}
.fondo-blanco {background-color:#FFFFFF !important;}
.borde-blanco {border-color:#FFFFFF !important;}

.text-verde {color:#00A192 !important;}
.fondo-verde {background-color:#00A192 !important;}
.fondo-verde-trans{background-color:rgba(0,161,146,0.1) !important;}
.fondo-verde-trans-med{background-color: rgba(0,161,146,0.2) !important;}
.fondo-verde-trans-mas{background-color: rgba(0,161,146,0.3) !important;}
.borde-verde {border-color:#00A192 !important;}
.text-naranja {color:#F78D1E !important;}
.fondo-naranja {background-color:#F78D1E !important;}
.borde-naranja {border-color:#F78D1E !important;}
.text-naranjas {color:#de8b2e !important;}
.fondo-naranjas {background-color:#de8b2e !important;}
.borde-naranjas {border-color:#de8b2e !important;}
.text-amarillo {color:#FDB913 !important;}
.fondo-amarillo {background-color:#FDB913 !important;}
.borde-amarillo {border-color:#FDB913 !important;}
.text-amarillos {color:#de8b2e !important;}
.fondo-amarillos {background-color:#de8b2e !important;}
.borde-amarillos {border-color:#de8b2e !important;}

.masmargen-bottom{margin-bottom:30px;}
.masmargen-bottom.extra{margin-bottom:50px;}
.sinpadding-hori{padding-left:0;padding-right:0;}
.relativa{position:relative !important;}
textarea {resize: none;}
a.btn-verde, 
a.btn.btn-verde, 
button.btn-verde,
a.btn-transp, 
a.btn.btn-transp, 
button.btn-transp {
font-weight: bold;
background-color: #00A192;
color: #FFF;
border-radius: 0;
text-decoration: none;
padding: 2px 16px;
position: relative;
line-height: 1.5;
display: inline-block;
-moz-transition: transform .8s;
-webkit-transition: transform .8s;
-o-transition: transform .8s;
transition: transform .8s;
vertical-align: middle;
text-align: center;
}
a.btn-transp, 
a.btn.btn-transp, 
button.btn-transp {
background-color: transparent;
background-color: rgba(255,255,255,0.1);
border:2px solid #00A192;
color:#00A192;
border-collapse:collapse;
}
a.btn-verde:hover, 
a.btn.btn-verde:hover, 
button.btn-verde:hover,
a.btn-transp:hover, 
a.btn.btn-transp:hover, 
button.btn-transp:hover {
-webkit-transform: scale(1.2);
-ms-transform:scale(1.2);
transform: scale(1.2);	
}
a.btn-verde span, 
a.btn.btn-verde span, 
button.btn-verde span,
a.btn-transp span, 
a.btn.btn-transp span, 
button.btn-transp span {
font-weight: bold;
cursor: pointer;
color: #00A192;
display: block;
line-height: 1.5;
vertical-align: middle;
height: 100%;
text-align: center;
padding: 0;
}
a.btn-transp.blanco, 
a.btn.btn-transp.blanco, 
button.btn-transp.blanco {
background-color: transparent;
border:2px solid #fff;
color:#fff;
text-shadow:none;
box-shadow: 2px 4px 7px #000;
}
.animada0 .animated,
.animada1 .animated,
.animada2 .animated,
.animada3 .animated,
.animada4 .animated {
-webkit-animation-duration:.5s;
-moz-animation-duration:.5s;
-o-animation-duration:.5s;
animation-duration:.5s;
-webkit-animation-delay:0s;
-moz-animation-delay:0s;
-o-animation-delay:0s;
animation-delay:0s;
}
.anchoalcien {
height:100% !important;	
}
.anchoalnueve {
height:90% !important;		
}
.img-estira {
object-fit:cover;
object-position:center center;
width:100%;
height:100%;
}
button.navbar-toggler {
cursor: pointer;
}
.bcksobreimg {
position: absolute;
top: 0;
bottom: 0;
left: calc(var(--bs-gutter-x) * .5);
right: calc(var(--bs-gutter-x) * .5);
z-index: 10;
}
.lnk-titulogo {
text-decoration: none;
display: flex;
align-items: center;
width:100%;
}
.lnk-titulogo img {
max-width: 35%;
margin-right: 20px;
margin-top: 10px;
margin-bottom: 10px;
}
.lnk-titulogo .sptitulogo {
color: #434244;
}
nav.navbar {
padding-left:0;padding-right:0;	
}
ul.navbar-nav li.nav-item {
margin-left:auto;
}
ul.navbar-nav li.nav-item a.nav-link {
font-weight:normal;
color:#58595B;
padding-right: 0;
padding-left: 0;
font-size: 14pt;
}
.margenhead {
margin-top:15px;	
}
.animate__animated {
-webkit-animation-duration:2s !important;
animation-duration: 2s !important;
}
a.lnk-telefono,
a.lnk-email{
float:none;
display: inline-block;
font-size: 14pt;
font-weight: bold;
color: #00A192;
background-position: left center;
background-repeat: no-repeat;
background-size: auto 100%;
padding-left: 40px;
margin-left: auto;
text-decoration: none;
line-height: 19pt;
}
a.lnk-telefono:hover,
a.lnk-email:hover {
color:#000;
}
a.lnk-telefono {
background-image:url('../img/iconos/icono-telefono-verde.png');
}
a.lnk-telefono:hover {
background-image:url('../img/iconos/icono-telefono-negro.png');
}
a.lnk-email {
background-image:url('../img/iconos/icono-email-verde.png');
}
a.lnk-email:hover {
background-image:url('../img/iconos/icono-email-negro.png');
}
#carousel-jmf ol.carousel-indicators li:hover{
cursor:pointer;	
}
#carousel-jmf .carousel-control {
z-index:10;	
}
#carousel-jmf a.carousel-control-prev,
#carousel-jmf a.carousel-control-next {
width: 5%;
}
#carousel-jmf a.carousel-control-prev {
justify-content:left;	
}
#carousel-jmf a.carousel-control-next {
justify-content:right;
}
#carousel-jmf .carousel-control-next-icon,
#carousel-jmf .carousel-control-prev-icon {
background-position:center center;
background-size:100% auto;
background-repeat:no-repeat;
width:45px;
height:45px;
}
#carousel-jmf .carousel-control-prev-icon{
background-image:url('../img/carousel/flecha-izquierda.png');
background-position: -12px center;
}
#carousel-jmf .carousel-control-next-icon{
background-image:url('../img/carousel/flecha-derecha.png');
background-position: 12px center;
}
#carousel-jmf .carousel-item {
height: 85vh;
}
#carousel-jmf .carousel-item picture,
#carousel-jmf .carousel-item img {
object-fit:cover;
object-position: center center;
width: 100%;
height: 100%;
}
#carousel-jmf .carousel-item video {
display: block;
object-fit: cover;
object-position: center bottom;
width: 100%;
height: 100%;
pointer-events: none;
}
#carousel-jmf .carousel-caption,
#carousel-jmf .carousel-caption.captionuno {
display:none !important;
}
#carousel-jmf .carousel-caption.animate__animated {
display:flex !important;
}
#carousel-jmf .carousel-caption.captionuno {
animation-duration: 2s;
}
#carousel-jmf .carousel-caption.captiondos {
left: 10%;
right: 10%;
}
#carousel-jmf .carousel-control-next,
#carousel-jmf .carousel-control-prev {
width: 10%;
}
.titucaption.primero,
.titucaption.segundo,
.titucaption.tercero {
text-align:left !important;
text-shadow: 2px 2px 3px #000;
}
.titucaption.segundo {
color:#58595B;
text-shadow: 2px 2px 3px #fff;
}
.btn.btn-verde.primercap {
margin-right:15px;
}
.btn.btn-transp.primercap,
.btn.btn-verde.primercap {
float: left;
}
/* carrusel texto */
.conTcarouText {
position: relative;
display: flex;
overflow: hidden;
}
.texto-carouText {
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: space-around;
min-width: 100%;
-webkit-animation: scroll 30s linear infinite;
animation: scroll 30s linear infinite;
}
.texto-carouText > div {
position:relative;
padding:10px 50px;
font-size:1.5vw;
line-height:1.2;
}
.texto-carouText > div::before {
content:"";
position:absolute;
display:block;
color:#fff;
left:-15px;
width:30px;
top:0px;bottom:0px;
background-image:url('../img/iconos/separador.png');
background-repeat:no-repeat;
background-size:100% auto;
background-position:center center;
}
@-webkit-keyframes scroll {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(calc(-100% - 0px));
    transform: translateX(calc(-100% - 0px));
  }
}
@keyframes scroll {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(calc(-100% - 0px));
    transform: translateX(calc(-100% - 0px));
  }
}
/* fin carrusel texto */
.conTparallax {
min-height: 400px;
background-position: center center;
background-size: cover;
background-repeat: no-repeat;
background-attachment: fixed;	
}
.conTparallax.cuadros {
background-image: url('../img/fondo-cuadros.jpg');	
background-color:transparent;
background-color:rgba(0,51,51,0.2);
}
.conTparallax.mobil {
background: url('../img/fondo-cuadros.jpg') no-repeat fixed 50% 0 black;
-webkit-background-size: cover;
-moz-background-size: cover;
background-size: cover;
overflow: hidden;
background-attachment: scroll;
}
.cuadrosnums {
background-color: rgba(0,51,51,0.4);
position: relative;
overflow: hidden;	
}
.cuadrosnums:before {
content: "";
display: block;
padding-top: 100%;
}
.cuadrosnums .contnums{
position:  absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
color: white;
text-align: center;
padding:15px;
}
.cuadrosnums .contnums p.numeros {
font-weight:bold;
color:#FFF;
margin-bottom:0;
}
.cuadrosnums .contnums p span {
display: block;
}
.cuadrosnums .contnums p span.nums {
font-size:5.8em;
text-shadow:none;
line-height: 1.2;
}
.cuadrosnums .contnums p span.texts {
font-size:1.1em;
}
.conTparallax.proyecto {
background-image: url('../img/fondo-proyecto.jpg');	
background-color:transparent;
background-color:rgba(0,51,51,0.2);
}
.conTparallax.proyecto.mobil {
background: url('../img/fondo-proyecto.jpg') no-repeat fixed 50% 0 black;
-webkit-background-size: cover;
-moz-background-size: cover;
background-size: cover;
overflow: hidden;
background-attachment: scroll;
}
#titu-proyecto {
font-size:4.5em;
font-weight:bolder;
}
#txt-podemos {
font-size: 3.2em;
font-weight: 400;
}
.cabecera {
position:relative;
width: 100%;
height: 85vh;
height:75vh;
}
.img-fluid.img-coverf,
.img-fluid.img-coverf .img-fluid {
object-fit:cover;
object-position: center center;
width: 100%;
height: 100%;
}
.conTcab {
position:absolute;
top:0;bottom:0;
left:0;right:0;
margin:0;padding:0;
}

/* QUIEN SOY */
.titu-quiensoy {
color:#FFF;
text-align:center;
text-shadow: 5px 2px 3px #000;
font-size: 3em;
/*background-color: rgba(0,161,146,0.2);*/
}
.conTparallax.quiensoy {
background-image: url('../img/fondo-quiensoy.jpg');	
background-color:transparent;
background-color:rgba(0,51,51,0.2);
}
.conTparallax.quiensoy.mobil {
background: url('../img/fondo-quiensoy.jpg') no-repeat fixed 50% 0 black;
-webkit-background-size: cover;
-moz-background-size: cover;
background-size: cover;
overflow: hidden;
background-attachment: scroll;
}
.quien-tel,
.quien-con,
.quien-tel:hover,
.quien-con:hover,
.quien-tel:focus,
.quien-con:focus {
font-family: 'Aller';
color:#00A192;
font-weight:800;
text-decoration:underline;
}
.quien-tel:hover,
.quien-con:hover {
color:#575757;	
}
/* FIN QUIEN SOY */
/* servicios */
.jcarousel-wrapper.servicios {
border: none;
-webkit-border-radius: 0;
-moz-border-radius: 0;
border-radius: 0;
}
.jcarousel-wrapper.servicios .jcarousel {
padding-top:10px;
padding-bottom:10px;
}
ul#jcjmfs li {
position:relative;
box-shadow: -1px 0px 0px 0px black, -1px 0px 0px 0px black;
}

.jcarousel-wrapper.servicios .lnk-servicios {
display:block;
max-width:100%;
max-height:100%;
text-align:center;
text-decoration:none;
padding-top: 5px;
padding-bottom: 5px;
margin: 2px;
}
ul#jcjmfs li.active .lnk-servicios {
background-color: rgba(0,0,0,.05);
}
.jcarousel-wrapper.servicios .lnk-servicios img {
margin:0 auto;
max-width:70%;
}
.jcarousel-wrapper.servicios .lnk-servicios .txtjcar {
display:block;
width:100%;
margin:0;
padding:0;
font-size: .7rem;
line-height: 1;
color: #000;
margin-top:10px;
}
.jcarousel-wrapper.servicios .jcarousel-control-prev {
left: -15px;
}
.jcarousel-wrapper.servicios .jcarousel-control-next {
right: -15px;
}
.jcarousel-wrapper.servicios .jcarousel-control-prev,
.jcarousel-wrapper.servicios .jcarousel-control-next {
background: #00A192;
}
#accSericios .accordion-button:not(.collapsed) {
color: #fff;
background-color: #00A192;
}
#accSericios .accordion-button:not(.collapsed)::after {
background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='rgb(255 255 255)' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e")
}
#accSericios .accordion-button:focus {
box-shadow: 0 0 0 0.25rem rgba(0,161,146,0.25);
}
#accSericios .accordion-item {
border-color:#58595B;
}
ul.lista-coll li {
color:#575757;
}
ul.lista-coll li::marker {
color:#00A192 !important;
}
a.lnk-topcol {
margin-top:15px;
color:#fff;
text-decoration:none;
}
/* fin de serbvicios */
#whatsappfl {
position: fixed;
bottom: 80px;
right: 10px;
width: 50px;
height:50px;
text-align: center;
z-index:10;
}
#whatsappfl.contacto {
bottom: 152px;
}
.lnk-whatsappfl {
display:block;
width:100%;
height:100%;
background-image:url("../img/logos/whatsapp.png");
background-position:center center;
background-repeat:no-repeat;
background-size:auto 100%;
}
/* PIEDE PÁGINA */
footer * {
color:#FFFFFF;
}
footer ul.menu-pie {
padding-left:0;
}
footer ul.menu-pie li {
list-style:none;
text-transform:uppercase;
padding:4px 8px 4px 0;
}
footer ul.menu-pie li a {
display:block;	
text-decoration:none;
}
footer a:hover{
color:#000;
}
footer h3 {
text-align:center;	
}
footer img,
footer p {
margin-bottom:5px;	
}
footer .lnk-titulogo {
align-items: center;
justify-content: end;
}
footer .lnk-titulogo .sptitulogo {
color: #fff;
}
footer .conTpie2 {
position:relative;
}
footer .conTpie2 .conTxtp2 {
display:block;
position:absolute;
top:0;bottom:0;
left:0;right:0;
text-align:center;
vertical-align:middle;
}
footer .conTpie2 .conTxtp2 p {
color:#fff;
font-size:1rem;
text-align:center;
vertical-align:middle;
display:block;
width:100%;
margin-bottom:0;
text-shadow: 5px 2px 3px #000;
background-color: rgba(0,161,146,0.4);
}
footer .conTpie2 .conTxtp2 p a.lnk-txtpc {
text-decoration:none;
display:block;
}
footer .conTpie2 .conTxtp2 p a.lnk-txtpc:hover,
footer .conTpie2 .conTxtp2 p a.lnk-txtpc:hover strong {
color:#fff;font-weight:bold;
text-shadow: none;
background-color: rgba(0,161,146,0.3);
}
footer .conTpie2 picture,
footer .conTpie2 img {
object-fit:cover;
object-position: center center;
width: 100%;
height: 100%;
}
.lineaderecha::before,
.lineascentro::before,
.lineascentro::after,
.lineaizquierza::after {
content:"";
position:absolute;
top:0;
bottom:0;
width:1px;
background-color:#FFFFFF;
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
filter: alpha(opacity=60);
-moz-opacity:0.6;
-khtml-opacity: 0.6;
opacity: 0.6;	
}
.lineaderecha::before,
.lineascentro::before {
right:0px;	
}
.lineascentro::after,
.lineaizquierza::after {
left:0px	
}
/* FIN PIEDE PÁGINA */
/* formu_contacto */
#formu_contacto.ejemanch {
display:inline-block;
text-align: left;
}
#formu_contacto .form-control {
font-weight: normal;
font-style:normal;
font-size:22px;
line-height:28px;
-webkit-border-radius: 0;
-moz-border-radius: 0;
-o-border-radius: 0;
border-radius:0;
border:1px solid #00A192;
color:#58595b;
}
form#formu_filemanup .form-control {
-webkit-border-radius: 0;
-moz-border-radius: 0;
-o-border-radius: 0;
border-radius:0;
border:1px solid #00A192;
color:#58595b;
}
#formu_contacto .form-control:focus,
form.form-control:focus {
color: #000000;
background-color: #fff;
border-color: #000000;
outline: 0;
box-shadow: 0 0 0 .2rem rgba(0,161,146,.5);
}
#formu_contacto .form-control::-webkit-input-placeholder {
font-weight: normal;
font-style:normal;
font-size:22px;
line-height:28px;
color: #58595b;
text-transform: none;
}
#formu_contacto .form-control:focus::-webkit-input-placeholder {
color: #31353B;
}
#formu_contacto .form-control::-moz-placeholder {
font-weight: normal;
font-style:normal;
font-size:22px;
line-height:28px;
color: #58595b;
text-transform: none;
}
#formu_contacto .form-control:focus::-moz-placeholder {
color: #31353B;
}
#formu_contacto .form-control:-ms-input-placeholder {
font-weight: normal;
font-style:normal;
font-size:22px;
line-height:28px;
color: #58595b;
text-transform: none;
}
#formu_contacto .form-control:focus:-ms-input-placeholder {
color: #31353B;
}
#formu_contacto .form-control:-moz-placeholder {
font-weight: normal;
font-style:normal;
font-size:22px;
line-height:28px;
color: #58595b;
text-transform: none;
}
#formu_contacto .form-control:focus:-moz-placeholder {
color: #31353B;
}

form .form-control::-webkit-input-placeholder {
font-weight: normal;
font-style:normal;
font-size:22px;
line-height:28px;
color: #58595b;
text-transform:none;
}
form .form-control:focus::-webkit-input-placeholder {
color: #31353B;
}
form .form-control::-moz-placeholder {
font-weight: normal;
font-style:normal;
font-size:22px;
line-height:28px;
color: #58595b;
text-transform: none;
}
form .form-control:focus::-moz-placeholder {
color: #31353B;
}
form .form-control:-ms-input-placeholder {
font-weight: normal;
font-style:normal;
font-size:22px;
line-height:28px;
color: #58595b;
text-transform: none;
}
form .form-control:focus:-ms-input-placeholder {
color: #31353B;
}
form .form-control:-moz-placeholder {
font-weight: normal;
font-style:normal;
font-size:22px;
line-height:28px;
color: #58595b;
text-transform: none;
}
form .form-control:focus:-moz-placeholder {
color: #31353B;
}

#formu_contacto label,
form label,
#formu_contacto label.form-check-label,
#formu_contacto label.custom-control-label,
form label.form-check-label,
form label.custom-control-label {
font-weight: normal;
font-style:normal;
color: #31353B;
font-size: 14px;
  line-height: 16px;
}

#formu_contacto label.form-check-label a,
#formu_contacto label.custom-control-label a,
form label.form-check-label a,
form label.custom-control-label a {
font-weight:normal;
font-style:bold;
color: #00A192;	
}
#formu_contacto .form-check-input {
background-color: transparent;
border-color: #00A192;
}
#formu_contacto .form-check-input:checked[type="checkbox"] {
background-color:#00A192;
border-color: #00A192;
}
#formu_contacto .form-check-input:focus,
form .form-check-input:focus {
border-color:#000000;
outline: 0;
box-shadow: 0 0 0 .25rem rgba(0,0,0,.25);
}
#formu_contacto .btn.btn-formu,
.lnk-configperf {
font-weight: normal;
font-style:normal;
font-size: 27px;
line-height: 31px;
color: #fff;
text-align: center;
box-shadow: 0 3px 6px #ddd;
border-radius: 10px;
text-decoration: none;
padding: 6px 8px;
-webkit-border-radius: 20px;
-moz-border-radius: 20px
-o-border-radius: 20px;
border-radius: 20px;
background-color: #00A192;
margin: 0 auto;
float:right;
}
#formu_contacto #btn-cont.btn.btn-formu {
display: block;
width: 100%;
color: #ddd;
text-align: center;
text-transform: uppercase;
text-decoration: none;
padding: .5rem 1rem;
font-style: normal;
font-size: 22px;
line-height: 28px;
}
#formu_contacto .btn.btn-formu:hover,
form .btn:hover,
.lnk-configperf:hover {
background-color: #fff;
color: #00A192 !important;
box-shadow: 0 0 0 .2rem rgba(0,161,146,.5);
}
#formu_contacto .btn.btn-formu:focus,
form .btn:focus,
.lnk-configperf:focus {
box-shadow: 0 0 0 .2rem rgba(0,161,146,.5);
}
#formu_contacto .valid-feedback,
form .valid-feedback {
width: 100%;
margin-top: .25rem;
font-size: .875em !important;
color: #198754 !important;
}
#formu_contacto .invalid-feedback,
form .invalid-feedback {
idth: 100%;
margin-top: .25rem;
font-size: .875em !important;
color: #dc3545 !important;
}
.img-logcon {
max-width:50%;
margin-bottom:10px;
}
.addcon {
margin-bottom:0;
color: #575757;
}
.lnk-mailad,
.lnk-telad {
color:#00A192;
text-decoration:none;
}
.lnk-mailad:hover,
.lnk-telad:hover {
color:#000000;
}
/* fin formu contacto */

#top-link-block.hidden {
position: absolute;
bottom: -82px;
right: 10px;
display:none;
}
#top-link-block {
position: fixed;
bottom: 18px;
right: 10px;
display: inline-block;
z-index:100;
}
#top-link-block.contacto {
bottom: 90px;
}

#top-link-block a.well.well-sm,
#top-link-block a.well.well-sm:active,
#top-link-block a.well.well-sm:focus {
padding: 0px;
background-color: transparent;
outline: none;
display: inline-block;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
-o-border-radius: 50%;
border-radius: 50%;
vertical-align: middle;
line-height: 1;
width: 35px;
height: 35px;
background-position:center center;
background-size: 100% auto;
background-repeat:no-repeat;
border:1px solid #00A192;
background-color:#fff;
background-image:url('../img/iconos/to-top.png');
text-decoration: none;
}
#top-link-block a.well.well-sm {
-webkit-transition: border .5s ease-out;
-moz-transition: border .5s ease-out;
-o-transition: border .5s ease-out;
transition: border .5s ease-out;
}
#top-link-block a.well.well-sm:hover {
text-decoration: none;
-webkit-border-radius: 50%; 
-moz-border-radius: 50%; 
-o-border-radius: 50%; 
border-radius: 50%;
background-image:url('../img/iconos/to-top-negro.png');
border:1px solid #000;
background-color:#ffffff;
}
#top-link-block a.well.well-sm {
-webkit-transition: background .5s ease-out;
-moz-transition: background .5s ease-out;
-o-transition: background .5s ease-out;
transition: background .5s ease-out;
}


#configura-cook {
position: fixed;
bottom: 18px;
left: 10px;
z-index: 100001;
width: 35px;
height: 35px;
text-align: center;
vertical-align: middle;
}
#configura-cook a.well.well-sm {
padding: 4px;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
-o-border-radius: 50%;
border-radius:50%;
display: block;
width: 35px;
height:35px;
background-position:center center;
background-size: 80% auto;
background-repeat:no-repeat;
border:1px solid #00A192;
background-color:#fff;
background-image:url('../img/iconos/config-cookies.png');
text-align: center;
vertical-align: middle;
text-decoration:none;
-webkit-transition: border .5s ease-out;
-moz-transition: border .5s ease-out;
-o-transition: border .5s ease-out;
transition: border .5s ease-out;
}
#configura-cook a.well.well-sm:hover {
background-image:url('../img/iconos/config-cookies-negro.png');
border:1px solid #000;
background-color:#fff;
text-decoration:none;
}
#configura-cook a.well.well-sm {
-webkit-transition: background .5s ease-out;
-moz-transition: background .5s ease-out;
-o-transition: background .5s ease-out;
transition: background .5s ease-out;
}

/*---------------------------------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------------------------------*/
/* POR DEFECTO MODALS E LIGHTBOX, REDES Y FIN */
/*--------------------------------------------*/
#carga-modal .modal-content,
#redes-modal .modal-content {
background-color: #F4F4F4;
border: 1px solid #00A192;
-webkit-box-shadow: 0 5px 15px rgba(0,161,146,.89);
box-shadow: 0 5px 15px rgba(0,161,146,.89);
}
#carga-modal .modal-content.confcookies {
background-color: #F4F4F4;
border: 1px solid #00A192;
-webkit-box-shadow: 0 5px 15px rgba(0,161,146,.89);
box-shadow: 0 5px 15px rgba(0,161,146,.89);	
}
#carga-modal .modal-header,
#redes-modal .modal-header {
border-bottom: 1px solid #00A192;
}
#carga-modal .modal-header #titulo-modal {
color:#58595b;
font-weight:bold;	
}
#carga-modal .modal-content.confcookies .modal-header {
border-bottom: 1px solid #00A192;	
}
#carga-modal .modal-content.confcookies .modal-header #titulo-modal {
color: #58595b;	
}
#carga-modal .modal-dialog.modal-xl.modalzoom {
max-width: 90% !important;
}
#carga-modal .modal-dialog.modalzoom #modal_cuerpo {
text-align:center;
}
#carga-modal .modal-dialog.modalzoom #modal_cuerpo .img-fluid {
margin:0 auto;
}
#carga-modal #btn-confcook {
z-index: 100;
position: relative;
}
/*
#carga-modal .modal-content .modal-body #modal_cuerpo *{
font-weight: normal;
font-style: normal;
font-size: 12pt;
color: #2C0102;
line-height: 14.006pt;
}
*/
#carga-modal .modal-content.confcookies .modal-body #modal_cuerpo *{
color: #2C0102;	
}
#carga-modal .modal-footer,
#redes-modal .modal-footer {
border-top: 1px solid #00A192;
}
#carga-modal .modal-content .modal-footer {
border-top: 1px solid #00A192;	
}
#carga-modal .modal-content .modal-footer button {
font-weight: normal;
font-style: normal;
font-size: 18px;
color: #00A192;
text-align: center;
text-decoration: none;
padding: 2px 8px;
border: 1px solid #707070;
}
#carga-modal .modal-content .modal-footer button:hover {
background-color: #000;
color: #fff;	
}
#carga-modal .modal-content .modal-footer button:focus {
box-shadow: 0 0 0 .2rem rgba(0, 0, 0,.5);
}
#cont_cook.container-fluid,
#cont_cook.container-fluid.hide {
width: 100%;
position: fixed;
bottom: 1px;
left: 0;
background-color: #00A192;
min-width: 100%;
color: #fff;
display: none;
opacity: 1;
border-top: 2px solid #00A192;
border-bottom: 2px solid #00A192;
z-index: 2000000;
}
#cont_cook.container-fluid #p_cook {
font-weight:normal;
font-style:normal;
font-size:12pt;
line-height:13pt;
color:#fff;
text-align:center;
}
#cont_cook div.row div.col-md-12.text-center {
padding-top:1%;padding-bottom:1%;
}
.bot_cook {
display: inline;
margin: auto 0;
color: #000000;
line-height: 1;
border-color: #000;
background-color:#fff;
}
#cont_cook.container-fluid a {
color:#000;
font-weight:600;
font-style:italic;
text-decoration:underline;
}
#cont_cook.container-fluid #p_cook {
color:#fff;	
}
.bot_cook {margin: auto auto auto 10px;}
#cont_cook.container-fluid a:hover {
color: #000;	
}
.bot_cook:hover {
border-color: #fff;
background-color:#fff;	
color:#00A192;
}
.socialshares-btn {
float: left !important;
margin-right: 10px !important;
margin-bottom: 10px !important;
margin-left: 0 !important;
}
#carga-modal,
#redes-modal {
z-index: 99999999999999999;
}
.ekko-lightbox .modal-header h4.modal-title {
color:#fff;
font-weight: 600;
font-style: italic;
font-size:100%;
text-transform:uppercase;
}
.ekko-lightbox .modal-footer {
text-shadow:1px 2px 2px #fff;	
}
.ekko-lightbox {
padding-top: 5px;
/*display: block !important;*/
}
.ekko-lightbox .modal-dialog{
padding-left: 30px;
padding-right: 30px;
margin-top: 5px !important;
padding-left: 5px;
padding-right: 5px;
margin-top: 0px !important;
margin-bottom: 0px;
}
.ekko-lightbox .modal-dialog .modal-content,
.ekko-lightbox .modal-dialog .modal-content .modal-header {
color: #fff;	
background-color: transparent;
border-color: #FF0000;
border-color:transparent;
}
.ekko-lightbox .modal-dialog .modal-content .modal-header {
padding: 0px 10px;
display: block;
line-height: 1;
margin: 0;
}
.ekko-lightbox .modal-dialog .modal-content {
font-weight: normal;
font-size: 11pt;
color: #000;
line-height: 14.006pt;
border: 1px solid #FF0000;
border:none;
-webkit-box-shadow: 0 5px 15px rgba(215,39,38,.89);
box-shadow: 0 5px 15px rgba(215,39,38,.89);
-webkit-box-shadow:none;
box-shadow:none;
}
.ekko-lightbox .modal-dialog .modal-content .modal-header button.close {
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
-o-border-radius: 4px;
border-radius: 4px;
padding: 2px 3px;
color:#FF0000;
opacity:1;
border:none;
margin:0 2px -1rem 0;
position: absolute;
right: 15px;
top: 55px;
z-index: 10000;
}
.ekko-lightbox .modal-dialog .modal-content .modal-header button.close span {
font-size: 15pt;
line-height: 1;
display: block;
width: 15px;
}
.ekko-lightbox .modal-dialog .modal-content .modal-header button.close:hover {
border-color: #000;
color:#000;
}
#carga-modal .modal-content.confcookies .modal-header button.close {
color:#FF0000;
border:1px solid #FF0000;
padding: 2px 5px;
margin:0 2px -1rem 0;
}
#carga-modal .modal-content.confcookies .modal-header button.close:hover {
color:#000;
border:1px solid #000;		
}
#carga-modal .modal-content.confcookies .modal-footer .btn.btn-default.confirm {
border:1px solid #FF0000;
color:#000;	
}
.ekko-lightbox .modal-dialog .modal-content .modal-body {
padding:6px;	
}
.ekko-lightbox .modal-dialog .modal-content .modal-body img.img-fluid {
border:1px solid #FF0000;
}
.ekko-lightbox.modal.fade.in.clasextra {
padding: 0 !important;	
}
.ekko-lightbox.modal.fade.in.clasextra .modal-dialog{
padding: 0 !important;
overflow: auto !important;
margin: 0 auto !important;
}
.ekko-lightbox.modal.fade.in.clasextra {
width: 100% !important;
min-width: 100% !important;
max-width: 100% !important;
height:100% !important;
min-height:100% !important;
max-height: 100% !important;
}
.ekko-lightbox.modal.fade.in.clasextra .modal-body {
overflow-y: auto !important;
max-height: 100% !important;
min-height: 100% !important;
height: 100% !important;
}
.ekko-lightbox-nav-overlay a {
font-style:normal !important;
}
.modal.lightbox > .modal-dialog.modal-dialog-centered.modal-xl {
max-width:90% !important;
max-height:90% !important;
}