/* =========================
   FUENTES (mismo naming)
   ========================= */


   @import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

   @font-face {
      font-family: 'glancyrbold';
      src: url('../fonts/glancyr_variable-vf-webfont.woff2') format('woff2'),
           url('../fonts/glancyr_variable-vf-webfont.woff') format('woff');
      font-weight: normal;
      font-style: normal;

  }

  html,
  body{
    width: 100%;
    float: left;
    overflow-x: hidden;
    font-family: "Poppins", sans-serif;

  }

   .redes-sociales{
      width: 100%;
      background-color: #ececec;
   }

   .social-list {
       list-style: none;
       margin: 10px 0;
       padding: 0;
       display: flex;
       float: right;
   }

   .social-list__item {
       display: inline-flex;
       padding: 0 1rem;
   }

   .social-link {
       display: inline-flex;
       align-items: center;
       justify-content: center;
       text-decoration: none;
   }

   .social-list svg{
    width: 25px;
   }

   .home header{
    position: fixed;
   }


   header{
    background-color: #ffffffc2;
    width: 100%;
    float: left;
    z-index: 9;
    position: relative;
   }

   header .nav-link,
   .dropdown-item{    
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 18px;
    margin: 0 1rem;
   }

   header .btn-verde{
    /*margin-left: 5%;*/

   }

  header .navbar-nav .nav-item:last-child {
       margin-left: 10rem; /* ajusta el valor a tu gusto */
   }

   header .btn-verde a{
    background: #006a50;
    color: #fff;
    width: 100%;
    float: left;
    padding: 10px 15px;
    border-radius: 5px;
    text-align: center;
   }

   .main-carousel .carousel-cell {
     width: 100%;
     height: 100vh;        /* o la altura que quieras */
     background-size: cover;
     background-position: center;
     background-repeat: no-repeat;
   }

   header .logo{
    height: 65px;
    padding: 1rem;
   }

   .slide-caption{
      font-size: 100px;
      position: absolute;
      z-index: 1;
      width: 50%;
      top: 45%;
      left: 25%;
      text-align: center;
      font-family: 'glancyrbold';
      color: #0e725a;
      line-height: 1;
   }

    .slide-caption span{
      font-size: 25px;
      text-align: center;
      font-family: 'Poppins';
      font-weight: 500;
      color: #0e725a;
      width: 100%;
      float: left;
   }

   .quienes-somos-home{
    width: 100%;
    float: left;
    background:url("../img/fondo-quienes-somos.jpg")no-repeat;
    padding: 14rem 0;
   }

   .quienes-somos-home h2{
      font-size: 60px;
      font-family: 'glancyrbold';
      color: #fff;
   }

   .quienes-somos-home p{
      font-size: 20px;
      font-family: 'Poppins';
      font-weight: 100;
      color: #fff;

   }

   .quienes-somos-home p strong{
      font-weight: 800;

   }

   .quienes-somos-home img{
    width: 100%;
    height: 60vh;
    border-radius: 30px;
    object-fit: cover;
   }

   .quienes-somos-home .contenido{
    margin-left: 10%;
   }

   .quienes-somos-home a{
      color: #005f48;
      background-color: #fff;
      border: 1px solid #fff;
      font-size: 20px;
      width: 100%;
      margin-top: 4rem;
      padding: 1rem;
      text-align: center;
      display: block;
      border-radius: 10px;
   }

   .beneficios-home{
      width: 100%;
      float: left;
      padding: 14rem 0 5rem;
      background: #efefef;
   }

   .beneficios-home h2{
      color: #000;
      font-size: 60px;
      font-family: 'glancyrbold';
      text-align: center;
   }

   .beneficios-section {
    position: relative;
    width: 100%;
    padding: 30px 0;
    display: flex;
    align-items: center;
}

.beneficios-prev,
.beneficios-next {
    background: #ffffff;
    border: none;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    font-size: 22px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 15px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    transition: all .3s;
}

.beneficios-prev:hover,
.beneficios-next:hover {
    transform: scale(1.1);
}

.beneficios-carousel {
    width: 100%;
}

.beneficios-carousel .carousel-cell {
    width: 30%; /* Tamaño de la tarjeta */
    margin: 4rem 1rem;
    height: 380px;
    padding: 4rem 1rem;
}

.beneficio-card {
    background: #fff;
    padding: 35px 30px;
    height: 100%;
    border-radius: 14px;
    text-align: center;
    box-shadow: 8px 8px 25px rgba(0,0,0,0.08);
    transition: transform .25s ease;

}

