@font-face {
    font-display: swap;
    font-family: '_g-roboto-black';
    font-weight: normal;
    font-style: normal;
    src: url("../fonts/RobotoBlack.woff2") format('woff2')
}

@font-face {
    font-display: swap;
    font-family: '_g-roboto-bold';
    font-weight: 700;
    src: url("../fonts/RobotoBold.woff2") format('woff2')
}

@font-face {
    font-display: swap;
    font-family: '_g-roboto-medium';
    font-weight: 500;
    src: url("../fonts/RobotoMedium.woff2") format('woff2')
}

@font-face {
    font-display: swap;
    font-family: '_g-roboto-regular';
    font-weight: 400;
    src: url("../fonts/RobotoRegular.woff2") format('woff2')
}

@font-face {
    font-display: swap;
    font-family: '_g-roboto-light';
    font-weight: 300;
    src: url("../fonts/RobotoLight.woff2") format('woff2')
}

._g {
    --mcn__font_black: '_g-roboto-black';
    --mcn__font_bold: '_g-roboto-bold';
    --mcn__font_medium: '_g-roboto-medium';
    --mcn__font_light: '_g-roboto-light';
    --mcn__font_regular: '_g-roboto-regular';
    --mcn__margin-bottom_block_mobile: 55px;
    --mcn__margin-bottom_block_desktop: 110px;
    --font-light: '_g-roboto-light';
    --font-bold: '_g-roboto-bold';
    --font-regular: '_g-roboto-regular';
    color: #000;
    text-align: center;
    font-family: var(--mcn__font_regular);
}

._g * {
    font-family: inherit;
    font-weight: inherit
}

._g b,
._g strong {
    font-weight: bold
}

._g img {
    max-width: 100%;
    content-visibility: auto
}

._g img[width] {
    width: auto;
    content-visibility: auto
}

._g img[width][height] {
    height: auto;
    content-visibility: auto
}

._g__h1 {
    font-family: var(--mcn__font_bold);
    font-size: 24px;
    line-height: 24px;
    margin-bottom: 30px;
    color: #fff;
    text-align: center;
    max-width: 200px;
}

