html, body {
    height: 100%;
}

.editor aside {
    padding-right: 0;
    box-shadow: 3px 0 50px -1px rgba(0,0,0,.1);
    z-index:10;
    background-color: #fff;
}

.editor aside section{
    padding: 0 2em;
}

.editor .logo {
    display: block;
    margin: 2em auto;
    width: 5em;
}


.editor .form-group>label{
    font-weight: 600;
}

.editor .form-control {
    background-color: #eee;
    border:none;
}

.form-control:focus {
    color: #495057;
    background-color: #eee;
    border-color: #80bdff;
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(0,123,255,.25);
}

.editor .more-options {
    background-color: rgba(0,123,255,.25);
    padding: 0.9em 2em 0.05em 2.5em;
    margin: 0 -2em 1em -3em;
}


.editor aside form {
    margin-bottom: 100px;
}
.editor aside footer {
    width: 100%;
    max-height: 95px;
    box-shadow: 0 -3px 30px 0 rgba(0,0,0,.1);
    position: fixed;
    bottom: 0;
    padding: 15px 75px 15px 5px;
    margin-left: -15px;
    /*height: 105px;*/
    z-index: 999;
    text-align: center;
    background-color: #fff;
}

.editor aside footer .btn, main .btn {
    text-transform: uppercase;
    margin: 0 auto;
    letter-spacing: 0.1em;
    display:inline-block;
    width:45%;
}

.editor aside footer p {
    font-size: 14px;
    font-style: italic;
    color: teal;
    line-height: 14px;
}

main .btn {
    display: block;
    margin-top: 16px;
}




main {
    position:fixed !important;
    top:0;
    right:0;
    bottom:0;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#cfe7fa+0,6393c1+100;Grey+Blue+3D */
    background: rgb(207,231,250); /* Old browsers */
    background: -moz-linear-gradient(-45deg, rgba(207,231,250,1) 0%, rgba(99,147,193,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(-45deg, rgba(207,231,250,1) 0%,rgba(99,147,193,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(135deg, rgba(207,231,250,1) 0%,rgba(99,147,193,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cfe7fa', endColorstr='#6393c1',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */

}


/* form */


.editor .form-check-inline img {
    width: 2em;
}

.editor .form-preferences-select {
    margin-bottom: 15px;
    max-width: 90%;
    width: 90%;
}


@media (min-width: 768px) {

    .editor aside footer {
        width: 33.3%!important;;
        padding: 15px;
    }

    .editor aside footer .btn {
        display: block;
        width: 90%;
    }

    main .btn.toggle_preview, .editor aside footer .btn.toggle_preview, main .close.toggle_preview {
        display:none;
    }
}

@media (min-width: 1200px) {

    .editor aside footer {
        width: 25% !important;;
    }
}

.overlay {
    z-index: 50;
    height: 100%;
    width: 100%;
    position: fixed; /* Stay in place */
    left: 0;
    top: 0;
    background-color: rgb(0,0,0); /* Black fallback color */
    background-color: rgba(0,0,0,.9); /* Black w/opacity */
    background-image: url('../images/startBG.jpg');
    background-size: cover;
    overflow-x: hidden; /* Disable horizontal scroll */
    transition: 0.5s; /* 0.5 second transition effect to slide in or slide down the overlay (height or width, depending on reveal) */
}

.card-container.card {
    max-width: 450px;
    padding: 40px 40px;
    margin: 30px auto 0 auto;
    top: 10%;
}


    .cart-box {
        padding: 40px 40px;
        margin: 2% auto 0 auto;
        background-color: white;
    }

.cart-qty {
    text-align: center;
}

@media (max-width: 768px) {
    .cart-box {
        margin: 0;
        padding: 0;
    }

    .cart-qty {
        text-align: left;
    }


}
@media (max-width: 768px) {
    .cart-box.container {
        max-width: 100%;
        padding: 20px 20px;
    }
}

.cart-box h1 {
    padding-bottom: 20px;
}



#start h3 {
    text-align: center;
    padding: 20px 0;
}

#start form input, #start form small, #start form select {
    margin-bottom: 10px;
}

#start form .btn {
    width: 100%;
}

#start h4 {
    width: 100%;
    text-align: center;
    border-bottom: 1px solid #000;
    line-height: 0.1em;
    margin: 40px 0 40px;
}

#start h4 span {
    background:#fff;
    padding:0 10px;
}

#start label {
    font-weight: 700;
}