.beneficio-card:hover {
    transform: translateY(-5px);
}

.beneficio-icon img {
    width: 90px;
    margin: 0 auto 20px;
}

.beneficio-title {
    font-size: 18px;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 10px;
}

.beneficio-text {
    font-size: 15px;
    color: #444;
}


.beneficios-carousel .flickity-button:hover{
  background: #006b50;
}

.beneficios-carousel .flickity-button:hover svg{
  fill: #fff;
}

.somos-expertos{
  background: #efefef;
  width: 100%;
  float: left;
  padding-bottom: 15rem;
}

.somos-expertos h2{
  font-size: 342px;
  text-transform: uppercase;
  font-family: 'glancyrbold';
  color: #006a50;
  line-height: 340px;
}

.somos-expertos h3 span{
  text-transform: uppercase;
  font-family: 'glancyrbold';
  color: #006a50;
  font-size: 80px;
  text-transform: uppercase;
  line-height: 20px;
  margin-left: 15px;
}

.somos-expertos h2.segundo{
  font-size: 558px;
  line-height: 380px;
  margin-left: 15px;
  position: relative;
}

.somos-expertos h2.segundo::before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 800px;
    background: url(../img/explosion.png) no-repeat;
    bottom: 5%;
    background-size: contain;
    left: 20%;
    z-index: 1;
}

.bg-blur{
  border-radius: 10px;
  background: #ffffffbf;
  width: 100%;
  padding: 4rem;
  z-index: 1;
  position: relative;
  margin-top: 98%;
  margin-left: -40%;
  box-shadow: 8px 8px 25px rgba(0,0,0,0.08);
  text-align: center;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(10px);

}

.bg-blur h4{
  font-size: 35px;
  font-family: 'glancyrbold';
}

.bg-blur p{
  font-size: 20px;
}

.bg-blur form{
  width: 100%;
  margin-top: 3rem;
}

.bg-blur form input{
  width: 100%;
  background: transparent;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  border-bottom: 1px solid #000;
  color: #000;
}

.bg-blur form textarea{
  width: 100%;
  background: transparent;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  resize: none;
  border-bottom: 1px solid #000;
  color: #000;
  height: 150px;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #000;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #000;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #000;
}
:-moz-placeholder { /* Firefox 18- */
  color: #000;
}

.bg-blur input.wpcf7-form-control.wpcf7-submit.has-spinner{
  background: #006a50;
  color: #fff;
  border: 1px solid #006a50;
  font-size: 20px;
  width: 100%;
  padding: 10px;
  text-align: center;
  display: block;
  border-radius: 10px;
  float: right;
}

 footer{
  width: 100%;
  float: left;
  background: url("../img/footer.png")no-repeat;
  background-size: cover;
  padding: 5rem 0 3rem;
  color: #fff;
 }

 footer a,
 footer .nav-link{
  color: #fff;
  text-align: left;
  font-size: 20px;
  font-weight: 100;
  width: 100%;
  display: block;
 }

 footer h5{
  text-transform: uppercase;
  font-weight: 700;
  font-size: 22px;
  margin-bottom: 3rem;
 }

 footer .copy{
  text-align: center;
  text-transform: uppercase;
  font-size: 14px;
  margin-top: 4rem;
 }

 #menu-menu-footer li{
  width: 100%;

 }

 footer .dropdown-item, 
 footer .dropdown-item:active{
  font-size: 14px;
 }

 footer .contact-footer a{
  margin-bottom: 15px;
 }


 footer h5 a{
  text-transform: uppercase;
  font-weight: 700;
  font-size: 22px;
 }

 .w-80{
  width: 60%!important;
 }

 header .dropdown-menu .nav-item:last-child{
  margin-left: 0;
 }


 .about-parallax {
    position: relative;
    width: 100%;
    height: 60vh;
    background-size: cover;
    background-position: center;
    background-attachment: fixed; /* PARALLAX DESKTOP */
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.about-parallax-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.25); /* opcional */
}

.about-parallax-overlay a{
  width: 100%;
  height: 100%;
  display: block;
}

.about-parallax-content {
    position: relative;
    z-index: 2;
    text-align: center;
}

.about-parallax-content h1 {
    color: #fff;
    font-size: 3rem;
    font-weight: 800;
    margin: 0;
}

