

/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_about_portal/style.css?177684852992*/
.main-about__content-text {
    line-height: 1.3;
    color: #123670;
    font-size: 18px;
}
/* End */


/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_slider_simple/style.css?17914447463429*/
.swiper-button-next,.swiper-button-prev {
    height: 32px !important;
    width: 32px !important;
    background: rgba(255,255,255,.9);
    border-radius: 4px;
    color: #1c1b1d !important;
}

@media screen and (max-width: 920px) {
    .swiper-button-next,.swiper-button-prev {
        display: none !important;
    }
}

.swiper-button-next:after,.swiper-button-prev:after {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    background-color: currentColor;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="16" height="14" viewBox="0 0 16 14" fill= "none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M8.48522 0.171767C8.77669 0.171767 9.05102 0.274638 9.26533 0.480382L14.9919 6.22406C15.1976 6.4298 15.3176 6.70413 15.3176 6.9956C15.3176 7.29564 15.1976 7.56139 14.9919 7.75856L9.24819 13.5022C9.05102 13.708 8.77669 13.828 8.47665 13.828C8.17661 13.828 7.90228 13.708 7.70511 13.5022C7.49937 13.3051 7.37935 13.0307 7.37935 12.7393C7.37935 12.4392 7.49937 12.1735 7.70511 11.9677L11.5971 8.08433L1.76426 8.08433C1.17275 8.08433 0.684109 7.57854 0.684109 6.9956C0.684109 6.40409 1.17275 5.91544 1.76426 5.91544L11.5971 5.91544L7.71368 2.01489C7.50794 1.81772 7.38792 1.54339 7.38792 1.24335C7.38792 0.943306 7.50794 0.668981 7.71368 0.471809C7.928 0.266066 8.20232 0.171767 8.48522 0.171767Z" fill="currentColor" /> </svg>');
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain
}

.swiper-button-next {
    right: 28px
}

.swiper-button-prev {
    left: 28px
}

.swiper-button-prev:after {
    transform: rotate(180deg)
}

.main-banner__link {
    padding: 14px !important;
}

.swiper-pagination {
    display: flex;
    justify-items: center;
    width: auto;
    justify-self: anchor-center;
}
.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
     left: unset !important;
    width: auto !important;
    justify-self: anchor-center;
 }

/* Мобильная раскладка слайда. Текст баннера впечатан в картинку (широкая, 1336×440),
   поэтому на узком экране её нельзя обрезать под карточку и накрывать подписью:
   впечатанные буквы лезут под заголовок. Картинка идёт сверху целиком, подпись —
   под ней на сплошном фоне. */
@media screen and (max-width: 920px) {
    /* Подписи разной длины — слайды тянутся по самому высокому, иначе слайдер прыгает. */
    .banner-slider .banner-slider__slide {
        height: auto;
    }

    .banner-slider .main-banner[data-v-76c1af65] {
        flex-direction: column;
        align-items: stretch;
        min-height: 0;
        height: 100%;
        background: #123670;
    }

    .banner-slider .main-banner__bg[data-v-76c1af65] {
        position: static;
        z-index: auto;
        height: auto;
        aspect-ratio: 1336 / 440;
        flex-shrink: 0;
    }

    .banner-slider .main-banner[data-v-76c1af65]:after {
        display: none;
    }

    .banner-slider .main-banner__content[data-v-76c1af65] {
        width: 100%;
        max-width: none;
        flex-grow: 1;
    }
}

/* End */


/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_name_button_big/style.css?17865674212023*/
.intro-section__description {
    /* width: 412px; */
    max-width: 412px;
    text-align: center;
}

.text-color-animate__word {
    display: inline-flex;
    flex-wrap: nowrap; /* Запрещаем перенос внутри слова */
    white-space: nowrap; /* Дополнительная защита от переноса */
    margin: 0;
    padding: 0;
}

.text-color-animate__letter {
    display: inline-block;
    transition: opacity 0.15s ease;
    will-change: opacity;
    margin: 0;
    padding: 0;
    /* Убираем любые дополнительные отступы между буквами */
    letter-spacing: normal;
    word-spacing: normal;
}

/* Для заголовка */
.letter-opacity-title {
    margin: 0;
    padding: 0;
    line-height: 1.4;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 0.25em; /* Пробелы между словами регулируются через gap */
}

/* Убираем стандартные пробелы, так как используем gap */
.letter-opacity-title .text-color-animate__word + .text-color-animate__word::before {
    content: none;
}

/* Для адаптивности на мобильных */
@media (max-width: 768px) {
    .letter-opacity-title {
        gap: 0 0.15em;
    }
}

/*
 * Слово не переносится по буквам, поэтому на узких экранах заголовок должен
 * ужиматься по самому длинному слову. «зарегистрированных» в Raleway Bold —
 * это 10.53em, плюс запас: делим доступную ширину (вьюпорт минус боковые
 * отступы .page-container--with-padding) на 10.8.
 * min() включается только ниже ~400px, выше кегль остаётся штатным.
 */
.main-page-block__title.letter-opacity-title {
    font-size: min(var(--h1-font-size), calc((100vw - 30px) / 10.8));
}

