/* ============================================================
   ММЦ — Pilot Template (новый шаблон страницы курса)
   Изолированно: класс .mmcmed-pilot — все стили только внутри.
   Не конфликтует с Impreza/WPBakery.

   Адаптировано из mmc-page-styles.css + design-tokens.css
   (inbox-from-isolda/design-handoff-2026-05-06/)
   ============================================================ */

/* --- Дизайн-токены (scope: .mmcmed-pilot) ----------------- */
.mmcmed-pilot {
	/* Brand */
	--mmc-brand-600: #1667D9;
	--mmc-brand-700: #0F4FA8;
	--mmc-brand-500: #3B82E0;
	--mmc-brand-100: #E3EEFB;
	--mmc-brand-50:  #F2F7FD;

	/* Neutrals */
	--mmc-ink-900: #0F172A;
	--mmc-ink-700: #334155;
	--mmc-ink-500: #64748B;
	--mmc-ink-300: #CBD5E1;
	--mmc-ink-100: #E2E8F0;
	--mmc-ink-50:  #F2F4F7;
	--mmc-paper:   #FFFFFF;

	/* Semantic */
	--mmc-success: #16A34A;
	--mmc-warn:    #F59E0B;
	--mmc-danger:  #DC2626;

	/* Type */
	--mmc-font-sans: "Raleway", "Helvetica Neue", Arial, sans-serif;
	--mmc-fs-h1: clamp(28px, 5vw, 44px);
	--mmc-fs-h2: clamp(22px, 3.2vw, 32px);
	--mmc-fs-h3: clamp(18px, 2.2vw, 22px);
	--mmc-fs-lead: clamp(15px, 1.6vw, 17px);

	/* Spacing */
	--mmc-sp-2: 8px;
	--mmc-sp-3: 12px;
	--mmc-sp-4: 16px;
	--mmc-sp-5: 24px;
	--mmc-sp-6: 32px;
	--mmc-sp-7: 48px;
	--mmc-sp-8: 64px;

	/* Radii / shadows */
	--mmc-r-sm: 6px;
	--mmc-r-md: 12px;
	--mmc-r-lg: 20px;
	--mmc-shadow-1: 0 1px 2px rgba(15,23,42,.06), 0 1px 3px rgba(15,23,42,.06);
	--mmc-shadow-2: 0 4px 12px rgba(15,23,42,.08);
	--mmc-shadow-3: 0 12px 32px rgba(15,23,42,.12);

	/* Layout */
	--mmc-container: 1200px;
	--mmc-gutter: 24px;
	--mmc-sticky-offset: 60px;
	/* Высота полосы анкорных табов (см. .mmc-tabs-wrap) — нужна, чтобы sticky-блоки
	   (pricecard и т.п.) не уезжали под прилипшие табы при скролле. */
	--mmc-tabs-height: 56px;

	font-family: var(--mmc-font-sans);
	color: var(--mmc-ink-900);
	line-height: 1.5;
	font-size: 16px;
}

.mmcmed-pilot * {
	box-sizing: border-box;
}

.mmcmed-pilot .mmc-container {
	max-width: var(--mmc-container);
	margin: 0 auto;
	padding: 0 var(--mmc-gutter);
}

/* Скрытие лишних WPBakery/Impreza-отступов внутри тестовой страницы.
   ВАЖНО: НЕ трогаем padding-top у .l-main — он компенсирует fixed-шапку Impreza.

   WPBakery оборачивает наш шорткод в <section class="l-section height_*">.
   Эти классы дают большой top/bottom padding (60-100px) — обнуляем для пилота. */
body.mmcmed-pilot-active #page-content > .l-section,
body.mmcmed-pilot-active #page-content > .l-section[class*="height_"],
body.mmcmed-pilot-active #page-content > .l-section.with_pad {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
body.mmcmed-pilot-active #page-content > .l-section .vc_row {
	margin: 0 !important;
}

