@import url("https://fonts.googleapis.com/css2?family=Caveat:wght@400;500;600;700&display=swap");

/* ============================================================
   Tokens
   ============================================================ */
/* =========================================================
   VERTICAL - design tokens
   ========================================================= */
:root {
	/* ---------- SURFACES ---------- */
	--v-bg: #fff;
	--v-bg-header: #f6f7fb;
	/* light cool gray of header         */
	--v-bg-soft: #f5f7f8;
	/* gray-03                           */
	--v-bg-softer: #f1f4f6;
	/* ---------- BRAND ---------- */
	--v-blue: #3a7fd9;
	/* primary blue (rgb(58,127,217))   */
	--v-blue-chip: #557cea;
	/* chip / "до 30%" pill              */
	--v-blue-grad-from: #395dee;
	/* gradient start                    */
	--v-blue-grad-to: #508adc;
	/* gray-04                           */
	--v-border: #e6e7e9;
	/* gray-15                           */
	--v-border-strong: #d5d7db;
	/* ---------- LAYOUT ---------- */
	--v-container: 1300px;
	--v-container-pad: 10px;
	/* ---------- MOTION ---------- */
	--v-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
	--v-fast: 160ms;
	/* gray-30                           */
	/* ---------- TYPE ---------- */
	--v-font: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--v-font-alt: "Open Sans", system-ui, sans-serif;
	--v-fs-12: 12px;
	--v-fs-14: 14px;
	--v-fs-16: 16px;
	--v-fs-18: 18px;
	--v-fs-20: 20px;
	--v-fs-24: 24px;
	--v-fs-30: 30px;
	--v-fs-40: 40px;
	--v-fs-56: 56px;
	--v-fs-72: 72px;
	--v-fs-96: 96px;
	--v-fw-bold: 700;
	--v-fw-light: 300;
	--v-fw-medium: 500;
	--v-fw-regular: 400;
	--v-fw-semibold: 600;
	/* gradient end                      */
	--v-gradient: linear-gradient(320deg, #395dee 0%, #508adc 100%);
	--v-gutter: 15px;
	--v-header-pad-y: 8px;
	/* logo red (matches red-70 token)   */
	/* ---------- ACCENTS for «Жизнь в Vertical» page ---------- */
	--v-ink: #0a1b33;
	/* same as --v-text but used as bg   */
	--v-ink-2: #14253d;
	--v-lh-12: 19.2px;
	--v-lh-14: 22.4px;
	--v-lh-16: 25.6px;
	--v-lh-18: 27px;
	--v-lh-20: 28px;
	--v-lh-24: 32px;
	--v-lh-30: 36px;
	--v-lh-40: 48px;
	--v-lh-56: 60px;
	--v-lh-72: 76px;
	--v-lh-96: 96px;
	--v-mid: 260ms;
	/* a touch deeper                    */
	--v-mint: #e6f4ee;
	/* slightly lighter ink for cards    */
	--v-pink: #fce8e8;
	/* soft pink for Test-Drive bridge   */
	--v-pink-2: #f6d2d9;
	/* cta blocks, callbacks            */
	--v-r-card: 20px;
	/* chips, buttons                   */
	--v-r-card-s: 16px;
	/* main hero cards                  */
	--v-r-circle: 50%;
	/* nav-li margin                    */
	/* ---------- RADIUS ---------- */
	--v-r-pill: 300px;
	--v-red: #e92f2a;
	--v-sh-2xl: 0 8px 10px 0 rgba(0, 0, 0, 0.10);
	--v-sh-l: 0 4px 5px 0 rgba(0, 0, 0, 0.08);
	--v-sh-m: 0 3px 4px 0 rgba(0, 0, 0, 0.08);
	--v-sh-s: 0 2px 4px 0 rgba(0, 0, 0, 0.08);
	--v-sh-xl: 0 6px 10px 0 rgba(0, 0, 0, 0.10);
	/* ---------- SHADOWS ---------- */
	--v-sh-xs: 0 2px 2px 0 rgba(0, 0, 0, 0.07);
	--v-slow: 420ms;
	/* fresh accent if needed            */
	/* ---------- TEXT ---------- */
	--v-text: #0a1b33;
	/* primary text (rgb(10,27,51))      */
	--v-text-2: #283f5b;
	/* gray-80                           */
	--v-text-light: #828b95;
	/* secondary text (rgb(40,63,91))    */
	--v-text-muted: #6a737f;
	/* gray-70                           */
	--v-white: #fff;
}

/* ============================================================
   Base
   ============================================================ */
/* =========================================================
   Base - reset, container, typography
   ========================================================= */
*, *::before, *::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	background: var(--v-bg);
	color: var(--v-text);
	font-family: var(--v-font);
	font-size: var(--v-fs-14);
	line-height: var(--v-lh-14);
	font-weight: var(--v-fw-medium);
	margin: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

img, svg {
	display: block;
	max-width: 100%;
}

a {
	color: inherit;
	text-decoration: none;
	transition: color var(--v-fast) var(--v-ease);
}

button {
	color: inherit;
	font: inherit;
	cursor: pointer;
}

ul, ol {
	list-style: none;
	padding: 0;
	margin: 0;
}

/* container */
.container {
	max-width: var(--v-container);
	width: 100%;
	padding: 0 var(--v-container-pad);
	margin: 0 auto;
}

/* ---------- shared title ---------- */
.title1 {
	color: var(--v-text-2);
	font-family: var(--v-font);
	font-size: var(--v-fs-30);
	line-height: var(--v-lh-30);
	font-weight: var(--v-fw-medium);
	letter-spacing: -0.01em;
	margin: 0;
}

.title1--white {
	color: var(--v-white);
}

/* ---------- pill button ---------- */
.btn-pill {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	border: 0;
	border-radius: var(--v-r-pill);
	background: var(--v-white);
	color: var(--v-blue);
	font-family: var(--v-font);
	font-size: var(--v-fs-14);
	line-height: var(--v-lh-14);
	font-weight: var(--v-fw-semibold);
	cursor: pointer;
	padding: 16.5px 28px;
	transition: transform var(--v-fast) var(--v-ease), box-shadow var(--v-mid) var(--v-ease);
}

.btn-pill:hover {
	transform: translateY(-1px);
	box-shadow: var(--v-sh-l);
}

.btn-pill svg {
	flex-shrink: 0;
	width: 16px;
	height: 16px;
}

.btn-pill--blue {
	background: var(--v-blue);
	color: var(--v-white);
}

/* ---------- chip ---------- */
.chip {
	display: inline-flex;
	align-items: center;
	border-radius: var(--v-r-pill);
	background: var(--v-blue-chip);
	color: var(--v-white);
	font-family: var(--v-font);
	font-size: var(--v-fs-12);
	line-height: var(--v-lh-12);
	font-weight: var(--v-fw-semibold);
	padding: 5px 15px;
}

.chip--ghost {
	border: 1px solid var(--v-border-strong);
	background: transparent;
	color: var(--v-text-2);
}

/* ---------- callout / blue card ---------- */
.blue-card {
	overflow: hidden;
	position: relative;
	border-radius: var(--v-r-card);
	background: var(--v-gradient);
	color: var(--v-white);
	padding: 40px;

	isolation: isolate;
}

.blue-card::after {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	right: -368px;
	width: 580px;
	height: 420px;
	border-radius: 3000px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0) 46.5%);
	pointer-events: none;
}

/* ============================================================
   Placeholder
   ============================================================ */
/* ============================================================
   Плейсхолдеры зон клиента
   ============================================================ */
.ph-bar {
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 54px;
	border: 2px dashed #c2cad9;
	background: #eef1f7;
	text-align: center;
	color: #7a859e;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	padding: 16px 20px;
	box-sizing: border-box;
}

.ph-bar--top {
	margin-bottom: 0;
}

.ph-bar--bottom {
	margin-top: 0;
}

/* ============================================================
   Page
   ============================================================ */
/* =========================================================
   page-life.css - стили страницы «Жизнь в Vertical»
   ========================================================= */

/* Lenis Smooth Scroll */
html.lenis, html.lenis body {
	height: auto;
}

.lenis.lenis-smooth {
	scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
	overscroll-behavior: contain;
}

.lenis.lenis-stopped {
	overflow: hidden;
}

.lenis.lenis-scrolling iframe {
	pointer-events: none;
}

/* =========================================================
   ШИРОКИЙ КОНТЕЙНЕР
   ========================================================= */
main .container {
	max-width: clamp(1100px, 94vw, 1720px);
	padding: 0 32px;
}

@media (max-width: 900px) {
	main .container {
		padding: 0 18px;
	}
}

@media (max-width: 560px) {
	main .container {
		padding: 0 14px;
	}
}

/* =========================================================
   REVEAL-АНИМАЦИИ
   ========================================================= */
[data-scroll]:not(.is-inview) {
	transform: translateY(36px);
	opacity: 0;
	transition: opacity 0.8s var(--v-ease), transform 0.8s var(--v-ease);
}

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

[data-scroll-from="left"]:not(.is-inview) {
	transform: translateX(-36px);
}

[data-scroll-from="right"]:not(.is-inview) {
	transform: translateX(36px);
}

[data-scroll-from="zoom"]:not(.is-inview) {
	transform: scale(0.93);
}

[data-scroll-from="zoom"].is-inview, [data-scroll-from="left"].is-inview, [data-scroll-from="right"].is-inview {
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	[data-scroll]:not(.is-inview) {
		transform: none;
		opacity: 1;
		transition: none;
	}
}

/* =========================================================
   общий ритм секций
   ========================================================= */
.life-section {
	position: relative;
	padding: 120px 0;
}

.life-section--tight {
	padding: 64px 0;
}

.life-section--ink {
	background: var(--v-ink);
	color: var(--v-white);
}

.life-section--soft {
	background: var(--v-bg-header);
}

.life-section--pink {
	background: var(--v-pink);
}

@media (max-width: 1024px) {
	.life-section {
		padding: 88px 0;
	}
}

@media (max-width: 640px) {
	.life-section {
		padding: 64px 0;
	}
}

.life-shead {
	margin-bottom: 56px;
}

.life-shead__label {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--v-text-muted);
	font-size: 11px;
	font-weight: var(--v-fw-semibold);
	letter-spacing: 0.16em;
	text-transform: uppercase;
	margin-bottom: 18px;
}

.life-shead__label::before {
	content: "";
	width: 32px;
	height: 1px;
	background: currentColor;
	opacity: 0.5;
}

.life-section--ink .life-shead__label {
	color: rgba(255, 255, 255, 0.55);
}

.life-shead__title {
	max-width: 1100px;
	color: var(--v-text-2);
	font-family: var(--v-font);
	font-size: clamp(32px, 5vw, 72px);
	line-height: 1.04;
	font-weight: var(--v-fw-medium);
	letter-spacing: -0.025em;
	margin: 0;
}

.life-section--ink .life-shead__title {
	color: var(--v-white);
}

.life-shead__sub {
	max-width: 720px;
	color: var(--v-text-muted);
	font-size: clamp(15px, 1.2vw, 18px);
	line-height: 1.55;
	margin-top: 22px;
}

.life-section--ink .life-shead__sub {
	color: rgba(255, 255, 255, 0.7);
}

/* =========================================================
   декоративные SVG-blob'ы
   ========================================================= */
.deco-blob {
	position: absolute;
	z-index: 0;
	filter: blur(60px);
	border-radius: 50%;
	opacity: 0.55;
	pointer-events: none;
}

.deco-blob--blue {
	background: radial-gradient(circle, var(--v-blue) 0%, rgba(58, 127, 217, 0) 60%);
}

.deco-blob--pink {
	background: radial-gradient(circle, #f7c8d3 0%, rgba(247, 200, 211, 0) 60%);
}

.deco-blob--mint {
	background: radial-gradient(circle, #98d6b9 0%, rgba(152, 214, 185, 0) 60%);
}

.deco-grid > * {
	position: relative;
	z-index: 1;
}

/* =========================================================
   00 · HERO
   ========================================================= */
.hero-life {
	overflow: hidden;
	position: relative;
	z-index: 10;
	transform-origin: center center;
	display: block;
	width: 100%;
	height: 100vh;
	min-height: 680px;
	background: #0a1b33;
	color: #fff;

	--gutter: clamp(24px, 4vw, 72px);
	isolation: isolate;
	will-change: transform, border-radius;
}

.hero-life__video {
	position: absolute;
	z-index: -2;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Dark fade */
.hero-life::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	background: linear-gradient(180deg,
	rgba(0, 0, 0, 0.20) 0%,
	rgba(0, 0, 0, 0.05) 30%,
	rgba(0, 0, 0, 0.30) 55%,
	rgba(0, 0, 0, 0.78) 100%),
	linear-gradient(135deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.15) 35%, transparent 55%);
	pointer-events: none;
}

/* ===== TOP-LEFT GLASS PILL: партнёры + аватары объектов ===== */
.hero-life__partners {
	position: absolute;
	z-index: 10;
	top: 120px;
	left: var(--gutter);
	display: flex;
	align-items: center;
	gap: 14px;
	border: 1px solid rgba(255, 255, 255, 0.30);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.10);
	        backdrop-filter: blur(24px) saturate(180%);
	box-shadow: 0 14px 40px -16px rgba(0, 0, 0, 0.30);
	color: #fff;
	padding: 12px 22px 12px 14px;

	-webkit-backdrop-filter: blur(24px) saturate(180%);
}

.hero-life__partners-avs {
	display: flex;
}

.hero-life__partners-av {
	width: 36px;
	height: 36px;
	border: 2px solid #fff;
	border-radius: 50%;
	background-size: cover;
	background-position: center;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
	margin-right: -10px;
}

.hero-life__partners-av:last-child {
	margin-right: 0;
}

.hero-life__partners-txt b {
	display: block;
	font-size: 14.5px;
	line-height: 1.1;
	font-weight: 700;
}

.hero-life__partners-txt span {
	display: block;
	color: rgba(255, 255, 255, 0.85);
	font-size: 12.5px;
	font-weight: 500;
	margin-top: 3px;
}

/* ===== TOP-RIGHT GLASS: featured object ===== */
.hero-life__featured {
	position: absolute;
	z-index: 10;
	top: 120px;
	right: var(--gutter);
	display: flex;
	align-items: center;
	gap: 14px;
	border: 1px solid rgba(255, 255, 255, 0.30);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.10);
	        backdrop-filter: blur(24px) saturate(180%);
	box-shadow: 0 14px 40px -16px rgba(0, 0, 0, 0.30);
	color: #fff;
	padding: 12px 22px 12px 14px;

	-webkit-backdrop-filter: blur(24px) saturate(180%);
}

.hero-life__featured-pic {
	width: 54px;
	height: 54px;
	border: 1px solid rgba(255, 255, 255, 0.20);
	border-radius: 14px;
	background-size: cover;
	background-position: center;
}

.hero-life__featured-text {
	display: flex;
	flex-direction: column;
	line-height: 1.2;
}

.hero-life__featured-text small {
	color: rgba(255, 255, 255, 0.65);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.hero-life__featured-text b {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: -0.005em;
	margin-top: 4px;
}

/* ===== BOTTOM-LEFT COPY ===== */
.hero-life__copy {
	position: absolute;
	z-index: 10;
	right: clamp(360px, 36vw, 540px);
	bottom: 145px;
	left: calc(var(--gutter) + 12px);
	max-width: none;
	color: #fff;
}

.hero-life__label {
	display: inline-block;
	color: rgba(255, 255, 255, 0.75);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.20em;
	text-transform: uppercase;
	margin-bottom: 24px;
}

.hero-life__title {
	max-width: 17ch;
	color: #fff;
	font-family: var(--v-font, "Montserrat"), sans-serif;
	font-size: clamp(38px, 4.4vw, 76px);
	line-height: 1.02;
	font-weight: 500;
	letter-spacing: -0.025em;
	text-shadow: 0 2px 22px rgba(0, 0, 0, 0.30);
	margin: 0 0 24px;
}

.hero-life__title em {
	color: #cfe0ff;
	font-style: normal;
}

.hero-life__sub {
	max-width: 46ch;
	color: rgba(255, 255, 255, 0.85);
	font-size: 15.5px;
	line-height: 1.65;
	font-weight: 400;
	margin: 0 0 32px;
}

.hero-life__cta-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
}

/* Primary в hero */
.hero-life__cta-row .btn-pill:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
}

/* Ghost button */
.btn-pill--ghost {
	border: 1px solid rgba(255, 255, 255, 0.30);
	background: rgba(255, 255, 255, 0.10) !important;
	        backdrop-filter: blur(20px) saturate(160%);
	color: #fff !important;

	-webkit-backdrop-filter: blur(20px) saturate(160%);
}

.btn-pill--ghost:hover {
	background: rgba(255, 255, 255, 0.20) !important;
}

/* ===== BOTTOM-RIGHT GLASS STATS ===== */
.hero-life__stats {
	position: absolute;
	z-index: 10;
	right: var(--gutter);
	bottom: 180px;
	display: flex;
	align-items: stretch;
	gap: clamp(6px, 0.85vw, 12px);
}

.hero-life__stat {
	display: flex;
	flex-direction: column;
	gap: clamp(4px, 0.6vw, 8px);
	min-width: clamp(96px, 9vw, 130px);
	border: 1px solid rgba(255, 255, 255, 0.30);
	border-radius: clamp(14px, 1.2vw, 18px);
	background: rgba(255, 255, 255, 0.10);
	        backdrop-filter: blur(24px) saturate(180%);
	box-shadow: 0 14px 40px -16px rgba(0, 0, 0, 0.30);
	color: #fff;
	padding: clamp(12px, 1.4vw, 20px) clamp(14px, 1.7vw, 24px);

	-webkit-backdrop-filter: blur(24px) saturate(180%);
}

.hero-life__stat-num {
	color: #fff;
	font-size: clamp(22px, 2.4vw, 40px);
	line-height: 0.95;
	font-weight: 600;
	letter-spacing: -0.005em;
}

.hero-life__stat-lbl {
	color: rgba(255, 255, 255, 0.85);
	font-size: clamp(11px, 0.95vw, 13px);
	line-height: 1.35;
	font-weight: 500;
}

/* ===== SCROLL HINT (center bottom) ===== */
.hero-life__scroll {
	position: absolute;
	z-index: 10;
	bottom: 28px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	color: rgba(255, 255, 255, 0.65);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.20em;
	text-transform: uppercase;
	pointer-events: none;
}

.hero-life__scroll-arr {
	font-size: 14px;
	animation: heroScrollBob 1.8s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

@keyframes heroScrollBob {
	0%, 100% {
		transform: translateY(0);
		opacity: 0.65;
	}

	50% {
		transform: translateY(8px);
		opacity: 1;
	}
}

/* ===== АДАПТИВ ===== */
@media (max-width: 1100px) {
	.hero-life__featured {
		display: none;
	}

	.hero-life__copy {
		right: var(--gutter);
		bottom: 180px;
		max-width: 100%;
	}

	.hero-life__stats {
		right: var(--gutter);
		bottom: 80px;
		left: var(--gutter);
		justify-content: flex-start;
	}
}

@media (max-width: 720px) {
	.hero-life {
		min-height: 720px;
	}

	.hero-life__partners {
		top: 96px;
		padding: 10px 18px 10px 12px;
	}

	.hero-life__partners-av {
		width: 30px;
		height: 30px;
	}

	.hero-life__partners-txt b {
		font-size: 12.5px;
	}

	.hero-life__copy {
		right: 18px;
		bottom: 220px;
		left: 18px;
	}

	.hero-life__title {
		max-width: none;
		font-size: clamp(34px, 8vw, 48px);
	}

	.hero-life__sub {
		font-size: 14px;
	}

	.hero-life__stats {
		right: 18px;
		bottom: 80px;
		left: 18px;
		flex-wrap: wrap;
		gap: 8px;
	}

	.hero-life__stat {
		flex: 1 1 calc(50% - 4px);
		min-width: 0;
		padding: 14px 16px;
	}

	.hero-life__stat-num {
		font-size: 24px;
	}

	.hero-life__stat-lbl {
		font-size: 11px;
	}

	.hero-life__scroll {
		display: none;
	}
}

/* =========================================================
   01 · ФИЛОСОФИЯ
   ========================================================= */
.philo {
	display: grid;
	align-items: stretch;
	gap: 40px 32px;
	grid-template-columns: 1fr 1fr 1fr;
}

.philo__lead {
	color: var(--v-text-2);
	font-family: var(--v-font);
	font-size: clamp(22px, 2vw, 30px);
	line-height: 1.18;
	font-weight: var(--v-fw-medium);
	letter-spacing: -0.02em;
	margin: 0;
}

.philo__lead b {
	background: var(--v-gradient);
	color: transparent;
	font-weight: var(--v-fw-medium);

	-webkit-background-clip: text;
	        background-clip: text;
}

.philo__col {
	display: flex;
	flex-direction: column;
	gap: 18px;
	color: var(--v-text-2);
	font-size: 15px;
	line-height: 1.65;
}

.philo__col-head {
	color: var(--v-blue);
	font-size: 11px;
	font-weight: var(--v-fw-semibold);
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

/* коллаж картинок снизу секции */
.philo-collage {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(12, 1fr);
	grid-auto-rows: 220px;
	margin-top: 72px;

	grid-auto-flow: dense;
}

.philo-collage > figure {
	overflow: hidden;
	position: relative;
	border-radius: var(--v-r-card-s);
	background: var(--v-bg-soft);
}

.philo-collage > figure > img, .philo-collage > figure > video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--v-slow) var(--v-ease);
}

.philo-collage > figure:hover > img, .philo-collage > figure:hover > video {
	transform: scale(1.05);
}

.pc-1 {
	grid-column: span 7;
	grid-row: span 2;
}

.pc-2 {
	grid-column: span 5;
	grid-row: span 1;
}

.pc-3 {
	grid-column: span 5;
	grid-row: span 1;
}

.pc-4 {
	grid-column: span 4;
	grid-row: span 1;
}

.pc-5 {
	grid-column: span 4;
	grid-row: span 1;
}

.pc-6 {
	grid-column: span 4;
	grid-row: span 1;
}

@media (max-width: 1024px) {
	.philo {
		gap: 24px;
		grid-template-columns: 1fr;
	}

	.philo-collage {
		grid-auto-rows: 180px;
	}

	.pc-1 {
		grid-column: span 12;
	}

	.pc-2, .pc-3 {
		grid-column: span 6;
	}

	.pc-4, .pc-5, .pc-6 {
		grid-column: span 4;
	}
}

@media (max-width: 600px) {
	.philo-collage {
		grid-template-columns: 1fr;
		grid-auto-rows: 220px;
	}

	.philo-collage > figure {
		grid-column: span 1 !important;
		grid-row: span 1 !important;
	}
}

/* =========================================================
   02 · MARQUEE
   ========================================================= */
.marquee {
	overflow: hidden;
	position: relative;
	border-top: 1px solid var(--v-border);
	border-bottom: 1px solid var(--v-border);
	background: var(--v-bg-header);
	padding: 32px 0;
}

.marquee__track {
	display: flex;
	gap: 64px;
	width: max-content;
	animation: marqueeRun 38s linear infinite;
}

.marquee__item {
	display: inline-flex;
	align-items: center;
	gap: 18px;
	color: var(--v-text);
	font-family: var(--v-font);
	font-size: clamp(20px, 2.4vw, 36px);
	font-weight: var(--v-fw-medium);
	letter-spacing: 0.02em;
	white-space: nowrap;
}

.marquee__dot {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--v-blue);
}

@keyframes marqueeRun {
	from {
		transform: translateX(0);
	}

	to {
		transform: translateX(-50%);
	}
}

.marquee:hover .marquee__track {
	animation-play-state: paused;
}

/* =========================================================
   03 · ПОРТРЕТ РЕЗИДЕНТА
   ========================================================= */
.residents-section {
	overflow: hidden;
	position: relative;
}

/* фоновая иллюстрация */
.residents-section::before {
	content: "";
	position: absolute;
	z-index: 0;
	inset: auto 0 0 0;
	height: 60%;
	background: url("../assets/images/cities.png") center bottom / contain no-repeat;
	opacity: 0.055;
	pointer-events: none;
}

.residents-section > * {
	position: relative;
	z-index: 1;
}

.residents {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(6, 1fr);
}

.resident {
	overflow: hidden;
	position: relative;
	/* 3 в ряд */
	display: flex;
	flex-direction: column;
	grid-column: span 2;
	min-height: 560px;
	border: 1px solid var(--v-border);
	border-radius: 24px;
	background: var(--v-white);
	transition: transform var(--v-mid) var(--v-ease),
	box-shadow var(--v-mid) var(--v-ease),
	border-color var(--v-mid) var(--v-ease);

	isolation: isolate;
}

.resident:nth-child(4) {
	grid-column: 2 / span 2;
}

.resident:nth-child(5) {
	grid-column: 4 / span 2;
}

.resident:hover {
	transform: translateY(-6px);
	border-color: var(--v-blue);
	box-shadow: 0 18px 36px rgba(10, 27, 51, 0.10);
}

.resident__cover {
	overflow: hidden;
	position: relative;
	background: var(--v-bg-soft);

	aspect-ratio: 4 / 3;
}

.resident__cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--v-slow) var(--v-ease);
}

.resident:hover .resident__cover img {
	transform: scale(1.06);
}

/* крупная цифра на обложке */
.resident__num {
	position: absolute;
	z-index: 2;
	top: 16px;
	left: 18px;
	color: rgba(255, 255, 255, 0.95);
	font-family: var(--v-font);
	font-size: 56px;
	line-height: 1;
	font-weight: var(--v-fw-medium);
	letter-spacing: -0.04em;
	text-shadow: 0 4px 24px rgba(0, 0, 0, 0.28);
}

/* стеклянная плашка иллюстрации */
.resident__illust {
	position: absolute;
	z-index: 2;
	right: 18px;
	bottom: 18px;
	width: 96px;
	height: 96px;
	border: 1px solid rgba(255, 255, 255, 0.6);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.85);
	        backdrop-filter: blur(14px);
	box-shadow: 0 12px 24px rgba(10, 27, 51, 0.12);
	padding: 12px;

	-webkit-backdrop-filter: blur(14px);
}

.resident__illust img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.resident__body {
	display: flex;
	flex-direction: column;
	flex: 1;
	gap: 12px;
	padding: 28px 28px 30px;
}