/* End */


/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_catalog/style.css?17863498761086*/
.product-card__brand_index {
    height: auto;
    display: block;
    overflow: visible;
    margin-top:16px
}

.chip-component {
    border-radius: 10px;
}

.product_type {
    background: #2F8EED;
    padding: 2px 8px;
    color: white;
}

.products-services .product-card__btn {
    padding: 14px !important;
}

/* Сердечко лежит поверх ссылки-обёртки карточки — иначе клик по нему не ловится */
.products-services .favourite-button {
    position: relative;
    z-index: 2;
    cursor: pointer;
}

/* Товар в избранном. Селектор из трёх классов перебивает fill: transparent,
   который вешает на сердечко общий стиль .favourite-button[data-v-8221785b] */
.products-services .favourite-button.remove-to-favorite svg path {
    fill: #8654CC;
    stroke: #8654CC;
}

/* Пока идёт запрос — кнопка не кликается */
.products-services .favourite-button.loading {
    opacity: 0.5;
    pointer-events: none;
}

/* End */


/* Start:/local/components/b2c/ui.button/buttons.css?17851611903168*/
.b2c-btn {
    position: relative;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 16px;
    box-sizing: border-box;
    border: solid transparent 2px;
    border-radius: 8px;
    text-decoration: none !important;
    font-weight: 500;
    font-family: var(--font-family-1);
    font-size: 16px;
    line-height: 140%;
    cursor: pointer;
}
.b2c-btn, .b2c-btn * {
    transition: var(--animate-duration);
}
.b2c-btn_inline {
    display: inline-flex;
}
.b2c-btn.b2c-btn_square {
    width: 44px;
    padding: 10px;
}

.b2c-btn.b2c-btn_icon {
    min-height: 36px;
    padding: 0;
    background: transparent;
    border-color: transparent;
    color: var(--t-color-1);
}

.b2c-btn_1 {
    background: var(--q-primary);
    border-color: var(--q-primary);
    color: var(--t-color-5);
}
.b2c-btn_1:hover {
    background: var(--q-accent);
    border-color: var(--q-accent);
    color: var(--t-color-5);
}

.b2c-btn_2 {
    background: var(--q-accent);
    border-color: var(--q-accent);
    color: var(--t-color-5);
}
.b2c-btn_2:hover {
    background: var(--q-primary);
    border-color: var(--q-primary);
    color: var(--t-color-5);
}

.b2c-btn_3 {
    background: var(--bg-page);
    border-color: var(--bg-page);
    color: var(--t-color-1);
}
.b2c-btn_3:hover {
    background: var(--q-primary);
    border-color: var(--q-primary);
    color: var(--t-color-5);
}
.b2c-btn_border-3 {
    border-color: var(--t-color-1);
}

.b2c-btn_4 {
    background: var(--bg-page);
    border-color: var(--bg-page);
    color: var(--t-color-1);
}
.b2c-btn_4:hover {
    background: var(--q-accent);
    border-color: var(--q-accent);
    color: var(--t-color-5);
}

.b2c-btn_5 {
    background: var(--bg-page);
    border-color: var(--t-color-4);
    color: var(--t-color-4);.b2c-btn;

    svg path {
        color: var(--t-color-4);
        stroke: var(--t-color-4);
    }
}
.b2c-btn_5:hover {
    background: var(--t-color-4);
    border-color: var(--t-color-5);
    color: var(--t-color-5);

    svg path {
        color: var(--t-color-5);
        stroke: var(--t-color-5);
    }
}

.b2c-btn_6 {
    background: var(--t-color-4);
    border-color: var(--t-color-4);
    color: var(--t-color-5);

    svg path {
        color: var(--t-color-5);
        stroke: var(--t-color-5);
    }
}
.b2c-btn_6:hover {
    background: var(--t-color-5);
    border-color: var(--t-color-5);
    color: var(--t-color-4);

    svg path {
        color: var(--t-color-4);
        stroke: var(--t-color-4);
    }
}
.b2c-btn_border-6 {
    border-color: var(--t-color-1);
}

.b2c-btn-icon {
    background: none !important;
    outline: none !important;
    border: none !important;
    padding: 0 !important;
    cursor: pointer;
}

.b2c-btn_7 {
    background: white;
    border-color: var(--q-primary);
    color: var(--q-primary);

    svg path {
        color: var(--q-primary);
        stroke: var(--q-primary);
    }
}
.b2c-btn_7:hover {
    background: white;
    border-color: var(--q-clear);
    color: var(--q-clear);

    svg path {
        color: var(--q-clear);
        stroke: var(--q-clear);
    }
}

/* End */


/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_banner_1_small/style.css?1785342301921*/


.main-banner__btn {
    margin-top: 24px;
    width: 230px;
    max-width: 230px;
}

.about-catalog__content {
    width: 414px;
    max-width: 414px;
}

.about-catalog__text > strong:last-child,
.about-catalog__text > b:last-child,
.about-catalog__text > br + strong:last-child,
.about-catalog__text > br + b:last-child {
    display: block;
    margin-top: 8px;
}

