﻿@charset "UTF-8";
/* CSS Document */


.progress {
    width: 100%;
    height: 174px;
    background-repeat: no-repeat;
    background-position: center right 165px;
    margin-top: 0px;
}


    .progress.complete {
        width: 100%;
        height: 174px;
        background-repeat: no-repeat;
        background-position: center right 165px;
        margin-top: 20px;
    }

.progress_bar {
    width: 100%;
    float: left;
    margin-top: 65px;
}


/* Component Styles - Steps */
.steps {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin: 0;
    padding: 0 0 40px 0;
    list-style: none;
}

.step {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    position: relative;
    pointer-events: none;
}

.step--active, .step--complete {
    cursor: pointer;
    pointer-events: all;
}

.step:not(:last-child):before, .step:not(:last-child):after {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    height: 2px;
    content: '';
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    will-change: width;
    z-index: -1;
}

.step:before {
    width: 100%;
    background-color: #16284f;
}

.step:after {
    width: 0;
    background-color: #95a71e;
}

.step--complete:after {
    width: 100% !important;
    opacity: 1;
    -webkit-transition: width 0.6s ease-in-out, opacity 0.6s ease-in-out;
    transition: width 0.6s ease-in-out, opacity 0.6s ease-in-out;
}

.step__icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    width: 40px;
    height: 40px;
    background-color: #ffffff;
    border: 2px solid #16284f;
    border-radius: 50%;
    color: transparent;
    font-size: 2rem;
    cursor: pointer;
    pointer-events: all;
}

    .step__icon.loaninfo {
        background-image: url(../images/Your_Loan.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 30px 30px;
    }

    .step__icon.yourinfo {
        background-image: url(../images/Your_Info.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 30px 30px;
    }

    .step__icon.yourassets {
        background-image: url(../images/Your_Assets.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 30px 30px;
    }

    .step__icon.yourincome {
        background-image: url(../images/Your_Income.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 30px 30px;
    }

    .step__icon.declarations {
        background-image: url(../images/disclosures.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 30px 30px;
    }

    .step__icon.partners {
        background-image: url(../images/Partners.svg);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 30px 30px;
    }



.step--complete.step--active .step__icon {
    color: #ffffff;
    -webkit-transition: background-color 0.3s ease-in-out, border-color 0.3s ease-in-out, color 0.3s ease-in-out;
    transition: background-color 0.3s ease-in-out, border-color 0.3s ease-in-out, color 0.3s ease-in-out;
    display: block;
    content: url(../images/Checkmark.png);
    background-image: url(../images/Circle.png);
    background-repeat: no-repeat;
    background-position: center;
}

.step--incomplete.step--active .step__icon {
    border-color: #95a71e;
    background-image: url(../images/Plus.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 30px 30px;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
    cursor: pointer;
    pointer-events: all;
}


.step--complete .step__icon {
    -webkit-animation: bounce 0.5s ease-in-out;
    animation: bounce 0.5s ease-in-out;
    background-color: #95a71e;
    border-color: #95a71e;
    color: #16284f;
    cursor: pointer;
    pointer-events: all;
}

.step__label {
    position: absolute;
    text-align: center;
    bottom: -2rem;
    left: 50%;
    margin-top: 0.5rem;
    font-size: 10px;
    text-transform: uppercase;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.step--incomplete.step--inactive .step__label {
    color: #16284f;
    cursor: pointer;
    pointer-events: all;
}

.step--incomplete.step--active .step__label {
    color: #16284f;
    cursor: pointer;
    pointer-events: all;
}

.step--active .step__label {
    -webkit-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
    cursor: pointer;
    pointer-events: all;
}


/* #Media Queries
================================================== */

/* Smaller Laptop/Larger Tablet (devices and browsers)*/
@media only screen and (max-width: 1279px) {
}

@media (max-width: 1070px) {
}



@media (max-width : 980px ) {
}


/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
@media only screen and (max-width: 767px) {


    #progress_circle {
        margin: 20px 17px 20px 0px;
    }

    .progress {
        width: 100%;
        height: 174px;
        background-repeat: no-repeat;
        background-position: center right 133px;
    }

        .progress.complete {
            width: 100%;
            height: 174px;
            background-repeat: no-repeat;
            background-position: center right 133px;
        }


    .progress_bar {
        width: 100%;
        float: left;
        margin-top: 65px;
    }
}


@media only screen and (max-width: 700px) {

    #progress_circle {
        margin: 20px 10px 20px 0px;
    }

    .progress {
        width: 100%;
        height: 174px;
        background-repeat: no-repeat;
        background-position: center right 126px;
    }



        .progress.complete {
            width: 100%;
            height: 174px;
            background-repeat: no-repeat;
            background-position: center right 126px;
        }


    .progress_bar {
        width: 100%;
        float: left;
        margin-top: 65px;
    }
}



@media (max-width: 595px) {



    .progress {
        width: 100%;
        height: 140px;
        background-repeat: no-repeat;
        background-position: center right 105px;
        margin-top: 10px;
    }

        .progress.complete {
            width: 100%;
            height: 140px;
            background-repeat: no-repeat;
            background-position: center right 105px;
            margin-top: 10px;
        }

    .progress_bar {
        width: 100%;
        float: left;
        margin-top: 52.5px;
    }

    .step__icon {
        width: 30px;
        height: 30px;
    }

        .step__icon.loaninfo {
            background-size: 25px 25px;
        }

        .step__icon.yourinfo {
            background-size: 25px 25px;
        }

        .step__icon.yourassets {
            background-size: 25px 25px;
        }

        .step__icon.yourincome {
            background-size: 25px 25px;
        }

        .step__icon.declarations {
            background-size: 25px 25px;
        }

    .step__label {
        font-size: 8px;
    }
}



/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 479px) {

    .step__label {
        display: none;
    }

    .progress {
        margin-top: 0px;
    }
}


/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 400px) {


    #progress_circle {
        margin: 20px 5px 20px 0px;
        width: 70px;
        height: 70px;
        font-size: 17px;
        line-height: 0px;
    }

    .progress {
        width: 100%;
        height: 115px;
        background-repeat: no-repeat;
        background-position: center right 72px;
        margin-top: 10px;
    }


        .progress.complete {
            width: 100%;
            height: 115px;
            background-repeat: no-repeat;
            background-position: center right 72px;
            margin-top: 10px;
        }


    .progress_bar {
        width: 100%;
        float: left;
        margin-top: 41px;
    }
}

@media (max-width: 337px) {


    .progress_bar {
        width: 100%;
        float: left;
        margin-top: 46px;
    }

    .progress {
        width: 100%;
        height: 115px;
        background-repeat: no-repeat;
        background-position: center right 72px;
        margin-top: 10px;
    }


        .progress.complete {
            width: 100%;
            height: 115px;
            background-repeat: no-repeat;
            background-position: center right 72px;
            margin-top: 10px;
        }

    .step__icon {
        width: 20px;
        height: 20px;
    }

        .step__icon.loaninfo {
            background-size: 15px 15px;
        }

        .step__icon.yourinfo {
            background-size: 15px 15px;
        }

        .step__icon.yourassets {
            background-size: 15px 15px;
        }

        .step__icon.yourincome {
            background-size: 15px 15px;
        }

        .step__icon.declarations {
            background-size: 15px 15px;
        }

    .step--incomplete.step--active .step__icon {
        background-size: 20px 20px;
    }
}



/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 300px) {
}


/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 265px) {
}
