@import url("https://fonts.googleapis.com/css2?family=Montserrat: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");

html * {
    font-family: "Montserrat" !important;
}

.navbar {
    padding-left: 50px !important;
}

.navbar-area {
    background: transparent;
}

.navbar-area.sticky {
    background: white;
}

.nav-item a {
    color: black !important;
    font-weight: 300 !important;
    text-transform: none !important;
    margin-right: 20px !important;
}

.navbar-area .navbar .navbar-nav .nav-item a::before {
    height: 3px;
    top: -5px;
    width: 70px;
    background: radial-gradient(circle at center, #f9f2c0, #fbd642);
}

.navbar-area {
    padding: 0;
}

.social-icon {
    font-size: 24px;
    margin-top: 1px;
}

.text-error {
    font-size: 13px !important;
    font-weight: bold !important;
}

.slider-area .bd-example .carousel .carousel-inner {
    background-color: white !important;
}

.carousel-inner {
    width: 75%;
    margin: auto;
}

.slider-area {
    padding-top: 20px;
}

.slider-area .bd-example .carousel .carousel-inner .carousel-item {
    height: unset !important;
}

.carousel-item img {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.slider-area .bd-example .carousel .carousel-indicators li {
    background-color: black;
}

.slider-area .bd-example .carousel .carousel-indicators li.active {
    background-color: #fcc700;
}

.carousel-control-next,
.carousel-control-prev {
    display: none;
    color: red !important;
}

.text-yellow {
    color: #fcc700 !important;
}

.sub-title {
    font-weight: 400;
    letter-spacing: 3px;
    color: #29244d;
}

.sub-title-text {
    color: #29244d;
    line-height: 2;
    letter-spacing: 1px;
}

.sub-title-underline {
    height: 2px !important;
    margin: auto;
    width: 120px !important;
    background: radial-gradient(circle at center, #f9f2c0, #fbd642) !important;
}

#excelente-calidad {
    position: relative !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

#quienes-somos {
    background: white;
    padding-top: 80px;
}

.img-2 {
    width: 90%;
}

.servicios-img {
    height: 50vh;
}

.img-3 {
    width: 100%;
    margin: auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.img-4 {
    width: 80%;
    float: right;
}

.img-5678 {
    position: relative;
    width: 100%;
}

.img-5678-text {
    font-weight: 500;
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    color: white;
    font-size: 20px;
    line-height: 1.2;
}

.plr-extra {
    padding-left: 90px !important;
    padding-right: 90px !important;
}

.mlr-n-1 {
    /*margin-left: -1px !important;*/
    /*margin-right: -1px !important;*/
}

.mt-7 {
    margin-top: 70px;
}

.bold {
    font-weight: 700;
}

.semi-bold {
    font-weight: 600;
}

#estaciones {
    background-image: url("../images/img-9.png");
    -webkit-background-size: contain;
    -moz-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    background-repeat: no-repeat;
}

.sub-title-text-mini {
    line-height: 1.5;
    font-size: 14px;
}

.cliente-container {
    display: flex;
    align-items: center;
}

.center-flex-item {
    margin: auto !important;
}

.cliente-img {
    margin: auto;
    width: 100px;
}

#contact {
    background-image: url("../images/img-22.png");
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-repeat: no-repeat;
}

.pl-6-cliente {
    padding-left: 70px !important;
}

.pr-6-cliente {
    padding-right: 70px !important;
}

.pl-6-footer {
    padding-left: 135px !important;
}

.pr-6-footer {
    padding-right: 135px !important;
}

#obras-privadas-publicas {
    background-image: url("../images/img-10.png");
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-repeat: no-repeat;
}

#servicios-complementarios {
    background-image: url("../images/img-12.png");
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-repeat: no-repeat;
}

.font-500 {
    font-weight: 500;
}

.img-11 {
    width: 80%;
    margin: auto;
    float: right;
}

