div.payment {
    height: 100%;
    margin: 0;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background: #632d8e; /* Old browsers */
    /* IE9 SVG, needs conditional override of 'filter' to 'none' */
    background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzYzMmQ4ZSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM4NTMzOTkiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
    background: -moz-linear-gradient(top, #632d8e 0%, #853399 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#632d8e), color-stop(100%,#853399)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #632d8e 0%,#853399 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #632d8e 0%,#853399 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, #632d8e 0%,#853399 100%); /* IE10+ */
    background: linear-gradient(to bottom, #632d8e 0%,#853399 100%)fixed; /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#632d8e', endColorstr='#853399',GradientType=0 ); /* IE6-8 */
}

#payment {
    height: 100%;
    margin: 0;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: top;
}

.thin {
    font-weight: 200 !important;
}

.vat {
    font-size: 18px;
}
/* ---- Card Selection ---- */
#payment {
    padding-top: 40px;
    padding-bottom: 40px;
}

.credit-save {
    display: block;
    position: relative;
    margin: 15px auto;
    padding: 20px;
    border-radius: 6px;
    background-color: #632e8f;
    z-index: 1;
}

    .credit-save h1 {
        font-size: 24px;
        font-weight: 200;
        margin: 0 !important;
    }

    .credit-save h2 {
        font-size: 62px !important;
        font-weight: 600 !important;
        margin-top: 10px !important;
    }

    .credit-save h3 {
        font-size: 20px !important;
        font-weight: 600 !important;
        margin-top: 10px !important;
        text-transform: uppercase;
    }

    .credit-save h5 {
        font-size: 14px !important;
        font-weight: 200 !important;
        margin-top: 10px !important;
    }

.card-select {
    margin-bottom: 40px;
    height: 100%;
}

    .card-select h2 {
        font-size: 18px;
        font-weight: 600;
    }

.creditcard h3 {
    color: #FFFFFF;
}

.card-select .wrap {
    margin: 10px auto;
    padding: 10px;
    border: none;
    background: #632e8f;
    border-radius: 4px;
    min-height: 40px;
}

.wrap h5 {
    font-weight: 300;
    padding-top: 4px;
}

ul.cards {
    padding: 0 !important;
}

ul.inputs {
    padding: 0 !important;
}

.card-select a {
    text-decoration: none;
}

    .card-select a img {
        width: 15%;
    }

/* ---- Cards ---- */
.cards {
    list-style: none;
}

    .cards > li {
        display: none;
    }

        .cards > li.active {
            display: block;
        }

/* ---- Credit Card ---- */
.credit-card {
    display: block;
    position: relative;
    margin: 15px auto;
    padding: 20px;
    overflow: hidden;
    border-radius: 6px;
    border: #FFF 1px solid;
    z-index: 1;
}

    .credit-card .inputs {
        list-style: none;
        margin-top: 20px;
    }

        .credit-card .inputs li {
            margin-bottom: 20px;
        }

            .credit-card .inputs li.last {
                margin-bottom: 10px;
            }

            .credit-card .inputs li.expire {
                float: left;
                width: 70%;
                margin-right: 5%;
            }

                .credit-card .inputs li.expire input, .credit-card .inputs li.expire select {
                    float: left;
                    width: 35%;
                }

                    .credit-card .inputs li.expire input.month, .credit-card .inputs li.expire select.month {
                        width: 60%;
                        margin-right: 5%;
                    }

            .credit-card .inputs li.cvc-code {
                float: left;
                width: 25%;
            }

                .credit-card .inputs li.cvc-code input, .credit-card .inputs li.cvc-code select {
                    width: 100%;
                }

    .credit-card .watermark {
        position: absolute;
        z-index: 10;
        z-index: -1;
    }

    .credit-card form {
        position: relative;
        z-index: 50;
    }

    .credit-card .logo {
        position: absolute;
        top: 15px;
        right: 20px;
        text-transform: uppercase;
        font-weight: bold;
    }

.ccoptions {
    width: 100%;
    max-width: 380px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
}

.Center-Block {
    margin: 0 auto;
    position: relative;
}

.expireSpace {
    margin-bottom: 0;
}

@media screen and (max-width:768px) {
    .expireSpace {
        margin-bottom: 20px;
    }
}

/* ---- Visa ---- */
.visa {
    color: #fff;
}

    .visa .logo {
        color: rgba(255,255,255,0.9);
        font-size: 2em;
        font-style: italic;
    }

        .visa .logo:after {
            content: ' ';
            position: absolute;
            left: 0px;
            top: 5px;
            width: 0;
            height: 0;
            border-top: 10px solid orange;
            border-left: 10px solid transparent;
        }

    .visa .watermark {
        bottom: -100px;
        left: -50px;
        color: rgba(255,255,255,0.06);
        font-size: 20em;
        font-weight: bold;
        font-style: italic;
        z-index: -1;
    }

/* ---- Paypal ---- */
.paypal {
    color: #fff;
    padding: 20px;
}

    .paypal label {
        color: rgba(255,255,255,0.7);
    }

    .paypal .logo {
        top: 18px;
        color: #00457C;
        font-size: 1.6em;
    }

        .paypal .logo span {
            display: inline-block;
            color: #0079C1;
        }

    .paypal .watermark {
        bottom: -100px;
        left: -50px;
        color: rgba(255,255,255,0.06);
        font-size: 20em;
        font-weight: bold;
        font-style: italic;
        z-index: -1;
    }

.ppoptions {
    width: 100%;
    max-width: 95px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
}

/* ---- Forms ---- */
label {
    display: block;
    margin-bottom: 8px;
    color: rgba(255,255,255,0.6);
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 300;
}