/* --- Кнопки -------------------------------------------------- */
.mmcmed-pilot .mmc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-family: inherit;
	font-weight: 600;
	font-size: 15px;
	border-radius: 8px;
	padding: 12px 24px;
	border: 1px solid transparent;
	cursor: pointer;
	text-decoration: none !important;
	line-height: 1.2;
	transition: background .15s ease, border-color .15s ease, transform .1s ease;
}
.mmcmed-pilot .mmc-btn--primary { background: var(--mmc-brand-600); color: #fff !important; }
.mmcmed-pilot .mmc-btn--primary:hover { background: var(--mmc-brand-700); }
.mmcmed-pilot .mmc-btn--ghost { background: #fff; color: var(--mmc-brand-700) !important; border-color: var(--mmc-brand-600); }
.mmcmed-pilot .mmc-btn--ghost:hover { background: var(--mmc-brand-50); }
.mmcmed-pilot .mmc-btn--lg { padding: 14px 30px; font-size: 16px; }
.mmcmed-pilot .mmc-btn--sm { padding: 9px 16px; font-size: 13px; }

/* --- Headings ------------------------------------------------ */
.mmcmed-pilot .mmc-h2 {
	font-size: var(--mmc-fs-h2);
	font-weight: 700;
	margin: 0 0 var(--mmc-sp-5);
	line-height: 1.2;
	color: var(--mmc-ink-900);
}
.mmcmed-pilot .mmc-h2__sub {
	margin: -16px 0 24px;
	color: var(--mmc-ink-500);
	font-size: 15px;
}
.mmcmed-pilot .mmc-h3 {
	font-size: var(--mmc-fs-h3);
	font-weight: 600;
	margin: 0 0 var(--mmc-sp-3);
	line-height: 1.3;
}

/* --- Section base -------------------------------------------- */
.mmcmed-pilot .mmc-section {
	padding: var(--mmc-sp-7) 0;
}
.mmcmed-pilot .mmc-section--alt {
	background: var(--mmc-brand-50);
	border-radius: var(--mmc-r-lg);
	margin: var(--mmc-sp-5) var(--mmc-sp-4);
}
@media (max-width: 767px) {
	.mmcmed-pilot .mmc-section--alt {
		margin: var(--mmc-sp-4) var(--mmc-sp-3);
		border-radius: var(--mmc-r-md);
	}
}
.mmcmed-pilot .mmc-section--ink {
	background: var(--mmc-ink-900);
	color: #fff;
}

/* --- Placeholder marker (для пустых ACF) --------------------- */
.mmcmed-pilot .mmc-placeholder {
	background: #FEF3C7;
	color: #92400E;
	padding: 1px 6px;
	border-radius: 3px;
	font-size: 12px;
	font-style: italic;
}

/* === SECTION 02 — Breadcrumbs (normal flow) + sticky tabs == */

/* Хлебные крошки — НЕ sticky, видны только в самом верху страницы.
   !important на display/visibility — на случай если Impreza или WPBakery
   переопределяют видимость <nav> элементов внутри .l-main. */
.mmcmed-pilot .mmc-crumbs {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	width: 100%;
	box-sizing: border-box;
	max-width: var(--mmc-container);
	margin: 0 auto;
	padding: 18px var(--mmc-gutter) 14px !important;
	font-size: 14px;
	line-height: 1.45;
	color: var(--mmc-ink-700);
	background: transparent;
}
.mmcmed-pilot .mmc-crumbs a {
	color: var(--mmc-ink-700);
	text-decoration: none;
}
.mmcmed-pilot .mmc-crumbs a:hover { color: var(--mmc-brand-600); }
.mmcmed-pilot .mmc-crumbs__sep {
	margin: 0 8px;
	color: var(--mmc-ink-300);
}

/* Sticky якорные табы — прилипают ПОД fixed-шапкой Impreza.
   Высота шапки задаётся через JS (см. pilot-template.js), фолбэк 70px. */
.mmcmed-pilot .mmc-tabs-wrap {
	background: #fff;
	position: sticky;
	top: var(--mmc-header-fixed-height, 70px);
	z-index: 50;
	border-top: 1px solid var(--mmc-ink-100);
	border-bottom: 1px solid var(--mmc-ink-100);
	box-shadow: 0 2px 4px rgba(15, 23, 42, .04);
}
.mmcmed-pilot .mmc-tabs {
	padding: 8px var(--mmc-gutter);
	display: flex;
	gap: 4px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}
.mmcmed-pilot .mmc-tabs::-webkit-scrollbar { display: none; }
.mmcmed-pilot .mmc-tabs__link {
	padding: 8px 14px;
	font-size: 14px;
	font-weight: 500;
	color: var(--mmc-ink-700);
	border-radius: var(--mmc-r-sm);
	white-space: nowrap;
	text-decoration: none !important;
	transition: background .15s ease, color .15s ease;
}
.mmcmed-pilot .mmc-tabs__link:hover { background: var(--mmc-ink-50); }
.mmcmed-pilot .mmc-tabs__link--active {
	background: var(--mmc-brand-50);
	color: var(--mmc-brand-700) !important;
	font-weight: 600;
}

/* === SECTION 03 — HERO ====================================== */
.mmcmed-pilot .mmc-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) 340px;
	gap: var(--mmc-sp-7);
	padding: var(--mmc-sp-8) 0 var(--mmc-sp-8);
	align-items: start;
	scroll-margin-top: 80px; /* отступ якоря под sticky-tabs */
}
.mmcmed-pilot .mmc-hero__eyebrow {
	display: inline-block;
	background: var(--mmc-brand-100);
	color: var(--mmc-brand-700);
	font-size: 12px;
	font-weight: 600;
	padding: 5px 12px;
	border-radius: 999px;
	text-transform: uppercase;
	letter-spacing: .04em;
	margin-bottom: var(--mmc-sp-3);
}
.mmcmed-pilot .mmc-hero__h1 {
	font-size: var(--mmc-fs-h1);
	line-height: 1.15;
	font-weight: 700;
	margin: 0 0 var(--mmc-sp-4);
	color: var(--mmc-ink-900);
}
.mmcmed-pilot .mmc-hero__lead {
	font-size: var(--mmc-fs-lead);
	color: var(--mmc-ink-700);
	margin: 0 0 var(--mmc-sp-5);
}
.mmcmed-pilot .mmc-hero__chips {
	display: flex;
	flex-wrap: wrap;
	gap: var(--mmc-sp-2);
	margin-bottom: var(--mmc-sp-5);
}
.mmcmed-pilot .mmc-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	padding: 8px 14px;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 500;
	color: var(--mmc-ink-700);
}
.mmcmed-pilot .mmc-chip svg {
	color: var(--mmc-brand-600);
	flex-shrink: 0;
}
.mmcmed-pilot .mmc-chip--success {
	background: #DCFCE7;
	border-color: #BBF7D0;
	color: #166534;
}
.mmcmed-pilot .mmc-chip--success svg { color: #16A34A; }

/* Ближайшая группа — блок под чипами в Hero */
.mmcmed-pilot .mmc-cohort {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 14px;
	background: linear-gradient(90deg, var(--mmc-brand-50), #fff 80%);
	border: 1px solid var(--mmc-brand-100);
	border-left: 3px solid var(--mmc-brand-600);
	border-radius: var(--mmc-r-sm);
	margin-bottom: var(--mmc-sp-5);
	font-size: 14px;
	color: var(--mmc-ink-700);
	flex-wrap: wrap;
}
.mmcmed-pilot .mmc-cohort__icon {
	color: var(--mmc-brand-600);
	flex-shrink: 0;
}
.mmcmed-pilot .mmc-cohort__label {
	color: var(--mmc-ink-500);
	font-weight: 500;
}
.mmcmed-pilot .mmc-cohort__date {
	color: var(--mmc-brand-700);
	font-weight: 700;
	font-size: 15px;
}

/* Подзаголовок недель в H2 (Outcomes «за 72 ак.ч. (2 недели)») */
.mmcmed-pilot .mmc-h2__weeks {
	color: var(--mmc-ink-500);
	font-weight: 500;
	font-size: .75em;
}

/* Переключатель часов 36/72/144 (Variable Product) */
.mmcmed-pilot .mmc-hours-switcher {
	margin: 0 0 var(--mmc-sp-5);
	padding: 14px 16px;
	background: linear-gradient(135deg, var(--mmc-brand-50) 0%, #fff 100%);
	border: 1px solid var(--mmc-brand-100);
	border-radius: var(--mmc-r-sm);
}
.mmcmed-pilot .mmc-hours-switcher__label {
	font-size: 13px;
	font-weight: 600;
	color: var(--mmc-ink-700);
	margin-bottom: 10px;
}
.mmcmed-pilot .mmc-hours-switcher__chips {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}
.mmcmed-pilot .mmc-hours-chip {
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
	background: #fff;
	border: 2px solid var(--mmc-ink-100);
	padding: 10px 16px;
	border-radius: 8px;
	font-family: inherit;
	font-size: 13px;
	color: var(--mmc-ink-700);
	cursor: pointer;
	transition: all .15s ease;
	min-width: 88px;
	justify-content: center;
}
.mmcmed-pilot .mmc-hours-chip b {
	font-size: 18px;
	font-weight: 700;
	color: var(--mmc-ink-900);
	line-height: 1;
}
.mmcmed-pilot .mmc-hours-chip:hover {
	border-color: var(--mmc-brand-300);
	background: var(--mmc-brand-50);
}
.mmcmed-pilot .mmc-hours-chip--active {
	border-color: var(--mmc-brand-600);
	background: var(--mmc-brand-600);
	color: #fff;
}
.mmcmed-pilot .mmc-hours-chip--active b {
	color: #fff;
}
.mmcmed-pilot .mmc-hours-chip--active:hover {
	background: var(--mmc-brand-700);
	border-color: var(--mmc-brand-700);
}

.mmcmed-pilot .mmc-hero__bullets {
	list-style: none;
	padding: 0;
	margin: 0 0 var(--mmc-sp-5);
}
.mmcmed-pilot .mmc-hero__bullets li {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-size: 15px;
	color: var(--mmc-ink-700);
	margin-bottom: 8px;
	line-height: 1.45;
}
.mmcmed-pilot .mmc-hero__bullets li::before {
	content: "✓";
	color: var(--mmc-success);
	font-weight: 700;
	flex-shrink: 0;
	font-size: 18px;
	line-height: 1.3;
}
.mmcmed-pilot .mmc-hero__cta {
	display: flex;
	gap: var(--mmc-sp-3);
	flex-wrap: wrap;
}

/* Price card sticky.
   Прилипает ПОД fixed-шапкой Impreza + полосой анкорных табов (.mmc-tabs-wrap),
   чтобы блок цены не уходил под табы при скролле. */
.mmcmed-pilot .mmc-pricecard {
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	padding: var(--mmc-sp-5);
	box-shadow: var(--mmc-shadow-2);
	position: sticky;
	top: calc(var(--mmc-header-fixed-height, 70px) + var(--mmc-tabs-height) + 16px);
}
.mmcmed-pilot .mmc-pricecard__label {
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: var(--mmc-ink-500);
	margin-bottom: var(--mmc-sp-2);
	font-weight: 600;
}
.mmcmed-pilot .mmc-pricecard__row {
	display: flex;
	align-items: baseline;
	gap: var(--mmc-sp-3);
	margin-bottom: var(--mmc-sp-2);
}
.mmcmed-pilot .mmc-pricecard__price {
	font-size: 32px;
	font-weight: 700;
	color: var(--mmc-ink-900);
	line-height: 1;
}
.mmcmed-pilot .mmc-pricecard__old {
	font-size: 16px;
	color: var(--mmc-ink-500);
	text-decoration: line-through;
}
.mmcmed-pilot .mmc-pricecard__discount {
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	background: #FEF2F2;
	color: var(--mmc-danger);
	padding: 3px 10px;
	border-radius: 4px;
	margin-bottom: var(--mmc-sp-3);
}
.mmcmed-pilot .mmc-pricecard__split {
	font-size: 13px;
	color: var(--mmc-ink-500);
	padding: 10px 12px;
	background: var(--mmc-brand-50);
	border-radius: var(--mmc-r-sm);
	margin-bottom: var(--mmc-sp-4);
	line-height: 1.4;
}
.mmcmed-pilot .mmc-pricecard__split b { color: var(--mmc-brand-700); }
.mmcmed-pilot .mmc-pricecard .mmc-btn {
	width: 100%;
	margin-bottom: 8px;
}
.mmcmed-pilot .mmc-pricecard__guard {
	font-size: 12px;
	color: var(--mmc-ink-500);
	margin: var(--mmc-sp-3) 0 0;
	display: flex;
	gap: 6px;
	align-items: center;
}

/* === SECTION 03B — Описание курса в аккордеоне ============== */
.mmcmed-pilot .mmc-about {
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	box-shadow: var(--mmc-shadow-1);
	overflow: hidden;
}
.mmcmed-pilot .mmc-about__head {
	width: 100%;
	background: transparent;
	border: 0;
	padding: var(--mmc-sp-5) var(--mmc-sp-6);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--mmc-sp-4);
	cursor: pointer;
	font-family: inherit;
	text-align: left;
	color: var(--mmc-ink-900);
	transition: background .15s ease;
}
.mmcmed-pilot .mmc-about__head:hover { background: var(--mmc-ink-50); }
.mmcmed-pilot .mmc-about__head--open { background: var(--mmc-brand-50); }
.mmcmed-pilot .mmc-about__title {
	font-size: var(--mmc-fs-h2);
	font-weight: 700;
	margin: 0;
	color: inherit;
	line-height: 1.2;
}
.mmcmed-pilot .mmc-about__caret {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--mmc-brand-600);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: transform .2s ease;
}
.mmcmed-pilot .mmc-about__head--open .mmc-about__caret {
	transform: rotate(45deg);
}
.mmcmed-pilot .mmc-about__body {
	padding: var(--mmc-sp-5) var(--mmc-sp-6) var(--mmc-sp-6);
}

/* === SECTION 03B — Описание курса (SEO-текст с H3-разделами) ==== */
.mmcmed-pilot .mmc-description {
	font-size: 16px;
	line-height: 1.65;
	color: var(--mmc-ink-700);
	max-width: 900px;
}
.mmcmed-pilot .mmc-description > *:first-child { margin-top: 0; }
.mmcmed-pilot .mmc-description > *:last-child { margin-bottom: 0; }
.mmcmed-pilot .mmc-description p { margin: 0 0 var(--mmc-sp-4); }
.mmcmed-pilot .mmc-description h3 {
	font-weight: 700;
	color: var(--mmc-ink-900);
	margin: var(--mmc-sp-6) 0 var(--mmc-sp-3);
	font-size: 20px;
	line-height: 1.3;
}
.mmcmed-pilot .mmc-description h2,
.mmcmed-pilot .mmc-description h4 {
	font-weight: 700;
	color: var(--mmc-ink-900);
	margin: var(--mmc-sp-5) 0 var(--mmc-sp-3);
	font-size: 18px;
}
.mmcmed-pilot .mmc-description ul,
.mmcmed-pilot .mmc-description ol {
	margin: 0 0 var(--mmc-sp-4);
	padding-left: 0;
	list-style: none;
}
.mmcmed-pilot .mmc-description ul li,
.mmcmed-pilot .mmc-description ol li {
	position: relative;
	padding-left: 22px;
	margin-bottom: 10px;
	line-height: 1.55;
}
.mmcmed-pilot .mmc-description ul li::before {
	content: "—";
	position: absolute;
	left: 0;
	color: var(--mmc-brand-600);
	font-weight: 700;
}
.mmcmed-pilot .mmc-description ol {
	counter-reset: mmc-li;
}
.mmcmed-pilot .mmc-description ol li {
	counter-increment: mmc-li;
}
.mmcmed-pilot .mmc-description ol li::before {
	content: counter(mmc-li) ".";
	position: absolute;
	left: 0;
	color: var(--mmc-brand-600);
	font-weight: 700;
}
.mmcmed-pilot .mmc-description a { color: var(--mmc-brand-600); }
.mmcmed-pilot .mmc-description__cta {
	background: var(--mmc-brand-50);
	border-left: 3px solid var(--mmc-brand-600);
	border-radius: var(--mmc-r-sm);
	padding: 14px 18px;
	font-size: 15px;
	margin: var(--mmc-sp-4) 0 0 !important;
	color: var(--mmc-ink-700);
}
.mmcmed-pilot .mmc-description__cta a {
	font-weight: 600;
	white-space: nowrap;
}
.mmcmed-pilot .mmc-description img {
	max-width: 100%;
	height: auto;
	border-radius: var(--mmc-r-sm);
	margin: var(--mmc-sp-3) 0;
}

/* === SECTION 08B — Каналы связи «Как начать обучение» ====== */
.mmcmed-pilot .mmc-channels {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--mmc-sp-3);
}
.mmcmed-pilot .mmc-channel {
	display: flex;
	gap: var(--mmc-sp-3);
	align-items: center;
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	padding: var(--mmc-sp-4);
	text-decoration: none !important;
	color: inherit;
	box-shadow: var(--mmc-shadow-1);
	transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.mmcmed-pilot .mmc-channel:hover {
	transform: translateY(-2px);
	box-shadow: var(--mmc-shadow-2);
	border-color: var(--mmc-brand-500);
}
.mmcmed-pilot .mmc-channel__icon {
	flex-shrink: 0;
	width: 48px;
	height: 48px;
	border-radius: 12px;
	background: var(--mmc-brand-50);
	color: var(--mmc-brand-700);
	display: flex;
	align-items: center;
	justify-content: center;
}
.mmcmed-pilot .mmc-channel__icon--telegram { background: #E0F2FE; color: #0284C7; }
.mmcmed-pilot .mmc-channel__icon--max      { background: #FEF3C7; color: #B45309; }
.mmcmed-pilot .mmc-channel__icon--phone    { background: #DCFCE7; color: #166534; }
.mmcmed-pilot .mmc-channel__icon--email    { background: #FCE7F3; color: #BE185D; }
.mmcmed-pilot .mmc-channel__icon--chat     { background: var(--mmc-brand-100); color: var(--mmc-brand-700); }
.mmcmed-pilot .mmc-channel__title {
	font-size: 15px;
	font-weight: 700;
	color: var(--mmc-ink-900);
	line-height: 1.2;
	margin-bottom: 3px;
}
.mmcmed-pilot .mmc-channel__sub {
	font-size: 12px;
	color: var(--mmc-ink-500);
	line-height: 1.3;
}

/* === SECTION 17 — Лицензия (галерея фото) ================== */
.mmcmed-pilot .mmc-license {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--mmc-sp-4);
}
.mmcmed-pilot .mmc-license__item {
	position: relative;
	display: block;
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	overflow: hidden;
	background: #F8FAFC;
	box-shadow: var(--mmc-shadow-1);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.mmcmed-pilot .mmc-license__item:hover {
	transform: scale(1.02);
	box-shadow: var(--mmc-shadow-2);
	border-color: var(--mmc-brand-500);
}
.mmcmed-pilot .mmc-license__item img {
	display: block;
	width: 100%;
	height: auto;
}
.mmcmed-pilot .mmc-license__zoom {
	position: absolute;
	bottom: 12px;
	right: 12px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .92);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--mmc-brand-700);
	box-shadow: var(--mmc-shadow-1);
	opacity: 0;
	transition: opacity .15s ease;
}
.mmcmed-pilot .mmc-license__item:hover .mmc-license__zoom { opacity: 1; }

.mmcmed-pilot .mmc-license__verify {
	margin-top: var(--mmc-sp-5);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	text-align: center;
}
.mmcmed-pilot .mmc-license__verify-hint {
	font-size: 12px;
	color: var(--mmc-ink-500);
}

/* === SECTION 18 — Карта Yandex (full-width) ================ */
.mmcmed-pilot .mmc-section--map { padding-bottom: 0; }
.mmcmed-pilot .mmc-section--map .mmc-container { margin-bottom: var(--mmc-sp-5); }

.mmcmed-pilot .mmc-map {
	min-height: 400px;
	background: var(--mmc-ink-50);
	overflow: hidden;
	border-top: 1px solid var(--mmc-ink-100);
	border-bottom: 1px solid var(--mmc-ink-100);
}
.mmcmed-pilot .mmc-map--full {
	width: 100%;
}
.mmcmed-pilot .mmc-map > div { display: block; }

/* === SECTION 04 — Audience ================================== */
.mmcmed-pilot .mmc-audience {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--mmc-sp-4);
}
.mmcmed-pilot .mmc-audience__card {
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	padding: var(--mmc-sp-5);
	box-shadow: var(--mmc-shadow-1);
}
.mmcmed-pilot .mmc-audience__card h4 {
	font-size: 17px;
	font-weight: 700;
	margin: 0 0 8px;
}
.mmcmed-pilot .mmc-audience__card p {
	font-size: 14px;
	color: var(--mmc-ink-700);
	margin: 0;
	line-height: 1.5;
}
.mmcmed-pilot .mmc-audience__card--no { opacity: .68; }

/* Если NO-карточка 4-я (3 YES + 1 NO, типично для ПП) — растягиваем её
   на всю ширину на десктопе. Для ПК (2 YES + 1 NO) ничего не меняется,
   т.к. NO там 3-я. На tablet/mobile тоже не действует — там и так норм. */
@media (min-width: 992px) {
	.mmcmed-pilot .mmc-audience__card--no:nth-child(4) {
		grid-column: 1 / -1;
	}
}
.mmcmed-pilot .mmc-audience__icon {
	width: 40px;
	height: 40px;
	background: var(--mmc-brand-100);
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--mmc-brand-700);
	margin-bottom: var(--mmc-sp-3);
}
.mmcmed-pilot .mmc-audience__icon--no {
	background: #FEE2E2;
	color: var(--mmc-danger);
}
.mmcmed-pilot .mmc-audience__alt {
	display: inline-block;
	margin-top: var(--mmc-sp-3);
	font-size: 14px;
	color: var(--mmc-brand-600);
	font-weight: 600;
	text-decoration: none;
}
.mmcmed-pilot .mmc-audience__alt:hover { color: var(--mmc-brand-700); }

/* === SECTION 05 — Outcomes ================================== */
.mmcmed-pilot .mmc-outcomes {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--mmc-sp-3);
}
.mmcmed-pilot .mmc-outcomes__item {
	display: flex;
	gap: var(--mmc-sp-3);
	padding: var(--mmc-sp-4);
	background: #fff;
	border-radius: var(--mmc-r-md);
	border: 1px solid var(--mmc-ink-100);
	box-shadow: var(--mmc-shadow-1);
}
.mmcmed-pilot .mmc-outcomes__num {
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	border-radius: 6px;
	background: var(--mmc-brand-600);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}
