/* Свои правки сайта (не трогать в основных файлах стилей) */

/* Значки соцсетей в шапке: отступ между ВК и MAX */
.v6k a + a,
.v6k-mobile a + a {
    margin-left: 8px;
}

/* Фиксированная круглая кнопка MAX справа снизу, над кнопкой звонка.
   Как и кнопка звонка: только на телефонах, появляется после прокрутки шапки
   (класс active_max_fixed ставит скрипт в bloks/footer.php) */
#block_max_fixed {
    position: fixed;
    right: 15px;
    bottom: 133px; /* звонок: bottom 73px + высота 50px + зазор 10px */
    z-index: 900;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: .5s;
}
#block_max_fixed.active_max_fixed {
    opacity: 1;
    visibility: visible;
    transform: none;
}
#block_max_fixed a {
    display: block;
}
#block_max_fixed img {
    display: block;
    width: 50px;
    height: 50px;
    border-radius: 50%;
}
/* На компьютере кнопки звонка нет, поэтому MAX стоит сразу над кнопкой «наверх».
   Кнопка «наверх» здесь 50px, right: 35px, bottom: 25px — MAX выровнен по ней по вертикальной оси
   и поднят на 15px над ней (25 + 50 + 13 = 88px) */
@media (min-device-width: 769px) {
    #block_max_fixed {
        right: 35px;
        bottom: 88px;
    }
}

/* Страницы «Политика конфиденциальности» (/politika.php) и «Согласие» (/soglasie.php):
   длинный юридический текст — по левому краю, ограниченная ширина строки,
   подзаголовки разделов обычным текстом вместо больших синих плашек сайта */
main.policy_page {
    text-align: left;
    max-width: 860px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 30px;
    box-sizing: border-box;
}
main.policy_page p {
    text-align: left;
    margin: 0 0 10px;
}
main.policy_page h2 {
    background: none;
    color: #129fbf;
    text-transform: none;
    text-align: left;
    font-size: 18px;
    padding: 0;
    margin: 24px 0 10px;
    border-radius: 0;
}
main.policy_page ul {
    margin: 0 0 10px;
}

/* Галочка согласия на обработку персональных данных в формах заявки
   (bloks/form.php, bloks/footer.php, index.php): крупнее, удобно нажимать пальцем */
.consent_check {
    cursor: pointer;
}
.consent_check input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0 6px 0 0;
    vertical-align: middle;
    cursor: pointer;
}

/* Карта Яндекса на странице «Контакты» (contakti/index.php):
   по центру и не шире экрана — на телефоне карта шириной 560px иначе вылезает за край */
#ya_map iframe {
    display: block;
    max-width: 100%;
    margin: 0 auto;
}

/* Карта на «Контактах» на телефоне: саму карту можно двигать и приближать (кнопки + и − работают),
   а нижнюю часть с карточкой контактов закрывает прозрачный «щит» (div.map_card_shield в contakti/index.php):
   свайп по карточке прокручивает страницу, карточка не листается. На компьютере щита нет */
#ya_map {
    position: relative;
}
.map_card_shield {
    display: none;
}
@media (max-device-width: 768px) {
    .map_card_shield {
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 225px;
    }
}

/* Карта на «Контактах» на компьютере: 80% ширины блока страницы (вместо 560px из кода карты), по центру */
@media (min-device-width: 769px) {
    #ya_map iframe {
        width: 80%;
    }
}

/* Кнопка «Открыть в Яндекс.Картах и построить маршрут» под картой на «Контактах» (contakti/index.php),
   цвет — фирменный бирюзовый сайта */
.map_link {
    text-align: center;
    margin: 15px 0 30px;
}
.map_link a {
    display: inline-block;
    padding: 12px 24px;
    border-radius: 8px;
    background: #129fbf;
    color: #fff;
    font-size: 16px;
    text-decoration: none;
    transition: background .3s;
}
.map_link a:hover {
    background: #0c7f99;
}

/* Таблицы цен на страницах «Чистка матрасов» и «Чистка ковров» (class="ceni price_table"):
   по центру с отступами, как таблица на «Мойке окон» */
.ceni.price_table {
    margin: 25px auto;
}

