﻿.vprogress {
    width: 1000px;
    margin: 20px auto;
    text-align: center;
}

    .vprogress .bar {
        display: block;
    }

    .vprogress .circle {
        display: block;
        margin-bottom: 0px;
        width: 40px;
        height: 40px;
        border-radius: 40px;
    }

    .vprogress .active {
        width: 10px !important;
        height: 10px !important;
        background-color: #fff !important;
    }

    .vprogress .bar {
        position: relative;
        width: 3px;
        height: 52px;
        margin-left: 13px;
        border-left: none;
        border-right: none;
        border-radius: 0;
    }

    .vprogress .circle .label {
        display: inline-block;
        width: 32px;
        height: 32px;
        line-height: 32px;
        border-radius: 32px;
        margin-top: 3px;
        color: #b5b5ba;
        font-size: 17px;
    }

    .vprogress .circle .title {
        color: #b5b5ba;
        font-size: 13px;
        line-height: 30px;
        margin-left: 45px;
        position: relative;
        top: -28px;
    }

    /* Done / Active */
    .vprogress .bar.done,
    .vprogress .circle.done {
        background: green;
    }

    .vprogress .bar.failed,
    .vprogress .circle.failed {
        background: red;
    }

    .vprogress .bar.active {
        background: linear-gradient(to right, #eee 40%, #fff 60%);
    }

    .vprogress .circle.done .label {
        color: #fff;
        background: #8bc435;
        box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
    }

    .vprogress .circle.done .title {
        color: #444;
    }

    .vprogress .circle.active .label {
        color: #fff;
        background: #0c95be;
        box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
    }

    .vprogress .circle.active .title {
        color: #0c95be;
    }

.stepper:not(.stepper-vertical) .stepper-step {
    /* height: 100vh; */
}

.top-53 {
    top: 53%;
}

.stepper-head:hover {
    background-color: inherit;
}

.stepper-head:active {
    background-color: inherit;
}

.stepper:not(.stepper-vertical)
.stepper-step:not(:first-child)
.stepper-head-start:before {
    background-color: inherit;
}

.stepper:not(.stepper-vertical)
.stepper-step:not(:first-child)
.stepper-head-end::after {
    background-color: inherit;
}

.stepper-vertical .stepper-step:not(:last-child):after {
    position: absolute;
    left: 2.25rem;
    height: calc(100%);
    /* top: 3.5rem; */
    width: 1px;
    /* margin-top: 0.3rem; */
    content: "";
    background-color: rgba(0, 0, 0, 0.1);
}

.stepper-vertical .stepper-step-end:not(:last-child):after {
    height: calc(100% - 2rem);
    content: "";
    background-color: rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 1024px) {
    body {
        background-color: lightblue;
    }
}

.stepper-vertical .stepper-step:not(:last-child):after {
    background-color: rgb(23 98 173) !important;
    /* width: 4px; */
}

a:hover {
    text-decoration: none;
}

.dropdown:hover .dropdown-menu {
    display: block;
}

.dropdown:focus-within .dropdown-menu {
    opacity: 1;
    transform: translate(0) scale(1);
    visibility: visible;
}

.socialimg {
    max-height: 90vh;
}

.tiktok {
    max-width: 65vw;
}

.tiktok-md {
    max-width: 60vw;
}


.hover14 figure {
    position: relative;
}

figure {
    margin: 0;
    padding: 0;
    overflow: hidden;
}

.hover14 figure::before {
    position: absolute;
    top: 0;
    left: -40%;
    z-index: 2;
    display: block;
    content: '';
    width: 20%;
    height: 100%;
    background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
    -webkit-transform: skewX(-15deg);
    transform: skewX(-15deg);
}

.hover14 figure:hover::before {
    -webkit-animation: shine .75s;
    animation: shine .75s;
}

@-webkit-keyframes shine {
    100% {
        left: 125%;
    }
}

@keyframes shine {
    100% {
        left: 125%;
    }
}

@media (min-height: 900px) {
    .historyimg {
        max-height: 174px;
    }

    .historyitem {
        top: 16rem;
    }

    @media (min-width: 1024px) {
        .historyitem {
            top: 14rem;
        }
    }
}

@media (max-height: 950px) {
    .historyimg {
        max-height: 174px;
    }

    .historyitem {
        top: 13.5rem;
    }
}

@media (max-height: 900px) {
    .historyimg {
        max-height: 174px;
    }

    .historyitem {
        top: 12rem;
    }
}

@media (max-height: 850px) {
    .historyimg {
        max-height: 174px;
    }

    .historyitem {
        top: 10.5rem;
    }
}

@media (max-height: 800px) {
    .historyimg {
        max-height: 174px;
    }

    .historyitem {
        top: 9rem;
    }
}

@media (max-height: 750px) {
    .historyimg {
        max-height: 150px;
    }

    .historyitem {
        top: 9rem;
    }
}

@media (max-height: 700px) {
    .historyimg {
        max-height: 150px;
    }

    .historyitem {
        top: 7.5rem;
    }
}

@media (max-height: 650px) {
    .historyimg {
        max-height: 120px;
    }

    .historyitem {
        top: 8rem;
    }
}

@media (max-height: 600px) {
    .historyimg {
        max-height: 120px;
    }

    .historyitem {
        top: 6.5rem;
    }
}

@media (max-height: 550px) {
    .historyimg {
        max-height: 100px;
    }

    .historyitem {
        top: 6rem;
    }
}


@media (max-height: 500px) {
    .historyimg {
        max-height: 100px;
    }

    .historyitem {
        top: 4.5rem;
    }
}

@media (max-height: 450px) {
    .historyimg {
        max-height: 100px;
        display: none;
    }

    .historyitem {
        top: 9rem;
    }
}

@media (max-height: 400px) {
    .historyimg {
        max-height: 100px;
        display: none;
    }

    .historyitem {
        top: 7.5rem;
    }
}

@media (max-height: 350px) {
    .historyimg {
        display: none;
    }

    .historyitem {
        top: 6rem;
    }
}

@media (max-height: 300px) {
    .historyimg {
        display: none;
    }

    .historyitem {
        top: 5rem;
    }
}

@media (max-height: 250px) {
    .historyimg {
        display: none;
    }

    .historyitem {
        top: 3rem;
    }
}

@media (max-height: 200px) {
    .historyimg {
        display: none;
    }

    .historyitem {
        top: 1rem;
    }
}


#fadeDown {
    text-align: center;
    -webkit-animation: fadeInDown 2s; /* Safari, Chrome and Opera > 12.1 */
    -moz-animation: fadeInDown 2s; /* Firefox < 16 */
    -ms-animation: fadeInDown 2s; /* Internet Explorer */
    -o-animation: fadeInDown 2s; /* Opera < 12.1 */
    animation: fadeInDown 2s;
}