input, textarea, select {
    display: block;
    padding: 8px 10px;
    color: #999;
    font-size: 18px;
    font-weight: 600;
    border: none;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
}

select {
    height: 2.25em;
    padding: 0 4px 0 10px;
}

    input.full, textarea.full, select.full {
        width: 100%;
    }

input.error, textarea.error, select.error {
    background-color:#f3684b;
    color: #FFF;
}


/* ---- bg-colours ---- */
.gr-creditcard {
    background: none;
}

.gr-paypal {
    background: none;
}

.gr-input {
    background: #FFF;
}

.card[data-type="visa"] input::-webkit-input-placeholder, .card[data-type="mastercard"] input::-webkit-input-placeholder {
    color: #DDD;
}

.card[data-type="visa"] input::-moz-placeholder, .card[data-type="mastercard"] input::-moz-placeholder {
    color: #DDD;
}

.card[data-type="visa"] input:-ms-placeholder, .card[data-type="mastercard"] input:-ms-placeholder {
    color: #DDD;
}

.card[data-type="visa"] .company {
    color: rgba(255,255,255,0.9);
    font-style: italic;
    text-shadow: 0px 0px 3px rgba(17,123,173,0.9);
}

.card[data-type="visa"] .side {
    background: #1db1cf;
}

.card[data-type="mastercard"] .side {
    background: #4d86ce;
}

.card[data-type="mastercard"] .company div {
    float: left;
    width: 15px;
    height: 15px;
    border-radius: 10px;
    background: rgba(239,209,57,0.8);
}

    .card[data-type="mastercard"] .company div:first-child {
        background: rgba(223,40,40,0.8);
        margin-right: -5px;
    }

/* ----  Selectors ---- */

.switch {
    position: relative;
    margin: 10px auto 20px;
    height: 40px;
    width: 100%;
    background: rgba(0, 0, 0, 0.25);
    border-radius: 6px;
    -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.1);
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.1);
}

.switch-label {
    position: relative;
    z-index: 2;
    float: left;
    width: 50%;
    line-height: 40px;
    font-size: 14px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.65);
    text-align: center;
    cursor: pointer;
}

    .switch-label:active {
        font-weight: 600;
    }

.switch-label-off {
    padding-left: 2px;
}

.switch-label-on {
    padding-right: 2px;
}

/*
 * Note: using adjacent or general sibling selectors combined with
 *       pseudo classes doesn't work in Safari 5.0 and Chrome 12.
 *       See this article for more info and a potential fix:
 *       //css-tricks.com/webkit-sibling-bug/
 */
.switch-input {
    display: none;
}

    .switch-input:checked + .switch-label {
        font-weight: 600;
        color: rgba(0, 0, 0, 0.5);
        -webkit-transition: 0.15s ease-out;
        -moz-transition: 0.15s ease-out;
        -o-transition: 0.15s ease-out;
        transition: 0.15s ease-out;
    }

    .switch-input:checked + .switch-label-on ~ .switch-selection {
        left: 50%;
        /* Note: left: 50% doesn't transition in WebKit */
    }

.switch-selection {
    display: block;
    position: absolute;
    z-index: 1;
    top: 2px;
    left: 2px;
    width: 50%;
    height: 36px;
    background: #65bd63;
    border-radius: 4px;
    background-image: -webkit-linear-gradient(top, #9dd993, #65bd63);
    background-image: -moz-linear-gradient(top, #9dd993, #65bd63);
    background-image: -o-linear-gradient(top, #9dd993, #65bd63);
    background-image: linear-gradient(to bottom, #9dd993, #65bd63);
    -webkit-box-shadow: inset 0 1px rgba(255, 255, 255, 0.5), 0 0 2px rgba(0, 0, 0, 0.2);
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.5), 0 0 2px rgba(0, 0, 0, 0.2);
    -webkit-transition: left 0.15s ease-out;
    -moz-transition: left 0.15s ease-out;
    -o-transition: left 0.15s ease-out;
    transition: left 0.15s ease-out;
}

.switch-blue .switch-selection {
    background: #00aaaf; /* Old browsers */
    background: -moz-linear-gradient(top, #00aaaf 0%, #33babc 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#00aaaf), color-stop(100%,#33babc)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #00aaaf 0%,#33babc 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #00aaaf 0%,#33babc 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, #00aaaf 0%,#33babc 100%); /* IE10+ */
    background: linear-gradient(to bottom, #00aaaf 0%,#33babc 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00aaaf', endColorstr='#33babc',GradientType=0 ); /* IE6-9 */
}

.switch-yellow .switch-selection {
    background: #f4cc5d; /* Old browsers */
    background: -moz-linear-gradient(top, #f4cc5d 0%, #f6d372 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f4cc5d), color-stop(100%,#f6d372)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #f4cc5d 0%,#f6d372 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #f4cc5d 0%,#f6d372 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, #f4cc5d 0%,#f6d372 100%); /* IE10+ */
    background: linear-gradient(to bottom, #f4cc5d 0%,#f6d372 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4cc5d', endColorstr='#f6d372',GradientType=0 ); /* IE6-9 */
}

.PurchaseError, .PurchaseError p {
    display: block;
    color: rgba(255,255,255,0.8);
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 400;
    padding: 15px 20px;
    background-color: #c0392b;
    border: rgba(255,255,255,0.8) 1px solid;

    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    -o-border-radius: 6px;
    border-radius: 6px;
}

    .PurchaseError p {
        padding: 0;
        margin: 0;
        border: transparent 0px solid;
    }

    .PurchaseError span {
        display: none;
    }
