/* ==========================================================================
   AllRight Casino PL — таблица стилей сборки
   Шкалы: TYPO-10 · SPACE-09 · CONT-03 · BP-07 · GEO-04 · NAME-04
   Порядок правил: logical (токены → шрифты → сброс → база → блоки → утилиты)
   ========================================================================== */

/* --------------------------------------------------------------- 1. токены */
:root {
	/* палитра (значения .final из спеки) */
	--house: #320034;
	--spot: #fe5200;
	--key-active: #dc4400;
	--page: #ffffff;
	--surface-2: #f7f2f7;
	--letters: #1f2a37;
	--muted: #000000;
	--stroke: #e4dce6;
	--edge-hard: #c8bacb;
	--grad-1: #ffa27e;
	--blend-b: #ff722e;
	--caution: #ba181b;
	/* производный тёмный оттенок акцента: акцентный ТЕКСТ на светлом фоне (AA) */
	--spark: #b23c00;
	--deep-2: #45114a;

	/* ритм (SPACE-09) */
	--s-1: 2px;
	--s-2: 6px;
	--s-3: 10px;
	--s-4: 16px;
	--s-5: 48px;
	--s-6: 80px;
	--s-7: 128px;
	--s-8: 200px;
	/* единый вертикальный шаг секций */
	--sec-y: 48px;

	/* геометрия (GEO-04) */
	--r-1: 1px;
	--r-2: 2px;
	--r-3: 6px;
	--r-4: 8px;
	--r-5: 14px;
	--r-6: 20px;
	--capsule: 9999px;
	--dot: 50%;
	--thin: 1px;
	--b-even: 2px;
	--strong: 3px;
	--d-1: 0 1px 1px rgba(50, 0, 52, 0.04);
	--d-2: 0 1px 2px rgba(50, 0, 52, 0.05);
	--d-3: 0 2px 4px rgba(50, 0, 52, 0.08);
	--d-4: 0 4px 10px rgba(50, 0, 52, 0.10);
	--d-5: 0 8px 20px rgba(50, 0, 52, 0.14);

	/* типографика (TYPO-10) */
	--title: "Bunch Display", "Trebuchet MS", Arial, sans-serif;
	--reading: "Bunch Text", -apple-system, "Segoe UI", Arial, sans-serif;
	--xxl: clamp(32px, 5.4vw, 60px);
	--display-2: clamp(26px, 2.6vw, 34px);
	--display-3: clamp(20px, 1.9vw, 24px);
	--sub-2: 19px;
	--h5: 16px;
	--micro-head: 14px;
	--copy: 16px;
	--small: 13px;
	--tiny: 10px;
	--dense: 1.1;
	--normal: 1.5;
	--roomy: 1.65;
	--book: 400;
	--semi: 600;
	--bold: 800;
	--close: -0.02em;
	--even: 0;
	--airy: 0.06em;

	/* контейнеры (CONT-03) */
	--site: 1180px;
	--narrow: 630px;
	--pad-lg: 24px;
	--pad-md: 32px;
	--edge-narrow: 16px;

	/* шапка */
	--tall: 92px;
	--size-mobile: 78px;

	/* движение (числа из спеки — не округлять) */
	--short: 145ms;
	--steady: 270ms;
	--gentle: 502ms;
	--exit: cubic-bezier(0.13,0.93,0.41,0.96);
	--swing: cubic-bezier(0.55,0.03,0.6,0.9);
	--bounce: cubic-bezier(0.21,1.45,0.71,0.95);
}

/* мобильная шкала кеглей (media_strategy: desktop-first) */
@media (max-width: 800px) {
	:root {
		--sub-2: 17px;
		--h5: 14px;
		--micro-head: 12px;
		--copy: 15px;
		--small: 12px;
		--tiny: 9px;
		--sec-y: 36px;
	}
}