.about-catalog__text > p:last-child:has(> strong:only-child),
.about-catalog__text > p:last-child:has(> b:only-child) {
    margin-top: 8px;
}

@media screen and (max-width: 920px) {
    .about-catalog__content {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }
    .about-catalog__content-btns {
        display: flex;
        justify-content: center;
    }
}

@media screen and (max-width: 480px) {
    /* .about-catalog__content {
        width: 320px;
        max-width: 100%;
    } */
}

/* End */


/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_stock_market/style.css?17853414883291*/
.exchange-banner__btn {
    max-width: 232px;
    background-color: white;
    border-color: white;
    color: #0A1A3E;
}

.exchange-banner__btn:hover {
    background-color: #0A1A3E;
    border-color: #0A1A3E;
    color: white;
}

@media (max-width: 768px) {
    .exchange-banner__btn {
        max-width: 100%;
    }
}

/* Стили для карточки информации */
.query-exchange__card--info {
    background: linear-gradient(135deg, #f5f7fa 0%, #e9edf5 100%);
    border-radius: 24px;
    padding: 32px;
    position: relative;
    overflow: hidden;
    min-height: 400px;
    background-repeat: no-repeat;
    background-position: right center;
    background-size: contain;
    background-image: url("/local/templates/enter/images/background.svg");
}

.query-exchange__bg {
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 0;
    height: 100%;
}

@media (max-width: 486px) {
    .query-exchange__bg {
        display: none;
    }
}

.query-exchange__subtitle {
    color: #0A1A3E;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 12px;
    position: relative;
    z-index: 1;
}

.query-exchange__text {
    color: #0A1A3E;
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 24px;
    position: relative;
    z-index: 1;
    max-width: 80%;
}

/* Стили для карточки списка */
.query-exchange__card--list {
    background: transparent;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* Стили для карточки элемента */
.query-exchange-card {
    background: #FFFFFF;
    border-radius: 16px;
    padding: 16px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.query-exchange-card:hover {
    box-shadow: 0 8px 24px rgba(10, 26, 62, 0.1);
    transform: translateY(-2px);
}

.query-exchange-card__title {
    color: #0A1A3E;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 12px 0;
}

.query-exchange-card__text {
    color: #0A1A3E;
    font-size: 18px;
    line-height: 1.5;
    margin: 0 0 20px 0 !important;
    opacity: 0.9;
}

.query-exchange-card__detail {
    color: #0A1A3E;
    font-size: 16px;
    line-height: 1.4;
    margin-bottom: 8px !important;
}

.query-exchange-card__detail:last-child {
    margin-bottom: 0;
}

.query-exchange-card__detail .text-weight-medium {
    font-weight: 500;
    margin-right: 4px;
    color: #0A1A3E;
}

.query-exchange-card__detail span:not(.text-weight-medium) {
    font-weight: 400;
    color: #0A1A3E;
    opacity: 0.8;
}

/* Адаптивность */
@media (max-width: 768px) {
    .query-exchange__card--info {
        min-height: 300px;
    }

    .query-exchange__text {
        max-width: 100%;
    }

    .query-exchange__subtitle {
        font-size: 20px;
    }

    .query-exchange__text {
        font-size: 16px;
    }

    .query-exchange-card__title {
        font-size: 20px;
    }

    .query-exchange-card__text {
        font-size: 16px;
    }

    .query-exchange-card__detail {
        font-size: 14px;
    }
}

@media (max-width: 764px) {
    .query-exchange__content {
        flex-direction: column;
    }
}

.query-exchange__subtitle {
    color: white;
}

.query-exchange__text {
    color: white;
}

/* End */


/* Start:/local/components/spll/interact.map/templates/.b2b_small/style.css?17848121279041*/
/* Индикатор загрузки */
.loading-indicator {
    position: absolute;
    top: 10px;
    right: 10px;
    background: var(--bg-page);
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
    z-index: 1000;
    min-width: 250px;
    max-width: 300px;
}

.loading-indicator h4 {
    margin: 0 0 10px 0;
    font-size: 14px;
    color: var(--t-color-3);
    font-weight: 600;
}

.loading-progress-container {
    width: 100%;
    height: 10px;
    background: #f0f0f0;
    border-radius: 5px;
    overflow: hidden;
    margin-bottom: 8px;
}

.loading-progress-bar {
    height: 100%;
    background: linear-gradient(90deg, #1E98FF, #4CAF50);
    transition: width 0.5s ease;
}

.loading-stats {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    color: #666;
}

.loading-stats span {
    font-weight: 600;
    color: #333;
}

/* Карусель в балуне кластера */
.ymaps-2-1-79-balloon {
    background: var(--bg-page);
    border: 1px solid var(--border-color-2);
    border-radius: 16px;
    max-width: 440px;
    padding: 24px 12px 24px 24px !important;
    overflow: hidden;

    .ymaps-2-1-79-balloon__content>ymaps {
        width: 100% !important;
    }

    .ymaps-2-1-79-balloon__tail {
        display: none;
    }
}

/* Стили для балуна */
.ymaps-2-1-79-balloon__close-button {
    opacity: 0.7;
    transition: opacity 0.2s;
}

.ymaps-2-1-79-balloon__close-button:hover {
    opacity: 1;
}


/* Общий контейнер */
.interact-map-wrapper {
    display: flex;
    gap: var(--space-3);
    position: relative;
    overflow: hidden;
    padding-top: 140px;
}


/* Чекбоксы в стиле Quasar */
.q-checkbox {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    position: relative;
    user-select: none;
    /* Убираем space-between и reverse, чтобы было как на референсе (слева чекбокс, потом текст) */
    justify-content: space-between;
    gap: var(--space-8);
    width: 100%;
}

.q-checkbox__inner {
    width: 18px;
    height: 18px;
    border: 1px solid var(--q-primary);
    border-radius: 4px !important;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s, border-color 0.2s;
    position: relative;
    flex-shrink: 0;
}

/* Скрытый нативный чекбокс */
.q-checkbox__native {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

/* SVG галочка */
.q-checkbox__svg {
    width: 100% !important;
    height: 100% !important;
    color: #fff;
    opacity: 0;
    transform: scale(0);
    transition: opacity 0.2s, transform 0.2s;
    stroke: currentColor;
    stroke-width: 2px;
}

/* Состояние checked */
.q-checkbox__native:checked+.q-checkbox__bg .q-checkbox__svg {
    opacity: 1;
    transform: scale(1);
}

.q-checkbox__native:checked+.q-checkbox__bg {
    background: var(--q-primary);
    border-color: var(--q-primary);
}

.q-checkbox__bg {
    width: 100% !important;
    height: 100% !important;
    position: absolute;
    top: 0 !important;
    left: 0 !important;
}

/* Center the SVG and show stroke on the path element. Ensure border and radius on bg so checkbox looks correct. */
.q-checkbox__bg {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border-radius: 4px;
    border: 1px solid var(--q-primary);
    background: transparent;
}

.q-checkbox__svg .q-checkbox__truthy {
    fill: white;
}

.q-checkbox__svg path {
    fill: white !important;
}

.q-checkbox__label {
    display: flex;
    align-items: center;
    gap: var(--space-2);
}

.bx-yandex-view-layout {
    flex: 1 1 auto;
    max-width: 1032px;
    border-radius: 28px;
    overflow: hidden;
    height: 393px;
    min-width: 0;
}

.bx-yandex-view-map {
    width: 100%;
    height: 100%;
}

.map-sidebar.filter {
    border-radius: 16px;
    border: 1px solid #D1ECFE;
    padding: 24px;
    width: 100%;
    max-width: 288px;
    flex-shrink: 0;
    box-sizing: border-box;
}

.filter .filter__title {
    font-size: 20px;
    font-weight: 700;
    line-height: 120%;
    margin-bottom: 20px;
}

.filter .filter__checkboxes {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 20px;
}

.q-checkbox .t-3 {
    font-size: 14px;
    font-weight: 500;
}

#multi-fetch-progress {
    display: none;
    position: absolute;
    top: 10px;
    right: 10px;
    background: white;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
    min-width: 290px;
    z-index: 1000;
}

#multi-fetch-progress .title {
    margin-bottom: 12px;
    font-weight: 600;
    font-size: 14px;
    color: #333;
}

#multi-fetch-progress .progress-item {
    margin-bottom: 12px;
}

.progress-item .wrapper-title {
    display: flex;
    justify-content: space-between;
    margin-bottom: 4px;
    font-size: 12px;
}

.progress-item .progress-bar-container {
    background: #f0f0f0;
    height: 6px;
    border-radius: 3px;
    overflow: hidden;
}

.progress-item .progress-bar-fill {
    width: 0%;
    height: 100%;
    background: #32D3FF;
    transition: width 0.3s;
}

/* Адаптивные стили для интерактивной карты */

/* Для планшетов и небольших экранов */
@media (max-width: 1024px) {
    .interact-map-wrapper {
        padding-top: 80px;
        padding-bottom: 30px;
    }

    .map-sidebar.filter {
        max-width: 260px;
        padding: 20px;
    }

    .bx-yandex-view-layout {
        max-width: none;
    }

    /* Чекбоксы всегда столбиком */
    .filter .filter__checkboxes {
        flex-direction: column;
        gap: 16px;
        margin-bottom: 20px;
    }

    .filter .filter__checkboxes .q-checkbox {
        width: 100%;
    }
}

@media (max-width: 920px) {
    .interact-map-wrapper + .main-page-block2 + .support-banner,
    .interact-map-wrapper + .main-page-block2 + .menu-anchor + .support-banner {
        margin-top: 50px;
    }
}

/* Для мобильных устройств */
@media (max-width: 767px) {
    .interact-map-wrapper {
        flex-direction: column;
        gap: var(--space-3);
        padding-bottom: 30px;
    }

    .map-sidebar.filter {
        order: 2;
        max-width: 100%;
        padding: 16px;
        border-radius: 12px;
    }

    .bx-yandex-view-layout {
        order: 1;
        max-width: 100%;
    }

    .filter .filter__title {
        font-size: 18px;
        margin-bottom: 16px;
    }

    /* Чекбоксы столбиком */
    .filter .filter__checkboxes {
        flex-direction: column;
        gap: 12px;
        margin-bottom: 16px;
    }

    .filter .filter__checkboxes .q-checkbox {
        width: 100%;
    }

    .q-checkbox .t-3 {
        font-size: 13px;
    }

    /* Адаптация прогресс-бара */
    #multi-fetch-progress {
        top: auto;
        bottom: 10px;
        right: 10px;
        left: 10px;
        max-width: none;
        min-width: auto;
    }

    .loading-indicator {
        top: auto;
        bottom: 10px;
        right: 10px;
        left: 10px;
        max-width: none;
        min-width: auto;
    }

    /* Адаптация балуна для мобильных */
    .ymaps-2-1-79-balloon {
        max-width: calc(100vw - 20px) !important;
        padding: 16px 12px 16px 16px !important;
    }

    .ymaps-2-1-79-balloon__content {
        font-size: 14px;
    }
}

/* Для очень маленьких экранов */
@media (max-width: 480px) {
    .map-sidebar.filter {
        padding: 12px;
    }

    .filter .filter__title {
        font-size: 16px;
        margin-bottom: 12px;
    }

    /* Чекбоксы столбиком */
    .filter .filter__checkboxes {
        gap: 10px;
    }

    .q-checkbox {
        gap: var(--space-4);
    }

    .q-checkbox .t-3 {
        font-size: 12px;
    }

    .q-checkbox__inner {
        width: 16px;
        height: 16px;
    }

    .loading-stats {
        flex-direction: column;
        gap: 4px;
    }

    .progress-item .wrapper-title {
        font-size: 11px;
    }
}

/* Для экранов с высокой плотностью пикселей */
@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 192dpi) {
    .loading-progress-bar {
        background: linear-gradient(90deg, #1E98FF, #4CAF50);
    }
}

/* Опционально: поддержка landscape-ориентации на мобильных */
@media (max-width: 767px) and (orientation: landscape) {
    .interact-map-wrapper {
        padding-bottom: 20px;
    }

    .map-sidebar.filter {
        max-height: 200px;
        overflow-y: auto;
    }

    /* В landscape тоже столбиком, но компактнее */
    .filter .filter__checkboxes {
        gap: 8px;
    }
}

/* End */


/* Start:/local/templates/main_b2b/components/bitrix/map.yandex.system/company_map/style.css?1776848529666*/
div.bx-yandex-map {color: black; font-size: 11px;}
div.bx-yandex-map div.YMaps-b-balloon-content {color: black; font-size: 11px;}
div.bx-popup-form div.bx-yandex-map div.YMaps-b-balloon-point div.YMaps-b-balloon div.YMaps-b-balloon-wrap table.YMaps-b-balloon-frame td {
	padding: 0px !important;
}


div.bx-popup-form div.bx-yandex-map div.YMaps-b-balloon-point div.YMaps-b-balloon div.YMaps-b-balloon-wrap table.YMaps-b-balloon-frame td textarea{
	font-size: 11px;
}


div.bx-popup-form div.bx-yandex-map div.YMaps-b-balloon-point div.YMaps-b-balloon div.YMaps-b-balloon-wrap table.YMaps-b-balloon-frame td.YMaps-b-balloon-b {
	background-image: none !important;
}

/* End */


/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_name_button_small/style.css?17768485291225*/
.text-color-animate__word {
    display: inline-flex;
    flex-wrap: nowrap; /* Запрещаем перенос внутри слова */
    white-space: nowrap; /* Дополнительная защита от переноса */
    margin: 0;
    padding: 0;
}

.text-color-animate__letter {
    display: inline-block;
    transition: opacity 0.15s ease;
    will-change: opacity;
    margin: 0;
    padding: 0;
    /* Убираем любые дополнительные отступы между буквами */
    letter-spacing: normal;
    word-spacing: normal;
}

/* Для заголовка */
.letter-opacity-title {
    margin: 0;
    padding: 0;
    line-height: 1.4;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 0.25em; /* Пробелы между словами регулируются через gap */
}

/* Убираем стандартные пробелы, так как используем gap */
.letter-opacity-title .text-color-animate__word + .text-color-animate__word::before {
    content: none;
}

/* Для адаптивности на мобильных */
@media (max-width: 768px) {
    .letter-opacity-title {
        gap: 0 0.15em;
    }
}
/* End */


/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_big_banner_text_link/style.css?177684852951*/
.support-banner__content {
    max-width: 1000px;
}
/* End */


/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_numbers_banners/style.css?17848123581662*/
.about-in-numbers .about-in-numbers__slide {
    width: 308px !important;
    height: 308px !important;
    max-width: 308px;
    max-height: 308px;
    flex-shrink: 0;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.about-in-numbers__card {
    box-sizing: border-box;
}

.about-in-numbers .about-in-numbers__card[data-v-bcc6bc68] {
    width: 100% !important;
    height: 100%;
    min-height: 0 !important;
}

.about-in-numbers__card .info-card__label {
    display: inline-flex;
    align-items: baseline;
    gap: 10px;
}

.about-in-numbers__card .info-card__head .info-card__label span.info-card__value-name {
    font-size: 24px;
    line-height: 1.4;
}

@media (max-width: 920px) {
    .about-in-numbers .about-in-numbers__slide {
        width: 320px !important;
        height: 280px !important;
        max-width: 320px;
        max-height: 280px;
    }

    .about-in-numbers__card .info-card__head .info-card__label span.info-card__value-name {
        font-size: 22px;
    }
}

.about-in-numbers__head h2 {
    max-width: 700px;
}

.about-in-numbers .about-in-numbers__slider {
    overflow: hidden;
}

.about-in-numbers .about-in-numbers__slider .swiper-wrapper {
    display: flex;
    align-items: stretch;
    gap: 0 !important;
}

.about-in-numbers .about-in-numbers__footer {
    display: none !important;
}

.about-in-numbers.about-in-numbers--can-slide .about-in-numbers__footer {
    display: flex !important;
}

@media (max-width: 920px) {
    .about-in-numbers .about-in-numbers__footer {
        display: flex !important;
    }

    .about-in-numbers .swiper-button-lock {
        display: flex !important;
    }
}

/* End */


/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_text_button_4_img/style.css?17848145531056*/
.main-text-button-4-img {
    --main-text-button-4-img-text-gap-mobile: 32px;
    --main-text-button-4-img-title-mobile-size: 26px;
}

.main-text-button-4-img--section-2434 {
    --main-text-button-4-img-text-gap-mobile: 28px;
}

.main-text-button-4-img--section-2422 {
    --main-text-button-4-img-title-mobile-size: 30px;
}

.main-text-button-4-img .about-region__title[data-v-ae80910e] {
    font-size: 56px;
    line-height: 1.15;
    font-weight: 700;
}

.main-text-button-4-img .main-banner__btn {
    margin-top: 0;
}

@media screen and (max-width: 920px) {
    .main-text-button-4-img .about-region__title[data-v-ae80910e] {
        font-size: var(--main-text-button-4-img-title-mobile-size);
    }

    .main-text-button-4-img .about-region__text[data-v-ae80910e] {
        margin-bottom: var(--main-text-button-4-img-text-gap-mobile);
    }
}

@media screen and (max-width: 480px) {
    .main-text-button-4-img--section-2434 .about-region__content > div,
    .main-text-button-4-img--section-2434 .main-banner__btn {
        width: 100%;
    }
}

/* End */


/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_title_4_props/style.css?1776848529105*/
.region-progress-card__text br {
    display: none;
}

.region-progress-card h4 {
    max-width: 200px;
}
/* End */


/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_events/style.css?17878143271682*/
.events-section__text {
    margin: 0 !important;
}

.events-section__btn {
    background-color: transparent;
}

/* Лента мероприятий.
   Базовый стиль темы крутил список ключевыми кадрами и в конце цикла возвращал
   его в начало — возврат был виден как рывок. Прокруткой теперь управляет
   script.js: он двигает список и переставляет уехавшие карточки в конец,
   поэтому ключевые кадры здесь отключены. */
.events-section .events-section__list {
    animation: none !important;
}

.events-section .events-section__list-track--running .events-section__list {
    will-change: transform;
}

@media screen and (max-width: 1000px) {
    .events-section__content .events-section__text {
        margin-top: 16px !important;
    }

    .events-section__content .events-section__btn {
        display: none !important;
    }

    .events-section__footer {
        display: block;
    }

    .events-section .events-section__list-tablet {
        max-width: 100%;
        overflow: hidden;
    }

    .events-section .events-section__list-tablet .event-card__img-wrapper {
        flex: 0 0 166px;
        width: 100%;
        height: 166px;
    }

    .events-section .events-section__list-tablet .event-card__img-wrapper img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    .events-section .events-section__list-tablet .events-section__card:nth-child(n + 3) {
        display: none;
    }
}

/* End */


/* Start:/local/templates/main_b2b/components/spll/static.banner_with_elements/main_for_investors/style.css?17870444301203*/
.invest-indr__head {
    gap: 1rem;
    flex-wrap: wrap;
    h2 {
        flex: 1;
        max-width: 800px;
    }
    .main-banner__btn {
        margin-top: 0;
        flex: 0 0 auto;
    }
}
/* Заголовок строки стоит сразу за иконкой.
   Строка размечена как justify-between, из-за чего заголовок «плавал» по
   середине свободного места и визуально отрывался от иконки — это и есть
   замечание заказчика «подвинуть заголовки левее». Auto-margin в flex
   съедает свободное место раньше justify-content, поэтому достаточно одного
   свойства: иконка слева, заголовок вплотную за ней (gap 20px), абзац
   по-прежнему прижат к правому краю. Тот же приём уже используется в
   раскладке до 920px, так что поведение на всех ширинах одинаковое. */
.invest-indr__content .invest-indr-row__title {
    margin-right: auto;
}

/* End */


/* Start:/local/templates/main_b2b/components/bitrix/news.list/index_news_3/style.css?17865262655320*/
.news-cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(24%, 1fr));
    gap: 16px;
    margin-bottom: 50px;
}

