@import url("https://fonts.googleapis.com/css2?family=Russo+One&display=swap");

@font-face {
	font-family: "Onest";
	src: url("../fonts/onest-400.ttf") format("truetype");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}


/* Gallery page */
.gallery-page {
	--gallery-ink: var(--vx-ink, #141414);
	--gallery-muted: var(--vx-muted, #616161);
	--gallery-line: var(--vx-line, #d9d9d4);
	--gallery-panel: var(--vx-panel, #ececea);
	--gallery-accent: var(--vx-accent, #e26419);
	color: var(--gallery-ink);
}

.gallery-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 0.58fr) minmax(320px, 0.42fr);
	gap: clamp(24px, 4vw, 64px);
	align-items: center;
	min-height: clamp(260px, 28vw, 420px);
	padding: clamp(34px, 4.5vw, 72px) var(--content-pad);
	border-bottom: 1px solid var(--gallery-line);
	background: #e0e0de;
	color: var(--gallery-ink);
}

.gallery-hero::after {
	content: "";
	position: absolute;
	right: var(--content-pad);
	bottom: -1px;
	width: min(36vw, 520px);
	height: 1px;
	background: var(--gallery-accent);
}

.gallery-hero__copy {
	display: grid;
	gap: var(--vx-description-gap, 18px);
}

.gallery-hero h1 {
	max-width: 20ch;
	margin: 0;
	color: inherit;
	font-family: var(--display-font, "Russo One", "Onest", Arial, sans-serif);
	font-size: clamp(32px, 4vw, 58px);
	line-height: 0.96;
	letter-spacing: -0.035em;
	text-transform: uppercase;
	text-wrap: balance;
}

.gallery-hero .brand-bars {
	margin-block: 2px 6px;
}

.gallery-hero p {
	max-width: 42rem;
	margin: 0;
	color: var(--gallery-muted);
	font-size: var(--vx-description-size, clamp(16px, 1.15vw, 19px));
	line-height: 1.5;
	text-wrap: pretty;
}

.gallery-back {
	align-self: flex-start;
	min-height: 44px;
	color: var(--gallery-ink);
	font-weight: 800;
}

.gallery-back:hover {
	color: var(--gallery-accent);
}

.gallery-hero__media {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-template-rows: 1.05fr 0.95fr;
	min-width: 0;
	height: clamp(220px, 24vw, 360px);
	overflow: hidden;
	border: 1px solid var(--gallery-line);
	background: var(--gallery-panel);
}

.gallery-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 0;
	object-fit: cover;
	filter: saturate(0.92) contrast(1.04);
}

.gallery-hero__media img:first-child {
	grid-row: 1 / 3;
}

.gallery-filter-section {
	padding: 24px var(--content-pad);
	border-bottom: 1px solid var(--gallery-line);
	background: #e0e0de;
}

.gallery-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	scrollbar-width: none;
}

.gallery-filters::-webkit-scrollbar {
	display: none;
}

.gallery-filters button {
	min-height: var(--button-height-compact, 48px);
	padding: 0 16px;
	border: 1px solid var(--gallery-line);
	background: rgba(255, 255, 255, 0.32);
	color: var(--gallery-ink);
	font: inherit;
	font-weight: 800;
	cursor: pointer;
	transition: color var(--fast), border-color var(--fast), background-color var(--fast);
}

.gallery-filters button:hover,
.gallery-filters button[aria-pressed="true"] {
	border-color: var(--gallery-accent);
	background: var(--gallery-accent);
	color: #fff;
}

.gallery-filters button:focus-visible,
.gallery-photo:focus-visible,
.gallery-album__link:focus-visible,
.gallery-lightbox button:focus-visible {
	outline: 3px solid var(--gallery-accent);
	outline-offset: -3px;
}

.gallery-albums {
	background: #e8e8e6;
}

.gallery-album {
	padding: clamp(48px, 6.5vw, 108px) var(--content-pad);
	border-bottom: 1px solid var(--gallery-line);
}

.gallery-album[hidden] {
	display: none;
}

.gallery-album__head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 0.72fr);
	gap: clamp(32px, 6vw, 96px);
	align-items: start;
	margin-bottom: clamp(30px, 4vw, 58px);
}

.gallery-album__head > div:first-child {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: clamp(14px, 2vw, 26px);
	align-items: start;
}

.gallery-album__head span {
	padding-top: 10px;
	color: var(--gallery-accent);
	font-weight: 900;
	font-variant-numeric: tabular-nums;
}

.gallery-album__head h2 {
	margin: 0;
	color: var(--gallery-ink);
	font-family: var(--display-font, "Russo One", "Onest", Arial, sans-serif);
	font-size: clamp(36px, 5vw, 78px);
	line-height: 1;
	letter-spacing: -0.035em;
	text-wrap: balance;
}

.gallery-album__head .brand-bars {
	margin-top: 18px;
}

.gallery-album__head p {
	max-width: 42rem;
	margin: 0;
	color: var(--gallery-muted);
	font-size: clamp(16px, 1.35vw, 20px);
	line-height: 1.55;
	text-wrap: pretty;
}

.gallery-album__head small {
	display: block;
	margin-top: 14px;
	color: var(--gallery-ink);
	font-size: 14px;
	font-weight: 850;
}

.gallery-album__mosaic {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	grid-template-rows: repeat(3, clamp(150px, 14vw, 260px));
	gap: 1px;
	padding: 1px;
	background: var(--gallery-line);
}

.gallery-photo {
	position: relative;
	min-width: 0;
	padding: 0;
	overflow: hidden;
	border: 0;
	background: var(--gallery-panel);
	cursor: zoom-in;
}

.gallery-photo:first-child {
	grid-column: 1 / 8;
	grid-row: 1 / 3;
}

.gallery-photo:nth-child(2) {
	grid-column: 8 / 13;
	grid-row: 1;
}

.gallery-photo:nth-child(3) {
	grid-column: 8 / 13;
	grid-row: 2;
}

.gallery-photo:nth-child(4) {
	grid-column: 1 / 7;
	grid-row: 3;
}

.gallery-photo:nth-child(5) {
	grid-column: 7 / 13;
	grid-row: 3;
}

.gallery-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 700ms var(--ease), filter var(--fast);
}

.gallery-photo > span {
	position: absolute;
	right: 14px;
	bottom: 14px;
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 0 13px;
	background: rgba(12, 15, 18, 0.86);
	color: #fff;
	font-size: 13px;
	font-weight: 850;
	opacity: 0;
	transform: translateY(6px);
	transition: opacity var(--fast), transform var(--fast);
}

@media (hover: hover) {
	.gallery-photo:hover img {
		filter: contrast(1.05);
		transform: scale(1.025);
	}

	.gallery-photo:hover > span {
		opacity: 1;
		transform: none;
	}
}

.gallery-album__link {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	min-height: 52px;
	margin-top: 28px;
	color: var(--gallery-ink);
	font-weight: 900;
}

.gallery-album__link span {
	color: var(--gallery-accent);
	font-size: 22px;
	transition: transform var(--fast);
}

.gallery-album__link:hover span {
	transform: translateX(5px);
}

.gallery-contact {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(260px, 1.1fr);
	gap: clamp(32px, 6vw, 96px);
	align-items: start;
	padding: clamp(48px, 6.5vw, 108px) var(--content-pad);
	border-bottom: 1px solid var(--gallery-line);
	background: #fff;
	color: var(--gallery-ink);
}

.gallery-contact h2 {
	max-width: 18ch;
	margin: 0;
	color: inherit;
	font-family: var(--display-font, "Russo One", "Onest", Arial, sans-serif);
	font-size: clamp(36px, 5vw, 78px);
	line-height: 1;
	letter-spacing: -0.035em;
	text-wrap: balance;
}

.gallery-contact .brand-bars {
	margin-top: 18px;
}

.gallery-contact p {
	max-width: 48rem;
	margin: var(--vx-description-gap, 18px) 0 0;
	color: var(--gallery-muted);
	font-size: var(--vx-description-size, 18px);
	line-height: 1.55;
}

.gallery-contact .vx-button {
	justify-self: start;
}

.gallery-lightbox {
	width: 100vw;
	max-width: none;
	height: 100dvh;
	max-height: none;
	margin: 0;
	padding: 0;
	border: 0;
	background: #0c0f12;
	color: #fff;
}

.gallery-lightbox::backdrop {
	background: rgba(12, 15, 18, 0.96);
}

.gallery-lightbox[open] {
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
}

.gallery-lightbox__top {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	min-height: 64px;
	padding: 10px clamp(16px, 3vw, 46px);
	border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}

.gallery-lightbox__top p {
	margin: 0;
	font-weight: 850;
}

.gallery-lightbox button {
	min-width: 48px;
	min-height: 48px;
	border: 1px solid rgba(255, 255, 255, 0.28);
	background: transparent;
	color: #fff;
	font: inherit;
	font-weight: 850;
	cursor: pointer;
	transition: background-color var(--fast), border-color var(--fast);
}

.gallery-lightbox button:hover {
	border-color: #fff;
	background: rgba(255, 255, 255, 0.1);
}

.gallery-lightbox__top button {
	padding: 0 18px;
}

.gallery-lightbox__stage {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr) 64px;
	gap: clamp(12px, 2vw, 32px);
	align-items: center;
	min-height: 0;
	padding: clamp(16px, 3vw, 40px);
}

.gallery-lightbox__stage figure {
	display: grid;
	grid-template-rows: minmax(0, 1fr) auto;
	gap: 16px;
	width: 100%;
	height: 100%;
	min-height: 0;
	margin: 0;
}

.gallery-lightbox__stage img {
	width: 100%;
	height: 100%;
	min-height: 0;
	object-fit: contain;
}

.gallery-lightbox__stage figcaption {
	max-width: 70ch;
	margin-inline: auto;
	color: rgba(255, 255, 255, 0.78);
	line-height: 1.5;
	text-align: center;
}

.gallery-lightbox__count {
	margin: 0;
	padding: 10px 20px 22px;
	color: rgba(255, 255, 255, 0.62);
	font-variant-numeric: tabular-nums;
	text-align: center;
}

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

@media (max-width: 900px) {
	.gallery-hero {
		grid-template-columns: 1fr;
		gap: 28px;
		min-height: 0;
	}

	.gallery-hero__media {
		height: clamp(300px, 58vw, 500px);
	}

	.gallery-album__head,
	.gallery-contact {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.gallery-contact .vx-button {
		justify-self: start;
	}
}

@media (max-width: 640px) {
	.gallery-hero {
		padding-block: 40px;
	}

	.gallery-hero h1 {
		font-size: clamp(34px, 11vw, 52px);
	}

	.gallery-hero__media {
		grid-template-rows: 1fr 1fr;
		height: 78vw;
	}

	.gallery-filter-section {
		padding-block: 20px;
	}

	.gallery-album {
		padding-block: 56px;
	}

	.gallery-album__head {
		gap: 20px;
	}

	.gallery-album__head > div:first-child {
		grid-template-columns: auto minmax(0, 1fr);
		gap: 14px;
	}

	.gallery-album__head span {
		padding-top: 0;
	}

	.gallery-album__mosaic {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-template-rows: 66vw repeat(2, 40vw) 58vw;
		gap: 1px;
	}

	.gallery-photo:first-child {
		grid-column: 1 / 3;
		grid-row: 1;
	}

	.gallery-photo:nth-child(2) {
		grid-column: 1;
		grid-row: 2;
	}

	.gallery-photo:nth-child(3) {
		grid-column: 2;
		grid-row: 2;
	}

	.gallery-photo:nth-child(4) {
		grid-column: 1 / 3;
		grid-row: 3;
	}

	.gallery-photo:nth-child(5) {
		grid-column: 1 / 3;
		grid-row: 4;
	}

	.gallery-photo > span {
		display: none;
	}

	.gallery-contact {
		padding-block: 56px;
	}

	.gallery-lightbox__stage {
		grid-template-columns: 48px minmax(0, 1fr) 48px;
		gap: 6px;
		padding-inline: 8px;
	}

	.gallery-lightbox__stage button {
		width: 48px;
		padding: 0;
	}

	.gallery-lightbox__stage figcaption {
		padding-inline: 8px;
		font-size: 14px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.gallery-photo img,
	.gallery-photo > span,
	.gallery-album__link span {
		transition: none;
	}
}


@font-face {
	font-family: "Unbounded";
	src: url("../fonts/unbounded-700.ttf") format("truetype");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

:root {
	--bg: #f4f4f1;
	--surface: #ffffff;
	--surface-2: #ececea;
	--text: #141414;
	--muted: #616161;
	--blue: #141414;
	--accent: #e26419;
	--brand-yellow: #f5a623;
	--brand-orange: #e26419;
	--brand-red: #f04412;
	--line: #d9d9d4;
	--content-max: 1920px;
	--header-height: 65px;
	--page-pad: clamp(20px, 4vw, 64px);
	--content-pad: max(var(--page-pad), calc((100vw - var(--content-max)) / 2 + var(--page-pad)));
	--ease: cubic-bezier(0.22, 1, 0.36, 1);
	--fast: 180ms var(--ease);
	--slow: 720ms var(--ease);
	--button-height: 50px;
	--button-height-compact: 44px;
	--button-padding: 20px;
	--button-font-size: 15px;
	--button-font-weight: 800;
	--button-primary: var(--accent);
	--button-primary-hover: #c94f0f;
	--button-ink: var(--text);
}

* {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: calc(var(--header-height) + 24px);
	scrollbar-gutter: stable;
}

body {
	margin: 0;
	background: var(--bg);
	color: var(--text);
	font-family: "Onest", Arial, sans-serif;
	text-rendering: geometricPrecision;
}

body.menu-open {
	overflow: hidden;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.zvezda-editable {
	position: relative;
}

.zvezda-edit-shortcut {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 5;
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	border: 1px solid rgba(226, 100, 25, 0.42);
	border-radius: 50%;
	background: #ffffff;
	color: var(--accent);
	text-decoration: none;
	box-shadow: none;
	transition: transform var(--fast), border-color var(--fast), background-color var(--fast), color var(--fast);
}

.zvezda-edit-shortcut::before {
	content: "\270E";
	font-size: 16px;
	line-height: 1;
}

.zvezda-edit-shortcut:hover,
.zvezda-edit-shortcut:focus-visible {
	border-color: var(--accent);
	background: var(--accent);
	color: #ffffff;
	transform: translateY(-1px);
}

a {
	color: inherit;
	text-decoration: none;
	transition: color var(--fast), background-color var(--fast), border-color var(--fast), opacity var(--fast);
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

img[src*="image-placeholder.svg"] {
	box-sizing: border-box;
	padding: clamp(32px, 12%, 120px);
	background: #e8e8e6 !important;
	object-fit: contain !important;
	filter: none !important;
}

svg,
video,
iframe {
	max-width: 100%;
}

main[id],
main [id] {
	scroll-margin-top: calc(var(--header-height) + 24px);
}

.brand-bars {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	width: clamp(120px, 12vw, 220px);
	height: 8px;
	overflow: hidden;
	background: var(--brand-orange);
}

.brand-bars::before,
.brand-bars::after {
	content: "";
	display: block;
	min-width: 0;
}

.brand-bars::before {
	grid-column: 1;
	background: var(--brand-yellow);
}

.brand-bars::after {
	grid-column: 3;
	background: var(--brand-red);
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 10;
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 20px;
	min-height: 64px;
	width: 100%;
	padding: 10px var(--content-pad);
	background: rgba(255, 255, 255, 0.96);
	border-bottom: 1px solid var(--line);
	backdrop-filter: blur(14px);
	transition: background-color var(--fast), border-color var(--fast);
}

.brand {
	display: block;
	width: 148px;
	height: 42px;
}

.brand img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: left center;
	transition: opacity var(--fast);
}

.brand:hover img {
	opacity: 1;
}

.menu-toggle {
	display: none;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	cursor: pointer;
	gap: 4px;
	transition: opacity var(--fast), background-color var(--fast);
}

.menu-toggle span {
	display: block;
	width: 24px;
	height: 2px;
	background: var(--text);
	transition: transform var(--fast), opacity var(--fast);
	transform-origin: center;
}

.menu-toggle:hover {
	opacity: 0.72;
}

.main-nav {
	font-size: 14px;
	font-weight: 600;
}

.main-nav__list {
	display: flex;
	justify-content: center;
	gap: 20px;
	padding: 0;
	margin: 0;
	list-style: none;
}

.main-nav li {
	position: relative;
	display: flex;
	align-items: center;
}

.main-nav a {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	color: var(--text);
	text-decoration: none;
}

.submenu-toggle {
	display: none;
}

.main-nav .menu-item-has-children > a {
	gap: 6px;
}

.main-nav .menu-item-has-children > a::after {
	content: "";
	width: 7px;
	height: 7px;
	margin-top: -3px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform var(--fast);
}

.main-nav .menu-item-has-children:hover > a::after,
.main-nav .menu-item-has-children:focus-within > a::after {
	margin-top: 3px;
	transform: rotate(225deg);
}

.main-nav .menu-item-has-children::after {
	content: "";
	position: absolute;
	top: 100%;
	left: -10px;
	right: -10px;
	display: none;
	height: 14px;
}

.main-nav .menu-item-has-children:hover::after,
.main-nav .menu-item-has-children:focus-within::after {
	display: block;
}

.main-nav .sub-menu {
	position: absolute;
	top: calc(100% + 12px);
	left: 0;
	z-index: 20;
	display: none;
	min-width: 190px;
	padding: 8px;
	margin: 0;
	list-style: none;
	border: 1px solid var(--line);
	border-radius: 0;
	background: var(--surface);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.12);
}

.main-nav .menu-item-has-children:hover > .sub-menu,
.main-nav .menu-item-has-children:focus-within > .sub-menu {
	display: grid;
}

.main-nav .sub-menu .sub-menu {
	top: -9px;
	left: calc(100% - 1px);
}

.main-nav .sub-menu a {
	width: 100%;
	min-height: 38px;
	padding: 10px 12px;
	border-radius: 0;
	white-space: nowrap;
}

.main-nav .sub-menu a:hover,
.main-nav .sub-menu a:focus {
	background: var(--surface-2);
}

.header-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	justify-content: flex-end;
}

.header-contact {
	color: var(--blue);
	font-size: 14px;
	font-weight: 800;
	white-space: nowrap;
}

.header-contact:hover,
.main-nav a:hover,
.text-link:hover,
.model-card a:hover {
	color: var(--accent);
}

.header-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: var(--button-height-compact);
	padding: 0 16px;
	border-radius: 0;
	background: var(--button-primary);
	color: #fff;
	font-size: var(--button-font-size);
	font-weight: var(--button-font-weight);
	line-height: 1.15;
	white-space: nowrap;
	transition: background-color var(--fast), color var(--fast), opacity var(--fast);
}

.header-cta:hover {
	background: var(--button-primary-hover);
	color: #fff;
}

.hero {
	position: relative;
	min-height: calc(100vh - 64px);
	display: grid;
	align-items: end;
	overflow: hidden;
	background: var(--blue);
}

.hero__image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.58);
}

.hero__content {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: none;
	margin-inline: auto;
	padding: clamp(32px, 7vw, 96px) var(--content-pad);
	color: #fff;
}

.fact-strip {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 28px;
}

.fact-strip span {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 0 12px;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 0;
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	backdrop-filter: blur(10px);
}

.fact-strip--dark span {
	border-color: var(--line);
	background: var(--surface-2);
	color: var(--blue);
}

.kicker {
	margin: 0 0 14px;
	color: var(--accent);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
}

h1,
h2,
h3 {
	margin: 0;
	font-family: var(--display-font, "Russo One", "Onest", Arial, sans-serif);
	line-height: 1.05;
	letter-spacing: 0;
	hyphens: none;
	overflow-wrap: normal;
	text-wrap: balance;
	word-break: normal;
}

h1 {
	max-width: 820px;
	font-size: clamp(34px, 4.6vw, 68px);
	text-transform: uppercase;
}

h2 {
	font-size: clamp(28px, 3.4vw, 54px);
}

h3 {
	font-size: 22px;
}

p {
	color: var(--muted);
	line-height: 1.6;
}

.hero p {
	max-width: 620px;
	color: rgba(255, 255, 255, 0.84);
	font-size: 20px;
}

.actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 28px;
}

.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: var(--button-height);
	padding: 0 var(--button-padding);
	border: 0;
	border-radius: 0;
	background: var(--button-primary);
	color: #fff;
	font: inherit;
	font-size: var(--button-font-size);
	font-weight: var(--button-font-weight);
	line-height: 1.15;
	text-align: center;
	cursor: pointer;
	transition: background-color var(--fast), color var(--fast), border-color var(--fast), transform var(--fast), opacity var(--fast);
}

.button:hover {
	border-color: var(--button-primary-hover);
	background: var(--button-primary-hover);
	color: #fff;
}

.button:active {
	transform: translateY(1px);
}

.button--light {
	background: #fff;
	color: var(--blue);
}

.button--outline {
	border: 1px solid var(--line);
	background: transparent;
	color: var(--button-ink);
}

.button--outline:hover {
	border-color: var(--button-primary-hover);
	background: var(--button-primary-hover);
	color: #fff;
}

.button--outline-light {
	border: 1px solid rgba(255, 255, 255, 0.42);
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
}

.button--light:hover,
.button--outline-light:hover {
	border-color: var(--button-primary-hover);
	background: var(--button-primary-hover);
	color: #fff;
}

.button:focus-visible,
.header-cta:focus-visible,
.editor-content .wp-block-button__link:focus-visible,
.news-filters a:focus-visible,
.post-nav a:focus-visible,
.post-aside__back:focus-visible,
.post-aside__cta:focus-visible,
.vx-button:focus-visible,
.vx-link:focus-visible,
.vx-hero__slide-link:focus-visible {
	outline: 2px solid var(--button-primary);
	outline-offset: 3px;
}

.button:disabled,
.request-form button:disabled,
.vx-button:disabled,
.vx-link[aria-disabled="true"] {
	cursor: not-allowed;
	opacity: 0.45;
	pointer-events: none;
}

.section {
	width: 100%;
	padding: clamp(44px, 5.5vw, 82px) var(--content-pad);
}

.page-hero,
.model-hero,
.breadcrumbs,
.section--proof,
.section--tasks,
.section--media,
.section--contacts,
.section--dark {
	width: 100%;
	max-width: none;
	margin-inline: 0;
}

.section--compact {
	padding-block: 28px;
}

.models-filter-section {
	padding-block: 24px;
}

.models-catalog-section {
	padding-top: 0;
}

.page-hero,
.model-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
	gap: clamp(20px, 3.5vw, 48px);
	align-items: center;
	width: 100%;
	padding: clamp(28px, 4vw, 56px) var(--content-pad);
	background: var(--surface-2);
}

.breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	width: 100%;
	padding: 24px var(--content-pad) 0;
	background: var(--surface-2);
	color: var(--muted);
	font-size: 14px;
	font-weight: 700;
}

.breadcrumbs--surface,
.breadcrumbs + .model-hero {
	background: var(--surface);
}

.breadcrumbs a {
	color: var(--blue);
}

.breadcrumbs a::after {
	content: "/";
	margin-left: 8px;
	color: var(--muted);
}

.page-hero__actions {
	display: grid;
	gap: 12px;
	align-content: center;
	justify-items: start;
}

.page-hero h1,
.model-hero h1 {
	max-width: 1050px;
	color: var(--blue);
	font-size: clamp(30px, 3.8vw, 54px);
	text-transform: uppercase;
}

.page-hero p,
.model-hero p {
	max-width: 760px;
	font-size: 18px;
}

.model-hero {
	background: var(--surface);
}

.model-hero img {
	width: 100%;
	border-radius: 0;
	aspect-ratio: 16 / 11;
	object-fit: cover;
	background: var(--surface-2);
}

.section__head {
	max-width: 900px;
	margin-bottom: 32px;
}

.section__head p {
	max-width: 760px;
}

.section--proof {
	background: var(--surface);
}

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

.proof-grid > * {
	min-height: 168px;
	padding: 22px;
	border: 1px solid var(--line);
	border-radius: 0;
	background: var(--bg);
	transition: border-color var(--fast), transform var(--fast), background-color var(--fast);
}

.proof-grid > *:hover {
	border-color: var(--accent);
	transform: translateY(-4px);
}

.proof-grid > *:nth-child(2),
.model-card:nth-child(2),
.task-grid article:nth-child(2),
.news-grid article:nth-child(2),
.gallery-grid img:nth-child(2) {
	animation-delay: 70ms;
}

.proof-grid > *:nth-child(3),
.model-card:nth-child(3),
.task-grid article:nth-child(3),
.news-grid article:nth-child(3),
.gallery-grid img:nth-child(3) {
	animation-delay: 140ms;
}

.proof-grid > *:nth-child(4) {
	animation-delay: 210ms;
}

.proof-grid strong {
	display: block;
	color: var(--accent);
	font-family: var(--display-font, "Russo One", "Onest", Arial, sans-serif);
	font-size: clamp(30px, 3vw, 46px);
	line-height: 1;
	overflow-wrap: normal;
}

.proof-grid span {
	display: block;
	margin-top: 14px;
	color: var(--text);
	font-weight: 700;
	line-height: 1.35;
}

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

.section-action {
	margin-top: 24px;
}

.model-card {
	background: transparent;
	border: 0;
	border-top: 1px solid var(--line);
	border-radius: 0;
	overflow: hidden;
	transition: border-color var(--fast), transform var(--fast);
}

.model-card:hover {
	border-color: var(--accent);
	transform: translateY(-4px);
}

.model-card img {
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	background: var(--surface-2);
	transition: transform var(--slow), opacity var(--fast);
}

.model-card:hover img {
	transform: scale(1.025);
}

.model-card h3,
.model-card p {
	padding-inline: 0;
}

.model-card h3 {
	margin-top: 8px;
}

.model-card p {
	margin-bottom: 16px;
}

.model-card__body {
	padding: 18px 0 0;
}

.model-card__type {
	margin: 0;
	color: var(--accent);
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
}

.model-card__status {
	display: inline-flex;
	width: fit-content;
	margin: 0 0 12px;
	padding: 6px 9px;
	border: 1px solid currentColor;
	color: var(--accent);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1.2;
	text-transform: uppercase;
}

.model-card a,
.text-link {
	color: var(--blue);
	font-weight: 800;
}

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

.gallery-grid img {
	width: 100%;
	aspect-ratio: 4 / 3;
	border-radius: 0;
	object-fit: cover;
	background: var(--surface-2);
	transition: transform var(--slow), filter var(--fast);
}

.gallery-grid figure {
	display: grid;
	gap: 9px;
	margin: 0;
}

.gallery-grid figcaption {
	color: var(--muted);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
}

.inline-photo {
	width: 100%;
	margin-top: 24px;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	background: var(--surface-2);
}

.gallery-grid img:hover {
	filter: contrast(1.04);
	transform: scale(1.018);
}

.tag-row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

.tag-row span,
.tag-row a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 38px;
	padding: 0 14px;
	border: 1px solid var(--line);
	border-radius: 0;
	background: var(--surface);
	color: var(--blue);
	font-size: 14px;
	font-weight: 800;
	transition: background-color var(--fast), border-color var(--fast), color var(--fast), transform var(--fast);
}

.tag-row small {
	color: currentColor;
	font-size: 12px;
	font-weight: 900;
	opacity: 0.58;
}

.tag-row a:hover,
.tag-row a.is-active {
	border-color: var(--accent);
	background: var(--accent);
	color: #fff;
	transform: translateY(-1px);
}

.tag-row a.is-active {
	box-shadow: none;
}

