@-webkit-keyframes move-gradient-3colors {
    0% {
        transform: translateX(0)
    }

    to {
        transform: translateX(66.7%)
    }
}

@keyframes move-gradient-3colors {
    0% {
        transform: translateX(0)
    }

    to {
        transform: translateX(66.7%)
    }
}

@-webkit-keyframes skeletonFlare {
    0% {
        transform: translateX(0)
    }

    to {
        transform: translateX(200%)
    }
}

@keyframes skeletonFlare {
    0% {
        transform: translateX(0)
    }

    to {
        transform: translateX(200%)
    }
}

#calculator {
    align-items: center;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    width: 100%
}


#calculator span {
    margin-bottom: 0 !important;
}
.section-title {
    font-size: 43px!important
}

.button-bg-gradient-4colors:before {
    background: linear-gradient(to right,var(--color-brand-blue) 0,var(--color-brand-green) 25%,var(--color-brand-blue) 50%,var(--color-brand-green) 75%,var(--color-brand-green) 100%)
}

.main {
    align-items: center;
    display: flex;
    flex-direction: column;
    max-width: var(--width-small-section);
    padding: 0 44px;
    width: 100%
}

.main .main-title {
    margin-top: 65px
}

.main .section-description {
    margin-top: 10px
}

.section-tariffs {
    margin-bottom: 50px;
    max-width: 1047px;
    width: 100%
}

.section-title {
    font-size: 43px
}

.tariffs-duration__container {
    -moz-column-gap: 10px;
    column-gap: 10px;
    display: grid;
    grid-template: "periods country currency" auto/1fr 220px 54px;
    margin-top: 30px;
    position: relative;
    width: 100%
}

.meta-warning {
    color: var(--color-section-description);
    margin-top: 30px
}

@media (max-width: 764px) {
    .meta-warning {
        margin:13px auto 0;
        max-width: 321px
    }
}

.tariffs-list-separator {
    display: none
}

.tariffs-list {
    justify-content: start!important;
    margin: 30px auto 0
}

.tariffs-item.discounts {
    background: #fff;
    outline: 9px solid #f1f4f8;
    outline-offset: -9px;
    padding-right: 17px;
    position: relative
}

.tariffs-item.discounts>svg {
    min-height: 30px;
    min-width: 30px
}

.tariffs-item {
    cursor: pointer;
    position: relative
}

.tariffs-item:hover {
    background-color: var(--color-block-bg-hover);
    outline-color: var(--color-block-bg-hover)
}

.tariffs-item h3,.tariffs-item p,.tariffs-item svg {
    position: relative;
    z-index: 10
}

.tariffs-item:before {
    background: linear-gradient(to bottom,var(--color-brand-green) 0,var(--color-brand-blue) 100%);
    border-radius: 46px;
    content: "";
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: inherit;
    width: 100%;
    z-index: -1
}

