body {
    background-color: #FEFEFE;
    overflow-x: hidden; /* отключает горизонтальный скролл */
}

.header {
    width: 100% !important;
}

.top-header {
    height: 60px !important;
    outline: 1px solid #333;
}

h1 {
    font-size: 35px;
    color: #212121;
    text-align: center;
    font-weight: bold;
    margin-bottom: 40px;
    font-family: Roboto, Helvetica, Arial, sans-serif;
}

div.block_register,
div.block_contract {
    width: 90%;
    height: 360px;
    margin: 0 auto 40px auto;
    padding: 40px 50px;
    background-color: rgb(255, 255, 255);
    color: rgba(0, 0, 0, 0.87);
    box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 5px -1px, rgba(0, 0, 0, 0.14) 0px 6px 10px 0px, rgba(0, 0, 0, 0.12) 0px 1px 18px 0px;
    transition: box-shadow 300ms cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 6px;
}

div.block_register span.step,
div.block_information span.step,
div.block_contract span.step {
    color: #000000;
    font-weight: 500;
    font-size: 25px;
    font-style: normal;
    font-family: Roboto, Arial, Sans-serif;
}

div.block_register span.register,
div.block_information span.fill_out,
div.block_contract span.fill_out {
    margin-top: 15px;
    color: #01A7E5;
    font-size: 25px;
    font-weight: 500;
    font-style: bold;
    font-family: Roboto, Helvetica, Arial, sans-serif;
    line-height: 1.167;
    letter-spacing: 0em;
    display: block;
}

div.block_information span.attention {
    color: #c32017;
    font-size: 15px;
    font-weight: 500;
    font-style: bold;
    margin-bottom: 17px;
    font-family: Roboto, Helvetica, Arial, sans-serif;
    line-height: 1.167;
    letter-spacing: 0em;
    display: block;
}

div.block_register span.description,
div.block_information span.description,
div.block_contract span.description {
    color: #404040;
    position: relative;
    top: 7px;
    margin-bottom: 30px;
    font-size: 15px;
    display: block;
    font-family: Roboto, Arial, Sans-serif;
}

div.block_information {
    width: 90%;
    height: 870; /* 870px */
    margin: 0 auto 40px auto;
    padding: 40px 50px;
    background-color: rgb(255, 255, 255);
    color: rgba(0, 0, 0, 0.87);
    box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 5px -1px, rgba(0, 0, 0, 0.14) 0px 6px 10px 0px, rgba(0, 0, 0, 0.12) 0px 1px 18px 0px;
    transition: box-shadow 300ms cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 8px;
}

div.color_block {
    padding: 20px;
    height: 570px;
    border-radius: 5px;
    background-color: #26CEE4;
}

.notAllowed {
    cursor: not-allowed;
}

div.add_new_listen {
    width: 100%;
    height: 45px;
    margin-top: 35px;
    text-align: center;
    line-height: 45px;
    color: #ffffff;
    cursor: pointer;
    border-radius: 5px;
    font-weight: bold;
    font-size: 17px;
    font-family: Roboto, Arial, Sans-serif;
    background-color: #004298;
}

div.add_new_listen:hover {
    background-color: #004298;
    transition: 0.6s;
}

div.program {
    top: 110px;
    font-family: Roboto, Arial, Sans-serif;
    position: relative;
}

div.program h3 {
    margin-bottom: 20px;
}

div.color_block {
    font-family: Roboto, Arial, Sans-serif;
}

.disabled {
    background-color: #2DE5DF !important;
}

.prog_i {
    pointer-events: none !important;
}

.step2_inn {
    left: 800px !important;
    position: relative;
}

.step2_snils {
    top: 120px !important;
    position: relative;
    margin-bottom: 35px;
}

div.privacy {
    width: 900px;
    line-height: auto !important;
    text-align: left;
    margin: 0 auto 10px auto !important;
}

div.privacy span {
    margin-left: 0;
    position: relative;
    top: -3px;
    font-family: Roboto, Sans-serif;
    font-size: 14px;
}

div.privacy span a {
    text-decoration: none !important;
}

div.checkout {
    width: 900px;
    height: 50px;
    margin: 0 auto 30px auto;
    text-align: center;
    line-height: 50px;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    position: relative;
    color: #FFFFFF;
    font-family: Roboto, Arial, Sans-serif;
    background-color: #004298;
}

