@media (max-width:991px) {
    .testimonials__row {
        flex-direction: column;
    }
    .footer__column {
        flex: 1 1 calc(100% / 2 - 20px);
        max-width: calc(100% / 2 - 20px);
    }
}

@media (max-width:767px) {
    .loader>span {
        font-size: 45px;
    }
    .features-items .features-item {
        flex: calc((100% / 2) - 30px);
    }
    .about-content {
        gap: 60px;
    }
    .about-col {
        flex: calc((100% / 1) - 30px);
    }
    .acivement-content .column {
        flex: calc(100% / 1 - 20px);
    }
    .gallery-images {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        padding: 20px;
    }
}

@media (max-width:600px) {
    .nav .toggle {
        display: block;
    }
    .nav .links {
        display: none;
    }
    .links-mobile.collapse {
        opacity: 1;
        visibility: visible;
        transform: translate(0, 0);
        box-shadow: 0px 3px 13px 1px rgb(0 0 0 / 20%);
    }
    .features {
        margin-top: 60px;
    }
    .features-items .features-item {
        flex: calc((100% / 1) - 30px);
    }
    .achivement .line-down {
        width: 150px;
        height: 150px;
    }
    .achivement .line-up {
        width: 250px;
        height: 250px;
    }
    .achivement .line-down .numbers .nums {
        width: 80px;
        height: 80px;
    }
    .achivement .line-down .numbers .nums:nth-of-type(1) span:nth-child(1),
    .achivement .line-down .numbers .nums:nth-of-type(2) span:nth-child(1),
    .achivement .line-down .numbers .nums:nth-of-type(3) span:nth-child(1),
    .achivement .line-down .numbers .nums:nth-of-type(4) span:nth-child(1) {
        font-size: 19px;
    }
    .info .big-head {
        font-size: 25px;
    }
    .info p:last-of-type {
        line-height: 1.6;
    }
    .gallery-images {
        gap: 10px;
        padding: 10px;
    }
    .testimonials__row {
        flex-direction: column;
        align-items: center;
    }
    .testimonials__back {
        top: -21px;
        left: -74px;
    }
}

@media (max-width:500px) {
    .gallery-images {
        grid-template-columns: repeat(1, 1fr);
        gap: 10px;
        padding: 15px;
    }
    .gallery-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-direction: column;
        text-align: center;
        gap: 10px;
        margin: 20px 0;
    }
    .testimonials__row,
    .testimonials__slide {
        flex-direction: column;
        gap: 20px;
    }
    .newsletter__contact input {
        width: 250px;
    }
    .footer__column {
        flex: 1 1 calc(100% / 1 - 20px);
        max-width: calc(100% / 1 - 20px);
        text-align: center;
    }
}

@media (max-width:400px) {
    .achivement .line-down {
        width: 110px;
        height: 110px;
    }
    .achivement .line-up {
        width: 210px;
        height: 210px;
    }
    .achivement .line-down .numbers .nums:nth-of-type(1) span:nth-child(1),
    .achivement .line-down .numbers .nums:nth-of-type(2) span:nth-child(1),
    .achivement .line-down .numbers .nums:nth-of-type(3) span:nth-child(1),
    .achivement .line-down .numbers .nums:nth-of-type(4) span:nth-child(1) {
        font-size: 16px;
    }
    .achivement .line-down .numbers .nums {
        width: 60px;
        height: 60px;
        font-size: 14px;
    }
    .loader>span {
        font-size: 30px;
    }
    .newsletter__contact input {
        width: 200px;
        padding: 15px;
    }
    .newsletter__contact__input:before {
        font-size: 20px;
    }
}


/* ==================================
Animation
=================================== */

@keyframes pulse_01 {
    0% {
        transform: scale(0.94) translateY(-50%);
        box-shadow: 0 0 0 0 rgba(40, 47, 159, 0.95);
    }
    70% {
        transform: scale(1) translateY(-50%);
        box-shadow: 0 0 0 12px rgba(40, 47, 159, 0);
    }
    100% {
        transform: scale(0.94) translateY(-50%);
        box-shadow: 0 0 0 0 rgba(40, 47, 159, 0);
    }
}


/* Transform up to top */

@keyframes trans {
    0% {
        transform: translateY(0px);
    }
    100% {
        transform: translateY(20px);
    }
}