

/* Start:/local/templates/medcentrservis/css/custom-fix.css?17798761825949*/
.wysiwyg .image {
    width: 100%;
    margin: 10px 0;
}

section.apply-form {
    margin: 20px 0;
}

.popular-diseases {
    margin: 20px 0px;
}

.mt {
    margin: 50px 0px;
}

.nobullet li {
    display: flex;
    align-items: center;
}

.nobullet li i {
    margin-right: .5rem;
}

@media (max-width: 580px) {
    .nobullet li {
        margin: .4rem 0;
    }
}

.conclusion {
    background-image: url('/local/templates/medcentrservis/css/../image/icon/conclusion.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    min-height: 30px;
    min-width: 30px;
}

.clock {
    background-image: url('/local/templates/medcentrservis/css/../image/icon/24.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    min-height: 35px;
    min-width: 30px;
}

.microscope {
    background-image: url('/local/templates/medcentrservis/css/../image/icon/microscope.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    min-height: 30px;
    min-width: 30px;
}

.pin {
    background-image: url('/local/templates/medcentrservis/css/../image/icon/pin.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    min-height: 30px;
    min-width: 30px;
}

.rub {
    background-image: url('/local/templates/medcentrservis/css/../image/icon/rub.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    min-height: 30px;
    min-width: 30px;
}

.stethoscope {
    background-image: url('/local/templates/medcentrservis/css/../image/icon/stethoscope.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    min-height: 30px;
    min-width: 30px;
}

.link-container a:not([class]) {
    --link-default-color: #7765e3;
    --link-hover-color: #6455bf;
    /*display: inline-flex;*/
    align-items: center;
    color: var(--link-default-color);
    width: fit-content;
    padding: 0px;
    background: none;
    border-width: initial;
    border-style: none;
    border-color: initial;
    border-image: initial;
    gap: 4px;
    transition: color 0.3s;
    outline: none;
}

.link-container a:not([class]):hover {
    text-decoration: auto;
}

.custom-linked-service a {
    color: #7765e3;
}

.custom-linked-service a:hover {
    color: #6455bf;
}

.link-col {
    --link-default-color: #7765e3;
    --link-hover-color: #6455bf;
}

.link-under {
    text-decoration: underline;
    text-decoration-thickness: .5px;
    text-underline-offset: 6px;
}

.link-under:hover {
    text-decoration: none;
}

.apply-form__phone>span {
    color: #000000;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
}

.procedure-steps__steps p {
    margin-top: 6px !important;
}

.appeal {
    margin: 30px 0;
}

@media screen and (max-width: 1023px) {
    .procedure-steps__steps {
        gap: 30px;
    }

    .wysiwyg h2,
    .wysiwyg .section-heading {
        margin: 50px 0 24px;
    }
}

@media (min-width: 1024px) {

    .wysiwyg h2,
    .wysiwyg .section-heading {
        margin: 50px 0 30px;
    }
}

.tab-element h2 {
    margin: 0 0 24px;
}

/* style for table*/
.table-container {
    margin: 20px auto;
    background-color: #ffffff;
    border-radius: 15px;
    box-shadow: 0 4px 15px rgba(146, 146, 146, 0.1);
    width: 100%;
    max-width: 1000px;
    overflow-x: auto;
}

.styled-table {
    border-collapse: collapse;
    width: 100%;
    font-size: 0.9em;
    border-radius: 15px;
    table-layout: fixed;
}

.styled-table thead tr {
    background-color: #f9f8fb;
    color: #000000;
    text-align: left;
}

.styled-table th,
.styled-table td {
    padding: 12px 15px;
    text-align: left;
    overflow-wrap: break-word;
}

.styled-table th p {
    font-weight: bold;
}

.styled-table tbody tr:nth-of-type(even) {
    background-color: #f9f8fb;
}

.styled-table tbody tr:hover {
    background-color: #e8e8e8;
}

.styled-table tbody tr {
    border-bottom: 1px solid #f0f0f0;
}

.styled-table tbody tr:last-of-type {
    border-bottom: 2px solid rgb(249, 248, 251);
}

@media screen and (max-width: 768px) {
    .styled-table {
        min-width: min-content;
    }
}

/* end style for table */

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

    .diseases-list__lists,
    .diseases-list__lists ul li {
        flex-direction: column;
    }

    .diseases-list__lists ul:last-child {
        display: flex;
        flex-direction: column;
        margin-top: 12px;
    }
}

.style-cards>.author-card {
    margin-top: 45px;
}

.style-cards picture {
    display: block;
    width: 100%;
}

.style-cards img {
    width: 100%;
    height: auto;
    max-width: 100%;
    margin: 1rem 0;
    border-radius: 12px;
    display: block;
}

.custom-apply {
    margin: 30px 0;
}

.mb-16 {
    margin-bottom: 1rem;
}

.mt-16 {
    margin-top: 1rem;
}

.btn-disease-custom {
    display: flex;
}

.mt-50 {
    margin-top: 50px;
}

.mt-30 {
    margin-top: 30px;
}

.expandable-text-picture {
    display: flex;
    gap: 36px;
}


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

    .expandable-text-picture {
        display: block;
    }
}

.wysiwyg h2+ul:not([class]) {
    color: #5e5076;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    margin: 16px 0;
}

.wysiwyg h2+ul:not([class]) li {
    position: relative;
    padding-left: 30px;
}

.wysiwyg h2+ul:not([class]) li:before {
    position: absolute;
    left: 0;
    top: 0;
    width: 22px;
    height: 22px;
    background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="12.0004" cy="12" r="3.6" fill="%237765E3"/></svg>');
    background-repeat: no-repeat;
    background-size: 22px 22px;
    content: "";
}

.wysiwyg h2+ul:not([class]) li+li {
    margin-top: 12px;
}

.style-cards .appeal__author .appeal__avatar img,
.style-cards .author-card__img img,
.style-cards .author-card2__img img {
    margin: 0 !important;
    height: 100%;
    border-radius: 50%;
}
/* End */


/* Start:/local/templates/medcentrservis/css/compact-doctors.css?17797202748024*/
/**
 * @file compact-doctors.css
 * @description Стили для облегчённого списка врачей на страницах услуг.
 *              Подключается через $APPLICATION->SetAdditionalCss() в service/index_new.php,
 *              section_new.php, view_new.php при включённом свойстве COMPACT_DOCTORS.
 *
 *              Облегчённая карточка (info + types) внутри Swiper-слайдера
 *              `.popular-doctors__slider[data-slider="leading-doctors"]`.
 *              Контейнер слайдера и swiper-slide стилизуются базовым style.css,
 *              этот файл переопределяет только мобильный layout карточки
 *              `.doctor-card--compact` независимо от viewport.
 *
 * @created 2026-05-20
 */

/* ============================================================
 * COMPACT DOCTORS SLIDER — мобильный override + CLS prevention.
 * Используется готовый Swiper-слайдер blog-cards, который на desktop (≥1024px)
 * читает `slidesPerView = t.el.dataset.columnsNum` (выставляется в PHP-шаблоне
 * как 1/2/3/4 в зависимости от количества врачей).
 *
 * Базовый CSS `.blog-card-list .swiper-slide { width: 317px; max-width: calc(100vw - 32px) }`
 * на мобильном (<1024) показывает ~1.5 карточки с peek-эффектом. Перебиваем
 * на 100% width, чтобы было ровно 1 в строку (как требует UX).
 *
 * На desktop (≥1024) Swiper выставляет inline `style="width: ..."` через slidesPerView,
 * CSS-правила для width не нужны (и были бы проигнорированы из-за inline-styles).
 * ============================================================ */

/* WHY: до Swiper-init (chunk Hs() грузится lazy) карточки рендерятся как обычные
 * block-children, full-width — потом Swiper трансформирует DOM и layout прыгает (CLS).
 * Селектор `:not(.swiper-initialized)` matches до того, как Swiper добавит свой класс.
 * Делаем horizontal-flex с тем же кол-вом колонок, как будет после init — layout
 * стабилен с первой отрисовки. */
.compact-doctors-slider:not(.swiper-initialized) {
	display: flex;
	flex-direction: row;
	gap: 16px;
	overflow: hidden;
}

.compact-doctors-slider:not(.swiper-initialized) > .doctor-card--compact {
	flex: 0 0 auto;
}

.compact-doctors-slider[data-columns-num="1"]:not(.swiper-initialized) > .doctor-card--compact {
	width: 100%;
	max-width: 360px;
}
.compact-doctors-slider[data-columns-num="2"]:not(.swiper-initialized) > .doctor-card--compact {
	width: calc((100% - 16px) / 2);
}
.compact-doctors-slider[data-columns-num="3"]:not(.swiper-initialized) > .doctor-card--compact {
	width: calc((100% - 32px) / 3);
}
.compact-doctors-slider[data-columns-num="4"]:not(.swiper-initialized) > .doctor-card--compact {
	width: calc((100% - 48px) / 4);
}

/* WHY: на мобильном (<1024) — 1 карточка в строку, но НЕ full-width.
 * Оставляем 40px справа под peek-эффект (виден край следующей карточки),
 * чтобы пользователь понимал, что слайдер можно листать. Без peek карточка
 * выглядит как единственная — UX-провал. */
@media (max-width: 1023px) {
	.compact-doctors-slider:not(.swiper-initialized) > .doctor-card--compact {
		width: calc(100% - 40px);
		max-width: calc(100% - 40px);
		flex: 0 0 calc(100% - 40px);
	}
	.compact-doctors-slider .swiper-slide {
		width: calc(100% - 40px);
		max-width: calc(100% - 40px);
	}
}

/* WHY: Swiper по умолчанию задаёт slide высоту по контенту → карточки в ряду
 * разной высоты. `align-items: stretch` на wrapper + `height: auto` + `display: flex`
 * на slide-е плюс `flex-grow: 1` на карточке заставляют все карточки в ряду
 * растянуться до высоты самой высокой. */
.compact-doctors-slider .swiper-wrapper {
	align-items: stretch;
}

.compact-doctors-slider .swiper-slide {
	height: auto;
	display: flex;
}

.compact-doctors-slider .swiper-slide > .doctor-card--compact {
	flex-grow: 1;
}

/* ============================================================
 * COMPACT CARD — форс мобильного layout на всех брейкпоинтах.
 * Дублирует правила из @media(max-width:1023px), но без media-query.
 * ============================================================ */
.doctor-card--compact {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 15px 16px;
	width: 100%;
	grid-template-columns: 1fr;
}

/* WHY: десктопный .doctor-card имеет :before-разделитель в grid-cell 1/3 × 2/3 —
 * в компактном layout это разделитель не нужен. */
.doctor-card--compact:before {
	content: none;
}

/* WHY: margin-bottom:auto прижимает info к верху, а __types — ко дну.
 * Высоты swiper-slide выравнены через `.popular-doctors .swiper-slide { height: 100% }`,
 * и без этого правила info "плывёт" по центру в высоких слайдах. */
.doctor-card--compact .doctor-card__info {
	grid-template-columns: 84px 1fr;
	gap: 0 16px;
	align-items: start;
	margin-bottom: auto;
}

.doctor-card--compact .doctor-card__info picture {
	grid-column: 1/2;
	grid-row: 2/6;
	width: 84px;
	height: 84px;
}

.doctor-card--compact .doctor-card__info > .strong {
	grid-column: 1/3;
	grid-row: 1/2;
	margin-bottom: 12px;
}

.doctor-card--compact .doctor-card__info .reviews-widget-wrapper {
	grid-column: 1/3;
	grid-row: 6/7;
	margin-top: 12px;
}

.doctor-card--compact .doctor-card__specialities {
	grid-column: 2/3;
	grid-row: 2/3;
	margin-bottom: 8px;
}

.doctor-card--compact .doctor-card__stats {
	grid-column: 2/3;
	grid-row: 3/5;
	gap: 8px 6px;
}

.doctor-card--compact .doctor-card__metro {
	grid-column: 1/3;
	grid-row: 7/8;
	margin-top: 12px;
}

.doctor-card--compact .doctor-card__types {
	padding-top: 15px;
	padding-left: 0;
	border-top: 1px solid rgba(18, 6, 30, .06);
}

/* WHY: эталон с продакшна — 2 chip-а side-by-side в одну строку, по ~50% ширины
 * (СБЕР ЗДОРОВЬЕ + ПРОДОКТОРОВ). Используем `flex: 1 1 0` + `min-width: 0` на li
 * и chip — оба гарантированно делят ширину ul пополам и сжимаются ниже
 * min-content (SVG-логотип 7em). */
.doctor-card--compact .doctor-card__types ul {
	flex-wrap: nowrap;
	gap: 8px;
}

.doctor-card--compact .doctor-card__types ul li {
	flex: 1 1 0;
	min-width: 0;
	max-width: 200px;
}

.doctor-card--compact .review-tag {
	flex: 1 1 0;
	min-width: 0;
	max-width: 200px;
	gap: 12px;
	height: 40px;
	padding: 10px;
}

/* WHY: SVG-лого СБЕР/ПРОДОКТОРОВ — DIRECT child .review-tag, имеют `width: 7em`
 * (~98px). При сжатии chip-а ниже 100-110px фиксированный SVG выпрыгивает за
 * пределы родителя. `max-width: 100%` позволяет лого масштабироваться вместе с chip-ом.
 * ВАЖНО: использовать `>` (direct child) — иначе правило цепляет вложенную
 * звезду рейтинга `.strong > svg[data-icon="star-plus-half"]` и она сжимается. */
.doctor-card--compact .review-tag > svg {
	max-width: 100%;
	flex-shrink: 1;
	min-width: 0;
}


/* End */


/* Start:/local/templates/medcentrservis/css/breadcrumbs-bottom.css?17797202741382*/
/* WHY: «карточный» вид хлебных крошек внизу страницы — единый стиль для услуг и анализов.
 * Перенесено из template_detail_analyze/style.css в общий ассет шаблона, чтобы один и тот же
 * визуальный паттерн (.breadcrumbs-bottom) применялся на всех страницах нового шаблона.
 */
.breadcrumbs-bottom {
	margin-top: 32px;
	padding: 16px 20px;
	background: #f9f8fb;
	border-radius: 12px;
}
.breadcrumbs-bottom .breadcrumbs {
	display: block;
	padding: 0;
}
.breadcrumbs-bottom .breadcrumbs ul {
	display: flex;
	flex-wrap: wrap;
	overflow-x: visible;
	white-space: normal;
	width: 100%;
	margin: 0;
	padding: 0;
	gap: 4px 6px;
}
.breadcrumbs-bottom .breadcrumbs ul li {
	flex-shrink: 1;
	white-space: normal;
	word-break: break-word;
	overflow-wrap: break-word;
	font-size: 13px;
	line-height: 18px;
	color: #9a91ad;
	gap: 6px;
	display: inline-block;
}
.breadcrumbs-bottom .breadcrumbs ul li > a {
	flex-shrink: 1;
	white-space: normal;
	color: #9a91ad;
}
.breadcrumbs-bottom .breadcrumbs ul li > a:hover {
	color: #7765e3;
}
.breadcrumbs-bottom .breadcrumbs ul li > span {
	flex-shrink: 1;
	white-space: normal;
	color: #c4bfd0;
}
.breadcrumbs-bottom .breadcrumbs ul li:not(:last-child):after {
	color: #d7d3de;
}

/* End */


/* Start:/local/templates/medcentrservis/css/author.css?17580254881994*/
.author-card2 {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column-reverse;
    gap: 12px;
    padding: 16px;
    margin: 10px 5px 0 0;
    background: #f9f8fb;
    border-radius: 12px;
    overflow: hidden;
    z-index: 1;
    width: 100%;
    justify-content: flex-end;
}

/* фоновая картинка */
.author-card2 > picture {
    position: absolute;
    top: -75px;
    right: -6px;
    width: 151px;
    height: 151px;
    z-index: -1;
}

.author-card2 > picture img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    -webkit-user-select: none;
    user-select: none;
}

/* заголовок/имя автора */
.author-card2 > .strong {
    color: #372648;
    font-weight: 500;
    font-size: 16px;
    line-height: 22px;
}

/* блок данных */
.author-card2__data {
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 12px 16px;
}

.author-card2__data span:not([class]) {
    grid-column: 1 / 3;
    grid-row: 2 / 3;
    color: #9a91ad;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
}

.author-card2__data > .strong {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    color: #372648;
    font-weight: 500;
    font-size: 20px;
    line-height: 26px;
}

/* аватар */
.author-card2__img {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
    width: 52px;
    height: 52px;
    align-self: center;
}

.author-card2__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
    -webkit-user-select: none;
    user-select: none;
}

/* теги */
.author-card2__tags {
    grid-column: 1 / 3;
    grid-row: 3 / 4;
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

/* модификатор */
.author-card2--blog {
    margin: 80px 0 16px;
}

/* layout секции (минимально необходимое) */
@media (min-width: 523px) {
    section.author-block {
        display: flex;
        align-items: stretch;
    }
}

/* End */


/* Start:/local/templates/medcentrservis/components/bitrix/news.list/links_block/style.css?1769417889158*/
.procedure-link[type], .procedure-link[href] { text-decoration: underline;}
.procedure-link[type]:hover, .procedure-link[href]:hover { text-decoration: none;}
/* End */
/* /local/templates/medcentrservis/css/custom-fix.css?17798761825949 */
/* /local/templates/medcentrservis/css/compact-doctors.css?17797202748024 */
/* /local/templates/medcentrservis/css/breadcrumbs-bottom.css?17797202741382 */
/* /local/templates/medcentrservis/css/author.css?17580254881994 */
/* /local/templates/medcentrservis/components/bitrix/news.list/links_block/style.css?1769417889158 */