/* Главная: блок с формой заявки (.wrap_form) и следующий за ним «Как мы работаем?» (.kak_mi_rabotaem).
   1) Высота блока с формой — по содержимому (раньше жёстко 250px, и после добавления галочки
      согласия кнопка «Отправить» вылезала за край).
   2) Отступ между блоками — 30px (раньше их отступы 25px и -25px гасили друг друга). */
/* В style.css размеры заданы с !important (.newform height 250/270/320/380px, .wrap_form margin 25px),
   поэтому здесь тоже !important и более точные селекторы */
.wrapperfull.wrap_form,
.wrap_form .newform {
    height: auto !important;
    min-height: 250px;
}
.wrapperfull.wrap_form {
    margin-bottom: 30px !important;
}
.wrap_form ~ .kak_mi_rabotaem {
    margin-top: 0;
}

/* «Химчистка мягкой мебели»: блок «Почему за химчисткой мебели стоит обращаться именно к нам?»
   (div.wrap_green.why_us на страницах услуг) — ровные отступы по 30px:
   сверху до заголовка, между заголовком и кругами, от подписей до низа блока */
.wrap_green.why_us {
    padding-top: 0 !important;
    padding-bottom: 19px !important; /* + 11px внутреннего отступа карточек = 30px от конца текста */
}
.wrap_green.why_us h2.h2 {
    margin-top: 30px !important;
    margin-bottom: 11px !important; /* + 19px внутреннего отступа над кругом = 30px */
}

/* Главная: блок «Почему за клинингом в Тольятти стоит обращаться именно к нам?» (div.why_us_main в index.php) —
   отступы по 30px, как у такого же блока на страницах услуг (.why_us). Сверху 30px уже есть.
   У блока встроенный style="margin-bottom:30px", поэтому !important */
.why_us_main {
    margin-bottom: -11px !important; /* схлопывается с margin-top 30px заголовка «Наши клинеры»: 30 − 11 = 19, + 11px под текстом карточек = 30px */
}
.why_us_main .advantages h2 {
    margin-bottom: 10px !important; /* + ~20px отступа над кругом = 30px */
}

/* Адаптация под экраны шире 1920px (2K — 2560×1440 и т.п.). На экранах до 1920px ничего не меняется.
   1) Фоны широких блоков (.wrapperfull: первый экран, бирюзовые и серые блоки, форма, подвал)
      растянуты на всю ширину — раньше они обрывались на 1920px и оставляли белые поля по бокам.
   2) Колонка контента (.wrapper) шире: 1600px вместо 1270px.
   3) Заголовки H2 — прежней ширины 1143px, по центру.
   В style.css/footer.css часть размеров задана с !important, поэтому здесь тоже !important */
@media (min-width: 1921px) {
    .wrapperfull {
        max-width: none !important;
    }
    .wrapperfull.wrap_form {
        background-size: cover !important;
        background-repeat: no-repeat !important;
    }
    /* Фото первого экрана (#devushka): высота растёт вместе с шириной экрана (680px при 1920 → ~906px на 2K),
       чтобы кадр был таким же, как на Full HD. В style.css стоит max-height: 680px — снимаем */
    #devushka {
        height: 35.42vw !important;
        max-height: none !important;
    }
    /* «Мойка окон»: на фото девушка внизу кадра — высота блока как везде, а картинка сдвинута вверх
       на 9% ширины экрана (≈230px на 2K): сверху обрезается потолок, снизу лицо видно целиком */
    #devushka.devushka_tall > img {
        margin-top: -9vw;
    }
    .wrapper {
        max-width: 1600px !important;
    }
    /* только заголовки-плашки; текстовые подзаголовки .h2_small идут по ширине текста */
    .wrapper h2:not(.h2_small),
    .wrapperfull h2:not(.h2_small),
    .kak_mi_rabotaem h2:not(.h2_small),
    .advantages h2:not(.h2_small) {
        max-width: 1143px;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box;
    }
}

/* «Уборка коттеджей»: таблица «Что входит в уборку» (4 колонки) на узких телефонах вылезала за экран
   и страницу можно было сдвинуть вбок. До 400px — шрифт 14px и узкие отступы (помещается в 360px);
   до 340px слова уже физически не помещаются — таблица прокручивается сама, страница не сдвигается */
