/* ==========================================================================
   Версия для слабовидящих (bvi)
   ========================================================================== */

/* Кнопка включения в шапке, под адресом — в цвет ссылки на адрес, с иконкой глаза.
   Иконка через CSS, а не <svg> в разметке: блок шапки правится в CKEditor, он вырезает svg */
.bvi-open {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 6px;
    font-size: 12px;
    line-height: 20px;
    color: #86afd1;
    text-decoration: underline;
}

.bvi-open:hover {
    text-decoration: none;
}

.bvi-open::before {
    content: '';
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2386afd1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-7 11-7 11 7 11 7-4 7-11 7S1 12 1 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* Иконка в мобильной шапке: там блок адреса с текстовой кнопкой скрыт —
   на телефонах (до 480px) и в «липкой» шапке при прокрутке (до 1024px).
   Отдельный элемент flex-строки шапки, прижат к правому краю */
.bvi-open--icon {
    display: none;
}

.bvi-open--icon::before {
    width: 28px;
    height: 28px;
}

@media (max-width: 1024px) {
    .mobile-top-navigation--fixed .bvi-open--icon {
        display: flex;
        order: 4;
        align-self: center;
        margin: 0 0 0 auto;
        padding: 6px;
    }
}

@media (max-width: 480px) {
    .bvi-open--icon {
        display: flex;
        order: 4;
        align-self: center;
        margin: 0 0 0 auto;
        padding: 6px;
    }
}

/* --------------------------------------------------------------------------
   Правки вёрстки сайта под крупный шрифт.
   Действуют только в режиме bvi — плагин ставит body.bvi-active.
   -------------------------------------------------------------------------- */

/* Белые картинки для тёмного подвала (иконки соцсетей, логотип) на светлых темах
   плагина — белая, голубая, бежевая — сливаются с фоном. Перекрашиваем в чёрный.
   !important — плагин сам ставит картинкам filter (ч/б режим) */
.bvi-body[data-bvi-theme=white] .socs img,
.bvi-body[data-bvi-theme=blue] .socs img,
.bvi-body[data-bvi-theme=brown] .socs img,
.bvi-body[data-bvi-theme=white] img[src*="logo_footer"],
.bvi-body[data-bvi-theme=blue] img[src*="logo_footer"],
.bvi-body[data-bvi-theme=brown] img[src*="logo_footer"] {
    filter: brightness(0) !important;
    background: transparent !important; /* плагин заливает фон элементов цветом темы — фильтр зачернил бы и его */
}

/* Межстрочный интервал «Стандартный»: плагин ставит 1.5 только на обёртку,
   а у сайта line-height в пикселях (18px, 26px) — при крупном шрифте строки наезжают.
   Для «Среднего» и «Большого» плагин сам задаёт интервал всем элементам, делаем так же */
body .bvi-body[data-bvi-lineheight=normal]:not(.bvi-no-styles) *:not(.bvi-no-styles):not(.bvi-link) {
    line-height: 1.5 !important;
}

/* Длинные слова («Многофункциональные», «ПРОТИВОПОКАЗАНИЯ» с разрядкой) при крупном
   шрифте шире колонки на телефоне — выталкивают блоки, появляется прокрутка вбок */
.bvi-active .bvi-body * {
    overflow-wrap: anywhere; /* break-word не помогает flex-блокам (предупреждение в подвале, карточки) */
    hyphens: auto;
}

/* Таблицы (прайс) шире экрана телефона — прокручиваются сами, а не вся страница */
@media (max-width: 767px) {
    .bvi-active .bvi-body table {
        display: block;
        max-width: 100%;
        overflow-x: auto;
    }
}

/* Верхнее меню: пункты высотой 60px, при крупном шрифте текст в две строки не влезает */
.bvi-active .topmenu > li > a {
    height: auto;
    min-height: 60px;
}

/* Список услуг: у описания жёсткая высота (как у блоков преимуществ на главной) */
.bvi-active .ui_desc {
    height: auto;
}

/* Баннер cookie при крупном шрифте выше экрана телефона — кнопки должны оставаться доступны */
.bvi-active .cookies-popup {
    max-height: calc(100vh - 60px);
    overflow-y: auto;
}

/* Врачи: у имени фиксированная высота под две строки */
.bvi-active .ib_title {
    height: auto;
    min-height: 0;
}

/* Главная, блоки преимуществ: жёсткая высота карточки (490px) и описания —
   при крупном шрифте текст наезжает сам на себя и на кнопку */
.bvi-active .index_item {
    height: auto;
    min-height: 0;
    padding-bottom: 20px;
}

.bvi-active .ii_title,
.bvi-active .ii_desc {
    height: auto;
    min-height: 0;
}

/* Кнопка была прибита к низу карточки абсолютом — ставим в поток после текста */
.bvi-active .index_item .button {
    position: static;
    transform: none;
    width: auto;
    margin: 15px 0 0;
}

/* Блок «О нас»: фиксированная высота 340px */
.bvi-active .about_sec {
    height: auto;
    padding-top: 40px;
    padding-bottom: 40px;
}
