@media screen and (max-width: 1280px) {
    .banner_block {
        grid-template-columns: 1fr 350px;
    }

    .banner_block .info .title {
        font-size: 48px;
    }

    .banner_block .img_wrapper img {
        right: -100px;
        position: absolute;
    }

    .cycle_block .list {
        grid-template-columns: repeat(2, 1fr);
    }

    .cycle_block .list .item {
        padding: 25px 20px 25px 25px;
    }

    .cycle_block .list .item .title {
        gap: 16px;

    }

    .cycle_block .list .item .title .icon {
        width: 62px;
        height: 62px;
        padding: 8px;
    }

    .cycle_block .list .item .title .icon img {
        width: calc(100% - 8px);
        height: auto;
        box-sizing: border-box;
    }

    .cycle_block .list .item .title .text {
        font-size: 18px;
        line-height: normal;
        justify-content: start;
    }

    .cycle_block .list .item .content {
        font-size: 16px;
        font-weight: 400;
        line-height: 24px;
    }
}

@media screen and (max-width: 1024px) {

    .we_block>.title,
    .cycle_block>.title,
    .wishes_block>.title {
        font-size: 32px;
        line-height: normal;
        /* margin-top: 60px; */
    }

    .franchise_block .info>.title {
        font-size: 32px;
        line-height: normal;
    }

    .banner_block {
        height: 340px;
        grid-template-columns: 1fr 250px;
        padding: 0 26px;
    }

    .banner_block .img_wrapper {
        top: auto;
        right: auto;
        height: 100%;
        width: 100%;
    }

    .banner_block .img_wrapper img {
        right: -90px;
        position: absolute;
        scale: .7;
        transform-origin: top right;
        top: -30px;
    }

    .banner_block .info .button {
        display: none;
    }

    .under_banner {
        display: flex;
    }

    .we_block {
        margin-top: 80px;
    }



    .we_block .list {
        gap: 26px 23px;
        margin-top: 40px;
    }

    .we_block .list .item {
        padding: 18px;
    }

    .we_block .list .item .icon {
        width: 60px;
    }

    .we_block .list .item .icon img {
        width: 40px;
    }

    .we_block .list .item .info .title {
        font-size: 17px;
        line-height: 27px;
    }

    .we_block .list .item .info .description {
        font-size: 16px;
    }

    .franchise_block {
        grid-template-columns: auto;
        grid-template-rows: 427px max-content;
        background: transparent;
        box-shadow: none;
        border-radius: 0;
        overflow: visible;
        margin-top: 80px;
    }


    .franchise_block .img_wrapper {
        height: 100%;
        order: 1;
        border-radius: 20px;
        overflow: hidden;
    }

    .franchise_block .info {
        padding: 0;
        margin-top: 50px;
        order: 2;
    }

    .franchise_block .info .list {
        padding: 0;
    }

    .franchise_block .info .list .items {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 24px 16px;
    }

    .franchise_block .info .list .items .item:last-child {
        display: none;
    }

    .franchise_block .info .description:last-child {
        display: none;
    }

    .cycle_block .description {
        margin-top: 12px;

    }

    .cycle_block {
        margin-top: 80px;
    }

    .cycle_block .description div {
        margin: 0 !important;
        font-size: 18px !important;
        font-weight: 500 !important;
        line-height: 27px !important;
    }

    .cycle_block .list {
        grid-template-columns: repeat(2, 1fr);
        gap: 32px 38px;
    }

    .wishes_block {
        margin-top: 80px;
    }

    .wishes_block>.description {
        margin-top: 12px;
    }

    .wishes_block .list {
        gap: 20px;
    }

    .wishes_block .list .item {
        grid-template-columns: 40px 1fr;
        grid-template-rows: 40px 1fr;
        gap: 8px 6px;
        padding: 0;
    }

    .wishes_block .list .item .icon {
        grid-row: span 2;
    }

    .wishes_block .list .item .icon img {
        width: 100%;
        height: 100%;
    }

    .wishes_block .list .item .text {
        font-size: 18px;
        line-height: normal;
    }

    .wishes_block .list .item .content {
        grid-column: auto;
    }

    .order_block .progress_bar {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        margin-top: 40px;
    }

    .order_block .progress_bar .item {
        flex-direction: row;
        align-items: start;
        padding-bottom: 62px;
    }

    .order_block .progress_bar .item:last-child {
        padding-bottom: 0;
    }

    .order_block .progress_bar .item .bullet {
        margin-top: 0;
    }

    .order_block .progress_bar .item .info {
        align-items: start;
        gap: 4px;
    }

    .order_block .progress_bar .item .info .title {
        font-size: 18px;

    }

    .order_block .progress_bar .item .info .description {

        font-size: 16px;
        text-align: start;
    }

    .order_block .progress_bar .item .bullet::after {
        content: "";
        position: absolute;
        width: 5px;
        height: calc(100%);
        background-color: #0050EC;
        transform: translate(0, 50%);
        z-index: -1;
    }

    .order_consultation_mobile {
        display: flex;
    }

    .order_consultation {
        display: none;
    }
}

@media screen and (max-width: 768px) {

    .we_block {
        margin-top: 60px;
    }

    .we_block>.title {
        font-size: 24px;
        line-height: normal;
    }

    .we_block .list {
        grid-template-columns: 1fr;
        gap: 23px;
        margin-top: 28px;
    }



    .banner_block .info .title {
        font-size: 22px;

    }

    .banner_block .info .description {
        font-size: 12px;
        line-height: normal;
    }

    .franchise_block .info {
        margin-top: 32px;
    }

    .franchise_block .info .description {
        margin-top: 12px;
        font-size: 14px;
    }

    .franchise_block .info .list .items {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .franchise_block .info .list>.title {
        font-size: 18px;
    }

    .franchise_block .info .list {
        margin-top: 24px;
    }

    .franchise_block .info .list .items .item .text {
        font-size: 14px;
    }

    .franchise_block .info .list .items .item {
        gap: 12px;
    }

    .cycle_block {
        margin-top: 40px;
    }

    .cycle_block>.title {
        font-size: 24px;
    }

    .cycle_block .description {
        font-size: 14px;
    }

    .cycle_block .list {
        grid-template-columns: 1fr;
    }

    .cycle_block .list .item .title .text {
        justify-content: center;
    }

    .wishes_block {
        margin-top: 30px;
        font-size: 24px;
    }

    .wishes_block .list {
        grid-template-columns: 1fr;
    }

    .wishes_block>.title {
        font-size: 24px;
    }

    .order_block {
        margin-top: 30px;
    }

    .order_block>.title {
        font-size: 24px;
    }

    .order_block .progress_bar .item {
        padding-bottom: 24px;
    }

    .order_block .progress_bar .item .bullet {
        width: 45px;
        font-size: 24px;
    }

    .order_consultation_mobile>.title {
        font-size: 24px;
    }

    .order_consultation_mobile>.subtitle {
        font-size: 14px;
    }

    .order_consultation_mobile input {
        font-size: 13px;
        font-weight: 700;
    }
}

@media screen and (max-width: 650px) {
    .banner_block {
        height: 165px;
        grid-template-columns: 1fr 130px;
        padding: 0 18px;
    }

    .banner_block .img_wrapper img {
        scale: .4;
        right: -50px;
    }
}

@media screen and (max-width: 375px) {
    .banner_block {
        margin-top: 24px;
        display: flex;
        text-align: center;
        padding: 0;
        height: fit-content;
    }

    .banner_block .info .description {
        margin-top: 8px;
    }

    .banner_block .img_wrapper {
        display: none;
    }
}