

/* Start:/bitrix/components/bitrix/map.yandex.system/templates/.default/style.css?1771533972666*/
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_new/components/bitrix/news.list/v_contact_list/style.css?17759120567571*/
.offices-list {
    display: flex;
    flex-direction: column;
    gap: 40px;
    /* 5. gap 40px */
    margin-bottom: 80px;
    /* 6. margin-bottom 80px */
}

/* 1. Блок без бордера */
/* 12. Вся ширина страницы разделена флексом поровну, но в центре еще должен быть gap 30px */
.office-item {
    display: flex;
    flex-wrap: nowrap;
    /* Гарантирует, что они будут в один ряд на десктопе */
    gap: 30px;
    /* gap 30px между левой и правой колонкой */
    background: #fff;
    overflow: hidden;
}

/* 1, 2. Бордер, радиус и отступы 40px 50px 30px */
/* 12. Не шире оговоренной ширины */
.office-item__info {
    flex: 0 0 calc(50% - 15px);
    /* 50% минус половина gap */
    width: calc(50% - 15px);
    padding: 40px 50px 30px;
    box-sizing: border-box;
    border: 1px solid var(--border-color);
    border-radius: var(--radius-sm);
}

.office-item__map-block {
    flex: 0 0 calc(50% - 15px);
    /* 50% минус половина gap */
    width: calc(50% - 15px);
    min-height: 400px;
}

.contact__map {
    width: 100%;
    height: 100%;
}

.office-item__title {
    font-size: 24px;
    margin-bottom: 20px;
    color: #333;
}

/* 4, 6. Отступы, граница, позиционирование для SVG, стили текста */
/* 9. Все (кроме первого по порядку) блоки... сделать ТОЛЬКО с верхней границей */
.office-item__row {
    position: relative;
    padding: 16px 0 16px 34px;
    margin: 0;
    border-top: 1px solid var(--border-color);
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 14px;
    line-height: var(--lh-150);
}

.office-item__row:first-of-type {
    border-top: none;
    /* Убираем верхнюю границу у самого первого элемента */
}

/* Вставка SVG в левый верхний угол */
.office-item__row>svg {
    position: absolute;
    left: 0;
    top: 16px;
    /* Выравнивание по верхнему отступу */
}

/* 4. Заголовки блока */
.office-item__label {
    color: var(--gray-decor);
    font-weight: var(--weight-regular);
    line-height: var(--lh-150);
    display: block;
    margin-bottom: 4px;
}

/* 12. Стили для телефона */
.office-item__phone {
    font-size: 18px;
    font-weight: var(--weight-regular);
    text-decoration: none;
    color: #333;
}

/* 7. Блок партнерских ссылок */
/* 9. Сделать ТОЛЬКО с верхней границей */
.office-item__partners-links {
    display: flex;
    flex-direction: row;
    gap: 30px;
    margin: 0 0 5px 0;
    padding: 15px 0;
    border-top: 1px solid var(--border-color);
}

/* 3. У office-item__download картинка svg съехала вниз - исправить по макету */
/* Избавляемся от absolute позиционирования для инлайн кнопок, чтобы они ровнялись по центру через flex */
.partner-link,
.office-item__download {
    color: var(--accent);
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    /* Задает отступ между svg и текстом, вместо padding-left */
}

.partner-link>svg,
.office-item__download>svg {
    flex-shrink: 0;
    /* Чтобы картинка не сплющивалась и ровно стояла */
}

/* 8. Justify content и 7. margin снизу и сверху 20 px */
.office-item__actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin: 20px 0;
    /* 20px top and bottom */
    flex-wrap: wrap;
}

/* 3. Gap 6px */
.office-item__socials {
    display: flex;
    gap: 6px;
}

/* 4. размер .social-item 30px на 30px */
.contacts-list .social-item {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.contacts-list .social-item svg {
    width: 100%;
    height: 100%;
}

/* 2, 13. Gap для office-item__bottom-buttons равно 30 px */
.office-item__bottom-buttons {
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
}

.btn {
    padding: 12px 20px;
    border-radius: 4px;
    text-decoration: none;
    font-size: 14px;
    text-align: center;
    cursor: pointer;
    border: none;
}

.btn-primary {
    background-color: #e30613;
    color: #fff;
}

/* 13. Замена цвета SVG при наведении */
.office-item__row:hover>svg path[fill="#D7DFE4"],
.partner-link:hover>svg path[fill="#D7DFE4"],
.office-item__download:hover>svg path[fill="#D7DFE4"] {
    fill: var(--gray-decor);
    transition: fill 0.3s ease;
}

.office-item__row:hover>svg path[stroke="#D7DFE4"],
.partner-link:hover>svg path[stroke="#D7DFE4"],
.office-item__download:hover>svg path[stroke="#D7DFE4"] {
    stroke: var(--gray-decor);
    transition: stroke 0.3s ease;
}

/* Стили для тултипа копирования (fallback) */
.email-copy-tooltip {
    position: absolute;
    background-color: #333;
    color: #fff;
    padding: 5px 10px;
    border-radius: 4px;
    font-size: 12px;
    z-index: 1000;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.email-copy-tooltip.show {
    opacity: 1;
}

.office-item__bottom-buttons ..btn--white-w-border {
    padding: 15px 30px;
}

@media (max-width: 1400px) {
    .office-item__info {
        padding: 40px 30px 30px;
    }

    .btn--gray.about-contacts__route-link {
        padding: 13px 16px;
    }
}

@media (max-width: 1260px) {
    .office-item__actions {
        gap: 20px 15px;
        margin: 10px 0 20px;
        justify-content: flex-start;
    }

    .office-item__bottom-buttons {
        gap: 10px 30px;
    }

    .office-item__partners-links {
        gap: 10px;
        flex-direction: column;
    }

    .offices-list {
        gap: 30px;
        margin-bottom: 70px;
    }

    .office-item__title {
        font-size: 20px;
    }
}

@media (max-width: 768px) {
    .office-item {
        flex-direction: column;
        flex-wrap: wrap;
        gap: 20px;
    }

    .office-item__info,
    .office-item__map-block {
        flex: 1 1 auto;
        width: 100%;
    }

    .office-item__info {
        padding: 20px;
        gap: 30px;
    }

    .office-item__map-block {
        height: 300px;
    }

    .office-item__title {
        font-size: 18px;
        margin-bottom: 10px;
    }
}

@media (max-width: 640px) {
    .office-item__actions {
        flex-direction: column;
        align-content: flex-start;
        align-items: flex-start;
    }

    .office-item__bottom-buttons {
        gap: 10px 20px;
    }

}


/* Контейнер, который выводится во флексе */
.contact__map {
    display: flex;
    flex-direction: column;
    align-self: stretch; /* Растягивает блок по высоте соседа */
    min-height: 400px;    /* Страховка, чтобы карта не была нулевой */
}

/* Все обертки внутри компонента Битрикса должны наследовать высоту */
.contact__map .bx-yandex-view-layout,
.contact__map .bx-yandex-view-map,
.contact__map .bx-yandex-map {
    flex-grow: 1;
    height: 100% !important;
}
/* End */
/* /bitrix/components/bitrix/map.yandex.system/templates/.default/style.css?1771533972666 */
/* /local/templates/main_new/components/bitrix/news.list/v_contact_list/style.css?17759120567571 */
