/*
 * Шинэ нүүр хуудас (v2) — зөвхөн `_solongo_layout = v2` хуудсанд ачаалагдана (inc/home-v2.php).
 * Header, footer, mobile bar, kicker, цагираг нь chrome.css-д (бүх хуудсанд).
 * Зөвхөн tokens.css-ийн утгууд. Elementor container-ийн padding/gap-ийг энд тогтооно (widget-д өгөхгүй).
 *
 * Өнгөний хэмнэл: hero (бараан) → итгэлийн карт → мэс засал (tint) → алхам (цагаан) → тест (бараан самбар)
 * → эмч нар (surface) → сэтгэгдэл (бараан) → FAQ (surface) → байршил → CTA зурвас → footer (бараан).
 * Чимэглэлийн HTML (hero-ийн карт, kicker, icon) нь inc/home-v2-ui.php-ээс.
 */

/* ---------------------------------------------------------------------------
 * Elementor container-ийн суурь, нийтлэг элементүүд
 * ------------------------------------------------------------------------ */
html:has(body.sl-v2) {
	scroll-behavior: smooth;
}

.sl-v2 [data-elementor-type="wp-page"] .e-con {
	--padding-top: 0px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--gap: var(--sl-space-3);
	--row-gap: var(--sl-space-3);
	--column-gap: var(--sl-space-3);
}

.sl-v2 [data-elementor-type="wp-page"] .elementor-widget p:last-child {
	margin-bottom: 0;
}

.sl-v2 .e-con.sl-section {
	--padding-top: var(--sl-section-space);
	--padding-bottom: var(--sl-section-space);
	scroll-margin-top: 72px;
}

.sl-v2 .e-con.sl-section--tight {
	--padding-top: var(--sl-space-5);
	--padding-bottom: var(--sl-space-5);
}

.sl-v2 .e-con.sl-section--surface {
	background-color: var(--sl-color-surface);
}

.sl-v2 .e-con.sl-wrap {
	--gap: var(--sl-space-5);
	--row-gap: var(--sl-space-5);
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
	--padding-left: var(--sl-space-3);
	--padding-right: var(--sl-space-3);
}

/* Section-ий толгой: kicker + гарчиг + lead */
.sl-v2 .e-con.sl-intro {
	--gap: 12px;
	--row-gap: 12px;
	max-width: 760px;
	margin-inline: auto;
	text-align: center;
}

.sl-v2 .sl-intro .elementor-heading-title {
	margin: 0;
	color: var(--sl-color-text);
	font-size: clamp(28px, 2.4vw + 12px, 42px);
	line-height: 1.15;
	letter-spacing: -.02em;
	text-wrap: balance;
}

.sl-v2 .sl-intro .elementor-widget-text-editor {
	color: var(--sl-color-text-muted);
	font-size: clamp(16px, .3vw + 15px, 18px);
	text-wrap: pretty;
}

.sl-v2 .elementor-widget-text-editor a {
	color: var(--sl-color-primary);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.sl-v2 .e-con.sl-actions {
	--flex-direction: row;
	--flex-wrap: wrap;
	--gap: 12px;
	--row-gap: 12px;
	flex-direction: row;
	flex-wrap: wrap;
}

.sl-v2 .e-con.sl-actions--center {
	justify-content: center;
}

.sl-v2 .sl-actions .elementor-widget-button {
	width: auto;
}

/* Товч: hover-т бага зэрэг өргөгдөнө, сум урагшилна */
.sl-v2 .elementor-widget-button .elementor-button,
.sl-v2 .sl-btn {
	min-height: 48px;
	padding: 12px var(--sl-space-3);
	border-width: 2px;
	border-style: solid;
	border-radius: var(--sl-radius);
	font-size: 16px;
	font-weight: var(--sl-font-weight-semibold);
	transition: background-color var(--sl-transition), border-color var(--sl-transition), color var(--sl-transition), box-shadow .25s var(--sl-ease-out), transform .25s var(--sl-ease-out);
}

.sl-v2 .elementor-widget-button .elementor-button {
	border-color: transparent;
}

.sl-v2 .elementor-widget-button .elementor-button:hover,
.sl-v2 .sl-btn:hover {
	transform: translateY(-2px);
}

.sl-v2 .elementor-widget-button .elementor-button:active,
.sl-v2 .sl-btn:active {
	transform: translateY(0);
}

.sl-v2 .sl-btn .sl-icon {
	flex: 0 0 auto;
	transition: transform .25s var(--sl-ease-out);
}

.sl-v2 .sl-btn:hover .sl-icon:last-child:not(:first-child) {
	transform: translateX(3px);
}

/* CTA (accent) — өнгөө tokens.css-ээс авна, энд зөвхөн гэрэлтэлт */
.sl-v2 .sl-btn--accent,
.sl-v2 .elementor-widget-button.sl-btn-accent .elementor-button {
	box-shadow: 0 10px 24px -10px color-mix(in srgb, var(--sl-color-accent) 80%, transparent);
}

.sl-v2 .sl-btn--accent:hover,
.sl-v2 .elementor-widget-button.sl-btn-accent .elementor-button:hover {
	box-shadow: 0 14px 30px -10px color-mix(in srgb, var(--sl-color-accent) 90%, transparent);
}

/* Elementor-ын accent товчинд сум */
.sl-v2 .elementor-widget-button.sl-btn-accent .elementor-button-content-wrapper::after {
	content: "";
	width: 18px;
	height: 18px;
	margin-left: 8px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform .25s var(--sl-ease-out);
}

.sl-v2 .elementor-widget-button.sl-btn-accent .elementor-button:hover .elementor-button-content-wrapper::after {
	transform: translateX(3px);
}

.sl-v2 .elementor-widget-button.sl-btn-accent .elementor-button-content-wrapper {
	align-items: center;
}

/* Бараан дэвсгэр дээрх "шил" товч */
.sl-v2 a.sl-btn--glass,
.sl-v2 a.sl-btn--glass:visited {
	border-color: rgba(255, 255, 255, .38);
	background: rgba(255, 255, 255, .08);
	color: #fff;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}

.sl-v2 a.sl-btn--glass:hover {
	border-color: #fff;
	background: rgba(255, 255, 255, .16);
	color: #fff;
}

.sl-v2 .sl-btn--lg {
	min-height: 56px;
	padding: 14px 28px;
	border-radius: 14px;
	font-size: 17px;
}

.sl-v2 .sl-eyebrow p {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 7px 14px 7px 12px;
	border-radius: var(--sl-radius-pill);
	font-size: 14px;
	font-weight: var(--sl-font-weight-semibold);
	letter-spacing: .02em;
}

.sl-v2 .sl-card {
	padding: var(--sl-space-3);
}

/* ---------------------------------------------------------------------------
 * 2. Hero — бараан navy дэвсгэр, баруун талд хүрээтэй зураг + мэдээллийн карт
 * ------------------------------------------------------------------------ */
.sl-v2 .e-con.sl-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	justify-content: center;
	min-height: clamp(600px, 84vh, 780px);
	--padding-top: 72px;
	--padding-bottom: 152px; /* итгэлийн карт доод хэсэгт давхцана */
	background:
		radial-gradient(55% 70% at 82% 38%, rgba(70, 108, 222, .42) 0%, rgba(70, 108, 222, 0) 70%),
		radial-gradient(40% 55% at 0% 100%, rgba(242, 128, 39, .16) 0%, rgba(242, 128, 39, 0) 70%),
		linear-gradient(160deg, var(--sl-color-ink) 0%, var(--sl-color-ink-2) 62%, var(--sl-color-primary-dark) 100%);
	color: #fff;
}

/* Цэгэн тор */
.sl-v2 .e-con.sl-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background-image: radial-gradient(rgba(255, 255, 255, .09) 1px, transparent 1.4px);
	background-size: 24px 24px;
	-webkit-mask-image: linear-gradient(105deg, #000 0%, rgba(0, 0, 0, .4) 45%, transparent 70%);
	mask-image: linear-gradient(105deg, #000 0%, rgba(0, 0, 0, .4) 45%, transparent 70%);
	pointer-events: none;
}

.sl-v2 .sl-hero__media {
	position: absolute !important;
	top: 50%;
	right: max(var(--sl-space-3), calc((100% - 1200px) / 2 + var(--sl-space-3)));
	z-index: 1;
	width: min(520px, 41%) !important;
	max-width: none !important;
	aspect-ratio: 5 / 5.6;
	margin: 0 !important;
	transform: translateY(calc(-50% - 40px));
}

.sl-v2 .sl-hero__media > .elementor-widget-container {
	height: 100%;
}

.sl-hero__frame {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: var(--sl-radius-xl);
	box-shadow: 0 0 0 1px rgba(255, 255, 255, .14), 0 40px 80px -24px rgba(0, 0, 0, .55);
	transform: translateZ(0); /* Safari: overflow + border-radius */
}

.sl-hero__frame::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(200deg, rgba(11, 22, 56, 0) 50%, rgba(11, 22, 56, .45) 100%);
	pointer-events: none;
}

.sl-v2 .sl-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: 74% center;
	/* Фото 4 талдаа цагаан захтай — хүрээнээс гаргаж тайрна; аажим "Ken Burns" хөдөлгөөн. */
	transform: scale(1.06);
	transform-origin: 70% 40%;
	animation: sl-kenburns 26s ease-in-out infinite alternate;
}

