:root.has-page-loader { overflow: hidden; }
.page-loader { position: fixed; inset: 0; z-index: 99999; display: grid; place-items: center; background: #090a0b; opacity: 1; visibility: visible; transition: opacity .48s ease, visibility .48s ease; }
.page-loader.is-leaving { opacity: 0; visibility: hidden; pointer-events: none; }
.page-loader__content { display: grid; place-items: center; width: 100%; height: 100%; }
.page-loader__mark { display: block; width: clamp(88px, 14vw, 132px); height: clamp(88px, 14vw, 132px); overflow: visible; }
.page-loader__mark path { fill: none; stroke: #fff; stroke-width: 5; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 220; stroke-dashoffset: 220; animation: macelian-mark-draw 1.1s cubic-bezier(.65,0,.35,1) forwards; }
@keyframes macelian-mark-draw { to { stroke-dashoffset: 0; } }
@media (prefers-reduced-motion: reduce) { .page-loader__mark path { animation-duration: .01ms; animation-iteration-count: 1; stroke-dashoffset: 0; } .page-loader, .page-loader.is-leaving { transition-duration: .01ms; } }