div.checkout:hover {
    transition: 0.6s;
    background-color: #062698 !important;
}

div.color_block div.add_listen_block {
    width: 200px;
    height: 35px;
    position: relative;
    left: 820px;
    top: -45px;
    margin-bottom: -20px;
    cursor: pointer;
    line-height: 35px;
    font-family: Roboto, Arial, Sans-serif;
    text-align: center;
}

div.color_block div.add_listen_block:hover {
    background-color: #6DE8FE;
    transition: 0.6s;
}

div.color_block span.add_listen {
    text-align: center;
    color: #182798;
}

.specialActive {
    color: #182798;
    background-color: #EAF0FE !important;
    border: 1px solid #182798;
}

.delete_listen {
    top: -60px !important;
    left: 620px !important;
}

.hideDelete {
    display: none;
}

.hidden_color {
    display: none;
}

div.menu input.active {
    color: #182798;
    background-color: #EAF0FE !important;
    border: 1px solid #182798;
}

div.menu input.active:hover {
    color: #182798;
    background-color: #EBF1FF;
}

div.menu input.first {
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
}

div.menu input.last {
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
}

div.menu input.m_input {
    width: 370px;
    height: 47px;
    outline: none;
    float: left;
    line-height: 47px;
    font-size: 16px;
    background-color: #FFFFFF;
    text-transform: uppercase;
    font-family: Roboto, Arial, Sans-serif;
    cursor: pointer;
}

div.menu input.m_input:hover {
    background-color: #F5F5F5;
    transition: 0.4s;
}

.inn_org {
    position: absolute;
    left: 0 !important;
}

.bik {
    position: absolute;
    left: 700px !important;
}

.select {
    position: relative;
    display: block;
    min-width: 220px;
    color: #796666;
    width: 700px;
    padding-left: 20px;
    margin-bottom: 20px;
    background-color: #F5F5F5;
}

.select__head {
    width: 600px;
    line-height: 50px !important;
    
    height: 50px;
    font-size: 16px;
    line-height: 18px;
    color: rgba(66, 67, 72, 0.8);
    cursor: pointer;
}

.select__head::after {
    width: 10px;
    height: 6px;
    background: #F5F5F5 url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.50495 5.78413L0.205241 1.25827C-0.0684138 0.970375 -0.0684138 0.503596 0.205241 0.215836C0.478652 -0.0719461 0.922098 -0.071946 1.19549 0.215837L5.00007 4.22052L8.80452 0.215953C9.07805 -0.0718292 9.52145 -0.0718292 9.79486 0.215953C10.0684 0.503736 10.0684 0.970492 9.79486 1.25839L5.49508 5.78425C5.35831 5.92814 5.17925 6 5.00009 6C4.82085 6 4.64165 5.928 4.50495 5.78413Z' fill='%23ED266A'/%3E%3C/svg%3E%0A") no-repeat center / cover;
    position: absolute;
    right: 20px;
    bottom: 50%;
    transform: translateY(50%);
    content: '';
    display: block;
    transition: .2s ease-in;
}

.select__head.open::after {
    transform: translateY(50%) rotate(180deg);
}

.select__list {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #F5F5F5;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
    border-radius: 10px;
    margin-top: 5px;
    max-height: 205px;
    overflow-x: hidden;
    overflow-y: auto;
    z-index: 100;
    margin: 0;
    padding: 0;
    font-size: 16px;
    color: #424348;
    scrollbar-color: dark;
    scrollbar-width: thin;
    overscroll-behavior: contain;
}

.select__list::-webkit-scrollbar {
    width: 7px;
    background-color: #F5F5F5;
    padding: 5px;
}

.select__list::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: #D9D9D9;
}

.select__list .select__item {
    position: relative;
    border-top: 1px solid rgba(224, 229, 231, 0.5);
    padding: 10px 15px;
    cursor: pointer;
    list-style-type: none;
}

.select__list .select__item:hover {
    background-color: rgba(224, 229, 231, 0.5);
}

span.add_program {
    top: -5px;
    cursor: pointer;
    position: relative;
    color: #003F91;
    font-family: Roboto, Arial, Sans-serif;
}

img.add_plus {
    cursor: pointer;
    font-family: Roboto, Arial, Sans-serif;
}