.models-filter-summary {
	max-width: 780px;
	margin: 18px 0 0;
	color: var(--muted);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
}

.models-filter-summary strong {
	color: var(--text);
}

.models-filter-summary a {
	color: var(--accent);
	font-weight: 900;
}

.catalog-list {
	display: grid;
	gap: 8px;
}

.catalog-card {
	display: grid;
	grid-template-columns: minmax(240px, 0.36fr) minmax(0, 0.64fr);
	gap: clamp(18px, 2.6vw, 32px);
	align-items: stretch;
	padding: 16px 0;
	border: 0;
	border-top: 1px solid var(--line);
	border-radius: 0;
	background: transparent;
	transition: border-color var(--fast), transform var(--fast);
}

.models-catalog-section .catalog-card:first-child {
	border-top: 0;
}

.models-catalog-section .catalog-card:last-child {
	border-bottom: 0;
}

.catalog-card:hover {
	border-color: var(--accent);
	transform: translateY(-2px);
}

.catalog-card img {
	width: 100%;
	height: 100%;
	min-height: 240px;
	max-height: 320px;
	border-radius: 0;
	object-fit: cover;
	background: var(--surface-2);
	transition: transform var(--slow), filter var(--fast);
}

.catalog-card:hover img {
	filter: contrast(1.04);
	transform: scale(1.012);
}

.catalog-card h2 {
	margin: 4px 0 10px;
	color: var(--blue);
	font-size: clamp(26px, 3vw, 42px);
	line-height: 1;
}

.catalog-card p:not(.model-card__type) {
	margin: 0;
	max-width: 760px;
	line-height: 1.55;
}

.models-empty {
	display: grid;
	gap: 16px;
	max-width: 760px;
	margin-top: clamp(24px, 3vw, 44px);
	padding: 28px;
	border: 1px solid var(--line);
	background: var(--surface);
}

.models-empty h2 {
	margin: 0;
	color: var(--blue);
	font-size: clamp(26px, 3vw, 42px);
	line-height: 1.1;
}

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

.models-empty .button {
	width: fit-content;
}

.spec-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 7px 10px;
	margin: 16px 0 0;
	padding: 0;
	list-style: none;
}

.spec-list li {
	padding: 8px 10px;
	border: 1px solid var(--line);
	border-radius: 0;
	background: var(--bg);
	color: var(--text);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	transition: border-color var(--fast), background-color var(--fast);
}

.spec-list li:hover {
	border-color: var(--accent);
	background: var(--surface);
}

.spec-list--key li {
	display: grid;
	gap: 4px;
}

.spec-list--key {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.spec-list--key span {
	color: var(--muted);
	font-size: 12px;
	font-weight: 700;
}

.spec-list--key strong {
	color: var(--text);
	font-size: 14px;
	line-height: 1.35;
}

.spec-table {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	border-top: 1px solid var(--line);
	border-left: 1px solid var(--line);
	background: var(--surface);
}

.spec-table div {
	display: grid;
	gap: 8px;
	padding: 18px;
	border-right: 1px solid var(--line);
	border-bottom: 1px solid var(--line);
}

.spec-table span {
	color: var(--muted);
	font-size: 14px;
}

.spec-table strong {
	color: var(--text);
	line-height: 1.35;
}

.section--tasks {
	background: var(--surface-2);
}

.news-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 clamp(24px, 4vw, 44px);
}

.news-filters a {
	display: inline-flex;
	align-items: center;
	min-height: var(--button-height-compact);
	padding: 0 16px;
	color: var(--text);
	font-size: var(--button-font-size);
	font-weight: var(--button-font-weight);
	line-height: 1.15;
	text-decoration: none;
	border: 1px solid var(--line);
	background: transparent;
	transition: background var(--fast), border-color var(--fast), color var(--fast);
}

.news-filters a:hover,
.news-filters a.is-active {
	color: #ffffff;
	border-color: var(--button-primary);
	background: var(--button-primary);
}

.news-year-groups {
	display: grid;
	gap: clamp(34px, 6vw, 72px);
}

.news-year-group__head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 14px;
	padding-top: 18px;
	border-top: 1px solid var(--line);
}

.news-year-group__head span {
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(38px, 6vw, 86px);
	line-height: 0.9;
	color: var(--text);
}

.news-year-group__head small,
.news-empty {
	color: var(--muted);
	font-weight: 900;
}

.task-grid,
.news-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr));
	gap: 14px;
	margin-bottom: 24px;
}

.task-grid article,
.news-grid article {
	padding: 20px 0;
	border: 0;
	border-top: 1px solid var(--line);
	border-radius: 0;
	background: transparent;
	transition: border-color var(--fast), transform var(--fast);
}

.task-grid article:hover,
.news-grid article:hover {
	border-color: var(--accent);
	transform: translateY(-3px);
}

.news-grid article img {
	width: 100%;
	margin-bottom: 16px;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	background: var(--surface-2);
}

.news-grid > a {
	display: grid;
	grid-template-rows: auto auto auto 1fr;
	min-width: 0;
	min-height: clamp(360px, 30vw, 480px);
	color: inherit;
	text-decoration: none;
	background: transparent;
	border-top: 1px solid var(--line);
	overflow: visible;
}

.news-grid > a img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	background: var(--surface-2);
}

.news-grid > a span {
	display: block;
	padding: clamp(14px, 1.5vw, 20px) clamp(16px, 1.8vw, 24px) 0;
	color: var(--accent);
	font-weight: 900;
	line-height: 1.2;
}

.news-grid > a h2 {
	margin: 0;
	padding: 8px clamp(16px, 1.8vw, 24px) 0;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(22px, 2.4vw, 34px);
	font-weight: 400;
	line-height: 1.05;
	letter-spacing: 0;
	overflow-wrap: anywhere;
	word-break: normal;
	hyphens: auto;
	text-wrap: balance;
}

.news-grid > a p {
	max-width: 44rem;
	margin: 0;
	padding: clamp(12px, 1.4vw, 18px) clamp(16px, 1.8vw, 24px) clamp(18px, 2vw, 28px);
	color: var(--muted);
	font-weight: 800;
	line-height: 1.35;
	overflow-wrap: anywhere;
	word-break: normal;
}

.task-grid h3,
.news-grid h3 {
	font-size: 20px;
}

.news-grid time {
	display: block;
	margin-bottom: 12px;
	color: var(--accent);
	font-weight: 800;
}

.section--split {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: clamp(28px, 6vw, 96px);
	align-items: start;
}

.lead-text {
	margin-top: 0;
	color: var(--text);
	font-size: 22px;
	font-weight: 700;
	line-height: 1.45;
}

.policy-content {
	max-width: 920px;
}

.policy-content > *:first-child {
	margin-top: 0;
}

.policy-content h2 {
	margin: 32px 0 12px;
	color: var(--text);
	font-size: clamp(24px, 2.5vw, 36px);
	line-height: 1.12;
}

.policy-content p,
.policy-content li {
	color: var(--muted);
	font-size: 17px;
	line-height: 1.7;
}

.policy-content ul {
	margin: 12px 0 0;
	padding-left: 20px;
}

.editor-content {
	max-width: 920px;
	color: var(--text);
	font-size: 18px;
	line-height: 1.72;
	overflow-wrap: break-word;
}

.editor-content > *:first-child {
	margin-top: 0;
}

.editor-content > *:last-child {
	margin-bottom: 0;
}

.editor-content p,
.editor-content ul,
.editor-content ol,
.editor-content blockquote,
.editor-content figure,
.editor-content table,
.editor-content pre,
.editor-content .wp-block-embed,
.editor-content .wp-block-gallery,
.editor-content .wp-block-columns,
.editor-content .wp-block-buttons {
	margin-top: 0;
	margin-bottom: 1.35em;
}

.editor-content p,
.editor-content li {
	color: var(--muted);
}

.editor-content .lead-text {
	color: var(--text);
}

.editor-content h2,
.editor-content h3,
.editor-content h4 {
	margin: 1.65em 0 0.65em;
	color: var(--text);
	line-height: 1.08;
	text-wrap: balance;
}

.editor-content h2 {
	font-size: clamp(28px, 3vw, 44px);
}

.editor-content h3 {
	font-size: clamp(22px, 2.2vw, 32px);
}

.editor-content h4 {
	font-size: 20px;
}

.single-models .section--split .editor-content h2 {
	margin-top: clamp(64px, 7vw, 96px);
	margin-bottom: clamp(28px, 3vw, 40px);
}

.single-models .section--split .editor-content h3 {
	margin-top: clamp(40px, 4.5vw, 64px);
	margin-bottom: 16px;
}

.single-models .section--split .editor-content h2 + h3 {
	margin-top: clamp(52px, 5.5vw, 72px);
}

.single-models .section--split .editor-content h3 + p {
	margin-top: 0;
	margin-bottom: 0;
}

.editor-content a {
	color: var(--accent);
	font-weight: 800;
	text-decoration: underline;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

.editor-content a:hover,
.editor-content a:focus-visible {
	color: var(--text);
}

.editor-content ul,
.editor-content ol {
	display: grid;
	gap: 0.55em;
	padding-left: 1.25em;
}

.editor-content li::marker {
	color: var(--accent);
	font-weight: 900;
}

.editor-content blockquote,
.editor-content .wp-block-quote {
	position: relative;
	margin-inline: 0;
	padding: clamp(20px, 2.2vw, 32px) clamp(20px, 3vw, 40px);
	border: 1px solid var(--line);
	border-left: 8px solid var(--accent);
	background: rgba(255, 255, 255, 0.52);
	color: var(--text);
}

.editor-content blockquote::before,
.editor-content .wp-block-quote::before {
	content: "“";
	position: absolute;
	top: 4px;
	right: 18px;
	color: rgba(226, 100, 25, 0.18);
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(58px, 8vw, 96px);
	line-height: 1;
	pointer-events: none;
}

.editor-content blockquote p,
.editor-content .wp-block-quote p {
	position: relative;
	margin: 0 0 0.75em;
	color: var(--text);
	font-size: clamp(19px, 1.5vw, 24px);
	font-weight: 800;
	line-height: 1.42;
}

.editor-content blockquote p:last-child,
.editor-content .wp-block-quote p:last-child {
	margin-bottom: 0;
}

.editor-content blockquote cite,
.editor-content .wp-block-quote cite {
	display: block;
	margin-top: 14px;
	color: var(--muted);
	font-size: 14px;
	font-style: normal;
	font-weight: 900;
	text-transform: uppercase;
}

.editor-content .wp-block-pullquote {
	padding: clamp(26px, 4vw, 48px);
	border-top: 3px solid var(--accent);
	border-bottom: 3px solid var(--accent);
	text-align: center;
}

.editor-content .wp-block-pullquote blockquote {
	padding: 0;
	border: 0;
	background: transparent;
}

.editor-content .wp-block-pullquote blockquote::before {
	display: none;
}

.editor-content .wp-block-pullquote p {
	color: var(--text);
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(24px, 3vw, 42px);
	font-weight: 400;
	line-height: 1.12;
}

.editor-content figure {
	max-width: 100%;
}

.editor-content img {
	max-width: 100%;
	height: auto;
	border: 1px solid var(--line);
	background: var(--surface-2);
}

.editor-content .wp-block-image img {
	display: block;
	width: 100%;
}

.editor-content figcaption,
.editor-content .wp-caption-text {
	margin-top: 10px;
	color: var(--muted);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
}

.editor-content .wp-block-gallery {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
	gap: 12px;
	padding: 0;
}

.editor-content .wp-block-gallery figure {
	margin: 0;
}

.editor-content .wp-block-gallery img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.editor-content .wp-block-separator {
	width: 100%;
	height: 1px;
	margin: clamp(28px, 4vw, 48px) 0;
	border: 0;
	background: var(--line);
}

.editor-content .wp-block-separator.is-style-wide {
	width: 100%;
}

.editor-content table,
.editor-content .wp-block-table table {
	width: 100%;
	border-collapse: collapse;
	background: rgba(255, 255, 255, 0.36);
	font-size: 16px;
}

.editor-content .wp-block-table {
	overflow-x: hidden;
}

.editor-content th,
.editor-content td {
	padding: 14px 16px;
	border: 1px solid var(--line);
	overflow-wrap: anywhere;
	text-align: left;
	vertical-align: top;
}

.editor-content th {
	color: var(--text);
	font-weight: 900;
}

.editor-content pre,
.editor-content code,
.editor-content .wp-block-code {
	font-family: Consolas, "Courier New", monospace;
}

.editor-content code {
	padding: 0.15em 0.35em;
	background: rgba(20, 20, 20, 0.08);
	color: var(--text);
	font-size: 0.92em;
}

.editor-content pre,
.editor-content .wp-block-code {
	overflow-x: auto;
	padding: 18px;
	border: 1px solid var(--line);
	background: #141414;
	color: #fff;
	font-size: 15px;
	line-height: 1.55;
}

.editor-content pre code,
.editor-content .wp-block-code code {
	padding: 0;
	background: transparent;
	color: inherit;
}

.editor-content .wp-block-embed iframe,
.editor-content .wp-block-video video {
	width: 100%;
	max-width: 100%;
}

.editor-content .wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.editor-content .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: var(--button-height);
	padding: 0 var(--button-padding);
	background: var(--button-primary);
	color: #fff;
	font-size: var(--button-font-size);
	font-weight: var(--button-font-weight);
	line-height: 1.15;
	text-decoration: none;
	transition: background-color var(--fast), color var(--fast);
}

.editor-content .wp-block-button__link:hover,
.editor-content .wp-block-button__link:focus-visible {
	background: var(--button-primary-hover);
	color: #ffffff;
}

.post-page {
	background: var(--surface);
}

.post-article {
	background: var(--surface);
}

.post-hero {
	border-bottom: 1px solid var(--line);
	background: #e0e0de;
}

.post-hero__inner {
	display: grid;
	grid-template-columns: minmax(0, 0.88fr) minmax(360px, 0.72fr);
	gap: clamp(28px, 5vw, 88px);
	align-items: center;
	width: 100%;
	padding: clamp(44px, 6vw, 96px) var(--content-pad) clamp(40px, 5.5vw, 78px);
}

.post-hero--without-media .post-hero__inner {
	grid-template-columns: minmax(0, 1fr);
}

.post-hero--without-media .post-hero__copy {
	max-width: 1120px;
}

.post-hero__copy {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(16px, 2vw, 24px);
	align-content: center;
	min-width: 0;
}

.post-hero__copy > * {
	min-width: 0;
	max-width: 100%;
}

.post-hero__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 14px;
	align-items: center;
	color: var(--muted);
	font-size: 14px;
	font-weight: 900;
	line-height: 1.2;
}

.post-hero__meta a,
.post-hero__meta time,
.post-hero__meta span {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	color: inherit;
	text-decoration: none;
}

.post-hero__meta a {
	color: var(--accent);
}

.post-hero__meta a:hover,
.post-hero__meta a:focus-visible {
	color: var(--text);
}

.post-hero h1 {
	max-width: 12ch;
	color: var(--text);
	font-family: var(--display-font, "Russo One", "Onest", Arial, sans-serif);
	font-size: clamp(42px, 6vw, 92px);
	font-weight: 400;
	line-height: 0.94;
	letter-spacing: 0;
	overflow-wrap: normal;
	text-transform: uppercase;
	text-wrap: balance;
	word-break: normal;
}

.post-hero__copy > p {
	max-width: 760px;
	margin: 0;
	color: var(--muted);
	font-size: clamp(18px, 1.6vw, 24px);
	font-weight: 750;
	line-height: 1.5;
}

.post-hero__copy .brand-bars {
	width: clamp(150px, 18vw, 300px);
	margin-top: 2px;
}

.post-hero__media {
	margin: 0;
}

.post-hero__media img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	border: 1px solid var(--line);
	background: var(--surface-2);
}

.post-body {
	display: grid;
	grid-template-columns: minmax(190px, 0.24fr) minmax(0, 0.76fr);
	gap: clamp(28px, 5vw, 84px);
	align-items: start;
	width: 100%;
	box-sizing: border-box;
	padding: clamp(42px, 6vw, 88px) var(--content-pad) clamp(56px, 8vw, 116px);
}

.post-aside,
.post-content {
	min-width: 0;
}

.post-aside {
	position: sticky;
	top: 92px;
	display: grid;
	gap: 12px;
	align-content: start;
}

.post-aside__nav {
	display: grid;
	gap: 12px;
}

.post-aside__back,
.post-aside__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: var(--button-height);
	padding: 0 var(--button-padding);
	border: 1px solid var(--line);
	color: var(--text);
	font-size: var(--button-font-size);
	font-weight: var(--button-font-weight);
	line-height: 1.15;
	text-align: center;
	text-decoration: none;
	transition: background-color var(--fast), border-color var(--fast), color var(--fast), transform var(--fast);
}

.post-aside__back:hover,
.post-aside__back:focus-visible,
.post-aside__cta:hover,
.post-aside__cta:focus-visible {
	border-color: var(--button-primary-hover);
	background: var(--button-primary-hover);
	color: #ffffff;
	transform: translateY(-1px);
}

.post-aside__back.is-current {
	border-color: var(--button-primary);
	background: var(--button-primary);
	color: #fff;
}

.post-aside__card {
	display: grid;
	gap: 8px;
	padding: 18px;
	border: 1px solid var(--line);
	background: rgba(255, 255, 255, 0.42);
}

a.post-aside__card {
	text-decoration: none;
}

a.post-aside__card:hover,
a.post-aside__card:focus-visible {
	border-color: var(--accent);
}

.post-aside__card span {
	color: var(--accent);
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
}

.post-aside__card strong {
	color: var(--text);
	font-size: 18px;
	line-height: 1.25;
}

.post-aside__card p {
	margin: 0;
	color: var(--muted);
	font-size: 14px;
	font-weight: 800;
}

.post-aside__cta {
	border-color: var(--button-primary);
	background: var(--button-primary);
	color: #ffffff;
}

.post-aside__cta:hover,
.post-aside__cta:focus-visible {
	background: var(--button-primary-hover);
	border-color: var(--button-primary-hover);
}

.post-content {
	width: min(100%, 820px);
	max-width: none;
}

.post-body--news {
	grid-template-columns: minmax(220px, 0.28fr) minmax(0, 0.72fr);
}

.post-aside--news .post-related {
	margin-top: 0;
}

.post-aside--news .post-aside__back {
	margin-top: 8px;
}

.post-content.editor-content {
	font-size: clamp(17px, 1.08vw, 19px);
	line-height: 1.78;
	overflow-wrap: normal;
	word-break: normal;
}

.post-content.editor-content p,
.post-content.editor-content li,
.post-content.editor-content h2,
.post-content.editor-content h3,
.post-content.editor-content h4 {
	overflow-wrap: normal;
	word-break: normal;
}

.post-content.editor-content > p:first-child {
	color: var(--text);
	font-size: clamp(20px, 1.45vw, 25px);
	font-weight: 760;
	line-height: 1.5;
}

.post-content.editor-content > .post-page-copy > p:first-child {
	color: var(--text);
	font-size: clamp(20px, 1.45vw, 25px);
	font-weight: 760;
	line-height: 1.5;
}

.post-content.editor-content h2 {
	font-size: clamp(32px, 3.2vw, 56px);
}

.post-content.editor-content h3 {
	font-size: clamp(24px, 2.2vw, 36px);
}

.page-template-page-privacy-policy .post-content.editor-content {
	font-size: clamp(16px, 1vw, 18px);
	line-height: 1.72;
}

.page-template-page-privacy-policy .post-content.editor-content > p:first-child {
	max-width: 62ch;
	margin-bottom: clamp(32px, 5vw, 56px);
	font-size: clamp(18px, 1.3vw, 22px);
	font-weight: 650;
	line-height: 1.55;
}

.page-template-page-privacy-policy .post-content.editor-content h2 {
	max-width: 28ch;
	margin-top: clamp(44px, 6vw, 72px);
	margin-bottom: 18px;
	font-size: clamp(24px, 2.2vw, 36px);
	line-height: 1.16;
	letter-spacing: -0.025em;
	text-wrap: balance;
}

.page-template-page-privacy-policy .post-content.editor-content p,
.page-template-page-privacy-policy .post-content.editor-content li {
	max-width: 72ch;
	text-wrap: pretty;
}

.page-template-page-privacy-policy .post-content.editor-content ul {
	margin-block: 14px 26px;
}

.page-template-page-privacy-policy .post-content.editor-content table {
	width: 100%;
	margin-block: 24px 12px;
}

.post-inline-gallery {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin: clamp(30px, 4vw, 48px) 0;
}

.post-inline-gallery figure {
	margin: 0;
}

.post-inline-gallery img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border: 1px solid var(--line);
	background: var(--surface-2);
}

.post-inline-gallery figcaption {
	margin-top: 8px;
	color: var(--muted);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
}

