.page-loader, .route-loader { z-index: 2147483647 !important; }
.route-loader { position: fixed; isolation: isolate; inset: 0; display: grid; place-items: center; overflow: hidden; color: var(--ivory); opacity: 0; pointer-events: none; }
.route-loader.is-active { opacity: 1; pointer-events: auto; }
.route-loader__fondo, .route-loader__capas, .route-loader__capa { position: absolute; inset: 0; }
.route-loader__fondo { z-index: 1; background: rgb(5 6 4 / 78%); backdrop-filter: blur(7px); }
.route-loader__capas { z-index: 2; overflow: hidden; }
.route-loader__capa { transform: translate3d(0, 112%, 0); backface-visibility: hidden; will-change: transform; }
.route-loader__capa:nth-child(1) { background: #10120f; clip-path: inset(0); }
.route-loader__capa:nth-child(2) { background: #171a15; clip-path: inset(9% 0 0); }
.route-loader__capa:nth-child(3) { background: #202219; clip-path: inset(18% 0 0); }
.route-loader__capa:nth-child(4) { background: #29291d; clip-path: inset(27% 0 0); }
.route-loader__capa:nth-child(5) { background: #363223; clip-path: inset(36% 0 0); }
.route-loader__panel { position: relative; z-index: 3; display: grid; width: min(calc(100% - 44px), 470px); justify-items: center; text-align: center; }
.route-loader strong { font: 400 clamp(1.15rem, 3vw, 1.65rem)/1.2 Georgia, serif; letter-spacing: .08em; }
.route-loader__progress { width: 150px; height: 4px; margin-top: 22px; overflow: hidden; border-radius: 999px; background: rgb(201 164 93 / 24%); }
.route-loader__progress i { display: block; width: 0; height: 100%; border-radius: inherit; background: var(--gold); box-shadow: 0 0 12px rgb(201 164 93 / 55%); }
.route-loader__panel > span { margin-top: 12px; color: #d8c28f; font-size: .68rem; font-weight: 700; letter-spacing: .14em; }
@media (prefers-reduced-motion: reduce) {
    .route-loader__fondo { backdrop-filter: none; }
    .route-loader__capa { will-change: auto; }
}
