.payment h1 {
    font-size: 2rem;
    margin-bottom: 1rem;
}

.payment h2 {
    font-size: 1.75rem;
}

.payment h3 {
    font-size: 1.4rem;
}

.payment body {
    font-size: 1rem;
}

footer {
    font-size: 0.85rem;
}

button:hover {
    -webkit-transform: translateY(-1px);
    background-color: #43458b;
    box-shadow: 0 7px 14px rgba(50, 50, 93, 0.1), 0 3px 6px rgba(0, 0, 0, 0.08);
    -moz-transform: translateY(-1px);
      -o-transform: translateY(-1px);
         transform: translateY(-1px);
}

.button {
    display: inline-block;
}

.error-text {
    color: #ff0000;
}

.error-box {
    background: rgb(251, 251, 251);
    background: rgba(251, 251, 251, 0.5) !important;
    border: 1px solid #000;
    margin: 30px auto;
    max-width: 90%;
    padding: 15px;
}

.error-table {
    background: rgb(251, 251, 251);
    background: rgba(251, 251, 251, 0.5) !important;
    border: 1px solid #b0b0b0;
    display: table;
    table-layout: fixed;
    text-align: center;
    width: 100%;
}

.error-table .row {
    display: table-row;
}

.error-table .row:nth-child(2n) {
    background-color: rgb(185, 185, 185);
    background-color: rgba(185, 185, 185, 0.5);
}

.error-table .row:nth-child(2n+1) {
    background-color: rgb(185, 185, 185);
    background-color: rgba(255, 255, 255, 0.5);
}

.error-table .row > div {
    display: table-cell;
    min-width: 100px;
    padding: 5px;
    vertical-align: middle;
}

.error-table .row .left-cell {
    border-right: 1px solid #b0b0b0;
    width: 25%;
}

.error-table .row .right-cell {
    min-width: 75%;
}

.payment.container {
    background: #fff !important;
    padding-top: 50px;
}

.payment.container .form_content,
.payment.container .payment_content {
    background: #fff !important;
    margin: 0 auto;
    max-width: 1100px;
    padding-bottom: 2em;
}

.error-image,
.success-image {
    display: block;
    margin: 20px auto;
    max-height: 125px;
}

.next-text {
    color: #008000;
}

.logo-container {
    -webkit-align-items: center;
    -webkit-box-align: center;
    -webkit-box-pack: space-evenly;
    -webkit-flex-wrap: wrap;
    -webkit-justify-content: space-evenly;
    -moz-box-align: center;
         align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: flex;
    flex-wrap: wrap;
    -moz-box-pack: space-evenly;
         justify-content: space-evenly;
    justify-items: stretch;
    margin: 0 auto;
    padding: 1em 0 3em;
    max-width: 900px;
    text-align: center;
}

.logo {
    min-width: 150px;
}

.logo > img {
    max-height: 150px;
    max-width: 300px;
}

body div.wrapper div.wrapper_inner div.content {
    min-height: 700px !important;
}

.payment-title {
    padding-bottom: 1rem;
    text-align: center;
}

.center {
    text-align: center;
}

@media (min-width: 360px) {
    html {
        font-size: -moz-calc(1rem + ((1vw - 3.6px) * 0.2564));
        font-size: calc(1rem + ((1vw - 3.6px) * 0.2564));
    }
}

@media (min-width: 1920px) {
    html {
        font-size: 20px !important;
    }
}