.resident__city {
	color: var(--v-text-muted);
	font-size: 12px;
	font-weight: var(--v-fw-semibold);
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.resident__name {
	color: var(--v-text);
	font-family: var(--v-font);
	font-size: clamp(22px, 1.7vw, 28px);
	line-height: 1.15;
	font-weight: var(--v-fw-medium);
	letter-spacing: -0.018em;
	margin: 0;
}

.resident__chip {
	display: inline-flex;
	align-self: flex-start;
	align-items: center;
	border-radius: var(--v-r-pill);
	background: rgba(58, 127, 217, 0.10);
	color: var(--v-blue);
	font-size: 12px;
	font-weight: var(--v-fw-semibold);
	letter-spacing: 0.03em;
	padding: 7px 14px;
}

.resident__desc {
	color: var(--v-text-muted);
	font-size: 14px;
	line-height: 1.55;
	margin: 0;
}

/* feature карточка */
.resident--feature {
	border-color: transparent;
	background: var(--v-gradient);
	color: var(--v-white);
}

.resident--feature .resident__num {
	color: rgba(255, 255, 255, 0.95);
}

.resident--feature .resident__city {
	color: rgba(255, 255, 255, 0.7);
}

.resident--feature .resident__name {
	color: var(--v-white);
}

.resident--feature .resident__desc {
	color: rgba(255, 255, 255, 0.85);
}

.resident--feature .resident__chip {
	background: rgba(255, 255, 255, 0.18);
	color: var(--v-white);
}

.resident--feature::after {
	content: "";
	position: absolute;
	z-index: 0;
	top: -50px;
	right: -150px;
	width: 360px;
	height: 360px;
	border-radius: 3000px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0) 60%);
	pointer-events: none;
}

.resident--feature > * {
	position: relative;
	z-index: 1;
}

.resident--feature .resident__illust {
	border-color: rgba(255, 255, 255, 0.4);
	background: rgba(255, 255, 255, 0.20);
}

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

	.resident, .resident:nth-child(4), .resident:nth-child(5) {
		grid-column: span 1;
		min-height: 480px;
	}
}

@media (max-width: 600px) {
	.residents {
		grid-template-columns: 1fr;
	}

	.resident, .resident:nth-child(4), .resident:nth-child(5) {
		grid-column: span 1;
		min-height: 440px;
	}
}

/* =========================================================
   04 · ОДИН ДЕНЬ В VERTICAL
   ========================================================= */
.daylife {
	overflow: hidden;
	position: relative;
}

/* фоновая иллюстрация */
.daylife::before {
	content: "";
	position: absolute;
	z-index: 0;
	top: 50%;
	right: -120px;
	transform: translateY(-50%);
	width: 480px;
	height: 480px;
	background: url("../assets/images/group-camera.png") center / contain no-repeat;
	opacity: 0.035;
	pointer-events: none;
}

.daylife > .container {
	position: relative;
	z-index: 1;
}

.daylife__rail {
	position: relative;
	padding: 96px 0 56px;
	margin-top: 40px;
}

.daylife__line {
	position: absolute;
	z-index: 0;
	top: calc(96px + 96px);
	right: 8%;
	left: 8%;
	height: 2px;
	background: var(--v-border);
}

.daylife__line-fill {
	position: absolute;
	inset: 0 auto 0 0;
	width: 0;
	border-radius: 2px;
	background: var(--v-blue);
	box-shadow: 0 0 16px rgba(58, 127, 217, 0.6);
	transition: width var(--v-slow) var(--v-ease);
}

.daylife__steps {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(4, 1fr);
}

.daystep {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.daystep__illust {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 168px;
	height: 168px;
	border: 1px solid var(--v-border);
	border-radius: 50%;
	background: var(--v-white);
	box-shadow: var(--v-sh-s);
	padding: 22px;
	margin-bottom: 24px;
	transition: transform var(--v-mid) var(--v-ease),
	border-color var(--v-mid) var(--v-ease),
	box-shadow var(--v-mid) var(--v-ease);
}

.daystep__illust img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.daystep:hover .daystep__illust, .daystep.is-active .daystep__illust {
	transform: translateY(-6px);
	border-color: var(--v-blue);
	box-shadow: 0 12px 28px rgba(58, 127, 217, 0.18);
}

.daystep__dot {
	width: 16px;
	height: 16px;
	border: 2px solid var(--v-border);
	border-radius: 50%;
	background: var(--v-white);
	margin-bottom: 18px;
	transition: all var(--v-mid) var(--v-ease);
}

.daystep.is-active .daystep__dot {
	transform: scale(1.4);
	border-color: var(--v-blue);
	background: var(--v-blue);
	box-shadow: 0 0 0 6px rgba(58, 127, 217, 0.2);
}

.daystep__time {
	color: var(--v-text);
	font-family: var(--v-font);
	font-size: 28px;
	font-weight: var(--v-fw-semibold);
	letter-spacing: -0.015em;
	margin-bottom: 8px;
}

.daystep__title {
	color: var(--v-blue);
	font-size: 12px;
	font-weight: var(--v-fw-semibold);
	letter-spacing: 0.12em;
	text-transform: uppercase;
	margin-bottom: 8px;
}

.daystep__text {
	max-width: 240px;
	color: var(--v-text-muted);
	font-size: 15px;
	line-height: 1.55;
	margin: 0 auto;
}

@media (max-width: 900px) {
	.daylife__rail {
		padding: 0;
	}

	.daylife__line {
		display: none;
	}

	.daylife__steps {
		gap: 32px;
		grid-template-columns: 1fr;
	}

	.daystep {
		position: relative;
		flex-direction: row;
		align-items: flex-start;
		gap: 22px;
		text-align: left;
		padding-left: 0;
	}

	.daystep::before {
		content: "";
		position: absolute;
		top: 0;
		bottom: -32px;
		left: 50px;
		width: 2px;
		background: var(--v-border);
	}

	.daystep:last-child::before {
		display: none;
	}

	.daystep__illust {
		flex-shrink: 0;
		width: 100px;
		height: 100px;
		padding: 14px;
		margin-bottom: 0;
	}

	.daystep__dot {
		display: none;
	}

	.daystep__text {
		max-width: none;
	}
}

/* =========================================================
   05 · АТМОСФЕРА → ПРИБЫЛЬ
   ========================================================= */
.value {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 24px;
}

.value__card {
	overflow: hidden;
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 480px;
	border-radius: 24px;
	padding: 36px;
	transition: transform var(--v-mid) var(--v-ease),
	box-shadow var(--v-mid) var(--v-ease);

	isolation: isolate;
}

.value__card:hover {
	transform: translateY(-6px);
	box-shadow: 0 24px 48px rgba(10, 27, 51, 0.10);
}

.value__card--light {
	border: 1px solid var(--v-border);
	background: var(--v-white);
	color: var(--v-text);
}

.value__card--blue {
	background: var(--v-gradient);
	color: var(--v-white);
}

.value__card--ink {
	background: var(--v-ink);
	color: var(--v-white);
}

.value__card--blue::after {
	content: "";
	position: absolute;
	z-index: 0;
	top: -60px;
	right: -160px;
	width: 380px;
	height: 380px;
	border-radius: 3000px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0) 60%);
	pointer-events: none;
}

.value__card > * {
	position: relative;
	z-index: 1;
}

.value__num {
	font-size: 13px;
	font-weight: var(--v-fw-semibold);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	margin-bottom: 28px;
	opacity: 0.55;
}

.value__claim {
	font-family: var(--v-font);
	font-size: 12px;
	font-weight: var(--v-fw-medium);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	margin-bottom: 8px;
	opacity: 0.7;
}

.value__thesis {
	font-family: var(--v-font);
	font-size: clamp(22px, 2.4vw, 32px);
	line-height: 1.18;
	font-weight: var(--v-fw-medium);
	letter-spacing: -0.02em;
	margin: 0 0 32px;
}

.value__arrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: 11px;
	font-weight: var(--v-fw-semibold);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	margin-bottom: 14px;
	opacity: 0.7;
}

.value__arrow svg {
	width: 18px;
	height: 18px;
}

.value__result {
	font-family: var(--v-font);
	font-size: clamp(28px, 3.2vw, 48px);
	line-height: 1.05;
	font-weight: var(--v-fw-medium);
	letter-spacing: -0.022em;
	margin: 0 0 22px;
}

.value__result em {
	font-weight: var(--v-fw-semibold);
	font-style: normal;
}

.value__card--light .value__result em {
	color: var(--v-blue);
}

.value__desc {
	max-width: 320px;
	font-size: 14px;
	line-height: 1.55;
	margin: auto 0 0;
	opacity: 0.82;
}

@media (max-width: 900px) {
	.value {
		gap: 14px;
		grid-template-columns: 1fr;
	}

	.value__card {
		min-height: 0;
		padding: 32px;
	}
}

/* =========================================================
   06 · ГАЛЕРЕЯ
   ========================================================= */
.gallery__tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 32px;
}

.gchip {
	display: inline-flex;
	align-items: center;
	border: 1px solid rgba(10, 27, 51, 0.08);
	border-radius: var(--v-r-pill);
	background: rgba(255, 255, 255, 0.55);
	        backdrop-filter: blur(10px);
	color: var(--v-text-2);
	font-family: var(--v-font);
	font-size: 13px;
	font-weight: var(--v-fw-semibold);
	letter-spacing: 0.04em;
	cursor: pointer;
	padding: 11px 20px;
	transition: all var(--v-fast) var(--v-ease);

	-webkit-backdrop-filter: blur(10px);
}

.gchip:hover {
	border-color: var(--v-blue);
	color: var(--v-blue);
}

.gchip.is-active {
	border-color: var(--v-text);
	background: var(--v-text);
	color: var(--v-white);
}

/* асимметричная bento - 12 колонок, ряды по 200px, dense fill */
.bento {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(12, 1fr);
	grid-auto-rows: 200px;

	grid-auto-flow: dense;
}

.tile {
	overflow: hidden;
	position: relative;
	border-radius: 20px;
	background: var(--v-bg-soft);
	margin: 0;
	transition: transform var(--v-mid) var(--v-ease),
	box-shadow var(--v-mid) var(--v-ease);

	isolation: isolate;
}

.tile:hover {
	transform: translateY(-3px);
	box-shadow: 0 18px 28px rgba(10, 27, 51, 0.10);
}

.tile__media {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--v-slow) var(--v-ease);
}

.tile:hover .tile__media {
	transform: scale(1.06);
}

.tile__chip {
	position: absolute;
	z-index: 2;
	bottom: 14px;
	left: 14px;
	border: 1px solid rgba(255, 255, 255, 0.5);
	border-radius: var(--v-r-pill);
	background: rgba(255, 255, 255, 0.85);
	        backdrop-filter: blur(10px);
	color: var(--v-text);
	font-size: 11px;
	font-weight: var(--v-fw-semibold);
	letter-spacing: 0.04em;
	padding: 7px 14px;

	-webkit-backdrop-filter: blur(10px);
}

/* размеры тайлов - bento */
.tile--xl {
	grid-column: span 6;
	grid-row: span 3;
}

/* большой 6×3 */
.tile--tall {
	grid-column: span 3;
	grid-row: span 3;
}

/* высокий 3×3 */
.tile--wide {
	grid-column: span 6;
	grid-row: span 2;
}

/* широкая полоса 6×2 */
.tile--sq {
	grid-column: span 3;
	grid-row: span 2;
}

/* стандартный 3×2 */

.tile--hide {
	display: none !important;
}

@media (max-width: 1024px) {
	.bento {
		grid-template-columns: repeat(6, 1fr);
		grid-auto-rows: 180px;
	}

	.tile--xl {
		grid-column: span 6;
		grid-row: span 2;
	}

	.tile--wide {
		grid-column: span 6;
		grid-row: span 2;
	}

	.tile--tall {
		grid-column: span 3;
		grid-row: span 2;
	}

	.tile--sq {
		grid-column: span 3;
		grid-row: span 2;
	}
}

@media (max-width: 560px) {
	.bento {
		grid-template-columns: 1fr;
		grid-auto-rows: 220px;
	}

	.tile--xl, .tile--tall, .tile--wide, .tile--sq {
		grid-column: span 1;
		grid-row: span 1;
	}
}

/* =========================================================
   07 · ТЕСТ-ДРАЙВ
   ========================================================= */
.testdrive {
	overflow: hidden;
	position: relative;
	display: flex;
	align-items: center;
	min-height: 460px;
	border-radius: 32px;
	padding: 64px clamp(48px, 6vw, 96px);

	isolation: isolate;
}

.testdrive__bg {
	position: absolute;
	z-index: -2;
	inset: 0;
	transform: scale(1.06);
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 1.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.testdrive:hover .testdrive__bg {
	transform: scale(1.10);
}

.testdrive__overlay {
	position: absolute;
	z-index: -1;
	inset: 0;
	background: linear-gradient(95deg, rgba(10, 27, 51, 0.78) 0%, rgba(10, 27, 51, 0.4) 60%, rgba(10, 27, 51, 0.1) 100%),
	linear-gradient(180deg, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0.45) 100%);
	pointer-events: none;
}

/* Frosted glass плашка */
.testdrive__plate {
	position: relative;
	max-width: 620px;
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.10);
	        backdrop-filter: blur(28px) saturate(180%);
	box-shadow: 0 30px 80px -20px rgba(0, 0, 0, 0.45);
	color: #fff;
	padding: 44px 48px;

	-webkit-backdrop-filter: blur(28px) saturate(180%);
}

.testdrive__label {
	display: inline-block;
	color: rgba(255, 255, 255, 0.78);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	margin-bottom: 22px;
}

.testdrive__title {
	color: #fff;
	font-family: var(--v-font, "Montserrat"), sans-serif;
	font-size: clamp(28px, 3vw, 44px);
	line-height: 1.1;
	font-weight: 500;
	letter-spacing: -0.02em;
	margin: 0 0 18px;
}

.testdrive__title em {
	background: linear-gradient(120deg, #cfe0ff 0%, #fff 100%);
	color: transparent;
	font-style: normal;

	-webkit-background-clip: text;
	        background-clip: text;
}

.testdrive__lead {
	max-width: 520px;
	color: rgba(255, 255, 255, 0.85);
	font-size: 15px;
	line-height: 1.6;
	margin: 0 0 28px;
}

.testdrive__cta {
	background: #fff !important;
	color: #3a7fd9 !important;
}

.testdrive__cta svg {
	color: #3a7fd9 !important;
}

.testdrive__cta:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(0, 0, 0, 0.2);
}

@media (max-width: 720px) {
	.testdrive {
		min-height: 480px;
		padding: 40px 22px;
	}

	.testdrive__plate {
		padding: 32px 26px;
	}

	.testdrive__title {
		font-size: clamp(24px, 6vw, 32px);
	}
}

/* =========================================================
   08 · ОТЗЫВЫ
   ========================================================= */
.reviews-wrap {
	position: relative;
}

.reviews {
	overflow-x: auto;
	display: flex;
	gap: 18px;
	padding-left: var(--v-container-pad);
	padding-right: var(--v-container-pad);
	padding-bottom: 8px;
	margin: 0 calc(-1 * var(--v-container-pad));

	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.reviews::-webkit-scrollbar {
	display: none;
}

.review {
	overflow: hidden;
	position: relative;
	display: flex;
	flex-direction: column;
	flex: 0 0 360px;
	min-height: 340px;
	border-radius: 24px;
	padding: 32px;

	isolation: isolate;
	scroll-snap-align: start;
}

.review--light {
	border: 1px solid var(--v-border);
	background: var(--v-white);
	color: var(--v-text);
}

.review--blue {
	background: var(--v-gradient);
	color: var(--v-white);
}

.review--ink {
	background: var(--v-ink);
	color: var(--v-white);
}

.review--blue::after {
	content: "";
	position: absolute;
	z-index: 0;
	top: -40px;
	right: -120px;
	width: 280px;
	height: 280px;
	border-radius: 3000px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0) 60%);
	pointer-events: none;
}

.review > * {
	position: relative;
	z-index: 1;
}

.review__stars {
	display: inline-flex;
	color: #ffb400;
	font-size: 16px;
	letter-spacing: 3px;
	margin-bottom: 18px;
}

.review--blue .review__stars, .review--ink .review__stars {
	color: #ffd55c;
}

.review__quote {
	flex: 1;
	font-family: var(--v-font);
	font-size: 16px;
	line-height: 1.55;
	font-weight: var(--v-fw-medium);
	letter-spacing: -0.005em;
	margin: 0 0 28px;
}

.review--light .review__quote {
	color: var(--v-text-2);
}

.review__author {
	display: flex;
	align-items: center;
	gap: 12px;
	border-top: 1px solid currentColor;
	border-color: rgba(255, 255, 255, 0.18);
	padding-top: 18px;
}

.review--light .review__author {
	border-color: var(--v-border);
}

.review__avatar {
	display: grid;
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--v-bg-soft);
	color: var(--v-blue);
	font-size: 14px;
	font-weight: var(--v-fw-semibold);

	place-items: center;
}

.review--blue .review__avatar {
	background: rgba(255, 255, 255, 0.2);
	color: var(--v-white);
}

.review--ink .review__avatar {
	background: rgba(255, 255, 255, 0.10);
	color: var(--v-white);
}

.review__name {
	font-size: 15px;
	font-weight: var(--v-fw-semibold);
	margin: 0;
}

.review__role {
	font-size: 12px;
	margin: 2px 0 0;
	opacity: 0.7;
}

/* кнопки навигации */
.reviews-nav {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	margin-top: 24px;
}

.reviews-nav button {
	display: grid;
	width: 48px;
	height: 48px;
	border: 1px solid var(--v-border);
	border-radius: 50%;
	background: var(--v-white);
	cursor: pointer;
	transition: all var(--v-fast) var(--v-ease);

	place-items: center;
}

.reviews-nav button:hover {
	transform: translateY(-2px);
	border-color: var(--v-blue);
}

.reviews-nav svg {
	width: 18px;
	height: 18px;
	color: var(--v-text);
}

.reviews-nav button:disabled {
	transform: none;
	cursor: default;
	opacity: 0.4;
}

@media (max-width: 768px) {
	.review {
		flex: 0 0 84%;
	}
}

/* =========================================================
   09 · ФИНАЛЬНЫЙ CTA
   ========================================================= */
.cta-final {
	overflow: hidden;
	position: relative;
	display: grid;
	align-items: stretch;
	gap: 56px;
	grid-template-columns: 1.1fr 1fr;
	border-radius: 36px;
	background: var(--v-gradient);
	color: var(--v-white);
	padding: 64px;

	isolation: isolate;
}

.cta-final::after {
	content: "";
	position: absolute;
	z-index: 0;
	top: -60px;
	right: -200px;
	width: 580px;
	height: 580px;
	border-radius: 3000px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.14) 0%, rgba(255, 255, 255, 0) 56%);
	pointer-events: none;
}

.cta-final > * {
	position: relative;
	z-index: 1;
}

.cta-final__copy {
	display: flex;
	flex-direction: column;
}

.cta-final__label {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: rgba(255, 255, 255, 0.7);
	font-size: 11px;
	font-weight: var(--v-fw-semibold);
	letter-spacing: 0.18em;
	text-transform: uppercase;
	margin-bottom: 20px;
}

.cta-final__label::before {
	content: "";
	width: 32px;
	height: 1px;
	background: rgba(255, 255, 255, 0.6);
}

.cta-final__title {
	max-width: 600px;
	color: var(--v-white);
	font-family: var(--v-font);
	font-size: clamp(30px, 4vw, 56px);
	line-height: 1.04;
	font-weight: var(--v-fw-medium);
	letter-spacing: -0.022em;
	margin: 0 0 24px;
}

.cta-final__sub {
	max-width: 520px;
	color: rgba(255, 255, 255, 0.85);
	font-size: clamp(15px, 1.2vw, 18px);
	line-height: 1.6;
	margin: 0;
}

.cta-final__form {
	display: flex;
	flex-direction: column;
	gap: 14px;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.10);
	        backdrop-filter: blur(10px);
	padding: 32px;

	-webkit-backdrop-filter: blur(10px);
}

.cta-final__form-title {
	color: var(--v-white);
	font-family: var(--v-font);
	font-size: 20px;
	font-weight: var(--v-fw-semibold);
	margin: 0 0 6px;
}

.cta-final__form-sub {
	color: rgba(255, 255, 255, 0.75);
	font-size: 13px;
	margin: 0 0 14px;
}

.cta-final__form input {
	width: 100%;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: var(--v-r-pill);
	background: rgba(255, 255, 255, 0.10);
	color: var(--v-white);
	font-family: var(--v-font);
	font-size: 14px;
	font-weight: var(--v-fw-medium);
	padding: 14px 18px;
	transition: all var(--v-fast) var(--v-ease);
}

.cta-final__form input::placeholder {
	color: rgba(255, 255, 255, 0.55);
}

.cta-final__form input:focus {
	border-color: rgba(255, 255, 255, 0.55);
	background: rgba(255, 255, 255, 0.18);
	outline: none;
}

.cta-final__form-submit {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	width: 100%;
	border: 0;
	border-radius: var(--v-r-pill);
	background: var(--v-white);
	color: var(--v-blue);
	font-family: var(--v-font);
	font-size: 14px;
	font-weight: var(--v-fw-semibold);
	cursor: pointer;
	padding: 16px 24px;
	transition: transform var(--v-fast) var(--v-ease), box-shadow var(--v-mid) var(--v-ease);
}

.cta-final__form-submit svg {
	width: 16px;
	height: 16px;
}

.cta-final__form-submit:hover {
	transform: translateY(-1px);
	box-shadow: 0 10px 22px rgba(0, 0, 0, 0.22);
}

.cta-final__form-check {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	color: rgba(255, 255, 255, 0.65);
	font-size: 11px;
	line-height: 1.45;
}

.cta-final__form-check input {
	width: auto;
	padding: 0;
	margin-top: 2px;
}

@media (max-width: 1024px) {
	.cta-final {
		gap: 32px;
		grid-template-columns: 1fr;
		padding: 44px 32px;
	}
}

@media (max-width: 600px) {
	.cta-final {
		padding: 36px 22px;
	}
}

/* =========================================================
   prefers-reduced-motion
   ========================================================= */
@media (prefers-reduced-motion: reduce) {
	.hero-life__scroll::after, .marquee__track {
		animation: none;
	}

	.daylife__line-fill {
		transition: none;
	}

	.tile:hover .tile__media, .resident:hover .resident__cover img, .philo-collage > figure:hover > img {
		transform: none;
	}
}

/* =========================================================
   RESIDENTS
   ========================================================= */
/* Контейнер активного варианта */
.res-variants {
	position: relative;
	min-height: 540px;
	margin-top: 40px;
}

.res-variants > section {
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin: 0 !important;
}

.gal-variants {
	position: relative;
	min-height: 540px;
	margin-top: 40px;
}

.gal-variants > section {
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin: 0 !important;
}