@keyframes sl-kenburns {
	from { transform: scale(1.06); }
	to   { transform: scale(1.16); }
}

.sl-hero__rings {
	top: -22%;
	right: -26%;
	width: 92%;
}

.sl-hero__chip {
	position: absolute;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 18px 12px 12px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 18px;
	background: rgba(255, 255, 255, .9);
	color: var(--sl-color-text);
	box-shadow: 0 20px 40px -16px rgba(11, 22, 56, .5);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	line-height: 1.3;
	text-align: left;
	animation: sl-float 7s ease-in-out infinite;
}

.sl-hero__chip strong {
	display: block;
	font-size: 15px;
	font-weight: var(--sl-font-weight-bold);
	white-space: nowrap;
}

.sl-hero__chip small {
	display: block;
	margin-top: 2px;
	color: var(--sl-color-text-muted);
	font-size: 13px;
}

.sl-hero__chip-icon {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 42px;
	height: 42px;
	border-radius: 12px;
	background: linear-gradient(135deg, var(--sl-color-primary), var(--sl-color-ink-2));
	color: #fff;
}

.sl-hero__chip--top {
	top: 9%;
	left: -56px;
}

.sl-hero__chip--bottom {
	bottom: 10%;
	right: -40px;
	animation-delay: -3.5s;
}

@keyframes sl-float {
	0%, 100% { transform: translateY(0); }
	50%      { transform: translateY(-8px); }
}

.sl-v2 .e-con.sl-hero__inner {
	position: relative;
	z-index: 2;
}

.sl-v2 .e-con.sl-hero__content {
	--gap: var(--sl-space-3);
	--row-gap: var(--sl-space-3);
	max-width: min(600px, 52%);
}

.sl-v2 .sl-hero .sl-eyebrow p {
	border: 1px solid rgba(255, 255, 255, .18);
	background: rgba(255, 255, 255, .08);
	color: #fff;
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
}

/* "Шууд" цэг */
.sl-v2 .sl-hero .sl-eyebrow p::before {
	content: "";
	flex: 0 0 auto;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--sl-color-glow);
	box-shadow: 0 0 0 0 rgba(242, 128, 39, .7);
	animation: sl-pulse 2.4s ease-out infinite;
}

@keyframes sl-pulse {
	0%   { box-shadow: 0 0 0 0 rgba(242, 128, 39, .6); }
	70%  { box-shadow: 0 0 0 10px rgba(242, 128, 39, 0); }
	100% { box-shadow: 0 0 0 0 rgba(242, 128, 39, 0); }
}

.sl-v2 .sl-hero .sl-hero__title .elementor-heading-title {
	margin: 0;
	color: #fff;
	font-size: clamp(36px, 3vw + 13px, 60px);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -.03em;
	text-wrap: balance;
}

.sl-hl {
	color: var(--sl-color-highlight);
}