.mmcmed-pilot .mmc-outcomes__text {
	font-size: 14px;
	color: var(--mmc-ink-700);
	line-height: 1.5;
}

/* === SECTION 06 — Document ================================== */
.mmcmed-pilot .mmc-doc {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) 1fr;
	gap: var(--mmc-sp-7);
	align-items: center;
}
.mmcmed-pilot .mmc-doc__img {
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	overflow: hidden;
	box-shadow: var(--mmc-shadow-2);
	background: #fff;
	position: relative;
}
/* Реальная картинка — занимает всю ширину колонки, высота натуральная */
.mmcmed-pilot .mmc-doc__img-pic {
	display: block;
	width: 100%;
	height: auto;
}
/* Placeholder — фиксированная высота если картинки нет вообще */
.mmcmed-pilot .mmc-doc__img-placeholder {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: var(--mmc-sp-3);
	color: var(--mmc-brand-700);
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	padding: var(--mmc-sp-7) var(--mmc-sp-4);
	background: linear-gradient(135deg, #E3EEFB, #F2F7FD);
	min-height: 280px;
}
.mmcmed-pilot .mmc-doc__badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #DCFCE7;
	color: #166534;
	padding: 6px 12px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
	margin-bottom: var(--mmc-sp-3);
}
/* Блок присваиваемой квалификации (только для ПП) */
.mmcmed-pilot .mmc-doc__qualification {
	margin: var(--mmc-sp-4) 0 0;
	padding: 14px 16px;
	background: linear-gradient(135deg, var(--mmc-brand-50) 0%, #fff 100%);
	border: 1px solid var(--mmc-brand-100);
	border-left: 3px solid var(--mmc-brand-600);
	border-radius: var(--mmc-r-sm);
}
.mmcmed-pilot .mmc-doc__qualification-label {
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: var(--mmc-ink-500);
	font-weight: 600;
	margin-bottom: 6px;
}
.mmcmed-pilot .mmc-doc__qualification-name {
	font-size: 16px;
	color: var(--mmc-ink-900);
	line-height: 1.4;
}
.mmcmed-pilot .mmc-doc__qualification-code {
	font-size: 13px;
	color: var(--mmc-ink-500);
	font-weight: 400;
}
.mmcmed-pilot .mmc-doc__qualification-field {
	margin-top: 4px;
	font-size: 13px;
	color: var(--mmc-ink-700);
	line-height: 1.4;
}

.mmcmed-pilot .mmc-doc__features {
	list-style: none;
	padding: 0;
	margin: var(--mmc-sp-4) 0 0;
}
.mmcmed-pilot .mmc-doc__features li {
	font-size: 14px;
	padding: 10px 0;
	border-bottom: 1px solid var(--mmc-ink-100);
	display: flex;
	gap: 8px;
	align-items: flex-start;
}
.mmcmed-pilot .mmc-doc__features li::before {
	content: "✓";
	color: var(--mmc-success);
	font-weight: 700;
	flex-shrink: 0;
}

/* === SECTION 07 — Программа курса (аккордеон) =============== */
.mmcmed-pilot .mmc-program__module {
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	margin-bottom: 10px;
	overflow: hidden;
}
.mmcmed-pilot .mmc-program__head {
	width: 100%;
	background: transparent;
	border: 0;
	padding: var(--mmc-sp-4) var(--mmc-sp-5);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--mmc-sp-4);
	cursor: pointer;
	font-family: inherit;
	font-weight: 600;
	font-size: 15px;
	text-align: left;
	color: var(--mmc-ink-900);
	transition: background .15s ease;
}
.mmcmed-pilot .mmc-program__head:hover { background: var(--mmc-ink-50); }
.mmcmed-pilot .mmc-program__head--open { background: var(--mmc-brand-50); }
.mmcmed-pilot .mmc-program__title {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: var(--mmc-sp-3);
	flex: 1;
}
.mmcmed-pilot .mmc-program__hours {
	font-size: 13px;
	font-weight: 500;
	color: var(--mmc-ink-500);
}
.mmcmed-pilot .mmc-program__caret {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--mmc-brand-600);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: transform .2s ease;
}
.mmcmed-pilot .mmc-program__head--open .mmc-program__caret {
	transform: rotate(45deg);
}
.mmcmed-pilot .mmc-program__body {
	padding: var(--mmc-sp-3) var(--mmc-sp-5) var(--mmc-sp-4);
	font-size: 14px;
	color: var(--mmc-ink-700);
}
.mmcmed-pilot .mmc-program__body ul {
	margin: 0;
	padding-left: 20px;
}
.mmcmed-pilot .mmc-program__body li {
	margin-bottom: 6px;
	line-height: 1.5;
}