._g__hero {
    background: linear-gradient(180deg, #007AFE 0%, #007AFE 0.01%, #0079FF 100%);
    /* margin-bottom: var(--mcn__margin-bottom_block_mobile); */
    padding-top: 70px;
    padding-bottom: 60px
}

.hero_col {
    display: flex;
    justify-content: center;
}

.hero__items {
    display: grid;
    grid-template-columns: repeat(auto-fit, 315px);
    justify-content: space-around;
    row-gap: 40px;
    margin-bottom: 40px;
}

.hero__item {
    text-align: initial;
    gap: 20px;
    align-items: center;
}

.hero__item_pic {
    display: flex;
    align-items: center;
    flex: 0 0 57px;
}

.hero__item_title {
    font-weight: 300;
    font-size: 14px;
    line-height: 16px;
    color: #FFFFFF;
}

.btn {
    padding: 10px 20px;
}


/* messengers */

.messengers {
    background-color: #F5F8FA;
    padding: 45px 0;
}

.case_messengers {
    display: flex;
    flex-direction: column;
}

.messengers_cont_title {
    font-size: 29px;
    line-height: 30px;
    padding-top: 30px;
    padding-bottom: 15px;
    max-width: 866px;
    display: inline-block;
}

.messengers_cont_subtitle {
    font-weight: 300;
    font-size: 18px;
    line-height: 24px;
    color: #828282;
}


/* тарифы */

.tariff {
    margin-bottom: 45px;
}

.tariff_col {
    display: flex;
    flex-direction: column;
    margin-top: 50px
}

.tariff_title {
    font-size: 25px;
    line-height: 25px;
    margin-bottom: 15px;
}

.tariff_subtitle {
    font-size: 23px;
    line-height: 23px;
    margin-bottom: 45px;
}

.vn-tariffs__cards {
    display: grid;
    grid-template-columns: 290px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 35px;
    row-gap: 32px
}

.vn-tariffs__cards_4items>.vn-tariffs__card:nth-child(2) {
    -webkit-box-shadow: 0 9px 36px rgba(0, 0, 0, 0.15), 0 0 1px #b500ff;
    box-shadow: 0 9px 36px rgba(0, 0, 0, 0.15), 0 0 1px #b500ff
}

.vn-tariffs__cards_4items>.vn-tariffs__card:nth-child(2)>.vn-tariffs__card-cost {
    color: #27ae60
}

.vn-tariffs__card {
    background-color: #fff;
    border-radius: 12px;
    -webkit-box-shadow: 0 9px 36px rgba(0, 0, 0, 0.15);
    box-shadow: 0 9px 36px rgba(0, 0, 0, 0.15)
}

.vn-tariffs__card-head {
    background-color: #0e7de6;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    color: #fff;
    line-height: 1;
    padding-bottom: 20px;
    padding-top: 40px
}

.vn-tariffs__card-head_with-ribbon {
    position: relative
}

.vn-tariffs__card-head-title {
    font-family: var(--mcn__font_bold);
    font-size: 20px;
    padding-bottom: 15px;
}

.vn-tariffs__card-head-subtitle {
    font-family: var(--mcn__font_light);
    margin-top: 8px
}

.vn-tariffs__card-head-ribbon {
    border-bottom: 32px solid #c561ee;
    border-left: 32px solid transparent;
    border-right: 32px solid transparent;
    font-family: var(--mcn__font_black);
    height: 0;
    line-height: 33px;
    position: absolute;
    right: -26px;
    text-transform: uppercase;
    top: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 100px
}

.vn-tariffs__card-cost {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.vn-tariffs__card-cost_price {
    font-size: 40px;
    line-height: 90px
}

.vn-tariffs__card-cost_per {
    font-family: var(--mcn__font_light);
    line-height: 16px;
    margin-left: 10px;
    text-align: initial
}

.vn-tariffs__card-channels,
.vn-tariffs__card-nums {
    background-color: #e4edef
}

.vn-tariffs__card-addon,
.vn-tariffs__card-channels,
.vn-tariffs__card-nums,
.vn-tariffs__card-setup {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    line-height: 28px;
    padding-left: 10px;
    padding-right: 10px;
    text-align: initial
}

.vn-tariffs__card-addon span:first-child,
.vn-tariffs__card-channels span:first-child,
.vn-tariffs__card-nums span:first-child,
.vn-tariffs__card-setup span:first-child {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 155px;
    flex: 0 0 155px;
    font-family: var(--mcn__font_light);
    font-size: 12px
}

.vn-tariffs__card-addon span:last-child,
.vn-tariffs__card-channels span:last-child,
.vn-tariffs__card-nums span:last-child,
.vn-tariffs__card-setup span:last-child {
    font-family: var(--mcn__font_bold);
    font-size: 16px
}

.vn-tariffs__card-c2a {
    padding-bottom: 40px;
}

.vn-tariffs__card-c2a-link {
    font-size: 16px;
    height: 48px;
    width: 140px
}

.info {
    display: flex;
    justify-content: center;
}

.tariff_info {
    font-weight: 300;
    font-size: 12px;
    line-height: 18px;
    max-width: 450px;
}


/* new */

.case_price {
    margin: 30px;
}

.tariff-price-old {
    font-size: 31px!important;
}

.tariff-price-curr {
    font-size: 34px;
}

.font_month {
    font-weight: 300;
    font-size: 31px;
    line-height: 16px;
}


/* звонки */

.calls_col {
    display: flex;
    flex-direction: column;
}

.calls_card {
    background: #FFF;
    box-shadow: 0px 0px 30px rgba(228, 237, 239, 0.5);
    border-radius: 12px;
}

.calls_card_title {
    font-weight: bold;
    font-size: 18px;
    line-height: 18px;
}

.center {
    display: flex;
    justify-content: center;
}

.title_calls {
    font-size: 23px;
    line-height: 23px;
    max-width: 740px;
    margin-bottom: 50px;
}


/* шаблон */

.qq {
    display: flex;
    margin-left: 32px;
}

.padding {
    padding-right: 7px;
}

.vn-base__tbl {
    border-radius: 12px;
    -webkit-box-shadow: 0 9px 36px rgba(0, 0, 0, 0.15);
    box-shadow: 0 9px 36px rgba(0, 0, 0, 0.15);
    margin-left: auto;
    margin-right: auto;
    max-width: 750px;
    text-align: initial;
    width: 100%;
    margin-bottom: 30px;
}

.vn-base__tbl-head {
    padding-left: 16px;
    padding-right: 16px
}

.vn-base__tbl-title {
    border-bottom: 1px solid #e0e0e0;
    font-family: var(--mcn__font_bold);
    font-size: 18px;
    line-height: 18px;
    margin-top: 32px;
    margin-bottom: 32px;
    padding-bottom: 32px;
}

.vn-base__tbl-body {
    font-family: var(--mcn__font_light);
    line-height: normal;
    padding-bottom: 32px
}

.vn-base__tbl-row {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: 5px;
    -moz-column-gap: 5px;
    column-gap: 5px;
    display: grid;
    grid-template-columns: 50% auto -webkit-max-content;
    grid-template-columns: 50% auto max-content;
    padding: 6px 16px
}

.vn-base__tbl-row-type {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.vn-base__tbl-row_badge {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #d2e2ef;
    border-radius: 2px;
    color: #7d91ab;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-size: 10px;
    height: 17px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: 2px;
    text-transform: uppercase;
    width: 33px
}

.vn-base__tbl-row_cost {
    font-family: var(--mcn__font_bold)
}


/* connection_set */

.connection_set {
    background: #F5F8FA;
    padding: 45px 0;
}

.connection_set_col {
    display: flex;
    flex-direction: column;
}

.connection_set_title {
    font-size: 26px;
    line-height: 26px;
    margin-bottom: 30px;
}

.connection_set_info {
    font-weight: 300;
    font-size: 15px;
    line-height: 20px;
    margin-bottom: 30px;
}

.connection_set_price {
    margin-bottom: 30px;
}

.connection_set_price_head {
    font-weight: 300;
    font-size: 19px;
    line-height: 21px;
    padding-bottom: 7px;
    max-width: 180px;
    display: inline-block;
}

.connection_set_price_price {
    font-size: 13.8172px;
    line-height: 16px;
    letter-spacing: 0.03em;
}

.connection_set_price_num_month {
    font-weight: bold;
    font-size: 26px;
    line-height: 32px;
    margin-bottom: 20px;
}


/* form */

.form-section {
    background: -webkit-gradient(linear, left top, left bottom, from(#0071FF), to(#00ADFF));
}

.robot__form {
    background: #FFFFFF;
    display: inline-block;
}

.form-title {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.indent {
    margin-bottom: 20px;
    max-width: 482px;
    padding: 42px;
}

.text-title {
    font-size: 24px;
    line-height: 26px;
    font-weight: 400;
    margin-bottom: 20px;
    max-width: 360px;
    display: -webkit-inline-box;
}

.text-descr {
    font-weight: 300;
    margin-bottom: 58px;
    max-width: 325px;
    display: -webkit-inline-box;
}

.form-inner_ {
    display: flex;
    flex-direction: column;
    margin-bottom: 27px;
    align-items: center;
}

.form_input {
    margin-bottom: 9px;
    border-radius: 4px;
    max-width: 328px;
    height: 35px;
    width: 100%;
}

.btn_ {
    max-width: 320px;
    color: #fff;
    border-color: #0081E3;
    background-color: #0081E3;
    margin-bottom: 25px;
}

.text-note {
    display: -webkit-inline-box;
    font-weight: 300;
    font-size: 12px;
    line-height: 18px;
    max-width: 310px;
}

.color-link {
    color: #3C86B0;
}

.text-tel {
    font-weight: bold;
    font-size: 16px;
    line-height: 22px;
    color: #FFFFFF;
    margin-bottom: 20px;
    max-width: 400px;
    display: -webkit-inline-box;
}

.case-tel-numb {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.tel-pic {
    margin-right: 10px;
}

.tel {
    font-weight: normal;
    font-size: 18px;
    line-height: 18px;
    color: #FFFFFF
}

@media (min-width:576px) {
    ._g__h1 {
        max-width: 550px;
    }
}

@media (min-width:768px) {
    /* тарифы */
    .vn-tariffs__cards_5items>.vn-tariffs__card {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 288px;
        flex: 0 0 288px
    }
    .vn-tariffs__cards_3items {
        display: grid;
        gap: 32px 16px;
        grid-template-columns: repeat(2, 288px);
        -webkit-box-pack: center;
        justify-content: center;
        margin-bottom: 35px;
    }
    /* звонки
    щаблон */
    .vn-base__tbl-head {
        padding-left: 32px;
        padding-right: 32px
    }
    .vn-base__tbl-row {
        font-size: 16px;
        line-height: 32px;
        padding: 0 32px
    }
    .connection_set_prices {
        display: flex;
        justify-content: space-around;
        align-items: center;
    }
    .row_2 {
        display: contents;
    }
}

@media (min-width:992px) {
    ._g__h1 {
        font-size: 38px;
        line-height: 38px
    }
    .hero__item_title {
        font-size: 16px;
        line-height: 18px;
    }
    .hero__items {
        grid-template-columns: repeat(auto-fit, 380px);
    }
    /* case_messengers */
    .case_messengers {
        flex-direction: row;
    }
    .messengers_pic {
        min-width: 170px;
    }
    .messengers_cont {
        display: flex;
        flex-direction: column;
        justify-content: center;
        text-align: left;
        padding-left: 45px;
    }
    .messengers_cont_title {
        padding-top: 0px;
        font-size: 34px;
        line-height: 36px;
    }
    /* тарифы */
    .tariff_title {
        font-size: 34px;
        line-height: 34px;
    }
    .tariff_subtitle {
        font-size: 30px;
        line-height: 30px;
    }

    .vn-tariffs__cards_5items {
        max-width: 896px
    }
    /* calls */
    .title_calls {
        font-size: 34px;
        line-height: 34px;
    }
    /* connection_set */
    /* form  */
    .form-section {
        background: url("../img/tariffs-for-connecting-a-chatphone/bg_form.png") center no-repeat;
    }
    .section {
        padding: 70px 0;
    }
    .text-title {
        font-size: 34px;
        line-height: 36px;
        max-width: 315px;
        display: -webkit-inline-box;
    }
    .text-tel {
        font-size: 24px;
        line-height: 36px;
        max-width: 600px
    }
    .tel {
        font-size: 28px;
        line-height: 28px;
    }
}

@media (min-width:1200px) {
    .hero__items {
        grid-template-columns: 385px 373px 300px;
    }
    /* тарифы */
        .vn-tariffs__cards_3items {
        -webkit-column-gap: 16px;
        -moz-column-gap: 16px;
        column-gap: 16px;
        grid-template-columns: repeat(4, 288px)
    }
    .vn-tariffs__cards_4items {
        -webkit-column-gap: 16px;
        -moz-column-gap: 16px;
        column-gap: 16px;
        grid-template-columns: repeat(288px);
        row-gap: initial
    }
    /* connection_set */
    .connection_set {
        background: url("../img/tariffs-for-connecting-a-chatphone/Group6090.svg") calc(35% + 500px) center no-repeat #F5F8FA;
        padding: 90px 0;
        margin-top: 45px;
    }
    .connection_set_col {
        flex-direction: row;
        padding: 0 0;
    }
    .connection_set_cont {
        text-align: initial;
        max-width: 575px;
    }
    .connection_set_title {
        font-size: 34px;
        line-height: 36px;
    }
    .connection_set_info {
        font-size: 18px;
        line-height: 24px;
    }
    .connection_set_prices {
        display: inline-block;
        flex-direction: column;
        text-align: left;
        margin-left: 40px;
        /* width: 400px; */
    }
    .head-top {
        max-width: 400px;
        width: 354px;
    }
    .row_2 {
        display: flex;
        justify-content: space-between;
    }
    .connection_set_price_head {
        font-size: 20px;
        line-height: 23px;
        padding-bottom: 20px;
        /* display: initial; */
    }
    .connection_set_price_439 {
        text-align: left;
        margin-left: 20px;
    }
    .connection_set_price_num_month {
        font-size: 26px;
        margin-bottom: 30px;
    }
}

@media (prefers-reduced-motion:reduce) {
    *,
     :after,
     :before {
        -webkit-animation-duration: 0.01ms!important;
        animation-duration: 0.01ms!important;
        -webkit-animation-iteration-count: 1!important;
        animation-iteration-count: 1!important;
        -webkit-transition-duration: 0.01ms!important;
        transition-duration: 0.01ms!important;
        scroll-behavior: auto!important
    }
}