/* Загрузочная анимация веб-приложения (main_page/js/splash.js). Префикс классов — spl.
   Первый кадр = загрузочная картинка iOS: лого 120 px по центру на фоне #f6f8fb. */

.spl-lock,
.spl-lock body {
    overflow: hidden;
}

.spl {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: grid;
    place-items: center;
    background: #f6f8fb;
    cursor: pointer;
}

.spl__logo {
    position: relative;
    grid-area: 1 / 1;
    width: 120px;
    height: 120px;
}

.spl__c,
.spl__o {
    position: absolute;
    inset: 0;
    width: 120px;
    height: 120px;
    overflow: visible;
    transform-origin: 50% 50%;
}

.spl__o {
    transform-origin: 52% 50%;
}

.spl__text {
    display: flex;
    flex-wrap: wrap;
    grid-area: 1 / 1;
    justify-content: center;
    gap: 0.15em 0.35em;
    padding: 0 1rem;
    color: #14223b;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    font-size: clamp(2.1rem, 9vw, 3.4rem);
    font-weight: 900;
    letter-spacing: 0.02em;
    line-height: 1;
}

.spl__word {
    display: inline-flex;
    align-items: baseline;
}

/* десктоп — «САМБО ОНЛАЙН» в одну строку; планшет и телефон — в две */
@media (min-width: 1025px) {
    .spl__text {
        flex-wrap: nowrap;
    }
}

@media (max-width: 1024px) {
    .spl__text {
        flex-direction: column;
        align-items: center;
    }
}

.spl__word--sambo {
    color: #1f4fa3;
}

.spl__word--online {
    color: #c8102e;
}

/* места под «С» и ковёр «О» из лого: от линии строки до верха заглавных (--cap считает splash.js) */
.spl__slot {
    display: inline-block;
    height: var(--cap, 0.72em);
}

.spl__slot--c {
    width: calc(var(--cap, 0.72em) * 1.1);
    margin-right: 0.03em;
}

/* ≈ 0.80 / размер «С» в splash.js */
.spl__slot--o {
    width: calc(var(--cap, 0.72em) * 1.09);
    margin-right: 0.06em;
}

/* ≈ 0.50 / размер «О» в splash.js */
.spl__rest {
    display: inline-block;
    clip-path: inset(0 100% 0 0);
}