/* === SECTION 07B — Профстандарт ============================ */
.mmcmed-pilot .mmc-profstd { display: grid; gap: var(--mmc-sp-4); }
.mmcmed-pilot .mmc-profstd__card {
	display: flex;
	gap: var(--mmc-sp-4);
	align-items: flex-start;
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-left: 3px solid var(--mmc-brand-600);
	border-radius: var(--mmc-r-md);
	padding: var(--mmc-sp-4) var(--mmc-sp-5);
	box-shadow: var(--mmc-shadow-1);
}
.mmcmed-pilot .mmc-profstd__icon {
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	border-radius: 8px;
	background: var(--mmc-brand-100);
	color: var(--mmc-brand-700);
	display: flex;
	align-items: center;
	justify-content: center;
}
.mmcmed-pilot .mmc-profstd__name {
	font-size: 17px;
	font-weight: 700;
	margin: 0 0 4px;
	color: var(--mmc-ink-900);
}
.mmcmed-pilot .mmc-profstd__order {
	margin: 0;
	font-size: 14px;
	color: var(--mmc-ink-500);
}
.mmcmed-pilot .mmc-profstd__details,
.mmcmed-pilot .mmc-profstd__periodic-body {
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	overflow: hidden;
	box-shadow: var(--mmc-shadow-1);
}
.mmcmed-pilot .mmc-profstd__toggle {
	width: 100%;
	background: transparent;
	border: 0;
	padding: var(--mmc-sp-3) var(--mmc-sp-5);
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	font-family: inherit;
	font-weight: 600;
	font-size: 14px;
	color: var(--mmc-brand-700);
	text-align: left;
}
.mmcmed-pilot .mmc-profstd__toggle:hover { background: var(--mmc-brand-50); }
.mmcmed-pilot .mmc-profstd__toggle[aria-expanded="true"] { background: var(--mmc-brand-50); }
.mmcmed-pilot .mmc-profstd__caret {
	width: 28px;
	height: 28px;
	min-width: 28px;
	flex-shrink: 0; /* На мобиле длинный текст не сжимает каретку в эллипс */
	border-radius: 50%;
	background: var(--mmc-brand-600);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	font-weight: 300;
	transition: transform .2s ease;
}
.mmcmed-pilot .mmc-profstd__toggle[aria-expanded="true"] .mmc-profstd__caret {
	transform: rotate(45deg);
}
.mmcmed-pilot .mmc-profstd__content {
	padding: var(--mmc-sp-3) var(--mmc-sp-5) var(--mmc-sp-4);
	font-size: 14px;
	line-height: 1.6;
	color: var(--mmc-ink-700);
	border-top: 1px solid var(--mmc-ink-100);
}
.mmcmed-pilot .mmc-profstd__content p { margin: 0 0 var(--mmc-sp-3); }
.mmcmed-pilot .mmc-profstd__content p:last-child { margin: 0; }
.mmcmed-pilot .mmc-profstd__content ul,
.mmcmed-pilot .mmc-profstd__content ol { margin: 0 0 var(--mmc-sp-3); padding-left: 22px; }
.mmcmed-pilot .mmc-profstd__content li { margin-bottom: 6px; }
.mmcmed-pilot .mmc-profstd__content strong { color: var(--mmc-ink-900); }

.mmcmed-pilot .mmc-profstd__periodic { display: grid; gap: var(--mmc-sp-3); }
.mmcmed-pilot .mmc-profstd__periodic-head {
	display: flex;
	gap: var(--mmc-sp-2);
	align-items: baseline; /* baseline-выравнивание идеально для текстовых элементов */
	padding: 0;
}
.mmcmed-pilot .mmc-profstd__periodic-icon {
	flex-shrink: 0;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
}
.mmcmed-pilot .mmc-profstd__periodic-head h4 {
	font-size: 15px;
	margin: 0;
	color: var(--mmc-ink-900);
	font-weight: 700;
	line-height: 1.4;
}
.mmcmed-pilot .mmc-profstd__periodic--not-required .mmc-profstd__periodic-icon {
	color: var(--mmc-success);
}
.mmcmed-pilot .mmc-profstd__periodic--required .mmc-profstd__periodic-icon {
	color: var(--mmc-warn);
}

/* === SECTION 08 — Process steps ============================= */
.mmcmed-pilot .mmc-steps {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--mmc-sp-3);
}
.mmcmed-pilot .mmc-steps__item {
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	padding: var(--mmc-sp-5);
	box-shadow: var(--mmc-shadow-1);
}
.mmcmed-pilot .mmc-steps__num {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: 2px solid var(--mmc-brand-600);
	color: var(--mmc-brand-700);
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	margin-bottom: var(--mmc-sp-3);
}
.mmcmed-pilot .mmc-steps__h {
	font-size: 15px;
	font-weight: 600;
	margin: 0 0 6px;
}
.mmcmed-pilot .mmc-steps__p {
	font-size: 13px;
	color: var(--mmc-ink-500);
	margin: 0;
	line-height: 1.45;
}

/* === SECTION 11 — Enrollment docs =========================== */
.mmcmed-pilot .mmc-docs {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--mmc-sp-3);
}
.mmcmed-pilot .mmc-docs__item {
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	padding: var(--mmc-sp-4);
	text-align: center;
	box-shadow: var(--mmc-shadow-1);
}
.mmcmed-pilot .mmc-docs__icon {
	width: 44px;
	height: 44px;
	margin: 0 auto var(--mmc-sp-3);
	border-radius: 8px;
	background: var(--mmc-brand-50);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--mmc-brand-700);
}
.mmcmed-pilot .mmc-docs__name {
	font-size: 14px;
	font-weight: 600;
	margin: 0 0 4px;
}
.mmcmed-pilot .mmc-docs__hint {
	font-size: 12px;
	color: var(--mmc-ink-500);
	margin: 0;
	line-height: 1.4;
}