#start .logo {
    margin: 0 auto;
}

#start footer, .cart-box footer {
    color: #ddd;
    font-size: 0.75em;
    text-align: center;
    margin: 20px auto -20px auto;
}
#start footer a, .cart-box footer a {
    color: #ccc;
}

/* CART */
.table>tbody>tr>td, .table>tfoot>tr>td{
    vertical-align: middle;
}
@media screen and (max-width: 600px) {
    table#cart tbody td .form-control{
        width:20%;
        display: inline !important;
    }
    .actions .btn{
        width:36%;
        margin:1.5em 0;
    }

    .actions .btn-info{
        float:left;
    }
    .actions .btn-danger{
        float:right;
    }

    table#cart thead { display: none; }
    table#cart tbody td { display: block; padding: .6rem; min-width:320px;}
    table#cart tbody tr td:first-child { background: #333; color: #fff; }
    table#cart tbody td:before {
        content: attr(data-th); font-weight: bold;
        display: inline-block; width: 8rem;
    }



    table#cart tfoot td{display:block; }
    table#cart tfoot td .btn{display:block;}

}


div.note-from-ewa {
    background-color: #f5f5f5;
    text-align: center;
    padding: 15px;
}

div.note-from-ewa p, div.note-from-ewa h4  {
    font-style: italic;
    line-height: 1.2;
}

div.note-from-ewa textarea.form-control {
    background-color: #fff;
}


div.note-from-ewa .btn {
    font-style: normal;
    margin-top: 15px;
}

#feedback_thankyou {
    margin-top:15px;
}

/* Payment Page */

#card-errors {
    color: #e25950;
}

#name-errors, #email-errors {
    color:#e25950;
    font-size:0.8em;
}

#card-button .loading {
    animation: spin 1s infinite linear;
    -webkit-animation: spin2 1s infinite linear;
}

@keyframes spin {
    from { transform: scale(1) rotate(0deg); }
    to { transform: scale(1) rotate(360deg); }
}

@-webkit-keyframes spin2 {
    from { -webkit-transform: rotate(0deg); }
    to { -webkit-transform: rotate(360deg); }
}

.saved {
    color: green;
}

.error {
    color: #e25950;
}

.editor .form-check-inline .form-check-label img {
    border-radius: 50%;
}

img.custom-pref-icon, radio.custom-pref-icon {
    margin:1px;
    padding:0;
    appearance: none;
    -webkit-appearance:none;
    -moz-appearance:none;
    background-size:contain;
    width:32px;
    height:32px;
    border-radius: 50%;
}


.custom-pref-icon-label:hover, .custom-pref-icon-label.selected {
    background-image: linear-gradient(120deg, #eaee44, #33d0ff);
    opacity: .7;
}

.form-check.form-check-inline {
    margin-right: 0;
}

.custom-pref-icon-label.form-check-label {
    line-height: 1;
    padding: 4px 4px 2px 4px;
}

.more-options:before {
    content:"";
    width: 0px;
    height: 0px;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #fff;
}

.more-options .form-group:first-of-type {
    margin-top: -1rem;
}

.custom-pref-icons {
    margin-top: 10px;
    border-radius: .25rem;
}

.form-group input::placeholder, .ed-people small, span.optional {
    color: #c6d3db;
    font-style: italic;
}

.not-paid {
    font-style:italic;
    background-color: lightyellow;
    margin-left: -20px;
    margin-top: -10px;
    padding: 10px 2px 0 20px;
}

.not-paid .fa.fa-lock, .bp-preferences .fa.fa-lock {
    margin-left:-22px;
    color:#aaa;
}

.testimonial img {
    vertical-align: middle;
    border-style: none;
    max-width: 100%;
    margin-bottom: 25px;
    border-radius: .25rem;
}

.testimonial {
    text-align: center;
}

