html {
    font-size: 14px;
    width:100%;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 60px;
}

.custom-loader-wrapper {
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    background: #ffffff00;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    display: none;
    opacity: 0.5;
    transition: all .8s ease-out;
}

    .custom-loader-wrapper .custom-loader {
        font-size: 10px;
        margin: auto;
        text-indent: -9999em;
        width: 60px;
        height: 60px;
        border-radius: 50%;
        border: 8px solid #f3f3f3; /* Light grey */
        border-top: 8px solid #3498db; /* Blue */
        -webkit-animation: loading 1.4s infinite linear;
        animation: spin 1.4s infinite linear;
        transform: translateZ(0);
    }

    .custom-loader-wrapper .loader.loader:before {
        width: 50%;
        height: 50%;
        background: #727cf5;
        border-radius: 100% 0 0 0;
        position: absolute;
        top: 0;
        left: 0;
        content: '';
    }

    .custom-loader-wrapper .loader.loader:after {
        background: #f9fafb;
        width: 75%;
        height: 75%;
        border-radius: 50%;
        content: '';
        margin: auto;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
    }

@keyframes spin {
    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(360deg)
    }
}