/* Loader при первой загрузке */
.res-variants__loader {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 16px;
	color: var(--muted, #717ba3);
	font-size: 13px;
	letter-spacing: -0.005em;
	padding: 80px 20px;
}

.res-variants__spin {
	width: 38px;
	height: 38px;
	border: 3px solid #e6e7e9;
	border-radius: 50%;
	animation: rvSpin 1s linear infinite;

	border-top-color: #3a7fd9;
}

@keyframes rvSpin {
	to {
		transform: rotate(360deg);
	}
}

.variants-btn {
	position: absolute;
	z-index: 5;
	top: 0;
	right: 0;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border: 1px solid var(--border, #e6e7e9);
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 12px 28px -10px rgba(10, 27, 51, 0.15);
	color: var(--text-2, #283f5b);
	font: 600 12.5px "Montserrat", sans-serif;
	letter-spacing: -0.005em;
	cursor: pointer;
	padding: 10px 16px;
	transition: background 0.3s, color 0.3s, transform 0.3s;
}

.variants-btn:hover {
	transform: translateY(-2px);
	border-color: transparent;
	background: #3a7fd9;
	color: #fff;
}

.variants-btn svg {
	flex-shrink: 0;
}

.rblock {
	display: grid;
	gap: 20px;
	grid-template-columns: 1.4fr 1fr 1fr;
	grid-template-rows: auto auto;
	margin-top: 40px;
}

.rblock__hero {
	overflow: hidden;
	position: relative;
	grid-column: 1;
	grid-row: 1 / 3;
	border-radius: 28px;
	background: linear-gradient(320deg, #395dee 0%, #508adc 100%);
	color: #fff;
	padding: 50px 52px 56px;

	isolation: isolate;
}

.rblock__hero-info {
	position: relative;
	z-index: 2;
	max-width: 460px;
}

.rblock__hero-illust {
	position: absolute;
	z-index: 1;
	right: -40px;
	bottom: -50px;
	filter: brightness(0) invert(1);
	width: 360px;
	height: 360px;
	object-fit: contain;
	opacity: 0.35;
}

.rblock__city {
	color: rgba(255, 255, 255, 0.75);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	margin-bottom: 14px;
}

.rblock__hotel {
	color: #fff;
	font-size: 36px;
	line-height: 1.05;
	font-weight: 500;
	letter-spacing: -0.02em;
	margin: 0 0 8px;
}

.rblock__type {
	color: #fff;
	font-size: 17px;
	font-weight: 600;
	margin-bottom: 18px;
}

.rblock__p {
	color: rgba(255, 255, 255, 0.85);
	font-size: 15px;
	line-height: 1.6;
	margin: 0 0 22px;
}

.rblock__check {
	display: flex;
	flex-direction: column;
	gap: 10px;
	list-style: none;
	padding: 0;
	margin: 0 0 22px;
}

.rblock__check li {
	position: relative;
	color: rgba(255, 255, 255, 0.92);
	font-size: 14px;
	line-height: 1.5;
	padding-left: 22px;
}

.rblock__check li::before {
	content: "";
	position: absolute;
	top: 6px;
	left: 0;
	width: 12px;
	height: 12px;
	background: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"white\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"/></svg>") no-repeat center / contain;
}

.rblock__mini {
	overflow: hidden;
	position: relative;
	border: 1px solid var(--border, #e6e7e9);
	border-radius: 22px;
	background: #fff;
	padding: 26px 28px;
	transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s;
}

.rblock__mini:hover {
	transform: translateY(-4px);
	box-shadow: 0 30px 60px -20px rgba(10, 27, 51, 0.15);
}

.rblock__mini-illust {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 56px;
	height: 56px;
	margin-bottom: 14px;
}

.rblock__mini-illust img {
	width: 100%;
	height: 100%;
	object-fit: contain;

	mix-blend-mode: multiply;
}

.rblock__mini .rblock__city {
	color: var(--muted, #717ba3);
}

.rblock__hotel-s {
	color: var(--text-2, #283f5b);
	font-size: 18px;
	line-height: 1.2;
	font-weight: 600;
	margin: 0 0 4px;
}

.rblock__type-s {
	color: #3a7fd9;
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 12px;
}

.rblock__p-s {
	color: var(--muted, #717ba3);
	font-size: 13px;
	line-height: 1.55;
	margin: 0;
}

@media (max-width: 1100px) {
	.rblock {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto;
	}

	.rblock__hero {
		grid-column: 1 / 3;
		grid-row: auto;
	}
}

@media (max-width: 600px) {
	.rblock {
		grid-template-columns: 1fr;
	}

	.rblock__hero {
		grid-column: 1;
		padding: 36px 28px;
	}

	.rblock__hotel {
		font-size: 28px;
	}
}

/* Popup со списком вариантов */
.variants-popup {
	position: fixed;
	z-index: 9999;
	inset: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}

.variants-popup[aria-hidden="false"] {
	opacity: 1;
	pointer-events: auto;
}

.variants-popup__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(10, 27, 51, 0.55);
	backdrop-filter: blur(8px);
	cursor: pointer;
}

.variants-popup__panel {
	overflow-y: auto;
	position: relative;
	z-index: 2;
	transform: translateY(20px);
	width: min(720px, 92vw);
	max-height: 86vh;
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 60px 120px -30px rgba(0, 0, 0, 0.5);
	padding: 36px 40px 30px;
	transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.variants-popup[aria-hidden="false"] .variants-popup__panel {
	transform: translateY(0);
}

.variants-popup__close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 32px;
	height: 32px;
	border: 0;
	border-radius: 50%;
	background: var(--bg-soft, #f6f7fb);
	color: var(--text-2, #283f5b);
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
}

.variants-popup__close:hover {
	background: #e6e7e9;
}

.variants-popup__head {
	margin-bottom: 22px;
}

.variants-popup__kicker {
	color: #3a7fd9;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	margin-bottom: 8px;
}

.variants-popup__title {
	color: var(--text-2, #283f5b);
	font-size: 24px;
	font-weight: 500;
	letter-spacing: -0.015em;
	margin: 0 0 8px;
}

.variants-popup__sub {
	color: var(--muted, #717ba3);
	font-size: 13.5px;
	line-height: 1.55;
	margin: 0;
}

.variants-popup__grid {
	display: grid;
	gap: 10px;
	grid-template-columns: 1fr 1fr;
	margin-bottom: 22px;
}

.vbtn {
	display: grid;
	gap: 14px;
	grid-template-columns: 38px 1fr;
	border-radius: 14px;
	background: var(--bg-soft, #f6f7fb);
	color: var(--text-2, #283f5b);
	padding: 14px 16px;
	text-decoration: none;
	transition: background 0.3s, transform 0.3s;
}

.vbtn:hover {
	transform: translateY(-2px);
	border: 1px solid #e6e7e9;
	background: #fff;
	box-shadow: 0 12px 24px -10px rgba(10, 27, 51, 0.15);
}

.vbtn--current {
	background: #3a7fd9;
	color: #fff;
}

.vbtn--current .vbtn__num {
	background: rgba(255, 255, 255, 0.22);
	color: #fff;
}

.vbtn--current .vbtn__d {
	color: rgba(255, 255, 255, 0.85);
}

.vbtn__num {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 38px;
	height: 38px;
	border-radius: 10px;
	background: #fff;
	color: var(--text-2, #283f5b);
	font: 700 12.5px "Courier New", monospace;
	letter-spacing: 0.04em;
}

.vbtn__t {
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.005em;
}

.vbtn__d {
	color: var(--muted, #717ba3);
	font-size: 11px;
	line-height: 1.4;
	margin-top: 2px;
}

.variants-popup__cta {
	display: inline-block;
	color: #3a7fd9;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: -0.005em;
	text-decoration: none;
}

.variants-popup__cta:hover {
	text-decoration: underline;
}

@media (max-width: 600px) {
	.variants-popup__grid {
		grid-template-columns: 1fr;
	}
}

/* Слайдер */
.residents-slider {
	position: relative;
	padding: 20px 0 40px;
	user-select: none;
}

.residents-slider__viewport {
	overflow: hidden;
	position: relative;
	padding: 40px 0 60px;

	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 80px, #000 calc(100% - 80px), transparent 100%);
	        mask-image: linear-gradient(90deg, transparent 0, #000 80px, #000 calc(100% - 80px), transparent 100%);
}

.residents-slider__track {
	display: flex;
	align-items: center;
	gap: 36px;
	transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);

	will-change: transform;
}

/* === КАРТОЧКА === */
.rs-card {
	overflow: hidden;
	transform: scale(0.78);
	flex: 0 0 480px;
	border-radius: 28px;
	background: #fff;
	box-shadow: 0 14px 40px rgba(10, 27, 51, 0.10);
	cursor: pointer;
	opacity: 0.35;
	transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.9s ease;
}

.rs-card.is-active {
	transform: scale(1.05);
	box-shadow: 0 30px 70px rgba(10, 27, 51, 0.20);
	cursor: default;
	opacity: 1;
}

.rs-card.is-near {
	transform: scale(0.88);
	opacity: 0.75;
}

.rs-card__cover {
	overflow: hidden;
	position: relative;
	height: 340px;
	border-radius: 28px 28px 0 0;

	isolation: isolate;
}

.rs-card__cover img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 1.2s cubic-bezier(0.22, 1, 0.36, 1);
}

.rs-card.is-active .rs-card__cover img {
	transform: scale(1.04);
}

.rs-card__cover::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 50%, rgba(10, 27, 51, 0.5) 100%);
	pointer-events: none;
}

.rs-card__num {
	position: absolute;
	z-index: 2;
	top: 22px;
	left: 24px;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 300px;
	background: rgba(255, 255, 255, 0.18);
	        backdrop-filter: blur(12px);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.12em;
	padding: 6px 14px;

	-webkit-backdrop-filter: blur(12px);
}

.rs-card__illust {
	position: absolute;
	z-index: 2;
	right: -14px;
	bottom: -14px;
	filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.25));
	width: 168px;
	height: 168px;
	pointer-events: none;
}

.rs-card__illust img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.rs-card__body {
	padding: 30px 32px 36px;
}

.rs-card__city {
	display: inline-block;
	color: #3a7fd9;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	margin-bottom: 10px;
}

.rs-card__name {
	color: #283f5b;
	font-family: var(--v-font, "Montserrat"), sans-serif;
	font-size: 26px;
	line-height: 1.15;
	font-weight: 600;
	letter-spacing: -0.015em;
	margin: 0 0 14px;
}

.rs-card__desc {
	color: #717ba3;
	font-size: 15px;
	line-height: 1.55;
	margin: 0 0 20px;
}

.rs-card__chip {
	display: inline-flex;
	border-radius: 300px;
	background: linear-gradient(320deg, #395dee 0%, #508adc 100%);
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	padding: 8px 18px;
}

/* === КНОПКИ PREV/NEXT === */
.residents-slider__btn {
	position: absolute;
	z-index: 10;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	justify-content: center;
	align-items: center;
	width: 64px;
	height: 64px;
	border: none;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 12px 32px rgba(10, 27, 51, 0.18);
	color: #283f5b;
	cursor: pointer;
	transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.residents-slider__btn:hover {
	transform: translateY(-50%) scale(1.06);
	background: linear-gradient(320deg, #395dee 0%, #508adc 100%);
	color: #fff;
}

.residents-slider__btn--prev {
	left: 16px;
}

.residents-slider__btn--next {
	right: 16px;
}

.residents-slider__btn:disabled {
	cursor: not-allowed;
	opacity: 0.35;
}

/* === ТОЧКИ === */
.residents-slider__dots {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-top: 28px;
}

.residents-slider__dot {
	width: 10px;
	height: 10px;
	border: none;
	border-radius: 50%;
	background: #d5d7db;
	cursor: pointer;
	padding: 0;
	transition: background 0.25s ease, width 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.residents-slider__dot.is-active {
	width: 32px;
	border-radius: 300px;
	background: #3a7fd9;
}

/* === АДАПТИВ === */
@media (max-width: 980px) {
	.rs-card {
		flex: 0 0 380px;
	}

	.rs-card__cover {
		height: 260px;
	}

	.rs-card__illust {
		width: 130px;
		height: 130px;
	}

	.residents-slider__btn {
		width: 48px;
		height: 48px;
	}

	.residents-slider__btn--prev {
		left: 6px;
	}

	.residents-slider__btn--next {
		right: 6px;
	}
}

@media (max-width: 560px) {
	.rs-card {
		flex: 0 0 86vw;
	}

	.rs-card__cover {
		height: 240px;
	}

	.rs-card__body {
		padding: 24px 22px 28px;
	}

	.rs-card__name {
		font-size: 22px;
	}

	.residents-slider__viewport {
		-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 24px, #000 calc(100% - 24px), transparent 100%);
		        mask-image: linear-gradient(90deg, transparent 0, #000 24px, #000 calc(100% - 24px), transparent 100%);
	}
}

/* === Фон страницы === */
body {
	background: #fafbfd;
}

main {
	background: #fafbfd;
}

/* === HERO TOP-RIGHT: network plate === */
.hero-life__network {
	position: absolute;
	z-index: 10;
	top: 120px;
	right: var(--gutter);
	display: flex;
	flex-direction: column;
	gap: 14px;
	border: 1px solid rgba(255, 255, 255, 0.30);
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.10);
	        backdrop-filter: blur(24px) saturate(180%);
	box-shadow: 0 14px 40px -16px rgba(0, 0, 0, 0.30);
	color: #fff;
	padding: 18px 22px;

	-webkit-backdrop-filter: blur(24px) saturate(180%);
}

.hero-life__network-txt b {
	display: block;
	color: #fff;
	font-size: 14.5px;
	line-height: 1.1;
	font-weight: 700;
}

.hero-life__network-txt span {
	display: block;
	color: rgba(255, 255, 255, 0.78);
	font-size: 12px;
	letter-spacing: 0.02em;
	margin-top: 4px;
}

.hero-life__network-row {
	display: flex;
	gap: 8px;
}

.hero-life__obj {
	position: relative;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 12px;
	background-size: cover;
	background-position: center;
	cursor: pointer;
	transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.25s ease, box-shadow 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.hero-life__obj:hover {
	z-index: 2;
	transform: scale(1.10);
	border-color: rgba(255, 255, 255, 0.6);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.30);
}

.hero-life__obj--placeholder {
	display: flex;
	justify-content: center;
	align-items: center;
	background: rgba(255, 255, 255, 0.06);
}

.hero-life__obj-placeholder-text {
	color: rgba(255, 255, 255, 0.7);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.hero-life__obj-tip {
	position: absolute;
	right: 0;
	bottom: calc(100% + 10px);
	transform: translateY(4px);
	border-radius: 999px;
	background: rgba(10, 27, 51, 0.92);
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.30);
	color: #fff;
	font-size: 12.5px;
	font-weight: 600;
	white-space: nowrap;
	padding: 8px 14px;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.25s ease, transform 0.25s ease;
}

.hero-life__obj:hover .hero-life__obj-tip {
	transform: translateY(0);
	opacity: 1;
}

.hero-life__obj-tip::after {
	content: "";
	position: absolute;
	top: 100%;
	right: 18px;
	border: 6px solid transparent;

	border-top-color: rgba(10, 27, 51, 0.92);
}

/* === stat-num secondary unit (% / лет) === */
.hero-life__stat-num .hero-life__stat-unit {
	font-size: 0.55em;
	font-weight: 500;
	margin-left: 2px;
	opacity: 0.85;
}

@media (max-width: 1100px) {
	.hero-life__network {
		display: none;
	}
}

/* === HOTELS PILL === */
.hero-life__hotels-pill {
	position: absolute;
	z-index: 10;
	right: var(--gutter);
	bottom: clamp(293px, calc(238px + 5vw), 314px);
	display: flex;
	align-items: center;
	gap: 14px;
	border: 1px solid rgba(255, 255, 255, 0.30);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.10);
	        backdrop-filter: blur(24px) saturate(180%);
	box-shadow: 0 14px 40px -16px rgba(0, 0, 0, 0.30);
	color: #fff;
	padding: 12px 22px 12px 14px;

	-webkit-backdrop-filter: blur(24px) saturate(180%);
}

.hero-life__hotels-avs {
	display: flex;
}

.hero-life__hotels-av {
	position: relative;
	width: 36px;
	height: 36px;
	border: 2px solid #fff;
	border-radius: 50%;
	background-size: cover;
	background-position: center;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
	cursor: pointer;
	margin-right: -10px;
	transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1), z-index 0.3s;
}

.hero-life__hotels-av:last-child {
	margin-right: 0;
}

.hero-life__hotels-av:hover {
	z-index: 3;
	transform: translateY(-3px) scale(1.18);
}

.hero-life__hotels-tip {
	position: absolute;
	bottom: calc(100% + 10px);
	left: 50%;
	transform: translateX(-50%) translateY(4px);
	border-radius: 999px;
	background: rgba(10, 27, 51, 0.95);
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.30);
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
	padding: 6px 12px;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.25s ease, transform 0.25s ease;
}

.hero-life__hotels-av:hover .hero-life__hotels-tip {
	transform: translateX(-50%) translateY(0);
	opacity: 1;
}

.hero-life__hotels-txt b {
	display: block;
	font-size: 14.5px;
	line-height: 1.1;
	font-weight: 700;
}

.hero-life__hotels-txt span {
	display: block;
	color: rgba(255, 255, 255, 0.85);
	font-size: 12.5px;
	font-weight: 500;
	margin-top: 3px;
}

@media (max-width: 1100px) {
	.hero-life__hotels-pill {
		display: none;
	}
}

/* =========================================================
   01 · ФИЛОСОФИЯ ПРОСТРАНСТВА
   ========================================================= */
#philosophy {
	position: relative;
}

#philosophy .container {
	position: relative;
}

.philosophy-grid {
	display: grid;
	align-items: stretch;
	gap: 44px;
	grid-template-columns: 230px 1fr 1.1fr;
	max-width: 1480px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
}

@media (min-width: 1600px) {
	.philosophy-grid {
		gap: 52px;
		grid-template-columns: 260px 1fr 1.1fr;
		max-width: 1640px;
	}
}

/* Левый столбец */
.philosophy-grid__col--left {
	display: grid;
	gap: 22px;
	grid-template-rows: 1.1fr 1fr;
	min-height: 500px;
}

/* Центр */
.philosophy-grid__center {
	align-self: center;
	text-align: left;
	padding: 0 8px;
}

/* Правый collage */
.philosophy-grid__collage {
	display: grid;
	gap: 18px;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-rows: 1.2fr 1fr 1fr;
	min-height: 500px;
}

.philosophy-grid__c1 {
	grid-column: 1 / 3;
	grid-row: 1;
}

.philosophy-grid__c2 {
	grid-column: 3;
	grid-row: 1 / 3;
}

.philosophy-grid__c3 {
	grid-column: 1;
	grid-row: 2;
}

.philosophy-grid__c4 {
	grid-column: 2;
	grid-row: 2 / 4;
}

.philosophy-grid__c5 {
	grid-column: 3;
	grid-row: 3;
}

.philosophy-grid__c6 {
	grid-column: 1;
	grid-row: 3;
}

/* Общая карточка-плитка */
.philosophy-grid__tile {
	overflow: hidden;
	position: relative;
	width: 100%;
	height: 100%;
	border-radius: 18px;
	background: #f6f7fb;
	box-shadow: 0 20px 50px -20px rgba(10, 27, 51, 0.18);
	margin: 0;

	isolation: isolate;
	will-change: transform;
}

.philosophy-grid__tile img, .philosophy-grid__tile video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 1.2s cubic-bezier(0.22, 1, 0.36, 1);
}

.philosophy-grid__tile:hover img, .philosophy-grid__tile:hover video {
	transform: scale(1.06);
}

.philosophy-grid__tile::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 55%, rgba(10, 27, 51, 0.4) 100%);
	pointer-events: none;
}

.philosophy-grid__tag {
	position: absolute;
	z-index: 2;
	bottom: 12px;
	left: 12px;
	border: 1px solid rgba(255, 255, 255, 0.30);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.18);
	        backdrop-filter: blur(14px) saturate(180%);
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: -0.005em;
	padding: 6px 12px;

	-webkit-backdrop-filter: blur(14px) saturate(180%);
}

/* CENTER text */
.philosophy-grid__kicker {
	display: inline-block;
	border-bottom: 1px solid #e6e7e9;
	color: #717ba3;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.20em;
	text-transform: uppercase;
	padding-bottom: 14px;
	margin-bottom: 20px;
}

.philosophy-grid__title {
	color: #283f5b;
	font-family: var(--v-font, "Montserrat"), sans-serif;
	font-size: clamp(30px, 2.8vw, 50px);
	line-height: 1.05;
	font-weight: 500;
	letter-spacing: -0.02em;
	margin: 0 0 22px;
}

.philosophy-grid__title em {
	color: #3a7fd9;
	font-style: normal;
}

.philosophy-grid__lead {
	color: #0a1b33;
	font-size: 16px;
	line-height: 1.55;
	font-weight: 500;
	margin: 0 0 14px;
}

.philosophy-grid__sub {
	color: #717ba3;
	font-size: 14.5px;
	line-height: 1.55;
	margin: 0 0 24px;
}

.philosophy-grid__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.philosophy-grid__chips span {
	border-radius: 999px;
	background: #f6f7fb;
	color: #283f5b;
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: -0.005em;
	padding: 7px 16px;
}

/* ========== 3 ПЛАВАЮЩИЕ ПЛАШКИ за края ========== */
.philosophy-pill {
	position: absolute;
	z-index: 9;
	display: inline-flex;
	align-items: center;
	gap: 11px;
	border: 1px solid rgba(255, 255, 255, 0.7);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	        backdrop-filter: blur(18px) saturate(180%);
	box-shadow: 0 24px 50px -18px rgba(10, 27, 51, 0.22), 0 2px 6px rgba(10, 27, 51, 0.04);
	font-family: var(--v-font, "Montserrat"), sans-serif;
	padding: 11px 18px 11px 12px;
	pointer-events: none;

	-webkit-backdrop-filter: blur(18px) saturate(180%);
	will-change: transform;
}

.philosophy-pill__icon {
	display: inline-flex;
	flex-shrink: 0;
	justify-content: center;
	align-items: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #f6f7fb;
	color: #3a7fd9;
}

.philosophy-pill__icon svg {
	width: 17px;
	height: 17px;
}

.philosophy-pill b {
	display: block;
	color: #283f5b;
	font-size: 13.5px;
	line-height: 1.1;
	font-weight: 600;
	letter-spacing: -0.005em;
}

.philosophy-pill span:not(.philosophy-pill__icon) {
	display: block;
	color: #717ba3;
	font-size: 10.5px;
	letter-spacing: 0.005em;
	margin-top: 2px;
}

/* Синяя плашка */
.philosophy-pill--blue {
	border-color: transparent;
	background: linear-gradient(320deg, #395dee 0%, #508adc 100%);
	box-shadow: 0 28px 56px -14px rgba(57, 93, 238, 0.45), 0 2px 8px rgba(10, 27, 51, 0.08);
}

.philosophy-pill--blue .philosophy-pill__icon {
	background: rgba(255, 255, 255, 0.20);
	color: #fff;
}

.philosophy-pill--blue b {
	color: #fff;
}

.philosophy-pill--blue span:not(.philosophy-pill__icon) {
	color: rgba(255, 255, 255, 0.85);
}

/* Тёмная плашка */
.philosophy-pill--dark {
	background: rgba(255, 255, 255, 0.78);
}

.philosophy-pill--zones {
	top: 6%;
	left: -2.5%;
	animation: philFloat 7s ease-in-out infinite;
}

.philosophy-pill--events {
	top: 4%;
	left: 49%;
	animation: philFloat 8s ease-in-out infinite 0.6s;
}

.philosophy-pill--pet {
	top: 18%;
	right: -2%;
	animation: philFloat 9s ease-in-out infinite 1.2s;
}

@keyframes philFloat {
	0%, 100% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-8px);
	}
}

/* Tablet */
@media (max-width: 1200px) {
	.philosophy-grid {
		gap: 22px;
		grid-template-columns: 200px 1fr 1fr;
	}

	.philosophy-grid__col--left, .philosophy-grid__collage {
		min-height: 460px;
	}
}

/* Mobile */
@media (max-width: 900px) {
	.philosophy-grid {
		gap: 26px;
		grid-template-columns: 1fr;
	}

	.philosophy-grid__col--left {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto;
		min-height: auto;
	}

	.philosophy-grid__col--left .philosophy-grid__tile {
		aspect-ratio: 3/4;
	}

	.philosophy-grid__center {
		align-self: stretch;
	}

	.philosophy-grid__collage {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto auto auto;
		min-height: auto;
	}

	.philosophy-grid__c1 {
		grid-column: 1 / 3;
		grid-row: 1;

		aspect-ratio: 16/9;
	}

	.philosophy-grid__c2 {
		grid-column: 1;
		grid-row: 2;

		aspect-ratio: 3/4;
	}

	.philosophy-grid__c3 {
		grid-column: 2;
		grid-row: 2;

		aspect-ratio: 3/4;
	}

	.philosophy-grid__c4 {
		grid-column: 1 / 3;
		grid-row: 3;

		aspect-ratio: 16/9;
	}

	.philosophy-grid__c5, .philosophy-grid__c6 {
		display: none;
	}

	.philosophy-pill {
		display: none;
	}
}

/* ============================================================
   Life base
   ============================================================ */
/* ============================================================
	   Токены
	   ============================================================ */
:root {
	--border: #e6e7e9;

	--bg-soft: #f6f7fb;
	--blue: #3a7fd9;
	--container: clamp(1200px, 94vw, 1720px);
	--ease: cubic-bezier(0.22, 1, 0.36, 1);
	--grad: linear-gradient(320deg, #395dee 0%, #508adc 100%);
	--gutter: clamp(20px, 4vw, 60px);
	--muted: #717ba3;
	--text: #0a1b33;
	--text-2: #283f5b;
}

.svg-sprite {
	overflow: hidden;
	position: absolute;
	width: 0;
	height: 0;
}

body, main, #smooth-scroll {
	background: #fafbfd;
}

/* Общие life-shead и t-* классы */
.life-shead {
	max-width: 880px;
	margin-bottom: 30px !important;
}

@media (max-width: 900px) {
	.life-shead {
		margin-bottom: 22px !important;
	}
}

.life-shead__label, .t-kicker {
	color: var(--blue);
	font-family: "Montserrat", sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	margin-bottom: 14px;
}

.life-shead__title, .t-h {
	color: var(--text-2);
	font-family: "Montserrat", sans-serif;
	font-size: clamp(34px, 4vw, 52px);
	line-height: 1.08;
	font-weight: 500;
	letter-spacing: -0.02em;
	margin: 0 0 14px;
}

.life-shead__title em, .t-h em {
	color: var(--blue);
	font-weight: 600;
	font-style: normal;
}

.life-shead__sub, .t-lead {
	max-width: 720px;
	color: var(--muted);
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	line-height: 1.55;
	margin: 0;
}

.life-section {
	position: relative;
	padding: 80px 0;
}

.life-section--soft {
	background: transparent;
}

/* Smooth scroll по якорям */
html {
	scroll-behavior: smooth;
}

/* Подписи к фото в Philosophy */
.philosophy-grid__tag {
	display: none !important;
}

/* Фото Алексея */
.r11__story-photo img[src*="alexey.jpg"] {
	object-position: 28% center !important;
}

/* ============================================================
	   Hero overrides
	   ============================================================ */
.hero-life__title {
	max-width: 17ch;
}

/* ============================================================
	   Daylife
	   ============================================================ */
* {
	-webkit-tap-highlight-color: transparent;
}

.daylife button, .daylife button:focus, .daylife button:focus-visible, .daylife .dlc__arrow, .daylife .dlc__arrow:focus, .daylife .dlc__arrow:focus-visible, .daylife .dlc__dot, .daylife .dlc__dot:focus, .daylife .dlc__dot:focus-visible, .daylife .dlc__card, .daylife .dlc__card:focus, .daylife .dlc__card:focus-visible, .dlc, .dlc *, .dlc button, .dlc button:focus, .dlc button:focus-visible, .dlc__arrow, .dlc__arrow:focus, .dlc__arrow:focus-visible, .dlc__dot, .dlc__dot:focus, .dlc__dot:focus-visible, .dlc__card, .dlc__card:focus, .dlc__card:focus-visible {
	box-shadow: none !important;
	outline: none !important;

	-webkit-tap-highlight-color: transparent !important;
}

.dlc__arrow {
	box-shadow: none;
}

.dlc__arrow:hover {
	box-shadow: 0 8px 18px -6px rgba(58, 127, 217, 0.35);
}

.daylife img, .dlc img, .dlc video {
	        user-select: none;

	-webkit-user-drag: none;
	-webkit-user-select: none;
}

/* drag */
.dlc__strip {
	will-change: scroll-position;
}

.dlc.is-dragging .dlc__strip, .dlc.is-dragging .dlc__card, .dlc.is-dragging .dlc__card img, .dlc.is-dragging .dlc__card video, .dlc__strip.is-dragging, .dlc__strip.is-dragging .dlc__card, .dlc__strip.is-dragging .dlc__card img, .dlc__strip.is-dragging .dlc__card video {
	transition: none !important;
}

.dlc__card {
	will-change: transform;
}

.dlc__card img, .dlc__card video {
	pointer-events: none;
}

/* ============================================================
   Residents
   ============================================================ */
/* ============================================================
	   RESIDENTS
	   ============================================================ */
.v3 {
	max-width: none;
	padding: 30px 0;
	margin: 0;
}

.v3__inner {
	display: grid;
	align-items: center;
	gap: 60px;
	grid-template-columns: 0.8fr 1fr 1.2fr !important;
	min-height: 460px;
	border: 1px solid var(--border);
	border-radius: 32px;
	background: #fff;
	padding: 46px 56px;
}

.v3__nav {
	display: flex;
	flex-direction: column;
	align-self: center;
	width: 100%;
}

.v3__tab {
	position: relative;
	display: grid;
	align-items: center;
	gap: 16px;
	grid-template-columns: 36px 1fr;
	width: 100%;
	border: 0;
	background: transparent;
	text-align: left;
	font-family: "Montserrat", sans-serif;
	cursor: pointer;
	padding: 22px 0 22px 24px;
	transition: padding 0.3s var(--ease);
}

.v3__tab + .v3__tab {
	border-top: 1px solid var(--border);
}

.v3__tab::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 3px;
	height: 0;
	border-radius: 2px;
	background: var(--blue);
	transition: height 0.35s var(--ease);
}

.v3__tab:hover {
	padding-left: 32px;
}

.v3__tab[aria-selected="true"] {
	padding-left: 32px;
}

.v3__tab[aria-selected="true"]::before {
	height: 44px;
}

.v3__tab[aria-selected="true"] .v3__tab-num {
	color: var(--blue);
}

.v3__tab[aria-selected="true"] .v3__tab-hotel {
	color: var(--blue);
}

.v3__tab-num {
	color: var(--muted);
	font-family: "Courier New", monospace;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.08em;
	transition: color 0.3s;
}

.v3__tab-text {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.v3__tab-hotel {
	color: var(--text-2);
	font-size: 17px;
	line-height: 1.2;
	font-weight: 600;
	letter-spacing: -0.01em;
	transition: color 0.3s;
}

.v3__tab-sub {
	color: var(--muted);
	font-size: 13px;
}

.v3__panel {
	position: relative;
	display: contents;
}

.v3__panel-illust {
	position: relative;
	display: flex;
	flex-shrink: 0;
	justify-content: center;
	align-items: center;
	width: 320px;
	height: 320px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--bg-soft) 0%, #fff 100%);

	justify-self: center;
}

.v3__panel-illust::after {
	content: "";
	position: absolute;
	inset: -8px;
	border: 1px dashed var(--border);
	border-radius: 50%;
	animation: v3Spin 60s linear infinite;
}

@keyframes v3Spin {
	to {
		transform: rotate(360deg);
	}
}

.v3__panel-illust img {
	position: relative;
	z-index: 1;
	width: 85%;
	height: 85%;
	object-fit: contain;
}

.v3__panel-text {
	max-width: 520px;
	box-sizing: border-box;
}

/* правый отступ контента панели */
@media (min-width: 1101px) {
	.v3__panel-text {
		padding-right: 28px;
	}
}

.v3__panel-kicker {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--blue);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	margin-bottom: 14px;
}

.v3__panel-kicker::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--blue);
}

