@charset utf-8;

@font-face {
    font-family: 'FSElliotPro';
    src: url('fonts/FSElliotPro.eot');
    src: url('fonts/FSElliotPro.eot?#iefix') format('embedded-opentype'),
         url('fonts/FSElliotPro.woff') format('woff'),
         url('fonts/FSElliotPro.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'FSElliotPro';
    src: url('fonts/FSElliotPro-Bold.eot');
    src: url('fonts/FSElliotPro-Bold.eot?#iefix') format('embedded-opentype'),
         url('fonts/FSElliotPro-Bold.woff') format('woff'),
         url('fonts/FSElliotPro-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

* {
    background: transparent;
    font-family: Verdana, Arial;
    font-size: 15px;
    margin: 0;
    outline: 0;
    padding: 0;
    vertical-align: baseline;
}

body {
    background-color: #fff;
    color: #231f20;
}

.clear {
    clear: both;
    font-size: 0;
    line-height: 0;
}

img {
    border: 0;
}

form {
    position: relative;
}

.try_again,
.go_accept,
#go_purchase,
.go_credit {
    background-color: #009FE3;
    border: 1px solid #009FE3;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    margin:0 auto;
    color: #fff;
    cursor: pointer;
    font-size: 1em;
    height: 54px;
    line-height: 45px;
    overflow: visible;
    padding: 0 50px;
    text-align: center;
    width: 216px;
    text-decoration: none;
    outline: none;
    box-sizing: border-box;
    margin-bottom: 10px;
}

.go_credit{
    color: #009FE3;
    background: none;
    padding: 0;
    text-align: center;
    line-height: 53px;
    display: inline-block;
}
.purchase_amount{
    display:none;
}
.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 #999;
    -moz-box-shadow: 0 0 2px 1px #999;
    box-shadow: 0 0 2px 1px #999;
}

.go_cancel {
    color: #fff;
    display: inline-block;
    cursor: pointer;
    font-size: 1em;
    overflow: visible;
    position: absolute;
    text-align: center;
    width: auto;
    text-decoration: none;
    outline: none;
}

.go_cancel.fatal {
    color: #fff;
    display: inline-block;
    cursor: pointer;
    overflow: visible;
    text-align: center;
    width: auto;
    text-decoration: none;
    outline: none;
    background-color: #009FE3;
    border: 1px solid #009FE3;
    padding: 0 50px;
    height: 54px;
    line-height: 52px;
    border-radius: 4px;
    position: initial;
}

.arrow_back {
    position: absolute;
    top: -281px;
    color: #105ea6;
}

.go_accept,
.try_again {
    display: inline-block;
}

.go_accept {
    float: none !important;
    top: 0px !important;
    right: 172px;
    margin-top: 86px  !important;
    padding-left: 39px  !important;
}

#main {
    background-color: #fff;
    border: none;
    -webkit-border-radius: 10px 10px 10px 10px;
    -moz-border-radius: 10px 10px 10px 10px;
    border-radius: 10px 10px 10px 10px;
    margin: 0 auto 20px;
    padding: 30px 20px 0px;
    width: 835px;
}

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

.payment_card .front_side {
    zoom: 1;
}

.payment_card .back_side {
    margin-left: 20px;
}

#header {
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    width: 875px;
}

#logo_ru {
    background: url(../img/logo.png) no-repeat;
    display: block;
    float: right;
    height: 70px;
    margin-top: 32px;
    width: 196px;
}
#logo_en {
    background: url(../img/logo_en.png) no-repeat;
    display: block;
    float: right;
    height: 70px;
    margin-top: 32px;
    width: 196px;
}

.order_desc {
    border: none;
    width: 300px;
    float:left;
    margin-top: 45px;
}

.order_desc:after,
.contact_info:after {
    display: table;
    content: "";
    clear: both;
}

#main .contact_info .left_block,
#main .contact_info .contact_email {
    float: left;
    width: 370px;
    margin: 0 0 15px 15px;
    position: relative;
}

#main .contact_info .right_block,
#main .contact_info .contact_phone {
    position: relative;
    float: left;
    width: 370px;
    margin: 0 0 15px 40px;
}

#main .contact_info .left_block label.error,
#main .contact_info .right_block label.error,
#main .contact_info .contact_email label.error,
#main .contact_info .contact_phone label.error {
    left: 302px;
    top: -15px;
    width: min-content;
}

#main .contact_info input {
    border: 1px solid #105ea6;
    background-color: #fff;
    display: inline;
    width: auto;
    padding: 4px 5px;
}

.contact_info h4 {
    font-weight: normal;
    display: inline-flex;
    padding-right: 1em;
    width: 75px;
}

