.maribe-loader {
    --maribe-loader-shade: rgb(60 60 59 / 24%);
    --maribe-loader-veil: linear-gradient(var(--maribe-loader-shade), var(--maribe-loader-shade)), rgb(249 245 240 / 92%);
    --maribe-loader-fade: 200ms;
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: grid;
    place-items: center;
    isolation: isolate;
    box-sizing: border-box;
    padding: 20px;
    overflow: hidden;
    background: var(--maribe-loader-veil);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity var(--maribe-loader-fade) ease, visibility 0s linear var(--maribe-loader-fade);
}

@supports ((-webkit-backdrop-filter: blur(12px)) or (backdrop-filter: blur(12px))) {
    .maribe-loader {
        --maribe-loader-veil: linear-gradient(var(--maribe-loader-shade), var(--maribe-loader-shade)), rgb(249 245 240 / 68%);
        -webkit-backdrop-filter: blur(12px);
        backdrop-filter: blur(12px);
    }
}

.maribe-loader[data-active="true"] {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
}

.maribe-loader__logo {
    position: relative;
    display: block;
    width: min(278px, 100%);
    max-height: calc(100dvh - 40px);
    height: auto;
    overflow: visible;
    filter: drop-shadow(0 10px 28px rgb(60 60 59 / 18%));
}

.maribe-loader__piece {
    opacity: 1;
}

.maribe-loader[data-motion="animated"] .maribe-loader__piece {
    opacity: .18;
}

.maribe-loader__haze {
    position: absolute;
    left: 50%;
    top: 50%;
    width: min(350px, 92%);
    height: 225px;
    border-radius: 50%;
    background: radial-gradient(ellipse, #c56e51 0%, transparent 67%);
    filter: blur(36px);
    opacity: .15;
    transform: translate(-50%, -50%);
    animation: maribe-loader-haze 8s ease-in-out infinite alternate paused;
    pointer-events: none;
}

.maribe-loader[data-active="true"][data-motion="animated"] .maribe-loader__haze {
    animation-play-state: running;
}

.maribe-loader__status {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

@keyframes maribe-loader-haze {
    from { transform: translate(-54%, -48%) scale(.97); }
    to { transform: translate(-46%, -53%) scale(1.05); }
}

@media (prefers-reduced-motion: reduce) {
    .maribe-loader {
        transition: none;
    }

    .maribe-loader__haze {
        animation: none;
    }

    .maribe-loader .maribe-loader__piece {
        opacity: 1 !important;
    }
}

body[data-a11y-motion="reduced"] .maribe-loader {
    transition: none;
}

body[data-a11y-motion="reduced"] .maribe-loader__haze {
    animation: none;
}

body[data-a11y-motion="reduced"] .maribe-loader .maribe-loader__piece {
    opacity: 1 !important;
}