.page h1{
  font-size: 102px;
  margin-bottom: 4rem;
}

.fondo-quienes{
  background: url("../img/fondo-quienes-somos.jpg") no-repeat;
  padding: 8rem 0;
  color: #fff;
  background-size: cover;
  background-attachment: fixed;
}

.fondo-quienes p{
  font-size: 22px;
  font-weight: 100;
  text-align: center;
}


.fondo-quienes p strong{
  font-weight: 700;
}


.experiencia-card{
  background: #006b50;
  border-radius: 10px;
  border: 1px solid #0f8163;
  padding: 2rem;
  text-align: center;
  margin-top: 4rem;
}

.experiencia-card h3,
.fondo-quienes h3 {
  text-transform: uppercase;
  padding: 2rem 0;
  font-weight: 700;
  font-size: 24px;
  min-height: 98px;
}

.experiencia-card p{
  font-weight: 400;
  font-size: 20px;
}

.experiencia{
  background: #efefef;
  width: 100%;
  float: left;
  padding-bottom: 15rem;
  padding-top: 15rem;
}

.experiencia h2{
  font-size: 342px;
  text-transform: uppercase;
  font-family: 'glancyrbold';
  color: #006a50;
  text-align: center;
  line-height: 200px;
}

.experiencia h3{
  text-transform: uppercase;
  font-family: 'glancyrbold';
  color: #006a50;
  font-size: 80px;
  text-transform: uppercase;
  line-height: 20px;
  margin-left: 15px;
  text-align: center;
  display: block;
  margin-bottom: 10rem;
}

.experiencia h2.segundo{
  font-size: 400px;
  line-height: 370px;
}

.experiencia h2.tercero{
  position: relative;
  font-size: 560px;
  line-height: 380px;
}

.experiencia h2.tercero::before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 800px;
    background: url(../img/maquinaria.png) no-repeat;
    bottom: 0;
    background-size: contain;
    left: 40%;
    z-index: 1;
}


.fondo.productos{
  width: 100%;
  float: left;
}

.productos .contenido{
   width: 100%;
   float: left;
   padding: 8rem 0;

}

.productos .contenido h1{
  font-family: 'glancyrbold';
  font-size: 80px;
  text-align: center;
  line-height: 80px;
}

.productos .contenido h2{
  font-family: 'Poppins';
  font-size: 30px;
  font-weight: 400;
  line-height: 20px;
  text-align: center;
  margin-bottom: 6rem;
}

.productos .contenido p{
  font-weight: 500;
  font-size: 20px;
}


.productos .contenido .texto-foto p{
  margin-top: 20%;
}

.bg-claro{
  padding: 10rem 0;
  background: #efefef;
}

.bg-claro h4{
  font-size: 176px;
  font-family: 'glancyrbold';
}


.indicaciones{
  background: #efefef;
  padding: 14rem 0;
}

.indicaciones h2{
  font-family: 'glancyrbold';
  color: #006a50;
  font-size: 102px;
  text-align: center;
  margin-bottom: 4rem;
}


.indicaciones h4{
  font-family: 'glancyrbold';
  color: #006a50;
  font-size: 177px;
}

.indicaciones p{
  color: #080808;
  font-size: 20px;
  margin-left: 10px;
}

.indicaciones p strong{
  font-weight: 700;
}

.indicaciones .central{
  padding: 6rem 0;
}

.sucursales h1{
  font-family: 'glancyrbold';
  color: #080808;
  font-size: 102px;
  text-align: center;
  margin: 6rem 0;
  line-height: 90px;
}

.sucursales iframe{
  margin-top: 4rem;
}

.contacto{
  width: 100%;
  float: left;
}

.contacto .somos-expertos{
  width: 100%;
  float: left;
  background: #fff;
  padding-top: 4rem;
}

.contacto .bg-blur{
    margin-top: 34%;
}


.contacto .somos-expertos h3 span{
  line-height: initial;
}

header .btn-verde .nav-link.active {
    color: #fff ;
}



.category h1{
  font-family: 'glancyrbold';
  color: #080808;
  font-size: 102px;
  text-align: center;
  margin: 6rem 0;
  line-height: 90px;

}


.blog-home{
  box-shadow: 8px 8px 25px rgba(0,0,0,0.1);
  margin-bottom: 4rem;
  border-radius: 20px;
  width: 100%;
  float: left;
}

.blog-home img.principal{
  width: 100%;
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  height: 435px;
  object-fit: cover;
}

