

/* Start:/bitrix/templates/.default/components/bitrix/form/specialists/bitrix/form.result.new/.default/style.css?1747115418623*/
table.form-table
{
	width:100%;
	background-color:white;
	border-collapse:collapse;
	font-size:100%;
	font-weight:normal;
	line-height:160%;
}

table.form-table th, table.form-table td
{
	border:1px solid #ADC3D5;
	padding: 5px 5px;
	vertical-align:top;
}

table.form-table th
{
	background-image:url(/bitrix/templates/.default/components/bitrix/form/specialists/bitrix/form.result.new/.default/images/table_head.gif);
	background-repeat:repeat-x;
	text-align: left;
	color:#25639A;
}


table.form-table td
{
	padding: 15px 5px;
}

.form-required 
{
	color: red;
}

.error-fld {
	display: block;
	float: left;
	height: 13px;
	width: 15px;
	background-repeat: no-repeat;
	background-image: url(/bitrix/templates/.default/components/bitrix/form/specialists/bitrix/form.result.new/.default/images/icon_warn.gif);
}
/* End */


/* Start:/bitrix/templates/.default/components/uropro/catalog/specialist1/bitrix/catalog.section/.default/style.css?178994525830422*/
/* =========================================================
   КАРТОЧКИ ВРАЧЕЙ УРО-ПРО
   Единая версия для полной замены старого CSS
   Десктоп / ноутбук / планшет / мобильный
   ========================================================= */


/* =========================================================
   1. ОБЩИЙ КОНТЕЙНЕР
   ========================================================= */

.us-specialist {
    width: 100%;
    margin-top: 16px;
    overflow: visible;
    box-sizing: border-box;
}

.us-specialist .in-specialist {
    width: 100%;
    box-sizing: border-box;
}


/* =========================================================
   2. СЕТКА ВРАЧЕЙ
   ========================================================= */

/* До установки JS — карточки находятся непосредственно в .doc */
.us-specialist .in-specialist > .doc:not(.doctors-grouped),
.doctor-direction-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: stretch;
    gap: 16px;
    width: 100%;
    box-sizing: border-box;
}

/* После работы JS .doc содержит группы направлений */
.us-specialist .in-specialist > .doc.doctors-grouped {
    display: block;
    width: 100%;
}


/* =========================================================
   3. ГРУППЫ НАПРАВЛЕНИЙ
   ========================================================= */

.doctor-direction-group {
    width: 100%;
    margin: 0 0 36px;
}

.doctor-direction-title {
    margin: 0 0 16px;
    color: #00a7a2;
    font-size: 28px;
    font-weight: 600;
    line-height: 1.2;
}


/* =========================================================
   4. КАРТОЧКА ВРАЧА
   ========================================================= */

.us-specialist dl.doctor-card {
    display: flex !important;
    flex-direction: column;
    min-width: 0;
    width: 100% !important;
    height: 100%;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    border: 1px solid #d6e6e6;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(20, 71, 72, 0.06);
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.2s ease;
}

.us-specialist dl.doctor-card:hover {
    border-color: #99d6d3;
    box-shadow: 0 9px 24px rgba(20, 71, 72, 0.11);
    transform: translateY(-2px);
}


/* =========================================================
   5. ФОТОГРАФИЯ
   ========================================================= */

.us-specialist .doctor-card__photo {
    display: block;
    flex: 0 0 auto;
    width: 100%;
    height: 230px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: #f3f9f9;
}

.us-specialist .doctor-card__photo > a {
    display: flex !important;
    align-items: flex-end;
    justify-content: center;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.us-specialist .doctor-card__photo > a:hover {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.us-specialist .doctor-card__photo img {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    margin: 0 auto;
    border: 0;
    border-radius: 0;
    object-fit: cover;
    object-position: center top;
    transition: transform 0.2s ease;
}

.us-specialist dl.doctor-card:hover .doctor-card__photo img {
    transform: scale(1.015);
}


/* =========================================================
   6. ОСНОВНОЕ СОДЕРЖИМОЕ
   ========================================================= */

.us-specialist .doctor-card__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
    width: 100%;
    margin: 0 !important;
    padding: 14px 14px 8px !important;
    box-sizing: border-box;
}


/* =========================================================
   7. ФИО
   ========================================================= */

.us-specialist .doctor-card__name {
    display: block;
    margin: 0 0 7px !important;
    padding: 0 !important;

    color: #1d2627 !important;
    font-size: 16px !important;
    font-weight: 700;
    line-height: 1.18;

    text-align: left !important;
    text-align-last: left !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;

    text-decoration: none !important;
    word-break: normal;
    overflow-wrap: normal;
    hyphens: none;
}

.us-specialist .doctor-card__name:hover {
    color: #008f89 !important;
    text-decoration: none !important;
}


/* =========================================================
   8. СПЕЦИАЛИЗАЦИЯ
   ========================================================= */

.us-specialist .doctor-card__specialization {
    min-height: 32px;
    margin: 0 0 9px;
    padding: 0;
    color: #687274;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.32;
    word-break: normal;
    overflow-wrap: break-word;
    hyphens: none;
}


/* =========================================================
   9. КОНТЕЙНЕР РЕГАЛИЙ
   ========================================================= */

.us-specialist .doctor-card__credentials {
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 100%;
    margin: 0 0 10px;
    padding: 0;
    text-align: left !important;
    text-align-last: left !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
}


/* =========================================================
   10. КОМПАКТНЫЕ ПЛАШКИ
   ========================================================= */

.us-specialist .doctor-card__credential {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 32px;
    margin: 0;
    padding: 5px 7px 5px 35px;
    border: 1px solid #cee7e6;
    border-radius: 7px;
    background: #fff;
    color: #344344;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.22;
    box-sizing: border-box;
    word-break: normal;
    overflow-wrap: break-word;
    hyphens: none;
    text-align: left !important;
    text-align-last: left !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
}

/* Категория */
.us-specialist .doctor-card__credential--category {
    background: #f5fbfb;
}

/* Учёная степень */
.us-specialist .doctor-card__credential--degree {
    border-color: #c4e4e2;
    background: #ecf8f7;
    color: #24504e;
    font-weight: 600;
}

/* Учёное звание */
.us-specialist .doctor-card__credential--academic,
.us-specialist .doctor-card__credential--academic-title {
    border-color: #c4e4e2;
    background: #ecf8f7;
    color: #24504e;
    font-weight: 600;
}

/*
 * Должность:
 * высота определяется текстом, поэтому ничего не обрезается.
 */
.us-specialist .doctor-card__credential--position {
    min-height: 32px;
    max-height: none;
    padding-top: 6px;
    padding-bottom: 6px;
    overflow: visible;
    background: #f5fafa;
    font-size: 10.5px;
    line-height: 1.18;
}

/* Почётное звание */
.us-specialist .doctor-card__credential--honorary,
.us-specialist .doctor-card__credential--honorary-title {
    background: #f5fbfb;
}

/* Дополнительные регалии */
.us-specialist .doctor-card__credential--additional,
.us-specialist .doctor-card__credential--additional-regalia {
    background: #f5fbfb;
}

/* Стаж */
.us-specialist .doctor-card__credential--experience {
    background: #fff;
}

/* Отзывы */
.us-specialist .doctor-card__credential--reviews {
    background: #f5fbfb;
}

/* =========================================================
   11. ИКОНКИ КОМПАКТНЫХ ПЛАШЕК
   ========================================================= */

.us-specialist .doctor-card__credential::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 9px;
    display: block;
    width: 18px;
    height: 18px;
    border: 0;
    border-radius: 0;
    background-color: #00aaa5;
    box-shadow: none;
    transform: translateY(-50%);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: 18px 18px;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: 18px 18px;
}


