/******* Do not edit this file *******
Woody Code Snippets CSS and JS
Saved: Aug 07 2026 | 18:50:19 */
/* =========================
   Хлебные крошки (Yoast)
   ========================= */

/* Цвет, типографика, убираем подчёркивания темы */
.sechenov-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
    font-size: clamp(0.875rem, 0.554rem + 0.571vw, 1.125rem);
}

.sechenov-breadcrumbs a,
.sechenov-breadcrumbs span {
    color: #878c91 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}
/* Отступ между абзацами в тексте статьи (GenerateBlocks) */
.site-content .dynamic-entry-content p:not(.custom-margin) {
    margin-bottom: 1em !important;
}

/* Ховер – фирменный синий */
.sechenov-breadcrumbs a:hover {
    color: var(--primary) !important;
}

/* Скрываем название текущей страницы */
.sechenov-breadcrumbs .breadcrumb_last {
    display: none !important;
}

/* Мобилки – полностью скрываем крошки */
@media (max-width: 768px) {
    .sechenov-breadcrumbs {
        display: none !important;
    }
}

/* =========================
   Аккордеон: Учебный план
   ========================= */

/* Контейнер аккордеона */
.study-accordion {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
    padding: 8px 0;
}

/* Карточка модуля */
.study-module,
.study-module--empty {
    background: #F1F5F9;
    border-radius: 18px;
    overflow: hidden;
    transition: box-shadow 0.25s ease;
}

/* Лёгкая тень при ховере */
.study-module:hover,
.study-module--empty:hover {
    box-shadow: 0 8px 24px rgba(1, 23, 56, 0.06);
}

/* Шапка модуля (кнопка) */
.study-summary {
    padding: 20px 22px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    list-style: none;
}

.study-summary::-webkit-details-marker {
    display: none;
}

/* Заголовок модуля */
.study-accordion h6 {
    margin: 0 !important;
    padding: 0 !important;
    color: #323FA6 !important;
    font-weight: 600;
    line-height: 1.35;
    font-size: clamp(0.875rem, 0.634rem + 0.429vw, 1.063rem);
    transition: color 0.2s ease;
}

.study-summary:hover h6 {
    color: #011738 !important;
}

/* Иконка-стрелка */
.study-summary::after {
    content: '';
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23323FA6' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: transform 0.3s ease;
}

/* Открытый модуль – стрелка вверх */
.study-module[open] .study-summary::after {
    transform: rotate(-180deg);
}

/* Контент модуля */
.study-content {
    padding: 0 22px 22px;
    color: #011738;
    line-height: 1.65;
    font-size: 1rem;
}

/* Списки внутри контента */
.study-content ul,
.study-content ol {
    margin: 10px 0 0;
    padding-left: 24px;
}

.study-content li + li {
    margin-top: 10px;
}

/* Пустой модуль-заглушка */
.study-module--empty {
    padding: 20px 22px;
}

.study-module--empty h6 {
    margin: 0 !important;
    color: #011738 !important;
    line-height: 1.35;
}

/* Мобилка – чуть компактнее */
@media (max-width: 768px) {
    .study-summary {
        padding: 16px;
        align-items: flex-start;
    }

    .study-summary::after {
        flex: 0 0 20px;
        width: 20px;
        height: 20px;
    }

    .study-content {
        padding: 0 16px 18px;
    }

    .study-module--empty {
        padding: 16px;
    }
}

/* =========================
   Аккордеон: ПСА
   Отдельно от study-accordion
   ========================= */

.psa-accordion {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 100%;
}

.psa-accordion__item {
	background: #F1F5F9;
	border-radius: 18px;
	overflow: hidden;
	padding: 0;
}

.psa-accordion__item[open] {
	padding-bottom: 22px;
}

.psa-accordion__item summary {
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 22px;
	cursor: pointer;
}

.psa-accordion__item summary::-webkit-details-marker {
	display: none;
}

.psa-accordion__item summary::marker {
	content: "";
}

.psa-accordion__item summary,
.psa-accordion__item summary strong {
	color: #323FA6;
	font-weight: 600;
	line-height: 1.35;
	font-size: clamp(0.875rem, 0.634rem + 0.429vw, 1.063rem);
}

.psa-accordion__item summary::after {
	content: "";
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	margin-left: auto;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23323FA6' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	transition: transform 0.3s ease;
}

.psa-accordion__item[open] summary::after {
	transform: rotate(-180deg);
}

.psa-accordion__item > *:not(summary) {
	margin-left: 22px;
	margin-right: 22px;
}

.site-content .psa-accordion__item > p + p {
	margin-top: 8px !important;
}


/* =========================
   Отзывы
   ========================= */

/* Раскрытое состояние */
.review-text-clamp.is-expanded {
    -webkit-line-clamp: unset !important;
    display: block !important;
}

/* =========================
   Кнопка "Читать далее
   ========================= */

.review-read-more {
    cursor: pointer !important;
    display: none !important;
    margin-top: 10px !important;
    font-weight: 500;
}

.review-read-more:hover {
    opacity: 0.7;
}

.review-read-more.is-visible {
    display: inline-block !important;
}
/* Обрезка текста до 5 строк */
.review-text-clamp {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
	transition: all 0.3s ease !important;
}

.review-text-clamp.is-expanded {
    display: block;
    -webkit-line-clamp: unset;
    overflow: visible;
}

/* =========================
   Эксперты (горизонтальный скролл)
   ========================= */
/* По умолчанию 2 карточки в ряд */
.gb-expert-card {
    flex: 0 0 calc(50% - 10px) !important;
    min-width: 320px;
}

/* Если карточек 3+ (класс навешен из PHP) — край третьей выглядывает */
.experts-many .gb-expert-card {
    flex-basis: calc(48% - 10px) !important;  /* хвост меньше */
}

/* Сетка карточек — она же контейнер прокрутки */
.gb-experts-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 20px;
    padding-bottom: 20px !important;   /* резерв места → бар под карточками, не на фото */
    scroll-behavior: smooth;
}

