/* 1360-1000 */
@media (max-width: 1360px) {
    .header__wrapper,
    .hero__wrapper,
    .about__wrapper,
    .services__wrapper,
    .steps__wrapper,
    .stepsSwiper.swiper .swiper-wrapper .swiper-slide .swiper__text-slide .swiper__text-box,
    .partners__wrapper,
    .faq__wrapper,
    .footer__wrapper,
    .bread__wrapper,
    .offlineSlider.swiper,
    .offlineSlider.swiper .swiper__buttons-cont,
    .offlineSlider.swiper .swiper-scrollbar-custom,
    .cards__wrapper,
    .team__wrapper,
    .info__wrapper,
    .map__container,
    .portfolio__wrapper {
        width: 100% !important;
        padding: 0 20px;
    }

    .custom-logo-link {
        width: 200px;
        height: 21px;
    }

    .header__nav {
        margin: 0 30px 0 auto;
        gap: 25px;
        width: 489px;
    }

    .header__nav-link {
        font-size: 14px;
    }

    .hero__title {
        font-size: 80px;
    }

    .hero__img-cont {
        right: 0;
        left: auto;
    }

    .info__wrapper {
        flex-direction: column;
        gap: 40px;
    }

    .info__text-box {
        width: 100%;
    }

    .info__img-cont {
        width: 100%;
        height: auto;
        max-height: 600px;
    }

    .info__img {
        object-fit: contain;
    }

    .services__title,
    .steps__title,
    .partners__title,
    .team__title,
    .faq__title,
    .info__title,
    .map__title,
    .portfolio__title {
        font-size: 36px;
    }

    .services__cards {
        width: 100%;
    }

    .service-card__text-box {
        margin: 0 5px;
    }

    .service-card__title {
        font-size: 28px;
    }

    .service-card__img-cont {
        width: 100%;
        height: auto;
    }

    .cards__text-box {
        margin: 0 5px;
    }

    .stepsSwiper.swiper {
        height: auto;
        padding-bottom: 50px;
    }

    .stepsSwiper.swiper .swiper-wrapper .swiper-slide {
        flex-direction: column;
        gap: 40px;
    }

    .stepsSwiper.swiper .swiper-wrapper .swiper-slide .swiper__text-slide {
        position: static;
        width: 100%;
    }

    .stepsSwiper.swiper .swiper-wrapper .swiper-slide .swiper__text-slide .swiper__slide-num {
        display: none;
    }

    .stepsSwiper.swiper .swiper-wrapper .swiper-slide .swiper__text-slide .swiper__title-box .swiper__additional-slide-num {
        display: block;
        font-size: 36px;
        color: #cfff04;
        position: static;
    }

    .stepsSwiper.swiper .swiper-wrapper .swiper-slide .swiper__text-slide .swiper__text-box {
        position: static;
        width: 100%;
        height: 100%;
    }

    .stepsSwiper.swiper .swiper-wrapper .swiper-slide .swiper__img-cont {
        width: 100%;
        height: auto;
        max-height: 650px;
        overflow: hidden;
    }

    .stepsSwiper.swiper .swiper-wrapper .swiper-slide .swiper__img-cont .swiper__img {
        object-fit: contain;
    }

    .stepsSwiper.swiper .swiper-pagination {
        flex-direction: row;
        margin: 0 0 0 50%;
        transform: translateX(-50%);
        width: auto;
    }

    .partners__list-item {
        width: 192px;
    }

    .partnersSwiper.swiper,
    .partnters__list-item,
    .partnersSwiper.swiper .swiper-wrapper .swiper-slide {
        height: 192px;
    }

    .team__cont {
        height: auto;
    }

    .faq__wrapper {
        flex-direction: column;
        gap: 50px;
    }

    .faq__accordion {
        width: 100%;
    }

    .faq__text-box {
        width: auto;
    }

    .offlineSlider.swiper .swiper__buttons-cont {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }

    .offlineSlider.swiper .swiper__buttons-cont .swiper__button {
        width: auto;
    }

    .offlineSlider.swiper .swiper-scrollbar-drag {
        left: -19px;
    }

    .cards__stroke {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
    }

    .cards__item {
        width: auto;
    }

    .cards__img-cont {
        width: 100%;
    }

    .footer__contacts.footer__contacts_map {
        flex-direction: row;
        gap: 30px;
    }

    .map__container {
        gap: 30px;
    }

    .map__wrapper {
        flex-direction: column;
        gap: 50px;
        width: 100%;
    }
    
    .map__map-cont {
        width: 100%;
        height: 500px;
        overflow: hidden;
    }

    .map__white-block {
        width: 100%;
        height: 500px;
        top: auto;
        bottom: 0;
    }

    .swiper.portfolioSlider {
        width: 100%;
    }

    .swiper.portfolioSlider .swiper-wrapper .swiper-slide .portfolio__img-cont {
        height: auto;
        aspect-ratio: 1 / 1;
    }
}