@supports ((-webkit-background-clip: text) or (background-clip: text)) {
	.sl-hl {
		background: linear-gradient(95deg, #ffc69a 0%, #ffe2c7 40%, var(--sl-color-sky) 100%);
		-webkit-background-clip: text;
		background-clip: text;
		color: transparent;
		-webkit-box-decoration-break: clone;
		box-decoration-break: clone;
	}
}

.sl-v2 .sl-hero__lead {
	max-width: 54ch;
	color: var(--sl-color-on-dark-muted);
	font-size: clamp(17px, .5vw + 15px, 20px);
	line-height: 1.6;
}

.sl-v2 .sl-hero .e-con.sl-actions {
	margin-top: var(--sl-space-1);
}

.sl-v2 .sl-hero .elementor-widget-button .elementor-button {
	min-height: 56px;
	padding: 14px 28px;
	border-radius: 14px;
	font-size: 17px;
}

.sl-v2 .sl-hero .elementor-widget-button.sl-btn-secondary .elementor-button {
	border-color: rgba(255, 255, 255, .38);
	background: rgba(255, 255, 255, .08);
	color: #fff;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}

.sl-v2 .sl-hero .elementor-widget-button.sl-btn-secondary .elementor-button:hover {
	border-color: #fff;
	background: rgba(255, 255, 255, .16);
	color: #fff;
}

.sl-v2 .sl-hero :is(a, button):focus-visible {
	outline-color: #fff;
	box-shadow: 0 0 0 2px var(--sl-color-ink);
}

@media (max-width: 1279px) {
	.sl-hero__chip--top { left: -24px; }
	.sl-hero__chip--bottom { right: -16px; }
}

/* Tablet, mobile: текст → зураг (доор) */
@media (max-width: 1023px) {
	.sl-v2 .e-con.sl-hero {
		min-height: 0;
		--padding-top: var(--sl-space-6);
		--padding-bottom: 128px;
	}

	.sl-v2 .e-con.sl-hero__content {
		max-width: 680px;
	}

	.sl-v2 .sl-hero__media {
		position: relative !important;
		top: auto;
		right: auto;
		order: 2;
		align-self: center;
		width: calc(100% - 2 * var(--sl-space-3)) !important;
		max-width: 720px !important;
		aspect-ratio: 16 / 10;
		margin: var(--sl-space-5) auto 0 !important;
		transform: none;
	}

	.sl-v2 .sl-hero__media img {
		object-position: 72% 30%;
	}

	.sl-hero__rings {
		display: none;
	}

	.sl-hero__chip--top { top: -20px; left: 16px; }
	.sl-hero__chip--bottom { bottom: -20px; right: 16px; }
}

@media (max-width: 767px) {
	.sl-v2 .e-con.sl-hero {
		--padding-top: var(--sl-space-5);
		--padding-bottom: 112px;
	}

	.sl-v2 .sl-hero__media {
		width: calc(100% - 2 * var(--sl-space-2)) !important;
		aspect-ratio: 4 / 3;
	}

	.sl-hero__frame {
		border-radius: var(--sl-radius-lg);
	}

	.sl-hero__chip {
		gap: 10px;
		padding: 8px 12px 8px 8px;
		border-radius: 14px;
	}

	.sl-hero__chip-icon {
		width: 34px;
		height: 34px;
		border-radius: 10px;
	}

	.sl-hero__chip strong { font-size: 13px; }
	.sl-hero__chip small { font-size: 12px; }
	.sl-hero__chip--top { left: 12px; }
	.sl-hero__chip--bottom { right: 12px; }

	.sl-v2 .sl-hero .sl-actions .elementor-widget-button,
	.sl-v2 .sl-hero .sl-actions .elementor-button {
		width: 100%;
	}
}

/* ---------------------------------------------------------------------------
 * 3. Итгэлийн мөр — hero-ийн доод хэсэгт давхцсан цагаан карт
 * ------------------------------------------------------------------------ */
.sl-v2 .e-con.sl-trust {
	position: relative;
	z-index: 3;
	margin-top: -96px;
	--padding-top: 0px;
	--padding-bottom: var(--sl-space-3);
	border-bottom: 0;
	/* Картын доод тал дараагийн section-ий (tint) өнгөтэй нийлнэ */
	background: linear-gradient(180deg, transparent 96px, var(--sl-color-tint) 96px);
}

.sl-v2 .e-con.sl-trust__grid {
	--display: grid;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	--gap: 0px;
	--row-gap: 0px;
	--padding-left: 8px;
	--padding-right: 8px;
	--padding-top: 32px;
	--padding-bottom: 32px;
	width: calc(100% - 2 * var(--sl-space-3));
	max-width: 1152px;
	border: 1px solid color-mix(in srgb, var(--sl-color-border) 70%, transparent);
	border-radius: 24px;
	background: var(--sl-color-bg);
	box-shadow: var(--sl-shadow-lg);
}

.sl-v2 .e-con.sl-trust__item {
	--gap: 6px;
	--row-gap: 6px;
	padding: 4px 28px;
	border-left: 1px solid var(--sl-color-border);
}

.sl-v2 .e-con.sl-trust__item:first-child,
.sl-v2 .e-con.sl-trust__item.sl-is-todo + .sl-trust__item:not(.sl-is-todo):nth-child(2) {
	border-left: 0;
}

.sl-trust__icon {
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	margin-bottom: 12px;
	border-radius: 14px;
	background: linear-gradient(135deg, var(--sl-color-tint), color-mix(in srgb, var(--sl-color-sky) 35%, var(--sl-color-bg)));
	color: var(--sl-color-primary);
}

.sl-v2 .sl-trust__value .elementor-heading-title {
	margin: 0;
	overflow-wrap: anywhere;
	color: var(--sl-color-primary-dark);
	font-size: clamp(26px, 1.4vw + 16px, 34px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -.02em;
	font-variant-numeric: tabular-nums;
}

.sl-v2 .sl-trust__label {
	color: var(--sl-color-text-muted);
	font-size: var(--sl-text-sm);
	line-height: 1.5;
}

/* Тоо нь тодорхойгүй үзүүлэлт: зочдод нуугдана, засварлагчид тасархай хүрээтэй (inc/home-v2-ui.php) */
.sl-v2 .e-con.sl-is-todo {
	display: none;
}

.sl-v2.sl-can-edit .e-con.sl-is-todo {
	display: flex;
	outline: 2px dashed var(--sl-color-accent);
	outline-offset: -4px;
}

@media (max-width: 1023px) {
	.sl-v2 .e-con.sl-trust__grid {
		--padding-top: var(--sl-space-3);
		--padding-bottom: var(--sl-space-3);
	}

	.sl-v2 .e-con.sl-trust__item {
		padding-inline: 20px;
	}
}

/* Mobile: нэг баганат мөрүүд — icon | тоо + тайлбар */
@media (max-width: 599px) {
	.sl-v2 .e-con.sl-trust {
		margin-top: -80px;
		background: linear-gradient(180deg, transparent 80px, var(--sl-color-tint) 80px);
	}

	.sl-v2 .e-con.sl-trust__grid {
		grid-template-columns: minmax(0, 1fr);
		width: calc(100% - 2 * var(--sl-space-2));
		--padding-top: 8px;
		--padding-bottom: 8px;
		--padding-left: 0px;
		--padding-right: 0px;
		border-radius: var(--sl-radius-lg);
	}

	.sl-v2 .e-con.sl-trust__item {
		padding: 14px var(--sl-space-2);
		border-left: 0;
		border-top: 1px solid var(--sl-color-border);
	}

	.sl-v2 .e-con.sl-trust__item:first-child {
		border-top: 0;
	}

	.sl-v2 .sl-trust__value .elementor-widget-container {
		display: flex;
		align-items: center;
		gap: 12px;
	}

	.sl-trust__icon {
		width: 40px;
		height: 40px;
		margin-bottom: 0;
		border-radius: 12px;
	}

	.sl-v2 .sl-trust__label {
		padding-left: 52px;
	}
}

/* ---------------------------------------------------------------------------
 * 4. Мэс заслын карт (хуучин #surgeries — одоо хуудсанд байхгүй, сэргээх тохиолдолд)
 * ------------------------------------------------------------------------ */
.sl-v2 .e-con.sl-surgery-grid {
	--display: grid;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	--gap: var(--sl-space-3);
}

.sl-v2 .e-con.sl-surgery {
	--gap: 12px;
	--row-gap: 12px;
	height: 100%;
}

.sl-v2 .sl-surgery__tag p {
	display: inline-block;
	margin: 0;
	padding: 4px 10px;
	border-radius: var(--sl-radius-pill);
	background: var(--sl-color-tint);
	color: var(--sl-color-primary);
	font-size: 13px;
	font-weight: var(--sl-font-weight-semibold);
}

.sl-v2 .sl-surgery__name .elementor-heading-title {
	margin: 0;
	font-size: var(--sl-text-h4);
}

.sl-v2 .sl-surgery__desc {
	color: var(--sl-color-text-muted);
	font-size: 16px;
}

.sl-v2 .sl-facts {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 15px;
	line-height: 1.5;
}

.sl-v2 .sl-facts li {
	padding: 10px 0;
	border-top: 1px solid var(--sl-color-border);
}

.sl-v2 .sl-facts strong {
	display: block;
	color: var(--sl-color-text);
	font-size: 13px;
	letter-spacing: .02em;
	text-transform: uppercase;
}

.sl-v2 .sl-surgery .elementor-widget-button {
	margin-top: auto;
}

.sl-v2 .sl-surgery .elementor-widget-button .elementor-button {
	padding-inline: 0;
	min-height: 44px;
}

/* ---------------------------------------------------------------------------
 * 5. Тест — бараан самбар: зүүн талд тайлбар, баруун талд нэг удаад нэг асуулт
 * ------------------------------------------------------------------------ */
.sl-v2 .sl-test-section > .e-con.sl-wrap {
	--display: grid;
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	align-items: center;
	--gap: var(--sl-space-6);
	--row-gap: var(--sl-space-5);
	--padding-top: var(--sl-space-6);
	--padding-bottom: var(--sl-space-6);
	--padding-left: var(--sl-space-6);
	--padding-right: var(--sl-space-6);
	position: relative;
	isolation: isolate;
	overflow: hidden;
	width: calc(100% - 2 * var(--sl-space-3));
	max-width: 1152px;
	border-radius: 32px;
	background:
		radial-gradient(60% 80% at 0% 0%, rgba(70, 108, 222, .4) 0%, rgba(70, 108, 222, 0) 70%),
		linear-gradient(150deg, var(--sl-color-ink) 0%, var(--sl-color-ink-2) 100%);
	color: #fff;
	box-shadow: var(--sl-shadow-lg);
}

/* Цагираг чимэглэл */
.sl-v2 .sl-test-section > .e-con.sl-wrap::after {
	content: "";
	position: absolute;
	left: -140px;
	bottom: -180px;
	z-index: -1;
	width: 460px;
	height: 460px;
	border-radius: 50%;
	background:
		radial-gradient(circle, transparent 54%, rgba(169, 189, 235, .16) 54.4%, transparent 55%),
		radial-gradient(circle, transparent 70%, rgba(169, 189, 235, .12) 70.4%, transparent 71%),
		radial-gradient(circle, rgba(242, 128, 39, .22) 0%, transparent 40%);
	pointer-events: none;
}

.sl-v2 .sl-test-section .e-con.sl-intro {
	max-width: none;
	margin: 0;
	text-align: left;
}

.sl-v2 .sl-test-section .sl-kicker {
	color: var(--sl-color-sky);
}

.sl-v2 .sl-test-section .sl-intro :is(a, button):focus-visible {
	outline-color: #fff;
	box-shadow: 0 0 0 2px var(--sl-color-ink);
}

.sl-v2 .sl-test-section .sl-intro .elementor-heading-title {
	color: #fff;
	font-size: clamp(30px, 2.6vw + 12px, 46px);
}

.sl-v2 .sl-test-section .sl-intro .elementor-widget-text-editor {
	color: var(--sl-color-on-dark-muted);
}

.sl-points {
	display: grid;
	gap: 14px;
	margin: var(--sl-space-4) 0 0;
	padding: 0;
	list-style: none;
	color: #fff;
	font-size: 16px;
	font-weight: var(--sl-font-weight-semibold);
}

.sl-points li {
	display: flex;
	align-items: center;
	gap: 12px;
}

.sl-points__icon {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 36px;
	height: 36px;
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 10px;
	background: rgba(255, 255, 255, .08);
	color: var(--sl-color-sky);
}

/* Тестийн карт */
.sl-test {
	display: grid;
	gap: var(--sl-space-3);
	max-width: 760px;
	width: 100%;
	margin: 0 auto;
	padding: var(--sl-space-5) var(--sl-space-5) var(--sl-space-4);
	border-radius: 24px;
	background: var(--sl-color-bg);
	color: var(--sl-color-text);
	box-shadow: 0 30px 60px -20px rgba(0, 0, 0, .45);
}

.sl-test__head {
	display: grid;
	gap: 10px;
}

.sl-test__head[hidden] {
	display: none;
}

.sl-test__step {
	margin: 0;
	color: var(--sl-color-text-muted);
	font-size: 13px;
	font-weight: var(--sl-font-weight-bold);
	letter-spacing: .1em;
	text-transform: uppercase;
}

.sl-test__step span {
	color: var(--sl-color-primary);
}

.sl-test__progress {
	height: 6px;
	overflow: hidden;
	border-radius: var(--sl-radius-pill);
	background: var(--sl-color-tint);
}

.sl-test__progress span {
	display: block;
	width: var(--sl-test-progress, 0%);
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--sl-color-primary), var(--sl-color-sky));
	transition: width .45s var(--sl-ease-out);
}

.sl-test__q {
	margin: 0;
	padding: 0;
	border: 0;
	min-width: 0;
}

.sl-test__q[hidden] {
	display: none;
}

.sl-test:not(.is-stepper) .sl-test__q + .sl-test__q {
	padding-top: var(--sl-space-3);
	border-top: 1px solid var(--sl-color-border);
}

.sl-test__q.is-missing .sl-test__option span {
	border-color: var(--sl-color-accent);
}

.sl-test__q legend {
	float: left;
	width: 100%;
	margin: 0 0 var(--sl-space-3);
	padding: 0;
	color: var(--sl-color-text);
	font-size: clamp(19px, .8vw + 15px, 23px);
	font-weight: var(--sl-font-weight-bold);
	line-height: 1.35;
	letter-spacing: -.01em;
}

.sl-test__num {
	display: block;
	margin-bottom: 4px;
	color: var(--sl-color-text-muted);
	font-size: 13px;
	font-weight: var(--sl-font-weight-semibold);
	letter-spacing: 0;
}

.sl-test.is-stepper .sl-test__num {
	display: none;
}

.sl-test__options {
	clear: both;
	display: grid;
	gap: 10px;
}

.sl-test__option {
	position: relative;
	margin: 0;
	cursor: pointer;
}

.sl-test__option input {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 1px;
}

.sl-test__option span {
	display: flex;
	align-items: center;
	gap: 14px;
	min-height: 56px;
	padding: 12px 18px;
	border: 1.5px solid var(--sl-color-border);
	border-radius: 14px;
	background: var(--sl-color-bg);
	font-size: 17px;
	font-weight: var(--sl-font-weight-semibold);
	line-height: 1.3;
	transition: background-color var(--sl-transition), border-color var(--sl-transition), color var(--sl-transition), transform .25s var(--sl-ease-out), box-shadow var(--sl-transition);
}

/* Радио тэмдэг */
.sl-test__option span::before {
	content: "";
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
	border: 2px solid var(--sl-color-border-strong);
	border-radius: 50%;
	background: var(--sl-color-bg);
	transition: border-color var(--sl-transition), background-color var(--sl-transition), box-shadow var(--sl-transition);
}

.sl-test__option:hover span {
	border-color: var(--sl-color-primary);
	background: var(--sl-color-tint);
	transform: translateX(3px);
}

.sl-test__option input:checked + span {
	border-color: var(--sl-color-primary);
	background: var(--sl-color-tint);
	color: var(--sl-color-primary-dark);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--sl-color-primary) 14%, transparent);
}