div.block_register input,
div.block_information input,
div.block_contract input {
    width: 300px;
    font-size: 15px;
    border: 1px solid #C4C4C4;
    border-radius: 5px;
    border-color: #C4C4C4;
    font-family: Roboto, Arial, Sans-serif;
}

div.passport_details {
    top: 260px !important;
}

.kpp {
    position: absolute;
    top: 260px !important;
}

.korr {
    left: 0 !important;
    position: absolute;
}

.korrs {
    position: absolute;
    left: 700px !important;
}

.kpp_email {
    top: 350px !important;
    position: absolute;
}

.url_phone {
    top: 320px !important;
    position: absolute;
    left: 350px !important;
}

.rukovoditel {
    top: 430px;
    position: absolute;
}

.ruk_ {
    font-weight: bold;
    font-size: 16px;
    font-family: Roboto, Arial, Sans-serif;
}

.dolzh {
    position: absolute;
    top: 140px;
}

.selectruk {
    height: 50px;
}

.url_select {
    width: 180px !important;
    height: 70px !important;
    position: absolute;
    font-size: 16px;
    font-family: Roboto, Arial, Sans-serif;
    top: 140px !important;
    left: 350px !important;
}

.hideURL {
    visibility: hidden;
}

.hideFIZ {
    visibility: hidden;
}

.head_ruk {
    width: 300px !important;
    height: 70px !important;
    border-radius: 10px;
}

.ruk_req {
    top: 240px !important;
    position: absolute;
}

.client_passport {
    top: 240px;
    position: absolute;
}

.block_contract {
    height: 700px !important; /**/
}

.end_block {
    height: 580px !important;
}

div.passport_details {
    width: 304px;
    height: 20px;
    font-size: 16px;
    font-weight: bold;
    font-family: Roboto, Arial, Sans-serif;
    position: relative;
    top: 280px;
    left: -30px;
}

div.passport_details label {
    width: 100px;
    position: relative;
    top: -22px;
    left: 60px;
    cursor: pointer;
}

.rf_pass {
    position: relative;
    left: 35px;
}

input.special_input {
    position: relative;
    right: 110px;
}

input[type="checkbox"],
input[type="radio"] {
  accent-color: #C56FFF;
  width: 18px;
  height: 18px;

}

div.passport_details input.migrant {
    position: relative;
    top: -19px;
    right: 90px;
}

div.user_data {
    top: 25px;
    position: relative;
}

div.user_data .client_data {
    font-weight: bold;
    font-size: 17px;

    font-family: Roboto, Arial, Sans-serif;
}

div.user_data div.firstname {
    position: absolute;
    left: 350px !important;
}

div.user_data div.otch {
    position: absolute;
    left: 700px;
}

div.lastname {
    position: absolute;
}

div.firstname {
    position: absolute;
    left: 430px;
}

div.otch {
    position: absolute;
    left: 780px;
}

.block_delivery .required p {
    position: relative;
    top: -70px !important;
}

.required h3 {
    top: -30px;
    left: 350px;
    position: relative;
}

input.to_client {
    width: 400px !important;
}

.required span {
    top: -30px;
    position: relative;
    font-size: 16px;
    font-weight: bold;
    font-family: Roboto, Arial, Sans-serif;
}

div.optional_div {
    top: 80px;
    position: relative;
}

div.optional_div input {
    width: 550px !important;
    height: 80px !important;
}

div.add_promo {
    width: 250px;
    height: 40px;
    position: relative;
    left: 600px;
    line-height: 40px;
    text-align: center;
    top: 12px;
    font-weight: bold;
    font-size: 16px;
    border-radius: 4px;
    background-color: #D0DDFF;
    font-family: Roboto, Arial, Sans-serif;
    cursor: pointer;
}

.delivery_documents {
    position: relative;
    top: 80px;
    font-size: 16px;
    font-weight: bold;
    font-family: Roboto, Arial, Sans-serif;
}

.delivery_documents span.amount {
    font-size: 20px;
    color: rgb(2, 73, 254) !important;
}

div.add_promo:hover {
    background-color: #0ABCF7;
    transition: 0.5s;
}

div.optional_div input:focus {
    width: 550px !important;
    height: 80px !important;
    line-height: 10px !important;
}

