/* ==========================================================================
   BotsBox — посадочные страницы сервисов (service-landing.css)
   Общая дизайн-система для всех текущих и будущих service/landing страниц.
   Акцент подобран под уже существующий бренд-цвет сайта (#2563eb), шрифт —
   родной Gilroy темы, отдельного webfont не грузим.
   ========================================================================== */

/* Отступ для якорей меню шапки (#poprobovat/#instrukciya/#tablica/#tarify/
   #faq) — на случай залипающей навигации, чтобы заголовок секции не
   оказывался прямо под шапкой при прыжке по ссылке. */
.svc #poprobovat,
.svc #instrukciya,
#tablica,
#tarify,
#faq {
	scroll-margin-top: 90px;
}

.svc {
	--svc-accent: #2563eb;
	--svc-accent-dark: #1d4ed8;
	--svc-accent-soft: #eff4ff;
	--svc-text: #0f172a;
	--svc-text-secondary: #64748b;
	--svc-text-muted: #94a3b8;
	--svc-border: #e6eaf0;
	--svc-surface: #ffffff;
	--svc-bg: #f7f9fc;
	--svc-success-bg: #eafaf0;
	--svc-success-text: #0a7a44;
	--svc-warning-bg: #fff8e8;
	--svc-warning-text: #93650a;
	--svc-radius-lg: 20px;
	--svc-radius: 14px;
	--svc-radius-sm: 10px;
	--svc-shadow: 0 4px 24px rgba(15, 23, 42, 0.06);
	--svc-shadow-lg: 0 16px 40px rgba(15, 23, 42, 0.1);
	--svc-content-w: 920px;
	--svc-wide-w: 1150px;
	--svc-font: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	color: var(--svc-text);
	font-family: var(--svc-font);
	background: #f8fbff;
	max-width: 1450px;
	margin: 0 auto;
	padding: 0px;
	position: relative;
}

/* Текстовые/форменные блоки не растягиваем на всю ширину — читаемость важнее,
   а широкий .svc даёт странице простор за счёт полей по бокам на больших экранах. */
.svc-hero, .svc-widget-card, .svc-intro, .svc-table-wrap, .svc-faq, .svc-related, .svc-block {
	max-width: var(--svc-content-w);
	margin-left: auto;
	margin-right: auto;
}

.svc-steps, .svc-plans {
	max-width: var(--svc-wide-w);
	margin-left: auto;
	margin-right: auto;
}

.svc * { box-sizing: border-box; }

/* ---------- Hero ---------- */

.svc-hero { position: relative; text-align: center; padding: 20px 0 32px; }

/* На этой ширине шапка сайта становится position:fixed (69px) — без отступа
   первый элемент страницы (h1) заезжает под неё. Это давно так у сайта
   везде, но именно тут стало заметно после увеличения заголовка. */
@media (max-width: 991px) {
	.svc-hero { padding-top: 89px; }
}

.svc-hero::before {
	content: '';
	position: absolute;
	top: -100px;
	left: 50%;
	width: 900px;
	height: 460px;
	transform: translateX(-50%);
	background:
		radial-gradient(closest-side, rgba(37, 99, 235, 0.14), rgba(37, 99, 235, 0) 72%),
		radial-gradient(closest-side, rgba(117, 70, 239, 0.08), rgba(117, 70, 239, 0) 72%);
	z-index: -1;
	pointer-events: none;
}

.svc-hero h1 { font-size: 48px; font-weight: 800; line-height: 1.08; margin: 0 0 14px; letter-spacing: -0.03em; }

/* Необязательный акцент — если в H1 конкретной посадочной нужно выделить
   часть текста градиентом, оборачиваем её в админке прямо в поле H1:
   <span class="svc-hero-accent">с помощью AI</span>. Без этого h1 просто
   рендерится обычным текстом — ничего не ломается для старых лендингов. */