.post-page-links a {
	color: var(--text);
	text-decoration-color: var(--accent);
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

.post-page-links a:hover,
.post-page-links a:focus-visible {
	color: var(--accent);
}

.post-nav {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-top: clamp(32px, 5vw, 64px);
	padding-top: 18px;
	border-top: 1px solid var(--line);
}

.post-nav a {
	display: flex;
	align-items: center;
	min-height: var(--button-height);
	padding: 0 var(--button-padding);
	border: 1px solid var(--line);
	color: var(--text);
	font-size: var(--button-font-size);
	font-weight: var(--button-font-weight);
	line-height: 1.15;
	text-decoration: none;
}

.post-nav a:hover,
.post-nav a:focus-visible {
	border-color: var(--button-primary-hover);
	background: var(--button-primary-hover);
	color: #ffffff;
}

@media (max-width: 1020px) {
	.post-hero__inner,
	.post-body {
		grid-template-columns: 1fr;
	}

	.post-hero__inner {
		padding-top: clamp(40px, 8vw, 72px);
	}

	.post-hero h1 {
		max-width: 14ch;
	}

	.post-aside {
		position: static;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		order: 2;
	}

	.post-aside:has(.post-aside__nav) {
		grid-template-columns: 1fr;
	}

	.post-aside:has(.post-aside__nav) .post-aside__nav {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.post-aside--news {
		grid-template-columns: 1fr;
	}

	.post-content {
		order: 1;
		width: 100%;
	}
}

@media (max-width: 720px) {
	.editor-content {
		font-size: 16px;
		line-height: 1.65;
	}

	.post-hero__inner {
		gap: 22px;
		padding-block: 34px 32px;
	}

	.post-hero h1 {
		max-width: 100%;
		font-size: clamp(32px, 10vw, 48px);
	}

	.post-hero__meta {
		font-size: 13px;
	}

	.post-hero__media img {
		aspect-ratio: 4 / 3;
	}

	.post-body {
		gap: 26px;
		padding-block: 32px 56px;
	}

	.post-content.editor-content {
		font-size: 16px;
		line-height: 1.68;
	}

	.post-inline-gallery {
		grid-template-columns: 1fr;
	}

	.post-aside,
	.post-nav {
		grid-template-columns: 1fr;
	}

	.post-aside:has(.post-aside__nav) .post-aside__nav {
		grid-template-columns: 1fr;
	}

	.editor-content blockquote,
	.editor-content .wp-block-quote {
		padding: 18px 18px 18px 20px;
		border-left-width: 5px;
	}

	.editor-content blockquote::before,
	.editor-content .wp-block-quote::before {
		right: 10px;
		font-size: 58px;
	}

	.editor-content blockquote p,
	.editor-content .wp-block-quote p {
		font-size: 18px;
	}

	.editor-content .wp-block-pullquote {
		padding: 22px 0;
	}

	.editor-content .wp-block-columns {
		display: grid;
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.editor-content th,
	.editor-content td {
		padding: 12px;
	}
}

.section--media {
	background: var(--surface);
}

.section--contacts {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 480px);
	gap: 32px;
	background: var(--surface);
}

.contact-list {
	display: grid;
	gap: 10px;
	align-content: start;
}

.contact-list a,
.contact-list span {
	padding: 16px;
	border: 1px solid var(--line);
	border-radius: 0;
	background: var(--bg);
	color: var(--blue);
	font-weight: 800;
	line-height: 1.35;
	transition: border-color var(--fast), background-color var(--fast), color var(--fast), transform var(--fast);
}

.contact-list a:hover {
	border-color: var(--accent);
	background: var(--accent);
	color: #fff;
	transform: translateY(-2px);
}

.contact-details {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	background: var(--surface);
}

.contact-card {
	display: grid;
	align-content: start;
	gap: 10px;
	min-width: 0;
	min-height: 210px;
	padding: 22px;
	border: 0;
	border-top: 1px solid var(--line);
	border-radius: 0;
	background: transparent;
	transition: border-color var(--fast), transform var(--fast);
}

.contact-card:hover {
	border-color: var(--accent);
	transform: translateY(-3px);
}

.contact-card--primary {
	background: var(--blue);
	color: #fff;
	padding-inline: 22px;
}

.contact-card--wide {
	grid-column: span 2;
}

.contact-card span {
	color: var(--accent);
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
}

.contact-card a,
.contact-card strong {
	display: block;
	max-width: 100%;
	color: inherit;
	font-family: var(--display-font, "Russo One", "Onest", Arial, sans-serif);
	font-size: clamp(16px, 2vw, 28px);
	line-height: 1.15;
	overflow-wrap: normal;
	word-break: normal;
}

.type-lab h1,
.type-lab h2,
.type-lab h3,
.type-lab .proof-grid strong {
	font-family: var(--display-font, "Russo One", "Onest", Arial, sans-serif);
}

.type-lab__hero {
	align-items: start;
}

.type-switcher {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	align-self: stretch;
}

.type-switcher button {
	min-height: 46px;
	padding: 0 14px;
	border: 1px solid var(--line);
	background: var(--surface);
	color: var(--text);
	font: inherit;
	font-weight: 800;
	cursor: pointer;
	text-align: left;
	transition: background-color var(--fast), border-color var(--fast), color var(--fast), transform var(--fast);
}

.type-switcher button:hover {
	border-color: var(--accent);
	transform: translateY(-1px);
}

.type-switcher button.is-active {
	border-color: var(--accent);
	background: var(--accent);
	color: #fff;
}

.type-lab__samples {
	display: grid;
	gap: 48px;
}

.type-preview {
	padding: clamp(28px, 5vw, 64px);
	border-top: 1px solid var(--line);
	background: var(--surface);
}

.type-preview--dark {
	background: var(--blue);
	color: #fff;
}

.type-preview p {
	max-width: 780px;
}

.type-preview__label {
	margin-top: 0;
	color: var(--accent);
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
}

.type-preview h1 {
	font-size: clamp(34px, 4.8vw, 68px);
}

.type-preview h2 {
	max-width: 980px;
}

.type-lab__proof {
	margin-bottom: 0;
}

.contact-card p {
	margin: 0;
	color: var(--muted);
}

.contact-card--primary p {
	color: rgba(255, 255, 255, 0.72);
}

.section--dark {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 520px);
	gap: 40px;
	background: var(--blue);
	color: #fff;
}

.section--photo-bg {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background: #090c2a url("../img/source/22.jpg") center / cover no-repeat;
}

.section--dark p {
	color: rgba(255, 255, 255, 0.74);
}

.section--dark .lead-text {
	color: #fff;
}

.section--dark .kicker {
	color: #f6a02d;
}

.request-form {
	display: grid;
	gap: 16px;
	padding: clamp(16px, 2.4vw, 28px);
	background: #fff;
	border-radius: 0;
}

.form-notice {
	margin: 0;
	padding: 12px 14px;
	border: 1px solid var(--line);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.4;
}

.form-notice--success {
	border-color: rgba(33, 124, 72, 0.35);
	background: rgba(33, 124, 72, 0.09);
	color: #17613c;
}

.form-notice--error {
	border-color: rgba(190, 54, 38, 0.35);
	background: rgba(190, 54, 38, 0.09);
	color: #9b2a1f;
}

.form-honeypot {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.request-form label {
	display: grid;
	gap: 7px;
	color: var(--text);
	font-size: 16px;
	font-weight: 700;
}

.form-consent {
	display: grid !important;
	grid-template-columns: 18px minmax(0, 1fr);
	gap: 10px !important;
	align-items: start;
	color: #4e5651 !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.35;
}

.form-consent input {
	-webkit-appearance: checkbox !important;
	appearance: auto !important;
	width: 18px !important;
	height: 18px;
	min-height: 0 !important;
	margin: 0;
	padding: 0 !important;
	border: 1px solid #8e9691;
	background: #fff;
	accent-color: var(--accent);
	cursor: pointer;
	flex: 0 0 18px;
}

.form-consent span {
	margin: 0;
}

.request-form input,
.request-form textarea {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	border: 1px solid var(--line);
	border-radius: 0;
	padding: 12px 14px;
	background: #fff;
	color: var(--text);
	font: inherit;
	line-height: 1.35;
	resize: vertical;
	transition: border-color var(--fast), box-shadow var(--fast);
}

.request-form input {
	min-height: 50px;
}

.request-form textarea {
	min-height: 124px;
}

.request-form input::placeholder,
.request-form textarea::placeholder {
	color: #767c78;
	opacity: 1;
}

.request-form input:focus,
.request-form textarea:focus {
	border-color: var(--accent);
	box-shadow: 0 0 0 3px rgba(226, 100, 25, 0.14);
	outline: 0;
}

.request-form .button,
.request-form button {
	width: 100%;
	margin-top: 4px;
}

.request-form .button:hover,
.request-form .button:focus-visible,
.request-form button:hover,
.request-form button:focus-visible {
	border-color: var(--button-primary-hover);
	background: var(--button-primary-hover);
	color: #ffffff;
	box-shadow: none;
	transform: translateY(-1px);
}

.site-footer {
	position: relative;
	border-top: 1px solid var(--line);
	background: linear-gradient(180deg, var(--surface) 0%, var(--surface-2) 100%);
}

.site-footer__bars {
	position: absolute;
	top: 0;
	left: var(--content-pad);
	width: clamp(160px, 18vw, 320px);
}

.site-footer__inner {
	display: grid;
	grid-template-columns: minmax(260px, 1.15fr) minmax(320px, 1.25fr) minmax(280px, 0.9fr);
	gap: clamp(28px, 4vw, 68px);
	width: 100%;
	padding: clamp(44px, 5.5vw, 78px) var(--content-pad) clamp(34px, 4.5vw, 62px);
}

.site-footer__brand {
	display: grid;
	gap: 20px;
	align-content: start;
}

.site-footer__brand p {
	max-width: 360px;
	margin: 0;
	color: var(--muted);
	font-size: clamp(15px, 1vw, 17px);
	line-height: 1.55;
}

.site-footer__nav {
	display: grid;
	gap: 18px;
	align-content: start;
}

.site-footer__title {
	margin: 0;
	color: var(--muted);
	font-family: "Onest", Arial, sans-serif;
	font-size: 15px;
	font-weight: 850;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: none;
}

.site-footer__nav-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px 28px;
	padding: 0;
	margin: 0;
	list-style: none;
}

.site-footer__nav-list a,
.site-footer__email,
.site-footer__actions a {
	color: var(--text);
	text-decoration: none;
	transition: color var(--fast), transform var(--fast);
}

.site-footer__nav-list a {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	font-weight: 850;
	line-height: 1.25;
}

.site-footer__nav-list a:hover,
.site-footer__nav-list a:focus-visible,
.site-footer__contacts a:not(.zvezda-edit-shortcut):hover,
.site-footer__contacts a:not(.zvezda-edit-shortcut):focus-visible {
	color: var(--accent);
}

.site-footer__nav-list a:hover,
.site-footer__nav-list a:focus-visible,
.site-footer__actions a:not(.contact-socials__link):hover,
.site-footer__actions a:not(.contact-socials__link):focus-visible {
	transform: translateX(3px);
}

.site-footer__contacts {
	display: grid;
	gap: 10px;
	align-content: start;
	color: var(--muted);
	font-weight: 700;
}

.site-footer__phone {
	color: var(--text);
	font-family: var(--display-font, "Russo One", "Onest", Arial, sans-serif);
	font-size: clamp(22px, 2vw, 30px);
	line-height: 1.1;
	text-decoration: none;
}

.site-footer__email {
	width: fit-content;
	font-weight: 850;
	line-height: 1.3;
}

.site-footer__meta {
	display: grid;
	gap: 4px;
	margin-top: 2px;
	color: var(--muted);
	font-size: 15px;
	line-height: 1.45;
}

.site-footer__actions {
	display: grid;
	gap: 8px;
	margin-top: 8px;
	justify-items: start;
}

.site-footer__actions .text-link {
	font-weight: 900;
}

.site-footer__policy {
	display: inline-flex;
	width: fit-content;
	max-width: 310px;
	color: var(--muted);
	font-size: 14px;
	font-weight: 850;
	line-height: 1.3;
	text-decoration: none;
}

.site-footer__legal-links {
	display: grid;
	gap: 8px;
	justify-items: start;
}

@media (min-width: 1680px) {
	:root {
		--page-pad: 72px;
	}
}

@media (max-width: 1180px) {
	:root {
		--page-pad: clamp(20px, 3vw, 40px);
	}

	.site-header {
		gap: 16px;
	}

	.main-nav {
		gap: 14px;
	}

	.proof-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.section--contacts,
	.site-footer__inner {
		grid-template-columns: minmax(0, 1fr) minmax(260px, 0.7fr);
	}

	.site-footer__contacts {
		grid-column: 1 / -1;
		grid-template-columns: minmax(0, 1fr) minmax(220px, auto);
		column-gap: 28px;
		align-items: start;
	}

	.site-footer__contacts .site-footer__title,
	.site-footer__contacts .site-footer__phone,
	.site-footer__contacts .site-footer__email {
		grid-column: 1;
	}

	.site-footer__meta,
	.site-footer__actions {
		grid-column: 2;
	}
}

@media (max-width: 1020px) {
	.site-header {
		grid-template-columns: auto 1fr;
	}

	.header-actions {
		grid-column: 1 / -1;
		justify-content: flex-start;
	}

	.page-hero,
	.model-hero,
	.section--split,
	.section--dark,
	.section--contacts,
	.catalog-card {
		grid-template-columns: 1fr;
	}

	.model-grid,
	.gallery-grid,
	.task-grid,
	.news-grid,
	.contact-details {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.catalog-card img {
		height: auto;
		min-height: 0;
	}
}

@media (max-width: 720px) {
	:root {
		--page-pad: 20px;
	}

	.proof-grid,
	.model-grid,
	.gallery-grid,
	.contact-details,
	.task-grid,
	.news-grid,
	.spec-table,
	.spec-list,
	.site-footer__inner,
	.site-footer__nav,
	.site-footer__nav-list,
	.site-footer__contacts {
		grid-template-columns: 1fr;
	}

	.vercel-page main:not(.vercel-main) .proof-grid > * + * {
		padding-left: 0;
	}

	.site-footer__contacts {
		grid-column: auto;
	}

	.site-footer__contacts .site-footer__title,
	.site-footer__contacts .site-footer__phone,
	.site-footer__contacts .site-footer__email,
	.site-footer__meta,
	.site-footer__actions {
		grid-column: auto;
	}

	.section {
		padding-block: 38px;
	}

	.page-hero,
	.model-hero {
		padding-block: 44px;
	}
}

@media (max-width: 1100px) {
	:root {
		--header-height: 69px;
	}

	.site-header {
		grid-template-columns: minmax(0, 1fr) 48px;
		grid-template-rows: auto;
		gap: 12px;
		align-items: center;
		min-height: 68px;
		padding: 10px 20px;
	}

	.header-actions {
		grid-column: 1 / -1;
		display: none;
		align-self: end;
		justify-content: stretch;
		flex-wrap: wrap;
		gap: 10px;
		padding-top: 16px;
		border-top: 1px solid rgba(20, 22, 20, 0.14);
	}

	.header-actions .header-contact,
	.header-actions .header-cta {
		width: 100%;
	}

	.header-contact {
		display: grid;
		gap: 5px;
		padding: 12px 0 10px;
		color: var(--text);
		font-size: 18px;
	}

	.header-contact::before {
		content: "Телефон";
		color: var(--muted);
		font-family: "Onest", Arial, sans-serif;
		font-size: 13px;
		font-weight: 800;
		text-transform: uppercase;
	}

	.header-cta {
		min-height: var(--button-height);
		border-radius: 0;
		font-size: var(--button-font-size);
	}

	.menu-toggle {
		display: flex;
		justify-self: end;
	}

	.site-header.is-open .menu-toggle span:nth-child(1) {
		transform: translateY(6px) rotate(45deg);
	}

	.site-header.is-open .menu-toggle span:nth-child(2) {
		opacity: 0;
	}

	.site-header.is-open .menu-toggle span:nth-child(3) {
		transform: translateY(-6px) rotate(-45deg);
	}

	.site-header.is-open {
		position: fixed;
		inset: 0;
		z-index: 100;
		grid-template-columns: minmax(0, 1fr) 48px;
		grid-template-rows: 48px minmax(0, 1fr) auto;
		align-items: start;
		width: 100%;
		min-height: 100dvh;
		gap: 12px;
		padding: 10px 20px max(10px, env(safe-area-inset-bottom));
		overflow: hidden;
		background: #f0f0ed;
		box-shadow: 0 24px 80px rgba(20, 22, 20, 0.22);
		animation: mobile-menu-reveal 360ms cubic-bezier(0.22, 1, 0.36, 1) both;
	}

	.vercel-page .site-header.is-open {
		width: 100%;
		max-width: 100%;
		margin-inline: 0;
		overflow-x: hidden;
	}

	.site-header.is-open .brand {
		grid-column: 1;
		grid-row: 1;
		align-self: center;
		height: 42px;
	}

	.site-header.is-open .menu-toggle {
		grid-column: 2;
		grid-row: 1;
		width: 48px;
		height: 48px;
		background: transparent;
		border: 0;
		box-shadow: none;
	}

	.site-header.is-open .menu-toggle:focus-visible {
		outline: 2px solid var(--accent);
		outline-offset: 3px;
	}

	.admin-bar .site-header.is-open {
		top: 46px;
		min-height: calc(100dvh - 46px);
	}

	.main-nav {
		grid-column: 1 / -1;
		grid-row: 2;
		display: none;
		align-self: stretch;
		align-items: stretch;
		min-height: 0;
		height: 100%;
		width: 100%;
		padding: 12px 0;
		border-top: 1px solid rgba(20, 22, 20, 0.14);
		justify-content: flex-start;
		overflow-y: auto;
		overflow-x: hidden;
		overscroll-behavior: contain;
		-webkit-overflow-scrolling: touch;
		flex-direction: column;
		gap: 0;
		scrollbar-width: thin;
	}

	.site-header.is-open .main-nav,
	.site-header.is-open .header-actions {
		display: flex;
	}

	.main-nav__list {
		display: grid;
		width: 100%;
		gap: 0;
		justify-content: stretch;
	}

	.main-nav li {
		display: grid;
		align-items: stretch;
		width: 100%;
		min-width: 0;
		gap: 0;
		border-bottom: 1px solid rgba(20, 22, 20, 0.12);
	}

	.main-nav .menu-item-has-children {
		grid-template-columns: minmax(0, 1fr) 46px;
	}

	.main-nav .main-nav__list > li > a {
		display: flex;
		align-items: center;
		width: 100%;
		min-height: 60px;
		padding: 12px 0;
		border: 0;
		border-radius: 0;
		background: transparent;
		font-family: var(--display-font, "Russo One", "Onest", Arial, sans-serif);
		font-size: clamp(25px, 7vw, 34px);
		font-weight: 400;
		line-height: 1.05;
		text-transform: uppercase;
		box-shadow: none;
		transition: color 180ms var(--ease), padding-left 180ms var(--ease);
	}

	.main-nav .menu-item-has-children > a {
		grid-column: 1;
		min-width: 0;
	}

	.submenu-toggle {
		position: relative;
		grid-column: 2;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 46px;
		min-height: 60px;
		border: 0;
		border-radius: 0;
		background: transparent;
		color: var(--text);
		cursor: pointer;
		box-shadow: none;
		transition: color 180ms var(--ease), transform 180ms var(--ease);
	}

	.submenu-toggle span {
		width: 12px;
		height: 12px;
		margin-top: -4px;
		border-right: 2px solid currentColor;
		border-bottom: 2px solid currentColor;
		transform: rotate(45deg);
		transition: transform 180ms var(--ease), margin 180ms var(--ease);
	}

	.main-nav .is-submenu-open > .submenu-toggle {
		color: var(--accent);
	}

	.main-nav .is-submenu-open > .submenu-toggle span {
		margin-top: 4px;
		transform: rotate(225deg);
	}

	.submenu-toggle:hover,
	.submenu-toggle:focus-visible {
		color: var(--accent);
	}

	.main-nav .main-nav__list > li > a:hover,
	.main-nav .main-nav__list > li > a:focus {
		color: var(--accent);
		padding-left: 6px;
	}

	.main-nav .menu-item-has-children > a::after {
		display: none;
	}

	.main-nav .menu-item-has-children::after {
		display: none;
	}

	.main-nav .sub-menu {
		position: static;
		grid-column: 1 / -1;
		display: none;
		gap: 0;
		min-width: 0;
		width: 100%;
		max-width: 100%;
		margin: 0 0 12px;
		padding: 2px 0 6px 16px;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		animation: none;
	}

	.main-nav .menu-item-has-children:hover > .sub-menu,
	.main-nav .menu-item-has-children:focus-within > .sub-menu {
		display: none;
	}

	.main-nav .is-submenu-open > .sub-menu {
		display: grid;
	}

	.main-nav .menu-item-has-children.is-submenu-open > .sub-menu {
		display: grid;
	}

	.main-nav .sub-menu .sub-menu {
		margin: 0 0 4px;
		padding: 0 0 4px 18px;
		border: 0;
		border-radius: 0;
		background: transparent;
	}

	.main-nav .sub-menu li {
		border-bottom: 0;
	}

	.main-nav .sub-menu a {
		display: flex;
		align-items: center;
		min-height: 42px;
		padding: 8px 0;
		border: 0;
		border-radius: 0;
		background: transparent;
		white-space: normal;
		color: var(--text);
		font-size: clamp(15px, 3.7vw, 18px);
		font-weight: 700;
		line-height: 1.18;
	}

	.main-nav .sub-menu .sub-menu a {
		min-height: 34px;
		padding: 6px 0;
		color: var(--muted);
		font-size: clamp(14px, 3.4vw, 16px);
		font-weight: 500;
	}

	.main-nav .sub-menu .submenu-toggle {
		width: 40px;
		min-height: 42px;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
	}

	.main-nav .sub-menu .submenu-toggle span {
		width: 10px;
		height: 10px;
	}

	.main-nav .sub-menu a:hover,
	.main-nav .sub-menu a:focus {
		background: transparent;
		color: var(--accent);
	}

	.site-header.is-open .header-actions {
		grid-column: 1 / -1;
		grid-row: 3;
		display: grid;
		gap: 12px;
		padding-top: 14px;
		border-top: 1px solid rgba(20, 22, 20, 0.14);
		background: #f0f0ed;
	}

	.site-header.is-open .header-contact {
		min-height: 0;
		padding: 0;
		font-size: 18px;
	}

	.site-header.is-open .header-cta {
		min-height: var(--button-height);
		border-radius: 0;
		box-shadow: none;
	}

	h1 {
		font-size: clamp(30px, 9vw, 48px);
	}

	.page-hero h1,
	.model-hero h1,
	.type-preview h1 {
		font-size: clamp(30px, 9vw, 48px);
	}

	.hero {
		min-height: 760px;
	}

	.hero__content {
		padding: 32px 20px;
	}

	.proof-grid,
	.model-grid,
	.gallery-grid,
	.contact-details,
	.task-grid,
	.news-grid,
	.section--dark,
	.section--split,
	.section--contacts,
	.page-hero,
	.model-hero,
	.catalog-card,
	.spec-table,
	.spec-list {
		grid-template-columns: 1fr;
	}

	.button {
		width: 100%;
		text-align: center;
	}

	.catalog-card {
		gap: 16px;
		padding: 14px 0;
	}

	.catalog-card img {
		aspect-ratio: 16 / 10;
		height: auto;
		max-height: none;
	}

	.page-hero__actions {
		justify-items: stretch;
	}

	.contact-card--wide {
		grid-column: auto;
	}
}

@media (max-width: 520px) {
	.site-header.is-open {
		gap: 12px;
	}

	.main-nav {
		padding-top: 12px;
	}

	.main-nav__list {
		gap: 0;
	}

	.main-nav li {
		gap: 0;
	}

	.main-nav .main-nav__list > li > a {
		min-height: 56px;
		padding: 10px 0;
		font-size: clamp(24px, 7.2vw, 30px);
	}

	.main-nav .sub-menu {
		gap: 0;
		padding: 2px 0 6px 14px;
	}

	.main-nav .sub-menu a {
		min-height: 40px;
		padding: 8px 0;
		font-size: 15px;
	}

	.submenu-toggle {
		width: 44px;
		min-height: 56px;
	}

	.main-nav .sub-menu .sub-menu a {
		font-size: 14px;
	}
}

@media (min-width: 783px) and (max-width: 1100px) {
	.admin-bar .site-header.is-open {
		top: 32px;
		min-height: calc(100dvh - 32px);
	}
}

@keyframes mobile-menu-reveal {
	from {
		clip-path: inset(0 0 calc(100% - 68px) 0);
	}

	to {
		clip-path: inset(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 1ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 1ms !important;
	}
}

.library-page {
	background: var(--bg);
}

.library-hero,
.library-section {
	padding: clamp(56px, 7vw, 112px) var(--content-pad);
}

.library-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(300px, 0.9fr);
	gap: clamp(28px, 6vw, 88px);
	align-items: end;
	min-height: 72vh;
	background: var(--surface-2);
}

.library-hero h1,
.library-section h2,
.hero-sample h3 {
	max-width: 1100px;
	text-transform: uppercase;
}

.library-hero h1 {
	font-size: clamp(36px, 5vw, 72px);
}

.library-section--surface,
.library-section--dark {
	width: 100%;
	max-width: none;
	margin-inline: 0;
}

.library-section--surface {
	background: var(--surface);
}

.library-section--dark {
	background: #141414;
	color: #fff;
}

.library-section--dark .kicker,
.library-section--dark a,
.library-section--dark p {
	color: rgba(255, 255, 255, 0.74);
}

.library-section--dark h2,
.library-section--dark h3,
.library-section--dark strong {
	color: #fff;
}

.library-section__head {
	display: grid;
	grid-template-columns: minmax(0, 0.45fr) minmax(0, 1fr);
	gap: clamp(24px, 5vw, 72px);
	align-items: end;
	margin-bottom: 34px;
}

.reference-grid,
.token-grid,
.hero-variants,
.model-showcase,
.cta-variants {
	display: grid;
	gap: 16px;
}

.reference-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.reference-grid article,
.token-grid article,
.editorial-news article,
.cta-compact,
.cta-inline {
	padding: 22px 0;
	border-top: 1px solid var(--line);
}

.reference-grid span,
.number-list span {
	display: inline-block;
	margin-bottom: 22px;
	color: var(--accent);
	font-family: "Russo One", "Onest", Arial, sans-serif;
}

.token-grid {
	grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.9fr) minmax(0, 0.9fr);
}

.swatch-row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.swatch-row span {
	display: grid;
	min-height: 88px;
	padding: 12px;
	align-content: end;
	border: 1px solid var(--line);
	background: var(--swatch);
	color: #fff;
	font-size: 13px;
	font-weight: 800;
}

.swatch-row span:nth-child(2),
.swatch-row span:nth-child(4) {
	color: var(--text);
}

.token-title {
	margin: 0 0 14px;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: 30px;
	text-transform: uppercase;
}

.hero-variants {
	grid-template-columns: 1fr;
}

.hero-sample {
	position: relative;
	overflow: hidden;
	min-height: 520px;
	background: var(--surface);
}

.hero-sample--photo {
	display: grid;
	align-items: end;
	padding: clamp(28px, 5vw, 72px);
	color: #fff;
}

.hero-sample--photo img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero-sample--photo::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.6);
}

.hero-sample--photo > div {
	position: relative;
	z-index: 1;
	max-width: 900px;
}

.hero-sample--photo p,
.hero-sample--photo .kicker {
	color: rgba(255, 255, 255, 0.8);
}

.hero-sample--split {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
	background: var(--surface);
}

.hero-sample--split > div {
	display: grid;
	align-content: center;
	padding: clamp(28px, 5vw, 72px);
}

.hero-sample--split img {
	width: 100%;
	height: 100%;
	min-height: 520px;
	object-fit: cover;
}

.hero-sample ul {
	display: grid;
	gap: 12px;
	padding: 0;
	margin: 24px 0 0;
	list-style: none;
}

.hero-sample li {
	padding-top: 12px;
	border-top: 1px solid var(--line);
	font-weight: 800;
}

.hero-sample--dark {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 0.7fr);
	gap: 40px;
	align-items: end;
	padding: clamp(28px, 5vw, 72px);
	background: #141414;
	color: #fff;
}

.hero-sample--dark p,
.hero-sample--dark .kicker {
	color: rgba(255, 255, 255, 0.72);
}

.library-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 28px;
}

.library-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 20px;
	background: #fff;
	color: var(--text);
	font-weight: 800;
}

.library-actions a + a {
	background: var(--accent);
	color: #fff;
}

.metric-wall {
	display: grid;
	border-top: 1px solid rgba(255, 255, 255, 0.22);
}

.metric-wall span {
	display: grid;
	gap: 4px;
	padding: 22px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.22);
	color: rgba(255, 255, 255, 0.62);
}

.metric-wall strong {
	display: block;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: 34px;
	text-transform: uppercase;
}

.model-showcase {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.model-showcase article {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr);
	border-top: 1px solid var(--line);
	background: var(--bg);
}

.model-showcase img {
	width: 100%;
	height: 100%;
	min-height: 360px;
	object-fit: cover;
}

.model-showcase article > div {
	display: grid;
	align-content: end;
	padding: 24px;
}

.spec-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 20px;
}

.spec-pills span {
	padding: 8px 10px;
	border: 1px solid var(--line);
	font-size: 13px;
	font-weight: 800;
}

.production-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
	gap: clamp(28px, 5vw, 72px);
	align-items: end;
}

.production-layout img {
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

.number-list {
	display: grid;
	margin-top: 32px;
	border-top: 1px solid var(--line);
}

.number-list p {
	display: grid;
	grid-template-columns: 64px 1fr;
	gap: 18px;
	margin: 0;
	padding: 18px 0;
	border-bottom: 1px solid var(--line);
	font-weight: 800;
}

.route-board {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: clamp(28px, 5vw, 72px);
}

.route-list {
	display: grid;
	border-top: 1px solid rgba(255, 255, 255, 0.24);
}

.route-list a {
	display: grid;
	grid-template-columns: minmax(120px, 0.4fr) minmax(0, 1fr);
	gap: 18px;
	padding: 20px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.24);
}

.route-list strong {
	font-size: 22px;
}

.editorial-news {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr) minmax(0, 0.8fr);
	gap: 16px;
}

.editorial-news article:first-child {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr);
	gap: 22px;
}

.editorial-news img {
	width: 100%;
	height: 100%;
	min-height: 260px;
	object-fit: cover;
}

.editorial-news time {
	display: block;
	margin-bottom: 14px;
	color: var(--accent);
	font-weight: 800;
}

.cta-variants {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: start;
}

.cta-inline {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 24px;
	align-items: center;
	padding: 28px;
	background: #141414;
	color: #fff;
}

.cta-inline p {
	color: rgba(255, 255, 255, 0.74);
}

@media (max-width: 1020px) {
	.library-hero,
	.library-section__head,
	.hero-sample--split,
	.hero-sample--dark,
	.production-layout,
	.route-board,
	.cta-variants,
	.cta-inline {
		grid-template-columns: 1fr;
	}

	.reference-grid,
	.token-grid,
	.model-showcase,
	.editorial-news {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.model-showcase article,
	.editorial-news article:first-child {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 720px) {
	.reference-grid,
	.token-grid,
	.model-showcase,
	.editorial-news,
	.swatch-row {
		grid-template-columns: 1fr;
	}

	.library-hero {
		min-height: auto;
	}

	.hero-sample {
		min-height: auto;
	}

	.hero-sample--photo {
		min-height: 620px;
	}

	.hero-sample--split img,
	.model-showcase img,
	.editorial-news img {
		min-height: 260px;
	}

	.route-list a,
	.number-list p {
		grid-template-columns: 1fr;
	}
}

.ref-page {
	background: var(--bg);
}

.ref-page--premium {
	background: #141414;
	color: #fff;
}

.ref-hero,
.ref-block {
	padding: clamp(56px, 7vw, 112px) var(--content-pad);
}

.ref-hero {
	display: grid;
	gap: clamp(28px, 5vw, 72px);
	min-height: 74vh;
	align-items: end;
}

.ref-hero h1,
.ref-block h2 {
	max-width: 1080px;
	text-transform: uppercase;
}

.ref-hero h1 {
	font-size: clamp(32px, 5vw, 72px);
}

.ref-hero--service {
	position: relative;
	overflow: hidden;
	color: #fff;
}

.ref-hero--service img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ref-hero--service::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.62);
}

.ref-hero--service > div {
	position: relative;
	z-index: 1;
	max-width: 1040px;
}

.ref-hero--service p,
.ref-hero--service .kicker {
	color: rgba(255, 255, 255, 0.76);
}

.ref-hero--catalog {
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
	background: var(--surface);
}

.ref-hero--catalog > div {
	display: grid;
	align-content: end;
	justify-items: start;
}

.ref-hero--catalog img {
	width: 100%;
	height: 100%;
	min-height: 620px;
	object-fit: cover;
}

.ref-hero--route {
	grid-template-columns: minmax(0, 1fr) minmax(320px, 460px);
	background: #141414;
	color: #fff;
}

.ref-hero--route p,
.ref-hero--route .kicker,
.ref-hero--premium p,
.ref-hero--premium .kicker {
	color: rgba(255, 255, 255, 0.74);
}

.ref-hero--premium {
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	background: #141414;
	color: #fff;
}

.ref-premium-media img {
	width: 100%;
	aspect-ratio: 16 / 11;
	object-fit: cover;
}

.ref-hero__badges,
.ref-spec-strip,
.ref-tag-cloud {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 28px;
}

.ref-hero__badges span,
.ref-spec-strip span,
.ref-tag-cloud span {
	padding: 9px 12px;
	border: 1px solid currentColor;
	font-size: 13px;
	font-weight: 800;
}

.ref-two {
	display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
	gap: clamp(28px, 6vw, 88px);
}

.ref-grid,
.ref-risk-grid,
.ref-product-grid,
.ref-process,
.ref-benefit-list,
.ref-review-grid,
.ref-premium-services,
.ref-insight-list,
.ref-region-list,
.ref-team-row {
	display: grid;
	gap: 16px;
}

