.btn.btn-orange {
    background: linear-gradient(to bottom, #ffbe00 0, #ff7e00 100%)
}

.btn.btn-orange:hover {
    background: linear-gradient(to bottom, #ff7e00 0, #ff7e00 100%)
}

.btn.btn-green {
    background: linear-gradient(to bottom, #a8d21d 0, #00a559 100%)
}

.btn.btn-green:hover {
    background: linear-gradient(to bottom, #00a559 0, #00a559 100%)
}

.btn.btn-disabled {
    background: #e7e7e7
}

.btn.btn-disabled:hover {
    background: #e7e7e7
}

.app a {
    font-family: 'Proxima Nova Bold', sans-serif;
}

.app .btn {
    height: 44px;
    padding: 0 26px;
    line-height: 44px;
    font-family: 'Proxima Nova Bold', sans-serif;
    font-size: 16px;
    border-radius: 8px;
    color: #fff;
    border: none;
    outline: none;
    transition: all .3s ease
}

.app .btn:hover {
    color: #fff
}

@media (min-width: 576px) {
    .title {
        margin: 0 0 5px
    }
}

label {
    margin: 0;
    line-height: 1.3;
    font-size: 14px
}

label[for] {
    display: flex;
    align-items: flex-start
}

.label-icon {
    flex-shrink: 0;
    display: inline-block;
    width: 16px;
    height: 16px;
    margin: 0 8px 0 0;
    background: transparent;
    cursor: pointer;
    border-radius: 50%;
    box-shadow: inset 0 0 0 2px #e7e7e7
}

.label-icon-warn {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    display: inline-block;
    width: 16px;
    height: 16px;
    margin: 0 8px 0 0;
    background: transparent;
    cursor: pointer;
    border-radius: 50%;
    -webkit-box-shadow: inset 0 0 0 2px #ff7e00;
    box-shadow: inset 0 0 0 2px #ff7e00;
}

@media (min-width: 576px) {
    .label-icon {
        margin: 0 8px 0 4px
    }
}

.label-text {
    cursor: pointer
}

.label {
    display: flex;
    margin: 0 0 6px;
    font-family: 'Proxima Nova Semibold', sans-serif;
    font-size: 14px;
    line-height: 1.3
}

.input-wrap {
    height: 40px;
    margin: 0 0 14px;
    position: relative
}

.input-wrap .input-message {
    /*position: absolute;
    bottom: -20px;*/
    margin-top: 5px;
    line-height: 1;
    transition: opacity .3s ease
}

.input-wrap .input-message .message-text {
    font-family: 'Proxima Nova Semibold', sans-serif;
    font-size: 12px;
    color: #ff7e00
}

.input-wrap input {
    border: 1px solid #e7e7e7;
    border-radius: 4px
}

.field-validation-success {
    font-family: 'Proxima Nova Semibold', sans-serif;
    font-size: 12px;
    color: #28a745;
    opacity: 1
}

.radio-wrap {
    height: 40px;
    margin: 0 0 16px;
    position: relative
}

.input-icon {
    position: absolute;
    top: 0;
    right: 0;
    width: 42px;
    height: 40px;
    cursor: pointer;
    transition: opacity .3s ease
}

.input-icon:hover {
    opacity: .8
}

.input-icon.icon-password {
    background: url("/img/lp/show_pass.png") no-repeat center
}

.input-icon.icon-progressbar {
    background-color: #08b32f;
    text-align: center;
    padding: 2px 0;
    font-size: 12px;
    color: #fff;
    border-radius: 12px;
    height: 21px;
    margin: 8px 5px;
    width: 35px;
    cursor: default;
    display: none
}

.appProgressBar {
    color: #868686;
    font-size: 14px;
    margin: 0 auto 15px
}

.appProgressBarPercent {
    color: #141515;
    font-weight: 700
}

.appProgressBarBackground {
    background-color: #dfdfe2;
    height: 5px;
    border-radius: 10px;
    width: 100%;
}

.appProgressBarPerspective {
    background-color: #a5ebb5;
    height: 5px;
    border-radius: 10px;
    position: absolute;
    bottom: 21px;
    width: 90%;
}

.appProgressBarActive {
    background-color: #39b348;
    height: 5px;
    border-radius: 10px;
    width: 5%;
    position: absolute;
    bottom: 21px;
    transition: width .7s ease;
}

@media (max-width: 991px) {
    .appProgressBar {
        margin: 15px auto;
        padding: 0;
    }
}

@media (max-width: 330px) {
    .appProgressBarTextBottom {
        font-size: 11px
    }
}

input[type="text"], input[type="tel"], input[type="password"] {
    width: 100%;
    height: 100%;
    padding: 0 10px 0 18px;
    outline: none
}

input[type="text"]::-webkit-input-placeholder, input[type="tel"]::-webkit-input-placeholder, input[type="password"]::-webkit-input-placeholder {
    color: #a5a5a5
}

input[type="text"]::-moz-placeholder, input[type="tel"]::-moz-placeholder, input[type="password"]::-moz-placeholder {
    color: #a5a5a5
}

input[type="text"]:-ms-input-placeholder, input[type="tel"]:-ms-input-placeholder, input[type="password"]:-ms-input-placeholder {
    color: #a5a5a5
}

input[type="text"]::-ms-input-placeholder, input[type="tel"]::-ms-input-placeholder, input[type="password"]::-ms-input-placeholder {
    color: #a5a5a5
}

input[type="radio"], input[type="checkbox"] {
    width: 0;
    height: 0;
    position: absolute;
    opacity: 0
}

input[type="radio"]:checked + label[for] .label-icon, input[type="checkbox"]:checked + label[for] .label-icon {
    background: url("/img/lp/tick_g.svg") no-repeat center;
    box-shadow: none
}

input[type="text"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="email"]::-moz-placeholder,
input[type="password"]::-moz-placeholder {
    color: #a5a5a5;
    font-size: 16px;
    font-family: inherit;
}

input[type="text"]::-moz-placeholder, input[type="tel"]::-moz-placeholder, input[type="email"]::-moz-placeholder, input[type="password"]::-moz-placeholder {
    color: #a5a5a5;
    font-size: 16px;
    font-family: inherit;
}

input[type="text"]::placeholder,
input[type="tel"]::placeholder,
input[type="email"]::placeholder,
input[type="password"]::placeholder {
    color: #a5a5a5;
    font-size: 16px;
    font-family: inherit;
}

input[type="radio"],
input[type="checkbox"] {
    width: 0;
    height: 0;
    position: absolute;
    opacity: 0;
}

input[type="radio"]:checked + label[for] .label-icon,
input[type="checkbox"]:checked + label[for] .label-icon {
    background: url("/img/lp/icons/tick_g.svg") no-repeat center;
    box-shadow: none;
}

input[type="radio"]:checked + label[for] .label-disabled,
input[type="checkbox"]:checked + label[for] .label-disabled {
    background: url("/img/lp/icons/tick_m.svg") no-repeat center;
    box-shadow: none;
}

textarea {
    padding: 8px 10px 0 18px;
    resize: none;
}

textarea::-moz-placeholder {
    color: #a5a5a5;
}

textarea::placeholder {
    color: #a5a5a5;
}


.radio-container {
    margin: 0 0 14px
}

.app {
    max-width: 946px;
    margin: 0 auto 30px;
}

.app .title {
    margin: 0 0 6px
}

.app .app-nav {
    max-width: 638px;
    margin: 10px auto 15px
}

@media (min-width: 576px) {
    .app .app-nav {
        margin: 51px auto 60px
    }
}

.app .app-nav .steps {
    width: 100%;
    max-width: 686px;
    margin: 0 auto;
    padding: 0 30px
}

@media (min-width: 576px) {
    .app .app-nav .steps {
        padding: 0
    }
}

.app .app-nav .step {
    position: relative;
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin: 4px;
    font-family: 'Proxima Nova Semibold', sans-serif;
    color: #a5a5a5;
    border: 2px solid #e7e7e7;
    border-radius: 50%
}

.app .app-nav .step.current {
    color: #00a559;
    background: linear-gradient(to bottom, #a8d21d 0, #00a559 100%);
    border: none
}

.app .app-nav .step.current:before {
    content: "";
    position: absolute;
    top: 2px;
    right: 2px;
    bottom: 2px;
    left: 2px;
    border-radius: 50%;
    background-color: #fff
}

.app .app-nav .step .number {
    position: relative
}

.app .app-nav .step .step-text {
    display: none;
    position: absolute;
    top: calc(100% + 10px);
    font-size: 14px;
    color: #141414;
    text-align: center;
    line-height: 1.1
}

@media (min-width: 576px) {
    .app .app-nav .step .step-text {
        display: block
    }
}

.app .app-nav .line {
    width: 100%;
    height: 4px;
    background-color: #e7e7e7;
    border-radius: 8px
}

.app[data-step="1"] .app-content {
    border-radius: 0 0 8px 8px
}

.app-header {
    padding: 19px 30px;
    margin: 0 -15px;
    background: linear-gradient(to bottom, #ffbe00 0, #ff7e00 100%)
}

@media (min-width: 576px) {
    .app-header {
        padding: 28px 50px;
        margin: inherit;
        border-radius: 8px 8px 0 0
    }
}

.app-header:hover {
    background: linear-gradient(to bottom, #a8d21d 0, #00a559 100%)
}

.app-header .header-text {
    margin: 0 0 25px;
    font-family: 'Proxima Nova Bold', sans-serif;
    font-size: 20px;
    line-height: 1.1;
    color: #fff;
    text-align: center
}

@media (min-width: 576px) {
    .app-header .header-text {
        margin: 0 0 25px;
        line-height: 1.2
    }
}

.app-header .header-text span {
    font-family: 'Proxima Nova Semibold', sans-serif;
    font-size: 14px
}

@media (min-width: 768px) {
    .app-header .header-text {
        margin: 0;
        text-align: left
    }
}

.app-header .btn {
    width: 100%;
    background-color: #fff;
    padding: 0 30px
}

.app-header .btn span {
    font-family: 'Proxima Nova Semibold', sans-serif;
    font-size: 14px;
    color: #141414
}

.app-header .btn img {
    margin: 0 0 0 8px
}

@media (min-width: 768px) {
    .app-header .btn {
        width: inherit
    }
}

.app-content {
    margin: 0 -15px;
    padding: 20px 30px 15px;
    border-radius: 8px;
    box-shadow: 0 0 30px 0 rgba(28, 49, 40, 0.05);
    background-color: #fff
}

@media (min-width: 576px) {
    .app-content {
        margin: inherit;
        padding: 46px 46px 15px
    }
}

@media (min-width: 576px) {
    .app-content.first-block {
        padding: 25px 46px 15px
    }
}

.app-content .title {
    margin: 0 0 15px;
    font-size: 20px
}

@media (min-width: 576px) {
    .app-content .title {
        margin: 0 0 15px
    }
}

.app-content .items-container {
    margin: 0 -15px 10px
}

.app-content .input-container, .app-content .radio-container {
    width: 100%;
    max-width: calc(100% / 1 - 30px);
    margin: 0 15px
}

@media (min-width: 576px) {
    .app-content .input-container, .app-content .radio-container {
        max-width: calc(100% / 2 - 30px)
    }
}

@media (min-width: 992px) {
    .app-content .input-container, .app-content .radio-container {
        max-width: calc(100% / 3 - 30px)
    }
}

@media (max-width: 575px) {
    .app-content .radio-container .label {
        margin: 0 20px 18px 0;
        position: relative;
        bottom: 3px
    }
}

.app-content .radio-wrap {
    display: flex;
    align-items: center
}

.app-content .radio-wrap label {
    margin: 0 20px 0 0
}

.app-content .input-wrap, .app-content .radio-wrap {
    margin: 0 0 23px
}

@media (min-width: 576px) {
    .app-content .input-wrap, .app-content .radio-wrap {
        margin: 0 0 24px
    }
}

.app-content .buttons-container {
    margin: 22px 0 45px
}

.app-content .buttons-container .btn {
    width: 100%;
    min-width: 164px
}

@media (min-width: 576px) {
    .app-content .buttons-container .btn {
        width: inherit
    }
}

@media (max-width: 323px) {
    #GosUslugi {
        padding: 0 8px
    }
}

.smsButton .btn {
    margin: 22px 0;
    font-size: 14px
}

@media (min-width: 576px) {
    .smsButton .btn {
        font-size: 14px;
        padding: 0 10px;
        width: 100%
    }
}

@media (max-width: 576px) {
    .smsButton .btn {
        width: 100%;
        padding: 0
    }

    .smsButtonMargin {
        margin: 0 0 22px !important
    }

    #resendSmsCode {
        margin-bottom: 10px
    }
}

.genderBlock {
    height: 88px
}

.genderLabel {
    margin-left: 3px
}

.genderErrorStyle {
    margin: -25px 0 0
}

@media (max-width: 576px) {
    .genderErrorStyle {
        margin: -40px 0 0
    }

    .genderBlock {
        height: 54px
    }
}

.input-container {
    margin-bottom: 5px
}

.acceptRules {
    padding-top: 5px;
    margin-top: 15px
}

@media (max-width: 576px) {
    .acceptRules {
        padding-top: 5px;
        margin-top: 0
    }
}

.title {
    margin: 0;
    font-size: 24px;
    line-height: 1.2
}

.input-validation-error {
    margin: 0 !important;
    border: 1px solid #ff7e00 !important
}

.field-validation-error {
    font-family: 'Proxima Nova Semibold', sans-serif;
    font-size: 12px;
    color: #ff7e00;
    opacity: 1
}

@media (min-width: 576px) {
    .app .app-nav {
        margin: 0 auto 60px
    }
}

.modal.show {
    padding-right: 0 !important;
}

.modal .modal-dialog {
    min-height: calc(100vh - 60px);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

@media (min-width: 576px) {
    .modal .modal-dialog {
        max-width: 510px;
    }
}

.modal .modal-content {
    background: transparent;
    border: none;
}

.modal img.close {
    top: -35px;
    right: -35px;
    max-width: 14px;
    opacity: 1;
    cursor: pointer;
}

.modal div.close {
    top: 5px;
    right: 5px;
    width: 28px;
    height: 28px;
    line-height: 28px;
    opacity: 1;
    cursor: pointer;
    color: #424242;
    font-size: 28px;
    font-weight: normal !important;
    border: solid #ff9d00 1px;
    border-radius: 50%;
    text-align: center;
    text-shadow: none;
    background-color: #fff;
    background: linear-gradient(to bottom, #ffbe00 0, #ff7e00 100%);
    /* box-shadow: #525252 3px 4px 15px -6px; */
    transform: rotate(45deg);
}

@media (min-width: 576px) {

    .modal div.close {
        top: -19px;
        right: -19px;
        width: 22px;
        height: 22px;
        line-height: 22px;
        color: #a5a5a5;
        font-size: 18px;
        border: solid #a5a5a5 1px;
        background-color: #fff;
        background-image: none;
        transition: color .5s ease-in;
    }

    .modal div.close:hover {
        color: #000;
        border-color: #000;
        opacity: 1 !important;
    }

    .modal img.close {
        max-width: inherit;
    }
}

.modal-open {
    padding-right: 0 !important;
}

@media (min-width: 576px) {
    #documents .modal-dialog {
        max-width: 526px;
    }
}

.login .form-container {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 35px;
}

@media (min-width: 576px) {
    .login .form-container {
        width: 100%;
        max-width: 334px;
        margin: 0 auto 28px;
        padding: 33px 35px 44px;
        border-radius: 8px;
        box-shadow: 0 0 30px 0 rgba(28, 49, 40, 0.05);
        background-color: #fff;
    }
}

.login .form-container a {
    font-size: 14px;
}

.login .form-container button {
    width: 100%;
    margin: 14px 0 13px;
}

@media (min-width: 576px) {
    .login .form-container button {
        max-width: 180px;
        margin: 16px 0 13px;
    }
}

@media (max-width: 575px) {
    .login .items-container {
        margin: 24px 0 0;
    }
}

@media (max-width: 575px) {
    .login .forgot-pass {
        margin: 0 0 14px;
    }
}

.login .gosuslugi {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #141414;
    font-family: 'Proxima Nova Regular', sans-serif;
    font-size: 14px;
    line-height: 1;
    text-decoration: none;
}

@media (max-width: 575px) {
    .login .gosuslugi {
        width: 100%;
        height: 44px;
        background-color: #fbfcfb;
        border: 1px solid #e7e7e7;
        border-radius: 8px;
    }
}

@media (min-width: 576px) {
    .login .gosuslugi {
        border-bottom: 1px solid #e7e7e7;
    }
}

/* Галочка */
[data-toggle="collapse"]{position: relative;font-weight: 600;cursor: pointer}
[data-toggle="collapse"] img{display:none}
[data-toggle="collapse"]::before,
[data-toggle="collapse"]::after{content: "";position: absolute;top: 50%;right: -12px;display: block;width: 6px;height: 1px;transition: all 0.3s ease-out;transform: translate(0px, -50%) rotate(45deg);background-color: #00A559}
[data-toggle="collapse"].__grey::before,
[data-toggle="collapse"].__grey::after {background-color: #858585}
[data-toggle="collapse"]::after{transform: translate(4px, -50%) rotate(-45deg)}
[data-toggle="collapse"]:not(.collapsed)::before {transform: translate(0px, -50%) rotate(-45deg)}
[data-toggle="collapse"]:not(.collapsed)::after {transform: translate(4px, -50%) rotate(45deg)}
.accept-all-field-validation-error, .accept-all-field-validation-error a {color: #ff7e00}
.accept-all-field-validation-error [data-toggle="collapse"]::before,
.accept-all-field-validation-error [data-toggle="collapse"]::after {background-color: #ff7e00}
.terms-container:before {content: "";display: block;height: 1px;width: calc(100% - 30px);background-color: #E7E7E7;margin: 25px auto;}
.terms-container .input-message {padding-left: 25px}
@media (min-width: 568px){.terms-container .input-message {padding-left: 30px}}

/*СМС кнопка*/
.smsButton button {
    margin: 22px 0;
    font-size: 14px;
}

@media (min-width: 576px) {
    .smsButton button {
        font-size: 14px;
        padding: 0 10px;
        width: 100%;
        /*margin: 22px 0;*/
    }
}

@media (max-width: 576px) {
    .smsButton button {
        width: 100%;
        padding: 0;
    }

    .smsButtonMargin {
        margin: 0 0 22px !important;
    }

    #resendSmsCode {
        margin-bottom: 10px;
    }
}

/*Пол*/
.genderBlock {
    height: 88px;
}

.genderLabel {
    margin-left: 3px;
}

.genderErrorStyle {
    margin: -25px 0 0 0;
}

@media (max-width: 576px) {
    .genderErrorStyle {
        margin: -40px 0 0 0;
    }

    .genderBlock {
        height: 54px;
    }
}

/*Элементы ввода*/
.input-container {
    margin-bottom: 5px;
}

/*Соглашение*/
.acceptRules {
    padding-top: 5px;
    margin-top: 15px;
}

@media (max-width: 576px) {
    .acceptRules {
        padding-top: 5px;
        margin-top: 0;
    }
}

/*Login form*/
#login .calculate-container {
    background-color: white;
    border-radius: 8px;
    padding: 25px;
}

@media (min-width: 576px) {
    #login .modal-dialog {
        max-width: 332px;
    }

    .login .gosuslugi {
        border-bottom: 0;
    }

    .login .form-container {
        box-shadow: none;
    }

    .login .desc {
        margin-bottom: 0 !important;
    }

    .loginButtonCancel {
        display: none;
    }
}

@media (max-width: 575px) {
    .loginButtonCancel {
        width: 30%;
        height: 44px;
        background-color: #fff;
        border: 0;
        border-radius: 8px;
        position: relative;
        bottom: 12px;
        left: 12px;
        box-shadow: 0 0 10px 0 rgb(28 49 40/10%);
        color: #aeacaa;
    }

        .loginButtonCancel:hover {
            outline: 0;
        }
}

.login .title {
    font-size: 14px;
    text-align: center;
    color: black;
    font-weight: bold;
    margin: 10px;
}

.login .desc {
    font-size: 14px;
    text-align: center;
    color: black;
    line-height: 16px;
    margin-bottom: 20px;
}
/*Login form end*/

