@charset "UTF-8";

@font-face {
	font-family: Onest;
	font-display: swap;
	src: url("/fonts/Onest/Onest-Regular.woff2") format("woff2"), url("/fonts/Onest/Onest-Regular.woff") format("woff");
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: Onest;
	font-display: swap;
	src: url("/fonts/Onest/Onest-Light.woff2") format("woff2"), url("/fonts/Onest/Onest-Light.woff") format("woff");
	font-weight: 300;
	font-style: normal;
}

@font-face {
	font-family: Onest;
	font-display: swap;
	src: url("/fonts/Onest/Onest-Medium.woff2") format("woff2"), url("/fonts/Onest/Onest-Medium.woff") format("woff");
	font-weight: 500;
	font-style: normal;
}

@font-face {
	font-family: Onest;
	font-display: swap;
	src: url("/fonts/Onest/Onest-SemiBold.woff2") format("woff2"), url("/fonts/Onest/Onest-SemiBold.woff") format("woff");
	font-weight: 600;
	font-style: normal;
}

@font-face {
	font-family: Onest;
	font-display: swap;
	src: url("/fonts/Onest/Onest-Bold.woff2") format("woff2"), url("/fonts/Onest/Onest-Bold.woff") format("woff");
	font-weight: 700;
	font-style: normal;
}

@font-face {
	font-family: Involve;
	font-display: swap;
	src: url("/fonts/Involve/Involve-Regular.woff2") format("woff2"), url("/fonts/Involve/Involve-Regular.woff") format("woff");
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: Involve;
	font-display: swap;
	src: url("/fonts/Involve/Involve-Medium.woff2") format("woff2"), url("/fonts/Involve/Involve-Medium.woff") format("woff");
	font-weight: 500;
	font-style: normal;
}

@font-face {
	font-family: Involve;
	font-display: swap;
	src: url("/fonts/Involve/Involve-SemiBold.woff2") format("woff2"), url("/fonts/Involve/Involve-SemiBold.woff") format("woff");
	font-weight: 600;
	font-style: normal;
}

@font-face {
	font-family: Involve;
	font-display: swap;
	src: url("/fonts/Involve/Involve-Bold.woff2") format("woff2"), url("/fonts/Involve/Involve-Bold.woff") format("woff");
	font-weight: 700;
	font-style: normal;
}

@font-face {
	font-family: TTNormsPro;
	font-display: swap;
	src: url("/fonts/TTNormsPro/TTNormsPro-Regular.woff2") format("woff2"), url("/fonts/TTNormsPro/TTNormsPro-Regular.woff") format("woff");
	font-weight: 400;
	font-style: normal;
}

:root {
	--font-family: "Onest", sans-serif;
	--font-family-title: "Involve", sans-serif;
	--font-family-enum: "TTNormsPro", sans-serif;
	--color-white: #ffffff;
	--color-black: #222222;
	--color-modal-bg: rgba(0, 0, 0, 0.6);
	--vh: 100vh;
}

@supports (height: 100dvh) {
	:root {
		--vh: 100dvh;
	}
}

* {
	padding: 0;
	margin: 0;
	border: 0;
	-webkit-box-sizing: border-box;
					box-sizing: border-box;
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

:focus,
:active {
	outline: none;
	-webkit-tap-highlight-color: transparent;
}

a:focus,
a:active {
	outline: none;
}

nav,
footer,
header,
aside {
	display: block;
}

html,
body {
	height: 100%;
	width: 100%;
	font-size: 100%;
	line-height: 1;
	font-size: 14px;
	-ms-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
}

input,
button,
textarea {
	background-color: transparent;
	font-family: inherit;
}

textarea {
	resize: none;
}

input::-ms-clear {
	display: none;
}

button {
	cursor: pointer;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

a,
a:visited {
	text-decoration: none;
}

a:hover {
	text-decoration: none;
}

li {
	list-style: none;
}

img {
	vertical-align: top;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	font-weight: inherit;
}

h3 {
	margin-top: 30px;
	margin-bottom: 12px;
	font-weight: 600;
	font-size: 24px;	
}

input[type=number] {
	-moz-appearance: textfield;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0px;
}

a,
button {
	color: inherit;
	font-size: inherit;
}

body {
	font-family: var(--font-family);
	font-weight: 400;
	color: var(--color-black);
	--padding-container: 16px;
	--container-width: 1600px;
	--max-width-container: 1648px;
}

.wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	min-height: 100vh;
}

.main {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
}

.flex {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	-webkit-flex-wrap: nowrap;
}

.captcha__block {
	gap:20px;
}

.captcha__block .input {
	width:100%;
	margin-bottom:12px;
}
.checkbox {
	width:100%;
	margin-bottom:35px;
}

.form--dark input {
	color: #222222;
}

.form--dark input::placeholder {
	color: rgba(173, 173, 173, 0.5);
}

.mask {
	clip-path: polygon(0% 0%, 100% 37.5%, 100% 62.5%, 0% 100%, 0% 75%, 65% 50%, 0% 25%, 0% 0%);
}

[class*=container] {
	padding-left: var(--padding-container);
	padding-right: var(--padding-container);
	margin: 0 auto;
	width: 100%;
	max-width: var(--max-width-container);
}

[class*=container-small] {
	padding-left: var(--padding-container);
	padding-right: var(--padding-container);
	margin: 0 auto;
	width: 100%;
	max-width: 800px;
}

.padding-section {
	padding-top: 40px;
	padding-bottom: 40px;
}

.padding-section-bottom {
	padding-bottom: 40px;
}

.margin-section-bottom {
	margin-bottom: 40px;
}

.title-block {
	font-family: var(--font-family-title);
	font-size: 24px;
	line-height: 119%;
}

.title-block--margin {
	margin-bottom: 20px;
}


.contour__center,
.contour__top-left {
	display: none;
	position: absolute;
}

.contour__top-left {
	left: 0;
	top: -30px;
}

.card-production .contour__top-left {
	top: 50px;
}

.contour__center {
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50px);
			-ms-transform: translateY(-50px);
					transform: translateY(-50px);
}

.grid {
	display: -ms-grid;
	display: grid;
	gap: 20px;
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
}

.grid.column-3 {
	--column: 3;
}

._pc button.link-text,
._pc a.link-text {
	text-decoration: underline;
	text-decoration-color: transparent;
	text-underline-offset: 3px;
	-webkit-transition: text-decoration-color 0.3s;
	transition: text-decoration-color 0.3s;
}

._pc button.link-text:hover,
._pc a.link-text:hover {
	text-decoration-color: inherit;
}

.scroll::-webkit-scrollbar {
	width: 4px;
	height: 4px;
	border-radius: 0px;
}

.scroll::-webkit-scrollbar-track {
	border-radius: 0px;
	background-color: rgba(0, 0, 0, 0.2);
}

.scroll::-webkit-scrollbar-thumb {
	background-color: #004A5E;
	background-clip: content-box;
	border-radius: 6px;
}

.swiper-wrapper {
	position: relative;
	z-index: 1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
}

.swiper-slide {
	-ms-flex-negative: 0;
			flex-shrink: 0;
	width: 100%;
	position: relative;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-ms-touch-action: pan-y;
			touch-action: pan-y;
	z-index: 1;
}

.swiper-slide.swiper-slide-active {
	z-index: 2;
}

.swiper-pagination {
	margin-top: 20px;
}

.swiper-scrollbar-horizontal {
	background-color: #DBDBDB;
	height: 9px;
}

.swiper-scrollbar-drag {
	background-color: #004A5E;
	min-height: 9px;
}

.js-tabs-shell {
	will-change: height;
	-webkit-transform: translateZ(0);
					transform: translateZ(0);
	height: 0;
	overflow: hidden;
	-webkit-transition: height var(--tabs-duration, 0.5s) ease;
	transition: height var(--tabs-duration, 0.5s) ease;
}

.js-tabs-click,
.js-tabs-toggle {
	cursor: pointer;
}

.js-tabs-group .js-tabs-open .js-tabs-click,
.js-tabs-group .js-tabs-open .js-tabs-toggle {
	cursor: auto;
}

.map-marker {
	cursor: pointer;
	padding: 8px;
	position: relative;
	font-size: 16px;
	color: #004A5E;
	font-weight: 700;
	border-radius: 10%;
	background-color: #ffffff;
	border: 1px solid #DBDBDB;
}

.map-marker.active .marker-address,
._pc .map-marker:hover .marker-address {
	opacity: 1;
}

.marker-address {
	padding: 8px;
	position: absolute;
	bottom: calc(100% + 4px);
	left: 50%;
	-webkit-transform: translateX(-50%);
			-ms-transform: translateX(-50%);
					transform: translateX(-50%);
	max-width: 120px;
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
	text-align: center;
	background-color: #ffffff;
	border: 1px solid #DBDBDB;
	border-radius: 10%;
	font-size: 12px;
	opacity: 0;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}

.header {
	border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.header__body {
	position: relative;
	min-height: 60px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	gap: 30px;
	z-index: 5;
}

.header__body .header__link::before {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 100%;
	height: 5px;
	background-color: transparent;
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

.header__body .header__link:hover::before {
	background-color: #0098c2;
}

.header__body .header__nav-menu-body {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 10;
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
	max-width: 250px;
}

.header__body .header__nav > * {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: stretch;
			-ms-flex-align: stretch;
					align-items: stretch;
}

.header__logo {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	max-width: 200px;
}

.header__logo svg,
.header__logo img {
	width: 100%;
	max-width: 130px;
}

.header__nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	-webkit-column-gap: 20px;
		 -moz-column-gap: 20px;
					column-gap: 20px;
}

.header__link {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	font-size: 16px;
	font-weight: 500;
	color: #004A5E;
}

.header__menu {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	gap: 6px;
}

.header__nav-menu-wrapper {
	position: relative;
}

.header__nav-menu-button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	gap: 4px;
	width: 100%;
}

.header__nav-menu-button-arrow {
	-webkit-transition: -webkit-transform 0.3s;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	margin-top: 5px;
	margin-left: 4px;
}