.sl-test__option input:checked + span::before {
	border-color: var(--sl-color-primary);
	background: var(--sl-color-primary);
	box-shadow: inset 0 0 0 4px var(--sl-color-bg);
}

.sl-test__option input:focus-visible + span {
	outline: 3px solid var(--sl-focus-ring);
	outline-offset: 2px;
}

.sl-test__error {
	margin: 0;
	color: var(--sl-color-accent);
	font-weight: var(--sl-font-weight-semibold);
}

.sl-test__nav {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
}

.sl-test__nav [hidden] {
	display: none;
}

.sl-test__nav .sl-test__next,
.sl-test__nav .sl-test__submit {
	margin-left: auto;
}

.sl-test .sl-test__back {
	padding-inline: 12px;
}

.sl-test .sl-btn[disabled] {
	transform: none;
}

.sl-test__disclaimer {
	margin: 0;
	padding-top: var(--sl-space-2);
	border-top: 1px solid var(--sl-color-border);
	color: var(--sl-color-text-muted);
	font-size: 13px;
	line-height: 1.55;
}

.sl-test.is-done > :not(.sl-test__result) {
	display: none;
}

/* Алхам солигдох хөдөлгөөн */
.sl-test__q.is-in-next { animation: sl-step-next .4s var(--sl-ease-out) both; }
.sl-test__q.is-in-prev { animation: sl-step-prev .4s var(--sl-ease-out) both; }

