/*=========================================
                LOADER
=========================================*/

#loader{

    position:fixed;

    inset:0;

    background:#081923;

    display:flex;

    justify-content:center;

    align-items:center;

    z-index:99999;

    transition:opacity .8s ease, visibility .8s ease;

}

#loader.hide{

    opacity:0;

    visibility:hidden;

}

.loader-content{

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:30px;

}

.loader-logo{

    width:180px;

    max-width:80%;

    animation:logoFade 1.5s ease-in-out infinite alternate;

}

.loader-line{

    width:180px;

    height:4px;

    background:rgba(255,255,255,.15);

    border-radius:50px;

    overflow:hidden;

}

.loader-line span{

    display:block;

    width:40%;

    height:100%;

    background:#D4AF37;

    animation:loading 1.5s linear infinite;

}

@keyframes loading{

    0%{

        transform:translateX(-100%);

    }

    100%{

        transform:translateX(350%);

    }

}

@keyframes logoFade{

    from{

        transform:scale(.95);

        opacity:.85;

    }

    to{

        transform:scale(1.03);

        opacity:1;

    }

}
.loader-title{

    font-size:2rem;

    color:#D4AF37;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    text-align:center;

    margin-top:-10px;

}

@media (max-width:768px){

    .loader-logo{

        width:140px;

    }

    .loader-title{

        font-size:1.3rem;

    }

}

/*=========================
        TITLE
=========================*/

.loader-content h1{

    font-size:68px;

    color:#ffffff;

    font-weight:800;

    letter-spacing:8px;

    margin-bottom:15px;

    animation:fadeUp 1s ease forwards;

}

.loader-content span{

    display:block;

    color:#D4AF37;

    font-size:18px;

    font-weight:700;

    letter-spacing:12px;

    margin-bottom:35px;

    animation:fadeUp 1s .2s forwards;

    opacity:0;

}

/*=========================
        LOADING LINE
=========================*/

.loader-content::after{

    content:"";

    display:block;

    width:220px;

    height:4px;

    margin:0 auto;

    background:linear-gradient(
        90deg,
        transparent,
        #D4AF37,
        transparent
    );

    border-radius:50px;

    animation:loading 1.5s infinite;

}

/*=========================
        ANIMATIONS
=========================*/

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(30px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

@keyframes loading{

    0%{

        transform:scaleX(.2);

        opacity:.3;

    }

    50%{

        transform:scaleX(1);

        opacity:1;

    }

    100%{

        transform:scaleX(.2);

        opacity:.3;

    }

}

/*=========================
        RESPONSIVE
=========================*/

@media(max-width:768px){

.loader-content h1{

    font-size:42px;

    letter-spacing:4px;

}

.loader-content span{

    font-size:14px;

    letter-spacing:6px;

}

.loader-content::after{

    width:160px;

}

}