/* =========================================================
   12. ИКОНКА: КАТЕГОРИЯ — КУБОК
   ========================================================= */

.us-specialist .doctor-card__credential--category::before {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18 2H6v2H3v5c0 2.76 2.24 5 5 5h.1A6 6 0 0 0 11 16.92V20H7v2h10v-2h-4v-3.08A6 6 0 0 0 15.9 14h.1c2.76 0 5-2.24 5-5V4h-3V2ZM5 9V6h1v5.65A3 3 0 0 1 5 9Zm14 0a3 3 0 0 1-1 2.65V6h1v3ZM8 4h8v7a4 4 0 0 1-8 0V4Z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18 2H6v2H3v5c0 2.76 2.24 5 5 5h.1A6 6 0 0 0 11 16.92V20H7v2h10v-2h-4v-3.08A6 6 0 0 0 15.9 14h.1c2.76 0 5-2.24 5-5V4h-3V2ZM5 9V6h1v5.65A3 3 0 0 1 5 9Zm14 0a3 3 0 0 1-1 2.65V6h1v3ZM8 4h8v7a4 4 0 0 1-8 0V4Z'/%3E%3C/svg%3E");
}


/* =========================================================
   13. ИКОНКА: УЧЁНАЯ СТЕПЕНЬ — ШАПОЧКА
   ========================================================= */

.us-specialist .doctor-card__credential--degree::before {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 3 10 5-10 5L2 8l10-5Zm-6 8.2 6 3 6-3V16c0 1.66-2.69 3-6 3s-6-1.34-6-3v-4.8ZM20 10h2v7h-2v-7Z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 3 10 5-10 5L2 8l10-5Zm-6 8.2 6 3 6-3V16c0 1.66-2.69 3-6 3s-6-1.34-6-3v-4.8ZM20 10h2v7h-2v-7Z'/%3E%3C/svg%3E");
}


/* =========================================================
   14. ИКОНКА: ДОЛЖНОСТЬ — ВРАЧ
   ========================================================= */

.us-specialist .doctor-card__credential--position::before {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a4.5 4.5 0 1 0 0 9 4.5 4.5 0 0 0 0-9Zm0 11c-5.33 0-8 2.67-8 6v3h16v-3c0-3.33-2.67-6-8-6Zm-1 3h2v2h2v2h-2v2h-2v-2H9v-2h2v-2Z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a4.5 4.5 0 1 0 0 9 4.5 4.5 0 0 0 0-9Zm0 11c-5.33 0-8 2.67-8 6v3h16v-3c0-3.33-2.67-6-8-6Zm-1 3h2v2h2v2h-2v2h-2v-2H9v-2h2v-2Z'/%3E%3C/svg%3E");
}


/* =========================================================
   15. ИКОНКА: УЧЁНОЕ ЗВАНИЕ — МЕДАЛЬ
   ========================================================= */

.us-specialist .doctor-card__credential--academic::before,
.us-specialist .doctor-card__credential--academic-title::before {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2h4l1 2 1-2h4l-3.2 6.2A7 7 0 1 1 10.2 8.2L7 2Zm5 7a5.5 5.5 0 1 0 0 11 5.5 5.5 0 0 0 0-11Zm0 2 1.1 2.2 2.4.35-1.75 1.7.42 2.4L12 16.5l-2.17 1.15.42-2.4-1.75-1.7 2.4-.35L12 11Z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2h4l1 2 1-2h4l-3.2 6.2A7 7 0 1 1 10.2 8.2L7 2Zm5 7a5.5 5.5 0 1 0 0 11 5.5 5.5 0 0 0 0-11Zm0 2 1.1 2.2 2.4.35-1.75 1.7.42 2.4L12 16.5l-2.17 1.15.42-2.4-1.75-1.7 2.4-.35L12 11Z'/%3E%3C/svg%3E");
}


/* =========================================================
   16. ИКОНКА: СТАЖ — ЗВЕЗДА
   ========================================================= */

.us-specialist .doctor-card__credential--experience::before {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2.4 2.96 6 6.62.96-4.79 4.67 1.13 6.6L12 17.52l-5.92 3.11 1.13-6.6-4.79-4.67L9.04 8.4 12 2.4Z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2.4 2.96 6 6.62.96-4.79 4.67 1.13 6.6L12 17.52l-5.92 3.11 1.13-6.6-4.79-4.67L9.04 8.4 12 2.4Z'/%3E%3C/svg%3E");
}

/* Иконка отзывов */
.us-specialist .doctor-card__credential--reviews::before {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 3h16a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H9l-5 4v-4H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2Zm2 4v2h12V7H6Zm0 4v2h9v-2H6Z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 3h16a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H9l-5 4v-4H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2Zm2 4v2h12V7H6Zm0 4v2h9v-2H6Z'/%3E%3C/svg%3E");
}


/* =========================================================
   17. ИКОНКА: ПОЧЁТНЫЕ И ДОПОЛНИТЕЛЬНЫЕ РЕГАЛИИ
   ========================================================= */

