html {
    font-size: 10px;
    overflow-x: hidden;
    height: 100%;
    position: relative
}

.z-2 {
    z-index: -2;
}
.z-1 {
    z-index: -1;
}
.z1 {
    z-index: 1;
}
.z2 {
    z-index: 2;
}
.navbar-toggler-icon {
    width: 2.8rem;
    height: 2.8rem;
}
nav, #navbarNav {
    transition: all ease-out .3s;
}
.nav-item {
    font-size: 14px;
}
.scroll-down {
    transform: translate3d(0, -100%, 0);
}
.navbar-dark .navbar-toggler-icon {
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.85%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.bg-red {
    background-color: #ea0029;
}
.color-red {
    color: #ea0029;
}
.bg-red-secondary {
    background-color: #cb0024;
}
.bg-brown {
    background-color: #7a6569;
}
.color-brown {
    color: #7a6569;
}
.bg-gray {
    background-color: #d9d9d9;
}
.bg-gray-50 {
    background-color: #dedede;
}
.bg-gray-25 {
    background-color: #eeeeee;
}
.color-gray {
    color: #414042;
}
.carousel-control-next, .carousel-control-prev {
    width: 90%;
    opacity: 1 !important;
}

#header .container-carousel-control {
    left: 50%;
    top: -11%;
}
#header .container-carousel-control, .container-swiper-buttons {
    transform: rotate(90deg) translateY(22%);
}
.carousel-control-next, .carousel-control-prev, .swiper-button-next, .swiper-button-prev {
    transform: rotate(-90deg);
}
.container-swiper-buttons {
    top: -23%;
    left: 50%;
    border-radius: 10px;
}
.container-envelope {
    bottom: 30%;
    left: 0;
}

#projects .container-carousel-control {
    left: 18px;
    height: 129px;
    width: 48px;
}

#products {
    background: url('../images/S/imagen_descargas_fondo.jpg');
    width: 100%;
    height: 436px;
}

input, textarea {
    border: solid 1px #3d3935;
}
input:focus, textarea:focus {
    outline: none;
}

textarea {
    border-radius: 22px;
    resize: none;
}

a:hover {
    color: #414042;
}
.perforadora {
    bottom: -20%;
}

.bg-about {
    background: url('../images/S/imagen_nosotros.jpg') no-repeat top;
    min-height: 252px;
}
.imagen-productos {
    right: 6%;
    bottom: -16%;
}

.swiper {
    width: 100%;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
}

.swiper-slide {
    text-align: center;
    height: calc((100% - 30px) / 2);
    display: flex;
    align-items: center;
    justify-content: center;
}
.container-swiper {
    height: 276px;
}

.swiper-button-prev, .swiper-button-next {
    left: auto;
    right: auto;
    margin-top: 0;
    color: #ffffff;
}
.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 20px;
}
.p-services {
    height: 270px;
}
input.text-danger::placeholder, textarea.text-danger::placeholder {
    color: #ea0029;
}
/* M */
@media (min-width: 768px) {
    #products {
        background: url('../images/M/imagen_descargas_fondo.jpg');
        height: 893px;
    }
    .bg-about {
        background: url('../images/M/imagen_nosotros.jpg') no-repeat left;
        height: 456px;
    }
    .container-swiper {
        height: 460px;
    }
    .container-swiper-buttons {
        top: -14%;
    }
    .perforadora {
        left: 10%;
    }
    .p-services {
        height: 210px;
    }
    #header .container-carousel-control {
        top: -8%;
    }
}

/* L */
@media (min-width: 992px) {
    
    #products {
        background: url('../images/L/imagen_descargas_fondo.jpg');
        height: 540px;
    }
    .bg-about {
        background: url('../images/L/imagen_nosotros.jpg') no-repeat left;
        height: 379px;
    }
    textarea {
        border-radius: 22px;
    }
    #header .container-carousel-control {
        left: -3%;
        top: 50%;
    }
    #header .container-carousel-control, .swiper-button-next, .swiper-button-prev {
        transform: rotate(0);
    }
    .container-swiper-buttons {
        top: 50%;
        left: -20px;
        transform: rotate(0) translate(0, -50%);
        border-radius: 50rem;
    }
    .carousel-control-next, .carousel-control-prev {
        transform: rotate(0);
    }
    .container-swiper {
        height: 386px;
    }
    .perforadora {
        left: 0;
    }
    .p-services {
        height: auto;
    }
    .nav-link::before {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0.5rem;
        height: 4px;
        width: 0;
        background-color: white;
        border-radius: 10px;
        transition: width ease .3s;
    }
    #navbarNav>.navbar-nav>.nav-item:first-child>.nav-link::before {
        left: 3rem;
    }
    .nav-link:hover::before {
        width: 28px;
    }
    footer .nav-link::before {
        left: 1rem;
    }
    .mousey {
        width: 3px;
        padding: 10px 15px;
        height: 35px;
        border: 2px solid #fff;
        border-radius: 25px;
        opacity: 0.75;
        box-sizing: content-box;
      }
      .scroller {
        width: 3px;
        height: 10px;
        border-radius: 25%;
        background-color: #fff;
        animation-name: scroll;
        animation-duration: 2.2s;
        animation-timing-function: cubic-bezier(.15,.41,.69,.94);
        animation-iteration-count: infinite;
      }
      @keyframes scroll {
        0% { opacity: 0; }
        10% { transform: translateY(0); opacity: 1; }
        100% { transform: translateY(15px); opacity: 0;}
      }
}

/* XL */

@media (min-width: 1400px) {
    html {
        font-size: 13px;
    }
    .bg-about {
        background: url('../images/XL/imagen_nosotros.jpg') no-repeat left;
        height: 567px;
    }
}

/* XXL */
@media (min-width: 1900px) {
    html {
        font-size: 16px;
    }
    .perforadora {
        bottom: -20%;
    }
    #products {
        background: url('../images/XL/imagen_descargas_fondo.jpg');
        height: 806px;
    }
    .container-swiper {
        height: 577px;
    }
    .nav-item {
        font-size: 1rem;
    }
    textarea {
        border-radius: 35px;
    }
}