.contact_info .legend,
.order_desc .legend {
    color: #003f7c;
    font-size: 1.2em;
    font-weight: bold;
    margin: 10px 15px 20px;  
}

.contact_info table,
.order_desc table {
    border-spacing: 0;
    margin: 0 auto 13px;
    width: auto;
}

.contact_info table th,
.contact_info table td,
.order_desc table th,
.order_desc table td {
    border-bottom: 1px solid #4fac25;
    color: #434343;
    font-size: 0.9em;
    padding: 4px 8px;
    text-align: left;
    width: 50%;
}

.payment_card {
    margin: 0px auto 0;
    overflow: hidden;
    position: relative;
    width: 495px;
    height: 270px;
    border: none;
    padding-bottom: 20px;
}

.order_desc table td {
    padding-left: 18px;
}

.payment_card .front_side,
.payment_card .back_side {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    height: 233px;
    position: relative;
    width: 350px;
}
.payment_card .front_side{
    background-color: #105ea6;
    z-index: 10;
}
.payment_card .back_side{
    background-color: #e4ebf3;
    left: 90px;
    top: 20px;
    position: absolute;
    z-index: 9;
}

.payment_card h4 {
    color: #fff;
    font-size: 0.9em;
    font-weight: 400;
    margin-bottom: 6px;
}

#cardccnumber{
    width:283px;
}
.holder input {
    width:283px;
    text-transform: uppercase;
}
.card_number {
    left: 35px;
    position: absolute;
    top: 22px;
}

.art {
    top: 152px;
    position: absolute;
    left: 35px;
}


.holder {
    top: 110px;
    left: 35px;
    position: absolute;
}

.decor_block_2 {
    bottom: 17px;
    left: 15px;
    position: absolute;
}

.decor_block {
    position: absolute;
    right: 15px;
    top: 110px;
    text-align: right;
}

.payment_card input {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background: #fff;
    border: none;
    height: 28px;
    padding: 4px 5px;
}

.payment_card select {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background: url(../img/select_bg.png) no-repeat;
    border: none;
    margin-right: 15px;
    height: 30px;
    width: 50px;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-left: 10px;
    padding-top: 2px;
}

.front_side .art h4 {
    margin-bottom: 0;
}

.card_number input,
.front_side .art input {
    text-align: center;
}

.front_side .art input {
    margin: 0 80px 0 0;
    vertical-align: top!important;
    width: 60px;
}

.front_side .art span{
    color:#fff;
    font-size: 0.9em;
    padding: 0px;
    margin-bottom: 5px;
    display: block;
}
.decor_block span {
    display: none;
}

.front_side .art h4 i {
    display: inline-block;
    font-style: normal;
    margin: 0 10px 0 2px;
    text-align: center;
    width: 42px;
    font-size: 0.9em;
}

*+html .front_side .art span {
    vertical-align: 0;
}

.front_side .holder span {
    display: block;
    font-size: 0.9em;
    margin: -23px 0 6px;
    color: #fff;
}

.back_side .decor_block h4 {
    margin: 0 0 0 auto;
    text-align: center;
    text-transform: uppercase;
    width: 83px;
    color:#000;
}

.back_side .decor_block input {
    margin: 0;
    width: 73px;
}


.back_side .decor_panel {
    background-color: #45464a;
    display: block;
    height: 52px;
    left: 0;
    position: absolute;
    top: 30px;
    width: 100%;
}

#loader {
    width: 800px;
}

#loader p {
    font-size: 1.2em;
    padding: 100px 0 70px;
    text-align: center;
}

#loader img {
    display: block;
    left: 0;
    margin: auto;
    position: relative;
}

#loader_error,
#loader_fail,
#loader_success {
    text-align: center;
}
#loader_fail{
    padding-top: 76px;
}
#loader_error strong,
#loader_fail strong,
#loader_success strong {
    display: block;
    font-size: 1.2em;
    font-weight: 400;
    padding-bottom: 29px;
}
.try_again{
    line-height: 52px;
    width: auto;
    margin: 0;
}
#loader_error p,
#loader_fail p,
#loader_success p {
    font-size: 1.2em;
    line-height: 30px;
    height: 30px;
}

#loader_success table {
    margin: 20px auto;
    font-size: 0.9em;
    border: 0;
    border-spacing: 0;
    width: 400px;
}

#loader_success table th {
    width: 100%;
}

#loader_success table td {
    white-space: nowrap;
}

#loader_success table th,
#loader_success table td {
    text-align: left;
    padding: 4px 15px;
}

#loader_success table tr.item td,
#loader_success table tr.item th {
    padding-top: 20px;
    border-top: 1px solid #ccc;
}