.ref-grid,
.ref-risk-grid,
.ref-process,
.ref-premium-services,
.ref-region-list {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ref-product-grid,
.ref-benefit-list {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ref-review-grid,
.ref-insight-list,
.ref-team-row {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ref-block--dark {
	background: #141414;
	color: #fff;
}

.ref-block--surface {
	background: var(--surface);
}

.ref-block--dark p,
.ref-block--dark .kicker,
.ref-page--premium p,
.ref-page--premium .kicker {
	color: rgba(255, 255, 255, 0.72);
}

.ref-block__head {
	display: grid;
	grid-template-columns: minmax(0, 0.45fr) minmax(0, 1fr);
	gap: clamp(24px, 5vw, 72px);
	align-items: end;
	margin-bottom: 32px;
}

.ref-grid article,
.ref-risk-grid article,
.ref-service-list article,
.ref-results p,
.ref-case-grid article,
.ref-product-grid article,
.ref-benefit-list article,
.ref-review-grid article,
.ref-process article,
.ref-premium-services article,
.ref-insight-list article,
.ref-region-list article,
.ref-team-row article {
	padding-top: 20px;
	border-top: 1px solid var(--line);
}

.ref-block--dark article,
.ref-block--dark .ref-results p,
.ref-page--premium article {
	border-color: rgba(255, 255, 255, 0.24);
}

.ref-number,
.ref-risk-grid span,
.ref-process span,
.ref-benefit-list span,
.ref-results span {
	display: block;
	margin-bottom: 18px;
	color: var(--accent);
	font-family: "Russo One", "Onest", Arial, sans-serif;
}

.ref-service-list,
.ref-results,
.ref-metrics,
.ref-accordion-list {
	display: grid;
	gap: 14px;
}

.ref-service-list article {
	display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr) auto;
	gap: 18px;
	align-items: start;
}

.ref-service-list a {
	color: var(--accent);
	font-weight: 800;
}

.ref-results {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ref-results p {
	margin: 0;
	font-size: 20px;
	font-weight: 800;
}

.ref-quote {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 0.75fr);
	gap: clamp(28px, 5vw, 72px);
	background: var(--surface);
}

.ref-quote ul {
	display: grid;
	gap: 14px;
	padding: 0;
	margin: 0;
	list-style: none;
}

.ref-quote li {
	padding: 14px 0;
	border-top: 1px solid var(--line);
	font-weight: 800;
}

.ref-metrics {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ref-metrics span,
.ref-premium-metrics span {
	display: grid;
	gap: 6px;
	padding-top: 18px;
	border-top: 1px solid var(--line);
	color: var(--muted);
}

.ref-metrics strong,
.ref-premium-metrics strong {
	color: var(--text);
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(34px, 4vw, 62px);
}

.ref-case-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.ref-case-grid--three {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ref-case-grid img,
.ref-product-grid img,
.ref-feature-product img,
.ref-route-map img,
.ref-team-row img,
.ref-premium-case img {
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	margin-bottom: 18px;
}

.ref-product-grid article {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr);
	gap: 20px;
}

.ref-feature-product,
.ref-route-map,
.ref-premium-case {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
	gap: clamp(28px, 5vw, 72px);
	align-items: end;
}

.ref-feature-product img,
.ref-route-map img,
.ref-premium-case img {
	margin-bottom: 0;
}

.ref-accordion-list details {
	padding: 20px 0;
	border-top: 1px solid var(--line);
}

.ref-accordion-list summary {
	cursor: pointer;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: 24px;
	text-transform: uppercase;
}

.ref-route-form {
	display: grid;
	gap: 12px;
	padding: 22px;
	background: #fff;
}

.ref-route-form input,
.ref-route-form button {
	width: 100%;
	min-height: 48px;
	border: 1px solid var(--line);
	border-radius: 0;
	padding: 0 14px;
	font: inherit;
}

.ref-route-form button {
	border: 0;
	background: var(--accent);
	color: #fff;
	font-weight: 800;
}

.ref-route-form button:hover {
	background: var(--accent);
	color: #fff;
}

.ref-premium-metrics {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 16px;
}

.ref-block--dark .ref-premium-metrics span,
.ref-page--premium .ref-premium-metrics span {
	border-color: rgba(255, 255, 255, 0.24);
	color: rgba(255, 255, 255, 0.68);
}

.ref-block--dark .ref-premium-metrics strong,
.ref-page--premium .ref-premium-metrics strong {
	color: #fff;
}

.ref-region-panel {
	background: var(--surface);
}

@media (max-width: 1020px) {
	.ref-hero--catalog,
	.ref-hero--route,
	.ref-hero--premium,
	.ref-two,
	.ref-quote,
	.ref-feature-product,
	.ref-route-map,
	.ref-premium-case,
	.ref-block__head,
	.ref-service-list article,
	.ref-product-grid article {
		grid-template-columns: 1fr;
	}

	.ref-grid,
	.ref-risk-grid,
	.ref-process,
	.ref-premium-services,
	.ref-region-list,
	.ref-results,
	.ref-premium-metrics,
	.ref-case-grid,
	.ref-case-grid--three,
	.ref-product-grid,
	.ref-benefit-list,
	.ref-review-grid,
	.ref-insight-list,
	.ref-team-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 720px) {
	.ref-grid,
	.ref-risk-grid,
	.ref-process,
	.ref-premium-services,
	.ref-region-list,
	.ref-results,
	.ref-premium-metrics,
	.ref-case-grid,
	.ref-case-grid--three,
	.ref-product-grid,
	.ref-benefit-list,
	.ref-review-grid,
	.ref-insight-list,
	.ref-team-row,
	.ref-metrics {
		grid-template-columns: 1fr;
	}

	.ref-hero {
		min-height: auto;
	}

	.ref-hero--catalog img {
		min-height: 320px;
	}
}

.copy-site {
	--copy-bg: #f4f4f1;
	--copy-panel: #ffffff;
	--copy-ink: #141414;
	--copy-muted: rgba(20, 20, 20, 0.64);
	--copy-line: rgba(20, 20, 20, 0.16);
	--copy-accent: #e26419;
	--copy-radius: 0;
	--copy-section-y: clamp(58px, 7vw, 118px);
	margin: 0;
	background: var(--copy-bg);
	color: var(--copy-ink);
	font-family: "Onest", Arial, sans-serif;
}

.copy-site--vershina {
	--copy-bg: #f4f7f4;
	--copy-panel: #ffffff;
	--copy-ink: #0e191d;
	--copy-muted: rgba(14, 25, 29, 0.68);
	--copy-line: rgba(14, 25, 29, 0.16);
	--copy-accent: #87bdd8;
	--copy-accent-2: #c7d2e9;
	--copy-radius: 5px;
}

.copy-site--modul {
	--copy-bg: #ffffff;
	--copy-panel: #efefef;
	--copy-ink: #000000;
	--copy-muted: rgba(0, 0, 0, 0.62);
	--copy-line: rgba(0, 0, 0, 0.14);
	--copy-accent: #3b3b3b;
	--copy-radius: 0;
}

.copy-site--path {
	--copy-bg: #f5f0f0;
	--copy-panel: #ffffff;
	--copy-ink: #161616;
	--copy-muted: rgba(22, 22, 22, 0.64);
	--copy-line: rgba(22, 22, 22, 0.18);
	--copy-accent: #cb0000;
	--copy-radius: 300px;
}

.copy-site--fd {
	--copy-bg: #141414;
	--copy-panel: #1d1d1d;
	--copy-ink: #ffffff;
	--copy-muted: rgba(255, 255, 255, 0.68);
	--copy-line: rgba(255, 255, 255, 0.18);
	--copy-accent: #d9b56f;
	--copy-radius: 0;
}

.copy-site h1,
.copy-site h2,
.copy-site h3,
.copy-site p {
	margin-top: 0;
}

.copy-site h1,
.copy-site h2 {
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-weight: 400;
	line-height: 0.98;
	text-transform: uppercase;
}

.copy-site h1 {
	max-width: 1140px;
	font-size: clamp(42px, 7vw, 108px);
}

.copy-site h2 {
	max-width: 980px;
	font-size: clamp(32px, 5vw, 76px);
}

.copy-site h3 {
	font-size: clamp(20px, 2vw, 30px);
	line-height: 1.08;
}

.copy-site p {
	color: var(--copy-muted);
	line-height: 1.52;
}

.copy-nav {
	position: sticky;
	top: 0;
	z-index: 20;
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 24px;
	align-items: center;
	min-height: 72px;
	padding: 14px var(--content-pad);
	background: color-mix(in srgb, var(--copy-bg) 92%, transparent);
	border-bottom: 1px solid var(--copy-line);
	backdrop-filter: blur(16px);
}

.copy-nav--glass {
	position: fixed;
	left: 0;
	right: 0;
	background: rgba(14, 25, 29, 0.28);
	color: #fff;
	border-bottom-color: rgba(255, 255, 255, 0.18);
}

.copy-nav--dark,
.copy-nav--premium {
	background: #141414;
	color: #fff;
	border-bottom-color: rgba(255, 255, 255, 0.18);
}

.copy-logo {
	font-family: "Russo One", "Onest", Arial, sans-serif;
	text-transform: uppercase;
}

.copy-nav nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 18px;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
}

.copy-button,
.copy-form button,
.copy-route-form button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 20px;
	border: 0;
	border-radius: var(--copy-radius);
	background: var(--copy-accent);
	color: #fff;
	font: inherit;
	font-weight: 800;
	text-transform: uppercase;
}

.copy-site--vershina .copy-button {
	color: #fff;
	background: #87bdd8;
	border-radius: 3px;
}

.copy-site--modul .copy-button {
	background: #3b3b3b;
	border-radius: 0;
}

.copy-site--path .copy-button,
.copy-site--path .copy-form button {
	background: #cb0000;
	border-radius: 300px;
}

.copy-button:hover,
.copy-form button:hover,
.copy-route-form button:hover {
	background: var(--accent);
	color: #fff;
}

.copy-link {
	color: var(--copy-accent);
	font-weight: 800;
}

.copy-eyebrow {
	margin-bottom: 14px;
	color: var(--copy-accent) !important;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
}

.copy-section,
.copy-hero {
	padding: var(--copy-section-y) var(--content-pad);
}

.copy-hero {
	position: relative;
	display: grid;
	gap: clamp(28px, 5vw, 76px);
	min-height: 100vh;
	align-items: end;
	overflow: hidden;
}

.copy-hero--image {
	color: #fff;
}

.copy-hero--image > img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.copy-hero--image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.6);
}

.copy-hero__content {
	position: relative;
	z-index: 1;
	max-width: 1120px;
}

.copy-hero--image p,
.copy-hero--path p,
.copy-hero--fd p {
	color: rgba(255, 255, 255, 0.76);
}

.copy-badge-row,
.copy-tags,
.copy-actions,
.copy-product-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.copy-badge-row {
	margin-bottom: 34px;
}

.copy-badge-row span,
.copy-tags span,
.copy-product-stats span {
	padding: 9px 12px;
	border: 1px solid currentColor;
	border-radius: var(--copy-radius);
	font-size: 13px;
	font-weight: 800;
}

.copy-actions {
	margin-top: 30px;
	align-items: center;
}

.copy-lead {
	font-size: clamp(20px, 2.2vw, 30px);
	font-weight: 800;
	color: var(--copy-ink) !important;
}

.copy-split,
.copy-final {
	display: grid;
	grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
	gap: clamp(28px, 6vw, 90px);
	align-items: start;
}

.copy-section__head {
	display: grid;
	grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
	gap: clamp(24px, 5vw, 74px);
	margin-bottom: 36px;
}

.copy-card-strip,
.copy-service-grid,
.copy-result-wheel,
.copy-step-ladder,
.copy-case-row,
.copy-product-grid,
.copy-benefit-grid,
.copy-review-band,
.copy-risk-cards,
.copy-control-list,
.copy-case-log,
.copy-fd-metrics,
.copy-fd-services,
.copy-fd-insights,
.copy-region-list,
.copy-fd-team {
	display: grid;
	gap: 16px;
}

.copy-card-strip,
.copy-step-ladder,
.copy-risk-cards,
.copy-fd-services,
.copy-fd-insights,
.copy-region-list {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.copy-service-grid,
.copy-case-row,
.copy-product-grid,
.copy-benefit-grid,
.copy-fd-team {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.copy-result-wheel,
.copy-control-list,
.copy-case-log,
.copy-review-band {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.copy-card-strip article,
.copy-service-grid article,
.copy-result-wheel p,
.copy-step-ladder article,
.copy-product-grid article,
.copy-benefit-grid article,
.copy-risk-cards article,
.copy-control-list article,
.copy-case-log article,
.copy-fd-services article,
.copy-fd-insights article,
.copy-region-list article,
.copy-fd-team article {
	padding: 22px 0 0;
	border-top: 1px solid var(--copy-line);
}

.copy-section--blue,
.copy-section--black,
.copy-section--premium {
	background: var(--copy-ink);
	color: #fff;
}

.copy-section--blue p,
.copy-section--black p,
.copy-section--premium p {
	color: rgba(255, 255, 255, 0.7);
}

.copy-section--pale {
	background: color-mix(in srgb, var(--copy-accent-2, var(--copy-accent)) 22%, #fff);
}

.copy-section--gray {
	background: #efefef;
}

.copy-check-list {
	display: grid;
	border-top: 1px solid var(--copy-line);
}

.copy-check-list p {
	margin: 0;
	padding: 18px 0;
	border-bottom: 1px solid var(--copy-line);
	color: var(--copy-ink);
	font-weight: 800;
}

.copy-result-wheel p {
	margin: 0;
	color: var(--copy-ink);
	font-size: 20px;
	font-weight: 800;
}

.copy-result-wheel span,
.copy-step-ladder span,
.copy-benefit-grid span,
.copy-risk-cards span,
.copy-control-list span {
	display: block;
	margin-bottom: 18px;
	color: var(--copy-accent);
	font-family: "Russo One", "Onest", Arial, sans-serif;
}

.copy-case-row img,
.copy-product-grid img,
.copy-product-feature img,
.copy-route-panel img,
.copy-fd-team img,
.copy-hero--modul img,
.copy-hero--fd img {
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	margin-bottom: 18px;
}

.copy-form {
	display: grid;
	gap: 12px;
	padding: 22px;
	border-radius: var(--copy-radius);
	background: var(--copy-panel);
}

.copy-form input,
.copy-form textarea {
	width: 100%;
	border: 1px solid var(--copy-line);
	border-radius: var(--copy-radius);
	padding: 14px;
	background: #fff;
	color: #141414;
	font: inherit;
	resize: vertical;
}

.copy-site--path .copy-form,
.copy-form--red {
	background: #1a1a1a;
}

.copy-form--red input,
.copy-form--red textarea {
	border-color: rgba(255, 255, 255, 0.2);
	background: #fff;
}

.copy-hero--modul {
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	min-height: calc(100vh - 72px);
	background: #fff;
}

.copy-hero--modul img {
	height: 100%;
	min-height: 620px;
	margin: 0;
}

.copy-catalog-link {
	display: inline-block;
	margin-bottom: 26px;
	color: var(--copy-accent);
	font-weight: 800;
}

.copy-about-line {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 28px;
	align-items: end;
}

.copy-about-line p {
	max-width: 920px;
	color: #000;
	font-size: clamp(24px, 3vw, 42px);
	line-height: 1.16;
}

.copy-category-row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 28px;
}

.copy-category-row button {
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid var(--copy-line);
	background: transparent;
	font: inherit;
}

.copy-product-feature {
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr);
	gap: clamp(28px, 5vw, 72px);
	align-items: end;
	margin-bottom: 32px;
}

.copy-product-feature img {
	margin: 0;
}

.copy-product-stats {
	margin: 24px 0;
}

.copy-accordion {
	display: grid;
	border-top: 1px solid var(--copy-line);
}

.copy-accordion details {
	padding: 22px 0;
	border-bottom: 1px solid var(--copy-line);
}

.copy-accordion summary {
	cursor: pointer;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(22px, 3vw, 42px);
	text-transform: uppercase;
}

.copy-review-band strong,
.copy-fd-metrics strong {
	display: block;
	color: var(--copy-ink);
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(32px, 4.2vw, 60px);
}

.copy-hero--path {
	grid-template-columns: minmax(0, 1fr) minmax(320px, 520px);
	background: #141414;
	color: #fff;
}

.copy-section--black {
	background: #141414;
}

.copy-route-panel {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
	gap: clamp(28px, 5vw, 72px);
	align-items: end;
}

.copy-route-panel img {
	margin: 0;
}

.copy-final--red {
	background: #cb0000;
	color: #fff;
}

.copy-final--red p,
.copy-final--premium p {
	color: rgba(255, 255, 255, 0.78);
}

.copy-hero--fd {
	grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
	background: #141414;
	color: #fff;
}

.copy-hero--fd img {
	height: 100%;
	min-height: 620px;
	margin: 0;
}

.copy-fd-metrics {
	grid-template-columns: repeat(5, minmax(0, 1fr));
	background: #141414;
	border-top: 1px solid var(--copy-line);
}

.copy-fd-metrics div {
	padding-top: 20px;
	border-top: 1px solid var(--copy-line);
}

.copy-fd-metrics strong {
	color: #fff;
}

.copy-fd-metrics span {
	color: var(--copy-muted);
}

.copy-section--premium,
.copy-final--premium {
	background: #101010;
	color: #fff;
}

.copy-fd-regions {
	background: #1d1d1d;
}

@media (max-width: 1020px) {
	.copy-nav {
		grid-template-columns: 1fr;
	}

	.copy-nav nav {
		justify-content: flex-start;
	}

	.copy-split,
	.copy-final,
	.copy-section__head,
	.copy-hero--modul,
	.copy-product-feature,
	.copy-route-panel,
	.copy-hero--path,
	.copy-hero--fd,
	.copy-about-line {
		grid-template-columns: 1fr;
	}

	.copy-card-strip,
	.copy-step-ladder,
	.copy-risk-cards,
	.copy-fd-services,
	.copy-fd-insights,
	.copy-region-list,
	.copy-fd-metrics {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 720px) {
	.copy-card-strip,
	.copy-step-ladder,
	.copy-risk-cards,
	.copy-fd-services,
	.copy-fd-insights,
	.copy-region-list,
	.copy-fd-metrics,
	.copy-service-grid,
	.copy-case-row,
	.copy-product-grid,
	.copy-benefit-grid,
	.copy-result-wheel,
	.copy-control-list,
	.copy-case-log,
	.copy-review-band,
	.copy-fd-team {
		grid-template-columns: 1fr;
	}

	.copy-hero {
		min-height: auto;
	}

	.copy-hero--image {
		min-height: 760px;
	}

	.copy-site h1 {
		font-size: clamp(30px, 9vw, 48px);
	}

	.copy-site h2 {
		font-size: clamp(26px, 8vw, 42px);
	}

	.copy-hero--modul img,
	.copy-hero--fd img {
		min-height: 320px;
	}
}

/* Impeccable experiment */

.uiux-page {
	--uiux-ink: #111111;
	--uiux-muted: #4b4b4b;
	--uiux-bg: #f2f3f0;
	--uiux-panel: #ffffff;
	--uiux-line: #c8cbc4;
	--uiux-dark: #111417;
	--uiux-orange: #e26419;
	--uiux-ice: #dce6e5;
	--uiux-density: 1;
	background: var(--uiux-bg);
	color: var(--uiux-ink);
}

.uiux-main {
	overflow: clip;
}

.uiux-page h1,
.uiux-page h2,
.uiux-page h3 {
	margin: 0;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-weight: 400;
	letter-spacing: 0;
	text-wrap: balance;
}

.uiux-page p {
	text-wrap: pretty;
}

.uiux-hero {
	position: relative;
	display: grid;
	gap: calc(var(--uiux-density) * clamp(24px, 4vw, 64px));
	min-height: calc(100svh - 64px);
	padding: clamp(24px, 4vw, 56px) var(--content-pad) clamp(40px, 6vw, 96px);
	background: var(--uiux-bg);
}

.uiux-hero__top {
	display: flex;
	justify-content: space-between;
	gap: 24px;
	border-bottom: 1px solid var(--uiux-line);
	padding-bottom: 14px;
	color: var(--uiux-muted);
	font-size: 14px;
}

.uiux-hero__top p,
.uiux-hero__panel p,
.uiux-section__head p,
.uiux-picker__intro p,
.uiux-model-showcase__content > p:first-child,
.uiux-route__sticky p,
.uiux-factory__text > p:first-child,
.uiux-request__text > p:first-child {
	margin: 0;
}

.uiux-hero__title h1 {
	display: grid;
	max-width: 1220px;
	color: var(--uiux-ink);
	font-size: clamp(36px, 6vw, 76px);
	line-height: 0.94;
}

.uiux-hero__title span:nth-child(2),
.uiux-hero__title span:nth-child(4) {
	margin-left: clamp(0px, 14vw, 220px);
}

.uiux-hero__media {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
	gap: clamp(20px, 3vw, 48px);
	align-items: stretch;
}

.uiux-hero__media img {
	width: 100%;
	height: clamp(360px, 42vw, 620px);
	object-fit: cover;
}

.uiux-hero__panel {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 32px;
	padding: clamp(24px, 4vw, 52px);
	background: var(--uiux-dark);
	color: #fff;
}

.uiux-hero__panel p {
	max-width: 34rem;
	color: rgba(255, 255, 255, 0.84);
	font-size: clamp(18px, 2vw, 28px);
	line-height: 1.32;
}

.uiux-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.uiux-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 0 20px;
	border: 1px solid currentColor;
	background: transparent;
	color: inherit;
	font-weight: 800;
	text-align: center;
	transition: transform var(--fast), background-color var(--fast), color var(--fast), border-color var(--fast);
}

.uiux-button:hover {
	border-color: var(--uiux-orange);
	background: var(--uiux-orange);
	color: #fff;
	transform: translateY(-2px);
}

.uiux-button--primary {
	border-color: var(--uiux-orange);
	background: var(--uiux-orange);
	color: #fff;
}

.uiux-button--primary:hover {
	background: var(--uiux-orange);
	border-color: var(--uiux-orange);
	color: #fff;
}

.uiux-button--ghost {
	color: #fff;
}

.uiux-hero__facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-top: 1px solid var(--uiux-line);
	border-bottom: 1px solid var(--uiux-line);
}

.uiux-hero__facts div {
	display: grid;
	align-content: start;
	gap: 8px;
	min-height: 148px;
	padding: clamp(18px, 3vw, 32px);
	border-right: 1px solid var(--uiux-line);
}

.uiux-hero__facts div:last-child {
	border-right: 0;
}

.uiux-hero__facts strong {
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(26px, 3.4vw, 48px);
	font-weight: 400;
	line-height: 0.95;
}

.uiux-hero__facts span {
	max-width: 18rem;
	color: var(--uiux-muted);
	line-height: 1.45;
}

.uiux-side-badge {
	position: fixed;
	right: 0;
	top: 50%;
	z-index: 9;
	display: inline-flex;
	align-items: center;
	min-height: 170px;
	padding: 18px 10px;
	background: var(--uiux-orange);
	color: #fff;
	font-size: 13px;
	font-weight: 900;
	writing-mode: vertical-rl;
	text-transform: lowercase;
	transform: translateY(-50%) rotate(180deg);
}

.uiux-section {
	padding: clamp(56px, 8vw, 128px) var(--content-pad);
}

.uiux-section__head {
	display: grid;
	grid-template-columns: minmax(160px, 0.28fr) minmax(0, 0.72fr);
	gap: clamp(24px, 4vw, 72px);
	align-items: end;
	margin-bottom: clamp(28px, 5vw, 72px);
}

.uiux-section__head p,
.uiux-picker__intro p,
.uiux-model-showcase__content > p:first-child,
.uiux-route__sticky p,
.uiux-factory__text > p:first-child,
.uiux-request__text > p:first-child {
	color: var(--uiux-orange);
	font-weight: 900;
}

.uiux-section h2 {
	max-width: 980px;
	font-size: clamp(32px, 4.8vw, 70px);
	line-height: 0.98;
}

.uiux-command {
	background: var(--uiux-dark);
	color: #fff;
}

.uiux-command .uiux-section__head p,
.uiux-command article span {
	color: #ff955f;
}

.uiux-command__grid {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	border-top: 1px solid rgba(255, 255, 255, 0.22);
}

.uiux-command__grid article {
	display: grid;
	grid-template-columns: minmax(118px, 0.28fr) minmax(0, 0.72fr);
	gap: 20px;
	padding: clamp(22px, 4vw, 48px) 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.22);
}

.uiux-command__grid article:nth-child(odd) {
	padding-right: clamp(18px, 3vw, 42px);
	border-right: 1px solid rgba(255, 255, 255, 0.22);
}

.uiux-command__grid article:nth-child(even) {
	padding-left: clamp(18px, 3vw, 42px);
}

.uiux-command__grid span {
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(16px, 1.5vw, 22px);
	line-height: 1.08;
}

.uiux-command__grid h3 {
	font-size: clamp(22px, 3vw, 42px);
	line-height: 1;
}

.uiux-command__grid p {
	grid-column: 2;
	max-width: 36rem;
	margin: 0;
	color: rgba(255, 255, 255, 0.74);
	line-height: 1.55;
}

.uiux-picker {
	display: grid;
	grid-template-columns: minmax(0, 0.48fr) minmax(0, 0.52fr);
	gap: clamp(28px, 5vw, 80px);
	background: var(--uiux-ice);
}

.uiux-picker__intro {
	position: sticky;
	top: 96px;
	align-self: start;
	display: grid;
	gap: 22px;
}

.uiux-picker__rail {
	display: grid;
	gap: 0;
	border-top: 1px solid rgba(17, 17, 17, 0.24);
}

.uiux-picker__rail a {
	display: grid;
	gap: 12px;
	padding: clamp(22px, 4vw, 42px) 0;
	border-bottom: 1px solid rgba(17, 17, 17, 0.24);
}

.uiux-picker__rail a:hover {
	color: var(--uiux-orange);
}

.uiux-picker__rail span,
.uiux-picker__rail small {
	color: var(--uiux-muted);
	font-size: 15px;
}

.uiux-picker__rail strong {
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(28px, 5vw, 68px);
	font-weight: 400;
	line-height: 0.98;
}

.uiux-model-showcase {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
	gap: clamp(28px, 5vw, 84px);
	align-items: center;
	background: var(--uiux-panel);
}

.uiux-model-showcase__image img {
	width: 100%;
	height: clamp(360px, 44vw, 660px);
	object-fit: cover;
}

.uiux-model-showcase__content {
	display: grid;
	gap: clamp(18px, 3vw, 32px);
}

.uiux-model-showcase__content p {
	max-width: 42rem;
	margin: 0;
	color: var(--uiux-muted);
	font-size: 18px;
	line-height: 1.55;
}