/* 1000-768 */
@media (max-width: 999px) {
    .header__wrapper {
        justify-content: space-between;
    }

    .header__nav {
        display: none;
    }

    .header__button {
        display: none;
    }

    .header__menu {
        display: flex;
    }

    .hero__title {
        font-size: 65px;
    }

    .about__title {
        font-size: 65px;
    }

    .about__subtitle,
    .about__suptitle {
        font-size: 16px;
    }

    .service-card__title {
        font-size: 24px;
    }

    .service-card__subtitle {
        width: 100%;
        font-size: 14px;
    }

    .swiper__button {
        font-size: 20px;
    }

    .cards__title {
        font-size: 18px;
    }

    .cards__text {
        font-size: 14px;
    }

    .steps__name {
        font-size: 14px;
    }

    .stepsSwiper.swiper .swiper-wrapper .swiper-slide .swiper__text-slide .swiper__title-box .swiper__additional-slide-num,
    .stepsSwiper.swiper .swiper-wrapper .swiper-slide .swiper__text-slide .swiper__title-box .swiper__title {
        font-size: 20px;
    }

    .partnersSwiper.swiper {
        height: 384px;
    }

    .modal__wrapper {
        width: 100%;
        /* margin: 0 20px; */
    }

    .form {
        padding: 0 20px;
    }

    .form__wrapper {
        width: 100%;
    }

    .form__title {
        font-size: 36px;
    }

    .form__subtitle {
        font-size: 18px;
    }

    .swiper.portfolioSlider .swiper-wrapper .swiper-slide {
        padding: 20px 45px;
    }

    .swiper.portfolioSlider .swiper-wrapper .swiper-slide .portfolio__text-box {
        padding: 0;
    }
}