.blog-home .text{
  width: 100%;
  float: left;
  padding: 2rem;
}

.blog-home .text h3{
  font-weight: 700;
  text-transform: uppercase;
  font-size: 20px;
  color: #080808;
  min-height: 77px;
}

.single-blog h1.titulo{
  font-family: 'glancyrbold';
  color: #080808;
  font-size: 40px;
  text-align: center;

}

.single-blog h1,
.single-blog h2,
.single-blog h3,
.single-blog h4,
.single-blog h5,
.single-blog h6{
  margin: 4rem 0 2rem;

}

.single-blog p,
.single-blog ul,
.single-blog ol{
  font-size: 16px;

}

.single-blog .border{
  border-radius: 20px;
  height: 435px;
  object-fit: cover;
}
/*

.auto-anim {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity .9s ease, transform 1s ease;
    transition-delay: var(--delay);
}

.auto-anim.in-view {
    opacity: 1;
    transform: translateY(0);
}
*/

article{
  width: 100%;
  float: left;
}


.whatsapp{
  position: fixed;
  bottom: 5%;
  right: 2%;
  background: #fff;
  border-radius: 10px;
  padding: 10px;
  box-shadow: 8px 8px 25px rgba(0,0,0,0.1);
  z-index: 9999999999999999999999;
}

.whatsapp::after{
  background: url(../img/WP-ICONO.svg) no-repeat;
    width: 40px;
    height: 40px;
    content: "";
    display: block;
    position: absolute;
    float: right;
    right: -5%;
    top: -24px;
}

.whatsapp a{
  color: #080808;
  position: relative;
  font-weight: 400;
  width: 100%;
  height: 100%;
  display: block;
}

.flickity-button:disabled{
  display: none;
}

/*********************************************/




/* ============================
   ANIMACIÓN ESTILO GINIVINI ++
   ============================ */

.layered-item {
    opacity: 0;
    filter: blur(6px);
    transform:
        translateY(120px)
        scale(0.90)
        rotate(var(--rot, 0deg));
    transition:
        opacity 1.1s ease-out,
        transform 1.3s cubic-bezier(0.19, 1, 0.22, 1),
        filter 0.8s ease-out;
    position: relative;
    z-index: var(--z, 1);
}

/* Cuando ya entró a la vista */
.layered-item.in-view {
    opacity: 1;
    filter: blur(0px);
    transform:
        translateY(0px)
        scale(1)
        rotate(0deg);
}

/* Sombras estilo stack */
.layered-item {
}



.text-reveal {
    opacity: 0;
    transform: translateY(50px);
    filter: blur(8px);
    transition:
        opacity 0.9s ease-out,
        transform 1.1s cubic-bezier(0.25, 1, 0.5, 1),
        filter 0.6s ease-out;
}

.text-reveal.in-view {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0px);
}








/*****************************************************/

@media (min-width:1920px){
  .somos-expertos {
    padding-left: 12%;
  }
}

@media (min-width: 768px) and (max-width: 1024px){

  html,
  body{
    text-align: center!important;
  }

  .somos-expertos {
    padding-left: 0;
  }

  .slide-caption {
    font-size: 70px;
    width: 100%;
    left: 0;
  }

  .quienes-somos-home {
      width: 100%;
      float: left;
      background: url(../img/fondo-quienes-somos.jpg) no-repeat;
      padding: 14rem 0;
      background-size: cover;
  }

  .quienes-somos-home img{
    margin-bottom: 4rem;
  }

  .quienes-somos-home .contenido{
    margin-left: 0;
  }

  .beneficios-carousel .carousel-cell {
      width: 50%;
   }

   .somos-expertos h2 {
     font-size: 200px;
     line-height: 180px;
   }

   .somos-expertos h2.segundo {
       font-size: 334px;
       line-height: 300px;
   }

   .somos-expertos h2.segundo::before {
     position: absolute;
     content: "";
     display: block;
     width: 100%;
     height: 500px;
     background: url(../img/explosion.png) no-repeat;
     bottom: 5%;
     background-size: contain;
     left: 20%;
     z-index: 1;
   }

   .bg-blur {
       width: 100%;
       margin-left: 0;
       margin-top: 0;
    }

    footer{
      background-size: cover;
    }

    footer a, 
    footer .nav-link{
      text-align: center; 
    }

    .experiencia h2 {
        font-size: 242px;
        line-height: 200px;
    }

    .experiencia h2.segundo {
        font-size: 300px;
        line-height: 230px;
    }

    .experiencia h2.tercero {
        font-size: 459px;
        line-height: 376px;
    }

    .experiencia-card-img,
    .experiencia-card-img img{
      width: 100%;
    }

    header .navbar-nav .nav-item:last-child {
        margin-left: 0;
    }

    .productos .contenido .texto-foto p {
        margin-top: 0;
    }

    .sucursales h1,
    .category h1 {
        font-size: 90px;
    }

    .blog-home .text h3 {
        font-weight: 700;
        text-transform: uppercase;
        font-size: 17px;
        color: #080808;
        min-height: 147px;
        text-align: left;
    }

    .contacto .bg-blur {
        margin-top: 0;
    }

    .single-blog p, .single-blog ul, .single-blog ol {
        font-size: 16px;
        text-align: justify;
    }

}