/* ------------------------------------------------------------- 2. шрифты */
/* самохост: файлы лежат в сборке, внешних хостов нет */
@font-face {
	font-family: "Bunch Display";
	src: url("/view-71/face/disp-lat-600.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "Bunch Display";
	src: url("/view-71/face/disp-ext-600.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: "Bunch Display";
	src: url("/view-71/face/disp-lat-700.woff2") format("woff2");
	font-weight: 700 800;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "Bunch Display";
	src: url("/view-71/face/disp-ext-700.woff2") format("woff2");
	font-weight: 700 800;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: "Bunch Text";
	src: url("/view-71/face/read-lat-400.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "Bunch Text";
	src: url("/view-71/face/read-ext-400.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: "Bunch Text";
	src: url("/view-71/face/read-lat-600.woff2") format("woff2");
	font-weight: 600 700;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "Bunch Text";
	src: url("/view-71/face/read-ext-600.woff2") format("woff2");
	font-weight: 600 700;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* --------------------------------------------------------------- 3. сброс */
*, *::before, *::after { box-sizing: border-box; }

html, body {
	margin: 0;
	padding: 0;
	overflow-x: clip;
}

body {
	background: var(--page);
	color: var(--letters);
	font-family: var(--reading);
	font-size: var(--copy);
	font-weight: var(--book);
	line-height: var(--normal);
	-webkit-font-smoothing: antialiased;
}

img { max-width: 100%; }

[id] { scroll-margin-block-start: var(--s-4); }

/* ----------------------------------------------------------------- 4. база */
h1, h2, h3, h4, h5, h6 {
	overflow-wrap: anywhere;
	margin: 0;
}

h1 {
	font-family: var(--title);
	font-size: var(--xxl);
	font-weight: var(--bold);
	line-height: var(--dense);
	letter-spacing: var(--close);
	text-transform: uppercase;
	padding-block-start: 0.08em;
}

h2 {
	font-family: var(--title);
	font-size: var(--display-2);
	font-weight: var(--semi);
	line-height: var(--dense);
	letter-spacing: var(--even);
}

h3 {
	font-family: var(--reading);
	font-size: var(--display-3);
	font-weight: var(--semi);
	line-height: var(--normal);
}

h4 {
	font-family: var(--reading);
	font-size: var(--sub-2);
	font-weight: var(--semi);
}

p { margin: 0; }

a { color: var(--spark); }

a:hover { color: var(--house); }

strong { font-weight: 700; }

.mainFlow { display: block; }

/* ------------------------------------------------- 5. доступность и движение */
.skipHop {
	position: fixed;
	inset-inline-start: var(--s-4);
	z-index: 200;
	padding: var(--s-3) var(--s-4);
	background: var(--house);
	color: #ffffff;
	font-family: var(--title);
	font-size: var(--small);
	text-decoration: none;
	border-radius: var(--r-3);
}

.skipHop:not(:focus) { top: -200px !important; }

.skipHop:focus { top: var(--s-3); }

.srOnly {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

/* появление: reveal = fade, сдвиг 32px, порог 0.15, класс is-shown */
[data-appear] {
	opacity: 0;
	transform: translateY(32px);
	transition: opacity var(--gentle) var(--exit), transform var(--gentle) var(--exit);
}

[data-appear].is-shown {
	opacity: 1;
	transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation: none !important;
		transition: none !important;
	}
	[data-appear] {
		opacity: 1;
		transform: none;
	}
}

/* --------------------------------------------- 6. общая ширина всех секций */
.moduleRegion-hold,
.regionRail-hold,
.districtBunch-hold,
.blockBunch-hold,
.podList-hold,
.boxPanel-hold,
.vectorBlock-hold,
.hingeSpan-hold,
.huskGroup-hold,
.fragmentBody-hold,
.spikeContainer-hold,
.elementWrapper-hold,
.arrowLane-hold,
.coreSlider-hold {
	max-width: calc(var(--site) + 2 * var(--pad-lg));
	margin-inline: auto;
	padding-inline: var(--pad-lg);
	width: 100%;
}

@media (max-width: 800px) {
	.moduleRegion-hold,
	.regionRail-hold,
	.districtBunch-hold,
	.blockBunch-hold,
	.podList-hold,
	.boxPanel-hold,
	.vectorBlock-hold,
	.hingeSpan-hold,
	.huskGroup-hold,
	.fragmentBody-hold,
	.spikeContainer-hold,
	.elementWrapper-hold,
	.arrowLane-hold,
	.coreSlider-hold {
		padding-inline: var(--edge-narrow);
	}
}

/* ------------------------------------------- 7. шапка HEAD-BURGER (static) */
.sectionBunch {
	position: relative;
	z-index: 60;
	background: var(--page);
	box-shadow: var(--d-3);
	backdrop-filter: blur(6px);
}

.sectionBunch-bar {
	height: 92px;
	display: flex;
	align-items: center;
	gap: var(--s-4);
	max-width: 1440px;
	margin-inline: auto;
	padding-inline: var(--s-4);
}

.sectionBunch-badge {
	order: 1;
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	text-decoration: none;
}

.sectionBunch-art {
	height: 69px;
	width: auto;
	display: block;
	flex-shrink: 0;
}

.sectionBunch-cluster {
	order: 2;
	margin-left: auto;
	display: flex;
	align-items: center;
	gap: var(--s-3);
}

/* тихая кнопка шапки: one-outline, форма square */
.sectionBunch-key {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding-inline: var(--s-4);
	border: var(--b-even) solid var(--spot);
	border-radius: 0;
	background: var(--page);
	color: var(--house);
	font-family: var(--title);
	font-size: var(--small);
	font-weight: var(--bold);
	letter-spacing: var(--airy);
	text-transform: uppercase;
	text-decoration: none;
	white-space: nowrap;
	flex-shrink: 0;
	transition: transform var(--short) var(--exit), background var(--short) var(--exit);
}

.sectionBunch-key:hover {
	background: var(--surface-2);
	color: var(--house);
}

.sectionBunch-key:active { transform: translateY(1px); }

.sectionBunch-menu-lever {
	order: 3;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 5px;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 0;
	background: var(--page);
	border-radius: var(--r-3);
	cursor: pointer;
}

.sectionBunch-menu-lever:hover { background: var(--surface-2); }

.sectionBunch-pip {
	display: block;
	width: 7px;
	height: 7px;
	border-radius: var(--dot);
	background: var(--house);
	transition: transform var(--short) var(--exit);
}

.sectionBunch-menu-lever[aria-expanded="true"] .sectionBunch-pip { transform: scale(1.3); }

.sectionBunch-tray {
	display: none;
	position: absolute;
	inset-inline: 0;
	top: 100%;
	z-index: 70;
	max-height: 72vh;
	overflow-y: auto;
	background: var(--page);
	border-block-start: var(--thin) solid var(--stroke);
	box-shadow: var(--d-5);
}

.sectionBunch-tray.is-open { display: block; }

.sectionBunch-guide { padding: var(--s-4) var(--pad-lg); }

.sectionBunch-run {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--s-2);
}

.sectionBunch-node { display: block; }

.sectionBunch-route {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: var(--s-3) var(--s-4);
	background: var(--page);
	color: var(--house);
	font-family: var(--title);
	font-size: 15px;
	font-weight: var(--semi);
	text-decoration: none;
	white-space: nowrap;
	border-radius: var(--r-3);
	transition: background var(--short) var(--exit), color var(--short) var(--exit);
}

.sectionBunch-route:hover {
	background: var(--surface-2);
	color: var(--spark);
}

.sectionBunch-route[aria-current="page"] {
	background: var(--house);
	color: #ffffff;
}

/* перенос строки шапки на узком экране: кнопка оффера уходит вниз, не исчезает */
@media (max-width: 519px) {
	.sectionBunch-bar {
		height: auto;
		min-height: var(--size-mobile);
		flex-wrap: wrap;
		row-gap: var(--s-3);
		padding-block: var(--s-3);
	}
	.sectionBunch-art { height: 60px; }
	.sectionBunch-cluster {
		order: 4;
		flex-basis: 100%;
		margin-left: 0;
	}
	.sectionBunch-menu-lever {
		order: 3;
		margin-left: auto;
	}
	.sectionBunch-cluster .sectionBunch-key {
		width: 100%;
		font-size: var(--tiny);
		padding-inline: var(--s-3);
	}
}

/* ------------------------------------------------ 8. плашка 18+ (RG-03) */
.rg-banner {
	width: min(var(--site), calc(100% - 2 * var(--pad-lg)));
	margin: var(--s-3) auto;
	padding: var(--s-3) var(--s-4);
	background: var(--caution);
	color: #ffffff;
	border-radius: var(--r-4);
	font-size: var(--small);
	line-height: var(--normal);
	text-align: center;
}

.rgMark {
	display: inline-block;
	margin-inline-end: var(--s-2);
	padding: 0 var(--s-2);
	background: #ffffff;
	color: var(--caution);
	border-radius: var(--r-2);
	font-family: var(--title);
	font-weight: var(--bold);
	font-size: var(--small);
}

.rgLead {
	background: var(--caution);
	color: #ffffff;
	text-decoration: underline;
}

.rgLead:hover {
	background: #8f1214;
	color: #ffffff;
}

@media (max-width: 519px) {
	.rg-banner { width: calc(100% - 2 * var(--edge-narrow)); }
}

/* ------------------------------------------- 9. hero HERO-08 Magazine Cover */
.moduleRegion {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 100vh;
	background-color: var(--house);
	background-image: url("/view-71/picture.webp");
	background-size: cover;
	background-position: 50% 42%;
	background-repeat: no-repeat;
}

.moduleRegion::before {
	content: "";
	position: absolute;
	inset-block-start: 0;
	inset-inline-start: 0;
	width: 100%;
	height: 100%;
	background-image: linear-gradient(0deg, rgba(20, 0, 22, 0.88), rgba(20, 0, 22, 0.42));
	pointer-events: none;
}

.moduleRegion-hold {
	position: relative;
	z-index: 2;
	padding-block: var(--s-6) var(--s-6);
}

.moduleRegion-cover { display: block; }

.moduleRegion-issue {
	display: block;
	margin-block-end: var(--s-4);
	color: #f2dfe4;
	font-family: var(--reading);
	font-size: var(--tiny);
	font-weight: var(--semi);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

.moduleRegion-top {
	color: #ffffff;
	text-shadow: 0 2px 18px rgba(12, 0, 14, 0.55);
}

.moduleRegion-deck {
	max-width: var(--narrow);
	margin-block-start: var(--s-4);
	color: #f1e4e7;
	font-size: var(--sub-2);
	line-height: var(--roomy);
}

.moduleRegion-tag {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--s-3);
	margin-block-start: var(--s-5);
	color: #e8d6da;
	font-size: var(--small);
}

.moduleRegion-tag > * + *::before {
	content: "";
	display: inline-block;
	width: var(--thin);
	height: 11px;
	margin-inline-end: var(--s-3);
	background: #b39aa1;
	vertical-align: -1px;
}

.moduleRegion-on { color: #e8d6da; }

.moduleRegion-hint {
	position: absolute;
	inset-block-end: var(--s-4);
	inset-inline-start: var(--pad-lg);
	color: #e8d6da;
	font-family: var(--reading);
	font-size: var(--tiny);
	letter-spacing: var(--airy);
	text-transform: uppercase;
	pointer-events: none;
	animation: bunchSink 2100ms var(--swing) infinite;
}

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

@media (max-width: 800px) {
	.moduleRegion { min-height: auto; }
	.moduleRegion-hold { padding-block: var(--s-5) var(--s-6); }
	.moduleRegion-hint { display: none; }
}

/* ------------------------------------- 10. шапка страницы PHEAD-05 */
.regionRail { padding-block: var(--sec-y) var(--s-4); }

.regionRail-top { color: var(--house); }

.regionRail-sub {
	margin-block-start: var(--s-4);
	color: var(--letters);
	font-size: var(--sub-2);
	line-height: var(--roomy);
}

/* ------------------------------------------- 11. крошки BREAD-04 Numbered */
.districtBunch { padding-block: var(--s-4) 0; }

.districtBunch-run {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--s-3);
	margin: 0;
	padding: 0;
}

.districtBunch-node {
	display: inline-flex;
	align-items: center;
}

.districtBunch-node + .districtBunch-node::before {
	content: "—";
	margin-inline-end: var(--s-3);
	color: var(--edge-hard);
}

.districtBunch-idx {
	margin-inline-end: var(--s-1);
	color: var(--spark);
	font-family: var(--title);
	font-size: var(--micro-head);
	font-weight: var(--bold);
}

.districtBunch-route {
	color: var(--muted);
	font-size: var(--small);
	letter-spacing: var(--airy);
	text-transform: uppercase;
	text-decoration: none;
}

.districtBunch-route:hover {
	color: var(--spark);
	text-decoration: underline;
}

.districtBunch-here {
	color: var(--letters);
	font-size: var(--small);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

/* ------------------------------ 12. карточки GRID-08 Top-Border Accent */
.blockBunch { padding-block: var(--sec-y); }

.blockBunch-top { color: var(--house); }

.blockBunch-run {
	list-style: none;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--s-4);
	margin: var(--s-5) 0 0;
	padding: 0;
}

.blockBunch-tile {
	display: flex;
	flex-direction: column;
	gap: var(--s-3);
	padding: var(--s-4);
	background: var(--surface-2);
	color: var(--letters);
	border-block-start: 4px solid var(--spot);
	border-radius: 0 0 var(--r-4) var(--r-4);
	box-shadow: var(--d-3);
	transition: transform var(--steady) var(--exit), box-shadow var(--steady) var(--exit);
}

.blockBunch-tile:hover {
	transform: translateY(-3px);
	box-shadow: var(--d-5);
}

.blockBunch-glyph {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	color: var(--spark);
	align-self: flex-start;
}

.blockBunch-glyph svg {
	width: 30px;
	height: 30px;
	fill: currentColor;
}

.blockBunch-cap {
	color: var(--house);
	font-family: var(--title);
	font-size: var(--sub-2);
	font-weight: var(--semi);
}

.blockBunch-note {
	color: var(--letters);
	font-size: var(--copy);
	line-height: var(--roomy);
}

@media (max-width: 1100px) {
	.blockBunch-run { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
	.blockBunch-run { grid-template-columns: minmax(0, 1fr); }
}

/* ------------------------- 13. текст PROSE-23: первый абзац как врезка */
.podList { padding-block: var(--sec-y); }

.podList-node + .podList-node { margin-block-start: var(--s-5); }

.podList-top {
	margin-block-start: 0;
	margin-block-end: var(--s-4);
	color: var(--house);
	font-size: var(--display-2);
	font-weight: var(--semi);
}

/* accentSide: top · fill: tint · lineWeight: thick · density: tight */
.podList-lede {
	padding-block: var(--s-3);
	border-top: 5px solid var(--spot);
	background: var(--surface-2);
	color: var(--letters);
	font-size: var(--sub-2);
	font-weight: var(--semi);
	line-height: var(--normal);
}

.podList-note {
	margin-block-start: var(--s-4);
	color: var(--letters);
	font-size: var(--copy);
	line-height: var(--roomy);
}

.podList-run {
	margin-block: var(--s-4) 0;
	padding-inline-start: var(--s-5);
	color: var(--letters);
}

.podList-point {
	margin-block-start: var(--s-3);
	line-height: var(--roomy);
}

.podList-route {
	color: var(--spark);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.podList-route:hover {
	background: #ffe6d8;
	color: var(--house);
}

.podList-frame {
	display: block;
	width: fit-content;
	margin: var(--s-5) auto 0;
	padding: 0;
}

.podList-art {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 480px;
	object-fit: contain;
	border-radius: var(--r-4);
	background: var(--surface-2);
}

.podList-cap {
	margin-block-start: var(--s-3);
	color: var(--muted);
	font-size: var(--small);
	text-align: center;
}

/* врезка офферной кнопки внутри текста */
.podList-hook {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--s-3) var(--s-4);
	margin-block-start: var(--s-5);
	padding: var(--s-4);
	background: var(--surface-2);
	color: var(--letters);
	border: var(--thin) solid var(--stroke);
	border-radius: var(--r-4);
}

.podList-hookNote {
	flex: 1 1 260px;
	color: var(--letters);
	font-family: var(--title);
	font-size: var(--sub-2);
	font-weight: var(--semi);
}

.podList-hookGo { flex: 0 0 auto; }

.podList-hookFine {
	flex-basis: 100%;
	color: var(--muted);
	font-size: var(--tiny);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

/* --------------------------- 14. вопросы FAQ-09 Magazine Q&A + аккордеон */
.boxPanel { padding-block: var(--sec-y); }

.boxPanel-top { color: var(--house); }

.boxPanel-run {
	display: flex;
	flex-direction: column;
	gap: var(--s-4);
	margin-block-start: var(--s-5);
}

.boxPanel-node {
	padding-block: var(--s-4);
	background: var(--page);
	color: var(--letters);
}

.boxPanel-ask {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: baseline;
	gap: var(--s-3);
	cursor: pointer;
	list-style: none;
}

.boxPanel-ask::-webkit-details-marker { display: none; }

.boxPanel-mark {
	color: var(--spark);
	font-family: var(--title);
	font-size: var(--h5);
	font-weight: var(--bold);
}

.boxPanel-cap {
	color: var(--letters);
	font-family: var(--title);
	font-size: var(--sub-2);
	font-weight: 700;
	font-style: italic;
}

.boxPanel-reply {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: var(--s-3);
	margin-block-start: var(--s-3);
}

.boxPanel-echo {
	color: var(--spark);
	font-family: var(--title);
	font-size: var(--h5);
	font-weight: var(--bold);
}

.boxPanel-note {
	color: var(--letters);
	font-size: var(--copy);
	line-height: var(--roomy);
}

.boxPanel-node[open] .boxPanel-mark { color: var(--house); }

/* ---------------------------- 15. отзывы REV-05 Vertical Timeline-Style */
.vectorBlock { padding-block: var(--sec-y); }

.vectorBlock-top { color: var(--house); }

.vectorBlock-run {
	list-style: none;
	margin: var(--s-5) 0 0;
	padding: 0 0 0 var(--s-4);
	border-inline-start: var(--thin) solid var(--spot);
}

.vectorBlock-node {
	position: relative;
	padding-inline-start: var(--s-5);
	color: var(--letters);
}

.vectorBlock-node + .vectorBlock-node { margin-block-start: var(--s-5); }

.vectorBlock-pin {
	position: absolute;
	inset-inline-start: -8px;
	inset-block-start: 8px;
	width: 16px;
	height: 16px;
	border-radius: var(--dot);
	background: var(--spot);
}

.vectorBlock-bar {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: var(--s-3);
	color: var(--muted);
	font-size: var(--small);
}

.vectorBlock-on { color: var(--muted); }

.vectorBlock-author {
	color: var(--house);
	font-family: var(--title);
	font-weight: var(--semi);
}

.vectorBlock-stars {
	display: inline-flex;
	gap: 3px;
	margin-block-start: var(--s-2);
}

.vectorBlock-pipFull,
.vectorBlock-pipHalf,
.vectorBlock-pipOff {
	display: block;
	width: 14px;
	height: 14px;
	clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
}

.vectorBlock-pipFull { background: var(--spark); }

.vectorBlock-pipHalf { background: linear-gradient(90deg, var(--spark) 50%, var(--edge-hard) 50%); }

.vectorBlock-pipOff { background: var(--edge-hard); }

.vectorBlock-note {
	margin-block-start: var(--s-3);
	color: var(--letters);
	font-size: var(--copy);
	line-height: var(--normal);
}

/* ------------------------------ 16. таблица TABLE-01 Striped Rows Classic */
.hingeSpan { padding-block: var(--sec-y); }

.hingeSpan-top { color: var(--house); }

.hingeSpan-cap {
	margin-block-start: var(--s-3);
	color: var(--muted);
	font-size: var(--small);
}

.hingeSpan-frame {
	margin-block-start: var(--s-4);
	overflow-x: auto;
	border-radius: var(--r-4);
	border: var(--thin) solid var(--stroke);
}

.hingeSpan-grid {
	width: 100%;
	min-width: 560px;
	border-collapse: collapse;
	background: var(--surface-2);
	color: var(--letters);
	font-size: var(--copy);
	text-align: left;
}

.hingeSpan-grid thead th {
	padding: var(--s-4);
	background: var(--house);
	color: var(--spot);
	font-family: var(--reading);
	font-size: var(--micro-head);
	font-weight: var(--semi);
	letter-spacing: var(--airy);
	text-transform: uppercase;
	text-align: left;
}

.hingeSpan-grid td {
	padding: var(--s-4);
	background: var(--surface-2);
	color: var(--muted);
	border-block-start: var(--thin) solid var(--stroke);
	overflow-wrap: break-word;
}

.hingeSpan-grid td:first-child {
	color: var(--letters);
	font-weight: var(--semi);
}

.hingeSpan-bar:nth-child(even) td {
	background: #efe6f0;
	color: var(--muted);
}

.hingeSpan-bar:hover td {
	background: #e7dbe9;
	color: var(--letters);
	transition: background var(--short) var(--exit);
}

/* --------------- 17. призыв CTA-07 Vertical Card + Decorative Number */
.huskGroup { padding-block: var(--sec-y); }

.huskGroup-tile {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--s-3);
	padding: var(--s-5) var(--s-4);
	background: var(--page);
	color: var(--letters);
	border: var(--b-even) solid var(--spot);
	border-radius: var(--r-5);
	text-align: center;
}

.huskGroup-digit {
	color: var(--spark);
	font-family: var(--title);
	font-size: var(--xxl);
	font-weight: var(--bold);
	line-height: var(--dense);
}

.huskGroup-top { color: var(--house); }

.huskGroup-note {
	max-width: var(--narrow);
	color: var(--letters);
	font-size: var(--copy);
	line-height: var(--roomy);
}

.huskGroup-go { margin-block-start: var(--s-3); }

.huskGroup-fine {
	color: var(--muted);
	font-size: var(--tiny);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

/* ----------------------- 18. врезка INLINE-CTA-02 Centered Prompt Card */
.bayStrip {
	display: block;
	max-width: calc(var(--site) + 2 * var(--pad-lg));
	margin-inline: auto;
	padding: var(--sec-y) var(--pad-lg) 0;
}

.bayStrip-tile {
	max-width: var(--narrow);
	margin-inline: auto;
	padding: var(--s-4);
	background: var(--surface-2);
	color: var(--letters);
	border: var(--thin) solid var(--stroke);
	border-radius: var(--r-4);
	text-align: center;
}

.bayStrip-top {
	color: var(--house);
	font-family: var(--title);
	font-size: var(--sub-2);
	font-weight: 700;
}

.bayStrip-note {
	margin-block-start: var(--s-3);
	color: var(--muted);
	font-size: var(--copy);
	line-height: var(--normal);
}

.bayStrip-go {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	margin-block-start: var(--s-4);
	padding-inline: var(--s-5);
	background: var(--spot);
	color: var(--house);
	border-radius: var(--r-4);
	font-family: var(--title);
	font-size: var(--small);
	font-weight: var(--bold);
	letter-spacing: var(--airy);
	text-transform: uppercase;
	text-decoration: none;
	transition: transform var(--short) var(--exit);
}

.bayStrip-go:hover {
	background: var(--spark);
	color: #ffffff;
}

.bayStrip-go:active { transform: translateY(1px); }

@media (max-width: 800px) {
	.bayStrip { padding-inline: var(--edge-narrow); }
}

/* --------------------- 19. автор BYLINE-07 Expertise Tags Block */
.boltTrack {
	display: block;
	max-width: calc(var(--site) + 2 * var(--pad-lg));
	margin-inline: auto;
	padding: var(--sec-y) var(--pad-lg);
}

.boltTrack-tile {
	padding: var(--s-4);
	background: var(--surface-2);
	color: var(--letters);
	border-radius: var(--r-4);
	box-shadow: var(--d-3);
}

.boltTrack-bar {
	display: flex;
	align-items: center;
	gap: var(--s-4);
}

.boltTrack-photo {
	display: block;
	flex: 0 0 auto;
	width: 72px;
	height: 72px;
	overflow: hidden;
	border-radius: var(--dot);
	background: var(--edge-hard);
}

.boltTrack-art {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 18%;
}

.boltTrack-stuff { display: block; }

.boltTrack-author {
	color: var(--house);
	font-family: var(--title);
	font-size: var(--sub-2);
	font-weight: 700;
}

.boltTrack-route {
	color: var(--house);
	text-decoration: none;
}

.boltTrack-route:hover {
	color: var(--spark);
	text-decoration: underline;
}

.boltTrack-hat {
	display: block;
	color: var(--muted);
	font-size: var(--small);
}

.boltTrack-on {
	display: block;
	color: var(--muted);
	font-size: var(--tiny);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

.boltTrack-bio {
	margin-block-start: var(--s-4);
	color: var(--letters);
	font-size: var(--copy);
	line-height: var(--roomy);
}

.boltTrack-run {
	display: flex;
	flex-wrap: wrap;
	gap: var(--s-2);
	margin-block-start: var(--s-4);
}

.boltTrack-chip {
	padding: var(--s-1) var(--s-3);
	background: var(--house);
	color: #ffffff;
	border-radius: var(--capsule);
	font-size: var(--tiny);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

.boltTrack-more {
	display: inline-block;
	margin-block-start: var(--s-4);
	color: var(--spark);
	font-size: var(--small);
	text-decoration: underline;
}

.boltTrack-more:hover { color: var(--house); }

/* ------------------------- 20. карточка автора AUTH-06 Full-Hero Style */
.elementWrapper {
	padding-block: var(--sec-y);
	background: var(--house);
	color: #ffffff;
}

.elementWrapper-hold {
	display: grid;
	grid-template-columns: 224px minmax(0, 1fr);
	gap: var(--s-5);
	align-items: center;
}

.elementWrapper-photo {
	display: block;
	width: 224px;
	aspect-ratio: 4 / 5;
	overflow: hidden;
	border-radius: var(--r-5);
	background: var(--deep-2);
	box-shadow: var(--d-5);
}

.elementWrapper-art {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 20%;
}

.elementWrapper-stuff { display: block; }

.elementWrapper-eyebrow {
	display: block;
	color: var(--spot);
	font-family: var(--reading);
	font-size: var(--small);
	font-weight: var(--semi);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

.elementWrapper-author {
	margin-block-start: var(--s-3);
	color: #ffffff;
}

.elementWrapper-bio {
	margin-block-start: var(--s-4);
	color: #f4e9f5;
	font-size: var(--h5);
	line-height: var(--roomy);
}

.elementWrapper-run {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: var(--s-2);
	margin: var(--s-4) 0 0;
	padding: 0;
}

.elementWrapper-point {
	padding: var(--s-1) var(--s-3);
	background: var(--deep-2);
	color: #ffffff;
	border-radius: var(--capsule);
	font-size: var(--tiny);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

@media (max-width: 800px) {
	.elementWrapper-hold {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--s-4);
	}
	.elementWrapper-photo { width: 180px; }
}

/* --------------------------- 21. юр-текст LEGAL-07 Magazine Editorial */
.fragmentBody { padding-block: var(--sec-y); }

.fragmentBody-eyebrow {
	display: block;
	color: var(--muted);
	font-size: var(--tiny);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

.fragmentBody-intro {
	margin-block-start: var(--s-3);
	color: var(--letters);
	font-family: var(--title);
	font-size: var(--sub-2);
	font-style: italic;
	line-height: var(--normal);
}

.fragmentBody-node { margin-block-start: var(--s-5); }

.fragmentBody-cap {
	color: var(--house);
	font-family: var(--title);
	font-size: var(--display-3);
	font-style: italic;
	font-weight: var(--semi);
}

.fragmentBody-rule {
	width: var(--s-6);
	margin: var(--s-3) 0;
	border: 0;
	border-block-start: var(--strong) solid var(--spot);
}

.fragmentBody-note {
	margin-block-start: var(--s-4);
	color: var(--letters);
	font-size: var(--copy);
	line-height: var(--roomy);
}

.fragmentBody-node > .fragmentBody-note:first-of-type::first-letter {
	float: left;
	margin-inline-end: var(--s-2);
	color: var(--spark);
	font-family: var(--title);
	font-size: 3em;
	font-weight: var(--bold);
	line-height: 0.82;
}

.fragmentBody-top {
	margin-block-start: var(--s-5);
	color: var(--house);
}

.fragmentBody-run {
	margin-block: var(--s-4) 0;
	padding-inline-start: var(--s-5);
	color: var(--letters);
}

.fragmentBody-point {
	margin-block-start: var(--s-3);
	line-height: var(--roomy);
}

.fragmentBody-fine {
	margin-block-start: var(--s-5);
	padding: var(--s-4);
	background: var(--surface-2);
	color: var(--letters);
	border-inline-start: var(--strong) solid var(--edge-hard);
	border-radius: var(--r-3);
	font-size: var(--small);
	line-height: var(--roomy);
}

.fragmentBody-on {
	display: block;
	margin-block-start: var(--s-4);
	color: var(--muted);
	font-size: var(--tiny);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

/* ------------------------ 22. форма FORM-05 Bordered Editorial */
.spikeContainer { padding-block: var(--sec-y); }

.spikeContainer-top { color: var(--house); }

.spikeContainer-intro {
	margin-block-start: var(--s-3);
	color: var(--letters);
	font-size: var(--copy);
	line-height: var(--roomy);
}

.spikeContainer-shell {
	display: block;
	margin-block-start: var(--s-4);
	padding: var(--s-5) var(--s-4);
	border: var(--b-even) solid var(--spot);
	border-radius: var(--r-4);
}

.spikeContainer-box { display: block; }

.spikeContainer-box + .spikeContainer-box { margin-block-start: var(--s-4); }

.spikeContainer-caption {
	display: block;
	color: var(--muted);
	font-size: var(--small);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

.spikeContainer-input {
	display: block;
	width: 100%;
	min-height: 44px;
	margin-block-start: var(--s-2);
	padding: var(--s-3) 0;
	background: var(--page);
	color: var(--letters);
	border: 0;
	border-block-end: var(--thin) solid var(--edge-hard);
	font-family: var(--reading);
	font-size: var(--sub-2);
}

.spikeContainer-input:focus {
	outline: var(--b-even) solid var(--spot);
	outline-offset: 2px;
}

.spikeContainer-go {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	margin-block-start: var(--s-4);
	padding-inline: var(--s-5);
	background: var(--spot);
	color: var(--house);
	border: 0;
	border-radius: var(--r-4);
	font-family: var(--title);
	font-size: var(--small);
	font-weight: var(--bold);
	letter-spacing: var(--airy);
	text-transform: uppercase;
	cursor: pointer;
	transition: transform var(--short) var(--exit);
}

.spikeContainer-go:hover {
	background: var(--spark);
	color: #ffffff;
}

.spikeContainer-go:active { transform: translateY(1px); }

.spikeContainer-done {
	margin-block-start: var(--s-4);
	padding: var(--s-3) var(--s-4);
	background: #e7f6ec;
	color: #12492a;
	border-radius: var(--r-3);
	font-size: var(--copy);
}

.spikeContainer-mailto {
	margin-block-start: var(--s-4);
	color: var(--muted);
	font-size: var(--small);
}

.spikeContainer-route {
	color: var(--spark);
	text-decoration: underline;
}

.spikeContainer-route:hover { color: var(--house); }

/* --------------------------- 23. 404 ERR-05 Glitch / Cyber Style */
.arrowLane { padding-block: var(--s-6); }

.arrowLane-hold { text-align: center; }

.arrowLane-top {
	position: relative;
	display: inline-block;
	max-width: var(--narrow);
	color: var(--letters);
}

.arrowLane-top::before,
.arrowLane-top::after {
	content: attr(data-text);
	position: absolute;
	inset-block-start: 0;
	inset-inline-start: 0;
	width: 100%;
	opacity: 0.55;
	pointer-events: none;
}

.arrowLane-top::before {
	color: var(--spark);
	transform: translate(2px, -2px);
}

.arrowLane-top::after {
	color: var(--house);
	transform: translate(-2px, 2px);
}

.arrowLane-note {
	max-width: var(--narrow);
	margin: var(--s-4) auto 0;
	color: var(--letters);
	font-size: var(--copy);
	line-height: var(--roomy);
}

.arrowLane-set {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: var(--s-4);
	margin-block-start: var(--s-5);
}

.arrowLane-go {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding-inline: var(--s-5);
	background: var(--house);
	color: #ffffff;
	border-radius: var(--r-4);
	font-family: var(--title);
	font-size: var(--small);
	font-weight: var(--bold);
	letter-spacing: var(--airy);
	text-transform: uppercase;
	text-decoration: none;
}

.arrowLane-go:hover {
	background: var(--deep-2);
	color: #ffffff;
}

.arrowLane-route {
	color: var(--spark);
	font-size: var(--small);
	text-decoration: underline;
}

.arrowLane-route:hover { color: var(--house); }

/* -------------------------------- 24. подвал FOOT-03 Massive Centered */
.coreSlider {
	padding-block: 56px;
	background: var(--page);
	border-block-start: var(--thin) solid var(--stroke);
}

.coreSlider-hold {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--s-5);
	text-align: center;
}

.coreSlider-badge {
	display: inline-flex;
	text-decoration: none;
}

.coreSlider-art {
	display: block;
	width: auto;
	height: 88px;
}

.coreSlider-guide { display: block; }

.coreSlider-run {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--s-4) var(--s-5);
	margin: 0;
	padding: 0;
}

.coreSlider-node { display: block; }

.coreSlider-route {
	color: var(--house);
	font-family: var(--title);
	font-size: var(--copy);
	font-weight: var(--semi);
	text-decoration: none;
}

.coreSlider-route:hover {
	color: var(--spark);
	text-decoration: underline;
}

.coreSlider-tagline {
	max-width: var(--narrow);
	color: var(--muted);
	font-size: var(--small);
	line-height: var(--roomy);
}

.coreSlider-legal {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: var(--s-3);
}

.coreSlider-legal .coreSlider-route {
	font-family: var(--reading);
	font-size: var(--tiny);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

.coreSlider-legal .coreSlider-route + .coreSlider-route::before {
	content: "·";
	margin-inline-end: var(--s-3);
	color: var(--edge-hard);
}

.coreSlider-fine {
	color: var(--muted);
	font-size: var(--tiny);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

@media (max-width: 800px) {
	.coreSlider-art { height: 68px; }
	.coreSlider-run { gap: var(--s-3) var(--s-4); }
}

/* ---------------------- 25. куки-баннер COOK-06 (появление instant) */
.precinctBody {
	position: fixed;
	inset-inline: 0;
	inset-block-end: 0;
	z-index: 120;
	background: var(--house);
	color: #ffffff;
	box-shadow: var(--d-5);
}

.precinctBody[hidden] { display: none; }

.precinctBody-bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--s-3) var(--s-4);
	max-width: calc(var(--site) + 2 * var(--pad-lg));
	margin-inline: auto;
	padding: var(--s-4) var(--pad-lg);
}

.precinctBody-notice {
	flex: 1 1 320px;
	color: #f6ecf7;
	font-size: var(--small);
	line-height: var(--normal);
}

.precinctBody-set {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--s-3);
}

.precinctBody-prefs {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	background: var(--house);
	color: #ffd9c6;
	font-size: var(--small);
	text-decoration: underline;
}

.precinctBody-prefs:hover { color: #ffffff; }

.precinctBody-dismiss {
	min-height: 40px;
	padding-inline: var(--s-4);
	background: var(--house);
	color: #ffffff;
	border: var(--thin) solid #a887ac;
	border-radius: var(--r-3);
	font-family: var(--title);
	font-size: var(--small);
	font-weight: var(--semi);
	cursor: pointer;
}

.precinctBody-dismiss:hover {
	background: var(--deep-2);
	color: #ffffff;
}

.precinctBody-yes {
	min-height: 40px;
	padding-inline: var(--s-5);
	background: var(--spot);
	color: var(--house);
	border: 0;
	border-radius: var(--r-3);
	font-family: var(--title);
	font-size: var(--small);
	font-weight: var(--bold);
	letter-spacing: var(--airy);
	text-transform: uppercase;
	cursor: pointer;
}

.precinctBody-yes:hover {
	background: var(--spark);
	color: #ffffff;
}

@media (max-width: 720px) {
	.precinctBody-bar {
		padding: 12px 14px;
		gap: 8px;
		font-size: 13px;
		line-height: 1.35;
	}
	.precinctBody-notice {
		flex-basis: 100%;
		font-size: 13px;
	}
	.precinctBody-set { flex-wrap: nowrap; }
	.precinctBody-dismiss,
	.precinctBody-yes {
		flex: 1 1 auto;
		min-height: 36px;
		padding-inline: 14px;
		font-size: 12px;
	}
	.precinctBody-prefs {
		flex: 1 1 100%;
		min-height: 36px;
		font-size: 12px;
	}
}
.lisa-step{display:inline-flex;align-items:center;justify-content:center;padding:var(--s-3) var(--s-4);min-height:44px;border-radius:var(--r-3);font-size:15px;font-weight:var(--semi)}
.lisa-step{
  background:#16A34A;color:#000000;text-decoration:none;
  transition:background 0.3s ease,transform 0.3s ease;}
.lisa-step.lisa-step{color:#000000;text-decoration:none;}
.lisa-step:hover{background:#15803D;color:#FFFFFF;animation:none}
.lisa-step.lisa-step:hover{color:#FFFFFF;text-decoration:none}
.lisa-step:hover::after{animation:none}
.lisa-step:active{background:#166534;color:#FFFFFF}
.lisa-step:focus-visible{outline:3px solid #000000;outline-offset:3px}
@keyframes lisa-wake{0%{transform:rotate(0)}28.571%{transform:rotate(1.0deg)}57.143%,100%{transform:rotate(0)}}
.lisa-step{animation:lisa-wake 1.05s ease-out infinite;transform-origin:50% 90%}
@media (prefers-reduced-motion:reduce){.lisa-step,.lisa-step::after{animation:none!important;transition:none!important}}

/* --- офферная кнопка: длительности и кривые переводим на токены сборки,
       плюс кольцо, чтобы зелёная заливка отделялась от светлых подложек --- */
.lisa-step {
	box-shadow: 0 0 0 var(--b-even) #0e7a38;
	font-family: var(--title);
	letter-spacing: var(--airy);
	text-transform: uppercase;
	transition: background var(--steady) var(--exit), transform var(--steady) var(--exit);
}

.lisa-step {
	animation: lisa-wake 1.05s var(--exit) infinite;
}

.lisa-step:active { transform: translateY(1px); }

/* шапка: у кнопки оффера свой коридор размеров — селектор (0,2,0) перебивает .lisa-step */
.sectionBunch-cluster .sectionBunch-key {
	font-size: var(--small);
	padding-inline: var(--s-4);
	min-height: 46px;
}

@media (max-width: 519px) {
	.sectionBunch-cluster .sectionBunch-key {
		width: 100%;
		font-size: var(--tiny);
		padding-inline: var(--s-3);
		min-height: 44px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lisa-step { animation: none !important; }
}

/* --- врезки офферной кнопки внутри ленты отзывов и сетки карточек --- */
.vectorBlock-plug {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--s-3);
	margin-block-start: var(--s-5);
	margin-inline-start: var(--s-5);
	padding: var(--s-4);
	background: var(--surface-2);
	color: var(--letters);
	border: var(--thin) solid var(--stroke);
	border-radius: var(--r-4);
}

.vectorBlock-plugNote,
.blockBunch-plugNote {
	color: var(--letters);
	font-family: var(--title);
	font-size: var(--sub-2);
	font-weight: var(--semi);
}

.vectorBlock-plugFine,
.blockBunch-plugFine {
	color: var(--muted);
	font-size: var(--tiny);
	letter-spacing: var(--airy);
	text-transform: uppercase;
}

.vectorBlock-plugGo,
.blockBunch-plugGo { flex: 0 0 auto; }

.blockBunch-plug {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: var(--s-3);
	padding: var(--s-4);
	background: var(--house);
	color: #ffffff;
	border-block-start: 4px solid var(--spot);
	border-radius: 0 0 var(--r-4) var(--r-4);
	box-shadow: var(--d-3);
}

.blockBunch-plug .blockBunch-plugNote { color: #ffffff; }

.blockBunch-plug .blockBunch-plugFine { color: #f0dcf2; }

/* --- аккордеон FAQ: ось accordion = height-icon, значок рисуем CSS-ом --- */
.boxPanel-ask {
	position: relative;
	padding-inline-end: var(--s-5);
}

.boxPanel-ask::after {
	content: "";
	position: absolute;
	inset-inline-end: var(--s-3);
	inset-block-start: 6px;
	width: 14px;
	height: 14px;
	background:
		linear-gradient(var(--spark), var(--spark)) center / 14px 2px no-repeat,
		linear-gradient(var(--spark), var(--spark)) center / 2px 14px no-repeat;
	transition: transform var(--steady) var(--exit), opacity var(--steady) var(--exit);
}

.boxPanel-node[open] .boxPanel-ask::after {
	transform: rotate(135deg);
	opacity: 0.7;
}

/* nojs guard 28.09.2026: без JS контент виден */
html.no-js [data-appear]{opacity:1!important;transform:none!important;visibility:visible!important;clip-path:none!important}