.us-specialist .doctor-card__credential--honorary::before,
.us-specialist .doctor-card__credential--honorary-title::before,
.us-specialist .doctor-card__credential--additional::before,
.us-specialist .doctor-card__credential--additional-regalia::before {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2.4 2.96 6 6.62.96-4.79 4.67 1.13 6.6L12 17.52l-5.92 3.11 1.13-6.6-4.79-4.67L9.04 8.4 12 2.4Z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2.4 2.96 6 6.62.96-4.79 4.67 1.13 6.6L12 17.52l-5.92 3.11 1.13-6.6-4.79-4.67L9.04 8.4 12 2.4Z'/%3E%3C/svg%3E");
}


/* =========================================================
   18. FALLBACK ДЛЯ НЕЗАПОЛНЕННЫХ ВРАЧЕЙ
   ========================================================= */

.us-specialist .doctor-card__legacy {
    margin: 0 0 12px !important;
    padding: 10px 11px !important;
    border: 1px solid #d9e9e8;
    border-radius: 8px;
    background: #f5fafa;
    color: #5c6869;
    font-size: 12px !important;
    font-weight: 400;
    line-height: 1.4 !important;
    box-sizing: border-box;
    word-break: normal;
    overflow-wrap: break-word;
}

.us-specialist .doctor-card__legacy p {
    margin: 0 !important;
    padding: 0 !important;
    color: inherit;
    font-size: inherit !important;
    line-height: inherit !important;
}


/* =========================================================
   19. КНОПКИ
   ========================================================= */

.us-specialist .doctor-card__actions {
    display: flex;
    flex-direction: column;
    gap: 7px;
    width: 100%;
    margin: auto 0 0;
    padding: 8px 14px 13px !important;
    box-sizing: border-box;
}

/* Записаться */
.us-specialist .doctor-card__appointment {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 42px;
    margin: 0;
    padding: 8px 10px;
    border: 1px solid #e60000;
    border-radius: 9px;
    background: #e60000;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none !important;
    box-sizing: border-box;
    transition:
        background-color 0.16s ease,
        border-color 0.16s ease,
        transform 0.16s ease;
}

.us-specialist .doctor-card__appointment:hover {
    border-color: #c90000;
    background: #c90000;
    color: #fff !important;
    text-decoration: none !important;
}

.us-specialist .doctor-card__appointment:active {
    transform: scale(0.98);
}

/* Подробнее */
.us-specialist .doctor-card__more {
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-height: 27px;
    margin: 0;
    padding: 1px 3px;
    border: 0 !important;
    background: transparent !important;
    color: #008f88 !important;
    font-size: 12px !important;
    font-weight: 600;
    line-height: 1.25;
    text-align: center;
    text-decoration: none !important;
}

.us-specialist .doctor-card__more:hover {
    color: #d90000 !important;
    text-decoration: none !important;
}


/* =========================================================
   ПИЛОТ РАСПИСАНИЯ В КАРТОЧКЕ
   ========================================================= */

.us-specialist .doctor-card__schedule {
    width: 0;
    height: 0;
    margin: 0 !important;
    padding: 0 !important;
}

.up-booking-list-dialog {
    width: min(960px, calc(100vw - 40px));
    max-width: 960px;
    max-height: calc(100vh - 40px);
    margin: auto;
    padding: 0;
    overflow: auto;
    border: 0;
    border-radius: 16px;
    background: #f7fbfb;
    box-shadow: 0 24px 70px rgba(17, 49, 50, 0.28);
    box-sizing: border-box;
}

.up-booking-list-dialog::backdrop {
    background: rgba(20, 35, 36, 0.62);
}

.up-booking-list-dialog__close {
    position: absolute;
    top: 10px;
    right: 12px;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #fff;
    color: #435253;
    box-shadow: 0 3px 12px rgba(20, 71, 72, 0.12);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 28px;
    font-weight: 400;
    line-height: 1;
    cursor: pointer;
}

.up-booking-list-dialog__close:hover {
    color: #e60000;
}

.up-booking-list-dialog .up-booking {
    margin: 0;
    border: 0;
    border-radius: 16px;
    box-shadow: none;
}

html.up-booking-modal-open {
    overflow: hidden;
}


/* =========================================================
   20. НОУТБУКИ И НЕБОЛЬШИЕ ДЕСКТОПЫ
   ========================================================= */

@media screen and (min-width: 1024px) and (max-width: 1279px) {

    .us-specialist .in-specialist > .doc:not(.doctors-grouped),
    .doctor-direction-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 15px;
    }

.us-specialist .doctor-card__photo {
    height: 250px !important;
}
}


/* =========================================================
   21. ПЛАНШЕТЫ
   ========================================================= */

@media screen and (min-width: 768px) and (max-width: 1023px) {

    .us-specialist .in-specialist > .doc:not(.doctors-grouped),
    .doctor-direction-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
    }

    .doctor-direction-title {
        font-size: 24px;
    }

    .us-specialist dl.doctor-card {
        display: grid !important;
        grid-template-columns: 160px minmax(0, 1fr);
        grid-template-areas:
            "photo content"
            "actions actions";
        align-items: start;
        gap: 0 18px;
        height: auto;
        padding: 16px !important;
        overflow: hidden;
    }

    .us-specialist dl.doctor-card:hover {
        transform: none;
    }

    .us-specialist .doctor-card__photo {
        grid-area: photo;
        width: 160px;
        height: 221px !important;
        border-radius: 12px;
    }

    .us-specialist .doctor-card__photo img {
        width: 100% !important;
        max-width: none !important;
        height: 100% !important;
        border-radius: 12px;
        object-fit: cover;
        object-position: center top;
    }

    .us-specialist .doctor-card__content {
        grid-area: content;
        min-width: 0;
        padding: 0 !important;
    }

    .us-specialist .doctor-card__actions {
        grid-area: actions;
        margin: 0;
        padding: 14px 0 0 !important;
    }

    .us-specialist .doctor-card__appointment {
        width: 260px;
        max-width: 100%;
        margin: 0 auto;
    }
}


/* =========================================================
   22. МОБИЛЬНЫЕ УСТРОЙСТВА
   ========================================================= */