.js-tabs-open .header__nav-menu-button-arrow {
	-webkit-transform: rotate3d(1, 0, 0, 180deg);
	transform: rotate3d(1, 0, 0, 180deg);
}

.header__nav-menu-body ol,
.header__nav-menu-body ul {
	padding: 8px 16px;
	background-color: #ffffff;
	font-size: 14px;
	letter-spacing: -0.01em;
	font-weight: 300;
}

.header__nav-menu-body ol li:not(:last-child),
.header__nav-menu-body ul li:not(:last-child) {
	margin-bottom: 4px;
}

.header__nav-menu-body ol li a,
.header__nav-menu-body ul li a {
	display: block;
	padding-top: 8px;
	padding-bottom: 8px;
	-webkit-transition: text-shadow 0.3s;
	transition: text-shadow 0.3s;
}

._pc .header__nav-menu-body ol li a:hover,
._pc .header__nav-menu-body ul li a:hover {
	text-shadow: 0 0, 0 0;
}

.footer {
	position: relative;
	background-color: #004A5E;
	color: #ffffff;
}

.footer__body {
	padding-top: 40px;
	padding-bottom: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	gap: 40px;
}

.footer__body > * {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 1%;
					flex: 1 1 1%;
}

.footer__logo {
	-webkit-box-flex: 0;
			-ms-flex: 0 0 100%;
					flex: 0 0 100%;
	text-align: center;
}

.footer__logo svg,
.footer__logo img {
	max-width: 140px;
	width: 100%;
}

.footer__title-section {
	margin-bottom: 40px;
	font-size: 16px;
	font-weight: 500;
	opacity: 0.6;
}

.footer__list {
	font-size: 14px;
	line-height: 130%;
}

.footer__list > *:not(:last-child) {
	margin-bottom: 30px;
}

.footer__contacts {
	-webkit-box-flex: 0;
			-ms-flex: 0 0 100%;
					flex: 0 0 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	gap: 44px;
}

.footer__contour {
	pointer-events: none;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
					transform: translateY(-50%);
	display: none;
}

.footer__icons {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 10px;
}

.footer__icon {
	display: block;
	width: 40px;
	height: 40px;
	min-width: 40px;
	background-color: #105b70;
	-webkit-transition: background-color 0.3s;
	transition: background-color 0.3s;
}

.footer__icon svg {
	width: 100%;
}

.footer__icon svg path {
	fill: #ffffff;
	-webkit-transition: fill 0.3s;
	transition: fill 0.3s;
}

._pc .footer__icon:hover {
	background-color: #ffffff;
}

._pc .footer__icon:hover svg path {
	fill: #101010;
}

.footer__icon-info {
	margin-top: 16px;
	font-size: 12px;
	color: #bababa;
}

.footer__bottom {
	padding-top: 25px;
	padding-bottom: 25px;
	background-color: #004456;
	font-size: 13px;
}

.footer__bottom-container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	gap: 20px;
	font-weight: 400;
	font-size: 11px;
}

.footer__bottom-container > * {
	opacity: 0.6;
}

.footer__bottom-links {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	gap: 8px;
}

.footer__bottom-links a {
	text-align: center;
}

.footer__bottom-links a:not(:last-child)::after {
	content: "|";
	padding-left: 8px;
}

.button-icon {
	--size: 30px;
	width: var(--size);
	min-width: var(--size);
	height: var(--size);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	background-color: rgba(0, 74, 94, 0.15);
	-webkit-transition: background-color 0.3s;
	transition: background-color 0.3s;
}

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

.button-icon svg path {
	fill: #004A5E;
	-webkit-transition: fill 0.3s;
	transition: fill 0.3s;
}

._pc .button-icon:hover {
	background-color: #004A5E;
}

._pc .button-icon:hover svg path {
	fill: #ffffff;
}

.button-menu {
	position: relative;
}

.button-menu > :nth-child(1),
.button-menu > :nth-child(2),
.button-menu > :nth-child(3) {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 15px;
	height: 2px;
	background-color: #004A5E;
	border-radius: 2px;
	-webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
	transition: opacity 0.3s, -webkit-transform 0.3s;
	transition: transform 0.3s, opacity 0.3s;
	transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
}

.button-menu > :nth-child(1) {
	-webkit-transform: translate(-50%, calc(-50% - 4px));
			-ms-transform: translate(-50%, calc(-50% - 4px));
					transform: translate(-50%, calc(-50% - 4px));
}

.menu-is-open .button-menu > :nth-child(1) {
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
			-ms-transform: translate(-50%, -50%) rotate(45deg);
					transform: translate(-50%, -50%) rotate(45deg);
}

.button-menu > :nth-child(2) {
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
}

.menu-is-open .button-menu > :nth-child(2) {
	opacity: 0;
}

.button-menu > :nth-child(3) {
	-webkit-transform: translate(-50%, calc(-50% + 4px));
			-ms-transform: translate(-50%, calc(-50% + 4px));
					transform: translate(-50%, calc(-50% + 4px));
}

.menu-is-open .button-menu > :nth-child(3) {
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
			-ms-transform: translate(-50%, -50%) rotate(-45deg);
					transform: translate(-50%, -50%) rotate(-45deg);
}

.banner-fade {
	--padding: 60px;
	overflow: hidden;
}

.banner-fade__swiper {
	position: relative;
}

.banner-fade__slide {
	position: relative;
	padding-top: var(--padding, 60px);
	padding-bottom: calc(var(--padding, 60px) + 30px);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	min-height: 133.33vw;
	-webkit-transition: opacity 0.5s;
	transition: opacity 0.5s;
}

.banner-fade__slide::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.3); /* степень затемнения */
	z-index: 1;
	pointer-events: none;
}

.banner-fade__buttons {
	padding-bottom: calc(var(--padding, 60px) - 40px);
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
}

.banner-fade__buttons .button-swiper {
	position: relative;
	z-index: 2;
}

.banner-fade__buttons-container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.banner-fade__container {
	position: relative;
	z-index: 2;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.banner-fade__image {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	z-index: 0;
}

.banner-fade__content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	-webkit-box-pack: end;
			-ms-flex-pack: end;
					justify-content: flex-end;
	gap: 30px;
}

.banner-fade__title {
	font-weight: 500;
	font-size: 32px;
	line-height: 109%;
	letter-spacing: -0.01em;
	color: #ffffff;
}

.banner-fade__text {
	font-size: 18px;
	line-height: 144%;
	color: #ffffff;
}

.aboute-us__cell {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
}

.aboute-us__cell-mobile {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 1fr;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.aboute-us__cell-mobile .aboute-us__cell-img {
	padding-bottom: 116%;
}

.aboute-us__cell-img {
	padding-bottom: 102%;
	position: relative;
	height: 100%;
}

.aboute-us__cell-img img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.aboute-us__cell-img svg {
	max-width: 100%;
	height: auto;
}

.aboute-us__cell-text {
	margin-bottom: 1em;
	font-size: 16px;
	line-height: 150%;
}

.aboute-us__cell-text p:not(:last-child) {
	margin-bottom: 1em;
}

.banner-video {
	position: relative;
	display: flex;
	color: #ffffff;
	min-height: 100vh;
}

/* Сам оверлей */
.banner-video__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.35);
	z-index: 1;
	pointer-events: none;
}

/* Контент поверх всего */
.banner-video__content {
	transition: opacity .4s ease, visibility .4s ease;
}

.banner-video__info {
	transition: opacity .4s ease, transform .4s ease;
}

/* Видео играет — скрываем текст */
.banner-video.is_playing .banner-video__content {
	opacity: 0;
	visibility: hidden;
}

.banner-video.is_playing .banner-video__info {
	opacity: 0;
	transform: translateY(10px);
	pointer-events: none;
}

/* Видео / картинка */
.banner-video img,
.banner-video video {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
	cursor: pointer; /* понятно, что можно кликать */
}

/* Кнопка старта */
.banner-video__play {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 3;
	opacity: 1;
	transition: opacity .25s ease;
}

/* Видео играет — кнопку прячем */
.banner-video.is_playing .banner-video__play {
	opacity: 0;
	pointer-events: none;
}

/* Оверлей исчезает при воспроизведении */
.banner-video.is_playing .banner-video__overlay {
	opacity: 0;
	visibility: hidden;
}

/* Контейнер */
.banner-video__container {
	display: flex;
	position: relative;
	overflow: hidden;
}

.banner-video__content {
	padding: 55px 0;
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 20px;
	width: 100%;
}

.banner-video__info {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.banner-video__title {
	font-family: var(--font-family-title);
	font-size: 42px;
	line-height: 119%;
}

.banner-video__text {
	font-size: 16px;
	line-height: 150%;
}

.banner-video__text p:not(:last-child) {
	margin-bottom: 1em;
}

.banner-video__list li {
	padding: 12px 0;
	border-bottom: 1px solid #ffffff;
}
/* Когда видео играет — контейнер НЕ ловит клики */
.banner-video.is_playing .banner-video__container {
	pointer-events: none;
}

.advantages {
	position: relative;
	--color: #ffffff;
	color: var(--color);
	background-color: #004A5E;
}

.advantages__grid {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr)[2];
	grid-template-columns: repeat(2, 1fr);
	gap: 70px;
}

.advantages__icon {
	margin-bottom: 20px;
}

.advantages__icon svg,
.advantages__icon img
 {
	width: 32px;
}

.advantages__title {
	margin-bottom: 11px;
	font-weight: 700;
	font-size: 16px;
	line-height: 125%;
}

.advantages__text {
	font-weight: 300;
	font-size: 14px;
	line-height: 143%;
	opacity: 0.7;
}

.advantages__contour {
	display: none;
	position: absolute;
	bottom: 7px;
	right: 0;
	max-width: 25%;
}

.portfolio__button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	margin-top: 30px;
}

.contact {
	position: relative;
	--color: #ffffff;
	color: var(--color);
}