.v3__panel-h {
	color: var(--text-2);
	font-size: 32px;
	line-height: 1.1;
	font-weight: 500;
	margin: 0 0 14px;
}

.v3__panel-p {
	color: var(--text-2);
	font-size: 14.5px;
	line-height: 1.55;
	margin: 0 0 18px;
}

.v3__metrics {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(3, 1fr);
	margin-bottom: 18px;
}

.v3__metric {
	border-radius: 14px;
	background: var(--bg-soft);
	padding: 14px 16px;
}

.v3__metric-val {
	color: var(--text-2);
	font-size: 22px;
	line-height: 1;
	font-weight: 500;
	letter-spacing: -0.015em;
}

.v3__metric-val em {
	color: var(--blue);
	font-style: normal;
}

.v3__metric-cap {
	color: var(--muted);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	margin-top: 6px;
}

.v3__check {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 0;
	margin-bottom: 18px;
}

.v3__check li {
	display: grid;
	align-items: start;
	gap: 10px;
	grid-template-columns: 20px 1fr;
	color: var(--text-2);
	font-size: 13px;
	line-height: 1.5;
	list-style: none;
}

.v3__check svg {
	width: 16px;
	height: 16px;
	color: var(--blue);
	margin-top: 2px;
}

.v3__panel-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.v3__panel-chips span {
	border: 1px solid var(--border);
	border-radius: 999px;
	background: #fff;
	color: var(--text-2);
	font-size: 11.5px;
	font-weight: 600;
	padding: 5px 12px;
}

/* ============================================================
   Daylife
   ============================================================ */
/* ============================================================
	   04 · Один день в Vertical
	   ============================================================ */
.dlc {
	--border: #e6e7e9;

	--bg-soft: #f6f7fb;
	--blue: #3a7fd9;
	--ease: cubic-bezier(0.22, 1, 0.36, 1);
	--ease-soft: cubic-bezier(0.32, 0.72, 0, 1);
	--grad: linear-gradient(320deg, #395dee 0%, #508adc 100%);
	--muted: #717ba3;
	--text-2: #283f5b;
}

.dlc__head {
	display: grid;
	align-items: end;
	gap: 40px;
	grid-template-columns: 1fr auto;
	margin-bottom: 40px;
}

.dlc .t-kicker {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--muted);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.20em;
	text-transform: uppercase;
	margin-bottom: 16px;
}

.dlc .t-kicker::before {
	content: "";
	width: 28px;
	height: 1px;
	background: var(--muted);
}

.dlc .t-h {
	color: var(--text-2);
	font-size: 46px;
	line-height: 1.05;
	font-weight: 500;
	letter-spacing: -0.02em;
	margin: 0 0 12px;
}

.dlc .t-h em {
	color: var(--blue);
	font-style: normal;
}

.dlc .t-lead {
	max-width: 640px;
	color: var(--text-2);
	font-size: 16px;
	line-height: 1.55;
	margin: 0;
}

/* Стрип: 4 видимых, snap, drag */
.dlc__strip {
	overflow-x: auto;
	overflow-y: hidden;
	display: flex;
	gap: 20px;
	cursor: grab;
	padding: 10px 0 44px;
	margin: -10px 0 -44px;
	user-select: none;
	scroll-behavior: smooth;

	-ms-overflow-style: none;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	touch-action: pan-y;
}

.dlc.is-dragging .dlc__strip, .dlc__strip.is-dragging {
	cursor: grabbing;
	scroll-behavior: auto !important;

	scroll-snap-type: none;
}

.dlc__strip::-webkit-scrollbar {
	display: none;
}

.dlc__card {
	overflow: hidden;
	position: relative;
	flex: 0 0 calc((100% - 60px) / 4);
	border-radius: 20px;
	background: var(--bg-soft);
	transition: transform 1s var(--ease-soft), box-shadow 1s var(--ease-soft);

	aspect-ratio: 3/4;
	scroll-snap-align: start;
}

.dlc__card:hover {
	transform: translateY(-7px);
	box-shadow: 0 30px 28px -32px rgba(10, 27, 51, 0.55);
}

.dlc__card img, .dlc__card video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	pointer-events: none;
	transition: transform 1.4s var(--ease-soft);

	-webkit-user-drag: none;
}

/* Индивидуальные object-position для daylife карточек */
.dlc__card img.dlc__img--shift-left, .dlc__card video.dlc__img--shift-left {
	object-position: 80% center;
}

.dlc__card img.dlc__img--shift-games, .dlc__card video.dlc__img--shift-games {
	object-position: 75% center;
}

.dlc__card img.dlc__img--shift-coffee, .dlc__card video.dlc__img--shift-coffee {
	object-position: 40% center;
}

.dlc__card:hover img, .dlc__card:hover video {
	transform: scale(1.06);
}

/* Градиенты */
.dlc__card::before {
	content: "";
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(180deg, transparent 35%, rgba(0, 0, 0, 0.78) 100%);
	pointer-events: none;
}

.dlc__card::after {
	content: "";
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(180deg, transparent 12%, rgba(0, 0, 0, 0.88) 100%);
	opacity: 0;
	pointer-events: none;
	transition: opacity 1s var(--ease-soft);
}

.dlc__card:hover::after {
	opacity: 1;
}

/* Время (top-left) */
.dlc__card-time {
	position: absolute;
	z-index: 3;
	top: 18px;
	left: 18px;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 10px 22px -8px rgba(0, 0, 0, 0.30);
	color: var(--text-2);
	font-size: 20px;
	line-height: 1;
	font-weight: 700;
	letter-spacing: -0.005em;
	padding: 10px 16px;
}

/* Номер (top-right) */
.dlc__card-num {
	position: absolute;
	z-index: 3;
	top: 22px;
	right: 20px;
	color: #fff;
	font-family: "Courier New", monospace;
	font-size: 11px;
	letter-spacing: 0.15em;
	opacity: 0.85;
}

/* Info-блок (bottom) */
.dlc__card-info {
	position: absolute;
	z-index: 2;
	right: 22px;
	bottom: 22px;
	left: 22px;
	color: #fff;
}

.dlc__card-cat {
	font-size: 10.5px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	margin-bottom: 6px;
	opacity: 0.9;
}

.dlc__card-title {
	font-size: 22px;
	line-height: 1.1;
	font-weight: 500;
	letter-spacing: -0.015em;
	margin: 0 0 10px;
}

.dlc__card-p {
	overflow: hidden;
	display: -webkit-box;
	color: #fff;
	font-size: 12.5px;
	line-height: 1.45;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	margin: 0 0 12px;
	opacity: 0.88;
}

.dlc__card-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.dlc__card-chips span {
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.18);
	backdrop-filter: blur(8px);
	color: #fff;
	font-size: 10.5px;
	font-weight: 600;
	padding: 4px 10px;
}

/* Чек-лист */
.dlc__check-wrap {
	display: grid;
	grid-template-rows: 0fr;
	margin-top: 0;
	transition: grid-template-rows 1s var(--ease-soft), margin-top 0.9s var(--ease-soft);
}

.dlc__card:hover .dlc__check-wrap {
	grid-template-rows: 1fr;
	margin-top: 12px;
}

.dlc__card-check {
	overflow: hidden;
	transform: translateY(4px);
	display: flex;
	flex-direction: column;
	gap: 7px;
	min-height: 0;
	list-style: none;
	padding: 0;
	margin: 0;
	opacity: 0;
	transition: opacity 0.9s var(--ease-soft), transform 1s var(--ease-soft);
}

.dlc__card:hover .dlc__card-check {
	transform: translateY(0);
	opacity: 1;
}

.dlc__card-check li {
	transform: translateY(8px);
	display: grid;
	align-items: start;
	gap: 8px;
	grid-template-columns: 14px 1fr;
	color: #fff;
	font-size: 11.5px;
	line-height: 1.4;
	opacity: 0;
	transition: opacity 0.55s var(--ease-soft), transform 0.65s var(--ease-soft);
}

.dlc__card:hover .dlc__card-check li {
	transform: translateY(0);
	opacity: 1;
}

.dlc__card:hover .dlc__card-check li:nth-child(1) {
	transition-delay: 0.25s;
}

.dlc__card:hover .dlc__card-check li:nth-child(2) {
	transition-delay: 0.34s;
}

.dlc__card:hover .dlc__card-check li:nth-child(3) {
	transition-delay: 0.43s;
}

.dlc__card-check svg {
	width: 12px;
	height: 12px;
	color: #fff;
	margin-top: 3px;
}

/* Навигация под стрипом */
.dlc__nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 28px;
}

.dlc__dots {
	display: flex;
	align-items: center;
	gap: 8px;
}

.dlc__dot {
	width: 8px;
	height: 8px;
	border: 0;
	border-radius: 50%;
	background: rgba(40, 63, 91, 0.20);
	cursor: pointer;
	padding: 0;
	transition: background 0.3s, width 0.3s;
}

.dlc__dot.is-active {
	width: 28px;
	border-radius: 4px;
	background: var(--blue);
}

.dlc__arrows {
	display: flex;
	gap: 10px;
}

.dlc__arrow {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 48px;
	height: 48px;
	border: 1px solid var(--border);
	border-radius: 50%;
	background: #fff;
	color: var(--text-2);
	cursor: pointer;
	transition: background 0.3s, color 0.3s, transform 0.2s;
}

.dlc__arrow:hover {
	border-color: transparent;
	background: var(--blue);
	color: #fff;
}

.dlc__arrow:active {
	transform: scale(0.96);
}

.dlc__arrow:disabled {
	cursor: not-allowed;
	opacity: 0.35;
}

.dlc__arrow svg {
	width: 18px;
	height: 18px;
}

@media (max-width: 1100px) {
	.dlc__card {
		flex-basis: calc((100% - 32px) / 3);
	}
}

@media (max-width: 768px) {
	.dlc__card {
		flex-basis: calc((100% - 16px) / 2);
	}
}

@media (max-width: 520px) {
	.dlc__card {
		flex-basis: 80%;
	}
}

/* ============================================================
   Value
   ============================================================ */
/* ============================================================
	   VALUE
	   ============================================================ */
.vv-section {
	padding: 40px 0 20px 0;
}

.vv__row {
	display: grid;
	align-items: stretch;
	gap: 24px;
	grid-template-columns: 1fr 100px 1fr;
	margin-bottom: 28px;
}

.vv__row:last-child {
	margin-bottom: 0;
}

.vv__card {
	overflow: hidden;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	border: 1px solid var(--border);
	border-radius: 22px;
	background: #fff;
	padding: 36px 40px;
	transition: transform 0.4s var(--ease), box-shadow 0.4s var(--ease), border-color 0.3s;

	isolation: isolate;
}

.vv__card:hover {
	transform: translateY(-6px);
	border-color: var(--blue);
	box-shadow: 0 30px 60px -20px rgba(10, 27, 51, 0.18);
}

.vv__card > .vv__card-body {
	position: relative;
	z-index: 2;
}

.vv__card-h {
	color: var(--text-2);
	font-size: 26px;
	line-height: 1.18;
	font-weight: 500;
	letter-spacing: -0.01em;
	margin: 0 0 12px;
}

.vv__card-h em {
	color: var(--blue);
	font-weight: 600;
	font-style: normal;
}

.vv__card-p {
	color: var(--muted);
	font-size: 16px;
	line-height: 1.55;
	margin: 0;
}

.vv__card--result {
	border-color: transparent;
	background: var(--grad);
	color: #fff;
}

.vv__card--result .vv__card-h {
	color: #fff;
	font-size: 32px;
	font-weight: 500;
}

.vv__card--result .vv__card-h em {
	border-radius: 5px;
	background: rgba(255, 255, 255, 0.18);
	color: #fff;
	font-weight: 700;
	padding: 0 8px;
}

.vv__card--result .vv__card-p {
	color: rgba(255, 255, 255, 0.92);
}

.vv__card--result::after {
	content: "";
	position: absolute;
	z-index: 0;
	top: -60px;
	right: -200px;
	width: 580px;
	height: 580px;
	border-radius: 3000px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0) 56%);
	pointer-events: none;
}

.vv__card--result:hover {
	transform: translateY(-6px) scale(1.01);
	box-shadow: 0 40px 80px -20px rgba(58, 127, 217, 0.45);
}

.vv__arrow {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
}

.vv__arrow-line {
	position: absolute;
	z-index: -1;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 1px;
	background: linear-gradient(180deg, transparent, var(--border), transparent);
}

.vv__arrow-icon {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 80px;
	height: 80px;
	border: 1px solid var(--border);
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 14px 30px -10px rgba(58, 127, 217, 0.25);
	color: var(--blue);
	transition: transform 0.4s var(--ease), background 0.3s, color 0.3s;
}

.vv__row:hover .vv__arrow-icon {
	transform: scale(1.1);
	background: var(--blue);
	color: #fff;
}

.vv__arrow-icon svg {
	width: 28px;
	height: 28px;
}

/* Иллюстрация за плашкой */
.vv2 .vv__card {
	min-height: 200px;
	padding: 40px 44px;
}

.vv2 .vv__illust {
	position: absolute;
	z-index: 1;
	right: -20px;
	bottom: -30px;
	width: 200px;
	height: 200px;
	pointer-events: none;
}

.vv2 .vv__illust img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.vv2 .vv__card:not(.vv__card--result) .vv__illust {
	opacity: 0.35;
}

.vv2 .vv__card--result .vv__illust {
	opacity: 0.35;
}

/* Иллюстрации на синих плашках */
.vv2 .vv__card--result .vv__illust img {
	filter: brightness(1.5) saturate(0.35) contrast(0.95);
}

/* Темнее */
.vv__illust--darker img {
	filter: brightness(0.85) saturate(0.9) !important;
}

.vv2 .vv__card--result::after {
	top: -120px;
	right: auto;
	left: -240px;
}

.vv2 .vv__card-body {
	position: relative;
	z-index: 2;
	max-width: 70%;
}

/* ============================================================
   Gallery
   ============================================================ */
/* ============================================================
	   POLAROID BASE
	   ============================================================ */
.pol {
	position: relative;
	background: #fff;
	box-shadow: 0 18px 36px -14px rgba(10, 27, 51, 0.30), 0 2px 6px rgba(10, 27, 51, 0.08);
	cursor: pointer;
	padding: 12px 12px 44px;
	transition: transform 0.5s var(--ease), box-shadow 0.5s, z-index 0s 0.3s;
}

/* HOVER */
.pol:hover {
	box-shadow: 0 28px 56px -12px rgba(10, 27, 51, 0.45), 0 4px 12px rgba(10, 27, 51, 0.12);
	cursor: grab;
}

.pol[data-dragging="1"] {
	cursor: grabbing;
}

.pol__img {
	overflow: hidden;
	width: 100%;
	background: #f0f0f0;

	aspect-ratio: 1/1;
}

.pol__img img, .pol__img video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	pointer-events: none;
	user-select: none;

	-webkit-user-drag: none;
}

.pol__cap {
	position: absolute;
	right: 12px;
	bottom: 8px;
	left: 12px;
	text-align: center;
	color: #283f5b;
	letter-spacing: 0;
}

/* Стена полароидов */
.pv1 .pv1__canvas {
	overflow: hidden;
	position: relative;
	height: 880px;
	border: 1px solid var(--border);
	border-radius: 32px;
	background: linear-gradient(135deg, #f6f7fb 0%, #fff 100%);
}

.pv1 .pol {
	position: absolute;
}

.pv1 .pol__cap {
	font-family: "Caveat", cursive;
	font-size: 22px;
	font-weight: 500;
}

/* Синий полосатый washi-скотч сверху по центру */
.pv1 .pol::before {
	content: "";
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%) rotate(-3deg);
	width: 80px;
	height: 22px;
	border-radius: 1px;
	background: repeating-linear-gradient(45deg,
	rgba(58, 127, 217, 0.40) 0px,
	rgba(58, 127, 217, 0.40) 6px,
	rgba(255, 255, 255, 0.55) 6px,
	rgba(255, 255, 255, 0.55) 12px);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}

/* ============================================================
	   LIGHTBOX
	   ============================================================ */
.pol-lightbox {
	position: fixed;
	z-index: 9999;
	inset: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	background: rgba(10, 27, 51, 0.86);
	backdrop-filter: blur(16px);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.35s var(--ease);
}

.pol-lightbox[aria-hidden="false"] {
	opacity: 1;
	pointer-events: auto;
}

.pol-lightbox__bg {
	position: absolute;
	inset: 0;
	cursor: pointer;
}

.pol-lightbox__inner {
	position: relative;
	z-index: 2;
	transform: scale(0.85) rotate(-2deg);
	width: min(520px, 90vw);
	transition: transform 0.45s var(--ease);
}

.pol-lightbox[aria-hidden="false"] .pol-lightbox__inner {
	transform: scale(1) rotate(0deg);
}

/* Клон полароида внутри lightbox */
.pol-lightbox__inner .pol {
	position: relative !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
	transform: none !important;
	max-width: 520px !important;
	width: 100% !important;
	box-shadow: 0 60px 120px -20px rgba(0, 0, 0, 0.7);
	cursor: default;
	padding: 24px 24px 86px;
	margin: 0 auto !important;
}

.pol-lightbox__inner .pol__img {
	aspect-ratio: 1/1;
}

.pol-lightbox__inner .pol__cap {
	right: 24px;
	bottom: 28px;
	left: 24px;
	color: #283f5b;
	font-family: "Caveat", cursive !important;
	font-size: 36px;
	line-height: 1.1;
	font-weight: 500;
}

.pol-lightbox__x {
	position: fixed;
	z-index: 10000;
	top: 24px;
	right: 32px;
	width: 44px;
	height: 44px;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.15);
	color: #fff;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
	padding: 0;
	transition: background 0.25s;
}

.pol-lightbox__x:hover {
	background: rgba(255, 255, 255, 0.25);
}

body.is-lightbox-open {
	overflow: hidden;
}

/* ============================================================
	   Hero
	   ============================================================ */
.hero-life {
	transform-origin: 50% 0;

	will-change: transform, border-radius;
}

@media (max-width: 1100px) {
	.v3__inner {
		grid-template-columns: 1fr !important;
		padding: 32px;
	}

	.vv__row {
		gap: 12px;
		grid-template-columns: 1fr !important;
	}

	.pv1 .pv1__canvas {
		display: grid;
		gap: 20px;
		grid-template-columns: 1fr 1fr;
		height: auto;
		padding: 30px;
	}

	.pv1 .pol {
		position: static;
		top: auto !important;
		left: auto !important;
		transform: none !important;
		width: 100% !important;
	}
}

@media (max-width: 600px) {
	.pv1 .pv1__canvas {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
   Layout
   ============================================================ */
/* ============================================================
	   ВЫРАВНИВАНИЕ: единый контейнер для всех секций
	   ============================================================ */
/* Variants-блоки на всю ширину контейнера */
.life-section .v3, .life-section .v3__inner, .life-section .dlc, .life-section .dlc__inner, .life-section .vv, .life-section .vv__inner, .life-section .pv1, .life-section .r11, .life-section .r11__inner, .life-section .r11__wrap, #residents .v3, #residents .v3__inner, #daylife .dlc, #value .vv, #gallery .pv1, #reviews .r11 {
	max-width: 100% !important;
	width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	box-sizing: border-box;
}

/* === Reviews #reviews === */
#reviews .rev-variants, #reviews .rev-variants > *, #reviews .rev-variants .r11, #reviews .rev-variants .r11__inner, #reviews .rev-variants .r11__head, #reviews .rev-variants .r11__bottom, #reviews .rev-variants .r11__wrap, #reviews .rev-variants .r11__stories, #reviews .rev-variants .r11__stories-track, #reviews .rev-variants .r11__wall {
	max-width: 100% !important;
	width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	box-sizing: border-box;
}

/* Stories-track вертикальные padding */
#reviews .rev-variants .r11__stories-track {
	padding-top: 14px !important;
	padding-bottom: 24px !important;
}

/* Стрелки wall */
.r11__wall-nav {
	display: none;
}

/* === Philosophy #philosophy === */
#philosophy .container > .philosophy-grid, #philosophy .phi-variants__default, #philosophy .phi-variants {
	max-width: 100% !important;
	width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* === Тест-драйв #testdrive === */
#testdrive .t5-section {
	max-width: clamp(1100px, 94vw, 1720px) !important;
	width: auto !important;
	min-height: 0 !important;
	padding-left: 32px !important;
	padding-right: 32px !important;
	padding-top: 30px !important;
	padding-bottom: 30px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
}

/* Единые вертикальные отступы между секциями */
.life-section {
	padding-top: 35px !important;
	padding-bottom: 35px !important;
}

.life-section--tight {
	padding-top: 24px !important;
	padding-bottom: 24px !important;
}

@media (max-width: 900px) {
	.life-section {
		padding-top: 22px !important;
		padding-bottom: 22px !important;
	}

	.life-section--tight {
		padding-top: 16px !important;
		padding-bottom: 16px !important;
	}
}

@media (max-width: 600px) {
	.life-section {
		padding-top: 14px !important;
		padding-bottom: 14px !important;
	}

	.life-section--tight {
		padding-top: 10px !important;
		padding-bottom: 10px !important;
	}
}

/* .r11 padding */
.r11, #reviews .rev-variants .r11 {
	padding-top: 40px !important;
	padding-bottom: 40px !important;
}

/* ============================================================
   Marker pack
   ============================================================ */
/* ============================================================
	   Marker Line Pack
	   ============================================================ */

.residents-section::before {
	display: none !important;
}

/* CTA-Final · фоновая иконка */
#cta-final, .cta-final {
	overflow: hidden !important;
	position: relative !important;
}

.cta-final > * {
	position: relative;
	z-index: 1;
}

.cta-final__bg {
	position: absolute !important;
	z-index: 0 !important;
	top: 70%;
	right: auto;
	left: 7%;
	transform: translate(-30%, -50%);
	filter: brightness(0) invert(1);
	width: auto;
	height: 108%;
	max-height: 660px;
	opacity: 0.10;
	pointer-events: none;
	user-select: none;
}

@media (max-width: 1024px) {
	.cta-final__bg {
		height: 55%;
		opacity: 0.08;
	}
}

@media (max-width: 700px) {
	.cta-final__bg {
		display: none;
	}
}

/* Фоновые иконки в зоне заголовков */
#philosophy, #residents, #daylife, #value, #gallery {
	overflow: hidden !important;
	position: relative !important;
}

/* Контент секций поверх фоновых иконок */
#philosophy > .container, #residents > .container, #daylife > .container, #value > .container, #gallery > .container, #philosophy > *:not(.mlp-bg), #residents > *:not(.mlp-bg), #daylife > *:not(.mlp-bg), #value > *:not(.mlp-bg), #gallery > *:not(.mlp-bg) {
	position: relative;
	z-index: 1;
}

/* Базовый паттерн */
.mlp-bg {
	position: absolute !important;
	z-index: 0 !important;
	width: auto;
	object-fit: contain;
	opacity: 0.05;
	pointer-events: none !important;
	user-select: none;
}

/* Позиции по секциям */
#philosophy .mlp-bg {
	top: 50px;
	right: 4%;
	height: 32vh;
	max-height: 360px;
	opacity: 0.045;
}

#residents .mlp-bg {
	top: 80px;
	right: 3%;
	height: 36vh;
	max-height: 400px;
	opacity: 0.05;
}

#daylife .mlp-bg {
	top: -40px;
	right: 4%;
	height: 40vh;
	max-height: 440px;
	opacity: 0.05;
}

