.logoTop img{width:300px;}
body {

}
/* ========================================================== */
/*                01. FORMULARIO DE CONTACTO                   */
/* ========================================================== */
#contact-form{
  margin:0 auto;
  width:100%;
  max-width:960px;
  text-align:center;
  margin-bottom:10px;
}
input.contact-input{
  width:100%;
  height:55px;
  padding-left:2%;
  padding-right:2%;
  margin-bottom:20px;
  border: 1px solid #757575;
  background-color: transparent;
  font-size:14px;
  -webkit-border-radius: 5px 5px 5px 5px;
  -moz-border-radius: 5px 5px 5px 5px;
  border-radius: 5px 5px 5px 5px;
}

textarea{
  height:205px;
  margin-bottom:20px;
  width:100%;
  padding-left:2%;
  padding-right:2%;
  padding-top:10px;
  padding-bottom:10px;
  color: #aaa;
  border: 1px solid #757575;
  background-color: transparent;
  font-size:14px;
  -webkit-border-radius: 5px 5px 5px 5px;
  -moz-border-radius: 5px 5px 5px 5px;
  border-radius: 5px 5px 5px 5px;
}
input.white-input::-webkit-input-placeholder,
textarea.white-input::-webkit-input-placeholder { /* WebKit browsers */
    color:#aaa;
}
input.white-input:-moz-placeholder,
textarea.white-input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color:#aaa;
}
input.white-input::-moz-placeholder,
textarea.white-input::-moz-placeholder { /* Mozilla Firefox 19+ */
    color:#aaa;
}
input.white-input:-ms-input-placeholder,
textarea.white-input:-ms-input-placeholder { /* Internet Explorer 10+ */
    color:#aaa;
}

#contact-form input.contact-input:focus, #contact-form textarea.contact-commnent:focus {
  border-color:#f1f1f1;
  outline: none;
}

p.contact_error_box {
    display: block;
    color: #cf4545;
    font-size: 20px;
    font-style: italic;
    padding: 20px 20px;
    border: 1px solid #cf4545;
    -webkit-border-radius: 5px 5px 5px 5px;
    -moz-border-radius: 5px 5px 5px 5px;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    margin: 0 auto;
    margin-bottom: 2%;
    width: 100%;
}
p {
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    color: #555252;
    margin-bottom: 15px;
}

/* ========================================================== */
/*                02. IMAGEN SLIDER TOP CON DESGRADE           */
/* ========================================================== */
.home-banner-top {
    width: 100%;
    position: relative;
    overflow: hidden;
    z-index: 100;
    padding: 170px 0 110px 0;
    background: url(img/gzamora.webp);
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: scroll;
    background-size: cover;
}
.home-banner-oferta {
    width: 100%;
    position: relative;
    overflow: hidden;
    z-index: 100;
    padding: 190px 0 120px 0;
    background: url(img/gzamora.webp);
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: scroll;
    background-size: cover;
}
.slider_degrade {
    position: absolute;
    opacity: 0.77;
    z-index: 10;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: rgba(0,0,0,0.2);
}


