.index-background {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: auto;
    margin-bottom: 100px;
    z-index: 1;
}
.banner-img {
    width: 100%;
    height: 689px;
    position: relative;
    background: url(/dist/1ebb62eaa63e248758fe.jpg) lightgray 50% / cover no-repeat;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.main-title, .main-title1 {
    width: 90%; /* Вместо 1000px */
    max-width: 1000px;
    position: static; /* Убрал absolute */
    margin: 0 auto;
    transform: none;
    height: auto;
    color: #FFF;
    text-shadow: 5px 10px 10px #000;
    text-align: center;
    font-style: normal;
    line-height: normal;
}
.main-title {
    font-family: "Playfair Display";
    font-size: 64px;
    font-weight: 700;
    text-transform: uppercase;
}
.main-title1 {
    font-family: "Andantino script";
    font-size: 96px;
    font-weight: 400;
}
.about-main {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    width: 100% !important;
    max-width: 1198px;
    height: auto !important;
    margin: 40px auto 0 auto;
    transform: none !important;
    position: relative;
    padding: 0 15px;
    box-sizing: border-box;
}
.about-tiles-group {
    display: flex;
    flex-flow: row wrap; /* Разрешаем перенос, но даем место для двоих */
    justify-content: center;
    gap: 15px; /* Немного уменьшили зазор, чтобы влезло */
    width: 100%;
    max-width: 630px; /* Увеличили с 610, чтобы 296+296 точно влезли */
    height: auto;
    position: relative;
}
.about-text-group {
    width: 100% !important;
    max-width: 510px;
    height: auto !important;
    position: static !important; /* Убираем absolute */
    margin: 20px auto;
}
.about-tile {
    width: 296px !important;
    height: 181px !important;
    flex: 0 0 296px !important; /* Жесткий размер для Яндекса */
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    border-radius: 15px;
    background: #8D0B19;
    box-sizing: border-box;
}
.about-tile .title, .about-tile .title-1 {
    display: flex;
    width: 250px;
    height: 78px;
    position: relative;
    left: 17px;
    flex-shrink: 0;
    color: #FFF;
    text-align: left;
    font-family: "Novelist";
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: 40px; /* 125% */
    text-transform: uppercase;
}
.about-tile .title-1 {
    top: 25px;
}
.about-tile .text {
    width: 258px;
    height: 80px;
    position: relative;
    left: 17px;
    flex-shrink: 0;
    color: #F9FED8;
    text-align: left;
    font-family: "Gabriola";
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px; /* 100% */
}

.about-text-group-title, .about-text-group-title2 {
    width: 100% !important;
    position: static !important;
    height: auto !important;
    word-wrap: break-word;
}
.about-text-group-title {
    height: 153px;
    top: 4px;
    text-align: left;
    font-family: Novelist;
    font-size: 48px;
    font-weight: 400;
    line-height: 40px; /* 83.333% */
    text-transform: uppercase;
}
.about-text-group-title2 {
    height: 110px;
    bottom: 0;
    justify-content: left;
    text-align: justify;
    font-family: Gabriola;
    font-size: 32px;
    font-weight: 400;
    line-height: 30px; /* 93.75% */
}
.more-btn, .more-btn-1, .more-btn-2 {
    width: 238px;
    height: 59px;
    position: relative;
    flex-shrink: 0;
    border-radius: 45px;
    z-index: 5;
    /* Убираем старое смещение, ставим ровно по центру */
    display: flex;
    margin: 20px auto;
    transform: none;
}
.more-btn {
    display: flex;
    align-items: center;
    background: #5A062A;
    align-self: flex-end;
    margin-left: 50%;
    transform: translateX(-50%);
}
.more-btn:active {
    background: rgba(90,6,42,0.88);
    margin-left: 50%;
    transform: translate(-50%,0) translateY(3px);
}
.more-btn-1 {
    bottom: 0;
    background: #F9FED8;
}
.more-btn-1:active {
    transform: translateY(3px);
    background: rgba(249,254,216,0.88);
}
.more-btn-2 {
    background: #5A062A;
}
.more-btn-2:active {
    background: rgba(90,6,42,0.88);
    transform: translateY(3px);
}
.more-btn .link,
.more-btn-1 .link-1,
.more-btn-2 .link,
.more-btn-1 .link-1 *,
.more-btn .link * {
    font-family: 'Novelist', serif !important;
    text-decoration: none !important;
    font-size: 32px;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    text-align: center;
    margin: 0 !important;
    padding: 0 !important;
    position: relative;
    left: 0 !important;
    transform: none !important;
}
.more-btn .link, .more-btn-2 .link {
    color: #F9FED8;
}
.more-btn-1 .link-1 {
    color: #5A062A;
}
.video-archive {
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-evenly;
    align-items: center;
    width: 100%;           /* Делаем гибким */
    max-width: 1005px;     /* Твой размер */
    height: 740px;
    position: relative;
    margin: 0 auto;        /* Центрируем блок на странице */
    transform: none;
    flex-shrink: 0;
    z-index: 1;
}
.video-archive-text-title, .video-archive-text-title-2 {
    display: flex;
    position: relative;
    flex-direction: column;
    justify-content: center;
    flex-shrink: 0;
    z-index: 3;
    color: #F9FED8;
    font-size: 48px;
    font-style: normal;
    font-weight: 400;
}
.video-archive-text-title {
    width: 238px;
    height: 53px;
    text-align: center;
    font-family: Novelist;
    line-height: 40px; /* 83.333% */
    text-transform: uppercase;
}
.video-archive-text-title-2 {
    width: 343px;
    height: 70px;
    text-align: justify;
    font-family: Gabriola;
    line-height: 30px; /* 62.5% */
}
.video-teasers {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    gap: 40px;
    width: 100%;
    max-width: 1005px;
    height: auto;
    position: relative;
    z-index: 3;
    margin: 30px auto;
}
.video-teasers-tile {
    position: relative;
    display: flex;
    flex-flow: column wrap;
    justify-content: space-evenly;
    align-items: center;
    width: 238px;
    height: 364px;
    z-index: 4;
    font-family: 'Noah', sans-serif !important;
    text-decoration: none !important;
    transition: transform 0.2s ease;
}
.video-teasers-tile .link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: transparent;
    z-index: 10;
}
.video-teasers-tile:active {
    transform: translateY(3px);
}
.video-teasers-portraits {
    width: 223px;
    height: 280px;
    display: flex;
    flex-shrink: 0;
    position: relative;
    border-radius: 15px;
    z-index: 5;
    align-items: center;
}
.video-teasers-portraits img {
    width: 100%;
    height: 100%;
}
.video-teasers-title{
    width: 178px;
    height: 55px;
    position: relative;
    z-index: 5;
    flex-shrink: 0;
    color: #F9FED8;
    text-align: center;
    font-family: Novelist;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-transform: uppercase;
}
.announcements {
    display: flex;
    flex-direction: column;
    align-items: center; /* Центрируем весь блок на странице */
    width: 100%;
    max-width: 1156px;
    margin: 120px auto 0 auto;
    position: relative;
    z-index: 1;
}