.img-13 {
    width: 80%;
    margin: auto;
    float: left;
}

.d-flex-img {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 330px;
}

.text-dark-custom {
    color: #29244d;
}

.mt-8 {
    margin-top: 80px;
}

.center {
    position: relative;
}

.center-item {
    margin: 0;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.contact-title {
    font-size: 28px !important;
    font-weight: 400 !important;
    letter-spacing: 1px;
}

.contact-area {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
}

input {
    border: 0 !important;
    border-radius: 10px !important;
    height: 35px !important;
}

.text-contact {
    font-size: 12px !important;
}

.btn-send {
    border-radius: 25px;
    background: black;
    border: 0;
    color: white;
    width: 120px;
}

.btn-send:hover {
    background: #2e3440;
}

.input-items input {
    padding-left: 10px !important;
}

.img-3n {
    top: 30%;
}

.p-0i {
    padding: 0 !important;
}

.text-dark,
label {
    color: black !important;
}

.font-size-12 {
    font-size: 15px;
}

.regular {
    font-weight: normal;
}

/* [1] The container */
.img-hover-zoom {
    overflow: hidden; /* [1.2] Hide the overflowing of child elements */
}

/* [2] Transition property for smooth transformation of images */
.img-hover-zoom img {
    transition: transform 0.5s ease;
}

/* [3] Finally, transforming the image when container gets hovered */
.img-hover-zoom:hover img {
    transform: scale(1.1);
}

@media (max-width: 991px) {
    .m-mt-5 {
        margin-top: 50px;
    }

    .img-3 {
        width: 100%;
    }

    .img-2 {
        margin-top: 20px;
        width: 70%;
    }

    .carousel-inner {
        width: 100%;
        padding-top: 10px;
    }

    .img-4 {
        width: 100%;
        margin: auto;
        top: 50%;
    }

    .img-11 {
        width: 100%;
        margin: auto;
        float: right;
    }

    .img-13 {
        width: 100%;
        margin: auto;
        float: left;
    }

    .m-mb-2 {
        margin-bottom: 20px;
    }

    .d-flex-img {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 330px;
    }

    .m-d-none {
        display: none;
    }

    .licencias-div {
        margin: auto;
    }

    #quienes-somos {
        background: white;
        padding-top: 20px;
    }

    .title {
        font-size: 14px !important;
        line-height: 14px !important;
        margin-top: 50px;
        margin-bottom: 50px;
    }

    .sub-title-text-mini {
        font-size: 16px;
    }

    .center-item {
        position: unset;
    }

    .center-item {
        transform: unset;
    }

    .sub-title {
        font-size: 24px;
    }

    .m-mt-4 {
        margin-top: 30px;
    }

    .pr-6-footer {
        padding-right: 20px !important;
    }

    .pl-6-footer {
        padding-left: 20px !important;
    }
}

@media (min-width: 991px) {
    .d-mb-8,
    .d-mt-8 {
        margin: 120px;
    }

    .d-pt-6 {
        padding: 60px;
    }

    .d-pt-3 {
        padding: 30px;
    }

    .d-pl-5,
    .d-pr-5 {
        padding-left: 50px;
        padding-right: 50px;
    }

    .d-mb-5 {
        margin-bottom: 50px;
    }

    .d-pr-80 {
        padding-right: 80px;
    }

    .d-pl-80 {
        padding-left: 80px;
    }

    .d-pl-120 {
        padding-left: 120px;
        margin-top: 60px;
    }

    .d-pb-6 {
        margin-bottom: 120px !important;
    }

    .d-pt-6-fix {
        margin-top: 40px !important;
    }

    .d-mb-5 {
        margin-bottom: 50px;
    }

    .d-d-none {
        display: none;
    }

    .d-mlr-n-1 {
        margin-right: -1px;
    }

    .d-ml-n-1 {
        margin-left: -4px;
    }
}
