.loader {
    position: fixed;
    inset: 0;
    background-color: #ffffff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 36px;
    z-index: 999;
    transition: opacity 1s ease;
}
.loader.hidden {
    opacity: 0;
    pointer-events: none;
}
.loader img {
    width: auto;
    height: auto;
    max-width: 4%;
    min-width: 50px;
    position: relative;
    opacity: 0;
    transition: opacity 0.6s ease;
}
.loader.active img {
    opacity: 1;
}
.loading-progress {
    position: relative;
    min-width: 160px;
    width: 16%;
    height: 5px;
}
.loading-bar {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    background-color: #89C70D;
    transition: width 0.4s ease;
    max-width: 100%;
}