.contact__background {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	 object-fit: cover;
}

.contact__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.contact__content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	max-width: 100%;
}

.contact__form {
	-webkit-box-flex: 0;
	-ms-flex: 0 1 490px;
	flex: 0 1 490px;
}

.contact__form.thanks h2 {
	font-size: 42px;
	margin-bottom:24px;
}
.contact__form.thanks p {
	font-size: 18px;
	margin-bottom:12px;
}

.experience__image {
	position: relative;
	overflow: hidden;
}

.experience__image.active .experience__image-cover,
._pc .experience__image:hover .experience__image-cover {
	-webkit-transform: translateX(-72%);
	-ms-transform: translateX(-72%);
	transform: translateX(-72%);
}

.experience__image-item {
	width: 100%;
}

.experience__image-cover {
	position: absolute;
	top: 0;
	left: 0;
	width: 77%;
	height: 100%;
	-webkit-transition: -webkit-transform 1.2s;
	transition: -webkit-transform 1.2s;
	transition: transform 1.2s;
	transition: transform 1.2s, -webkit-transform 1.2s;
}

.experience__image-cover img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.mobile-menu {
	--padding: calc(var(--height-header, 60) + 20px);
	padding-top: var(--padding);
	position: fixed;
	top: 0;
	left: 120%;
	z-index: 4;
	height: var(--vh);
	width: 100%;
	max-width: 100vw;
	-webkit-transition: left 0.7s;
	transition: left 0.7s;
	background-color: #ffffff;
}

.menu-is-open .mobile-menu {
	left: 0;
}

.mobile-menu__body {
	max-height: calc(var(--vh) - var(--padding));
	overflow-y: auto;
}

.mobile-menu .header__nav {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
}

.mobile-menu .header__nav > * {
	border-bottom: 1px solid #d9d9d9;
}

.mobile-menu .header__link {
	padding-top: 16px;
	padding-bottom: 16px;
}

.menu-is-open {
	overflow: hidden;
}

.menu-is-open .hidden-when-open-menu {
	display: none;
}

.modal {
	--height-modal: var(--vh, 100vh);
	position: fixed;
	top: 0;
	right: 0;
	z-index: 19;
	width: 100vw;
	height: var(--height-modal);
	background-color: rgba(0, 0, 0, 0.4);
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-transition: right 0.7s;
	transition: right 0.7s;
}

@supports (height: 100dvh) {
	.modal {
		--height-modal: 100dvh;
	}
}

.modal__close {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 2;
	width: 24px;
	min-width: 24px;
	height: 24px;
	opacity: 0.5;
}

.modal__container {
	padding-top: 24px;
	padding-bottom: 24px;
	min-height: var(--height-modal);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}

.modal--search .modal__container {
	-webkit-box-align: start;
			-ms-flex-align: start;
					align-items: flex-start;
	padding-top: var(--height-header);
}

.modal__technical-information {
	background-color: #ffffff;
	padding-top: 50px;
	padding-bottom: 50px;
}

.modal__technical-information .modal__close {
	top: -35px;
}

.modal__body {
	position: relative;
	margin: 0 auto;
	width: 100%;
	background-color: var(--color-white);
}

#technical_information .modal__body {
	min-height: var(--vh);
}

.modal__padding {
	position: relative;
	padding: 30px 16px 20px;
}

.modal__header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	-webkit-box-align: start;
			-ms-flex-align: start;
					align-items: flex-start;
	margin-bottom: 10px;
}

.modal__title {
	font-weight: 700;
	font-size: 18px;
}

.modal__contact {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
}

.modal__form {
	padding: 32px 16px;
}

.modal__banner {
	padding: 78px 26px;
	position: relative;
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	overflow: hidden;
}

.modal__banner img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.modal__banner-content {
	position: relative;
	z-index: 2;
	color: #ffffff;
	max-width: 410px;
	font-size: 32px;
}

.modal__banner-title {
	margin-bottom: 7px;
	font-weight: 700;
}

.modal__banner-text {
	margin-bottom: 11px;
	font-weight: 300;
	font-size: 18px;
}

.modal__banner-number {
	font-weight: 700;
}

.modal__high {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	min-height: var(--vh);
}

.modal__content {
	position: relative;
	padding: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	width: 100%;
}

.modal__content-shell {
	max-width: 520px;
	width: 100%;
}

.modal__content-logo {
	max-width: 213px;
	margin-bottom: 38px;
}

.modal__content-logo img {
	width: 100%;
}

.modal__image {
	display: none;
}

.modal__image-item {
	position: relative;
	padding-bottom: 100%;
	overflow: hidden;
	height: 100%;
}

.modal__image-item img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.modal__content-title {
	margin-bottom: 16px;
	font-weight: 600;
	font-size: 24px;
	letter-spacing: -0.01em;
}

.modal__content-text {
	margin-bottom: 48px;
	font-weight: 300;
	font-size: 16px;
	letter-spacing: -0.01em;
}

.modal__button button,
.modal__button a {
	width: 100%;
}

.form--dark .modal__button input {
	color:#FFF;
	cursor: pointer;
}

.modal__link {
	margin-top: 24px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
}

.modal__link-item {
	font-weight: 500;
	font-size: 14px;
	line-height: 171%;
	text-decoration: underline;
	-webkit-text-decoration-skip-ink: none;
					text-decoration-skip-ink: none;
	color: #004A5E;
}

.modal__counter {
	display: none;
	position: absolute;
	top: 6.5vh;
	right: 0;
}

.modal__tab {
	display: none;
}

.modal__tab.active {
	display: block;
}

.modal__tab .button {
	width: 100%;
}

.modal__tab-buttons {
	margin-bottom: 34px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}

.modal__tab-batton {
	padding: 8px 20px;
	background-color: #F0F0F0;
	-webkit-transition: background-color 0.3s, color 0.3s;
	transition: background-color 0.3s, color 0.3s;
}

.modal__tab-batton.active {
	color: #ffffff;
	background-color: #004A5E;
}

.js-modal-hidden {
	right: 120%;
}

.js-modal-hidden.js-modal-visible {
	right: 0;
}

.body-overflow {
	overflow: hidden;
}

.decor {
	background-color: #F0F0F0;
}

.decor__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	gap: 100px;
}

.decor__grid {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	gap: 8px;
}

.decor__block-title {
	margin-bottom: 16px;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: -0.01em;
}

.decor__card {
	max-width: 129px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	width: 129px;
	border-bottom: 1px solid #004A5E;
}

.decor__card-image {
	position: relative;
	padding-bottom: 80%;
	overflow: hidden;
}

.decor__card-image img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.decor__card-name {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
	padding: 8px;
	font-weight: 300;
	font-size: 13px;
	letter-spacing: -0.01em;
	background-color: #ffffff;
}

.material {
	position: relative;
	background-color: #F0F0F0;
}

.material__body {
	border-bottom: 1px solid #d3d3d3;
	background-color: #F0F0F0;
}

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

.material__button {
	padding: 25px 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	gap: 5px;
	font-weight: 600;
	font-size: 20px;
}

.material__block {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 34px;
}

.material__block:not(:last-child) {
	border-bottom: 1px solid #d3d3d3;
	margin-bottom: 40px;
}

.material__info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 16px;
}

.material__image {
	-webkit-box-flex: 0;
			-ms-flex: 0 0 140px;
					flex: 0 0 140px;
}

.material__image-shell {
	position: relative;
	padding-bottom: 83%;
	overflow: hidden;
	background-color: #ffffff;
}

.material__image-shell img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.material__description {
	max-width: 230px;
}

.material__description-title {
	margin-bottom: 5px;
	font-weight: 500;
	font-size: 12px;
	opacity: 0.5;
}

.material__description-text {
	margin-bottom: 11px;
	font-weight: 500;
	font-size: 14px;
}

.material__description-block {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 32px;
}

.material__select {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
}

.material__select-group {
	margin-bottom: 34px;
}

.material__select-number {
	margin-bottom: 16px;
	font-weight: 600;
	font-size: 16px;
}

.material__select-grid {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	gap: 16px;
}

.material__select-item {
	cursor: pointer;
	font-size: 13px;
}

.material__select-item input {
	display: none;
}

.material__select-item input:checked + * .material__select-item-image::before {
	opacity: 1;
}

.material__select-item-image {
	position: relative;
	margin-bottom: 5px;
	display: block;
	width: 45px;
	max-width: 45px;
}

.material__select-item-image img {
	width: 100%;
}

.material__select-item-image::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 4px solid #0098C2;
	z-index: 1;
	opacity: 0;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}

.material__select-item-visual {
	position: relative;
}

.material__select-item-visual img {
	margin-bottom: 4px;
	width: 100%;
}

.material__form-buttons {
	padding-bottom: 40px;
	margin-top: 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 10px;
}

.portfolio-gallery__grid {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
	gap: 20px;
}

.portfolio-gallery__cell {
	display: block;
}

.portfolio-gallery__image {
	margin-bottom: 16px;
	position: relative;
	overflow: hidden;
	padding-bottom: 64%;
}

.portfolio-gallery__image img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.portfolio-gallery__title {
	margin-bottom: 4px;
	font-weight: 500;
	font-size: 18px;
	letter-spacing: -0.01em;
}

.portfolio-gallery__text {
	font-weight: 300;
	font-size: 14px;
	letter-spacing: -0.01em;
	opacity: 0.5;
}

.project__text {
	font-size: 14px;
	line-height: 137%;
	letter-spacing: -0.01em;
}

.project__text p:not(:last-child) {
	margin-bottom: 1em;
}

.slider-wide__slide {
	position: relative;
	overflow: hidden;
	padding-bottom: 71.4%;
}

.slider-wide__slide img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.slider-wide__buttons {
	margin-top: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	--color: #000000;
}

.swiper {
	overflow: hidden;
}

.contacts__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 34px;
}

.contacts__contant {
	-webkit-box-flex: 0;
			-ms-flex: 0 0 min(367px, 40%);
					flex: 0 0 min(367px, 40%);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 40px;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
}

