/* For old browsers */
@supports (not(--css: variables))
{
    .supports_error
    {
        display: flex !important;
    }
}

/* For IE */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)
{
    .supports_error
    {
        display: flex !important;
    }
}



/*-----------
    Fonts
-----------*/
@font-face
{
    font-family: 'Circe';
    font-weight: normal;
    font-style: normal;

    font-display: swap;
    src: url('../fonts/Circe-Regular.woff') format('woff'),
    url('../fonts/Circe-Regular.ttf') format('truetype');
}

@font-face
{
    font-family: 'Circe';
    font-weight: 700;
    font-style: normal;

    font-display: swap;
    src: url('../fonts/Circe-Bold.woff') format('woff'),
    url('../fonts/Circe-Bold.ttf') format('truetype');
}



/*------------------
    Reset styles
------------------*/
*
{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

*:before,
*:after
{
    box-sizing: border-box;
}

html
{
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
        -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body
{
    margin: 0;

    -webkit-tap-highlight-color: transparent;
    -webkit-overflow-scrolling: touch;
    text-rendering: optimizeLegibility;
    text-decoration-skip: objects;
}

img
{
    border-style: none;
}

textarea
{
    overflow: auto;
}

input,
textarea,
input:active,
textarea:active,
button
{
    margin: 0;

    -webkit-border-radius: 0;
            border-radius: 0;
         outline: none transparent !important;
    box-shadow: none;

    -webkit-appearance: none;
            appearance: none;
    -moz-outline: none !important;
}

:focus
{
    outline: 0;
}

:hover,
:active
{
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-touch-callout: none;
}


::-ms-clear
{
    display: none;
}



/*-------------------
    Global styles
-------------------*/
:root
{
    --bg: #e5e5e5;
    --bg2: radial-gradient(62.94% 62.94% at 48.97% 66.95%, #f9fafe 23.14%, #f1f2f8 100%);
    --bg3: radial-gradient(62.94% 62.94% at 48.97% 66.95%, #eef1fd 23.14%, #f0f3fd 100%);
    --bg4: linear-gradient(154.28deg, #d7dbe8 10.17%, #f5f6f8 80.45%);
    --bg5: linear-gradient(163.51deg, #f2f3f9 3.09%, #f7f9fd 84.97%);
    --bg6: linear-gradient(163.51deg, #f5f8ff 3.09%, #ebf1fc 84.97%);
    --bg7: linear-gradient(163.51deg, #e8eaf0 3.09%, #f5f6f8 84.97%);
    --scroll_width: 17px;
    --text_color: #000;
    --font_size: 16px;
    --font_family: 'Circe', 'Arial', sans-serif;
    --font_family2: 'Montserrat', 'Arial', sans-serif;
}


::selection
{
    color: #fff;

    background: #7c49ff;
}

::-moz-selection
{
    color: #fff;

    background: #7c49ff;
}


.clear
{
    clear: both;
}

.left
{
    float: left;
}

.right
{
    float: right;
}



html
{
    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;
}

html.custom_scroll ::-webkit-scrollbar
{
    width: 10px;
    height: 10px;

    background-color: #ccc;
}

html.custom_scroll ::-webkit-scrollbar-thumb
{
    background-color: #7c49ff;
}

html.custom_scroll
{
    scrollbar-color: #7c49ff #ccc;
    scrollbar-width: thin;
}


body
{
    color: var(--text_color);
    font: var(--font_size) var(--font_family);

    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;
}


button
{
    color: var(--text_color);
    font: var(--font_size) var(--font_family);

    cursor: pointer;

    border: none;
    background: none;
}


.wrap
{
    position: relative;
    z-index: 5;

    display: flex;
    overflow: hidden;
    flex-direction: column;

    min-width: 360px;
    min-height: 100%;

    background: var(--bg);
}

.wrap.bg2
{
    background: var(--bg2);
}

.wrap.bg3
{
    background: var(--bg3);
}

.wrap.bg4
{
    background: var(--bg4);
}

.wrap.bg5
{
    background: var(--bg5);
}

.wrap.bg6
{
    background: var(--bg6);
}

.wrap.bg7
{
    background: var(--bg7);
}


.wrap .ver_line
{
    position: absolute;
    z-index: -1;
    top: 0;

    width: 1px;
    height: 100%;

    pointer-events: none;

    background: rgba(175, 193, 220, .1);
}

.wrap .ver_line1
{
    left: calc(50% - 557px);
}

.wrap .ver_line2
{
    left: 50%;
}

.wrap .ver_line3
{
    right: calc(50% - 557px);
}


.wrap .bg_img
{
    position: absolute;
    z-index: -2;
    top: 63px;
    left: 0;

    width: 100%;
    height: 1018px;
    max-height: 100%;

    pointer-events: none;
}

.wrap .bg_img:after
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: linear-gradient(180deg, #ebeef5 0%, #ebeef5 40.63%, rgba(131, 145, 177, .31) 100%);
}

.wrap .bg_img img
{
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.main
{
    flex: 1 0 auto;
}


.cont
{
    width: 100%;
    max-width: 1154px;
    margin: 0 auto;
    padding: 0 20px;
}


.compensate-for-scrollbar
{
    margin-right: var(--scroll_width) !important;
}


.lozad
{
    transition: opacity .5s linear;

    opacity: 0;
}

.lozad.loaded
{
    opacity: 1;
}


.row
{
    display: flex;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}



.block
{
    margin-bottom: 60px;
}

.block.no_margin
{
    margin-bottom: 0 !important;
}


.bg_block
{
    background: radial-gradient(62.94% 62.94% at 48.97% 66.95%, #f9fafe 23.14%, #f1f2f8 100%);
}

.bg_block > *
{
    background: none !important;
}



.owl-carousel,
.owl-carousel .slide:first-child
{
    display: block;
}

.owl-carousel .slide
{
    display: none;
}

.owl-carousel .owl-stage
{
    font-size: 0;

    white-space: nowrap;
}

.owl-carousel .owl-item
{
    font-size: var(--font_size);

    display: inline-block;

    vertical-align: top;
    white-space: normal;
}

.owl-carousel .slide .lozad
{
    transition: .2s linear;
}



.modal_cont
{
    position: relative;
}

.mini_modal_link
{
    display: inline-block;

    vertical-align: top;
}

.mini_modal
{
    position: absolute;
    z-index: 100;
    top: calc(100% + 30px);
    left: 0;

    visibility: hidden;

    transition: .2s linear;
    pointer-events: none;

    opacity: 0;
}

.mini_modal.active
{
    top: 100%;

    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}



.overlay
{
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;

    opacity: .65;
    background: #000;
}



.supports_error
{
    font-family: 'Arial', sans-serif;
    font-size: 20px;
    line-height: 30px;

    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;
    padding: 20px;

    text-align: center;

    background: #fff;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.supports_error.show
{
    display: flex;
}



/*------------
    Header
------------*/
header
{
    position: relative;
    z-index: 101;
}



header .top
{
    position: relative;
    z-index: 101;

    padding: 20px 0;

    background: #fff;
}

header .top .cont.row
{
    justify-content: space-between;
    align-items: center;
    align-content: center;
}


header .info
{
    padding: 30px 0;
}

header .info.absolute
{
    position: absolute;

    width: 100%;
}

header .info .cont.row
{
    justify-content: space-between;
}



header .city
{
    color: #666f79;
    font-size: 14px;
    line-height: 21px;

    margin-right: auto;
    margin-left: 16px;
}

header .city .btn
{
    color: #634ef1;

    position: relative;

    margin-left: 6px;
    padding-right: 18px;
}

header .city .btn span
{
    transition: border-color .2s linear;

    border-bottom: 1px solid;
}

header .city .btn .icon
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;

    display: block;

    width: 9px;
    height: 6px;
    margin: auto;

    fill: #64647c;
}

header .city .btn:hover span
{
    border-color: transparent;
}


header .city .dropdown
{
    width: 233px;
    margin-top: 21px;
    background: #FFFFFF;
    box-shadow: 0 4px 100px rgba(124, 73, 255, 0.1);
    padding: 12px 10px 21px;
}

header .city .dropdown button
{
    color: #333;
    line-height: 38px;

    display: block;

    width: 100%;
    padding: 0;

    letter-spacing: .26px;

    border-radius: 10px;
    background: #fff;
}



header .menu_btn
{
    color: #000;
    font-size: 14px;
    line-height: 21px;

    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: -30px;

    display: flex;

    height: 21px;
    width: 100px;
    margin: auto;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

header .menu_btn .icon
{
    position: relative;

    display: block;

    width: 22px;
    height: 2px;
    margin-left: 22px;

    transition: background .2s linear;

    background: #000;
}

header .menu_btn .icon:before,
header .menu_btn .icon:after
{
    position: absolute;
    top: -8px;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';
    transition: .2s linear;

    background: #000;
}

header .menu_btn .icon:after
{
    top: 8px;
}


header .menu_btn.active .icon
{
    background: transparent;
}

header .menu_btn.active .icon:before
{
    top: 0;

    transform: rotate(45deg);
}

header .menu_btn.active .icon:after
{
    top: 0;

    transform: rotate(-45deg);
}



header .account
{
    color: #634ef1;
    font-size: 14px;
    line-height: 21px;

    margin-left: auto;
}

header .account a
{
    color: currentColor;

    display: flex;

    text-decoration: none;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

header .account a .icon
{
    display: block;

    width: 19px;
    height: 16px;
    margin-right: 14px;

    fill: #000;
}

header .account a span
{
    transition: border-color .2s linear;

    border-bottom: 1px solid;
}

header .account a:hover span
{
    border-color: transparent;
}



header .phone
{
    color: #1e2a34;
    font-family: var(--font_family2);
    line-height: 20px;

    margin-right: 16px;
    margin-left: 38px;
    gap:10px;
}

header .phone img{
    width: 18px;
}

header .phone a
{
    color: currentColor;

    white-space: nowrap;
    text-decoration: none;
}



header .logo
{
    margin-left: 16px;
}

header .absolute .logo
{
    margin-left: 25px;
}

header .logo .imgs
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

header .logo img
{
    display: block;
}

header .logo img + img
{
    margin-left: 34px;
}

header .logo .slogan
{
    color: #9b9dad;
    font-family: var(--font_family2);
    font-size: 14px;
    line-height: 22px;

    margin-top: 23px;
    margin-left: 78px;
}



header .callback_btn
{
    color: #1e2a34;
    font-size: 14px;
    line-height: 21px;

    display: block;

    width: 172px;
    height: 41px;
    margin-top: -6px;
    margin-right: 16px;
    padding: 9px 25px;

    transition: .2s linear;

    border: 1px solid #c2c7d3;
    border-radius: 8px;
    text-decoration: none;
    text-align: center;
}

header .info.light .callback_btn
{
    color: #fff;

    border-color: #c2c7d3;
}

header .callback_btn:hover,
header .info.light .callback_btn:hover
{
    color: #fff;

    border: none;
    background: linear-gradient(90.79deg, #2e8ff3 .28%, #7b29ff 91.2%);
    box-shadow: 0 16px 32px rgba(99, 78, 241, .3);
}



header .menu
{
    position: absolute;
    z-index: 101;
    top: 63px;
    left: 0;

    display: none;

    width: 100%;
    height: 500px;
    padding: 50px 0;

    background: linear-gradient(96.26deg, #7d4cfc 16.58%, #956cff 87.68%);
}

header .menu nav
{
    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    gap: 30px;
    margin-left: 16px;
}

header .menu .item
{
    position: relative;
    flex: 1 1 auto;
}

header .menu .item > a
{
    color: #fff;
    font-family: var(--font_family2);
    font-size: 20px;
    font-weight: bold;
    line-height: 68px;

    display: block;

    text-decoration: none;
}

header .menu .item > a:hover,
header .menu .item > a.active
{
    text-decoration: underline;
}


header .menu .sub_menu
{
    position: absolute;
    z-index: 99;
    top: calc(100% + 10px);
    left: 0;
}

header .menu .sub_menu .item {
    min-height: 68px;
}

header .menu .sub_menu a
{
    color: #fff;
    line-height: 1.3;

    display: block;

    white-space: nowrap;
    text-decoration: none;
}

header .menu .sub_menu a:hover,
header .menu .sub_menu a.active
{
    text-decoration: underline;
}

header .menu .sub_menu .menu-item-1651 a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-size: 14px;
    line-height: 1;
    color: #FFFFFF;
    text-decoration: none;
    height: 38px;
    border: 1px solid #D9D9D9;
    border-radius: 8px;
    padding: 0 12px;
}

header .menu .sub_menu .menu-item-1651 a::before {
    content: '';
    background-image: url('../images/whatsapp.svg');
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
}

.mob_header
{
    position: relative;
    z-index: 101;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
}


.mob_header .top
{
    background: #fff;
}

.mob_header .top .cont
{
    display: flex;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.mob_header .bottom
{
    margin-top: 15px;
}

.mob_header .bottom.absolute
{
    position: absolute;

    width: 100%;
}


.mob_header .logo
{
    margin-right: auto;
}

.mob_header .logo .imgs
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
}

.mob_header .logo img
{
    display: block;

    height: 28px;
}

.mob_header .logo img + img
{
    height: 14px;
    margin-left: 10px;
}


.mob_header .mob_menu_btn
{
    display: block;

    width: 60px;
    height: 60px;
    margin-right: -20px;
    padding: 15px 19px;

    background: #7c49ff;
}

.mob_header .mob_menu_btn span
{
    position: relative;

    display: block;

    width: 100%;
    height: 2px;

    background: #fff;
}

.mob_header .mob_menu_btn span:before,
.mob_header .mob_menu_btn span:after
{
    position: absolute;
    top: -8px;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: #fff;
}

.mob_header .mob_menu_btn span:after
{
    top: 8px;
}


.mob_header .slogan
{
    color: #818399;
    font-family: var(--font_family2);
    font-size: 14px;
    line-height: 22px;

    margin-left: 57px;
}

.mobile-phone {
    display: flex;
    align-items: center;
    column-gap: 8px;
    font-family: var(--font_family2);
    font-size: 18px;
    line-height: 1;
    color: #FFFFFF;
    background: #9368FF;
    padding: 39px 17px 30px;
    margin-bottom: 20px;
}

.mobile-phone::before {
    content: '';
    background-image: url("../images/phone.svg");
    background-repeat: no-repeat;
    width: 14px;
    height: 14px;
}

.mobile-phone b {
    font-weight: 700;
}

.mobile-socials {
    display: flex;
    flex-direction: column;
    row-gap: 13px;
    align-items: flex-start;
    padding: 0 40px;
    margin-top: 20px;
}

.mobile-socials__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    max-width: 240px;
    width: 100%;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 1;
    color: #FFFFFF;
    text-decoration: none;
    height: 50px;
    border: 2px solid rgba(255, 255, 255, 0.2);
    border-radius: 8px;
    padding: 0 20px;
}

.mobile-socials__btn_type_whatsapp {
    grid-area: whatsapp;
}

.mobile-socials__icon_type_whatsapp {
    width: 24px;
    height: 24px;
}

.mob_header .menu
{
    position: absolute;
    z-index: 101;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    padding-bottom: 40px;

    background: linear-gradient(186.26deg, #7D4CFC 16.58%, #956CFF 87.68%);
}

.mob_header .menu .close_btn
{
    position: absolute;
    top: 0;
    right: 0;

    display: block;

    width: 60px;
    height: 60px;
}

.mob_header .menu .close_btn:before,
.mob_header .menu .close_btn:after
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: block;

    width: 30px;
    height: 1px;
    margin: auto;

    content: '';
    transform: rotate(45deg);

    background: #fff;
}

.mob_header .menu .close_btn:after
{
    transform: rotate(-45deg);
}

.mob_header .menu nav {
    padding: 0 20px;
}

.mob_header .menu .item
{
    display: flex;
    flex-wrap: wrap;
}

.mob_header .menu .menu-item-has-children.item:not(.menu-item-1580)::after
{
    content: '';
    flex: 0 0 48px;
    background-image: url("../images/chevron-down.svg");
    background-repeat: no-repeat;
    background-position: top 14px center;
    width: 48px;
    height: 48px;
}

.mob_header .menu .menu-item.menu-item-1580 .sub_menu {
    display: none;
}

.mob_header .menu .item + .item
{
    margin-top: 5px;
}

.mob_header .menu .item > a
{
    color: #fff;
    font-family: var(--font_family2);
    font-size: 18px;
    font-weight: bold;
    line-height: 48px;
    text-decoration: none;
}


.mob_header .menu .sub_menu
{
    flex: 1 1 100%;
    display: none;
    order: 3;
    padding-left: 30px;
    margin-bottom: 10px;
}

.mob_header .menu .sub_menu_active {
    display: block;
}

.mob_header .menu .sub_menu a
{
    color: #fff;
    font-weight: 400;
    font-size: 16px;
    line-height: 38px;
    white-space: nowrap;
    text-decoration: none;
}

.mob_header .menu .sub_menu a:hover,
.mob_header .menu .sub_menu a.active
{
    text-decoration: underline;
}



/*---------------
    Page head
---------------*/
.page_head
{
    margin-bottom: 57px;
    padding-top: 40px;
}

.page_head .cont
{
    padding: 0 36px;
}

.page_head .cont > * + *
{
    margin-top: 25px;
}


.breadcrumbs
{
    color: #1e2a34;
    font-family: var(--font_family2);
    font-size: 12px;
    font-weight: bold;
    line-height: 16px;
}

.breadcrumbs a
{
    color: #696d7a;
    font-weight: 400;

    transition: color .2s linear;
    text-decoration: none;
}

.breadcrumbs a:hover
{
    color: #000;
}

.breadcrumbs .sep
{
    position: relative;
    top: -1px;

    display: inline-block;

    width: 5px;
    height: 8px;
    margin: 0 6px;

    vertical-align: middle;

    fill: #abafbf;
}


.page_title
{
    color: #32353f;
    font-family: var(--font_family2);
    font-size: 50px;
    font-weight: bold;
    line-height: 68px;

    text-transform: uppercase;
}



/*----------------
    Block head
----------------*/
.block_head
{
    display: flex;

    width: 100%;
    margin-bottom: 40px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.block_head .title
{
    font-family: var(--font_family2);
    font-weight: 700;
}


.block_head .desc
{
    color: #2e2e35;
    font-size: 18px;
    line-height: 28px;

    margin-top: 20px;
}


.block_head .btn,
.block_head .link
{
    color: #f2f2f2;
    font-size: 20px;
    font-weight: bold;
    line-height: 29px;

    display: inline-block;

    margin-top: 30px;
    padding: 15px 50px;

    transition: .4s ease-in-out;
    vertical-align: top;
    text-decoration: none;

    border-radius: 40px;
    background-image: linear-gradient(90deg, #2e8ff3, #7b29ff,#7b29ff, #2e8ff3 );
    background-size: 300% 100%;
    box-shadow: 0 16px 32px rgba(99, 78, 241, .3);;
}

.block_head .btn:hover,
.block_head .link:hover
{
    background-position: 100% 0;
}


.block_head.center
{
    text-align: center;

    justify-content: center;
}

.block_head.center .title
{
    width: 100%;
}



/*------------------
    Form elements
------------------*/
.form
{
    --form_border_color: #9297ad;
    --form_focus_color: #000;
    --form_error_color: red;
    --form_border_radius: 10px;
    --form_bg_color: #fff;
    --form_placeholder_color: #2d2f38;
}


.form ::-webkit-input-placeholder
{
    color: var(--form_placeholder_color);
}

.form :-moz-placeholder
{
    color: var(--form_placeholder_color);
}

.form :-ms-input-placeholder
{
    color: var(--form_placeholder_color);
}


.form .cols
{
    display: flex;

    margin-left: -36px;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.form .cols .col
{
    width: calc(45% - 36px);
    margin-left: 36px;
}

.form .cols .col.width1of3
{
    width: calc(33.333% - 36px);
}


.form .columns
{
    margin-left: calc(var(--form_columns_offset) * -1);

    --form_columns_offset: 28px;
}

.form .columns > *
{
    width: calc(50% - var(--form_columns_offset));
    margin-left: var(--form_columns_offset);
}


.form .columns > *.width1of4
{
    width: calc(25% - var(--form_columns_offset));
}

.form .columns > *.width2of4
{
    width: calc(50% - var(--form_columns_offset));
}

.form .columns > *.width3of4
{
    width: calc(75% - var(--form_columns_offset));
}

.form .columns > *.width4of4
{
    width: calc(100% - var(--form_columns_offset));
}


.form .line
{
    margin-bottom: 22px;
}


.form .field
{
    position: relative;
}


.form .input
{
    color: var(--text_color);
    font: var(--font_size) var(--font_family);

    display: block;

    width: 100%;
    height: 59px;
    padding: 0 24px;

    transition: border-color .2s linear;

    border: 1px solid var(--form_border_color);
    border-radius: var(--form_border_radius);
    background: var(--form_bg_color);
}

.form textarea
{
    color: var(--text_color);
    font: var(--font_size)/28px var(--font_family);

    display: block;

    width: 100%;
    height: 140px;
    padding: 15px 24px;

    resize: none;
    transition: border-color .2s linear;

    border: 1px solid var(--form_border_color);
    border-radius: var(--form_border_radius);
    background: var(--form_bg_color);
}


.form .input:-webkit-autofill
{
    -webkit-box-shadow: inset 0 0 0 50px var(--form_bg_color) !important;
}


.form .input:focus,
.form textarea:focus
{
    border-color: var(--form_focus_color);
}

.form .error
{
    border-color: var(--form_error_color);
}


.form input[type=checkbox]
{
    display: none;
}

.form input[type=checkbox] + label
{
    color: #767a88;
    font-size: 15px;
    line-height: 24px;

    position: relative;

    display: table-cell;

    height: 24px;
    padding-left: 53px;

    cursor: pointer;
    vertical-align: middle;
}

.form input[type=checkbox] + label.big
{
    color: #161516;
    font-size: var(--font_size);
}

.form input[type=checkbox] + label a
{
    color: currentColor;

    transition: color .2s linear;
}

.form input[type=checkbox] + label a:hover
{
    color: #634ef1;
}

.form input[type=checkbox] + label:before
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 24px;
    height: 24px;

    content: '';
    transition: .2s linear;

    border: 1px solid var(--form_border_color);
    border-radius: 5px;
}

.form input[type=checkbox] + label:after
{
    position: absolute;
    top: 6px;
    left: 6px;

    display: block;

    width: 12px;
    height: 7px;

    content: '';
    transition: opacity .2s linear;
    transform: rotate(-45deg);

    opacity: 0;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
}

.form input[type=checkbox]:checked + label:before
{
    border-color: #7c49ff;
    background: #7c49ff;
}

.form input[type=checkbox]:checked + label:after
{
    opacity: 1;
}


.form .agree
{
    color: #838993;
    font-size: 13px;
    line-height: 18px;
}

.form .agree a
{
    color: currentColor;

    transition: color .2s linear;
}

.form .agree a:hover
{
    color: #634ef1;
}


.form .submit
{
    display: flex;

    padding-top: 17px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.form .submit_btn
{
    color: #f2f2f2;
    font-size: 20px;
    font-weight: bold;
    line-height: 29px;

    display: inline-block;

    padding: 15px 60px;

    transition: .4s ease-in-out;
    vertical-align: top;

    border-radius: 40px;
    background-image: linear-gradient(90deg, #2e8ff3, #7b29ff,#7b29ff, #2e8ff3 );
    background-size: 300% 100%;
    box-shadow: 0 16px 32px rgba(99, 78, 241, .3);;
}

.form .submit_btn:hover
{
    background-position: 100% 0;
}



/*----------------
    Typography
----------------*/
.text_block
{
    color: #2e2e35;
    line-height: 25px;
    font-size: 17px;
}


.text_block > :last-child,
.text_block .hide > :last-child
{
    margin-bottom: 0 !important;
}

.text_block > :first-child,
.text_block .hide > :first-child
{
    margin-top: 0 !important;
}


.text_block h2
{
    font-size: 36px;
    font-weight: bold;
    line-height: 40px;
}

.text_block h1 + h2
{
    margin-top: 0 !important;
}


.text_block h3
{
    font-size: 36px;
    font-weight: bold;
    line-height: 40px;
}

.text_block h1 + h3,
.text_block h2 + h3
{
    margin-top: 0 !important;
}


.text_block * + h2,
.text_block * + h3
{
    margin-top: 40px;
}

.text_block .clear + h2,
.text_block .clear + h3
{
    margin-top: 20px;
}

.text_block h2 + *,
.text_block h3 + *
{
    margin-top: 0 !important;
}


.text_block > *,
.text_block .hide > *
{
    margin-bottom: 20px;
}

.text_block strong i{
    background: linear-gradient(97.53deg, #2A92F2 2.21%, #7A28FF 71.31%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}


.text_block img
{
    margin: 40px 0;
}


.text_block img
{
    display: block;

    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
}

.text_block img.left
{
    max-width: calc(50% - 40px);
    margin-top: 4px;
    margin-right: 40px;
}

.text_block img.right
{
    max-width: calc(50% - 40px);
    margin-top: 4px;
    margin-left: 40px;
}

.text_block img.loaded
{
    height: auto !important;
}

.text_block ul, .text_block ol{
    margin-left: 20px;
}

.text_block .hide
{
    display: none;
}


.text_block .spoler_btn
{
    font-weight: bold;

    text-decoration: underline;
}

.text_block .spoler_btn:hover
{
    text-decoration: none;
}

.text_block .spoler_btn span + span,
.text_block .spoler_btn.active span
{
    display: none;
}

.text_block .spoler_btn.active span + span
{
    display: inline;
}


.text_block .columns
{
    column-gap: 64px;
    column-count: 2;
}

.text_block .columns > *
{
    transform: translateZ(0);

    --webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}

.text_block .columns > * + *
{
    margin-top: 20px;
}


.text_block a
{
    color: #7c49ff;

    text-decoration: none;
}

.text_block a:hover
{
    text-decoration: underline;
}



/*-------------------
    First section
-------------------*/
.first_section
{
    position: relative;

    padding-top: 40px;
}


.first_section .info
{
    width: 480px;
    max-width: 100%;
    padding-bottom: 85px;
}

.first_section .info .title
{
    color: #2e2e35;
    font-family: var(--font_family2);
    font-size: 40px;
    font-weight: bold;
    line-height: 53px;

    text-transform: uppercase;
}

.first_section .info .desc
{
    color: #2e2e35;
    font-size: 20px;
    line-height: 31px;

    margin-top: 30px;
}

.first_section .info .btn
{
    color: #f2f2f2;
    font-size: 20px;
    font-weight: bold;
    line-height: 29px;

    display: inline-block;

    margin-top: 30px;
    padding: 15px 40px;

    transition: .4s ease-in-out;
    text-align: center;
    vertical-align: top;
    text-decoration: none;

    border-radius: 40px;
    background-image: linear-gradient(90deg, #2e8ff3, #7b29ff,#7b29ff, #2e8ff3 );
    background-size: 300% 100%;
    box-shadow: 0 16px 32px rgba(99, 78, 241, .3);;
}

.first_section .info .btn:hover
{
    background-position: 100% 0;
}


.first_section .img
{
    position: absolute;
    right: 50%;
    bottom: 0;

    display: block;

    width: 1166px;
    max-width: 100%;
    margin-right: -720px;

    pointer-events: none;
}



/*------------
    Pluses
------------*/
.pluses
{
    position: relative;
    z-index: 5;

    padding: 35px 0;

    background: #fff;
}

.pluses:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 50%;

    display: block;

    width: 50%;
    height: 100%;

    content: '';

    background: linear-gradient(180deg, #3e3e4b 0%, #272736 100%);
}


.pluses .row
{
    margin-bottom: -20px;
    margin-left: -20px;

    align-items: stretch;
    align-content: stretch;
    justify-content: space-between;
}

.pluses .row > *
{
    color: #56566b;
    font-size: 14px;
    font-weight: bold;
    line-height: 25px;

    max-width: calc(25% - 20px);
    margin-bottom: 20px;
    margin-left: 20px;

    letter-spacing: .05em;
    text-transform: uppercase;
}

.pluses .row > *:nth-last-child(1),
.pluses .row > *:nth-last-child(2)
{
    color: #b3b3c0;
}



/*-----------------------
    Services carousel
-----------------------*/
.services_carousel
{
    position: relative;
    z-index: 10;

    margin-bottom: -288px;
    padding-top: 65px;
}


.services_carousel .block_head
{
    margin-bottom: 110px;
}

.services_carousel .block_head .title
{
    color: #212121;
    font-family: var(--font_family2);
    font-size: 40px;
    font-weight: bold;
    line-height: 50px;
}

.services_carousel .block_head .desc
{
    color: #555865;
    font-size: 20px;
    line-height: 24px;

    margin-top: 15px;
}


.services_carousel .wheelSlider-container
{
    width: 1092px;
    max-width: 100%;
    margin: 0 auto;
}


.services_carousel .next_btn
{
    position: relative;
    z-index: 3;

    display: flex;

    width: 63px;
    height: 63px;
    margin: 32px auto 0;

    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 100px #d0d3db;

    justify-content: center;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.services_carousel .next_btn .icon
{
    display: block;

    width: 16px;
    height: 39px;

    transform: rotate(-180deg);

    fill: #818fa5;
}


.services_carousel .count
{
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    line-height: 30px;

    margin-top: 10px;

    text-align: center;
}


.services_carousel .service
{
    display: flex;

    padding: 44px 68px;

    background: #fff;
    box-shadow: 0 4px 100px rgba(64, 66, 80, .16);

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.services_carousel .service .title
{
    color: #64647c;
    font-size: 14px;
    font-weight: bold;
    line-height: 22px;

    margin-bottom: 30px;

    letter-spacing: .1em;
    text-transform: uppercase;
}


.services_carousel .service .info
{
    width: 415px;
    max-width: 100%;
}

.services_carousel .service .name
{
    color: #000;
    font-family: var(--font_family2);
    font-size: 30px;
    font-weight: bold;
    line-height: 45px;
}

.services_carousel .service .desc
{
    color: #555865;
    font-size: 18px;
    line-height: 28px;

    width: 385px;
    max-width: 100%;
    margin-top: 10px;
}


.services_carousel .service .price
{
    width: 320px;
    max-width: 100%;
}

.services_carousel .service .price .val
{
    color: #000;
    font-family: var(--font_family2);
    font-size: 20px;
    font-weight: bold;
    line-height: 24px;

    margin-top: -8px;
}

.services_carousel .service .price .val span
{
    font-size: 50px;
    font-weight: 400;
    line-height: 50px;
}


.services_carousel .service .details
{
    color: #634ef1;
    font-size: 18px;
    font-weight: bold;
    line-height: 22px;

    display: inline-block;

    margin-top: 20px;

    vertical-align: top;
}

.services_carousel .service .details:hover
{
    text-decoration: none;
}



/*-------------------
    About company
-------------------*/
.about_company
{
    position: relative;
    z-index: 3;

    padding: 338px 0 545px;

    background: linear-gradient(179.54deg, #3d3d4a 5.95%, #222231 47.87%, rgba(49, 49, 63, .97) 83.89%, rgba(53, 53, 67, 0) 97.83%);
}


.about_company .agency
{
    margin-bottom: 125px;
    padding: 0 120px 0 190px;
}

.about_company .agency .title
{
    color: rgba(178, 184, 208, .5);
    font-weight: bold;
    line-height: 25px;

    margin-bottom: 30px;

    letter-spacing: .1em;
    text-transform: uppercase;
}

.about_company .agency .desc
{
    color: #64647c;
    font-family: var(--font_family2);
    font-size: 25px;
    line-height: 45px;
}

.about_company .agency .desc b
{
    color: #fff;
}


.about_company .boss
{
    position: relative;

    margin-left: 347px;
    padding-bottom: 180px;
    padding-left: 154px;
}

.about_company .boss:before
{
    position: absolute;
    top: 13px;
    left: 0;

    display: block;

    width: 128px;
    height: 1px;

    content: '';

    background: rgba(171, 175, 191, .7);
}

.about_company .boss .post
{
    color: #ABAFBF;
    line-height: 30px;

    letter-spacing: .1em;
    text-transform: uppercase;
}

.about_company .boss .name
{
    color: #D9DBE4;
    font-weight: 800;
    line-height: 30px;

    letter-spacing: .1em;
    text-transform: uppercase;
}

.about_company .boss .quote
{
    color: #b2b8d0;
    line-height: 25px;

    position: relative;

    width: 385px;
    max-width: 100%;
    margin-top: 180px;
    margin-right: 53px;
    margin-left: auto;
}

.about_company .boss .quote:before,
.about_company .boss .quote:after
{
    position: absolute;
    top: calc(100% + 25px);
    right: -25px;

    display: block;

    width: 68px;
    height: 54px;

    content: '';

    background: url(../images/ic_quote.svg) 0 0 no-repeat;
}

.about_company .boss .quote:before
{
    top: -72px;
    left: -93px;

    transform: rotate(-180deg);
}

.about_company .boss .photo
{
    position: absolute;
    bottom: 0;
    left: -410px;

    display: block;

    pointer-events: none;
}

.about_company .boss .triangle
{
    position: absolute;
    z-index: -1;
    bottom: -80px;
    left: -535px;

    display: block;

    pointer-events: none;
}


.about_company .why
{
    position: relative;

    width: 50%;
    margin-left: auto;
    padding: 0 60px 0 110px;
}

.about_company .why .title
{
    color: #b2b8d0;
    font-size: 30px;
    font-weight: bold;
    line-height: 50px;

    letter-spacing: .05em;
    text-transform: uppercase;
}

.about_company .why .desc
{
    color: #b2b8d0;
    line-height: 25px;

    margin-top: 35px;
}

.about_company .why .desc span
{
    color: #e6eaf2;
}

.about_company .why .contacts_link
{
    color: #fff;
    font-family: var(--font_family2);
    font-size: 16px;
    line-height: 25px;

    position: absolute;
    top: 0;
    right: 100%;

    display: flex;
    column-gap: 40px;
    padding: 55px 36px 55px 20px;

    background: linear-gradient(97.53deg, #2a92f2 2.21%, #7a28ff 71.31%);
    box-shadow: 4px 4px 100px rgba(124, 73, 255, .5);

    justify-content: flex-end;
    align-items: center;
    align-content: center;

    width: 50vw;
}

.about_company .why .contacts_link .text {
    flex: 0 1 190px;
}

.about_company .why .contacts_link .btn {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #3F434B;
    text-decoration: none;
    white-space: nowrap;
    font-weight: 700;
    font-size: 20px;
    line-height: 29px;
    height: 59px;
    background: linear-gradient(90.79deg, rgba(255, 255, 255, 0.89) 0.28%, #FFFFFF 91.2%);
    box-shadow: 0 16px 32px rgba(99, 78, 241, 0.3);
    border-radius: 40px;
    padding: 0 50px;
}

.about_company .bg_title
{
    font-family: var(--font_family2);
    font-size: 180px;
    font-weight: bold;
    line-height: 170px;

    position: absolute;
    z-index: -2;
    top: 70px;
    right: 0;
    left: 50%;

    margin-left: -673px;

    transform: rotate(-180deg);
    pointer-events: none;

    background: linear-gradient(135deg,  rgba(70,70,98,.56) 0%,rgba(64,64,82,.3) 100%);
    -webkit-background-clip: text;

            writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    -webkit-text-fill-color: transparent;
}


.about_company .bg
{
    position: absolute;
    z-index: -3;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;
}



/*----------
    Auth
----------*/
.auth
{
    padding: 60px 0;
}


.auth .data
{
    width: 448px;
    max-width: 100%;
    margin: 0 auto;
}


.auth .data .form
{
    padding: 43px 72px 54px;

    background: #fff;
    box-shadow: 10px 10px 250px rgba(102, 82, 117, .25);
}

.auth .data .title
{
    color: #000;
    font-size: 25px;
    font-weight: bold;
    line-height: 29px;

    margin-bottom: 35px;

    text-align: center;
}


.auth .data .links
{
    color: #634ef1;
    line-height: 28px;

    margin-top: 15px;

    text-align: center;
}

.auth .data .links a
{
    color: currentColor;

    transition: border-color .2s linear;
    text-decoration: none;

    border-bottom: 1px solid;
}

.auth .data .links a:hover
{
    border-color: transparent;
}



/*----------------------
    LK opportunities
----------------------*/
.lk_opportunities
{
    padding: 57px 0 50px;

    background: linear-gradient(293.27deg, #2e3137 5.47%, #34394b 72.56%);
}

.lk_opportunities .row
{
    justify-content: space-between;
}


.lk_opportunities .title
{
    color: #fff;
    font-size: 25px;
    font-weight: bold;
    line-height: 29px;

    width: 205px;
    max-width: 100%;
}


.lk_opportunities .items
{
    display: flex;

    width: calc(100% - 205px);
    margin-bottom: -30px;
    margin-left: -100px;

    counter-reset: item;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.lk_opportunities .items > *
{
    width: calc(33.333% - 100px);
    margin-bottom: 30px;
    margin-left: 100px;
}


.lk_opportunities .item
{
    color: #fff;
    line-height: 26px;

    position: relative;

    padding: 3px 0;
}

.lk_opportunities .item:before
{
    font-family: var(--font_family2);
    font-size: 15px;
    font-weight: bold;
    line-height: 26px;

    position: absolute;
    top: -31px;
    left: 0;

    display: inline-block;

    content: counter(item, decimal-leading-zero);
    counter-increment: item;
    vertical-align: top;

    background: linear-gradient(135deg,  #8369ff 0%,#2fb5ff 100%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}



/*----------------
    Error_page
----------------*/
.error_page
{
    padding-top: 65px;

    text-align: center;
}


.error_page .code img
{
    display: block;

    max-width: 60%;
    margin: 0 auto;
}

.error_page .title
{
    color: #000;
    font-family: var(--font_family2);
    font-size: 30px;
    font-weight: bold;
    line-height: 50px;

    margin-top: 40px;

    text-transform: uppercase;
}

.error_page .desc
{
    color: #2e2e35;
    font-size: 18px;
    line-height: 27px;

    width: 638px;
    max-width: 100%;
    margin: 0 auto;
}

.error_page .home_link
{
    color: #f2f2f2;
    font-size: 20px;
    font-weight: bold;
    line-height: 29px;

    display: inline-block;

    margin-top: 25px;
    margin-bottom: 25px;
    padding: 15px 50px;

    vertical-align: top;
    text-decoration: none;

    border-radius: 40px;
    background: linear-gradient(90.79deg, #2e8ff3 .28%, #7b29ff 91.2%);
    box-shadow: 0 16px 32px rgba(99, 78, 241, .3);
    
}


.error_page .img
{
    display: block;

    width: 100%;
    margin-top: 15px;
}



/*-------------------
    Contacts info
-------------------*/
.contacts_info
{
    padding-bottom: 60px;
}

.contacts_info .cont
{
    padding: 0 30px;
}

.contacts_info .row + .row
{
    margin-top: 67px;
}


.contacts_info .phone
{
    color: #1e2a34;
    font-size: 40px;
    font-weight: bold;
    line-height: 59px;

    width: 320px;
}

.contacts_info .phone a
{
    color: currentColor;

    white-space: nowrap;
    text-decoration: none;
}


.contacts_info .callback_btn
{
    color: #32353f;
    font-family: var(--font_family2);
    font-weight: bold;
    line-height: 21px;

    margin-left: 140px;

    align-self: center;
}

.contacts_info .callback_btn span
{
    transition: border-color .2s linear;

    border-bottom: 2px solid #b2b8d0;
}

.contacts_info .callback_btn:hover span
{
    border-color: transparent;
}


.contacts_info .cities .city
{
    width: 320px;
}

.contacts_info .cities .city + .city
{
    margin-left: 140px;
}

.contacts_info .cities button
{
    color: rgba(50, 53, 63, .3);
    font-family: var(--font_family2);
    font-weight: bold;
    line-height: 21px;

    transition: color .2s linear;
    text-align: left;

    align-self: center;
}

.contacts_info .cities button span
{
    transition: border-color .2s linear;

    border-bottom: 2px solid rgba(178, 184, 208, .3);
}


.contacts_info .cities button:hover,
.contacts_info .cities button.active
{
    color: #32353f;
}

.contacts_info .cities button.active
{
    cursor: default;
}

.contacts_info .cities button.active span
{
    border-color: #b2b8d0;
}


.contacts_info .city_info
{
    color: #32353f;
    font-family: var(--font_family2);
    font-weight: bold;
    line-height: 25px;

    width: 320px;
}

.contacts_info .city_info > * + *
{
    margin-top: 57px;
}


.contacts_info .data
{
    width: 565px;
    max-width: calc(100% - 460px);
    margin-left: 140px;
}


.contacts_info .order_btn
{
    color: currentColor;
    font-family: var(--font_family2);
    font-size: 40px;
    font-weight: bold;
    line-height: 68px;

    display: block;

    padding: 16px 45px 15px;

    text-align: center;
    text-decoration: none;
    text-transform: uppercase;

    border: 3px solid #dfe6ec;
    border-radius: 50px;
    background: linear-gradient(97.53deg, #2a92f2 2.21%, #7a28ff 71.31%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}


.contacts_info .socials
{
    display: flex;

    margin-top: 100px;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.contacts_info .socials a
{
    display: block;
}

.contacts_info .socials .icon
{
    display: block;

    fill: #32353f;
}

.contacts_info .socials .icon_facebook
{
    width: 11px;
    height: 23px;
}

.contacts_info .socials .icon_youtube
{
    width: 26px;
    height: 26px;
}

.contacts_info .socials .icon_instagram
{
    width: 28px;
    height: 22px;
}



/*------------------
    Contacts exp
------------------*/
.contacts_exp
{
    color: rgba(160, 167, 190, .58);
    font-size: 13px;
    line-height: 19px;

    padding: 57px 0 50px;

    background: linear-gradient(293.27deg, #2e3137 5.47%, #34394b 72.56%);
}



/*--------------
    Services
--------------*/
.services
{
    margin-bottom: 169px;
    padding-top: 30px;
}


.services .row
{
    margin-bottom: -13px;
    margin-left: -13px;
    padding: 0 96px;

    align-items: stretch;
    align-content: stretch;
}

.services .row > *
{
    width: calc(33.333% - 13px);
    margin-bottom: 13px;
    margin-left: 13px;
}


.services .service
{
    color: #161516;
    font-size: 18px;
    font-weight: bold;
    line-height: 28px;

    display: flex;

    min-height: 181px;
    padding: 25px;

    text-align: center;
    text-decoration: none;

    background: linear-gradient(189.15deg, #fff 6.94%, #f2f3f4 95.99%);
    box-shadow: 0 20px 40px rgba(89, 100, 126, .1);

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}



/*-----------------
    Action form
-----------------*/


.action_form .data
{
    position: relative;

    padding: 59px 80px 56px 129px;

    background: #fff;
    box-shadow: 0 20px 120px rgba(143, 144, 167, .25);

    justify-content: space-between;
}

.action_form .data:before
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 79px;
    height: 100%;

    content: '';

    background: linear-gradient(89.81deg, #674bf4 6.46%, #5a60e8 99.85%);
}


.action_form .sale {
    position: absolute;
    display: flex;
    align-items: center;
    bottom: 0;
    left: 0;
    height: 79px;
    transform: rotate(-90deg) translateY(100%);
    transform-origin: 0 100%;
    font-weight: 700;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #FFFFFF;
    box-sizing: border-box;
    padding: 0 40px;
}


.action_form .title
{
    color: #5b60e9;
    font-family: var(--font_family2);
    font-size: 30px;
    line-height: 40px;

    width: 241px;
    max-width: 100%;
}


.action_form .form
{
    position: relative;

    width: calc(100% - 326px);
    padding-top: 15px;

    --form_border_color: #d5cdcd;
}

.action_form .form .line
{
    margin-bottom: 17px;
}

.action_form .form .input
{
    height: 53px;
}

.action_form .form .submit
{
    padding-top: 50px;

    justify-content: flex-end;
}

.action_form .form .agree
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 255px;
    max-width: 100%;
    margin-left: -326px;
}



/*--------------
    Articles
--------------*/
.articles
{
    margin-bottom: 110px;
}

.articles > * + *
{
    margin-top: 52px;
}


.articles .cont
{
    padding: 0 45px;
}


.articles .row
{
    margin-bottom: -40px;
    margin-left: -80px;
}

.articles .row > *
{
    width: calc(33.333% - 80px);
    margin-bottom: 40px;
    margin-left: 80px;
}


.articles .article
{
    position: relative;

    padding-top: 76px;
}


.articles .article .icon
{
    color: #64647c;

    position: absolute;
    top: 0;
    right: 0;

    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.articles .article .icon > *
{
    display: block;

    width: 43px;
    height: 43px;

    fill: currentColor;
}


.articles .article .thumb
{
    position: absolute;
    top: -23px;
    right: 0;

    display: block;
    overflow: hidden;

    width: 104px;
    height: 84px;

    border-radius: 42px;
    background: #ddd;
}

.articles .article .thumb img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    border-radius: 42px;

    object-fit: cover;
}


.articles .article .date
{
    color: #64647c;
    font-size: 13px;
    font-weight: bold;

    margin-bottom: 10px;

    letter-spacing: .05em;
    text-transform: uppercase;
}


.articles .article .name
{
    color: #000;
    font-family: var(--font_family2);
    font-size: 23px;
    font-weight: bold;
    line-height: 33px;
}

.articles .article .name a
{
    color: currentColor;

    display: inline-block;

    transition: color .2s linear;
    vertical-align: top;
    text-decoration: none;
}

.articles .article .thumb:hover ~ .name a,
.articles .article .name a:hover
{
    color: #634ef1;
}


.articles .article .desc
{
    color: #64647c;
    line-height: 23px;

    margin-top: 22px;
}


.articles .more
{
    color: #205cda;
    font-size: 18px;
    line-height: 28px;

    position: relative;

    padding-top: 76px;

    text-transform: lowercase;
}

.articles .more a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
}

.articles .more a:hover
{
    text-decoration: none;
}


.articles .bg
{
    padding: 66px 0 93px;

    background: linear-gradient(149.96deg, #2e2e37 6.26%, #3d3d4a 87.48%);
}

.articles .bg .article .date
{
    color: #85859b;
}

.articles .bg .article .name
{
    color: #fff;
}

.articles .bg .article .desc
{
    color: #8f92a2;
}



.articles .promo_article
{
    position: relative;
    z-index: 3;
}

.articles .promo_article + *
{
    margin-top: 0 !important;
}

.articles .promo_article .cont
{
    padding: 0 20px;
}

.articles .promo_article .data
{
    display: flex;

    justify-content: flex-start;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}

.articles .promo_article .thumb
{
    position: relative;

    display: block;
    overflow: hidden;

    width: 379px;
    max-width: 100%;
    min-height: 311px;

    background: #ddd;
}

.articles .promo_article .thumb img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.articles .promo_article .thumb + .info
{
    width: calc(100% - 379px);
}


.articles .promo_article .info
{
    position: relative;

    display: flex;

    padding: 58px 91px 32px 49px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.articles .promo_article .info:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    display: block;

    width: 1264px;
    height: 100%;

    content: '';

    background: linear-gradient(97.53deg, #2a92f2 2.21%, #7a28ff 71.31%);
}


.articles .promo_article .name
{
    color: #fff;
    font-family: var(--font_family2);
    font-size: 38px;
    font-weight: bold;
    line-height: 50px;

    width: 100%;

    text-transform: uppercase;
}

.articles .promo_article .name a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    text-decoration: none;
}

.articles .promo_article .name a:hover
{
    text-decoration: underline;
}

.articles .promo_article .details
{
    color: #fff;
    font-family: var(--font_family2);
    font-size: 15px;
    line-height: 21px;

    display: inline-block;

    margin-top: 45px;

    transition: border-color .2s linear;
    vertical-align: top;
    text-decoration: none;

    border-bottom: 1px solid;
}

.articles .promo_article .details:hover
{
    border-color: transparent;
}



/*------------------
    Article info
------------------*/
.article_info
{
    margin-bottom: 79px;
}


.article_info .data
{
    width: 1030px;
    max-width: 100%;
    margin: 0 auto;
    padding: 42px 111px 112px 136px;

    background: radial-gradient(80.31% 81.15% at 23.22% 5.2%, rgba(255, 255, 255, .83) 0%, #f8f8fa 70.83%, #fff 98.96%);
    box-shadow: 0 4px 100px rgba(189, 183, 183, .25);
}

.article_info .text_block{
    line-height: 27px;
    font-size: 19px;
}

.article_info.article_info_blog .cont {
    padding-right: 40px;
}

.article_info.article_info_blog .data
{
    display: flex;
    align-items: stretch;
    column-gap: 70px;
    width: 100%;
    padding: 40px 30px;
}

.article_info .aside
{
    flex: 0 0 190px;
}

.article_info .content
{
    flex: 1 1 auto;
    min-width: 0;
}

.article_info .content .wp-caption {
    width: auto !important;
    display: inline-block;
}

.article_info .article_title
{
    color: #000;
    font-family: var(--font_family2);
    font-size: 40px;
    font-weight: bold;
    line-height: 60px;
    display: block;
    width: 100%;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.aside__block:not(:last-of-type) {
    border-bottom: 1px solid rgba(171, 175, 191, 0.3);
    padding-bottom: 20px;
}

.aside__block + .aside__block {
    padding-top: 20px;
}

.aside__avatar {
    text-align: center;
    margin-bottom: 25px;
}

.aside__image {
    display: inline-block;
    max-width: 100%;
    height: auto;
    border-radius: 50%;
    max-width: 150px;
}

.aside__label {
    font-weight: 700;
    font-size: 14px;
    line-height: 1;
    text-transform: uppercase;
    color: #ABAFBF;
    margin-bottom: 10px;
}

.aside__value {
    font-weight: 700;
    font-size: 14px;
    line-height: 1;
    text-transform: uppercase;
}

.aside__value_type_author {
    font-size: 16px;
    color: #7C49FF;
}

.aside__content {
    font-size: 14px;
    line-height: 1.4;
    margin-top: 20px;
}

.articles-num {
    display: flex;
    align-items: flex-end;
    column-gap: 5px;
    margin-top: 20px;
}

.articles-num__label {
    font-size: 14px;
    line-height: 1;
    color: #ABAFBF;
}

.articles-num__value {
    font-weight: 700;
    font-size: 14px;
    line-height: 1;
}


/*-------------------
    Be intresting
-------------------*/
.be_intresting
{
    margin-bottom: 94px;
}

.be_intresting .cont
{
    padding: 0 20px;
}


.be_intresting .block_title
{
    color: #64647c;
    font-family: var(--font_family2);
    font-weight: bold;
    line-height: 30px;

    margin-bottom: 17px;
        margin-left: 16px;
}


.be_intresting .row
{
    padding-bottom: 2px;
    padding-left: 2px;

    align-items: stretch;
    align-content: stretch;
}

.be_intresting .row > *
{
    width: calc(33.333% + 2px);
    margin-bottom: -2px;
    margin-left: -2px;
}


.be_intresting .item
{
    color: #000;
    font-family: var(--font_family2);
    font-size: 17px;
    font-weight: bold;
    line-height: 28px;

    position: relative;

    display: block;

    padding: 38px 48px 64px 38px;

    transition: color .2s linear;
    text-decoration: none;
    text-transform: uppercase;

    border: 2px solid #f0f0f1;
    background: linear-gradient(99.1deg, rgba(255, 255, 255, .33) 11.95%, rgba(255, 255, 255, .35) 88.52%);
}

.be_intresting .item .arr
{
    position: absolute;
    right: 32px;
    bottom: 17px;

    display: block;

    width: 39px;
    height: 15px;

    fill: #7c49ff;
}

.be_intresting .item:hover
{
    color: #7c49ff;
}



/*----------------
    Order form
----------------*/
.order_form
{
    position: relative;
    z-index: 9;

    margin-bottom: -112px;
    padding-top: 40px;
}


.order_form .block_head
{
    padding-right: 115px;
    padding-left: 10px;

    justify-content: space-between;
}

.order_form .block_head .title
{
    color: #2e2e35;
    font-size: 45px;
    line-height: 60px;

    width: 440px;
    max-width: 100%;

    text-transform: uppercase;
}

.order_form .block_head .desc
{
    width: 380px;
    max-width: 100%;
    margin: 0;
}


.order_form .data
{
    padding: 63px 64px 55px 62px;

    background: #fff;
    box-shadow: 10px 10px 250px rgba(102, 82, 117, .25);
}

.order_form .data .section + .section,
.order_form .data .bottom
{
    margin-top: 47px;
}

.order_form .data .title
{
    font-size: 25px;
    font-weight: bold;
    line-height: 29px;

    margin-bottom: 30px;
}


.order_form .form .bottom
{
    display: flex;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.order_form .form .agree
{
    width: 414px;
    max-width: 100%;
}

.order_form .form .submit
{
    margin-left: auto;
    padding: 0;
}



/*-------------------
    Boss discount
-------------------*/
.boss_discount
{
    position: relative;
    z-index: 3;

    padding: 264px 0 130px;

    background: linear-gradient(179.54deg, #3d3d4a 5.95%, #222231 47.87%, rgba(49, 49, 63, .97) 83.89%, #353543 97.83%);
}


.boss_discount .boss
{
    color: #abafbf;
    line-height: 30px;

    position: relative;

    margin-left: 388px;

    letter-spacing: .1em;
    text-transform: uppercase;
}

.boss_discount .boss:before
{
    position: absolute;
    top: 13px;
    left: -96px;

    display: block;

    width: 69px;
    height: 1px;
    margin: auto;

    content: '';

    background: rgba(171, 175, 191, .7);
}

.boss_discount .boss .name
{
    font-weight: 800;
}


.boss_discount .discount
{
    color: #f2f2f2;
    font-size: 25px;
    font-weight: 300;
    line-height: 38px;

    width: 353px;
    max-width: 100%;
    margin-top: 86px;
    margin-left: 585px;
}

.boss_discount .discount b
{
    font-weight: 800;
}


.boss_discount .bg_title
{
    font-family: var(--font_family2);
    font-size: 180px;
    font-weight: bold;
    line-height: 170px;

    position: absolute;
    z-index: -3;
    top: 189px;
    right: 0;
    left: -80px;

    width: 100%;
    max-width: 1154px;
    margin: 0 auto;

    pointer-events: none;

    background: linear-gradient(135deg,  rgba(70,70,98,.56) 0%,rgba(64,64,82,.3) 100%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}


.boss_discount .photo
{
    position: absolute;
    bottom: 0;
    left: 50%;

    display: block;

    margin-left: -522px;

    pointer-events: none;

    filter: drop-shadow(-60px 9px 200px #1b1b25);
    max-width: 300px;
}


.boss_discount .triangle
{
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 50%;

    display: block;

    margin-left: -707px;

    pointer-events: none;
}


.boss_discount .bg
{
    position: absolute;
    z-index: -2;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background-repeat: no-repeat;
    background-position: 50%;
}



/*-------------
    Garanti
-------------*/
.garanti
{
    position: relative;
    z-index: 5;

    padding: 58px 0 63px;
}

.garanti .cont
{
    padding: 0 30px;
}


.garanti .block_head
{
    margin-bottom: 60px;
}

.garanti .block_head .pre_title
{
    color: #64647c;
    font-size: 14px;
    font-weight: bold;
    line-height: 25px;

    width: 100%;
    margin-bottom: 20px;

    letter-spacing: .06em;
    text-transform: uppercase;
}

.garanti .block_head .title
{
    color: #32353f;
    font-size: 53px;
    line-height: 65px;

    width: 430px;
    max-width: 100%;

    text-transform: uppercase;
}

.garanti .block_head .sub_title
{
    color: #8a90af;
    font-size: 18px;
    line-height: 38px;

    width: 280px;
    max-width: 100%;
    margin-right: auto;
    margin-left: 144px;

    text-transform: uppercase;
}


.garanti .slider_wrap
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.garanti .info
{
    width: 224px;
    max-width: 100%;
}

.garanti .info .count
{
    color: #1e2a34;
    font-family: var(--font_family2);
    font-size: 30px;
    line-height: 26px;

    display: flex;

    justify-content: flex-start;
    align-items: flex-end;
    align-content: flex-end;
    flex-wrap: wrap;
}

.garanti .info .count .current
{
    color: #eaedf7;
    font-size: 100px;
    line-height: 74px;

    text-shadow: -0   -1px 0   #b2b8d8,
    0   -1px 0   #b2b8d8,
    -0    1px 0   #b2b8d8,
    0    1px 0   #b2b8d8,
    -1px -0   0   #b2b8d8,
    1px -0   0   #b2b8d8,
    -1px  0   0   #b2b8d8,
    1px  0   0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8;
}

.garanti .info .count > * + *
{
    margin-left: 5px;
}

.garanti .info .title
{
    color: #848aab;
    font-size: 15px;
    line-height: 30px;

    margin-top: 17px;

    text-transform: uppercase;
}

.garanti .info .next
{
    color: #67676a;
    font-size: 12px;
    font-weight: bold;
    line-height: 30px;

    position: relative;
    z-index: 3;

    display: flex;

    min-height: 60px;
    margin-top: 17px;
    padding-right: 21px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.garanti .info .next:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;

    display: block;

    width: 60px;
    height: 60px;

    content: '';

    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 100px #d0d3db;
}

.garanti .info .next .icon
{
    display: block;

    width: 40px;
    height: 8px;
    margin-left: 17px;

    fill: #353b43;
}


.garanti .slider
{
    width: 460px;
    max-width: 100%;
    margin-left: 319px;
}

.garanti .slider .slide
{
    padding-left: 30px;
}

.garanti .slider .number
{
    color: #1e2a34;
    font-family: var(--font_family2);
    font-size: 13px;
    font-weight: bold;
    line-height: 26px;

    margin-bottom: 5px;
}

.garanti .slider .title
{
    color: #32353f;
    font-size: 40px;
    font-weight: bold;
    line-height: 50px;

    position: relative;
}

.garanti .slider .title:before
{
    position: absolute;
    top: 7px;
    left: -30px;

    display: block;

    width: 5px;
    height: calc(100% - 20px);

    content: '';

    background: #000;
}

.garanti .slider .desc
{
    color: #2e2e35;
    line-height: 25px;

    margin-top: 26px;
}



/*-------------
    Tariffs
-------------*/
.about_company + .tariffs,
.service_included + .tariffs,
.service_included3 + .tariffs
{
    position: relative;
    z-index: 11;

    margin-top: -500px;
    padding-top: 0;

    background: none;
}

.service_included + .tariffs
{
    margin-top: -350px;
}

.service_included3 + .tariffs
{
    margin-top: -150px;
}

.about_company + .tariffs .head,
.service_included + .tariffs .head,
.service_included3 + .tariffs .head
{
    padding: 0 45px;
}

.service_included3 + .tariffs .head
{
    margin-bottom: 20px;
}


.tariffs
{
    position: relative;
    z-index: 3;

    padding: 100px 0 55px;

    background: #f9fafe;
}

.tariffs.bg
{
    background: #ebeef8;
}


.tariffs .block_head
{
    margin-bottom: 52px;
}

.tariffs .block_head .title
{
    color: #2e2e35;
    font-size: 50px;
    line-height: 70px;

    text-transform: uppercase;
}


.tariffs .head
{
    color: #fff;

    margin: 0 0 55px;
    padding: 0 25px;
}

.tariffs .head .title
{
    font-family: var(--font_family2);
    font-size: 50px;
    font-weight: bold;
    line-height: 60px;

    width: 410px;
    max-width: 100%;
}

.tariffs .head .desc
{
    font-size: 18px;
    line-height: 35px;

    margin-top: 40px;
}


.tariffs .head.in_line
{
    display: flex;

    justify-content: space-between;
    align-items: flex-end;
    align-content: flex-end;
    flex-wrap: wrap;
}

.tariffs .head.in_line .desc
{
    margin-right: 245px;
}

.tariffs .head .bg
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 515px;

    pointer-events: none;

    object-fit: cover;
}


.tariffs .row
{
    padding: 0 45px;

    align-items: stretch;
    align-content: stretch;
    flex-wrap: nowrap;
}

.tariffs .row > *
{
    width: 100%;
}


.tariffs .tariff
{
    display: flex;
    flex-direction: column;
    align-items: start;
    position: relative;

    padding: 27px 37px 40px 54px;

    background: linear-gradient(180deg, #fff 0%, #f5f8ff 100%);
    box-shadow: 8px 24px 64px rgba(112, 122, 157, .32);
}

.tariffs .tariff:nth-child(2)
{
    box-shadow: 0 4px 150px #afaaca;
}

.tariffs .tariff:nth-child(1)
{
    z-index: 3;
}


.tariffs .tariff .type
{
    color: #696b71;
    font-family: var(--font_family2);
    line-height: 37px;
}

.tariffs .tariff .name
{
    color: #3f434b;
    font-size: 30px;
    font-weight: bold;
    line-height: 35px;

    min-height: 70px;
}

.tariffs .tariff .descr {
    font-size: 16px;
    line-height: 22px;
    color: #2E2E35;
    opacity: 0.6;
}

.tariffs .tariff .result {
    font-size: 16px;
    line-height: 22px;
    font-weight: 600;
    color: #2E2E35;
    margin-top: 5px;
    margin-bottom: 20px;
}

.tariffs .tariff .result .blue {
    color: #697FFF;
}

.tariffs .tariff.dark .descr,
.tariffs .tariff.dark .result {
    color: #FFFFFF;
}

.tariffs .tariff .price
{
    color: #424750;
    font-family: var(--font_family2);
    font-size: 40px;
    font-weight: 300;
    line-height: 49px;

    display: inline-block;

    margin-top: 62px;

    vertical-align: top;
    text-transform: uppercase;
}

.tariffs .tariff .price_new
{
    color: #424750;
    font-family: var(--font_family2);
    font-size: 15px;
    font-weight: 700;
    line-height: 49px;

    display: inline-block;

    margin-top: auto;

    vertical-align: top;
}

.tariffs .tariff .price_new .value
{
    font-size: 40px;
    line-height: 49px;
}

.tariffs .tariff .order_btn
{
    color: #1e2a34;
    font-size: 20px;
    font-weight: bold;
    line-height: 24px;

    display: block;

    width: 100%;
    margin-top: 20px;
    padding: 19px 30px;

    transition: .2s linear;

    border: 1px solid #c4cae4;
    border-radius: 20px;
    text-align: center;
    text-decoration: none;
}

.tariffs .tariff .order_btn_new
{
    color: #1e2a34;
    font-size: 20px;
    font-weight: bold;
    line-height: 24px;

    display: block;

    width: 100%;
    padding: 19px 30px;

    transition: .2s linear;

    border: 1px solid #c4cae4;
    border-radius: 20px;
    text-align: center;
    text-decoration: none;
}


.tariffs .tariff.dark
{
    background: linear-gradient(180deg, #2c2c38 0%, #171a23 100%);
    box-shadow: 0 4px 200px rgba(85, 47, 237, .4);
}

.tariffs .tariff.dark .name
{
    color: #e9f0ff;
}

.tariffs .tariff.dark .price,
.tariffs .tariff.dark .price_new
{
    background: linear-gradient(135deg,  #2a92f2 0%,#7a28ff 100%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.tariffs .tariff.dark .order_btn,
.tariffs .tariff.dark .order_btn_new
{
    color: #b2b8d0;
}


.tariffs .tariff .order_btn:hover,
.tariffs .tariff .order_btn_new:hover
{
    color: #fff;

    border-color: transparent;
    background-image: linear-gradient(90deg, #2e8ff3, #7b29ff);
}



.tariffs .show_btn
{
    color: #3f4045;
    font-size: 20px;
    font-weight: bold;
    line-height: 26px;

    width: 100%;
    margin-top: 24px;
    padding-bottom: 14px;

    letter-spacing: .05em;
    text-transform: uppercase;

    border-bottom: 1px solid #b2b8d0;
    transition: 0.2s;
}

.tariffs .show_btn:hover{
    color:#000;
}

.tariffs .show_btn .icon
{
    display: block;

    width: 8px;
    height: 25px;
    margin: 0 auto 20px;

    fill: #3c3838;
}


.tariffs .tariffs_info
{
    position: relative;

    display: none;
}

.tariffs .tariffs_info .table_wrap
{
    background: #fff;
}

.tariffs .tariffs_info .table_wrap
{
    overflow: auto;

    max-width: 100%;
}

.tariffs .tariffs_info .table_wrap::-webkit-scrollbar
{
    width: 5px;
    height: 5px;

    border-radius: 0;
    background-color: #eee;

    -webkit-appearance: none;
}

.tariffs .tariffs_info .table_wrap::-webkit-scrollbar-thumb
{
    border-radius: 0;
    background-color: #634ef1;
}

.tariffs .tariffs_info table
{
    width: 100%;

    border-spacing: 0;
    border-collapse: collapse;
}

.tariffs .tariffs_info table th
{
    color: #6d6e74;
    font-size: 18px;
    font-weight: bold;
    line-height: 30px;

    height: 65px;
    padding: 15px 0;
    padding-left: 65px;

    text-align: left;
    vertical-align: middle;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.tariffs .tariffs_info table td
{
    color: #282835;
    font-size: 18px;
    line-height: 24px;

    height: 100px;
    padding: 15px 0;
    padding-left: 65px;

    text-align: left;
    vertical-align: middle;

    border-top: 1px solid #eff0f5;
}

.tariffs .tariffs_info table th:last-child,
.tariffs .tariffs_info table td:last-child
{
    padding-right: 65px;
}

.tariffs .tariffs_info table td.val
{
    color: #6d6e74;
    font-size: 22px;
    line-height: 30px;

    letter-spacing: .1em;
    text-transform: uppercase;
    padding-left: 88px;
}



.tariffs .hide_btn
{
    color: #abafbf;
    font-size: 18px;
    font-weight: bold;
    line-height: 24px;

    width: 100%;

    letter-spacing: .05em;
    text-transform: uppercase;
    padding-top: 20px;
}

.tariffs .hide_btn .icon
{
    display: block;

    width: 16px;
    height: 39px;
    margin: 0 auto 15px;

    fill: #3c3838;
}



/*------------------
    Online allow
------------------*/
.online_allow
{
    position: relative;
    z-index: 5;

    padding: 73px 0 82px;

    background: #fff;
}

.online_allow .cont
{
    padding: 0 124px 0 58px;
}


.online_allow .block_head
{
    margin-bottom: 80px;
}

.online_allow .block_head .title
{
    color: #2e2e35;
    font-size: 50px;
    line-height: 70px;

    width: 710px;
    max-width: 100%;

    text-transform: uppercase;
}


.online_allow .row
{
    margin-bottom: -40px;
    margin-left: -110px;

    counter-reset: item;
}

.online_allow .row > *
{
    width: calc(50% - 110px);
    margin-bottom: 40px;
    margin-left: 110px;
}


.online_allow .item
{
    color: #64647c;
    line-height: 25px;

    position: relative;

    padding-left: 93px;
}

.online_allow .item:before
{
    color: #fff;
    font-family: var(--font_family2);
    font-size: 50px;
    font-weight: bold;
    line-height: 50px;

    position: absolute;
    top: 0;
    left: 0;

    display: inline-block;

    content: counter(item, decimal-leading-zero);
    counter-increment: item;
    vertical-align: top;

    text-shadow: -0   -1px 0   #64647c,
    0   -1px 0   #64647c,
    -0    1px 0   #64647c,
    0    1px 0   #64647c,
    -1px -0   0   #64647c,
    1px -0   0   #64647c,
    -1px  0   0   #64647c,
    1px  0   0   #64647c,
    -1px -1px 0   #64647c,
    1px -1px 0   #64647c,
    -1px  1px 0   #64647c,
    1px  1px 0   #64647c,
    -1px -1px 0   #64647c,
    1px -1px 0   #64647c,
    -1px  1px 0   #64647c,
    1px  1px 0   #64647c;
}


.online_allow .text
{
    color: #1f242d;
    font-size: 20px;
    font-weight: bold;
    line-height: 27px;

    margin: 80px 0 0 0;
    padding: 51px 51px 62px 74px;

    border: 5px solid;
    border-width: 5px;
    border-image-source: linear-gradient(to right, #2a92f2, #7a28ff);
    border-image-slice: 1;
}



/*---------------
    Fix price
---------------*/
.fix_price
{
    position: relative;
    z-index: 5;

    padding: 110px 0;

    background: linear-gradient(179.54deg, #3d3d4a 5.95%, #222231 47.87%, rgba(49, 49, 63, .97) 83.89%, #353543 97.83%);
}


.fix_price .bonus
{
    color: #f2f2f2;
    font-family: var(--font_family2);
    font-size: 20px;
    font-weight: bold;
    line-height: 30px;

    position: relative;

    margin-left: 46px;
    padding: 74px 0 0 73px;
}

.fix_price .bonus .icon
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 64px;
    height: 74px;

    fill: currentColor;
}


.fix_price .title
{
    color: #f2f2f2;
    font-family: var(--font_family2);
    font-size: 26px;
    line-height: 50px;

    width: 726px;
    max-width: 100%;
    margin-right: 30px;
    margin-left: auto;
}



/*---------------
    Need help
---------------*/
.need_help
{
    position: relative;
    z-index: 5;

    padding: 70px 0;

    background: #fff;
}


.need_help .img
{
    position: absolute;
    bottom: 0;
    left: 50%;

    filter: drop-shadow(10px 20px 250px rgba(40, 50, 74, .55));

    margin-left: -734px;

    pointer-events: none;
}

.need_help .img img
{
    display: block;

    max-width: 100%;


}

.need_help .img .triangle
{
    position: absolute;
    z-index: -1;
    right: 20px;
    bottom: 0;

    width: 630px;
    max-width: none;
    height: 773px;

    pointer-events: none;

    filter: none;
}


.need_help .block_head
{
    width: 416px;
    max-width: 100%;
    margin: 0 170px 0 auto;
}

.need_help .block_head .title
{
    color: #212121;
    font-size: 45px;
    font-weight: bold;
    line-height: 55px;
}



.service_included2 + .need_help
{
    position: relative;
    z-index: 11;

    padding: 50px 0 0;

    /*background: linear-gradient(210.34deg, #e6e9f5 19%, #e7eaf3 78.61%);*/
    background: none;
}

.service_included2 + .need_help:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    display: block;

    width: 50%;
    height: 100%;

    content: '';

    background: linear-gradient(180deg, #232234 0%, #171a23 100%);
   /*box-shadow: 0 4px 200px rgba(85, 47, 237, .4);*/
}

.service_included2 + .need_help .img
{
    right: 50%;
    left: auto;

    width: 557px;
    height: 100%;
    margin-left: 0;
}

.service_included2 + .need_help .img {
    right: 50%;
    left: auto;
    width: 100%;
    height: 100%;
    margin-left: 0;
}

.service_included2 + .need_help .img img:first-child
{
    /*position: absolute;
    right: 0;
    bottom: -271px;

    max-width: none;*/

    position: absolute;
    right: -218px;
    bottom: -363px;
    max-width: none;
}

.service_included2 + .need_help .img .triangle
{
    right: 30px;
    bottom: -30px;
}


.service_included2 + .need_help .img .triangle2
{
    right: 15px;
    bottom: -219px;
    position: absolute;
    width: 1200px;
    height: 1200px;
    z-index: -1;
}
.service_included2 + .need_help .block_head
{
    width: 50%;
    margin: 0 0 0 auto;
    padding: 0 0 0 80px;
}



/*----------------
    Advantages
----------------*/
.advantages
{
    position: relative;
    z-index: 3;

    padding: 148px 0 117px;

    /*background: #ebeef8;*/
}


.advantages .block_head
{
    position: relative;
    z-index: 5;

    margin-bottom: 95px;
    padding: 0 50px;
}

.advantages .block_head .number
{
    position: absolute;
    z-index: -1;
    top: -55px;
    left: -20px;
}

.advantages .block_head .number img
{
    display: block;

    max-width: 100%;
}

.advantages .block_head .pre_title
{
    color: #999dae;
    font-size: 14px;
    font-weight: bold;
    line-height: 30px;

    width: 245px;
    max-width: 100%;
    margin-bottom: 54px;
    margin-left: auto;

    letter-spacing: .1em;
    text-transform: uppercase;
}

.advantages .block_head .title
{
    color: #2e3137;
    font-family: var(--font_family2);
    font-size: 80px;
    font-weight: bold;
    line-height: 100px;

    width: 100%;

    text-transform: uppercase;
}

.advantages .block_head .desc
{
    color: #64647c;
    font-size: 18px;
    line-height: 27px;

    width: 469px;
    max-width: 100%;
    margin-top: 20px;
}


.advantages .slider
{
    width: 900px;
    max-width: 100%;
}

.advantages .owl-stage-outer
{
    overflow: visible !important;
}


.advantages .slide .item
{
    position: relative;

    padding: 40px 21px 54px 42px;

    background: #fff;
    box-shadow: 8px 24px 64px rgba(112, 122, 157, .32);
}

.advantages .slide .item .number
{
    font-family: var(--font_family2);
    font-size: 15px;
    font-weight: bold;
    line-height: 26px;

    position: absolute;
    top: -31px;
    left: 0;

    white-space: nowrap;

    background: linear-gradient(135deg,  #634ef1 0%,#2fb5ff 100%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.advantages .slide .item .name
{
    color: #2c2c2c;
    font-family: var(--font_family2);
    font-size: 20px;
    font-weight: bold;
    line-height: 29px;
}


.advantages .next
{
    color: #67676a;
    font-size: 12px;
    font-weight: bold;
    line-height: 30px;

    position: relative;
    z-index: 3;

    display: flex;

    min-height: 60px;
    margin-top: 54px;
    padding-right: 21px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.advantages .next:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;

    display: block;

    width: 60px;
    height: 60px;

    content: '';

    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 100px #d0d3db;
}

.advantages .next .icon
{
    display: block;

    width: 40px;
    height: 8px;
    margin-left: 17px;

    fill: #353b43;
}



/*-------------------
    Youtube block
-------------------*/
.youtube_block
{
    position: relative;
    z-index: 5;

    padding: 89px 0;

    background: radial-gradient(62.94% 62.94% at 48.97% 66.95%, #f9fafe 23.14%, #f1f2f8 100%);
}


.youtube_block .cont
{
    justify-content: space-between;
}


.youtube_block .video_link
{
    position: relative;

    display: block;
    overflow: hidden;

    width: 371px;
    max-width: 100%;
    height: 204px;
    margin-left: 65px;

    border-radius: 20px;
    background: #ddd;
    box-shadow: 30px 50px 80px #53586d;

    align-self: center;
}

.youtube_block .video_link:after
{
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    opacity: .4;
    background: #746e99;
}

.youtube_block .video_link img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    opacity: .4;

    object-fit: cover;
}

.youtube_block .video_link .icon
{
    position: absolute;
    z-index: 5;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: flex;

    width: 78px;
    height: 78px;
    margin: auto;
    padding: 15px;

    border-radius: 50%;
    background: #fff;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.youtube_block .video_link .icon > *
{
    display: block;

    width: 19px;
    max-width: 100%;
    height: 21px;
    max-height: 100%;

    fill: #7a29fb;
}


.youtube_block .block_head
{
    width: 429px;
    max-width: 100%;
    margin: 0;
    margin-right: 90px;
}

.youtube_block .block_head .title
{
    color: #212121;
    font-family: var(--font_family2);
    font-size: 40px;
    font-weight: bold;
    line-height: 50px;
}

.youtube_block .block_head .desc
{
    color: #2e2e35;
    font-size: 18px;
    line-height: 27px;

    margin-top: 20px;
}

.youtube_block .block_head .subscribe_link
{
    color: #1e2a34;
    font-family: var(--font_family2);
    font-size: 17px;
    font-weight: bold;
    line-height: 26px;

    display: inline-block;

    width: 290px;
    max-width: 100%;
    margin-top: 39px;
    padding: 15px 65px;

    transition: .2s linear;
    text-align: center;
    vertical-align: top;
    text-decoration: none;
    letter-spacing: .04em;
    text-transform: uppercase;

    border: 2px solid rgba(173,178,200,.5);
    border-radius: 20px;
}

.youtube_block .block_head .subscribe_link:hover
{
    color: #fff;

    border-color: transparent;
    background-image: linear-gradient(90deg, #2e8ff3, #7b29ff);
}

.youtube_block .bg_title
{
    font-family: var(--font_family2);
    font-size: 100px;
    font-weight: bold;
    line-height: 100px;

    position: absolute;
    z-index: -1;
    top: 270px;
    right: 50%;

    margin-right: -740px;

    text-transform: uppercase;

    background: linear-gradient(135deg,  rgba(236,238,247,.5) 0%,rgba(230,232,242,.67) 100%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}



/*-------------------
    Russian block
-------------------*/
.russian_block__inner {
    background-image: url("../images/bg_russian_block.png");
    background-repeat: no-repeat;
    background-position: right bottom;
    padding-bottom: 160px;
}

.russian_block .laboratory
{
    color: #fff;
    line-height: 27px;

    display: flex;

    width: calc(100%  - 65px);
    margin-top: -250px;
    margin-right: -160px;
    margin-bottom: 46px;
    margin-left: 225px;
    padding: 62px 145px 66px 70px;

    background: linear-gradient(97.53deg, #2a92f2 2.21%, #7a28ff 71.31%);
    box-shadow: 0 4px 100px rgba(66, 79, 106, .2);

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.russian_block .laboratory .title
{
    font-family: var(--font_family2);
    font-size: 22px;
    font-weight: bold;
    line-height: 38px;
}

.russian_block .laboratory .desc
{
    line-height: 27px;

    width: 460px;
    max-width: calc(100% - 365px);
    margin-right: 70px;
}

.russian_block
{
    position: relative;
    z-index: 3;

    padding: 171px 0 0;

    background: linear-gradient(132.93deg, #42425a 10.28%, #2a2a37 57.94%);
}


.russian_block .block_head
{
    position: relative;
    z-index: 9;

    width: 580px;
    max-width: 100%;
    margin: 0;
    padding-left: 10px;
}

.russian_block .block_head .pre_title
{
    color: #83889c;
    font-size: 14px;
    font-weight: bold;
    line-height: 35px;

    width: 260px;
    max-width: 100%;
    margin-bottom: 45px;

    letter-spacing: .1em;
    text-transform: uppercase;
}

.russian_block .block_head .title
{
    color: #fff;
    font-family: var(--font_family2);
    font-size: 40px;
    font-weight: bold;
    line-height: 50px;
}

.russian_block .block_head .desc
{
    color: #ababb9;
    font-size: 18px;
    line-height: 27px;

    width: 400px;
    max-width: 100%;
    margin-top: 20px;
}

.russian_block .block_head .btn
{
    margin-top: 50px;
}


.russian_block .moscow
{
    font-family: var(--font_family2);
    font-size: 140px;
    font-weight: bold;
    line-height: 170px;

    position: absolute;
    z-index: -1;
    top: 110px;
    right: 50%;

    margin-right: -340px;

    transform: rotate(-180deg);
    pointer-events: none;

    background: linear-gradient(135deg,  rgba(70,70,98,.56) 0%,rgba(64,64,82,.3) 100%);
    -webkit-background-clip: text;

            writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    -webkit-text-fill-color: transparent;
}


.russian_block .bg
{
    position: absolute;
    right: 50%;
    top: 200px;

    display: block;

    margin-right: -720px;

    pointer-events: none;
}



/*---------------------
    Learn from best
---------------------*/
.learn_from_best
{
    position: relative;
    z-index: 3;

    overflow: hidden;

    padding: 105px 0 89px;

    background: linear-gradient(154.28deg, #d7dbe8 10.17%, #f5f6f8 80.45%);
}


.learn_from_best .info
{
    padding-left: 17px;
}

.learn_from_best .icon
{
    display: block;

    width: 47px;
    height: 24px;
    margin-bottom: 23px;

    fill: #5d5dea;
}

.learn_from_best .title
{
    color: #a3aac6;
    font-size: 30px;
    font-weight: bold;
    line-height: 50px;

    letter-spacing: .1em;
    text-transform: uppercase;
}

.learn_from_best .title a
{
    color: #5d5dea;
}

.learn_from_best .title a:hover
{
    text-decoration: none;
}


.learn_from_best .quote
{
    color: #2e2e35;
    font-size: 18px;
    line-height: 27px;

    position: relative;

    width: 420px;
    max-width: 100%;
    margin-top: 143px;
}

.learn_from_best .quote:before,
.learn_from_best .quote:after
{
    position: absolute;
    right: -70px;
    bottom: -35px;

    display: block;

    width: 68px;
    height: 54px;

    content: '';

    opacity: .2;
    background: url(../images/ic_quote.svg) 0 0 no-repeat;
}

.learn_from_best .quote:before
{
    top: -70px;
    left: -70px;

    transform: rotate(-180deg);
}


.learn_from_best .bg_title
{
    font-family: var(--font_family2);
    font-size: 160px;
    font-weight: bold;
    line-height: 170px;

    position: absolute;
    z-index: -2;
    top: 85px;
    right: 0;
    left: 50%;

    margin-left: -165px;

    white-space: nowrap;
    pointer-events: none;

    background: linear-gradient(135deg, rgba(246,247,249,.28) 0%,rgba(249,250,254,1) 100%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}


.learn_from_best .img
{
    position: absolute;
    right: 50%;
    bottom: 0;

    display: block;

    margin-right: -800px;

    pointer-events: none;

    filter: drop-shadow(30px 70px 100px rgba(0, 0, 0, .25));
}

.learn_from_best .bg
{
    position: absolute;
    z-index: -1;
    right: 50%;
    bottom: -150px;

    display: block;

    margin-right: -720px;

    pointer-events: none;
}



/*---------------
    Interview
---------------*/
.interview
{
    position: relative;
    z-index: 3;

    overflow: hidden;
}

.interview:before,
.interview:after
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    display: block;

    width: 50%;
    height: 100%;

    content: '';

    background: linear-gradient(89.81deg, #674bf4 6.46%, #5a60e8 99.85%);
}

.interview:after
{
    right: 0;
    left: auto;

    background: linear-gradient(180deg, #3e3e4b 0%, #272736 100%);
}


.interview .cont
{
    display: flex;

    min-height: 153px;

    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}


.interview .video_link
{
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    line-height: 30px;

    display: flex;

    width: 50%;
    padding: 30px 50px 30px 80px;

    text-decoration: none;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.interview .video_link .icon
{
    position: relative;

    display: flex;

    width: 72px;
    height: 72px;
    margin-right: 40px;
    padding: 15px;

    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 250px rgba(0, 0, 0, .3);

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.interview .video_link .icon > *
{
    display: block;

    width: 19px;
    max-width: 100%;
    height: 21px;
    max-height: 100%;

    fill: #7a29fb;
}

.interview .video_link .icon + *
{
    width: calc(100% - 112px);
}


.interview .exp
{
    color: #b7b7cb;
    font-weight: bold;
    line-height: 30px;

    display: flex;

    width: 50%;
    padding: 30px 50px 30px 80px;

    letter-spacing: .1em;
    text-transform: uppercase;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}



/*------------------
    Bottom block
------------------*/
.bottom_block
{
    padding: 65px 0;

    background: linear-gradient(273.44deg, #fcfcfc 23.7%, #eff3fd 94.16%);
}


.bottom_block_home
{
    background: none;
    margin-bottom: -300px;
}


.bottom_block .block_head
{
    margin-bottom: 40px;
}

.bottom_block .block_head .title
{
    color: #1c1e22;
    font-size: 30px;
    font-weight: 800;
    line-height: 50px;

    text-transform: uppercase;
}

.block_head.block_head_action_form,
.block_head.block_head_book
{
    flex-direction: column;
}

.block_head.block_head_book .subscribe_link {
    align-self: flex-start;
}

.block_head.block_head_action_form *,
.block_head.block_head_book * {
    width: 100%;
}

.bottom_block .block_head .sale_period
{
    font-size: 18px;
    line-height: 1.5;
    text-align: center;
    margin-top: 20px;
}

.bottom_block .block_head .sale
{
    font-size: 24px;
    line-height: 1.4;
    font-weight: 700;
    text-align: center;
    margin-top: 10px;
}

.bottom_block .action_form
{
    margin-bottom: 63px !important;
}


.bottom_block .action_form_home
{
    margin-bottom: 0 !important;
}


.bottom_block .text_block
{
    /*color: #64647c;
    font-size: 15px;
    line-height: 23px;*/
}



/*---------------
    Case head
---------------*/
.case_head
{
    position: relative;
    z-index: 5;

    overflow: hidden;

    padding: 160px 0 110px;

    background: linear-gradient(179.54deg, #3d3d4a 5.95%, #222231 47.87%, rgba(49, 49, 63, .97) 83.89%, #353543 97.83%);
}

.case_head .cont
{
    padding: 0 45px;
}


.case_head .breadcrumbs
{
    color: #fff;

    margin-bottom: 35px;
}

.case_head .breadcrumbs a
{
    color: #696d7a;
}

.case_head .breadcrumbs a:hover
{
    color: #fff;
}

.case_head .breadcrumbs .sep
{
    fill: #696d7a;
}


.case_head .block_head
{
    width: 480px;
    max-width: 100%;
    margin: 0;
    margin-right: auto;
}

.case_head .block_head .title
{
    color: #fff;
    font-family: var(--font_family2);
    font-size: 45px;
    font-weight: bold;
    line-height: 60px;

    text-transform: uppercase;
}

.case_head.case_head_home {
    padding-bottom: 76px;
}

.case_head.case_head_home .boss {
    margin-top: 50px;
}

.case_head.case_head_home .block_head .title {
    font-size: 40px;
    line-height: 1.4;
}

.case_head .block_head .subtitle {
    color: #b5b8c8;
    font-size: 28px;
    line-height: 31px;
    margin-top: 30px;
}

.case_head .block_head .desc
{
    color: #b5b8c8;
    font-size: 20px;
    line-height: 31px;

    margin-top: 30px;
}

.case_head .block_head .desc p + p{
    margin-top: 20px;
}

.case_head .block_head .btn
{
    margin-top: 35px;
}


.case_head .boss
{
    position: relative;

    width: 252px;
    max-width: 100%;
    margin-left: auto;
    margin-top: 100px;
    padding-left: 71px;
}

.case_head .boss:before
{
    position: absolute;
    top: 13px;
    left: 0;

    display: block;

    width: 54px;
    height: 1px;

    content: '';

    background: rgba(171, 175, 191, .7);
}

.case_head .boss .merit
{
    color: #D7DAE8;
    font-size: 14px;
    line-height: 30px;
    text-transform: uppercase;
    margin-top: 25px;
}

.case_head .boss .post
{
    color: #ABAFBF;
    font-size: 14px;
    line-height: 30px;

    letter-spacing: .1em;
    text-transform: uppercase;
}

.case_head .boss .name
{
    color: #D7DAE8;
    font-size: 14px;
    font-weight: 800;
    line-height: 30px;

    letter-spacing: .1em;
    text-transform: uppercase;
}

.case_head .boss .photo
{
    position: absolute;
    top: -150px;
    right: calc(100% - 70px);

    display: block;
}

.case_head.case_head_home .boss .photo {
    height: 621px;
}


.case_head .bg_title
{
    font-family: var(--font_family2);
    font-size: 150px;
    font-weight: bold;
    line-height: 150px;

    position: absolute;
    z-index: -2;
    top: 190px;
    left: 50%;

    white-space: nowrap;
    pointer-events: none;

    background: linear-gradient(135deg,  rgba(85,85,115,.19) 0%,rgba(151,151,192,.14) 100%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}


.case_head .bg
{
    position: absolute;
    z-index: -1;
    top: -164px;
    left: calc(50% - 45px);

    width: 1397px;
    max-width: 100%;
    height: 1122px;
}



/*----------------
    Case about
----------------*/
.case_about
{
    position: relative;
    z-index: 10;

    padding: 90px 0 115px;

    background: radial-gradient(62.94% 62.94% at 48.97% 66.95%, #f9fafe 23.14%, #f1f2f8 100%);
}

.case_about .cont
{
    padding: 0 45px;
}


.case_about .block_head
{
    margin-bottom: 45px;
}

.case_about .block_head .title
{
    color: #000;
    font-family: var(--font_family2);
    font-size: 48px;
    font-weight: bold;
    line-height: 60px;
}


.case_about .block_title
{
    color: #212121;
    font-size: 40px;
    line-height: 50px;

    width: 372px;
    max-width: 100%;
    margin-bottom: 45px;
}


.case_about .text_block
{
    color: #2e2e35;
    line-height: 25px;
}


.case_about .progress
{
    position: absolute;
    top: -94px;
    left: 50%;

    width: 712px;
    max-width: 50vw;
    padding: 47px 75px 57px;

    background: #fff;
    box-shadow: 0 20px 40px rgba(89, 100, 126, .1);
}

.case_about .progress .title
{
    color: #2e2e35;
    font-size: 25px;
    font-weight: bold;
    line-height: 40px;

    margin-bottom: 45px;
}

.case_about .progress .items
{
    display: flex;

    margin-bottom: -35px;
    margin-left: -20px;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.case_about .progress .items > *
{
    width: calc(50% - 20px);
    margin-bottom: 35px;
    margin-left: 20px;
}

.case_about .progress .item
{
    color: #64647c;
    line-height: 23px;

    position: relative;

    padding-left: 52px;
}

.case_about .progress .item .icon
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    fill: #7c49ff;
}

.case_about .progress .item .icon1
{
    width: 32px;
    height: 32px;
}

.case_about .progress .item .icon2
{
    width: 29px;
    height: 19px;
}

.case_about .progress .item .icon3
{
    width: 29px;
    height: 23px;
}

.case_about .progress .item .icon4
{
    width: 29px;
    height: 35px;
}

.case_about .progress .item .name
{
    color: #2e2e35;
    font-size: 18px;
    font-weight: bold;
    line-height: 24px;

    margin-bottom: 3px;
}

.case_about.case_about_home .progress {
    top: -47px;
}

.case_about.case_about_home {
    padding-top: 37px;
}


/*--------------------
    Portfolio head
--------------------*/
.portfolio_head
{
    position: relative;
    z-index: 9;

    overflow: hidden;

    padding: 200px 0 124px;

    background: radial-gradient(62.94% 62.94% at 48.97% 66.95%, #f9fafe 23.14%, #f1f2f8 100%);
}


.portfolio_head .cont
{
    position: relative;

    padding: 0 45px;
}


.portfolio_head .breadcrumbs
{
    margin-bottom: 35px;
}


.portfolio_head .block_head
{
    position: relative;
    z-index: 9;

    display: block;

    width: 680px;
    max-width: 100%;
    margin-bottom: 0;
}

.portfolio_head .block_head .title
{
    font-family: var(--font_family2);
    font-size: 55px;
    font-weight: bold;
    line-height: 65px;

    text-transform: uppercase;

    background: linear-gradient(135deg,  #2a92f2 0%,#7a28ff 100%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.portfolio_head .block_head .desc
{
    color: #2e2e35;
    font-size: 20px;
    line-height: 31px;

    width: 540px;
    max-width: 100%;
}

.portfolio_head .block_head .btn
{
    margin-top: 35px;
}


.portfolio_head .photo
{
    position: absolute;
    right: 20px;
    bottom: -124px;
}

.portfolio_head .photo img
{
    display: block;

    max-width: 100%;

    filter: drop-shadow(-60px 9px 200px #677893);
}


.portfolio_head .bg
{
    position: absolute;
    z-index: -1;
    top: 165px;
    right: 50%;

    width: 1185px;
    height: 1185px;
    margin-right: -1047px;

    content: '';
    pointer-events: none;
}



/*---------------------
    Portfolio block
---------------------*/
.portfolio_block
{
    padding: 67px 0 159px;

    background: #fff;
}

.portfolio_block.bg
{
    background: radial-gradient(80.31% 81.15% at 23.22% 5.2%, rgba(255, 255, 255, .83) 0%, #f8f8fa 70.83%, #f5f8ff 98.96%);
}


.portfolio_block .pre_title
{
    color: #64647c;
    font-weight: bold;
    line-height: 25px;

    margin-bottom: 30px;

    letter-spacing: .06em;
    text-transform: uppercase;
}


.portfolio_block .info
{
    width: 530px;
    max-width: 100%;
    margin-right: auto;
}


.portfolio_block .block_head
{
    margin-bottom: 75px;
}

.portfolio_block .block_head .title
{
    color: #141414;
    font-family: var(--font_family2);
    font-size: 40px;
    font-weight: bold;
    line-height: 50px;
}


.portfolio_block .info .items
{
    display: flex;

    margin-bottom: -35px;
    margin-left: -20px;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.portfolio_block .info .items > *
{
    width: calc(50% - 20px);
    margin-bottom: 35px;
    margin-left: 20px;
}

.portfolio_block .info .item
{
    color: #64647c;
    line-height: 23px;

    position: relative;

    padding-left: 52px;
}

.portfolio_block .info .item .icon
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    fill: #7c49ff;
}

.portfolio_block .info .item .icon1
{
    width: 32px;
    height: 32px;
}

.portfolio_block .info .item .icon2
{
    width: 29px;
    height: 19px;
}

.portfolio_block .info .item .icon3
{
    width: 29px;
    height: 23px;
}

.portfolio_block .info .item .icon4
{
    width: 29px;
    height: 35px;
}

.portfolio_block .info .item .name
{
    color: #2e2e35;
    font-size: 18px;
    font-weight: bold;
    line-height: 24px;

    margin-bottom: 3px;
}


.portfolio_block .was_done
{
    width: 400px;
    max-width: 100%;
    margin-top: 70px;
}

.portfolio_block .was_done .title
{
    color: #2e2e35;
    font-size: 25px;
    font-weight: bold;
    line-height: 31px;

    margin-bottom: 24px;
}

.portfolio_block .was_done .text_block
{
    color: #64647c;
    line-height: 23px;
}


.portfolio_block .slider_wrap
{
    display: flex;

    width: 685px;
    margin-right: -160px;
    margin-left: auto;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.portfolio_block .count
{
    color: #1e2a34;
    font-family: var(--font_family2);
    font-size: 30px;
    line-height: 26px;

    display: flex;

    margin-left: 40px;

    justify-content: flex-start;
    align-items: flex-end;
    align-content: flex-end;
    flex-wrap: wrap;
}

.portfolio_block .count .current
{
    color: #eaedf7;
    font-size: 100px;
    line-height: 74px;

    text-shadow: -0   -1px 0   #b2b8d8,
    0   -1px 0   #b2b8d8,
    -0    1px 0   #b2b8d8,
    0    1px 0   #b2b8d8,
    -1px -0   0   #b2b8d8,
    1px -0   0   #b2b8d8,
    -1px  0   0   #b2b8d8,
    1px  0   0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8;
}

.portfolio_block .count > * + *
{
    margin-left: 5px;
}


.portfolio_block .next
{
    color: #67676a;
    font-size: 12px;
    font-weight: bold;
    line-height: 30px;

    position: relative;
    z-index: 3;

    display: flex;

    min-height: 60px;
    margin-top: 17px;
    padding-right: 21px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.portfolio_block .next:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;

    display: block;

    width: 60px;
    height: 60px;

    content: '';

    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 100px #d0d3db;
}

.portfolio_block .next .icon
{
    display: block;

    width: 40px;
    height: 8px;
    margin-left: 17px;

    fill: #353b43;
}


.portfolio_block .slider
{
    position: relative;
    z-index: 3;

    width: 481px;
    height: 300px;
    margin: 65px 19px 42px;
}

.portfolio_block .slider:before
{
    position: absolute;
    z-index: -1;
    top: -28px;
    left: -123px;

    display: block;

    width: 731px;
    height: 370px;

    content: '';

    background: url(../images/bg_portfolio_slider.png) 0 0/100% 100% no-repeat;
}

.portfolio_block .slide .img
{
    position: relative;

    display: block;
    overflow: hidden;

    width: 481px;
    height: 300px;

    background: #ddd;
}

.portfolio_block .slide .img img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}



/*------------------
    Service head
------------------*/
.service_head
{
    position: relative;
   /* z-index: 9; */
    /* z-index:-2; */

    /*overflow: hidden;*/

    padding: 200px 0 104px;
}


.service_head .cont
{
    position: relative;

    padding: 0 45px;
}


.service_head .breadcrumbs
{
    margin-bottom: 35px;
}


.service_head .block_head
{
    position: relative;
    z-index: 3;

    display: block;

    width: 760px;
    max-width: 100%;
    margin-bottom: 0;
}

.service_head .block_head .title
{
    font-family: var(--font_family2);
    font-size: 55px;
    font-weight: bold;
    line-height: 65px;

    text-transform: uppercase;

    background: linear-gradient(135deg,  #2a92f2 0%,#7a28ff 100%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.service_head .block_head .desc
{
    color: #2e2e35;
    font-size: 20px;
    line-height: 31px;

    width: 540px;
    max-width: 100%;
}

.service_head .block_head .btn
{
    margin-top: 35px;
}


.service_head .photo
{
    position: absolute;
    right: -56px;
    bottom: -144px;

    width: 547px;
    max-width: 100%;
    height: 650px;
}

.service_head .photo img
{
    position: absolute;
    top: 0;
    right: 0;

    display: block;
}


.service_head .bg
{
    position: absolute;
    z-index: -1;
    top: 60px;
    right: 50%;

    width: 1376px;
    height: 1250px;
    margin-right: -1060px;

    content: '';
    pointer-events: none;
}



/*-----------------------
    Service best deal
-----------------------*/
.service_best_deal .row
{
    justify-content: space-between;
}


.service_best_deal .info
{
    margin-right: auto;
    margin-left: 10px;

    align-self: center;
}

.service_best_deal .info .price
{
    font-family: var(--font_family2);
    font-size: 40px;
    font-weight: bold;
    line-height: 68px;

    display: inline-block;

    vertical-align: top;
    white-space: nowrap;
    text-transform: uppercase;

    border-bottom: 2px solid rgba(85, 88, 101, .3);
}

.service_best_deal .info .price b
{
    font-size: 80px;
}

.service_best_deal .info .exp
{
    color: #9194a2;
    font-family: var(--font_family2);
    font-size: 18px;
    font-weight: bold;
    line-height: 35px;

    margin-top: 15px;

    letter-spacing: .05em;
    text-transform: uppercase;
}


.service_best_deal .title
{
    color: #a6acc5;
    font-size: 18px;
    font-weight: bold;
    line-height: 36px;

    position: relative;
    z-index: 3;

    width: 355px;
    max-width: 100%;
    margin-left: auto;
    padding: 42px 52px;
}

.service_best_deal .title:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    display: block;

    width: 1560px;
    min-width: 100%;
    height: 100%;

    content: '';

    background: #fff;
    box-shadow: 0 4px 100px rgba(193, 196, 208, .5);
}



/*------------------------
    Service advantages
------------------------*/
.service_advantages
{
    padding: 98px 0 61px;

    background: none;
}



/*------------------
    Service gift
------------------*/
.service_gift
{
    padding: 70px 0 178px;
}

.service_gift .cont
{
    padding: 0 45px;
}


.service_gift .col_left
{
    width: 460px;
    max-width: 100%;
    margin-right: auto;
}


.service_gift .price
{
    font-family: var(--font_family2);
    font-size: 70px;
    line-height: 68px;

    position: relative;

    display: inline-block;

    padding: 35px 59px;

    vertical-align: text-top;
    white-space: nowrap;
    text-transform: uppercase;

    border-left: 1px solid #a5acc5;
    background: linear-gradient(135deg,  #3c3e4a 0%,#eff0f3 100%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.service_gift .price:before,
.service_gift .price:after
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 1px;

    content: '';

    background:    -moz-linear-gradient(left,  rgba(165,172,197,1) 0%, rgba(217,223,228,0) 100%);
    background: -webkit-linear-gradient(left,  rgba(165,172,197,1) 0%,rgba(217,223,228,0) 100%);
    background:         linear-gradient(to right,  rgba(165,172,197,1) 0%,rgba(217,223,228,0) 100%);
}

.service_gift .price:after
{
    top: auto;
    bottom: 0;
}


.service_gift .exp
{
    color: #3d4751;
    font-size: 18px;
    line-height: 27px;

    margin-top: 70px;
}


.service_gift .block_head
{
    width: 420px;
    max-width: 100%;
    margin-right: 80px;
    margin-bottom: 0;
    margin-left: auto;
}

.service_gift .block_head .title
{
    color: #464854;
    font-family: var(--font_family2);
    font-size: 50px;
    font-weight: normal;
    line-height: 60px;
}

.service_gift .block_head .btn
{
    margin-top: 35px;
}



/*----------------------
    Service included
----------------------*/
.service_included
{
    position: relative;
    z-index: 10;

    padding: 125px 0 404px;

    background: linear-gradient(180.87deg, #3d3d4a 6.25%, #222231 52.23%, rgba(49, 49, 63, .97) 97.68%, rgba(53, 53, 67, 0) 107.04%);
}

.service_included:before
{
    position: absolute;
    z-index: 1;
    right: 0;
    bottom: 100%;

    display: block;

    width: 50%;
    height: 108px;

    content: '';
    pointer-events: none;

    background: #3d3d4a;
}

.service_included:after
{
    position: absolute;
    z-index: 1;
    top: -353px;
    right: 0;

    display: block;

    width: 1189px;
    height: 783px;

    content: '';
    pointer-events: none;

    opacity: .3;
    background: url(../images/bg_service_included_light.png) 0 0 no-repeat;
}


.service_included .row
{
    justify-content: space-between;
}


.service_included .block_head
{
    width: 50%;
    margin-bottom: 0;
    padding-top: 185px;
    padding-left: 60px;
}

.service_included .block_head .title
{
    color: #fff;
    font-family: var(--font_family2);
    font-size: 60px;
    font-weight: bold;
    line-height: 80px;
}


.service_included .items
{
    display: flex;

    width: 526px;
    max-width: calc(50% + 60px);
    margin-bottom: -110px;
    margin-left: -60px;

    counter-reset: item;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.service_included .items > *
{
    width: calc(50% - 60px);
    margin-bottom: 110px;
    margin-left: 60px;
}

.service_included .item
{
    color: #bdbdd3;
    line-height: 30px;

    position: relative;

    padding-bottom: 92px;

    text-transform: uppercase;
}

.service_included .item:before
{
    color: rgb(53, 53, 67);
    font-family: var(--font_family2);
    font-size: 80px;
    font-weight: bold;
    line-height: 74px;

    position: absolute;
    bottom: 0;
    left: 0;

    content: counter(item, decimal-leading-zero);
    counter-increment: item;

    text-shadow: -0   -1px 0   #b2b8d8,
    0   -1px 0   #b2b8d8,
    -0    1px 0   #b2b8d8,
    0    1px 0   #b2b8d8,
    -1px -0   0   #b2b8d8,
    1px -0   0   #b2b8d8,
    -1px  0   0   #b2b8d8,
    1px  0   0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8;
}


.service_included .bg
{
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 1386px;
    max-height: 100%;

    pointer-events: none;

    opacity: .6;

    mix-blend-mode: multiply;
    object-fit: cover;
}



.service_included2
{
    position: relative;
    z-index: 10;

    min-height: 1080px;
    padding: 86px 0 223px;
}

.service_included2:after
{
    display: none;
}

.service_included2:before
{
    position: absolute;
    z-index: -2;
    top: -152px;
    right: 0;

    display: block;

    width: 100%;
    height: calc(100% + 152px);

    content: '';
    pointer-events: none;

    background: url(../images/bg_service_included2_before.png) 50% 0/100% 100% no-repeat;
}


.service_included2 .row
{
    justify-content: space-between;
}

.service_included2 .row .col_left
{
    width: 50%;
    padding-left: 25px;
}


.service_included2 .block_head
{
    margin-bottom: 100px;
}

.service_included2 .block_head .title
{
    color: #fff;
    font-family: var(--font_family2);
    font-size: 60px;
    font-weight: bold;
    line-height: 80px;
}


.service_included2 .tariff .type
{
    color: #fff;
    font-family: var(--font_family2);
    font-size: 18px;
    line-height: 37px;

    margin-bottom: 10px;
}

.service_included2 .tariff .name
{
    color: rgb(53, 53, 67);
    font-family: var(--font_family2);
    font-size: 150px;
    font-weight: bold;
    line-height: 130px;

    text-shadow: -0   -1px 0   #b2b8d8,
    0   -1px 0   #b2b8d8,
    -0    1px 0   #b2b8d8,
    0    1px 0   #b2b8d8,
    -1px -0   0   #b2b8d8,
    1px -0   0   #b2b8d8,
    -1px  0   0   #b2b8d8,
    1px  0   0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8;
}

.service_included2 .tariff .price
{
    font-family: var(--font_family2);
    font-size: 40px;
    font-weight: bold;
    line-height: 70px;

    display: inline-block;

    margin-top: 105px;

    vertical-align: top;
    white-space: nowrap;
    text-transform: uppercase;

    border-bottom: 2px solid #fff;
    background: linear-gradient(135deg,  #fff 0%, #2f2e34 100%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.service_included2 .tariff .price b
{
    font-size: 100px;
}


.service_included2 .items
{
    width: 526px;
    max-width: 50%;
    margin-top: -115px;
    margin-bottom: -110px;

    counter-reset: item;
}

.service_included2 .items > *
{
    width: 205px;
    margin-right: auto;
    margin-bottom: 110px;
    margin-left: auto;
}

.service_included2 .item
{
    color: #bdbdd3;
    line-height: 30px;

    position: relative;

    padding-bottom: 92px;

    text-transform: uppercase;
}

.service_included2 .item:before
{
    color: rgb(53, 53, 67);
    font-family: var(--font_family2);
    font-size: 80px;
    font-weight: bold;
    line-height: 74px;

    position: absolute;
    bottom: 0;
    left: 0;

    content: counter(item, decimal-leading-zero);
    counter-increment: item;

    text-shadow: -0   -1px 0   #b2b8d8,
    0   -1px 0   #b2b8d8,
    -0    1px 0   #b2b8d8,
    0    1px 0   #b2b8d8,
    -1px -0   0   #b2b8d8,
    1px -0   0   #b2b8d8,
    -1px  0   0   #b2b8d8,
    1px  0   0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8;
}



.service_included3
{
    position: relative;
    z-index: 10;

    padding: 80px 0 190px;
}

.service_included3:after
{
    display: none;
}

.service_included3:before
{
    position: absolute;
    z-index: -2;
    top: -152px;
    right: 0;

    display: block;

    width: 100%;
    height: calc(100% + 152px);

    content: '';
    pointer-events: none;

    background: url(../images/bg_service_included3_before.png) 50% 0/100% 100% no-repeat;
}


.service_included3 .cont
{
    padding: 0 35px;
}


.service_included3 .duration
{
    color: #9da0ac;
    font-family: var(--font_family2);
    font-size: 18px;
    line-height: 45px;

    position: absolute;
    top: -106px;
    left: calc(50% + 75px);
}

.service_included3 .duration .val
{
    font-family: var(--font_family2);
    font-size: 60px;
    font-weight: bold;
    line-height: 80px;

    display: inline-block;

    vertical-align: top;
    text-transform: lowercase;

    border-bottom: 1px solid #697fff;
    background: linear-gradient(135deg,  #2a92f2 0%, #7a28ff 100%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}


.service_included3 .pre_title
{
    color: #9da0ac;
    font-family: var(--font_family2);
    font-size: 14px;
    font-weight: bold;
    line-height: 29px;

    margin-bottom: 30px;

    text-transform: uppercase;
}


.service_included3 .block_head
{
    width: 660px;
    max-width: 100%;
    margin-bottom: 90px;
}

.service_included3 .block_head .title
{
    color: #fff;
    font-family: var(--font_family2);
    font-size: 44px;
    font-weight: bold;
    line-height: 60px;
}


.service_included3 .items
{
    display: flex;

    margin-bottom: -50px;
    margin-left: -60px;

    counter-reset: item;

    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}

.service_included3 .items > *
{
    width: 295px;
    max-width: calc(33.333% - 60px);
    margin-bottom: 50px;
    margin-left: 60px;
}

.service_included3 .item
{
    color: #bdbdd3;
    line-height: 30px;

    position: relative;

    padding-bottom: 92px;

    text-transform: uppercase;
}

.service_included3 .item:before
{
    color: rgb(53, 53, 67);
    font-family: var(--font_family2);
    font-size: 80px;
    font-weight: bold;
    line-height: 74px;

    position: absolute;
    bottom: 0;
    left: 0;

    content: counter(item, decimal-leading-zero);
    counter-increment: item;

    text-shadow: -0   -1px 0   #b2b8d8,
    0   -1px 0   #b2b8d8,
    -0    1px 0   #b2b8d8,
    0    1px 0   #b2b8d8,
    -1px -0   0   #b2b8d8,
    1px -0   0   #b2b8d8,
    -1px  0   0   #b2b8d8,
    1px  0   0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8;
}



/*----------------------
    Service buy desc
----------------------*/
.service_buy_desc
{
    padding: 52px 0 72px;
}

.service_buy_desc .cont
{
    padding: 0 35px;
}


.service_buy_desc .block_head
{
    width: 805px;
    max-width: 100%;
    margin-bottom: 70px;
}

.service_buy_desc .block_head .title
{
    color: #32353f;
    font-family: var(--font_family2);
    font-size: 45px;
    font-weight: bold;
    line-height: 62px;

    text-transform: uppercase;
}

.service_buy_desc .block_head .title span
{
    color: #a1aacd;
    font-weight: normal;
}


.service_buy_desc .row
{
    justify-content: space-between;
}

.service_buy_desc .col_left
{
    width: 385px;
    max-width: 100%;
}

.service_buy_desc .col_right
{
    width: 400px;
    max-width: 100%;
    margin-right: 90px;
}


.service_buy_desc .row .title
{
    color: #32353f;
    font-size: 30px;
    font-weight: bold;
    line-height: 35px;

    margin-bottom: 25px;
}

.service_buy_desc .text_block
{
    color: #2e2e35;
}



/*------------------
    Service full
------------------*/
.service_full
{
    position: relative;
    z-index: 5;

    padding: 80px 0;
}

.service_full:before
{
    position: absolute;
    z-index: -1;
    top: -385px;
    left: 50%;

    display: block;

    width: 1311px;
    height: 1039px;
    margin-left: -1311px;

    content: '';
    pointer-events: none;

    background: url(../images/bg_service_full_light.png) 0 0 no-repeat;
}

.service_full:after
{
    position: absolute;
    z-index: -1;
    top: -520px;
    right: 0;
    left: 0;

    display: block;

    width: 1046px;
    height: 1108px;
    margin: auto;

    content: '';
    transform: rotate(2.29deg);
    pointer-events: none;

    background: url(../images/bg_service_full_light2.png) 0 0 no-repeat;
}


.service_full .block_head
{
    width: 545px;
    max-width: 50%;
    margin: 0 auto 0 0;
}

.service_full .block_head .title
{
    font-family: var(--font_family2);
    font-size: 45px;
    font-weight: bold;
    line-height: 62px;

    text-transform: uppercase;
}

.service_full .block_head .title span
{
    color: #a1aacd;
    font-weight: normal;
}


.service_full .info
{
    width: 370px;
    max-width: 100%;
    margin-right: 75px;
    margin-left: auto;

    align-self: center;
}

.service_full .info .icon
{
    display: block;

    margin-bottom: 35px;
}

.service_full .info .text_block
{
    color: #2e2e35;
    font-size: 18px;
    line-height: 27px;
}

.service_full .info .btn
{
    color: #f2f2f2;
    font-size: 20px;
    font-weight: bold;
    line-height: 29px;

    display: inline-block;

    margin-top: 35px;
    padding: 15px 50px;

    transition: .2s linear;
    vertical-align: top;
    text-decoration: none;

    border-radius: 40px;
    background: linear-gradient(90.79deg, #2e8ff3 .28%, #7b29ff 91.2%);
    box-shadow: 0 16px 32px rgba(99, 78, 241, .3);
}



/*-----------------
    Cases block
-----------------*/
.cases_block
{
    padding: 110px 0;

    background: linear-gradient(231.31deg, #e6e9f5 7.02%, #fff 76.56%);
}


.cases_block .row
{
    align-items: stretch;
    align-content: stretch;
}


.cases_block .info
{
    position: relative;

    width: 530px;
    max-width: 100%;
    margin-right: auto;
}


.cases_block .pre_title
{
    color: #64647c;
    font-weight: bold;
    line-height: 25px;

    margin-bottom: 30px;

    letter-spacing: .06em;
    text-transform: uppercase;
}


.cases_block .block_head
{
    margin-bottom: 0;
}

.cases_block .block_head .title
{
    color: #141414;
    font-family: var(--font_family2);
    font-size: 53px;
    font-weight: bold;
    line-height: 68px;

    text-transform: uppercase;
}


.cases_block .slider_wrap
{
    display: flex;

    width: 685px;
    margin-right: -160px;
    margin-left: auto;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.cases_block .count
{
    color: #1e2a34;
    font-family: var(--font_family2);
    font-size: 30px;
    line-height: 26px;

    position: absolute;
    z-index: 3;
    bottom: 0;
    left: 135px;

    display: flex;

    justify-content: flex-start;
    align-items: flex-end;
    align-content: flex-end;
    flex-wrap: wrap;
}

.cases_block .count .current
{
    color: #eaedf7;
    font-size: 100px;
    line-height: 74px;

    text-shadow: -0   -1px 0   #b2b8d8,
    0   -1px 0   #b2b8d8,
    -0    1px 0   #b2b8d8,
    0    1px 0   #b2b8d8,
    -1px -0   0   #b2b8d8,
    1px -0   0   #b2b8d8,
    -1px  0   0   #b2b8d8,
    1px  0   0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8,
    -1px -1px 0   #b2b8d8,
    1px -1px 0   #b2b8d8,
    -1px  1px 0   #b2b8d8,
    1px  1px 0   #b2b8d8;
}

.cases_block .count > * + *
{
    margin-left: 5px;
}


.cases_block .next
{
    color: #67676a;
    font-size: 12px;
    font-weight: bold;
    line-height: 30px;

    position: absolute;
    z-index: 3;
    bottom: 5px;
    left: 0;

    display: flex;

    min-height: 60px;
    padding-right: 21px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.cases_block .next:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;

    display: block;

    width: 60px;
    height: 60px;

    content: '';

    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 100px #d0d3db;
}

.cases_block .next .icon
{
    display: block;

    width: 40px;
    height: 8px;
    margin-left: 17px;

    fill: #353b43;
}


.cases_block .slider
{
    position: relative;
    z-index: 3;

    width: 481px;
    height: 300px;
    margin: 27px 19px 42px;
}

.cases_block .slider:before
{
    position: absolute;
    z-index: -1;
    top: -28px;
    left: -123px;

    display: block;

    width: 731px;
    height: 370px;

    content: '';

    background: url(../images/bg_portfolio_slider.png) 0 0/100% 100% no-repeat;
}

.cases_block .slide
{
    position: relative;
}

.cases_block .slide .img
{
    position: relative;

    display: block;
    overflow: hidden;

    width: 481px;
    height: 300px;

    background: #ddd;
}

.cases_block .slide .img img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.cases_block .slide .link
{
    color: #697fff;
    font-size: 16px;
    line-height: 20px;

    position: absolute;
    bottom: 20px;
    left: 0;

    width: 100%;

    text-align: center;
}

.cases_block .slide .link a
{
    color: currentColor;

    display: inline-block;

    padding-bottom: 2px;

    transition: border-color .2s linear;
    vertical-align: top;
    text-decoration: none;

    border-bottom: 1px solid;
}

.cases_block .slide .link a:hover
{
    border-color: transparent;
}



/*----------------
    Fixed form
----------------*/
.fixed_form
{
    position: fixed;
    z-index: 99;
    top: 50%;
    right: 0;

    transition: transform .3s linear;
    transform: translateY(-50%) translateX(910px);

    border: 1px solid #525062;
    border-radius: 10px 0 0 10px;
    background: linear-gradient(180deg, #424255 0%, #292935 100%);
    box-shadow: 0 4px 100px rgba(124, 73, 255, .1);
}

.fixed_form.show
{
    transform: translateY(-50%) translateX(0);
}


.fixed_form > .title
{
    color: #fff;
    font-size: 18px;
    line-height: 31px;

    position: absolute;
    top: 0;
    left: 0;

    height: 100%;
    padding: 35px 20px;

    cursor: pointer;
    transform: rotate(-180deg);
    text-align: center;

            writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    text-decoration: none;
}


.fixed_form .form
{
    width: 910px;
    margin-left: 71px;
    padding: 63px 36px 28px;

    border-left: 1px solid rgba(255, 255, 255, .2);

    --form_border_color: #fff;
    --form_focus_color: #fff;
    --form_border_radius: 0;
    --form_bg_color: none;
    --form_placeholder_color: #fff;
}

.fixed_form .form .line
{
    margin-bottom: 32px;
}

.fixed_form .form .input
{
    color: #fff;

    height: 39px;
    padding: 0;

    border-top: none;
    border-right: none;
    border-left: none;
}

.fixed_form .form .bottom
{
    display: flex;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.fixed_form .form .submit
{
    margin-left: auto;
    padding: 0;
}


.fixed_form .success
{
    position: absolute;
    top: 0;
    right: 0;

    display: none;

    width: 910px;
    height: 100%;
    padding: 28px 36px;

    border-left: 1px solid rgba(255, 255, 255, .2);

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.fixed_form  .close_btn
{
    position: absolute;
    top: 0;
    right: 0;

    display: block;

    width: 80px;
    height: 80px;
}

.fixed_form  .close_btn:before,
.fixed_form  .close_btn:after
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: block;

    width: 40px;
    height: 1px;
    margin: auto;

    content: '';
    transform: rotate(45deg);

    background: #fff;
}

.fixed_form  .close_btn:after
{
    transform: rotate(-45deg);
}

.fixed_form .success .title
{
    color: #fff;
    font-size: 30px;
    font-weight: bold;
    line-height: 40px;
}

.fixed_form .success .sep
{
    width: 1px;
    height: 97px;
    margin: 0 55px;

    background: #fff;
}

.fixed_form .success .text
{
    color: #fff;
    font-size: 25px;
    line-height: 40px;
}

.fixed_form .success .text b
{
    color: #7c49ff;
    font-weight: bold;
}


.fixed_form.submitted .form
{
    pointer-events: none;

    opacity: 0;
}

.fixed_form.submitted .success
{
    display: flex;
}



/*------------
    Footer
------------*/
footer
{
    padding: 66px 0 33px;

    background: linear-gradient(293.27deg, #5d616a 5.47%, #34394b 72.56%);
}


footer .row
{
    justify-content: space-between;
    align-items: center;
    align-content: center;
}

footer .row + .row
{
    margin-top: 66px;
}


footer .menu
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

footer .menu > * + *
{
    margin-left: 60px;
}

footer .menu a
{
    color: #fff;
    font-weight: bold;
    line-height: 37px;

    transition: color .2s linear;
    text-decoration: none;
}

footer .menu a:hover
{
    color: #634ef1;
}



footer .socials
{
    display: flex;

    width: 232px;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

footer .socials a
{
    display: block;
}

footer .socials .icon
{
    display: block;

    fill: #fff;
}

footer .socials .icon_facebook
{
    width: 11px;
    height: 23px;
}

footer .socials .icon_youtube
{
    width: 23px;
    height: 17px;
}

footer .socials .icon_instagram
{
    width: 20px;
    height: 20px;
}



footer .contacts
{
    color: #fff;
    font-size: 16px;
    line-height: 1;
}

footer .contacts .city
{
    font-size: 14px;

    margin-bottom: 4px;

    opacity: .3;
}

footer .contacts .phone
{
    font-family: var(--font_family2);
    font-size: 33px;
    font-weight: 500;
    line-height: 40px;
}

footer .contacts .phone a
{
    color: currentColor;

    transition: border-color .2s linear;
    white-space: nowrap;
    text-decoration: none;

    border-bottom: 1px solid;
}

footer .contacts .phone a:hover
{
    border-color: transparent;
}

footer .contacts .adress
{
    margin-top: 20px;

    opacity: .3;
}



footer .callback
{
    color: #fff;

    width: 232px;

    text-align: center;
}

footer .callback .btn
{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 16px;
    line-height: 1;
    color: #FFFFFF;
    text-decoration: none;
    height: 50px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 8px;
    padding: 0 50px;
}

footer .callback .btn:hover
{
    background: linear-gradient(90deg, #2e8ff3, #7b29ff);
}

footer .callback .exp
{
    font-size: 16px;
    line-height: 1;

    margin-top: 16px;

    opacity: .3;
}



footer .links
{
    display: flex;

    width: 100%;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

footer .links a
{
    color: #fff;
    line-height: 25px;

    transition: .2s linear;
    text-decoration: none;

    opacity: .8;
}

footer .links a:hover
{
    color: #634ef1;

    opacity: 1;
}



footer .copyright
{
    color: #fff;
    font-size: 14px;
    line-height: 19px;

    opacity: .5;
}



footer .privacy_policy,
footer .sitemap-link,
footer .abroad
{
    color: #fff;
    font-size: 14px;
    line-height: 19px;
}

footer .privacy_policy a,
footer .sitemap-link a,
footer .abroad a
{
    color: currentColor;

    transition: opacity .2s linear;

    opacity: .5;
}

footer .privacy_policy a:hover,
footer .sitemap-link a:hover,
footer .abroad a:hover
{
    opacity: 1;
}

footer .row.row_valign_top {
    align-items: flex-start;
}

.socials-buttons {
    display: grid;
    grid-template: repeat(2, 1fr)/repeat(2, 1fr);
    grid-template-areas: 'whatsapp telegram'
                         'youtube youtube';
    gap: 10px;
}

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

.socials-buttons_type_thanks .socials-buttons__btn_type_youtube {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    height: 50px;
}

.socials-buttons__btn {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 16px;
    font-size: 16px;
    line-height: 1;
    color: #FFFFFF;
    text-decoration: none;
    height: 50px;
    border: 2px solid rgba(255, 255, 255, 0.2);
    border-radius: 8px;
    padding: 0 20px;
}

.socials-buttons__btn_type_whatsapp {
    grid-area: whatsapp;
}

.socials-buttons__btn_type_youtube {
    grid-area: youtube;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    height: 100%;
    line-height: 1.5;
}

.socials-buttons__btn_type_telegram {
    grid-area: telegram;
}

.socials-buttons__icon_type_whatsapp {
    width: 24px;
    height: 24px;
}

.socials-buttons__icon_type_telegram {
    width: 24px;
    height: 24px;
}

.socials-buttons__icon_type_youtube {
    fill: #fff;
    width: 26px;
    height: 26px;
}



/*-----------
    PopUp
-----------*/
.modal
{
    display: none;
    visibility: visible !important;

    width: 520px;
    max-width: 100%;
    padding: 146px 93px;

    background: #fff;
    box-shadow: 0 4px 100px rgba(124, 73, 255, .1);
}

.modal_title
{
    color: #32353f;
    font-size: 39px;
    font-weight: bold;
    line-height: 50px;

    margin-bottom: 39px;

    text-align: center;
}


.modal .text
{
    color: #32353f;
    font-size: 25px;
    line-height: 40px;

    text-align: center;
}

.modal .text b
{
    color: #7c49ff;
}


.slider_port{
    width: 530px;
    max-width: 100%;
    margin-right: auto;
}


.slider_wrap .slide .link {
    color: #697fff;
    font-size: 16px;
    line-height: 20px;
    position: absolute;
    bottom: 20px;
    left: 0;
    width: 100%;
    text-align: center;
}

.slider_wrap .slide  .link a:hover {
    border-color: transparent;
}
.slider_wrap .slide  .link a {
    color: currentColor;
    display: inline-block;
    padding-bottom: 2px;
    transition: border-color .2s linear;
    vertical-align: top;
    text-decoration: none;
    border-bottom: 1px solid;
}

.tariffs.bg{
    background: none;
}

.garanti{
    background-image:url(../images/Hand.png);
    background-repeat: no-repeat;
    background-position: center right;
}

.garanti_light_bg{
    background-color: #FFFFFF;
}

.case_head .boss .photo.fran{
    right: calc(100% - 260px)
}

.tariffs_f.tariffs .tariffs_info table td.val{
    padding-left: 170px;
}

.gift_block .image .exp
{
    color: #1b222d;
    font-size: 16px;
    font-weight: 500;
    line-height: 26px;

    position: absolute;
    z-index: 3;
    top: 100px;
    right: -76px;

    width: 195px;
    padding: 24px 37px;

    border-radius: 8px;
    background: #fff;
    box-shadow: 0 20px 20px rgba(76, 80, 86, .15);
}


.gift_block
{
    position: relative;
    z-index: 3;

    margin-top: -10px;
    padding: 180px 0 64px;

    background: linear-gradient(180deg, #ffbf1a 0%, #ffa900 83.03%);
}

.special-tariffs {
    padding: 51px 0 117px;
}

.special-tariffs_no-bg {
    background: #f9fafe;
}

.special-tariffs__title {
    font-family: var(--font_family2);
    font-weight: 700;
    font-size: 50px;
    line-height: 1.2;
    color: #32353F;
    margin-bottom: 70px;
    padding: 0 45px;
}

.special-tariffs__inner {
    display: flex;
    align-items: stretch;
    padding: 0 45px;
}

.special-tariffs__tariff {
    flex: 1 1 50%;
}

.special-tariff {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: linear-gradient(189.15deg, #FFFFFF 6.94%, #F2F3F4 95.99%);
    box-shadow: 0px 4px 200px #AFAACA;
    padding: 30px 50px;
}

.special-tariff__tariff {
    font-family: var(--font_family2);
    font-size: 16px;
    line-height: 37px;
    color: #696B71;
    margin-bottom: 10px;
}

.special-tariff__title {
    font-family: var(--font_family2);
    font-weight: 700;
    font-size: 30px;
    line-height: 1;
    color: #3F434B;
    margin-bottom: 30px;
}

.special-tariff__economy {
    font-family: var(--font_family2);
    font-weight: 500;
    font-size: 24px;
    line-height: 32px;
    color: #424750;
    border: 3px solid #D0D0E3;
    padding: 16px 45px;
    margin-bottom: 30px;
}

.special-tariff__descr {
    font-size: 24px;
    line-height: 32px;
    color: #424750;
    margin-bottom: 20px;
}

.special-tariff__descr b {
    font-weight: 700;
}

.special-tariff__note {
    font-size: 18px;
    line-height: 22px;
    color: #2E2E35;
    opacity: 0.6;
    margin-bottom: 30px;
}

.special-tariff__note a:hover {
    text-decoration: underline;
}
.special-tariff__note a {
    color: #7c49ff;
    text-decoration: none;
}

.special-tariff__note p + p
{
    margin-top: 20px;
}

.special-tariff__pay {
    margin-top: auto;
}

.special-tariff__one-pay {
    font-weight: 700;
    font-size: 18px;
    line-height: 22px;
    color: #424750;
    margin-bottom: 10px;
}

.special-tariff__price-wrap {
    display: flex;
    align-items: flex-end;
    column-gap: 10px;
    margin-bottom: 30px;
}

.special-tariff__price {
    font-weight: 700;
    font-size: 34px;
    line-height: 1;
    background: linear-gradient(97.53deg, #2A92F2 2.21%, #7A28FF 71.31%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.special-tariff__currency {
    font-weight: 700;
    font-size: 18px;
    line-height: 1.7;
    color: #424750;
}

.special-tariff__btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 60px;
    font-weight: 700;
    font-size: 20px;
    color: #FFFFFF;
    text-decoration: none;
    border: 0;
    outline: none;
    background-image: linear-gradient(90deg, #2e8ff3, #7b29ff,#7b29ff, #2e8ff3 );
    background-size: 300% 100%;
    border-radius: 20px;
    align-self: center;
    transition: .4s ease-in-out;
    padding: 0 70px;
}

.special-tariff__btn:hover {
    background-position: 100% 0;
}

.steps {
    background-image: url("../images/steps-bg.png");
    background-repeat: no-repeat;
    background-position: top -1229px right 144px;
    padding: 90px 0 117px;
}

.steps__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    column-gap: 30px;
    margin-bottom: 50px;
}

.steps__title {
    font-family: var(--font_family2);
    font-weight: 700;
    font-size: 48px;
    line-height: 1;
    color: #32353F;
}

.steps__sub-title {
    font-size: 18px;
    line-height: 38px;
    text-transform: uppercase;
    color: #8A90AF;
    border: 1px solid #8A90AF;
    padding: 37px;
    margin-top: -37px;
}

.steps__body {
    display: grid;
    grid-template: repeat(2, 1fr)/repeat(2, 1fr);
    gap: 70px;
}

.step__number {
    position: relative;
    font-family: var(--font_family2);
    font-size: 100px;
    line-height: 1;
    color: #EAEDF6;
    text-shadow: 0 1px #B2B8D8, 1px 0 #B2B8D8, 0 -1px #B2B8D8, -1px 0 #B2B8D8;
    margin-bottom: 30px;
}

.step:nth-child(odd) .step__number::after {
    position: absolute;
    content: '';
    top: 50%;
    left: 130px;
    right: 0;
    height: 1px;
    background: #CDD4E1;
    transform: translateY(-50%);
    opacity: 0.5;
}

.step__title {
    font-weight: 700;
    font-size: 40px;
    line-height: 1;
    color: #32353F;
    margin-bottom: 30px;
}

.step__descr {
    font-family: 'Rubic', sans-serif;
    font-size: 16px;
    line-height: 25px;
    color: #2E2E35;
}

.clients {
    background: linear-gradient(180deg, #3E3E4B 0%, #272736 100%);
    padding: 84px 0 97px;
}

.clients__title {
    font-family: var(--font_family2);
    font-weight: 700;
    font-size: 40px;
    line-height: 1;
    color: #FFFFFF;
    margin-bottom: 20px;
}

.clients__descr {
    font-size: 18px;
    line-height: 27px;
    color: #ABABB9;
    margin-bottom: 40px;
}

.clients__list {
    display: grid;
    grid-template: repeat(2, 1fr)/repeat(4, 1fr);
    gap: 20px;
}

.client-logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #FFFFFF;
    box-shadow: 0 22px 22px rgba(76, 80, 86, 0.05);
    border-radius: 9px;
    padding: 20px;
}

.client-logo__img {
    flex: 0 0 auto;
    max-width: 100%;
    height: auto;
}

.seo-text {
    background: #FFFFFF;
}

.seo-text_type_part-1 {
    padding: 80px 0 200px;
}

.seo-text_type_part-2 {
    padding: 280px 0 80px;
}

.seo-text__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    column-gap: 30px;
}

.seo-text__title {
    font-weight: 700;
    font-size: 40px;
    line-height: 1.2;
    background: linear-gradient(97.53deg, #2A92F2 2.21%, #7A28FF 71.31%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 40px;
}

.seo-text__sub-title {
    font-weight: 700;
    font-size: 16px;
    line-height: 28px;
    text-transform: uppercase;
    color: #8A90AF;
    border: 1px solid #8A90AF;
    padding: 20px 30px;
    margin-top: -30px
}

.seo-text__post-text {
    font-size: 24px;
    line-height: 1.3;
    font-weight: 700;
    margin-bottom: 40px;
}

.seo-text__pre-text {
    font-weight: 700;
    font-size: 16px;
    line-height: 28px;
    text-transform: uppercase;
    color: #8A90AF;
    margin-bottom: 30px;
}

.seo-text__descr b {
    font-weight: 700;
}

.blog {
    padding: 50px 0 0;
}

.blog .cont{
    padding: 0 45px;
}

.blog__title {
    font-family: var(--font_family2);
    font-weight: 700;
    font-size: 40px;
    line-height: 1.3;
    color: #32353F;
    margin-bottom: 100px;
}

.blog__list {
    display: grid;
    grid-template: repeat(2, auto)/repeat(3, 1fr);
    gap: 50px 100px;
}

.blog__link {
    display: inline-block;
    font-weight: 700;
    font-size: 14px;
    line-height: 35px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #83889C;
    margin-top: 28px;
}

.blog-post {
    position: relative;
    padding-bottom: 50px;
}

.blog-post::after {
    position: absolute;
    content: '';
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: #E0E0E0;
}

.blog-post:nth-child(3n+2)::after {
    left: -100px;
    right: -100px;
}

.blog-post__date {
    font-weight: 700;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #64647C;
    margin-bottom: 20px;
}

.blog-post__title {
    font-family: var(--font_family2);
    font-weight: 700;
    font-size: 23px;
    line-height: 33px;
    color: #000000;
    text-decoration: none;
}

.faq {
    background: #FFFFFF;
    padding: 57px 0 70px;
}

.faq__title {
    font-family: var(--font_family2);
    font-weight: 700;
    font-size: 40px;
    line-height: 60px;
    color: #32353F;
    margin-bottom: 50px;
}

.question {
    border-bottom: 1px solid #CDD4E1;
    padding: 30px 0 25px;
}

.question__text {
    position: relative;
    display: block;
    font-family: var(--font_family2);
    font-weight: 700;
    font-size: 24px;
    line-height: 30px;
    color: #32353F;
    padding-left: 70px;
    cursor: pointer;
}

.question__text::before {
    position: absolute;
    content: '';
    top: -5px;
    left: 0;
    width: 28px;
    height: 28px;
    background-image: url("../images/plus.svg");
    background-repeat: no-repeat;
    background-size: 18px 18px;
    background-position: center center;
    border-radius: 50%;
    transition: 0.2s ease-out;
}

.question__text:hover::before {
    transform: rotate(45deg);
    background-color: #F0F2F4;
}

.question__checkbox {
    top: -9999px;
    display: none;
}

.question__checkbox:checked ~ .question__text::before {
    transform: rotate(45deg);
}

.question__answer {
    display: none;
    font-size: 18px;
    line-height: 150%;
    color: #585858;
    margin-top: 24px;
    padding-left: 70px;
}

.question__checkbox:checked ~ .question__answer {
    display: block;
}

.youtube {
    padding-top: 50px;
}

.youtube__title {
    font-family: var(--font_family2);
    font-weight: 700;
    font-size: 40px;
    line-height: 60px;
    color: #FFFFFF;
    margin-bottom: 95px;
    padding: 0 10px;
}

.youtube__list {
    display: flex;
    align-items: stretch;
    column-gap: 16px;
    margin-bottom: 35px;
    padding: 0 10px;
}

.youtube__video {
    flex: 1 1 100%;
    height: 220px;
}

.youtube__link {
    font-weight: 700;
    font-size: 14px;
    line-height: 35px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #83889C;
    padding-left: 10px;
}

.youtube-video {
    position: relative;
    display: block;
    height: 100%;
    color: inherit;
    text-decoration: none;
    border-radius: 20px;
    overflow: hidden;
}

.youtube-video::before {
    position: absolute;
    content: '';
    top: 26px;
    left: 20px;
    width: 89px;
    height: 92px;
    background-image: url("../images/play.svg");
    background-repeat: no-repeat;
    background-position: left -10px top;
    z-index: 20;
}

.youtube-video__img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.youtube-video__descr {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    color: #FFFFFF;
    background-color: rgba(0, 0, 0, 0.5);
    font-size: 16px;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    padding: 26px 20px;
    z-index: 10;
}

.youtube-video__date {
    margin-bottom: 10px;
}

.youtube-video__title {
    font-weight: 700;
}

.socials.socials_mobile {
    display: none;
}

.lang-toggle {
    font-size: 14px;
    line-height: 1.5;
    color: #000000;
    text-decoration: none;
    text-transform: uppercase;
    margin-right: 16px;
}

.lang-toggle_color_gray {
    color: #CACACA;
}

.phone {
    display: flex;
    align-items: flex-end;
    gap: 25px;
}

.phone__number {
    font-weight: 700;
    font-size: 40px;
    line-height: 1;
    color: #1E2A34;
}

.phone__label {
    font-family: var(--font_family2);
    font-weight: 700;
    font-size: 16px;
    line-height: 1;
    color: #BBC0D5;
}

.contacts__phones {
    display: flex;
    width: 100%;
    padding: 0 16px;
}

.contacts__col {
    flex: 1 1 50%;
}

.contacts__phone + .contacts__phone {
    margin-top: 40px;
}

.contacts__sosials-buttons {
    display: flex;
}

.contacts__social-btn {
    flex: 1 1 50%;
    border: 2px solid #BBC0D5;
    color: #000000;
}

.contacts__where {
    font-family: var(--font_family2);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.5;
    color: #32353F;
    padding: 0 16px;
    margin-top: 75px;
}

.contacts__map-link {
    display: inline-flex;
    align-items: center;
    column-gap: 10px;
}

.contacts__link {
    color: inherit;
    text-decoration: none;
    border-bottom: 2px solid #B2B8D0;
}

.contacts__link:hover {
    border-bottom-color: transparent;
}

.contacts__order-btn {
    color: currentColor;
    font-family: var(--font_family2);
    font-size: 40px;
    font-weight: bold;
    line-height: 68px;
    display: block;
    padding: 16px 45px 15px;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    border: 3px solid #dfe6ec;
    border-radius: 50px;
    margin: 70px 0 0 16px;
}

.contacts__order-btn span {
    background: linear-gradient(97.53deg, #2a92f2 2.21%, #7a28ff 71.31%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.socials-links {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    column-gap: 78px;
    width: 100%;
    padding: 10px 0 40px;
}

.socials-links__link {
    text-decoration: none;
}

.socials-links__icon {
    fill: #32353F;
}

.socials-links__icon_type_youtube {
    width: 27px;
    height: 21px;
}

.socials-links__icon_type_instagram {
    width: 25px;
    height: 25px;
}

.thanks__back {
    display: flex;
    align-items: center;
    column-gap: 10px;
    font-weight: 500;
    font-size: 12px;
    line-height: 1;
    color: #32353F;
    text-decoration: none;
    margin-bottom: 200px;
}

.thanks__back:before {
    content: '';
    background-image: url('../images/arrow.svg');
    background-repeat: no-repeat;
    width: 17px;
    height: 10px;
}

.thanks__inner {
    display: flex;
    align-items: stretch;
    padding: 0 16px;
}

.thanks__col {
    flex: 1 1 50%;
}

.thanks__col_left {
    padding-left: 83px;
}

.thanks__col_right {
    padding-top: 5%;
    margin-left: -200px;
}

.thanks__title {
    font-family: var(--font_family2);
    font-weight: 700;
    font-size: 48px;
    line-height: 1.2;
    color: #000000;
    margin: 0 0 70px;
}

.thanks__content {
    font-size: 16px;
    line-height: 30px;
    color: #32353F;
    margin-bottom: 20px;
}

.thanks__content p + p {
    margin: 20px 0 0 0;
}

.thanks__text_color_accent {
    color: #7C49FF;
}

.thanks__text_size_large {
    font-size: 24px;
}

.thanks__text_weight_bold {
    font-weight: 700;
}

.thanks__man {
    height: 100%;
}

.man {
    background-image: url('../images/man.png');
    background-image: url('../images/congratulation_author.png');
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: contain;
    padding: 10% 0 0 65%;
    padding: 10% 0 0 58%;
}

.man__name {
    position: relative;
    font-weight: 800;
    font-size: 14px;
    line-height: 1.3;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #000000;
    margin-bottom: 10px;
}

.man__name::before {
    position: absolute;
    content: '';
    top: 7px;
    right: 100%;
    width: 75px;
    height: 1px;
    background: rgba(155, 157, 173, 0.5);
    margin-right: 20px;
}

.man__post {
    font-size: 14px;
    line-height: 1.3;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #000000;
    margin-bottom: 70px;
}

.man__wishes {
    font-size: 16px;
    line-height: 1.8;
    color: #9B9DAD;
}

.man__signature {
    display: block;
    max-width: 130%;
    height: auto;
    mix-blend-mode: multiply;
    margin: -50px 0 0 -40px;
}

.action_form {
    margin-bottom: 80px;
}

.book {
    position: relative;
}

.book__image {
    display: block;
    max-width: 100%;
    height: auto;
}

.book__descr {
    position: absolute;
    top: 25%;
    left: 100%;
    width: 190px;
    background: #FFFFFF;
    box-shadow: 0 4px 200px rgba(55, 62, 124, 0.25);
    border-radius: 8px;
    padding: 22px 32px;
    margin-left: 20px;
}

.sitemap {
    margin-left: 20px;
}

.sitemap ul.children {
    margin-left: 40px;
}

/**
 * Popup fade transition,
 */
.mfp-fade.mfp-bg {
    opacity: 0;
    -webkit-transition: all 0.15s ease-out;
    -moz-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
}
.mfp-fade.mfp-bg.mfp-ready {
    opacity: 0.8;
}
.mfp-fade.mfp-bg.mfp-removing {
    opacity: 0;
}

.mfp-fade.mfp-wrap .mfp-content {
    opacity: 0;
    -webkit-transition: all 0.15s ease-out;
    -moz-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
}
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
    opacity: 1;
}
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
    opacity: 0;
}

.banner_top .desc_hide{
    display: none;
}
.banner_top img{
    max-width: 100%;
    width: 100%;
    display:block;
}

.banner_top a{
    display: block;
}

.banner_new{
    position: sticky;
    top:20px;
    margin-top: 20px;
}

.banner_new a{
    display: block;
}

.banner_new img{
    max-width: 190px;
    display: block;
    margin: 0 auto;
	border-radius: 10px;
	border: 1px solid #dbdbdb;
}
.seo-text__descr{
    position: relative;
}
.seo-text__descr .spoler_btn:before{
    content: '';
    position: absolute;
        bottom: 40px;
    width: 100%;
    height: 100px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #FFF);
}

.seo-text__descr .spoler_btn.active:before{
    display: none;
}

.breadcrumbs br{
    display: none;
}

header .socials {
    display: flex;
    max-width: 100%;
    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
    max-width: 137px;
    gap:10px;
    margin: 0 18px 0 10px;
}

header .socials a {
    color: #fff;
    display: block;
    text-decoration: none;
}

header .socials a div {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

header .socials a .icon {
    display: block;
    width: 20px;
    height: 20px;
}

.top_banner_new{
    background: url(../images/bg.jpg);
    height: 6.5vw;
    background-size: 100%;
}

.top_banner_new a{
    display: flex;
    gap: 20px;
    align-items: center;
    height: 100%;
    text-decoration: none;
}

.tbl{
    width: 15%;
    font-weight: 700;
    font-size: clamp(20px, 3vw, 60px); 
    line-height: 55%;
    text-transform: uppercase;
    color: #FFFFFF;
    padding-left: 3vw;
}

.tbl span{
    font-weight: 500;
    font-size: clamp(15px, 1.5vw, 30px);
    line-height: 110%;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: #FFFFFF;
}

.tbl2{
    width: 27%;
    font-weight: 700;
    font-size: clamp(15px, 1.8vw, 60px);
    line-height: 86%;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #FEFEF8;
    padding-left: 2vw;
}

.tbl2 span{
    font-style: normal;
    font-weight: 500;
    font-size: 16px;
    font-size: clamp(5px, 0.8vw, 16px);
    line-height: 10%;
    letter-spacing: 0.05em;
    color: rgba(254, 254, 248, 0.6);
    text-transform: initial;
}

.tbl3{
    width: 4%;
    text-align: center;
    border: 2px solid #E5C695;
    font-family: 'Alegreya';
    font-style: normal;
    font-size: clamp(20px, 3.3vw, 80px);
    letter-spacing: 0.04em;
    background: linear-gradient(180deg, #FFDA9F 35.44%, #FDD492 53.5%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
}

.tbl4{
    width: 25%;
    font-weight: 600;
    font-size: clamp(10px, 1.3vw, 30px);
    line-height: 100%;
    letter-spacing: 0.05em;

    color: #FEFEF8;


}

.tbl5{
    width: 29%;
}

.tbl5 .btn{
    width: 80%;
    height: clamp(10px, 3.2vw, 70px);
    background: linear-gradient(90deg, #FFB51C 0%, #FFCD34 100%);
    box-shadow: 0px 14px 22px rgba(0, 0, 0, 0.3);
    border-radius: 15px;
    font-weight: 700;
    font-size: clamp(5px, 1.2vw, 20px);
    line-height: 100%;
    text-transform: uppercase;
    color: #000000;
    display: flex;
    align-items: center;
    justify-content: center;
}

.top_banner_new2{
    background: url(../images/bg2.jpg);
    height: 6.5vw;
    background-size: 100%;
    display: none;
}

.top_banner_new2 a{
    display: flex;
    gap: 20px;
    align-items: center;
    height: 100%;
    text-decoration: none;
}

.tbl_1{
    width: 50%;
    font-weight: 900;
    font-size: clamp(10px, 2vw, 60px);
    line-height: 105%;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #19233C;
    font-family: var(--font_family2);
    padding-left: 3%;
}

.tbl_2{
    width: 25%;
    font-weight: 600;
    font-size: clamp(10px, 1.3vw, 60px);
    line-height: 105%;
    letter-spacing: 0.05em;
    color: #FEFEF8;
}

.tbl_2 span{
    font-weight: bold;
}

.tbl_3{
    width: 25%;
}


.tbl_3 .btn{
    width: 80%;
    height: clamp(10px, 3.2vw, 70px);
    background: linear-gradient(90deg, #FFB51C 0%, #FFCD34 100%);
    box-shadow: 0px 14px 22px rgba(0, 0, 0, 0.3);
    border-radius: 15px;
    font-weight: 700;
    font-size: clamp(5px, 1.2vw, 20px);
    line-height: 100%;
    text-transform: uppercase;
    color: #000000;
    display: flex;
    align-items: center;
    justify-content: center;
}

.top_banner_new_mob, .top_banner_new2_mob{
    display: none;
}

.banner_new2{
    height: 465px;
    width: 260px;
    position: sticky;
    top: 20px;
    margin: 20px auto 0;
    padding: 30px 20px;
    display: flex;
    flex-direction: column;
    text-decoration:none;
}

.banner_new2 img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
}

.banner_new2_title_top{  
    font-weight: 700;
    font-size: 28px;
    line-height: 33px;
    text-align: center;
    text-transform: uppercase;
    color: #FEFEF8;

    display: flex;
    flex-direction: column;
    gap:6px;
    z-index: 10;
        position: relative;
}

.banner_new2_title_top span{
    background: linear-gradient(180deg, #FFDA9F 35.44%, #FDD492 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
}

.banner_new2_desc{
    font-weight: 700;
    font-size: 17px;
    line-height: 20px;
    text-align: center;
    text-transform: none;
}

.banner_new2_button{   
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 17px 0px;
    margin: 0 auto;
    width: 220px;
    height: 50px;
    background: linear-gradient(90deg, #FFB51C 0%, #FFCD34 100%);
    box-shadow: 0px 14px 22px rgba(0, 0, 0, 0.3);
    border-radius: 15px;
    font-weight: 800;
    font-size: 14px;
    line-height: 16px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #000000;
    z-index: 10;
    position: relative;
    margin-top: auto;
}



.add_comment {
    margin-bottom: 30px !important;
}

.add_comment .block_head .title{
    width: 100%;
}


.add_comment .block_head .title a{
    color: #7c49ff;
    text-decoration:none;
}

.comments{
    padding: 63px 64px 55px 62px;
    background: #fff;
    box-shadow: 10px 10px 250px rgba(102, 82, 117, .25);
}

.list{
    display: flex;
    gap:20px;
    flex-direction: column;
}

.comment{
    list-style: none;
    display: flex;
    gap:20px;
    flex-direction: column;
    padding-bottom: 20px;
    position: relative;
}

.comment_wrap{
    display: flex;
    gap:20px;
    width: 100%;
}

.children{
    margin-left: 70px;
    position: relative;
}

.comment .avatar{

}

.comment .avatar img{
    border-radius: 50%;
}

.comment .name{
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 5px;
}

.comment .name span{
    font-size: 16px;
    font-weight: normal;
}

.comment .data{

}

.comment_content{
    width: 100%;
}

.comment .text{
    margin-top: 20px;
    margin-bottom: 10px;
}

.comment .reply{
    text-align: right;
}

.comment .reply a{
    text-decoration:none;
    font-weight: bold;
        color: #7c49ff;
}


.comment:not(:last-child)::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    transform: translateY(-50%);
    width: 100%;
    height: 1px;
    background: rgba(175, 193, 220, .3);
}

.children .comment{
    padding-top: 20px;
}
.children .comment:last-child{    
    padding-bottom: 0;
}
.children .comment:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    transform: translateY(-50%);
    width: 100%;
    height: 1px;
    background: rgba(175, 193, 220, .3);
}

.block_title_new{
    font-size: 20px;
    margin-bottom: 40px !important;
    margin-left: 0 !important;
}

.comment-form .columns{
    display: flex;
    gap:20px;
}

.be_intresting .block_title
{
    color: #000;
    font-family: var(--font_family2);
    font-weight: bold;
    line-height: 30px;
    font-size: 30px;

    margin-bottom: 17px;
        margin-left: 16px;
}

.iti{
    width: 100%;
}

.tariffs .tariffs_info table th:has(.order_btn){
    padding-left: 8px;
    padding-right: 30px;
    padding-bottom: 30px;
}

.order_btn{
        color: #f2f2f2;
    font-size: 20px;
    font-weight: bold;
    line-height: 29px;
    display: inline-block;
    padding: 15px 50px;
    transition: .4s ease-in-out;
    vertical-align: top;
    text-decoration: none;
    border-radius: 40px;
    background-image: linear-gradient(90deg, #2e8ff3, #7b29ff, #7b29ff, #2e8ff3);
    background-size: 300% 100%;
    box-shadow: 0 16px 32px rgba(99, 78, 241, .3);
}

.order_btn:hover {
    background-position: 100% 0;
}