div.email {
    top: 90px;
    position: relative;
}

div.user_data div.phone {
    position: absolute;
    left: 0;
    top: 140px;
}

.client_passport div.seria {
    position: absolute;
    top: 110px;
}

div.phone {
    margin-top: 30px;
    left: 430px;
    position: absolute;
}

.user_data div.u_email {
    position: absolute;
    left: 350px;
    top: 170px;
}

.nomer_passporta {
    top: 110px !important;
}

.vydan,
.vydacha {
    top: 200px !important;
}

.user_address #email_address {
    width: 500px !important;
}

.date_of_expire {
    position: absolute;
    left: 350px !important;
}



div.u_address {
    position: absolute;
    left: 0;
    top: 260px;
}

img.flag {
    top: 35px;
    left: 10px;
    position: absolute;
}

div.dob {
    margin-top: 30px;
    left: 800px;
    position: absolute;
}

div.required {
    top: 100px;
    position: relative;
    font-size: 13px;
    font-family: Roboto, Arial, Sans-serif;
}

.client_passport div.required {
    width: 250px;
    top: 30px;
    position: absolute;
    font-size: 13px;
    font-family: Roboto, Arial, Sans-serif;
}

input:focus {
    border: 1px solid #333;
    border-radius: 5px;
    font-family: Roboto, Arial, Sans-serif;
    border-color: rgb(2, 73, 254) !important;
}

.text-field__label {
    display: block;
    margin-bottom: 0.25rem;
}

.text-field__input {
    display: block;
    width: 100%;
    height: 50px !important;
    padding: 10px 0 0 12px !important;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #bdbdbd;
    border-radius: 0.25rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.text-field__input[type="search"]::-webkit-search-decoration,
.text-field__input[type="search"]::-webkit-search-cancel-button,
.text-field__input[type="search"]::-webkit-search-results-button,
.text-field__input[type="search"]::-webkit-search-results-decoration {
    -webkit-appearance: none;
}

.text-field__input::placeholder {
    color: #212529;
    opacity: 0.4;
}

.text-field__input:focus {
    color: #212529;
    background-color: #fff;
    border-color: #bdbdbd;
    outline: 0;
    padding: 10px 0 0 12px !important;
    height: 50px !important;
    box-shadow: 0 0 0 0.2rem rgba(158, 158, 158, 0.25);
}

.text-field__input:disabled,
.text-field__input[readonly] {
    background-color: #f5f5f5;
    opacity: 1;
}

/* with floating label */
.text-field_floating-3 {
    position: relative;
}

.text-field_floating-3 .text-field__input {
    border: none;
    border-bottom: 1px solid #bdbdbd;
    border-radius: 0;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
    height: calc(3.5rem + 2px);
    line-height: 1.25;
    padding: 1rem 0.75rem;
    background-color: #f5f5f5;
}

.text-field_floating-3 .text-field__input:focus {
    outline: 0;
    border-bottom: 1px solid #03a9f4;
    box-shadow: none;
    background-color: #eee;
}

.text-field_floating-3 .text-field__label {
    position: absolute;
    top: 2px;
    left: 0;
    color: #666666;
    height: 100%;
    padding: 1rem .75rem;
    font-family: Roboto, Arial, Sans-serif !important;
    pointer-events: none;
    border: 1px solid transparent;
    transform-origin: 0 0;
    transition: color .15s ease-in-out, transform .15s ease-in-out;
}

.text-field_floating-3 .text-field__input::-moz-placeholder {
    color: transparent;
}

.text-field_floating-3 .text-field__input::placeholder {
    color: transparent;
}

.text-field_floating-3 .text-field__input:focus,
.text-field_floating-3 .text-field__input:not(:placeholder-shown) {
    padding-top: 1.625rem;
    padding-bottom: .625rem;
    border-bottom: 1px solid #03a9f4;
}

.text-field_floating-3 .text-field__input:focus~.text-field__label,
.text-field_floating-3 .text-field__input:not(:placeholder-shown)~.text-field__label {
    transform: scale(.85) translateY(-.75rem) translateX(.15rem);
    color: #03a9f4;
}

input.u_phone .text-field__label {
    transform: scale(.85) translateY(-.75rem) translateX(.15rem) !important;
    color: #03a9f4;
}