

@font-face {
  font-family: Exo-Black;
  src: url(../font/Exo-Black.ttf);
}



         .banner {
            display: block;
            width: 100%;
            background-color: #161616;
            margin-top: 0px;
         }


         .banner_inner {
            display: flex;
            justify-content: row;
            max-width: 1154px;
            height: auto;
            gap: 0px;
            margin: 0 auto; /* Центрируем по горизонтали */
            box-sizing: border-box; /* Включаем отступы в расчет размера */
         }



         .banner_big {
            display: flex;
            flex-direction: column; /* Размещение элементов по вертикали */
            justify-content: flex-start; /* Выровнять элементы по верхнему краю */
            max-width: 577px;
                flex-grow: 1; /* разрешаем контейнеру расти, если есть место */
         }

         .banner_mini {
            display: flex;
            flex-direction: column; /* Размещение элементов по вертикали */
            justify-content: flex-start; /* Выровнять элементы по верхнему краю */
            max-width: 288px;
                flex-grow: 1; /* разрешаем контейнеру расти, если есть место */
         }



         /* ===========  MEDIA  ===========  */

         @media (max-width: 1154px) {
         .banner_inner {
            margin-left: 40px;
            margin-right: 40px;
                display: flex;
                flex-direction: column; /* Размещение элементов по вертикали */
                justify-content: flex-start; /* Выровнять элементы по верхнему краю */
         }
         .banner_big {
            max-width: 1100px;
         }
         .banner_mini {
            max-width: 1100px;
         }
         }




         /* ======  Tag  ======  */

         .banner_tag {
            display: flex;
            align-items: center;
            align-items: center;       /* центрирование по вертикали */
            cursor: pointer;
            margin-top: -1px;
         }

         .banner_tag_square {
            width: 9.5px;
            height: 9.5px;
            border-radius: 0px;
            background-color: #d42121;
            margin-right: 6.5px;
            transition: width 0.3s ease; /* плавное изменение ширины */
         }
         
         .banner_tag:hover .banner_tag_square {
            width: 5px;    /* При ховере по контейнеру квадратик сжимается */
         }

         .banner_tag_txt {
            font-family: Helvetica, Arial, sans-serif;
            font-size: 11px;
            font-weight: bold;
            text-transform: uppercase;
            color: #ffffff;
         }




         /* ===========  BIG  ===========  */

         .banner_big_topic {
            display: flex;
            flex-direction: column; /* Размещение элементов по вертикали */
            justify-content: flex-start; /* Выровнять элементы по верхнему краю */
            max-width: 577px;
            margin-top: 0px;
            margin-bottom: 0px;
                flex-grow: 1; /* позволяет контейнеру адаптироваться */
         }


         .banner_big_topic_img {
                width: 100%; /* Адаптивная ширина */
                height: auto; /* Автоматическая высота */
                aspect-ratio: 1154 / 949; /* Сохраняет соотношение сторон */
            overflow: hidden; /* Скрывает части изображения, выходящие за рамки */
            position: relative; /* Для правильного позиционирования изображения и текста внутри */
         }

         @media (max-width: 1154px) {
            .banner_big_topic {
               max-width: 1154px;
               width: 100%;
            }
            .banner_big_topic_img {
                width: 100%; /* Адаптивная ширина */
                height: auto; /* Автоматическая высота */
                aspect-ratio: 1024 / 700; /* Сохраняет соотношение сторон */
            overflow: hidden; /* Скрывает части изображения, выходящие за рамки */
            position: relative; /* Для правильного позиционирования изображения */
            }
         }

         .banner_big_topic_img img {
            width: 100%; /* Растягиваем изображение по ширине контейнера */
            height: 100%; /* Растягиваем изображение по высоте контейнера */
            object-fit: cover; /* Сохраняет соотношение сторон, обрезая лишнее */
            position: absolute;
            top: 50%; /* Центрируем по вертикали */
            left: 50%; /* Центрируем по горизонтали */
            transform: translate(-50%, -50%); /* Сдвигаем для точного центрирования */
                transition: transform 0.3s ease;  /* Увеличение при ховере */
         }

         .banner_big_topic_img:hover img {
                transform: translate(-50%, -50%) scale(1.06);  /* Увеличение при ховере */
         }

         .banner_big_text {
            position: absolute;
            bottom: 0;  /* прижат к низу */
            left: 0;
            right: 0;
            padding-left: 37px; /* Отступы вокруг текста */
            padding-right: 37px;
            padding-bottom: 32px;
            background: linear-gradient(transparent, rgba(0,0,0,1)); /* Градиент */
            display: flex;
            flex-direction: column; /* Размещение элементов по вертикали */
            align-items: flex-start;
            box-sizing: border-box;
         }


        .banner_big_topic_title {
            font-family: Exo-Black;
            text-align: left;
            font-size: 37px;
            font-weight: normal;
            line-height: 44px;
            color: #ffffff;
                display: block; /* Позволяет тексту вести себя как блочный элемент */
                max-height: calc(44px * 2); /* Ограничиваем высоту N строками */
                overflow: hidden; /* Обрезаем лишний текст */
            margin-top: 7px;
            margin-bottom: 7px;
               transition: transform 0.3s ease;
        }

        .banner_big_topic_title:hover {
               transform: translateX(2px);
        }

        .banner_big_topic_title a {
            color: #ffffff;
            text-decoration-line: underline;       /* всегда подчеркивание */
            text-decoration-color: transparent;    /* но изначально невидимое */
            text-decoration-thickness: 2px;        /* толщина линии */
            text-underline-offset: 2px;            /* небольшой отступ от текста */
            transition: text-decoration-color 0.3s ease; /* плавное появление/исчезновение */
        }

        .banner_big_topic_title a:hover {
            text-decoration-color: #ffffff;
        }

        .banner_big_topic_short {
            font-family: Helvetica, Arial, sans-serif;
            text-align: left;
            font-size: 13.3px;
            font-weight: normal;
            line-height: 22px;
            color: #ffffff;
                display: block; /* Позволяет тексту вести себя как блочный элемент */
                max-height: calc(22px * 2); /* Ограничиваем высоту N строками */
                overflow: hidden; /* Обрезаем лишний текст */
            margin-bottom: 14px;
        }



         .banner_big_info {
            display: flex;
            flex-direction: row; /* Размещение элементов по горизонтали */
            justify-content: flex-start; /* Выровнять элементы по верхнему краю */
            height: auto;
            width: 100%;
            margin-top: 12px;
                opacity: 0.99;
         }

         .banner_big_info_author {
            font-family: Helvetica, Arial, sans-serif;
            text-align: left;
            font-size: 10px;
            font-weight: bold;
            text-transform: uppercase;
            color: #ffffff;
         }

         .banner_big_info_author a {
            color: #ffffff;
            text-decoration-line: underline;       /* всегда подчеркивание */
            text-decoration-thickness: 0.5px;        /* толщина линии */
            text-underline-offset: 2.5px;            /* небольшой отступ от текста */
            text-decoration-color: #ffffff;
            transition: text-decoration-color 0.3s ease; /* плавное появление/исчезновение */
         }

         .banner_big_info_author a:hover {
            color: #ffffff;
            text-decoration-color: transparent; 
         }

         .banner_big_info_divider {
            width: 1.5px;
            height: 1.5px;
            background-color: #ffffff;
            margin-top: 5px;
            margin-left: 6px;
            margin-right: 6px;
         }

         .banner_big_info_date {
            font-family: Helvetica, Arial, sans-serif;
            text-align: left;
            font-size: 10px;
            font-weight: bold;
            color: #ffffff;
            margin-bottom: 0px;
            text-transform: uppercase;
         }




         /* ===========  MINI  ===========  */

         .banner_mini_topic {
            display: flex;
            flex-direction: column; /* Размещение элементов по вертикали */
            justify-content: flex-start; /* Выровнять элементы по верхнему краю */
            max-width: 288px;
            margin-top: 0px;
            margin-bottom: 0px;
                flex-grow: 1; /* позволяет контейнеру адаптироваться */
         }


         .banner_mini_topic_img {
                width: 100%; /* Адаптивная ширина */
                height: auto; /* Автоматическая высота */
                aspect-ratio: 577 / 949; /* Сохраняет соотношение сторон */
            overflow: hidden; /* Скрывает части изображения, выходящие за рамки */
            position: relative; /* Для правильного позиционирования изображения и текста внутри */
         }

         @media (max-width: 1154px) {
            .banner_mini_topic {
               max-width: 1154px;
               width: 100%;
            }
            .banner_mini_topic_img {
                width: 100%; /* Адаптивная ширина */
                height: auto; /* Автоматическая высота */
                aspect-ratio: 1024 / 700; /* Сохраняет соотношение сторон */
            overflow: hidden; /* Скрывает части изображения, выходящие за рамки */
            position: relative; /* Для правильного позиционирования изображения */
            }
         }

         .banner_mini_topic_img img {
            width: 100%; /* Растягиваем изображение по ширине контейнера */
            height: 100%; /* Растягиваем изображение по высоте контейнера */
            object-fit: cover; /* Сохраняет соотношение сторон, обрезая лишнее */
            position: absolute;
            top: 50%; /* Центрируем по вертикали */
            left: 50%; /* Центрируем по горизонтали */
            transform: translate(-50%, -50%); /* Сдвигаем для точного центрирования */
                transition: transform 0.3s ease;  /* Увеличение при ховере */
         }

         .banner_mini_topic_img:hover img {
                transform: translate(-50%, -50%) scale(1.06);  /* Увеличение при ховере */
         }

         .banner_mini_text {
            position: absolute;
            bottom: 0;  /* прижат к низу */
            left: 0;
            right: 0;
            padding-left: 17px; /* Отступы вокруг текста */
            padding-right: 17px;
            padding-bottom: 32px;
            background: linear-gradient(transparent, rgba(0,0,0,1)); /* Градиент */
            display: flex;
            flex-direction: column; /* Размещение элементов по вертикали */
            align-items: flex-start;
            box-sizing: border-box;
         }

        .banner_mini_topic_title {
            font-family: Exo-Black;
            text-align: left;
            font-size: 24px;
            font-weight: normal;
            line-height: 30px;
            color: #ffffff;
                display: block; /* Позволяет тексту вести себя как блочный элемент */
                max-height: calc(30px * 3); /* Ограничиваем высоту N строками */
                overflow: hidden; /* Обрезаем лишний текст */
            margin-top: 8px;
            margin-bottom: 6px;
               transition: transform 0.3s ease;
        }

        .banner_mini_topic_title:hover {
               transform: translateX(2px);
        }

        .banner_mini_topic_title a {
            color: #ffffff;
            text-decoration-line: underline;       /* всегда подчеркивание */
            text-decoration-color: transparent;    /* но изначально невидимое */
            text-decoration-thickness: 1.5px;        /* толщина линии */
            text-underline-offset: 2px;            /* небольшой отступ от текста */
            transition: text-decoration-color 0.3s ease; /* плавное появление/исчезновение */
        }

        .banner_mini_topic_title a:hover {
            text-decoration-color: #ffffff;
        }

         @media (max-width: 1154px) {
            .banner_mini_topic_title {
                font-size: 30px;
                line-height: 36px;
                    display: block; /* Позволяет тексту вести себя как блочный элемент */
                    max-height: calc(36px * 4); /* Ограничиваем высоту N строками */
                    overflow: hidden; /* Обрезаем лишний текст */
                margin-top: 15px;
                margin-bottom: 13px;
            }
            .banner_mini_topic_title a {
                text-decoration-line: underline;       /* всегда подчеркивание */
                text-decoration-color: transparent;    /* но изначально невидимое */
                text-decoration-thickness: 2px;        /* толщина линии */
                text-underline-offset: 2px;            /* небольшой отступ от текста */
                transition: text-decoration-color 0.3s ease; /* плавное появление/исчезновение */
            }
            .banner_mini_topic_title a:hover {
                text-decoration-color: #ffffff;
            }
         }


        .banner_mini_topic_short {
            font-family: Helvetica, Arial, sans-serif;
            text-align: left;
            font-size: 13.3px;
            font-weight: normal;
            line-height: 22px;
            color: #ffffff;
                display: block; /* Позволяет тексту вести себя как блочный элемент */
                max-height: calc(22px * 2); /* Ограничиваем высоту N строками */
                overflow: hidden; /* Обрезаем лишний текст */
            margin-bottom: 14px;
        }


         .banner_mini_info {
            display: flex;
            flex-direction: row; /* Размещение элементов по горизонтали */
            justify-content: flex-start; /* Выровнять элементы по верхнему краю */
            height: auto;
            width: 100%;
            margin-top: 13px;
                opacity: 0.99;
         }

         .banner_mini_info_author {
            font-family: Helvetica, Arial, sans-serif;
            text-align: left;
            font-size: 9px;
            font-weight: bold;
            text-transform: uppercase;
            color: #ffffff;
         }

         .banner_mini_info_author a {
            color: #ffffff;
            text-decoration-line: underline;       /* всегда подчеркивание */
            text-decoration-thickness: 0.5px;        /* толщина линии */
            text-underline-offset: 2.5px;            /* небольшой отступ от текста */
            text-decoration-color: #ffffff;
            transition: text-decoration-color 0.3s ease; /* плавное появление/исчезновение */
         }

         .banner_mini_info_author a:hover {
            color: #ffffff;
            text-decoration-color: transparent; 
         }

         .banner_mini_info_divider {
            width: 2px;
            height: 1.5px;
            background-color: #ffffff;
            margin-top: 4px;
            margin-left: 6px;
            margin-right: 6px;
         }

         .banner_mini_info_date {
            font-family: Helvetica, Arial, sans-serif;
            text-align: left;
            font-size: 9px;
            font-weight: bold;
            color: #ffffff;
            margin-bottom: 0px;
            text-transform: uppercase;
         }



         /* ===========  MEDIA  (TITLE FONT SIZE)  ===========  */

         @media (max-width: 500px) {
        .banner_big_topic_title {
            font-size: 25px;
            font-weight: normal;
            line-height: 27px;
            color: #ffffff;
                display: block; /* Позволяет тексту вести себя как блочный элемент */
                max-height: calc(27px * 2); /* Ограничиваем высоту N строками */
                overflow: hidden; /* Обрезаем лишний текст */
        }
            .banner_mini_topic_title {
                font-size: 25px;
                line-height: 27px;
                    display: block; /* Позволяет тексту вести себя как блочный элемент */
                    max-height: calc(27px * 3); /* Ограничиваем высоту N строками */
                    overflow: hidden; /* Обрезаем лишний текст */
            }
         }