.contacts__title {
	margin-bottom: 12px;
	font-weight: 700;
	font-size: 16px;
}

.contacts__grid {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 1fr;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.contacts__cell-title {
	margin-bottom: 4px;
	font-weight: 600;
	font-size: 12px;
	letter-spacing: -0.01em;
	opacity: 0.45;
}

.contacts__cell-button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
			-ms-flex-align: end;
					align-items: flex-end;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	gap: 20px;
	text-align: left;
	font-weight: 500;
	font-size: 14px;
	letter-spacing: -0.01em;
	color: #004A5E;
}

.contacts__cell-arrow {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	width: 18px;
	height: 18px;
	background-color: #004A5E;
}

.contacts__cell-text {
	font-weight: 300;
	font-size: 14px;
	letter-spacing: -0.01em;
}

.contacts__map {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
}

.contacts__map-item {
	position: relative;
	padding-bottom: 82%;
	background-color: #b4b4b4;
}

.contacts__map-item [class*=container] {
	padding: 0;
}

.contacts__map-item .ymaps3x0--map-container {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.catalog {
	position: relative;
}

.order-table {
	font-weight: 300;
	font-size: 14px;
	color: #111;
	overflow: hidden;
}

.order-table .text-bold {
	white-space: nowrap;
	font-weight: 700;
}

.order-table__grid {
	margin-bottom: 30px;
	width: 100%;
}

.order-table__thead {
	display: none;
}

.order-table__th,
.order-table__td {
	display: none;
	position: relative;
	padding: 8px;
	vertical-align: middle;
	text-align: center;
}

.order-table__th {
	opacity: 0.5;
}

.order-table__td {
	border: 1px solid #d3d3d3;
}

.order-table__photo {
	width: max(146px, 30vw);
}

.order-table__photo-shell {
	position: relative;
	padding-bottom: 75%;
	overflow: hidden;
}

.order-table__photo-shell img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.order-table__remove {
	padding: 15px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	opacity: 0.5;
}

.order-table__decor img {
	-webkit-transform: translateY(-70%);
			-ms-transform: translateY(-70%);
					transform: translateY(-70%);
	width: max(45px, 9vw);
}

.order-table__props {
	margin-bottom: 38px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 10px;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	font-weight: 700;
}

.order-table__props-title {
	margin-bottom: 5px;
	font-size: 12px;
	opacity: 0.5;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-weight: 400;
}

.order-table__props-title > *:not(:last-child)::after {
	content: "●";
	padding-left: 0.5em;
	padding-right: 0.5em;
}

.order-table__name {
	margin-bottom: 15px;
	font-weight: 700;
	font-size: 14px;
}

.order-table__price {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
}

.order-table__mobile {
	position: relative;
	padding-bottom: 32px;
	margin-bottom: 32px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	gap: 16px;
	border-bottom: 1px solid #d3d3d3;
}

.order-table__result {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	-webkit-box-align: start;
			-ms-flex-align: start;
					align-items: flex-start;
	gap: 24px;
}

.order-table__result-body {
	padding: 20px;
	width: 100%;
	background-color: #F0F0F0;
}

.order-table__result-border {
	border-bottom: 1px solid rgba(0, 0, 0, 0.13);
}

.order-table__result-row {
	margin-bottom: 16px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	font-weight: 300;
	font-size: 14px;
}

.order-table__result-price {
	padding-top: 24px;
	padding-bottom: 22px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	font-weight: 700;
	font-size: 18px;
}

.order-table__result-buttons {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 10px;
}

.order-table__result-buttons a,
.order-table__result-buttons button {
	width: 100%;
}

.order-table__user-data {
	padding: 24px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 26px;
	width: 100%;
	background-color: #F0F0F0;
}

.order-table__user-data input,
.order-table__user-data textarea {
	color: rgba(0, 0, 0, 0.5);
	font-size: 14px;
	line-height: 171%;
	padding-bottom: 16px;
	border-bottom: 1px solid #004A5E;
}

.order-table__user-data textarea {
	height: 130px;
}

.order-table__actions {
	margin-bottom: 30px;
	-ms-flex-item-align: end;
			align-self: flex-end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	gap: 30px;
}

.order-table__actions a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	font-size: 14px;
	gap: 6px;
	color: #004A5E;
}

.order-table__actions a span {
	padding-top: 0.15em;
}

.order-table__actions a svg {
	width: 20px;
	min-width: 20px;
}

.news-item {
	font-size: 16px;
	line-height: 150%;
	letter-spacing: -0.01em;
}

.news-item__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 26px;
}

.news-item__title {
	margin-bottom: 26px;
}

.news-item__section-title {
	margin-bottom: 10px;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: -0.01em;
}

.news-item p:not(:last-child) {
	margin-bottom: 10px;
}

.news-item ol {
	counter-reset: item;
}

.news-item ol:not(:last-child) {
	margin-bottom: 10px;
}

.news-item ol li::before {
	content: counter(item) ".";
	counter-increment: item;
	padding-left: 0.3em;
	padding-right: 0.3em;
}

.news-item ul:not(:last-child) {
	margin-bottom: 10px;
}

.news-item ul li {
	padding-left: calc(10px + 0.3em);
}

.news-item ul li:before {
	content: "•";
	padding-right: 0.3em;
	margin-left: calc(-10px - 0.3em);
}

.news-item ul dl,
.news-item ul dt,
.news-item ul dd {
	display: inline;
}

.news-item ul dt {
	font-weight: 600;
}

.orders__item.js-tabs-open .orders__item-button svg {
	-webkit-transform: rotate3d(1, 0, 0, 180deg);
					transform: rotate3d(1, 0, 0, 180deg);
}

.orders__item-button {
	padding-top: 20px;
	padding-bottom: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	gap: 5px;
	font-weight: 600;
	font-size: 20px;
}

.orders__item-button svg {
	width: 19px;
	height: 19px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
}

.orders__tab {
	border-bottom: 1px solid #d3d3d3;
}

.orders__tab.js-tabs-open .orders__tab-button svg {
	-webkit-transform: rotate3d(1, 0, 0, 180deg);
					transform: rotate3d(1, 0, 0, 180deg);
}

.orders__tab-button {
	padding-top: 20px;
	padding-bottom: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
			-ms-flex-align: start;
					align-items: flex-start;
	gap: 8px;
	font-size: 16px;
}

.orders__tab-button svg {
	width: 19px;
	height: 19px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
}

.orders__tab-button-text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	gap: 16px;
}

.orders__tab-button-text .text-bold {
	font-weight: 600;
}

.orders__status {
	padding: 4px 8px;
	background-color: #e3e3e3;
}

.orders__tab-inner {
	padding-bottom: 34px;
}

.swiper-block .swiper {
	overflow: hidden;
}

.card-production {
	position: relative;
	overflow: hidden;
}

.card-production__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
			-ms-flex-align: start;
					align-items: flex-start;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 20px;
}

.card-production__content {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
}

.card-production__content-shell {
	padding-top: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 10px;
}

.card-production__place {
	font-weight: 300;
	font-size: 14px;
	letter-spacing: -0.01em;
	opacity: 0.5;
}

.card-production__text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: inherit;
	font-size: 14px;
	line-height: 143%;
}

.card-production__swiper {
	display: none;
	--margin: calc((100vw - 100%) /2);
	margin-right: calc(var(--margin) * -1);
	max-width: calc(100vw - var(--margin) - 42.3%);
	width: 100vw;
}

.card-production__swiper-body {
	position: relative;
	max-width: calc(100vw - var(--padding-container) * 2);
}

.card-production__swiper-body .swiper {
	overflow: hidden;
}

.card-production__image {
	position: relative;
	padding-bottom: 71.5%;
	overflow: hidden;
}

.card-production__image img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.card-production__swiper-buttons {
	padding: 10px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	background-color: #ffffff;
	--color: #000000;
}

.card-product-info__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 50px;
}

.card-product-info__image-item {
	position: relative;
	padding-bottom: 71.5%;
	overflow: hidden;
}

.card-product-info__image-item img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.card-product-info__ol {
	counter-reset: item;
	font-weight: 500;
	font-size: 14px;
	line-height: 157%;
	letter-spacing: -0.01em;
}

/* возвращаем маркеры в нужном блоке */
.card-product-info__ol li {
	list-style: disc;
}

/* для OL — цифры */
.card-product-info__ol ol > li {
	list-style: decimal;
}

/* для UL — диски */
.card-product-info__ol ul > li {
	list-style: disc;
	margin-left: 20px;
}


.card-product-info__ol > li {
	position: relative;
	padding-left: 30px;
}

.card-product-info__ol > li::before {
	content: counter(item) ".";
	counter-increment: item;
	position: absolute;
	top: 0;
	left: 0;
}

.card-product-info__ul {
	margin-top: 1em;
}

.card-product-info__ul li {
	margin-bottom: 1em;
	list-style: disc;
}

.download__tab {
	border-bottom: 1px solid #d3d3d3;
}

.download__tab.js-tabs-open .download__tab-button svg {
	-webkit-transform: rotate3d(1, 0, 0, 180deg);
					transform: rotate3d(1, 0, 0, 180deg);
}

.download__tab-inner {
	padding-bottom: 20px;
}

.download__tab-button {
	padding-top: 24px;
	padding-bottom: 24px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	gap: 5px;
	font-weight: 600;
	font-size: px;
}

.download__tab-button svg {
	-webkit-transition: -webkit-transform 0.3s;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
}

.download__subtab.js-tabs-open .download__subtab-button svg {
	-webkit-transform: rotate3d(1, 0, 0, 180deg);
					transform: rotate3d(1, 0, 0, 180deg);
}

.download__subtab-button {
	padding-top: 8px;
	padding-bottom: 8px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	gap: 5px;
	font-weight: 500;
	font-size: 14px;
}

.download__subtab-button svg {
	-webkit-transition: -webkit-transform 0.3s;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
}

