/* Главная doirastan.kz / doirastan.uz — новый вид блоков (Figma «Главная — новый дизайн»).
 *
 * Подключается ПОСЛЕ landing.css и landing-new.css и только на главной и /preview/
 * (`<body class="hm">`). Все классы с префиксом `hm-`, поэтому остальные страницы,
 * которым нужен landing.css, ничего не замечают. Исключение — живая сделка
 * (`.ai-live*`, разметка и скрипт — ii-chain): её переодеваем селекторами
 * `body.hm .ai-live…`, чтобы перебить landing.css без !important.
 *
 * Ни внешних шрифтов, ни картинок: градиенты, свечения (radial-gradient) и
 * значки (inline-SVG в app/landing.php). Тёмная тема — по системной настройке,
 * переключателя нет. Ширина содержимого — 1130 px, как в макетах.
 */

/* ── Краски ─────────────────────────────────────────────────────────────── */

body.hm {
	--hm-ink: #0f1830;
	--hm-text: #4a5675;
	--hm-muted: #5b6684;
	--hm-bg: #fff;
	--hm-soft: #f4f7ff;
	--hm-card: #fff;
	--hm-line: rgba(31, 51, 120, .10);
	--hm-shadow: 0 20px 44px -22px rgba(31, 51, 120, .32);
	--hm-accent: #1d4ed8;
	--hm-blue: #2f66f5;
	--hm-tint: #e6edff;
	--hm-eyebrow-bg: #e3ebff;
	--hm-eyebrow-fg: #1d4ed8;
	--hm-eyebrow-line: transparent;
	--hm-dot: #2f66f5;
	--hm-glow-a: rgba(111, 155, 255, .22);
	--hm-glow-b: rgba(160, 130, 255, .18);
}

@media (prefers-color-scheme: dark) {
	body.hm {
		--hm-ink: #e8ecf8;
		--hm-text: #a9b4d0;
		--hm-muted: #a9b4d0;
		--hm-bg: #0b1226;
		--hm-soft: #0e1733;
		--hm-card: rgba(255, 255, 255, .06);
		--hm-line: rgba(255, 255, 255, .12);
		--hm-shadow: none;
		--hm-accent: #6f9bff;
		--hm-blue: #3b72ff;
		--hm-tint: rgba(111, 155, 255, .16);
		--hm-eyebrow-bg: rgba(111, 155, 255, .14);
		--hm-eyebrow-fg: #8fb2ff;
		--hm-dot: #6f9bff;
		--hm-glow-a: rgba(79, 124, 255, .20);
		--hm-glow-b: rgba(139, 109, 255, .16);
	}
}

/* Секции, тёмные в любой теме: этапы, ИИ-агенты, партнёр. Краски — свои. */
body.hm .hm-sec--steps,
body.hm .hm-sec--ai,
body.hm .hm-sec--partner {
	--hm-ink: #fff;
	--hm-text: #b9c3e3;
	--hm-muted: #b9c3e3;
	--hm-card: rgba(255, 255, 255, .07);
	--hm-line: rgba(255, 255, 255, .16);
	--hm-shadow: none;
	--hm-accent: #8fb2ff;
	--hm-tint: rgba(255, 255, 255, .10);
	--hm-eyebrow-bg: rgba(255, 255, 255, .08);
	--hm-eyebrow-fg: #fff;
	--hm-eyebrow-line: rgba(255, 255, 255, .20);
	--hm-dot: #5cc8ff;
}

/* ── Общее ──────────────────────────────────────────────────────────────── */

.hm-sec, .hm-hero { position: relative; overflow: hidden; color: var(--hm-ink); }
.hm-sec { padding: 92px 0; background: var(--hm-bg); }
.hm-sec--soft { background: var(--hm-soft); }
.hm-sec > .hm-wrap, .hm-hero > .hm-wrap { position: relative; z-index: 1; }

.hm-wrap { width: 100%; max-width: 1178px; margin: 0 auto; padding: 0 24px; }

.hm-sec h2, .hm-hero h1, .hm-sec h3, .hm-sec p, .hm-sec ul, .hm-sec figure, .hm-sec blockquote { margin: 0; }

.hm-head { max-width: 760px; margin: 0 auto 56px; text-align: center; }
.hm-head h2 { margin: 20px 0 14px; font-size: 40px; line-height: 1.2; font-weight: 800; letter-spacing: -.02em; }
.hm-head p { color: var(--hm-text); font-size: 17px; line-height: 1.6; }

.hm-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	border: 1px solid var(--hm-eyebrow-line);
	border-radius: 999px;
	background: var(--hm-eyebrow-bg);
	color: var(--hm-eyebrow-fg);
	font-size: 12px;
	line-height: 1.2;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.hm-eyebrow i { flex: none; width: 7px; height: 7px; border-radius: 50%; background: var(--hm-dot); }