.tariffs-item.discounts:before {
    background: linear-gradient(90deg,#fcdfc5 5.28%,#c6c5fc 104.2%)
}

.tariffs-item.discounts.tariffs-item_active {
    border: 0
}

.tariffs-item_active {
    cursor: default
}

.tariffs-item_disabled {
    cursor: not-allowed
}

.tariffs-item_active:before {
    opacity: 1;
    z-index: 5
}

.tariffs-item__title {
    position: relative;
    z-index: 10
}

.tariffs-item__text {
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden
}

.tariffs-item__text a {
    color: navy;
    text-decoration: underline;
    transition: .25s
}

.tariffs-item__text a:hover {
    color: #04b
}

.tariffs-item__icon {
    height: 45px;
    width: 45px
}

.tariffs-item__icon circle,.tariffs-item__icon path,.tariffs-item__icon rect {
    transition: .2s
}

.tariffs-item_active svg[data-icon="Telegram Bot"] path,.tariffs-item_active svg[data-icon="Telegram personal"] path,.tariffs-item_active svg[data-icon="WhatsApp Business API"] path:first-of-type,.tariffs-item_active svg[data-icon=Avito] circle:first-of-type,.tariffs-item_active svg[data-icon=Viber] path,.tariffs-item_active svg[data-icon=Vkontakte] path,.tariffs-item_active svg[data-icon=WhatsApp] path,.tariffs-item_active svg[data-icon=Yclients] path:not(path:first-of-type),.tariffs-item_active svg[data-icon=altegio] path,.tariffs-item_active svg[data-icon=caWhatsApp] path,.tariffs-item_active svg[data-icon=email] path,.tariffs-item_active svg[data-icon=facebook] path,.tariffs-item_active svg[data-icon=instagram] path {
    fill: var(--color-brand-green)
}

.tariffs-item_active svg[data-icon="API Only"] rect,.tariffs-item_active svg[data-icon="Telegram Bot"] rect,.tariffs-item_active svg[data-icon="Telegram personal"] rect,.tariffs-item_active svg[data-icon="WhatsApp Business API"] path:last-of-type,.tariffs-item_active svg[data-icon="WhatsApp Business API"] rect,.tariffs-item_active svg[data-icon=AmoCRM] path,.tariffs-item_active svg[data-icon=Avito] circle:not(circle:first-child),.tariffs-item_active svg[data-icon=Bitrix24] path,.tariffs-item_active svg[data-icon=Viber] rect,.tariffs-item_active svg[data-icon=Vkontakte] rect,.tariffs-item_active svg[data-icon=WhatsApp] rect,.tariffs-item_active svg[data-icon=Yclients] path:first-of-type,.tariffs-item_active svg[data-icon=altegio] rect,.tariffs-item_active svg[data-icon=caWhatsApp] rect,.tariffs-item_active svg[data-icon=email] rect,.tariffs-item_active svg[data-icon=facebook] rect,.tariffs-item_active svg[data-icon=instagram] rect {
    fill: #252b36
}

.tariffs-item_active img {
    z-index: 10;
    filter: grayscale(1);
}

.tariffs-item_active svg[data-icon="API Only"] path {
    fill: #f7dcca
}

.tariffs-item_active svg[data-icon=Avito] circle:first-of-type {
    stroke: #252b36
}

.custom-tariff-duration {
    align-items: center;
    bottom: 43px;
    display: flex;
    height: 26px;
    justify-content: space-between;
    opacity: 0;
    position: absolute;
    right: 25px;
    transition: .2s;
    width: 102px;
    z-index: -1
}

.tariffs-item_active .custom-tariff-duration {
    opacity: 1;
    z-index: 10
}

.custom-tariff-duration__next-button svg,.custom-tariff-duration__prev-button svg {
    fill: #252b36;
    height: 13px;
    width: 7px
}

.custom-tariff-duration__prev-button {
    padding: 3px 5px;
    transform: rotate(180deg)
}

.custom-tariff-duration__next-button {
    padding: 3px 5px
}

.custom-tariff-duration__input {
    background: #fff;
    border-radius: 8px;
    height: 26px;
    text-align: center;
    width: 64px
}

.tariffs-currency-container {
    grid-area: currency;
    position: relative
}

.tariffs-currency-container .tariffs-currency__current {
    align-items: center;
    background-color: var(--color-section-bg-opaque);
    border-radius: 21px;
    cursor: pointer;
    display: flex;
    height: 54px;
    justify-content: center;
    transition: var(--transition-primary);
    width: 54px
}

.tariffs-currency-container .tariffs-currency__current_disabled {
    cursor: auto
}

.tariffs-currency-container .tariffs-currency__current:not(.tariffs-currency-container .tariffs-currency__current_disabled):hover {
    background-color: #dee1e7
}

.tariffs-currency-container .tariffs-currency-list {
    background-color: #fff;
    border-radius: 21px;
    filter: drop-shadow(0 2px 16px rgba(0,0,0,.1));
    left: 0;
    overflow: hidden;
    position: absolute;
    top: calc(100% + 6px);
    width: 254px;
    z-index: 20
}

@media (max-width: 1479px) {
    .tariffs-currency-container .tariffs-currency-list {
        left:auto;
        right: 0
    }
}

@media (max-width: 1151px) {
    .tariffs-currency-container .tariffs-currency-list {
        top:74px
    }
}

.tariffs-currency-container .tariffs-currency-list .tariffs-currency-item {
    align-items: center;
    -moz-column-gap: 10px;
    column-gap: 10px;
    cursor: pointer;
    display: flex;
    height: 58px;
    padding: 0 13px;
    position: relative;
    transition: .25s;
    width: 100%
}

@media (max-width: 1479px) {
    .tariffs-currency-container .tariffs-currency-list .tariffs-currency-item {
        flex-direction:row-reverse;
        justify-content: space-between
    }
}

.tariffs-currency-container .tariffs-currency-list .tariffs-currency-item:hover {
    background-color: #f7f8fa
}

.tariffs-currency-container .tariffs-currency-list .tariffs-currency-item:first-child {
    border-radius: 21px 21px 0 0
}

.tariffs-currency-container .tariffs-currency-list .tariffs-currency-item svg {
    flex-shrink: 0
}

.tariffs-currency-container .tariffs-currency-list .tariffs-currency-item div {
    background-color: rgba(0,0,0,.1);
    bottom: 0;
    height: 1px;
    left: 13px;
    position: absolute;
    width: calc(100% - 26px)
}

.tariffs-currency-container .tariffs-currency-list .tariffs-currency-item .tariffs-currency-item__text {
    color: rgba(0,0,0,.5);
    font-size: 11px;
    font-weight: 500;
    line-height: 1.2em
}

.tariffs-currency-container .tariffs-currency-list .tariffs-currency-item_selected {
    cursor: default
}

.tariffs-currency-container .tariffs-currency-list .tariffs-currency-item_selected svg {
    opacity: .28
}

.tariffs-currency-container .tariffs-currency-list .tariffs-currency-item_selected:hover {
    background-color: initial
}

.total__cashback {
    color: rgba(37,43,54,.51);
    display: block;
    font-weight: 500;
    margin-top: 8px
}

.total__cashback strong {
    font-weight: 600
}

.tariffs-item__trash-button {
    bottom: 42px;
    cursor: pointer;
    position: absolute;
    right: 38px;
    z-index: 40
}

.tariffs-item__trash-button>img {
    display: block
}

.triffs-item-price {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-right: 2.375rem;
    margin-top: 20px
}

.calculator-container {
    background: #fff;
    border-top: 1px solid #e4e4e4;
    bottom: 0;
    color: var(--color-headers-text);
    margin: 12px 0;
    min-height: 146px;
    position: -webkit-sticky;
    position: sticky;
    width: 100%;
    z-index: 400
}

.calculator {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1300px;
    min-height: 133px;
    padding: 20px 170px
}

.total__text {
    font-size: 43px
}

.total__text strong {
    font-size: 43px;
    font-weight: 700
}

.details-list {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin-right: 2rem;
    margin-top: 12px
}

.details-list-item {
    align-items: center;
    display: flex;
    gap: 10px
}

.details-list-item__icon-wrapper {
    height: 32px;
    width: 32px
}

.details-list-item__price {
    font-weight: 500
}

.details-list__item-separator {
    background: #e4e4e4;
    height: 27px;
    width: 1px
}

.calculator__pay-button {
    border-radius: 33px;
    font-weight: 500;
    height: 48px;
    margin: 10px 0;
    padding-left: 40px;
    position: relative;
    text-align: start;
    width: 157px
}

.calculator__pay-button svg {
    fill: #252b36;
    height: 13px;
    position: absolute;
    right: 20px;
    top: 18px;
    width: 7px
}

.details-list-item>svg {
    height: 26px;
    width: 26px
}

@media (max-width: 1151px) {
    .section-tariffs {
        max-width:686px
    }

    .tariffs-duration__container {
        grid-template: "periods periods" auto "country currency" auto/1fr 54px;
        row-gap: 27px
    }

    .tariffs-list {
        -moz-column-gap: 44px;
        column-gap: 44px;
        row-gap: 22px
    }
}

@media (max-width: 1050px) {
    .section-title {
        font-size:35px
    }

    .calculator {
        padding: 20px 71px 20px 44px
    }
}

@media (max-width: 790px) {
    .main {
        padding:0 30.5px
    }
}

@media (max-width: 764px) {
    .section-tariffs {
        max-width:439px
    }

    .tariffs-list {
        max-width: 321px;
        row-gap: 13px
    }

    .tariffs-list-separator {
        background: rgba(0,0,0,.2);
        display: block;
        height: 1px;
        margin: 13px auto 0;
        width: 321px
    }

    .tariffs-list:last-child {
        margin-top: 13px
    }

    .calculator {
        padding: 15px 29px 15px 44px
    }

    .total__text,.total__text strong {
        font-size: 35px
    }

    .details-list {
        gap: 10px;
        margin-top: 20px
    }

    .details-list-item {
        gap: 12px
    }

    .details-list-item__price {
        font-size: 14px
    }

    .details-list-item__icon-wrapper {
        height: 26px;
        width: 26px
    }
}

@media (max-width: 518px) {
    .tariffs-duration-item {
        width:calc(50% - 6.5px)
    }
}

@media (max-width: 499px) {
    .main {
        padding:0 16px
    }

    .section-tariffs {
        max-width: 321px
    }

    .calculator {
        flex-wrap: wrap;
        padding: 15px 29px 15px 44px;
        row-gap: 22px
    }
}

.cart .tariffs-item__icon {
    flex-shrink: 0;
    height: 20px;
    width: 19px
}

.tooltip {
    max-width: 290px;
}


.page-calc {
    padding: 28px 0 56px;
}

.page-calc span {
    margin-bottom: 0 !important;
}

.page-calc .container {
    margin: 0 auto;
    max-width: 700px;
    padding: 0 !important;
    width: 100%;
}

.page-calc .calc-header {
    margin-bottom: 20px;
}

.page-calc .calc-header h1 {
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 8px;
}

.page-calc .calc-header p {
    font-size: 15px;
    margin: 0;
}

.page-calc .calc-wrapper {
    align-items: flex-start;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) 220px;
}