#gallery .mlp-bg {
	top: -12%;
	right: 6%;
	height: 65vh;
	max-height: 720px;
	opacity: 0.05;
}

@media (max-width: 900px) {
	.mlp-bg {
		display: none;
	}
}

/* ============================================================
   Test-drive
   ============================================================ */
/* === Тест-драйв === */
.t5-section {
	max-width: var(--container, 1280px);
	padding: 80px var(--gutter);
	margin: 0 auto;
}

.t5-frame {
	position: relative;
	min-height: 420px;
	border-radius: 36px;
	color: #fff;
	padding: 64px 80px 60px;

	isolation: isolate;
}

.t5-frame__bg {
	overflow: hidden;
	position: absolute;
	z-index: -2;
	inset: 0;
	border-radius: 36px;
}

.t5-frame__bg img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.t5-frame__bg::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(95deg, rgba(0, 0, 0, 0.80) 0%, rgba(0, 0, 0, 0.62) 42%, rgba(0, 0, 0, 0.28) 70%, rgba(0, 0, 0, 0.08) 100%);
}

.t5-frame-pre {
	color: rgba(255, 255, 255, 0.78);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	margin-bottom: 14px;
}

.t5-frame__grid {
	display: grid;
	align-items: center;
	gap: 56px;
	grid-template-columns: minmax(0, 1fr) 340px;
}

.t5-frame__copy {
	min-width: 0;
}

.t5-frame h2 {
	max-width: 720px;
	font-size: 48px;
	line-height: 1.06;
	font-weight: 500;
	letter-spacing: -0.02em;
	margin: 0 0 18px;
}

.t5-frame h2 em {
	color: #8fb8e7;
	font-weight: 600;
	font-style: normal;
}

.t5-frame p {
	max-width: 620px;
	color: rgba(255, 255, 255, 0.86);
	font-size: 15.5px;
	line-height: 1.6;
	margin: 0 0 22px;
}

.t5-frame__perks {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 14px;
	padding: 0;
	margin-bottom: 32px;
}

.t5-frame__perks li {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border: 1px solid rgba(255, 255, 255, 0.20);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.10);
	backdrop-filter: blur(8px);
	color: #fff;
	font-size: 12.5px;
	font-weight: 600;
	list-style: none;
	padding: 8px 14px;
}

.t5-frame__perks li::before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #8fb8e7;
}

.t5-frame-cta {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	border-radius: 999px;
	background: #fff;
	color: #0a1b33;
	font-size: 14.5px;
	font-weight: 700;
	padding: 18px 32px;
	text-decoration: none;
	transition: transform 0.3s var(--ease);
}

.t5-frame-cta:hover {
	transform: translateX(4px);
}

.t5-ticket {
	position: relative;
	z-index: 2;
	top: var(--scroll-y, 0px);
	transform: translateX(50px) rotate(6deg);
	width: 340px;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 50px 100px -25px rgba(0, 0, 0, 0.65);
	color: var(--text-2);
	padding: 26px 26px 22px;
	transition: top 0.25s var(--ease);
	animation: t5Float 6s ease-in-out infinite;

	will-change: transform, top;
}

@keyframes t5Float {
	0%, 100% {
		transform: translateX(50px) rotate(6deg) translateY(0px);
	}

	50% {
		transform: translateX(50px) rotate(6deg) translateY(-12px);
	}
}

.t5-ticket-stamp {
	position: absolute;
	z-index: 3;
	top: -14px;
	right: -22px;
	transform: rotate(14deg);
	border: 2px dashed var(--blue);
	border-radius: 6px;
	background: #fff;
	box-shadow: 0 8px 20px -8px rgba(0, 0, 0, 0.25);
	text-align: center;
	color: var(--blue);
	font-size: 9.5px;
	line-height: 1.25;
	font-weight: 800;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	white-space: nowrap;
	padding: 6px 14px 5px;
}

.t5-ticket-airline {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px dashed var(--border);
	padding-bottom: 16px;
	margin-bottom: 18px;
}

.t5-ticket-airline b {
	color: var(--blue);
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.12em;
}

.t5-ticket-airline span {
	color: var(--muted);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.t5-ticket-route {
	display: grid;
	align-items: center;
	gap: 14px;
	grid-template-columns: 1fr auto 1fr;
	margin-bottom: 18px;
}

.t5-ticket-city {
	text-align: center;
}

.t5-ticket-city-code {
	color: var(--text-2);
	font-size: 30px;
	line-height: 1;
	font-weight: 500;
	letter-spacing: -0.02em;
}

.t5-ticket-city-name {
	color: var(--muted);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	margin-top: 6px;
}

.t5-ticket-plane svg {
	width: 28px;
	height: 28px;
	color: var(--blue);
}

.t5-ticket-row {
	display: flex;
	justify-content: space-between;
	border-top: 1px dashed var(--border);
	font-size: 12px;
	padding: 10px 0;
}

.t5-ticket-row span:first-child {
	color: var(--muted);
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.t5-ticket-row span:last-child {
	color: var(--text-2);
	font-weight: 700;
}

.t5-ticket-row em {
	color: var(--blue);
	font-style: normal;
}

@media (max-width: 1100px) {
	.t5-frame {
		min-height: auto;
		padding: 48px 30px 30px;
	}

	.t5-frame__grid {
		gap: 32px;
		grid-template-columns: 1fr;
	}

	.t5-frame h2 {
		font-size: 36px;
	}

	.t5-ticket {
		transform: rotate(-2deg);
		width: 300px;
		margin: 0 auto;
		animation: t5FloatMob 6s ease-in-out infinite;
	}

	@keyframes t5FloatMob {
		0%, 100% {
			transform: rotate(-2deg) translateY(0);
		}

		50% {
			transform: rotate(-2deg) translateY(-10px);
		}
	}

	.t5-ticket-stamp {
		right: -10px;
	}
}

/* === Язычок тест-драйва === */
.t1-tab {
	position: fixed;
	/* спрятан за правым краем */
	z-index: 9999;
	top: 50%;
	right: 0;
	transform: translate(100%, -50%);
	display: flex;
	pointer-events: none;
	transition: transform 1.4s cubic-bezier(0.22, 1, 0.36, 1);

	will-change: transform;
}

.t1-tab.is-visible {
	transform: translate(0, -50%);
	/* выдвинут */
	pointer-events: auto;
}

.t1-tab.is-dismissed {
	display: none !important;
}

.t1-tab__pull {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 56px;
	border: 0;
	border-radius: 18px 0 0 18px;
	background: var(--grad, linear-gradient(320deg, #395dee 0%, #508adc 100%));
	box-shadow: -10px 14px 30px -10px rgba(58, 127, 217, 0.45);
	color: #fff;
	cursor: pointer;
	padding: 22px 0;
}

.t1-tab__pull-icon {
	transform-origin: 50% 50%;
	display: inline-block;
	font-size: 24px;
	line-height: 1;
	margin-bottom: 12px;
	animation: t1PlaneWobble 3.5s cubic-bezier(0.42, 0, 0.58, 1) infinite;
}

@keyframes t1PlaneWobble {
	0% {
		transform: rotate(-8deg);
	}

	50% {
		transform: rotate(8deg);
	}

	100% {
		transform: rotate(-8deg);
	}
}

/* 🎁 крупнее в штампе */
.t1-tab__panel-stamp .t1-gift {
	vertical-align: -2px;
	font-size: 18px;
	line-height: 1;
	margin-right: 6px;
}

.t1-tab__pull-text {
	transform: rotate(180deg);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.25em;
	text-transform: uppercase;
	writing-mode: vertical-rl;
}

.t1-tab__pull::before {
	content: "";
	position: absolute;
	top: 10px;
	bottom: 10px;
	left: 4px;
	width: 4px;
	border-radius: 2px;
	background: rgba(255, 255, 255, 0.30);
}

.t1-tab__dismiss {
	position: absolute;
	z-index: 2;
	top: 6px;
	right: 6px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 18px;
	height: 18px;
	border: 0;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.3);
	color: #fff;
	font-size: 12px;
	line-height: 1;
	cursor: pointer;
	padding: 0;
}

.t1-tab__dismiss:hover {
	background: rgba(0, 0, 0, 0.6);
}

.t1-tab__panel {
	overflow: hidden;
	width: 0;
	border-radius: 0;
	background: #fff;
	box-shadow: -16px 20px 40px -10px rgba(10, 27, 51, 0.30);
	transition: width 1.1s cubic-bezier(0.22, 1, 0.36, 1);
}

.t1-tab.is-open .t1-tab__panel {
	width: 380px;
}

.t1-tab__panel-inner {
	position: relative;
	width: 380px;
	padding: 30px 32px;
}

.t1-tab__panel-stamp {
	transform: rotate(-3deg);
	display: inline-block;
	border: 2px dashed var(--blue);
	border-radius: 6px;
	color: var(--blue);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	padding: 4px 10px;
	margin-bottom: 18px;
}

.t1-tab__panel h3 {
	color: var(--text-2);
	font-size: 26px;
	line-height: 1.1;
	font-weight: 500;
	letter-spacing: -0.015em;
	margin: 0 0 12px;
}

.t1-tab__panel h3 em {
	color: var(--blue);
	font-style: normal;
}

.t1-tab__panel p {
	color: var(--muted);
	font-size: 13px;
	line-height: 1.55;
	margin: 0 0 18px;
}

.t1-tab__row {
	display: flex;
	justify-content: space-between;
	border-top: 1px dashed var(--border);
	font-size: 12px;
	padding: 12px 0;
}

.t1-tab__row span:first-child {
	color: var(--muted);
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.t1-tab__row span:last-child {
	color: var(--text-2);
	font-weight: 700;
}

.t1-tab__cta {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	border-radius: 999px;
	background: var(--grad);
	color: #fff;
	font-size: 13.5px;
	font-weight: 600;
	padding: 14px 22px;
	margin-top: 18px;
	text-decoration: none;
}

.t1-tab__close {
	position: absolute;
	z-index: 5;
	top: 14px;
	right: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 26px;
	height: 26px;
	border: 0;
	border-radius: 50%;
	background: var(--bg-soft, #f6f7fb);
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.10);
	color: var(--text-2, #283f5b);
	font-size: 16px;
	line-height: 1;
	cursor: pointer;
	padding: 1px 0 0 0;
	transition: background 0.2s ease, transform 0.2s ease;
}

.t1-tab__close:hover {
	transform: scale(1.06);
	background: #fff;
}

/* ============================================================
   Reviews
   ============================================================ */
/* =========================================================
	   ОТЗЫВЫ · OVERRIDES
	   ========================================================= */

/* Карусель кейсов */
#reviews .rev-variants .r11__stories {
	position: relative;
}

/* Правый fade-out */
#reviews .rev-variants .r11__stories::after {
	content: "";
	position: absolute;
	z-index: 2;
	top: 0;
	right: 0;
	width: 10px;
	height: var(--r11-track-h, 100%);
	background: linear-gradient(to right, rgba(250, 251, 253, 0), #fafbfd);
	opacity: 1;
	pointer-events: none;
	transition: opacity 0.35s ease;
}

#reviews .rev-variants .r11__stories.is-at-end::after {
	opacity: 0;
}

/* Левый fade-in */
#reviews .rev-variants .r11__stories::before {
	content: "";
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 10px;
	height: var(--r11-track-h, 100%);
	background: linear-gradient(to left, rgba(250, 251, 253, 0), #fafbfd);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.35s ease;
}

#reviews .rev-variants .r11__stories.is-scrolled::before {
	opacity: 1;
}

/* Стрелки навигации */
#reviews .rev-variants .r11__nav, #reviews .rev-variants .r11__arrow, #reviews .rev-variants [class*="r11__arrow"], #reviews .rev-variants [class*="r11__nav"] {
	position: relative;
	z-index: 10 !important;
}

/* Звезда */
#reviews .rev-variants svg[class*="star"], #reviews .rev-variants svg[class*="star"] path, #reviews .rev-variants svg[class*="star"] polygon, #reviews .rev-variants [class*="r11__star"] svg, #reviews .rev-variants [class*="r11__star"] svg path, #reviews .rev-variants [class*="r11__star"] svg polygon {
	fill: #f5a623 !important;
	stroke: #f5a623 !important;
}

/* Hover-эффект на карточки стены отзывов */
#reviews .rev-variants .r11__brick {
	cursor: default;
	transition: transform 0.4s var(--ease, cubic-bezier(0.22, 1, 0.36, 1)),
	box-shadow 0.4s var(--ease, cubic-bezier(0.22, 1, 0.36, 1)),
	border-color 0.3s;
}

#reviews .rev-variants .r11__brick:hover {
	transform: translateY(-6px);
	border-color: var(--blue, #3a7fd9);
	box-shadow: 0 30px 60px -20px rgba(10, 27, 51, 0.18);
}

/* Синяя карточка */
#reviews .rev-variants .r11__brick--blue:hover {
	transform: translateY(-6px);
	border-color: transparent;
	box-shadow: 0 30px 60px -20px rgba(58, 127, 217, 0.45);
}

/* Выравнивание высоты карточек */
#reviews .rev-variants .r11__brick {
	display: flex;
	flex-direction: column;
}

#reviews .rev-variants .r11__brick .r11__brick-text {
	flex: 1;
}

/* ============================================================
   Responsive
   ============================================================ */
/* =========================================================
	   MOBILE OVERRIDES (≤768)
	   ========================================================= */
@media (max-width: 768px) {
	/* ---------- 0. ОБЩИЙ H2 / TITLE ---------- */
	.t-h, h2.t-h, .philosophy-grid__title, .vv-section h2, .t5-frame h2, #residents h2, #gallery h2, #value h2, #daylife .t-h, #reviews h2, .r11__wall-h, .pv1 h2 {
		font-size: clamp(22px, 6vw, 28px) !important;
		line-height: 1.12 !important;
		letter-spacing: -0.015em !important;
	}

	.t-kicker, .t5-frame-pre, .r11__wall-pre {
		font-size: 10.5px !important;
		letter-spacing: 0.16em !important;
	}

	.t-lead, .philosophy-grid__lead {
		font-size: 14px !important;
		line-height: 1.55 !important;
	}

	/* ---------- 1. HERO ---------- */
	.hero-life__title {
		max-width: none !important;
		font-size: clamp(26px, 7.2vw, 34px) !important;
		letter-spacing: -0.02em;
	}

	.hero-life__sub {
		font-size: 13.5px;
	}

	/* 3 plashki в один ряд */
	.hero-life__stats {
		right: 16px !important;
		bottom: 64px !important;
		left: 16px !important;
		flex-wrap: nowrap !important;
		justify-content: space-between;
		gap: 6px !important;
	}

	.hero-life__stat {
		flex: 1 1 0 !important;
		gap: 4px !important;
		min-width: 0 !important;
		border-radius: 14px !important;
		padding: 10px 8px !important;
	}

	.hero-life__stat-num {
		font-size: 20px !important;
		line-height: 1 !important;
		white-space: nowrap;
	}

	.hero-life__stat-num .hero-life__stat-unit {
		font-size: 0.55em;
	}

	.hero-life__stat-lbl {
		font-size: 10px !important;
		line-height: 1.25 !important;
	}

	.hero-life__stat-lbl br {
		display: none !important;
	}

	/* ---------- 2. PHILOSOPHY ---------- */
	.philosophy-grid__chips span:nth-child(4) {
		display: none !important;
	}

	/* ---------- 3. DAYLIFE ---------- */
	.dlc__strip {
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x mandatory !important;
		touch-action: pan-x pan-y !important;
	}

	.dlc__card {
		flex: 0 0 100% !important;
		max-width: 100% !important;

		aspect-ratio: 4/5;
		scroll-snap-align: center !important;
	}

	/* Раскрытый чек-лист */
	.dlc__card .dlc__check-wrap {
		grid-template-rows: 1fr !important;
		margin-top: 10px !important;
	}

	.dlc__card .dlc__card-check {
		transform: none !important;
		opacity: 1 !important;
	}

	.dlc__card .dlc__card-check li {
		transform: none !important;
		font-size: 11px;
		opacity: 1 !important;
	}

	.dlc__card-p {
		-webkit-line-clamp: unset !important;
	}

	.dlc__card::after {
		background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.55) 35%, rgba(0, 0, 0, 0.92) 100%) !important;
		opacity: 1 !important;
	}

	.dlc__card-title {
		font-size: 19px;
	}

	.dlc__strip {
		gap: 12px;
		padding-right: 12px;
	}

	/* ---------- 4. VALUE ---------- */
	.vv__row {
		gap: 0 !important;
		margin-bottom: 44px !important;
	}

	.vv__row:last-child {
		margin-bottom: 0 !important;
	}

	/* Стрелка вниз */
	.vv__arrow {
		position: relative;
		z-index: 2;
		min-height: 56px;
		margin: -10px 0;
	}

	.vv__arrow-icon {
		transform: rotate(90deg);
		width: 56px !important;
		height: 56px !important;
	}

	.vv__row:hover .vv__arrow-icon {
		transform: rotate(90deg) scale(1.06);
	}

	.vv__arrow-icon svg {
		width: 20px;
		height: 20px;
	}

	.vv__arrow-line {
		top: 0;
		bottom: 0;
		left: 50% !important;
		width: 1px;
		height: auto;
		background: linear-gradient(180deg, transparent, var(--border), transparent);
	}

	.vv__card {
		border-radius: 18px !important;
		padding: 22px 22px !important;
	}

	.vv2 .vv__card {
		min-height: 0 !important;
		padding: 24px 22px !important;
	}

	.vv__card-h {
		font-size: 22px !important;
	}

	.vv__card--result .vv__card-h {
		font-size: 26px !important;
	}

	.vv__card-p {
		font-size: 14px !important;
	}

	.vv2 .vv__illust {
		right: -16px;
		bottom: -20px;
		width: 130px;
		height: 130px;
	}

	.vv2 .vv__card-body {
		max-width: 80%;
	}

	/* ---------- 5. POLAROID GALLERY ---------- */
	.pv1 .pv1__canvas {
		overflow: hidden;
		position: relative;
		display: flex !important;
		flex-wrap: wrap;
		align-items: flex-start;
		gap: 14px 12px;
		height: auto !important;
		padding: 24px 0 !important;
	}

	.pv1 .pol {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		left: auto !important;
		flex: 0 0 47% !important;
		max-width: 47%;
		width: auto !important;
		padding: 8px 8px 32px !important;
		margin: 0 !important;
	}

	.pv1 .pol:nth-child(3n) {
		flex: 0 0 64% !important;
		max-width: 64%;
		margin: 6px auto !important;
	}

	.pv1 .pol:nth-child(3n+1) {
		transform: rotate(-5deg) translateY(4px) !important;
	}

	.pv1 .pol:nth-child(3n+2) {
		transform: rotate(4deg) translateY(-4px) !important;
	}

	.pv1 .pol:nth-child(3n) {
		transform: rotate(-2deg) !important;
	}

	.pv1 .pol:nth-child(6n+1) {
		transform: rotate(-7deg) translateY(8px) !important;
	}

	.pv1 .pol:nth-child(6n+5) {
		transform: rotate(6deg) translateY(-6px) !important;
	}

	.pv1 .pol:nth-child(n+9) {
		display: none !important;
	}

	/* Caption */
	.pv1 .pol .pol__cap {
		position: absolute !important;
		right: 6px !important;
		bottom: 4px !important;
		left: 6px !important;
		font-family: "Caveat", cursive;
		font-size: 12px;
	}

	/* ---------- 6. TEST-DRIVE ---------- */
	#testdrive .t5-section {
		max-width: 100% !important;
		padding: 24px 16px !important;
	}

	.t5-frame {
		border-radius: 22px;
		padding: 30px 22px 28px !important;
	}

	.t5-frame h2 {
		font-size: 26px !important;
	}

	.t5-frame p {
		font-size: 14px;
	}

	.t5-frame__perks li {
		font-size: 11px;
		padding: 6px 11px;
	}

	.t5-frame-cta {
		font-size: 13.5px;
		padding: 14px 22px;
	}

	.t5-ticket {
		transform: rotate(4deg) !important;
		max-width: 320px;
		width: 100% !important;
		padding: 22px 22px 18px !important;
		margin: 10px auto 0 !important;
		animation: t5FloatMobile 6s ease-in-out infinite !important;
	}

	@keyframes t5FloatMobile {
		0%, 100% {
			transform: rotate(4deg) translateY(0);
		}

		50% {
			transform: rotate(4deg) translateY(-8px);
		}
	}

	.t5-ticket-stamp {
		top: -12px !important;
		right: -8px !important;
	}

	.t5-ticket-city-code {
		font-size: 26px;
	}

	/* ---------- 7. FLOATING CTA ---------- */
	.t1-tab {
		top: auto !important;
		right: 18px !important;
		bottom: 18px !important;
		bottom: 100px !important;
		transform: translate(120%, 0) !important;
		flex-direction: row;
	}

	.t1-tab.is-visible {
		transform: translate(0, 0) !important;
	}

	/* Круглый FAB */
	.t1-tab__pull {
		width: 60px !important;
		height: 60px !important;
		border-radius: 50% !important;
		box-shadow: 0 6px 16px -4px rgba(58, 127, 217, 0.35);
		padding: 0 !important;
	}

	.t1-tab__pull-icon {
		font-size: 26px !important;
		margin: 0 !important;
	}

	.t1-tab__pull-text {
		display: none !important;
	}

	.t1-tab__pull::before {
		display: none !important;
	}

	.t1-tab__dismiss {
		top: -6px !important;
		right: -6px !important;
		width: 22px !important;
		height: 22px !important;
		background: #fff;
		box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
		color: var(--text-2, #283f5b);
		font-size: 13px;
	}

	/* Panel - bottom-sheet */
	.t1-tab__panel {
		overflow: visible !important;
		position: fixed !important;
		right: 16px !important;
		bottom: 92px !important;
		left: 16px !important;
		transform: translateY(20px) scale(0.98);
		max-width: none !important;
		width: calc(100vw - 32px) !important;
		border-radius: 20px !important;
		box-shadow: 0 30px 60px -12px rgba(10, 27, 51, 0.45) !important;
		opacity: 0;
		pointer-events: none;
		transition: opacity 0.35s ease, transform 0.35s cubic-bezier(0.22, 1, 0.36, 1) !important;
	}

	.t1-tab.is-open .t1-tab__panel {
		transform: translateY(0) scale(1);
		width: calc(100vw - 32px) !important;
		opacity: 1;
		pointer-events: auto;
	}

	.t1-tab__panel-inner {
		width: 100% !important;
		padding: 22px 22px 24px !important;
		box-sizing: border-box;
	}

	.t1-tab__panel h3 {
		font-size: 22px;
	}

	/* Крестик закрытия FAB */
	.t1-tab__close {
		z-index: 5 !important;
		top: -10px !important;
		right: -10px !important;
		width: 26px !important;
		height: 26px !important;
		border: 1px solid rgba(0, 0, 0, 0.06) !important;
		background: #fff !important;
		box-shadow: 0 3px 10px rgba(0, 0, 0, 0.30) !important;
		color: var(--text-2, #283f5b) !important;
		font-size: 16px !important;
	}

	/* ---------- 9. REVIEWS hint ---------- */
	.r11__stories-hint {
		font-size: 0 !important;
	}

	.r11__stories-hint::before {
		content: "↔  Свайпайте" !important;
		color: var(--muted);
		font-size: 11px;
		letter-spacing: 0.12em;
		text-transform: uppercase;
	}

	/* ---------- 9a. REVIEWS STORIES ---------- */
	#reviews .rev-variants .r11__stories::before, #reviews .rev-variants .r11__stories::after {
		display: none !important;
	}

	#reviews .rev-variants .r11__stories {
		margin-bottom: 28px !important;
	}

	#reviews .rev-variants .r11__head {
		gap: 14px !important;
		margin-bottom: 22px !important;
	}

	/* Зазор между #reviews и #cta-final */
	#reviews, #reviews .r11, #reviews .rev-variants .r11 {
		padding-top: 12px !important;
		padding-bottom: 12px !important;
	}

	#cta-final {
		padding-top: 16px !important;
		padding-bottom: 24px !important;
	}

	#reviews + section, section#cta-final {
		margin-top: 0 !important;
	}

	/* Блок рейтинга скрыт */
	#reviews .rev-variants .r11__rating, #reviews .rev-variants .r11__rating-big, #reviews .rev-variants .r11__rating-cap, #reviews .rev-variants .r11__rating-stars, #reviews .rev-variants [class*="rating"] {
		display: none !important;
	}

	/* Wall-head компактнее */
	#reviews .rev-variants .r11__wall-head {
		margin: 8px 0 14px !important;
	}

	#reviews .rev-variants .r11__wall-h {
		font-size: 22px !important;
	}

	/* ---------- 10. REVIEWS WALL ---------- */
	#reviews .rev-variants .r11__wall, .r11__wall {
		overflow-x: auto !important;
		overflow-y: visible !important;
		display: flex !important;
		gap: 14px !important;
		max-width: 100vw !important;
		width: 100vw !important;
		column-gap: 0 !important;
		cursor: grab;
		padding: 18px 16px 24px !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
		user-select: none;

		columns: unset !important;
		-webkit-overflow-scrolling: touch;
		scroll-padding-left: 16px !important;
		scroll-snap-type: none !important;
		scrollbar-width: none;
		touch-action: pan-x pan-y !important;
	}

	#reviews .rev-variants .r11__wall.is-dragging, .r11__wall.is-dragging {
		cursor: grabbing;

		scroll-snap-type: none !important;
	}

	#reviews .rev-variants .r11__wall.is-snapping, .r11__wall.is-snapping {
		scroll-behavior: smooth !important;

		scroll-snap-type: x mandatory !important;
	}

	#reviews .rev-variants .r11__wall::-webkit-scrollbar, .r11__wall::-webkit-scrollbar {
		display: none;
	}

	#reviews .rev-variants .r11__brick, .r11__brick {
		flex: 0 0 calc(100vw - 32px) !important;
		gap: 10px !important;
		max-width: calc(100vw - 32px) !important;
		width: calc(100vw - 32px) !important;
		border-radius: 22px !important;
		padding: 16px 16px !important;
		margin: 0 !important;
		box-sizing: border-box;

		break-inside: unset !important;
		scroll-snap-align: start !important;
		scroll-snap-stop: always !important;
	}

	#reviews .rev-variants .r11__brick > * {
		margin-top: 0 !important;
		margin-bottom: 8px !important;
	}

	#reviews .rev-variants .r11__brick > *:last-child {
		margin-bottom: 0 !important;
	}

	/* Стрелки prev/next для wall */
	.r11__wall-nav {
		display: flex;
		justify-content: flex-end;
		gap: 10px;
		padding: 0 4px;
		margin-top: 14px;
	}

	.r11__wall-nav button {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 40px;
		height: 40px;
		border: 1px solid var(--border, #e6e7e9);
		border-radius: 50%;
		background: #fff;
		box-shadow: 0 4px 10px rgba(10, 27, 51, 0.08);
		color: var(--text-2, #283f5b);
		font-size: 16px;
		line-height: 1;
		cursor: pointer;
		transition: background 0.25s, color 0.25s, transform 0.15s;
	}

	.r11__wall-nav button:active {
		transform: scale(0.94);
	}

	.r11__wall-nav button:disabled {
		cursor: not-allowed;
		opacity: 0.35;
	}

	/* Отступы между блоками */
	.life-shead {
		margin-bottom: 28px !important;
	}

	.vv-section {
		padding: 16px 0 20px !important;
	}

	.pv1 {
		padding: 16px 0 !important;
	}

	.t5-section {
		padding: 20px 0 !important;
	}

	/* 1) HERO */
	.hero-life {
		height: 100vh !important;
		height: calc(100dvh + 45px) !important;
		min-height: 560px !important;
	}

	.hero-life__copy {
		right: 18px !important;
		bottom: 230px !important;
		left: 18px !important;
	}

	.hero-life__sub {
		margin-bottom: 20px !important;
	}

	.hero-life__cta-row {
		gap: 8px !important;
	}

	.hero-life__cta-row .btn-pill {
		font-size: 13px !important;
		padding: 10px 18px !important;
	}

	.hero-life__stats {
		right: 16px !important;
		bottom: 156px !important;
		left: 16px !important;
	}

	/* Partners */
	.hero-life__partners {
		top: 82px !important;
		left: 16px !important;
		padding: 8px 16px 8px 10px !important;
	}

	.hero-life__partners-av {
		width: 28px !important;
		height: 28px !important;
	}

	.hero-life__partners-txt b {
		font-size: 12px !important;
	}

	.hero-life__partners-txt span {
		font-size: 10.5px !important;
	}

	/* 2) RESIDENTS */
	#residents .v3, .life-section .v3 {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	#residents .v3__inner, .life-section .v3__inner {
		overflow: hidden !important;
		max-width: 100% !important;
		min-width: 0 !important;
		border-radius: 20px !important;
		padding: 24px 20px !important;
		box-sizing: border-box !important;
	}

	#residents .v3__inner > *, #residents .v3__inner * {
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box;
	}

	#residents .v3__panel-text {
		max-width: 100% !important;
	}

	/* Tab'ы */
	#residents .v3__tab {
		gap: 12px;
		padding: 14px 12px !important;
	}

	#residents .v3__tab:hover, #residents .v3__tab[aria-selected="true"] {
		padding-left: 12px !important;
	}

	/* Иллюстрация */
	#residents .v3__panel-illust {
		max-width: 100% !important;
		width: 100% !important;
	}

	/* Заголовок панели */
	#residents .v3__panel-h {
		font-size: 24px !important;
		line-height: 1.15 !important;
	}

	#residents .v3__panel-p {
		font-size: 14px !important;
	}

	#residents .v3__panel-stats {
		gap: 8px !important;
	}

	#residents .v3__panel-stats > * {
		font-size: 13px !important;
		padding: 12px 10px !important;
	}

	#residents .life-shead {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/* 3) FAB / FLOATING CTA */
	.t1-tab {
		right: -120px !important;
		transform: none !important;
		filter: none !important;
		transition: right 0.55s cubic-bezier(0.22, 1, 0.36, 1) !important;
		perspective: none !important;

		contain: none !important;
		will-change: auto !important;
	}

	.t1-tab.is-visible {
		right: 18px !important;
		transform: none !important;
	}

	/* 4) STORIES */
	#reviews .rev-variants .r11__stories-track {
		gap: 14px !important;
		max-width: 100vw !important;
		width: 100vw !important;
		padding-left: 16px !important;
		padding-right: 16px !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
		box-sizing: border-box !important;

		-webkit-overflow-scrolling: touch;
		scroll-padding-left: 16px !important;
		scroll-snap-type: none !important;
		touch-action: pan-x pan-y !important;
	}

	#reviews .rev-variants .r11__stories-track.is-dragging {
		scroll-snap-type: none !important;
	}

	#reviews .rev-variants .r11__stories-track.is-snapping {
		scroll-behavior: smooth !important;

		scroll-snap-type: x mandatory !important;
	}

	#reviews .rev-variants .r11__story, #reviews .rev-variants .r11__case {
		flex: 0 0 calc(100vw - 32px) !important;
		justify-content: flex-start !important;
		align-content: start !important;
		align-items: start !important;
		gap: 8px !important;
		max-width: calc(100vw - 32px) !important;
		width: calc(100vw - 32px) !important;
		height: auto !important;
		min-height: 0 !important;
		border-radius: 22px !important;
		padding: 14px 14px !important;
		box-sizing: border-box !important;

		grid-row-gap: 8px !important;
		row-gap: 8px !important;
		scroll-snap-align: start !important;
		scroll-snap-stop: always !important;
	}

	#reviews .rev-variants .r11__story, #reviews .rev-variants .r11__case {
		grid-template-rows: auto !important;
		grid-auto-rows: auto !important;
	}

	/* Псевдоэлементы */
	#reviews .rev-variants .r11__story::before, #reviews .rev-variants .r11__story::after, #reviews .rev-variants .r11__case::before, #reviews .rev-variants .r11__case::after {
		content: none !important;
		display: none !important;
		height: 0 !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	/* Внутренние блоки story */
	#reviews .rev-variants .r11__story-photo, #reviews .rev-variants .r11__case-photo {
		margin-bottom: 8px !important;
	}

	#reviews .rev-variants .r11__story-q, #reviews .rev-variants .r11__story-quote {
		margin: 6px 0 !important;
	}

	#reviews .rev-variants .r11__story-foot, #reviews .rev-variants .r11__story-meta {
		padding-top: 8px !important;
		margin-top: 8px !important;
	}

	#reviews .rev-variants .r11__story > *, #reviews .rev-variants .r11__case > * {
		margin-top: 0 !important;
	}

	#reviews .rev-variants .r11__story > *, #reviews .rev-variants .r11__case > * {
		max-width: 100% !important;
		min-width: 0 !important;
	}

	/* Фото инвесторов */
	#reviews .rev-variants .r11__story-photo {
		aspect-ratio: 4/3 !important;
	}

	#reviews .rev-variants .r11__story-photo img {
		object-position: 50% 22% !important;
	}

	/* ===== HOVER OFF на сенсорных устройствах ===== */
	.r11__brick:hover, .r11__story:hover, .r11__case:hover, .dlc__card:hover {
		transform: none !important;
		box-shadow: none !important;
	}

	.dlc__card:hover img, .dlc__card:hover video {
		transform: none !important;
	}

	.dlc__card:hover::after {
		opacity: 1 !important;
	}

	.dlc__card:hover .dlc__check-wrap {
	}

	/* 5) ЦИТАТЫ И ТЕКСТ В STORIES */
	.r11__story-q, .r11__story-quote {
		font-size: 16px !important;
		line-height: 1.45 !important;
	}

	.r11__story-h {
		font-size: 19px !important;
		line-height: 1.25 !important;
	}

	.r11__story-p {
		font-size: 14px !important;
		line-height: 1.55 !important;
	}

	.r11__story-pre {
		font-size: 10.5px !important;
	}

	.r11__story-name {
		font-size: 14px !important;
	}

	.r11__story-role {
		font-size: 12px !important;
	}

	.r11__story-metric-v {
		font-size: 22px !important;
	}

	.r11__story-metric-c {
		font-size: 10.5px !important;
	}
}