@media (max-width: 400px) {
    table.ceni.cho_vhodit_v_yborky {
        width: 100% !important;
    }
    table.ceni.cho_vhodit_v_yborky td {
        font-size: 14px;
        padding-left: 3px !important;
        padding-right: 3px !important;
    }
}
@media (max-width: 340px) {
    table.ceni.cho_vhodit_v_yborky {
        display: block;
        overflow-x: auto;
        width: auto !important;
        max-width: 100%;
    }
    table.ceni.cho_vhodit_v_yborky td {
        font-size: 13px;
    }
}

/* Новый логотип в шапке (/image/logo.svg, пропорции ~2:1, bloks/header.php).
   В <style> шапки для старого квадратного logo.jpg заданы max-width: 150px и height: 80% !important —
   для широкого логотипа это слишком мелко, поэтому свои размеры */
.l4x img.site_logo {
    width: 220px;
    max-width: 100%;
    height: auto !important;
}
@media screen and (min-width: 920px) {
    .l4x img.site_logo {
        width: 200px; /* высота ~99px — помещается над меню (шапка 112px) */
        max-width: 200px;
        margin-top: 6px;
        margin-left: 20px; /* у старого logo.jpg поля были внутри картинки, у SVG их нет */
    }
}

/* Страница отзывов /otzyv/ (otzyv.php в корне; на неё ведёт QR-код, который сотрудник показывает
   после уборки). Отдельная лёгкая страница без шапки и подвала сайта, рассчитана на телефон */