.download__list-item {
	padding-top: 10px;
	padding-bottom: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 10px;
	max-width: 500px;
	font-weight: 400;
	font-size: 13px;
	color: #004A5E;
	border-bottom: 1px solid #d3d3d3;
}

.download__list-text {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
}

.search__body {
	margin-top: 30px;
	position: relative;
}

.search__title {
	margin-bottom: 10px;
	font-family: var(--font-family-title);
	font-size: 24px;
	letter-spacing: -0.01em;
	line-height: 132%;
}

.search__input-body {
	position: relative;
}

.search__input {
	padding: 15px 50px;
	font-size: 16px;
	letter-spacing: -0.01em;
	width: 100%;
	background-color: #F0F0F0;
}

.search__init,
.search__clear {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
					transform: translateY(-50%);
	width: 24px;
	height: 24px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}

.search__init {
	left: 16px;
}

.search__init img,
.search__init svg {
	width: 100%;
}

.search__clear {
	right: 16px;
}

.search__clear img,
.search__clear svg {
	width: 50%;
}

.search__result {
	display: none;
	position: absolute;
	top: calc(100% + 3px);
	left: 0;
	z-index: 10;
	width: 100%;
	padding: 34px;
	background-color: #F0F0F0;
}

.search__result.active {
	display: block;
}

.search__result-list {
	max-height: 230px;
	overflow-y: auto;
}

.search__result-item {
	padding: 8px 16px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	width: 100%;
	font-size: 14px;
	letter-spacing: -0.01em;
	border-bottom: 1px solid rgba(0, 0, 0, 0.2);
	-webkit-transition: background-color 0.3s;
	transition: background-color 0.3s;
}

.search__result-item:hover {
	background-color: #ffffff;
}

.search__result-item:hover .search__result-arrow {
	background-color: #004A5E;
}

.search__result-item:hover .search__result-arrow svg path {
	fill: #ffffff;
}

.search__result-arrow {
	width: 30px;
	min-width: 30px;
	height: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	-webkit-transition: background-color 0.3s;
	transition: background-color 0.3s;
}

.search__result-arrow svg path {
	-webkit-transition: fill 0.3s;
	transition: fill 0.3s;
}

.search__display {
	margin-top: 30px;
}

.production__banner {
	position: relative;
	padding-bottom: 100%;
	overflow: hidden;
	width: 100%;
}

.production__banner img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.block-info__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 20px;
	width: 100%;
}

.block-info__text {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	font-weight: 300;
	font-size: 16px;
	line-height: 160%;
}

.block-info__image {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	gap: 20px;
}

.block-info__counter {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
			-ms-flex-align: end;
					align-items: flex-end;
	-webkit-box-pack: end;
			-ms-flex-pack: end;
					justify-content: flex-end;
}

.block-info__counter svg {
	height: 40vw;
	width: auto;
}

.block-info__mask {
	-webkit-box-flex: 0;
			-ms-flex: 0 0 70%;
					flex: 0 0 70%;
	position: relative;
	min-height: 110vw;
	height: 100%;
	width: 100%;
	-webkit-mask-position: top;
					mask-position: top;
	-webkit-mask-size: contain;
					mask-size: contain;
	-webkit-mask-repeat: no-repeat;
					mask-repeat: no-repeat;
	-webkit-mask-image: url("/img/png/mask.png");
					mask-image: url("/img/png/mask.png");
	overflow: hidden;
}

.block-info__mask img {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.block-team {
	position: relative;
}

.block-team__body {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
	gap: 40px;
}

.block-team__body img {
	width: 100%;
}

.block-team__title {
	margin-top: 20px;
	font-weight: 600;
	font-size: 24px;
}

.block-team__text {
	margin-top: 8px;
	font-weight: 300;
	font-size: 14px;
	line-height: 171%;
}

.block-team__contour {
	display: none;
	position: absolute;
	bottom: 50px;
	left: 0;
}


.block-department {
	background-color: #F0F0F0;
}

.block-department__body {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
	gap: 20px;
}

.block-department__card {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
}

.block-department__title {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
	margin-bottom: 10px;
	font-weight: 600;
	font-size: 24px;
	line-height: 119%;
}

.block-department__image {
	margin-bottom: 20px;
	position: relative;
	padding-bottom: 76.5%;
	overflow: hidden;
}

.block-department__image img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.block-department__text {
	font-weight: 500;
	font-size: 14px;
}

.warehouse {
	background-color: #F0F0F0;
	overflow: hidden;
}

.warehouse__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
}

.warehouse__text {
	padding-top: 20px;
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	font-weight: 300;
	font-size: 16px;
	line-height: 162%;
}

.warehouse__image {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}

.warehouse__image-item {
	position: relative;
	margin-left: calc((100vw - 100%) / 2 * -1);
	margin-right: calc((100vw - 100%) / 2 * -1);
	padding-bottom: 75VW;
	overflow: hidden;
	width: 100vw;
}

.warehouse__image-item img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.stm__slider {
	background-color: #F0F0F0;
}

.collections__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	gap: 20px;
}

.collections__contant {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	gap: 24px;
}

.collections__logo {
	width: 167px;
}

.collections__logo img {
	width: 100%;
}

.collections__title {
	margin-bottom: 16px;
}

.collections__text {
	margin-bottom: 20px;
	font-size: 16px;
	line-height: 142%;
}

.collections__subtext {
	font-weight: 300;
	font-size: 14px;
	line-height: 162%;
}

.collections__image img {
	width: 100%;
}

.assumption {
	position: relative;
	background-color: #F0F0F0;
}

.assumption__body {
	margin-left: auto;
}

.assumption__title {
	margin-bottom: 8px;
}

.assumption__text {
	margin-bottom: 34px;
}

.assumption__grid {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
	gap: 20px;
}

.assumption__card-image {
	margin-bottom: 24px;
	position: relative;
	padding-bottom: 70%;
	overflow: hidden;
}

.assumption__card-image img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.assumption__card-text {
	font-weight: 500;
	font-size: 16px;
}

.assumption__contour {
	display: none;
	position: absolute;
	left: 0;
	bottom: 100px;
	max-width: 18vw;
}

.stages {
	background-color: #F0F0F0;
}

.stages__title {
	margin-bottom: 30px;
}

.stages__list {
	counter-reset: item;
}

.stages__list li {
	padding-top: 16px;
	padding-bottom: 16px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	gap: 12px;
	border-bottom: 1px solid #000000;
	counter-increment: item;
}

.stages__list li:first-child {
	border-top: 1px solid #000000;
}

.stages__number {
	-ms-flex-item-align: start;
			align-self: flex-start;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: -0.01em;
	text-transform: uppercase;
}

.stages__number::before {
	content: "0" counter(item);
}

.stages__content {
	padding-bottom: 16px;
	-webkit-box-flex: 1;
			-ms-flex: 1 1 calc(100% - 30px);
					flex: 1 1 calc(100% - 30px);
}

.stages__content-title {
	margin-bottom: 4px;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: -0.01em;
	text-transform: uppercase;
}

.stages__content-text {
	font-size: 14px;
}

.home {
	margin-bottom: 36px;
	overflow: hidden;
	--calc-width-content: 100%;
	--calc-height-card: calc((100vw - 16px) / 2 * 1.17);
}

.home__container {
	overflow: visible;
}

.home__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 20px;
}

.home__swiper {
	position: relative;
	min-height: 100vw;
	width: 100vw;
	margin-left: calc(var(--padding-container) * -1);
}

.home__swiper .swiper-slide,
.home__swiper .swiper-wrapper {
	min-height: 100%;
}

.home__swiper-buttons {
	padding: 20px;
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 2;
}

.home__baner {
	padding-top: 40px;
	padding-bottom: 40px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	height: 100%;
}

.home__baner img {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.home__banner-inner {
	padding-left: var(--padding-container);
	padding-right: var(--padding-container);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 20px;
	max-width: 515px;
}

.home__title {
	font-weight: 500;
	font-size: 32px;
	line-height: 127%;
	letter-spacing: -0.01em;
	color: #ffffff;
}

.home__text {
	font-weight: 400;
	font-size: 18px;
	line-height: 144%;
	color: #ffffff;
}

.home__content {
	overflow: visible;
	-webkit-box-flex: 0;
			-ms-flex: 0 0 calc(50% - 10px);
					flex: 0 0 calc(50% - 10px);
}

.home__block-title {
	margin-top: 36px;
	margin-bottom: 20px;
	font-weight: 600;
	font-size: 20px;
}

.home__news-swiper {
	overflow: visible;
}

.home__news-card {
	position: relative;
	overflow: hidden;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: stretch;
			-ms-flex-align: stretch;
					align-items: stretch;
	min-height: var(--calc-height-card);
}

._pc .home__news-card:hover .home__news-text {
	text-decoration: underline;
}

._pc .home__news-card:hover img {
	-webkit-transform: translate(-50%, -50%) scale(1.1);
			-ms-transform: translate(-50%, -50%) scale(1.1);
					transform: translate(-50%, -50%) scale(1.1);
}

.home__news-card img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
	-webkit-transition: -webkit-transform 0.3s;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	z-index: -1;
}

.home__news-text {
	padding: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
			-ms-flex-align: end;
					align-items: flex-end;
	font-size: 14px;
	color: #ffffff;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(#000));
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 100%);
}

.home__important-grid {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
	gap: 20px;
}

.home__important-card {
	padding: 20px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 20px;
	background-color: #F0F0F0;
	-webkit-transition: background-color 0.3s;
	transition: background-color 0.3s;
	min-height: 170px;
}

.home__important-card svg path {
	fill: #004A5E;
	-webkit-transition: fill 0.3s;
	transition: fill 0.3s;
}

.home__important-card:hover {
	background-color: #004A5E;
}

.home__important-card:hover svg path {
	fill: #ffffff;
}

.home__important-card:hover .home__important-card-text {
	color: #ffffff;
	text-decoration-color: #ffffff;
}

.home__important-card-arrow {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
			-ms-flex-pack: end;
					justify-content: flex-end;
}

