body.loading{
    overflow:hidden;
}

body .loader{
    display:none;
}

body.loading .loader{
    display:block;
}

body.loading .loader{
    display:flex;
    position:fixed;
    top:0;
    left:0;
    width:100vw;
    height:100vh;
    background:var(--bs-yellow);
    z-index:999999;
    justify-content:center;
    align-items:center;
}

/*add spinner-grow css*/
.spinner-grow {
    --bs-spinner-width: 2rem;
    --bs-spinner-height: 2rem;
    --bs-spinner-vertical-align: -0.125em;
    --bs-spinner-animation-speed: 0.75s;
    --bs-spinner-animation-name: spinner-grow;
    background-color: var(--bs-danger);
    opacity: 0;
}

.spinner-grow{
    display: inline-block;
    width: var(--bs-spinner-width);
    height: var(--bs-spinner-height);
    vertical-align: var(--bs-spinner-vertical-align);
    border-radius: 50%;
    animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
}

.spinner-grow .visually-hidden{
    visibility:hidden;
}

/*Animate spinner-grow*/
@keyframes spinner-grow {
    0% {
        transform: scale(0)
    }

    50% {
        opacity: 1;
        transform: none
    }
}