/* === SECTION 12 — Payment =================================== */
.mmcmed-pilot .mmc-pay {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--mmc-sp-5);
}
.mmcmed-pilot .mmc-pay__card {
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	padding: var(--mmc-sp-5);
	box-shadow: var(--mmc-shadow-1);
	display: flex;
	flex-direction: column;
}
.mmcmed-pilot .mmc-pay__card h4 {
	font-size: 17px;
	font-weight: 700;
	margin: 0 0 var(--mmc-sp-3);
}
.mmcmed-pilot .mmc-pay__card-icon {
	width: 40px;
	height: 40px;
	border-radius: 8px;
	background: var(--mmc-brand-100);
	color: var(--mmc-brand-700);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: var(--mmc-sp-3);
}
.mmcmed-pilot .mmc-pay__example {
	background: var(--mmc-brand-50);
	padding: 10px 14px;
	border-radius: var(--mmc-r-sm);
	border-left: 3px solid var(--mmc-brand-600);
	margin: var(--mmc-sp-3) 0 !important;
	font-size: 14px;
}
.mmcmed-pilot .mmc-pay__example b { color: var(--mmc-brand-700); }
.mmcmed-pilot .mmc-pay__card p {
	font-size: 14px;
	color: var(--mmc-ink-700);
	margin: 0 0 var(--mmc-sp-3);
	line-height: 1.5;
}
.mmcmed-pilot .mmc-pay__methods {
	display: flex;
	gap: 6px;
	margin-top: auto;
	margin-bottom: var(--mmc-sp-3);
	flex-wrap: wrap;
}
.mmcmed-pilot .mmc-pay__chip {
	font-size: 12px;
	padding: 5px 10px;
	border-radius: 4px;
	background: var(--mmc-brand-50);
	color: var(--mmc-brand-700);
	font-weight: 600;
}

/* === SECTION 13 — FAQ ======================================= */
.mmcmed-pilot .mmc-faq {
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	box-shadow: var(--mmc-shadow-1);
	overflow: hidden;
}
.mmcmed-pilot .mmc-faq__item:not(:last-child) {
	border-bottom: 1px solid var(--mmc-ink-100);
}
.mmcmed-pilot .mmc-faq__q {
	width: 100%;
	background: transparent;
	border: 0;
	padding: var(--mmc-sp-4) var(--mmc-sp-5);
	cursor: pointer;
	font-family: inherit;
	font-weight: 600;
	font-size: 15px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--mmc-sp-3);
	text-align: left;
	color: var(--mmc-ink-900);
	transition: background .15s ease;
}
.mmcmed-pilot .mmc-faq__q:hover { background: var(--mmc-ink-50); }
.mmcmed-pilot .mmc-faq__q--open { background: var(--mmc-brand-50); }
.mmcmed-pilot .mmc-faq__caret {
	color: var(--mmc-brand-600);
	font-size: 22px;
	font-weight: 300;
	flex-shrink: 0;
	width: 24px;
	text-align: center;
	transition: transform .2s ease;
}
.mmcmed-pilot .mmc-faq__q--open .mmc-faq__caret {
	transform: rotate(45deg);
}
.mmcmed-pilot .mmc-faq__a {
	padding: var(--mmc-sp-3) var(--mmc-sp-5) var(--mmc-sp-4);
	font-size: 14px;
	color: var(--mmc-ink-700);
	line-height: 1.6;
}
.mmcmed-pilot .mmc-faq__a p { margin: 0; }

/* === SECTION 14 — Related courses (slider c навигацией) ===== */
.mmcmed-pilot .mmc-related-wrap {
	position: relative;
}
.mmcmed-pilot .mmc-related {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - var(--mmc-sp-4) * 2) / 3);
	gap: var(--mmc-sp-4);
	overflow-x: auto;
	overflow-y: hidden;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	padding: 4px;
	margin: -4px;
}
.mmcmed-pilot .mmc-related::-webkit-scrollbar { display: none; }
.mmcmed-pilot .mmc-related .mmc-related__card {
	scroll-snap-align: start;
}

/* Кнопки навигации слайдера (показываются только когда есть overflow,
   класс mmc-slider-has-overflow добавляется JS-ом на .mmc-related-wrap) */
.mmcmed-pilot .mmc-slider-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1px solid var(--mmc-ink-100);
	background: #fff;
	color: var(--mmc-brand-700);
	cursor: pointer;
	display: none; /* скрыты по умолчанию, JS переключает */
	align-items: center;
	justify-content: center;
	box-shadow: var(--mmc-shadow-2);
	transition: opacity .2s ease, background .15s ease, transform .1s ease;
	font-family: inherit;
}
.mmcmed-pilot .mmc-related-wrap.mmc-slider-has-overflow .mmc-slider-nav {
	display: flex;
}
.mmcmed-pilot .mmc-slider-nav:hover {
	background: var(--mmc-brand-50);
	transform: translateY(-50%) scale(1.05);
}
.mmcmed-pilot .mmc-slider-nav:active {
	transform: translateY(-50%) scale(.95);
}
.mmcmed-pilot .mmc-slider-nav[disabled] {
	opacity: 0;
	pointer-events: none;
}
.mmcmed-pilot .mmc-slider-nav--prev { left: -22px; }
.mmcmed-pilot .mmc-slider-nav--next { right: -22px; }

@media (max-width: 991px) {
	.mmcmed-pilot .mmc-related {
		grid-auto-columns: calc((100% - var(--mmc-sp-4)) / 2);
	}
}
@media (max-width: 767px) {
	/* Отключаем кнопки на мобиле (там пальцем листают) */
	.mmcmed-pilot .mmc-related-wrap.mmc-slider-has-overflow .mmc-slider-nav {
		display: none;
	}
}
.mmcmed-pilot .mmc-related__card {
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-radius: var(--mmc-r-md);
	padding: 0 0 28px; /* нижний padding гарантирует воздух под кнопкой */
	overflow: hidden;
	color: inherit;
	box-shadow: var(--mmc-shadow-1);
	transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
	display: flex;
	flex-direction: column;
}
.mmcmed-pilot .mmc-related__card:hover {
	transform: translateY(-2px);
	box-shadow: var(--mmc-shadow-2);
	border-color: var(--mmc-brand-300, var(--mmc-brand-500));
}

/* Ссылка-обёртка image + hours + name (карточка кликабельна на эти зоны) */
.mmcmed-pilot .mmc-related__media {
	display: flex;
	flex-direction: column;
	text-decoration: none !important;
	color: inherit;
}

/* Чипы 36/72/144 — отдельный блок ниже названия, кликабельный самостоятельно */
.mmcmed-pilot .mmc-related__chips {
	display: flex;
	gap: 6px;
	margin: 0 24px 16px;
}
.mmcmed-pilot .mmc-related__chip {
	flex: 1;
	background: #fff;
	border: 1.5px solid var(--mmc-ink-100);
	border-radius: 8px;
	padding: 8px 8px;
	font-family: inherit;
	font-size: 13px;
	font-weight: 700;
	color: var(--mmc-ink-700);
	cursor: pointer;
	transition: all .15s ease;
	line-height: 1.1;
}
.mmcmed-pilot .mmc-related__chip:hover {
	border-color: var(--mmc-brand-300, var(--mmc-brand-500));
	background: var(--mmc-brand-50);
}
.mmcmed-pilot .mmc-related__chip--active {
	border-color: var(--mmc-brand-600);
	background: var(--mmc-brand-600);
	color: #fff;
}
.mmcmed-pilot .mmc-related__chip--active:hover {
	background: var(--mmc-brand-700);
	border-color: var(--mmc-brand-700);
}

/* Картинка курса — занимает верх карточки */
.mmcmed-pilot .mmc-related__image {
	width: 100%;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: var(--mmc-brand-50);
	display: flex;
	align-items: center;
	justify-content: center;
}
.mmcmed-pilot .mmc-related__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 20%; /* акцент на верхнюю часть — лица не обрезаются */
	display: block;
	transition: transform .35s ease;
}
.mmcmed-pilot .mmc-related__card:hover .mmc-related__image img {
	transform: scale(1.04);
}
.mmcmed-pilot .mmc-related__image-placeholder {
	color: var(--mmc-brand-300, var(--mmc-brand-500));
	opacity: .5;
}

.mmcmed-pilot .mmc-related__hours {
	font-size: 12px;
	color: var(--mmc-brand-700);
	font-weight: 700;
	margin: 20px 24px 8px;
	text-transform: uppercase;
	letter-spacing: .04em;
}
.mmcmed-pilot .mmc-related__name {
	font-size: 15px;
	font-weight: 600;
	margin: 0 24px 20px;
	line-height: 1.35;
	color: var(--mmc-ink-900);
	/* Фиксированная высота под 3 строки — короткие/длинные названия дают одинаковую высоту,
	   чипы 36/72/144 выровнены на одной линии у всех карточек. Px (не em) — надёжнее
	   против каскадов Impreza-стилей. 15px × 1.35 × 3 = 60.75px → 61px с запасом. */
	height: 61px;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	box-sizing: border-box;
}