.uiux-spec-line {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.uiux-spec-line span,
.uiux-request__checks span {
	display: inline-flex;
	min-height: 38px;
	align-items: center;
	border: 1px solid var(--uiux-line);
	padding: 0 12px;
	color: var(--uiux-ink);
	font-weight: 800;
}

.uiux-route {
	display: grid;
	grid-template-columns: minmax(260px, 0.38fr) minmax(0, 0.62fr);
	gap: clamp(28px, 5vw, 90px);
	background: var(--uiux-dark);
	color: #fff;
}

.uiux-route__sticky {
	position: sticky;
	top: 96px;
	align-self: start;
	display: grid;
	gap: 22px;
}

.uiux-route__sticky p {
	color: #ff955f;
}

.uiux-route__list {
	display: grid;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.uiux-route__list div {
	display: grid;
	grid-template-columns: minmax(420px, 0.48fr) minmax(0, 0.52fr);
	gap: 20px;
	padding: clamp(20px, 3vw, 36px) 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.uiux-route__list strong {
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(22px, 3.4vw, 48px);
	font-weight: 400;
	line-height: 1;
}

.uiux-route__list span {
	max-width: 34rem;
	color: rgba(255, 255, 255, 0.74);
	line-height: 1.55;
}

.uiux-factory {
	display: grid;
	grid-template-columns: minmax(260px, 0.36fr) minmax(0, 0.64fr);
	gap: clamp(28px, 5vw, 80px);
	align-items: end;
}

.uiux-factory__text {
	display: grid;
	gap: 20px;
}

.uiux-factory__text p:not(:first-child) {
	max-width: 34rem;
	margin: 0;
	color: var(--uiux-muted);
	font-size: 18px;
	line-height: 1.55;
}

.uiux-link {
	color: var(--uiux-orange);
	font-weight: 900;
}

.uiux-factory__gallery {
	display: grid;
	grid-template-columns: 1.15fr 0.85fr;
	grid-template-areas:
		"large top"
		"large bottom";
	gap: 12px;
}

.uiux-factory__gallery img {
	width: 100%;
	height: 100%;
	min-height: 210px;
	object-fit: cover;
}

.uiux-factory__gallery img:first-child {
	grid-area: large;
	min-height: 540px;
}

.uiux-news {
	background: #fff;
}

.uiux-news__grid {
	display: grid;
	grid-template-columns: 1.15fr 0.85fr 0.85fr;
	gap: 12px;
}

.uiux-news__grid a {
	display: grid;
	grid-template-rows: auto auto 1fr;
	gap: 14px;
	min-height: 100%;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--uiux-line);
}

.uiux-news__grid a:hover {
	color: var(--uiux-orange);
}

.uiux-news__grid img {
	width: 100%;
	height: clamp(220px, 28vw, 420px);
	object-fit: cover;
}

.uiux-news__grid a:first-child img {
	height: clamp(280px, 36vw, 560px);
}

.uiux-news__grid span {
	color: var(--uiux-muted);
	font-size: 14px;
}

.uiux-news__grid strong {
	max-width: 30rem;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(22px, 3vw, 42px);
	font-weight: 400;
	line-height: 1.04;
}

.uiux-request {
	display: grid;
	grid-template-columns: minmax(0, 0.55fr) minmax(320px, 0.45fr);
	gap: clamp(28px, 5vw, 90px);
	background: var(--uiux-orange);
	color: #fff;
}

.uiux-request__text {
	display: grid;
	align-content: start;
	gap: 24px;
}

.uiux-request__text > p:first-child {
	color: rgba(255, 255, 255, 0.82);
}

.uiux-request__checks {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: clamp(12px, 3vw, 38px);
}

.uiux-request__checks span {
	border-color: rgba(255, 255, 255, 0.42);
	color: #fff;
}

.uiux-form {
	display: grid;
	gap: 16px;
	padding: clamp(16px, 2.4vw, 28px);
	background: #fff;
	color: var(--uiux-ink);
}

.uiux-form label {
	display: grid;
	gap: 7px;
	font-weight: 800;
}

.uiux-form input,
.uiux-form textarea {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	border: 1px solid var(--uiux-line);
	border-radius: 0;
	padding: 12px 14px;
	background: #fff;
	color: var(--uiux-ink);
	font: inherit;
	line-height: 1.35;
	resize: vertical;
}

.uiux-form input {
	min-height: 50px;
}

.uiux-form textarea {
	min-height: 124px;
}

.uiux-form input::placeholder,
.uiux-form textarea::placeholder {
	color: #747b77;
	opacity: 1;
}

.uiux-form input:focus,
.uiux-form textarea:focus {
	outline: 2px solid var(--uiux-orange);
	outline-offset: 2px;
}

@media (prefers-reduced-motion: no-preference) {
	.uiux-hero__media img,
	.uiux-model-showcase__image img,
	.uiux-news__grid img,
	.uiux-factory__gallery img {
		transition: transform 700ms cubic-bezier(0.16, 1, 0.3, 1), filter 700ms cubic-bezier(0.16, 1, 0.3, 1);
	}

	.uiux-hero__media:hover img,
	.uiux-model-showcase:hover img,
	.uiux-news__grid a:hover img,
	.uiux-factory__gallery img:hover {
		filter: saturate(1.08) contrast(1.04);
		transform: scale(1.025);
	}
}

@media (max-width: 1120px) {
	.uiux-hero__media,
	.uiux-picker,
	.uiux-model-showcase,
	.uiux-route,
	.uiux-factory,
	.uiux-request,
	.uiux-section__head {
		grid-template-columns: 1fr;
	}

	.uiux-picker__intro,
	.uiux-route__sticky {
		position: static;
	}

	.uiux-news__grid {
		grid-template-columns: 1fr 1fr;
	}

	.uiux-news__grid a:first-child {
		grid-column: 1 / -1;
	}
}

@media (max-width: 860px) {
	.uiux-hero {
		min-height: auto;
		padding-top: 22px;
	}

	.uiux-hero__top,
	.uiux-actions,
	.uiux-spec-line,
	.uiux-request__checks {
		align-items: stretch;
		flex-direction: column;
	}

	.uiux-hero__title h1 {
		font-size: clamp(32px, 10vw, 50px);
	}

	.uiux-hero__title span:nth-child(2),
	.uiux-hero__title span:nth-child(4) {
		margin-left: 0;
	}

	.uiux-hero__media img,
	.uiux-model-showcase__image img,
	.uiux-factory__gallery img:first-child {
		height: auto;
		min-height: 300px;
	}

	.uiux-hero__facts,
	.uiux-command__grid,
	.uiux-route__list div,
	.uiux-factory__gallery,
	.uiux-news__grid {
		grid-template-columns: 1fr;
	}

	.uiux-hero__facts div,
	.uiux-command__grid article:nth-child(odd) {
		border-right: 0;
	}

	.uiux-command__grid article,
	.uiux-command__grid article:nth-child(even) {
		grid-template-columns: 1fr;
		padding-left: 0;
		padding-right: 0;
	}

	.uiux-command__grid p {
		grid-column: auto;
	}

	.uiux-side-badge {
		display: none;
	}

	.uiux-button,
	.uiux-spec-line span,
	.uiux-request__checks span {
		width: 100%;
	}
}

/* Vercel web design guidelines experiment */

.skip-link {
	position: fixed;
	top: 12px;
	left: 12px;
	z-index: 100;
	padding: 10px 14px;
	background: #fff;
	color: #111;
	font-weight: 900;
	transform: translateY(-150%);
	transition: transform var(--fast);
}

.skip-link:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 2px;
	transform: translateY(0);
}

.vercel-page {
	--vx-bg: #e8e8e6;
	--vx-ink: #141614;
	--vx-muted: #60615f;
	--vx-line: rgba(20, 22, 20, 0.18);
	--vx-panel: #f4f4f2;
	--vx-panel-2: #ffffff;
	--vx-dark-text: #111;
	--vx-accent: #e26419;
	--vx-grid: clamp(18px, 3vw, 48px);
	--vx-description-size: 16px;
	--vx-description-weight: 400;
	--vx-description-leading: 1.55;
	--vx-description-gap: 20px;
	background: var(--vx-bg);
	color: var(--vx-ink);
	overflow-x: clip;
	-webkit-tap-highlight-color: rgba(226, 100, 25, 0.22);
}

.vercel-page .site-header {
	width: 100%;
	max-width: none;
	margin-top: 0;
	margin-bottom: -4px;
	margin-inline: 0;
	top: 0;
	transform: translateY(-4px);
	background: rgba(232, 232, 230, 0.94);
	border-color: var(--vx-line);
	color: var(--vx-ink);
}

.vercel-page .brand img {
	filter: none;
}

.vercel-page .menu-toggle span {
	background: var(--vx-ink);
}

.vercel-page .main-nav a,
.vercel-page .header-contact {
	color: var(--vx-ink);
}

.vercel-page .main-nav a:hover,
.vercel-page .header-contact:hover,
.vercel-page .main-nav .menu-item-has-children:hover > a,
.vercel-page .main-nav .menu-item-has-children:focus-within > a {
	color: var(--vx-accent);
}

.vercel-page .main-nav .sub-menu {
	z-index: 100;
	min-width: 220px;
	max-width: min(320px, calc(100vw - 40px));
	border-color: var(--vx-line);
	background: #ffffff;
	box-shadow: 0 24px 52px rgba(20, 22, 20, 0.16);
}

.vercel-page .main-nav .sub-menu a {
	color: var(--vx-ink);
	line-height: 1.25;
	white-space: normal;
}

.vercel-page .main-nav .sub-menu a:hover,
.vercel-page .main-nav .sub-menu a:focus {
	background: #e0e0de;
	color: var(--vx-accent);
}

.vercel-page .header-cta {
	border-color: var(--vx-accent);
	background: var(--vx-accent);
	color: #fff;
}

.vercel-page .header-cta:hover,
.vercel-page .header-cta:focus-visible {
	border-color: var(--button-primary-hover);
	background: var(--button-primary-hover);
	color: #ffffff;
}

.vercel-page .site-header.is-open {
	background: #e8e8e6;
	color: var(--vx-ink);
}

.vercel-page .site-header.is-open .main-nav,
.vercel-page .site-header.is-open .header-actions {
	border-color: var(--vx-line);
}

.vercel-page .site-header.is-open .header-contact {
	color: var(--vx-ink);
}

.vercel-page .site-header.is-open .header-contact::before {
	color: var(--vx-muted);
}

@media (max-width: 1100px) {
	.vercel-page .site-header.is-open {
		background: #f0f0ed;
	}

	.vercel-page .site-header.is-open .main-nav,
	.vercel-page .site-header.is-open .header-actions {
		border-color: rgba(20, 22, 20, 0.14);
	}

	.vercel-page .site-header.is-open .sub-menu {
		width: 100%;
		max-width: 100%;
		border: 0;
		background: transparent;
		box-shadow: none;
	}

	.vercel-page .site-header.is-open .sub-menu .sub-menu {
		border: 0;
		background: transparent;
	}

	.vercel-page .site-header.is-open .sub-menu a:hover,
	.vercel-page .site-header.is-open .sub-menu a:focus {
		background: transparent;
		color: var(--vx-accent);
	}
}

.vercel-page .site-footer {
	width: 100%;
	max-width: none;
	margin-inline: 0;
	background: linear-gradient(180deg, #ececea 0%, #e0e0de 100%);
	color: var(--vx-ink);
}

.vercel-page .site-footer p,
.vercel-page .site-footer span,
.vercel-page .site-footer__title,
.vercel-page .site-footer__meta {
	color: var(--vx-muted);
}

.vercel-page .site-footer a {
	color: var(--vx-ink);
}

.vercel-page .site-footer__contacts {
	color: var(--vx-muted);
}

.vercel-page .site-footer__phone {
	color: var(--vx-ink);
}

.vercel-page .site-footer__policy {
	color: var(--vx-muted);
}

.vercel-page .site-footer__nav a:hover,
.vercel-page .site-footer__nav a:focus-visible,
.vercel-page .site-footer__contacts a:not(.zvezda-edit-shortcut):hover,
.vercel-page .site-footer__contacts a:not(.zvezda-edit-shortcut):focus-visible {
	color: var(--vx-accent);
}

.vercel-page a:focus-visible,
.vercel-page button:focus-visible,
.vercel-page input:focus-visible,
.vercel-page textarea:focus-visible,
.vercel-page select:focus-visible {
	outline: 2px solid var(--vx-accent);
	outline-offset: 3px;
}

.vercel-page .page-hero h1,
.vercel-page .model-hero h1,
.vercel-page .section__head h2,
.vercel-page .vx-section h2 {
	overflow-wrap: anywhere;
}

.vercel-page .page-hero p,
.vercel-page .model-hero p,
.vercel-page .section__head p,
.vercel-page .vx-section__head p {
	max-width: 760px;
}

.vercel-main {
	overflow-x: clip;
	background: var(--vx-bg);
}

.vercel-main h1,
.vercel-main h2,
.vercel-main h3 {
	margin: 0;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-weight: 400;
	letter-spacing: 0;
	text-wrap: balance;
}

.vercel-main p {
	text-wrap: pretty;
}

.vx-hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	grid-template-areas: "copy media";
	height: calc(100svh - var(--header-height));
	height: calc(100dvh - var(--header-height));
	min-height: 0;
	max-height: calc(100dvh - var(--header-height));
	max-width: var(--content-max);
	margin-inline: auto;
	padding: 0;
	overflow: hidden;
}

.vx-hero__copy {
	grid-area: copy;
	min-width: 0;
	align-self: stretch;
	display: grid;
	grid-template-rows: minmax(0, 1fr) auto;
	height: 100%;
	min-height: 0;
	padding: 0;
}

.vx-hero__copy-stage {
	display: grid;
	grid-template-areas: "slide";
	align-items: center;
	min-width: 0;
	min-height: 0;
	padding: clamp(48px, 6vh, 80px) var(--page-pad);
}

.vx-hero__copy p,
.vx-section__head p,
.vx-model span,
.vx-news__grid span {
	margin: 0;
	color: var(--vx-muted);
	font-weight: 900;
}

.vx-hero__title {
	grid-area: slide;
	display: grid;
	gap: clamp(14px, 1.6vw, 24px);
	align-content: center;
	max-width: 780px;
	opacity: 0;
	pointer-events: none;
	transform: translate3d(-24px, 0, 0);
	transition: opacity 420ms var(--ease), transform 680ms var(--ease);
}

.vx-hero__title.is-active {
	opacity: 1;
	pointer-events: auto;
	transform: none;
}

.vx-hero__title .vx-hero__eyebrow {
	margin: 0;
	color: var(--vx-ink);
	font-size: clamp(15px, 1.1vw, 18px);
	line-height: 1.3;
}

.vx-hero h1,
.vx-hero__slide-title {
	margin: 0;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: 88px;
	font-weight: 400;
	line-height: 0.95;
	letter-spacing: 0;
	hyphens: none;
	overflow-wrap: normal;
	text-transform: uppercase;
	text-wrap: balance;
	word-break: normal;
}

.vx-hero__description {
	max-width: 62ch;
	color: var(--vx-muted);
	font-size: clamp(16px, 1.25vw, 20px);
	font-weight: 700;
	line-height: 1.5;
}

.vx-hero__description p {
	margin: 0;
}

.vx-hero__slide-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	justify-self: start;
	min-height: var(--button-height);
	margin-top: 4px;
	padding: 0 var(--button-padding);
	background: var(--button-primary);
	color: #ffffff;
	font-size: var(--button-font-size);
	font-weight: var(--button-font-weight);
	line-height: 1.15;
	transition: background-color var(--fast), color var(--fast);
}

.vx-hero__slide-link:hover,
.vx-hero__slide-link:focus-visible {
	background: var(--button-primary-hover);
}

.vx-hero__quick {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	align-self: end;
	width: 100%;
	border-top: 1px solid var(--vx-line);
	border-right: 0;
	border-bottom: 0;
	border-left: 0;
}

.vx-hero__quick a {
	position: relative;
	display: grid;
	align-content: start;
	min-height: clamp(150px, 18svh, 220px);
	padding: 26px;
	border: 0;
	border-right: 1px solid var(--vx-line);
	background: rgba(255, 255, 255, 0.04);
	color: var(--vx-ink);
	overflow: hidden;
	transition: transform var(--fast), border-color var(--fast), background-color var(--fast), color var(--fast);
}

.vx-hero__quick a:last-child {
	border-right: 0;
}

.vx-hero__quick a::after {
	content: "";
	position: absolute;
	right: clamp(16px, 2vw, 26px);
	bottom: clamp(16px, 2vw, 26px);
	width: 34px;
	height: 1px;
	background: currentColor;
	opacity: 0.72;
	transition: transform var(--fast), opacity var(--fast);
}

.vx-hero__quick a::before {
	content: "";
	position: absolute;
	right: clamp(16px, 2vw, 26px);
	bottom: clamp(16px, 2vw, 26px);
	width: 10px;
	height: 10px;
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	transform: translateY(4.5px) rotate(45deg);
	opacity: 0.72;
	transition: transform var(--fast), opacity var(--fast);
}

.vx-hero__quick a:hover,
.vx-hero__quick a:focus-visible {
	background: var(--vx-accent);
	border-color: var(--vx-accent);
	color: #ffffff;
	outline: 2px solid var(--vx-accent);
	outline-offset: -2px;
}

.vx-hero__quick a:hover::after,
.vx-hero__quick a:focus-visible::after {
	opacity: 1;
	transform: translateX(4px);
}

.vx-hero__quick a:hover::before,
.vx-hero__quick a:focus-visible::before {
	opacity: 1;
	transform: translate(4px, 4.5px) rotate(45deg);
}

.vx-hero__quick strong {
	max-width: 100%;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: 32px;
	font-weight: 400;
	line-height: 1;
}

.vx-hero__media {
	grid-area: media;
	position: relative;
	min-width: 0;
	height: 100%;
	min-height: 0;
	max-height: 100%;
	overflow: hidden;
	background: var(--vx-panel);
	touch-action: pan-y;
	user-select: none;
}

.vx-hero__track {
	display: flex;
	width: 100%;
	height: 100%;
	min-height: 0;
	transition: transform 780ms var(--ease);
	will-change: transform;
}

.vx-hero__slide {
	position: relative;
	flex: 0 0 100%;
	width: 100%;
	height: 100%;
	min-height: 0;
	margin: 0;
	overflow: hidden;
}

.vx-hero__slide img,
.vx-hero__slide video {
	width: 100%;
	height: 100%;
	min-height: 0;
	max-height: 100%;
	object-fit: cover;
	object-position: center;
	filter: contrast(1.08) saturate(0.94);
}

.vx-hero__slide video {
	background: var(--vx-dark-text);
}

.vx-hero__controls {
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 2;
	display: flex;
	align-items: stretch;
	background: #0c0f12;
	color: #ffffff;
}

.vx-hero__controls[hidden] {
	display: none;
}

.vx-hero__arrow {
	position: relative;
	display: grid;
	place-items: center;
	width: 64px;
	height: 64px;
	padding: 0;
	border: 0;
	border-right: 1px solid rgba(255, 255, 255, 0.24);
	background: #0c0f12;
	color: #ffffff;
	cursor: pointer;
	transition: background-color var(--fast), color var(--fast);
}

.vx-hero__arrow:hover,
.vx-hero__arrow:focus-visible {
	background: var(--vx-accent);
}

.vx-hero__arrow span,
.vx-hero__arrow span::after {
	display: block;
	width: 20px;
	height: 1px;
	background: currentColor;
}

.vx-hero__arrow span::after {
	content: "";
	width: 8px;
	height: 8px;
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	background: transparent;
}

.vx-hero__arrow--prev span::after {
	transform: translateY(-4px) rotate(-135deg);
}

.vx-hero__arrow--next span::after {
	margin-left: auto;
	transform: translateY(-4px) rotate(45deg);
}

.vx-hero__counter {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-width: 96px;
	margin: 0;
	padding: 0 18px;
	color: rgba(255, 255, 255, 0.7);
	font-size: 13px;
	font-weight: 900;
	font-variant-numeric: tabular-nums;
}

.vx-hero__counter-value {
	display: flex;
	align-items: center;
}

.vx-hero__counter [data-hero-current] {
	color: #ffffff;
}

.vx-hero__progress {
	position: relative;
	display: block;
	width: 100%;
	height: 2px;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.24);
}

.vx-hero__progress [data-hero-progress] {
	display: block;
	width: 100%;
	height: 100%;
	transform: scaleX(0);
	transform-origin: left center;
	background: #ffffff;
}

[data-hero-autoplay="false"] .vx-hero__progress {
	display: none;
}

.vx-section p,
.vx-model p,
.vx-task-list span,
.vx-route__regions a,
.vx-contact-list {
	color: var(--vx-muted);
	line-height: 1.55;
}

.vx-contact-emails--unlabelled {
	grid-column: 1 / -1;
}

.vx-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.vx-button,
.vx-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: var(--button-height);
	width: fit-content;
	border: 1px solid currentColor;
	padding: 0 var(--button-padding);
	background: transparent;
	color: var(--vx-ink);
	font-size: var(--button-font-size);
	font-weight: var(--button-font-weight);
	line-height: 1.15;
	text-align: center;
	touch-action: manipulation;
	transition: transform var(--fast), color var(--fast), background-color var(--fast), border-color var(--fast);
}

.vx-button:hover,
.vx-link:hover {
	border-color: var(--button-primary-hover);
	background: var(--button-primary-hover);
	color: #fff;
}

.vx-button--primary {
	border-color: var(--button-primary);
	background: var(--button-primary);
	color: #fff;
}

.vx-button--primary:hover {
	background: var(--button-primary-hover);
	border-color: var(--button-primary-hover);
	color: #fff;
}

.vx-hero__facts {
	grid-area: facts;
	display: grid;
	align-self: end;
	border-top: 1px solid var(--vx-line);
	border-bottom: 1px solid var(--vx-line);
}

.vx-hero__facts div,
.vx-proof__line div,
.vx-task-list div,
.vx-route__regions a,
.vx-contact-list > * {
	padding: clamp(16px, 2.4vw, 30px) 0;
	border-bottom: 1px solid var(--vx-line);
}

.vx-hero__facts div:last-child,
.vx-proof__line div:last-child,
.vx-task-list div:last-child,
.vx-route__regions a:last-child,
.vx-contact-list > *:last-child {
	border-bottom: 0;
}

.vx-hero__quick--three {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (min-width: 1181px) {
	.vx-hero__quick--three a {
		/* Half of the hero, split into three cards. The viewport cap keeps short screens usable. */
		height: min(calc(min(100vw, var(--content-max)) / 6), 34svh);
		min-height: 0;
	}
}

.vx-hero__facts strong,
.vx-proof__line strong {
	display: block;
	color: var(--vx-ink);
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(28px, 3vw, 50px);
	font-weight: 400;
	line-height: 0.95;
	overflow-wrap: normal;
	word-break: normal;
}

.vx-hero__facts span,
.vx-proof__line span {
	display: block;
	max-width: 28rem;
	margin-top: 8px;
	color: var(--vx-muted);
}

.vx-selection {
	background: var(--vx-panel);
}

.vx-selection__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	border-top: 1px solid var(--vx-line);
	border-left: 1px solid var(--vx-line);
}

.vx-selection__list a {
	position: relative;
	display: grid;
	grid-template-rows: auto 1fr auto;
	gap: clamp(16px, 2vw, 28px);
	min-height: clamp(280px, 24vw, 400px);
	padding: clamp(24px, 3vw, 48px);
	border-right: 1px solid var(--vx-line);
	border-bottom: 1px solid var(--vx-line);
	background: rgba(255, 255, 255, 0.14);
	transition: background-color var(--fast), color var(--fast);
}

.vx-selection__list a:hover,
.vx-selection__list a:focus-visible {
	background: #ffffff;
	color: var(--vx-accent);
}

.vx-selection__list strong {
	max-width: 16ch;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(28px, 3.4vw, 54px);
	font-weight: 400;
	line-height: 1;
	text-wrap: balance;
}

.vx-selection__list span {
	max-width: 42rem;
	color: var(--vx-muted);
	font-size: clamp(16px, 1.35vw, 21px);
	line-height: 1.5;
}

.vx-selection__list small {
	color: var(--vx-accent);
	font-size: 15px;
	font-weight: 900;
}

.vx-selection__list a:hover small,
.vx-selection__list a:focus-visible small {
	color: inherit;
}

.vx-section {
	padding: clamp(48px, 6.5vw, 108px) var(--content-pad);
	scroll-margin-top: 96px;
}

.vx-section__head {
	display: grid;
	grid-template-columns: minmax(0, 0.66fr) minmax(220px, 0.34fr);
	gap: var(--vx-grid);
	align-items: end;
	margin-bottom: clamp(32px, 6vw, 90px);
}

.vx-section__head .brand-bars {
	grid-column: 1 / -1;
	align-self: start;
	margin-top: calc(var(--vx-grid) * -0.55);
}

.vx-section__head:has(> p) {
	row-gap: 26px;
}

.vx-section__head:has(> p) > .brand-bars {
	margin-top: 2px;
}

.vx-models .brand-bars,
.vx-news .brand-bars {
	color: var(--vx-dark-text);
}

.vx-section h2 {
	max-width: 1060px;
	font-size: clamp(36px, 5vw, 78px);
	line-height: 0.98;
	hyphens: none;
	overflow-wrap: normal;
	word-break: normal;
}

.vx-proof {
	background: var(--vx-panel);
}

.vx-proof__line {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(18px, 3vw, 46px);
}

.vx-proof__line div {
	border-top: 1px solid var(--vx-line);
	border-bottom: 0;
}

.vx-models {
	background: #ffffff;
	color: var(--vx-dark-text);
}

.vx-models .vx-section__head {
	align-items: start;
}

.vx-models .vx-section__head p {
	color: #555;
}

.vx-model span {
	color: #f6a02d;
}

.vx-model p {
	color: rgba(255, 255, 255, 0.78);
}

.vx-model__facts {
	position: relative;
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
	margin: 0;
	padding: 0;
	list-style: none;
	color: rgba(255, 255, 255, 0.9);
	font-size: 13px;
	font-weight: 800;
}

.vx-model__facts li + li::before {
	content: "·";
	margin-right: 16px;
	color: var(--vx-accent);
}

.vx-models__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr);
	gap: 0;
	align-items: stretch;
}

.vx-model {
	display: grid;
	grid-template-rows: minmax(280px, 1fr) auto;
	align-content: stretch;
	gap: 14px;
	min-height: 420px;
	padding: 0 0 clamp(22px, 2.4vw, 34px);
	border-right: 1px solid var(--vx-line);
	border-bottom: 1px solid var(--vx-line);
	background: #ffffff;
	color: var(--vx-dark-text);
	overflow: hidden;
	position: relative;
}

.vx-model::after {
	display: none;
}

.vx-model--large {
	grid-row: span 2;
	min-height: 720px;
}

.vx-model__image {
	position: relative;
	min-height: 280px;
	overflow: hidden;
}

.vx-model--large .vx-model__image {
	min-height: 600px;
}

.vx-model img {
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 1;
	transition: filter var(--fast), transform 700ms var(--ease);
}

.vx-model:hover img {
	filter: contrast(1.06) saturate(1.06);
	transform: scale(1.035);
}

.vx-model strong,
.vx-news__grid strong {
	position: relative;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(24px, 3.4vw, 54px);
	font-weight: 400;
	line-height: 0.98;
}

.vx-model span,
.vx-model p {
	position: relative;
	z-index: 1;
}

.vx-model__content {
	display: grid;
	gap: var(--vx-description-gap);
	padding-inline: clamp(20px, 2.4vw, 34px);
}

.vx-model__content > strong,
.vx-model__content > p {
	margin: 0;
}

.vx-model__content > p {
	color: var(--vx-muted);
	font-size: var(--vx-description-size);
	font-weight: var(--vx-description-weight);
	line-height: var(--vx-description-leading);
}

.vx-model .model-card__status {
	position: relative;
	z-index: 1;
	margin: 0;
	border-color: rgba(255, 255, 255, 0.58);
	color: #fff;
}

.vx-model strong {
	z-index: 1;
}

.vx-models > .vx-link,
.vx-news > .vx-link,
.vx-media > .vx-link {
	width: 100%;
	min-height: 0;
	margin-top: 0;
	border: 1px solid var(--vx-accent);
	padding: clamp(24px, 2.4vw, 34px) 24px;
	background: var(--vx-accent);
	color: #ffffff;
}

