.ininside {
    max-width: 100%;
    overflow-x: auto;     /* появится скролл, если контент шире */
  word-break: break-word;
  box-sizing: border-box;
}

.ininside * {
    max-width: 100%;
    box-sizing: border-box;
}

.bottom2 h3 {
  margin-top: 0px;
}

/* шапка */
.logo {
    padding-top: 5px;
}
.logo_text_wrapper {
    margin: 0px 0px 0px 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;

    color: #046499;
}
/* @media (min-width: 768px) {
    .sppb-col-sm-6 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }
} */
@media screen and (max-width: 1024px) {
  .sppb-col-sm-6 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }
.sppb-carousel-pro-content {
    max-height: 70vh;
    overflow-y: scroll;
}
}
@media screen and (max-width: 860px) {
    #sp-top-bar {
  /* padding-top: 50px; */
}
  #vision-panel {
    left: 30px !important;
  }
  }
@media screen and (max-width: 522px) {
    .logo_text_wrapper {
        /* display: none; */
    }
    .sppb-carousel-pro-content {
        font-size: 12px !important;
        max-height: 70vh;
        overflow-y: scroll;
    }
    .sppb-carousel-pro-content * {
        font-size: 12px !important;
    }
}
.logo_text_title {
    margin: 5px 0px 0px 0px;
    font-size: 16px;
    line-height: 16px;
}
.logo_text_subtitle {
    margin: 0px; 
    font-size: 14px;
    text-align: center;
    line-height: 14px;
}
.my-submenu {
    margin-left: 20px !important;
}

.sp-dropdown {
  width: 300px !important;
}
.sp-dropdown-sub {
  width: 400px !important;
  left: -400px !important;
}

/* Бургер скрыт на десктопе */
#offcanvas-toggler {
    display: none !important;
}

/* На планшетах и мобильных (менее 992px) - скрываем меню, показываем бургер */
@media (max-width: 992px) {
    #offcanvas-toggler {
        display: flex !important;
    }
}

/* Если нужно изменить точку останова на 768px */
@media (max-width: 768px) {
    #offcanvas-toggler {
        display: flex !important;
    }
}

.sp-megamenu-parent>li.active>a, .sp-megamenu-parent >li:hover>a {
    color: #004685;
}
.logo a, .logo a:hover, .logo a:focus {
    color: #004685;
}
#sp-top-bar, .sp-page-title {
    background: #004685;
}
.sp-megamenu-parent > li > a:before {
    background: #004685;
}
.event-callto-action .sppb-addon.sppb-addon-cta:before, .course-callto-action .sppb-addon.sppb-addon-cta:before, .sp-page-title:before {
    background: #004685;
}

@media screen and (max-width: 767px) {
    #sp-top-bar .sp-contact-info {
        text-align: center;
    }
    
    #sp-header.menu-fixed {
        position: relative;
    }
    .nav-placeholder, .sticky-header-placeholder {
        display: none;
    }
    #sp-logo {
        max-width: 75%;
    }
    .logo_text_title {
        font-size: 12px;
        text-align: left;
    }
    .logo_text_subtitle {
        font-size: 10px;
        text-align: left;
    }
}

.sp-scroll-up span{
    display: none !important;
}

body.ltr .sp-megamenu-parent .sp-dropdown.sp-dropdown-main.sp-menu-right {
    left: auto !important;
    right: 0 !important;
}

/* .sp-megamenu-parent .sp-dropdown li.sp-menu-item >a {
    padding: 10px 13px;
} */
.sp-megamenu-parent .sp-dropdown li.sp-menu-item >a:hover {
    /* background: #fcfcfc; */
    padding-left: 40px !important;
    padding-right: 4px !important;
}
body.ltr .sp-megamenu-parent .sp-dropdown .sp-dropdown-items .sp-has-child>a:after {
    position: absolute;
    right: 22px;
}

/* .sppb-column, */
#section-id-1776770313964 .sppb-row-column {
  margin-bottom: 20px;
}

.sp-megamenu-parent >li >a:before {
    left: auto !important;
}

/* заголовок */
.sppb-addon-title {
    font-size: 36px;
    line-height: 36px;
    color: rgba(37, 37, 37, 1);
    margin-bottom: 20px;

    word-break: break-word;
}

/* карусель */
.sppb-carousel-pro-text {
    color: #fff;
}
@media (max-width: 375px) {
    .sppb-carousel-pro-text h2 {
        font-size: 26px;
    }
}
.sppb-carousel-pro .sppb-item {
    height: 86vh !important;
}
@media (max-width: 991px) {
    .sppb-carousel-pro .sppb-item {
        height: 83.5vh !important;
    }
}
@media (max-width: 342px) {
    .sppb-carousel-pro .sppb-item {
        height: 81.5vh !important;
    }
}
.sppb-carousel-control {
    border: 0px !important;
    margin-bottom: 10px;
}
.sppb-carousel-pro-arrow-bottom-right .sppb-carousel-control {
    margin-left: 22px;
}
.sppb-carousel-indicators {
    left: 65%;
    width: 30%;
}

/* подвал */
#sp-footer .container-inner {
  border-top: 0px;
}