/* 767-480 */
@media (max-width: 767px) {
    .hero {
        margin-bottom: 50px;
    }

    .hero__title {
        font-size: 38px;
    }

    .hero__text-box {
        width: auto;
    }

    .hero__subtitle,
    .hero__text {
        font-size: 16px;
        width: auto;
        max-width: 400px;
    }

    .hero__bg-gradient {
        background-image: linear-gradient(to right, #151515, transparent);
    }

    .about,
    .services,
    .steps,
    .form,
    .partners,
    .faq,
    .team,
    .portfolio {
        margin-bottom: 100px;
    }

    .about__wrapper {
        flex-direction: column;
        gap: 50px;
    }

    .about__title {
        font-size: 80px;
    }

    .about__subtitle,
    .about__suptitle {
        font-size: 18px;
    }

    .services__cards {
        grid-template-columns: 1fr;
        grid-template-rows: 1fr 1fr;
    }

    .offlineSlider.swiper .swiper__buttons-cont {
        grid-template-columns: 1fr 1fr;
        grid-row-gap: 15px;
        margin-bottom: 100px;
    }

    .offlineSlider.swiper .swiper__buttons-cont .swiper__button {
        position: relative;
        font-size: 18px;
    }

    .offlineSlider.swiper .swiper__buttons-cont .swiper__button::after {
        position: absolute;
        bottom: -10px;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: rgba(255, 255, 255, 0.5);
        content: "";
    }

    .offlineSlider.swiper .swiper__buttons-cont .swiper__button.swiper__button_active::after {
        position: absolute;
        bottom: -10px;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: #cfff04;
        content: "";
    }

    .offlineSlider.swiper .swiper-scrollbar {
        display: none;
    }

    .cards__title {
        font-size: 16px;
    }

    .cards__text {
        font-size: 12px;
    }

    .steps__shape {
        display: none;
    }

    .steps__list-item {
        width: auto;
    }

    .steps__name {
        font-size: 18px;
        width: 100%;
    }

    .steps__list {
        flex-wrap: wrap;
        justify-content: start;
        gap: 10px;
    }

    .form__wrapper {
        flex-direction: column;
        gap: 50px;
    }

    .form__subtitle {
        width: auto;
    }

    .form__form-box {
        width: 100%;
    }

    .faq__subtitle {
        font-size: 16px;
    }

    .faq__que-text {
        font-size: 16px;
    }

    .partnersSwiper.swiper {
        height: 576px;
    }

    .footer__info {
        flex-direction: column;
        gap: 50px;
    }

    .footer__info .footer__links {
        text-align: left;
        align-items: start;
    }

    .footer__text-links {
        flex-direction: row;
        gap: 30px;
        width: 70%;
        flex-wrap: wrap;
    }

    .footer__logo-links {
        margin: 10px;
    }

    .footer__text-links .footer__link {
        margin: 0;
    }

    .cards__items-box {
        grid-template-columns: repeat(2, 1fr);
    }

    .swiper.portfolioSlider .swiper-wrapper .swiper-slide {
        flex-direction: column;
        gap: 25px;
        padding: 25px 30px 55px 30px;
        align-items: center;
    }

    .swiper.portfolioSlider .swiper-wrapper .swiper-slide .portfolio__text-box {
        width: 80%;
        text-align: center;
        align-items: center;
    }

    .swiper.portfolioSlider .swiper-wrapper .swiper-slide .portfolio__img-cont {
        width: 80%;
    }
}

/* 479-0 */
@media (max-width: 479px) {
    .hero.hero_main {
        height: 100vh;
    }

    .hero__text-box {
        margin-bottom: 0;
    }

    .bread.bread_static {
        margin-top: 130px;
        margin-bottom: 30px;
    }
    
    .first-screen {
        height: 100vh;
        padding-top: 130px;
    }
    
    .bread {
        margin-top: 0;
    }
    
    .bread__first-name,
    .bread__second-name,
    .bread__third-name {
        font-size: 12px;
    }
    
    .hero__img-cont {
        width: 75%;
        height: 50%;
        top: auto;
    }

    .hero__bg-gradient {
        background-image: linear-gradient(to right, #151515, 20%, transparent);
    }

    .hero__bg-gradient.hero__bg-gradient_vertical {
        display: block;
    }

    .hero__bg-img.hero__bg-img_containered {
        width: 100%;
    }

    .hero {
        position: static;
    }

    .cards__items-box {
        grid-template-columns: repeat(1, 1fr);
    }

    .cards__title {
        font-size: 18px;
    }

    .cards__text {
        font-size: 14px;
    }

    .form,
    .team__wrapper,
    .partners__wrapper {
        padding: 0;
    }

    .partners__title,
    .team__title {
        margin-left: 20px;
    }

    .form__wrapper {
        padding: 50px 35px;
    }

    .footer__contacts {
        gap: 20px;
    }

    .portfolioSlider.swiper .swiper-pagination {
        margin: 0 0 3% 96%;
    }

    .swiper.portfolioSlider .swiper-wrapper .swiper-slide .portfolio__text-box {
        width: 100%;
    }

    .swiper.portfolioSlider .swiper-wrapper .swiper-slide .portfolio__img-cont {
        width: 100%;
    }
}