* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

a {
    color: #003f7c;
}

body {
    background-color: #fff;
}

#main {
    border: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    margin: 0;
    padding: 0 0;
}

.payment_final,
#main,
#header {
    width: 100%;
}

#logo_ru,
#logo_en {
    float: none;
    margin: 0 auto;
}

#header {
    height: 50px;
    margin-top: 16px;
}

#main-cont {
    margin-top: 30px;
}

.payment_card h4,
.decor_block,
.front_side .holder span,
.front_side .art span,
.decor_block span {
    line-height: 1.1em;
    margin: 0 0 0.3em;
    color:#fff;
}

.front_side .art h4 i,
.back_side .decor_block span {
    font-size: 0.9em;
    line-height: 0.9em;
}

.order_desc,
.contact_info {
    border: 0;
    width: 95%;
}

.contact_info {
    margin-top: 20px;
    text-align: center;
}

#main .contact_info .contact_phone,
#main .contact_info .contact_email {
    width: 100%;
    margin-left: 15px;
}

#main .contact_info .contact_phone {
    margin-top: 10px;
}

#main .contact_info .contact_email label.error, 
#main .contact_info .contact_phone label.error {
    padding: 0px;
    box-shadow: none;
    left: auto;
    top: 30px;
    font-size: 11px;
    width: auto;
    margin-left: -198px;
}

.contact_info label.error:before,
.contact_info label.error:after {
    display: none;
}

.order_desc .legend,
.contact_info .legend {
    text-align: center;
}

.payment_card {
    width: 99%;
    height: 370px;
    border-radius: 10px;
    background-color: #105ea6;
    -webkit-box-shadow: 5px 5px 10px 10px #dee5ef;
    -moz-box-shadow: 5px 5px 10px 10px #dee5ef;
    box-shadow: 5px 5px 10px 10px #dee5ef;
    padding-left: 13px;
    padding-right: 13px;
}

.payment_card .back_side {
    position: relative;
    width: 100px;
    padding: 0;
    background: none;
    margin: 0;
    left: 0px;
    top: 25px;
    z-index: 100;
}

.payment_card .front_side {
    padding: 0;
    background: none;
    margin: 0;
    width: 100%;
}

#ccholder {
    width: 100%;
}

#cardccnumber {
    width: 100%;
}

.add_img {
    display: none;
}

.front_side > .preseted-info,
.holder,
.decor_block,
.decor_block_2,
.art,
.card_number {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    text-align: left;
    clear: both;
    margin-left: 7px;
    margin-right: 7px;
}

.front_side > .preseted-info {
    width: 90%;
    margin: 0 auto 1em;
    font-size: 1.1em;
}

.payment_card input,
.payment_card .card_number input.thin,
.back_side .decor_block input,
.front_side .art input {
    font-size: 1.4em;
    height: 1.6em;
    width: 90px;
    margin-right: 0em;
    margin-bottom: 0.3em;
}
.holder input {
    width: 100%;
}
.payment_card input{
    border:1px solid #e1e7f0;
}
.payment_card select{
    border:1px solid #e1e7f0;
    height: 38px;
    width:58px;
}
.payment_card input.big_inp {
    text-align: center;
    width: 100%;
}

.front_side .art span,
.decor_block span {
    display: block;
}

.card_number h4 {
    margin-bottom: -0.3em;
}

.card_number input {
    margin-top: 0.5em;
    border:1px solid #e1e7f0;
}

.holder,
.decor_block,
.card_number,
.front_side .art {
    margin-bottom: 2em;
}

.front_side .art h4 {
    left: 125px;
    margin-bottom: 0;
    top: 0.5em;
    position: absolute;
    display: none;
}

.front_side .art h4 i {
    margin: 0 0 0.2em 0;
    text-align: left;
    width: auto;
}

.back_side .decor_block h4 {
    margin: 0 0 0.3em;
    text-align: left;
    color: #fff;
}

.back_side .decor_block span {
    position: absolute;
    left: 90px;
    top: 0.5em;
    display: none;
}

.decor_block_2 {
    margin-top: 1em;
}

.payment_final {
    text-align: center;
}

.payment_final p {
    text-align: left;
    font-size: 1em;
    line-height: 1.2em;
}

.go_cancel,
.try_again,
#go_purchase {
    margin-bottom: 10px;
}

.go_credit {
    position: initial;
    width: 100%;
    text-align: center;
    color: #105ea6;
    margin-bottom: 10px;
}

.go_cancel:hover,
.try_again:hover,
.go_accept:hover,
input.submit:hover,
input[type="submit"]:hover,
#go_purchase:hover,
.go_credit:hover {
    -webkit-box-shadow: 0 0 2px 1px #a0c018;
    -moz-box-shadow: 0 0 2px 1px #a0c018;
    box-shadow: 0 0 2px 1px #a0c018;
}
.go_accept{
    margin-top: 20px !important;
    position: relative !important;
    left: auto;
    right: auto;
}

.go_cancel {
    position: initial;
    width: 100%;
    border: 1px solid #009FE3;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    height: 54px;
    line-height: 53px;
    margin-bottom: 10px;
}

.back_side label.error,
.holder label.error {
    top: 53px;
    left: 0px;
    width: max-content;
    padding: 5px;
    font-size: 11px;
    box-shadow: none;
}

.card_number label.error,
.art label.error {
    left: 0px;
    top: 55px;
    width: max-content;
    padding: 5px;
    font-size: 11px;
    box-shadow: none;
}
.payment_card label.error:before,
.payment_card label.error:after {
    display: none;
}

.art {
    margin-bottom: 0;
}

#secureinfo,
.back_side .decor_panel,
.decor_block_2 {
    display: none;
}

#loader_error,
#loader_fail,
#loader_success {
    padding: 0 20px;
    padding-top: 50px;
    width: auto;
}

#loader_success table {
    width: 100%;
}

.card_number {
    margin-top: 1em;
}

.decor_block {
    margin-bottom: 1em;
}


.order_desc .legend {
    display: none;
}

#go_purchase {
    width: 100%;
    position: initial;
    margin-bottom: 10px;
}
#footer{
    width: 99%;
}
.footer_block{
    width: 100%;
    display: flex;
    flex-direction: column-reverse;
    height: auto;
}
.cards{
    width:98%;
}
.footer_logo_visa{
    width: 25%;
}
.footer_logo_mir{
    width: 25%;
}
.fib{
    width:100%;
    display: flex;
    margin-left: 15px;
}
input.error {
    border: 1px solid #ed1b24;
}

.copyright_block,
.secure_block,
#loader,
#loader_fail,
#loader_error,
#loader_success {
    display: none;
}
.order_desc{
    margin-top:10px;
    margin-bottom: 20px;
}
.order_pay{
    margin-top: 25px;
    margin-left: 10px;
}
.shop_name{
    margin-left: 10px;
}
.order_number{
    margin-left: 10px;
}

.hint_label {
    left: 0px;
    padding: 0px;
    box-shadow: none;
    font-size: 11px;
    width: 100%;
    top: 30px;
    background-color: #fff;
    color: #fec223;
}

#buttons_block {
    position: initial;
    margin-top: 10px;
}

#loader {
    width: 95%;
}

.copyright_block {
    width: auto;
}

.result_btns {
    flex-direction: column;
}

.error-back__link .go_cancel {
    width: 100%;
}

.credit_button {
    margin-top: 0;
}

.arrow_back {
    display: none;
}

@media (max-width: 440px) {
    #card_types{
        display: initial;
    }
    #card_type {
        display: inline-block;
    }
}