/*Inicio Imagen Banner Responsive*/
.banner-top{
  margin-top: 90px;
  width: auto;
  height: 350px;
  background-color: #ffefdf;
  background: -webkit-linear-gradient(45deg, rgba(0,0,0,3) 10%, #ffefdf 90%);
  background: -moz-linear-gradient(45deg, rgba(0,0,0,3) 10%, #ffefdf 90%);
  background: -ms-linear-gradient(45deg, rgba(0,0,0,3) 10%, #ffefdf 90%);
  background: -o-linear-gradient(45deg, rgba(0,0,0,3) 10%, #ffefdf 90%);
  background: linear-gradient(45deg, rgba(0,0,0,3) 10%, #ffefdf 90%);
}
.banner-top img{
  width: 100%;
  height: auto;
  opacity: 0.7;
}
@supports(object-fit: cover){
    .banner-top img{
      height: 100%;
      object-fit: cover;
      object-position: center center;
    }
}
.title-banner{
  position:absolute;
  top:200px;
  left:4%;
  font-size:32px;
  font-weight: 500;
  letter-spacing: 2px;
  color:#FFFFFF;
  text-transform: uppercase;
  text-shadow: black 0.1em 0em 0.3em;
  padding: 2px 10px;
  border-radius: 5px;
  width: 80%;
}

.texto-banner{
  position:absolute;
  top:250px;
  left:4%;
  font-size:22px;
  font-weight: 500;
  letter-spacing: 1px;
  color:#FFFFFF;
  text-shadow: black 0.1em 0em 0.3em;
  padding: 2px 10px;
  border-radius: 5px;
  width: 80%;
}

/*Fin Imagen Banner Responsive*/


.home-slider-interior-inside {
    position: relative;
    z-index: 100;
}

h1.home-title {
    font-size: 46px;
    line-height: 54px;
    font-weight: 500;
    color: #fff;
    letter-spacing: 1px;
}
p.home-subtitle {
    font-size: 19px;
    line-height: 32px;
    font-weight: 400;
    color: #fff;
    margin-bottom: 25px;
}

h1.banner-title {
    font-size: 46px;
    line-height: 54px;
    font-weight: 700;
    color: #FFF;
    letter-spacing: 1px;
}
p.banner-subtitle {
    font-size: 19px;
    line-height: 32px;
    font-weight: 550;
    color: #FFF;
    margin-bottom: 25px;
}

/* ========================================================== */
/*                03. PAGINA LOADING                          */
/* ========================================================== */
#loader{
  background:#25627c;
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 90000;
  left: 0%;
  top: 0%;
}

.sk-three-bounce {
  position:absolute;
  top:50%;
  margin-top:-10px;
  left:50%;
  margin-left:-40px;
  width: 80px;
  text-align: center;
}

.sk-three-bounce .sk-child {
  width: 20px;
  height: 20px;
  background-color: #fff;
  border-radius: 100%;
  display: inline-block;
  -webkit-animation: sk-three-bounce 1.4s ease-in-out 0s infinite both;
  animation: sk-three-bounce 1.4s ease-in-out 0s infinite both;
}

.sk-three-bounce .sk-bounce1 {
    -webkit-animation-delay: -0.32s;
    /* animation-delay: -0.32s; */
}

.sk-three-bounce .sk-bounce2 {
    /* -webkit-animation-delay: -0.16s; */
    /* animation-delay: -0.16s; */
}

@-webkit-keyframes sk-three-bounce {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
            transform: scale(0);
}

40% {
    -webkit-transform: scale(1);
            transform: scale(1); 
}
}

@keyframes sk-three-bounce {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
            transform: scale(0); 
}
40% {
    -webkit-transform: scale(1);
            transform: scale(1); 
}
}

/* ========================================================== */
/*                04. MENU TOP                                */
/* ========================================================== */
.ftco-navbar-light {background: #FFFFFF;box-shadow: 0 0.3125rem 0.9375rem 0 rgba(0,0,0,.07);}
.ftco-navbar-light .navbar-brand {padding-top: .7rem;padding-bottom: .7rem;}
.ftco-navbar-light .navbar-nav > .nav-item > .nav-link {font-size: 14px;padding-top: .7rem;padding-bottom: .7rem;
  padding-left: 20px;padding-right: 20px;color: #656565;font-weight: 500;opacity: 1 !important;font-family: 'Roboto', sans-serif; }
.ftco-navbar-light .navbar-nav > .nav-item > .nav-link span {position: relative;display: block;}
.ftco-navbar-light .navbar-nav > .nav-item > .nav-link span:before {
content: "";position: absolute;color:#FF0606!important;width: 100%;height: 2px;bottom: 0;left: 0;background: #42719E;visibility: visible;-webkit-transform: scaleX(0);-moz-transform: scaleX(0);-ms-transform: scaleX(0);
        -o-transform: scaleX(0);transform: scaleX(0);-webkit-transition: all 0.3s ease-in-out 0s;-moz-transition: all 0.3s ease-in-out 0s;-ms-transition: all 0.3s ease-in-out 0s;
        -o-transition: all 0.3s ease-in-out 0s;transition: all 0.3s ease-in-out 0s; }
.ftco-navbar-light .navbar-nav > .nav-item > .nav-link:hover span:before {
visibility: visible;-webkit-transform: scaleX(1);-moz-transform: scaleX(1);-ms-transform: scaleX(1);-o-transform: scaleX(1);transform: scaleX(1); }
.ftco-navbar-light .navbar-nav > .nav-item a:hover{color:#42719E;}
.activeMenu{color:#42719E!important;font-weight:540!important;}
.activeSubMenu{color:#42719E!important;font-weight:540!important;background: #F3F5F6;}
.dropdown-item:hover{background: #F3F5F6;}


/*Menu derecho*/
.ftco-navbar-light .navbar-toggler {
border: none;cursor: pointer;padding-right: 0;text-transform: uppercase;font-size: 16px;letter-spacing: .1em;}
.ftco-navbar-light .navbar-toggler:hover, .ftco-navbar-light .navbar-toggler:focus {
text-decoration: none;color: #6e5773;outline: none !important; }

/* ========================================================== */
/*                05. FOOTER                                  */
/* ========================================================== */
footer{ background-color:#202020;bottom:44px;width: 100%; }
.footerleft { margin-top:50px;}
.logofooter { margin-bottom:10px; font-size:21px; color:#fff;}
.logofooter span{font-size:14px;margin-left:10px;}
.footerleft p{ color:#E6E0E0; font-size:13px;margin-bottom:4px;}
.footerleft p small{width:84px;float:left;font-size:12px;}
.nameFooter{font-family: 'Roboto', sans-serif;font-weight: 700;color:#FFFFFF;line-height: 35px;letter-spacing:2px;}
.copyright { min-height:40px; background-color:#2e2e2e;bottom: 0;width: 100%;}
.copyright p { text-align:left; color:#FFF; padding:10px 0; margin-bottom:4px;font-size:14px;}
.blockquote{text-align:center;}
b a.footerMenuHover {color: #E6E0E0;font-size:13px;width:100%;float:left; font-weight:normal;margin-bottom:.2rem;line-height:18px}
b a.active{color: #ffc811!important;}
b a.footerMenuHover:hover{color:#ffc811!important;transition:all .5s linear;text-decoration: none;}
.wFooter{width: 83%;color:#7f7f7f;}
b span.footerMenuHover {color: #E6E0E0;font-size:13px;width:100%;float:left; font-weight:normal;margin-bottom:.2rem;line-height:18px}
.titleFotter{font-family:Helvetica,Arial,Verdana,Arial;color:#FFFFFF!important;margin-top: 14px;font-size:18px!important;font-weight:650;letter-spacing:2px; }
/* ========================================================== */
/*                05. BLOQUE MARKETING                        */
/* ========================================================== */

.section-dark{
  background-color:#393f43;
  padding:90px 0;
}
h1.medium-title {
  font-size: 20px;
  text-transform:uppercase;
  font-weight:700!important;
}
h3.medium-title {
  font-size: 20px;
  text-transform:uppercase;
  font-weight:700!important;
}
p.medium-title {
  font-size: 18px;
  font-weight:700!important;
}
ul.features-list-dark{
  display: inline-block;
}

ul.features-list-dark li{
  float:left;
  font-size:16px;
  line-height:28px;
  margin:1px 0;
  text-decoration: none;
  list-style: none;
}
.width-100 {
  width: 100%;
}



/*FIN*/
p.text-section{
    font-size: 14px;
    line-height: 26px;
    font-weight: 400;
    color: #555252;
    margin-bottom: 15px;
}
p.section-subtitle{
  color:#555252;
  font-size: 17px;
  font-family: HelveticaLight,Helvetica;
}

p.section-subtitle.grey{
  color:#bbb;
}

.section-transparent{
  background-color:transparent;
  padding: 50px 0 50px 0;
    background-image: url('img/fondo.jpeg');
    background-size: cover; 
    background-position: center center; 
    background-repeat: no-repeat; 
    background-attachment: fixed; 
    min-height: 100vh; 
}

.section-white{
  background-color:#fff;
  padding: 50px 0 50px 0;
}
.section-whites{
  background-color:#fff;
  padding: 20px 0px;
}
h2.section-title{
  font-size:36px;
  margin:0 0 25px 0;
}

h2.section-title.grey{
  color:#ddd;
}
.section-grey {
    background-color: #eef0f1;
    padding: 50px 0 50px 0;
}

.section-grey-diag {
    background-color: #eef0f1;
    padding: 50px 0 0px 0;
}
.diagonalgreen{
  -webkit-clip-path: polygon(0 55%, 100% 0%, 100% 100%, 0% 100%);
  clip-path: polygon(0 55%, 100% 0%, 100% 100%, 0% 100%);
  width:100%;
  height:100px;
  background-color:#eef0f1;
}
.diagonalwhite{
  -webkit-clip-path: polygon(0 50%, 100% 0%, 100% 100%, 0% 100%);
  clip-path: polygon(0 50%, 100% 0%, 100% 100%, 0% 100%);
  width:100%;
  height:50px;
  background-color:#FFFFFF;
  margin-top: 50px;
}




/*TEST*/

#top-section {
  position: relative;
  width: 100%;
  background: #5D2E46;
  min-height: 200px;
}

#top-section-border {
  
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 70px;
}



/* ========================================================== */
/*                 06. SERVICES                       */
/* ========================================================== */
.service-border-img{
    
    -webkit-border-radius: 5px 5px 0px 0px;
    -moz-border-radius: 5px 5px 0px 0px;
    border-radius: 5px 5px 0px 0px;
    transition: all .50s ease-in-out;
    -moz-transition: all .50s ease-in-out;
    -webkit-transition: all .50s ease-in-out;
}
.service-inner-border{
    background-color: #f7f7f7;
    border: 1px solid #eee;
    color: #616161;
    padding: 20px;
}
.service-item{
  margin:20px 0;
}
.service-inner{
  display:inline-block;
  padding:10px 20px 40px 20px;
  text-align:center;
  /*background-color: #FFFFFF;*/
  background-color: #F6F9FA!important;
    border-bottom: 1px solid #e0e0e0;
    -webkit-border-radius: 0 0 5px 5px;
    -moz-border-radius: 0 0 5px 5px;
    border-radius: 0 0 5px 5px;
    transition: all .50s ease-in-out;
    -moz-transition: all .50s ease-in-out;
    -webkit-transition: all .50s ease-in-out;
}
.service-inner h3{
  font-size:20px;
  margin-bottom:12px;
  margin-top: 12px;
  color:#454545;
  font-weight: 700;
}

.service-inner p{
  margin-bottom:25px;
}

.service-item img{
  -webkit-border-radius: 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0;
}
.popup-wrapper{ display:block; position:relative; overflow:hidden;}
.popup-gallery img {
  position:relative;
  z-index:10;
  width: 100%;
  height: auto;
}

.popup-gallery:hover img {
  opacity: 0.25;
}

.popup-gallery a span.eye-wrapper, 
.popup-gallery a span.eye-wrapper2 {
  background-color:#000;
  position: absolute;
  display: block;
  overflow:hidden;
  z-index: 2;
  height:100%!important;
  top: 0%;
  margin-top: 0px;
  left: 0%;
  right: 0%;
  color:#fff;
  text-align: center;
  font-weight:300;
  opacity: 0;
  padding-top:35%;
  Font-size: 14px;  
}

.popup-gallery a span.eye-wrapper2 {
  -webkit-border-radius: 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0;
}

.popup-gallery a span.eye-wrapper i.eye-icon, .popup-gallery a span.eye-wrapper2 i.eye-icon{
  position: absolute;
  display: inline-block;
  font-size:38px;
  z-index: 3;
  top: 50%!important;
  margin-top: -19px!important;
  left: 0%;
  right: 0%;
}

.popup-gallery a:hover span{
  opacity: 1;
}

.popup-gallery img,
.popup-gallery a span {
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

.space-slider{margin-top:3.7rem;}
#content{width:100%; height:450px; position:relative; background:#99FF33; }
.fontHelvetica{font-family:Helvetica,Verdana,Arial;}
/* =====================
 * PORTAFOLIO
 * =====================
*/
.page-section {
  padding: 100px 0;
}

.page-section h2.section-heading {
  font-size: 40px;
  margin-top: 0;
  margin-bottom: 15px;
}

section#contact .section-heading {
  color: #fff;
}

.page-section h3.section-subheading {
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 75px;
  text-transform: none;
 }


#portfolio .portfolio-item {
  right: 0;
  margin: 0 0 15px;
}

#portfolio .portfolio-item .portfolio-link {
  position: relative;
  display: block;
  max-width: 400px;
  margin: 0 auto;
  cursor: pointer;
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover {
  position: absolute;
  width: 100%;
  height: 100%;
  transition: all ease 0.5s;
  opacity: 0;
  background: rgba(0, 0, 0, 0.7);
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover:hover {
  opacity: 1;
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover .portfolio-hover-content {
  font-size: 20px;
  position: absolute;
  top: 50%;
  width: 100%;
  height: 20px;
  margin-top: -12px;
  text-align: center;
  color: white;
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover .portfolio-hover-content i {
  margin-top: -12px;
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover .portfolio-hover-content h3,
#portfolio .portfolio-item .portfolio-link .portfolio-hover .portfolio-hover-content h4 {
  margin: 0;
}

#portfolio .portfolio-item .portfolio-caption {
  max-width: 400px;
  margin: 0 auto;
  padding: 25px;
  text-align: center;
  background-color: #fff;
}

#portfolio .portfolio-item .portfolio-caption h4 {
  margin: 0;
  text-transform: none;
}

#portfolio * {
  z-index: 2;
}

@media (min-width: 767px) {
  #portfolio .portfolio-item {
    margin: 0 0 30px;
  }
}

.portfolio-modal .modal-dialog {
  margin: 1rem;
  max-width: 100vw;
}

.portfolio-modal .modal-content {
  padding: 100px 0;
  text-align: center;
}

.portfolio-modal .modal-content h2 {
  font-size: 3em;
  margin-bottom: 15px;
}

.portfolio-modal .modal-content p {
  margin-bottom: 30px;
}

.portfolio-modal .modal-content p.item-intro {
  font-size: 16px;
  font-style: italic;
  margin: 20px 0 30px;
 }

.portfolio-modal .modal-content ul.list-inline {
  margin-top: 0;
  margin-bottom: 30px;
}

.portfolio-modal .modal-content img {
  margin-bottom: 30px;
}

.portfolio-modal .modal-content button {
  cursor: pointer;
}

.portfolio-modal .close-modal {
  position: absolute;
  top: 25px;
  right: 25px;
  width: 75px;
  height: 75px;
  cursor: pointer;
  background-color: transparent;
}

.portfolio-modal .close-modal:hover {
  opacity: 0.3;
}

.portfolio-modal .close-modal .lr {
  /* Safari and Chrome */
  z-index: 1051;
  width: 1px;
  height: 75px;
  margin-left: 35px;
  /* IE 9 */
  transform: rotate(45deg);
  background-color: #212529;
}

.portfolio-modal .close-modal .lr .rl {
  /* Safari and Chrome */
  z-index: 1052;
  width: 1px;
  height: 75px;
  /* IE 9 */
  transform: rotate(90deg);
  background-color: #212529;
}

/* =====================
 * FIN PORTAFOLIO
 * =====================
*/

.title {
    display: inline-block;
    font-size: 2.2rem;
    font-weight: 700;
    padding: 10px 0;
    text-align: center;
    letter-spacing: 0.1em;
    line-height: 1.2;
    color: #364d59;
    margin-top: 20px;
    letter-spacing: 0;
}


.titleTwho {
    display: inline-block;
    font-size: 2.2rem;
    font-weight: 700;
    padding: 10px 0;
    text-align: center;
    letter-spacing: 0.1em;
    line-height: 1.2;
    color: #364d59;
    margin-top: 20px;
    letter-spacing: 0;
}

/*Linea centrada*/
.wpex-border-b {
    border-bottom: 1px solid #757575;
    width: 60px;
    margin-top: 0px;
    margin-bottom: 40px;
  }
.wpex-mx-auto {
    margin-right: auto;
    margin-left: auto;
}

.text-contact{
  color: #000000;
  margin-top: -8px;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 16px;

}

.contact-border {
    border-bottom: 1px solid #616161!important;
    width: 60px;
    margin-top: 0px;
    margin-bottom: 40px;
  }

/* =====================
 * NUEVO ESTILO
 * =====================
*/
.warning-line {
height: 10px;
background: repeating-linear-gradient(
  45deg,
  #fcd116,
  #fcd116 10px,
  #000 10px,
  #000 20px
);
}


  .card-title {
    font-size: 1.1rem;
    color: #333;
  }

  .card-text {
    font-size: 0.95rem;
    color: #555;
    font-family:Arial,Helvetica,Verdana;
  }

  .productos h2 {
    font-weight: 600;
    color: #222;
  }
  .line-space{
    line-height: 1!important;
  }

/*SERVICIOS*/
  .servicio-tecnico {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px;
  padding: 40px 20px;
  background-color: #f5f5f5;
}

.servicio-item {
  flex: 1 1 calc(33.333% - 20px);
  background-color: #ffffff;
  border-radius: 8px;
  padding: 20px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  text-align: center;
}

.servicio-item img {
  width: 100%;
  height: auto;
  max-height: 400px;
  object-fit: cover;
  border-radius: 4px;
  margin-bottom: 15px;
}

.servicio-item h3 {
  font-size: 1.2em;
  margin-bottom: 10px;
  color: #333333;
}

.servicio-item p {
  font-size: 1em;
  color: #666666;
}

#modalCarruselInner img {
  max-height: 350px;
  object-fit: contain;
}

.carousel-control-prev,
.carousel-control-next {
  top: 50%;
  transform: translateY(-50%);
  width: auto;
}

@media (max-width: 768px) {
  .servicio-item {
    flex: 1 1 100%;
  }
}