@media (max-width: 991px) {
    .about-parallax {
        background-attachment: scroll; /* desactiva parallax en móviles */
        height: 40vh;
    }
}

@media (max-width: 767px){
html,
  body{
    text-align: center!important;
  }

  .somos-expertos {
    padding-left: 0;
  }

  .main-carousel .carousel-cell {
    height: 100vh;
}

  .slide-caption,
  .beneficios-home h2 {
    font-size: 45px;
    width: 100%;
            left: 0;
  }

  .quienes-somos-home {
      width: 100%;
      float: left;
      background: url(../img/fondo-quienes-somos.jpg) no-repeat;
      padding: 14rem 0;
      background-size: cover;
  }

  .quienes-somos-home img{
    margin-bottom: 4rem;
  }

  .quienes-somos-home h2 {
    font-size: 30px;
  }

  .quienes-somos-home p,
  .quienes-somos-home a {
    font-size: 16px;
  }

  .quienes-somos-home .contenido{
    margin-left: 0;
  }

  .beneficios-carousel .carousel-cell {
      width: 100%;
   }

   .somos-expertos h2 {
     font-size: 110px;
     line-height: 140px;
   }

   .somos-expertos h2.segundo {
      font-size: 175px;
      line-height: 125px;
   }

  .somos-expertos h2.segundo::before {
      position: absolute;
      content: "";
      display: block;
      width: 100%;
      height: 390px;
      background: url(../img/explosion.png) no-repeat;
      bottom: 0;
      background-size: contain;
      left: 0;
      z-index: 1;
  }

   .bg-blur {
       width: 100%;
       margin-left: 0;
       margin-top: 0;
    }

    footer{
      background-size: cover;
    }

    footer a, 
    footer .nav-link{
      text-align: center; 
    }

    .experiencia h2 {
        font-size: 135px;
        line-height: 150px;
    }

    .experiencia h2.segundo {
      font-size: 162px;
      line-height: 130px;
    }

    .experiencia h2.tercero {
       font-size: 222px;
       line-height: 215px;
    }

    .experiencia h2.tercero::before {
        height: 400px;
        left: 30%;
    }

    .experiencia-card-img,
    .experiencia-card-img img{
      width: 100%;
    }

    header .navbar-nav .nav-item:last-child {
        margin-left: 0;
    }

    .productos .contenido .texto-foto p {
        margin-top: 0;
    }

    .sucursales h1,
    .category h1 {
        font-size: 40px;
        line-height: initial;
    }

    .blog-home .text h3 {
        font-weight: 700;
        text-transform: uppercase;
        font-size: 17px;
        color: #080808;
        min-height: 60px;
        text-align: left;
    }

    .contacto .bg-blur {
        margin-top: 0;
    }

    .single-blog p, .single-blog ul, .single-blog ol {
        font-size: 16px;
        text-align: justify;
    }


    .page h1 {
        font-size: 45px;
        margin-bottom: 10rem;
    }

    .experiencia h3 {
        font-size: 35px;
      }

      .productos .contenido h1 {
        font-size: 40px;
      }
    .productos .contenido h2 {
        font-weight: 400;
        line-height: initial;
    }

    .indicaciones h2 {
        font-size: 40px;
    }

    .indicaciones h4 {
        font-size: 80px;
    }

    .sucursales h1{
      line-height: initial;
    }

    .productos .contenido h1{
      line-height: initial;
    }

    .single .contenido {
      margin-left: -15px;
  }
  footer a, footer .nav-link {
      font-size: 15px;
  }
}