#loader_success table tr.item-end td,
#loader_success table tr.item-end th {
    padding-bottom: 20px;
}

.payment_final {
    margin: 22px auto 0;
    width: 470px;
}

.payment_final p {
    display: none;
    background: url(../img/icon-protection.png) 0 50% no-repeat;
    font-size: 0.9em;
    line-height: 16px;
    margin-top: 35px;
    padding-left: 30px;
}

.payment_final p br {
    display: none;
}

.payment_final h3 {
    float: right;
    font-size: 1.2em;
    font-weight: 400;
    margin-top: -5px;
}

.payment_final input.submit,
.payment_final input[type="submit"] {
    clear: right;
    left: 18px;
    position: absolute;
    top: -5px;
}

input.error {
    border: 1px solid #ed1b24;
}

label.error {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-shadow: 0 0 5px rgba(0,0,0,0.6), inset 0 0 20px rgba(0,0,0,0.2);
    -moz-box-shadow: 0 0 5px rgba(0,0,0,0.6), inset 0 0 20px rgba(0,0,0,0.2);
    box-shadow: 0 0 5px rgba(0,0,0,0.6);
    background: #fff;
    border: 0px solid #FF958C;
    color: #ed1b24;
    display: none;
    float: left;
    font-size: 13px;
    font-weight: bold;
    left: 304px;
    top:0px;
    padding: 10px 15px;
    z-index: 100000;
    position: absolute;
    width: 100px;
}
.holder label.error {
    top: -20px;
}
.art label.error {
    left: 80px;
    }
label.error:before { 
    content: ' '; 
    position: absolute; 
    width: 0; 
    height: 0; 
    left: -20px; 
    top: 50%; 
    border: 10px solid; 
    border-color: transparent #666 transparent transparent; 
}
label.error:after { 
    content: ' '; 
    position: absolute; 
    width: 0; 
    height: 0; 
    left: -15px; 
    top: 53%; 
    border: 8px solid; 
    border-color: transparent #fff transparent transparent; 
}
.back_side label.error{
    left: 0;
    top: 65px;
    width: auto; 
    text-align: left;
    z-index: 999;
}
.back_side label.error:before { 
    content: ' '; 
    position: absolute; 
    width: 0; 
    height: 0; 
    left: 50px; 
    top: -20px; 
    border: 10px solid; 
    border-color:  transparent transparent #666 transparent ; 
}
.back_side label.error:after { 
    content: ' '; 
    position: absolute; 
    width: 0; 
    height: 0; 
    left: 52px; 
    top: -15px; 
    border: 8px solid; 
    border-color:  transparent transparent #fff transparent; 
}
#pcidssinfo,
.hidden,
.payment_final .purchase_amount,
#go_reject {
    display: none;
}

.fade {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    filter: alpha(opacity=50);
    z-index: 9998;
}

.js-enable-warning {
    border: 1px solid #ccc;
    border-radius: 15px;
    background: #fefefe;
    padding: 15px 20px;
    width: 640px;
    height: 170px;
    position: fixed;
    left: 50%;
    top: 50%;
    margin: -85px 0 0 -320px;
    z-index: 9999;
}

.js-enable-warning-text {
    vertical-align: middle;
    display: table;
    margin: 0px auto;
    height: 170px;
}

.js-enable-warning-text h1 {
    margin: 0;
    padding: 0 10px 0 0;
    font: bold 55px sans-serif;
    color: #000;
    text-transform: uppercase;
    border: 0;
    display: table-cell;
    vertical-align: middle;
}

.js-enable-warning-text p {
    margin: 0;
    padding: 0;
    font: 13px/20px Tahoma;
    color: #333;
    display: table-cell;
    vertical-align: middle;
    text-shadow: 0 1px #666;
}

.payment_card .card_number input.thin {
    width: 51px;
}




.js-enable-warning.block-error {
    font-size: 5em;
    height: auto;
    margin-top: -115px;
}

.block-error .js-enable-warning-text:before {
    background-color: #92000A;
    border-radius: 1em;
    color: #FFFFFF;
    content: "!";
    float: left;
    display: inline-block;
    font-size: 1em;
    height: 1em;
    line-height: 1em;
    text-align: center;
    width: 1em;
    font-family: serif;
}

.block-error .js-enable-warning-text h1 {
    font-size: 0.9em;
    font-family: serif;
    display: block;
    padding-left: 1.3em;
}

.block-error .js-enable-warning-text h2 {
    font-size: 0.3em;
    color: #333;
    margin: 0.3em 0;
}

.block-error .js-enable-warning-text p {
    display: block;
    color: #666;
    font-size: 0.2em;
    margin-bottom: 0.5em;
    text-shadow: none;
}

