/* Main Styles */

body {
    color: #333333;
    min-height: 100vh;
    padding-bottom: 170px; /* height of the footer */
}

@media only screen and (max-width: 768px) {
    body {
        padding-bottom: 190px;
    }
}

@media only screen and (max-width: 350px) {
    body {
        padding-bottom: 230px;
    }
}

html {
    position: relative;
    min-height: 100%;
}

img, video, iframe {
    max-width: 100%;
    height: auto;
}

/* Header Styles */

.navbar {
    background-color: #50b948;
}

/* Navigation Styles */

.navigation-buttons {
    width: 100%;
}

.btn-primary {
    border: 0;
    margin-right: 10px;
    color: #fff;
    background-color: #50b948;
    border-color: #47a740;
}

    .btn-primary:hover {
        background-color: #439c3c;
        border-color: #357b2f;
    }

.btn:focus, .btn:active {
    box-shadow: none;
    outline: 0;
}

.nav-link, a {
    color: #006fba;
    text-decoration: none;
    padding-right: 2px;
}

    .nav-link:hover, a:hover {
        color: #333;
    }

/* Form Styles */

.form-check-input:checked {
    background-color: #50b948;
    border-color: #50b948;
}

.form-check-input:focus,
.form-check-input:active,
.form-control:focus,
.form-control:active {
    box-shadow: 0 0 0 0.2rem rgba(80, 185, 72, 0.25);
    border-color: #50b948;
}

/* Wizard Styles */

#progress-container {
    width: 100%;
    margin: 20px 0;
}

    #progress-container .custom-progress-bar {
        display: flex;
        justify-content: space-between;
        position: relative;
        list-style-type: none;
        padding: 0;
    }

        #progress-container .custom-progress-bar::before {
            content: '';
            position: absolute;
            top: 12px;
            left: 10%;
            width: 80%;
            height: 2px;
            background-color: grey;
            z-index: -1;
        }

        #progress-container .custom-progress-bar li {
            position: relative;
            text-align: center;
            width: 25%;
        }

            #progress-container .custom-progress-bar li .circle {
                width: 24px;
                height: 24px;
                border-radius: 50%;
                margin: 0 auto;
                line-height: 24px;
                background-color: white;
                border: 2px solid grey;
            }

            #progress-container .custom-progress-bar li.completed .circle {
                background-color: green;
                color: white;
                border: none;
            }

                #progress-container .custom-progress-bar li.completed .circle i {
                    font-size: 16px;
                }

            #progress-container .custom-progress-bar li:not(:first-child)::before {
                content: '';
                position: absolute;
                top: 12px;
                left: -50%;
                width: 100%;
                height: 2px;
                background-color: grey;
                z-index: -1;
            }

            #progress-container .custom-progress-bar li.completed:not(:first-child)::before {
                background-color: green;
            }

            #progress-container .custom-progress-bar li.completed ~ li:not(.current) .circle {
                border-color: lightgrey;
            }

            #progress-container .custom-progress-bar li.completed ~ li:not(.current)::before {
                background-color: lightgrey;
            }

            #progress-container .custom-progress-bar li.current .circle {
                border: 4px solid green;
            }

            #progress-container .custom-progress-bar li.not-completed .circle {
                border: 2px solid lightgrey;
            }

            #progress-container .custom-progress-bar li p {
                margin-top: 8px;
                font-size: 12px;
            }

/* Footer Styles */

#footerWrapper {
    background-color: #333;
    color: #fff;
    position: absolute;
    bottom: 0;
    width: 100%;
}

    #footerWrapper a {
        color: #fff;
    }

#footer {
    color: #fff;
    font-size: 11px;
    padding: 10px 0;
}

    #footer #footerInside {
        padding-top: 10px;
        line-height: 16px;
    }

        #footer #footerInside .footerLeft span a {
            font-weight: 700;
            text-decoration: none;
        }

            #footer #footerInside .footerLeft span a:before {
                padding: 0 5px;
                color: #fff;
                content: "| ";
            }

        #footer #footerInside .footerLeft span:first-child a:before {
            content: "";
            padding: 0;
        }

        #footer #footerInside .footerRight {
            margin-top: 5px;
            text-align: right;
        }

            #footer #footerInside .footerRight span {
                display: inline;
            }

                #footer #footerInside .footerRight span.text {
                    width: 120px;
                    font-size: 11px;
                    line-height: 110%;
                    text-align: left;
                    float: right;
                }

                #footer #footerInside .footerRight span a {
                    margin-right: 5px;
                }

.footerLeft .allRightsReserved {
    text-align: left;
}