#fadeDownHidden {
    text-align: center;
    -webkit-animation: fadeInDownHidden 2s; /* Safari, Chrome and Opera > 12.1 */
    -moz-animation: fadeInDownHidden 2s; /* Firefox < 16 */
    -ms-animation: fadeInDownHidden 2s; /* Internet Explorer */
    -o-animation: fadeInDownHidden 2s; /* Opera < 12.1 */
    animation: fadeInDownHidden 2s;
}

#fadeUp {
    text-align: center;
    -webkit-animation: fadeInUp 2s; /* Safari, Chrome and Opera > 12.1 */
    -moz-animation: fadeInUp 2s; /* Firefox < 16 */
    -ms-animation: fadeInUp 2s; /* Internet Explorer */
    -o-animation: fadeInUp 2s; /* Opera < 12.1 */
    animation: fadeInUp 2s;
}

#fadeUpHidden {
    text-align: center;
    -webkit-animation: fadeInUpHidden 2s; /* Safari, Chrome and Opera > 12.1 */
    -moz-animation: fadeInUpHidden 2s; /* Firefox < 16 */
    -ms-animation: fadeInUpHidden 2s; /* Internet Explorer */
    -o-animation: fadeInUpHidden 2s; /* Opera < 12.1 */
    animation: fadeInUpHidden 2s;
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translate3d(0, -20%, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 20%, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInDownHidden {
    from {
        opacity: 1;
        transform: translate3d(0, -20%, 0);
    }

    to {
        opacity: 0;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInUpHidden {
    from {
        opacity: 1;
        transform: translate3d(0, 20%, 0);
    }

    to {
        opacity: 0;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Firefox < 16 */
@-moz-keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Internet Explorer */
@-ms-keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Opera < 12.1 */
@-o-keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}


.static {
    position: absolute;
    left: auto;
    right: auto;
}

    .static:hover {
        opacity: 0;
    }

.active {
    position: absolute;
}
.stepper {
    position: relative;
    padding: 0;
    margin: 0;
    width: 100%;
    list-style: none;
    overflow: hidden;
    transition: height .2s ease-in-out
}

    .stepper:not(.stepper-vertical) {
        display: flex;
        justify-content: space-between
    }

        .stepper:not(.stepper-vertical) .stepper-content {
            position: absolute;
            width: 100%;
            padding: 1rem
        }

        .stepper:not(.stepper-vertical) .stepper-step {
            flex: auto;
            height: 4.5rem
        }

            .stepper:not(.stepper-vertical) .stepper-step:first-child .stepper-head {
                padding-left: 1.5rem
            }

            .stepper:not(.stepper-vertical) .stepper-step:last-child .stepper-head {
                padding-right: 1.5rem
            }

            .stepper:not(.stepper-vertical) .stepper-step:not(:first-child) .stepper-head:before {
                flex: 1;
                height: 1px;
                width: 100%;
                margin-right: .5rem;
                content: "";
                background-color: #0000001a
            }

            .stepper:not(.stepper-vertical) .stepper-step:not(:last-child) .stepper-head:after {
                flex: 1;
                height: 1px;
                width: 100%;
                margin-left: .5rem;
                content: "";
                background-color: #0000001a
            }

        .stepper:not(.stepper-vertical) .stepper-head-icon {
            margin: 1.5rem .5rem 1.5rem 0
        }

.stepper-vertical .stepper-step {
    height: -moz-fit-content;
    height: fit-content;
    position: relative
}

    .stepper-vertical .stepper-step:not(:last-child):after {
        position: absolute;
        left: 2.25rem;
        height: calc(100% - 2.45rem);
        top: 3rem;
        width: 1px;
        margin-top: .5rem;
        content: "";
        background-color: #0000001a
    }

.stepper-vertical .stepper-content {
    overflow: hidden;
    padding: 1rem 1.5rem 1.5rem 3.75rem;
    transition: height .3s ease-in-out,margin-top .3s ease-in-out,margin-bottom .3s ease-in-out,padding-top .3s ease-in-out,padding-bottom .3s ease-in-out
}

.stepper-vertical .stepper-content-hide {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    height: 0 !important
}

.stepper-vertical .stepper-head {
    padding: 1.5rem
}

.stepper-vertical .stepper-head-icon {
    margin-right: .75rem
}

.stepper-vertical .stepper-head-text:after {
    position: absolute
}

.stepper.stepper-mobile {
    justify-content: center;
    align-items: flex-end
}

    .stepper.stepper-mobile.stepper-progress-bar .stepper-head-icon {
        display: none
    }

    .stepper.stepper-mobile .stepper-step {
        flex: unset;
        height: -moz-fit-content;
        height: fit-content;
        margin: 1rem 0
    }

        .stepper.stepper-mobile .stepper-step:not(:last-child) .stepper-head:after {
            margin-left: 0
        }

        .stepper.stepper-mobile .stepper-step:not(:first-child) .stepper-head:before {
            margin-right: 0
        }

        .stepper.stepper-mobile .stepper-step:not(:last-child):not(:first-child) .stepper-head {
            padding-left: .25rem;
            padding-right: .25rem
        }

    .stepper.stepper-mobile .stepper-head-icon {
        font-size: 0;
        margin: 0;
        height: .5rem;
        width: .5rem;
        z-index: 1
    }

    .stepper.stepper-mobile .stepper-head-text {
        display: none
    }

    .stepper.stepper-mobile .stepper-content {
        top: 2.56rem
    }

.stepper-content {
    left: 0
}

.stepper-head {
    display: flex;
    align-items: center;
    -webkit-text-decoration: none;
    text-decoration: none;
    color: unset;
    line-height: 1.3;
    cursor: pointer
}

    /*.stepper-head:hover {
        background-color: #dbdbdb
    }*/

    .stepper-head:focus {
        outline: none
    }

.stepper-head-text:after {
    display: flex;
    font-size: .8rem;
    content: attr(data-content)
}

.stepper-head-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background-color: gray;
    border-radius: 100%;
    font-size: .875rem;
    width: 1.5rem;
    height: 1.5rem
}

.stepper-completed .stepper-head-icon {
    background-color: #198754
}

.stepper-active .stepper-head-text {
    font-weight: 500
}

.stepper-active .stepper-content {
    display: block
}

.stepper-active .stepper-head-icon {
    background-color: #0d6efd
}

.stepper-invalid .stepper-head-icon {
    background-color: #dc3545
}

.stepper-disabled .stepper-head {
    color: #858585;
    cursor: default
}

.stepper-disabled .stepper-head-icon {
    background-color: #858585
}

.lessonlist ul {
    list-style: disc !important;
    margin-left: 1.5rem !important;
}

.accordion-button:not(.collapsed) {
    background-color: inherit;
    box-shadow: none;
    color: black;
}

.max-h-365 {
    max-height: 365px !important;
}