/* Нижний блок: цена слева + кнопка «Подробнее» справа, прибит к низу карточки */
.mmcmed-pilot .mmc-related__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: auto; /* выравнивание по низу карточки независимо от длины названия */
	margin-right: 24px;
	margin-left: 24px;
	padding-top: 8px;
	flex-wrap: wrap;
}
.mmcmed-pilot .mmc-related__price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.4em;
	font-weight: 700;
	color: var(--mmc-ink-900);
	flex: 1 1 auto;
	min-width: 0;
}
.mmcmed-pilot .mmc-related__btn {
	flex: 0 0 auto;
	padding: 8px 16px;
	background: var(--mmc-brand-600);
	color: #fff !important;
	border-radius: 999px;
	text-decoration: none !important;
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
	transition: background .15s ease;
}
.mmcmed-pilot .mmc-related__btn:hover {
	background: var(--mmc-brand-700);
}
.mmcmed-pilot .mmc-related__from {
	font-size: 13px;
	color: var(--mmc-ink-500);
	font-weight: 500;
}
.mmcmed-pilot .mmc-related__price-current {
	font-size: 18px;
	font-weight: 700;
	color: var(--mmc-ink-900);
}
.mmcmed-pilot .mmc-related__price-old {
	font-size: 14px;
	color: var(--mmc-ink-500);
	font-weight: 400;
	text-decoration: line-through;
}
/* Поддержка стандартного wc HTML для Simple-курсов */
.mmcmed-pilot .mmc-related__price del { color: var(--mmc-ink-500); font-weight: 400; }
.mmcmed-pilot .mmc-related__price ins {
	color: var(--mmc-brand-700);
	text-decoration: none;
	margin-left: 6px;
}

/* === SECTION 15 — Final CTA ================================= */
.mmcmed-pilot .mmc-finalcta {
	background: linear-gradient(135deg, var(--mmc-brand-700), var(--mmc-brand-600));
	color: #fff;
	padding: var(--mmc-sp-7) var(--mmc-sp-7);
	border-radius: var(--mmc-r-lg);
	display: grid;
	grid-template-columns: 1.4fr 1fr;
	gap: var(--mmc-sp-7);
	align-items: center;
}
.mmcmed-pilot .mmc-finalcta h2 {
	font-size: 28px;
	margin: 0 0 var(--mmc-sp-3);
	line-height: 1.2;
	color: #fff;
}
.mmcmed-pilot .mmc-finalcta p {
	font-size: 15px;
	margin: 0 0 var(--mmc-sp-4);
	opacity: .92;
	line-height: 1.5;
}
.mmcmed-pilot .mmc-finalcta__guarantee {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	opacity: .8;
	margin: 0;
}
.mmcmed-pilot .mmc-finalcta__form {
	background: rgba(255,255,255,.12);
	padding: var(--mmc-sp-5);
	border-radius: var(--mmc-r-md);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}
