/* Logo Reveal Loader – structure from Osmo Supply, restyled with Bekifft tokens (site.css). */
.loader { z-index: 100; color: var(--bk-text); width: 100%; height: 100dvh; position: fixed; inset: 0% 0% auto; font-size: 16px; }
.loader__bg { background-color: var(--bk-bg); width: 100%; height: 100%; position: absolute; inset: 0%; }
.loader__container { z-index: 2; flex-flow: column; justify-content: center; align-items: center; width: 100%; height: 100%; display: flex; position: relative; }
.loader__bg-bar { z-index: 1; transform-origin: 0%; transform-style: preserve-3d; background-color: var(--bk-accent); width: 100%; height: .5em; position: absolute; inset: auto 0% 0%; transform: scale3d(0, 1, 1); }
.loader__logo-wrap { justify-content: center; align-items: center; width: min(16em, 70vw); aspect-ratio: 873 / 447; display: flex; position: relative; }
.loader__logo-item { width: 100%; position: absolute; }
.loader__logo-item.is--base { opacity: .2; }
.loader__logo-item.is--top { -webkit-clip-path: inset(0% 100% 0% 0%); clip-path: inset(0% 100% 0% 0%); }
.loader__logo-img { width: 100%; height: auto; display: block; }
.loader__text-wrap { flex-flow: column; justify-content: center; align-items: center; display: flex; position: absolute; bottom: 3.5em; }
.loader__text-el { text-transform: uppercase; white-space: nowrap; margin-bottom: -.25em; padding-bottom: .25em; font-family: 'Outfit', 'Trebuchet MS', sans-serif; font-weight: 800; letter-spacing: .12em; color: var(--bk-cream-100); position: absolute; }
[data-load-reset] { opacity: 0; }
html.is-loading, html.is-loading body { overflow: hidden; }
