﻿.wizard > .content {
    border: 0px;
}

#steps {
    display: table;
    margin: 0 auto;
    width: auto;
    box-sizing: unset !important;
    position: relative;
    padding-bottom: 15px;

    margin-top: 4em;
    margin-bottom: 1em;
}

.step {
    width: 30px;
    height: 30px;
    background-color: white;
    display: inline-block;
    border: 4px solid;
    border-color: transparent;
    border-radius: 50%;
    color: #cdd0da;
    font-weight: 600;
    text-align: center;
    line-height: 25px;
}

.step.address-validation {
    border: 4px solid #d4d4d4;
}

.step.address-validation::before {
    color: #6e6e6e;
}


.step:first-child {
    line-height: 40px;
}

.step:nth-child(n+2) {
    margin: 0 0 0 100px;
    transform: translate(0, -4px);
}

.step:nth-child(n+2):before {
    width: 75px;
    height: 3px;
    display: block;
    background-color: white;
    transform: translate(-95px, 15px);
    content: '';
}

.step.address-validation:nth-child(n+2)::before {
    background-color: #d4d4d4;
}

.step:after {
    width: 150px;
    display: block;
    transform: translate(-55px, 3px);
    color: #ffffff;
    content: attr(data-desc);
    font-weight: bold;
    font-size: 15px;
    margin-top: 10px;
}

.step.address-validation:after, .step.active.address-validation:after {
    color: #1e8793;
}

.step:first-child:after {
    transform: translate(-55px, -1px);
}

.step.active {
    border-color: #dadcde;
    color: #043b5b;
    font-weight: bold;
}

.step.active:before {
    background: linear-gradient(to right, #043b5b 0%, #a2abb2 100%);
}

.step.active:after {
    color: #ffffff;
}

.step.done {
    background-color: #043b5b;
    border-color: #043b5b;
    color: white;
}

.step.done:before {
    background-color: #043b5b;
}


@media (max-width: 479px) {

    .step {
        width: 40px;
        height: 40px;
        line-height: 31px;
    }

    .step:nth-child(n+2) {
        margin-left: 24px !important;
    }

    /*.step:first-child {
line-height: 32px;
}*/
    .step:nth-child(n+2):before {
        transform: translate(-70px, 21px);
        width: 18px !important;
    }
}

@media (min-width: 361px) {
    .steps {

    }

    .step {
        width: 40px;
        height: 40px;
        line-height: 31px;
    }

    .step:first-child {
        line-height: 40px;
    }

    .step:nth-child(n+2):before {
        transform: translate(-95px, 21px);
    }
}

@media (min-width: 361px) and (max-width: 479px) {
    .step:nth-child(n+2):before {

        width: 0px !important;
    }
}

@media (min-width: 412px) {
    .step:first-child {
        line-height: 40px;
    }
}

@media (min-width: 480px) {
    .wrapper-page-payment {
        padding-left: 10%;
        padding-right: 10%;
    }
}

@media (min-width: 768px) {
    .wrapper-page-payment {
        /*padding-left: 25%;
        padding-right: 25%;*/
    }

    .steps {
        margin-top: 120px !important;
    }

    .step:first-child {
        line-height: 35px;
    }
}

ul[role=menu] li:first-child {
    margin-left: -5px;
}


/*Rating*/
@import url(//netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.css);

fieldset, label {
    margin: 0;
    padding: 0;
}

body {
    margin: 20px;
}

h1 {
    font-size: 1.5em;
    margin: 10px;
}

/****** Style Star Rating Widget *****/

.rating {
    border: none;
    float: left;
    margin-top: 15px;
}

.rating > input {
    display: none !important;
}

.rating > label:before {
    margin: 5px;
    font-size: 1.25em;
    font-family: FontAwesome;
    display: inline-block;
    content: "\f005";
}

.rating > .half:before {
    content: "\f089";
    position: absolute;
}

.rating > label {
    color: #ddd;
    float: right;
}

/***** CSS Magic to Highlight Stars on Hover *****/

.rating > input:checked ~ label, /* show gold star when clicked */
.rating:not(:checked) > label:hover, /* hover current star */
.rating:not(:checked) > label:hover ~ label {
    color: #FFD700;
}

/* hover previous stars in list */

.rating > input:checked + label:hover, /* hover current star when changing rating */
.rating > input:checked ~ label:hover,
.rating > label:hover ~ input:checked ~ label, /* lighten current selection */
.rating > input:checked ~ label:hover ~ label {
    color: #FFED85;
}

fieldset.rating label {
    cursor: pointer
}

/*Check box Default email*/
.checkbox-custom input#HasDefaultEmail1[type="checkbox"]:checked + label::before {
    background-color: #329e60;
    border-color: #31945e;
}

.parsley-errors-list.filled {
    display: inline-block !important;
}

/*Payment Method*/
.flex {
    display: flex;
    flex-direction: row wrap;
    align-items: center;
}

.flex.justify-space-between {
    justify-content: space-between;
}

.flex.justify-space-around {
    justify-content: space-around;
}

.card-body{
    padding: 0 1.25em;
}

.card .card-body .payment-type,
.card .card-body .payment-info {
    margin-bottom: 25px;
}

.card .card-body .payment-type h4 {
    margin: 0;
}

.card .card-body .payment-type .types {
    margin: 25px 0;
}

.card .card-body .payment-type .types .type {
    position: relative;
    background: #f2f4f7;
    border: 2px solid #e8ebed;
    padding: 5px;
    box-sizing: border-box;
    border-radius: 6px;
    cursor: pointer;
    text-align: center;
    transition: all 0.5s ease;
    margin-left: 25px;
}

.card .card-body .payment-type .types .type:hover {
    border-color: #28333b;
}

.card .card-body .payment-type .types .type:hover .logo,
.card .card-body .payment-type .types .type:hover p {
    color: #28333b;
}

.card .card-body .payment-type .types .type.selected {
    border-color: #2b3d51;
    background: rgba(64, 179, 255, 0.1);
}

.card .card-body .payment-type .types .type.selected .logo {
    color: #40b3ff;
}

.card .card-body .payment-type .types .type.selected p {
    color: #28333b;
}

.card .card-body .payment-type .types .type.selected::after {
    content: '\f00c';
    font-family: 'FontAwesome';
    font-weight: 900;
    position: absolute;
    height: 40px;
    width: 40px;
    top: -21px;
    right: -21px;
    background: #fff;
    border: 2px solid #2b3d51;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.card .card-body .payment-type .types .type .logo,
.card .card-body .payment-type .types .type p {
    transition: all 0.5s ease;
}

.card .card-body .payment-type .types .type .logo {
    font-size: 20px;
    color: #8a959c;
}

.card .card-body .payment-type .types .type p {
    margin-bottom: 0;
    font-size: 10px;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.5px;
    color: #8a959c;
}

.card .card-body .payment-info .column {
    width: calc(50% - 25px);
}

.card .card-body .payment-info .title {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.card .card-body .payment-info .title .num {
    height: 24px;
    width: 24px;
    border-radius: 50%;
    border: 2px solid #40b3ff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin-right: 12px;
    font-size: 12px;
}

.alert{
    margin-bottom: 0;    
}

.alert-warning{
    color: #85640d;
}
.warning-message{
    padding: 0 5px !important;
    margin: 0;
}

.warning-message i{
    margin-top: 5px;
}

.warning-message span{
    margin-top: 3px;
    margin-left: 5px;
    font-style: italic;
    color: black;
}