body.review_page {
    margin: 0;
    min-height: 100vh;
    background: #eaf6fd;
    font-family: 'PT Sans', Arial, sans-serif;
    color: #1f2d3d;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px 16px;
    box-sizing: border-box;
}
.review_card {
    width: 100%;
    max-width: 440px;
    background: #fff;
    border-radius: 20px;
    padding: 28px 22px 22px;
    box-sizing: border-box;
    text-align: center;
    box-shadow: 0 6px 24px rgba(29, 88, 196, 0.12);
}
.review_logo img {
    display: block;
    width: 220px;
    max-width: 80%;
    height: auto;
    margin: 0 auto 14px;
}
.review_title {
    font-size: 24px;
    line-height: 1.25;
    font-weight: 700;
    color: #1d58c4;
    margin: 0 0 10px;
}
.review_text {
    font-size: 16px;
    line-height: 1.5;
    margin: 0 0 22px;
    color: #4a5868;
}
.review_buttons {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.review_btn {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 58px;
    padding: 10px 16px;
    border-radius: 14px;
    text-decoration: none;
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    text-align: left;
    transition: transform .15s, box-shadow .15s;
}
.review_btn:hover,
.review_btn:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
}
.review_btn_icon {
    flex: none;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 700;
}
.review_btn_yandex { background: #fc3f1d; }
.review_btn_yandex .review_btn_icon { color: #fc3f1d; }
.review_btn_2gis { background: #19aa1e; }
.review_btn_2gis .review_btn_icon { color: #19aa1e; }
.review_btn_google { background: #1a73e8; }
.review_btn_google .review_btn_icon { color: #1a73e8; }
.review_stars {
    font-size: 26px;
    letter-spacing: 6px;
    color: #f5b400;
    margin: 22px 0 6px;
}
.review_footer {
    font-size: 13px;
    line-height: 1.6;
    color: #7a8794;
    margin: 0;
}
.review_footer a {
    color: #1d58c4;
    text-decoration: none;
}

/* SEO-правки 12.11.2026 */
/* /ceny/: названия групп в таблице цен стали заголовками H2 (для поисковиков), на вид — прежняя жирная строка без плашки */
table.ceni tr.t1 td h2.price_group {
    color: inherit !important;
    text-align: inherit !important;
    padding: 0 !important;
    background: none !important;
    width: auto !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    font-weight: bold !important;
    font-size: inherit !important;
    line-height: inherit !important;
    text-transform: none !important;
    font-family: inherit !important;
}
/* /kliningovye-uslugi/: подзаголовок H2 над текстом внизу страницы — белый текст без плашки, по центру */
.text_yslygi h2.text_h2 {
    color: #fff !important;
    text-align: center !important;
    padding: 0 !important;
    background: none !important;
    width: auto !important;
    margin: 0 0 12px !important;
    border: 0 !important;
    font-weight: bold !important;
    font-size: 22px !important;
    line-height: 1.3 !important;
    text-transform: none !important;
    font-family: inherit !important;
}
/* Подвал: адрес и часы работы под телефоном и почтой */
#contact_footer p.footer_address {
    margin-top: 10px;
    font-size: 16px;
    line-height: 1.4;
}

/* «Хлебные крошки» под меню на внутренних страницах (разметка в конце bloks/header.php) */
.crumbs {
    background: #fff;
    font-family: proxima_nova_rgregular, 'Open Sans', sans-serif;
    font-size: 14px;
    line-height: 1.4;
    color: #666;
}
.crumbs_in {
    max-width: 1240px;
    margin: 0 auto;
    padding: 8px 15px;
    box-sizing: border-box;
    text-align: left;
}
.crumbs a {
    color: #0c93e8;
    text-decoration: none;
}
.crumbs a:hover {
    text-decoration: underline;
}
.crumbs_sep {
    margin: 0 6px;
    color: #999;
}
@media (min-width: 1921px) {
    .crumbs_in {
        max-width: 1600px;
    }
}

/* Вложенные страницы услуг (main.sub_page: генеральная уборка, уборка офисов, химчистка диванов и др.) — те же поправки первого экрана и блока «Как мы работаем», что на страницах услуг */
main.sub_page .srvblck {
    margin-bottom: 4% !important;
}
main.sub_page .kak_mi_rabotaem {
    margin-top: 0 !important;
}
@media only screen and (max-width: 768px) {
    main.sub_page .kak_mi_rabotaem {
        margin-bottom: -10px !important;
    }
}
/* Ссылки внутри текста страниц услуг */
main p.article a,
main ol.ul a {
    color: #0c93e8;
}

/* ЕДИНЫЙ ВИД ОСНОВНОГО ТЕКСТА (абзацы и списки на страницах услуг, «О нас» и новых страницах):
   один размер шрифта, одинаковые отступы слева и справа, у списков — маркеры или номера. */
main p.article,
main p.articl,
main p.text-left,
main.main_margin > p:not([class]),
main ol.ul > li,
main ol.ol-list-visible > li,
main ol.ol_list > li,
main ul.unorder_type > li,
main ul.articl > li,
main ul.article > li {
    font-size: 16px;
    line-height: 26px;
}
main p.article,
main p.articl,
main p.text-left {
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
}
/* списки с точками и с номерами: текст пунктов начинается на одной линии, маркер стоит в отступе */
main ol.ul,
main ol.ol-list-visible,
main ol.ol_list {
    padding-left: 35px;
    padding-right: 15px;
    box-sizing: border-box;
    text-align: left;
}
main ol.ul > li,
main ol.ol-list-visible > li,
main ol.ol_list > li {
    margin-left: 0;
    padding-left: 0;
    margin-bottom: 6px;
}
main ol.ul > li {
    list-style: disc outside;
}
main ol.ol-list-visible > li,
main ol.ol_list > li {
    list-style: decimal outside;
}
/* списки с фирменной галочкой-маркером (.unorder_type): выравнивание по тем же 15px */
main ul.unorder_type,
main ul.articl,
main ul.article {
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
}
main ul.unorder_type > li,
main ul.articl > li,
main ul.article > li {
    margin-left: 0;
}
@media (max-width: 768px) {
    main p.article,
    main p.articl,
    main p.text-left,
    main.main_margin > p:not([class]),
    main ol.ul > li,
    main ol.ol-list-visible > li,
    main ol.ol_list > li,
    main ul.unorder_type > li,
    main ul.articl > li,
    main ul.article > li {
        font-size: 15px;
        line-height: 24px;
    }
    main.main_margin > p:not([class]),
    main.main_margin > ul {
        padding-right: 15px;
        box-sizing: border-box;
    }
}

/* на компьютере абзацы .article того же размера, что списки (старое правило задаёт 15px и сильнее по весу) */
@media (min-width: 769px) {
    main p.article {
        font-size: 16px !important;
    }
}
/* «О нас»: список начинается на той же линии, что и абзацы */
main.main_margin > ul.unorder_type {
    padding-left: 0;
}

/* Меню по центру. Компьютер (от 961px): пункты в ряд по центру синей полосы. */
@media (min-width: 961px) {
    .menu .nav {
        text-align: center;
    }
    .menu .nav li {
        float: none;
        display: inline-block;
        vertical-align: top;
    }
}
/* Телефон и планшет (до 960px): кнопка «МЕНЮ» по центру, пункты раскрытого списка тоже по центру */
@media (max-width: 960px) {
    .menu #touch-menu {
        margin: 0 auto;
        text-align: center;
    }
    .menu .nav li a {
        text-align: center;
    }
}

/* Шапка на компьютере: слоган и значки мессенджеров подняты на 10px, чтобы под значками до меню было 18px (было 8px) */
@media screen and (min-width: 920px) {
    .h9c .c3m {
        position: relative;
        top: -10px;
    }
}

/* Блок плиток со вложенными страницами на страницах разделов (.sub_services) — как «Наши клининговые услуги» на главной.
   Картинки разного формата обрезаются по размеру плитки, а не растягиваются. */
.sub_services .yslyga img {
    object-fit: cover;
}
/* блок занимает всю ширину колонки, поэтому одна плитка остаётся такой же по размеру, как в ряду из трёх */
.sub_services #block_yslyg,
.sub_services .yslygi {
    display: block;
    width: 100%;
}
/* на телефоне все плитки одной высоты (пропорция 3:2) */
@media screen and (max-width: 853px) {
    .sub_services .yslyga img {
        display: block;
        height: auto;
        aspect-ratio: 3 / 2;
    }
}
.sub_services {
    padding-bottom: 10px;
    margin-bottom: 30px;
}

/* Плитки услуг (главная, «Услуги», разделы): затемнение ровно по размеру фото.
   Раньше на телефоне затемнение было 98% высоты плитки, а под фото оставался зазор строки — фильтр то не доставал, то выступал. */
.yslygi .yslyga img {
    display: block;
}
.yslygi .yslyga:before {
    height: 100% !important;
}

/* Плитки услуг на телефоне (главная, «Услуги», разделы): все одной высоты, пропорция 3:2, фото обрезается, а не растягивается */
@media screen and (max-width: 853px) {
    .yslygi .yslyga img {
        height: auto;
        aspect-ratio: 3 / 2;
        object-fit: cover;
    }
}

/* КАРТОЧКИ «Почему мы», «Отзывы», «Наши клинеры»: текст не вылезает за рамку.
   Старый скрипт (js/script.js, equalHeight) при загрузке страницы жёстко задаёт карточкам высоту в пикселях,
   а фото в них подгружаются позже (loading="lazy") — текст оказывался за рамкой.
   Теперь высота карточки всегда по содержимому, а одинаковую высоту в ряду даёт flex. */
.advantages > div,
.otziv1, .otziv2, .otziv3, .otziv4 {
    height: auto !important;
}
/* на главной карточки отзывов лежат в #otzivi > .wrapper, на страницах услуг — прямо в #otzivi; :has выбирает нужный контейнер */
@media screen and (min-width: 956px) {
    .advantages,
    #otzivi:has(> .otziv1),
    #otzivi > .wrapper:has(> .otziv1) {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: stretch;
    }
    #otzivi > .wrapper:has(> .otziv1) > :not([class*="otziv"]) {
        flex: 0 0 100%;
    }
    #otzivi:has(> .otziv1) > .otziv1, #otzivi:has(> .otziv1) > .otziv2, #otzivi:has(> .otziv1) > .otziv3, #otzivi:has(> .otziv1) > .otziv4,
    #otzivi > .wrapper:has(> .otziv1) > .otziv1, #otzivi > .wrapper:has(> .otziv1) > .otziv2, #otzivi > .wrapper:has(> .otziv1) > .otziv3, #otzivi > .wrapper:has(> .otziv1) > .otziv4 {
        width: 22%;
    }
}
/* «Наши клинеры» на компьютере: блок больше не подтягивает следующий раздел на 60px вверх
   (на широких экранах он закрывал строку «Стаж…»); лишняя пустота под карточками убрана по-другому */
@media screen and (min-width: 920px) {
    div.teamcln {
        margin-bottom: 30px;
    }
    div.teamcln .teamxs > div {
        min-height: 0;
        padding-bottom: 20px;
    }
}

/* «Наши клинеры»: высота карточек и блока всегда по содержимому.
   Скрипт equalHeight (js/script.js) ставит карточкам высоту до загрузки фото (выходило 106–129px — фото обрезались и наезжали),
   а <style> в bloks/team.php на телефонах жёстко задаёт блоку 500px. */
div.teamcln .teamxs > div {
    height: auto !important;
}
div.teamcln > div.teamxs {
    height: auto !important;
}
/* Главная, «Почему за клинингом…»: заголовок лежит внутри ряда карточек (.advantages).
   При выравнивании карточек (flex) он не должен становиться карточкой — занимает свою строку и свою высоту. */
@media screen and (min-width: 956px) {
    .advantages > h2 {
        flex: 0 0 90%;
        align-self: flex-start;
        order: 0;
    }
    /* на экранах шире 1920px ширина заголовка ограничена 1143px, и первая карточка вставала с ним в одну строку:
       невидимый элемент на всю ширину принудительно переносит карточки на следующую строку */
    .advantages:has(> h2)::before {
        content: "";
        flex: 0 0 100%;
        height: 0;
        order: 1;
    }
    .advantages:has(> h2) > div {
        order: 2;
    }
}


/* ===== Быстрые правки 13.11.2026 ===== */

/* Анимации появления блоков (wow.js + fadeIn): блоки были невидимы, пока до них не докрутишь,
   и на их месте зияла пустота. Показываем блоки сразу и без анимации на всех страницах. */
.wow,
.wow.animated {
    visibility: visible !important;
    animation: none !important;
    -webkit-animation: none !important;
    opacity: 1 !important;
}

/* Плитки услуг (главная и /kliningovye-uslugi/): цена «от …» плашкой внизу плитки.
   Клик проходит сквозь плашку на ссылку плитки. */
.yslygi .yslyga .tile_price {
    position: absolute;
    left: 50%;
    bottom: 12px;
    transform: translateX(-50%);
    z-index: 2;
    padding: 4px 12px;
    border-radius: 4px;
    background: #fff;
    color: #1d58c4;
    font-family: proxima_nova_rgregular, 'Open Sans', sans-serif;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.3;
    white-space: nowrap;
    pointer-events: none;
}
@media screen and (max-width: 768px) {
    .yslygi .yslyga .tile_price {
        font-size: 14px;
        bottom: 8px;
    }
}

/* Нижняя панель «Позвонить / MAX» (разметка в bloks/footer.php). На компьютере скрыта. */
.call_bar {
    display: none;
}
@media screen and (max-width: 768px) {
    .call_bar {
        display: flex;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1001;
        background: #fff;
        box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.15);
        padding-bottom: env(safe-area-inset-bottom);
    }
    .call_bar a {
        flex: 1 1 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        height: 56px;
        font-family: proxima_nova_rgregular, 'Open Sans', sans-serif;
        font-weight: bold;
        font-size: 17px;
        text-decoration: none;
    }
    .call_bar a.call_bar_tel {
        background: #2a9be3;
        color: #fff;
    }
    .call_bar a.call_bar_max {
        background: #fff;
        color: #1d58c4;
    }
    .call_bar a img {
        width: 22px;
        height: 22px;
    }
    /* место под панелью, чтобы она не закрывала низ подвала */
    body {
        padding-bottom: calc(56px + env(safe-area-inset-bottom));
    }
    /* круглые плавающие кнопки звонка и MAX на телефоне заменены панелью */
    #block_mobile_phone_fixed,
    #block_max_fixed {
        display: none !important;
    }
    /* кнопка «наверх» и плашка cookies — над панелью */
    .btn_up {
        bottom: 71px !important;
    }
    #cookie-banner {
        bottom: 68px !important;
    }
}