.front_side > .preseted-info {
    left: 15px;
    position: absolute;
    top: 90px;
}

.preseted-info {
    font-size: 18px;
    color: #fff;
    text-align: center;
    width: 360px;
}

.pay-timer {
    margin: 1em 0;
    text-align: right;
    font-weight: bold;
}

.one-button {
    float: none !important;
}

#loader_fail,
#loader_error,
#loader_success {
    display: none;
}

.shop_name{
    font-size: 30px;
    padding-top: 15px;
}

.order_number{
    color: #898989;
    font-size: 13px;
}
.order_pay{
    font-size: 28px;
    margin-top: 20px;
}
.cost {
    font-size: 28px;
    font-weight: bold;
}
.footer_block{
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    width: 780px;
    border-top: 3px solid #c1c1c1;
    margin-top: 20px;
}
.secure_block{
    color: #6e6e6e;
    display: inline-flex;
    margin-top: 50px;
    text-align: justify;
    margin-right: 55px;
}
.copyright_block{
    font-style: italic;
    margin-top: 60px;
    color: #b1b1b1;
    width: 780px;
}
#footer{
    margin: 0 auto;
    width: 835px;
}
#loader_error{
    margin-top: 150px;
    width: 800px;
}
.go_back{
    top: -280px;
    color: #105ea6;
    left: 0px;
}
.go_cancel{
    color: #105ea6;
    left: 0px;
    padding-left: 20px;
}
#card_types {
    display: grid;
    grid-template-columns: repeat(5, auto);
}
#card_type{
    background-position: center center;
    margin-left: 10px;
    margin-top: 10px;
}

.footer_logo_mastercard{
    width:120px;
    height:62px;
    background: url('../../../img/card_types/mc_id.svg') no-repeat;
    background-position: center;
    background-size: contain;
    float:left;
}
.footer_logo_visa{
    margin-top:10px;
    width:80px;
    height:40px;
    background: url('../../../img/card_types/vs.jpg') no-repeat;
    background-position: center;
    background-size: contain;
    float:left;
}
.footer_logo_mir{
    margin-top:10px;
    width:80px;
    height:40px;
    background: url(../img/mir.png) no-repeat;
    background-position: center;
    background-size: contain;
    margin-right: 15px;
    float:left;
}

.visa{
    background: url(../img/card_types/visa.png) no-repeat;
    background-size: contain;
    height: 40px;
    width: 63px;
}
.dinersclub{
    background: url(../img/card_types/diners.png) transparent no-repeat;
    background-size: contain;
    height: 40px;
    width: 54px;
}

.maestro{
    background: url(../img/card_types/maestro.png) #fff no-repeat;
    background-size: contain;
    
    height: 40px;
    width: 63px;
}

.mastercard{
    background: url(../img/card_types/mc.png) #fff no-repeat;
    background-size: contain;
    height: 40px;
    width: 63px;
}

.jcb{
    background: url(../img/card_types/jcb.png) no-repeat;
    background-size: contain;
    height: 40px;
    width: 52px;
}

.velectron{
    background: url(../img/card_types/velectron.png) no-repeat;
    background-size: contain;
    height: 40px;
    width: 63px;
}

.mir{
    background: url(../img/card_types/mir.png) #fff no-repeat;
    background-size: contain;
    height: 30px;
    width: 120px;
}
.amex{
    background: url(../img/card_types/amex.svg) #fff no-repeat;
    background-size: contain;
    height: 40px;
    width: 63px;
    background-position: center;
}
.cup{
    background: url(../img/card_types/up.png) #fff no-repeat;
    background-size: contain;
    height: 40px;
    width: 63px;
    background-position: center;
}

.hint_label {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-shadow: 0 0 5px rgba(0,0,0,0.6);
    -moz-box-shadow: 0 0 5px rgba(0,0,0,0.6);
    box-shadow: 0 0 5px rgba(0,0,0,0.6);
    background: #ffee3e;
    border: 0px solid #ffee3e;
    color: #000;
    float: left;
    font: 14px;
    font-weight: bold;
    left: 304px;
    top:-17px;
    padding: 10px 15px;
    z-index: 100000;
    position: absolute;
    width: 128px;
}

#loader_fail p {
    text-align: justify;
    display: inline-block;
    margin-top: 30px;
}

.error-back__link .go_cancel{
    position: initial;
    width: auto;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    padding: 0 50px;
    height: 54px;
    background-color: #009FE3;
    border: 1px solid #009FE3;
    color: #fff;
}

.result_btns {
    margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}


.credit_button {
    width: 100%;
    margin-top: 20px;
}

.credit_button .go_credit {
    display: inline-block;
}