@font-face {
    font-family: 'LeagueSpartan-ExtraBold';
    src: url('../fonts/LeagueSpartan-ExtraBold.woff2') format('woff2'),
        url('../fonts/LeagueSpartan-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'LeagueSpartan-Regular';
    src: url('../fonts/LeagueSpartan-Regular.woff2') format('woff2'),
        url('../fonts/LeagueSpartan-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

html,
body{
    font-family: 'LeagueSpartan-Regular';
    position: relative;
    overflow-x: hidden;
    width: 100%;
    float: left;
}

a{
    text-decoration: none;
}

.video-principal{
    width: 100%;
    float: left;
    position: relative;
}

nav{
    background: rgb(255,255,255);
    background: -moz-linear-gradient(90deg, rgba(255,255,255,1) 20%, rgba(109,175,58,1) 20%);
    background: -webkit-linear-gradient(90deg, rgba(255,255,255,1) 20%, rgba(109,175,58,1) 20%);
    background: linear-gradient(90deg, rgba(255,255,255,1) 20%, rgba(109,175,58,1) 20%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#6daf3a",GradientType=1);
    padding: 1rem 3rem !important;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    width: 100%;
}

.navbar-brand img{
    width: 100%;
}

a.nav-link {
    text-align:center;
    font-size: 22px;
    color: #fff;
    padding: 0!important;
    margin: 0!important;
}

.nav-item .linea-verde{
    width: 0; /* Initially set width to 0 */
       background: #1e8546; /* Default color of the line */
       border-radius: 10px;
       height: 5px;
       transition: width 0.3s ease; /* Add transition for width change */
}

li.nav-item:hover .linea-verde{
   width: 45px; /* Set the width to the desired length on hover */
}

a.nav-link:hover{
    color: #fff;
    border-color: #1e8546;   
}


li.nav-item {
    padding: 0 .75rem;
}

header{
    position: absolute;    
    width: 100%;
    z-index: 9;
}

video{
    width: 100%;
}

.video-principal .texto{
    position: absolute;
    top: 40%;
    width: 100%;
    padding: 1rem;
}

.video-principal .texto h2{
    font-size: 85px;
    color: #fff;
    font-family:'LeagueSpartan-ExtraBold' ;
    line-height: 70px;
}

.video-principal .texto .linea-verde{
    width: 20%;
    background: #6daf3a;
    border-radius: 10px;
    height: 7px;
}


.body__inner-wrapper {
  height: 100%;
  float: left;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 6rem;
  justify-content: center;
  margin-inline: auto;
}

.outline__text {
  font-family: sans-serif;
  -webkit-text-stroke: 1px black;
  -webkit-text-fill-color: white;
}

.marquee {
  width: 100%;
  pointer-events: none;
  overflow: hidden;
}

.marquee__inner-wrap {
  height: 100%;
  width: 100%;
}

.marquee span {
  text-align: center;
  color: #3c6650;
  font-family:'LeagueSpartan-ExtraBold' ;
  white-space: nowrap;
  font-size: 19px;
  line-height: 1.2;
  padding: 0 1vw 0;
  text-transform: uppercase;
}

.marquee__inner {
    padding: 2rem 0;
  width: fit-content;
  align-items: center;
  display: flex;
  position: relative;
  animation: marquee 50s linear infinite;
  will-change: transform;
}

@keyframes marquee {
  to {
    transform: translateX(-50%);
  }
}

.servicios{
    width: 100%;
    float: left;
    padding: 4rem 0;
}

.servicios h2{
    font-family:'LeagueSpartan-ExtraBold' ;
    color: #7ac142;
    margin-bottom: 2rem;
    font-size: 40px;
}

.servicios p{
    font-size: 22px;
    line-height: 26px;
}

.servicios .carousel{
    width: 100%;
    float: left;
}

.servicios .carousel .carousel-cell{
    width: 33%;
    float: left;
}


.servicios .flickity-prev-next-button,
.certificaciones .flickity-prev-next-button,
.clientes .flickity-prev-next-button,
.nosotros .flickity-prev-next-button{
    top: 110%;
    display: none;
}

.servicios button,
.certificaciones button,
.clientes button{
    background: transparent;
    border:0;
}

.certificaciones{
    background: url(../img/fondo-certificaciones.jpg)no-repeat;
    padding: 5rem 0;
    width: 100%;
    float: left;
}

.certificaciones h2{
    font-family:'LeagueSpartan-ExtraBold' ;
    color: #7ac142;
    margin-bottom: 1rem;
    font-size: 40px;
}

.certificaciones p{
    font-size: 22px;
    line-height: 26px;
}

.certificaciones .carousel{
    width: 100%;
    float: left;
    margin-right: 5rem;
}

.certificaciones .carousel .carousel-cell{
    width: 33%;
    margin-right: 1%;
    float: left;
}

.nosotros{
    width: 100%;
    float: left;
    position: relative;
    padding: 7rem 0 15rem;
    position: relative;
}

.nosotros .hoja1{
    position: absolute;
    top: 15%;
    left: 35%;
    width: 10%;
    z-index: 9;
}

.nosotros .hoja2{
    position: absolute;
    top: 5%;
    left: 0;
    width: 10%;
}

.nosotros .hoja3{
    position: absolute;
    bottom: 10%;
    right:0;
    width: 10%;
}

.nosotros .cuadros {
    width: 100%;
    top: 10%;
    position: absolute;
}

.nosotros .cuadro-fuerte{
    margin-top: 8rem;
}

.nosotros .cuadro-claro {
    background: #3d9246;
    width: 50%;
    position: absolute;
    top: 40%;
    padding: 5rem;
    background-size: 100%;
    border-radius: 30px;
    z-index: 1;
    margin-left: 4rem;
}

.nosotros .galeria {
    margin-top: 13rem;
    width: 80%;
    position: relative;
}

.nosotros h2{
    font-family:'LeagueSpartan-ExtraBold' ;
    color: #fff;
    margin-bottom: 1rem;
    font-size: 40px;
}

.nosotros p{
    font-size: 22px;
    line-height: 26px;
    color: #fff;
}


.nosotros span{
    display: block;
    font-family:'LeagueSpartan-ExtraBold' ;
    color: #5eb800;
    font-size: 100px;
    margin-top: 2rem;
    text-align: center;
}

.nosotros button.nosotros-prev-button {
    transform: rotate(90deg);
    background: transparent;
    border: 0;
    position: absolute;
    top: 0;
    right: 4%;
}

.nosotros button.nosotros-next-button {
    transform: rotate(90deg);
    background: transparent;
    border: 0;
    position: absolute;
    top: 27%;
    right: 4%;
}
.nosotros .carousel-nosotros{
    width: 100%;
    float: left;
}

.nosotros .carousel .carousel-cell{
    width: 100%;
    float: left;
}


.nosotros .carousel .carousel-cell img{
    width: 100%;
    float: left;
}


.clientes{
    padding:3rem 0;
    width: 100%;
    float: left;
}

.clientes .carousel{
    width: 100%;
    float: left;
}

.clientes .carousel .carousel-cell{
    width: 25%;
    margin-right: 1%;
    float: left;
}

.clientes .carousel .carousel-cell img{
    width: 100%;
}

.clientes button{
    margin-top: 5rem;
}

.clientes h2{
    font-family:'LeagueSpartan-ExtraBold' ;
    color: #7ac142;
    margin-bottom: 1rem;
    font-size: 40px;
}

.clientes .anclaje{
    margin-bottom: 1rem;
    width: 100%;
    float: left;
}

.propuesta-de-valor{
    background: url(../img/propuesta-de-valor/fondo.jpg)no-repeat;
    width: 100%;
    float: left;
    padding: 4rem 0 0;
    background-size: 100%;
    margin-top: 8rem;
}

.propuesta-de-valor h2{
    font-family:'LeagueSpartan-ExtraBold' ;
    color: #fff;
    margin-bottom: 1rem;;
    font-size: 40px;
    margin-top: 8rem;
}

.propuesta-de-valor p{
    color: #fff;
    font-size: 22px;
    line-height: 26px;
}

.foto1{
    margin-top: -28%;
}

.foto2{
    margin-top: 15%;
}

.foto3{
    margin-top: 45%;
}

.propuesta-de-valor a{
    background: #162722;
    padding: 10px 15px;
    text-align: center;
    font-family:'LeagueSpartan-ExtraBold' ;
    color: #fff;
    text-decoration: none;
    border-radius: 10px;
    border:1px solid #162722;
}

.propuesta-de-valor a:hover{
    background: transparent;
    color: #162722;
}

footer{
    width: 100%;
    float: left;
    color: #fff;
}

footer .bg-verde{
    background: #162722;
    padding: 6rem 0;
}

footer .bg-verde h3{
    font-family:'LeagueSpartan-ExtraBold' ;
}

footer .bg-verde form{
    width: 80%;
}

footer .bg-verde input,
footer .bg-verde textarea{
    background: transparent;
    border:1px solid #fff;
    border-radius: 10px;
    width: 100%;
    color: #fff;
    margin-bottom: 10px;
    padding: 5px 10px;
    resize: none;
}

footer input[type="submit"]{
    background: #fff;
    text-transform: uppercase;
    color: #61af29;
    width: 50%;
    float: right;
    font-family:'LeagueSpartan-ExtraBold' ;
    border:1px solid;
}

footer input[type="submit"]:hover{
    border:1px #61af29 solid;
    background: transparent;
}

::placeholder {
    color: #fff;
}

footer h6{
    font-family:'LeagueSpartan-ExtraBold' ;
    width: 100%;
}

footer .bg-verde a{
    color: #fff;
    display: block;
}

footer .bg-verde a:hover{
    color: #61af29;
}

footer .bg-verde h6,
footer .bg-verde a.aviso{
    font-family:'LeagueSpartan-ExtraBold' ;
    margin-top: 2rem;
}

footer svg{
    width: 100%;
    fill: #fff;
    stroke: #fff;
    background: #025008;
}

footer p span{
    color: #fff;
}

footer .bg-blanco{
    width: 100%;
    float: left;
    padding: 4rem  0 1rem;
}

footer .bg-blanco h4{
    font-family:'LeagueSpartan-ExtraBold' ;
    text-transform: uppercase;
    color: #61af29;
}

footer .bg-blanco h6{
    font-family:'LeagueSpartan-ExtraBold' ;
    color: #197223;
    text-align: center;
    font-size: 13px;
    margin-top: 1rem;
}

footer .bg-blanco a{
    color: #fff;
    background: #009d74;
    padding: 5px;
    border-radius: 10px;
    margin-top: 20px;
    text-decoration: none;
    display: block;
    width: 100%;
    text-align: center;
    font-size: 12px;
    border:1px solid #009d74;
}

footer .bg-blanco a:hover{
    color: #009d74;
    background: transparent;
}

footer p.pie{
    text-transform: uppercase;
    color: #000;
    text-align: center;
    margin-top: 4rem;
}

.redes{
    position: fixed;
    bottom: 15%;
    right: 2%;
    z-index: 99;
}

.redes ul{
    list-style: none;
}

 @media (min-width:1920px){
    nav {
        background: -moz-linear-gradient(90deg, rgba(255, 255, 255, 1) 30%, rgba(109, 175, 58, 1) 30%);
        background: -webkit-linear-gradient(90deg, rgba(255, 255, 255, 1) 30%, rgba(109, 175, 58, 1) 30%);
        background: linear-gradient(90deg, rgba(255, 255, 255, 1) 30%, rgba(109, 175, 58, 1) 30%);
    }


    .nosotros .cuadro-claro {
        background: #3d9246;
        width: 32%;
        position: absolute;
        top: 30%;
        padding: 5rem;
        background-size: 100%;
        border-radius: 30px;
        z-index: 1;
        margin-left: 0;
    }

    .nosotros .galeria {
        margin-top: 14rem;
        margin-left: -43%;
    }

    .nosotros span {
        margin-top: 3.5rem;
    }


 }

  @media (min-width:768px) and (max-width:1024px){
    nav {
        background: -moz-linear-gradient(90deg, rgba(255, 255, 255, 1) 40%, rgba(109, 175, 58, 1) 40%);
        background: -webkit-linear-gradient(90deg, rgba(255, 255, 255, 1) 40%, rgba(109, 175, 58, 1) 40%);
        background: linear-gradient(90deg, rgba(255, 255, 255, 1) 40%, rgba(109, 175, 58, 1) 40%);
    }


    .nosotros .cuadro-claro {
        width: 100%;
        margin: 0;
        top: 0;
    }

    .nosotros .galeria {
        margin-top: 0;
        margin-left: 0;
        width: 100%;
    }

    a.nav-link {
        text-align: right;
    }


    .video-principal .texto h2 {
        font-size: 35px;
        line-height: 34px;
        margin-top: 3rem;
    }

    .servicios .carousel .carousel-cell {
        width: 100%;
     }

     .servicios .carousel .carousel-cell img{
         width: 100%;
    }

    .certificaciones .carousel .carousel-cell{
        width: 50%;
    }

    .nosotros .cuadro-claro,
    .nosotros .cuadros{
        position: relative;
    }

    .nosotros .cuadros{
        top:0;
    }

    .nosotros .cuadro-fuerte {
        display:    none;
    }

    .nosotros .hoja1 {
        top: 3%;
    }

    .nosotros button.nosotros-next-button {
        transform: rotate(360deg);
        top: 90%;
        right: 0;
    }

    .nosotros button.nosotros-prev-button {
        transform: rotate(360deg);
        position: absolute;
        top: 90%;
        right: initial;
        left: 0;
    }

    .clientes .carousel .carousel-cell{
        width: 50%;
    }

    .propuesta-de-valor {
        background: #3d9246;
        padding: 10rem 0;
        margin-top: 0;
    }

    .propuesta-de-valor h2 {
        margin-top: 0;
    }

 }

 @media(max-width:767px){

    body{
        text-align: center;
    }

    header {
        position: relative;
    }

    nav {
        background: -moz-linear-gradient(90deg, rgba(255, 255, 255, 1) 60%, rgba(109, 175, 58, 1) 60%);
        background: -webkit-linear-gradient(90deg, rgba(255, 255, 255, 1) 60%, rgba(109, 175, 58, 1) 60%);
        background: linear-gradient(90deg, rgba(255, 255, 255, 1) 60%, rgba(109, 175, 58, 1) 60%);
        border-radius: 0;
    }

    .video-principal .container-fluid {
        padding: 0;
    }

    .navbar-collapse {
        background: #6daf3a;
        padding: 2rem 0;
    }

    .servicios {
        padding: 0 0 4rem;
    }


    .servicios button.custom-prev-button {
        margin-left: 0;
    }
    .servicios button.custom-next-button{
        margin-left: 60%;
    }

    a.nav-link {
        text-align: center;
    }

    .video-principal .texto h2 {
        font-size: 30px;
        line-height: 40px;
        margin-top: 3rem;
    }

    .servicios .carousel .carousel-cell,
    .servicios .carousel .carousel-cell img,
    .certificaciones .carousel .carousel-cell{
        width: 100%;
    }

    .nosotros .cuadro-fuerte {
        display: none;
    }

    .nosotros .cuadro-claro {
        background: #3d9246;
        width: 100%;
        position: relative;
        top: 0;
        padding: 5rem 2rem 15rem;
        background-size: 100%;
        border-radius: 0;
        z-index: 1;
        margin-left: 0;
    }

    .nosotros .galeria {
        margin-top: -12rem;
        width: 100%;
        position: relative;
        z-index: 1;
    }

    .nosotros .cuadros {
        width: auto;
        position: relative;
    }

    .nosotros button.nosotros-next-button {
        transform: rotate(360deg);
        top: 90%;
        right: 0;
    }

    .nosotros button.nosotros-prev-button {
        transform: rotate(360deg);
        position: absolute;
        top: 90%;
        right: initial;
        left: 0;
    }

    .nosotros span {
        font-size: 50px;
        margin-top: 0rem;
    }

    .nosotros {
        padding: 0 ;
    }

    .nosotros .hoja1{
        top:6%;
    }
  
      .clientes {
          padding: 5rem 0 3rem;
      }

    .clientes .carousel .carousel-cell{
        width: 100%;
    }

    .clientes button {
        margin-top: 5rem;
        display: none;
    }

    .propuesta-de-valor {
        background: #3d9246;
        padding: 10rem 0;
        margin-top: 0;
    }

    .propuesta-de-valor h2 {
        margin-top: 0;
    }

    .foto3 {
        margin-top: 15%;
    }

    footer .bg-verde form {
        width: 100%;
    }

    footer .bg-blanco h6 {
        font-size: 15px;
    }

 }