.home__important-card-icon svg {
	width: 40px;
	height: auto;
}

.home__important-card-text {
	font-weight: 500;
	font-size: 14px;
	text-decoration: underline;
	text-decoration-color: transparent;
	-webkit-transition: color 0.3s, text-decoration-color 0.3s;
	transition: color 0.3s, text-decoration-color 0.3s;
}

.counter {
	padding: 10px;
	min-height: 50px;
	min-width: 100px;
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	border: 1px solid #d3d3d3;
	background-color: #ffffff;
	font-size: 16px;
}

.design-table__grid .counter {
	padding: 0;
	border: none;
	min-width: 15px;
}

.counter button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}

.counter svg {
	width: 18px;
}

.counter input {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
	text-align: center;
}

.page-title {
	margin-bottom: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 20px;
	line-height: 132%;
}

.page-title h1 {
	font-family: var(--font-family-title);
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
	font-size: 24px;
	letter-spacing: -0.01em;
	line-height: 132%;
}

.page-title__text {
	-webkit-box-flex: 0;
			-ms-flex: 0 0 50%;
					flex: 0 0 50%;
	font-weight: 300;
	font-size: 16px;
	line-height: 132%;
}

.page-title__subtext {
	margin-top: 8px;
	font-weight: 300;
	font-size: 16px;
	line-height: 125%;
}