@media screen and (max-width: 920px) {
    .news-cards-grid {
        grid-template-columns: repeat(auto-fill, minmax(48%, 1fr));
        margin-bottom: 32px;
    }
}

.news-card {
    gap: 20px;
    text-decoration: none;
    color: inherit;
    display: flex;
}

.news-card__content {
    flex-grow: 1;
}

.news-card__footer {
    width: 100%;
    margin-top: 8px;
}

.news-card__title {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-decoration: none;
}

.news-card__head {
    border-radius: 16px;
    overflow: hidden;
    width: 100%;
    position: relative;
    height: 312px;
}

@media screen and (max-width: 1320px) {
    .news-card__head {
        height: calc(240px + 72 * (100vw - 768px) / 552);
    }
}

@media screen and (max-width: 768px) {
    .news-card__head {
        height: 240px;
    }
}

.news-card__head img {
    width: 100%;
    height: 100%;
    object-position: center;
    object-fit: cover;
    position: absolute;
    inset: 0;
}

.news-card__tags {
    position: absolute;
    z-index: 2;
    gap: 8px;
    top: 12px;
    left: 12px;
    max-width: calc(100% - 24px);
    display: flex;
    flex-wrap: wrap;
}

.news-card__date {
    color: #123670;
}


.news-card--small .news-card__head {
    height: 232px;
}