@keyframes sl-step-next {
	from { opacity: 0; transform: translateX(24px); }
	to   { opacity: 1; transform: none; }
}

@keyframes sl-step-prev {
	from { opacity: 0; transform: translateX(-24px); }
	to   { opacity: 1; transform: none; }
}

/* Үр дүн */
.sl-test__result {
	display: grid;
	gap: var(--sl-space-2);
	animation: sl-step-next .45s var(--sl-ease-out) both;
}

.sl-test__result[hidden] {
	display: none;
}

.sl-test__result-icon {
	display: grid;
	place-items: center;
	width: 64px;
	height: 64px;
	border-radius: 20px;
	background: linear-gradient(135deg, var(--sl-color-primary), var(--sl-color-ink-2));
	color: #fff;
	box-shadow: 0 14px 28px -12px color-mix(in srgb, var(--sl-color-primary) 80%, transparent);
}

.sl-test__result-icon svg {
	display: none;
	grid-area: 1 / 1;
}

.sl-test__result[data-outcome="ok"] .sl-test__result-icon svg:nth-child(1),
.sl-test__result[data-outcome="check"] .sl-test__result-icon svg:nth-child(2),
.sl-test__result[data-outcome="wait"] .sl-test__result-icon svg:nth-child(3) {
	display: block;
}

.sl-test__result-title {
	margin: var(--sl-space-1) 0 0;
	color: var(--sl-color-text);
	font-size: clamp(22px, 1vw + 17px, 28px);
	line-height: 1.25;
}

.sl-test__result p {
	margin: 0;
}

.sl-test__notes {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: var(--sl-space-2);
	border-radius: 14px;
	background: var(--sl-color-surface);
	list-style: none;
	font-size: 16px;
}

.sl-test__notes[hidden] {
	display: none;
}

.sl-test__notes li {
	position: relative;
	padding-left: 26px;
}

.sl-test__notes li::before {
	content: "";
	position: absolute;
	left: 2px;
	top: .5em;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--sl-color-primary);
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--sl-color-primary) 15%, transparent);
}

.sl-test__result .sl-test__disclaimer {
	padding-top: 0;
	border-top: 0;
}

.sl-test__ctas {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.sl-test__restart {
	display: inline-flex;
	align-items: center;
	justify-self: start;
	gap: 6px;
	min-height: 44px;
	padding: 8px 0;
	border: 0;
	background: none;
	color: var(--sl-color-primary);
	font: inherit;
	font-size: 15px;
	font-weight: var(--sl-font-weight-semibold);
	cursor: pointer;
}

.sl-test__restart[hidden] {
	display: none;
}

.sl-test__restart:hover {
	color: var(--sl-color-primary-dark);
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media (max-width: 1023px) {
	.sl-v2 .sl-test-section > .e-con.sl-wrap {
		grid-template-columns: minmax(0, 1fr);
		--padding-top: var(--sl-space-5);
		--padding-bottom: var(--sl-space-5);
		--padding-left: var(--sl-space-5);
		--padding-right: var(--sl-space-5);
	}

	.sl-points {
		grid-template-columns: repeat(3, auto);
		justify-content: start;
		gap: 12px 24px;
		margin-top: var(--sl-space-3);
	}
}

@media (max-width: 767px) {
	.sl-v2 .sl-test-section > .e-con.sl-wrap {
		width: calc(100% - 2 * var(--sl-space-2));
		--padding-top: var(--sl-space-4);
		--padding-bottom: var(--sl-space-2);
		--padding-left: var(--sl-space-2);
		--padding-right: var(--sl-space-2);
		--gap: var(--sl-space-4);
		--row-gap: var(--sl-space-4);
		border-radius: 24px;
	}

	.sl-v2 .sl-test-section .e-con.sl-intro {
		padding-inline: var(--sl-space-1);
	}

	.sl-points {
		grid-template-columns: minmax(0, 1fr);
		font-size: 15px;
	}

	.sl-test {
		padding: var(--sl-space-3) var(--sl-space-2) var(--sl-space-2);
		border-radius: 18px;
	}

	.sl-test__option span {
		min-height: 52px;
		font-size: 16px;
	}
}

/* ---------------------------------------------------------------------------
 * 6. Процесс (хуучин [sl_process] — одоо хуудсанд байхгүй, сэргээх тохиолдолд)
 * ------------------------------------------------------------------------ */
.sl-process {
	display: grid;
	gap: var(--sl-space-4);
}

.sl-process__timeline {
	position: relative;
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: var(--sl-space-2);
	margin: 0;
	padding: 0;
	list-style: none;
}

.sl-process__timeline::before {
	content: "";
	position: absolute;
	top: 22px;
	left: 8%;
	right: 8%;
	height: 2px;
	background: var(--sl-color-border);
}

.sl-process .sl-process__point a {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--sl-space-1);
	padding: 0 4px;
	color: var(--sl-color-text);
	text-align: center;
	text-decoration: none;
	border-radius: var(--sl-radius);
}

.sl-process__point a:hover .sl-process__badge {
	background: var(--sl-color-primary);
	color: var(--sl-color-on-primary);
}

.sl-process__point-title {
	font-size: 15px;
	font-weight: var(--sl-font-weight-semibold);
	line-height: 1.35;
}

.sl-process__badge {
	display: inline-grid;
	place-items: center;
	flex: 0 0 auto;
	width: 44px;
	height: 44px;
	border: 2px solid var(--sl-color-primary);
	border-radius: 50%;
	background: var(--sl-color-bg);
	color: var(--sl-color-primary);
	font-weight: var(--sl-font-weight-bold);
	transition: background-color var(--sl-transition), color var(--sl-transition);
}

.sl-process__list {
	display: grid;
	gap: 12px;
	max-width: 880px;
	width: 100%;
	margin: 0 auto;
}

.sl-process__step {
	border: 1px solid var(--sl-color-border);
	border-radius: var(--sl-radius);
	background: var(--sl-color-bg);
	scroll-margin-top: 96px;
}

.sl-process__step summary {
	display: flex;
	align-items: center;
	gap: var(--sl-space-2);
	min-height: 64px;
	padding: 10px var(--sl-space-3) 10px var(--sl-space-2);
	cursor: pointer;
	list-style: none;
	font-size: 18px;
	font-weight: var(--sl-font-weight-semibold);
	line-height: 1.35;
	border-radius: var(--sl-radius);
}

.sl-process__step summary::-webkit-details-marker {
	display: none;
}

.sl-process__step summary::after {
	content: "";
	flex: 0 0 auto;
	width: 10px;
	height: 10px;
	margin-left: auto;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform var(--sl-transition);
}

.sl-process__step[open] summary::after {
	transform: rotate(225deg);
}

.sl-process__step[open] .sl-process__badge {
	background: var(--sl-color-primary);
	color: var(--sl-color-on-primary);
}

.sl-process__body {
	padding: 0 var(--sl-space-3) var(--sl-space-3) calc(var(--sl-space-2) + 44px + var(--sl-space-2));
	font-size: 16px;
	line-height: 1.6;
}

.sl-process__body ul {
	margin: 0;
	padding-left: 20px;
}

.sl-process__body span[style*="font-size"] {
	font-size: inherit !important;
}

.sl-process__body a {
	color: var(--sl-color-primary);
	overflow-wrap: anywhere;
}

@media (max-width: 767px) {
	.sl-process__timeline {
		display: none;
	}

	.sl-process__list {
		position: relative;
		gap: var(--sl-space-2);
	}

	.sl-process__list::before {
		content: "";
		position: absolute;
		top: 32px;
		bottom: 32px;
		left: calc(var(--sl-space-2) + 22px);
		width: 2px;
		background: var(--sl-color-border);
	}

	.sl-process__step {
		position: relative;
	}

	.sl-process__step summary {
		font-size: 17px;
	}

	.sl-process__body {
		padding: 0 var(--sl-space-2) var(--sl-space-2) var(--sl-space-2);
	}
}

/* ---------------------------------------------------------------------------
 * 7. Эмч нар — section-ий дэвсгэр. Carousel, карт нь doctors.css-д ([sl_doctors]).
 * ------------------------------------------------------------------------ */
.sl-v2 .e-con#doctors {
	background: var(--sl-color-surface);
}