/* Совсем узкие (≤380) */
@media (max-width: 380px) {
	.hero-life__stat-num {
		font-size: 18px !important;
	}

	.hero-life__stat-lbl {
		font-size: 9.5px !important;
	}
}

/* ===== TOUCH-DEVICES: hover-эффекты выключены ===== */
@media (hover: none) {
	.r11__brick, .r11__story, .r11__case, .dlc__card {
		transition: none !important;
	}

	.r11__brick:hover, .r11__brick:active, .r11__story:hover, .r11__story:active, .r11__case:hover, .r11__case:active, .dlc__card:hover, .dlc__card:active {
		transform: none !important;
		box-shadow: inherit !important;
	}

	.dlc__card:hover img, .dlc__card:hover video, .dlc__card:active img, .dlc__card:active video {
		transform: none !important;
		transition: none !important;
	}
}

/* ============================================================
   VI CHROME - шапка/подвал vertical-invest.ru (полная выборка, scoped)
   ============================================================ */
.vi-chrome {
	--ui-border-radius-2xl: 16px;
	--ui-border-radius-2xs: 4px;
	--ui-border-radius-3xl: 20px;
	--ui-border-radius-3xs: 2px;
	--ui-border-radius-circle: 50%;
	--ui-border-radius-lg: 12px;
	--ui-border-radius-md: 10px;
	--ui-border-radius-none: 0;
	--ui-border-radius-pill: 99rem;
	--ui-border-radius-sm: 8px;
	--ui-border-radius-xl: 14px;
	--ui-border-radius-xs: 6px;
	--ui-border-width-thick: 2px;
	--ui-border-width-thin: 1px;
	--ui-color-accent-aqua: #55d0e0;
	--ui-color-accent-aqua-rgb: 85, 208, 224;
	--ui-color-accent-brown: #ae914b;
	--ui-color-accent-brown-rgb: 174, 145, 75;
	--ui-color-accent-green: #29ad49;
	--ui-color-accent-green-rgb: 41, 173, 73;
	--ui-color-accent-light-blue: #559be6;
	--ui-color-accent-light-blue-rgb: 85, 155, 230;
	--ui-color-accent-pink: #fb6dba;
	--ui-color-accent-pink-rgb: 251, 109, 186;
	--ui-color-accent-purple: #a77bde;
	--ui-color-accent-purple-rgb: 167, 123, 222;
	--ui-color-accent-turquoise: #05b5ab;
	--ui-color-accent-turquoise-rgb: 5, 181, 171;
	--ui-color-accent-yellow: #fef3b8;
	--ui-color-accent-yellow-rgb: 254, 243, 184;
	--ui-color-background-alert: var(--ui-color-palette-red-20);
	--ui-color-background-alert-rgb: var(--ui-color-palette-red-20-rgb);
	--ui-color-background-info: var(--ui-color-palette-blue-20);
	--ui-color-background-info-rgb: var(--ui-color-palette-blue-20-rgb);
	--ui-color-background-none: none;
	--ui-color-background-note: var(--ui-color-palette-beige-base);
	--ui-color-background-note-rgb: var(--ui-color-palette-beige-base-rgb);
	--ui-color-background-on-alert: var(--ui-color-palette-red-70);
	--ui-color-background-on-alert-rgb: var(--ui-color-palette-red-70-rgb);
	--ui-color-background-on-info: var(--ui-color-palette-blue-70);
	--ui-color-background-on-info-rgb: var(--ui-color-palette-blue-70-rgb);
	--ui-color-background-on-success: var(--ui-color-palette-green-70);
	--ui-color-background-on-success-rgb: var(--ui-color-palette-green-70-rgb);
	--ui-color-background-on-warning: var(--ui-color-palette-orange-70);
	--ui-color-background-on-warning-rgb: var(--ui-color-palette-orange-70-rgb);
	--ui-color-background-primary: var(--ui-color-palette-white-base);
	--ui-color-background-primary-rgb: var(--ui-color-palette-white-base-rgb);
	--ui-color-background-secondary: var(--ui-color-palette-gray-10);
	--ui-color-background-secondary-rgb: var(--ui-color-palette-gray-10-rgb);
	--ui-color-background-success: var(--ui-color-palette-green-20);
	--ui-color-background-success-rgb: var(--ui-color-palette-green-20-rgb);
	--ui-color-background-tertiary: var(--ui-color-palette-gray-05);
	--ui-color-background-tertiary-rgb: var(--ui-color-palette-gray-05-rgb);
	--ui-color-background-transparent: transparent;
	--ui-color-background-warning: var(--ui-color-palette-orange-20);
	--ui-color-background-warning-rgb: var(--ui-color-palette-orange-20-rgb);
	--ui-color-base-02: var(--ui-color-palette-gray-02);
	--ui-color-base-02-rgb: var(--ui-color-palette-gray-02-rgb);
	--ui-color-base-03: var(--ui-color-palette-gray-03);
	--ui-color-base-03-rgb: var(--ui-color-palette-gray-03-rgb);
	--ui-color-base-04: var(--ui-color-palette-gray-04);
	--ui-color-base-04-rgb: var(--ui-color-palette-gray-04-rgb);
	--ui-color-base-05: var(--ui-color-palette-gray-05);
	--ui-color-base-05-rgb: var(--ui-color-palette-gray-05-rgb);
	--ui-color-base-10: var(--ui-color-palette-gray-10);
	--ui-color-base-10-rgb: var(--ui-color-palette-gray-10-rgb);
	--ui-color-base-15: var(--ui-color-palette-gray-15);
	--ui-color-base-15-rgb: var(--ui-color-palette-gray-15-rgb);
	--ui-color-base-20: var(--ui-color-palette-gray-20);
	--ui-color-base-20-rgb: var(--ui-color-palette-gray-20-rgb);
	--ui-color-base-30: var(--ui-color-palette-gray-30);
	--ui-color-base-30-rgb: var(--ui-color-palette-gray-30-rgb);
	--ui-color-base-35: var(--ui-color-palette-gray-35);
	--ui-color-base-35-rgb: var(--ui-color-palette-gray-35-rgb);
	--ui-color-base-40: var(--ui-color-palette-gray-40);
	--ui-color-base-40-rgb: var(--ui-color-palette-gray-40-rgb);
	--ui-color-base-50: var(--ui-color-palette-gray-50);
	--ui-color-base-50-rgb: var(--ui-color-palette-gray-50-rgb);
	--ui-color-base-60: var(--ui-color-palette-gray-60);
	--ui-color-base-60-rgb: var(--ui-color-palette-gray-60-rgb);
	--ui-color-base-70: var(--ui-color-palette-gray-70);
	--ui-color-base-70-rgb: var(--ui-color-palette-gray-70-rgb);
	--ui-color-base-80: var(--ui-color-palette-gray-80);
	--ui-color-base-80-rgb: var(--ui-color-palette-gray-80-rgb);
	--ui-color-base-90: var(--ui-color-palette-gray-90);
	--ui-color-base-90-rgb: var(--ui-color-palette-gray-90-rgb);
	--ui-color-base-default: var(--ui-color-palette-black-base);
	--ui-color-base-default-rgb: var(--ui-color-palette-black-base-rgb);
	--ui-color-base-solid: var(--ui-color-palette-black-solid);
	--ui-color-base-solid-rgb: var(--ui-color-palette-black-solid-rgb);
	--ui-color-copilot-dark: #682ac6;
	--ui-color-copilot-dark-rgb: 104, 42, 198;
	--ui-color-copilot-primary: #8e52ec;
	--ui-color-copilot-primary-rgb: 142, 82, 236;
	--ui-color-copilot-secondary: #b095dc;
	--ui-color-copilot-secondary-rgb: 176, 149, 220;
	--ui-color-extranet: var(--ui-color-palette-orange-60);
	--ui-color-extranet-rgb: var(--ui-color-palette-orange-60-rgb);
	--ui-color-link-primary-base: #2066b0;
	--ui-color-link-primary-base-rgb: 32, 102, 176;
	--ui-color-on-primary: var(--ui-color-palette-white-base);
	--ui-color-on-primary-alt: var(--ui-color-palette-white-base);
	--ui-color-on-primary-alt-rgb: var(--ui-color-palette-white-base-rgb);
	--ui-color-on-primary-rgb: var(--ui-color-palette-white-base-rgb);
	--ui-color-overlay-base: rgba(255, 255, 255, 0.5);
	--ui-color-palette-beige-base: #fdfae1;
	--ui-color-palette-beige-base-rgb: 253, 250, 225;
	--ui-color-palette-black-base: #333;
	--ui-color-palette-black-base-rgb: 51, 51, 51;
	--ui-color-palette-black-solid: #000;
	--ui-color-palette-black-solid-rgb: 0, 0, 0;
	--ui-color-palette-blue-10: #f4fcfe;
	--ui-color-palette-blue-10-rgb: 244, 252, 254;
	--ui-color-palette-blue-15: #ecfafe;
	--ui-color-palette-blue-15-rgb: 236, 250, 254;
	--ui-color-palette-blue-20: #e5f9ff;
	--ui-color-palette-blue-20-rgb: 229, 249, 255;
	--ui-color-palette-blue-25: #d3f4ff;
	--ui-color-palette-blue-25-rgb: 211, 244, 255;
	--ui-color-palette-blue-30: #c3f0ff;
	--ui-color-palette-blue-30-rgb: 195, 240, 255;
	--ui-color-palette-blue-40: #7fdefc;
	--ui-color-palette-blue-40-rgb: 127, 222, 252;
	--ui-color-palette-blue-50: #2fc6f6;
	--ui-color-palette-blue-50-rgb: 47, 198, 246;
	--ui-color-palette-blue-60: #11a9d9;
	--ui-color-palette-blue-60-rgb: 17, 169, 217;
	--ui-color-palette-blue-70: #008dba;
	--ui-color-palette-blue-70-rgb: 0, 141, 186;
	--ui-color-palette-blue-80: #00789e;
	--ui-color-palette-blue-80-rgb: 0, 120, 158;
	--ui-color-palette-blue-90: #006484;
	--ui-color-palette-blue-90-rgb: 0, 100, 132;
	--ui-color-palette-blue-95: #004f69;
	--ui-color-palette-blue-95-rgb: 0, 79, 105;
	--ui-color-palette-gray-02: #f8fafb;
	--ui-color-palette-gray-02-rgb: 248, 250, 251;
	--ui-color-palette-gray-03: #f5f7f8;
	--ui-color-palette-gray-03-rgb: 245, 247, 248;
	--ui-color-palette-gray-04: #f1f4f6;
	--ui-color-palette-gray-04-rgb: 241, 244, 246;
	--ui-color-palette-gray-05: #eef2f4;
	--ui-color-palette-gray-05-rgb: 238, 242, 244;
	--ui-color-palette-gray-10: #edeef0;
	--ui-color-palette-gray-10-rgb: 237, 238, 240;
	--ui-color-palette-gray-15: #e6e7e9;
	--ui-color-palette-gray-15-rgb: 230, 231, 233;
	--ui-color-palette-gray-20: #dfe0e3;
	--ui-color-palette-gray-20-rgb: 223, 224, 227;
	--ui-color-palette-gray-30: #d5d7db;
	--ui-color-palette-gray-30-rgb: 213, 215, 219;
	--ui-color-palette-gray-35: #c9ccd0;
	--ui-color-palette-gray-35-rgb: 201, 204, 208;
	--ui-color-palette-gray-40: #bdc1c6;
	--ui-color-palette-gray-40-rgb: 189, 193, 198;
	--ui-color-palette-gray-50: #a8adb4;
	--ui-color-palette-gray-50-rgb: 168, 173, 180;
	--ui-color-palette-gray-60: #959ca4;
	--ui-color-palette-gray-60-rgb: 149, 156, 164;
	--ui-color-palette-gray-70: #828b95;
	--ui-color-palette-gray-70-rgb: 130, 139, 149;
	--ui-color-palette-gray-80: #6a737f;
	--ui-color-palette-gray-80-rgb: 106, 115, 127;
	--ui-color-palette-gray-90: #525c69;
	--ui-color-palette-gray-90-rgb: 82, 92, 105;
	--ui-color-palette-green-10: #fafded;
	--ui-color-palette-green-10-rgb: 250, 253, 237;
	--ui-color-palette-green-15: #f5fcde;
	--ui-color-palette-green-15-rgb: 245, 252, 222;
	--ui-color-palette-green-20: #f1fbd0;
	--ui-color-palette-green-20-rgb: 241, 251, 208;
	--ui-color-palette-green-25: #faf6c3;
	--ui-color-palette-green-25-rgb: 250, 246, 195;
	--ui-color-palette-green-30: #e2f1b3;
	--ui-color-palette-green-30-rgb: 226, 241, 179;
	--ui-color-palette-green-35: #cfe780;
	--ui-color-palette-green-35-rgb: 207, 231, 128;
	--ui-color-palette-green-40: #bbde4d;
	--ui-color-palette-green-40-rgb: 187, 222, 77;
	--ui-color-palette-green-50: #9dcf00;
	--ui-color-palette-green-50-rgb: 157, 207, 0;
	--ui-color-palette-green-55: #95c500;
	--ui-color-palette-green-55-rgb: 149, 197, 0;
	--ui-color-palette-green-60: #8dbb00;
	--ui-color-palette-green-60-rgb: 141, 187, 0;
	--ui-color-palette-green-70: #7fa800;
	--ui-color-palette-green-70-rgb: 127, 168, 0;
	--ui-color-palette-green-80: #688800;
	--ui-color-palette-green-80-rgb: 104, 136, 0;
	--ui-color-palette-green-90: #506900;
	--ui-color-palette-green-90-rgb: 80, 105, 0;
	--ui-color-palette-green-95: #3d4f00;
	--ui-color-palette-green-95-rgb: 61, 79, 0;
	--ui-color-palette-orange-10: #fffaf0;
	--ui-color-palette-orange-10-rgb: 255, 250, 240;
	--ui-color-palette-orange-15: #fff5e3;
	--ui-color-palette-orange-15-rgb: 255, 245, 227;
	--ui-color-palette-orange-20: #fff1d6;
	--ui-color-palette-orange-20-rgb: 255, 241, 214;
	--ui-color-palette-orange-25: #ffe9be;
	--ui-color-palette-orange-25-rgb: 255, 233, 190;
	--ui-color-palette-orange-30: #ffe1a6;
	--ui-color-palette-orange-30-rgb: 255, 225, 166;
	--ui-color-palette-orange-40: #ffc34d;
	--ui-color-palette-orange-40-rgb: 255, 195, 77;
	--ui-color-palette-orange-50: #ffa900;
	--ui-color-palette-orange-50-rgb: 255, 169, 0;
	--ui-color-palette-orange-60: #e89b06;
	--ui-color-palette-orange-60-rgb: 232, 155, 6;
	--ui-color-palette-orange-70: #c48300;
	--ui-color-palette-orange-70-rgb: 196, 131, 0;
	--ui-color-palette-orange-80: #9f6a00;
	--ui-color-palette-orange-80-rgb: 159, 106, 0;
	--ui-color-palette-orange-90: #7a5100;
	--ui-color-palette-orange-90-rgb: 122, 81, 0;
	--ui-color-palette-orange-95: #614000;
	--ui-color-palette-orange-95-rgb: 97, 64, 0;
	--ui-color-palette-red-10: #fff8f8;
	--ui-color-palette-red-10-rgb: 255, 248, 248;
	--ui-color-palette-red-15: #fff0f0;
	--ui-color-palette-red-15-rgb: 255, 240, 240;
	--ui-color-palette-red-20: #ffe8e8;
	--ui-color-palette-red-20-rgb: 255, 232, 232;
	--ui-color-palette-red-25: #ffdcdb;
	--ui-color-palette-red-25-rgb: 255, 220, 219;
	--ui-color-palette-red-30: #ffcdcc;
	--ui-color-palette-red-30-rgb: 255, 205, 204;
	--ui-color-palette-red-40: #ff9a97;
	--ui-color-palette-red-40-rgb: 255, 154, 151;
	--ui-color-palette-red-45: #ff7c78;
	--ui-color-palette-red-45-rgb: 255, 124, 120;
	--ui-color-palette-red-50: #ff5752;
	--ui-color-palette-red-50-rgb: 255, 87, 82;
	--ui-color-palette-red-60: #f4433e;
	--ui-color-palette-red-60-rgb: 244, 67, 62;
	--ui-color-palette-red-70: #e92f2a;
	--ui-color-palette-red-70-rgb: 233, 47, 42;
	--ui-color-palette-red-80: #c21b16;
	--ui-color-palette-red-80-rgb: 194, 27, 22;
	--ui-color-palette-red-90: #9a0703;
	--ui-color-palette-red-90-rgb: 154, 7, 3;
	--ui-color-palette-red-95: #800602;
	--ui-color-palette-red-95-rgb: 128, 6, 2;
	--ui-color-palette-red-solid: #f0371b;
	--ui-color-palette-red-solid-rgb: 240, 55, 27;
	--ui-color-palette-white-base: #fff;
	--ui-color-palette-white-base-rgb: 255, 255, 255;
	--ui-color-primary: var(--ui-color-palette-blue-50);
	--ui-color-primary-alt: var(--ui-color-palette-green-50);
	--ui-color-primary-alt-rgb: var(--ui-color-palette-green-50-rgb);
	--ui-color-primary-rgb: var(--ui-color-palette-blue-50-rgb);
	--ui-color-tag-1: #bcedfc;
	--ui-color-tag-1-rgb: 188, 237, 252;
	--ui-color-tag-2: #00baf2;
	--ui-color-tag-2-rgb: 0, 186, 242;
	--ui-color-tag-3: #dbf087;
	--ui-color-tag-3-rgb: 219, 240, 135;
	--ui-color-tag-4: #87eda0;
	--ui-color-tag-4-rgb: 135, 237, 160;
	--ui-color-tag-5: #c2d1f0;
	--ui-color-tag-5-rgb: 194, 209, 240;
	--ui-color-tag-6: #ace5ec;
	--ui-color-tag-6-rgb: 172, 229, 236;
	--ui-color-tag-7: #dfc684;
	--ui-color-tag-7-rgb: 223, 198, 132;
	--ui-color-tag-8: #ccd3dd;
	--ui-color-tag-8-rgb: 204, 211, 221;
	--ui-color-tag-9: #e2e3e5;
	--ui-color-tag-9-rgb: 226, 227, 229;
	--ui-color-text-alert: var(--ui-color-palette-red-50);
	--ui-color-text-alert-rgb: var(--ui-color-palette-red-50-rgb);
	--ui-color-text-primary: var(--ui-color-palette-black-base);
	--ui-color-text-primary-rgb: var(--ui-color-palette-black-base-rgb);
	--ui-color-text-secondary: var(--ui-color-palette-gray-90);
	--ui-color-text-secondary-rgb: var(--ui-color-palette-gray-90-rgb);
	--ui-color-text-subtle: var(--ui-color-palette-gray-70);
	--ui-color-text-subtle-rgb: var(--ui-color-palette-gray-70-rgb);
	--ui-color-text-warning: var(--ui-color-palette-orange-50);
	--ui-color-text-warning-rgb: var(--ui-color-palette-orange-50-rgb);
	--ui-font-family-helvetica: "Helvetica Neue", Helvetica, Arial, sans-serif;
	--ui-font-family-system: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	--ui-font-family-system-mono: ui-monospace, SFMono-Regular, "SF Mono", Consolas, "Liberation Mono", Menlo, monospace;
	--ui-font-line-height-2xl: 1.75;
	--ui-font-line-height-2xs: 1.3;
	--ui-font-line-height-3xl: 2;
	--ui-font-line-height-3xs: 1.2;
	--ui-font-line-height-lg: 1.5;
	--ui-font-line-height-md: 1.4;
	--ui-font-line-height-reset: 1;
	--ui-font-line-height-sm: 1.35;
	--ui-font-line-height-xl: 1.62;
	--ui-font-size-2xl: 18px;
	--ui-font-size-3xl: 22px;
	--ui-font-size-3xs: 11px;
	--ui-font-size-4xl: 24px;
	--ui-font-size-4xs: 10px;
	--ui-font-size-5xl: 28px;
	--ui-font-size-5xs: 9px;
	--ui-font-size-6xs: 8px;
	--ui-font-size-7xs: 7px;
	--ui-font-size-lg: 15px;
	--ui-font-size-md: 14px;
	--ui-font-size-sm: 13px;
	--ui-font-size-xl: 16px;
	--ui-font-size-xs: 12px;
	--ui-font-weight-black: 900;
	--ui-font-weight-bold: 700;
	--ui-font-weight-extra-black: 950;
	--ui-font-weight-extra-bold: 800;
	--ui-font-weight-extra-light: 200;
	--ui-font-weight-light: 300;
	--ui-font-weight-medium: 500;
	--ui-font-weight-normal: 400;
	--ui-font-weight-regular: 400;
	--ui-font-weight-semi-bold: 600;
	--ui-font-weight-thin: 100;
	--ui-opacity-10: 0.1;
	--ui-opacity-20: 0.2;
	--ui-opacity-30: 0.3;
	--ui-opacity-40: 0.4;
	--ui-opacity-5: 0.05;
	--ui-opacity-50: 0.5;
	--ui-opacity-60: 0.6;
	--ui-opacity-70: 0.7;
	--ui-opacity-80: 0.8;
	--ui-opacity-90: 0.9;
	--ui-opacity-full: 1;
	--ui-opacity-none: 0;
	--ui-shadow-bottom-2xl: 0 8px 10px 0 rgba(0, 0, 0, 0.1);
	--ui-shadow-bottom-2xs: 0 1px 2px 0 rgba(0, 0, 0, 0.06);
	--ui-shadow-bottom-3xl: 0 12px 17px 0 rgba(0, 0, 0, 0.1);
	--ui-shadow-bottom-4xl: 0 16px 24px 0 rgba(0, 0, 0, 0.11);
	--ui-shadow-bottom-l: 0 4px 5px 0 rgba(0, 0, 0, 0.08);
	--ui-shadow-bottom-m: 0 3px 4px 0 rgba(0, 0, 0, 0.08);
	--ui-shadow-bottom-s: 0 2px 4px 0 rgba(0, 0, 0, 0.08);
	--ui-shadow-bottom-xl: 0 6px 10px 0 rgba(0, 0, 0, 0.1);
	--ui-shadow-bottom-xs: 0 2px 2px 0 rgba(0, 0, 0, 0.07);
	--ui-shadow-left-2xl: -8px 0 10px 0 rgba(0, 0, 0, 0.1);
	--ui-shadow-left-2xs: -1px 0 2px 0 rgba(0, 0, 0, 0.06);
	--ui-shadow-left-3xl: -12px 0 17px 0 rgba(0, 0, 0, 0.1);
	--ui-shadow-left-4xl: -16px 0 24px 0 rgba(0, 0, 0, 0.11);
	--ui-shadow-left-l: -4px 0 5px 0 rgba(0, 0, 0, 0.08);
	--ui-shadow-left-m: -3px 0 4px 0 rgba(0, 0, 0, 0.08);
	--ui-shadow-left-s: -2px 0 4px 0 rgba(0, 0, 0, 0.08);
	--ui-shadow-left-xl: -6px 0 10px 0 rgba(0, 0, 0, 0.1);
	--ui-shadow-left-xs: -2px 0 2px 0 rgba(0, 0, 0, 0.07);
	--ui-shadow-right-2xl: 8px 0 10px 0 rgba(0, 0, 0, 0.1);
	--ui-shadow-right-2xs: 1px 0 2px 0 rgba(0, 0, 0, 0.06);
	--ui-shadow-right-3xl: 12px 0 17px 0 rgba(0, 0, 0, 0.1);
	--ui-shadow-right-4xl: 16px 0 24px 0 rgba(0, 0, 0, 0.11);
	--ui-shadow-right-l: 4px 0 5px 0 rgba(0, 0, 0, 0.08);
	--ui-shadow-right-m: 3px 0 4px 0 rgba(0, 0, 0, 0.08);
	--ui-shadow-right-s: 2px 0 4px 0 rgba(0, 0, 0, 0.08);
	--ui-shadow-right-xl: 6px 0 10px 0 rgba(0, 0, 0, 0.1);
	--ui-shadow-right-xs: 2px 0 2px 0 rgba(0, 0, 0, 0.07);
	--ui-shadow-top-2xl: 0 -8px 10px 0 rgba(0, 0, 0, 0.1);
	--ui-shadow-top-2xs: 0 -1px 2px 0 rgba(0, 0, 0, 0.06);
	--ui-shadow-top-3xl: 0 -12px 17px 0 rgba(0, 0, 0, 0.1);
	--ui-shadow-top-4xl: 0 -16px 24px 0 rgba(0, 0, 0, 0.11);
	--ui-shadow-top-l: 0 -4px 5px 0 rgba(0, 0, 0, 0.08);
	--ui-shadow-top-m: 0 -3px 4px 0 rgba(0, 0, 0, 0.08);
	--ui-shadow-top-s: 0 -2px 4px 0 rgba(0, 0, 0, 0.08);
	--ui-shadow-top-xl: 0 -6px 10px 0 rgba(0, 0, 0, 0.1);
	--ui-shadow-top-xs: 0 -2px 2px 0 rgba(0, 0, 0, 0.07);
	--ui-size-2xl: 28px;
	--ui-size-2xs: 4px;
	--ui-size-2xs2: 6px;
	--ui-size-3xl: 32px;
	--ui-size-3xs: 2px;
	--ui-size-4xl: 36px;
	--ui-size-5xl: 40px;
	--ui-size-6xl: 48px;
	--ui-size-7xl: 64px;
	--ui-size-8xl: 72px;
	--ui-size-lg: 20px;
	--ui-size-lg2: 22px;
	--ui-size-md: 16px;
	--ui-size-md2: 18px;
	--ui-size-none: 0;
	--ui-size-sm: 12px;
	--ui-size-sm2: 14px;
	--ui-size-xl: 24px;
	--ui-size-xl2: 26px;
	--ui-size-xs: 8px;
	--ui-size-xs2: 10px;
	--ui-space-inline-2xl: 28px;
	--ui-space-inline-2xl-neg: -28px;
	--ui-space-inline-2xs: 4px;
	--ui-space-inline-2xs-neg: -4px;
	--ui-space-inline-2xs2: 6px;
	--ui-space-inline-2xs2-neg: -6px;
	--ui-space-inline-3xl: 32px;
	--ui-space-inline-3xl-neg: -32px;
	--ui-space-inline-3xs: 2px;
	--ui-space-inline-3xs-neg: -2px;
	--ui-space-inline-4xl: 36px;
	--ui-space-inline-4xl-neg: -36px;
	--ui-space-inline-5xl: 40px;
	--ui-space-inline-5xl-neg: -40px;
	--ui-space-inline-6xl: 48px;
	--ui-space-inline-6xl-neg: -48px;
	--ui-space-inline-7xl: 64px;
	--ui-space-inline-7xl-neg: -64px;
	--ui-space-inline-8xl: 72px;
	--ui-space-inline-8xl-neg: -72px;
	--ui-space-inline-lg: 20px;
	--ui-space-inline-lg-neg: -20px;
	--ui-space-inline-lg2: 22px;
	--ui-space-inline-lg2-neg: -22px;
	--ui-space-inline-md: 16px;
	--ui-space-inline-md-neg: -16px;
	--ui-space-inline-md2: 18px;
	--ui-space-inline-md2-neg: -18px;
	--ui-space-inline-none: 0;
	--ui-space-inline-sm: 12px;
	--ui-space-inline-sm-neg: -12px;
	--ui-space-inline-sm2: 14px;
	--ui-space-inline-sm2-neg: -14px;
	--ui-space-inline-xl: 24px;
	--ui-space-inline-xl-neg: -24px;
	--ui-space-inline-xl2: 26px;
	--ui-space-inline-xl2-neg: -26px;
	--ui-space-inline-xs: 8px;
	--ui-space-inline-xs-neg: -8px;
	--ui-space-inline-xs2: 10px;
	--ui-space-inline-xs2-neg: -10px;
	--ui-space-inset-2xl: 28px;
	--ui-space-inset-2xs: 4px;
	--ui-space-inset-2xs2: 6px;
	--ui-space-inset-3xl: 32px;
	--ui-space-inset-3xs: 2px;
	--ui-space-inset-4xl: 36px;
	--ui-space-inset-5xl: 40px;
	--ui-space-inset-6xl: 48px;
	--ui-space-inset-7xl: 64px;
	--ui-space-inset-8xl: 72px;
	--ui-space-inset-lg: 20px;
	--ui-space-inset-lg2: 22px;
	--ui-space-inset-md: 16px;
	--ui-space-inset-md2: 18px;
	--ui-space-inset-none: 0;
	--ui-space-inset-sm: 12px;
	--ui-space-inset-sm2: 14px;
	--ui-space-inset-xl: 24px;
	--ui-space-inset-xl2: 26px;
	--ui-space-inset-xs: 8px;
	--ui-space-inset-xs2: 10px;
	--ui-space-stack-2xl: 28px;
	--ui-space-stack-2xl-neg: -28px;
	--ui-space-stack-2xs: 4px;
	--ui-space-stack-2xs-neg: -4px;
	--ui-space-stack-2xs2: 6px;
	--ui-space-stack-2xs2-neg: -6px;
	--ui-space-stack-3xl: 32px;
	--ui-space-stack-3xl-neg: -32px;
	--ui-space-stack-3xs: 2px;
	--ui-space-stack-3xs-neg: -2px;
	--ui-space-stack-4xl: 36px;
	--ui-space-stack-4xl-neg: -36px;
	--ui-space-stack-5xl: 40px;
	--ui-space-stack-5xl-neg: -40px;
	--ui-space-stack-6xl: 48px;
	--ui-space-stack-6xl-neg: -48px;
	--ui-space-stack-7xl: 64px;
	--ui-space-stack-7xl-neg: -64px;
	--ui-space-stack-8xl: 72px;
	--ui-space-stack-8xl-neg: -72px;
	--ui-space-stack-lg: 20px;
	--ui-space-stack-lg-neg: -20px;
	--ui-space-stack-lg2: 22px;
	--ui-space-stack-lg2-neg: -22px;
	--ui-space-stack-md: 16px;
	--ui-space-stack-md-neg: -16px;
	--ui-space-stack-md2: 18px;
	--ui-space-stack-md2-neg: -18px;
	--ui-space-stack-none: 0;
	--ui-space-stack-sm: 12px;
	--ui-space-stack-sm-neg: -12px;
	--ui-space-stack-sm2: 14px;
	--ui-space-stack-sm2-neg: -14px;
	--ui-space-stack-xl: 24px;
	--ui-space-stack-xl-neg: -24px;
	--ui-space-stack-xl2: 26px;
	--ui-space-stack-xl2-neg: -26px;
	--ui-space-stack-xs: 8px;
	--ui-space-stack-xs-neg: -8px;
	--ui-space-stack-xs2: 10px;
	--ui-space-stack-xs2-neg: -10px;
	--ui-text-decoration-line-line-through: line-through;
	--ui-text-decoration-line-overline: overline;
	--ui-text-decoration-line-underline: underline;
	--ui-text-decoration-style-dashed: dashed;
	--ui-text-decoration-style-dotted: dotted;
	--ui-text-decoration-style-double: double;
	--ui-text-decoration-style-solid: solid;
	--ui-text-decoration-style-wavy: wavy;
	--ui-text-letter-spacing-1: 0.025em;
	--ui-text-letter-spacing-2: 0.1em;
	--ui-text-letter-spacing-3: 0.15em;
	--ui-text-letter-spacing-auto: auto;
	--ui-text-letter-spacing-neg-1: -0.03em;
	--ui-text-letter-spacing-neg-2: -0.02em;
	--ui-text-letter-spacing-neg-3: -0.01em;
	--ui-text-transform-capitalize: capitalize;
	--ui-text-transform-lowercase: lowercase;
	--ui-text-transform-none: none;
	--ui-text-transform-uppercase: uppercase;
	--ui-typography-heading-h1-color: var(--ui-color-palette-black-base);
	--ui-typography-heading-h1-font-size: var(--ui-font-size-5xl);
	--ui-typography-heading-h1-font-weight: 300;
	--ui-typography-heading-h1-line-height: 1.2;
	--ui-typography-heading-h2-color: var(--ui-color-palette-black-base);
	--ui-typography-heading-h2-font-size: var(--ui-font-size-4xl);
	--ui-typography-heading-h2-font-weight: 300;
	--ui-typography-heading-h2-line-height: 1.3;
	--ui-typography-heading-h3-color: var(--ui-color-palette-black-base);
	--ui-typography-heading-h3-font-size: var(--ui-font-size-3xl);
	--ui-typography-heading-h3-font-weight: 300;
	--ui-typography-heading-h3-line-height: 1.3;
	--ui-typography-heading-h4-color: var(--ui-color-palette-black-base);
	--ui-typography-heading-h4-font-size: var(--ui-font-size-2xl);
	--ui-typography-heading-h4-font-weight: 400;
	--ui-typography-heading-h4-line-height: 1.35;
	--ui-typography-heading-h5-color: var(--ui-color-palette-black-base);
	--ui-typography-heading-h5-font-size: var(--ui-font-size-xl);
	--ui-typography-heading-h5-font-weight: 400;
	--ui-typography-heading-h5-line-height: 1.35;
	--ui-typography-heading-h6-color: var(--ui-color-palette-black-base);
	--ui-typography-heading-h6-font-size: var(--ui-font-size-md);
	--ui-typography-heading-h6-font-weight: 600;
	--ui-typography-heading-h6-line-height: 1.4;
	--ui-typography-text-lg-font-size: var(--ui-font-size-lg);
	--ui-typography-text-lg-font-weight: 400;
	--ui-typography-text-lg-line-height: 1.4;
	--ui-typography-text-md-font-size: var(--ui-font-size-md);
	--ui-typography-text-md-font-weight: 400;
	--ui-typography-text-md-line-height: 1.4;
	--ui-typography-text-sm-font-size: var(--ui-font-size-sm);
	--ui-typography-text-sm-font-weight: 400;
	--ui-typography-text-sm-line-height: 1.4;
	--ui-typography-text-xs-font-size: var(--ui-font-size-xs);
	--ui-typography-text-xs-font-weight: 400;
	--ui-typography-text-xs-line-height: 1.35;
}