.vx-models > .vx-link:hover,
.vx-models > .vx-link:focus-visible,
.vx-news > .vx-link:hover,
.vx-news > .vx-link:focus-visible,
.vx-media > .vx-link:hover,
.vx-media > .vx-link:focus-visible {
	border-color: var(--button-primary-hover);
	background: var(--button-primary-hover);
	color: #ffffff;
}

.vx-tasks,
.vx-route,
.vx-request {
	background: #e0e0de;
}

.vx-customization {
	display: grid;
	grid-template-columns: minmax(0, 0.48fr) minmax(320px, 0.52fr);
	gap: var(--vx-grid);
	align-items: start;
	background: var(--vx-panel);
	color: var(--vx-dark-text);
}

.vx-customization__copy {
	display: grid;
	gap: 20px;
}

.vx-customization__copy h2 {
	max-width: 13ch;
	color: var(--vx-dark-text);
}

.vx-customization__copy p {
	max-width: 44rem;
	margin: 0;
	color: var(--vx-muted);
}

.vx-customization__copy .vx-customization__note {
	color: var(--vx-accent);
	font-weight: 800;
}

.vx-customization__list {
	margin: 0;
	padding: 0;
	border-top: 1px solid var(--vx-line);
	list-style: none;
}

.vx-customization__list li {
	padding: clamp(22px, 3vw, 38px) 0;
	border-bottom: 1px solid var(--vx-line);
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(24px, 3vw, 46px);
	line-height: 1.05;
}

.vx-order {
	background: #ffffff;
	color: var(--vx-dark-text);
}

.vx-order .vx-section__head p {
	color: #555;
}

.vx-order__steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0 0 32px;
	padding: 0;
	border-top: 1px solid rgba(17, 17, 17, 0.25);
	border-left: 1px solid rgba(17, 17, 17, 0.25);
	list-style: none;
	counter-reset: order-step;
}

.vx-order__steps li {
	display: grid;
	align-content: start;
	gap: 18px;
	min-height: 280px;
	padding: clamp(24px, 3vw, 42px);
	border-right: 1px solid rgba(17, 17, 17, 0.25);
	border-bottom: 1px solid rgba(17, 17, 17, 0.25);
	counter-increment: order-step;
}

.vx-order__steps li::before {
	content: counter(order-step, decimal-leading-zero);
	color: var(--vx-accent);
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: 18px;
}

.vx-order__steps strong {
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(26px, 2.8vw, 44px);
	font-weight: 400;
	line-height: 1;
}

.vx-order__steps span {
	color: #555;
	line-height: 1.5;
}

.vx-task-list {
	display: grid;
	border-top: 1px solid var(--vx-line);
	margin-bottom: 28px;
}

.vx-tasks .vx-section__head {
	grid-template-columns: minmax(0, 0.58fr) minmax(0, 0.42fr);
	align-items: end;
}

.vx-tasks .vx-section__head h2 {
	max-width: 16ch;
	font-size: clamp(42px, 4.8vw, 76px);
}

.vx-nowrap {
	white-space: nowrap;
}

.vx-task-list div {
	display: grid;
	grid-template-columns: minmax(260px, 0.42fr) minmax(0, 0.58fr);
	gap: 24px;
	align-items: baseline;
	padding-inline: clamp(16px, 2vw, 32px);
	transition: background-color var(--fast), color var(--fast);
}

.vx-task-list div:hover {
	background: rgba(255, 255, 255, 0.42);
}

.vx-task-list strong {
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(22px, 3vw, 44px);
	font-weight: 400;
	line-height: 1;
}

.vx-production {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 0.52fr) minmax(0, 0.48fr);
	gap: clamp(36px, 5vw, 88px);
	background: #e0e0de;
	color: var(--vx-ink);
	overflow: clip;
}

.vx-production::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(255, 255, 255, 0.22);
	pointer-events: none;
}

.vx-production__text {
	position: relative;
	z-index: 1;
	display: grid;
	align-content: center;
	gap: 20px;
	min-width: 0;
}

.vx-production__text .brand-bars,
.vx-request > div > .brand-bars {
	margin-block: 2px 6px;
}

.vx-production__text h2 {
	max-width: 760px;
	font-size: clamp(44px, 4vw, 76px);
	line-height: 0.94;
	hyphens: none;
	overflow-wrap: normal;
	text-wrap: balance;
	word-break: normal;
}

.vx-production__text p {
	max-width: 46rem;
	margin: 0;
	color: var(--vx-muted);
}

.vx-production__photos {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr);
	grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
	gap: 1px;
	min-height: clamp(620px, 45vw, 760px);
	border: 1px solid var(--vx-line);
	background: var(--vx-line);
}

.vx-production__photos img {
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	min-height: 0;
	object-fit: cover;
	background: var(--vx-panel);
	filter: contrast(1.05) saturate(0.94);
}

.vx-production__photos img:first-child {
	grid-row: 1 / -1;
}

.vx-production__photos img:nth-child(2):last-child {
	grid-row: 1 / -1;
}

.vx-route {
	display: grid;
	grid-template-columns: minmax(0, 0.52fr) minmax(280px, 0.48fr);
	gap: var(--vx-grid);
	align-items: end;
}

.vx-route__text {
	display: grid;
	gap: 20px;
}

.vx-route__text p {
	max-width: 52rem;
	margin: 0;
}

.vx-route__regions {
	display: grid;
	border-top: 1px solid var(--vx-line);
}

.vx-route__regions a {
	position: relative;
	display: block;
	padding-left: clamp(18px, 2.6vw, 38px);
	padding-right: clamp(72px, 7vw, 104px);
	color: var(--vx-ink);
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(21px, 2.1vw, 34px);
	line-height: 1.12;
	transition: background-color var(--fast), color var(--fast);
}

.vx-route__regions a::after {
	content: "";
	position: absolute;
	right: clamp(20px, 2.6vw, 38px);
	bottom: clamp(20px, 2.6vw, 34px);
	width: 36px;
	height: 1px;
	background: currentColor;
	opacity: 0.62;
	transition: transform var(--fast), opacity var(--fast);
}

.vx-route__regions a::before {
	content: "";
	position: absolute;
	right: clamp(20px, 2.6vw, 38px);
	bottom: clamp(20px, 2.6vw, 34px);
	width: 10px;
	height: 10px;
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	transform: translateY(4.5px) rotate(45deg);
	opacity: 0.62;
	transition: transform var(--fast), opacity var(--fast);
}

.vx-route__regions a:hover {
	background: #ffffff;
	color: var(--vx-accent);
}

.vx-route__regions a:hover::after {
	opacity: 1;
	transform: translateX(-4px);
}

.vx-route__regions a:hover::before {
	opacity: 1;
	transform: translate(-4px, 4.5px) rotate(45deg);
}

.vx-news {
	background: var(--vx-panel-2);
	color: var(--vx-dark-text);
}

.vx-news .vx-section__head p,
.vx-news__grid p,
.vx-news__grid span {
	color: #555;
}

.vx-news .vx-section__head {
	grid-template-columns: 1fr;
	row-gap: 18px;
}

.vx-news .vx-section__head h2 {
	white-space: nowrap;
	text-wrap: nowrap;
}

.vx-news .vx-section__head .brand-bars {
	grid-column: 1;
	grid-row: 2;
	margin-top: 0;
}

.vx-news__carousel {
	position: relative;
}

.vx-news__controls {
	display: flex;
	position: absolute;
	top: 50%;
	right: clamp(-54px, -3.6vw, -42px);
	left: clamp(-54px, -3.6vw, -42px);
	z-index: 3;
	justify-content: space-between;
	pointer-events: none;
	transform: translateY(-50%);
}

.vx-news__arrow {
	display: inline-grid;
	place-items: center;
	width: clamp(44px, 3.2vw, 48px);
	min-width: 44px;
	height: clamp(48px, 3.5vw, 52px);
	min-height: 48px;
	border: 0;
	background: #111111;
	color: #ffffff;
	box-shadow: 0 8px 28px rgba(17, 17, 17, 0.18);
	cursor: pointer;
	pointer-events: auto;
	touch-action: manipulation;
	transition: background-color var(--fast), border-color var(--fast), color var(--fast), opacity var(--fast), transform var(--fast);
}

.vx-news__arrow::before {
	content: "";
	width: clamp(10px, 0.9vw, 14px);
	aspect-ratio: 1;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
}

.vx-news__arrow--prev::before {
	transform: translateX(2px) rotate(-135deg);
}

.vx-news__arrow--next::before {
	transform: translateX(-2px) rotate(45deg);
}

.vx-news__arrow:not(:disabled):hover {
	background: var(--vx-accent);
	border-color: var(--vx-accent);
	color: #fff;
	transform: translateY(-1px);
}

.vx-news__arrow:not(:disabled):active {
	transform: translateY(0);
}

.vx-news__arrow:disabled {
	cursor: default;
	opacity: 0.34;
}

.vx-news__grid {
	display: flex;
	align-items: stretch;
	gap: 0;
	width: 100%;
	margin-bottom: 0;
	overflow-x: hidden;
	overflow-y: clip;
	scroll-behavior: smooth;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
	overscroll-behavior-y: contain;
	scroll-padding-inline: 0;
	scroll-snap-type: x mandatory;
	border-top: 0;
	-webkit-overflow-scrolling: touch;
}

.vx-news__grid::-webkit-scrollbar {
	display: none;
}

.vx-news__grid .news-card {
	display: grid;
	grid-template-rows: auto auto auto 1fr;
	flex: 0 0 clamp(320px, 31vw, 520px);
	min-width: 0;
	min-height: clamp(360px, 30vw, 480px);
	padding: 0;
	border: 1px solid rgba(17, 17, 17, 0.16);
	color: var(--vx-dark-text);
	background: transparent;
	overflow: visible;
	scroll-snap-align: start;
}

.vx-news__grid .news-card img {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center;
	background: var(--vx-panel);
}

.vx-news__grid .news-card span {
	display: block;
	align-self: start;
	padding: clamp(14px, 1.5vw, 20px) clamp(16px, 1.8vw, 24px) 0;
	color: var(--vx-accent);
	font-weight: 900;
	line-height: 1.2;
}

.vx-news__grid .news-card h2 {
	display: block;
	margin: 0;
	padding: 8px clamp(16px, 1.8vw, 24px) 0;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(22px, 2.4vw, 34px);
	font-weight: 400;
	line-height: 1.05;
	min-height: 4.5em;
	letter-spacing: 0;
	overflow-wrap: anywhere;
	word-break: normal;
	hyphens: auto;
	text-wrap: balance;
}

.vx-news__grid .news-card p {
	margin: 0;
	padding: clamp(12px, 1.4vw, 18px) clamp(16px, 1.8vw, 24px) clamp(18px, 2vw, 28px);
	color: #555;
	font-weight: 800;
	line-height: 1.35;
	overflow-wrap: anywhere;
	word-break: normal;
}

.vx-media {
	background: #e0e0de;
}

.vx-media__list {
	display: grid;
	margin-bottom: 0;
	border-top: 1px solid var(--vx-line);
	border-left: 1px solid var(--vx-line);
}

.vx-media__list a {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) clamp(180px, 22vw, 360px);
	gap: clamp(20px, 4vw, 64px);
	align-items: stretch;
	min-height: 220px;
	border-right: 1px solid var(--vx-line);
	border-bottom: 1px solid var(--vx-line);
	background: rgba(255, 255, 255, 0.28);
	color: var(--vx-ink);
	transition: background-color var(--fast), color var(--fast);
}

.vx-media__list a:hover {
	background: #ffffff;
	color: var(--vx-accent);
}

.vx-media__list a > div {
	display: grid;
	align-content: center;
	gap: 14px;
	min-width: 0;
	padding: clamp(22px, 3vw, 42px);
}

.vx-media__list span {
	color: var(--vx-accent);
	font-weight: 900;
	line-height: 1.2;
}

.vx-media__list time {
	color: var(--vx-muted);
	font-size: 15px;
	font-weight: 900;
	line-height: 1.2;
}

.vx-media__list a:hover span,
.vx-media__list a:hover time,
.vx-media__list a:hover p {
	color: inherit;
}

.vx-media__list a:hover time,
.vx-media__list a:hover p {
	color: var(--vx-muted);
}

.vx-media__list strong {
	display: block;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(26px, 3.2vw, 54px);
	font-weight: 400;
	line-height: 1;
	overflow-wrap: anywhere;
	word-break: normal;
	hyphens: auto;
}

.vx-media__list p {
	max-width: 46rem;
	margin: 0;
	color: var(--vx-muted);
	overflow-wrap: anywhere;
	word-break: normal;
}

.vx-media__list img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: contrast(1.04) saturate(0.9);
}

.external-link-mark {
	position: absolute;
	top: 14px;
	right: 14px;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border: 1px solid var(--vx-line);
	background: #ffffff;
	color: var(--vx-ink);
	pointer-events: none;
}

.external-link-mark svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: square;
	stroke-linejoin: miter;
}

.vx-media__list a:hover .external-link-mark,
.vx-media__list a:focus-visible .external-link-mark,
.news-card--external:hover .external-link-mark,
.news-card--external:focus-visible .external-link-mark {
	border-color: var(--vx-accent);
	background: var(--vx-accent);
	color: #ffffff;
}

.news-card--external {
	position: relative;
}

.vx-request {
	display: grid;
	grid-template-columns: minmax(0, 0.54fr) minmax(320px, 0.46fr);
	gap: var(--vx-grid);
	align-items: start;
}

.vx-request > div {
	display: grid;
	gap: 20px;
}

.vx-form {
	display: grid;
	gap: 16px;
	padding: clamp(16px, 2.4vw, 28px);
	background: #fff;
	color: var(--vx-dark-text);
}

.vx-form label {
	display: grid;
	gap: 7px;
	font-weight: 900;
}

.vx-form .form-consent input,
.uiux-form .form-consent input {
	accent-color: var(--vx-accent);
}

.vx-form input,
.vx-form textarea {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	border: 1px solid #b9bdb8;
	border-radius: 0;
	padding: 12px 14px;
	background: #fff;
	color: var(--vx-dark-text);
	font: inherit;
	line-height: 1.35;
	resize: vertical;
	transition: border-color var(--fast), box-shadow var(--fast);
}

.vx-form input {
	min-height: 50px;
}

.vx-form textarea {
	min-height: 124px;
}

.vx-form input::placeholder,
.vx-form textarea::placeholder {
	color: #737a75;
	opacity: 1;
}

.vx-form input:focus,
.vx-form textarea:focus {
	border-color: var(--vx-accent);
	box-shadow: 0 0 0 3px rgba(242, 100, 25, 0.16);
	outline: 0;
}

.vx-form .vx-button {
	width: 100%;
	margin-top: 2px;
}

.vx-form .form-after-button,
.request-form .form-after-button {
	margin: -4px 0 0;
	color: #555;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
}

.vx-form .vx-button:hover,
.vx-form .vx-button:focus-visible {
	border-color: var(--button-primary-hover);
	background: var(--button-primary-hover);
	color: #ffffff;
	box-shadow: none;
	transform: translateY(-1px);
}

.request-form .form-consent,
.vx-form .form-consent,
.uiux-form .form-consent,
.copy-form .form-consent,
.ref-route-form .form-consent {
	display: grid !important;
	grid-template-columns: 18px minmax(0, 1fr);
	gap: 10px !important;
	align-items: start;
	color: #4e5651 !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.35;
}

.request-form .form-consent input,
.vx-form .form-consent input,
.uiux-form .form-consent input,
.copy-form .form-consent input,
.ref-route-form .form-consent input {
	-webkit-appearance: checkbox !important;
	appearance: auto !important;
	display: block;
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	max-width: 18px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #8e9691 !important;
	background: #fff !important;
	accent-color: var(--vx-accent);
	cursor: pointer;
}

.request-form .form-consent span,
.vx-form .form-consent span,
.uiux-form .form-consent span,
.copy-form .form-consent span,
.ref-route-form .form-consent span {
	margin: 0;
	color: inherit;
	font: inherit;
	line-height: inherit;
}

.vx-contacts {
	display: grid;
	grid-template-columns: minmax(0, 0.4fr) minmax(0, 0.6fr);
	gap: var(--vx-grid);
	min-width: 0;
	background: #e0e0de;
}

.vx-contacts--with-title {
	grid-template-columns: minmax(240px, 0.32fr) minmax(0, 0.68fr);
	align-items: start;
}

.vx-contacts--with-title > .zvezda-editable {
	align-self: start;
}

@media (min-width: 1181px) {
	.vx-production__text,
	.vx-route__text,
	.vx-customization__copy,
	.vx-request > div,
	.vx-contacts--with-title > .zvezda-editable,
	.vercel-page main:not(.vercel-main) .section--split > :first-child,
	.vercel-page main:not(.vercel-main) .section--dark > :first-child,
	.vercel-page main:not(.vercel-main) .model-hero > :first-child {
		position: sticky;
		top: calc(var(--header-height) + 28px);
		align-self: start;
	}
}

.vx-contact-list {
	display: grid;
	min-width: 0;
	border-top: 1px solid var(--vx-line);
}

.vx-contacts--cards > .vx-contact-list {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	border-left: 1px solid var(--vx-line);
	background: transparent;
}

.vx-contacts--standalone > .vx-contact-list {
	grid-column: 1 / -1;
}

.vx-contact-list > div {
	display: grid;
	grid-template-columns: minmax(140px, 0.24fr) minmax(0, 0.76fr);
	gap: clamp(12px, 2vw, 28px);
	align-items: baseline;
	min-width: 0;
}

.vx-contacts--cards > .vx-contact-list > div {
	align-content: start;
	align-items: start;
	min-height: clamp(190px, 14vw, 280px);
	padding: clamp(22px, 2.4vw, 42px);
	border-right: 1px solid var(--vx-line);
	background: rgba(244, 244, 241, 0.48);
	grid-template-columns: 1fr;
	gap: clamp(14px, 1.5vw, 22px);
	transition: background-color var(--fast), border-color var(--fast), transform var(--fast);
}

.vx-contacts--cards > .vx-contact-list > div:last-child {
	border-bottom: 1px solid var(--vx-line);
}

.vx-contacts--cards > .vx-contact-list > div:hover {
	border-color: rgba(226, 100, 25, 0.42);
	background: rgba(255, 255, 255, 0.56);
}

.vx-contact-list > div > span {
	color: var(--vx-muted);
	font-size: 14px;
	font-weight: 900;
	line-height: 1.2;
	text-transform: uppercase;
}

.vx-contact-list a:not(.zvezda-edit-shortcut),
.vx-contact-list strong {
	color: var(--vx-ink);
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(22px, 2vw, 36px);
	font-weight: 400;
	line-height: 1.08;
	min-width: 0;
	overflow-wrap: anywhere;
}

.vx-contact-list small {
	grid-column: 2;
	margin-top: -6px;
	color: var(--vx-muted);
	font-size: 15px;
	line-height: 1.35;
	min-width: 0;
	overflow-wrap: anywhere;
}

.vx-contacts--cards small {
	grid-column: auto;
	max-width: 40rem;
	margin-top: 0;
	font-size: 16px;
	line-height: 1.5;
}

.vx-contact-list a:not(.zvezda-edit-shortcut):not(.contact-socials__link):is(:hover, :focus-visible),
.vx-contact-list a:not(.zvezda-edit-shortcut):not(.contact-socials__link):is(:hover, :focus-visible) strong {
	color: var(--vx-accent) !important;
}

.vx-contact-emails {
	display: grid;
	gap: 10px;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	overflow: hidden;
}

.vx-contact-emails p {
	display: grid;
	gap: 4px;
	margin: 0;
}

.vx-contact-emails p small {
	margin: 0;
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
}

.vx-contact-emails a {
	font-family: "Onest", Arial, sans-serif;
	font-size: clamp(18px, 1.55vw, 26px);
	font-weight: 900;
	line-height: 1.12;
	overflow-wrap: normal;
	word-break: normal;
}

.vx-contacts--cards .vx-contact-emails a {
	display: block;
	max-width: 100%;
	font-size: clamp(22px, 2vw, 36px);
	line-height: 1.08;
	overflow-wrap: anywhere;
	word-break: break-all;
}

.vx-contacts--cards > .vx-contact-list > .vx-contact-socials-card {
	display: flex;
	align-items: flex-start;
}

.contact-socials {
	display: grid;
	gap: 14px;
	justify-items: start;
}

.contact-socials__label {
	color: var(--vx-muted);
	font-size: 14px;
	font-weight: 900;
	line-height: 1.2;
	text-transform: uppercase;
}

.contact-socials__icons {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.contact-socials__link,
.vx-contact-list .contact-socials__link:not(.zvezda-edit-shortcut) {
	display: grid;
	place-items: center;
	width: 56px;
	height: 56px;
	min-width: 56px;
	color: #ffffff !important;
	line-height: 1;
	text-decoration: none;
}

.contact-socials__link svg {
	display: block;
	width: 25px;
	height: 25px;
	fill: currentColor;
}

.contact-socials__link--telegram {
	background: #2aabee;
}

.contact-socials__link--max {
	background: #471aff;
}

.contact-socials__link:hover,
.contact-socials__link:focus-visible {
	background: #000000;
}

.contact-socials--footer .contact-socials__link {
	width: 48px;
	height: 48px;
	min-width: 48px;
}

.contact-socials--footer .contact-socials__link svg {
	width: 22px;
	height: 22px;
}

@media (prefers-reduced-motion: reduce) {
	.skip-link,
	.vx-button,
	.vx-link,
	.vx-model img,
	.vx-hero__track,
	.vx-hero__title {
		transition: none;
	}

	.vx-hero__progress {
		display: none;
	}
}

@media (max-width: 1180px) {
	.vx-hero,
	.vx-production,
	.vx-route,
	.vx-request,
	.vx-customization,
	.vx-contacts,
	.vx-section__head,
	.vx-news .vx-section__head {
		grid-template-columns: 1fr;
	}

	.vx-news .vx-section__head .brand-bars,
	.vx-news__controls {
		grid-column: 1;
		grid-row: auto;
	}

	.vx-news__controls {
		right: 8px;
		left: 8px;
		justify-content: space-between;
	}

	.vx-hero {
		grid-template-areas:
			"copy-stage"
			"media"
			"quick";
		grid-template-rows: auto minmax(0, 1fr) auto;
		height: calc(100svh - var(--header-height));
		height: calc(100dvh - var(--header-height));
		min-height: 0;
		max-height: calc(100dvh - var(--header-height));
	}

	.vx-hero__copy {
		display: contents;
	}

	.vx-hero__copy-stage {
		grid-area: copy-stage;
		position: relative;
		align-items: start;
		min-height: 0;
		padding-block: 48px;
	}

	.vx-hero__title:not(.is-active) {
		position: absolute;
		top: 48px;
		right: var(--page-pad);
		left: var(--page-pad);
	}

	.vx-hero__quick {
		grid-area: quick;
	}

	.vx-hero__quick a {
		min-height: 160px;
		aspect-ratio: auto;
	}

	.vx-hero h1,
	.vx-hero__slide-title {
		font-size: 64px;
	}

	.vx-hero__media {
		height: 100%;
		min-height: 0;
	}

	.vx-production__text h2 {
		max-width: min(100%, 760px);
	}

	.vx-production__photos {
		min-height: 620px;
	}

	.vx-proof__line {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vx-order__steps {
		grid-template-columns: 1fr;
	}

	.vx-order__steps li {
		min-height: 0;
	}

	.vx-contacts--cards > .vx-contact-list {
		grid-template-columns: 1fr;
	}

	.vx-contacts--cards > .vx-contact-list > div {
		min-height: auto;
	}
}

@media (max-width: 1700px) and (min-width: 1181px) {
	.vx-hero h1,
	.vx-hero__slide-title {
		font-size: 72px;
	}

	.vx-hero__quick a {
		min-height: clamp(150px, 18svh, 200px);
		padding: 22px;
	}

	.vx-hero__quick strong {
		font-size: 28px;
	}
}

@media (max-width: 1600px) and (min-width: 1181px) {
	.vx-hero h1,
	.vx-hero__slide-title {
		font-size: 68px;
	}
}

@media (max-width: 1500px) and (min-width: 1181px) {
	.vx-hero h1,
	.vx-hero__slide-title {
		font-size: 62px;
	}

	.vx-hero__quick strong {
		font-size: 26px;
	}
}

@media (max-width: 1400px) and (min-width: 1181px) {
	.vx-hero h1,
	.vx-hero__slide-title {
		font-size: 56px;
	}

	.vx-production__text h2 {
		font-size: 58px;
	}

	.vx-hero__quick a {
		min-height: 150px;
	}

	.vx-hero__quick strong {
		font-size: clamp(19px, 5.4vw, 22px);
		overflow-wrap: anywhere;
		text-wrap: normal;
	}
}

@media (max-width: 900px) {
	.vx-hero h1,
	.vx-hero__slide-title {
		font-size: 52px;
	}
}

/* News cards keep a readable fixed measure; one item never stretches across the row. */
.vercel-page main:not(.vercel-main) .news-grid {
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 380px));
	justify-content: start;
}

.vercel-page main:not(.vercel-main) .news-grid > a,
.vercel-page .vx-news__grid .news-card {
	transition: background-color var(--fast), border-color var(--fast), color var(--fast);
}

.vercel-page main:not(.vercel-main) .news-grid > a:hover,
.vercel-page main:not(.vercel-main) .news-grid > a:focus-visible,
.vercel-page .vx-news__grid .news-card:hover,
.vercel-page .vx-news__grid .news-card:focus-visible {
	color: #fff;
	background: var(--vx-accent);
}

.vercel-page main:not(.vercel-main) .news-grid > a:hover span,
.vercel-page main:not(.vercel-main) .news-grid > a:hover h2,
.vercel-page main:not(.vercel-main) .news-grid > a:hover p,
.vercel-page main:not(.vercel-main) .news-grid > a:focus-visible span,
.vercel-page main:not(.vercel-main) .news-grid > a:focus-visible h2,
.vercel-page main:not(.vercel-main) .news-grid > a:focus-visible p,
.vercel-page .vx-news__grid .news-card:hover span,
.vercel-page .vx-news__grid .news-card:hover h2,
.vercel-page .vx-news__grid .news-card:hover p,
.vercel-page .vx-news__grid .news-card:focus-visible span,
.vercel-page .vx-news__grid .news-card:focus-visible h2,
.vercel-page .vx-news__grid .news-card:focus-visible p {
	color: #fff;
}

/* Tighter vertical rhythm after the heading scale was reduced. */
.vercel-page .vx-section {
	padding-block: clamp(42px, 4.8vw, 76px);
}

.vercel-page .vx-section__head {
	margin-bottom: clamp(26px, 3.6vw, 54px);
}

.vercel-page main:not(.vercel-main) .section {
	padding-block: clamp(38px, 4.8vw, 76px);
}

.vercel-page main:not(.vercel-main) .page-hero,
.vercel-page main:not(.vercel-main) .model-hero {
	min-height: clamp(240px, 23vw, 340px);
	padding-block: clamp(30px, 3.8vw, 56px);
}

.vercel-page main:not(.vercel-main) .editor-content h2,
.vercel-page main:not(.vercel-main) .editor-content h3,
.vercel-page main:not(.vercel-main) .editor-content h4,
.vercel-page .post-content.editor-content h2,
.vercel-page .post-content.editor-content h3,
.vercel-page .post-content.editor-content h4 {
	margin-top: 1.15em;
	margin-bottom: 0.48em;
}