@media screen and (max-width: 920px) {
    .news-card--small .news-card__head {
        height: 270px;
    }
}

@media screen and (max-width: 480px) {
    .news-card--small .news-card__head {
        height: 240px;
    }
}

@media (hover: hover) and (min-width: 921px) {
    .news-card:hover .news-card__link,
    .news-card:focus-visible .news-card__link {
        color: #2f8eed;
    }
}

/* --- */

/* [data-v-430d4eec]:root {
    --tablet-breakpoint: 920px
} */

.new-section__btn-mob[data-v-430d4eec] {
    display: none
}

/* контейнер кнопки «Все новости» под карточками — только для планшета/мобилки */
.new-section__footer[data-v-430d4eec] {
    display: none
}

.new-section__slider {
    overflow-x: auto;
    overflow-y: hidden;
    touch-action: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scroll-behavior: smooth;
    &::-webkit-scrollbar {
        display: none;
    }
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.new-section__slide[data-v-430d4eec] {
    width: fit-content;
    height: auto;
    padding-right: 16px
}

.new-section__slide[data-v-430d4eec]:first-child {
    /* padding-left: 20px */
}

.new-section__slide[data-v-430d4eec]:last-child {
    /* padding-right: 20px */
}

.new-section__card[data-v-430d4eec] {
    width: 415px
}

@media screen and (max-width: 1320px) {
    .new-section__card[data-v-430d4eec] {
        width:calc(320px + 95 * (100vw - 768px) / 552)
    }
}

@media screen and (max-width: 768px) {
    .new-section__card[data-v-430d4eec] {
        width:320px
    }
}

.new-section__card[data-v-430d4eec] {
    height: 100%
}

.new-section__slider[data-v-430d4eec] {
    /* padding-left: calc((100% - 1320px)/2) */
}

.new-section__slider[data-v-430d4eec] .swiper-wrapper {
    align-items: stretch
}

.new-section__btn[data-v-430d4eec],.new-section__btn-mob[data-v-430d4eec] {
    min-width: 232px
}

@media screen and (max-width: 920px) {
    .new-section__title[data-v-430d4eec] {
        text-align:center;
        width: 100%
    }

    .new-section__btn[data-v-430d4eec] {
        display: none !important;
    }

    .new-section__footer[data-v-430d4eec] {
        display: flex
    }

    .new-section__btn-mob[data-v-430d4eec] {
        display: block;
        margin-top: 28px
    }

    .new-section__slide[data-v-430d4eec] {
        padding-right: 8px
    }
}

/* --- */

/* [data-v-430d4eec]:root {
    --tablet-breakpoint: 920px
}

.new-section__btn-mob[data-v-430d4eec] {
    display: none
}

.new-section__slide[data-v-430d4eec] {
    width: fit-content;
    height: auto;
    padding-right: 16px
}

.new-section__slide[data-v-430d4eec]:first-child {
    padding-left: 20px
}

.new-section__slide[data-v-430d4eec]:last-child {
    padding-right: 20px
}

.new-section__card[data-v-430d4eec] {
    width: 415px
}

@media screen and (max-width: 1320px) {
    .new-section__card[data-v-430d4eec] {
        width:calc(320px + 95 * (100vw - 768px) / 552)
    }
}

@media screen and (max-width: 768px) {
    .new-section__card[data-v-430d4eec] {
        width:320px
    }
}

.new-section__card[data-v-430d4eec] {
    height: 100%
}

.new-section__slider[data-v-430d4eec] {
    padding-left: calc((100% - 1320px)/2)
}

.new-section__slider[data-v-430d4eec] .swiper-wrapper {
    align-items: stretch
}

.new-section__btn[data-v-430d4eec],.new-section__btn-mob[data-v-430d4eec] {
    min-width: 232px
}

@media screen and (max-width: 920px) {
    .new-section__title[data-v-430d4eec] {
        text-align:center;
        width: 100%
    }

    .new-section__btn[data-v-430d4eec] {
        display: none
    }

    .new-section__btn-mob[data-v-430d4eec] {
        display: block;
        margin-top: 28px
    }

    .new-section__slide[data-v-430d4eec] {
        padding-right: 8px
    }
} */
/* End */


/* Start:/local/components/spll/governor.quotes/templates/.default/style.css?1782905140238*/
.page-block-governor__title[data-v-84b34abb] {
    font-size: 36px;
    line-height: 1.2;
    font-weight: 400;
}

@media screen and (max-width: 920px) {
    .page-block-governor__title[data-v-84b34abb] {
        font-size: 26px;
    }
}

/* End */


/* Start:/local/templates/main_b2b/components/bitrix/news.list/partners_slider/style.css?17865674083708*/
.partners__viewport[data-v-29cbc8de] {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    cursor: grab !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    scroll-behavior: auto;
}

.partners__viewport[data-v-29cbc8de]::-webkit-scrollbar {
    display: none;
}

.partners__viewport[data-v-29cbc8de].is-dragging {
    cursor: grabbing !important;
}

.partners__viewport[data-v-29cbc8de] .partners__track[data-v-29cbc8de] {
    animation: none;
    transform: none;
    user-select: none;
}

.partners__viewport[data-v-29cbc8de] .partners__logo[data-v-29cbc8de] {
    flex: 0 0 auto;
    cursor: grab !important;
}

.partners__viewport[data-v-29cbc8de].is-dragging .partners__logo[data-v-29cbc8de] {
    pointer-events: none;
}

.partner-modal-window {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
}

.partner-modal-window .q-dialog__backdrop {
    background: rgba(0, 0, 0, 0.5);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.partner-modal-window .q-dialog__inner {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.modal-content {
    max-width: 600px;
    width: 90%;
    background: white;
    border-radius: 8px;
    overflow: hidden;
    max-height: 90vh;
    overflow-y: auto;
}

.modal-content__head {
    padding: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: sticky;
    top: 0;
    background: white;
    z-index: 1;
}

.modal-content__close {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
}

.modal-content__content {
    padding: 20px;
}

.partner-modal__head {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.partner-modal__logo {
    width: 80px;
    height: 80px;
    margin-right: 20px;
    flex-shrink: 0;
}

.partner-modal__logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/*
 * На планшете и мобильном (<=920px) шапка попапа перестраивается в колонку,
 * а логотип из template-bad-styles.css остаётся 40px высотой — места вагон,
 * логотип нечитаемый. Увеличиваем его, специфичность поднята через
 * .partner-modal-window, т.к. правила легаси-файла идут ниже по каскаду.
 */
@media screen and (max-width: 920px) {
    .partner-modal-window .partner-modal__logo,
    .partner-modal-window .partner-modal__logo[data-v-05c075f5] {
        width: 100%;
        height: auto;
        margin-right: 0;
        text-align: center;
    }

    .partner-modal-window .partner-modal__logo[data-v-05c075f5] img {
        /* Высота фиксирована, чтобы мелкие исходники тоже подрастали, а не оставались 40px. */
        width: auto;
        max-width: 100%;
        min-width: 0;
        height: 96px;
        object-fit: contain;
    }
}

.partner-modal__title {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
}

.partner-modal__content {
    margin-bottom: 20px;
}

.partner-modal__text {
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}

.partner-modal__btn {
    display: inline-block;
    padding: 10px 20px;
    background: #007bff;
    color: white;
    text-decoration: none;
    border-radius: 4px;
    transition: background-color 0.3s;
    border: none;
    cursor: pointer;
    font-size: 14px;
}

.partner-modal__btn:hover {
    background: #0056b3;
}

/* End */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_about_portal/style.css?177684852992 */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_slider_simple/style.css?17914447463429 */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_name_button_big/style.css?17865674212023 */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_catalog/style.css?17863498761086 */
/* /local/components/b2c/ui.button/buttons.css?17851611903168 */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_banner_1_small/style.css?1785342301921 */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_stock_market/style.css?17853414883291 */
/* /local/components/spll/interact.map/templates/.b2b_small/style.css?17848121279041 */
/* /local/templates/main_b2b/components/bitrix/map.yandex.system/company_map/style.css?1776848529666 */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_name_button_small/style.css?17768485291225 */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_big_banner_text_link/style.css?177684852951 */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_numbers_banners/style.css?17848123581662 */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_text_button_4_img/style.css?17848145531056 */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_title_4_props/style.css?1776848529105 */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_events/style.css?17878143271682 */
/* /local/templates/main_b2b/components/spll/static.banner_with_elements/main_for_investors/style.css?17870444301203 */
/* /local/templates/main_b2b/components/bitrix/news.list/index_news_3/style.css?17865262655320 */
/* /local/components/spll/governor.quotes/templates/.default/style.css?1782905140238 */
/* /local/templates/main_b2b/components/bitrix/news.list/partners_slider/style.css?17865674083708 */