.svc-hero-accent {
	background: linear-gradient(90deg, var(--svc-accent), #7546ef);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

.svc-hero-badges { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 20px; }

.svc-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 500;
	color: var(--svc-text-secondary);
	background: var(--svc-surface);
	border: 1px solid var(--svc-border);
	border-radius: 999px;
	padding: 7px 14px;
}

.svc-hero__subtitle {
	font-size: 18px;
	line-height: 1.5;
	color: var(--svc-text-secondary);
	max-width: 620px;
	margin: 0 auto 4px;
}

/* Декоративная иллюстрация справа от заголовка — своя SVG-композиция
   (тестовая пробирка/карточки), не фото; скрыта на мобильных и планшетах,
   чтобы не спорить с текстом и не плодить лишний вес на узких экранах. */
.svc-hero__visual { display: none; pointer-events: none; }

.svc-hero__benefits { display: none; }

@media (min-width: 992px) {
	.svc-hero { text-align: left; padding: 44px 0 40px; overflow: visible; }
	.svc-hero__inner { position: relative; z-index: 2; max-width: 600px; margin: 0; }
	.svc-hero__subtitle { margin: 0; }
	.svc-hero-badges { display: none; }

	.svc-hero__visual {
		display: block;
		position: absolute;
		top: -20px;
		right: -40px;
		width: 380px;
		height: 340px;
		z-index: 1;
	}

	.svc-hero__visual-glow {
		position: absolute;
		top: 40px;
		right: 20px;
		width: 260px;
		height: 260px;
		border-radius: 50%;
		background: radial-gradient(circle, rgba(37, 99, 235, 0.16) 0%, rgba(117, 70, 239, 0.08) 45%, rgba(117, 70, 239, 0) 72%);
		filter: blur(6px);
	}

	.svc-hero__illustration { position: relative; display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; }

	.svc-hero__benefits { display: flex; flex-wrap: wrap; gap: 28px; margin-top: 28px; }

	.svc-hero__benefit { display: flex; align-items: center; gap: 12px; }

	.svc-hero__benefit-icon {
		width: 44px;
		height: 44px;
		flex: 0 0 44px;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		background: radial-gradient(circle at 30% 25%, #f5f9ff 0%, #e7efff 65%, #dce8ff 100%);
		box-shadow: 0 7px 18px rgba(68, 111, 213, 0.10), inset 0 1px 1px rgba(255, 255, 255, 0.9);
		color: var(--svc-accent);
		font-size: 16px;
	}

	.svc-hero__benefit-text { display: flex; flex-direction: column; font-size: 13px; line-height: 1.3; color: var(--svc-text); }
	.svc-hero__benefit-text strong { font-size: 14px; font-weight: 600; }
}

/* Второй экран расшифровки: каталог популярных анализов. */
@media (min-width: 992px) {
	.analizy-landing.svc + .svc { max-width: none; padding: 0 0 76px; background: #f8fbff; }
	.analizy-catalog-section { width: min(1560px, calc(100% - 80px)); margin: 0 auto; padding: 38px 0 36px; }
	.analizy-catalog-section__intro { display: flex; align-items: flex-end; justify-content: space-between; gap: 54px; margin: 0 4px 32px; }
	.analizy-catalog-section__intro h2 { max-width: 760px; margin: 0; color: #071537; font: 900 clamp(38px, 3.1vw, 70px)/.95 Inter, sans-serif; letter-spacing: -.062em; }
	.analizy-catalog-section__intro h2 em { color: #0874f9; font-style: normal; }
	.analizy-catalog-section__intro p { min-width: 420px; margin: 0 0 4px; color: #7180ac; font: 400 18px/1.38 Inter, sans-serif; letter-spacing: -.03em; }
	.analizy-catalog-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
	.analizy-catalog-card { position: relative; display: flex; flex-direction: column; min-height: 210px; padding: 26px 28px; overflow: hidden; isolation: isolate; border: 1px solid rgba(255,255,255,.86); border-radius: 23px; color: #08163b; background: rgba(255,255,255,.9); box-shadow: 0 13px 26px rgba(42,79,142,.06), inset 0 1px 0 #fff; transition: transform .2s ease, box-shadow .2s ease; }
	.analizy-catalog-card::before { content: ''; position: absolute; z-index: -2; right: -49px; top: 40px; width: 137px; height: 137px; border-radius: 50%; background: radial-gradient(circle at 38% 36%, rgba(225,239,255,.82), rgba(231,242,255,.28) 52%, transparent 70%); }
	.analizy-catalog-card::after { content: ''; position: absolute; z-index: -1; right: -114px; top: 19px; width: 89%; height: calc(79% - 8px); background-image: var(--analysis-illustration); background-repeat: no-repeat; background-position: center; background-size: contain; transition: opacity .2s ease, transform .2s ease; }
	.analizy-catalog-card:hover::after { transform: scale(1.025); }
	.analizy-catalog-card:hover { color: #08163b; transform: translateY(-4px); box-shadow: 0 19px 34px rgba(42,79,142,.13), inset 0 1px 0 #fff; }
	.analizy-catalog-card strong { position: relative; z-index: 1; display: block; font: 700 22px/1.22 Inter, sans-serif; letter-spacing: -.062em; }
	.analizy-catalog-card span { position: relative; z-index: 1; display: block; margin-top: 8px; color: #7482ad; font: 400 16px/1.35 Inter, sans-serif; letter-spacing: -.025em; }
	/* Стрелка — SVG с анимацией сдвига при наведении вместо статичного
	   символа "→" (был плоский текстовый глиф, немасштабируемый и без
	   намёка на интерактивность). */
	.analizy-catalog-card b { position: relative; z-index: 1; display: grid; width: 40px; height: 40px; margin-top: auto; place-items: center; border-radius: 999px; color: #0874f9; background: #eaf2ff; overflow: hidden; transition: background-color .2s ease, transform .2s ease; }
	.analizy-catalog-card b svg { transition: transform .25s cubic-bezier(.34,1.4,.64,1); }
	.analizy-catalog-card:hover b { background: #0874f9; color: #fff; transform: scale(1.06); }
	.analizy-catalog-card:hover b svg { transform: translateX(3px); }
	.analizy-catalog-card--1 { --analysis-illustration: url('../image/analizy-card-blood-v5.png'); }
	.analizy-catalog-card--2 { --analysis-illustration: url('../image/analizy-card-biochemistry-v5.png'); }
	.analizy-catalog-card--3 { --analysis-illustration: url('../image/analizy-card-urine-v3.png'); }
	.analizy-catalog-card--4 { --analysis-illustration: url('../image/analizy-card-vitamin-d-v3.png'); }
	.analizy-catalog-card--5 { --analysis-illustration: url('../image/analizy-card-ferritin-v3.png'); }
	.analizy-catalog-card--6 { --analysis-illustration: url('../image/analizy-card-thyroid-v3.png'); }
	.analizy-catalog-card--7 { --analysis-illustration: url('../image/analizy-card-cholesterol-v3.png'); }
	.analizy-catalog-card--8 { --analysis-illustration: url('../image/analizy-card-glucose-v3.png'); }
	.analizy-catalog-all { position: relative; display: flex; align-items: center; gap: 26px; min-height: 138px; margin-top: 24px; padding: 22px 32px 22px 365px; overflow: hidden; border: 1px solid rgba(175,204,247,.5); border-radius: 23px; color: #0b193d; background: #e9f3ff url('../image/analizy-catalog-cta-bg-v1.png') center / cover no-repeat; }
	.analizy-catalog-all::before, .analizy-catalog-all::after { content: ''; position: absolute; width: 580px; height: 230px; border: 1px solid rgba(255,255,255,.75); border-radius: 50%; transform: rotate(-22deg); }
	.analizy-catalog-all::before { right: 260px; top: -145px; }
	.analizy-catalog-all::after { right: -85px; bottom: -166px; }
	.analizy-catalog-all > span { position: relative; z-index: 1; display: grid; gap: 7px; }
	.analizy-catalog-all strong { font: 700 31px/1 Inter, sans-serif; letter-spacing: -.05em; }
	.analizy-catalog-all small { color: #7584b0; font: 400 21px/1.25 Inter, sans-serif; letter-spacing: -.03em; }
	.analizy-catalog-all > b { position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: center; gap: 21px; min-width: 362px; height: 68px; margin-left: auto; border-radius: 13px; color: #fff; background: #0874f9; box-shadow: 0 14px 26px rgba(8,116,249,.22); font: 500 20px/1 Inter, sans-serif; transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease; }
	.analizy-catalog-all > b svg { flex: 0 0 auto; transition: transform .25s cubic-bezier(.34,1.4,.64,1); }
	.analizy-catalog-all:hover > b { background: #0665dd; transform: translateY(-2px); box-shadow: 0 18px 32px rgba(8,116,249,.3); }
	.analizy-catalog-all:hover > b svg { transform: translateX(4px); }
}

/* Третий экран расшифровки: частые вопросы. */
@media (min-width: 992px) {
	.analizy-faq-showcase { position: relative; width: min(1560px, calc(100% - 80px)); margin: 0 auto; padding: 72px 0 34px; }
	.analizy-faq-showcase__intro { position: relative; display: flex; align-items: flex-end; justify-content: space-between; min-height: 170px; margin: 0 4px 32px; overflow: visible; }
	.analizy-faq-showcase__eyebrow { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 25px; padding: 8px 15px; border-radius: 999px; color: #0874f9; background: #e8f1ff; font: 500 16px/20px Inter, sans-serif; }
	.analizy-faq-showcase__eyebrow i { width: 10px; height: 10px; border-radius: 50%; background: #0874f9; }
	.analizy-faq-showcase__intro h2 { margin: 0; color: #071537; font: 900 clamp(48px,4.1vw,70px)/.95 Inter,sans-serif; letter-spacing: -.065em; }
	.analizy-faq-showcase__intro h2 em, .analizy-faq-showcase__all em { color: #0874f9; font-style: normal; }
	.analizy-faq-showcase__intro p { z-index: 1; min-width: 510px; margin: 0 205px 5px 0; color: #7180ac; font: 400 22px/1.36 Inter,sans-serif; letter-spacing: -.03em; }
	.analizy-faq-showcase__intro img { position: absolute; right: -8px; top: -47px; width: 320px; height: 245px; object-fit: contain; }
	.analizy-faq-showcase__grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
	.analizy-faq-topic { min-height: 425px; padding: 24px 18px 18px; border: 1px solid rgba(255,255,255,.88); border-radius: 23px; background: rgba(255,255,255,.9); box-shadow: 0 13px 26px rgba(42,79,142,.06), inset 0 1px 0 #fff; }
	.analizy-faq-topic header { display: flex; align-items: center; gap: 22px; min-height: 118px; margin: 0 10px 16px; }
	.analizy-faq-topic header > span { width: 108px; height: 108px; flex: 0 0 108px; border-radius: 20px; background: #edf5ff center / 165% no-repeat; }
	.analizy-faq-topic--vitamin header > span { background-image: url('../image/analizy-card-vitamin-d-v2.png'); }
	.analizy-faq-topic--ferritin header > span { background-image: url('../image/analizy-card-ferritin-v2.png'); }
	.analizy-faq-topic--thyroid header > span { background-image: url('../image/analizy-card-thyroid-v2.png'); }
	.analizy-faq-topic h3 { margin: 0 0 6px; color: #091638; font: 700 25px/1 Inter,sans-serif; letter-spacing: -.045em; }
	.analizy-faq-topic p { margin: 0; color: #7482ad; font: 400 17px/1.34 Inter,sans-serif; letter-spacing: -.025em; }
	.analizy-faq-topic > a { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 76px; margin-top: 10px; padding: 13px 23px; border: 1px solid #e5edf9; border-radius: 17px; color: #172449; background: rgba(255,255,255,.65); font: 400 18px/1.28 Inter,sans-serif; letter-spacing: -.025em; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
	.analizy-faq-topic > a:hover { border-color: #bed7ff; box-shadow: 0 8px 18px rgba(57,95,156,.08); color: #172449; transform: translateX(2px); }
	.analizy-faq-topic > a b { color: #172449; font: 400 34px/1 Arial,sans-serif; }
	.analizy-faq-showcase__all { position: relative; display: flex; align-items: center; gap: 25px; min-height: 135px; margin-top: 22px; padding: 22px 26px 22px 318px; overflow: hidden; border: 1px solid rgba(175,204,247,.48); border-radius: 22px; color: #091638; background: #e9f3ff url('../image/analizy-catalog-cta-bg-v1.png') center / cover no-repeat; }
	.analizy-faq-showcase__all > span { position: relative; z-index: 1; display: grid; gap: 7px; }
	.analizy-faq-showcase__all strong { font: 700 31px/1 Inter,sans-serif; letter-spacing: -.05em; }
	.analizy-faq-showcase__all small { color: #7482ad; font: 400 19px/1.25 Inter,sans-serif; letter-spacing: -.03em; }
	.analizy-faq-showcase__all > b { position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: center; gap: 20px; min-width: 242px; height: 68px; margin-left: auto; border-radius: 13px; color: #fff; background: #0874f9; box-shadow: 0 14px 26px rgba(8,116,249,.22); font: 500 20px/1 Inter,sans-serif; }
	.analizy-faq-showcase__all > b i { font-size: 29px; font-style: normal; }
}

/* Четвёртый экран расшифровки: живые обсуждения. */
@media (min-width: 992px) {
	.analizy-discussions { width: min(1610px, calc(100% - 80px)); margin: 0 auto; padding: 68px 0 18px; }
	.analizy-discussions__intro { display: grid; grid-template-columns: 1.08fr .97fr auto; align-items: end; gap: 48px; margin: 0 34px 33px; }
	.analizy-discussions__eyebrow { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 25px; padding: 8px 15px; border-radius: 999px; color: #0874f9; background: #e8f1ff; font: 500 16px/20px Inter,sans-serif; }
	.analizy-discussions__eyebrow i { width: 10px; height: 10px; border-radius: 50%; background: #0874f9; }
	.analizy-discussions__intro h2 { margin: 0; color: #071537; font: 900 clamp(48px,4.05vw,70px)/.94 Inter,sans-serif; letter-spacing: -.07em; }
	.analizy-discussions__intro h2 em { color: #0874f9; font-style: normal; }
	.analizy-discussions__intro > p { margin: 0 0 3px; color: #7180ac; font: 400 22px/1.34 Inter,sans-serif; letter-spacing: -.035em; }
	.analizy-discussions__intro > a { display: inline-flex; align-items: center; justify-content: center; gap: 23px; width: 266px; height: 68px; margin-bottom: 1px; border: 1px solid #cce0ff; border-radius: 13px; color: #0874f9; background: rgba(255,255,255,.48); font: 500 19px/1 Inter,sans-serif; transition: background .2s ease,transform .2s ease; }
	.analizy-discussions__intro > a b { font: 400 28px/1 Arial,sans-serif; }
	.analizy-discussions__intro > a:hover { background: #fff; transform: translateY(-2px); }
	.analizy-discussions__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
	.analizy-discussion-card { position: relative; display: flex; align-items: center; min-height: 152px; padding: 24px 72px 22px 24px; overflow: hidden; border: 1px solid rgba(220,231,248,.88); border-radius: 22px; color: #091638; background: rgba(255,255,255,.87); box-shadow: 0 12px 24px rgba(42,79,142,.045), inset 0 1px 0 #fff; transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
	.analizy-discussion-card:hover { border-color: #c4dcff; box-shadow: 0 17px 30px rgba(42,79,142,.09); transform: translateY(-2px); }
	.analizy-discussion-card__icon { display: grid; flex: 0 0 74px; place-items: center; width: 74px; height: 74px; margin-right: 26px; overflow: hidden; border-radius: 16px; color: #0874f9; background: linear-gradient(135deg,#edf5ff,#e6f0ff); }
	.analizy-discussion-card__icon svg { width: 43px; height: 43px; }
	.analizy-discussion-card__icon--letter { font: 600 35px/1 Inter,sans-serif; letter-spacing: -.06em; }
	.analizy-discussion-card__body { display: grid; min-width: 0; gap: 8px; }
	.analizy-discussion-card__body strong { overflow: hidden; color: #081438; font: 700 20px/1.15 Inter,sans-serif; letter-spacing: -.045em; text-overflow: ellipsis; white-space: nowrap; }
	.analizy-discussion-card__body small { overflow: hidden; color: #7180ac; font: 400 16px/1.25 Inter,sans-serif; letter-spacing: -.03em; text-overflow: ellipsis; white-space: nowrap; }
	.analizy-discussion-card__body i { display: inline-flex; align-items: center; gap: 8px; color: #7180ac; font: 400 16px/1 Inter,sans-serif; font-style: normal; letter-spacing: -.025em; }
	.analizy-discussion-card__body i svg { width: 23px; height: 23px; }
	.analizy-discussion-card__body i b { color: #a4afd0; font-weight: 400; }
	.analizy-discussion-card > em { position: absolute; right: 25px; bottom: 21px; display: grid; place-items: center; width: 41px; height: 41px; border-radius: 50%; color: #0874f9; background: #eaf2ff; font: 400 27px/1 Arial,sans-serif; font-style: normal; transition: transform .25s cubic-bezier(.34,1.4,.64,1); }
	.analizy-discussion-card:hover > em { transform: translateX(4px); }
	.analizy-discussions__cta { position: relative; display: flex; align-items: center; gap: 25px; min-height: 112px; margin-top: 16px; padding: 19px 26px 19px 330px; overflow: hidden; border: 1px solid rgba(175,204,247,.48); border-radius: 22px; color: #091638; background: #e9f3ff url('../image/analizy-catalog-cta-bg-v1.png') center / cover no-repeat; }
	.analizy-discussions__cta > img { position: absolute; z-index: 1; left: -5px; bottom: -92px; width: 350px; height: 260px; object-fit: contain; opacity: .72; }
	.analizy-discussions__cta > span { position: relative; z-index: 2; display: grid; gap: 7px; }
	.analizy-discussions__cta strong { font: 700 30px/1 Inter,sans-serif; letter-spacing: -.055em; }
	.analizy-discussions__cta small { color: #7482ad; font: 400 18px/1.2 Inter,sans-serif; letter-spacing: -.03em; }
	.analizy-discussions__cta > b { position: relative; z-index: 2; display: inline-flex; align-items: center; justify-content: center; gap: 22px; min-width: 262px; height: 60px; margin-left: auto; border-radius: 13px; color: #fff; background: #0874f9; box-shadow: 0 14px 26px rgba(8,116,249,.22); font: 500 18px/1 Inter,sans-serif; }
	.analizy-discussions__cta > b i { font: 400 28px/1 Arial,sans-serif; font-style: normal; }
}

/* Финальный призыв расшифровать анализ. */
@media (min-width: 992px) {
	.analizy-final-cta { position: relative; display: flex; width: min(2000px, calc(100% - 48px)); min-height: 635px; margin: 64px auto 36px; overflow: hidden; border: 1px solid rgba(220,232,250,.84); border-radius: 28px; background: radial-gradient(circle at 64% 55%,rgba(186,216,255,.8),transparent 27%), radial-gradient(circle at 86% 20%,rgba(200,220,255,.68),transparent 34%), linear-gradient(112deg,#fff 14%,#fafdff 48%,#dfedff 100%); box-shadow: 0 18px 40px rgba(54,92,150,.06), inset 0 1px 0 rgba(255,255,255,.9); }
	.analizy-final-cta::before, .analizy-final-cta::after { content: ''; position: absolute; z-index: 0; width: 1000px; height: 500px; border: 1px solid rgba(255,255,255,.75); border-radius: 50%; transform: rotate(-22deg); }
	.analizy-final-cta::before { right: -115px; top: -255px; }
	.analizy-final-cta::after { right: -180px; bottom: -250px; }
	.analizy-final-cta__copy { position: relative; z-index: 2; width: 52%; padding: 46px 0 35px clamp(56px,4.5vw,92px); }
	.analizy-final-cta__eyebrow { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 27px; padding: 8px 15px; border-radius: 999px; color: #1a2850; background: #eef4fd; font: 500 16px/20px Inter,sans-serif; }
	.analizy-final-cta__eyebrow i { width: 10px; height: 10px; border-radius: 50%; background: #0874f9; }
	.analizy-final-cta h2 { margin: 0; color: #061337; font: 900 clamp(55px,4.2vw,81px)/.94 Inter,sans-serif; letter-spacing: -.07em; }
	.analizy-final-cta h2 em { color: #0874f9; font-style: normal; }
	.analizy-final-cta__copy > p { margin: 25px 0 27px; color: #7180ac; font: 400 clamp(20px,1.45vw,28px)/1.24 Inter,sans-serif; letter-spacing: -.04em; }
	.analizy-final-cta__copy > a { display: inline-flex; align-items: center; justify-content: center; gap: 28px; min-width: 622px; height: 84px; border-radius: 13px; color: #fff; background: #0874f9; box-shadow: 0 15px 28px rgba(8,116,249,.22); font: 500 27px/1 Inter,sans-serif; transition: transform .2s ease,background .2s ease,box-shadow .2s ease; }
	.analizy-final-cta__copy > a:hover { background:#0665dd; box-shadow: 0 19px 34px rgba(8,116,249,.3); transform: translateY(-2px); }
	.analizy-final-cta__copy > a b { font: 400 38px/1 Arial,sans-serif; }
	.analizy-final-cta__benefits { display: flex; align-items: center; gap: 52px; margin-top: 37px; color: #7180ac; font: 400 17px/1.2 Inter,sans-serif; letter-spacing: -.025em; }
	.analizy-final-cta__benefits > span { display: flex; align-items: center; gap: 16px; white-space: nowrap; }
	.analizy-final-cta__benefits i { display: grid; flex: 0 0 62px; place-items: center; width: 62px; height: 62px; border-radius: 16px; color: #0874f9; background: rgba(234,242,255,.88); }
	.analizy-final-cta__benefits svg { width: 32px; height: 32px; }
	.analizy-final-cta__visual { position: absolute; z-index: 1; right: 4%; bottom: -6%; width: min(50vw,930px); height: 94%; object-fit: contain; object-position: center; filter: drop-shadow(0 23px 21px rgba(59,111,194,.14)); }
}

/* Объяснение принципов сервиса и безопасности данных. */
@media (min-width: 992px) {
	.analizy-trust { width: min(1615px, calc(100% - 80px)); margin: 0 auto; padding: 75px 0 36px; }
	.analizy-trust__intro { position: relative; min-height: 336px; padding: 3px 0 0 30px; overflow: hidden; }
	.analizy-trust__eyebrow { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 27px; padding: 8px 15px; border-radius: 999px; color: #1a2850; background: #eaf2ff; font: 500 16px/20px Inter,sans-serif; }
	.analizy-trust__eyebrow i { width: 10px; height: 10px; border-radius: 50%; background: #0874f9; }
	.analizy-trust h2 { position: relative; z-index: 2; margin: 0; color: #071537; font: 800 clamp(49px,4.15vw,72px)/.96 Inter,sans-serif; letter-spacing: -.07em; }
	.analizy-trust h2 em { color: #0874f9; font-style: normal; }
	.analizy-trust__intro p { position: relative; z-index: 2; margin: 22px 0 0; color: #7180ac; font: 400 22px/1.32 Inter,sans-serif; letter-spacing: -.035em; }
	.analizy-trust__intro > img { position: absolute; z-index: 1; right: -34px; top: -44px; width: min(54vw,900px); height: 430px; object-fit: contain; filter: drop-shadow(0 20px 22px rgba(59,111,194,.1)); }
	.analizy-trust__secure { position: absolute; z-index: 3; top: 4px; right: 5px; display: flex; align-items: center; gap: 15px; min-width: 250px; padding: 18px 25px; border: 1px solid rgba(255,255,255,.83); border-radius: 18px; color: #091638; background: rgba(246,250,255,.8); box-shadow: 0 10px 20px rgba(62,103,170,.06); font: 500 16px/1.25 Inter,sans-serif; }
	.analizy-trust__secure i { color: #0874f9; }
	.analizy-trust__secure svg { width: 36px; height: 36px; }
	.analizy-trust__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 13px; }
	.analizy-trust__grid article { min-height: 282px; padding: 24px 36px 22px; border: 1px solid rgba(255,255,255,.9); border-radius: 22px; background: rgba(255,255,255,.87); box-shadow: 0 12px 25px rgba(43,79,142,.05),inset 0 1px 0 #fff; }
	.analizy-trust__grid article > i { display: grid; place-items: center; width: 76px; height: 76px; margin-bottom: 17px; border-radius: 17px; color: #0874f9; background: linear-gradient(135deg,#eaf3ff,#e3efff); }
	.analizy-trust__grid article > i svg { width: 38px; height: 38px; }
	.analizy-trust__grid h3 { margin: 0 0 10px; color: #091538; font: 700 22px/1.15 Inter,sans-serif; letter-spacing: -.05em; }
	.analizy-trust__grid p { margin: 0; color: #7180ac; font: 400 19px/1.27 Inter,sans-serif; letter-spacing: -.035em; }
	.analizy-trust__notice { display: flex; align-items: center; gap: 25px; min-height: 121px; margin-top: 16px; padding: 20px 36px; border: 1px solid rgba(255,255,255,.88); border-radius: 22px; color: #091638; background: linear-gradient(104deg,rgba(255,243,243,.9),rgba(255,249,249,.84)); box-shadow: 0 11px 24px rgba(132,91,112,.045),inset 0 1px 0 #fff; }
	.analizy-trust__notice > i { display: grid; flex: 0 0 65px; place-items: center; width: 65px; height: 65px; border-radius: 50%; color: #f04c59; background: #ffe5e7; }
	.analizy-trust__notice > i svg { width: 36px; height: 36px; }
	.analizy-trust__notice strong { min-width: 680px; color: #0a1537; font: 700 25px/1.18 Inter,sans-serif; letter-spacing: -.055em; }
	.analizy-trust__notice span { padding-left: 40px; border-left: 1px solid #ffd7da; color: #7784ad; font: 400 17px/1.3 Inter,sans-serif; letter-spacing: -.025em; }
}

@media (min-width: 992px) and (max-width: 1399px) {
	.analizy-catalog-section { width: min(1180px, calc(100% - 40px)); }
	.analizy-catalog-section__intro h2 { font-size: 48px; }
	.analizy-catalog-section__intro p { min-width: 340px; font-size: 18px; }
	.analizy-catalog-card { min-height: 190px; padding: 22px; }
	.analizy-catalog-card strong { font-size: 19px; }
	.analizy-catalog-card span { font-size: 14px; }
	.analizy-catalog-all > b { min-width: 290px; font-size: 17px; }
}

@media (max-width: 991px) {
	.analizy-catalog-section { padding: 48px 16px; background: #f8fbff; }
	.analizy-catalog-section__intro h2 { margin: 14px 0; font-size: 31px; line-height: 1.02; letter-spacing: -.05em; }
	.analizy-catalog-section__intro h2 em { color: #0874f9; font-style: normal; }
	.analizy-catalog-section__intro p { color: #7180ac; }
	.analizy-catalog-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
	.analizy-catalog-card { display: flex; flex-direction: column; min-height: 180px; padding: 16px; overflow: hidden; border-radius: 18px; color: #08163b; background: #fff; }
	.analizy-catalog-card::before { right: 2px; top: 26px; width: 95px; height: 95px; }
	.analizy-catalog-card::after { right: -8px; top: 12px; width: 74%; height: calc(100% - 24px); opacity: .8; }
	.analizy-catalog-card strong { font-size: 17px; line-height: 1.2; }
	.analizy-catalog-card span { margin-top: 6px; color: #7482ad; font-size: 13px; }
	.analizy-catalog-card b { display: grid; place-items: center; width: 34px; height: 34px; margin-top: auto; border-radius: 99px; color: #0874f9; background: #eaf2ff; }
	.analizy-catalog-card b svg { width: 14px; height: 14px; }
	.analizy-catalog-all { display: grid; gap: 12px; margin-top: 14px; padding: 22px; border-radius: 18px; color: #08163b; background: #e1efff; }
	.analizy-catalog-all__icon { display: none; }
	.analizy-catalog-all strong, .analizy-catalog-all small { display: block; }
	.analizy-catalog-all strong { font-size: 23px; }
	.analizy-catalog-all small { color: #7180ac; }
	.analizy-catalog-all > b { display: inline-block; padding: 16px; border-radius: 12px; color: #fff; background: #0874f9; text-align: center; }
	.analizy-catalog-all > b svg { width: 18px; height: 18px; vertical-align: middle; margin-left: 6px; }
	.analizy-faq-showcase { padding: 46px 16px; background: #f8fbff; }
	.analizy-faq-showcase__eyebrow { display: inline-flex; padding: 7px 11px; border-radius: 99px; color: #0874f9; background: #e8f1ff; font-size: 13px; }
	.analizy-faq-showcase__eyebrow i { display: inline-block; width: 8px; height: 8px; margin-right: 6px; border-radius: 50%; background: #0874f9; }
	.analizy-faq-showcase__intro { position: relative; }
	.analizy-faq-showcase__intro h2 { margin: 14px 0; color: #071537; font-size: 32px; line-height: 1.02; letter-spacing: -.05em; }
	.analizy-faq-showcase__intro h2 em, .analizy-faq-showcase__all em { color: #0874f9; font-style: normal; }
	.analizy-faq-showcase__intro p { color: #7180ac; }
	.analizy-faq-showcase__intro img { display: none; }
	.analizy-faq-showcase__grid { display: grid; gap: 12px; }
	.analizy-faq-topic { padding: 16px; border-radius: 18px; background: #fff; }
	.analizy-faq-topic header { display: flex; align-items: center; gap: 13px; margin-bottom: 14px; }
	.analizy-faq-topic header > span { width: 64px; height: 64px; flex: 0 0 64px; border-radius: 14px; background: #edf5ff center / 165% no-repeat; }
	.analizy-faq-topic--vitamin header > span { background-image: url('../image/analizy-card-vitamin-d-v2.png'); }
	.analizy-faq-topic--ferritin header > span { background-image: url('../image/analizy-card-ferritin-v2.png'); }
	.analizy-faq-topic--thyroid header > span { background-image: url('../image/analizy-card-thyroid-v2.png'); }
	.analizy-faq-topic h3 { margin: 0 0 4px; color: #091638; font-size: 21px; }
	.analizy-faq-topic p { margin: 0; color: #7482ad; font-size: 14px; }
	.analizy-faq-topic > a { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 56px; margin-top: 8px; padding: 10px 13px; border: 1px solid #e5edf9; border-radius: 13px; color: #172449; font-size: 15px; }
	.analizy-faq-topic > a b { font-size: 27px; font-weight: 400; }
	.analizy-faq-showcase__all { display: grid; gap: 12px; margin-top: 14px; padding: 22px; border-radius: 18px; color: #08163b; background: #e1efff url('../image/analizy-catalog-cta-bg-v1.png') center / cover no-repeat; }
	.analizy-faq-showcase__all strong, .analizy-faq-showcase__all small { display: block; }
	.analizy-faq-showcase__all strong { font-size: 23px; }
	.analizy-faq-showcase__all small { color: #7180ac; }
	.analizy-faq-showcase__all > b { display: inline-block; padding: 16px; border-radius: 12px; color: #fff; background: #0874f9; text-align: center; }
	.analizy-discussions { padding: 46px 16px; background: #f8fbff; }
	.analizy-discussions__eyebrow { display: inline-flex; align-items: center; gap: 7px; padding: 7px 11px; border-radius: 99px; color: #0874f9; background: #e8f1ff; font-size: 13px; }
	.analizy-discussions__eyebrow i { width: 8px; height: 8px; border-radius: 50%; background: #0874f9; }
	.analizy-discussions__intro h2 { margin: 14px 0; color: #071537; font-size: 34px; line-height: 1.02; letter-spacing: -.06em; }
	.analizy-discussions__intro h2 em { color: #0874f9; font-style: normal; }
	.analizy-discussions__intro p { color: #7180ac; line-height: 1.35; }
	.analizy-discussions__intro > a { display: inline-flex; align-items: center; gap: 12px; margin: 12px 0 18px; color: #0874f9; font-weight: 600; }
	.analizy-discussions__intro > a b { font-size: 24px; font-weight: 400; }
	.analizy-discussions__grid { display: grid; gap: 12px; }
	.analizy-discussion-card { position: relative; display: flex; min-height: 126px; padding: 17px 45px 17px 16px; border: 1px solid #e0eafa; border-radius: 18px; color: #091638; background: #fff; }
	.analizy-discussion-card__icon { display: grid; flex: 0 0 52px; place-items: center; width: 52px; height: 52px; margin-right: 14px; border-radius: 13px; color: #0874f9; background: #eaf2ff; }
	.analizy-discussion-card__icon svg { width: 32px; height: 32px; }
	.analizy-discussion-card__icon--letter { font-size: 27px; }
	.analizy-discussion-card__body { min-width: 0; }
	.analizy-discussion-card__body strong { display: block; overflow: hidden; color: #081438; font-size: 16px; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
	.analizy-discussion-card__body small { display: block; overflow: hidden; margin: 6px 0; color: #7180ac; font-size: 13px; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
	.analizy-discussion-card__body i { display: inline-flex; align-items: center; gap: 5px; color: #7180ac; font-size: 13px; font-style: normal; }
	.analizy-discussion-card__body i svg { width: 17px; height: 17px; }
	.analizy-discussion-card__body i b { color: #a4afd0; font-weight: 400; }
	.analizy-discussion-card > em { position: absolute; right: 13px; bottom: 15px; color: #0874f9; font-size: 25px; font-style: normal; }
	.analizy-discussions__cta { position: relative; display: grid; gap: 12px; margin-top: 14px; padding: 22px; overflow: hidden; border-radius: 18px; color: #08163b; background: #e1efff url('../image/analizy-catalog-cta-bg-v1.png') center / cover no-repeat; }
	.analizy-discussions__cta > img { display: none; }
	.analizy-discussions__cta strong, .analizy-discussions__cta small { display: block; }
	.analizy-discussions__cta strong { font-size: 23px; }
	.analizy-discussions__cta small { color: #7180ac; }
	.analizy-discussions__cta > b { display: inline-block; padding: 16px; border-radius: 12px; color: #fff; background: #0874f9; text-align: center; }
	.analizy-final-cta { position: relative; margin: 24px 16px 28px; padding: 30px 22px 24px; overflow: hidden; border: 1px solid #e1ebfa; border-radius: 20px; background: linear-gradient(135deg,#fff,#e7f1ff); }
	.analizy-final-cta__copy { position: relative; z-index: 2; }
	.analizy-final-cta__eyebrow { display: inline-flex; align-items: center; gap: 7px; padding: 7px 11px; border-radius: 99px; color: #1a2850; background: #eef4fd; font-size: 13px; }
	.analizy-final-cta__eyebrow i { width: 8px; height: 8px; border-radius: 50%; background: #0874f9; }
	.analizy-final-cta h2 { margin: 14px 0; color: #071537; font-size: 39px; line-height: .98; letter-spacing: -.06em; }
	.analizy-final-cta h2 em { color: #0874f9; font-style: normal; }
	.analizy-final-cta__copy > p { color: #7180ac; font-size: 16px; line-height: 1.32; }
	.analizy-final-cta__copy > a { display: flex; align-items: center; justify-content: center; gap: 16px; width: 100%; margin-top: 20px; padding: 17px; border-radius: 12px; color: #fff; background: #0874f9; font-size: 16px; }
	.analizy-final-cta__copy > a b { font-size: 26px; font-weight: 400; }
	.analizy-final-cta__benefits { display: grid; gap: 10px; margin-top: 22px; color: #7180ac; font-size: 14px; }
	.analizy-final-cta__benefits > span { display: flex; align-items: center; gap: 11px; }
	.analizy-final-cta__benefits i { display: grid; place-items: center; width: 43px; height: 43px; border-radius: 12px; color: #0874f9; background: #eaf2ff; }
	.analizy-final-cta__benefits svg { width: 24px; height: 24px; }
	.analizy-final-cta__visual { display: none; }
	.analizy-trust { padding: 46px 16px; background: #f8fbff; }
	.analizy-trust__intro { position: relative; }
	.analizy-trust__eyebrow { display: inline-flex; align-items: center; gap: 7px; padding: 7px 11px; border-radius: 99px; color: #1a2850; background: #eaf2ff; font-size: 13px; }
	.analizy-trust__eyebrow i { width: 8px; height: 8px; border-radius: 50%; background: #0874f9; }
	.analizy-trust h2 { margin: 14px 0; color: #071537; font-size: 38px; line-height: .98; letter-spacing: -.06em; }
	.analizy-trust h2 em { color: #0874f9; font-style: normal; }
	.analizy-trust__intro p { color: #7180ac; font-size: 16px; line-height: 1.35; }
	.analizy-trust__intro > img { display: none; }
	.analizy-trust__secure { display: none; }
	.analizy-trust__grid { display: grid; gap: 12px; margin-top: 22px; }
	.analizy-trust__grid article { padding: 19px; border: 1px solid #e0eafa; border-radius: 18px; background: #fff; }
	.analizy-trust__grid article > i { display: grid; place-items: center; width: 55px; height: 55px; margin-bottom: 13px; border-radius: 14px; color: #0874f9; background: #eaf2ff; }
	.analizy-trust__grid article > i svg { width: 29px; height: 29px; }
	.analizy-trust__grid h3 { margin: 0 0 7px; color: #091538; font-size: 20px; }
	.analizy-trust__grid p { margin: 0; color: #7180ac; font-size: 16px; line-height: 1.3; }
	.analizy-trust__notice { display: grid; gap: 13px; margin-top: 14px; padding: 20px; border-radius: 18px; background: #fff5f5; }
	.analizy-trust__notice > i { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; color: #f04c59; background: #ffe5e7; }
	.analizy-trust__notice > i svg { width: 29px; height: 29px; }
	.analizy-trust__notice strong { color: #0a1537; font-size: 19px; line-height: 1.2; }
	.analizy-trust__notice span { color: #7784ad; font-size: 15px; line-height: 1.3; }
	.analizy-pricing { padding:46px 16px;background:#f8fbff; }
	.analizy-pricing__intro { position:relative; }
	.analizy-pricing__eyebrow { display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:99px;background:#eaf2ff;font-size:13px; }
	.analizy-pricing__eyebrow i { width:8px;height:8px;border-radius:50%;background:#0874f9; }
	.analizy-pricing__intro h2 { margin:14px 0;color:#071537;font-size:38px;line-height:1;letter-spacing:-.06em; }
	.analizy-pricing__intro h2 em { color:#0874f9;font-style:normal; }
	.analizy-pricing__intro p { color:#7180ac;font-size:16px;line-height:1.3; }
	.analizy-pricing__intro img { display:none; }
	.analizy-pricing__grid { display:grid;gap:13px;margin-top:22px; }
	.analizy-price-card { position:relative;padding:24px 20px;border:1px solid #e0eafa;border-radius:18px;background:#fff; }
	.analizy-price-card--featured { border-color:#80baff; }
	.analizy-price-card > span { display:inline-block;margin-bottom:13px;padding:6px 10px;border-radius:99px;color:#0874f9;background:#e6f1ff;font-size:12px;font-weight:600; }
	.analizy-price-card__icon { position:absolute;right:20px;top:20px;display:grid;place-items:center;width:54px;height:54px;border-radius:13px;color:#0874f9;background:#eaf3ff; }
	.analizy-price-card__icon svg { width:29px;height:29px; }
	.analizy-price-card--featured .analizy-price-card__icon { top:20px; }
	.analizy-price-card h3 { margin:0 0 7px;color:#091538;font-size:25px; }
	.analizy-price-card--featured h3 { margin-top:0; }
	.analizy-price-card p { margin:0;color:#7180ac;font-size:16px;line-height:1.25; }
	.analizy-price-card strong { display:block;margin:15px 0;color:#071537;font-size:35px; }
	.analizy-price-card strong small { color:#7180ac;font-size:15px;font-weight:400; }
	.analizy-price-card > a { display:flex;justify-content:center;gap:14px;margin:16px 0 20px;padding:15px;border-radius:12px;color:#0874f9;background:#eaf3ff;text-align:center; }
	.analizy-price-card--featured > a { color:#fff;background:#0874f9; }
	.analizy-price-card > a b { font-size:25px;font-weight:400; }
	.analizy-price-card ul { display:grid;gap:10px;margin:0;padding:0;list-style:none;font-size:14px;line-height:1.2; }
	.analizy-price-card li { position:relative;padding-left:27px; }
	.analizy-price-card li::before { content:'';position:absolute;left:0;width:18px;height:18px;border-radius:50%;background:#0874f9 radial-gradient(circle,#fff 0 3px,transparent 3.5px); }
	.analizy-price-card li.muted { color:#98a4c3; }
	.analizy-price-card li.muted::before { background:#c7ccd9; }
	.analizy-pricing__note { display:grid;gap:12px;margin-top:15px;padding:18px;border-radius:15px;color:#53648f;background:#eaf3ff;font-size:13px;line-height:1.3; }
	.analizy-pricing__note span { display:flex;align-items:flex-start;gap:9px; }
	.analizy-pricing__note i { display:grid;flex:0 0 23px;place-items:center;width:23px;height:23px;border-radius:50%;color:#fff;background:#0874f9;font-size:15px;font-style:normal; }
	.analizy-pricing__note svg { width:16px;height:16px; }
}

@media (min-width: 1200px) {
	.svc-hero__visual { width: 460px; height: 400px; top: -30px; right: -60px; }
}

/* ---------- Widget card ---------- */

.svc-widget-card {
	position: relative;
	background: var(--svc-surface);
	border: 1px solid var(--svc-border);
	border-radius: var(--svc-radius-lg);
	box-shadow: var(--svc-shadow-lg);
	padding: 28px;
	margin-bottom: 48px;
	overflow: hidden;
}

.svc-widget-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, var(--svc-accent), #7c3aed);
}

/* ---------- Upload card ("medical-upload" из макета ChatGPT) ----------
   Своей рамки/тени/фона у .medical-upload нет намеренно — карточка уже
   лежит внутри .svc-widget-card, который эту рамку и даёт. Здесь только
   внутренняя раскладка и цвета. */

.medical-upload { display: flex; flex-direction: column; }

.medical-upload__tabs { display: flex; gap: 12px; margin-bottom: 16px; flex-wrap: wrap; }

.medical-upload__tab {
	flex: 1 1 220px;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 16px;
	border: 1px solid transparent;
	border-radius: var(--svc-radius-sm);
	background: var(--svc-bg);
	color: var(--svc-text-secondary);
	cursor: pointer;
	text-align: left;
	transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

.medical-upload__tab:hover { border-color: var(--svc-border); }

.medical-upload__tab--active {
	border-color: var(--svc-accent-soft);
	background: var(--svc-surface);
	color: var(--svc-accent);
	box-shadow: var(--svc-shadow);
}

.medical-upload__tab-icon { width: 26px; height: 26px; flex: 0 0 26px; display: flex; align-items: center; justify-content: center; color: inherit; }
.medical-upload__tab-icon svg { display: block; }

.medical-upload__tab-content { display: flex; flex-direction: column; min-width: 0; }
.medical-upload__tab-title { font-size: 14px; font-weight: 600; color: var(--svc-text); white-space: nowrap; }
.medical-upload__tab-description { font-size: 12px; color: var(--svc-text-muted); white-space: nowrap; }

.medical-upload__dropzone {
	border: 2px dashed var(--svc-border);
	border-radius: var(--svc-radius);
	background: var(--svc-bg);
	padding: 32px 20px;
	text-align: center;
	cursor: pointer;
	transition: border-color .15s ease, background-color .15s ease;
}

.medical-upload__dropzone.dragover { border-color: var(--svc-accent); background: var(--svc-accent-soft); }

.medical-upload__dropzone-icon {
	width: 44px;
	height: 44px;
	margin: 0 auto 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--svc-accent-soft);
	color: var(--svc-accent);
}

.medical-upload__dropzone-title { font-size: 15px; font-weight: 600; color: var(--svc-text); margin-bottom: 4px; }
.medical-upload__dropzone-description { font-size: 13px; color: var(--svc-text-muted); }

.medical-upload__file-info { margin-top: 12px; font-size: 13px; color: var(--svc-text-secondary); text-align: center; }

.medical-upload__fields { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 20px; }
.medical-upload__field-label { display: block; font-size: 13px; color: var(--svc-text-secondary); margin: 0 0 6px; }

.medical-upload__submit {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	margin-top: 20px;
	padding: 15px 22px;
	border: none;
	border-radius: 999px;
	background: linear-gradient(90deg, #087dff 0%, #276ff5 45%, #7545ed 100%);
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0 10px 23px rgba(62, 100, 231, 0.24);
	transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
}

.medical-upload__submit:hover { text-decoration: none; color: #fff; }

.medical-upload__submit:hover:not(:disabled) {
	transform: translateY(-1px);
	filter: brightness(1.03);
	box-shadow: 0 13px 27px rgba(62, 100, 231, 0.28);
}

.medical-upload__submit:disabled { background: var(--svc-border); color: var(--svc-text-muted); cursor: not-allowed; box-shadow: none; }
.medical-upload__submit svg { flex: 0 0 auto; }

.medical-upload__security { display: flex; align-items: center; justify-content: center; gap: 7px; margin-top: 12px; color: var(--svc-text-muted); font-size: 12px; }
.medical-upload__security svg { flex: 0 0 auto; }

@media (max-width: 480px) {
	.medical-upload__fields { grid-template-columns: 1fr; }
	.medical-upload__tab { flex: 1 1 100%; }
}

/* ---------- Processing overlay ---------- */

.svc-loading-overlay {
	position: absolute;
	inset: 0;
	background: rgba(255, 255, 255, 0.82);
	backdrop-filter: blur(8px) saturate(160%);
	-webkit-backdrop-filter: blur(8px) saturate(160%);
	border-radius: var(--svc-radius-lg);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 20px;
	z-index: 5;
	text-align: center;
	padding: 20px;
	animation: svcFadeIn .25s ease;
}

/* Двухслойный градиентный спиннер вместо плоского серого кольца —
   мягче и современнее, без ощущения "загрузка сайта из 2015". */
.svc-spinner {
	position: relative;
	width: 48px;
	height: 48px;
}

.svc-spinner::before,
.svc-spinner::after {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 50%;
}

.svc-spinner::before {
	background: conic-gradient(from 0deg, transparent, var(--svc-accent));
	-webkit-mask: radial-gradient(closest-side, transparent calc(100% - 4px), #000 calc(100% - 4px));
	mask: radial-gradient(closest-side, transparent calc(100% - 4px), #000 calc(100% - 4px));
	animation: svc-spin .9s linear infinite;
}

.svc-spinner::after {
	inset: 14px;
	background: var(--svc-accent-soft);
	animation: svcPulse 1.6s ease-in-out infinite;
}

@keyframes svc-spin { to { transform: rotate(360deg); } }
@keyframes svcPulse { 0%, 100% { transform: scale(.85); opacity: .6; } 50% { transform: scale(1); opacity: 1; } }
@keyframes svcFadeIn { from { opacity: 0; } to { opacity: 1; } }

.svc-loading-text { font-size: 15px; font-weight: 500; color: var(--svc-text); transition: opacity .2s ease; }
.svc-loading-steps { display: flex; gap: 8px; }
.svc-loading-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--svc-border); transform: scale(1); transition: background-color .25s ease, transform .25s ease; }
.svc-loading-dot.active { background: var(--svc-accent); transform: scale(1.3); }

/* ---------- Toast (замена alert()) ---------- */

.svc-toast {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	background: var(--svc-surface);
	border: 1px solid var(--svc-border);
	border-left: 3px solid var(--svc-accent);
	border-radius: var(--svc-radius-sm);
	padding: 13px 16px;
	font-size: 14px;
	margin-bottom: 16px;
	box-shadow: var(--svc-shadow);
	animation: svc-toast-in .2s ease;
}

.svc-toast.error { border-left-color: #dc2626; }
.svc-toast.warning { border-left-color: #d97706; }

.svc-toast-close {
	background: transparent !important;
	background-image: none !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--svc-text-muted) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	width: auto !important;
	height: auto !important;
	min-width: 0 !important;
	cursor: pointer;
	padding: 0 !important;
	margin: 0 !important;
	flex-shrink: 0;
}

.svc-toast-close:hover { color: var(--svc-text); }

@keyframes svc-toast-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }

.svc .upload-area {
	border: 2px dashed var(--svc-border);
	border-radius: var(--svc-radius);
	background: var(--svc-bg);
	padding: 40px 20px;
	text-align: center;
	transition: border-color .15s ease, background-color .15s ease;
	cursor: pointer;
}

.svc .upload-area.dragover { border-color: var(--svc-accent); background: var(--svc-accent-soft); }

.svc .upload-image {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: var(--svc-accent-soft);
	color: var(--svc-accent);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	margin: 0 auto 16px;
}

.svc .upload-texttwo { font-size: 16px; font-weight: 600; margin-bottom: 4px; }
.svc .upload-hint { font-size: 13px; color: var(--svc-text-muted); margin-bottom: 16px; }

.svc .browse-btn,
.svc .decrypt-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, var(--svc-accent), var(--svc-accent-dark));
	color: #fff;
	border: none;
	border-radius: var(--svc-radius-sm);
	padding: 13px 22px;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	box-shadow: 0 4px 14px rgba(37, 99, 235, 0.22);
	transition: transform .15s ease, box-shadow .15s ease;
}

.svc .browse-btn:hover,
.svc .decrypt-button:hover:not(:disabled) { transform: translateY(-1px); box-shadow: 0 8px 20px rgba(37, 99, 235, 0.3); }

.svc .decrypt-button { width: 100%; margin-top: 18px; padding: 15px 22px; font-size: 16px; }
.svc .decrypt-button:disabled { background: var(--svc-border); color: var(--svc-text-muted); cursor: not-allowed; box-shadow: none; }

.svc .file-info { margin-top: 14px; font-size: 13px; color: var(--svc-text-secondary); }
.svc .file-name { font-weight: 600; color: var(--svc-text); }

.svc .gender-selector1 { margin-top: 20px; }

.svc .gender-options {
	display: flex;
	gap: 8px;
	background: var(--svc-bg);
	border: 1px solid var(--svc-border);
	border-radius: var(--svc-radius-sm);
	padding: 4px;
	/* В общем stylesheet.css .gender-options получает margin-right 10px/0px
	   из двух разных @media-блоков (≤500px и ≤992px) — на десктопе ни один
	   не действует, ниже — побеждает то один, то другой непредсказуемо.
	   Фиксируем здесь явно и без медиа-условий, чтобы не зависеть от этого. */
	margin-right: 0;
}

.svc .gender-option {
	flex: 1;
	text-align: center;
	padding: 10px 8px;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 500;
	color: var(--svc-text-secondary);
	cursor: pointer;
	transition: background-color .15s ease, color .15s ease;
}

.svc .gender-option.active { background: var(--svc-surface); color: var(--svc-text); box-shadow: 0 1px 3px rgba(15,23,42,.08); }

.svc .input-label { display: block; font-size: 13px; color: var(--svc-text-secondary); margin: 20px 0 6px; }
.svc .age-input { border: 1px solid var(--svc-border); border-radius: var(--svc-radius-sm); padding: 10px 14px; font-size: 15px; width: 100%; }

.svc .service-gate-note { font-size: 13px; color: var(--svc-text-secondary); text-align: center; margin-top: 12px; }

/* Баннер "бесплатная попытка уже использована" — тот же .svc-toast/.warning,
   что и остальные ошибки формы (см. showToast() в analizy.js), в той же
   позиции (верх виджета), просто статично отрендерен сервером, без JS и без
   кнопки закрытия. Кнопка ниже — обычная, без изменений в тексте/раскладке. */

/* Экран результата — без рамок: только мягкая заливка и акцентная полоса
   слева (вместо бордера по контуру), крупная читаемая типографика. */
.svc .decryption-result-section {
	position: relative;
	background: var(--svc-bg);
	border-radius: var(--svc-radius);
	padding: 24px 24px 24px 28px;
}

.svc .decryption-result-section::before {
	content: '';
	position: absolute;
	top: 14px;
	bottom: 14px;
	left: 0;
	width: 3px;
	border-radius: 3px;
	background: linear-gradient(180deg, var(--svc-accent), #7c3aed);
}

.svc .decryption-result-section p { font-size: 15px; line-height: 1.7; white-space: pre-line; margin: 0; }

.svc .service-auth-wall { background: var(--svc-surface); border-radius: var(--svc-radius); padding: 20px; margin-top: 16px; box-shadow: var(--svc-shadow); }
.svc .service-auth-wall p { font-weight: 600; margin-bottom: 14px; }

/* Текстовая ссылка вместо кнопки в рамке — меньше визуального шума на
   экране результата, где и так уже есть основной акцент (карточка). */
.svc #newAnalysisBtn { margin-top: 18px; background: transparent; border: 0; padding: 6px 0; font-size: 14px; font-weight: 600; color: var(--svc-accent); cursor: pointer; transition: opacity .15s ease; }
.svc #newAnalysisBtn:hover { opacity: .7; }

/* ---------- Плавный переход форма ↔ результат (вместо мгновенного
   display:none/block) — см. analizy.js, функция crossfade(). ---------- */
.svc-screen-out { animation: svcScreenOut .2s ease forwards; }
.svc-screen-in { animation: svcScreenIn .4s cubic-bezier(.16,1,.3,1); }

@keyframes svcScreenOut { to { opacity: 0; transform: translateY(8px) scale(.99); } }
@keyframes svcScreenIn { from { opacity: 0; transform: translateY(14px) scale(.99); } to { opacity: 1; transform: translateY(0) scale(1); } }

@media (prefers-reduced-motion: reduce) {
	.svc-screen-out, .svc-screen-in { animation: none; }
}

/* ---------- Steps ("как это работает") ---------- */

.svc-steps { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 0 0 56px; }

.svc-steps::before {
	content: '';
	position: absolute;
	top: 20px;
	left: calc(100% / 6);
	right: calc(100% / 6);
	height: 2px;
	background: linear-gradient(90deg, var(--svc-border), var(--svc-accent-soft) 50%, var(--svc-border));
	z-index: 0;
}

.svc-step { position: relative; z-index: 1; text-align: center; padding: 0 8px; transition: transform .2s ease; }

.svc-step-num {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--svc-accent), var(--svc-accent-dark));
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 16px;
	margin: 0 auto 14px;
	box-shadow: 0 6px 16px rgba(37, 99, 235, 0.28);
}

.svc-step h3 { font-size: 16px; font-weight: 600; margin: 0 0 6px; }
.svc-step p { font-size: 14px; color: var(--svc-text-secondary); margin: 0; line-height: 1.5; }

/* ---------- Section heading ---------- */

.svc-section-title { font-size: 24px; font-weight: 700; text-align: center; margin: 0 0 28px; letter-spacing: -0.01em; }

/* ---------- Reference table ---------- */

.svc-table-wrap { background: var(--svc-surface); border: 1px solid var(--svc-border); border-radius: var(--svc-radius-lg); overflow: hidden; margin-bottom: 56px; box-shadow: var(--svc-shadow); }

.svc-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.svc-table th { text-align: left; background: var(--svc-bg); color: var(--svc-text-secondary); font-weight: 600; font-size: 13px; padding: 12px 18px; }
.svc-table td { padding: 14px 18px; border-top: 1px solid var(--svc-border); vertical-align: top; }
.svc-table tr:nth-child(even) td { background: var(--svc-bg); }
.svc-table td:first-child { font-weight: 600; white-space: nowrap; }
.svc-table td:last-child { color: var(--svc-text-secondary); }

/* ---------- Pricing ---------- */

@media (min-width: 992px) {
	.analizy-pricing { position: relative; width: min(1615px,calc(100% - 80px)); margin: 0 auto; padding: 72px 0 34px; overflow: hidden; }
	.analizy-pricing__intro { position: relative; min-height: 197px; padding-left: 30px; }
	.analizy-pricing__eyebrow { display:inline-flex;align-items:center;gap:9px;margin-bottom:24px;padding:8px 15px;border-radius:99px;color:#18264a;background:#eaf2ff;font:500 16px/20px Inter,sans-serif; }
	.analizy-pricing__eyebrow i { width:10px;height:10px;border-radius:50%;background:#0874f9; }
	.analizy-pricing__intro h2 { position:relative;z-index:1;margin:0;color:#071537;font:800 clamp(48px,4.05vw,69px)/.96 Inter,sans-serif;letter-spacing:-.07em; }
	.analizy-pricing__intro h2 em { color:#0874f9;font-style:normal; }
	.analizy-pricing__intro p { position:relative;z-index:1;margin:17px 0 0;color:#7180ac;font:400 22px/1.3 Inter,sans-serif;letter-spacing:-.035em; }
	.analizy-pricing__intro img { position:absolute;right:48px;top:-53px;width:650px;height:310px;object-fit:contain;opacity:.83; }
	.analizy-pricing__grid { display:grid;grid-template-columns:repeat(3,1fr);gap:18px; }
	.analizy-price-card { position:relative;min-height:510px;padding:32px 34px 26px;border:1px solid rgba(255,255,255,.9);border-radius:22px;background:rgba(255,255,255,.9);box-shadow:0 14px 28px rgba(42,79,142,.055),inset 0 1px 0 #fff; }
	.analizy-price-card--featured { border:1.5px solid #80baff;background:linear-gradient(135deg,#fff,#f7fbff); }
	.analizy-price-card > span { position:absolute;top:15px;left:34px;padding:6px 12px;border-radius:99px;color:#0874f9;background:#e6f1ff;font:600 14px/1 Inter,sans-serif; }
	.analizy-price-card__icon { position:absolute;right:32px;top:32px;display:grid;place-items:center;width:70px;height:70px;border-radius:16px;color:#0874f9;background:#eaf3ff; }
	.analizy-price-card--featured .analizy-price-card__icon { top:40px; }
	.analizy-price-card__icon svg { width:37px;height:37px; }
	.analizy-price-card h3 { margin:0 0 8px;color:#091538;font:700 30px/1.1 Inter,sans-serif;letter-spacing:-.06em; }
	.analizy-price-card--featured h3 { margin-top:47px; }
	.analizy-price-card p { min-height:48px;margin:0;color:#7180ac;font:400 18px/1.25 Inter,sans-serif;letter-spacing:-.03em; }
	.analizy-price-card strong { display:block;margin:17px 0 22px;color:#071537;font:800 42px/1 Inter,sans-serif;letter-spacing:-.06em; }
	.analizy-price-card strong small { color:#7180ac;font:400 17px/1 Inter,sans-serif;letter-spacing:-.03em; }
	.analizy-price-card > a { display:flex;align-items:center;justify-content:center;gap:20px;height:62px;margin-bottom:25px;border-radius:13px;color:#0874f9;background:#eaf3ff;font:500 18px/1 Inter,sans-serif; }
	.analizy-price-card--featured > a { color:#fff;background:#0874f9;box-shadow:0 12px 24px rgba(8,116,249,.2); }
	.analizy-price-card > a b { font:400 28px/1 Arial,sans-serif; }
	.analizy-price-card ul { display:grid;gap:15px;margin:0;padding:0;list-style:none;color:#172449;font:400 16px/1.2 Inter,sans-serif;letter-spacing:-.025em; }
	.analizy-price-card li { position:relative;padding-left:32px; }
	.analizy-price-card li::before { content:'';position:absolute;left:0;top:-3px;width:20px;height:20px;border-radius:50%;background:#0874f9 radial-gradient(circle,#fff 0 3.5px,transparent 4px); }
	.analizy-price-card li.muted { color:#98a4c3; }
	.analizy-price-card li.muted::before { background:#c7ccd9; }
	.analizy-pricing__note { display:grid;grid-template-columns:1.2fr .85fr;align-items:center;min-height:67px;margin-top:18px;padding:0 34px;border-radius:17px;color:#53648f;background:#eaf3ff;font:400 15px/1.25 Inter,sans-serif; }
	.analizy-pricing__note span { display:flex;align-items:center;gap:14px; }
	.analizy-pricing__note span + span { padding-left:55px;border-left:1px solid #bed9ff; }
	.analizy-pricing__note i { display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#fff;background:#0874f9;font:700 18px/1 Arial,sans-serif;font-style:normal; }
	.analizy-pricing__note svg { width:19px;height:19px; }
}

.svc-plans { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 56px; }

.svc-plan-card {
	background: var(--svc-surface);
	border: 1px solid var(--svc-border);
	border-radius: var(--svc-radius-lg);
	padding: 26px 22px;
	text-align: center;
	position: relative;
	transition: transform .2s ease, box-shadow .2s ease;
}

.svc-plan-card:hover { transform: translateY(-4px); box-shadow: var(--svc-shadow-lg); }

.svc-plan-card.featured { border: 2px solid var(--svc-accent); box-shadow: var(--svc-shadow-lg); }

.svc-plan-badge { position: absolute; top: -12px; left: 50%; transform: translateX(-50%); background: var(--svc-accent); color: #fff; font-size: 12px; font-weight: 600; padding: 4px 12px; border-radius: 999px; white-space: nowrap; }

.svc-plan-name { font-size: 15px; font-weight: 600; color: var(--svc-text-secondary); margin-bottom: 10px; }
.svc-plan-price { font-size: 30px; font-weight: 700; letter-spacing: -0.01em; margin-bottom: 4px; }
.svc-plan-price span { font-size: 14px; font-weight: 500; color: var(--svc-text-muted); }
.svc-plan-desc { font-size: 13px; color: var(--svc-text-secondary); margin-top: 10px; line-height: 1.5; }

/* ---------- FAQ ---------- */

.svc-faq { margin-bottom: 24px; }

.svc-faq-item {
	background: var(--svc-surface);
	border: 1px solid var(--svc-border);
	border-radius: var(--svc-radius);
	margin-bottom: 10px;
	overflow: hidden;
	transition: border-color .15s ease;
}

.svc-faq-item:hover { border-color: var(--svc-accent); }

.svc-faq-item summary {
	list-style: none;
	cursor: pointer;
	padding: 16px 20px;
	font-size: 15px;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.svc-faq-item summary::-webkit-details-marker { display: none; }
.svc-faq-item summary::after { content: '+'; font-size: 20px; font-weight: 400; color: var(--svc-text-muted); flex-shrink: 0; transition: transform .15s ease; }
.svc-faq-item[open] summary::after { transform: rotate(45deg); }
.svc-faq-item p { font-size: 14px; color: var(--svc-text-secondary); line-height: 1.6; padding: 0 20px 18px; margin: 0; }

.svc-intro { text-align: center; color: var(--svc-text-secondary); font-size: 15px; line-height: 1.6; margin: -8px 0 32px; }

/* ---------- Related landings (hub ↔ кластеры) ---------- */

.svc-related { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; margin-bottom: 24px; }

.svc-related-link {
	display: block;
	background: var(--svc-surface);
	border: 1px solid var(--svc-border);
	border-radius: var(--svc-radius);
	padding: 16px 18px;
	font-size: 14px;
	font-weight: 600;
	color: var(--svc-text);
	text-decoration: none;
	transition: border-color .15s ease, box-shadow .15s ease;
}

.svc-related-link:hover { border-color: var(--svc-accent); box-shadow: var(--svc-shadow); color: var(--svc-text); text-decoration: none; }

.svc-related-tag {
	display: block;
	font-size: 13px;
	font-weight: 600;
	text-transform: none;
	letter-spacing: 0;
	color: var(--svc-accent);
	margin-bottom: 4px;
}

/* ---------- Универсальные смысловые блоки лендинга ---------- */

.svc-block { margin-bottom: 40px; }
.svc-block p { font-size: 15px; color: var(--svc-text-secondary); line-height: 1.7; margin: 0 0 14px; }
.svc-block p:last-child { margin-bottom: 0; }
.svc-block h3 { font-size: 16px; font-weight: 600; margin: 20px 0 8px; }

.svc-block ul, .svc-block ol { margin: 0 0 14px; padding-left: 0; list-style: none; }
.svc-block li { position: relative; padding-left: 26px; margin-bottom: 10px; font-size: 15px; color: var(--svc-text-secondary); line-height: 1.6; }
.svc-block ul li::before { content: ''; position: absolute; left: 3px; top: .62em; width: 8px; height: 8px; border-radius: 50%; background: var(--svc-accent); }
.svc-block ol { counter-reset: svc-ol; }
.svc-block ol li { counter-increment: svc-ol; }
.svc-block ol li::before { content: counter(svc-ol) '.'; position: absolute; left: 0; top: 0; color: var(--svc-accent); font-weight: 700; }

.svc-block-example {
	background: var(--svc-accent-soft);
	border-left: 3px solid var(--svc-accent);
	border-radius: var(--svc-radius);
	padding: 20px 24px;
}

.svc-block-example .svc-section-title { text-align: left; margin-bottom: 12px; }
.svc-block-example p { color: var(--svc-text); }

.svc-block-formula {
	background: var(--svc-bg);
	border: 1px solid var(--svc-border);
	border-radius: var(--svc-radius);
	padding: 20px 24px;
}

.svc-block-formula code, .svc-block-formula pre {
	display: block;
	background: var(--svc-surface);
	border: 1px solid var(--svc-border);
	border-radius: var(--svc-radius-sm);
	padding: 12px 16px;
	font-family: 'SFMono-Regular', Consolas, monospace;
	font-size: 14px;
	color: var(--svc-text);
	overflow-x: auto;
	margin: 10px 0;
}

/* ---------- Scroll-reveal (лёгкая анимация появления секций) ---------- */

.svc-reveal { opacity: 0; transform: translateY(16px); transition: opacity .5s ease, transform .5s ease; }
.svc-reveal.is-visible { opacity: 1; transform: none; }

/* Лёгкий сдвиг задержки для карточек в сетках — появляются не разом,
   а волной слева направо (эффект подсмотрен на merch.sitespro.ru). */
.analizy-catalog-grid .svc-reveal:nth-child(1) { transition-delay: 0s; }
.analizy-catalog-grid .svc-reveal:nth-child(2) { transition-delay: .05s; }
.analizy-catalog-grid .svc-reveal:nth-child(3) { transition-delay: .1s; }
.analizy-catalog-grid .svc-reveal:nth-child(4) { transition-delay: .15s; }
.analizy-catalog-grid .svc-reveal:nth-child(5) { transition-delay: .2s; }
.analizy-catalog-grid .svc-reveal:nth-child(6) { transition-delay: .25s; }
.analizy-catalog-grid .svc-reveal:nth-child(7) { transition-delay: .3s; }
.analizy-catalog-grid .svc-reveal:nth-child(8) { transition-delay: .35s; }
.analizy-faq-showcase__grid .svc-reveal:nth-child(1) { transition-delay: 0s; }
.analizy-faq-showcase__grid .svc-reveal:nth-child(2) { transition-delay: .08s; }
.analizy-faq-showcase__grid .svc-reveal:nth-child(3) { transition-delay: .16s; }
.analizy-discussions__grid .svc-reveal:nth-child(1) { transition-delay: 0s; }
.analizy-discussions__grid .svc-reveal:nth-child(2) { transition-delay: .05s; }
.analizy-discussions__grid .svc-reveal:nth-child(3) { transition-delay: .1s; }
.analizy-discussions__grid .svc-reveal:nth-child(4) { transition-delay: .15s; }
.analizy-discussions__grid .svc-reveal:nth-child(5) { transition-delay: .2s; }
.analizy-discussions__grid .svc-reveal:nth-child(6) { transition-delay: .25s; }

@media (prefers-reduced-motion: reduce) {
	.svc-reveal { opacity: 1; transform: none; transition: none; }
}

/* ---------- Тонкий eyebrow-лейбл (альтернатива плашке) ---------- */

.svc-eyebrow-line {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 16px;
	color: #0874f9;
	font: 600 15px/1.25 Inter, sans-serif;
	letter-spacing: 0;
	text-transform: none;
}
.svc-eyebrow-line::before { display: none; }
/* прежняя декоративная линия слева убрана */


/* ---------- Responsive ---------- */

@media (max-width: 720px) {
	.svc { padding: 0 16px 40px; }
	.svc-hero h1 { font-size: 26px; }
	.svc-hero::before { width: 100%; height: 200px; top: -40px; }
	.svc-widget-card { padding: 18px; border-radius: var(--svc-radius); }
	.svc-steps { grid-template-columns: 1fr; gap: 24px; }
	.svc-steps::before { display: none; }
	.svc-plans { grid-template-columns: 1fr; }
	.svc-plan-card:hover { transform: none; }
	.svc-section-title { font-size: 20px; }
	.svc-table-wrap { overflow-x: auto; }
}

/* Первый экран расшифровки: фотография — отдельный фон, форма остаётся HTML. */
@media (min-width: 992px) {
	.service-landing-hero-shell { background: #f8fbff; }
	.service-landing-hero-shell.analizy-hero-bg { background: #f8fbff url('../image/analizy-hero-lab-v1.png') center top no-repeat; }
	/* свой фон сервиса: файл image/service-hero-<код>.webp того же размера (1774×887), правило ниже перекрывает общий фон анализов */
	.service-landing-hero-shell.hero-bg--peresylka { background: #f8fbff url('../image/service-hero-peresylka.webp') center top no-repeat; }
	.service-landing-hero-shell #verh1 { position: relative; z-index: 5; background: transparent; border: 0; }
	.service-landing-hero-shell #verh1 .container { width: 100%; max-width: 1380px; margin: 0 auto; }
	.service-landing-hero-shell #headrow { display: flex; align-items: center; padding-top: 12px; }
	.service-landing-hero-shell #headrow > .col-md-2 { width: auto; flex: 0 0 auto; max-width: none; }
	.service-landing-hero-shell #headrow > .col-md-6 { width: auto; flex: 1 1 auto; }
	.service-landing-hero-shell #headrow > .col-md-4 { width: auto; flex: 0 0 auto; padding-left: 0; }
	.service-landing-hero-shell #logo { display: flex; align-items: center; text-align: left; margin: 0; padding-top: 0 !important; }
	.service-landing-hero-shell #logo img { max-width: 128px; }

	/* Дескриптор рядом с лого — только в основной (не sticky) шапке, чтобы
	   компактная sticky-версия оставалась лаконичной. */
	.service-landing-hero-shell #verh1 .service-tagline {
		margin-left: 16px;
		padding-left: 16px;
		border-left: 1px solid rgba(80,109,163,.2);
		color: #7684b4;
		font: 200 12px/1.3 Inter, sans-serif;
		letter-spacing: -.005em;
		max-width: 150px;
	}

	.service-landing-hero-shell #verh1 .navbar-nav { gap: 28px; }
	.service-landing-hero-shell #verh1 .navbar-nav > li > a { padding: 12px 0; color: #45517a; font: 500 16px/24px Inter, sans-serif; }
	.service-landing-hero-shell .zakzv2 { float: none; }
	.service-landing-hero-shell .zakzv2 ul { gap: 14px; align-items: center; margin-top: 0; }
	.service-landing-hero-shell .zakzv2 ul li:first-child { display: block; }
	.service-landing-hero-shell .zakzv2 ul li:first-child a.bbox1 { display: inline-flex; align-items: center; gap: 9px; padding: 11px 14px; border: 1px solid rgba(80, 109, 163, .16); border-radius: 10px; color: #304266; background: rgba(255,255,255,.48); box-shadow: inset 0 1px 0 rgba(255,255,255,.8); font: 600 12px/18px Inter, sans-serif; letter-spacing: .06em; text-transform: uppercase; transition: background .18s ease, border-color .18s ease, transform .18s ease; }
	.service-landing-hero-shell .zakzv2 ul li:first-child a.bbox1::after { content: ''; width: 6px; height: 6px; margin: -3px 0 0 1px; border-right: 1.5px solid #7483a5; border-bottom: 1.5px solid #7483a5; transform: rotate(45deg); }
	.service-landing-hero-shell .zakzv2 ul li:first-child a.bbox1:hover { border-color: rgba(8,116,249,.35); background: rgba(255,255,255,.8); transform: translateY(-1px); }
	.service-landing-hero-shell a.bbox2 { width: auto; margin: 0; padding: 12px 26px; border-radius: 10px; background: #0874f9; font: 500 15px/20px Inter, sans-serif; }
	.service-landing-hero-shell .zakzv2 .service-register a { background: #0874f9; }
	.service-landing-hero-shell .zakzv2 li:not(.service-register) a.bbox2 { color: #26375f !important; background: rgba(255,255,255,.76); box-shadow: none; }
	.analizy-landing.svc { max-width: none; min-height: 810px; margin: 0; padding: 0; overflow: hidden; background: transparent; }
	.analizy-landing .svc-hero { max-width: none; min-height: 810px; margin: 0; padding: 0px max(6vw, calc((100vw - 1570px) / 2)) 54px; text-align: left; overflow: hidden; isolation: isolate; }
	.analizy-landing .svc-hero::before { display: none; }
	.analizy-landing .svc-hero__inner { width: 830px; max-width: 52%; margin: 0; }
	.analizy-landing .svc-hero h1 { max-width: 680px; margin: 30px 0 18px; color: #071537; font-size: clamp(54px,4.5vw,82px); line-height: .94; letter-spacing: -.07em; font-weight: 900; }
	.analizy-landing .svc-hero h1 span { color: #0874f9; }
	.analizy-landing .svc-hero__subtitle { width: 580px; max-width: 100%; margin: 0; color: #7583b2; font-size: 24px; line-height: 1.28; letter-spacing: -.025em; }
	.analizy-landing .svc-widget-card { width: 830px; max-width: 100%; margin: 30px 0 28px; padding: 24px; overflow: visible; border: 1px solid rgba(255,255,255,.9); border-radius: 28px; background: rgba(255,255,255,.90); box-shadow: 0 18px 38px rgba(56,95,165,.12); }
	.analizy-landing .svc-widget-card::before { display: none; }
	.analizy-landing .medical-upload { display: grid; grid-template-columns: 1.05fr 1.12fr; grid-template-rows: 58px 58px 40px 68px; gap: 10px 24px; height: 100%; }
	.analizy-landing .medical-upload__tabs { display: contents; }
	.analizy-landing .medical-upload__tab { display: none; }
	.analizy-landing .medical-upload__tab-icon { color: #7684b4; }
	.analizy-landing .medical-upload__tab-title { color: #7684b4; font-size: 17px; font-weight: 500; }
	.analizy-landing .medical-upload__tab-description { display: none; }
	.analizy-landing .medical-upload__dropzone { grid-column: 1; grid-row: 1 / 5; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 12px; border: 1px dashed #aacaff; border-radius: 15px; background: rgba(251,253,255,.7); }
	.analizy-landing .medical-upload__dropzone-icon { width: 70px; height: 70px; margin: 0 0 9px; border-radius: 18px; background: #e5efff; }
	.analizy-landing .medical-upload__dropzone-icon svg { width: 36px; height: 34px; }
	.analizy-landing .medical-upload__dropzone-title { font-size: 17px; }
	.analizy-landing .medical-upload__dropzone-description { max-width: 260px; color: #7280af; font-size: 15px; line-height: 1.35; text-align: center; }
	.analizy-landing .medical-upload__fields { display: contents; }
	.analizy-landing .gender-selector1 { display: block; grid-column: 2; grid-row: 1; margin-top: 0; }
	/* Раньше здесь была имитация поля-селекта (рамка + статичная подпись
	   "Пол" + шеврон), а сами кнопки были невидимы (font-size:0, transparent
	   !important) — клик работал, но выбор никак не было видно ("Пол не
	   выбирается", баг найден 2026-09-30). Делаем переключатель видимым:
	   те же 58px и рамка, что у поля возраста рядом, но кнопки читаемые. */
	.analizy-landing .gender-options { height: 58px; padding: 4px; border: 1px solid #dce4f6; border-radius: 15px; background: rgba(255,255,255,.72); }
	.analizy-landing .gender-option { border-radius: 11px; font-size: 14px; font-weight: 500; color: #97a3c2; transition: background-color .15s ease, color .15s ease; }
	/* Прошлая версия (белый фон на белом фоне контейнера) визуально не
	   отличалась от невыбранной кнопки — заметный залитый фон + рамка,
	   баг найден 2026-10-01 ("непонятно, какая кнопка выбрана"). */
	.analizy-landing .gender-option.active { background: #e8f1ff; color: #0874f9; box-shadow: inset 0 0 0 1px rgba(8,116,249,.28); }
	.analizy-landing .medical-upload__fields > div:last-child { grid-column: 2; grid-row: 2; position: relative; }
	.analizy-landing .medical-upload__field-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
	.analizy-landing .age-input { height: 58px; padding: 0 56px 0 22px; border: 1px solid #dce4f6; border-radius: 15px; color: #273b68; background: rgba(255,255,255,.72); box-shadow: none; }
	.analizy-landing .age-input::placeholder { color: #7684b4; opacity: 1; }
	.analizy-landing .medical-upload__age-unit { position: absolute; right: 20px; top: 18px; color: #7684b4; font-size: 16px; pointer-events: none; }
	.analizy-landing .medical-upload__consent { grid-column: 2; grid-row: 3; display: flex; align-items: flex-start; gap: 9px; margin: 0; color: #6e7da5; font-size: 11px; line-height: 1.35; cursor: pointer; }
	.analizy-landing .medical-upload__consent input { width: 15px; height: 15px; flex: 0 0 15px; margin: 1px 0 0; accent-color: #0874f9; cursor: pointer; }
	.analizy-landing .medical-upload__consent a { color: #416eb9; text-decoration: underline; text-underline-offset: 2px; }
	.analizy-landing .medical-upload__submit { grid-column: 2; grid-row: 4; width: 100%; height: 68px; margin: 0; padding: 0 24px; border-radius: 15px; background: #0874f9; box-shadow: none; font-size: 18px; }
	.analizy-landing .medical-upload__file-info, .analizy-landing .service-gate-note, .analizy-landing .medical-upload__security { display: none; }
	.analizy-landing .svc-hero__benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; width: 830px; max-width: 100%; margin-top: 0; padding: 18px 10px; }
	.analizy-landing .svc-hero__benefit { position: relative; display: flex; align-items: center; min-width: 0; gap: 13px; padding: 0 19px; }
	.analizy-landing .svc-hero__benefit-icon { width: 52px; height: 52px; flex: 0 0 52px; border-radius: 50%; color: #0874f9; font-size: 21px; }
	.analizy-landing .svc-hero__benefit-icon--orange { color: #0874f9; }
	.analizy-landing .svc-hero__benefit-text { min-width: 0; color: #7180ac; font-size: 13px; line-height: 1.28; letter-spacing: -.02em; }
	.analizy-landing .svc-hero__benefit-text strong { color: #182750; font-size: 14px; line-height: 1.2; }
	.analizy-landing .svc-hero__visual { display: block; position: absolute; top: 356px; right: max(2vw, calc((100vw - 1710px) / 2)); width: min(32vw, 560px); height: 360px; z-index: 2; }
	.analizy-landing .svc-hero__result-card { position: absolute; inset: 0; padding: 28px 26px; border: 1px solid rgba(255,255,255,.9); border-radius: 32px; background: rgba(249,252,255,.88); box-shadow: 0 20px 42px rgba(44,87,157,.18); transform: rotate(-5deg); backdrop-filter: blur(5px); }
	.analizy-landing .svc-hero__result-card strong { display: block; padding: 0 0 20px; color: #0d1735; font-size: 18px; }
	.analizy-landing .svc-hero__result-card strong i { color: #0874f9; margin-right: 14px; }
	.analizy-landing .svc-hero__result-card span { display: flex; align-items: center; gap: 14px; height: 78px; margin: 0 0 8px; padding: 0 16px; border-radius: 18px; background: rgba(255,255,255,.84); box-shadow: 0 3px 10px rgba(54,85,139,.04); }
	.analizy-landing .svc-hero__result-card span > i:first-child { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; background: #e8f1ff; color: #0874f9; font-size: 15px; }
	.analizy-landing .svc-hero__result-card span:first-of-type > i:first-child { background: #fff0ef; color: #fc554d; }
	.analizy-landing .svc-hero__result-card span:nth-of-type(2) > i:first-child { background: #e7faef; color: #13c57a; }
	.analizy-landing .svc-hero__result-card b, .analizy-landing .svc-hero__result-card small { height: 16px; border-radius: 10px; background: #e2e9f7; }
	.analizy-landing .svc-hero__result-card b { width: 105px; }
	.analizy-landing .svc-hero__result-card em { width: 76px; height: 20px; border-radius: 10px; background: #daf7ec; }
	.analizy-landing .svc-hero__result-card span:first-of-type em { background: #ffe4e5; }
	.analizy-landing .svc-hero__result-card small { flex: 1; }
	.analizy-landing .svc-hero__result-card span > i:last-child { margin-left: auto; color: #53648d; font-size: 22px; }
}

@media (min-width: 992px) and (max-width: 1399px) {
	.service-landing-hero-shell #headrow > .col-md-2 { width: 145px; flex-basis: 145px; }
	/* На средних десктопных ширинах места мало — дескриптор рядом с лого
	   убираем, оставляем только сам логотип (чтобы не давить на меню). */
	.service-landing-hero-shell #verh1 .service-tagline { display: none; }
	.service-landing-hero-shell #verh1 .navbar-nav { gap: 16px; margin-left: 0; }
	.service-landing-hero-shell #verh1 .navbar-nav > li > a { font-size: 14px; }
	.service-landing-hero-shell .zakzv2 ul { gap: 8px; }
	.service-landing-hero-shell .zakzv2 ul li:first-child a.bbox1 { padding: 10px 11px; }
	.service-landing-hero-shell a.bbox2 { padding: 11px 15px; font-size: 14px; }
}

/* Каталог приложений в общей шапке сервисных лендингов. */
@media (min-width: 992px) {
	.service-landing-hero-shell .service-catalog-menu { position: relative; display: flex; align-items: center; }
	.service-landing-hero-shell .service-catalog-trigger { display: inline-flex; align-items: center; gap: 7px; height: 42px; padding: 0; border: 0; border-radius: 0; color: #45517a; background: transparent; box-shadow: none; font: 500 16px/24px Inter, sans-serif; white-space: nowrap; cursor: pointer; transition: color .18s ease; }
	.service-landing-hero-shell .service-catalog-trigger:hover, .service-landing-hero-shell .service-catalog-menu.is-open .service-catalog-trigger { border-color: transparent; color: #0874f9; box-shadow: none; transform: none; }
	.service-landing-hero-shell .service-catalog-trigger__icon { display: none; }
	.service-landing-hero-shell .service-catalog-trigger__icon::before, .service-landing-hero-shell .service-catalog-trigger__icon::after { content: ''; display: block; width: 4px; height: 4px; border-radius: 1.5px; background: #0874f9; box-shadow: 7px 0 #0874f9, 0 7px #0874f9, 7px 7px #0874f9; }
	.service-landing-hero-shell .service-catalog-trigger__icon::after { display: none; }
	.service-landing-hero-shell .service-catalog-trigger__chevron { width: 7px; height: 7px; margin: -3px 0 0 2px; border-right: 1.5px solid #6074a2; border-bottom: 1.5px solid #6074a2; transform: rotate(45deg); transition: transform .18s ease; }
	.service-landing-hero-shell .service-catalog-menu.is-open .service-catalog-trigger__chevron { margin-top: 3px; transform: rotate(225deg); }
	.service-landing-hero-shell .service-catalog-mega { position: absolute; z-index: 30; top: calc(100% + 15px); left: 0; width: min(820px, calc(100vw - 48px)); padding: 22px; border: 1px solid rgba(149,181,231,.38); border-radius: 20px; background: rgba(255,255,255,.96); box-shadow: 0 26px 64px rgba(30,68,126,.2); opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-7px); transition: opacity .18s ease, transform .18s ease, visibility .18s ease; backdrop-filter: blur(18px); }
	.service-landing-hero-shell .service-catalog-menu:hover .service-catalog-mega, .service-landing-hero-shell .service-catalog-menu:focus-within .service-catalog-mega, .service-landing-hero-shell .service-catalog-menu.is-open .service-catalog-mega { opacity: 1; visibility: visible; pointer-events: auto; transform: none; }
	.service-landing-hero-shell .service-catalog-mega__top { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 0 2px 18px; border-bottom: 1px solid #e7eefb; }
	.service-landing-hero-shell .service-catalog-mega__top strong, .service-landing-hero-shell .service-catalog-mega__eyebrow { display: block; }
	.service-landing-hero-shell .service-catalog-mega__eyebrow { margin-bottom: 4px; color: #0874f9; font: 600 13.5px/1.2 Inter, sans-serif; letter-spacing: 0; text-transform: none; }
	.service-landing-hero-shell .service-catalog-mega__top strong { color: #132751; font: 700 19px/24px Inter, sans-serif; }
	.service-landing-hero-shell .service-catalog-mega__top > a { display: inline-flex; align-items: center; gap: 8px; color: #0874f9; font: 600 14px/20px Inter, sans-serif; white-space: nowrap; }
	.service-landing-hero-shell .service-catalog-mega__top > a span { font-size: 19px; }
	.service-landing-hero-shell .service-catalog-mega__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px 28px; padding: 20px 2px 2px; }
	.service-landing-hero-shell .service-catalog-mega__group { min-width: 0; }
	.service-landing-hero-shell .service-catalog-mega__group > a { display: block; padding: 4px 0; color: #65769d; font: 500 13px/18px Inter, sans-serif; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
	.service-landing-hero-shell .service-catalog-mega__group > a:hover { color: #0874f9; }
	.service-landing-hero-shell .service-catalog-mega__group > .service-catalog-mega__title { padding-top: 0; padding-bottom: 7px; color: #152b59; font-weight: 700; }
	.service-landing-hero-shell #verh1 .navbar-nav > li:nth-child(5), .service-landing-hero-shell #verh1 .navbar-nav > li:nth-child(6) { display: none; }
}

@media (min-width: 992px) and (max-width: 1399px) {
	.service-landing-hero-shell #verh1 .navbar-nav { gap: 13px; }
	.service-landing-hero-shell .service-catalog-trigger { height: 38px; padding: 0 10px; font-size: 13px; }
	.service-landing-hero-shell .service-catalog-mega { width: min(720px, calc(100vw - 36px)); }
}

/* Сервисный wordmark: собственный знак вместо растрового логотипа. */
@media (min-width: 992px) {
	.service-landing-hero-shell #logo { display: flex; align-items: center; min-height: 44px; }
	.service-landing-hero-shell .service-brand { display: inline-flex; align-items: center; gap: 9px; color: #0a1b40; text-decoration: none; }
	.service-landing-hero-shell .service-brand__mark { position: relative; display: grid; grid-template-columns: repeat(2, 6px); grid-template-rows: repeat(2, 6px); gap: 3px; width: 27px; height: 27px; padding: 6px; border-radius: 9px; background: linear-gradient(145deg, #167fff, #0865de); box-shadow: 0 6px 15px rgba(8,101,222,.24), inset 0 1px 0 rgba(255,255,255,.34); }
	.service-landing-hero-shell .service-brand__mark i { display: block; border-radius: 2px; background: #fff; }
	.service-landing-hero-shell .service-brand__mark i:nth-child(3) { grid-column: 1 / 3; opacity: .72; }
	.service-landing-hero-shell .service-brand__name { display: inline-flex; align-items: baseline; font: 700 25px/1 Inter, sans-serif; letter-spacing: -.07em; }
	.service-landing-hero-shell .service-brand__name b { color: #09183c; font-weight: 780; }
	.service-landing-hero-shell .service-brand__name em { margin-left: 1px; color: #0874f9; font-style: normal; font-weight: 720; }
	.service-landing-hero-shell .service-brand:hover .service-brand__mark { transform: translateY(-1px); box-shadow: 0 8px 18px rgba(8,101,222,.3), inset 0 1px 0 rgba(255,255,255,.34); }
}

/* ---------- Sticky-меню при скролле ----------
   #menu2/#listspis2 — ЕСТЬ рабочий сайтовый механизм показа (footer.twig,
   скрипт menu_sticky): по scroll добавляет/убирает класс .fixed2 на #menu2
   и напрямую переключает inline display у #listspis2 (0/1 попытка своего
   параллельного JS здесь уже была и сломала это — position:fixed по
   умолчанию портил jQuery .offset() у того скрипта, конфликт найден и
   исправлен 2026-10-01). Здесь — только визуал поверх уже рабочего
   триггера, никакого своего showhide-JS. */

.service-landing-hero-shell .menu2.fixed2 {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 80;
}

/* menu_sticky (footer.twig) вставляет .clone-nav как распорку — компенсирует
   высоту #menu2 в потоке документа, чтобы контент не прыгал при переходе на
   position:fixed. У нас #menu2 и так почти нулевой высоты в потоке (весь
   контент — в #listspis2, который до этого display:none), а сама sticky-
   панель — оверлей поверх контента, а не часть потока, поэтому распорка
   не нужна и только рискует оставить пустой зазор. */
.service-landing-hero-shell .clone-nav {
	display: none !important;
}

.service-landing-hero-shell #listspis2 {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	border-radius: 0;
	background: rgba(255,255,255,.78);
	backdrop-filter: blur(22px) saturate(180%);
	-webkit-backdrop-filter: blur(22px) saturate(180%);
	border-bottom: 1px solid rgba(210,222,245,.6);
	box-shadow: 0 20px 50px rgba(18,38,82,.12);
	/* transition тут не спасёт (display меняется скачком через inline-style
	   стороннего скрипта, а не классом) — вместо неё animation, она
	   проигрывается даже при появлении из display:none. */
	animation: svcStickyIn .35s ease;
}

@keyframes svcStickyIn {
	from { opacity: 0; transform: translateY(-10px); }
	to { opacity: 1; transform: translateY(0); }
}

.service-landing-hero-shell #listspis2 .container { width: 100%; max-width: 1380px; margin: 0 auto; padding: 0 24px; }
.service-landing-hero-shell #listspis2 #headrow { display: flex; align-items: center; min-height: 64px; padding: 0; }
.service-landing-hero-shell #listspis2 #logo { min-height: auto; }

@media (min-width: 992px) {
	.service-landing-hero-shell #listspis2 #headrow > .col-md-2 { width: 150px; flex: 0 0 150px; }
	.service-landing-hero-shell #listspis2 .service-brand__name { font-size: 21px; }
	.service-landing-hero-shell #listspis2 .service-brand__mark { width: 23px; height: 23px; }
	.service-landing-hero-shell #listspis2 #headrow > .col-md-6 { width: auto; flex: 1 1 auto; }
	.service-landing-hero-shell #listspis2 #headrow > .col-md-4 { width: auto; flex: 0 0 auto; padding-left: 0; }
	.service-landing-hero-shell #listspis2 .navbar-nav { display: inline-flex; align-items: center; gap: 20px; margin-left: 24px; }
	.service-landing-hero-shell #listspis2 .navbar-nav > li > a { padding: 10px 0; color: #45517a; font: 500 14px/22px Inter, sans-serif; transition: color .15s ease; }
	.service-landing-hero-shell #listspis2 .navbar-nav > li > a:hover { color: #0874f9; }
	.service-landing-hero-shell #listspis2 .zakzv2 { float: none; }
	.service-landing-hero-shell #listspis2 .zakzv2 ul { display: flex; gap: 10px; align-items: center; margin: 0; }
	.service-landing-hero-shell #listspis2 .zakzv2 ul li:first-child a.bbox1 { display: inline-flex; align-items: center; gap: 7px; padding: 8px 12px; border: 1px solid rgba(80,109,163,.16); border-radius: 9px; color: #304266; background: rgba(255,255,255,.6); font: 600 11px/16px Inter, sans-serif; letter-spacing: .05em; text-transform: uppercase; }
	.service-landing-hero-shell #listspis2 a.bbox2 { padding: 9px 16px; border-radius: 9px; font: 500 13px/18px Inter, sans-serif; }
	.service-landing-hero-shell #listspis2 .service-register a { background: linear-gradient(135deg,#0d7bff,#0768e9); box-shadow: 0 6px 16px rgba(7,104,233,.22); }
	.service-landing-hero-shell #listspis2 li:not(.service-register) a.bbox2 { color: #26375f !important; background: rgba(255,255,255,.7); box-shadow: none; }
}


/* Герой сервисов (кроме анализов): заголовок и подзаголовок компактнее, чтобы текст не закрывал иллюстрацию фона */
.service-landing-hero-shell:not(.hero-bg--analizy) .analizy-landing .svc-hero h1 { font-size: clamp(28px, 7.5vw, 34px); line-height: 1.08; letter-spacing: -.04em; }
.service-landing-hero-shell:not(.hero-bg--analizy) .analizy-landing .svc-hero__subtitle { font-size: 16px; line-height: 1.5; }
@media (min-width: 992px) {
	.service-landing-hero-shell:not(.hero-bg--analizy) .analizy-landing .svc-hero__inner { max-width: 50%; }
	.service-landing-hero-shell:not(.hero-bg--analizy) .analizy-landing .svc-hero h1 { max-width: 540px; margin: 26px 0 14px; font-size: clamp(34px, 3.2vw, 46px); line-height: 1.04; letter-spacing: -.055em; }
	.service-landing-hero-shell:not(.hero-bg--analizy) .analizy-landing .svc-hero__subtitle { width: 500px; font-size: 17px; line-height: 1.5; letter-spacing: -.015em; }
}
