.loading-screen {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* Анимация вращения применяется только к .container */
.container {
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 50%;
    height: 96px;
    width: 96px;
    animation: rotate_3922 1.2s linear infinite;
    background-color: #CB0000;
    background-image: linear-gradient(#CB0000, #FFC700, #c79c00);
}

/* Ваши стили для .container span остаются без изменений */
.container span {
    position: absolute;
    border-radius: 50%;
    height: 100%;
    width: 100%;
    background-color: #cb0000;
    background-image: linear-gradient(#ff0000, #ffc800, #ffc800);
}

.container span:nth-of-type(1) {
    filter: blur(5px);
}

.container span:nth-of-type(2) {
    filter: blur(10px);
}

.container span:nth-of-type(3) {
    filter: blur(25px);
}

.container span:nth-of-type(4) {
    filter: blur(50px);
}

.container::after {
    content: "";
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    background-color: #fff;
    border: solid 5px #ffffff;
    border-radius: 50%;
}

@keyframes rotate_3922 {
    from {
        transform: translate(-50%, -50%) rotate(0deg);
    }
    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

/* Стили для изображения — оно позиционируется поверх лоадера и не вращается */
.loader-logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 5; /* размещаем выше вращающегося контейнера */
    width: 60px; /* задайте нужный размер */
    height: auto;
}

/* Стили для текста, если нужно */
.loading-text {
    position: absolute;
    top: calc(50% + 30px);
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    text-align: center;
}

.loading-text::before {
    content: "";
    position: absolute;
    top: 0;
    left: -15px;
    right: -15px;
    bottom: 0;
    background-color: rgba(220, 100, 100, 0.61);
    filter: blur(5px);
    z-index: -1;
}

.preload-screen {
    position: absolute;
    top: 15%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: white;
    text-shadow:
            -1px -1px 0 black,
            1px -1px 0 black,
            -1px  1px 0 black,
            1px  1px 0 black;
}

/* Начальное состояние для заголовка и описания */
.preload-screen h1,
.preload-screen .meta-description-text {
    opacity: 0;
    transform: translateY(20px);
}

.preload-screen .meta-description-text2 {
    opacity: 0;
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
}

.preload-screen .meta-description-text3 {
    opacity: 0;
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
}

/* Анимация для заголовка */
.preload-screen h1 {
    animation: fadeInTranslate 1s forwards;
    animation-delay: 0.5s; /* Задержка появления заголовка */
}

/* Анимация для описания с дополнительной задержкой */
.preload-screen .meta-description-text {
    animation: fadeInTranslate 1s forwards;
    animation-delay: 1.5s; /* Задержка появления описания */
}

.preload-screen .meta-description-text2 {
    opacity: 0;
    transform: translateY(50px);
    animation: fadeInTranslate2 1s forwards;
    animation-delay: 2.5s; /* задержка перед началом анимации */
}

.preload-screen .meta-description-text3 {
    opacity: 0;
    transform: translateY(50px);
    animation: fadeInTranslate2 1s forwards;
    animation-delay: 3.5s; /* задержка перед началом анимации */
}

/* Ключевые кадры анимации */
@keyframes fadeInTranslate {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInTranslate2 {
    from {
        opacity: 0;
        transform: translateY(50px);
    }
    to {
        opacity: 1;
        transform: translateY(30px);
    }
}

/* Media query для мобильных устройств */
@media only screen and (max-width: 768px) {
    .preload-screen {
        /* Можно сдвинуть чуть выше и убрать часть translate, чтобы не было лишнего отступа */
        top: 10%;
        transform: translate(-50%, 0);
        width: 90%;  /* ограничиваем ширину для мобильного */
        padding: 0 10px;
    }

    .preload-screen h1 {
        font-size: 1.8rem;  /* уменьшаем размер шрифта для мобильных */
        margin-bottom: 10px;
    }

    .preload-screen .meta-description-text,
    .preload-screen .meta-description-text2,
    .preload-screen .meta-description-text3 {
        font-size: 1rem;
        margin-bottom: 10px;  /* добавляем отступ между абзацами, чтобы они не сливались */
        transform: translateY(20px); /* стартовое значение смещения можно уменьшить */
        animation: fadeInTranslateMobile 1s forwards;
    }

    /* Новая анимация для мобильных устройств */
    @keyframes fadeInTranslateMobile {
        from {
            opacity: 0;
            transform: translateY(20px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    /* При необходимости, можно также уменьшить размеры лоадера */
    .loading-screen {
        top: 60%; /* или скорректировать позицию */
    }

    .loader-logo {
        width: 50px;
    }

    .container {
        height: 80px;
        width: 80px;
    }
}

@media only screen and (max-width: 768px) {
    .preload-screen h1 {
        font-size: 1.3rem !important;
    }

    .preload-screen .meta-description-text,
    .preload-screen .meta-description-text2,
    .preload-screen .meta-description-text3 {
        font-size: 0.8rem !important;
    }

    .loading-text p {
        font-size: 1.2rem !important;
    }
}