.vi-chrome {
	--ui-font-family-open-sans: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.vi-chrome html.with-fancybox {
	scroll-behavior: auto;
}

.vi-chrome {
	--swiper-theme-color: #007aff;
}

.vi-chrome {
	--swiper-navigation-size: 44px;
}

.vi-chrome {
	line-height: 1.15;

	text-size-adjust: 100%;
}

.vi-chrome {
	--fade: 0.55s;
	--flowersW: 140px;
	--h: 45px;
	--max: 1300px;
	--pad: 16px;
	--padM: 12px;
	--utpPillBg: rgba(255, 255, 255, 0.14);
	--utpPillBorder: rgba(255, 255, 255, 0.48);
	--utpPillShadow: 0 6px 14px rgba(0, 0, 0, 0.20), 0 1px 3px rgba(0, 0, 0, 0.18);
}

@media (max-width: 960px) {
	.vi-chrome {
		--flowersW: 112px;
	}
}

.vi-chrome .btn3 {
	transition: 0.3s;
}

.vi-chrome .favorite {
	position: relative;
}

.vi-chrome .footer_item_discount {
	border: 1px solid rgb(58, 127, 217);
	border-radius: 25px;
	background: rgb(58, 127, 217);
	color: white;
	font-size: 12px;
	font-weight: 600;
	padding: 0 4px;
	margin: 0 5px;
}

.vi-chrome .form_callback_input {
	display: none;
}

.vi-chrome a {
	background-color: transparent;
}

.vi-chrome b, .vi-chrome strong {
	font-weight: bolder;
}

.vi-chrome img {
	border-style: none;
}

.vi-chrome button, .vi-chrome input, .vi-chrome optgroup, .vi-chrome select, .vi-chrome textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

.vi-chrome button, .vi-chrome input {
	overflow: visible;
}

.vi-chrome button, .vi-chrome select {
	text-transform: none;
}

.vi-chrome [type="button"], .vi-chrome [type="reset"], .vi-chrome [type="submit"], .vi-chrome button {
	appearance: button;
}

.vi-chrome [type="checkbox"], .vi-chrome [type="radio"] {
	padding: 0;
	box-sizing: border-box;
}

.vi-chrome * {
	box-sizing: border-box;
}

.vi-chrome ::placeholder {
	color: rgb(102, 102, 102);
	opacity: 1;
}

.vi-chrome ::before, .vi-chrome ::after {
	box-sizing: border-box;
}

.vi-chrome a {
	color: inherit;
	outline: none;
	text-decoration: none;
}

.vi-chrome img {
	transform: translateZ(0px);
	max-width: 100%;
	width: auto;
	height: auto;
	vertical-align: bottom;
}

.vi-chrome ul li, .vi-chrome ol li, .vi-chrome menu li {
	list-style: none;
}

.vi-chrome ul, .vi-chrome ol, .vi-chrome menu {
	display: block;
	padding-left: 0;
	margin: 0;
}

.vi-chrome button {
	border: 0;
	background: none;
	font-family: inherit;
	line-height: 1.6;
	cursor: pointer;
	outline: none;
	padding: 0;
}

.vi-chrome input {
	display: block;
	width: 100%;
	font-family: inherit;
	line-height: inherit;
	font-weight: inherit;
	outline: none;
}

.vi-chrome .container {
	position: relative;
	max-width: 1300px;
	width: 100%;
	padding: 0 10px;
	margin: 0 auto;
}

.vi-chrome .soc__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}

.vi-chrome .soc-item {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background-color: rgb(240, 241, 247);
	margin-right: 5px;
	transition: background-color 0.3s;
}

.vi-chrome .soc-item:last-child {
	margin-right: 0;
}

.vi-chrome .soc-item svg {
	width: 20px;
	height: 20px;
	fill: rgb(85, 124, 234);
	transition: fill 0.3s;
}

.vi-chrome .no-touch .soc-item:hover {
	background-color: rgb(85, 124, 234);
}

.vi-chrome .no-touch .soc-item:hover svg {
	fill: rgb(255, 255, 255);
}

.vi-chrome .subscribe {
	overflow: hidden;
	position: relative;
	z-index: 1;
	border-radius: 20px;
	background-color: rgb(246, 247, 251);
	padding: 20px 20px 17px;
}

.vi-chrome .subscribe br {
	display: none;
}

.vi-chrome .subscribe__bg {
	position: absolute;
	z-index: -1;
	right: 20px;
	bottom: -28px;
	width: 120px;
}

.vi-chrome .subscribe__title {
	max-width: 255px;
	width: 100%;
	color: rgb(10, 27, 51);
	font-size: 15px;
	line-height: 1.4;
	margin-bottom: 20px;
}

.vi-chrome .time {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	color: rgb(99, 115, 143);
}

.vi-chrome .time__icon {
	display: flex;
	margin-right: 4px;
}

.vi-chrome .time__icon svg {
	width: 16px;
	height: 16px;
	fill: rgb(99, 115, 143);
}

.vi-chrome .btn2 {
	position: relative;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	min-height: 55px;
	border-radius: 300px;
	background-color: rgb(58, 127, 217);
	color: rgb(255, 255, 255);
	font-size: 14px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: -0.02em;
	cursor: pointer;
	padding: 10px 28px 10px 32px;
	transition: background-color 0.3s;
}

.vi-chrome .no-touch .btn2:hover {
	background-color: rgb(38, 107, 196);
}

.vi-chrome .btn2::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	filter: invert(1);
	width: 60px;
	height: 60px;
	background: url("../assets/chrome/loading2.gif") center center / contain no-repeat;
	opacity: 0;
	transition: opacity 0.3s;
}

.vi-chrome .btn3 {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	border-radius: 300px;
	background-color: rgb(255, 255, 255);
	color: rgb(58, 127, 217);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.02em;
	padding: 16.5px 28px 16.5px 32px;
	transition: 0.3s;
}

.vi-chrome .no-touch .btn3:hover {
	color: rgb(40, 63, 91);
}

.vi-chrome .no-touch .btn3:hover .btn3__icon svg {
	fill: rgb(40, 63, 91);
}

.vi-chrome .btn3__icon {
	display: flex;
	margin-left: 17px;
}

.vi-chrome .btn3__icon svg {
	width: 18px;
	height: 18px;
	fill: rgb(58, 127, 217);
	transition: fill 0.3s;
}

.vi-chrome .btn4 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 67px;
	height: 33px;
	border-radius: 300px;
	background-color: rgb(85, 124, 234);
	transition: background-color 0.3s;
}

.vi-chrome .no-touch .btn4:hover {
	background-color: rgb(38, 107, 196);
}

.vi-chrome .btn4 svg {
	width: 21px;
	height: 21px;
	fill: rgb(255, 255, 255);
}

.vi-chrome .input2-wrap {
	position: relative;
}

.vi-chrome .input2-wrap .input2 {
	padding-right: 85px;
}

.vi-chrome .input2-wrap .btn4 {
	position: absolute;
	top: 50%;
	right: 11px;
	transform: translateY(-50%);
}

.vi-chrome .input2 {
	border-radius: 16px;
	border-width: medium;
	border-color: currentcolor;
	border-image: initial;
	background-color: rgb(255, 255, 255);
	color: rgb(10, 27, 51);
	padding: 16px 20px;

	border-style: none;
}

.vi-chrome .input2::placeholder {
	color: rgb(113, 123, 163);
}

.vi-chrome .products-item2 {
	overflow: hidden;
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	width: 100%;
	border-radius: 20px;
	background-color: rgb(236, 238, 243);
	color: rgb(10, 27, 51);
	padding: 30px 30px 55px;
}

.vi-chrome .products-item2--blue {
	background-color: rgb(58, 127, 217);
}

.vi-chrome .products-item2--blue .products-item2__img {
	width: 670px;
	background-color: rgb(58, 127, 217);
}

.vi-chrome .products-item2--blue .products-item2__img--fullwidth {
	width: auto;
}

.vi-chrome .products-item2--blue .products-item2__date {
	background-color: rgb(255, 255, 255);
	color: rgb(85, 124, 234);
	margin-top: 0;
	margin-bottom: 25px;
}

.vi-chrome .products-item2--blue .products-item2__title {
	font-size: 26px;
}

.vi-chrome .products-item2__img {
	position: absolute;
	z-index: -1;
	right: 0;
	bottom: 0;
	width: 380px;
}

.vi-chrome .products-item2__img--fullwidth {
	top: 0;
	left: 0;
	width: auto;
}

.vi-chrome .products-item2__img--fullwidth img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.vi-chrome .products-item2__title-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
	margin-top: -15px;
	margin-bottom: 13px;
}

.vi-chrome .products-item2__title {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	font-size: 36px;
	line-height: 1.2;
	margin-right: 5px;
	margin-top: 15px;
}

.vi-chrome .products-item2__title span {
	position: relative;
	z-index: 1;
	padding: 0 13px;
}

.vi-chrome .products-item2__title span::after {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	background-color: rgb(255, 255, 255);
}

.vi-chrome .products-item2__title span:nth-child(1) {
	z-index: 3;
	padding-top: 7px;
}

.vi-chrome .products-item2__title span:nth-child(2) {
	z-index: 2;
}

.vi-chrome .products-item2__title span:last-child {
	border-radius: 0 0 0 10px;
	padding-bottom: 7px;
}

.vi-chrome .products-item2__title span:last-child::after {
	top: -15px;
	border-radius: 0 0 0 10px;
}

.vi-chrome .products-item2__title span:nth-child(1)::after {
	top: 0;
	border-radius: 10px 0 0;
}

.vi-chrome .products-item2__date {
	border-radius: 300px;
	background-color: rgb(58, 127, 217);
	color: rgb(255, 255, 255);
	font-size: 12px;
	font-weight: 600;
	padding: 5px 15px;
	margin-top: 15px;
}

.vi-chrome .products-item2 .btn3 {
	margin-top: auto;
}

.vi-chrome .header {
	position: relative;
	z-index: 20;
	background-color: rgb(246, 247, 251);
	padding: 8px 0;
	transition: 0.3s;
}

.vi-chrome .header--fixed {
	position: fixed;
	z-index: 20;
	top: 0;
	right: 0;
	left: 0;
	transform: translateY(-105%);
	box-shadow: rgba(0, 0, 0, 0.05) 0 0 10px;
}

.vi-chrome .header__wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