.button {
	padding: 12px;
	width: 100%;
	min-width: 204px;
	min-height: 50px;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	gap: 10px;
	background-color: var(--button-background, #004A5E);
	color: var(--button-color, #ffffff);
	font-weight: 500;
	font-size: 14px;
	letter-spacing: -0.01em;
	line-height: 1;
	-webkit-transition: background-color 0.3s, color 0.3s;
	transition: background-color 0.3s, color 0.3s;
}

.button:disabled {
	pointer-events: none;
	opacity: 0.7;
}

._pc .button:hover {
	background-color: var(--button-background, #0a6c87);
}

.button svg path {
	fill: var(--button-color, #ffffff);
	-webkit-transition: fill 0.3s;
	transition: fill 0.3s;
}

.button.button-white {
	--button-background: #ffffff;
	border: 1px solid #ffffff;
	--button-color: #000000;
}

._pc .button.button-white:hover {
	--button-background: transparent;
}

.button.button-white-border {
	--button-background: transparent;
	border: 1px solid #ffffff;
	--button-color: #ffffff;
}

._pc .button.button-white-border:hover {
	--button-color: #000000;
	--button-background: #ffffff;
}

.button.button-border {
	--button-background: transparent;
	border: 1px solid #004A5E;
	--button-color: #004A5E;
}

._pc .button.button-border:hover {
	--button-color: #ffffff;
	--button-background: #004A5E;
}

.bread-crumbs {
	padding-top: 30px;
	padding-bottom: 20px;
	margin-bottom: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	gap: 10px;
}

.bread-crumbs--border {
	border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.bread-crumbs a {
	font-weight: 500;
	font-size: 14px;
	color: #000000;
	-webkit-transition: color 0.3s;
	transition: color 0.3s;
	letter-spacing: -0.01em;
}

.bread-crumbs li {
	list-style: none;
}

.bread-crumbs li:not(:last-child) {
	font-weight: 500;
}

.bread-crumbs li:not(:last-child) a:after {
	content: ">";
	margin-left: 10px;
}

.bread-crumbs li:last-child a {
	color: var(--color-blue-crayola);
	pointer-events: none;
}

.form .button {
	width: 100%;
}

.input {
	display: block;
	padding-bottom: 16px;
	margin-bottom: 45px;
	border-bottom: 1px solid #ffffff;
	position:relative;
}

.form--dark .input {
	border-bottom: 1px solid #c8c8c8;
}

.input input {
	width: 100%;
	font-weight: 500;
	font-size: 16px;
	line-height: 150%;
	color: #ffffff;
}


.form--dark .input input {
	color: rgb(0, 0, 0);
}

.input input::-webkit-input-placeholder {
	color: #adadad;
}

.input input::-moz-placeholder {
	color: #adadad;
}

.input input:-ms-input-placeholder {
	color: #adadad;
}

.input input::-ms-input-placeholder {
	color: #adadad;
}

.input input::placeholder {
	color: #adadad;
}

.form--dark .input input::-webkit-input-placeholder {
	color: rgba(173, 173, 173, 0.7);
}

.form--dark .input input::-moz-placeholder {
	color: rgba(173, 173, 173, 0.7);
}

.form--dark .input input:-ms-input-placeholder {
	color: rgba(173, 173, 173, 0.7);
}

.form--dark .input input::-ms-input-placeholder {
	color: rgba(173, 173, 173, 0.7);
}

.form--dark .input input::placeholder {
	color: rgba(173, 173, 173, 0.7);
}

.input-checkbox {
	margin-bottom: 45px;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	font-size: 14px;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	align-items: center;
}

.input-checkbox input {
	display: none;
}

.input-checkbox__check {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	height: 25px;
	min-width: 25px;
	width: 25px;
	background-color: transparent;
	border: 1px solid #ffffff;
}

.input-checkbox a {
	text-decoration: underline;
	margin-top: 0;
}


.form--dark .input-checkbox__check {
	border: 1px solid #c8c8c8;
}

.input-checkbox__check svg {
	will-change: opacity;
	width: 80%;
	height: 80%;
	opacity: 0;
}

.input-checkbox__check + * {
	margin-top: 5.5px;
}

.input-checkbox input:checked + .input-checkbox__check {
	background-color: #ffffff;
}

.form--dark .input-checkbox input:checked + .input-checkbox__check {
	background-color: #c8c8c8;
}

.input-checkbox input:checked + .input-checkbox__check svg {
	opacity: 1;
}

.input-search {
	padding-left: 50px;
	height: 50px;
	width: 100%;
	background-color: #f3f3f3;
	font-size: 14px;
	letter-spacing: -0.01em;
}

.input .input-error,
.input-checkbox .input-error {
	position:absolute;
	top: 23px;
	left: 0;
	font-size:12px;
	color: red;

}

.form-search {
	position: relative;
}

.form-search .button-search {
	position: absolute;
	top: 50%;
	left: 16px;
	-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
					transform: translateY(-50%);
}

.numbered-list {
	counter-increment: item;
	--width-number: 0;
	border-bottom: 1px solid #000000;
}

.numbered-list:first-child {
	border-top: 1px solid #000000;
}

.numbered-list__body {
	padding-top: 16px;
	padding-bottom: 16px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	gap: 16px;
}

.numbered-list__number {
	padding-top: 4px;
	padding-bottom: 4px;
	-webkit-box-flex: 0;
			-ms-flex: 0 0 var(--width-number, 188px);
					flex: 0 0 var(--width-number, 188px);
	font-weight: 700;
	font-size: 16px;
	letter-spacing: -0.01em;
}

.numbered-list:nth-child(-n+10) .numbered-list__number::before {
	content: "0" counter(item);
}

.numbered-list:nth-child(n+11) .numbered-list__number::before {
	content: counter(item);
}

.numbered-list__content {
	padding-top: 4px;
	padding-bottom: 4px;
	-webkit-box-flex: 1;
			-ms-flex: 1 1 auto;
					flex: 1 1 auto;
}

.numbered-list__title {
	margin-bottom: 2px;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: -0.01em;
	text-transform: uppercase;
}

.numbered-list__text {
	font-weight: 700;
	font-size: 16px;
	letter-spacing: -0.01em;
	opacity: 0.5;
}

.numbered-list__button {
	pointer-events: none;
}

.js-tabs-open .numbered-list__button {
	pointer-events: all;
}

.numbered-list__info {
	padding-bottom: 25px;
}

.numbered-list__info-content {
  margin-left: auto;
  position: relative;
  padding-bottom: 381px;
  width: calc(100% - var(--width-number) - 16px);
}

.numbered-list__info-content img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.button-swiper__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	gap: 6px;
}

.button-swiper {
	--size: 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	height: var(--size);
	width: var(--size);
	min-width: var(--size);
	border: 1px solid var(--color, #ffffff);
	-webkit-transition: background-color 0.3s, border-color 0.3s;
	transition: background-color 0.3s, border-color 0.3s;
}

.button-swiper svg {
	width: calc(var(--size) / 2);
}

.button-swiper svg path {
	fill: var(--color, #ffffff);
	-webkit-transition: fill 0.3s;
	transition: fill 0.3s;
}

.button-swiper:hover {
	background-color: #004A5E;
	--color: #004A5E;
}

.button-swiper:hover svg {
	--color: #ffffff;
}

.name-section {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 9px;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: -0.01em;
	color: var(--color, #000000);
}

.name-section svg {
	width: 10px;
}

.name-section svg path {
	fill: var(--color, #000000);
}

.header-grid {
	margin-bottom: 40px;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
	gap: 20px;
}

.header-grid.no-grid {
	display: block;
}

.header-grid.no-grid .header-grid__shell {
	margin-top: 26px;
}

.header-grid__shell.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	gap: 20px;
}

.header-grid__text {
	font-size: 16px;
	line-height: 150%;
}

.header-grid__text:not(:first-child) {
	margin-top: 16px;
}

.header-grid__text-list {
	margin-top: 16px;
	font-size: 14px;
	line-height: 170%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
}

.header-grid__text-list li {
	display: inline;
	font-weight: 300;
}

.header-grid__text-list li::before {
	content: "•";
	padding-left: 0.6em;
	padding-right: 0.3em;
}

.header-grid__subgrid {
	margin-top: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	gap: 20px;
}

.header-grid__subgrid > * {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 1%;
					flex: 1 1 1%;
}

.header-grid__subgrid .header-grid__text {
	max-width: 367px;
}

.card-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: -0.01em;
	background-color: #F0F0F0;
}

.card-link__image {
	position: relative;
	padding-bottom: 98%;
}

.swiper .card-link__image {
	padding-bottom: 118.947%;
}

.card-link__image img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.card-link__footer {
	padding: 16px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	gap: 16px;
	min-height: 77px;
	border-bottom: 1px solid #004A5E;
}

.card-link__arrow {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	height: var(--size, 30px);
	min-width: var(--size, 30px);
	width: var(--size, 30px);
	background-color: #004A5E;
	opacity: 0;
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

.card-link__arrow svg {
	width: 66%;
}

._pc .card-link:hover .card-link__arrow {
	opacity: 1;
}

.card-news {
	padding: 24px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	-webkit-box-pack: end;
			-ms-flex-pack: end;
					justify-content: flex-end;
	color: #ffffff;
	background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, transparent), to(#000000));
	background: linear-gradient(180deg, transparent 0%, transparent 50%, #000000 100%);
	line-height: 185%;
	overflow: hidden;
	min-height: calc((100vw - var(--padding-container) * 2) * 1.238);
}

.card-news img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
	z-index: -1;
	-webkit-transition: -webkit-transform 0.7s;
	transition: -webkit-transform 0.7s;
	transition: transform 0.7s;
	transition: transform 0.7s, -webkit-transform 0.7s;
}

.card-news__date {
	margin-bottom: 12px;
	font-size: 12px;
	letter-spacing: -0.01em;
}

.card-news__title {
	font-size: 20px;
	text-decoration: underline;
	text-decoration-color: transparent;
	-webkit-transition: text-decoration-color 0.3s;
	transition: text-decoration-color 0.3s;
}

.card-news:hover img {
	-webkit-transform: translate(-50%, -50%) scale(1.1);
			-ms-transform: translate(-50%, -50%) scale(1.1);
					transform: translate(-50%, -50%) scale(1.1);
}

.card-news:hover .card-news__title {
	text-decoration-color: inherit;
}

.pagination-page {
	margin-top: 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	gap: 8px;
}

.pagination-page a {
	width: 34px;
	min-width: 34px;
	height: 34px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	border: 1px solid #004A5E;
	color: #004A5E;
	-webkit-transition: background-color 0.3s;
	transition: background-color 0.3s;
}

.pagination-page a svg {
	width: 20px;
}

.pagination-page a svg path {
	-webkit-transition: fill 0.3s;
	transition: fill 0.3s;
}

.pagination-page a.active,
.pagination-page a:hover {
	color: #ffffff;
	background-color: #004A5E;
}

.pagination-page a.active svg path,
.pagination-page a:hover svg path {
	fill: #ffffff;
}

.filter {
	position: relative;
	margin-bottom: 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	gap: 10px;
}

.filter__body {
	position: relative;
	width: 100%;
}

.filter__button {
	padding: 9px 16px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	gap: 16px;
	width: 100%;
	min-height: 36px;
	font-weight: 300;
	font-size: 14px;
	letter-spacing: -0.01em;
	background-color: #F0F0F0;
	letter-spacing: -0.01em;
}

.filter__button svg {
	-webkit-transition: -webkit-transform 0.3s;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
}

.js-tabs-open .filter__button svg {
	-webkit-transform: rotate3d(1, 0, 0, 180deg);
					transform: rotate3d(1, 0, 0, 180deg);
}

.filter__shell {
	position: absolute;
	z-index: 2;
	top: calc(100% + 4px);
	width: 100%;
}

.js-tabs-open .filter__shell {
	z-index: 3;
}

.filter__list {
	padding: 11px 16px;
	background-color: #F0F0F0;
}

.filter__list li:not(:last-child) {
	margin-bottom: 10px;
}

.filter__list a,
.filter__list button {
	padding: 5px 0;
	letter-spacing: -0.01em;
	-webkit-transition: text-shadow 0.3s;
	transition: text-shadow 0.3s;
}

.filter__list a:hover,
.filter__list button:hover {
	text-shadow: 0 0, 0 0;
}



/* Отключить предпросмотры (thumbs) */
.fancybox__thumbs,
.fancybox__thumbs *,
.fancybox__carousel .fancybox__thumbs,
.fancybox__carousel .fancybox__thumbs * {
    display: none !important;
}

/* Скрыть все кнопки */
.fancybox__toolbar .f-button {
    display: none !important;
}

/* Показать только кнопку закрытия */
.fancybox__toolbar .f-button[data-fancybox-close] {
    display: flex !important;
}



@media (min-width: 768px) {
	body {
		--padding-container: 20px;
	}

	.title-block {
		font-size: 42px;
	}

	.title-block--margin {
		margin-bottom: 40px;
	}

	.contour__center,
	.contour__top-left {
		display: block;
	}

	.grid {
		-ms-grid-columns: (1fr)[var(--column, 2)];
		grid-template-columns: repeat(var(--column, 2), 1fr);
	}

	.header__body {
		min-height: 100px;
	}

	.header__logo svg,
	.header__logo img {
		max-width: 200px;
	}

	.footer__body {
		padding-top: 60px;
		padding-bottom: 40px;
	}

	.footer__logo svg,
	.footer__logo img {
		max-width: 200px;
	}

	.footer__bottom-container {
		font-size: 13px;
		-webkit-box-pack: justify;
				-ms-flex-pack: justify;
						justify-content: space-between;
	}

	.footer__bottom-links {
		gap: 16px;
	}

	.footer__bottom-links a:not(:last-child)::after {
		padding-left: 16px;
	}

	.banner-fade__slide {
		padding-bottom: var(--padding, 60px);
		min-height: 47.916vw;
	}

	.banner-fade__buttons {
		padding-bottom: var(--padding, 60px);
	}

	.banner-fade__content {
		width: 650px;
		max-width: calc(100% - 120px);
	}

	.banner-fade__title {
		font-size: 70px;
	}

	.aboute-us__cell-mobile {
		display: none;
	}

	.aboute-us__cell-img {
		padding-bottom: 135.438%;
	}

	.advantages__text {
		line-height: 171%;
	}

	.portfolio__button {
		margin-top: 40px;
	}

	.modal {
		top: 0;
		--height-modal: 100vh;
	}

@supports (height: 100dvh) {
		.modal {
			--height-modal: 100dvh;
		}
}

	.modal__close {
		width: 32px;
		min-width: 32px;
		height: 32px;
	}

	.modal__padding {
		padding: 40px;
	}

	.modal__header {
		margin-bottom: 20px;
	}

	.modal__title {
		font-size: 24px;
	}

	.modal__contact {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.modal__form {
		padding: 32px;
	}

	.modal__banner {
		padding: 32px;
	}

	.modal__banner-text {
		margin-bottom: 24px;
	}

	.modal__content {
		-webkit-box-flex: 0;
				-ms-flex: 0 0 50%;
						flex: 0 0 50%;
	}

	.modal__image {
		display: block;
		-webkit-box-flex: 0;
				-ms-flex: 0 0 50%;
						flex: 0 0 50%;
	}

	.modal__content-title {
		font-size: 32px;
	}

	.portfolio-gallery__grid {
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr;
		row-gap: 40px;
		-webkit-column-gap: 20px;
			 -moz-column-gap: 20px;
						column-gap: 20px;
	}

	.portfolio-gallery__cell.column-2 {
		-ms-grid-column-span: 2;
		grid-column: span 2;
	}

	.portfolio-gallery__image {
		padding-bottom: min(378px, (100vw - var(--padding-container) * 2) * 0.315);
	}

	.project__text {
		font-size: 16px;
	}

	.contacts__map-item {
		padding-bottom: 405px;
	}

	.order-table__result {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.order-table__result-body {
		max-width: 285px;
	}

	.order-table__user-data {
		max-width: 536px;
	}

	.news-item__title {
		margin-bottom: 40px;
	}

	.news-item__section-title {
		font-size: 20px;
	}

	.card-production__content-shell {
		gap: 20px;
	}

	.download__tab-button {
		font-size: 20px;
	}

	.download__subtab {
		margin-left: 20px;
	}

	.download__subtab-button {
		font-size: 16px;
	}

	.download__list {
		margin-left: 20px;
	}

	.download__list-item {
		font-size: 14px;
	}

	.search__title {
		font-size: 44px;
	}

	.production__banner {
		padding: 0;
	}

	.production__banner img {
		position: static;
		-webkit-transform: translate(0);
				-ms-transform: translate(0);
						transform: translate(0);
	}

	.block-info__body {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.block-info__text {
		font-size: 20px;
		-webkit-box-ordinal-group: 2;
				-ms-flex-order: 1;
						order: 1;
	}

	.block-info__text p {
		max-width: 460px;
	}

	.block-info__image {
		-webkit-box-ordinal-group: 3;
				-ms-flex-order: 2;
						order: 2;
		-webkit-box-flex: 0;
				-ms-flex: 0 0 50%;
						flex: 0 0 50%;
	}

	.block-info__counter svg {
		height: auto;
		width: auto;
	}

	.block-info__mask {
		-webkit-box-flex: 0;
				-ms-flex: 0 0 290px;
						flex: 0 0 290px;
		min-height: 490px;
	}

	.block-team__body {
		gap: 20px;
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr;
	}

	.block-team__small {
		max-width: 83%;
	}

	.block-team__title {
		margin-top: 30px;
	}

	.block-team__text {
		margin-top: 12px;
	}

	.block-department__body {
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr;
	}

	.block-department__title {
		margin-bottom: 24px;
	}

	.block-department__image {
		margin-bottom: 24px;
	}

	.block-department__text {
		font-size: 16px;
	}

	.warehouse__text {
		font-size: 24px;
		padding-top: 50px;
	}

	.collections__text {
		font-size: 24px;
	}

	.collections__subtext {
		font-size: 16px;
	}

	.assumption__text {
		margin-bottom: 76px;
	}

	.assumption__grid {
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr;
	}

	.stages__title {
		margin-bottom: 40px;
	}

	.stages__list li {
		-ms-flex-wrap: nowrap;
				flex-wrap: nowrap;
	}

	.stages__content {
		padding-bottom: 0;
	}

	.page-title {
		margin-bottom: 40px;
	}

	.page-title h1 {
		font-size: 44px;
	}

	.page-title__text {
		font-size: 20px;
	}

	.page-title__subtext {
		margin-top: 16px;
	}

	.bread-crumbs a {
		font-size: 16px;
	}

	.input-search {
		font-size: 16px;
	}

	.card-link {
		font-size: 18px;
	}

	.card-news {
		min-height: calc((100vw - var(--padding-container) * 2 - 40px) / 3 * 1.238);
	}

	.filter {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.filter__body {
		width: 170px;
	}
}

@media (min-width: 992px) {
	.card-production__body {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.card-production__swiper {
		display: block;
	}

	.card-product-info__body {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.card-product-info__image {
		--margin: calc((100vw - 100%) /2);
		margin-left: calc(var(--margin) * -1);
		-webkit-box-flex: 0;
				-ms-flex: 0 0 calc(var(--margin) + 50%);
						flex: 0 0 calc(var(--margin) + 50%);
	}

	.collections__body {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.collections__contant {
		-webkit-box-flex: 0;
				-ms-flex: 0 1 590px;
						flex: 0 1 590px;
		gap: 40px;
	}

	.collections__image {
		-webkit-box-flex: 0;
				-ms-flex: 0 0 40%;
						flex: 0 0 40%;
	}
}

@media (min-width: 992) {
	.card-production__place {
		margin-top: -17px;
	}
}

@media (min-width: 1024px) {
	body {
		--padding-container: 24px;
	}

	.padding-section {
		padding-top: 100px;
		padding-bottom: 100px;
	}

	.padding-section-bottom {
		padding-bottom: 100px;
	}

	.margin-section-bottom {
		margin-bottom: 100px;
	}

	.grid {
		-ms-grid-columns: (1fr)[var(--column, 4)];
		grid-template-columns: repeat(var(--column, 4), 1fr);
	}

	.footer__logo {
		text-align: left;
		-webkit-box-flex: 1;
				-ms-flex: 1 1 1%;
						flex: 1 1 1%;
	}

	.footer__contacts {
		-webkit-box-flex: 1;
				-ms-flex: 1 1 1%;
						flex: 1 1 1%;
	}

	.footer__contour {
		display: block;
	}

	.banner-video {
		min-height: 53.47vw;
	}

	.banner-video__content {
		-webkit-box-align: end;
				-ms-flex-align: end;
						align-items: flex-end;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
		-webkit-box-pack: justify;
				-ms-flex-pack: justify;
						justify-content: space-between;
	}

	.banner-video__info {
		-webkit-box-flex: 0;
				-ms-flex: 0 1 660px;
						flex: 0 1 660px;
	}

	.advantages__grid {
		-ms-grid-columns: (1fr)[4];
		grid-template-columns: repeat(4, 1fr);
	}

	.advantages__contour {
		display: block;
	}

	.contact__body {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.contact__content {
		max-width: min(520px, 50%);
	}

	.contact__content .header-grid.no-grid .header-grid__shell {
		margin-top: 100px;
	}

	.modal__form {
		padding: 32px 48px;
		-webkit-box-flex: 1;
				-ms-flex: 1 1 auto;
						flex: 1 1 auto;
	}

	.modal__banner {
		padding: 48px;
		-webkit-box-flex: 0;
				-ms-flex: 0 0 48.6%;
						flex: 0 0 48.6%;
	}

	.modal__banner-content {
		font-size: 42px;
	}

	.modal__banner-text {
		margin-bottom: 35px;
	}

	.modal__counter {
		display: block;
	}

	.material__block {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.material__info {
		-webkit-box-flex: 0;
				-ms-flex: 0 0 460px;
						flex: 0 0 460px;
	}

	.material__select-group {
		margin-bottom: 26px;
	}

	.contacts__body {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.search__title {
		font-size: 64px;
	}

	.block-team__contour {
		display: block;
	}

	.block-department__title {
		font-size: 42px;
	}

	.warehouse__body {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.warehouse__text {
		padding-bottom: 50px;
	}

	.warehouse__image {
		-webkit-box-flex: 0;
				-ms-flex: 0 0 50%;
						flex: 0 0 50%;
	}

	.warehouse__image-item {
		width: 50vw;
		margin-left: 0;
		margin-right: calc((50vw - 100%) * -1);
		padding-bottom: 37.5vw;
	}

	.assumption__body {
		width: 80%;
	}

	.assumption__contour {
		display: block;
	}

	.stages__number {
		-webkit-box-flex: 0;
				-ms-flex: 0 0 16%;
						flex: 0 0 16%;
	}

	.home {
		--calc-width-content: calc((100vw - (var(--padding-container) * 2)) / 2 - 10px);
		--calc-height-card: calc((var(--calc-width-content) - 40px) / 3 * 1.17);
	}

	.home__body {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.home__swiper {
		width: calc(50vw - 10px);
		min-height: auto;
		margin-left: calc((100vw - 100%) / 2 * -1);
	}

	.home__baner {
		padding: 40px;
	}

	.home__banner-inner {
		gap: 30px;
	}

	.home__title {
		font-size: 60px;
	}

	.home__news-swiper {
		width: var(--calc-width-content);
	}

	.home__important-grid {
		-ms-grid-columns: (1fr)[3];
		grid-template-columns: repeat(3, 1fr);
	}

	.home__important-card {
		min-height: var(--calc-height-card);
	}

	.page-title h1 {
		font-size: 64px;
	}

	.numbered-list {
		--width-number: 188px;
	}

	.name-section {
		padding-top: 10px;
	}

	.header-grid {
		margin-bottom: 50px;
		-ms-grid-columns: (1fr)[4];
		grid-template-columns: repeat(4, 1fr);
	}

	.header-grid__shell {
		-ms-grid-column-span: 3;
		grid-column: span 3;
	}

	.header-grid__shell.flex {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.header-grid__shell.flex > :nth-child(1) {
		-webkit-box-flex: 0;
				-ms-flex: 0 1 575px;
						flex: 0 1 575px;
	}

	.header-grid__shell.flex > :nth-child(2) {
		-webkit-box-flex: 0;
				-ms-flex: 0 1 490px;
						flex: 0 1 490px;
	}

	.header-grid__subgrid {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
		-webkit-box-align: end;
				-ms-flex-align: end;
						align-items: flex-end;
	}

	.card-link__image {
		padding-bottom: 118.947%;
	}
}

@media (min-width: 1100px) {
	.order-table__grid {
		display: table;
		table-layout: auto;
	}

	.order-table__thead {
		display: table-row;
	}

	.order-table__tr {
		display: table-row;
	}

	.order-table__th,
	.order-table__td {
		display: table-cell;
	}

	.order-table__photo {
		width: 79px;
	}

	.order-table__decor img {
		width: 45px;
		-webkit-transform: translateY(0);
				-ms-transform: translateY(0);
						transform: translateY(0);
	}

	.order-table__mobile {
		display: none;
	}

	.order-table__actions {
		margin-bottom: 0;
	}

	.page-title {
		margin-bottom: 60px;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
				-ms-flex-direction: row;
						flex-direction: row;
	}

	.page-title__text {
		margin-top: 20px;
	}
}

@media (min-width: 1200px) {
	.button-menu {
		display: none;
	}
}

@media (min-width: 1648px) {
	.home {
		--calc-width-content: calc((var(--max-width-container) - (var(--padding-container) * 2)) / 2 - 10px);
		--calc-height-card: calc((var(--calc-width-content) - 40px) / 3 * 1.17);
	}

	.card-news {
		min-height: calc((var(--container-width) - 40px) / 3 * 1.238);
	}
}

@media (max-width: 1099.98px) {
	.order-table__remove {
		position: absolute;
		top: 0;
		right: 0;
		-webkit-transform: translate(50%, -70%);
				-ms-transform: translate(50%, -70%);
						transform: translate(50%, -70%);
	}
}

@media (max-width: 991.98px) {
	.project__text.padding-section {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.project__text.padding-section:last-child {
		padding-bottom: 40px;
	}
}

@media (max-width: 767.98px) {
	.hidden-max768 {
		display: none;
	}

	.banner-fade__buttons .banner-fade__buttons-container {
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
	}

	.modal--connection .modal__close svg path {
		fill: #ffffff;
	}

	.order-table__actions {
		gap: 14px;
		width: 100%;
	}

	.bread-crumbs {
		border-bottom: 1px solid rgba(0, 0, 0, 0.2);
	}

	.numbered-list__button {
		-webkit-box-flex: 0;
				-ms-flex: 0 0 100%;
						flex: 0 0 100%;
	}
}

@media (min-width: 375px) and (max-width: 1023.98px) {
	.padding-section {
		padding-top: calc(40px + (100vw - 375px) / 649 * 60);
	}

	.padding-section {
		padding-bottom: calc(40px + (100vw - 375px) / 649 * 60);
	}

	.padding-section-bottom {
		padding-bottom: calc(40px + (100vw - 375px) / 649 * 60);
	}

	.margin-section-bottom {
		margin-bottom: calc(40px + (100vw - 375px) / 649 * 60);
	}

	.advantages__grid {
		gap: calc(20px + (100vw - 375px) / 649 * 50);
	}
}

@media (min-width: 375px) and (max-width: 767.98px) {
	.title-block {
		font-size: calc(24px + (100vw - 375px) / 393 * 18);
	}

	.banner-fade__slide {
		min-height: calc(133.33vw + (100vw - 375px) / 393 / 1px * -85.414 * 1vw);
	}

	.banner-fade__title {
		font-size: calc(32px + (100vw - 375px) / 393 * 38);
	}
}

@media (min-width: 768px) and (max-width: 1023.98px) {
	.modal__banner-content {
		font-size: calc(32px + (100vw - 768px) / 256 * 10);
	}

	.block-department__title {
		font-size: calc(24px + (100vw - 768px) / 256 * 18);
	}

	.numbered-list {
		--width-number: calc(36px + (100vw - 768px) / 256 * 152);
	}
}