/* ---------------------------------------------------------------------------
 * 8. Сэтгэгдэл — бараан section, шилэн карт
 * ------------------------------------------------------------------------ */
.sl-v2 .e-con#reviews {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background:
		radial-gradient(45% 60% at 100% 0%, rgba(70, 108, 222, .35) 0%, rgba(70, 108, 222, 0) 70%),
		radial-gradient(35% 50% at 0% 100%, rgba(242, 128, 39, .12) 0%, rgba(242, 128, 39, 0) 70%),
		linear-gradient(170deg, var(--sl-color-ink) 0%, var(--sl-color-ink-2) 100%);
	color: #fff;
}

.sl-v2 #reviews .sl-kicker {
	color: var(--sl-color-sky);
}

.sl-v2 #reviews .sl-intro .elementor-heading-title {
	color: #fff;
}

.sl-v2 #reviews .sl-intro .elementor-widget-text-editor {
	color: var(--sl-color-on-dark-muted);
}

/* Видео дээр (төвд, том), доор нь 3 сэтгэгдэл нэг мөрөнд ижил өндөртэй. */
.sl-v2 .e-con.sl-reviews {
	--display: flex;
	display: flex;
	flex-direction: column;
	--gap: var(--sl-space-5);
	--row-gap: var(--sl-space-5);
}

.sl-v2 .e-con.sl-reviews__quotes {
	--display: grid;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	--gap: var(--sl-space-3);
	--row-gap: var(--sl-space-3);
}

.sl-v2 #reviews .e-con.sl-quote {
	position: relative;
	height: 100%;
	--gap: 0px;
	--row-gap: 0px;
	padding: var(--sl-space-4) var(--sl-space-4) var(--sl-space-3);
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: var(--sl-radius-lg);
	background: rgba(255, 255, 255, .05);
	box-shadow: none;
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	transition: transform .35s var(--sl-ease-out), border-color .35s, background-color .35s;
}

.sl-v2 #reviews .e-con.sl-quote:hover {
	border-color: rgba(169, 189, 235, .4);
	background: rgba(255, 255, 255, .08);
	transform: translateY(-3px);
}

/* Том ишлэлийн тэмдэг (flex item, текстийн дээр) */
.sl-v2 #reviews .e-con.sl-quote::after {
	content: "\201C";
	order: -1;
	display: block;
	height: 34px;
	margin-bottom: -8px;
	color: var(--sl-color-glow);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 72px;
	line-height: 1;
	opacity: .85;
	pointer-events: none;
}

/* Картын дотор: ишлэл (сунана) → зохиогч → холбоос, доод хэсэг нь бүх картад нэг түвшинд. */
.sl-v2 #reviews .sl-quote > .elementor-widget-text-editor {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
}

.sl-v2 #reviews .sl-quote > .elementor-widget-text-editor > .elementor-widget-container {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
}

.sl-v2 .sl-quote blockquote {
	flex: 1 1 auto;
	margin: var(--sl-space-2) 0 var(--sl-space-3);
	padding: 0;
	border: 0;
	background: none;
	color: #fff;
	font-size: 18px;
	font-style: normal;
	line-height: 1.7;
}

.sl-v2 .sl-quote blockquote p {
	margin: 0;
}

.sl-quote__author {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
	padding-top: var(--sl-space-3);
	border-top: 1px solid rgba(255, 255, 255, .12);
}

.sl-quote__avatar {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--sl-color-glow), var(--sl-color-primary));
	color: #fff;
	font-size: 18px;
	font-weight: var(--sl-font-weight-bold);
}

.sl-v2 .sl-quote .sl-quote__name {
	margin: 0;
	color: #fff;
	font-weight: var(--sl-font-weight-bold);
	line-height: 1.3;
}

.sl-quote__role {
	display: block;
	color: var(--sl-color-on-dark-muted);
	font-size: 13px;
	font-weight: var(--sl-font-weight-regular);
}

.sl-v2 #reviews .sl-quote .elementor-widget-text-editor a {
	color: var(--sl-color-sky);
	font-size: 15px;
	font-weight: var(--sl-font-weight-semibold);
	text-decoration: none;
}

.sl-v2 #reviews .sl-quote .elementor-widget-text-editor a::after {
	content: "\2192";
	display: inline-block;
	margin-left: 6px;
	transition: transform .25s var(--sl-ease-out);
}

.sl-v2 #reviews .sl-quote .elementor-widget-text-editor a:hover {
	color: #fff;
}

.sl-v2 #reviews .sl-quote .elementor-widget-text-editor a:hover::after {
	transform: translateX(3px);
}

/* Flex/grid-ийн intrinsic хэмжээ тооцоолол хувиар өгсөн padding-ийг (16:9) 0 гэж үздэг тул видеоны
 * container-ийг block болгоно (дотор нь ганц widget). */
.sl-v2 .e-con.sl-reviews__video {
	--display: block;
	display: block;
	order: -1;
	width: 100%;
	max-width: 880px;
	margin-inline: auto;
}

.sl-v2 #reviews .sl-yt__caption {
	display: block;
	text-align: center;
}