/* Контейнеры рядов */
.announcements-row,
.announcements-main-row {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start; /* Прижимаем к левому краю внутри контейнера */
    width: 100%;
    gap: 32px; /* Управляем отступами через gap, это надежнее margin */
}

.announcements-1st-row-announce-tile-field {
    display: flex;
    flex-direction: row;
    gap: 32px;
}

/* ПЛИТКИ: Единый стандарт 364x226 */
.announcements-title-tile,
.announcements-1st-tile,
.announcements-tile {
    flex: 0 0 364px; /* Запрещаем сжатие (фикс для Яндекса) */
    width: 364px;
    height: 226px;
    position: relative;
    border-radius: 15px;
    overflow: hidden; /* Запираем картинку внутри */
    margin-bottom: 24px;
}

/* КАРТИНКА + КАВЕР (Слои) */
.announcements-tile img,
.announcements-1st-tile img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.announcements-tile-content-box {
    position: absolute;
    inset: 0;
    background: rgba(141, 11, 25, 0.82);
    z-index: 5;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 21px; /* Твой оригинальный отступ теперь через padding */
}

/* ШРИФТЫ (Жесткий фикс) */
.announcements-title {
    font-family: 'Novelist', serif !important;
    font-size: 48px;
    color: #5A062A;
    text-transform: uppercase;
}

.announcements-title-2 {
    font-family: 'Gabriola', serif !important;
    font-size: 32px;
    color: #5A062A;
    line-height: 30px;
}