/* Постоянный горизонтальный бар */
.gb-experts-grid::-webkit-scrollbar {
    height: 8px;
    -webkit-appearance: none;          /* macOS больше не прячет бар */
}
.gb-experts-grid::-webkit-scrollbar-track {
    background: #F9FBFF;
    border-radius: 8px;
}
.gb-experts-grid::-webkit-scrollbar-thumb {
    background: #CBD9F1;
    border-radius: 8px;
}
.gb-experts-grid::-webkit-scrollbar-thumb:hover {
    background: var(--primary);
}

/* Карточка эксперта */
.gb-expert-card {
    background: var(--contrast);
    border-radius: 12px;
    padding: 24px;
    display: flex;
    align-items: center;
    gap: 24px;
    flex: 0 0 calc(50% - 10px) !important;
    min-width: 320px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
}

/* Мобилка – одна карточка ~80% */
@media (max-width: 768px) {
    .gb-expert-card {
        flex: 0 0 80% !important;
        padding: 20px;
        gap: 16px;
    }
}

/* Аватарка */
.expert-avatar {
    width: 60px;
    height: 70px;          /* жёсткий портретный бокс 60×70 */
    border-radius: 12px;
    overflow: hidden;
    flex: 0 0 60px;
    background: #EAF2FF;    /* ← вот этот голубой фон */
}
.expert-avatar img {
    width: 100% !important;
    height: 100% !important;
    display: block;
    object-fit: cover;
    object-position: center 15%;   /* ← поднимаем кадр: показываем верх, головы не режет */
    background: transparent;
}

/* Текст внутри карточки эксперта */
.expert-details {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.expert-name {
    margin: 0;
    font-size: 18px;
    font-weight: 400;
    color: var(--text);
}

.expert-regalia {
    margin: 0;
    font-size: 16px;
    color: var(--primary);
    line-height: 1.4;
}

/* =========================
   FAQ блок (Вопрос‑ответ)
   ========================= */

/* Сетка FAQ */
.faq-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 30px;
}

/* Плашка вопроса */
.faq-item {
    background: var(--contrast);
    border-radius: 12px;
    flex: 1 1 calc(50% - 10px);
    display: flex;
    flex-direction: column;
    cursor: pointer;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
}

/* Шапка вопроса */
.faq-header {
    padding: 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
}

/* Текст вопроса */
.faq-title {
    margin: 0;
    font-size: clamp(0.938rem, 0.875rem + 0.25vw, 1.125rem);
    color: var(--primary);
    font-weight: 500;
    line-height: 1.4;
}

/* Иконка галочки */
.faq-icon {
    color: var(--primary);
    transition: transform 0.3s ease;
    flex-shrink: 0;
    display: flex;
}

/* Поворот иконки при открытии */
.faq-item.is-open .faq-icon {
    transform: rotate(180deg);
}

/* Тело ответа */
.faq-body {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0, 1, 0, 1);
}

.faq-item.is-open .faq-body {
    max-height: 1000px;
    transition: max-height 1s ease-in-out;
}

/* Текст ответа */
.faq-content {
    padding: 0 24px 24px;
    margin: 0;
    font-size: clamp(0.938rem, 0.875rem + 0.25vw, 1.125rem);
    color: var(--text);
    line-height: 1.6;
}

/* Мобилка – одна колонка */
@media (max-width: 768px) {
    .faq-item {
        flex: 1 1 100%;
    }
}
/* Заголовки секций из шорткодов — под стиль GB-заголовков */
.program-section-title {
    margin: 0 0 12px;
    color: var(--primary);
    font-weight: 700;
    text-transform: uppercase;
}