@media screen and (max-width: 767px) {

    .us-specialist {
        margin-top: 13px;
    }

    .us-specialist .in-specialist > .doc:not(.doctors-grouped),
    .doctor-direction-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
    }

    .doctor-direction-group {
        margin-bottom: 28px;
    }

    .doctor-direction-title {
        margin-bottom: 14px;
        font-size: 22px;
    }

    /*
     * На мобильном:
     * фотография слева;
     * информация справа;
     * кнопки снизу на всю ширину.
     */
    .us-specialist dl.doctor-card {
        display: grid !important;
        grid-template-columns: 106px minmax(0, 1fr);
        grid-template-areas:
            "photo content"
            "schedule schedule"
            "actions actions";
        align-items: start;
        gap: 0 12px;
        height: auto;
        padding: 12px !important;
        overflow: hidden;
    }

    .us-specialist dl.doctor-card:hover {
        transform: none;
    }

    /* Фото */
    .us-specialist .doctor-card__photo {
        grid-area: photo;
        width: 106px;
        height: 142px !important;
        border-radius: 10px;
    }

    .us-specialist .doctor-card__photo img {
        width: 100% !important;
        max-width: none !important;
        height: 100% !important;
        border-radius: 10px;
        object-fit: cover;
        object-position: center top;
    }

    /* Информация */
    .us-specialist .doctor-card__content {
        grid-area: content;
        display: block;
        min-width: 0;
        padding: 1px 0 0 !important;
    }

    .us-specialist .doctor-card__name {
        margin-bottom: 6px !important;
        font-size: 16px !important;
        line-height: 1.18;
    }

    .us-specialist .doctor-card__specialization {
        min-height: 0;
        margin-bottom: 8px;
        font-size: 12px;
        line-height: 1.32;
    }

    .us-specialist .doctor-card__credentials {
        gap: 5px;
        margin-bottom: 0;
    }

    .us-specialist .doctor-card__credential {
        min-height: 34px;
        padding: 5px 7px 5px 37px;
        font-size: 11.5px;
        line-height: 1.25;
    }

    .us-specialist .doctor-card__credential::before {
        left: 9px;
        width: 20px;
        height: 20px;
        mask-size: 20px 20px;
        -webkit-mask-size: 20px 20px;
    }

    .us-specialist .doctor-card__legacy {
        padding: 9px 10px !important;
        font-size: 11.5px !important;
        line-height: 1.35 !important;
    }

    /* Расписание пилотного врача сразу видно внутри карточки. */
    .us-specialist .doctor-card__schedule {
        grid-area: schedule;
        display: block;
        width: 100%;
        height: auto;
        margin: 0 !important;
        padding: 0 !important;
    }

    .up-booking-list-dialog,
    .up-booking-list-dialog:not([open]) {
        position: static;
        display: block;
        width: 100%;
        max-width: none;
        max-height: none;
        margin: 0;
        padding: 0;
        overflow: visible;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .up-booking-list-dialog__close {
        display: none;
    }

    .up-booking-list-dialog .up-booking {
        width: calc(100% + 24px);
        margin: 14px -12px 0;
        border-width: 1px 0 0;
        border-radius: 0;
    }

    .doctor-card--booking-pilot .doctor-card__appointment {
        display: none !important;
    }

    /* Кнопки */
    .us-specialist .doctor-card__actions {
        grid-area: actions;
        gap: 6px;
        margin: 0;
        padding: 12px 0 0 !important;
    }

    .us-specialist .doctor-card__appointment {
        width: 58%;
        min-width: 190px;
        max-width: 250px;
        min-height: 40px;
        margin: 0 auto;
        padding: 7px 16px;
        border: 1px solid #e60000;
        border-radius: 8px;
        background: #e60000;
        color: #fff !important;
        font-size: 14px !important;
        font-weight: 700;
    }

    .us-specialist .doctor-card__more {
        min-height: 29px;
        font-size: 12px !important;
    }
}


/* =========================================================
   23. ОЧЕНЬ УЗКИЕ ЭКРАНЫ
   ========================================================= */

@media screen and (max-width: 359px) {

    .us-specialist dl.doctor-card {
        grid-template-columns: 90px minmax(0, 1fr);
        gap: 0 9px;
        padding: 10px !important;
    }

    .us-specialist .doctor-card__photo {
        width: 90px;
        height: 124px !important;
    }

    .us-specialist .doctor-card__photo img {
        width: 100% !important;
        max-width: none !important;
        height: 100% !important;
    }

    .us-specialist .doctor-card__name {
        font-size: 14.5px !important;
    }

    .us-specialist .doctor-card__specialization {
        font-size: 11px;
    }

    .us-specialist .doctor-card__credential {
        padding-left: 34px;
        font-size: 11px;
    }

    .us-specialist .doctor-card__credential::before {
        left: 8px;
        width: 18px;
        height: 18px;
        mask-size: 18px 18px;
        -webkit-mask-size: 18px 18px;
    }
}


/* =========================================================
   24. ОТКЛЮЧЕНИЕ АНИМАЦИЙ
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .us-specialist dl.doctor-card,
    .us-specialist .doctor-card__photo img,
    .us-specialist .doctor-card__appointment {
        transition: none;
    }
}
/* Стоимость приема в карточке врача */

.us-specialist .doctor-card__price {
    width: 100%;
    margin: 0 0 10px;
    box-sizing: border-box;
    text-align: left;
}

.us-specialist .doctor-card__price-label {
    display: block;
    margin-bottom: 2px;
    color: #7a8586;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.2;
}

.us-specialist .doctor-card__price-value {
    display: block;
    color: #182222;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
}

/* мобильные */
@media screen and (max-width: 767px) {
    .us-specialist .doctor-card__price {
        width: 58%;
        min-width: 190px;
        max-width: 250px;
        margin: 0 auto 8px;
    }
}

/* планшеты */
@media screen and (min-width: 768px) and (max-width: 1023px) {
    .us-specialist .doctor-card__price {
        width: 260px;
        max-width: 100%;
        margin: 0 auto 8px;
    }
}

/* =========================================================
   КОМПАКТНЫЕ КАРТОЧКИ ВРАЧЕЙ — ТОЛЬКО ДЕСКТОП
   ========================================================= */