.anons-title-1 {
    font-family: 'Novelist', serif !important;
    font-size: 32px;
    color: #FFF;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.anons-title-2 {
    font-family: 'Gabriola', serif !important;
    font-size: 20px;
    color: #F9FED8;
    line-height: 20px;
}

.announcement-btn {
    position: absolute;
    inset: 0;
    z-index: 20;
    cursor: pointer;
}

.up-button {
    display: flex;
    width: 65px;
    height: 65px;
    padding: 5px;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    aspect-ratio: 1/1;
    position: absolute;
    bottom: 10px;
    margin-left: 50%;
    transform: translate(-50%, 0);
    z-index: 3;
}

.cover {
    object-fit: cover;
    border-radius: 15px;
}
@media (max-width: 991.98px) {
    /* 1. ГЛОБАЛЬНЫЕ СБРОСЫ И ЦЕНТРИРОВАНИЕ */
    .index-background {
        height: auto !important;
        margin-bottom: 50px;
        overflow-x: hidden;
    }

    /* Универсальное центрирование всех секций */
    .about-main, .video-archive, .announcements,
    .about-tiles-group, .video-teasers, .announcements-row,
    .announcements-main-row, .announcements-1st-row-announce-tile-field {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        position: static !important;
        margin: 0 auto !important;
        transform: none !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 0 !important;
        box-sizing: border-box;
    }

    /* 2. БАННЕР */
    .banner-img { height: 450px !important; position: relative !important; }
    .main-title { font-size: 32px !important; width: 95% !important; }
    .main-title1 { font-size: 44px !important; }
    .torn-edge1 { position: absolute !important; bottom: -1px !important; height: 50px !important; }

    /* 3. БЛОК "О ПРОЕКТЕ" (Второй блок) */
    .about-tile {
        width: 296px !important;
        height: 181px !important;
        flex: 0 0 181px !important;
        margin: 0 auto 20px auto !important;
    }

    .about-text-group {
        width: 100% !important;
        padding: 0 25px !important;
        box-sizing: border-box;
        margin: 20px auto !important;
    }

    .about-text-group-title { font-size: 32px !important; text-align: center !important; height: auto !important; }
    .about-text-group-title2 { font-size: 20px !important; text-align: center !important; height: auto !important; }

    /* 4. ВИДЕОАРХИВ (Третий блок) */
    .video-archive { padding: 40px 0 !important; }
    .video-archive-text-title, .video-archive-text-title-2 {
        font-size: 32px !important;
        text-align: center !important;
        width: 100% !important;
    }
    .video-teasers-tile { margin-bottom: 20px; }

    /* 5. АНОНСЫ (Четвертый блок) */
    .announcements { top: 20px !important; }

    /* Исправление заголовка: центрируем строго */
    .announcements-title-tile {
        height: auto !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        margin-bottom: 15px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
    }

    /* Плитки анонсов: все одинаковые и без смещений */
    .announcements-1st-tile, .announcements-tile {
        width: 100% !important;
        max-width: 364px !important;
        height: 226px !important;
        flex: 0 0 226px !important;
        margin: 0 auto 30px auto !important;
        left: 0 !important;
        transform: none !important;
        overflow: hidden !important;
    }

    /* ФИКС ВЫЛЕТА ТЕКСТА ВНУТРИ ПЛИТОК АНОНСОВ */
    .announcements-tile-content-box {
        width: 100% !important;
        height: 100% !important;
        padding: 0 20px !important; /* Внутренние отступы вместо маргинов */
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    .anons-title-1, .anons-title-2 {
        width: 100% !important;
        max-width: none !important; /* Сбрасываем десктопные 322px */
        margin-left: 0 !important; /* Сбрасываем десктопные 21px */
        text-align: left !important; /* Текст внутри плитки прижат влево */
        word-wrap: break-word !important;
    }

    .anons-title-1 { font-size: 24px !important; margin-bottom: 5px !important; }
    .anons-title-2 { font-size: 18px !important; }

    /* 6. КНОПКИ */
    .more-btn {
        margin: 20px auto !important;
        align-self: center !important;
        transform: none !important;
        left: 0 !important;
        position: relative !important;
    }
}

@media (max-width: 480px) {
    .main-title { font-size: 28px !important; }
    .main-title1 { font-size: 36px !important; }
}