.sl-v2 #reviews .sl-yt__caption::before {
	display: inline-block;
	margin-right: 10px;
	vertical-align: middle;
}

.sl-v2 #reviews .elementor-widget-button.sl-btn-secondary .elementor-button {
	border-color: rgba(255, 255, 255, .38);
	background: rgba(255, 255, 255, .06);
	color: #fff;
}

.sl-v2 #reviews .elementor-widget-button.sl-btn-secondary .elementor-button:hover {
	border-color: #fff;
	background: rgba(255, 255, 255, .14);
	color: #fff;
}

.sl-v2 #reviews :is(a, button):focus-visible {
	outline-color: #fff;
	box-shadow: 0 0 0 2px var(--sl-color-ink);
}

.sl-yt-figure {
	margin: 0;
}

.sl-yt__caption {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: var(--sl-space-2);
	color: var(--sl-color-on-dark-muted);
	font-size: 15px;
	line-height: 1.45;
}

.sl-yt__caption::before {
	content: "";
	flex: 0 0 auto;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--sl-color-glow);
}

.sl-yt {
	position: relative;
	/* 16:9 — aspect-ratio биш padding: агуулга нь бүхэлдээ absolute тул grid/flex-д өндөр нь 0 болдог. */
	height: 0;
	padding-bottom: 56.25%;
	overflow: hidden;
	border-radius: var(--sl-radius-lg);
	background: var(--sl-color-ink);
	box-shadow: 0 0 0 1px rgba(255, 255, 255, .14), 0 40px 80px -24px rgba(0, 0, 0, .6);
}

.sl-yt__btn {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	padding: 0;
	border: 0;
	background: none;
	cursor: pointer;
}

.sl-v2 .sl-yt__btn img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .7s var(--sl-ease-out);
}

.sl-v2 .sl-yt__btn:hover img {
	transform: scale(1.04);
}

.sl-yt__play {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 80px;
	height: 80px;
	margin: -40px 0 0 -40px;
	border-radius: 50%;
	background: var(--sl-color-accent);
	box-shadow: 0 16px 32px -10px rgba(0, 0, 0, .5);
	transition: background-color var(--sl-transition), transform .3s var(--sl-ease-out);
}

/* Долгион */
.sl-yt__play::before {
	content: "";
	position: absolute;
	inset: -10px;
	border: 2px solid rgba(255, 255, 255, .55);
	border-radius: 50%;
	animation: sl-ripple 2.4s ease-out infinite;
}

@keyframes sl-ripple {
	from { opacity: 1; transform: scale(.85); }
	to   { opacity: 0; transform: scale(1.35); }
}

.sl-yt__play::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -12px 0 0 -7px;
	border-style: solid;
	border-width: 12px 0 12px 20px;
	border-color: transparent transparent transparent var(--sl-color-on-accent);
}

.sl-yt__btn:hover .sl-yt__play {
	background: var(--sl-color-accent-hover);
	transform: scale(1.08);
}

.sl-yt iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* Tablet, mobile: сэтгэгдлүүд хажуу тийш гүйдэг (scroll-snap), дараагийн карт бага зэрэг харагдана. */
@media (max-width: 1023px) {
	.sl-v2 .e-con.sl-reviews {
		--gap: var(--sl-space-4);
		--row-gap: var(--sl-space-4);
	}

	.sl-v2 .e-con.sl-reviews__quotes {
		grid-template-columns: none;
		grid-auto-flow: column;
		grid-auto-columns: minmax(300px, 46%);
		overflow-x: auto;
		overscroll-behavior-x: contain;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
		margin-inline: calc(-1 * var(--sl-space-3));
		padding: 4px var(--sl-space-3) 8px;
		scroll-padding-inline: var(--sl-space-3);
	}

	.sl-v2 .e-con.sl-reviews__quotes::-webkit-scrollbar {
		display: none;
	}

	.sl-v2 #reviews .e-con.sl-quote {
		scroll-snap-align: start;
	}

	.sl-v2 #reviews .e-con.sl-quote:hover {
		transform: none;
	}
}

@media (max-width: 767px) {
	.sl-v2 .e-con.sl-reviews__quotes {
		grid-auto-columns: 86%;
		--gap: var(--sl-space-2);
		margin-inline: calc(-1 * var(--sl-space-2));
		padding-inline: var(--sl-space-2);
		scroll-padding-inline: var(--sl-space-2);
	}

	.sl-v2 #reviews .e-con.sl-quote {
		padding: var(--sl-space-3) 20px 20px;
	}

	.sl-v2 .sl-quote blockquote {
		font-size: 17px;
	}

	.sl-yt__play {
		width: 64px;
		height: 64px;
		margin: -32px 0 0 -32px;
	}
}

/* ---------------------------------------------------------------------------
 * 10. FAQ — desktop: зүүн талд толгой (sticky), баруун талд accordion
 * ------------------------------------------------------------------------ */
.sl-v2 #faq > .e-con.sl-wrap {
	--display: grid;
	display: grid;
	grid-template-columns: minmax(0, 4fr) minmax(0, 7fr);
	align-items: start;
	--gap: var(--sl-space-6);
}

.sl-v2 #faq .e-con.sl-intro {
	position: sticky;
	top: 112px;
	max-width: none;
	margin: 0;
	text-align: left;
}

.sl-help {
	display: grid;
	gap: 6px;
	margin-top: var(--sl-space-4);
	padding: var(--sl-space-3);
	border: 1px solid var(--sl-color-border);
	border-radius: var(--sl-radius-lg);
	background: var(--sl-color-bg);
	box-shadow: var(--sl-shadow-card);
	text-align: left;
}

.sl-v2 .sl-help .sl-help__title {
	margin: 0;
	color: var(--sl-color-text);
	font-size: 18px;
	font-weight: var(--sl-font-weight-bold);
}

.sl-v2 .sl-help .sl-help__text {
	margin: 0 0 10px;
	color: var(--sl-color-text-muted);
	font-size: 15px;
}

.sl-help__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.sl-v2 .sl-help a.sl-help__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 8px 16px;
	border-radius: var(--sl-radius-pill);
	background: var(--sl-color-tint);
	color: var(--sl-color-primary);
	font-size: 15px;
	font-weight: var(--sl-font-weight-bold);
	text-decoration: none;
	transition: background-color var(--sl-transition), color var(--sl-transition);
}

.sl-v2 .sl-help a.sl-help__link:hover {
	background: var(--sl-color-primary);
	color: var(--sl-color-on-primary);
}

.sl-v2 .sl-faq {
	max-width: 880px;
	width: 100%;
	margin-inline: auto;
}

.sl-v2 .sl-faq .elementor-accordion-item {
	margin-bottom: 12px;
	border: 1px solid var(--sl-color-border) !important;
	border-radius: 16px;
	background: var(--sl-color-bg);
	overflow: hidden;
	transition: border-color var(--sl-transition), box-shadow .3s var(--sl-ease-out);
}

.sl-v2 .sl-faq .elementor-accordion-item:hover {
	border-color: color-mix(in srgb, var(--sl-color-primary) 35%, var(--sl-color-border)) !important;
}

.sl-v2 .sl-faq .elementor-accordion-item:has(.elementor-active) {
	border-color: color-mix(in srgb, var(--sl-color-primary) 45%, var(--sl-color-border)) !important;
	box-shadow: var(--sl-shadow-card-hover);
}