/* NEWS */
.pagination>.disabled>span {
  background: #c5c5c5 !important;
}
/* .pagination>.page-item>a {
  background: #ffffff !important;
}  */
/* страница новости */
.view-article #sp-main-body, .view-category #sp-main-body {
    padding-top: 25px;
}
.article-info {
    width: 100%;
    margin-bottom: 50px !important;
}
.article-info .published time {
    width: 100%;
    font-size: 16px;
    font-weight: 500;

    color: #646464;
}
/* архив новостей */
.article-list .article {
    position: relative;
    margin-bottom: 20px;
    padding: 0px;
    border: 0px solid #f5f5f5;
    border-radius: 0px;
}
/* страница с новостями */
.sp-page-title {
    padding: 50px 0 50px;
}
.article-info {
    margin: 0 15px 0 0;
}
.article-info span {
    font-size: 14px;
}
.article-header h2 {
    margin: 0;
}
/* Контейнер карусели */
.mod-articles-carousel {
    position: relative;
    padding: 20px 15px 60px;
    overflow: hidden;
}

/* ВАЖНО: фиксируем высоту слайдов */
.swiper-container {
    overflow: visible !important;
}

.swiper-slide {
    height: auto !important; /* Позволяет слайдам быть разной высоты */
}

/* 🔥 ОСНОВНОЙ КЛЮЧ: все карточки одной высоты */
.news-item {
    background: #fff;
    border-radius: 3px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    
    /* 🔥 ГЛАВНОЕ: Flexbox для одинаковой высоты */
    display: flex;
    flex-direction: column;
    height: 100%; /* Растягиваем на всю высоту слайда */
    
    /* Для одинаковой высоты всех карточек */
    min-height: 450px; /* Минимальная высота (настрой под себя) */

    font-weight: 600;
}

/* Медиа-запросы для адаптивной минимальной высоты */
@media (max-width: 767px) {
    .news-item {
        min-height: 400px; /* На телефонах чуть меньше */
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .news-item {
        min-height: 420px; /* На планшетах */
    }
}

/* Изображение - фиксируем высоту */
.news-image {
    position: relative;
    overflow: hidden;
    background: #f5f5f5;
    flex-shrink: 0; /* Запрещаем сжиматься */
}

.news-image img {
    width: 100%;
    height: 220px; /* ФИКСИРОВАННАЯ высота для всех изображений */
    object-fit: cover; /* Обрезает изображение, сохраняя пропорции */
    transition: transform 0.5s ease;
}

.placeholder-image {
    height: 220px; /* Такая же фиксированная высота */
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    font-size: 14px;
}

/* Контент - растягивается */
.news-content {
    padding: 20px;
    
    /* 🔥 ВАЖНО: Растягиваем контент на оставшееся место */
    flex: 1;
    display: flex;
    flex-direction: column;

    font-weight: 500;
}

.news-date {
    font-size: 12px;
    /* color: #999; */
    color: #3f51b5;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    flex-shrink: 0; /* Не сжимается */
}

.news-title {
    font-size: 18px;
    margin: 0 0 10px;
    line-height: 1.4;
    flex-shrink: 0;
    
    /* Ограничиваем заголовок */
    display: -webkit-box;
    -webkit-line-clamp: 2; /* Максимум 2 строки */
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-title a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s;
}

.news-title a:hover {
    color: #007bff;
}

/* 🔥 Интротекст прижимаем к низу */
.news-intro {
    font-size: 14px;
    color: #666;
    line-height: 1.6;
    
    /* Занимает всё свободное место */
    flex: 1;
    
    /* Ограничиваем количество строк */
    display: -webkit-box;
    -webkit-line-clamp: 3; /* Максимум 3 строки */
    -webkit-box-orient: vertical;
    overflow: hidden;
    
    margin-top: auto; /* Прижимаем к низу */
}

/* Навигационные кнопки */
.swiper-button-prev,
.swiper-button-next {
    top: auto !important;
    bottom: 0px !important;
    width: 40px !important;
    height: 40px !important;
    /* background: rgba(0,0,0,0.5); */
    background: #3f51b5;
    border-radius: 5px;
    backdrop-filter: blur(5px);
    transition: all 0.3s;
}
.swiper-button-prev::after,
.swiper-button-next::after {
    font-size: 14px !important;
}

.swiper-button-prev:hover,
.swiper-button-next:hover {
    /* background: rgba(0,0,0,0.8); */
    /* background-color: #3849a2; */
    background-color: #ffc94e;
}

.swiper-button-prev:after,
.swiper-button-next:after {
    font-size: 18px;
    color: white;
}

/* Пагинация */
.swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: #007bff;
    opacity: 0.5;
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: #007bff;
}

/* Адаптив для телефонов */
@media (max-width: 767px) {
    .swiper-button-prev,
    .swiper-button-next {
        width: 30px;
        height: 30px;
    }
    
    .news-title {
        font-size: 16px;
    }
    
    .news-content {
        padding: 15px;
    }
    
    .news-image img,
    .placeholder-image {
        height: 180px; /* На телефонах меньше */
    }
}