.vi-chrome .header__logo-wrap {
	max-width: 110px;
	width: 100%;
}

.vi-chrome .header__logo {
	display: block;
	max-width: 110px;
	width: 100%;
}

.vi-chrome .header__nav-btn3 {
	display: none;
	width: 100%;
	padding: 16.5px 10px;
}

.vi-chrome .header__menu {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	margin: 0 -15px;
}

.vi-chrome .header__menu > li {
	margin: 0 15px;
}

.vi-chrome .header__menu > li > a {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	color: rgb(10, 27, 51);
	font-weight: 600;
	transition: color 0.3s;
}

.vi-chrome .no-touch .header__menu > li > a:hover {
	color: rgb(58, 127, 217);
}

.vi-chrome .header__menu > li > a svg {
	display: none;
	width: 7px;
	height: 11px;
	fill: rgb(40, 63, 91);
}

.vi-chrome .favorite {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: rgb(255, 255, 255);
	cursor: pointer;
	transition: background-color 0.3s;
}

.vi-chrome .no-touch .favorite:hover {
	background-color: rgb(237, 242, 255);
}

.vi-chrome .favorite svg {
	width: 22px;
	height: 22px;
	fill: none;
	transition: 0.3s;
	stroke: rgb(155, 162, 190);
	stroke-width: 1.5px;
}

.vi-chrome .header__tel-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}

.vi-chrome .header__tel-wrap .favorite {
	margin-right: 5px;
}

.vi-chrome .header__user {
	position: relative;
	width: 40px;
	height: 40px;
	margin-right: 5px;
}

.vi-chrome .header__user-btn {
	position: relative;
	z-index: 2;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background-color: rgb(255, 255, 255);
	cursor: pointer;
}

.vi-chrome .header__user-btn:hover svg {
	color: rgb(85, 124, 234);
}

.vi-chrome .header__user-btn svg {
	width: 22px;
	height: 22px;
	fill: none;
	color: rgb(155, 162, 190);
	transition: color 0.3s;
	stroke-width: 1.5px;
}

.vi-chrome .header__user-popup {
	position: absolute;
	z-index: 1;
	top: 100%;
	right: 0;
	width: 260px;
	padding-top: 5px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: 0.3s;
}

@media (hover) {
	.vi-chrome .header__user:hover .header__user-popup {
		opacity: 1;
		visibility: visible;
		pointer-events: initial;
	}

	.vi-chrome .header__user-close {
		display: none;
	}
}

.vi-chrome .header__user-popup-wrap {
	position: relative;
	border: 1px solid rgb(240, 241, 247);
	border-radius: 20px;
	background-color: rgb(255, 255, 255);
	box-shadow: rgba(6, 56, 132, 0.05) 0 2px 20px 2px;
	padding: 20px;
}

.vi-chrome .header__user-close {
	position: absolute;
	top: 10px;
	right: 10px;
	display: flex;
	cursor: pointer;
}

.vi-chrome .header__user-close:hover svg {
	fill: rgb(85, 124, 234);
}

.vi-chrome .header__user-close svg {
	width: 18px;
	height: 18px;
	fill: rgb(10, 27, 51);
	transition: fill 0.3s;
}

.vi-chrome .header__user-title {
	font-size: 18px;
	margin-bottom: 10px;
}

.vi-chrome .header__user-text {
	margin-bottom: 15px;
}

.vi-chrome .header__user-popup .btn2 {
	display: flex;
	width: 100%;
	min-height: 46px;
}

.vi-chrome .header__tel {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	border-radius: 300px;
	background-color: rgb(255, 255, 255);
	padding: 9px 20px;
	transition: color 0.3s;
}

.vi-chrome .no-touch .header__tel:hover {
	color: rgb(58, 127, 217);
}

.vi-chrome .header__tel-icon {
	display: flex;
	font-weight: 600;
	margin-right: 12px;
}

.vi-chrome .header__tel-icon svg {
	width: 16px;
	height: 16px;
	fill: rgb(85, 124, 234);
}

.vi-chrome .toggle {
	position: relative;
	z-index: 50;
	display: none;
	width: 41px;
	height: 41px;
	border-radius: 50%;
	background-color: rgb(255, 255, 255);
	cursor: pointer;
}

.vi-chrome .toggle__line {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 14px;
	height: 2px;
	border-radius: 300px;
	background-color: rgb(10, 27, 51);
	transition: 0.3s;
}

.vi-chrome .toggle__line::after {
	content: "";
	position: absolute;
	top: -6px;
	right: -3px;
	left: -3px;
	height: 2px;
	border-radius: 300px;
	background-color: rgb(10, 27, 51);
	transition: 0.3s;
}

.vi-chrome .toggle__line::before {
	content: "";
	position: absolute;
	right: -3px;
	bottom: -6px;
	left: -3px;
	height: 2px;
	border-radius: 300px;
	background-color: rgb(10, 27, 51);
	transition: 0.3s;
}

.vi-chrome .footer__wrap1 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding-top: 40px;
	padding-bottom: 25px;
}

.vi-chrome .footer__logo-wrap {
	max-width: 110px;
	width: 100%;
}

.vi-chrome .footer__logo {
	display: block;
	max-width: 110px;
	width: 100%;
}

.vi-chrome .footer__menu1 {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin: -10px -10px 0;
}

.vi-chrome .footer__menu1 li {
	margin: 10px 10px 0;
}

.vi-chrome .footer__menu1 a {
	display: inline-block;
	border-radius: 8px;
	background-color: rgb(246, 247, 251);
	color: rgb(10, 27, 51);
	padding: 8.5px 25px;
	transition: background-color 0.3s;
}

@media (hover) {
	.vi-chrome .footer__menu1 a:hover {
		background-color: rgb(218, 222, 238);
	}
}

.vi-chrome .footer__wrap2 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	border-bottom: 1px solid rgb(232, 234, 238);
	padding-top: 23px;
	padding-bottom: 53px;
}

.vi-chrome .footer__content-wrap1 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 850px;
	width: 100%;
}

.vi-chrome .footer__nav2 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

.vi-chrome .footer__nav2-wrap--hidden-desc {
	display: none;
}

.vi-chrome .footer__nav2-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 532px;
	width: 100%;
}

.vi-chrome .footer__menu2 {
	margin-bottom: 31px;
}

.vi-chrome .footer__menu2:last-child {
	margin-bottom: 0;
}

.vi-chrome .footer__menu2 li {
	color: rgb(113, 123, 163);
	margin-bottom: 9px;
}

.vi-chrome .footer__menu2 li:last-child {
	margin-bottom: 0;
}

.vi-chrome .footer__menu2 li:nth-child(1) {
	color: rgb(10, 27, 51);
	font-weight: 600;
}

.vi-chrome .footer__menu2 a {
	transition: color 0.3s;
}

.vi-chrome .footer__menu2 li > span {
	white-space: nowrap;
	margin: 0;
}

.vi-chrome .no-touch .footer__menu2 a:hover {
	color: rgb(58, 127, 217);
}

.vi-chrome .footer__contacts {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	max-width: 200px;
	width: 100%;
}

.vi-chrome .footer__title1 {
	color: rgb(10, 27, 51);
	font-weight: 600;
	margin-bottom: 11px;
}

.vi-chrome .footer__list1 {
	margin-bottom: 12px;
}

.vi-chrome .footer__list1 li {
	color: rgb(113, 123, 163);
	line-height: 1.4;
	margin-bottom: 11px;
}

.vi-chrome .footer__list1 li:last-child {
	margin-bottom: 0;
}

.vi-chrome .footer__list1 li a {
	display: inline-block;
}

.vi-chrome .footer__content-wrap2 {
	display: flex;
	flex-direction: column;
	max-width: 325px;
	width: 100%;
}

.vi-chrome .footer__content-wrap2 .subscribe {
	margin-bottom: 15px;
}

.vi-chrome .footer__content-wrap2 .footer__list1 {
	text-align: right;
	margin-top: auto;
	margin-bottom: 0;
}

.vi-chrome .footer__wrap3 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	padding-top: 9px;
	padding-bottom: 20px;
}

.vi-chrome .footer__copy {
	color: rgb(113, 123, 163);
	font-weight: 400;
}

.vi-chrome .footer__text1 {
	max-width: 532px;
	width: 100%;
	color: rgb(113, 123, 163);
	font-size: 8px;
	line-height: 1.4;
	font-weight: 400;
	margin-top: 4px;
}

.vi-chrome .footer__text2 {
	max-width: 150px;
	width: 100%;
	color: rgb(10, 27, 51);
	font-weight: 600;
	margin-top: auto;
	margin-bottom: 10px;
}

.vi-chrome .footer__dev-wrap {
	text-align: right;
}

.vi-chrome .footer__dev {
	color: rgb(113, 123, 163);
	font-weight: 400;
}

.vi-chrome .no-touch .footer__dev:hover i {
	text-decoration-color: rgb(10, 27, 51);
}

.vi-chrome .footer__dev i {
	color: rgb(10, 27, 51);
	font-style: normal;
	text-decoration: underline transparent;
	transition: text-decoration 0.3s;
}

.vi-chrome .tooltip {
	position: absolute;
	top: 100%;
	right: 0;
	width: 160px;
	padding-top: 8px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: 0.3s;
}

.vi-chrome .tooltip__wrap {
	position: relative;
	display: block;
	border-radius: 3px;
	background-color: rgb(255, 255, 255);
	color: rgb(10, 27, 51);
	font-size: 10px;
	padding: 8px;
}

.vi-chrome .tooltip__wrap a {
	color: rgb(85, 124, 234);
	transition: color 0.3s;
}

.vi-chrome .no-touch .tooltip__wrap a:hover {
	color: rgb(49, 96, 230);
}

.vi-chrome .input-checkbox1 {
	display: none;
}

.vi-chrome .label-checkbox8-wrap {
	margin-top: 5px;
}

.vi-chrome .label-checkbox8 {
	position: relative;
	display: inline-block;
	cursor: pointer;
	padding-left: 22px;
}

.vi-chrome .label-checkbox8 .tooltip {
	inset: auto auto 100% 22px;
	width: 260px;
}

.vi-chrome .tooltip__wrap::after {
	content: "";
	position: absolute;
	inset: 100% auto 100% 40px;
	width: 0;
	height: 0;
	border-top: 4px solid rgb(255, 255, 255);
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
}

.vi-chrome .label-checkbox8__icon {
	position: absolute;
	top: 1px;
	left: 0;
	width: 14px;
	height: 14px;
	border-radius: 2px;
	background-color: rgb(255, 255, 255);
}

.vi-chrome .label-checkbox8__icon::after {
	content: "";
	position: absolute;
	bottom: 1px;
	left: 2px;
	width: 10px;
	height: 10px;
	background: url("../assets/chrome/check1.svg") center center / contain no-repeat;
	opacity: 0;
	transition: opacity 0.3s;
}

.vi-chrome .input-checkbox1:checked ~ .form-checkbox .label-checkbox8__icon::after {
	opacity: 1;
}

.vi-chrome .label-checkbox8__text1 {
	display: block;
	font-size: 12px;
	line-height: 1.4;
}

.vi-chrome .no-touch .label-checkbox8:hover .tooltip {
	opacity: 1;
	visibility: visible;
	pointer-events: initial;
}

.vi-chrome .submenu-bg {
	position: fixed;
	z-index: 10;
	inset: 96px 0 0;
	background-color: rgba(40, 63, 91, 0.2);
	backdrop-filter: blur(0px);
	visibility: hidden;
	pointer-events: none;
	transition: 0.4s;
}

.vi-chrome .submenu {
	position: absolute;
	z-index: 10;
	top: calc(100% - 9px);
	right: 10px;
	left: 10px;
	padding-top: 33px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: 0.4s;
}

.vi-chrome .no-touch .submenu-wrap:hover .submenu {
	opacity: 1;
	visibility: visible;
	pointer-events: initial;
}

.vi-chrome .no-touch .submenu-wrap:hover .submenu-bg {
	backdrop-filter: blur(6px);
	opacity: 1;
	visibility: visible;
}

.vi-chrome .submenu__container {
	overflow: hidden;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	border-radius: 20px;
	background-color: rgb(255, 255, 255);
}

.vi-chrome .submenu__close {
	position: absolute;
	top: 32px;
	right: 32px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: rgb(246, 247, 251);
}

.vi-chrome .submenu__close svg {
	width: 20px;
	height: 20px;
	fill: rgb(155, 162, 190);
}

.vi-chrome .submenu__wrap1 {
	display: flex;
	flex-direction: column;
	width: 50%;
}

.vi-chrome .submenu__list {
	padding: 32px 24px;
}

.vi-chrome .submenu__list li {
	margin-bottom: 8px;
}

.vi-chrome .submenu__list li:last-child {
	margin-bottom: 0;
}

.vi-chrome .submenu__list li a {
	display: inline-block;
	color: rgb(10, 27, 51);
	font-size: 18px;
	transition: color 0.3s;
}

.vi-chrome .no-touch .submenu__list li a:hover {
	color: rgb(58, 127, 217);
}

.vi-chrome .submenu__wrap2 {
	display: flex;
	width: 50%;
}

.vi-chrome .submenu__wrap2 .products-item2 {
	min-height: 568px;
	border-radius: 0;
	padding: 32px;
}

.vi-chrome .submenu__wrap2 .products-item2--blue .products-item2__title {
	font-size: 16px;
}

.vi-chrome .submenu__wrap2 .products-item2--blue .products-item2__title span {
	display: inline-block;
	margin-bottom: 5px;
}

.vi-chrome .submenu__wrap2 .products-item2--blue .products-item2__title span:last-child {
	margin-bottom: 0;
}

.vi-chrome .submenu__wrap2 .products-item2--blue .products-item2__title b {
	font-size: 32px;
	font-weight: 600;
}

.vi-chrome .submenu__wrap2 .products-item2--blue .products-item2__title b i {
	color: rgb(85, 124, 234);
	font-style: normal;
}

.vi-chrome .submenu__wrap2 .products-item2__title span:nth-child(1) {
	padding-top: 12px;
}

.vi-chrome .submenu__wrap2 .products-item2__title span:last-child {
	padding-bottom: 12px;
}

.vi-chrome .submenu__wrap2 .products-item2--blue .products-item2__date {
	background-color: rgb(85, 124, 234);
	color: rgb(255, 255, 255);
	margin-bottom: 15px;
}

.vi-chrome .header__menu > li > a svg.svg1 {
	display: block;
	width: 24px;
	height: 24px;
	fill: rgb(10, 27, 51);
	margin-left: 4px;
	transition: 0.3s;
}

.vi-chrome .no-touch .header__menu > li > a:hover svg.svg1 {
	fill: rgb(58, 127, 217);
}

.vi-chrome .no-touch .submenu-wrap:hover > a svg.svg1 {
	transform: rotate(180deg);
}

.vi-chrome .submenu__wrap2 .products-item2--blue .products-item2__img {
	width: 440px;
}

.vi-chrome .submenu__wrap2 .products-item2--blue .products-item2__img--fullwidth {
	width: auto;
}

.vi-chrome .submenu__list1-wrap {
	border-top: 1px solid rgb(231, 232, 233);
	padding: 32px 24px;
	margin-top: auto;
}

.vi-chrome .submenu__list1 {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin: -24px -8px 0;
}

.vi-chrome .submenu__col1 {
	width: 50%;
	padding: 0 8px;
	margin-top: 24px;
}

.vi-chrome .submenu-item1 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	border-radius: 10px;
	transition: background-color 0.3s;
}

.vi-chrome .no-touch .submenu-item1:hover {
	background-color: rgb(246, 247, 251);
}

.vi-chrome .submenu-item1__wrap1 {
	width: 64px;
}

.vi-chrome .submenu-item1__img {
	position: relative;
	width: 100%;
	height: 64px;
}

.vi-chrome .submenu-item1__img img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 10px;
}

.vi-chrome .submenu-item1__wrap2 {
	width: calc(100% - 74px);
}

.vi-chrome .submenu-item1__title {
	color: rgb(10, 27, 51);
	font-size: 13px;
	line-height: 1.3;
	font-weight: 600;
	letter-spacing: -0.01em;
	margin-bottom: 4px;
}

.vi-chrome .submenu-item1__text-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}

.vi-chrome .submenu-item1__text1 {
	color: rgb(113, 123, 163);
	font-size: 12px;
	margin-right: 8px;
}

.vi-chrome .submenu-item1__text-wrap .time {
	color: rgb(113, 123, 163);
	font-size: 12px;
}

.vi-chrome .submenu-item1__text-wrap .time__icon svg {
	fill: rgb(113, 123, 163);
}

.vi-chrome .submenu-item1__price {
	color: rgb(85, 124, 234);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: -0.02em;
	margin-top: 3px;
}

@media (min-width: 1100px) {
	.vi-chrome .header__nav {
		display: block !important;
		opacity: 1 !important;
	}
}

@media (max-width: 1250px) {
	.vi-chrome .footer__content-wrap1 {
		max-width: 770px;
	}

	.vi-chrome .footer__nav2-container {
		max-width: 500px;
	}

	.vi-chrome .footer__text1 {
		max-width: 500px;
	}
}

@media (max-width: 1200px) {
	.vi-chrome .footer__nav2-container {
		max-width: none;
		width: auto;
	}

	.vi-chrome .footer__content-wrap2 .footer__list1 {
		text-align: left;
	}

	.vi-chrome .header__menu {
		margin: 0 -8px;
	}

	.vi-chrome .header__menu > li {
		margin: 0 8px;
	}

	.vi-chrome .subscribe__title {
		max-width: none;
	}

	.vi-chrome .footer__wrap1 {
		padding-bottom: 20px;
	}

	.vi-chrome .footer__logo-wrap {
		max-width: none;
		margin-bottom: 10px;
	}

	.vi-chrome .footer__menu1 {
		margin-left: -5px;
		margin-right: -5px;
	}

	.vi-chrome .footer__menu1 li {
		margin-left: 5px;
		margin-right: 5px;
	}

	.vi-chrome .footer__wrap2 {
		border-width: medium;
		border-color: currentcolor;
		border-image: initial;
		padding-top: 20px;
		padding-bottom: 40px;

		border-style: none;
	}

	.vi-chrome .footer__content-wrap1 {
		max-width: none;
		margin-bottom: 40px;
	}

	.vi-chrome .footer__content-wrap2 {
		max-width: none;
	}

	.vi-chrome .footer__wrap3 {
		padding-top: 0;
	}

	.vi-chrome .footer__wrap3 .footer__content-wrap1 {
		border-bottom: 1px solid rgb(232, 234, 238);
		padding-bottom: 12px;
		margin-bottom: 12px;
	}

	.vi-chrome .footer__wrap3 .footer__content-wrap2 {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
	}

	.vi-chrome .footer__text1 {
		max-width: 800px;
		margin-top: 0;
	}
}

@media (max-width: 1100px) {
	.vi-chrome .submenu-bg, .vi-chrome .submenu {
		display: none;
	}

	.vi-chrome .header__nav {
		overflow: auto;
		position: fixed;
		z-index: 50;
		top: 57px;
		left: 0;
		display: none;
		width: 100%;
		height: calc(-57px + 100vh);
		background-color: rgb(255, 255, 255);
		padding: 0 10px 15px;
	}

	.vi-chrome .header__nav-wrap {
		display: flex;
		flex-direction: column;
		min-height: 100%;
		border-radius: 20px;
		background-color: rgb(246, 247, 251);
		padding: 4px 28px 28px;
	}

	.vi-chrome .header__nav-btn3 {
		display: flex;
		margin-top: auto;
	}

	.vi-chrome .header__menu > li {
		width: 100%;
		text-align: center;
		margin: 0;
	}

	.vi-chrome .header__menu > li:last-child a {
		border-width: medium;
		border-color: currentcolor;
		border-image: initial;

		border-style: none;
	}

	.vi-chrome .header__menu > li > a {
		border-bottom: 1px solid rgb(218, 222, 236);
		font-size: 15px;
		padding: 22px 0;
	}

	.vi-chrome .header__menu > li > a svg {
		display: block;
	}

	.vi-chrome .header__tel-wrap {
		margin-left: auto;
		margin-right: 10px;
	}

	.vi-chrome .toggle {
		display: block;
	}
}

@media (max-width: 800px) {
	.vi-chrome .footer__wrap2 .soc {
		margin-top: 10px;
	}

	.vi-chrome .footer__nav2-container {
		width: 49%;
		margin-top: 6px;
	}

	.vi-chrome .footer__nav2-container .footer__nav2-wrap {
		width: auto;
		margin-top: 0;
	}

	.vi-chrome .footer__nav2-wrap {
		width: 49%;
		line-height: 1.4;
		margin-top: 6px;
	}

	.vi-chrome .footer__contacts {
		max-width: none;
		width: 49%;
		margin-top: 6px;
	}

	.vi-chrome .footer__nav2-wrap--hidden-desc {
		display: block;
	}
}

@media (max-width: 700px) {
	.vi-chrome .products-item2--blue .products-item2__img {
		right: -104px;
		width: 290px;
	}
}

@media (max-width: 600px) {
	.vi-chrome .products-item2--1 .products-item2__img {
		right: -48px;
		width: 245px;
	}

	.vi-chrome .products-item2--blue .products-item2__img {
		right: -104px;
		width: 290px;
	}

	.vi-chrome .products-item2 {
		padding: 24px 15px 42px;
	}

	.vi-chrome .products-item2__title span:last-child {
		padding-right: 10px;
		padding-bottom: 10px;
	}

	.vi-chrome .products-item2__title span:last-child::after {
		top: -6px;
	}

	.vi-chrome .products-item2__img {
		width: 300px;
	}

	.vi-chrome .products-item2__title {
		font-size: 24px;
	}

	.vi-chrome .header__tel {
		width: 40px;
		height: 40px;
		font-size: 0;
		padding: 0;
	}

	.vi-chrome .header__tel-icon {
		margin-right: 0;
	}

	.vi-chrome .header__tel-icon svg {
		width: 19px;
		height: 19px;
	}

	.vi-chrome .header__user-popup {
		right: -16px;
	}

	.vi-chrome .header__wrap {
		flex-wrap: nowrap;
	}

	.vi-chrome .header__logo-wrap {
		max-width: none;
		width: auto;
		margin-right: 5px;
	}

	.vi-chrome .header__tel-wrap, .vi-chrome .toggle {
		flex-shrink: 0;
	}

	.vi-chrome .footer__copy {
		font-size: 12px;
	}

	.vi-chrome .footer__dev {
		font-size: 12px;
	}
}

.vi-chrome ::placeholder {
	transition: 0.3s;
}

.vi-chrome .header__menu {
	display: none;
}

.vi-chrome .header__menu--1 {
	display: flex;
}

@media (max-width: 1100px) {
	.vi-chrome .header__menu > li:last-child {
		display: none;
	}
}

.vi-chrome .header__menu {
	display: none;
}

.vi-chrome .header__menu--1 {
	display: flex;
}

@media (max-width: 1100px) {
	.vi-chrome .header__menu > li:last-child {
		display: none;
	}
}

.vi-chrome .header__nav.is-open {
	display: block !important;
}

body.vi-nav-open {
	overflow: hidden;
}

.vi-chrome .btn4 {
	border: 0;
	cursor: pointer;
	        appearance: none;

	-webkit-appearance: none;
}

.vi-chrome .header--white {
	background-color: rgb(255, 255, 255);
}

.vi-chrome .header--fixed.visible {
	transform: translateY(0px);
}

.vi-chrome .favorite.active svg {
	fill: rgb(85, 124, 234);
	stroke: rgb(85, 124, 234);
}

.vi-chrome .header__user.active .header__user-popup {
	opacity: 1;
	visibility: visible;
	pointer-events: initial;
}

.vi-chrome .toggle.active .toggle__line {
	background-color: transparent;
}

.vi-chrome .toggle.active .toggle__line::after {
	top: 0;
	transform: rotate(45deg);
}

.vi-chrome .toggle.active .toggle__line::before {
	bottom: 0;
	transform: rotate(-45deg);
}

.vi-chrome .tooltip.active {
	opacity: 1;
	visibility: visible;
	pointer-events: initial;
}

.vi-chrome .touch .tooltip1__text-container {
	overflow: auto;
	position: fixed;
	z-index: 200000000;
	top: 0;
	left: 0;
	transform: none;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	width: 100%;
	height: 100%;
	background-color: rgba(40, 63, 91, 0.5);
	backdrop-filter: blur(6px);
	padding: 10px 10px 0;
}

.vi-chrome .touch .tooltip1__text-wrap {
	position: relative;
	max-width: 500px;
	width: 100%;
	border-radius: 16px 16px 0 0;
}

.vi-chrome .touch .tooltip1__text {
	border-radius: 0;
}

.vi-chrome .touch .tooltip1__text-container.active {
	opacity: 1;
	visibility: visible;
	pointer-events: initial;
}

.vi-chrome .touch .tooltip1__close {
	display: block;
}

.vi-chrome .header--white {
	background-color: #fff !important;
}

.vi-chrome .label-checkbox8__icon {
	width: 16px;
	height: 16px;
	border: 1.5px solid #c4ccd6;
	border-radius: 4px;
	background: #fff;
	transition: background 0.15s, border-color 0.15s;
	box-sizing: border-box;
}

.vi-chrome .label-checkbox8__icon::after {
	content: "";
	position: absolute;
	top: 2px;
	left: 5px;
	transform: rotate(45deg);
	width: 4px;
	height: 8px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	background: none;
	opacity: 0;
	transition: opacity 0.15s;
}

.vi-chrome .label-checkbox8.is-checked .label-checkbox8__icon, .vi-chrome .input-checkbox1:checked ~ .form-checkbox .label-checkbox8__icon {
	border-color: #557cea;
	background: #557cea;
}

.vi-chrome .label-checkbox8.is-checked .label-checkbox8__icon::after, .vi-chrome .input-checkbox1:checked ~ .form-checkbox .label-checkbox8__icon::after {
	opacity: 1;
}

.vi-chrome .label-checkbox8 {
	cursor: pointer;
}

.vi-chrome .label-checkbox8.shake {
	animation: viCbShake 0.4s;
}

@keyframes viCbShake {
	0%, 100% {
		transform: translateX(0);
	}

	25% {
		transform: translateX(-4px);
	}

	75% {
		transform: translateX(4px);
	}
}