.sl-v2 .sl-faq .elementor-tab-title,
.sl-v2 .sl-faq .elementor-tab-title.elementor-active {
	background: var(--sl-color-bg) !important; /* theme нь идэвхтэй табд primary дэвсгэр өгдөг */
}

.sl-v2 .sl-faq .elementor-tab-title {
	display: flex;
	align-items: center;
	gap: var(--sl-space-2);
	min-height: 68px;
	padding: 14px var(--sl-space-3) !important;
	border: 0 !important;
	font-size: 17px;
	line-height: 1.4;
}

.sl-v2 .sl-faq .elementor-tab-title a,
.sl-v2 .sl-faq .elementor-accordion-title {
	color: var(--sl-color-text) !important;
	font-family: var(--sl-font-sans);
	font-weight: var(--sl-font-weight-semibold);
	text-decoration: none;
}

.sl-v2 .sl-faq .elementor-tab-title.elementor-active a,
.sl-v2 .sl-faq .elementor-tab-title.elementor-active .elementor-accordion-title {
	color: var(--sl-color-primary) !important;
}

.sl-v2 .sl-faq .elementor-accordion-icon {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	order: 2;
	width: 34px;
	height: 34px;
	margin-left: auto;
	border-radius: 50%;
	background: var(--sl-color-tint);
	transition: background-color var(--sl-transition), transform .35s var(--sl-ease-out);
}

.sl-v2 .sl-faq .elementor-accordion-icon,
.sl-v2 .sl-faq .elementor-accordion-icon i,
.sl-v2 .sl-faq .elementor-accordion-icon svg {
	color: var(--sl-color-primary) !important;
	fill: var(--sl-color-primary) !important;
}

.sl-v2 .sl-faq .elementor-accordion-icon svg {
	width: 14px;
	height: 14px;
}

.sl-v2 .sl-faq .elementor-tab-title.elementor-active .elementor-accordion-icon {
	background: var(--sl-color-primary);
	transform: rotate(180deg);
}

.sl-v2 .sl-faq .elementor-tab-title.elementor-active .elementor-accordion-icon :is(i, svg) {
	color: var(--sl-color-on-primary) !important;
	fill: var(--sl-color-on-primary) !important;
}

.sl-v2 .sl-faq .elementor-tab-content {
	padding: 0 var(--sl-space-3) var(--sl-space-3) !important;
	border: 0 !important;
	background: var(--sl-color-bg) !important;
	color: var(--sl-color-text-muted);
	font-size: 16px;
	line-height: 1.65;
}

.sl-v2 .sl-faq .elementor-tab-content ul {
	margin: var(--sl-space-1) 0 0;
	padding-left: 20px;
}

@media (max-width: 1023px) {
	.sl-v2 #faq > .e-con.sl-wrap {
		grid-template-columns: minmax(0, 1fr);
		--gap: var(--sl-space-4);
	}

	.sl-v2 #faq .e-con.sl-intro {
		position: static;
	}
}

@media (max-width: 767px) {
	.sl-v2 .sl-faq .elementor-tab-title {
		padding: 12px var(--sl-space-2) !important;
		font-size: 16px;
	}

	.sl-v2 .sl-faq .elementor-tab-content {
		padding: 0 var(--sl-space-2) var(--sl-space-2) !important;
	}
}

/* ---------------------------------------------------------------------------
 * 11. Байршил
 * ------------------------------------------------------------------------ */
.sl-v2 .e-con.sl-contact {
	--display: grid;
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	--gap: var(--sl-space-3);
	align-items: stretch;
}

.sl-v2 .e-con.sl-contact__info {
	padding: var(--sl-space-4);
	border-radius: var(--sl-radius-lg);
}

.sl-v2 .sl-contact__info h3 {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: var(--sl-space-3) 0 6px;
	color: var(--sl-color-text);
	font-size: var(--sl-text-h6);
}

.sl-contact__icon {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	border-radius: 10px;
	background: var(--sl-color-tint);
	color: var(--sl-color-primary);
}

.sl-v2 .sl-contact__info h3:first-child {
	margin-top: 0;
}

.sl-v2 .sl-contact__info p {
	margin: 0 0 4px;
	padding-left: 44px;
	color: var(--sl-color-text-muted);
}

.sl-v2 .sl-contact__info .elementor-widget-button {
	margin-top: auto;
}

.sl-v2 .sl-contact__map .elementor-widget-container,
.sl-v2 .sl-contact__map .elementor-custom-embed {
	height: 100%;
}

.sl-v2 .sl-contact__map {
	overflow: hidden;
	border-radius: var(--sl-radius-lg);
	box-shadow: var(--sl-shadow-lg);
}

.sl-v2 .sl-contact__map,
.sl-v2 .sl-contact__map iframe {
	width: 100%;
	min-height: 380px;
	height: 100% !important;
	border: 0;
}

@media (max-width: 1023px) {
	.sl-v2 .e-con.sl-contact {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 767px) {
	.sl-v2 .e-con.sl-contact__info {
		padding: var(--sl-space-3);
	}

	.sl-v2 .sl-contact__map,
	.sl-v2 .sl-contact__map iframe {
		min-height: 300px;
	}
}

@media (max-width: 767px) {
	.sl-v2 .e-con.sl-wrap {
		--padding-left: var(--sl-space-2);
		--padding-right: var(--sl-space-2);
	}
}

/* ---------------------------------------------------------------------------
 * 14. Scroll-д гарч ирэх хөдөлгөөн (home-v2.js нь дэлгэцээс доор байгаа элементэд л .sl-reveal нэмнэ,
 *     тиймээс JS ажиллахгүй бол бүх агуулга харагдсаар байна)
 * ------------------------------------------------------------------------ */
.sl-reveal {
	opacity: 0;
	transform: translateY(28px);
	transition: opacity .8s var(--sl-ease-out), transform .8s var(--sl-ease-out);
	transition-delay: var(--sl-reveal-delay, 0ms);
}

.sl-reveal.is-visible {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	html:has(body.sl-v2) {
		scroll-behavior: auto;
	}

	.sl-header,
	.sl-header__inner,
	.sl-header__logo-img,
	.sl-yt__play,
	.sl-yt__btn img,
	.sl-process__badge,
	.sl-doctor,
	.sl-doctor__img,
	.sl-test__option span,
	.sl-test__progress span,
	.sl-carousel__track,
	.sl-reveal {
		transition: none;
	}

	.sl-reveal {
		opacity: 1;
		transform: none;
	}

	.sl-hero__chip,
	.sl-yt__play::before,
	.sl-v2 .sl-hero__media img,
	.sl-v2 .sl-hero .sl-eyebrow p::before,
	:is(.sl-rings, .sl-hero__rings, .sl-cta-band__rings) > span,
	.sl-test__q.is-in-next,
	.sl-test__q.is-in-prev,
	.sl-test__result,
	.sl-header.is-nav-open .sl-nav {
		animation: none;
	}

	.sl-v2 .sl-btn:hover,
	.sl-v2 .elementor-widget-button .elementor-button:hover,
	.sl-doctor:hover,
	.sl-test__option:hover span {
		transform: none;
	}
}