/* Two compact company blocks directly answer who the manufacturer is and show scale. */
.vercel-page .vx-company {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	padding: 0;
	background: #fff;
	color: var(--vx-dark-text);
}

.vercel-page .vx-company__about,
.vercel-page .vx-company__numbers {
	padding: clamp(34px, 5vw, 76px) var(--content-pad);
}

.vercel-page .vx-company__about {
	background: #171817;
	color: #fff;
}

.vercel-page .vx-company__about h2 {
	max-width: 13ch;
	font-size: clamp(34px, 4vw, 62px);
}

.vercel-page .vx-company__about > p:not(.vx-company__eyebrow) {
	max-width: 42rem;
	color: rgba(255, 255, 255, 0.72);
	font-size: clamp(16px, 1.2vw, 19px);
}

.vercel-page .vx-company__about .vx-link {
	margin-top: 16px;
	color: #fff;
}

.vercel-page .vx-company__eyebrow {
	margin: 0 0 24px;
	color: var(--vx-accent);
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.vercel-page .vx-company__numbers dl {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
	border-top: 1px solid var(--vx-line);
	border-left: 1px solid var(--vx-line);
}

.vercel-page .vx-company__numbers dl div {
	min-height: 150px;
	padding: clamp(20px, 2.5vw, 34px);
	border-right: 1px solid var(--vx-line);
	border-bottom: 1px solid var(--vx-line);
}

.vercel-page .vx-company__numbers dt {
	color: var(--vx-ink);
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-size: clamp(34px, 3.2vw, 52px);
	line-height: 1;
}

.vercel-page .vx-company__numbers dd {
	max-width: 24rem;
	margin: 12px 0 0;
	color: #555;
	font-weight: 750;
	line-height: 1.35;
}

/* The selection steps use the three brand surfaces as one clear sequence. */
.vercel-page .vx-order__steps {
	gap: 12px;
	border: 0;
}

.vercel-page .vx-order__steps li {
	position: relative;
	min-height: 250px;
	border: 1px solid rgba(17, 17, 17, 0.22);
	background: #f1f1ef;
}

.vercel-page .vx-order__steps li::before {
	font-size: clamp(42px, 4.4vw, 68px);
	line-height: 0.9;
}

.vercel-page .vx-order__steps li:nth-child(2) {
	border-color: #171817;
	background: #171817;
	color: #fff;
}

.vercel-page .vx-order__steps li:nth-child(2) span {
	color: rgba(255, 255, 255, 0.72);
}

.vercel-page .vx-order__steps li:nth-child(3) {
	border-color: var(--vx-accent);
	background: var(--vx-accent);
	color: #fff;
}

.vercel-page .vx-order__steps li:nth-child(3)::before,
.vercel-page .vx-order__steps li:nth-child(3) span {
	color: #fff;
}

/* Carousel navigation stays visible as part of the orange brand system. */
.vercel-page .vx-news__arrow {
	background: var(--vx-accent);
	color: #fff;
}

.vercel-page .vx-news__arrow:not(:disabled):hover {
	background: var(--button-primary-hover);
	border-color: var(--button-primary-hover);
}

/* Footer headings must stay labels rather than inheriting the page H2 scale. */
.vercel-page .site-footer .site-footer__title {
	font-family: "Onest", Arial, sans-serif;
	font-size: 15px;
	font-weight: 850;
	line-height: 1.2;
}

.site-footer__cookie-settings {
	width: fit-content;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--vx-muted);
	font: inherit;
	font-size: 14px;
	font-weight: 850;
	text-decoration: underline;
	text-underline-offset: 0.18em;
	cursor: pointer;
}

.site-footer__cookie-settings:hover,
.site-footer__cookie-settings:focus-visible {
	color: var(--vx-accent);
}

/* Cookie controls mirror the proven layout from rykunv.ru in ZVEZДА styling. */
.cookie-consent {
	position: fixed;
	right: var(--content-pad);
	bottom: 20px;
	left: var(--content-pad);
	z-index: 80;
}

.cookie-consent__card {
	display: grid;
	grid-template-columns: minmax(280px, 1.25fr) minmax(280px, 1fr) minmax(210px, 0.65fr);
	gap: 18px;
	align-items: stretch;
	padding: 18px;
	border: 1px solid var(--vx-line);
	border-top: 4px solid var(--vx-accent);
	background: #fff;
	box-shadow: 0 22px 46px rgba(17, 24, 39, 0.18);
	color: var(--vx-ink);
}

.vercel-page .cookie-consent__copy h2 {
	margin: 0 0 8px;
	font-family: "Onest", Arial, sans-serif;
	font-size: clamp(20px, 1.7vw, 26px);
	font-weight: 900;
	line-height: 1.15;
}

.cookie-consent__copy p {
	max-width: 44rem;
	margin: 0;
	color: var(--vx-muted);
	line-height: 1.45;
}

.cookie-consent__copy a {
	color: inherit;
	font-weight: 800;
	text-decoration: underline;
	text-decoration-color: var(--vx-accent);
	text-underline-offset: 0.18em;
}

.cookie-consent__options {
	display: grid;
	gap: 10px;
}

.cookie-consent__options label {
	display: flex;
	gap: 10px;
	align-items: center;
	padding: 10px 12px;
	border: 1px solid var(--vx-line);
	cursor: pointer;
}

.cookie-consent__options input {
	accent-color: var(--vx-accent);
}

.cookie-consent__options span,
.cookie-consent__options small {
	display: block;
}

.cookie-consent__options small {
	margin-top: 2px;
	color: var(--vx-muted);
}

.cookie-consent__actions {
	display: grid;
	gap: 8px;
}

.cookie-consent__actions .vx-button {
	width: 100%;
}

.cookie-consent__reject {
	border: 0;
	background: transparent;
	color: var(--vx-muted);
	font: inherit;
	font-weight: 800;
	text-decoration: underline;
	text-underline-offset: 0.16em;
	cursor: pointer;
}