/* Цветная плитка со значком — общий «знак» карточек. */
.hm-tile {
	display: grid;
	place-items: center;
	flex: none;
	width: 56px;
	height: 56px;
	border-radius: 16px;
	background: linear-gradient(135deg, #2f66f5, #78a0ff);
	color: #fff;
	box-shadow: 0 12px 24px -10px rgba(47, 102, 245, .55);
}
.hm-tile svg { width: 26px; height: 26px; }
.hm-tile--glass { background: rgba(255, 255, 255, .24); box-shadow: none; width: 48px; height: 48px; border-radius: 14px; }
.hm-tile--glass svg { width: 24px; height: 24px; }

/* Кнопки. Высота ≥ 48 px — цель нажатия не меньше 44. */
.hm-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 52px;
	padding: 0 28px;
	border: 1px solid transparent;
	border-radius: 999px;
	font: 600 16px/1.2 Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	text-align: center;
	cursor: pointer;
	transition: transform .15s, box-shadow .15s, filter .15s, background-color .15s;
}
.hm-btn .ico { width: 20px; height: 20px; flex: none; }
.hm-btn:hover { transform: translateY(-1px); }
.hm-btn:focus-visible, .hm-link:focus-visible, .hm-new:focus-visible,
.hm-q summary:focus-visible, .hm-chips a:focus-visible, .hm-review a:focus-visible,
body.hm .ai-live a:focus-visible { outline: 3px solid #8fb2ff; outline-offset: 3px; }

/* Белый текст на зелёном и голубом — только тёмные оттенки: контраст не ниже 4.5. */
.hm-btn--wa { background: #12803e; color: #fff; box-shadow: 0 14px 28px -12px rgba(18, 128, 62, .65); }
.hm-btn--wa:hover { background: #0f6f35; }
.hm-btn--chat { background: #1673a8; color: #fff; box-shadow: 0 14px 28px -12px rgba(22, 115, 168, .6); }
.hm-btn--chat:hover { background: #125f8b; }
.hm-btn--blue { background: var(--hm-blue); color: #fff; box-shadow: 0 16px 30px -12px rgba(47, 102, 245, .65); }
.hm-btn--blue:hover { background: #2358de; }
.hm-btn--call { background: var(--hm-card); border-color: var(--hm-line); color: var(--hm-ink); box-shadow: var(--hm-shadow); }
.hm-btn--call:hover { border-color: var(--hm-accent); }
.hm-btn--light { background: #fff; color: #0f1830; box-shadow: 0 14px 28px -14px rgba(0, 0, 0, .5); }

.hm-link { display: inline-flex; align-items: center; min-height: 44px; color: #fff; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(255, 255, 255, .45); }
.hm-link:hover { text-decoration-color: #fff; }

.hm-center { display: flex; justify-content: center; margin-top: 44px; }

/* Список с галочками. Галочка — круг с «птичкой» из data-URI: без запроса. */
.hm-list { list-style: none; padding: 0; display: grid; gap: 10px; }
.hm-list li {
	position: relative;
	min-width: 0;
	padding-left: 32px;
	font-size: 15px;
	line-height: 1.4;
	font-weight: 600;
	color: var(--hm-ink);
}
.hm-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: -1px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--hm-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f66f5' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center / 14px no-repeat;
}
body.hm .hm-sec--ai .hm-list li::before {
	background: rgba(255, 255, 255, .16) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center / 14px no-repeat;
}
@media (prefers-color-scheme: dark) {
	.hm-list li::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236f9bff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E");
	}
}

/* Карточка — общая основа (ИИ-агенты, цены). */
.hm-card {
	position: relative;
	padding: 30px;
	border: 1px solid var(--hm-line);
	border-radius: 28px;
	background: var(--hm-card);
	box-shadow: var(--hm-shadow);
}
.hm-card h3 { margin: 22px 0 12px; font-size: 24px; line-height: 1.25; font-weight: 700; letter-spacing: -.01em; }
.hm-card p { margin-bottom: 20px; color: var(--hm-text); font-size: 15.5px; line-height: 1.6; }

.hm-trio { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }

/* ── 01 Первый экран ────────────────────────────────────────────────────── */

.hm-hero { padding: 84px 0 110px; background: linear-gradient(180deg, #eaf0ff 0%, #f5f8ff 55%, #fbfcff 100%); }
.hm-hero::before, .hm-hero::after, .hm-sec--about::before, .hm-sec--soft::before, .hm-sec--faq::before {
	content: "";
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
}
.hm-hero::before { width: 760px; height: 760px; right: -220px; top: -260px; background: radial-gradient(closest-side, rgba(150, 120, 255, .34), transparent); }
.hm-hero::after { width: 700px; height: 600px; right: -80px; bottom: -300px; background: radial-gradient(closest-side, rgba(90, 200, 255, .30), transparent); }

.hm-hero__in { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr); gap: 40px; align-items: center; }

.hm-hero .hm-eyebrow { display: flex; width: fit-content; max-width: 100%; }
.hm-new {
	display: flex;
	width: fit-content;
	max-width: 100%;
	align-items: center;
	gap: 10px;
	margin-top: 12px;
	padding: 5px 16px 5px 5px;
	border-radius: 999px;
	background: var(--hm-card);
	box-shadow: 0 8px 22px -10px rgba(31, 51, 120, .35);
	color: var(--hm-ink);
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1.3;
}
.hm-new__tag { flex: none; padding: 5px 12px; border-radius: 999px; background: linear-gradient(90deg, #5546e8, #6a5cf5); color: #fff; font-size: 12px; font-weight: 700; }
.hm-new:hover { box-shadow: 0 10px 26px -10px rgba(31, 51, 120, .5); }

.hm-hero h1 { margin: 26px 0 20px; font-size: 54px; line-height: 1.1; font-weight: 800; letter-spacing: -.025em; color: var(--hm-ink); }
.hm-hero h1 span { color: var(--hm-accent); }
.hm-hero__lead { max-width: 560px; margin: 0 0 32px; color: var(--hm-text); font-size: 18px; line-height: 1.6; }
.hm-hero__actions { display: flex; flex-wrap: wrap; gap: 14px; }

.hm-trust { display: flex; flex-wrap: wrap; gap: 14px 30px; margin: 38px 0 0; padding: 0; list-style: none; }
.hm-trust li { display: flex; flex: 1 1 140px; flex-direction: column; gap: 2px; min-width: 0; max-width: 200px; }
.hm-trust b { font-size: 24px; line-height: 1.2; font-weight: 800; letter-spacing: -.01em; color: var(--hm-ink); }
.hm-trust span { color: var(--hm-muted); font-size: 13.5px; line-height: 1.35; }

.hm-hero__art { position: relative; min-width: 0; padding: 0 0 56px; }
.hm-glass {
	position: relative;
	padding: 14px;
	border: 1px solid rgba(255, 255, 255, .85);
	border-radius: 30px;
	background: linear-gradient(145deg, rgba(255, 255, 255, .78), rgba(255, 255, 255, .38));
	box-shadow: 0 40px 80px -34px rgba(47, 80, 200, .45), inset 0 1px 0 rgba(255, 255, 255, .9);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}
.hm-glass::before { content: ""; position: absolute; inset: -40px; z-index: -1; border-radius: 50%; background: radial-gradient(closest-side, rgba(120, 140, 255, .28), transparent); }
.hm-glass img { display: block; width: 100%; height: auto; border-radius: 20px; }

.hm-float {
	position: absolute;
	z-index: 2;
	border: 1px solid var(--hm-line);
	border-radius: 20px;
	background: var(--hm-card);
	box-shadow: 0 24px 50px -20px rgba(31, 51, 120, .45);
	color: var(--hm-ink);
	animation: hm-bob 7s ease-in-out infinite;
}
.hm-float--chat { left: -34px; bottom: 0; width: 250px; padding: 16px 18px 18px; }
.hm-float--done { right: -6px; bottom: 6px; display: flex; align-items: center; gap: 12px; padding: 12px 20px 12px 12px; border-radius: 16px; animation-delay: -3.5s; }
.hm-float__from { display: flex; align-items: center; gap: 8px; color: var(--hm-muted); font-size: 12.5px; font-weight: 600; }
.hm-float__from i { width: 9px; height: 9px; border-radius: 50%; background: #22c55e; }
.hm-float p { margin: 8px 0 12px; font-size: 14.5px; line-height: 1.4; font-weight: 500; }
.hm-float__ai { display: inline-block; padding: 7px 14px; border-radius: 999px; background: linear-gradient(90deg, #5546e8, #3b6cf2); color: #fff; font-size: 12.5px; font-weight: 700; line-height: 1.25; }
.hm-float__ok { display: grid; place-items: center; flex: none; width: 32px; height: 32px; border-radius: 50%; background: #0d9f57; color: #fff; }
.hm-float__ok svg { width: 18px; height: 18px; stroke-width: 3; }
.hm-float--done b { font-size: 14.5px; font-weight: 700; }

@keyframes hm-bob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }

@media (prefers-color-scheme: dark) {
	.hm-hero { background: linear-gradient(180deg, #0c1430 0%, #0b1226 100%); }
	.hm-hero::before { background: radial-gradient(closest-side, rgba(110, 90, 240, .34), transparent); }
	.hm-hero::after { background: radial-gradient(closest-side, rgba(40, 150, 220, .22), transparent); }
	.hm-glass { border-color: rgba(255, 255, 255, .14); background: linear-gradient(145deg, rgba(255, 255, 255, .10), rgba(255, 255, 255, .04)); box-shadow: 0 40px 80px -34px rgba(0, 0, 0, .8), inset 0 1px 0 rgba(255, 255, 255, .12); }
	.hm-float { background: #151f45; border-color: rgba(255, 255, 255, .14); box-shadow: 0 24px 50px -20px rgba(0, 0, 0, .8); }
	.hm-new { background: rgba(255, 255, 255, .08); box-shadow: none; border: 1px solid rgba(255, 255, 255, .12); }
}

/* ── 02 Живая сделка (разметка и скрипт — ii-chain, здесь только вид) ──── */

body.hm .ai-live { padding: 92px 0; background: linear-gradient(160deg, #f1efff 0%, #f5f8ff 55%, #edf4ff 100%); color: var(--hm-ink); }
body.hm .ai-live::before, body.hm .ai-live::after { filter: none; opacity: 1; }
body.hm .ai-live::before { width: 720px; height: 720px; left: -260px; top: -300px; background: radial-gradient(closest-side, rgba(160, 130, 255, .30), transparent); }
body.hm .ai-live::after { width: 760px; height: 640px; right: -240px; bottom: -300px; background: radial-gradient(closest-side, rgba(110, 160, 255, .34), transparent); }
body.hm .ai-live .wrap { max-width: 1178px; }
body.hm .ai-live__in { grid-template-columns: minmax(0, 1fr) minmax(0, 584px); gap: 36px; }
body.hm .ai-live__badge { padding: 8px 14px; border: 0; background: var(--hm-eyebrow-bg); color: var(--hm-eyebrow-fg); font-size: 12px; letter-spacing: .08em; }
body.hm .ai-live h2 { margin: 22px 0 16px; font-size: 42px; line-height: 1.16; font-weight: 800; letter-spacing: -.025em; color: var(--hm-ink); }
body.hm .ai-live h2 span { display: block; background: none; -webkit-background-clip: border-box; background-clip: border-box; color: inherit; }
body.hm .ai-live__text > p { margin: 0 0 26px; color: var(--hm-text); font-size: 17px; line-height: 1.6; }
body.hm .ai-live__money { max-width: 320px; padding: 20px 24px; border-radius: 24px; background: var(--hm-card); border: 1px solid var(--hm-line); box-shadow: 0 22px 44px -24px rgba(31, 51, 120, .45); }
body.hm .ai-live__money small { color: var(--hm-muted); letter-spacing: .08em; }
body.hm .ai-live__money b { font-size: 40px; color: var(--hm-ink); }
body.hm .ai-live__money span { color: var(--hm-muted); font-size: 14px; }
body.hm .ai-live__money.is-hit, body.hm .ai-live__money.is-profit { background: #effcf4; border-color: rgba(22, 163, 74, .35); }
body.hm .ai-live__money.is-hit small, body.hm .ai-live__money.is-profit small { color: #166534; }
body.hm .ai-live__money.is-hit b, body.hm .ai-live__money.is-profit b { color: #15803d; }
body.hm .ai-live__money.is-hit span, body.hm .ai-live__money.is-profit span { color: #3f5a4a; }
body.hm .ai-live__btns { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 26px; }
body.hm .ai-live__btn { min-height: 52px; align-items: center; justify-content: center; padding: 0 22px; border-radius: 999px; border: 1px solid var(--hm-line); background: var(--hm-card); color: var(--hm-ink); font-weight: 600; font-size: 15.5px; box-shadow: 0 10px 24px -14px rgba(31, 51, 120, .5); }
body.hm .ai-live__btn--main { border-color: transparent; background: var(--hm-blue); color: #fff; box-shadow: 0 16px 30px -12px rgba(47, 102, 245, .65); }
body.hm .ai-live__scene { filter: none; }
body.hm .ai-live__scene.ia-run--compact { border-radius: 28px; box-shadow: 0 40px 80px -36px rgba(40, 60, 160, .5); }

@media (prefers-color-scheme: dark) {
	body.hm .ai-live { background: linear-gradient(160deg, #0d1432 0%, #0b1226 60%, #0c1736 100%); }
	body.hm .ai-live::before { background: radial-gradient(closest-side, rgba(120, 90, 240, .30), transparent); }
	body.hm .ai-live::after { background: radial-gradient(closest-side, rgba(40, 110, 230, .26), transparent); }
	body.hm .ai-live__money.is-hit, body.hm .ai-live__money.is-profit { background: rgba(34, 197, 94, .12); border-color: rgba(74, 222, 128, .38); }
	body.hm .ai-live__money.is-hit small, body.hm .ai-live__money.is-profit small { color: #86efac; }
	body.hm .ai-live__money.is-hit b, body.hm .ai-live__money.is-profit b { color: #4ade80; }
	body.hm .ai-live__money.is-hit span, body.hm .ai-live__money.is-profit span { color: #a9b4d0; }
	body.hm .ai-live__money, body.hm .ai-live__btn { box-shadow: none; }
	body.hm .ai-live__badge i { box-shadow: none; }
	/* Сцена остаётся светлой «экранной» карточкой: её внутренние краски заданы
	   в ii-chain.css под белое поле, и на тёмном фоне она читается как окно. */
	body.hm .ai-live__scene.ia-run--compact { box-shadow: 0 40px 90px -30px rgba(0, 0, 0, .85), 0 0 0 1px rgba(255, 255, 255, .10); }
}

/* ── 03 Этапы ───────────────────────────────────────────────────────────── */

.hm-sec--steps { background: #0a1130; }
.hm-sec--steps::before, .hm-sec--steps::after, .hm-sec--ai::before, .hm-sec--ai::after, .hm-sec--partner::before, .hm-sec--partner::after {
	content: "";
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
}
.hm-sec--steps::before { width: 820px; height: 820px; left: -300px; top: -380px; background: radial-gradient(closest-side, rgba(47, 102, 245, .70), transparent); }
.hm-sec--steps::after { width: 900px; height: 700px; right: -320px; bottom: -380px; background: radial-gradient(closest-side, rgba(14, 130, 200, .55), transparent); }

.hm-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.hm-step {
	position: relative;
	padding: 30px 28px 32px;
	border: 1px solid var(--hm-line);
	border-radius: 28px;
	background: linear-gradient(160deg, rgba(255, 255, 255, .10), rgba(255, 255, 255, .04));
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	color: #fff;
}
.hm-step__num { position: absolute; right: 26px; top: 26px; font-size: 44px; line-height: 1; font-weight: 800; color: rgba(255, 255, 255, .18); letter-spacing: -.02em; }
.hm-step h3 { margin: 26px 0 10px; font-size: 22px; line-height: 1.25; font-weight: 700; }
.hm-step p { color: var(--hm-text); font-size: 15px; line-height: 1.6; }
.hm-step--2 .hm-tile { background: linear-gradient(135deg, #7a56ff, #b39dff); box-shadow: 0 12px 24px -10px rgba(122, 86, 255, .6); }
.hm-step--3 .hm-tile { background: linear-gradient(135deg, #0a84c1, #4cc9f0); box-shadow: 0 12px 24px -10px rgba(14, 165, 233, .6); }
.hm-step--4 .hm-tile { background: linear-gradient(135deg, #0a8f63, #34d399); box-shadow: 0 12px 24px -10px rgba(16, 185, 129, .6); }

/* Стрелка между этапами — круг на стыке карточек; в одну-две колонки не рисуется. */
.hm-step:not(:last-child)::after {
	content: "";
	position: absolute;
	z-index: 2;
	top: 44px;
	right: -26px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #2f66f5 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / 16px no-repeat;
	box-shadow: 0 0 0 4px rgba(10, 17, 48, .6);
}

/* ── 04 Кейсы ───────────────────────────────────────────────────────────── */

.hm-sec--soft::before { width: 700px; height: 700px; left: -300px; top: -260px; background: radial-gradient(closest-side, var(--hm-glow-a), transparent); }

.hm-cases { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.hm-case {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--hm-line);
	border-radius: 28px;
	background: var(--hm-card);
	box-shadow: var(--hm-shadow);
	transition: transform .2s, box-shadow .2s;
	--hm-c1: #2f66f5; --hm-c2: #7fa6ff;
}
.hm-case:hover { transform: translateY(-3px); }
.hm-case--b24 { --hm-c1: #0284c7; --hm-c2: #5fd0f5; }
.hm-case--1c { --hm-c1: #c2610a; --hm-c2: #f7b24a; }
.hm-case--ai { --hm-c1: #6d4aff; --hm-c2: #b39dff; }
.hm-case--auto { --hm-c1: #059669; --hm-c2: #4fdcae; }

.hm-case__art {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	height: 182px;
	padding: 30px 32px 0;
	background: linear-gradient(135deg, var(--hm-c1), var(--hm-c2));
	overflow: hidden;
}
.hm-case__art::after { content: ""; position: absolute; right: -50px; top: -60px; width: 220px; height: 220px; border-radius: 50%; background: rgba(255, 255, 255, .14); }
.hm-case__col { flex: none; width: 29%; padding: 8px 6px 2px; border-radius: 14px; background: rgba(255, 255, 255, .18); }
.hm-case__col i {
	display: block;
	height: 32px;
	margin: 0 0 7px;
	border-radius: 9px;
	background:
		linear-gradient(#c6d2ec, #c6d2ec) 9px 8px / 62% 4px no-repeat,
		linear-gradient(var(--hm-c1), var(--hm-c1)) 9px 18px / 40% 4px no-repeat,
		#fff;
}
.hm-case__badge { position: absolute; z-index: 1; right: 18px; bottom: 16px; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; background: #fff; color: var(--hm-c1); box-shadow: 0 10px 22px -10px rgba(0, 0, 0, .4); }
.hm-case__badge svg { width: 22px; height: 22px; }

/* Кейсы: сцена по отрасли вместо «доски» (app/partials/case-art.php). Заливки: w — белое,
   g — стекло, l — светлый серо-голубой, a — акцент продукта, wl — белые строки на стекле. */
.hm-case__scene { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; }
.hm-case__scene .w { fill: #fff; }
.hm-case__scene .g { fill: rgba(255, 255, 255, .28); }
.hm-case__scene .l { fill: #c9d6f0; }
.hm-case__scene .a { fill: var(--hm-c1); }
.hm-case__scene .wl { fill: rgba(255, 255, 255, .85); }
.hm-case__scene .s, .hm-case__scene .s2, .hm-case__scene .s5, .hm-case__scene .sd { fill: none; stroke: #fff; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }
.hm-case__scene .s5 { stroke: rgba(255, 255, 255, .55); }
.hm-case__scene .sd { stroke-dasharray: 1 11; stroke-width: 5; }
.hm-case__scene .s3, .hm-case__scene .s4, .hm-case__scene .s6, .hm-case__scene .s7 { fill: none; stroke-linecap: round; stroke-linejoin: round; }
.hm-case__scene .s3 { stroke: #c9d6f0; stroke-width: 3; }
.hm-case__scene .s4 { stroke: var(--hm-c1); stroke-width: 5; }
.hm-case__scene .s6 { stroke: var(--hm-c1); stroke-width: 3.5; }
.hm-case__scene .s7 { stroke: var(--hm-c1); stroke-width: 3; }
.hm-case__scene .ring { fill: none; stroke: #fff; stroke-width: 9; }
.hm-case__scene .ring2 { stroke: #fff; stroke-width: 5; }

.hm-case__body { display: flex; flex: 1; flex-direction: column; gap: 14px; padding: 24px 26px 28px; }
.hm-case__meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 12px; }
.hm-case__kind { display: inline-flex; align-items: center; gap: 8px; color: var(--hm-ink); font-size: 12.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.hm-case__kind i { width: 9px; height: 9px; border-radius: 50%; background: var(--hm-c1); }
.hm-case__tag { padding: 5px 12px; border-radius: 999px; background: var(--hm-tint); color: var(--hm-muted); font-size: 12.5px; font-weight: 500; }
.hm-case h3 { font-size: 20px; line-height: 1.35; font-weight: 700; letter-spacing: -.01em; }
.hm-case p { color: var(--hm-text); font-size: 15px; line-height: 1.6; }

/* ── 05 Что внедряем ────────────────────────────────────────────────────── */

.hm-svcs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.hm-svc {
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--hm-line);
	border-radius: 28px;
	background: var(--hm-card);
	box-shadow: var(--hm-shadow);
	--hm-c1: #0284c7; --hm-c2: #4cc4f2;
}
.hm-svc--amo { --hm-c1: #2557f0; --hm-c2: #6f9bff; }
.hm-svc--int { --hm-c1: #6d4aff; --hm-c2: #b39dff; }
.hm-svc--ai { --hm-c1: #047857; --hm-c2: #34d399; }
.hm-svc--onec { --hm-c1: #b45309; --hm-c2: #f5a524; }

.hm-svc__head {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 26px;
	min-height: 122px;
	padding: 20px 24px 18px;
	background: linear-gradient(135deg, var(--hm-c1), var(--hm-c2));
	color: #fff;
	overflow: hidden;
}
.hm-svc__head::after { content: ""; position: absolute; right: -44px; top: -52px; width: 150px; height: 150px; border-radius: 50%; background: rgba(255, 255, 255, .16); }
.hm-svc__head h3 { position: relative; z-index: 1; font-size: 22px; line-height: 1.2; font-weight: 800; letter-spacing: -.01em; }
.hm-svc__head .hm-tile { position: relative; z-index: 1; }
.hm-svc__body { display: flex; flex: 1; flex-direction: column; gap: 18px; padding: 22px 24px 28px; }
.hm-svc__body p { color: var(--hm-text); font-size: 14.5px; line-height: 1.65; }

/* ── 06 ИИ-агенты (тёмный) ──────────────────────────────────────────────── */

.hm-sec--ai { background: #120f3c; }
.hm-sec--ai::before { width: 820px; height: 820px; left: -330px; top: -400px; background: radial-gradient(closest-side, rgba(110, 80, 230, .70), transparent); }
.hm-sec--ai::after { width: 760px; height: 700px; right: -300px; bottom: -330px; background: radial-gradient(closest-side, rgba(20, 150, 150, .45), transparent); }

.hm-sec--ai .hm-card, .hm-strip {
	border: 1px solid var(--hm-line);
	background: linear-gradient(160deg, rgba(255, 255, 255, .10), rgba(255, 255, 255, .04));
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
}
.hm-sec--ai .hm-card--2 .hm-tile { background: linear-gradient(135deg, #7a56ff, #b39dff); box-shadow: 0 12px 24px -10px rgba(122, 86, 255, .6); }
.hm-sec--ai .hm-card--3 .hm-tile { background: linear-gradient(135deg, #0a8f63, #34d399); box-shadow: 0 12px 24px -10px rgba(16, 185, 129, .6); }
.hm-sec--ai .hm-card h3 { margin-top: 20px; }
.hm-sec--ai .hm-list li { font-size: 14.5px; }

.hm-strip {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px 32px;
	margin-top: 24px;
	padding: 22px 32px;
	border-radius: 24px;
	color: #fff;
}
.hm-strip__text { display: grid; gap: 4px; min-width: 0; }
.hm-strip__text span { font-size: 19px; line-height: 1.35; font-weight: 700; }
.hm-strip__text b { font-weight: 800; }
.hm-strip__text small { color: var(--hm-text); font-size: 14px; line-height: 1.5; }
.hm-strip__btns { display: flex; flex: none; flex-wrap: wrap; align-items: center; gap: 8px 22px; }

/* ── 07 Цены ────────────────────────────────────────────────────────────── */

/* Три направления: флагман (внедрение под ключ) и две малые карточки. Сумма — одна на
   направление, в «от»; сайты разводятся фразами словаря, не стилями. */
.hm-pricing { display: grid; grid-template-columns: minmax(0, 11fr) minmax(0, 12fr); gap: 24px; align-items: stretch; }
.hm-pricing__side { display: grid; grid-template-rows: 1fr 1fr; gap: 24px; }
.hm-pr {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 32px;
	border: 1px solid var(--hm-line);
	border-radius: 28px;
	background: var(--hm-card);
	box-shadow: var(--hm-shadow);
}
.hm-pr__head { display: flex; align-items: center; gap: 14px; }
.hm-pr__head .hm-tile { width: 44px; height: 44px; border-radius: 14px; }
.hm-pr__head .hm-tile svg { width: 22px; height: 22px; }
.hm-pr h3 { margin: 0; font-size: 20px; line-height: 1.25; font-weight: 700; letter-spacing: -.01em; }
.hm-pr--2 .hm-tile { background: linear-gradient(135deg, #7a56ff, #b39dff); box-shadow: 0 12px 24px -10px rgba(122, 86, 255, .55); }
.hm-pr--3 .hm-tile { background: linear-gradient(135deg, #0a8f63, #34d399); box-shadow: 0 12px 24px -10px rgba(16, 185, 129, .55); }
.hm-pr__price { display: flex; align-items: baseline; gap: 10px; margin: 0; color: var(--hm-ink); }
.hm-pr__price strong { font-size: 40px; line-height: 1.1; font-weight: 800; letter-spacing: -.03em; }
.hm-pr__price .hm-from { color: var(--hm-muted); font-size: 16px; font-weight: 600; }
.hm-pr__price--text strong { font-size: 28px; }
/* У узбекского и казахского «от» — послелог: «50 000 ₸ бастап», «3 500 000 soʼm dan». */
html[lang="uz"] .hm-pr__price .hm-from, html[lang="kk"] .hm-pr__price .hm-from { order: 2; }
.hm-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.hm-chips a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 44px;
	padding: 0 16px;
	border-radius: 999px;
	background: var(--hm-tint);
	color: var(--hm-accent);
	font-size: 14.5px;
	font-weight: 600;
	transition: background-color .15s, transform .15s;
}
.hm-chips a i { font-style: normal; opacity: .65; }
.hm-chips a:hover { background: var(--hm-eyebrow-bg); transform: translateY(-1px); }

/* Флагман — тёмный в обеих темах, как блоки этапов и ИИ-агентов. */
.hm-pr--main {
	overflow: hidden;
	gap: 22px;
	padding: 44px;
	border-color: transparent;
	background: linear-gradient(145deg, #0f1737 0%, #213a8c 100%);
	color: #fff;
	box-shadow: 0 30px 60px -30px rgba(21, 40, 120, .6);
}
.hm-pr--main h3 { color: #fff; font-size: 22px; }
.hm-pr--main .hm-pr__price { color: #fff; }
.hm-pr--main .hm-pr__price strong { font-size: 72px; }
.hm-pr--main .hm-pr__price .hm-from { color: #b6c4ee; font-size: 28px; }
.hm-pr--main .hm-chips a { background: rgba(255, 255, 255, .14); color: #fff; }
.hm-pr--main .hm-chips a:hover { background: rgba(255, 255, 255, .24); }
.hm-pr--main .hm-btn { align-self: flex-start; margin-top: auto; position: relative; z-index: 1; color: var(--hm-blue); }
.hm-pr__price strong { white-space: nowrap; }
.hm-pr--main .hm-pr__price--long strong { font-size: 46px; }
.hm-pr--main .hm-pr__price--long .hm-from { font-size: 22px; }
.hm-pr__art { position: absolute; right: 26px; bottom: 0; width: 250px; height: 150px; pointer-events: none; }
.hm-pr__art::before { content: ""; position: absolute; right: -10px; top: -50px; width: 210px; height: 210px; border-radius: 50%; background: radial-gradient(circle, rgba(111, 155, 255, .5), rgba(111, 155, 255, 0) 70%); }
.hm-pr__art i { position: absolute; bottom: 0; width: 50px; border-radius: 14px 14px 0 0; background: rgba(255, 255, 255, .9); }
.hm-pr__art i:nth-child(1) { left: 0; height: 52px; opacity: .35; }
.hm-pr__art i:nth-child(2) { left: 62px; height: 82px; opacity: .5; }
.hm-pr__art i:nth-child(3) { left: 124px; height: 112px; opacity: .72; }
.hm-pr__art i:nth-child(4) { left: 186px; height: 144px; }
.hm-pr__art b { position: absolute; right: 2px; top: 0; width: 46px; height: 46px; border-radius: 50%; background: linear-gradient(135deg, #ffd166, #fa9a33); }
/* ── 08 Кто мы ──────────────────────────────────────────────────────────── */

.hm-sec--about::before { width: 640px; height: 640px; left: -280px; bottom: -300px; background: radial-gradient(closest-side, var(--hm-glow-b), transparent); }
.hm-about { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.hm-about__text { min-width: 0; }
.hm-about__text h2 { margin: 22px 0 18px; font-size: 40px; line-height: 1.2; font-weight: 800; letter-spacing: -.02em; }
.hm-about__text p { margin-bottom: 30px; color: var(--hm-text); font-size: 17px; line-height: 1.7; }

.hm-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.hm-fact {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 6px;
	min-height: 150px;
	padding: 24px 28px;
	border-radius: 28px;
	color: #fff;
	box-shadow: 0 24px 44px -24px rgba(31, 51, 120, .55);
	background: linear-gradient(135deg, #2557f0, #3b6cf2);
}
.hm-fact--2 { background: linear-gradient(135deg, #5b3df0, #7a56ff); }
.hm-fact--3 { background: linear-gradient(135deg, #0369a1, #0b7fb8); }
.hm-fact--4 { background: linear-gradient(135deg, #047857, #08845a); }
.hm-fact:last-child:nth-child(odd) { grid-column: 1 / -1; min-height: 130px; }
.hm-fact b { font-size: clamp(30px, 3.4vw, 44px); line-height: 1.1; font-weight: 800; letter-spacing: -.02em; overflow-wrap: anywhere; }
.hm-fact span { color: rgba(255, 255, 255, .96); font-size: 15px; line-height: 1.4; }

/* ── 09 Виджеты ─────────────────────────────────────────────────────────── */

.hm-widgets { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.hm-widget { padding: 28px 26px 30px; border: 1px solid var(--hm-line); border-radius: 28px; background: var(--hm-card); box-shadow: var(--hm-shadow); transition: transform .2s; }
.hm-widget:hover { transform: translateY(-3px); }
.hm-widget h3 { margin: 24px 0 10px; font-size: 19px; line-height: 1.3; font-weight: 700; letter-spacing: -.01em; }
.hm-widget p { color: var(--hm-text); font-size: 14.5px; line-height: 1.6; }
.hm-widget--pay .hm-tile { background: linear-gradient(135deg, #0a8f63, #34d399); box-shadow: 0 12px 24px -10px rgba(16, 185, 129, .6); }
.hm-widget--ai .hm-tile { background: linear-gradient(135deg, #7a56ff, #b39dff); box-shadow: 0 12px 24px -10px rgba(122, 86, 255, .6); }
.hm-widget--stock .hm-tile { background: linear-gradient(135deg, #0a84c1, #4cc9f0); box-shadow: 0 12px 24px -10px rgba(14, 165, 233, .6); }
.hm-widget--auto .hm-tile { background: linear-gradient(135deg, #b45309, #f5a524); box-shadow: 0 12px 24px -10px rgba(245, 165, 36, .6); }

/* ── Отзывы (блок рисуется только при непустом site.reviews) ────────────── */

.hm-reviews { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.hm-review { display: flex; flex-direction: column; gap: 22px; padding: 30px; border: 1px solid var(--hm-line); border-radius: 28px; background: var(--hm-card); box-shadow: var(--hm-shadow); }
.hm-review__mark { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: linear-gradient(135deg, #2f66f5, #78a0ff); color: #fff; }
.hm-review__mark svg { width: 24px; height: 24px; }
.hm-review blockquote { flex: 1; color: var(--hm-ink); font-size: 16.5px; line-height: 1.65; }
.hm-review figcaption { display: grid; gap: 3px; padding-top: 18px; border-top: 1px solid var(--hm-line); }
.hm-review figcaption b { font-size: 16px; font-weight: 700; }
.hm-review figcaption span { color: var(--hm-muted); font-size: 14px; line-height: 1.4; }
.hm-review a { display: inline-flex; align-items: center; width: fit-content; min-height: 44px; color: var(--hm-accent); font-size: 14.5px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }

/* ── 10 Партнёр (тёмная полоса) ─────────────────────────────────────────── */

.hm-sec--partner { padding: 76px 0; background: #0b1538; }
.hm-sec--partner::before { width: 700px; height: 700px; left: -240px; top: -340px; background: radial-gradient(closest-side, rgba(47, 102, 245, .60), transparent); }
.hm-sec--partner::after { width: 620px; height: 520px; right: -200px; bottom: -280px; background: radial-gradient(closest-side, rgba(110, 80, 230, .55), transparent); }

.hm-partner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.hm-partner__text h2 { margin: 20px 0 14px; font-size: 40px; line-height: 1.2; font-weight: 800; letter-spacing: -.02em; }
.hm-partner__text p { max-width: 480px; color: var(--hm-text); font-size: 16.5px; line-height: 1.65; }

.hm-badges { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 16px; }
.hm-badges--1 { grid-template-columns: minmax(0, 340px); }
.hm-pbadge { display: flex; align-items: center; gap: 16px; min-width: 0; padding: 18px 24px; border-radius: 24px; background: #fff; color: #0f1830; box-shadow: 0 26px 50px -24px rgba(0, 0, 0, .6); }
.hm-pbadge__logo { display: grid; place-items: center; flex: none; width: 78px; height: 56px; }
.hm-pbadge__logo img { display: block; width: 100%; height: 100%; object-fit: contain; }
.hm-pbadge__caption { min-width: 0; font-size: 16px; line-height: 1.3; font-weight: 700; }

/* ── 11 Вопросы ─────────────────────────────────────────────────────────── */

.hm-sec--faq::before { width: 600px; height: 700px; left: -300px; bottom: -280px; background: radial-gradient(closest-side, var(--hm-glow-a), transparent); }
.hm-faq { display: grid; grid-template-columns: minmax(0, 360px) minmax(0, 1fr); gap: 90px; align-items: start; }
.hm-faq__side h2 { margin: 22px 0 16px; font-size: 40px; line-height: 1.2; font-weight: 800; letter-spacing: -.02em; }
.hm-faq__side > p { color: var(--hm-text); font-size: 16.5px; line-height: 1.6; }

.hm-ask { margin-top: 36px; padding: 26px 24px 28px; border: 1px solid var(--hm-line); border-radius: 24px; background: linear-gradient(145deg, #eef2ff, #f6f1ff); }
.hm-ask h3 { font-size: 19px; line-height: 1.3; font-weight: 700; color: #0f1830; }
.hm-ask p { margin: 8px 0 20px; color: #4a5675; font-size: 14.5px; line-height: 1.55; }
.hm-ask .hm-btn { width: 100%; }

.hm-faq__list { display: grid; gap: 12px; }
.hm-q { border: 1px solid var(--hm-line); border-radius: 22px; background: var(--hm-card); transition: background-color .2s, border-color .2s; }
.hm-q[open] { border-color: rgba(47, 102, 245, .35); background: #f1f5ff; box-shadow: 0 18px 40px -26px rgba(47, 102, 245, .55); }
.hm-q summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 56px; padding: 18px 24px; cursor: pointer; list-style: none; font-size: 16.5px; line-height: 1.45; font-weight: 600; color: var(--hm-ink); }
.hm-q summary::-webkit-details-marker { display: none; }
.hm-q summary span { min-width: 0; }
.hm-q summary i {
	flex: none;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	color: var(--hm-accent);
	background:
		linear-gradient(currentColor, currentColor) center / 14px 2px no-repeat,
		linear-gradient(currentColor, currentColor) center / 2px 14px no-repeat,
		var(--hm-tint);
}
.hm-q[open] summary i { color: #fff; background: linear-gradient(#fff, #fff) center / 14px 2px no-repeat, var(--hm-blue); }
.hm-q__answer { padding: 0 24px 22px; color: var(--hm-text); font-size: 15.5px; line-height: 1.7; }
.hm-q__answer p { margin: 0; max-width: 62ch; }
body.hm .hm-q[open] .hm-q__answer { color: #4a5675; }
body.hm .hm-q[open] summary { color: #0f1830; }

/* Вопросы в тёмной теме: раскрытый — подсвеченное стекло, а не светлая плашка. */
@media (prefers-color-scheme: dark) {
	.hm-q[open] { background: rgba(79, 124, 255, .14); border-color: rgba(111, 155, 255, .45); box-shadow: none; }
	body.hm .hm-q[open] .hm-q__answer { color: #c4cdea; }
	body.hm .hm-q[open] summary { color: #fff; }
	.hm-ask { background: linear-gradient(145deg, rgba(79, 124, 255, .14), rgba(139, 109, 255, .12)); }
	.hm-ask h3 { color: #fff; }
	.hm-ask p { color: #b9c3e3; }
	.hm-pbadge { box-shadow: none; }
	.hm-sec--steps { background: #070d24; }
	.hm-sec--ai { background: #0d0b2e; }
	.hm-sec--partner { background: #080f2c; }
}

/* ── Адаптив ────────────────────────────────────────────────────────────── */

@media (max-width: 1100px) {
	.hm-svcs, .hm-steps, .hm-widgets { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hm-step::after { display: none; }
	.hm-hero h1 { font-size: 46px; }
	.hm-faq { gap: 48px; }
	.hm-trio { gap: 18px; }
	.hm-card, .hm-card--price { padding: 26px 22px; }
}

@media (max-width: 980px) {
	.hm-pricing { grid-template-columns: minmax(0, 1fr); }
	.hm-pricing__side { grid-template-rows: none; }
	.hm-pr--main { padding: 36px; }
	.hm-pr--main .hm-btn { margin-top: 8px; }
	.hm-pr__art { opacity: .55; }
	.hm-sec { padding: 72px 0; }
	.hm-hero { padding: 56px 0 72px; }
	.hm-hero__in, .hm-about, .hm-partner, .hm-faq { grid-template-columns: minmax(0, 1fr); gap: 40px; }
	.hm-hero__art { max-width: 640px; margin: 0 auto; width: 100%; }
	.hm-faq__side > p { max-width: 560px; }
	.hm-cases { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hm-reviews { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hm-strip { flex-direction: column; align-items: flex-start; }
	body.hm .ai-live { padding: 64px 0; }
	body.hm .ai-live__in { grid-template-columns: minmax(0, 1fr); gap: 36px; }
	body.hm .ai-live h2 { font-size: 34px; }
}

@media (max-width: 860px) {
	.hm-trio { grid-template-columns: minmax(0, 1fr); }
	.hm-reviews { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 640px) {
	.hm-pr, .hm-pr--main { padding: 26px 22px; border-radius: 24px; }
	.hm-pr--main .hm-pr__price strong { font-size: 52px; }
	.hm-pr--main .hm-pr__price .hm-from { font-size: 22px; }
	.hm-pr__price strong { font-size: 34px; }
	.hm-pr__price--text strong { font-size: 24px; }
	.hm-pr--main .hm-btn { align-self: stretch; }
	.hm-pr--main .hm-pr__price--long strong { font-size: 30px; }
	.hm-pr--main .hm-pr__price--long .hm-from { font-size: 18px; }
	.hm-pr__art { display: none; }
	.hm-wrap { padding: 0 16px; }
	.hm-sec { padding: 56px 0; }
	.hm-sec--partner { padding: 52px 0; }
	.hm-hero { padding: 40px 0 56px; }
	.hm-hero h1 { font-size: 38px; margin: 22px 0 16px; }
	.hm-hero__lead { font-size: 16.5px; margin-bottom: 26px; }
	.hm-head { margin-bottom: 36px; }
	.hm-head h2, .hm-about__text h2, .hm-partner__text h2, .hm-faq__side h2, body.hm .ai-live h2 { font-size: 29px; }
	.hm-head p, .hm-about__text p { font-size: 16px; }
	.hm-hero__actions { flex-direction: column; }
	.hm-hero__actions .hm-btn, .hm-about__text .hm-btn, .hm-center .hm-btn, .hm-strip__btns .hm-btn { width: 100%; }
	.hm-center { display: block; }
	.hm-trust { gap: 14px 24px; }
	.hm-trust li { flex-basis: 120px; }
	.hm-trust b { font-size: 21px; }
	.hm-hero__art { padding-bottom: 64px; }
	.hm-glass { padding: 8px; border-radius: 22px; }
	.hm-glass img { border-radius: 15px; }
	.hm-float--chat { left: -4px; width: min(240px, 72%); padding: 14px 16px 16px; }
	.hm-float--done { right: 6px; top: -14px; bottom: auto; }
	.hm-hero__art { padding-top: 14px; }
	.hm-svcs, .hm-steps, .hm-widgets, .hm-cases { grid-template-columns: minmax(0, 1fr); gap: 18px; }
	.hm-strip { padding: 22px 20px; }
	.hm-strip__btns { width: 100%; flex-direction: column; align-items: stretch; gap: 4px; }
	.hm-strip__btns .hm-link { justify-content: center; }
	.hm-facts { grid-template-columns: minmax(0, 1fr); gap: 14px; }
	.hm-fact { min-height: 0; padding: 22px 24px; }
	.hm-fact b { font-size: 38px; }
	.hm-pbadge { padding: 16px 18px; }
	.hm-badges { grid-template-columns: minmax(0, 1fr); }
	.hm-badges--1 { grid-template-columns: minmax(0, 1fr); }
	.hm-q summary { padding: 16px 18px; font-size: 16px; }
	.hm-q__answer { padding: 0 18px 20px; }
	.hm-ask { margin-top: 28px; }
	body.hm .ai-live { padding: 48px 0; }
	body.hm .ai-live__money { max-width: none; }
	body.hm .ai-live__money b { font-size: 34px; }
	body.hm .ai-live__btn { width: 100%; }
	body.hm .ai-live__btns { flex-direction: column; align-items: stretch; }
	.hm-step__num { font-size: 38px; }
}

@media (max-width: 380px) {
	.hm-hero h1 { font-size: 36px; }
	.hm-trust li { flex-basis: 100%; max-width: 100%; }
}

/* Без движения: плавающие карточки и подъёмы при наведении замирают. */
@media (prefers-reduced-motion: reduce) {
	.hm-float { animation: none; }
	.hm-btn, .hm-case, .hm-widget, .hm-q { transition: none; }
	.hm-btn:hover, .hm-case:hover, .hm-widget:hover { transform: none; }
	body.hm .ai-live__badge i { animation: none; }
}