.page-calc .calc-main-section {
    min-width: 0;
}

.page-calc .calculator-section,
.page-calc .summary-section {
    background: #fff;
    border: 1px solid #e6ebf1;
    border-radius: 20px;
    box-shadow: 0 12px 30px rgba(31, 56, 88, .08);
}

.page-calc .calculator-section {
    margin-bottom: 16px;
    padding: 18px;
}

.page-calc .section-header {
    align-items: center;
    display: flex;
    gap: 12px;
    margin-bottom: 14px;
}

.page-calc .section-header h2 {
    font-size: 22px;
    line-height: 1.2;
    margin: 0;
}

.page-calc .section-number {
    align-items: center;
    background: #1f8f6a;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 34px;
    font-size: 16px;
    font-weight: 700;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.page-calc .messenger-category + .messenger-category {
    margin-top: 14px;
}

.page-calc .category-title {
    align-items: center;
    cursor: pointer;
    display: flex;
    font-size: 17px;
    font-weight: 700;
    gap: 10px;
    line-height: 1.3;
    margin-bottom: 12px;
}

.page-calc .category-toggle {
    background: #eef3f8;
    border: 0;
    border-radius: 999px;
    flex: 0 0 24px;
    height: 24px;
    position: relative;
    width: 24px;
}

.page-calc .category-toggle::before,
.page-calc .category-toggle::after {
    background: #29445d;
    border-radius: 2px;
    content: "";
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
}

.page-calc .category-toggle::before {
    height: 2px;
    width: 10px;
}

.page-calc .category-toggle::after {
    height: 10px;
    transition: opacity .2s ease;
    width: 2px;
}

.page-calc .category-toggle.collapsed::after {
    opacity: 0;
}

.page-calc .messenger-category.collapsed .calculator-section__tags,
.page-calc .messenger-category.collapsed .messengers-grid,
.page-calc .messenger-category.collapsed .info-note {
    display: none;
}

.page-calc .calculator-section__tags {
    color: #5d6c7c;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
}

.page-calc .calculator-section__tag {
    background: #f4f7fa;
    border-radius: 999px;
    font-size: 12px;
    line-height: 1.2;
    padding: 6px 10px;
}

.page-calc .messengers-grid,
.page-calc .period-grid {
    display: grid;
    gap: 12px;
}

.page-calc .messengers-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.page-calc .period-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.page-calc .messenger-card,
.page-calc .period-card {
    background: #f9fbfd;
    border: 1px solid #dbe4ee;
    border-radius: 16px;
    cursor: pointer;
    min-width: 0;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.page-calc .messenger-card {
    padding: 14px;
}

.page-calc .period-card {
    padding: 14px 12px;
    text-align: center;
}

.page-calc .messenger-card:hover,
.page-calc .period-card:hover,
.page-calc .messenger-card.selected,
.page-calc .period-card.selected {
    border-color: #1f8f6a;
    box-shadow: 0 8px 20px rgba(31, 143, 106, .12);
}

.page-calc .messenger-header {
    align-items: center;
    display: flex;
    gap: 10px;
    margin-bottom: 10px;
}

.page-calc .messenger-image,
.page-calc .messenger-icon {
    background: #eef3f8;
    border-radius: 12px;
    flex: 0 0 40px;
    height: 40px;
    object-fit: contain;
    width: 40px;
}

.page-calc .messenger-info h3,
.page-calc .period-title {
    font-size: 16px;
    line-height: 1.25;
    margin: 0;
}

.page-calc .messenger-pricing {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.page-calc .price-row,
.page-calc .discount-row,
.page-calc .total-row,
.page-calc .summary-item {
    align-items: baseline;
    display: flex;
    gap: 8px;
    justify-content: space-between;
}

.page-calc .price-current,
.page-calc .summary-item-price,
.page-calc .total-final {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
}

.page-calc .price-original,
.page-calc .total-original {
    color: #8593a3;
    font-size: 13px;
    text-decoration: line-through;
}

.page-calc .discount-badge,
.page-calc .period-discount {
    background: #eaf7f1;
    border-radius: 999px;
    color: #1f8f6a;
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    padding: 4px 8px;
}

.page-calc .period-discount.no-discount {
    background: #eef3f8;
    color: #607080;
}

.page-calc .quantity-control {
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}

.page-calc .quantity-control p {
    font-size: 12px;
    margin: 0;
    width: 100%;
}

.page-calc .quantity-control button,
.page-calc .quantity-input {
    border: 1px solid #d4dde7;
    border-radius: 10px;
    height: 34px;
}

.page-calc .quantity-control button {
    background: #fff;
    font-size: 18px;
    width: 34px;
}

.page-calc .quantity-input {
    font-size: 15px;
    padding: 0 8px;
    text-align: center;
    width: 70px;
}

.page-calc .info-note {
    background: #f4f7fa;
    border-radius: 14px;
    color: #566577;
    font-size: 13px;
    line-height: 1.45;
    margin-top: 12px;
    padding: 12px 14px;
}

.page-calc .info-items {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 12px;
    margin: 8px 0;
}

.page-calc .summary-section {
    padding: 18px 16px;
    position: sticky;
    top: 80px;
}

.page-calc .summary-header {
    font-size: 20px;
    margin: 0 0 14px;
}

.page-calc .summary-item__wrapper,
.page-calc .summary-discount,
.page-calc .summary-total {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.page-calc .summary-item__wrapper,
.page-calc .summary-discount {
    margin-bottom: 14px;
}

.page-calc .discount-label,
.page-calc .total-label,
.page-calc .summary-item-name {
    color: #5d6c7c;
    font-size: 13px;
    line-height: 1.4;
}

.page-calc .discount-value {
    color: #1f8f6a;
    font-size: 13px;
    font-weight: 700;
}

.page-calc .checkout-btn,
.page-calc .reset-btn,
.page-calc .mobile-summary-bar,
.page-calc .mobile-summary-close {
    border: 0;
    border-radius: 14px;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
}

.page-calc .checkout-btn,
.page-calc .reset-btn {
    display: block;
    margin-top: 12px;
    padding: 12px 14px;
    width: 100%;
}

.page-calc .checkout-btn {
    background: #1f8f6a;
    color: #fff;
}

.page-calc .reset-btn {
    background: #eef3f8;
    color: #29445d;
}

.page-calc .empty-cart {
    align-items: center;
    color: #607080;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 24px 10px;
    text-align: center;
}

.page-calc .empty-cart svg {
    height: 34px;
    width: 34px;
}

.page-calc .empty-cart h3,
.page-calc .empty-cart p {
    margin: 0;
}

.page-calc .mobile-summary-backdrop,
.page-calc .mobile-summary-close,
.page-calc .mobile-summary-bar {
    display: none;
}

.page-calc .mobile-summary-bar.is-visible {
    display: none;
}

@media (max-width: 900px) {
    .page-calc .container {
        max-width: 700px;
    }

    .page-calc .calc-wrapper {
        grid-template-columns: minmax(0, 1fr) 220px;
        gap: 14px;
    }

    .page-calc .calculator-section {
        padding: 16px;
    }
}

@media (max-width: 768px) {
    body.mobile-checkout-open {
        overflow: hidden;
    }

    .page-calc {
        padding-bottom: 0;
    }

    .page-calc .container {
        padding: 0 14px;
    }

    .page-calc .calc-header h1 {
        font-size: 28px;
    }

    .page-calc .calc-wrapper {
        display: block;
    }

    .page-calc .calculator-section {
        padding: 14px;
    }

    .page-calc .messengers-grid,
    .page-calc .period-grid {
        grid-template-columns: 1fr;
    }

    .page-calc .summary-section {
        border-radius: 20px 20px 0 0;
        bottom: 0;
        position: static;
        display: block;
        opacity: 1;
        visibility: visible;
        right: 0;
        top: auto;
        transform: none;
        transition: transform .25s ease;
        z-index: 1002;
    }

    .page-calc .summary-section.mobile-open {
        transform: translateY(0);
    }

    .page-calc .mobile-summary-backdrop.visible {
        background: rgba(18, 28, 38, .48);
        display: block;
        inset: 0;
        position: fixed;
        z-index: 1000;
    }

    .page-calc .mobile-summary-close.visible {
        background: #fff;
        color: #29445d;
        display: block;
        padding: 10px 14px;
        position: fixed;
        right: 14px;
        top: 14px;
        z-index: 1003;
    }

    .page-calc .mobile-summary-bar.is-visible {
        align-items: center;
        background: #1f8f6a;
        bottom: 14px;
        color: #fff;
        display: flex;
        justify-content: space-between;
        left: 14px;
        padding: 14px 16px;
        position: fixed;
        right: 14px;
        z-index: 999;
    }
}