.mmcmed-pilot .mmc-finalcta__input {
	width: 100%;
	padding: 12px 14px;
	border-radius: var(--mmc-r-sm);
	border: 0;
	font-size: 14px;
	margin-bottom: var(--mmc-sp-2);
	background: #fff;
	color: var(--mmc-ink-900);
	font-family: inherit;
}
.mmcmed-pilot .mmc-finalcta__check {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: 12px;
	margin: var(--mmc-sp-3) 0;
	line-height: 1.4;
	color: rgba(255,255,255,.88);
}
.mmcmed-pilot .mmc-finalcta__check input { margin-top: 3px; }
.mmcmed-pilot .mmc-finalcta__check a { color: #fff; text-decoration: underline; }
.mmcmed-pilot .mmc-finalcta__btn {
	width: 100%;
	background: #fff;
	color: var(--mmc-brand-700);
	border: 0;
	padding: 14px;
	border-radius: var(--mmc-r-sm);
	font-weight: 700;
	font-size: 15px;
	cursor: pointer;
	font-family: inherit;
	transition: background .15s ease;
}
.mmcmed-pilot .mmc-finalcta__btn:hover { background: var(--mmc-brand-50); }

/* v2.27.0: CF7-форма в финальном блоке — светлое на градиенте */
.mmcmed-pilot .mmc-finalcta__form .wpcf7 { margin: 0; }
.mmcmed-pilot .mmc-finalcta__form .wpcf7 h5 { display: none; } /* заголовок формы дублирует h2 блока */
.mmcmed-pilot .mmc-finalcta__form .wpcf7 p { margin: 0 0 var(--mmc-sp-2); }
.mmcmed-pilot .mmc-finalcta__form .wpcf7 label {
	display: block;
	font-size: 13px;
	color: rgba(255,255,255,.88);
}
.mmcmed-pilot .mmc-finalcta__form .wpcf7-text,
.mmcmed-pilot .mmc-finalcta__form .wpcf7-tel,
.mmcmed-pilot .mmc-finalcta__form .wpcf7-email {
	width: 100%;
	box-sizing: border-box;
	margin-top: 4px;
	padding: 12px 14px;
	border-radius: var(--mmc-r-sm);
	border: 0;
	font-size: 14px;
	font-family: inherit;
	background: #fff;
	color: var(--mmc-ink-900);
}
.mmcmed-pilot .mmc-finalcta__form .wpcf7-text:focus,
.mmcmed-pilot .mmc-finalcta__form .wpcf7-tel:focus,
.mmcmed-pilot .mmc-finalcta__form .wpcf7-email:focus {
	outline: none;
	box-shadow: 0 0 0 3px rgba(255,255,255,.45);
}
.mmcmed-pilot .mmc-finalcta__form .wpcf7-acceptance { display: block; margin: var(--mmc-sp-3) 0; }
.mmcmed-pilot .mmc-finalcta__form .wpcf7-list-item { margin: 0; }
.mmcmed-pilot .mmc-finalcta__form .wpcf7-list-item-label {
	font-size: 12px;
	line-height: 1.4;
	color: rgba(255,255,255,.88);
}
.mmcmed-pilot .mmc-finalcta__form .wpcf7 a { color: #fff; text-decoration: underline; }
.mmcmed-pilot .mmc-finalcta__form .wpcf7-submit {
	width: 100%;
	background: #fff;
	color: var(--mmc-brand-700) !important; /* Impreza красит текст всех input[type=submit] в белый с !important */
	border: 0;
	padding: 14px;
	border-radius: var(--mmc-r-sm);
	font-weight: 700;
	font-size: 15px;
	cursor: pointer;
	font-family: inherit;
	transition: background .15s ease;
}
.mmcmed-pilot .mmc-finalcta__form .wpcf7-submit:hover { background: var(--mmc-brand-50); }
.mmcmed-pilot .mmc-finalcta__form .wpcf7-submit:disabled { opacity: .6; cursor: default; }
.mmcmed-pilot .mmc-finalcta__form .wpcf7-not-valid-tip { color: #FECACA; font-size: 12px; }
.mmcmed-pilot .mmc-finalcta__form .wpcf7-response-output {
	margin: var(--mmc-sp-3) 0 0;
	padding: 10px 14px;
	border-radius: var(--mmc-r-sm);
	font-size: 13px;
	background: #fff;
	color: var(--mmc-ink-900);
}
.mmcmed-pilot .mmc-finalcta__form .wpcf7 form.sent .wpcf7-response-output { background: #DCFCE7; color: #166534; border-color: transparent; }
.mmcmed-pilot .mmc-finalcta__form .wpcf7 form.invalid .wpcf7-response-output,
.mmcmed-pilot .mmc-finalcta__form .wpcf7 form.unaccepted .wpcf7-response-output,
.mmcmed-pilot .mmc-finalcta__form .wpcf7 form.failed .wpcf7-response-output { background: #FEE2E2; color: #991B1B; border-color: transparent; }

/* === SECTION 16 — Trust strip =============================== */
.mmcmed-pilot .mmc-trust {
	background: #fff;
	border-top: 1px solid var(--mmc-ink-100);
	padding: var(--mmc-sp-6) 0;
	font-size: 13px;
	color: var(--mmc-ink-500);
	margin-top: var(--mmc-sp-7);
}
.mmcmed-pilot .mmc-trust__row {
	display: flex;
	gap: var(--mmc-sp-5);
	flex-wrap: wrap;
	justify-content: space-between;
}
.mmcmed-pilot .mmc-trust__col h5 {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: var(--mmc-ink-700);
	margin: 0 0 6px;
	font-weight: 700;
}
.mmcmed-pilot .mmc-trust__col a {
	color: var(--mmc-ink-700);
	text-decoration: none;
}
.mmcmed-pilot .mmc-trust__col a:hover { color: var(--mmc-brand-600); }

/* === Mobile sticky-bar ====================================== */
.mmcmed-pilot .mmc-stickybar {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background: #fff;
	border-top: 1px solid var(--mmc-ink-100);
	padding: var(--mmc-sp-3) var(--mmc-sp-4);
	display: flex;
	gap: var(--mmc-sp-3);
	align-items: center;
	box-shadow: 0 -4px 16px rgba(15,23,42,.08);
	z-index: 100;
}
.mmcmed-pilot .mmc-stickybar[hidden] { display: none; }

/* Когда mobile sticky-bar показан — поднимаем кнопку «Наверх» (.w-toplink
   у Impreza, см. us.core.min.js), чтобы она не перекрывалась плашкой. */
body.mmc-stickybar-shown .w-toplink {
	transform: translateY(-72px) !important;
	transition: transform .25s ease !important;
}
/* Плавный возврат при скрытии sticky-bar — нужно описать transition и в
   обычном состоянии .w-toplink, иначе возврат будет резким */
.w-toplink {
	transition: transform .25s ease;
}
.mmcmed-pilot .mmc-stickybar__info {
	display: flex;
	flex-direction: column;
	line-height: 1.1;
}
.mmcmed-pilot .mmc-stickybar__price {
	font-weight: 700;
	font-size: 17px;
	color: var(--mmc-ink-900);
}
.mmcmed-pilot .mmc-stickybar__old {
	font-size: 12px;
	text-decoration: line-through;
	color: var(--mmc-ink-500);
}
.mmcmed-pilot .mmc-stickybar .mmc-btn {
	margin-left: auto;
	padding: 10px 18px;
}

/* === Popup «Получить консультацию» (#4) =================== */
.mmcmed-pilot .mmc-popup {
	position: fixed;
	inset: 0;
	z-index: 200;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: var(--mmc-sp-4);
	overflow-y: auto;
	opacity: 0;
	visibility: hidden;
	transition: opacity .2s ease, visibility .2s ease;
}
.mmcmed-pilot .mmc-popup[aria-hidden="false"] {
	opacity: 1;
	visibility: visible;
}
.mmcmed-pilot .mmc-popup__overlay {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, .72);
	cursor: pointer;
}
.mmcmed-pilot .mmc-popup__window {
	position: relative;
	z-index: 1;
	background: #fff;
	border-radius: var(--mmc-r-md);
	width: 100%;
	max-width: 480px;
	padding: var(--mmc-sp-7) var(--mmc-sp-6) var(--mmc-sp-6);
	box-shadow: 0 24px 48px rgba(15, 23, 42, .25);
	transform: translateY(8px);
	transition: transform .2s ease;
	max-height: calc(100vh - var(--mmc-sp-7));
	overflow-y: auto;
}
.mmcmed-pilot .mmc-popup[aria-hidden="false"] .mmc-popup__window {
	transform: translateY(0);
}
.mmcmed-pilot .mmc-popup__close {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: 0;
	background: var(--mmc-ink-50);
	color: var(--mmc-ink-700);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background .15s ease;
}
.mmcmed-pilot .mmc-popup__close:hover {
	background: var(--mmc-ink-100);
	color: var(--mmc-ink-900);
}
.mmcmed-pilot .mmc-popup__title {
	font-size: 22px;
	font-weight: 700;
	margin: 0 0 var(--mmc-sp-2);
	color: var(--mmc-ink-900);
	padding-right: 36px;
}
.mmcmed-pilot .mmc-popup__sub {
	font-size: 14px;
	color: var(--mmc-ink-500);
	margin: 0 0 var(--mmc-sp-5);
	line-height: 1.45;
}
.mmcmed-pilot .mmc-popup__guarantee {
	margin: var(--mmc-sp-3) 0 0;
	display: flex;
	gap: 6px;
	align-items: center;
	font-size: 12px;
	color: var(--mmc-ink-500);
	justify-content: center;
}

/* CF7 форма внутри попапа — приводим к нашему стилю */
.mmcmed-pilot .mmc-popup__form .wpcf7 { margin: 0; }
.mmcmed-pilot .mmc-popup__form .wpcf7 p { margin: 0 0 var(--mmc-sp-3); }
.mmcmed-pilot .mmc-popup__form .wpcf7-form-control {
	font-family: inherit;
	font-size: 15px;
}
.mmcmed-pilot .mmc-popup__form .wpcf7-text,
.mmcmed-pilot .mmc-popup__form .wpcf7-tel,
.mmcmed-pilot .mmc-popup__form .wpcf7-email,
.mmcmed-pilot .mmc-popup__form .wpcf7-textarea {
	width: 100%;
	padding: 12px 14px;
	border-radius: var(--mmc-r-sm);
	border: 1px solid var(--mmc-ink-300);
	background: #fff;
	color: var(--mmc-ink-900);
	box-sizing: border-box;
	transition: border-color .15s ease;
}
.mmcmed-pilot .mmc-popup__form .wpcf7-text:focus,
.mmcmed-pilot .mmc-popup__form .wpcf7-tel:focus,
.mmcmed-pilot .mmc-popup__form .wpcf7-email:focus,
.mmcmed-pilot .mmc-popup__form .wpcf7-textarea:focus {
	outline: none;
	border-color: var(--mmc-brand-600);
	box-shadow: 0 0 0 3px var(--mmc-brand-100);
}
.mmcmed-pilot .mmc-popup__form .wpcf7-acceptance {
	display: block;
	margin: var(--mmc-sp-2) 0;
}
.mmcmed-pilot .mmc-popup__form .wpcf7-list-item { margin: 0; }
.mmcmed-pilot .mmc-popup__form .wpcf7-list-item-label { font-size: 12px; color: var(--mmc-ink-500); }
.mmcmed-pilot .mmc-popup__form .wpcf7-submit {
	width: 100%;
	padding: 14px 24px;
	background: var(--mmc-brand-600);
	color: #fff;
	border: 0;
	border-radius: var(--mmc-r-sm);
	font-weight: 700;
	font-size: 15px;
	cursor: pointer;
	transition: background .15s ease;
}
.mmcmed-pilot .mmc-popup__form .wpcf7-submit:hover { background: var(--mmc-brand-700); }
.mmcmed-pilot .mmc-popup__form .wpcf7-response-output {
	margin: var(--mmc-sp-3) 0 0;
	padding: 10px 14px;
	border-radius: var(--mmc-r-sm);
	font-size: 13px;
}
.mmcmed-pilot .mmc-popup__form .wpcf7 form.sent .wpcf7-response-output {
	border-color: var(--mmc-success);
	background: #DCFCE7;
	color: #166534;
}
.mmcmed-pilot .mmc-popup__form .wpcf7 form.invalid .wpcf7-response-output,
.mmcmed-pilot .mmc-popup__form .wpcf7 form.unaccepted .wpcf7-response-output {
	border-color: var(--mmc-danger);
	background: #FEE2E2;
	color: #991B1B;
}

body.mmc-popup-open { overflow: hidden; }

/* === Mobile media queries ================================== */
@media (max-width: 991px) {
	.mmcmed-pilot .mmc-hero {
		grid-template-columns: 1fr;
		gap: var(--mmc-sp-5);
	}
	.mmcmed-pilot .mmc-pricecard {
		position: static;
	}
	.mmcmed-pilot .mmc-doc {
		grid-template-columns: 1fr;
		gap: var(--mmc-sp-5);
	}
	.mmcmed-pilot .mmc-doc__img {
		max-width: 320px;
		margin: 0 auto;
	}
	.mmcmed-pilot .mmc-audience,
	.mmcmed-pilot .mmc-related,
	.mmcmed-pilot .mmc-steps,
	.mmcmed-pilot .mmc-channels,
	.mmcmed-pilot .mmc-license {
		grid-template-columns: repeat(2, 1fr);
	}
	.mmcmed-pilot .mmc-finalcta {
		grid-template-columns: 1fr;
		padding: var(--mmc-sp-5);
	}
	.mmcmed-pilot .mmc-finalcta h2 { font-size: 22px; }
}

@media (max-width: 767px) {
	.mmcmed-pilot .mmc-section { padding: var(--mmc-sp-6) 0; }
	.mmcmed-pilot .mmc-audience,
	.mmcmed-pilot .mmc-outcomes,
	.mmcmed-pilot .mmc-pay,
	.mmcmed-pilot .mmc-channels {
		grid-template-columns: 1fr;
	}
	.mmcmed-pilot .mmc-docs {
		grid-template-columns: repeat(2, 1fr);
	}

	/* Горизонтальный scroll-snap для карточек на мобиле — пользователь
	   листает пальцем влево-вправо, карточки прилипают к началу */
	.mmcmed-pilot .mmc-steps,
	.mmcmed-pilot .mmc-related,
	.mmcmed-pilot .mmc-license {
		display: grid;
		grid-auto-flow: column;
		grid-auto-columns: 80%;
		grid-template-columns: none;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-snap-type: x mandatory;
		gap: var(--mmc-sp-3);
		padding-bottom: 8px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		/* Чтобы первая/последняя карточка не приклеивалась к краю — внутр. padding */
		scroll-padding-inline: var(--mmc-gutter);
	}
	.mmcmed-pilot .mmc-steps::-webkit-scrollbar,
	.mmcmed-pilot .mmc-related::-webkit-scrollbar,
	.mmcmed-pilot .mmc-license::-webkit-scrollbar {
		display: none;
	}
	.mmcmed-pilot .mmc-steps__item,
	.mmcmed-pilot .mmc-related__card,
	.mmcmed-pilot .mmc-license__item {
		scroll-snap-align: start;
	}
	.mmcmed-pilot .mmc-trust__row {
		gap: var(--mmc-sp-4);
		justify-content: flex-start;
	}
	.mmcmed-pilot .mmc-trust__col {
		flex: 1 1 45%;
	}
	.mmcmed-pilot .mmc-pricecard__price { font-size: 26px; }
	/* Скрываем sticky-tabs на мобиле — слишком тесно с sticky bar Impreza */
	.mmcmed-pilot .mmc-tabs-wrap {
		position: relative;
		top: auto;
	}
	/* Padding снизу для sticky-bar */
	body.mmcmed-pilot-active {
		padding-bottom: 76px !important;
	}
}

@media (max-width: 480px) {
	.mmcmed-pilot .mmc-docs {
		grid-template-columns: 1fr;
	}
	.mmcmed-pilot .mmc-hero__cta {
		flex-direction: column;
	}
	.mmcmed-pilot .mmc-hero__cta .mmc-btn {
		width: 100%;
	}
}

/* ===================================================================
   Медицинские курсы — информационная страница (mmc_course_is_medical=true)
   Заменяет правую карточку «Стоимость» на баннер «Программа приостановлена».
   Скрывает переключатель часов, «Ближайшая группа», sticky bar, section 12.
   =================================================================== */
.mmcmed-pilot .mmc-pricecard--medical {
	background: #FEF3C7;
	border-left: 4px solid #D97706;
	padding: 20px 22px;
	border-radius: 12px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}
.mmcmed-pilot .mmc-pricecard__medical-badge {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #92400E;
	font-size: 15px;
}
.mmcmed-pilot .mmc-pricecard__medical-badge svg {
	flex-shrink: 0;
	color: #D97706;
}
.mmcmed-pilot .mmc-pricecard__medical-text {
	color: #78350F;
	font-size: 14px;
	line-height: 1.55;
	margin: 0;
}

/* ===================================================================
   Медицинские: legacy-описание из post_content (WPBakery)
   Показывает только основной описательный контент. Скрывает секции
   #price, #doc, #learn — они дублируют hero-баннер или показывают цену.
   =================================================================== */
.mmc-medical-legacy {
	padding-top: 8px;
	padding-bottom: 8px;
}
.mmc-medical-legacy__content #price,
.mmc-medical-legacy__content #doc,
.mmc-medical-legacy__content #learn,
.mmc-medical-legacy__content #overview {
	display: none !important;
}
.mmc-medical-legacy__content .wpb_row {
	margin-bottom: 12px !important;
}
.mmc-medical-legacy__content .vc_col-sm-12 {
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.mmc-medical-legacy__content h2,
.mmc-medical-legacy__content h3,
.mmc-medical-legacy__content h4 {
	margin-top: 20px;
	margin-bottom: 10px;
}
.mmc-medical-legacy__content ul,
.mmc-medical-legacy__content ol {
	margin-left: 18px;
}

/* ===================================================================
   Каталог: карточка медицинского курса (v2.20.0)
   Без цены, без корзины. Единая кнопка «Подробнее» на всю ширину.
   =================================================================== */
.mmcmed-course-card__buy--medical {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 6px 0;
}
.mmcmed-course-card__medical-note {
	display: inline-block;
	background: #FEF3C7;
	color: #92400E;
	font-size: 12px;
	font-weight: 600;
	padding: 4px 10px;
	border-radius: 12px;
	line-height: 1.35;
	text-align: center;
}

/* ===================================================================
   Thank-you страница /oformlenie-zajavki/order-received/ (v2.21.0)
   Кастомное сообщение через хук woocommerce_thankyou_order_received_text.
   =================================================================== */
.mmcmed-thankyou {
	max-width: 720px;
	margin: 0 auto;
	padding: 24px 0 40px;
}
.mmcmed-thankyou__title {
	font-size: 26px;
	font-weight: 700;
	color: #0F172A;
	line-height: 1.35;
	margin: 0 0 24px;
}
.mmcmed-thankyou__title b {
	color: #16A34A;
}
.mmcmed-thankyou__accel {
	background: #EFF6FF;
	border-left: 4px solid #2563EB;
	border-radius: 8px;
	padding: 20px 22px;
	margin: 24px 0;
}
.mmcmed-thankyou__subtitle {
	font-size: 17px;
	font-weight: 700;
	color: #1E3A8A;
	margin: 0 0 10px;
}
.mmcmed-thankyou__accel p {
	color: #334155;
	margin: 8px 0;
	line-height: 1.55;
}
.mmcmed-thankyou__docs {
	margin: 12px 0;
	padding-left: 22px;
}
.mmcmed-thankyou__docs li {
	color: #334155;
	margin: 6px 0;
	line-height: 1.5;
}
.mmcmed-thankyou__hint {
	font-size: 13px;
	color: #64748B;
	font-style: italic;
}
.mmcmed-thankyou__contacts {
	margin-top: 32px;
}
.mmcmed-thankyou__contacts-lead {
	text-align: center;
	color: #334155;
	font-size: 15px;
	margin: 0 0 16px;
}
.mmcmed-thankyou__buttons {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
}
.mmcmed-thankyou__btn {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 16px;
	border-radius: 10px;
	text-decoration: none;
	transition: transform .15s, box-shadow .15s;
	background: #fff;
	border: 1.5px solid #E2E8F0;
	color: #0F172A;
}
.mmcmed-thankyou__btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 4px 14px rgba(0,0,0,.08);
	text-decoration: none;
}
.mmcmed-thankyou__btn svg {
	flex-shrink: 0;
}
.mmcmed-thankyou__btn span {
	display: flex;
	flex-direction: column;
	line-height: 1.3;
}
.mmcmed-thankyou__btn b {
	font-weight: 700;
	font-size: 14px;
}
.mmcmed-thankyou__btn small {
	font-size: 12px;
	color: #64748B;
	margin-top: 2px;
}
.mmcmed-thankyou__btn--phone {
	background: #F0FDF4;
	border-color: #16A34A;
}
.mmcmed-thankyou__btn--phone svg { color: #16A34A; }
.mmcmed-thankyou__btn--max {
	background: #FFF7ED;
	border-color: #EA580C;
}
.mmcmed-thankyou__btn--max svg { color: #EA580C; }
.mmcmed-thankyou__btn--tg {
	background: #EFF6FF;
	border-color: #0EA5E9;
}
.mmcmed-thankyou__btn--tg svg { color: #0EA5E9; }

@media (max-width: 700px) {
	.mmcmed-thankyou__buttons {
		grid-template-columns: 1fr;
	}
	.mmcmed-thankyou__title {
		font-size: 22px;
	}
}

/* Thank-you: скрыть блок «Платёжный адрес» — там служебные данные клиента,
   он не полезен на странице «Спасибо». */
.woocommerce-order .woocommerce-customer-details {
	display: none;
}

/* Thank-you: блок «Как проходит зачисление» (перенесён из checkout 17.08) */
.mmcmed-thankyou__process {
	background: #F8FAFC;
	border-radius: 12px;
	padding: 22px 24px;
	margin: 24px 0;
}
.mmcmed-thankyou__steps {
	display: flex;
	flex-direction: column;
	gap: 14px;
}
.mmcmed-thankyou__step {
	display: flex;
	gap: 14px;
	align-items: flex-start;
}
.mmcmed-thankyou__num {
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #2563EB;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 15px;
}
.mmcmed-thankyou__step-body {
	flex: 1;
	font-size: 14px;
	line-height: 1.55;
	color: #334155;
	padding-top: 5px;
}
.mmcmed-thankyou__step-body b {
	color: #0F172A;
	font-weight: 700;
}

/* === SECTION 07c — «Кому обязателен курс» (БЛОК 53, v2.22.0) ===
   Юридический блок между программой курса и FAQ. Два тона:
   danger — обязаловка установлена законом (красная плашка),
   neutral — обязаловки нет (223-ФЗ), плашка нейтральная. */
.mmcmed-pilot .mmc-oblig__lead {
	font-size: var(--mmc-fs-lead);
	line-height: 1.7;
	color: var(--mmc-ink-700);
	margin: 0 0 var(--mmc-sp-4);
	max-width: 78ch;
}
.mmcmed-pilot .mmc-oblig__risk {
	background: #fff;
	border: 1px solid var(--mmc-ink-100);
	border-left: 4px solid var(--mmc-danger);
	border-radius: var(--mmc-r-md);
	box-shadow: var(--mmc-shadow-1);
	padding: var(--mmc-sp-4) var(--mmc-sp-5);
	display: grid;
	gap: var(--mmc-sp-2);
}
.mmcmed-pilot .mmc-oblig__risk--neutral {
	border-left-color: var(--mmc-brand-600);
	background: var(--mmc-brand-50);
}
.mmcmed-pilot .mmc-oblig__risk-title {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--mmc-ink-900);
}
.mmcmed-pilot .mmc-oblig__risk-text {
	margin: 0;
	font-size: 15px;
	line-height: 1.65;
	color: var(--mmc-ink-700);
}
.mmcmed-pilot .mmc-oblig__closer {
	margin: var(--mmc-sp-3) 0 0;
	font-size: 14px;
	line-height: 1.6;
	color: var(--mmc-ink-500);
}
@media (max-width: 640px) {
	.mmcmed-pilot .mmc-oblig__risk {
		padding: var(--mmc-sp-3) var(--mmc-sp-4);
	}
}