@media (max-width: 980px) {
	.vercel-page .vx-company {
		grid-template-columns: 1fr;
	}

	.cookie-consent__card {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 620px) {
	.vercel-page .vx-company__numbers dl {
		grid-template-columns: 1fr;
	}

	.cookie-consent {
		right: 12px;
		bottom: 12px;
		left: 12px;
		max-height: calc(100svh - 24px);
		overflow-y: auto;
	}

	.cookie-consent__card {
		padding: 14px;
	}
}

@media (min-width: 761px) and (max-width: 1180px) {
	.vx-hero__copy-stage {
		padding-block: 36px;
	}

	.vx-hero__title:not(.is-active) {
		top: 36px;
	}

	.vx-hero__quick a {
		min-height: 132px;
		aspect-ratio: auto;
	}
}

@media (max-width: 760px) {
	.vx-news .vx-section__head h2 {
		font-size: clamp(28px, 8.5vw, 36px);
	}

	.vx-selection__list {
		grid-template-columns: 1fr;
	}

	.vx-selection__list a {
		min-height: 0;
	}
	:root {
		--header-height: 69px;
		--mobile-hero-action-height: 76px;
		--mobile-hero-actions-height: calc(var(--mobile-hero-action-height) * var(--hero-quick-count, 3));
	}

	.vercel-page .site-header {
		background: var(--vx-bg);
		backdrop-filter: none;
	}

	.vx-hero {
		grid-template-rows: auto minmax(0, 1fr) auto;
		height: calc(100svh - var(--header-height) + var(--mobile-hero-actions-height) + env(safe-area-inset-bottom));
		height: calc(100dvh - var(--header-height) + var(--mobile-hero-actions-height) + env(safe-area-inset-bottom));
		min-height: 0;
		max-height: none;
		overflow: hidden;
	}

	.vx-hero__copy-stage {
		padding: clamp(20px, 3.3svh, 28px) 20px;
	}

	.vx-hero__title:not(.is-active) {
		top: clamp(20px, 3.3svh, 28px);
		right: 20px;
		left: 20px;
	}

	.vx-hero__title {
		gap: 10px;
	}

	.vx-hero h1,
	.vx-hero__slide-title {
		font-size: clamp(30px, 8.6vw, 36px);
	}

	.vx-hero__title .vx-hero__eyebrow {
		font-size: 15px;
	}

	.vx-hero__description {
		font-size: 15px;
		line-height: 1.4;
	}

	.vx-hero__slide-link {
		min-height: var(--button-height);
		margin-top: 0;
		padding-inline: var(--button-padding);
		font-size: var(--button-font-size);
	}

	.vx-hero__quick {
		grid-template-columns: 1fr;
		min-height: calc(var(--mobile-hero-actions-height) + env(safe-area-inset-bottom));
		overflow-x: visible;
		padding-bottom: env(safe-area-inset-bottom);
		border-top: 0;
		border-bottom: 0;
	}

	.vx-hero__quick a {
		aspect-ratio: auto;
		height: var(--mobile-hero-action-height);
		min-height: 0;
		padding: 18px 20px;
		border-top: 1px solid var(--vx-line);
		border-right: 0;
	}

	.vx-hero__quick a:first-child {
		border-top: 0;
	}

	.vx-hero__quick--three {
		grid-template-columns: 1fr;
	}

	.vx-hero__quick--three a,
	.vx-hero__quick--three a:nth-child(-n + 2),
	.vx-hero__quick--three a:nth-child(2n) {
		border-top: 1px solid var(--vx-line);
		border-right: 0;
	}

	.vx-hero__quick--three a:first-child {
		border-top: 0;
	}

	.vx-hero__quick--three a:last-child {
		border-bottom: 1px solid var(--vx-line);
	}

	.vx-hero__quick strong {
		font-size: 22px;
	}

	.vx-hero__media {
		height: 100%;
		min-height: 0;
	}

	.vx-hero__arrow {
		width: 56px;
		height: 56px;
	}

	.vx-hero__counter {
		min-width: 86px;
		padding-inline: 14px;
	}

	.vx-actions,
	.vx-button,
	.vx-link {
		width: 100%;
	}

	.vx-models__grid,
	.vx-proof__line,
	.vx-task-list div,
	.vx-production__photos,
	.vx-news__grid,
	.vx-media__list a {
		grid-template-columns: 1fr;
	}

	.vx-model,
	.vx-model--large {
		min-height: 0;
	}

	.vx-model__image,
	.vx-model--large .vx-model__image {
		min-height: 320px;
	}

	.vx-section {
		padding-block: 42px;
	}

	.vx-section h2 {
		font-size: 44px;
	}

	.vx-section__head {
		gap: 16px;
		margin-bottom: 32px;
	}

	.vx-tasks .vx-section__head {
		grid-template-columns: 1fr;
		align-items: start;
		gap: 14px;
		margin-bottom: 30px;
	}

	.vx-tasks .vx-section__head h2 {
		max-width: 100%;
		font-size: clamp(32px, 10vw, 42px);
		line-height: 1;
	}

	.vx-tasks .vx-section__head p {
		max-width: 34rem;
		font-size: 16px;
		line-height: 1.5;
	}

	.vx-tasks .vx-section__head .brand-bars {
		margin-top: 0;
	}

	.vx-tasks .vx-nowrap {
		white-space: normal;
	}

	.vx-proof__line strong {
		font-size: 34px;
	}

	.vx-production__photos {
		grid-template-rows: none;
		min-height: auto;
	}

	.vx-production__photos img,
	.vx-production__photos img:first-child,
	.vx-production__photos img:nth-child(2):last-child {
		height: 320px;
	}

	.vx-production__photos img:first-child,
	.vx-production__photos img:nth-child(2):last-child {
		grid-row: auto;
	}

	.vx-contact-list > div {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.vx-contact-list small {
		grid-column: auto;
		margin-top: -2px;
	}

	.vx-news__grid .news-card {
		width: 100%;
		min-height: 0;
		flex-basis: auto;
	}

	.vx-news__grid .news-card h2 {
		min-height: 0;
	}

	.vx-news__controls {
		display: none;
	}

	.vx-media__list img {
		order: -1;
		height: 240px;
	}

	.vx-media__list a {
		gap: 0;
	}

}

@media (max-width: 430px) {
	:root {
		--mobile-hero-action-height: 108px;
	}

	.vx-hero h1,
	.vx-hero__slide-title {
		font-size: clamp(30px, 8.6vw, 34px);
	}

	.vx-contacts--cards > .vx-contact-list > div {
		padding: 24px;
	}

	.vx-contact-list a:not(.zvezda-edit-shortcut),
	.vx-contact-list strong {
		max-width: 100%;
		white-space: normal;
		font-size: clamp(16px, 4.7vw, 19px);
		line-height: 1.2;
		word-break: break-word;
	}

	.vx-contact-emails,
	.vx-contacts--cards .vx-contact-emails a {
		max-width: 100%;
		white-space: normal;
		font-size: clamp(16px, 4.7vw, 19px);
		line-height: 1.2;
		word-break: break-all;
	}

	.vx-contact-list small {
		max-width: 100%;
		font-size: 15px;
		white-space: normal;
	}

	.vx-hero__title .vx-hero__eyebrow {
		font-size: 14px;
	}

	.vx-hero__quick a {
		height: var(--mobile-hero-action-height);
		min-height: 0;
		padding: 20px 16px;
	}

	.vx-hero__quick strong {
		font-size: 18px;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	.vx-section {
		padding: 38px 20px;
	}

	.vx-section h2 {
		font-size: 36px;
	}

	.vx-proof__line strong {
		font-size: 30px;
	}
}

@media (max-width: 760px) and (max-height: 720px) {
	:root {
		--header-height: 61px;
	}

	.site-header {
		min-height: 60px;
		padding-block: 6px;
	}

	.site-header.is-open {
		padding-top: 6px;
	}

	.vx-hero__copy-stage {
		padding-block: 14px;
	}

	.vx-hero__title:not(.is-active) {
		top: 14px;
	}

	.vx-hero__title {
		gap: 8px;
	}

	.vx-hero h1,
	.vx-hero__slide-title {
		font-size: 28px;
		line-height: 0.96;
	}

	.vx-hero__title .vx-hero__eyebrow {
		font-size: 13px;
	}

	.vx-hero__description {
		font-size: 14px;
		line-height: 1.35;
	}
}

@media (max-width: 360px) {
	.vx-section h2 {
		font-size: 32px;
	}

	.vx-section p,
	.vx-proof__line span {
		font-size: 15px;
	}

	.vx-proof__line strong {
		font-size: 27px;
	}
}

@media (max-width: 320px) {
	.vx-section {
		padding-inline: 16px;
	}

	.vx-section h2 {
		font-size: 30px;
	}
}

/* Vercel-inspired system for the existing internal pages */
.vercel-page main:not(.vercel-main) {
	background: var(--vx-bg);
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) p,
.vercel-page main:not(.vercel-main) li {
	color: var(--vx-muted);
}

.vercel-page main:not(.vercel-main) h1,
.vercel-page main:not(.vercel-main) h2,
.vercel-page main:not(.vercel-main) h3 {
	color: inherit;
	font-weight: 400;
	text-wrap: balance;
}

.vercel-page main:not(.vercel-main) .breadcrumbs {
	padding: 20px var(--content-pad);
	border-bottom: 1px solid var(--vx-line);
	background: rgba(232, 232, 230, 0.92);
	color: var(--vx-muted);
}

.vercel-page main:not(.vercel-main) .breadcrumbs a {
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .breadcrumbs a:hover {
	color: var(--vx-accent);
}

.vercel-page main:not(.vercel-main) .page-hero,
.vercel-page main:not(.vercel-main) .model-hero {
	position: relative;
	overflow: hidden;
	grid-template-columns: minmax(0, 0.58fr) minmax(320px, 0.42fr);
	min-height: clamp(260px, 28vw, 420px);
	padding-block: clamp(34px, 4.5vw, 72px);
	border-bottom: 1px solid var(--vx-line);
	background: #e0e0de;
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .page-hero::after,
.vercel-page main:not(.vercel-main) .model-hero::after {
	content: "";
	position: absolute;
	right: var(--content-pad);
	bottom: -1px;
	width: min(36vw, 520px);
	height: 1px;
	background: var(--vx-accent);
}

.vercel-page main:not(.vercel-main) .page-hero > *,
.vercel-page main:not(.vercel-main) .model-hero > * {
	position: relative;
	z-index: 1;
}

.vercel-page main:not(.vercel-main) .page-hero h1,
.vercel-page main:not(.vercel-main) .model-hero h1 {
	max-width: 20ch;
	color: var(--vx-ink);
	font-size: clamp(32px, 4vw, 58px);
	line-height: 0.96;
	text-transform: uppercase;
}

.vercel-page main:not(.vercel-main) .page-hero p,
.vercel-page main:not(.vercel-main) .model-hero p {
	max-width: 44rem;
	color: var(--vx-muted);
	font-size: clamp(16px, 1.15vw, 19px);
	line-height: 1.5;
}

.vercel-page main:not(.vercel-main) .model-hero img {
	width: 100%;
	height: clamp(220px, 24vw, 360px);
	border: 1px solid var(--vx-line);
	background: var(--vx-panel);
	object-fit: cover;
}

.vercel-page main:not(.vercel-main) .page-hero__actions {
	align-self: end;
}

.vercel-page main:not(.vercel-main) .section {
	padding: clamp(48px, 6.5vw, 108px) var(--content-pad);
	border-bottom: 1px solid var(--vx-line);
	background: #e8e8e6;
}

.vercel-page main:not(.vercel-main) .section--compact {
	padding-block: 24px;
	background: #e0e0de;
}

.vercel-page main:not(.vercel-main) .models-filter-section {
	padding-block: 24px;
}

.vercel-page main:not(.vercel-main) .models-catalog-section {
	padding-top: 0;
}

.vercel-page main:not(.vercel-main) .section--proof,
.vercel-page main:not(.vercel-main) .section--tasks,
.vercel-page main:not(.vercel-main) .section--media,
.vercel-page main:not(.vercel-main) .section--contacts {
	background: #e0e0de;
}

.vercel-page main:not(.vercel-main) .section--split {
	align-items: start;
}

.vercel-page main:not(.vercel-main) .section--split > :first-child h2,
.vercel-page main:not(.vercel-main) .section__head h2 {
	max-width: 18ch;
	font-size: clamp(36px, 5vw, 78px);
	line-height: 1;
}

.vercel-page main:not(.vercel-main) .section__head .brand-bars {
	margin-top: 18px;
}

.vercel-page main:not(.vercel-main) .section--dark > div > .brand-bars {
	margin-block: 14px 4px;
}

.vercel-page main:not(.vercel-main) .lead-text {
	color: var(--vx-ink);
	font-size: clamp(21px, 2.1vw, 34px);
	line-height: 1.35;
}

.vercel-page main:not(.vercel-main) .editor-content {
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .editor-content p,
.vercel-page main:not(.vercel-main) .editor-content li,
.vercel-page main:not(.vercel-main) .editor-content figcaption,
.vercel-page main:not(.vercel-main) .editor-content .wp-caption-text,
.vercel-page main:not(.vercel-main) .editor-content blockquote cite,
.vercel-page main:not(.vercel-main) .editor-content .wp-block-quote cite {
	color: var(--vx-muted);
}

.vercel-page main:not(.vercel-main) .editor-content blockquote,
.vercel-page main:not(.vercel-main) .editor-content .wp-block-quote,
.vercel-page main:not(.vercel-main) .editor-content table,
.vercel-page main:not(.vercel-main) .editor-content .wp-block-table table {
	border-color: var(--vx-line);
	background: rgba(255, 255, 255, 0.36);
}

.vercel-page main:not(.vercel-main) .editor-content blockquote,
.vercel-page main:not(.vercel-main) .editor-content .wp-block-quote,
.vercel-page main:not(.vercel-main) .editor-content blockquote p,
.vercel-page main:not(.vercel-main) .editor-content .wp-block-quote p,
.vercel-page main:not(.vercel-main) .editor-content .lead-text,
.vercel-page main:not(.vercel-main) .editor-content h2,
.vercel-page main:not(.vercel-main) .editor-content h3,
.vercel-page main:not(.vercel-main) .editor-content h4,
.vercel-page main:not(.vercel-main) .editor-content th {
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .editor-content blockquote,
.vercel-page main:not(.vercel-main) .editor-content .wp-block-quote {
	border-left-color: var(--vx-accent);
}

.vercel-page main:not(.vercel-main) .editor-content th,
.vercel-page main:not(.vercel-main) .editor-content td,
.vercel-page main:not(.vercel-main) .editor-content img {
	border-color: var(--vx-line);
}

.vercel-page main:not(.vercel-main) .inline-photo {
	border: 1px solid var(--vx-line);
	background: var(--vx-panel);
}

.vercel-page main:not(.vercel-main) .tag-row {
	gap: 8px;
}

.vercel-page main:not(.vercel-main) .tag-row span,
.vercel-page main:not(.vercel-main) .tag-row a,
.vercel-page main:not(.vercel-main) .fact-strip span {
	border-color: var(--vx-line);
	background: transparent;
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .tag-row a:hover,
.vercel-page main:not(.vercel-main) .tag-row a.is-active {
	border-color: var(--vx-accent);
	background: #ffffff;
	color: var(--vx-accent);
}

.vercel-page main:not(.vercel-main) .button,
.vercel-page main:not(.vercel-main) .text-link {
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .button {
	border: 1px solid var(--vx-line);
	background: transparent;
}

.vercel-page main:not(.vercel-main) .button:not(.button--outline),
.vercel-page main:not(.vercel-main) .request-form .button {
	border-color: var(--vx-accent);
	background: var(--vx-accent);
	color: #fff;
}

.vercel-page main:not(.vercel-main) .button:not(.button--outline):hover,
.vercel-page main:not(.vercel-main) .button:not(.button--outline):focus-visible,
.vercel-page main:not(.vercel-main) .request-form .button:hover,
.vercel-page main:not(.vercel-main) .request-form .button:focus-visible {
	border-color: var(--button-primary-hover);
	background: var(--button-primary-hover);
	color: #ffffff;
}

.vercel-page main:not(.vercel-main) .button--outline:hover,
.vercel-page main:not(.vercel-main) .text-link:hover {
	border-color: var(--vx-accent);
	background: var(--vx-accent);
	color: #fff;
}

.vercel-page main:not(.vercel-main) .catalog-list {
	gap: 0;
	border-top: 1px solid var(--vx-line);
}

.vercel-page main:not(.vercel-main) .models-catalog-section .catalog-list {
	border-top: 0;
}

.vercel-page main:not(.vercel-main) .catalog-card {
	grid-template-columns: minmax(250px, 0.38fr) minmax(0, 0.62fr);
	gap: clamp(18px, 3vw, 42px);
	padding-block: clamp(18px, 2.4vw, 32px);
	border-top: 0;
	border-bottom: 1px solid var(--vx-line);
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .models-catalog-section .catalog-card:last-child {
	border-bottom: 0;
}

.vercel-page main:not(.vercel-main) .catalog-card img {
	min-height: clamp(220px, 22vw, 320px);
	max-height: 340px;
	border: 1px solid var(--vx-line);
	background: var(--vx-panel);
}

.vercel-page main:not(.vercel-main) .catalog-card h2 {
	color: var(--vx-ink);
	font-size: clamp(28px, 3.2vw, 44px);
	line-height: 1;
}

.vercel-page main:not(.vercel-main) .model-card__type,
.vercel-page main:not(.vercel-main) .news-grid time,
.vercel-page main:not(.vercel-main) .contact-card span,
.vercel-page main:not(.vercel-main) .spec-table span {
	color: var(--vx-accent);
}

.vercel-page main:not(.vercel-main) .spec-list li,
.vercel-page main:not(.vercel-main) .spec-table div {
	border-color: var(--vx-line);
	background: rgba(255, 255, 255, 0.36);
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .spec-table {
	border-color: var(--vx-line);
	background: transparent;
}

.vercel-page main:not(.vercel-main) .spec-table strong {
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .proof-grid {
	gap: 0;
	border-top: 0;
	border-left: 0;
}

.vercel-page main:not(.vercel-main) .proof-grid > * {
	min-height: 190px;
	padding: clamp(20px, 2.4vw, 34px) clamp(18px, 2.8vw, 42px) clamp(12px, 2vw, 26px) 0;
	border: 0;
	background: transparent;
	transform: none;
}

.vercel-page main:not(.vercel-main) .proof-grid > * + * {
	padding-left: clamp(18px, 2.6vw, 38px);
}

.vercel-page main:not(.vercel-main) .proof-grid strong {
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .proof-grid span {
	color: var(--vx-muted);
}

.vercel-page main:not(.vercel-main) .news-filters a {
	border-color: var(--vx-line);
	color: var(--vx-ink);
	background: rgba(255, 255, 255, 0.32);
}

.vercel-page main:not(.vercel-main) .news-filters a:hover,
.vercel-page main:not(.vercel-main) .news-filters a.is-active {
	border-color: var(--vx-accent);
	background: var(--vx-accent);
	color: #ffffff;
}

.vercel-page main:not(.vercel-main) .news-year-group__head {
	border-top-color: var(--vx-line);
}

.vercel-page main:not(.vercel-main) .news-year-group__head span {
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .news-year-group__head small,
.vercel-page main:not(.vercel-main) .news-empty {
	color: var(--vx-muted);
}

.vercel-page main:not(.vercel-main) .task-grid,
.vercel-page main:not(.vercel-main) .news-grid,
.vercel-page main:not(.vercel-main) .gallery-grid,
.vercel-page main:not(.vercel-main) .contact-details {
	gap: 0;
	border-top: 1px solid var(--vx-line);
	border-left: 1px solid var(--vx-line);
}

.vercel-page main:not(.vercel-main) .task-grid article,
.vercel-page main:not(.vercel-main) .news-grid article,
.vercel-page main:not(.vercel-main) .news-grid > a,
.vercel-page main:not(.vercel-main) .contact-card {
	min-height: 240px;
	padding: clamp(18px, 2.4vw, 32px);
	border: 0;
	border-right: 1px solid var(--vx-line);
	border-bottom: 1px solid var(--vx-line);
	background: rgba(255, 255, 255, 0.32);
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .news-grid article img,
.vercel-page main:not(.vercel-main) .news-grid > a img,
.vercel-page main:not(.vercel-main) .gallery-grid img {
	border: 0;
	background: var(--vx-panel);
}

.vercel-page main:not(.vercel-main) .news-grid {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
}

.vercel-page main:not(.vercel-main) .news-grid > a {
	display: grid;
	grid-template-rows: auto auto auto 1fr;
	min-height: 0;
	padding: 0;
	background: rgba(255, 255, 255, 0.32);
	overflow: visible;
}

.vercel-page main:not(.vercel-main) .news-grid > a h2 {
	color: var(--vx-ink);
	font-size: clamp(22px, 1.9vw, 30px);
	line-height: 1.08;
	overflow-wrap: anywhere;
	word-break: normal;
	hyphens: auto;
	text-wrap: balance;
}

.vercel-page main:not(.vercel-main) .news-grid > a p {
	color: var(--vx-muted);
}

.vercel-page main:not(.vercel-main) .gallery-grid img {
	border-right: 1px solid var(--vx-line);
	border-bottom: 1px solid var(--vx-line);
}

.vercel-page main:not(.vercel-main) .contact-card--primary {
	background: #ffffff;
	color: var(--vx-accent);
}

.vercel-page main:not(.vercel-main) .contact-card a,
.vercel-page main:not(.vercel-main) .contact-card strong {
	color: inherit;
}

.vercel-page main:not(.vercel-main) .section--dark {
	background: #e0e0de;
	color: var(--vx-ink);
}

.vercel-page main:not(.vercel-main) .request-form {
	border: 1px solid rgba(255, 255, 255, 0.26);
	background: #fff;
	color: #111;
}

.vercel-page main:not(.vercel-main) .request-form label {
	color: #111;
}

.vercel-page main:not(.vercel-main) .request-form input,
.vercel-page main:not(.vercel-main) .request-form textarea {
	border-color: #b9bdb8;
	color: #111;
}

.vercel-page main:not(.vercel-main) .request-form input:focus,
.vercel-page main:not(.vercel-main) .request-form textarea:focus {
	border-color: var(--vx-accent);
	outline: 2px solid var(--vx-accent);
	outline-offset: 2px;
	box-shadow: none;
}

.vercel-page main:not(.vercel-main) .contact-list a,
.vercel-page main:not(.vercel-main) .contact-list span {
	border-color: var(--vx-line);
	background: rgba(255, 255, 255, 0.03);
	color: var(--vx-ink);
}

@media (max-width: 1180px) {
	.vercel-page main:not(.vercel-main) .page-hero,
	.vercel-page main:not(.vercel-main) .model-hero,
	.vercel-page main:not(.vercel-main) .catalog-card {
		grid-template-columns: 1fr;
	}

	.vercel-page main:not(.vercel-main) .page-hero h1,
	.vercel-page main:not(.vercel-main) .model-hero h1 {
		max-width: 18ch;
	}
}

@media (max-width: 720px) {
	.vercel-page main:not(.vercel-main) .section {
		padding: 38px 20px;
	}

	.vercel-page main:not(.vercel-main) .page-hero,
	.vercel-page main:not(.vercel-main) .model-hero {
		min-height: auto;
		padding-block: 30px;
	}

	.vercel-page main:not(.vercel-main) .page-hero h1,
	.vercel-page main:not(.vercel-main) .model-hero h1 {
		font-size: clamp(30px, 9vw, 40px);
		hyphens: none;
		overflow-wrap: normal;
		word-break: normal;
	}

	.vercel-page .vx-production__text h2 {
		font-size: clamp(32px, 9vw, 38px);
		hyphens: none;
		overflow-wrap: normal;
		word-break: normal;
	}

	.vercel-page main:not(.vercel-main) .model-hero img,
	.vercel-page main:not(.vercel-main) .catalog-card img {
		height: auto;
		min-height: 220px;
	}
}

/* Heading system: page titles, section titles and editorial hierarchy. */
:root {
	--heading-h1: clamp(36px, 4.5vw, 68px);
	--heading-h2: clamp(30px, 3.4vw, 54px);
	--heading-h3: clamp(24px, 2.2vw, 34px);
	--heading-h4: clamp(20px, 1.6vw, 26px);
	--heading-h5: clamp(18px, 1.25vw, 22px);
	--heading-h6: clamp(16px, 1vw, 18px);
	--heading-leading-tight: 1;
	--heading-leading: 1.08;
}

.vercel-page h1,
.vercel-page h2,
.vercel-page h3,
.vercel-page h4,
.vercel-page h5,
.vercel-page h6 {
	margin-top: 0;
	font-family: "Russo One", "Onest", Arial, sans-serif;
	font-weight: 400;
	letter-spacing: 0;
	hyphens: none;
	overflow-wrap: normal;
	text-wrap: balance;
	word-break: normal;
}

.vercel-page h1 {
	font-size: var(--heading-h1);
	line-height: 0.96;
}

.vercel-page h2 {
	font-size: var(--heading-h2);
	line-height: var(--heading-leading-tight);
}

.vercel-page h3 {
	font-size: var(--heading-h3);
	line-height: 1.04;
}

.vercel-page h4 {
	font-size: var(--heading-h4);
	line-height: var(--heading-leading);
}

.vercel-page h5 {
	font-size: var(--heading-h5);
	line-height: var(--heading-leading);
}

.vercel-page h6 {
	font-size: var(--heading-h6);
	line-height: var(--heading-leading);
}

.vercel-page .vx-hero h1,
.vercel-page .vx-hero__slide-title,
.vercel-page main:not(.vercel-main) .page-hero h1,
.vercel-page main:not(.vercel-main) .model-hero h1,
.vercel-page .post-hero h1 {
	max-width: 20ch;
	font-size: var(--heading-h1);
	line-height: 0.96;
}

.vercel-page .vx-section h2,
.vercel-page .vx-production__text h2,
.vercel-page main:not(.vercel-main) .section--split > :first-child h2,
.vercel-page main:not(.vercel-main) .section__head h2,
.vercel-page main:not(.vercel-main) .section--dark > :first-child h2,
.vercel-page main:not(.vercel-main) .editor-content h2,
.vercel-page .post-content.editor-content h2 {
	font-size: var(--heading-h2);
	line-height: var(--heading-leading-tight);
}

.vercel-page main:not(.vercel-main) .editor-content h3,
.vercel-page .post-content.editor-content h3 {
	font-size: var(--heading-h3);
	line-height: 1.04;
}

.vercel-page.single-models main:not(.vercel-main) .section--split .editor-content h2 + h3 {
	margin-top: 0;
	padding-top: clamp(52px, 5.5vw, 72px);
}

@media (min-width: 1021px) {
	body.vercel-page {
		padding-top: 64px;
	}

	.vercel-page .site-header {
		position: fixed;
		inset: 0 0 auto 0;
		margin: 0;
		transform: none;
	}
}

.vercel-page main:not(.vercel-main) .editor-content h4,
.vercel-page .post-content.editor-content h4 {
	font-size: var(--heading-h4);
	line-height: var(--heading-leading);
}

/* Card titles are deliberately compact, but use the same face, weight and rhythm. */
.vercel-page .news-card h2,
.vercel-page .catalog-card h2 {
	font-size: clamp(22px, 2.4vw, 34px);
	line-height: 1.05;
}

@media (max-width: 340px) {
	:root {
		--heading-h1: 32px;
	}

	.vercel-page h1 {
		overflow-wrap: anywhere;
	}
}

/* Form focus uses the existing field border without a second outline. */
.vercel-page .request-form input:focus,
.vercel-page .request-form textarea:focus,
.vercel-page .request-form select:focus,
.vercel-page .vx-form input:focus,
.vercel-page .vx-form textarea:focus,
.vercel-page .vx-form select:focus,
.vercel-page .request-form input:focus-visible,
.vercel-page .request-form textarea:focus-visible,
.vercel-page .request-form select:focus-visible,
.vercel-page .vx-form input:focus-visible,
.vercel-page .vx-form textarea:focus-visible,
.vercel-page .vx-form select:focus-visible,
.vercel-page main:not(.vercel-main) .request-form input:focus,
.vercel-page main:not(.vercel-main) .request-form textarea:focus,
.vercel-page main:not(.vercel-main) .request-form select:focus,
.vercel-page main:not(.vercel-main) .request-form input:focus-visible,
.vercel-page main:not(.vercel-main) .request-form textarea:focus-visible,
.vercel-page main:not(.vercel-main) .request-form select:focus-visible {
	border-color: var(--vx-accent);
	outline: 0;
	box-shadow: none;
}

/* The model catalogue stays fixed in place; hover changes colour only. */
.vercel-page main:not(.vercel-main) .catalog-card:hover,
.vercel-page main:not(.vercel-main) .catalog-card:hover img,
.vercel-page main:not(.vercel-main) .models-filter-section .tag-row a:hover,
.vercel-page main:not(.vercel-main) .models-filter-section .tag-row a:focus-visible {
	transform: none;
}

.vercel-page main:not(.vercel-main) .catalog-card {
	transition: border-color var(--fast);
}

.vercel-page main:not(.vercel-main) .catalog-card img {
	transition: filter var(--fast);
}

.vercel-page main:not(.vercel-main) .models-filter-section .tag-row a {
	transition: background-color var(--fast), border-color var(--fast), color var(--fast);
}

/* Editorial links on the company page replace loose source links with clear destinations. */
.vercel-page main:not(.vercel-main) .about-materials__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-top: 1px solid var(--vx-line);
	border-left: 1px solid var(--vx-line);
}

.vercel-page main:not(.vercel-main) .about-material-card {
	display: grid;
	grid-template-rows: auto auto auto 1fr;
	color: var(--vx-ink);
	text-decoration: none;
	border-right: 1px solid var(--vx-line);
	border-bottom: 1px solid var(--vx-line);
	transition: background-color var(--fast), color var(--fast);
}

.vercel-page main:not(.vercel-main) .about-material-card img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.vercel-page main:not(.vercel-main) .about-material-card span,
.vercel-page main:not(.vercel-main) .about-material-card h3,
.vercel-page main:not(.vercel-main) .about-material-card p {
	margin: 0;
	padding-inline: clamp(18px, 2vw, 28px);
}

.vercel-page main:not(.vercel-main) .about-material-card span {
	padding-top: 18px;
	color: var(--vx-accent);
	font-weight: 900;
}

.vercel-page main:not(.vercel-main) .about-material-card h3 {
	padding-top: 8px;
}

.vercel-page main:not(.vercel-main) .about-material-card p {
	padding-top: 12px;
	padding-bottom: 24px;
	color: var(--vx-muted);
	font-weight: 700;
}

.vercel-page main:not(.vercel-main) .about-material-card:hover,
.vercel-page main:not(.vercel-main) .about-material-card:focus-visible {
	color: #fff;
	background: var(--vx-accent);
}

.vercel-page main:not(.vercel-main) .about-material-card:hover span,
.vercel-page main:not(.vercel-main) .about-material-card:hover p,
.vercel-page main:not(.vercel-main) .about-material-card:focus-visible span,
.vercel-page main:not(.vercel-main) .about-material-card:focus-visible p {
	color: #fff;
}

@media (max-width: 900px) {
	.vercel-page main:not(.vercel-main) .about-materials__grid {
		grid-template-columns: 1fr;
	}
}

/* YouGile content and layout pass — July 2026. */
.form-required {
	color: var(--vx-accent, var(--accent));
	font: inherit;
}

.vercel-page .section--request,
.vercel-page main:not(.vercel-main) .section--request,
.vercel-page .vx-request {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(360px, 1.1fr);
	gap: clamp(32px, 6vw, 96px);
	align-items: start;
	background: #ffffff;
	color: var(--vx-ink);
}

/* Article-style pages use the same light-gray request section. */
.vercel-page .post-page > .section--request {
	background-color: #e8e8e6 !important;
}

.vercel-page .section--request > :first-child,
.vercel-page main:not(.vercel-main) .section--request > :first-child,
.vercel-page .vx-request > :first-child,
.vercel-page main:not(.vercel-main) .section--split > :first-child,
.vercel-page .vx-production__text {
	position: sticky;
	top: calc(var(--header-height) + 28px);
}

.vercel-page .section--request > :first-child,
.vercel-page main:not(.vercel-main) .section--request > :first-child {
	display: grid;
	gap: var(--vx-description-gap);
}

.vercel-page .section--request > :first-child > .brand-bars,
.vercel-page main:not(.vercel-main) .section--request > :first-child > .brand-bars {
	margin-block: 2px 6px;
}

.vercel-page .section--request p,
.vercel-page main:not(.vercel-main) .section--request p,
.vercel-page .vx-request p {
	color: var(--vx-muted);
}

.vercel-page :is(.vx-section__head, .vx-customization__copy, .vx-request > div, .vx-model__content) > p,
.vercel-page main:not(.vercel-main) .section__head > p {
	margin-block: 16px;
	font-size: var(--vx-description-size);
	font-weight: var(--vx-description-weight);
	line-height: var(--vx-description-leading);
}

.vercel-page main:not(.vercel-main) .section__head:has(> p) {
	display: grid;
	gap: var(--vx-description-gap);
}

.vercel-page main:not(.vercel-main) .section__head:has(> p) > .brand-bars {
	margin-top: 2px;
}

.vercel-page .section--request .request-form,
.vercel-page main:not(.vercel-main) .section--request .request-form,
.vercel-page .vx-request .vx-form {
	width: 100%;
	max-width: 720px;
	margin-left: auto;
	border: 1px solid var(--vx-line);
	background: #f3f3f1;
	color: var(--vx-ink);
}

.vercel-page .form-consent a {
	color: inherit;
	text-decoration: underline;
	text-decoration-thickness: from-font;
	text-underline-offset: 0.16em;
}

.vercel-page .form-consent a:hover,
.vercel-page .form-consent a:focus-visible {
	color: var(--vx-accent);
}

/* No dark panels: photographs and the orange brand colour carry the weight. */
.vercel-page .vx-company__about,
.vercel-page .vx-order__steps li:nth-child(2),
.vercel-page main:not(.vercel-main) .section--dark {
	border-color: var(--vx-line);
	background: #ffffff;
	color: var(--vx-ink);
}

.vercel-page .vx-company__about > p,
.vercel-page .vx-company__about .vx-link,
.vercel-page .vx-order__steps li:nth-child(2) span {
	color: var(--vx-muted);
}

.vercel-page .vx-company__about .vx-link {
	border-color: var(--vx-accent);
	background: var(--vx-accent);
	color: #fff;
}

.vercel-page .vx-company__media {
	min-height: 440px;
	margin: 0;
	overflow: hidden;
}

.vercel-page .vx-company__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Model names live on the machinery, not in a detached white caption. */
.vercel-page .vx-model {
	display: block;
	min-height: 430px;
	padding: 0;
	border-color: #ffffff;
	background: #222;
	color: #ffffff;
}

.vercel-page .vx-model--large {
	min-height: 720px;
}

.vercel-page .vx-model__image,
.vercel-page .vx-model--large .vx-model__image {
	position: absolute;
	inset: 0;
	min-height: 0;
}

.vercel-page .vx-model::before {
	content: "";
	position: absolute;
	inset: 38% 0 0;
	z-index: 1;
	background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.78));
	pointer-events: none;
}

.vercel-page .vx-model__content {
	position: absolute;
	right: 0;
	bottom: clamp(24px, 2.6vw, 38px);
	left: 0;
	z-index: 2;
	display: grid;
	gap: var(--vx-description-gap);
	padding-inline: clamp(20px, 2.4vw, 34px);
	color: #ffffff;
}

.vercel-page .vx-model__content > p {
	color: rgba(255, 255, 255, 0.84);
}

@media (min-width: 901px) {
	.vercel-page .vx-models .vx-section__head {
		margin-bottom: clamp(20px, 3vh, 28px);
	}

	.vercel-page .vx-models__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.vercel-page .vx-models .vx-model,
	.vercel-page .vx-models .vx-model--large {
		grid-row: auto;
		height: min(calc((100vw - (2 * var(--content-pad))) / 3), clamp(320px, 44vh, 520px));
		min-height: 0;
		aspect-ratio: auto;
	}

	.vercel-page .vx-models .vx-model strong {
		font-size: clamp(24px, 2.6vw, 44px);
		line-height: 1;
	}
}

/* Home news uses a quiet grey state; orange remains for controls and actions. */
.vercel-page .vx-news__grid .news-card:hover,
.vercel-page .vx-news__grid .news-card:focus-visible {
	background: #dededb;
	border-color: #dededb;
	color: var(--vx-ink);
}

.vercel-page .vx-news__grid .news-card:hover span,
.vercel-page .vx-news__grid .news-card:hover h2,
.vercel-page .vx-news__grid .news-card:focus-visible span,
.vercel-page .vx-news__grid .news-card:focus-visible h2 {
	color: var(--vx-accent);
}

.vercel-page .vx-news__grid .news-card:hover p,
.vercel-page .vx-news__grid .news-card:focus-visible p {
	color: #555;
}

.vercel-page .vx-news__arrow {
	border: 0;
	background-color: var(--vx-accent);
	color: #ffffff;
}

.vercel-page .vx-hero__controls,
.vercel-page .vx-hero__arrow {
	border-color: rgba(255, 255, 255, 0.38);
	background: var(--vx-accent);
	color: #ffffff;
}

.vercel-page .vx-hero__counter {
	background: var(--vx-accent);
	color: #ffffff;
}

.vercel-page .vx-news__grid {
	scroll-snap-type: x mandatory;
	overscroll-behavior-x: contain;
	touch-action: pan-x pan-y;
}

.vercel-page .vx-news__grid .news-card {
	scroll-snap-align: start;
}

/* Compact inner-page introduction; content width remains aligned with the header. */
.vercel-page main:not(.vercel-main) .page-hero {
	min-height: clamp(190px, 18vw, 270px);
	padding-block: clamp(26px, 3vw, 44px);
}

.vercel-page main:not(.vercel-main) .page-hero h1 {
	font-size: clamp(34px, 4vw, 58px);
}

.vercel-page .vx-production__photos {
	height: clamp(300px, 28vw, 380px);
	min-height: 0;
}

.vercel-page .vx-production__photos img {
	height: 100%;
	min-height: 0;
}

.vercel-page .vx-contacts--cards,
.vercel-page .vx-contacts--cards > .vx-contact-list,
.vercel-page .vx-contacts--cards > .vx-contact-list > div {
	background: #ffffff;
}

.vercel-page .spec-table,
.vercel-page .spec-table div,
.vercel-page .spec-table--light,
.vercel-page .spec-table--light div {
	background: #ffffff;
}

.vercel-page main:not(.vercel-main) .section--proof.section--specs-light {
	background: #ffffff;
}

.vercel-page .models-catalog-section .model-card__type + h2 {
	margin-top: 12px;
}

.vercel-page main:not(.vercel-main) .about-story {
	display: grid;
	grid-template-columns: minmax(250px, 0.72fr) minmax(0, 1.28fr);
	gap: clamp(40px, 7vw, 112px);
	align-items: start;
}

.vercel-page main:not(.vercel-main) .about-story__aside {
	position: sticky;
	top: 110px;
}

.vercel-page main:not(.vercel-main) .about-story__aside h2,
.vercel-page main:not(.vercel-main) .about-story__content h2,
.vercel-page main:not(.vercel-main) .production-process h2 {
	font-size: clamp(30px, 3vw, 48px);
	line-height: 1.02;
}

.vercel-page main:not(.vercel-main) .about-story__aside nav {
	display: grid;
	margin-top: 28px;
	border-top: 1px solid var(--vx-line);
}

.vercel-page main:not(.vercel-main) .about-story__aside a {
	display: grid;
	grid-template-columns: 34px 1fr;
	gap: 4px 12px;
	padding: 18px 0;
	color: var(--vx-ink);
	text-decoration: none;
	border-bottom: 1px solid var(--vx-line);
}

.vercel-page main:not(.vercel-main) .about-story__aside a span {
	grid-row: 1 / 3;
	color: var(--vx-accent);
	font-weight: 900;
}

.vercel-page main:not(.vercel-main) .about-story__aside a small {
	color: var(--vx-muted);
}

.vercel-page main:not(.vercel-main) .about-story__aside a:hover strong,
.vercel-page main:not(.vercel-main) .about-story__aside a:focus-visible strong {
	color: var(--vx-accent);
}

.vercel-page main:not(.vercel-main) .production-process {
	display: grid;
	grid-template-columns: minmax(240px, 0.72fr) minmax(0, 1.28fr);
	gap: clamp(40px, 7vw, 112px);
	background: #ffffff;
}

.vercel-page main:not(.vercel-main) .production-process__intro p {
	max-width: 34ch;
	color: var(--vx-muted);
}

.vercel-page main:not(.vercel-main) .production-process__steps {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--vx-line);
}

.vercel-page main:not(.vercel-main) .production-process__steps li {
	display: grid;
	grid-template-columns: 64px 1fr;
	gap: 20px;
	padding: clamp(20px, 2.6vw, 34px) 0;
	border-bottom: 1px solid var(--vx-line);
}

.vercel-page main:not(.vercel-main) .production-process__steps li > span {
	color: var(--vx-accent);
	font-size: 20px;
	font-weight: 900;
}

.vercel-page main:not(.vercel-main) .production-process__steps h3 {
	margin: 0 0 8px;
	font-size: clamp(23px, 2.2vw, 34px);
}

.vercel-page main:not(.vercel-main) .production-process__steps p {
	max-width: 62ch;
	margin: 0;
	color: var(--vx-muted);
}

/* Keep every archive card on the same regular grid, including incomplete rows. */
.vercel-page main:not(.vercel-main) .news-year-group .news-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 360px), 1fr));
	gap: 14px;
	border: 0;
}

.vercel-page main:not(.vercel-main) .news-year-group .news-grid > .news-card {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	border: 1px solid var(--vx-line);
}

.vercel-page .post-actions {
	display: grid;
	grid-template-columns: 1fr;
	gap: 8px;
}

.vercel-page .post-action {
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 48px;
	padding: 0 16px;
	border: 1px solid var(--vx-line);
	background: #ffffff;
	color: var(--vx-ink);
	font: inherit;
	font-weight: 900;
	cursor: pointer;
}

.vercel-page .post-action strong {
	margin-left: auto;
}

.vercel-page .post-action:hover,
.vercel-page .post-action:focus-visible,
.vercel-page .post-action.is-liked {
	border-color: var(--vx-accent);
	background: var(--vx-accent);
	color: #ffffff;
}

.vercel-page .post-action:disabled {
	cursor: default;
	opacity: 1;
}

.vercel-page .post-related {
	display: grid;
	margin-top: 14px;
	border-top: 1px solid var(--vx-line);
}

.vercel-page .post-related h2 {
	margin: 20px 0 8px;
	font-size: clamp(24px, 2vw, 32px);
}

.vercel-page .post-related a {
	display: grid;
	gap: 6px;
	padding: 16px 0;
	border-bottom: 1px solid var(--vx-line);
	color: var(--vx-ink);
	text-decoration: none;
}

.vercel-page .post-related a small {
	color: var(--vx-muted);
}

.vercel-page .post-related a:hover strong,
.vercel-page .post-related a:focus-visible strong {
	color: var(--vx-accent);
}

.vercel-page .post-social {
	margin-top: clamp(42px, 6vw, 76px);
	padding-top: clamp(28px, 4vw, 44px);
	border-top: 1px solid var(--vx-line);
}

.vercel-page .post-social h2 {
	margin-top: 0;
}

.vercel-page .post-social__links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.vercel-page .post-social__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-width: 150px;
	min-height: 52px;
	padding: 0 22px;
	font-weight: 900;
	text-decoration: none;
	transition: background-color 160ms ease;
}

.vercel-page .post-social__icon {
	width: 22px;
	height: 22px;
	flex: 0 0 22px;
	fill: currentColor;
}

.vercel-page .post-social__link--telegram {
	background: #2aabee !important;
	color: #ffffff !important;
}

.vercel-page .post-social__link--telegram:hover,
.vercel-page .post-social__link--telegram:focus-visible {
	background: #000000 !important;
}

.vercel-page .post-social__link--max {
	background: #471aff !important;
	color: #ffffff !important;
}

.vercel-page .post-social__link--max:hover,
.vercel-page .post-social__link--max:focus-visible {
	background: #000000 !important;
}

.vercel-page .site-footer .site-footer__title {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	color: var(--vx-muted);
	font-family: "Onest", Arial, sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
}

.vercel-page .site-footer .site-footer__title::after {
	content: "";
	flex: 1 1 auto;
	min-width: 24px;
	border-top: 1px solid var(--vx-line);
}

.vercel-page .site-footer .site-footer__policy,
.vercel-page .site-footer .site-footer__cookie-settings {
	color: var(--vx-muted);
	font-size: 14px;
	font-weight: 850;
	line-height: 1.3;
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.vercel-page .site-footer .site-footer__policy:hover,
.vercel-page .site-footer .site-footer__policy:focus-visible,
.vercel-page .site-footer .site-footer__cookie-settings:hover,
.vercel-page .site-footer .site-footer__cookie-settings:focus-visible {
	color: var(--vx-accent);
}

@media (max-width: 900px) {
	.vercel-page .section--request,
	.vercel-page main:not(.vercel-main) .section--request,
	.vercel-page .vx-request,
	.vercel-page .vx-company {
		grid-template-columns: 1fr;
	}

	.vercel-page .section--request .request-form,
	.vercel-page main:not(.vercel-main) .section--request .request-form,
	.vercel-page .vx-request .vx-form {
		max-width: none;
	}

	.vercel-page .section--request > :first-child,
	.vercel-page main:not(.vercel-main) .section--request > :first-child,
	.vercel-page .vx-request > :first-child,
	.vercel-page main:not(.vercel-main) .section--split > :first-child,
	.vercel-page .vx-production__text {
		position: static;
	}

	.vercel-page .vx-company__media {
		min-height: 320px;
	}

	.vercel-page main:not(.vercel-main) .about-story,
	.vercel-page main:not(.vercel-main) .production-process {
		grid-template-columns: 1fr;
	}

	.vercel-page main:not(.vercel-main) .about-story__aside {
		position: static;
	}

	.vercel-page .vx-production__photos {
		height: 360px;
	}
}
/* ACF palette controls: only variables from the closed ZVEZDA palette reach these rules. */
[data-zvezda-palette][style*="--zvezda-section-title"] :is(h1, h2, h3) {
	color: var(--zvezda-section-title);
}

[data-zvezda-palette][style*="--zvezda-section-text"] :is(p, li) {
	color: var(--zvezda-section-text);
}

[data-zvezda-palette][style*="--zvezda-card-background"] :is(.vx-model, .news-card, .catalog-card, .gallery-album, .production-process__steps > li, .vx-order__steps > li, .vx-contact-list > div, .vx-media__list > a) {
	background-color: var(--zvezda-card-background);
}

[data-zvezda-palette][style*="--zvezda-card-title"] :is(.vx-model, .news-card, .catalog-card, .gallery-album, .production-process__steps > li, .vx-order__steps > li, .vx-contact-list > div, .vx-media__list > a) :is(h2, h3, strong) {
	color: var(--zvezda-card-title);
}

[data-zvezda-palette][style*="--zvezda-card-text"] :is(.vx-model, .news-card, .catalog-card, .gallery-album, .production-process__steps > li, .vx-order__steps > li, .vx-contact-list > div, .vx-media__list > a) :is(p, small) {
	color: var(--zvezda-card-text);
}

[data-zvezda-palette][style*="--zvezda-meta"] :is(time, .news-card > span, .model-card__type, .gallery-album__head > div:first-child > span, .production-process__steps > li > span) {
	color: var(--zvezda-meta);
}

[data-zvezda-palette][style*="--zvezda-action-background"] :is(.vx-button, .button, .vx-link, .gallery-album__link) {
	background-color: var(--zvezda-action-background);
}

[data-zvezda-palette][style*="--zvezda-action-text"] :is(.vx-button, .button, .vx-link, .gallery-album__link) {
	color: var(--zvezda-action-text);
}

@media (min-width: 1181px) {
	.vercel-page .vx-news__grid .news-card {
		flex-basis: calc(100% / 3);
	}
}

@media (min-width: 761px) {
	.vercel-page main:not(.vercel-main) .news-archive-section {
		padding-block: clamp(32px, 3vw, 48px);
	}

	.vercel-page main:not(.vercel-main) .news-archive-section .news-filters {
		margin-bottom: 24px;
	}

	.vercel-page main:not(.vercel-main) .news-archive-section .news-year-group__head {
		padding-top: 12px;
	}
}

@media (min-width: 761px) and (max-width: 1180px) {
	.vercel-page .vx-news__grid .news-card {
		flex-basis: 50%;
	}
}

@media (max-width: 760px) {
	.vercel-page .vx-news__grid {
		display: grid;
		grid-template-columns: 1fr;
		overflow: visible;
		scroll-behavior: auto;
		scroll-snap-type: none;
		overscroll-behavior-x: auto;
		touch-action: auto;
	}

	.vercel-page .vx-news__grid .news-card {
		scroll-snap-align: none;
	}

	.vercel-page .vx-news__grid .news-card:nth-child(n + 4) {
		display: none;
	}
}