@media screen and (min-width: 1024px) {

    /* Контент */
    .us-specialist .doctor-card__content {
        padding: 12px 12px 5px !important;
    }

    /* ФИО */
    .us-specialist .doctor-card__name {
        margin-bottom: 5px !important;
    }

    /* Специализация */
    .us-specialist .doctor-card__specialization {
        min-height: 28px;
        margin-bottom: 7px;
    }

    /* Блок регалий */
    .us-specialist .doctor-card__credentials {
        gap: 3px;
        margin-bottom: 6px;
    }

    /* Сами плашки */
    .us-specialist .doctor-card__credential {
        min-height: 29px;
        padding-top: 4px;
        padding-bottom: 4px;
    }

    /* Длинная должность */
    .us-specialist .doctor-card__credential--position {
        min-height: 29px;
        padding-top: 4px;
        padding-bottom: 4px;
    }

    /* Нижняя часть карточки */
    .us-specialist .doctor-card__actions {
        gap: 4px;
        padding: 4px 12px 8px !important;
    }

    /* Цена — в одну строку */
    .us-specialist .doctor-card__price {
        display: flex;
        align-items: baseline;
        gap: 6px;

        width: 100%;
        margin: 0 0 4px;
        padding: 0;
    }

    .us-specialist .doctor-card__price-label {
        display: inline;
        margin: 0;
        font-size: 11px;
        line-height: 1.2;
    }

    .us-specialist .doctor-card__price-value {
        display: inline;
        font-size: 15px;
        line-height: 1.2;
    }

    /* Кнопка чуть компактнее */
    .us-specialist .doctor-card__appointment {
        min-height: 39px;
        padding-top: 6px;
        padding-bottom: 6px;
    }

    /* Подробнее */
    .us-specialist .doctor-card__more {
        min-height: 23px;
        padding-top: 0;
        padding-bottom: 0;
    }
}


/* =========================================================
   ЦЕНА В ОДНУ СТРОКУ — ТОЛЬКО МОБ
   ========================================================= */


@media screen and (max-width: 767px) {

    .us-specialist .doctor-card__price {
        display: flex;
        align-items: baseline;
        gap: 7px;

        width: 58%;
        min-width: 190px;
        max-width: 250px;

        margin: 0 auto 6px;
        padding: 0;

        text-align: left;
    }

    .us-specialist .doctor-card__price-label {
        display: inline;
        margin: 0;
        font-size: 11px;
        line-height: 1.2;
    }

    .us-specialist .doctor-card__price-value {
        display: inline;
        font-size: 15px;
        line-height: 1.2;
    }
}

/* End */


/* Start:/local/assets/up-booking/up-booking.css?178925058612925*/
.up-booking {
    --up-teal: #00a29a;
    --up-teal-dark: #067c77;
    --up-teal-soft: #e8f8f6;
    --up-red: #e60012;
    --up-red-dark: #c90010;
    --up-text: #263536;
    --up-muted: #6f7b7c;
    --up-line: #d7e7e6;
    --up-error: #b00020;
    box-sizing: border-box;
    width: 100%;
    margin: 24px 0;
    padding: 24px;
    color: var(--up-text);
    border: 1px solid #cce4e2;
    border-radius: 15px;
    background: #f7fbfb;
    box-shadow: 0 8px 28px rgba(19, 73, 73, .07);
    font-family: inherit;
    font-size: 16px;
    line-height: 1.45;
    scroll-margin-top: 90px;
}

.up-booking *, .up-booking *::before, .up-booking *::after { box-sizing: border-box; }
.up-booking button, .up-booking input { font: inherit; }
.up-booking button { cursor: pointer; }
.up-booking button:focus-visible, .up-booking input:focus-visible, .up-booking a:focus-visible {
    outline: 3px solid rgba(0, 162, 154, .25);
    outline-offset: 2px;
}

.up-booking__heading {
    margin-bottom: 20px;
    padding-bottom: 18px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 28px;
    border-bottom: 1px solid var(--up-line);
}

.up-booking__kicker {
    display: block;
    color: var(--up-teal-dark);
    text-transform: uppercase;
    letter-spacing: .07em;
    font-size: 12px;
    font-weight: 700;
}

.up-booking__heading h2 {
    margin: 4px 0 0;
    color: var(--up-text);
    font-size: 28px;
    font-weight: 400;
    line-height: 1.2;
}

.up-booking__heading p {
    max-width: 390px;
    margin: 0;
    color: var(--up-muted);
    font-size: 14px;
    line-height: 1.5;
}

.up-booking__app { min-height: 270px; }
.up-booking__loading {
    min-height: 270px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 13px;
    color: var(--up-muted);
    font-size: 14px;
}

.up-booking__loading i {
    width: 30px;
    height: 30px;
    border: 3px solid #d5e8e6;
    border-top-color: var(--up-teal);
    border-radius: 50%;
    animation: up-booking-spin .8s linear infinite;
}

@keyframes up-booking-spin { to { transform: rotate(360deg); } }

.up-booking__status {
    margin-bottom: 16px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.up-booking__status strong { display: block; font-size: 21px; line-height: 1.25; }
.up-booking__status small { display: block; margin-top: 3px; color: var(--up-muted); font-size: 12px; }
.up-booking__stale { color: #7b5d20 !important; }

.up-booking__date-wrap { position: relative; margin: 0 0 17px; padding: 0 39px; }
.up-booking__date-rail {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}
.up-booking__date-rail::-webkit-scrollbar { display: none; }

.up-booking__rail-arrow {
    position: absolute;
    top: 50%;
    z-index: 2;
    width: 31px;
    height: 70px;
    padding: 0;
    transform: translateY(-50%);
    color: var(--up-teal-dark);
    border: 1px solid #cfe3e1;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 4px 12px rgba(20, 71, 72, .08);
    font-size: 27px;
    line-height: 1;
}
.up-booking__rail-arrow:hover { background: var(--up-teal-soft); }
.up-booking__rail-arrow--left { left: 0; }
.up-booking__rail-arrow--right { right: 0; }

.up-booking__date,
.up-booking__date-range {
    min-width: 92px;
    height: 70px;
    flex: 0 0 auto;
    padding: 7px 9px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    color: var(--up-text);
    border: 1px solid #b7d9d6;
    border-radius: 9px;
    background: #fff;
    scroll-snap-align: start;
}

.up-booking__date span { color: #647475; text-transform: capitalize; font-size: 12px; }
.up-booking__date strong, .up-booking__date-range strong { color: var(--up-text); white-space: nowrap; font-size: 14px; }
.up-booking__date small, .up-booking__date-range small { color: #8c9798; white-space: nowrap; font-size: 12px; }
.up-booking__date:hover:not(:disabled) { border-color: var(--up-teal); background: var(--up-teal-soft); }

.up-booking__date.is-active,
.up-booking__date[aria-selected="true"] {
    color: var(--up-teal-dark);
    border-color: var(--up-teal);
    background: #dff6f4;
    box-shadow: inset 0 0 0 1px var(--up-teal), 0 4px 12px rgba(0, 162, 154, .14);
}
.up-booking__date.is-active span,
.up-booking__date.is-active strong,
.up-booking__date[aria-selected="true"] span,
.up-booking__date[aria-selected="true"] strong { color: var(--up-teal-dark); }

.up-booking__date:disabled, .up-booking__date-range {
    color: #879192;
    border-color: #dfe4e4;
    background: #f0f3f3;
    cursor: default;
}
.up-booking__date:disabled strong, .up-booking__date-range strong { color: #7f898a; }
.up-booking__date-range { min-width: 138px; border-style: dashed; }

.up-booking__time-heading {
    margin-bottom: 11px;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
}
.up-booking__time-heading strong { text-transform: capitalize; font-size: 16px; }
.up-booking__time-heading span { color: var(--up-muted); font-size: 13px; }

.up-booking__times { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 9px; }
.up-booking__time {
    min-height: 44px;
    padding: 6px;
    color: var(--up-teal-dark);
    border: 1px solid #82c9c4;
    border-radius: 8px;
    background: #fff;
    font-size: 15px;
    font-weight: 700;
}
.up-booking__time:hover { border-color: var(--up-teal); background: #eefaf9; }
.up-booking__time.is-active { color: #fff; border-color: var(--up-red); background: var(--up-red); }

.up-booking__expand {
    width: 100%;
    min-height: 40px;
    margin-top: 5px;
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    color: var(--up-teal-dark);
    border: 0;
    background: transparent;
    font-size: 13px;
    font-weight: 700;
}
.up-booking__expand svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; transition: transform .18s; }
.up-booking__expand.is-open svg { transform: rotate(180deg); }

.up-booking__callback {
    width: 100%;
    min-height: 45px;
    margin-top: 14px;
    padding: 12px 0 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    color: var(--up-teal-dark);
    border: 0;
    border-top: 1px solid var(--up-line);
    background: transparent;
    text-align: left;
    font-size: 14px;
    font-weight: 700;
}
.up-booking__callback b { font-size: 21px; font-weight: 400; }

.up-booking__empty, .up-booking__fallback {
    padding: 21px;
    border: 1px dashed #d3dddd;
    border-radius: 10px;
    background: #f4f7f7;
}
.up-booking__fallback { border-color: #eadbc8; background: #fffaf3; }
.up-booking__empty strong, .up-booking__fallback strong { display: block; font-size: 17px; }
.up-booking__empty p, .up-booking__fallback p { margin: 6px 0 0; color: var(--up-muted); font-size: 14px; }
.up-booking__fallback .up-booking__callback { width: auto; min-height: 42px; margin-top: 15px; padding: 0 16px; color: #fff; border: 0; border-radius: 8px; background: var(--up-red); }

.up-booking__form {
    margin-top: 20px;
    padding: 21px;
    border: 1px solid #d2e5e3;
    border-radius: 11px;
    background: #fff;
}
.up-booking__form h3 { margin: 0 0 15px; color: var(--up-text); font-size: 21px; }
.up-booking__chosen { margin-bottom: 15px; padding: 12px 13px; border: 1px solid #b9dfdb; border-radius: 9px; background: #eef9f8; }
.up-booking__chosen small { display: block; color: var(--up-muted); font-size: 12px; }
.up-booking__chosen strong { display: block; margin-top: 3px; color: var(--up-teal-dark); text-transform: capitalize; font-size: 15px; }
.up-booking__form-hint { margin: 0 0 14px; color: var(--up-muted); font-size: 14px; }
.up-booking__fields { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.up-booking__field { display: block; }
.up-booking__field > span { display: block; margin-bottom: 5px; color: #4f5f60; font-size: 13px; font-weight: 700; }
.up-booking__field input {
    width: 100%;
    height: 46px;
    padding: 0 12px;
    color: var(--up-text);
    border: 1px solid #c9d7d7;
    border-radius: 8px;
    background: #fff;
    outline: none;
    font-size: 16px;
}
.up-booking__field input:focus { border-color: var(--up-teal); box-shadow: 0 0 0 3px rgba(0, 162, 154, .1); }
.up-booking__field input[aria-invalid="true"] { border-color: var(--up-error); }
.up-booking__field-error { min-height: 18px; margin-top: 4px; display: block; color: var(--up-error); font-size: 12px; }
.up-booking__consent { margin: 15px 0; display: grid; grid-template-columns: 20px 1fr; align-items: start; gap: 8px; color: #667273; font-size: 12px; line-height: 1.45; }
.up-booking__consent input { width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--up-teal); }
.up-booking__consent a { color: var(--up-teal-dark); text-underline-offset: 2px; }
.up-booking__submit {
    width: 100%;
    min-height: 46px;
    padding: 8px 15px;
    color: #fff;
    border: 0;
    border-radius: 8px;
    background: var(--up-red);
    font-size: 15px;
    font-weight: 700;
}
.up-booking__submit:hover:not(:disabled) { background: var(--up-red-dark); }
.up-booking__submit:disabled { color: #929c9d; background: #e2e7e7; cursor: not-allowed; }
.up-booking__submit-note { margin-top: 8px; display: block; color: var(--up-muted); text-align: center; font-size: 12px; }
.up-booking__form-error { margin: 0 0 12px; padding: 10px 12px; color: var(--up-error); border-radius: 7px; background: #fff1f3; font-size: 13px; }
.up-booking__honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

.up-booking__success {
    min-height: 215px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.up-booking__success i { width: 48px; height: 48px; display: grid; place-items: center; color: #fff; border-radius: 50%; background: var(--up-teal); font-style: normal; font-size: 23px; }
.up-booking__success strong { margin-top: 12px; font-size: 21px; }
.up-booking__success p { max-width: 510px; margin: 7px 0 0; color: var(--up-muted); font-size: 14px; }
.up-booking__noscript { color: var(--up-muted); font-size: 14px; }

/*
 * On the pilot doctor's page the long biography is moved below the schedule.
 * These rules preserve the typography it previously inherited from .cart dd.
 */
.up-booking-doctor-detail {
    clear: both;
    margin-top: 24px;
    color: #707070;
    font-family: Tahoma, Arial, sans-serif;
}
.up-booking-doctor-detail p { margin-bottom: 13px; }
.up-booking-doctor-detail strong,
.up-booking-doctor-detail b { color: #707070; font-weight: 700; }
.up-booking-doctor-detail .container { margin-top: 0 !important; }

@media (max-width: 767px) {
    .up-booking { margin: 18px -12px; width: calc(100% + 24px); padding: 18px 12px 20px; border-width: 1px 0; border-radius: 0; box-shadow: none; scroll-margin-top: 65px; }
    .up-booking:not(.up-booking--list) { margin: 18px 0; width: 100%; border-width: 1px; border-radius: 12px; }
    .up-booking__heading { margin-bottom: 16px; padding-bottom: 14px; align-items: flex-start; flex-direction: column; gap: 7px; }
    .up-booking__heading h2 { font-size: 23px; }
    .up-booking__heading p { max-width: none; font-size: 13px; }
    .up-booking__app, .up-booking__loading { min-height: 300px; }
    .up-booking__status strong { font-size: 18px; }
    .up-booking__date-wrap { margin: 0 -3px 15px; padding: 0 31px; }
    .up-booking__rail-arrow { width: 27px; height: 68px; font-size: 24px; }
    .up-booking__date, .up-booking__date-range { min-width: 82px; height: 68px; padding: 6px; }
    .up-booking__date-range { min-width: 122px; }
    .up-booking__time-heading { align-items: flex-start; flex-direction: column; gap: 3px; }
    .up-booking__times { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
    .up-booking__time { min-height: 43px; font-size: 15px; }
    .up-booking__callback { font-size: 13px; line-height: 1.35; }
    .up-booking__empty, .up-booking__fallback { padding: 18px 14px; }
    .up-booking__form { margin: 18px -1px 0; padding: 17px 13px; }
    .up-booking__form h3 { font-size: 19px; }
    .up-booking__fields { grid-template-columns: 1fr; gap: 10px; }
    .up-booking__consent { font-size: 12px; }
    .up-booking-doctor-detail { margin-top: 18px; }
}

@media (prefers-reduced-motion: reduce) {
    .up-booking *, .up-booking *::before, .up-booking *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* End */


/* Start:/bitrix/templates/.default/components/bitrix/form/appointment/bitrix/form.result.new/.default/style.css?1747115418623*/
table.form-table
{
	width:100%;
	background-color:white;
	border-collapse:collapse;
	font-size:100%;
	font-weight:normal;
	line-height:160%;
}

table.form-table th, table.form-table td
{
	border:1px solid #ADC3D5;
	padding: 5px 5px;
	vertical-align:top;
}

table.form-table th
{
	background-image:url(/bitrix/templates/.default/components/bitrix/form/appointment/bitrix/form.result.new/.default/images/table_head.gif);
	background-repeat:repeat-x;
	text-align: left;
	color:#25639A;
}


table.form-table td
{
	padding: 15px 5px;
}

.form-required 
{
	color: red;
}

.error-fld {
	display: block;
	float: left;
	height: 13px;
	width: 15px;
	background-repeat: no-repeat;
	background-image: url(/bitrix/templates/.default/components/bitrix/form/appointment/bitrix/form.result.new/.default/images/icon_warn.gif);
}
/* End */


/* Start:/bitrix/templates/.default/components/bitrix/news.list/reviews_direction/style.css?179105944311161*/
.up-specialist-reviews {
    --up-sr-heading: #20576a;
    --up-sr-text: #365d68;
    --up-sr-muted: #748b92;
    --up-sr-line: #d7e5e8;
    --up-sr-soft: #f4f9fa;
    --up-sr-teal: #08a7a5;
    --up-sr-teal-dark: #078d8c;
    --up-sr-red: #e5384b;
    --up-sr-white: #fff;
    margin: 30px 0 42px;
    color: var(--up-sr-text);
}

.up-specialist-reviews *,
.up-specialist-reviews *::before,
.up-specialist-reviews *::after {
    box-sizing: border-box;
}

.up-specialist-reviews__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.up-specialist-reviews__head--actions {
    justify-content: flex-end;
}

.up-specialist-reviews__title {
    margin: 0;
    color: var(--up-sr-heading);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.25;
}

.up-specialist-reviews__list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
}

.up-specialist-review {
    overflow: hidden;
    border: 1px solid var(--up-sr-line);
    border-radius: 14px;
    background: var(--up-sr-white);
    box-shadow: 0 5px 20px rgba(39, 83, 94, .055);
}

.up-specialist-review__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 20px 22px 13px;
}

.up-specialist-review__author,
.up-specialist-review__doctor-person {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 12px;
}

.up-specialist-review__avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #e9f6f6;
    color: var(--up-sr-teal-dark);
    font-size: 16px;
    font-weight: 700;
}

.up-specialist-review__name {
    display: block;
    color: var(--up-sr-heading);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.3;
}

.up-specialist-review__date,
.up-specialist-review__subline,
.up-specialist-review__source {
    color: var(--up-sr-muted);
    font-size: 13px;
    line-height: 1.4;
}

.up-specialist-review__date {
    display: block;
    white-space: nowrap;
}

.up-specialist-review__subline {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 4px;
}

.up-specialist-review__verified {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #00a6a1;
    font-weight: 650;
}

.up-specialist-review__verified b {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: rgba(0, 166, 161, 0.12);
    color: #00a6a1;
    font-size: 11px;
}

.up-specialist-review__answer {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 0 22px 20px;
    padding: 15px 16px;
    border-radius: 12px;
    background: #fff6f7;
}

.up-specialist-review__answer-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--up-sr-red);
    color: #fff;
    font-size: 11px;
    font-weight: 800;
}

.up-specialist-review__answer-content {
    min-width: 0;
    flex: 1 1 auto;
}

.up-specialist-review__answer-content > strong {
    color: var(--up-sr-heading);
    font-size: 14px;
    text-transform: uppercase;
}

.up-specialist-review__answer-text-wrap {
    position: relative;
    margin: 4px 0 0;
}

.up-specialist-review__answer-text {
    overflow: hidden;
    max-height: 3em;
    color: var(--up-sr-text);
    font-size: 14px;
    line-height: 1.5;
}

.up-specialist-review__answer-text-wrap.is-collapsible:not(.is-expanded)::after {
    position: absolute;
    right: 0;
    bottom: 27px;
    left: 0;
    height: 22px;
    background: linear-gradient(to bottom, rgba(255, 246, 247, 0), #fff6f7);
    pointer-events: none;
    content: '';
}

.up-specialist-review__answer-text-wrap.is-expanded .up-specialist-review__answer-text {
    max-height: none;
}

.up-specialist-review__answer-more {
    position: relative;
    z-index: 1;
    margin-top: 8px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--up-sr-red);
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
    cursor: pointer;
}

.up-specialist-review__answer-more:hover,
.up-specialist-review__answer-more:focus {
    text-decoration: underline;
}

.up-specialist-review__meta {
    display: flex;
    align-items: flex-end;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 5px;
}

.up-specialist-review__rating {
    display: flex;
    gap: 2px;
    line-height: 1;
}

.up-specialist-review__rating span {
    color: #dbe3e5;
    font-size: 20px;
}

.up-specialist-review__rating span.is-active {
    color: var(--up-sr-red);
}

.up-specialist-review__text-wrap {
    position: relative;
    margin: 0 22px 20px;
}

.up-specialist-review__text {
    overflow: hidden;
    max-height: 7.4em;
    color: var(--up-sr-text);
    font-size: 16px;
    line-height: 1.55;
}

.up-specialist-review__text-wrap.is-collapsible:not(.is-expanded)::after {
    position: absolute;
    right: 0;
    bottom: 31px;
    left: 0;
    height: 34px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff);
    pointer-events: none;
    content: '';
}

.up-specialist-review__text-wrap.is-expanded .up-specialist-review__text {
    max-height: none;
}

.up-specialist-review__more {
    position: relative;
    z-index: 1;
    margin: 9px 0 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--up-sr-teal-dark);
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.up-specialist-review__doctor {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0 22px 20px;
    padding: 14px;
    border: 1px solid var(--up-sr-line);
    border-radius: 11px;
    background: var(--up-sr-soft);
}

.up-specialist-review__doctor-photo {
    display: block;
    flex: 0 0 62px;
    width: 62px;
    height: 62px;
    border: 1px solid #fff;
    border-radius: 50%;
    background: #e4eff1;
    object-fit: cover;
    object-position: top center;
}

.up-specialist-review__doctor-photo--fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--up-sr-teal-dark);
    font-size: 17px;
    font-weight: 700;
}

.up-specialist-review__doctor-info {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.up-specialist-review__doctor-label {
    margin-bottom: 2px;
    color: var(--up-sr-muted);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.up-specialist-review__doctor-name {
    color: var(--up-sr-heading);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
    text-decoration: none;
}

.up-specialist-review__doctor-specialty {
    margin-top: 3px;
    color: var(--up-sr-text);
    font-size: 13px;
    line-height: 1.35;
}

.up-specialist-review__doctor-link {
    flex: 0 0 auto;
    color: var(--up-sr-teal-dark);
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}

.up-specialist-review__source {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    margin: -5px 22px 20px;
}

.up-specialist-review__source-label {
    flex: 0 0 auto;
}

.up-specialist-review__source-link,
.up-specialist-review__source-name {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--up-sr-heading);
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;
}

.up-specialist-review__source-link:hover,
.up-specialist-review__source-link:focus {
    color: var(--up-sr-teal-dark);
    text-decoration: underline;
}

.up-specialist-review__source-icon {
    display: block;
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    border-radius: 4px;
    object-fit: contain;
}

.up-specialist-review__source-arrow {
    color: var(--up-sr-muted);
    font-size: 12px;
}

.up-specialist-reviews__actions {
    display: flex;
    align-items: stretch;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}

.up-specialist-reviews__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 176px;
    min-height: 46px;
    padding: 0 20px;
    border: 1px solid transparent;
    border-radius: 9px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.up-specialist-reviews__button--primary {
    border-color: var(--up-sr-red);
    background: var(--up-sr-red);
    color: #fff;
}

.up-specialist-reviews__button--primary:hover,
.up-specialist-reviews__button--primary:focus {
    border-color: #c92c3e;
    background: #c92c3e;
    color: #fff;
}

.up-specialist-reviews__button--secondary {
    border-color: var(--up-sr-teal);
    background: #fff;
    color: var(--up-sr-teal-dark);
}

.up-specialist-reviews__button--secondary:hover,
.up-specialist-reviews__button--secondary:focus {
    background: var(--up-sr-teal);
    color: #fff;
}

.up-specialist-reviews__pagination {
    margin-top: 24px;
}

.up-specialist-reviews__pagination a,
.up-specialist-reviews__pagination span {
    font-size: 14px;
}

@media (min-width: 1180px) {
    .up-specialist-reviews--direction .up-specialist-reviews__list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .up-specialist-reviews {
        margin-top: 24px;
    }

    .up-specialist-reviews__head {
        align-items: stretch;
        flex-direction: column;
    }

    .up-specialist-reviews__title {
        font-size: 24px;
    }

    .up-specialist-reviews__head .up-specialist-reviews__button {
        width: 100%;
    }

    .up-specialist-review__header {
        padding: 18px 17px 12px;
        flex-direction: column;
        gap: 11px;
    }

    .up-specialist-review__meta {
        align-items: center;
        justify-content: space-between;
        width: 100%;
        flex-direction: row;
    }

    .up-specialist-review__text-wrap {
        margin-right: 17px;
        margin-left: 17px;
    }

    .up-specialist-review__text {
        font-size: 15px;
    }

    .up-specialist-review__doctor {
        align-items: flex-start;
        margin-right: 17px;
        margin-left: 17px;
        flex-direction: column;
    }

    .up-specialist-review__doctor-link {
        margin-left: 74px;
    }

    .up-specialist-review__source {
        margin-right: 17px;
        margin-left: 17px;
    }

    .up-specialist-review__answer {
        margin-right: 17px;
        margin-left: 17px;
    }

    .up-specialist-reviews__actions {
        flex-direction: column;
    }

    .up-specialist-reviews__button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .up-specialist-reviews * {
        transition: none !important;
    }
}

/* End */
/* /bitrix/templates/.default/components/bitrix/form/specialists/bitrix/form.result.new/.default/style.css?1747115418623 */
/* /bitrix/templates/.default/components/uropro/catalog/specialist1/bitrix/catalog.section/.default/style.css?178994525830422 */
/* /local/assets/up-booking/up-booking.css?178925058612925 */
/* /bitrix/templates/.default/components/bitrix/form/appointment/bitrix/form.result.new/.default/style.css?1747115418623 */
/* /bitrix/templates/.default/components/bitrix/news.list/reviews_direction/style.css?179105944311161 */
