@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
@font-face {
    font-family: 'Clash Display';
    src: url('../fonts/ClashDisplay-Variable.eot');
    src: url('../fonts/ClashDisplay-Variable.eot') format('embedded-opentype'),
        url('../fonts/ClashDisplay-Variable.woff2') format('woff2'),
        url('../fonts/ClashDisplay-Variable.woff') format('woff'),
        url('../fonts/ClashDisplay-Variable.ttf') format('truetype');
    font-weight: 200 700;
    font-style: normal;
    font-display: swap;
}
:root{
	--black: #151515;
	--black-600: rgba(21, 21, 21, 0.6);
	--black-500: rgba(21, 21, 21, 0.5);
	--black-400: rgba(21, 21, 21, 0.4);
	--black-200: rgba(21, 21, 21, 0.2);
	--white: #FFFFFF;
	--white-600: rgba(255, 255, 255, 0.6);
	--beige: #F5F1EE;
	--beige-500: rgba(245, 241, 238, 0.5);
	--gray: #D9D9D9;
	--orange: #FF5224;
	--red: #E02424;

	--font-family: "Inter", sans-serif;
  	--second-family: "Clash Display", sans-serif;

	--h1: max(50px, 172rem);
	--h2: max(32px, 100rem);
	--h3: max(22px, 50rem);
	--h4: max(20px, 40rem);
	--h5: max(18px, 30rem);
	--h6: max(18px, 24rem);

	--subtitle: max(16px, 22rem);
	--text_medium: max(22px, 30rem);
	--text_1: max(20px, 22rem);
	--text_2: max(18px, 20rem);
	--text_3: max(16px, 18rem);
	--caption: max(16px, 16rem);
	--caption_2: max(14px, 16rem);
	--digits: max(28px, 80rem);
	--tab: max(18px, 20rem);

	--button: max(16px, 18rem);
	--link: max(16px, 20rem);

	--duration: .4s;
    --ease: cubic-bezier(.38, .005, .215, 1);
	--ease-out-expo: cubic-bezier(0.19, 1, 0.22, 1);
}
::selection {
	color: var(--black);
	background-color: var(--orange);
}
.tabs-block ::selection,
.prod-label::selection,
.button ::selection {
	color: var(--black);
	background-color: var(--white);
}
/************************* reset *************************/
html{
	height: 100%;
	margin: 0;
	padding: 0;width: 100%;
	background: var(--black);
	font-size: 0.052vw;
}
body{
	height: 100%;
	width: 100%;
	position: relative;
	margin: 0;
	padding: 0;
	color: var(--black);
	font-weight: 400;
	font-size: var(--text_1);
	line-height: 120%;
	letter-spacing: -0.01em;
	font-family: var(--font-family), Arial, Helvetica, sans-serif;
	min-width: 320px;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
h1, h2, h3, h4, h5, h6, p, ul, li, a, span, div, input, textarea, select, form, fieldset, button, dl, dd, dt, figure, figcaption, blockquote, caption, aside, section {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	box-sizing: border-box;
}
img {
	margin: 0;
	padding: 0;
	border-style: none;
	vertical-align: bottom;
}
input, textarea, select, button {
	font-weight: 400;
	font-family: 'Lato', Arial, Helvetica, sans-serif;
	vertical-align:middle;
	border: 0;
	outline: 0;
	background: none;
}
a:hover {text-decoration: none;}
ul li {list-style: none;}
/************************* common styles *************************/
.holder {
	padding: 0 max(16px, 50rem);
}
h1, .h1 {
	display: block;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--h1);
	line-height: 80%;
	text-transform: uppercase;
}
h2, .h2 {
	display: block;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--h2);
	line-height: 80%;
	text-transform: uppercase;
}
h3, .h3 {
	display: block;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--h3);
	line-height: 90%;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
h4, .h4 {
	display: block;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--h4);
	line-height: 100%;
	text-transform: uppercase;
}
h5, .h5 {
	display: block;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--h5);
	line-height: 100%;
	text-transform: uppercase;
}
h6, .h6 {
	display: block;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--h6);
	line-height: 100%;
	text-transform: uppercase;
}
a {transition: all 0.4s;}
p {margin: 0 0 max(20px, 20rem);}
p:last-child {margin: 0;}
p a, .article li a {color: var(--black);}
.center {text-align: center;}
.upper {text-transform: uppercase;}
.button-holder {text-align: center;}
.button {
	position: relative;
	overflow: hidden;
	display: inline-flex;
    align-items: center;
	justify-content: center;
	width: 100%;
	max-width: max(360px, 440rem);
	gap: max(10px, 10rem);
	padding: max(15px, 18rem) max(20px, 20rem);
    cursor: pointer;
   	font-weight: 500;
	font-size: var(--button);
	line-height: 120%;
    text-decoration: none;
	text-transform: capitalize;
	color: var(--white);
	white-space: nowraps;
	background: var(--beige);
    border: 1px solid var(--orange);
    border-radius: max(30px, 30rem);
    transition: color var(--duration) var(--ease);
}
.button::before {
    position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	content: '';
	background: var(--orange);
    transition: all var(--duration) var(--ease);
}
.button-text {
    position: relative;
    z-index: 1;
    overflow: hidden;
}
.text {
    display: block;
    transition: transform var(--duration) var(--ease)
}
.text-clone {
    left: 0;
    position: absolute;
    top: 0;
    transform: translateY(110%)
}
.button-icon {
    position: relative;
    z-index: 1;
    overflow: hidden;
	margin: -3px 0;
}
.icon-def {
    display: block;
    transition: transform var(--duration) var(--ease)
}
.icon-clone {
    left: 0;
    position: absolute;
    top: 0;
    transform: translateY(110%)
}
.button:hover {
	color: var(--orange);
}
.button:hover::before {
    height: 0%;
}
.button:hover .text {
    transform: translateY(-100%)
}
.button:hover .text-clone {
    transform: translateY(0)
}
.button:hover .icon-def {
    transform: translateY(-100%)
}
.button:hover .icon-clone {
    transform: translateY(0)
}
.form-black .button {
	background: var(--black);
}
.button-white {
	padding: max(16px, 19rem) max(20px, 20rem);
	color: var(--black);
	background: var(--orange);
    border: 0;
}
.button-white::before {
	background: var(--white);
}
.button-white:hover {
	color: var(--white);
}
.button-border {
	color: var(--white);
	background: transparent;
	border: 1px solid var(--white);
}
.button-border::before {
	transform: translateY(-110%);
	background: var(--orange);
}
.button-border:hover::before {
    height: 100%;
	transform: translateY(0%);
}
.button-border:hover {
	color: var(--white);
	border-color: var(--orange);
}

/************************* form-block *************************/
.wpcf7-form-control-wrap input {
	display: block;
	width: 100%;
	height: max(47px, 50rem);
	padding: 0 max(23px, 23rem);
	margin: 0 0 max(12px, 20rem);
	font-size: var(--text_3);
	color: var(--black);
	background: var(--beige);
	border: 1px solid var(--black-400);
	border-radius: 100px;
}
.wpcf7-form-control-wrap textarea {
	display: block;
	width: 100%;
	height: max(153px, 153rem);
	padding: max(13px, 13rem) max(23px, 23rem);
	margin: 0 0 max(12px, 20rem);
	font-size: var(--text_3);
	color: var(--black);
	resize: vertical;
	background: var(--beige);
	border: 1px solid var(--black-400);
	border-radius: max(20px, 20rem);
}
.inactive {
	opacity: 0.4;
	pointer-events: none;
}
::-webkit-input-placeholder {color: var(--black-400);}
:-moz-placeholder {color: var(--black-400); opacity: 1;}
::-moz-placeholder {color: var(--black-400); opacity: 1;}
:-ms-input-placeholder {color: var(--black-400);}
.form-black .wpcf7-form-control-wrap input,
.form-black .wpcf7-form-control-wrap textarea {
	background: var(--white);
	border-color: var(--white);
}
.error-msg {
	display: none;
	margin: min(-4px, -12rem) 0 max(12px, 20rem);
	color: var(--red);
	font-size: max(16px, 16rem);
	line-height: 120%;
}
.error .error-msg {
	display: block;
}
.input-box {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.input-box .wpcf7-form-control-wrap {
	width: calc(50% - max(6px, 10rem));
}
.form-button {
	padding: max(20px, 20rem) 0 0;
}
.form-button .button {
	max-width: none;
}
.form-check {
	margin: 0 0 max(16px, 20rem);
}
.form-check-text {
	margin: 0 0 max(14px, 14rem);
	max-width: max(730px, 800rem);
    color: var(--black-600);
}
.form-check-block {
	display: flex;
	flex-wrap: wrap;
	gap: max(8px, 12rem) max(20px, 24rem);
}
.check-item {
	position: relative;
}
.check-input {
	position: absolute;
	left: 0;
	width: 1px;
	height: 1px;
	opacity: 0;
}
.check-label {
	display: block;
	min-height: max(28px, 28rem);
	padding: 0 0 0 max(33px, 33rem);
	font-size: max(14px, 16rem);
	line-height: max(28px, 28rem);
	cursor: pointer;
	box-sizing: border-box;
}
.check-label::before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '';
	width: max(28px, 28rem);
	height: max(28px, 28rem);
	box-sizing: border-box;
	background: url(../images/checkbox.svg) 50% 50% no-repeat;
	background-size: contain;
}
.check-input:checked + .check-label::before {
	background: url(../images/checkbox-active.svg) 50% 50% no-repeat;
	background-size: contain;
}
/************************* wrapper *************************/
#wrapper {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 100dvh;
	padding-top: max(148px, 168rem);
	background: var(--beige);
}
/************************* header *************************/
.header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 300;
	background: var(--beige);
	border-top: max(64px, 74rem) solid var(--orange);
	transition: all 0.3s linear;
}
.header-up {
    top: min(-64px, -74rem);
}
.header-block {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: max(64px, 74rem);
	position: relative;
}
.header-logo {
	position: relative;
	z-index: 550;
}
.header-logo img {
	width: max(147px, 246rem);
}
.header-nav-list {
	display: flex;
	gap: max(16px, 24rem);
	padding: 0 0 6px;
}
.header-nav-list > li > a {
	position: relative;
	font-family: var(--second-family);
	font-weight: 500;
	font-size: max(16px, 20rem);
	line-height: 120%;
	color: var(--black);
	text-decoration: none;
}
.header-nav-list > li > a.active,
.header-nav-list > li > a.nav-active {
	color: var(--orange);
}
.header-nav-list > li > a.active::after,
.header-nav-list > li > a.nav-active::after {
	background: url(../images/nav-arrow-orange.svg) 50% 50% no-repeat;
	transform: rotate(180deg);
}
.nav-parent {
	position: relative;
	margin: 0 25px 0 0;
}
.nav-parent::after {
	position: absolute;
	top: 50%;
	margin-top: -12px;
	right: -25px;
	content: '';
	width: 24px;
	height: 24px;
	background: url(../images/nav-arrow.svg) 50% 50% no-repeat;
	transition: all 0.3s ease-out;
}
.nav-parent.active-sub::after {
	transform: rotate(180deg);
}
@media screen and (min-width: 1024px) {
	.header-nav-list > li:hover > a,
	.header-nav-list > li > a:hover {
		color: var(--orange);
	}
	.header-nav-list > li:hover > a::after,
	.header-nav-list > li > a:hover::after {
		background: url(../images/nav-arrow-orange.svg) 50% 50% no-repeat;
		transform: rotate(180deg);
	}
	.header-nav-list > li:hover .sub {
		display: block;
	}
}
.sub {
	display: none;
	position: fixed;
	top: max(128px, 148rem);
	left: 0;
	right: 0;
	z-index: 200;
	padding: 0 max(16px, 50rem);
	background: var(--beige);
}
.sub::before {
	position: absolute;
	left: 0;
	right: 0;
	top: min(-20px, -30rem);
	height: max(20px, 30rem);
	content: '';
}
.sub-wrap {
	height: 100%;
	overflow-y: auto;
	padding: max(24px, 40rem) 0;
}
.sub-item {
	margin: 0 0 max(40px, 40rem);
}
.sub-item:last-child {
	margin: 0;
}
.sub-item h6 {
	margin: 0 0 max(20px, 20rem);
}
.sub-list {
	display: flex;
	flex-wrap: wrap;
	gap: max(12px, 20rem) max(24px, 40rem);
}
.sub-link {
	font-size: 20px;
	line-height: 120%;
	color: var(--black);
	text-decoration: none;
}
.sub-link:hover {
	color: var(--orange);
}
.lock {
	overflow: hidden;
}
.header-search {
	display: none;
	position: fixed;
	inset: 0;
	top: max(128px, 148rem);
	z-index: 2000;
	padding: max(24px, 60rem) max(16px, 50rem);
	overflow-y: auto;
	background: var(--beige);
}
.header-search.active {
	display: block;
}
.header-search .search {
	max-width: max(600px, 900rem);
	margin: 0 auto max(50px, 112rem);
}
.header-search .search .wpcf7-form-control-wrap input {
    height: max(35px, 35rem);
    padding: 0 0 max(5px, 5rem) max(32px, 32rem);
    margin: 0;
    font-size: var(--text_1);
    background: transparent;
    border: 0;
	border-bottom: 1px solid var(--black);
	border-radius: 0;
}
.header-search .search-button {
	top: max(1px, 1rem);
	left: 0;
}
.hs-title {
	display: flex;
	justify-content: space-between;
	padding: max(10px, 16rem) 0 max(32px, 40rem);
	border-top: 1px dashed var(--black);
}
.hs-num {
	opacity: 0.4;
}
.hs-close {
	display: none;
}
.search-note {
	padding: max(12px, 12rem) 0 0;
	font-weight: 500;
	font-size: var(--text_3);
	line-height: 120%;
	text-transform: capitalize;
	opacity: 0.5;
}
.hs-popular-item {
	display: flex;
	padding: max(24px, 40rem) 0;
	color: var(--black);
	text-decoration: none;
	border-bottom: 1px dashed var(--black);
}
.hs-popular-item:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}
.hs-popular-img {
	width: max(210px, 210rem);
	height: max(130px, 130rem);
}
.hs-popular-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.hs-popular-content {
	position: relative;
	flex: 1;
	padding: 0 0 0 max(50px, 250rem);
}
.hs-popular-content h6 {
	margin: 0 0 max(20px, 28rem);
}
.hs-popular-text {
	max-width: max(720px, 770rem);
	opacity: 0.4;
}
.hs-popular-content .more {
	position: absolute;
	top: 0;
	right: 24px;
	font-size: 0;
}
.hs-popular-item:hover .more {color: var(--orange);}
.hs-popular-item:hover .more::before {opacity: 0;}
.hs-popular-item:hover .more::after {opacity: 1;}

.header-line {
	position: absolute;
	right: 0;
	top: min(-64px, -74rem);
	height: max(64px, 74rem);
	display: flex;
	align-items: center;
	gap: max(24px, 24rem);
}
.header-contacts {
	display: flex;
	align-items: center;
	gap: max(24px, 24rem);
	padding: 0 max(6px, 6rem) 0 0;
}
.header-contact {
	display: flex;
	align-items: center;
	gap: max(8px, 8rem);
	font-size: var(--text_2);
	line-height: 120%;
	color: var(--black);
	text-decoration: none;
}
.header-contact svg {
	width: max(24px, 24rem);
	height: max(24px, 24rem);
}
.header-contact:hover {
	color: var(--white);
}
.header-contact path {
	fill: var(--black);
	transition: all 0.4s;
}
.header-contact:hover path {
	fill: var(--white);
}
.header-link svg {
	display: block;
	width: max(24px, 24rem);
	height: max(24px, 24rem);
}
.header-link path {
	stroke: var(--black);
	transition: all 0.4s;
}
.header-link:hover path {
	stroke: var(--white);
}
.header-fav path {
	fill: var(--black);
}
.header-fav:hover path {
	fill: var(--white);
}
.header-langs {
	display: flex;
	align-items: center;
	gap: max(16px, 16rem);
}
.header-lang {
	position: relative;
	font-size: var(--text_2);
	line-height: 120%;
	color: var(--black-500);
	text-decoration: none;
}
.header-lang:hover {
	color: var(--black);
}
.header-lang.active {
	color: var(--black);
}
.header-lang::after {
	position: absolute;
	right: min(-12px, -12rem);
	content: '/';
	color: var(--black);
	pointer-events: none;
}
.header-lang:last-child::after {
	display: none;
}
.header-bottom {
	position: absolute;
	left: 0;
	top: min(-49px, -54rem);
}
.header-bottom .header-contacts {
	display: none;
}
.header-webs {
	display: flex;
	flex-wrap: wrap;
	gap: max(15px, 15rem);
}
.header-web {
	text-decoration: none;
}
.header-web svg {
	width: max(34px, 34rem);
	height: max(34px, 34rem);
}
.header-web path {
	fill: var(--black);
	transition: all 0.4s;
}
.header-web circle {
	stroke: var(--black);
	transition: all 0.4s;
}
.header-web:hover path {
	fill: var(--white);
}
.header-web:hover circle {
	stroke: var(--white);
}
.mob-nav-icon {
	position: relative;
	z-index: 550;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 18px;
	line-height: 100%;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--black);
	display: none;
}
/************************* hero *************************/
.hero {
	margin: 0 0 max(80px, 130rem);
	padding: max(30px, 60rem) 0 0;
}
.hero h1 {
	margin: 0 0 max(20px, 30rem);
	text-align: center;
}
.hero .subtitle {
	margin: 0 0 max(24px, 30rem);
	font-weight: 500;
	font-size: var(--subtitle);
	line-height: 120%;
	text-align: center;
}
.hero-wrap {
	position: relative;
	margin: 0 min(-16px, -50rem);
}
.hero-bg {
	position: relative;
	overflow: hidden;
	height: max(600px, 1080rem);
	max-height: 100dvh;
}
.hero-bg::after {
	position: absolute;
	inset: 0;
	content: '';
	background: rgba(0, 0, 0, 0.5);
}
.hero-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.hero-bg .video {
    display: block;
	width: 100%;
    height: 100%;
    object-fit: cover;
}
.hero-list {
	position: absolute;
	z-index: 10;
	left: max(16px, 70rem);
	bottom: max(60px, 100rem);
	max-width: max(420px, 480rem);
	border-top: 1px dashed var(--beige);
}
.hero-list-item {
	position: relative;
	padding: max(20px, 20rem) 0 max(20px, 20rem) max(24px, 24rem);
	color: var(--beige);
	border-bottom: 1px dashed var(--beige);
}
.hero-list-item::before {
	position: absolute;
	top: 50%;
	left: 0;
	content: '';
	width: max(12px, 12rem);
	height: max(12px, 12rem);
	margin-top: min(-6px, -6rem);
	background: var(--orange);
}

/************************* main-about *************************/
.main-about {
	display: flex;
	justify-content: space-between;
	margin: 0 0 max(80px, 130rem);
}
.main-about-col {
	width: calc(50% - 10px);
}
.main-about h2 {
	margin: 0 0 max(32px, 60rem);
}
.main-about-top {
	margin: 0 0 max(32px, 40rem);
	font-weight: 500;
	font-size: max(22px, 30rem);
	line-height: 120%;
	color: var(--orange);
}
.main-about-list {
	margin: 0 0 max(32px, 40rem);
	border-top: 1px dashed var(--black);
}
.main-about-item {
	display: flex;
	justify-content: space-between;
	gap: max(40px, 60rem);
	padding: max(20px, 20rem) 0;
	border-bottom: 1px dashed var(--black);
}
.main-about-img {
	width: max(60px, 172rem);
	min-width: max(60px, 172rem);
}
.main-about-img img {
	width: 100%;
}
.main-about-content {
	max-width: max(370px, 420rem);
}
.main-about-item h5 {
	margin: 0 0 max(16px, 40rem);
}
.main-about-text {
	font-size: var(--text_3);
	line-height: 120%;
}

/************************* stat *************************/
.stat {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: max(20px, 20rem);
}
.stat-item {
	display: flex;
	align-items: center;
	gap: max(8px, 40rem);
	height: max(200px, 270rem);
	padding: max(20px, 20rem) max(30px, 70rem);
	border: 1px solid var(--black);
}
.stat-icon {
	width: max(60px, 130rem);
	min-width: max(60px, 130rem);
}
.stat-icon img {
	width: 100%;
}
.stat-content {
	display: flex;
	flex-direction: column;
	gap: max(12px, 16rem);
}
.stat-num {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--digits);
	line-height: 80%;
	color: var(--orange);
}
.stat-text {
	color: var(--black-400);
}

/************************* overview *************************/
.overview {
	position: relative;
	padding: max(60px, 160rem) max(16px, 50rem) max(60px, 144rem);
	margin: 0 min(-16px, -50rem);
	background: var(--black) url(../images/overview-bg.svg) 50% 50% no-repeat;
	background-size: cover;
}
.overview h2 {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	color: var(--white);
	text-align: center;
}
.overview-block {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: max(40px, 64rem) max(40px, 150rem);
}
.overview-item {
	display: flex;
	flex-direction: column;
	gap: max(16px, 16rem);
	width: max(340px, 440rem);
	min-height: max(476px, 580rem);
	padding: max(20px, 20rem);
	color: var(--black);
	text-decoration: none;
	background: var(--white);
}
.overview-item:nth-child(1) {
	margin: max(80px, 180rem) 0 0;
}
.overview-item:nth-child(2) {
	margin: 0 auto;
}
.overview-item:nth-child(3) {
	margin: max(240px, 370rem) 0 0;
}
.overview-item:nth-child(4) {
	margin: 0 max(40px, 100rem) 0 max(100px, 230rem);
}
.overview-item:nth-child(5) {
	margin: max(40px, 90rem) 0 0;
}
.overview-text {
	font-size: var(--text_3);
	line-height: 120%;
}
.overview-item .more {
	margin: 0 auto 0 0;
}
.overview-img {
	overflow: hidden;
	height: max(180px, 278rem);
	margin: auto 0 0;
}
.overview-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s var(--ease);
}
.overview-item:hover .overview-img img {
	transform: scale(1.1);
}
.overview-item:hover .more {color: var(--orange);}
.overview-item:hover .more::before {opacity: 0;}
.overview-item:hover .more::after {opacity: 1;}

/************************* main-projects *************************/
.main-projects h2 {
	margin: 0 0 max(32px, 60rem);
}
.main-projects .pagination .button {
    display: flex;
}

/************************* main-video *************************/
.main-video h2 {
	margin: 0 0 max(32px, 60rem);
}

/************************* video-banner *************************/
.video-banner {
	position: relative;
}
.video-banner-bg {
	position: relative;
	overflow: hidden;
	height: max(600px, 1020rem);
	max-height: 100dvh;
}
.video-banner-bg::after {
	position: absolute;
	inset: 0;
	content: '';
	background: rgba(0, 0, 0, 0.6);
}
.video-banner-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.video-banner-bg .video {
    display: block;
	width: 100%;
    height: 100%;
    object-fit: cover;
}
.video-banner-content {
	position: absolute;
	top: max(40px, 50rem);
	left: 0;
	right: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	color: var(--white);
}
.video-banner-content h3 {
	max-width: max(450px, 900rem);
}

/************************* study *************************/
.study {
	margin: 0 min(-16px, -50rem);
	padding: max(60px, 130rem) max(16px, 50rem);
	color: var(--beige);
	background: var(--black);
}
.study h2 {
	margin: 0 0 max(32px, 60rem);
}
.study-block {
	margin: 0 0 max(32px, 50rem);
	border-bottom: 1px dashed var(--beige);
}
.study-item {
	display: flex;
	gap: max(20px, 20rem);
	padding: max(20px, 20rem) 0;
	border-top: 1px dashed var(--beige);
}
.study-num {
	flex: 1;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--h5);
	line-height: 100%;
	text-transform: uppercase;
}
.study-content {
	width: 37.8%;
}
.study-img {
	position: relative;
	overflow: hidden;
	width: 37.8%;
	height: max(280px, 377rem);
}
.study-img::after {
	position: absolute;
	inset: 0;
	content: '';
	background: rgba(0, 0, 0, 0.2);
}
.study-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s var(--ease);
}
.study-item:hover .study-img img {
	transform: scale(1.1);
}
.study-content h4 {
	max-width: max(320px, 600rem);
	margin: 0 0 max(20px, 20rem);
}
.study-text {
	max-width: max(400px, 440rem);
	margin: 0 0 max(20px, 20rem);
}
.study-item .more {
	color: var(--white);
}
.study-item .more::before {
	background: url(../images/arrow-more-white.svg) 50% 50% no-repeat;
	background-size: contain;
}
.study-item .more:hover {color: var(--orange);}
.study .button {
	background: var(--black);
}

/************************* main-news *************************/
.main-news h2 {
	margin: 0 0 max(32px, 60rem);
	text-align: center;
}
.main-news-block {
	display: flex;
	border-top: 1px dashed var(--black);
	border-bottom: 1px dashed var(--black);
}
.main-news-col {
	width: 50%;
}
.main-news-item {
	padding: max(20px, 20rem);
	border-top: 1px dashed var(--black);
}
.main-news-item:first-child {
	border-top: 0;
}
.main-news-col:first-child {
	border-right: 1px dashed var(--black);
}
.main-news-col:first-child .main-news-item {
	padding-left: 0;
}
.main-news-col:last-child .main-news-item {
	padding-right: 0;
}
.main-news-item .blog-item {
	padding: 0;
	background: none;
}
.main-news-item .blog-item h5 {
	max-width: max(340px, 580rem);
}
.main-news-item .blog-text {
	max-width: max(730px, 770rem);
	font-size: var(--text_1);
	line-height: 120%;
}
.main-news-item .blog-img {
    height: max(270px, 520rem);
}

/************************* review *************************/
.review h2 {
	margin: 0 0 max(32px, 60rem);
}
.review-slider {
	margin: 0 min(-16px, -50rem) 0 0;
}
.review-slide {
	padding: 0 max(20px, 20rem) 0 0;
}
.review-item {
	display: flex;
	flex-direction: column;
	width: max(294px, 580rem);
	height: max(363px, 525rem);
	padding: max(20px, 20rem);
	color: var(--beige);
	background: var(--black);
}
.review-item::before {
	display: flex;
	width: max(24px, 60rem);
	height: max(24px, 60rem);
	margin: 0 0 max(10px, 10rem);
	content: '';
	background: url(../images/quote-left-fill.svg) 50% 50% no-repeat;
	background-size: contain;
}
.review-text {
	margin: 0 0 max(12px, 12rem);
	font-size: var(--text_3);
	line-height: 120%;
	display: -webkit-box;
    -webkit-line-clamp: 9;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    height: calc(9 * 1.2 * var(--text_3));
}
.review-item .more {
	margin: 0 auto 0 0;
	color: var(--white);
}
.review-item .more::before, .review-item .more::after {
	display: none;
}
.review-author {
	display: flex;
	align-items: center;
	gap: max(12px, 12rem);
	margin: auto 0 0;
}
.review-flag {
	width: max(24px, 106rem);
}
.review-flag img {
	width: 100%;
}
.review-name {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--text_2);
	line-height: 120%;
	text-transform: uppercase;
}
.review-slider .slick-arrow {
	top: min(-80px, -80rem);
	margin-top: 0;
	width: max(40px, 40rem);
	height: max(40px, 40rem);
	background: var(--beige);
	border: 1px solid var(--orange);
}
.review-slider .slick-arrow::after {
	background: url(../images/slider-arrow-orange.svg) 50% 50% no-repeat;
	background-size: max(24px, 24rem);
	opacity: 1;
}
.review-slider .slick-arrow::before {
	position: absolute;
    inset: 0;
	z-index: 5;
    content: '';
	background: url(../images/slider-arrow-white.svg) 50% 50% no-repeat;
	background-size: max(24px, 24rem);
    opacity: 0;
    transition: all 0.4s;
}
.review-slider .slick-prev::before {
	transform: scale(-1, 1);
}
.review-slider .slick-arrow:hover {
	background-color: var(--orange);
}
.review-slider .slick-arrow:hover::after {
	opacity: 0;
}
.review-slider .slick-arrow:hover::before {
	opacity: 1;
}
.review-slider .slick-prev {
	left: auto;
	right: calc(max(56px, 56rem) + max(16px, 50rem));
}
.review-slider .slick-next {
	right: max(16px, 50rem);
}

/************************* brand *************************/
.brand h2 {
	margin: 0 0 max(32px, 60rem);
	text-align: center;
}
.brand-block {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: max(15px, 80rem)
}
.brand-block img {
	height: max(40px, 73rem);
}

/************************* section *************************/
.section {
	padding: 0 0 max(80px, 200rem);
}

/************************* breadcrumbs *************************/
.breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	gap: max(8px, 8rem);
	padding: 0 max(16px, 50rem);
	margin: 0 0 max(40px, 83rem);
}
.breadcrumbs li {
	display: flex;
	align-items: flex-start;
	gap: max(4px, 4rem);
	padding: 0;
	margin: 0;
	font-size: var(--caption_2);
	line-height: 120%;
	color: var(--black);
	list-style: none;
}
.breadcrumbs li::before {
	display: block;
	content: '/';
	color: var(--black-400);
}
.breadcrumbs li:last-child::before {
	color: var(--black-400);
}
.breadcrumbs li:first-child::before {display: none;}
.breadcrumbs a {
	position: relative;
	color: var(--black-400);
	text-decoration: none;
}
.breadcrumbs a:hover {
	color: var(--black);
}











/************************* prod *************************/
.prod-top {
	display: flex;
	justify-content: space-between;
	gap: max(20px, 40rem);
	margin: 0 0 max(32px, 80rem);
}
.prod-top-text {
	max-width: max(420px, 460rem);
}
.prod-tabs {
	display: flex;
	flex-direction: column;
	gap: max(32px, 40rem);
	margin: 0 0 max(32px, 40rem);
}
.prod-tabs-text {
	max-width: max(860px, 940rem);
}
.prod-tabs .tabs-wrap {
	justify-content: space-between;
	gap: 0;
	padding: max(4px, 4rem);
}
.prod-tabs .tabs-item {
	flex: none;
}
.prod-tabs .tabs-link {
	overflow: hidden;
	padding: 0 max(10px, 22rem);
    font-size: max(14px, 20rem);
	line-height: 120%;
}
.prod-tabs .tabs {
	margin: 0;
}
.tabs-parent::after {
	min-width: max(24px, 24rem);
	width: max(24px, 24rem);
	height: max(24px, 24rem);
	margin: min(-2px, -2rem) 0;
	content: '';
	background: url(../images/tab-arrow.svg) 50% 50% no-repeat;
	background-size: contain;
}
.tabs-sub {
	display: none;
	position: absolute;
	width: max(260px, 260rem);
	top: calc(100% + max(8px, 8rem));
	left: 0;
	z-index: 50;
	padding: max(12px, 12rem) max(4px, 4rem) max(12px, 12rem) 0;
	background: var(--orange);
	border-radius: 10px;
}
.tabs-sub-list {
	display: flex;
	flex-direction: column;
	max-height: max(290px, 290rem);
	overflow-y: auto;
	padding-right: max(18px, 18rem);
}
.tabs-sub-list::-webkit-scrollbar-track {
	background-color: transparent;
}
.tabs-sub-list::-webkit-scrollbar {
	width: max(6px, 6rem);
	background-color: transparent;
}
.tabs-sub-list::-webkit-scrollbar-thumb {
	border-radius: 4px;
	background-color: rgba(255, 255, 255, 0.4);
}
.tabs-sub-item {
	display: block;
	padding: max(18px, 18rem) max(12px, 12rem);
	font-family: var(--second-family);
	font-weight: 600;
	font-size: max(18px, 18rem);
	line-height: 120%;
	text-transform: uppercase;
	color: var(--white);
	text-decoration: none;
}
.tabs-sub-item:hover {
	background-color: rgba(255, 255, 255, 0.4);
}
.prod-block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: max(32px, 60rem) max(20px, 20rem);
	padding: 0 0 max(32px, 80rem);
}
.prod-block:last-child {
	padding: 0;
}
.prod-item {
	position: relative;
	overflow: hidden;
	height: max(192px, 330rem);
}
.prod-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s var(--ease);
}
.prod-item:hover img {
	transform: scale(1.1);
}
.prod-item::after {
	position: absolute;
	inset: 0;
	content: '';
	background: var(--black-500);
	transition: all 0.4s var(--ease);
}
.prod-item:hover::after {
	opacity: 0;
}
.prod-content {
	position: absolute;
	inset: 0;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: max(10px, 20rem);
	transition: all 0.4s var(--ease);
}
.prod-item:hover .prod-content {
	opacity: 0;
}
.prod-content h6 {
	color: var(--white);
}
.prod-label {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 20;
	padding: max(7px, 7rem) max(10px, 10rem) max(6px, 6rem);
	font-weight: 500;
	font-size: var(--caption);
	line-height: 120%;
	text-transform: uppercase;
	color: var(--beige);
	background: var(--orange);
}

/************************* prod-more *************************/
.prod-more h2 {
	margin: 0 0 max(32px, 60rem);
}

/************************* safety *************************/
.safety {
	display: flex;
	justify-content: space-between;
	margin: 0 0 max(80px, 120rem);
}
.safety:last-child {
	margin: 0;
}
.safety-side {
	width: calc(50% - 10px);
	display: flex;
	flex-direction: column;
}
.safety-side h2 {
	max-width: max(440px, 680rem);
	margin: 0 0 max(32px, 60rem);
}
.safety-side-block {
	margin: auto 0 0;
	max-width: max(380px, 420rem);
}
.safety-side h4 {
	margin: 0 0 max(20px, 20rem);
}
.safety-side-text {
	margin: 0 0 max(20px, 20rem);
}
.safety-img {
	width: calc(50% - 10px);
	min-height: max(480px, 733rem);
}
.safety-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.safety-block {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: max(20px, 20rem);
}
.safety-item {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: max(240px, 265rem);
	padding: max(20px, 20rem);
	border: 1px dashed var(--black);
}
.safety-logo img {
	width: 100%;
	height: 100%;
	max-width: max(132px, 264rem);
	max-height: max(40px, 80rem);
	object-fit: contain;
	object-position: 0 0;
}
.safety-text {
	font-size: var(--text_2);
	line-height: 120%;
	opacity: 0.7;
}

/************************* prod-page *************************/
.prod-page-top {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	margin: 0 0 max(32px, 40rem);
}
.prod-page-top .share-text {
	opacity: 0.4;
}
.prod-page-top .share-webs {
	flex-wrap: nowrap;
}
.prod-page-banner {
	height: max(192px, 786rem);
	margin: 0 0 max(60px, 80rem);
}
.prod-page-banner img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.prod-page .tabs {
	margin: 0 0 max(32px, 40rem);
}
.prod-page .tabs-wrap {
    justify-content: space-between;
    gap: 5px;
}
.prod-page .tabs-item {
	flex: none;
}
.prod-page .tabs-link {
    padding: max(14px, 14rem) max(20px, 32rem);
}
.prod-box {
	margin: 0 0 max(32px, 40rem);
	padding: max(20px, 40rem);
	background: var(--white);
}
.prod-box:last-child {
	margin: 0;
}
.prod-box-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0 0 max(32px, 40rem);
	padding: max(12px, 20rem) 0 0;
}
.prod-box-top h4 {
	max-width: max(400px, 700rem);
	text-align: center;
}
.prod-box-wrap {
	display: flex;
	justify-content: space-between;
}
.prod-box-col {
	width: calc(52% - max(20px, 48rem));
}
.prod-box-col:first-child {
	width: calc(48% - max(20px, 48rem));
}
.prod-box-col:first-child h4 {
	display: none;
}
.prod-box-col h4 {
	margin: 0 0 max(20px, 20rem);
}
.prod-box-reverse .prod-box-wrap {
	flex-direction: row-reverse;
}
.prod-box-reverse .prod-box-col {
	width: calc(48% - max(20px, 48rem));
}
.prod-box-reverse .prod-box-col:first-child {
	width: calc(52% - max(20px, 48rem));
}
.prod-box-reverse .prod-box-text {
	max-width: max(500px, 530rem);
}
.prod-box-center .prod-box-wrap {
	align-items: center;
}
.prod-box-img {
	position: relative;
	overflow: hidden;
	height: max(170px, 506rem);
}
.prod-box-img::after {
	position: absolute;
	inset: 0;
	content: '';
	background: rgba(0, 0, 0, 0.2);
}
.prod-box-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/************************* obst *************************/
.obst h4 {
	padding: 0 0 max(20px, 30rem);
	margin: 0 0 max(20px);
	border-bottom: 1px dashed var(--black);
}
.obst-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: max(32px, 32rem) max(20px, 20rem);
	margin: 0 0 max(40px, 60rem);
}
.obst-list:last-child {
	margin: 0;
}
.obst-item {
	color: var(--black);
	text-decoration: none;
}
.obst-img {
	overflow: hidden;
	height: max(290px, 664rem);
	margin: 0 0 max(20px, 24rem);
}
.obst-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s var(--ease);
}
.obst-item:hover .obst-img img {
	transform: scale(1.1);
}
.obst-title {
	margin: 0 0 max(8px, 8rem);
	font-family: var(--second-family);
	font-weight: 600;
	font-size: max(18px, 24rem);
	line-height: 100%;
	text-transform: uppercase;
}
.obst-stat {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	padding: max(16px, 16rem) 0;
	border-bottom: 1px dashed var(--black);
}
.obst-stat-name {
	margin: 1px 0 -1px;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--text_3);
	line-height: 130%;
	text-transform: uppercase;
}
.obst-stat-value {
	font-size: var(--text_3);
	line-height: 130%;
}

/************************* catalog *************************/
.catalog-block {
	display: flex;
	gap: max(20px, 20rem);
}
.catalog-side {
	width: max(340px, 440rem);
	min-width: max(340px, 440rem);
}
.catalog-content {
	width: calc(100% - max(340px, 440rem) - max(20px, 20rem));
}
.catalog-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: max(32px, 50rem) max(20px, 20rem);
	margin: 0 0 max(32px, 80rem);
}
.catalog-list:last-child {
	margin: 0;
}
.catalog-item {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: max(20px, 20rem);
	background: var(--white);
}
.catalog-item h5 {
	margin: 0 0 max(20px, 20rem);
}
.catalog-text {
	margin: 0 0 max(20px, 30rem);
	font-size: var(--text_3);
	line-height: 120%;
}
.catalog-item .button {
	margin: auto 0 0;
	max-width: none;
}
.catalog-photo {
	margin: 0 0 max(20px, 20rem);
}
.catalog-photo .catalog-photo-item {
	height: max(200px, 250rem);
}
.catalog-photo-item {
	overflow: hidden;
}
.catalog-photo-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s var(--ease);
}
.catalog-item:hover .catalog-photo-item img {
	transform: scale(1.1);
}
.catalog-photo .slick-dots {
	bottom: max(8px, 12rem);
	gap: max(15px, 15rem);
}
.catalog-photo .slick-dots button {
	width: max(25px, 25rem);
	height: max(2px, 2rem);
	background: var(--gray);
	border-radius: 10px;
}
.catalog-photo .slick-dots .slick-active button {
	background: var(--white);
}
.catalog-photo .slick-dots button:hover {
	background: var(--white);
}
.catalog-photo .slick-arrow {
	margin-top: min(-20px, -20rem);
	width: max(40px, 40rem);
	height: max(40px, 40rem);
	background: transparent;
	backdrop-filter: unset;
	border-radius: 0;
}
.catalog-photo .slick-arrow::after {
	background: url(../images/slider-arrow-2.svg) 50% 50% no-repeat;
	background-size: contain;
	opacity: 1;
}
.catalog-photo .slick-prev {
	left: max(4px, 10rem);
}
.catalog-photo .slick-next {
	right: max(4px, 10rem);
}

/************************* filter *************************/
.filter-mob,
.filter-close, .filter-button {
	display: none;
}
.filter-top {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 0 max(40px, 60rem);
}
.filter-clear {
	position: relative;
	margin-right: max(28px, 28rem);
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--text_2);
	line-height: 120%;
	text-transform: uppercase;
	color: var(--orange);
	text-decoration: none;
}
.filter-clear:hover {
	color: var(--black);
}
.filter-clear::after {
	position: absolute;
	top: 50%;
	margin-top: min(-12px, -12rem);
	right: min(-28px, -28rem);
	content: '';
	width: max(24px, 24rem);
	height: max(24px, 24rem);
	background: url(../images/filter-close.svg) 50% 50% no-repeat;
	background-size: contain;
	transition: all 0.4s;
}
.filter-clear:hover::after {
	background: url(../images/filter-close-black.svg) 50% 50% no-repeat;
	background-size: contain;
}
.filter-item {
	margin: 0 0 max(30px, 50rem);
}
.filter-item:last-child {margin: 0;}
.filter-item h5 {
	margin: 0 0 max(20px, 20rem);
}
.search {
	position: relative;
	margin: 0 0 max(30px, 30rem);
}
.search:last-child {margin: 0;}
.search .wpcf7-form-control-wrap input {
    height: max(58px, 58rem);
    padding: 0 max(20px, 20rem) 0 max(56px, 56rem);
    margin: 0;
    font-size: var(--text_2);
    background: var(--white);
    border: 1px solid var(--white);
}
.search-button {
	position: absolute;
	top: max(17px, 17rem);
	left: max(20px, 20rem);
	width: max(24px, 24rem);
	height: max(24px, 24rem);
	background: url(../images/search.svg) 50% 50% no-repeat;
	background-size: contain;
}
.filter-drop {
	position: relative;
	margin: 0 0 max(12px, 20rem);
}
.filter-drop:last-child {margin: 0;}
.filter-drop-top {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--text_2);
	line-height: 120%;
	text-transform: uppercase;
	color: var(--black);
	text-decoration: none;
}
.filter-drop-top:hover {
	color: var(--orange);
}
.filter-drop-top.active-check {
	color: var(--orange);
}
.filter-drop-clear {
	position: absolute;
	top: 0;
	right: 0;
	width: max(24px, 24rem);
    height: max(24px, 24rem);
    background: url(../images/filter-close.svg) 50% 50% no-repeat;
    background-size: contain;
	display: none;
}
.filter-drop-clear.active-check {
	display: block;
}
.filter-drop-hidden {
	display: none;
	padding: max(10px, 10rem) 0 0;
}
.filter-drop-hidden.vis {
	display: block;
}
.check-list {
	display: flex;
	flex-direction: column;
	gap: max(10px, 10rem);
}
.filter .check-label {
	min-height: max(24px, 24rem);
	padding: 0 0 0 max(32px, 32rem);
	font-size: var(--text_2);
	line-height: max(24px, 24rem);
}
.filter .check-label::before {
	width: max(24px, 24rem);
	height: max(24px, 24rem);
	background: url(../images/checkbox-3.svg) 50% 50% no-repeat;
	background-size: contain;
}
.filter .check-input:checked + .check-label::before {
	background: url(../images/checkbox-3-active.svg) 50% 50% no-repeat;
	background-size: contain;
}
.filter-search-result {
	display: flex;
	flex-direction: column;
	gap: max(20px, 20rem);
	margin: min(-10px, -10rem) 0 max(30px, 30rem);
}
.filter .filter-search-result .check-label {
	font-weight: 600;
	font-family: var(--second-family);
	text-transform: uppercase;
}
.filter-search-empty {
	margin: min(-16px, -16rem) 0 max(30px, 30rem);
	font-weight: 500;
	font-size: max(16px, 16rem);
	text-transform: capitalize;
}

/************************* catalog-more *************************/
.catalog-more h2 {
	margin: 0 0 max(32px, 60rem);
}
.catalog-more .catalog-list {
    gap: max(32px, 60rem) max(20px, 20rem);
}
.catalog-more .catalog-text {
    margin: 0 0 max(20px, 42rem);
}

/************************* project *************************/
.project h1 {
	margin: 0 0 max(20px, 40rem);
}
.project-block {
	display: flex;
	justify-content: space-between;
	padding: max(20px, 40rem) 0 0;
	border-top: 1px dashed var(--black);
}
.project-side {
	width: calc(50% - 10px);
}
.project-photo {
	max-width: max(560px, 670rem);
}
.project-photo-slide {
	position: relative;
	overflow: hidden;
}
.project-photo .project-photo-slide {
	height: max(360px, 422rem);
}
.project-photo .slick-arrow {
	margin-top: min(-20px, -20rem);
	width: max(40px, 40rem);
	height: max(40px, 40rem);
	background: var(--beige);
}
.project-photo .slick-arrow::after {
	background: url(../images/slider-arrow-orange.svg) 50% 50% no-repeat;
	background-size: max(24px, 24rem);
	opacity: 1;
}
.project-photo .slick-arrow::before {
	position: absolute;
    inset: 0;
	z-index: 5;
    content: '';
	background: url(../images/slider-arrow-white.svg) 50% 50% no-repeat;
	background-size: max(24px, 24rem);
    opacity: 0;
    transition: all 0.4s;
}
.project-photo .slick-prev::before {
	transform: scale(-1, 1);
}
.project-photo .slick-arrow:hover {
	background-color: var(--orange);
}
.project-photo .slick-arrow:hover::after {
	opacity: 0;
}
.project-photo .slick-arrow:hover::before {
	opacity: 1;
}
.project-photo .slick-prev {
	left: max(15px, 20rem);
}
.project-photo .slick-next {
	right: max(15px, 20rem);
}
.project-content {
	width: calc(50% - 10px);
	display: flex;
	flex-direction: column;
	gap: max(20px, 20rem);
}
.project-stat-item {
	display: flex;
	padding: max(20px, 20rem) 0 max(20px, 20rem);
	border-bottom: 1px dashed var(--black);
}
.project-stat-item:first-child {
	padding-top: 0;
}
.project-stat-item h6 {
	width: 50%;
	padding: 0 max(20px, 20rem) 0 0;
}
.project-stat-text {
	width: 50%;
	font-size: var(--text_2);
	line-height: 120%;
}
.project-text {
	font-size: var(--text_2);
	line-height: 120%;
}
.project-content .share-text {
	opacity: 0.4;
}
.project-button {
	padding: max(20px, 40rem) 0 0;
}

/************************* project-gallery *************************/
.project-gallery-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: max(20px, 20rem);
	margin: 0 0 max(32px, 40rem);
}
.project-gallery-text {
	max-width: max(680px, 750rem);
}
.project-gallery-block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: max(20px, 20rem);
}
.project-gallery-item {
	height: max(192px, 330rem);
}
.project-gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.project-gallery .pagination {
	display: none;
}

/************************* safety-banner *************************/
.safety-banner {
	position: relative;
	padding: max(35px, 116rem) 0 0;
	margin: min(-8px, -53rem) 0 0;
}
.safety-banner-bg {
	position: relative;
	height: max(600px, 1148rem);
	max-height: 100dvh;
	margin: 0 min(-16px, -50rem);
}
.safety-banner-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.safety-banner-bg::after {
	position: absolute;
	inset: 0;
	content: '';
	background-color: rgba(0, 0, 0, 0.6);
}
.safety-banner h1 {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 5;
	color: var(--white);
	text-align: center;
}
.safety-banner h1 .text-wrap:first-child,
.safety-banner span {
	display: block;
	color: var(--black);
}
.safety-banner-text {
	position: absolute;
	bottom: max(40px, 90rem);
	left: 0;
	z-index: 5;
	max-width: max(550px, 550rem);
	font-size: max(18px, 18rem);
	line-height: 120%;
	color: var(--white);
}

/************************* safety-compact *************************/
.safety-compact h2 {
	max-width: max(440px, 980rem);
	margin: 0 0 max(32px, 60rem);
}

/************************* cert *************************/
.cert h2 {
	max-width: max(400px, 1000rem);
	margin: 0 auto max(32px, 60rem);
	text-align: center;
}
.cert-slider {
	margin: 0 min(-16px, -50rem) max(40px, 58rem) 0;
}
.cert-slide {
	width: max(304px, 440rem);
	padding: 0 max(10px, 20rem) 0 0;
}
.cert-img {
	height: max(363px, 506rem);
	margin: 0 0 max(16px, 20rem);
}
.cert-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.cert-slide h5 {
	margin: 0 0 max(20px, 20rem);
}
.cert-text {
	font-weight: 500;
	font-size: max(16px, 20rem);
	line-height: 110%;
	color: var(--black-400);
}
.cert-slider .slick-arrow {
	top: min(-80px, -80rem);
	margin-top: 0;
	width: max(40px, 40rem);
	height: max(40px, 40rem);
	background: var(--beige);
	border: 1px solid var(--orange);
}
.cert-slider .slick-arrow::after {
	background: url(../images/slider-arrow-orange.svg) 50% 50% no-repeat;
	background-size: max(24px, 24rem);
	opacity: 1;
}
.cert-slider .slick-arrow::before {
	position: absolute;
    inset: 0;
	z-index: 5;
    content: '';
	background: url(../images/slider-arrow-white.svg) 50% 50% no-repeat;
	background-size: max(24px, 24rem);
    opacity: 0;
    transition: all 0.4s;
}
.cert-slider .slick-prev::before {
	transform: scale(-1, 1);
}
.cert-slider .slick-arrow:hover {
	background-color: var(--orange);
}
.cert-slider .slick-arrow:hover::after {
	opacity: 0;
}
.cert-slider .slick-arrow:hover::before {
	opacity: 1;
}
.cert-slider .slick-prev {
	left: auto;
	right: calc(max(56px, 56rem) + max(16px, 50rem));
}
.cert-slider .slick-next {
	right: max(16px, 50rem);
}

/************************* lab *************************/
.lab h2 {
	max-width: max(400px, 1000rem);
	margin: 0 auto max(32px, 60rem);
	text-align: center;
}
.lab-block {
	display: flex;
}
.lab-side {
	width: 37%;
	padding: 0 max(32px, 32rem) 0 0;
}
.lab-side h4 {
	max-width: max(320px, 480rem);
	margin: 0 0 max(20px, 20rem);
}
.lab-text {
	max-width: max(390px, 430rem);
}
.lab-photo {
	width: 63%;
}
.lab-photo-block {
	display: flex;
	gap: max(20px, 20rem);
}
.lab-photo-col {
	width: 38%;
	display: flex;
	flex-direction: column;
	gap: max(20px, 20rem);
}
.lab-photo-col:last-child {
	width: auto;
	flex: 1;
}
.lab-1 {
	height: max(460px, 600rem);
}
.lab-2 {
	height: max(220px, 290rem);
}
.lab-3 {
	height: max(295px, 390rem);
}
.lab-4 {
	height: max(145px, 190rem);
}
.lab-photo-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.lab-line-block {
	display: none;
}
.lab-line-wrap {
	display: flex;
}

/************************* cert-video *************************/
.cert-video {
	margin: 0 min(-16px, -50rem);
	padding: max(60px, 154rem) max(20px, 180rem) max(60px, 68rem);
	background: var(--black);
}
.cert-video-block {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 0 max(20px, 30rem);
}
.cert-video-item {
	position: relative;
	overflow: hidden;
	width: calc(50% - 10px);
	height: max(192px, 570rem);
}
.cert-video-item .video-cover::after {
	background-color: rgba(0, 0, 0, 0.4);
}
.cert-video-text {
	max-width: max(750px, 820rem);
	margin: 0 auto;
	color: var(--white);
	text-align: center;
}

/************************* control *************************/
.control-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: max(20px, 20rem);
	margin: 0 0 max(32px, 82rem);
}
.control-top h2 {
	max-width: max(400px, 990rem);
}
.control-block {
	display: flex;
	justify-content: space-between;
}
.control-side {
	width: calc(50% - max(50px, 238rem));
}
.control-side-wrap {
	position: sticky;
	top: max(30px, 60rem);
	left: 0;
}
.control-side-item:not(:first-child) {
	position: absolute;
	top: 0;
	left: 0;
}
.control-side-item:first-child {
	position: relative;
}
.control-side-item {
	opacity: 0;
	pointer-events: none;
}
.control-side-item.active {
	opacity: 1;
	pointer-events: all;
	z-index: 50;
}
.control-video {
	position: relative;
	overflow: hidden;
	aspect-ratio: 16/9;
	margin: 0 0 max(20px, 20rem);
}
.control-side-text {
	max-width: max(510px, 560rem);
}
.control-content {
	position: relative;
	width: 50%;
}
.control-item {
	position: relative;
	padding: 0 0 max(40px, 208rem);
	padding-left: max(50px, 238rem);
}
.control-step {
	margin: 0 0 max(16px, 60rem);
}
.control-item h4 {
	margin: 0 0 max(12px, 20rem);
	max-width: max(400px, 540rem);
}
.control-text {
	max-width: max(390px, 430rem);
}
.control-progress {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	border-left: 1px dashed var(--black);
}
.control-progress-filler {
	position: relative;
    overflow: hidden;
    bottom: auto;
    width: 3px;
	margin-left: -2px;
    display: block;
    height: 100%;
}
.control-progress-filler::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: var(--orange);
	transform: translateY(calc(-100% + (var(--p)) * 105%));
    z-index: 1;
}
.control-item::before {
	position: absolute;
	top: 0;
	left: min(-7px, -15rem);
	z-index: 20;
	content: '';
	width: max(16px, 32rem);
	height: max(16px, 32rem);
	background: var(--black);
	border-radius: 50%;
}
.control-item.active::before {
	background: var(--orange);
}
.control-item:last-child::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: -5px;
	width: 10px;
	content: '';
	z-index: 10;
	background: var(--beige);
}


/************************* video-section *************************/
.video-big {
	position: relative;
	margin: 0 0 max(20px, 20rem);
}
.video-big-wrap {
	position: relative;
	overflow: hidden;
	height: max(192px, 1020rem);
	max-height: 100dvh;
}
.video-big-wrap .video-cover::after {
    background-color: var(--black-600);
}
.video-big-content {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	padding: max(40px, 50rem) 0 0;
	display: flex;
	align-items: center;
	flex-direction: column;
	color: var(--white);
	text-align: center;
}
.video-big-content h3 {
	max-width: max(440px, 980rem);
}
.video-block {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 max(32px, 50rem);
	border-top: 1px dashed var(--black);
}
.video-block:last-child {
	margin: 0;
}
.video-block .article-gallery-item {
	width: 50%;
	padding: max(20px, 20rem) max(10px, 10rem);
	border-bottom: 1px dashed var(--black);
	border-right: 1px dashed var(--black);
}
.video-block .article-gallery-item:nth-child(2n + 1){
	padding-left: 0;
}
.video-block .article-gallery-item:nth-child(2n){
	border-right: 0;
	padding-right: 0;
}

/************************* safety-bottom *************************/
.safety-bottom {
	position: relative;
}
.safety-bottom-wrap {
	position: relative;
	overflow: hidden;
	height: max(600px, 1000rem);
	max-height: 100dvh;
}
.safety-bottom-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.safety-bottom-wrap .video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.safety-bottom-wrap::after {
	position: absolute;
	inset: 0;
	content: '';
	background: rgba(0, 0, 0, 0.5);
}
.safety-bottom-text {
	position: absolute;
	inset: 0;
	z-index: 10;
	padding: max(30px, 100rem) max(20px, 50rem);
	color: var(--white);
}
.safety-bottom-text h5 {
	max-width: max(400px, 680rem);
}

/************************* about-slider *************************/
.about-section {
	margin: min(-18px, -62rem) 0 max(80px, 130rem);
}
.about-slider {
	margin: 0 min(-16px, -50rem);
}
.about-slide {
	position: relative;
}
.about-slide > .h1 {
	display: none;
}
.about-slide-bg {
	position: relative;
	overflow: hidden;
	height: max(500px, 900rem);
	max-height: calc(100dvh - max(158px, 178rem));
}
.about-slide-bg::after {
	position: absolute;
	inset: 0;
	content: '';
	background: rgba(0, 0, 0, 0.7);
}
.about-slide-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.about-slider .slick-dots {
	bottom: max(10px, 40rem);
	gap: max(10px, 10rem);
}
.about-slider .slick-dots button {
	width: max(100px, 100rem);
	height: max(3px, 3rem);
	background: rgba(255, 255, 255, 0.4);
	border-radius: 0;
}
.about-slider .slick-dots .slick-active button {
	background: var(--white);
}
.about-slider .slick-dots button:hover {
	background: var(--white);
}
.about-slide-content {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: max(20px, 20rem);
	padding: max(60px, 128rem) max(16px, 10rem);
	color: var(--white);
	text-align: center
}
.about-slide-content h3 {
	margin: auto 0 0;
}
.about-slide-text {
	max-width: max(520px, 580rem);
	font-size: var(--text_2);
	line-height: 120%;
}

/************************* core *************************/
.core {
	padding: max(80px, 200rem) 0 0;
	margin: min(-80px, -200rem) 0 0;
}
.core h2 {
	max-width: max(500px, 1100rem);
	margin: 0 auto max(32px, 60rem);
	text-align: center;
}
.core-block {
	position: relative;
	padding: 0 0 max(80px, 200rem);
}
.core-line {
	position: relative;
	overflow: hidden;
	margin: 0 min(-16px, -50rem);
}
.core-line::before {
	position: absolute;
	top: max(20px, 40rem);
	left: 0;
	right: 0;
	content: '';
	border-top: 1px dashed var(--black);
}
.core-wrap {
	display: flex;
	flex-shrink: 0;
	width: calc(max(280px, 600rem)*5 + max(16px, 50rem)*3);
	padding: 0 max(16px, 50rem);
}
.core-item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	width: max(280px, 600rem);
	min-width: max(280px, 600rem);
	padding: 0 max(20px, 20rem) 0 0;
}
.core-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: max(40px, 80rem);
	height: max(40px, 80rem);
	margin: 0 0 max(20px, 60rem);
	background: var(--beige);
	border: 1px dashed var(--orange);
	border-radius: 50%;
}
.core-icon-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	width: max(32px, 60rem);
	height: max(32px, 60rem);
	background: var(--orange);
	border-radius: 50%;
}
.core-icon-wrap img {
	width: max(16px, 24rem);
}
.core-item h4 {
	margin: 0 0 max(16px, 20rem);
	max-width: max(280px, 440rem);
}
.core-text {
	max-width: max(380px, 420rem);
}

/************************* process *************************/
.process-section {
	padding: max(80px, 200rem) 0 0;
	margin: min(-80px, -200rem) 0 0;
}
.process h2 {
	margin: 0 0 max(32px, 60rem);
	text-align: center;
}
.process-block {
	position: relative;
	padding: 0 0 max(80px, 200rem);
}
.process-line {
	position: relative;
	overflow: hidden;
	margin: 0 min(-16px, -50rem);
}
.process-line::before {
	position: absolute;
	top: max(20px, 30rem);
	left: 0;
	right: 0;
	content: '';
	border-top: 1px dashed var(--black);
}
.process-wrap {
	display: flex;
	flex-shrink: 0;
	width: calc(max(300px, 500rem)*8 + max(16px, 50rem)*3);
	padding: 0 max(16px, 50rem);
}
.process-item {
	position: relative;
	display: flex;
	flex-direction: column;
	width: max(300px, 500rem);
	min-width: max(300px, 500rem);
	padding: 0 max(10px, 60rem) 0 0;
}
.process-num {
	display: flex;
	align-items: center;
	justify-content: center;
	width: max(40px, 60rem);
	height: max(40px, 60rem);
	margin: 0 auto max(20px, 40rem);
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--h5);
	line-height: 100%;
	text-transform: uppercase;
	color: var(--white);
	background: var(--orange);
	border-radius: 50%;
}
.process-box {
	flex: 1;
	display: flex;
	flex-direction: column;
	padding: max(18px, 20rem);
	text-align: center;
	background: var(--white);
}
.process-box h5 {
	margin: 0 0 max(16px, 16rem);
}
.process-text {
	margin: 0 0 max(20px, 20rem);
	font-size: max(14px, 16rem);
	line-height: 135%;
}
.process-img {
	height: max(162px, 277rem);
	margin: auto 0 0;
}
.process-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/************************* why *************************/
.why {
	display: flex;
	justify-content: space-between;
}
.why-side {
	width: calc(50% - 10px);
	display: flex;
	flex-direction: column;
}
.why-side h2 {
	max-width: max(360px, 720rem);
	margin: 0 0 max(32px, 64rem);
}
.why-wrap {
	max-width: max(520px, 570rem);
	margin: auto 0 0;
}
.why-wrap h4 {
	margin: 0 0 max(20px, 20rem);
}
.why-wrap p {
	margin: 0 0 max(10px, 10rem);
}
.why-wrap p:last-child {
	margin: 0;
}
.why-img {
	width: calc(50% - 10px);
	min-height: max(280px, 780rem);
	max-height: max(680px, 780rem);
}
.why-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/************************* about-stat *************************/
.about-stat {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: max(20px, 20rem);
}
.about-stat-item {
	display: flex;
	flex-direction: column;
	aspect-ratio: 1/1;
	padding: max(16px, 20rem);
	border: 1px dashed var(--black);
}
.about-stat-icon {
	width: max(60px, 120rem);
}
.about-stat-icon img {
	width: 100%;
}
.about-stat-item h5 {
	margin: auto 0 max(10px, 10rem);
	color: var(--orange);
}
.about-stat-text {
	font-weight: 500;
	font-size: var(--text_2);
	line-height: 120%;
	color: var(--black-400);
}

/************************* factory *************************/
.factory-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	margin: 0 0 max(32px, 64rem);
}
.factory-top h2 {
	margin: 0 0 max(20px, 40rem);
}
.factory-text {
	max-width: max(660px, 720rem);
	margin: 0 0 max(20px, 20rem);
}
.factory-year {
	font-weight: 600;
	font-size: var(--text_2);
	line-height: 120%;
	text-transform: uppercase;
	color: var(--black-400);
}
.tour {
	position: relative;
	overflow: hidden;
	height: max(210px, 960rem);
	max-height: 100dvh;
	margin: 0 min(-16px, -50rem);
}
.tour-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.tour-center {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: max(5px, 5rem);
	color: var(--white);
}
.tour-center img {
	width: max(47px, 90rem);
}
.tour-bottom {
	position: absolute;
	left: 0;
	right: 0;
	bottom: max(10px, 50rem);
	color: var(--white);
	text-align: center;
}

/************************* info *************************/
.info h2 {
	margin: 0 0 max(32px, 60rem);
	text-align: center;
}
.info-block {
	display: flex;
	justify-content: space-between;
}
.info-img {
	width: calc(50% - 10px);
	height: max(560px, 850rem);
}
.info-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.info-content {
	width: calc(50% - 10px);
	height: max(560px, 850rem);
	padding: max(20px, 30rem);
	overflow-y: auto;
	border: 1px dashed var(--black);
}
.info-content::-webkit-scrollbar-track {
	background-color: rgba(8, 8, 8, 0.1);
}
.info-content::-webkit-scrollbar {
	width: max(6px, 6rem);
	background-color: rgba(8, 8, 8, 0.1);
}
.info-content::-webkit-scrollbar-thumb {
	border-radius: 4px;
	background-color: var(--orange);
}
.info-content-wrap {
	max-width: max(660px, 720rem);
}
.info-quote {
	margin: 0 0 max(20px, 40rem);
	max-width: max(340px, 370rem);
	font-family: var(--second-family);
	font-weight: 600;
	font-size: max(18px, 20rem);
	line-height: 100%;
	text-transform: uppercase;
}
.info-content h4 {
	margin: 0 0 max(20px, 67rem);
	color: var(--orange);
}
.info-content .info-name {
	margin: 0 0 max(20px, 20rem);
}
.info-content h6 {
	margin: 0 0 max(20px, 20rem);
	padding: max(20px, 20rem) 0 0;
	font-size: var(--text_2);
	line-height: 120%;
}
.info-content h6:first-child {
	padding-top: 0;
}
.info-content p {
	margin: 0 0 max(10px, 20rem);
}
.info-content p:last-child {
	margin: 0;
}

/************************* expert *************************/
.expert {
	position: relative;
	display: flex;
	justify-content: space-between;
	padding: max(40px, 120rem) 0;
}
.expert::before {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	content: '';
	width: max(300px, 740rem);
	height: max(300px, 740rem);
	border-radius: 100%;
	background-color: rgba(255, 255, 255, 0.4);
}
.expert-side {
	position: relative;
	width: calc(50% - 10px);
	padding-right: max(20px, 20rem);
	border-right: 1px dashed var(--black);
}
.subtitle {
	margin: 0 0 max(10px, 10rem);
}
.expert-side h3 {
	max-width: max(300px, 540rem);
	margin: 0 0 max(20px, 20rem);
}
.expert-text {
	max-width: max(520px, 570rem);
}
.expert-img {
	position: relative;
	width: calc(50% - 10px);
	height: max(192px, 506rem);
}
.expert-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/************************* team *************************/
.team {
	display: flex;
	justify-content: space-between;
}
.team-big {
	width: calc(50% - 10px);
	max-width: max(480px, 670rem);
}
.team-big h3 {
	margin: 0 0 max(32px, 52rem);
}
.team-big-img {
	height: max(192px, 465rem);
}
.team-big-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.team-side {
	width: calc(50% - 10px);
	border-top: 1px dashed var(--black);
}
.team-item {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	gap: max(20px, 47rem);
	padding: max(20px, 30rem) 0;
	border-bottom: 1px dashed var(--black);
}
.team-img {
	flex: 1;
	height: max(220px, 260rem);
	overflow: hidden;
}
.team-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s var(--ease);
}
.team-item:hover .team-img img {
	transform: scale(1.1);
}
.team-content {
	flex: 1;
}
.team-content h5 {
	margin: 0 0 max(20px, 20rem);
}
.team-text {
	margin: 0 0 max(22px, 30rem);
	font-size: max(18px, 18rem);
	line-height: 120%;
	display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    height: calc(4.8 * max(18px, 18rem));
}

/************************* management *************************/
.management-top {
	margin: 0 0 max(32px, 40rem);
	text-align: center;
}
.management-block {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: max(32px, 50rem) 0;
}
.management-item {
	width: calc(50% - 10px);
}
.management-img {
	height: max(192px, 524rem);
	margin: 0 0 max(20px, 20rem);
}
.management-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.management-text {
	max-width: max(700px, 700rem);
	font-size: max(18px, 18rem);
	line-height: 120%;
}

/************************* quality *************************/
.quality-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: max(20px, 20rem);
	margin: 0 0 max(32px, 64rem);
}
.quality-text {
	max-width: max(720px, 770rem);
}
.quality-block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: max(32px, 50rem) max(20px, 20rem);
	margin: 0 0 max(32px, 60rem);
}
.quality-block:last-child {
	margin: 0;
}
.quality-img {
	height: max(192px, 330rem);
	margin: 0 0 max(20px, 20rem);
}
.quality-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/************************* support *************************/
.support h2 {
	margin: 0 0 max(32px, 60rem);
	text-align: center;
}
.support-block {
	border-bottom: 1px dashed var(--black);
}
.support-item {
	display: flex;
	align-items: flex-start;
	padding: max(20px, 20rem) 0;
	gap: max(20px, 20rem);
	border-top: 1px dashed var(--black);
}
.support-num {
	flex: 1;
}
.support-title {
	width: 37%;
}
.support-title h4 {
	max-width: max(250px, 500rem);
}
.support-text {
	width: 37%;
}
.support-text-wrap {
	max-width: max(390px, 420rem);
}
.support-info {
	display: flex;
	gap: max(12px, 12rem);
	white-space: nowrap;
	margin: 0 0 max(12px, 12rem);
}
.support-info:last-child {
	margin: 0;
}
.support-info-link {
	margin: 2px 0 0;
	font-weight: 600;
	font-size: max(18px, 20rem);
	line-height: 120%;
	text-transform: uppercase;
	color: var(--black);
	text-decoration: none;
}
.support-info-link br {
	display: none;	
}
.support-info-link:hover {
	color: var(--orange);
}

/************************* exhibiyions *************************/
.exhibiyions-top {
	display: flex;
	margin: 0 0 max(32px, 60rem);
}
.exhibiyions-top h2 {
	width: calc(50% - 10px);
}
.exhibiyions-text {
	width: calc(50% - 10px);
}
.exhibiyions-text p {
	margin: 0 0 max(10px, 10rem);
}
.exhibiyions-slider {
	margin: 0 min(-16px, -50rem) max(40px, 50rem);
}
.exhibiyions-slide {
	padding: 0 max(10px, 10rem);
}
.exhibiyions-slide:not(.slick-center) .exhibiyions-item {
	cursor: pointer;
}
.exhibiyions-item {
	width: max(600px, 900rem);
}
.exhibiyions-img {
	overflow: hidden;
	height: max(192px, 506rem);
	margin: 0 0 max(12px, 20rem);
}
.exhibiyions-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.exhibiyions-slider .slick-arrow {
	background: var(--white);
}
.exhibiyions-slider .slick-arrow::after {
	opacity: 1;
}
.exhibiyions-slider .slick-prev {
	left: max(15px, 65rem);
}
.exhibiyions-slider .slick-next {
	right: max(15px, 65rem);
}
.exhibiyions-slider .slick-arrow:hover {
	background: var(--black);
}
.exhibiyions-slider .slick-arrow:hover::after {
	opacity: 0;
}
.exhibiyions-slider .slick-arrow:hover::before {
	opacity: 1;
}
.exhibiyions-slider .slick-arrow::before {
    position: absolute;
    inset: 0;
    content: '';
    background: url(../images/slider-arrow-hover.svg) 50% 50% no-repeat;
    background-size: max(8px, 8rem);
    opacity: 0;
    transition: all 0.4s;
}
.exhibiyions-slider .slick-prev::before {
	transform: scale(-1, 1);
}

/************************* awards *************************/
.awards-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: max(20px, 20rem);
	margin: 0 0 max(32px, 64rem);
}
.awards-top h2 {
	max-width: max(450px, 900rem);
}
.awards-text {
	max-width: max(720px, 770rem);
}
.awards-block {
	max-width: max(700px, 900rem);
	margin: 0 auto;
	border-bottom: 1px dashed var(--black);
}
.awards-item {
	display: flex;
	align-items: center;
	padding: max(20px, 20rem) 0;
	gap: max(20px, 20rem);
	border-top: 1px dashed var(--black);
}
.awards-icon img {
	width: max(32px, 64rem);
}
.awards-item h6 {
	flex: 1;
}
.awards-text {
	flex: 1;
}

/************************* global *************************/
.global h2 {
	margin: 0 0 max(32px, 60rem);
	text-align: center;
}
.global-block {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: max(50px, 32rem) max(20px, 20rem);
}
.global-item {
	width: calc(25% - max(15px, 15rem));
	color: var(--black);
	text-decoration: none;
}
.global-img {
	overflow: hidden;
	height: max(192px, 304rem);
	margin: 0 0 max(12px, 20rem);
}
.global-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s var(--ease);
}
.global-item:hover .global-img img {
	transform: scale(1.1);
}

/************************* res *************************/
.res .title-block {
    padding: 0;
    margin: 0 0 max(22px, 20rem);
    border-bottom: 0;
}
.res .title-line {
	align-items: center;
}
.tabs {
	position: relative;
	margin: 0 0 max(32px, 40rem);
}
.tabs-mob-link {
	display: none;
}
.tabs-wrap {
	display: flex;
	gap: max(16px, 30rem);
	padding: max(4px, 4rem);
	background: var(--orange);
	border-radius: 100px;
}
.tabs-item {
	position: relative;
	flex: 1;
}
.tabs-link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: max(4px, 4rem);
	height: max(48px, 52rem);
	padding: 0 max(10px, 10rem);
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--text_2);
	line-height: 120%;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--white);
	border-radius: 100px;
}
.tabs-link:hover,
.tabs-link.active {
	background: rgba(255, 255, 255, 0.4);
}
.res-block {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: max(32px, 40rem) max(20px, 20rem);
	padding: max(20px, 20rem) 0 0;
	border-top: 1px dashed var(--black);
}
.res-item {
	position: relative;
	color: var(--white);
}
.res-img {
	position: relative;
	overflow: hidden;
	height: max(374px, 480rem);
}
.res-photo {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s var(--ease);
}
.res-img::after {
	position: absolute;
	inset: 0;
	content: '';
	background: rgba(0, 0, 0, 0.5);
}
.res-item:hover .res-photo {
	transform: scale(1.1);
}
.res-content {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.4s var(--ease);
}
.res-hover {
	position: absolute;
	inset: 0;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.4s var(--ease);
	opacity: 0;
}
.res-buttons {
	display: flex;
	flex-direction: column;
	gap: max(15px, 15rem);
}
.res-buttons .button {
	width: max(200px, 230rem);
	padding: max(8px, 8rem) max(20px, 20rem);
}
.res-buttons .button-white {
	padding: max(9px, 9rem) max(20px, 20rem);
}
.res-item:hover .res-content {
	opacity: 0;
}
.res-item:hover .res-hover {
	opacity: 1;
}

/************************* application *************************/
.title-block {
	display: flex;
	flex-direction: column;
	gap: max(20px, 40rem);
	padding: 0 0 max(20px, 40rem);
	margin: 0 0 max(32px, 40rem);
	border-bottom: 1px dashed var(--black);
}
.title-line {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: max(20px, 20rem);
}
.title-num {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: var(--h2);
	line-height: 80%;
	text-transform: uppercase;
	color: var(--black-400);
}
.title-text {
	max-width: max(400px, 450rem);
}
.application-block {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: max(20px, 20rem);
	margin: 0 0 max(32px, 50rem);
}
.application-block:last-child {
	margin: 0;
}
.application-item {
	position: relative;
	overflow: hidden;
	height: max(192px, 506rem);
}
.application-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s var(--ease);
}
.application-item:hover img {
	transform: scale(1.1);
}
.application-item::after {
	position: absolute;
	inset: 0;
	content: '';
	background: var(--black-400);
}
.application-content {
	position: absolute;
	inset: 0;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: max(10px, 10rem);
	padding: max(20px, 20rem);
	text-align: center;
	color: var(--white);
}
.application-text {
	font-size: var(--subtitle);
	line-height: 120%;
}
.application-text-min {
	font-size: var(--caption_2);
	line-height: 120%;
	color: var(--beige);
}

/************************* case *************************/
.case .blog-block {
    padding-top: 0;
    border-top: 0;
}

/************************* case *************************/
.case-page .title-block {
    gap: max(32px, 80rem);
    padding: 0;
    margin: 0 0 max(32px, 80rem);
    border-bottom: 0;
}

/************************* faq *************************/
.faq h1 {
	margin: 0 0 max(32px, 42rem);
}
.faq-block {
	margin: 0 min(-16px, -50rem);
}
.faq-item {
	padding: 0 max(16px, 50rem);
	transition: all 0.4s;
}
.faq-wrap {
	max-width: max(860px, 936rem);
	margin: 0 auto;
	padding: max(20px, 30rem) 0;
	border-bottom: 1px dashed var(--black);
	transition: all 0.4s;
}
.faq-item:first-child .faq-wrap {
	border-top: 1px dashed var(--black);
}
.faq-top {
	position: relative;
	display: block;
	padding: 0 max(30px, 45rem) 0 0;
	color: var(--black);
	text-decoration: none;
	transition: all 0.4s;
}
.faq-top::before, .faq-top::after {
	position: absolute;
	top: 0;
	right: 0;
	content: '';
	width: max(24px, 37rem);
	height: max(24px, 37rem);
	transition: all 0.4s;
}
.faq-top::before {
	background: url(../images/plus.svg) 50% 50% no-repeat;
	background-size: max(24px, 37rem);
}
.faq-top::after {
	background: url(../images/minus.svg) 50% 50% no-repeat;
	background-size: max(24px, 37rem);
	opacity: 0;
}
.faq-top h4 {
	max-width: max(740px, 800rem);
}
.faq-hidden {
	display: none;
	padding: max(16px, 24rem) 0 0;
}
.faq-hidden.vis {
	display: block;
}
.faq-item.active {
	color: var(--white);
	background-color: var(--orange);
}
.faq-item.active .faq-wrap {
	border-color: transparent;
}
.faq-item.active .faq-top {
	color: var(--white);
}
.faq-item.active .faq-top::before {
	opacity: 0;
}
.faq-item.active .faq-top::after {
	opacity: 1;
}


/************************* blog *************************/
.blog h1 {
	margin: 0 0 max(20px, 40rem);
}
.blog-block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: max(32px, 50rem) max(20px, 20rem);
	padding: max(20px, 20rem) 0 max(32px, 92rem);
	border-top: 1px dashed var(--black);
}
.blog-block:last-child {
	padding-bottom: 0;
}
.blog-item {
	display: flex;
	flex-direction: column;
	padding: max(20px, 20rem);
	color: var(--black);
	text-decoration: none;
	background: var(--white);
}
.blog-img {
	position: relative;
	overflow: hidden;
	height: max(240px, 370rem);
	margin: 0 0 max(20px, 20rem);
}
.blog-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s var(--ease);
}
.blog-item:hover .blog-img img {
	transform: scale(1.1);
}
.blog-tags {
	position: absolute;
	top: max(16px, 16rem);
	left: max(16px, 16rem);
	right: max(16px, 16rem);
	display: flex;
	flex-wrap: wrap;
	gap: max(10px, 16rem);
}
.blog-tag {
	padding: max(7px, 9rem) max(24px, 30rem);
	font-weight: 500;
	font-size: var(--text_3);
	line-height: 120%;
	text-transform: capitalize;
	background: var(--white);
	border-radius: 30px;
}
.blog-date {
	margin: 0 0 max(10px, 16rem);
	font-size: var(--caption_2);
	line-height: 120%;
}
.blog-item h5 {
	margin: 0 0 max(16px, 16rem);
	max-width: max(320px, 500rem);
}
.blog-text {
	margin: 0 0 max(20px, 20rem);
	max-width: max(390px, 460rem);
	font-size: var(--text_3);
	line-height: 120%;
}
.blog-item .more {
	margin: auto auto 0 0;
}
.more {
	position: relative;
	padding: max(2px, 2rem) 0;
	font-family: var(--second-family);
	font-weight: 500;
	font-size: var(--link);
	line-height: 120%;
	color: var(--black);
	text-decoration: none;
	transition: all 0.4s;
}
.more::before, .more::after {
	position: absolute;
	top: 50%;
	margin-top: min(-12px, -12rem);
	right: min(-24px, -24rem);
	content: '';
	width: max(24px, 24rem);
	height: max(24px, 24rem);
	transition: all 0.4s;
}
.more::before {
	background: url(../images/arrow-more.svg) 50% 50% no-repeat;
	background-size: contain;
}
.more::after {
	background: url(../images/arrow-more-orange.svg) 50% 50% no-repeat;
	background-size: contain;
	opacity: 0;
}
.more:hover {color: var(--orange);}
.more:hover::before {opacity: 0;}
.more:hover::after {opacity: 1;}
.blog-item:hover .more {color: var(--orange);}
.blog-item:hover .more::before {opacity: 0;}
.blog-item:hover .more::after {opacity: 1;}

/************************* pagination *************************/
.pagination {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: max(32px, 50rem);
}
.pagination .button {
	display: none;
}
.pagination-block {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: max(30px, 30rem);
}
.pagination-list {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: max(20px, 20rem);
}
.pagination-link {
	font-size: var(18px, 18rem);
	line-height: 120%;
	color: var(--black-400);
	text-decoration: none;
}
.pagination-link:hover {
	color: var(--black);
}
.pagination-link.active {
	color: var(--black);
}
.pagination-arrow {
	width: max(23px, 23rem);
	height: max(23px, 23rem);
	background: url(../images/pag-arrow.svg) 50% 50% no-repeat;
	background-size: contain;
}
.pagination-prev {
	transform: scale(-1, 1);
}

/************************* news *************************/
.news h1 {
	margin: 0 0 max(32px, 42rem);
}
.tags {
	margin: 0 0 max(32px, 42rem);
}
.tags-desk {
	display: flex;
	flex-wrap: wrap;
	gap: max(20px, 20rem);
}
.tags-mob {
	display: none;
	position: relative;
}
.tags-desk .button {
    width: auto;
	max-width: none;
	min-width: max(190px, 212rem);
    padding: max(6px, 8rem) max(20px, 20rem);
	color: var(--orange);
	background: var(--orange);
}
.tags-desk .button::before {
	background: var(--beige);
}
.tags-desk .button:hover,
.tags-desk .button.active {
	color: var(--beige);
}
.tags-desk .button.active::before {
    height: 0%;
}
.tags-desk .button.active .text {
    transform: translateY(-100%)
}
.tags-desk .button.active .text-clone {
    transform: translateY(0)
}

/************************* article *************************/
.article {
	margin-top: min(-10px, -40rem);
}
.article h1 {
	margin: 0 0 max(32px, 40rem);
}
.article-banner {
	position: relative;
	margin: 0 0 max(80px, 200rem);
}
.article-banner-wrap {
	overflow: hidden;
	height: max(192px, 745rem);
}
.article-banner-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.article-banner-wrap .video-cover::after {
	background-color: var(--black-400);
}
.article-banner-info {
	position: absolute;
	left: max(24px, 50rem);
	right: max(24px, 50rem);
	bottom: max(24px, 96rem);
	display: flex;
	align-items: center;
	justify-content: space-between;
	color: var(--white);
}
.article-banner-date {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: max(18px, 18rem);
	line-height: 100%;
	text-transform: uppercase;
}
.article-banner .share-webs .footer-web path {
	fill: var(--white);
}
.article-banner .share-webs .footer-web circle {
	stroke: var(--white);
}
.article-banner .share-webs .footer-web:hover path {
	fill: var(--orange);
}
.article-banner .share-webs .footer-web:hover circle {
	stroke: var(--orange);
}
.article-block {
	display: flex;
	gap: max(40px, 160rem);
	margin: 0 0 max(80px, 200rem);
}
.article-side {
	width: max(400px, 530rem);
	min-width: max(400px, 530rem);
}
.article-side-wrap {
	position: sticky;
	top: max(40px, 60rem);
	left: 0;
}
.article-date {
	display: flex;
	flex-wrap: wrap;
	gap: max(8px, 8rem);
	font-family: var(--second-family);
	font-weight: 600;
	font-size: max(18px, 18rem);
	line-height: 100%;
	text-transform: uppercase;
	color: var(--black-400);
}
.article-date-item {
	display: flex;
	align-items: center;
	gap: max(8px, 8rem);
}
.article-date-item::after {
	width: max(6px, 6rem);
	height: max(6px, 6rem);
	content: '';
	background: var(--black-400);
}
.article-date-item:last-child::after {display: none;}
.share {
	display: flex;
	align-items: center;
	gap: max(15px, 15rem);
}
.share-text {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: max(18px, 18rem);
	line-height: 100%;
	text-transform: uppercase;
}
.share-webs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: max(10px, 10rem);
}
.share-webs .footer-web path {
	fill: var(--black);
}
.share-webs .footer-web circle {
	stroke: var(--black);
}
.share-webs .footer-web:hover path {
	fill: var(--orange);
}
.share-webs .footer-web:hover circle {
	stroke: var(--orange);
}
.article-info {
	display: flex;
	flex-direction: column;
	gap: max(20px, 20rem);
	margin: 0 0 max(32px, 80rem);
}
.article-links {
	padding: 0 0 max(20px, 40rem);
	background: var(--white);
}
.article-links h5 {
	padding: max(20px, 30rem) max(20px, 30rem) max(20px, 40rem);
}
.article-links-item {
	padding: max(20px, 20rem) max(20px, 30rem);
	border-top: 1px dashed var(--black-200);
}
.article-link {
	color: var(--black);
	text-decoration: none;
}
.article-link:hover {
	color: var(--orange);
}
.article-content {
	flex: 1;
}
.article-content h4 {
	max-width: max(440px, 890rem);
	margin: 0 0 max(20px, 60rem);
	padding-top: max(20px, 60rem);
}
.article-content h5 {
	margin: 0 0 max(16px, 16rem);
	padding-top: max(4px, 8rem);
}
.article-content h4:first-child,
.article-content h5:first-child {
	padding-top: 0;
}
.article-content ul {
	margin: 0 0 max(20px, 20rem);
	padding: 0 0 0 max(30px, 35rem);
}
.article-content ul li {
	list-style-type: disc;
}
.article-content ol {
	margin: 0 0 max(20px, 20rem);
	padding: 0 0 0 max(30px, 35rem);
}
.article-content ul:last-child,
.article-content ol:last-child {
	margin: 0;
}


.article-tags {
	display: flex;
	flex-wrap: wrap;
	gap: max(16px, 20rem);
	padding: max(20px, 60rem) 0 0;
}
.article-tags .button {
    width: auto;
	max-width: none;
    padding: max(6px, 8rem) max(24px, 30rem);
	color: var(--orange);
	background: var(--orange);
}
.article-tags .button::before {
	background: var(--beige);
}
.article-tags .button:hover {
	color: var(--beige);
}

/************************* article-box *************************/
.article-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 max(40px, 40rem);
}
.article-box:last-child {
	margin: 0;
}
.article-box-reverse {
	flex-direction: row-reverse;
}
.article-box-img {
	position: relative;
	overflow: hidden;
	width: calc(50% - 10px);
	height: max(380px, 506rem);
}
.article-box-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.article-box-content {
	width: calc(50% - 10px);
	display: flex;
	flex-direction: column;
}
.article-box-wrap {
	max-width: max(440px, 540rem);
	margin: 0 auto;
}
.article-box-wrap h5 {
	margin: 0 0 max(20px, 20rem);
}
.article-box-reverse .article-box-wrap {
	margin: 0;
}

/************************* article-gallery *************************/
.article-gallery {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: max(32px, 40rem) max(20px, 20rem);
}
.article-gallery-item {
	display: flex;
	flex-direction: column;
	gap: max(12px, 20rem);
}
.article-gallery-img {
	position: relative;
	overflow: hidden;
	height: max(192px, 500rem);
}
.article-gallery-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.video-iframe {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.video-cover {
	position: relative;
	display: block;
	height: 100%;
}
.video-cover::after {
	position: absolute;
	inset: 0;
	content: '';
	background: var(--black-200) url(../images/play.svg) 50% 50% no-repeat;
	background-size: max(40px, 108rem);
}
.video-cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s var(--ease);
}
.video-cover:hover img {
	transform: scale(1.1);
}

/************************* blog-more *************************/
.blog-more h2 {
	margin: 0 0 max(32px, 75rem);
	text-align: center;
}
.blog-slider {
	margin: 0 min(-16px, -50rem) max(50px, 57rem) 0;
}
.blog-slide {
	padding: 0 max(20px, 20rem) 0 0;
}
.blog-slide .blog-item {
	width: max(400px, 593rem);
}
.slick-dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: min(-50px, -57rem);
	display: flex;
	justify-content: center;
	gap: max(20px, 20rem);
}
.slick-dots button {
	display: block;
	width: max(10px, 10rem);
	height: max(10px, 10rem);
	font-size: 0;
	cursor: pointer;
	background: var(--black-200);
	border-radius: 50%;
	transition: all 0.25s;
}
.slick-dots .slick-active button {
	background: var(--black);
}
.slick-dots button:hover {
	background: var(--black);
}
.slick-arrow {
	position: absolute;
	z-index: 10;
	top: 50%;
	margin-top: min(-30px, -30rem);
	width: max(60px, 60rem);
	height: max(60px, 60rem);
	font-size: 0;
	cursor: pointer;
	background: var(--white-600);
	border-radius: 50%;
	backdrop-filter: blur(30px);
	transition: all 0.4s;
}
.slick-arrow::after {
	position: absolute;
	inset: 0;
	content: '';
	background: url(../images/slider-arrow.svg) 50% 50% no-repeat;
	background-size: max(8px, 8rem);
	opacity: 0.6;
	transition: all 0.4s;
}
.slick-arrow:hover::after {
	opacity: 1;
}
.slick-prev::after {
	transform: scale(-1, 1);
}
.slick-prev {
	left: max(15px, 15rem);
}
.slick-next {
	right: max(15px, 15rem);
}
.blog-slider .slick-next {
	right: calc(max(15px, 15rem) + max(16px, 50rem));
}


/************************* contact *************************/
.contact-top {
	margin: 0 0 max(80px, 160rem);
}
.contact-top h1 {
	margin: 0 0 max(26px, 50rem);
}
.contact-banner {
	height: max(192px, 595rem);
}
.contact-banner img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.contact-form {
	position: relative;
	max-width: max(640px, 900rem);
	margin: 0 auto;
}
.contact-form h3,
.contact-form h5 {
	margin: 0 0 max(20px, 20rem);
	text-align: center;
}
.contact-text {
	max-width: max(530px, 630rem);
	margin: 0 auto max(37px, 40rem);
	text-align: center;
	color: var(--black-600);
}
.form-result {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.form-sent .form-main {
	opacity: 0;
	pointer-events: none;
}
.form-sent .form-result {
	display: block;
}
.contact-info {
	display: flex;
}
.contact-info-col {
	width: 40%;
}
.contact-info-block {
	display: flex;
	flex-wrap: wrap;
	gap: max(24px, 40rem) 0;
	margin: 0 0 max(40px, 124rem);
}
.contact-info-item {
	width: calc(100% - max(220px, 270rem));
}
.contact-info-item:nth-child(2n + 1){
	width: max(220px, 270rem);
	min-width: max(220px, 270rem);
}
.contact-info-item h5 {
	margin: 0 0 max(16px, 20rem);
}
.contact-info-text {
	font-size: var(--text_3);
	line-height: 120%;
}
.contact-info-text a {
	position: relative;
	color: var(--black);
	text-decoration: none;
}
.contact-info-text a::before {
    content: '';
    position: absolute;
    bottom: 0px;
    width: 100%;
    height: 1px;
    transform: scale3d(0, 1, 1);
    transform-origin: 100% 50%;
    transition: transform 0.5s;
    transition-timing-function: cubic-bezier(0.2, 1, 0.3, 1);
    background: var(--black);
}
.contact-info-text a:hover::before {
	transform: scale3d(1, 1, 1);
	transform-origin: 0% 50%;
	transition-timing-function: ease-out;
}
.contact-qr {
	padding: max(40px, 84rem) 0 0;
	margin: 0 40px 0 0;
	border-top: 1px dashed var(--black);
}
.contact-map {
	width: 60%;
}
.contact-map img {
	width: 100%;
}

/************************* policy *************************/
.policy h1 {
	padding: 0 0 max(32px, 40rem);
	margin: 0 0 max(20px, 60rem);
	border-bottom: 1px dashed var(--black);
}
.policy-block {
	max-width: max(740px, 882rem);
	margin: 0 auto;
}
.policy h4 {
	margin: 0 0 max(20px, 40rem);
}
.policy h5 {
	margin: 0 0 max(20px, 20rem);
	padding-top: max(30px, 30rem);
}
.policy h4:first-child,
.policy h5:first-child {
	padding-top: 0;
}
.policy p {
	margin: 0;
}
.policy ul {
	margin: 0;
	padding: 0 0 0 max(30px, 35rem);
}
.policy ul li {
	list-style-type: disc;
}
.policy ol {
	margin: 0;
	padding: 0 0 0 max(30px, 35rem);
}

/************************* never *************************/
.never {
	position: relative;
	background: var(--black);
	--height: max(380px, 550rem);
	--bounce: max(30px, 60rem);
	--bounce2: max(15px, 30rem);
}
.never::before {
	position: absolute;
	inset: 0;
	content: '';
	background: var(--beige);
	border-radius: 0 0 max(1000px, 1000rem) max(1000px, 1000rem);
}
.never::after {
	position: absolute;
	left: 50%;
	bottom: 0;
	margin-left: -1px;
	height: max(150px, 510rem);
	content: '';
	border-left: 1px dashed var(--black);
}
.never-wrap {
	position: relative;
	height: max(580px, 1050rem);
}
.never .h1 {
	max-width: max(420px, 1500rem);
	margin: 0 auto;
	text-align: center;
}
.never-img {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateY(0);
}
.ani_start2 .never-img {
	animation: fall var(--dur) var(--delay) cubic-bezier(0.22, 0, 0.58, 1) forwards;
}
@keyframes fall {
	0% {
		transform: translateY(0vh);
	}
	30%, 50%, 80%, 100% {
		transform: translateY(calc(var(--height) + var(--add)));
	}
	40% {
		transform: translateY(calc(var(--height) - var(--bounce) + var(--add)));
	}
	60% {
		transform: translateY(calc(var(--height) - var(--bounce2) + var(--add)));
	}
}
.never-1 {
	top: min(-2px, -10rem);
	width: max(90px, 445rem);
	margin-left: min(-150px, -890rem);
	--dur:2.1s;  --delay:0.15s; --add:max(60px, 140rem);
}
.never-2 {
	top: 0;
	width: max(93px, 463rem);
	margin-left: min(-80px, -480rem);
	--dur:1.9s;  --delay:0.0s; --add:max(40px, 70rem);
}
.never-3 {
	top: max(95px, 330rem);
	width: max(68px, 336rem);
	margin-left: min(-57px, -400rem);
	--dur:1.75s; --delay:0.3s; --add:0px;
}
.never-4 {
	top: max(50px, 104rem);
	width: max(34px, 165rem);
	margin-left: min(-12px, -87rem);
	--dur:2.3s;  --delay:0.05s; --add:max(30px, 50rem);
}
.never-5 {
	top: max(47px, 91rem);
	width: max(104px, 516rem);
	margin-left: min(-12px, -87rem);
	--dur:1.85s; --delay:0.25s; --add:0px;
}
.never-6 {
	top: max(65px, 125rem);
	width: max(96px, 478rem);
	margin-left: max(50px, 215rem);
	--dur:1.95s; --delay:0.2s; --add:0px;
}
.never-7 {
	top: max(10px, 10rem);
	width: max(34px, 167rem);
	margin-left: max(100px, 472rem);
	--dur:2.0s;  --delay:0.35s; --add:max(50px, 90rem);
}
.never-8 {
	top: 0;
	width: max(30px, 148rem);
	margin-left: max(140px, 682rem);
	--dur:1.8s;  --delay:0.1s; --add:max(70px, 140rem);
}

/************************* 404 *************************/
.page404 {
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: max(120px, 200rem) 0;
}
.page404-img {
	position: absolute;
	width: 50px;
}
.page404-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}
.page404-num {
	position: relative;
	margin: 0 0 max(36px, 77rem);
}
.page404-num-img {
	width: max(238px, 684rem);
}
.page404-block h2 {
	max-width: max(450px, 900rem);
	margin: 0 0 max(72px, 32rem);
	font-size: max(50px, 100rem);
    line-height: 80%;
}
.page404-button {
	position: relative;
}
.page404-block .button {
	width: max(320px, 440rem);
}
.page404-1 {
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: max(110px, 316rem);
	margin-left: max(3px, 7rem);
}
.page404-2 {
	top: min(-16px, -45rem);
	left: max(53px, 153rem);
	width: max(28px, 83rem);
}
.page404-3 {
	right: min(-32px, -145rem);
	top: max(10px, 31rem);
	width: max(65px, 189rem);
}
.page404-4 {
	top: min(-10px, -30rem);
	left: min(-48px, -95rem);
	width: max(47px, 94rem);
}
.page404-5 {
	top: max(22px, 79rem);
	left: min(-11px, -184rem);
	width: max(66px, 465rem);
}
.page404-6 {
	right: max(8px, 18rem);
	bottom: min(-20px, -143rem);
	width: max(64px, 453rem);
}

/************************* footer *************************/
.footer {
	color: var(--beige);
	background: var(--black);
}
.footer-form {
	position: relative;
	padding: max(60px, 200rem) 0 max(80px, 160rem);
	background: url(../images/footer-form.svg) 50% 70% no-repeat;
}
.footer-form::before {
	position: absolute;
	top: 0;
	right: 50%;
	bottom: 0;
	content: '';
	border-left: 1px dashed rgba(245, 241, 238, 0.4);
}
.footer-form .contact-form {
	position: relative;
}
.footer-form h3 {
	color: var(--white);
}
.footer-form .contact-text {
    max-width: max(730px, 830rem);
    margin: 0 auto max(32px, 40rem);
    color: var(--white);
}
.footer-form .form-main {
	background: var(--black);
}
.footer-main {
	padding: 0 0 max(30px, 30rem);
}
.footer-block {
	display: flex;
}
.footer-col {
	width: 50%;
	padding: max(50px, 60rem) 0;
	display: flex;
	justify-content: space-between;
}
.footer-col:first-child {
	padding-right: max(20px, 20rem);
	border-right: 1px dashed rgba(245, 241, 238, 0.4);
}
.footer-col:last-child {
	padding-left: max(20px, 20rem);
}
.footer-col h6 {
	margin: 0 0 max(18px, 18rem);
}
.footer-list {
	display: flex;
	flex-direction: column;
	gap: max(4px, 4rem);
}
.footer-list li {
	padding: max(2px, 2rem) 0;
	font-size: var(--text_2);
	line-height: 120%;
}
.footer-list a {
	color: var(--beige);
	text-decoration: none;
}
.footer-list a:hover {
	color: var(--orange);
}
.footer-info {
	max-width: max(240px, 270rem);
}
.footer-info .footer-list {
	margin: 0 0 max(4px, 4rem);
}
.footer-text {
	font-size: var(--caption_2);
	line-height: 120%;
	opacity: 0.6;
}
.footer-webs {
	display: flex;
	flex-wrap: wrap;
	gap: max(15px, 15rem);
	padding: max(40px, 50rem) 0 0;
}
.footer-web {
	text-decoration: none;
}
.footer-web svg {
	width: max(34px, 34rem);
	height: max(34px, 34rem);
}
.footer-web path {
	fill: var(--white);
	transition: all 0.4s;
}
.footer-web circle {
	stroke: var(--white);
	transition: all 0.4s;
}
.footer-web:hover path {
	fill: var(--orange);
}
.footer-web:hover circle {
	stroke: var(--orange);
}
.footer-sign-text {
    max-width: max(230px, 260rem);
	margin: 0 0 max(20px, 20rem);
	font-size: var(--caption_2);
    line-height: 120%;
    opacity: 0.5;
}
.sign-line {
	position: relative;
	display: flex;
	gap: max(32px, 32rem) max(10px, 10rem);
	width: max(330px, 404rem);
	margin: 0 0 max(20px, 20rem);
}
.sign-line .wpcf7-form-control-wrap {
	flex: 1;
}
.sign-line .wpcf7-form-control-wrap input {
    height: max(35px, 38rem);
    padding: 0;
    margin: 0;
    font-size: var(--text_3);
    color: var(--beige);
    background: var(--black);
	border: 0;
    border-bottom: 1px solid var(--white);
    border-radius: 0;
}
.sign-line ::-webkit-input-placeholder {color: var(--beige-500);}
.sign-line :-moz-placeholder {color: var(--beige-500); opacity: 1;}
.sign-line ::-moz-placeholder {color: var(--beige-500); opacity: 1;}
.sign-line :-ms-input-placeholder {color: var(--beige-500);}
.sign-line .button {
    width: auto;
	min-width: max(112px, 128rem);
	padding: max(7px, 9rem) max(10px, 10rem);
	color: var(--black);
	background: var(--orange);
    border: 0;
}
.sign-line .button::before {
	background: var(--white);
}
.sign-line .button:hover {
	color: var(--white);
}
.footer-sign .check-label {
	min-height: max(24px, 24rem);
	padding: 0 0 0 max(31px, 31rem);
	font-size: var(--caption_2);
	line-height: max(24px, 24rem);
}
.footer-sign .check-label::before {
	width: max(24px, 24rem);
	height: max(24px, 24rem);
	background: url(../images/checkbox-2.svg) 50% 50% no-repeat;
	background-size: contain;
}
.footer-sign .check-input:checked + .check-label::before {
	background: url(../images/checkbox-2-active.svg) 50% 50% no-repeat;
	background-size: contain;
}
.footer-bottom {
	padding: max(20px, 20rem) 0 0;
	border-top: 1px dashed rgba(245, 241, 238, 0.4);
	border-bottom: 1px dashed rgba(245, 241, 238, 0.4);
}
.footer-name {
	padding: 0 0 max(20px, 20rem);
}
.footer-line {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: max(20px, 20rem);
	font-size: var(--caption_2);
	line-height: 120%;
}
.footer-link {
	color: var(--beige);
	text-decoration: none;
}
.footer-link:hover {
	color: var(--orange);
}

.footer-studio {
	color: var(--white-500);
}
.footer-studio img {
	display: inline-block;
	vertical-align: top;
	width: max(21px, 21rem);
	margin: 0 1px;
}
.footer-studio a {
	color: var(--beige);
	text-decoration: none;
}
.footer-studio a:hover {
	color: var(--orange);
}

/************************* animations *************************/
/*
.reveal {
	width: 100%;
	opacity: 0;
}
.reveal.ani_start {opacity: 1;}
.reveal-box {
	display: flex;
	flex-direction: column;
}
.text-wrap {
	overflow: hidden;
}
.text-inner {
	transition: transform 0.6s ease-in-out;
	transform: translateY(calc(100% + 20px));
}
.ani_start .text-inner {
	transform: translateY(0%);
}
*/

/************************* media *************************/
@media screen and (max-width: 1480px) {
	.footer-col:first-child {
		width: 37%;
	}
	.footer-col:last-child {
		width: 63%;
	}
	.prod-tabs .tabs-link {
		max-width: max(180px, 300rem);
	}
}
@media screen and (max-width: 1300px) {
	.sign-line {
		width: max(290px, 404rem);
	}
	.footer-col:first-child {
		width: 34%;
	}
	.footer-col:last-child {
		width: 66%;
	}
	.res-block {
		grid-template-columns: repeat(3, 1fr);
	}
	.overview {
		position: relative;
		padding: max(60px, 160rem) max(16px, 50rem) max(60px, 144rem);
		margin: 0 min(-16px, -50rem);
		background: var(--black) url(../images/overview-bg.svg) 50% 50% no-repeat;
		background-size: cover;
	}
	.overview-block {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: max(32px, 32px) max(20px, 20rem);
		align-items: stretch;
	}
	.overview-block .overview-item {
		margin: 0;
	}
	.overview-item {
		width: auto;
		min-height: 1px;
	}
	.overview h2 {
		position: static;
		transform: none;
		margin: 0 0 max(32px, 60rem);
	}
	.overview h2 br {
		display: none;
	}
	.overview-item .more {
		margin: 0 auto 14px 0;
	}
	.support-info {
		flex-direction: column;
	}
	.catalog-list {
		grid-template-columns: repeat(2, 1fr);
	}

}
@media screen and (max-width: 1200px) {
	.article-block {
		gap: max(40px, 100rem);
	}
	.article-side {
		width: max(360px, 530rem);
		min-width: max(360px, 530rem);
	}
	.prod-page .tabs-wrap {
		gap: 3px;
	}
	.prod-page .tabs-link {
		padding: 0 max(10px, 32rem);
	}
	.about-stat {
		grid-template-columns: repeat(4, 1fr);
	}

}
@media screen and (max-width: 1024px) {
	#wrapper {
		padding-top: 59px;
	}
	.header {
		border-top: 0;
	}
	.header-block {
		height: 48px;
	}
	body.lock {overflow: hidden;}
	.mob-nav-icon {display: block;}
	.header-nav {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 540;
		overflow: hidden;
		box-sizing: border-box;
		box-shadow: none;
		display: block;
		height: 0;
		background: var(--beige);
		transition: all 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	.header-nav.vis {
		height: 100dvh;
	}
	.header-nav-wrap {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 100dvh;
		padding: 48px max(16px, 50rem) 160px;
		flex-direction: column;
		justify-content: flex-start;
		align-items: stretch;
	}
	.header-nav-list {
		overflow-y: auto;
		flex-direction: column;
		gap: 20px;
		padding: 16px 0 0;
		height: 100%;
	}
	.header-nav-list > li > a {
		position: relative;
		font-weight: 600;
		font-size: 22px;
		line-height: 90%;
		letter-spacing: 0.09em;
		text-transform: uppercase;
	}
	.sub {
		position: static;
		padding: 0;
		background: none;
	}
	.sub::before {
		display: none;
	}
	.sub-wrap {
		height: auto;
		overflow-y: unset;
		padding: 20px 0 0;
	}
	.sub-item {
		margin: 0 0 20px;
	}
	.sub-list {
		flex-direction: column;
	}
	.header-search {
		top: 0;
		z-index: 2000;
		padding: 72px max(16px, 50rem) 24px;
	}
	.hs-close {
		position: absolute;
		top: 12px;
		right: 16px;
		display: block;
	}
	.header-line {
		position: static;
		height: 48px;
		display: flex;
		align-items: center;
		gap: max(24px, 24rem);
		border-top: 1px dashed var(--black);
		border-bottom: 1px dashed var(--black);
	}
	.header-line .header-contacts {
		display: none;
	}
	.header-langs {
		margin: 0 auto 0 0;
	}
	.header-bottom {
		top: auto;
		left: 0;
		right: 0;
		bottom: 0;
		padding: 16px;
		background: var(--beige);
	}
	.header-bottom .header-contacts {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
		padding: 0 0 16px;
	}
	.footer-main {
		padding: 0 0 43px;
	}
	.footer-block {
		flex-direction: column;
		padding: 42px 0 40px;
		gap: 57px;
	}
	.footer-col {
		padding: 0;
	}
	.footer-col:first-child {
		width: auto;
		padding-right: 0;
    	border-right: 0;
	}
	.footer-col:last-child {
		width: auto;
		padding-left: 0;
	}
	.sign-line {
        width: max(360px, 404rem);
    }
	.footer-line {
		flex-direction: column;
		gap: max(20px, 20rem);
		padding: max(20px, 20rem) 0 0;
	}
	.footer-bottom {
		border-bottom: 0;
	}
	.footer-name {
		border-bottom: 1px dashed rgba(245, 241, 238, 0.4);
	}
	.footer-form {
		background: none;
	}
	.footer-form::before {
		display: none;
	}
	.blog-block {
		grid-template-columns: repeat(2, 1fr);
	}
	.contact-info-block {
		flex-direction: column;
	}
	.contact-info-item {
		width: auto;
	}
	.contact-info-item:nth-child(2n + 1){
		width: auto;
		min-width: 1px;
	}
	.article {
		margin-top: 0;
	}
	.article-block {
		display: block;
	}
	.article-side {
        width: auto;
        min-width: 1px;
		margin: 0 0 80px;
    }
	.res-block {
		grid-template-columns: repeat(2, 1fr);
	}
	.res-hover {
		opacity: 1;
	}
	.res-content {
		position: static;
		display: block;
		padding: 16px 0 0;
		color: var(--black);
	}
	.tabs-mob-link {
		display: inline-flex;
		align-items: center;
		gap: 2px;
		padding: 6px 32px;
		font-family: var(--second-family);
		font-weight: 600;
		font-size: 18px;
		line-height: 120%;
		text-transform: uppercase;
		text-decoration: none;
		color: var(--white);
		background: var(--orange);
		border-radius: 100px;
	}
	.tabs-mob-link::after {
		width: 24px;
		height: 24px;
		content: '';
		background: url(../images/arrow-down.svg) 50% 50% no-repeat;
		background-size: contain;
		transition: all 0.3s linear;
	}
	.tabs-mob-link.active::after {
		transform: rotate(180deg);
	}
	.tabs-block {
		position: absolute;
		top: 100%;
		left: 0;
		z-index: 50;
		display: none;
		min-width: 180px;
	}
	.tabs-wrap {
		flex-direction: column;
		gap: 0;
		padding: 12px;
		border-radius: 10px;
	}
	.tabs-link {
		flex: 1;
		height: auto;
		padding: 18px 0;
		text-align: left;
		text-transform: uppercase;
		text-decoration: none;
		color: var(--white);
		border-radius: 0;
	}
	.tabs-link:hover,
	.tabs-link.active {
		background: none;
	}
	.res .title-block {
		padding: 0 0 max(20px, 40rem);
		margin: 0 0 max(20px, 40rem);
		border-bottom: 1px dashed var(--black);
	}
	.res-block {
		padding: 0;
		border-top: 0;
	}
	.project-block {
		flex-direction: column;
		gap: max(32px, 60rem);
	}
	.project-side {
 	   width: 100%;
	}
	.project-content {
		width: 100%;
	}
	.project-photo {
		max-width: none;
	}
	.project-photo .project-photo-slide {
		height: auto;
		aspect-ratio: 16/9;
	}
	.safety-block {
		grid-template-columns: repeat(3, 1fr);
	}
	.catalog-more .catalog-list {
		grid-template-columns: repeat(2, 1fr);
	}
	.safety {
		flex-direction: column;
		gap: 32px;
	}
	.safety-side {
		width: auto;
	}
	.safety-side h2 {
		max-width: max(220px, 1000rem);
	}
	.safety-side-block {
		max-width: none;
	}
	.safety-img {
		width: auto;
		height: max(280px, 1000rem);
		min-height: 1px;
	}
	.prod-page-top {
		flex-direction: column;
	}
	.prod-box-wrap,
	.prod-box-reverse .prod-box-wrap {
		flex-direction: column;
		gap: max(20px, 60rem);
	}
	.prod-box-col,
	.prod-box-col:first-child,
	.prod-box-reverse .prod-box-col,
	.prod-box-reverse .prod-box-col:first-child {
		width: auto;
	}	
	.prod-box-reverse .prod-box-text {
		max-width: none;
	}
	.prod-box-center .prod-box-wrap {
		align-items: stretch;
	}
	.prod-box-img {
		height: max(170px, 800rem);
	}
	.prod-box-text h4 {
		display: none;
	}
	.prod-box-col:first-child h4 {
		display: block;
		margin: 0 0 32px;
	}
	.prod-box-top {
		align-items: flex-start;
		padding: 0;
	}
	.prod-box-top h4 {
		max-width: none;
		text-align: left;
	}
	.prod-page .tabs-wrap {
		gap: 0;
	}
	.prod-page .tabs-link {
        padding: 18px 0;
    }
	.prod-block {
		grid-template-columns: repeat(2, 1fr);
	}
	.prod-item {
		height: max(192px, 500rem);
	}
	.prod-tabs .tabs-link {
		max-width: none;
	}
	.prod-tabs .tabs-link {
		padding: 18px 0;
	}
	.prod-tabs .tabs-item {
		margin: 0;
	}
	.tabs-sub {
		position: relative;
		top: auto;
		left: auto;
		padding: 0;
		background: none;
		border-radius: 0;
	}
	.tabs-sub-list {
		max-height: unset;
		padding-right: 0;
	}
	.prod-tabs .tabs-link {
		padding: 18px 0;
		font-size: var(--text_2);
    	line-height: 120%;
	}
	.tabs-sub-item {
		padding: 10px max(12px, 12rem);
		font-size: 16px;
	}
	.prod-top {
		flex-direction: column;
	}
	.hero-wrap {
		margin: 0;
	}
	.hero-bg {
		height: max(210px, 1080rem);
		margin: 0 min(-16px, -50rem) max(4px, 20rem);
	}
	.hero-list {
		position: relative;
		left: auto;
		bottom: auto;
		max-width: none;
		border-top: 0;
	}
	.hero-list-item {
		color: var(--black);
		border-bottom: 1px dashed var(--black);
	}
	.main-about {
		flex-direction: column;
	}
	.main-about-col {
		width: auto;
	}
	.main-about-content {
		max-width: max(370px, 900rem);
	}
	.overview-block {
        grid-template-columns: repeat(2, 1fr);
    }
	.study-content,
	.study-img {
		width: 44%;
	}
	.info h2 {
		text-align: left;
	}
	.info-block {
		flex-direction: column;
		gap: max(32px, 60rem);
	}
	.info-img {
		width: auto;
		height: max(192px, 850rem);
	}
	.info-content {
		width: auto;
		height: auto;
		padding: 0;
		border: 0;
	}
	.info-content-wrap {
		max-width: none;
	}
	.info-quote {
		max-width: none;
	}
	.info-content h4 {
		margin: 0 0 max(20px, 40rem);
	}
	.info-content h6 {
		padding: 22px 0 0;
	}
	.cert-video {
		padding: max(60px, 154rem) max(16px, 50rem) max(60px, 68rem);
	}
	.lab-block {
		display: block;
	}
	.lab-side {
		width: auto;
		padding: 0 0 max(32px, 32rem);
	}
	.lab h2 {
		margin: 0 0 max(32px, 60rem);
		text-align: left;
	}
	.lab-photo {
		width: auto;
	}
	.lab-photo-block {
		display: none;
	}
	.lab-line-block {
		display: block;
	}
	.lab-text {
		max-width: none;
	}
	.lab-slider {
		margin: 0 min(-16px, -50rem) 0 0;
	}
	.lab-slide {
		width: max(304px, 440rem);
		padding: 0 max(10px, 20rem) 0 0;
	}
	.lab-slide .cert-img {
		height: max(455px, 506rem);
		margin: 0;
	}
	.about-stat {
		grid-template-columns: repeat(3, 1fr);
	}
	.why {
		flex-direction: column;
		gap: 32px;
	}
	.why-side {
		width: auto;
	}
	.why-side h2 {
		max-width: max(360px, 720rem);
		margin: 0 0 max(32px, 64rem);
	}
	.why-wrap {
		max-width: none;
	}
	.why-img {
		width: auto;
		height: max(280px, 780rem);
		min-height: 1px;
		max-height: none;
	}
	.team {
		flex-direction: column;
		gap: 32px;
	}
	.team-big {
		width: auto;
		max-width: none;
	}
	.team-side {
		width: auto;
		border-top: 1px dashed var(--black);
	}
	.team-big-img {
		height: max(192px, 900rem);
	}
	.expert {
		flex-direction: column;
		gap: 20px;
	}
	.expert::before {display: none;}
	.expert-side {
		width: auto;
		padding-right: 0;
		border-right: 0;
	}
	.expert-img {
		width: auto;
		height: max(192px, 900rem);
	}
	.expert-text {
		max-width: none;
	}
	.support-item {
		flex-direction: column;
	}
	.support-title {
		width: auto;
	}
	.support-title h4 {
		max-width: none;
	}
	.support-text {
		width: auto;
	}
	.support-text-wrap {
		max-width: none;
	}
	.exhibiyions-top {
		flex-direction: column;
		gap: 20px;
	}
	.exhibiyions-top h2,
	.exhibiyions-text {
		width: auto;
	}
	.exhibiyions-img {
		height: max(192px, 800rem);
	}
	.global-item {
		width: calc(33% - max(15px, 15rem));
		color: var(--black);
		text-decoration: none;
	}
	.control-side {
		width: calc(50% - max(40px, 120rem));
	}
	.control-item {
		padding-left: max(40px, 120rem);
	}
	.hs-popular-content {
		padding: 0 0 0 max(20px, 100rem);
	}
	.catalog-block {
		flex-direction: column;
		gap: 32px;
	}
	.filter-mob {
		display: inline-flex;
        align-items: center;
        gap: 2px;
        padding: 6px 32px;
        font-family: var(--second-family);
        font-weight: 600;
        font-size: 18px;
        line-height: 120%;
        text-transform: uppercase;
        text-decoration: none;
        color: var(--white);
        background: var(--orange);
        border-radius: 100px;
	}
	.filter-mob::before {
        width: 24px;
        height: 24px;
        content: '';
        background: url(../images/filter.svg) 50% 50% no-repeat;
        background-size: contain;
        transition: all 0.3s linear;
    }
	.filter-block {
		display: none;
	}
	.catalog-content {
		width: 100%;
	}
	.filter-block {
		position: fixed;
		inset: 0;
		z-index: 2000;
		padding: 76px 16px 83px;
		background: var(--beige);
	}
	.filter-block.active {
		display: block;
	}
	.filter-close {
		position: absolute;
		top: 12px;
		right: 16px;
		display: block;
	}
	.filter-wrap {
		height: 100%;
		overflow-y: auto;
	}
	.filter-button {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		display: flex;
		align-items: center;
		height: 83px;
		padding: 0 16px;
	}
	.filter-top {
		position: absolute;
		top: 14px;
		left: 16px;
	}
	.filter-top h4 {
		display: none;
	}
	.filter-clear::after {display: none;}
	.filter-clear::before {
		transform: scale3d(1, 1, 1);
		transform-origin: 0% 50%;
		transition-timing-function: ease-out;
	}
	.obst-list {
		grid-template-columns: repeat(2, 1fr);
	}
	.obst-img {
		height: max(290px, 900rem);
	}
	
	
}
@media screen and (max-width: 767px) {
	.button {
		max-width: none;
	}
	.footer-block {
		border-top: 1px dashed var(--white);
	}
	.footer-main:first-child .footer-block {
		border-top: 0;
	}
	.footer-col {
		flex-direction: column;
		gap: 40px;
	}
	.footer-info {
		max-width: none;
	}
	.footer-name {
		padding: 0 0 18px;
		font-size: max(28px, 172rem);
   		line-height: 80%;
	}
	.footer-col .footer-sign h6 {
		margin: 0 0 10px;
	}
	.footer-sign-text {
		max-width: 260px;
		margin: 0 0 32px;
	}
	.sign-line {
		flex-direction: column;
		width: auto;
	}
	.sign-line .button {
		padding: max(16px, 19rem) max(20px, 20rem);
	}
	.footer-list {
		gap: 12px;
	}
	.footer-info .footer-list {
		margin: 0 0 6px;
	}
	.footer-webs {
		padding: 54px 0 0;
	}
	.footer-form .contact-text {
		max-width: none;
		margin: 0 0 max(32px, 40rem);
		text-align: left;
	}
	.contact-form h3, .contact-form h5 {
		text-align: left;
	}
	.input-box .wpcf7-form-control-wrap {
		width: 100%;
	}
	.policy h1 {
		font-size: max(32px, 172rem);
	}
	.policy h5 {
		padding-top: 32px;
	}
	.blog-block {
		grid-template-columns: repeat(1, 1fr);
	}
	.blog-item h5 {
		margin: 0 0 20px;
		max-width: 280px;
	}
	.blog-img {
		height: max(170px, 770rem);
	}
	.pagination .button {
		display: flex;
	}
	.contact-top h1 {
		font-size: max(32px, 172rem);
	}
	.contact-text {
		text-align: left;
	}
	.form-check-block {
		flex-direction: column;
	}
	.contact-info {
		flex-direction: column;
		gap: 80px 0;
	}
	.contact-info-col {
		width: auto;
	}
	.contact-map {
		width: auto;
	}
	.form-result {
		position: static;
		max-width: max(280px);
	}
	.form-sent .form-main {
		display: none;
	}
	.contact-form h5 {
		max-width: max(280px);
	}
	.news h1 {
		font-size: max(32px, 172rem);
	}
	.tags {
		padding: 20px 0 0;
		border-top: 1px dashed var(--black);
	}
	.tags-desk {
		display: none;
	}
	.tags-mob {
		display: block;
	}
	.news .blog-block {
		border-top: 0;
		padding-top: 0;
	}
	.article h1 {
		margin: 0 0 max(28px, 40rem);
		font-size: max(32px, 172rem);
	}
	.article-links {
		padding: 0;
	}
	.article-content h5 {
		padding-top: 12px;
	}
	.article-gallery {
		grid-template-columns: repeat(1, 1fr);
	}
	.blog-more h2 {
		font-size: 50px;
		text-align: left;
	}
	.blog-slider {
		display: flex;
		flex-direction: column;
		gap: 32px;
		margin: 0;
	}
	.blog-slide {
		padding: 0;
	}
	.blog-slide .blog-item {
    	width: auto;
	}
	.article-banner-info {
		position: static;
		flex-direction: column;
		align-items: flex-start;
		gap: 32px;
		margin: 0 0 32px;
		color: var(--black);
	}
	.article-banner .share-webs .footer-web path {
		fill: var(--black);
	}
	.article-banner .share-webs .footer-web circle {
		stroke: var(--black);
	}
	.article-banner .share-webs .footer-web:hover path {
		fill: var(--orange);
	}
	.article-banner .share-webs .footer-web:hover circle {
		stroke: var(--orange);
	}
	.article-box {
		flex-direction: column;
		gap: 20px;
		margin: 0 0 80px;
	}
	.article-box-img {
		width: 100%;
		height: max(192px, 800rem);
	}
	.article-box-content {
		width: 100%;
	}
	.res-block {
		grid-template-columns: repeat(1, 1fr);
	}
	.case-page .title-line h1 {
		word-break: break-all;
	}
	.project-gallery-block {
		grid-template-columns: repeat(2, 1fr);
	}
	.safety-block {
        grid-template-columns: repeat(2, 1fr);
    }
	.project-gallery-top {
		align-items: flex-start;
		text-align: left;
	}
	.project-gallery-text {
		max-width: 320px;
	}
	.application-block {
		grid-template-columns: repeat(1, 1fr);
	}
	.title-num {
		line-height: 100%;
	}
	.stat,
	.overview-block {
        grid-template-columns: repeat(1, 1fr);
    }
	.hero-list {
        border-top: 0;
    }
	.main-about-item {
		flex-direction: column;
		gap: 20px;
	}
	.main-about-img {
		width: max(36px, 172rem);
		min-width: max(36px, 172rem);
	}
	.main-about-content {
		max-width: none;
	}
	.stat {
		gap: 10px;
	}
	.stat-item {
		align-items: flex-start;
		height: max(90px, 270rem);
		padding: max(16px, 20rem) max(16px, 70rem);
	}
	.stat-icon {
		width: max(32px, 130rem);
		min-width: max(32px, 130rem);
	}
	.stat-num br {display: none;}
	.application-block {
		gap: 32px;
	}
	.video-banner-bg {
		height: max(192px, 1020rem);
		margin: 0 0 max(12px, 30rem);
	}
	.video-banner-content {
		position: static;
		align-items: flex-start;
		text-align: left;
		color: var(--black);
	}
	.video-banner-content h3 {
		max-width: max(450px, 900rem);
	}
	.video-block {
		gap: 32px;
		border-top: 0;
	}
	.video-block .article-gallery-item {
		width: 100%;
		padding: 0;
		border-bottom: 0;
		border-right: 0;
	}
	.main-news h2 {
		text-align: left;
	}
	.main-news-block {
		flex-direction: column;
	}
	.main-news-col {
		width: 100%;
	}
	.main-news-item {
		padding: 0;
		border-top: 1px dashed var(--black);
	}
	.main-news-col:first-child {
		border-right: 0;
		border-bottom: 1px dashed var(--black);
	}
	.main-news-item .blog-item {
		padding: 20px 0;
	}
	.main-news-item .blog-img {
		height: max(192px, 520rem);
	}
	.study-item {
		flex-direction: column;
	}
	.study-content, .study-img {
        width: 100%;
    }
	.study-img {
		height: max(192px, 377rem);
	}
	.study-num {
		margin: 0 0 12px;
	}
	.safety-bottom-wrap {
		height: max(192px, 1000rem);
		margin: 0 0 max(12px, 40rem);
	}
	.safety-bottom-text {
		position: static;
		padding: 0;
		color: var(--black);
	}
	.video-big {
		margin: 0 0 32px;
	}
	.video-big-content {
		position: static;
		padding: 12px 0 0;
		align-items: flex-start;
		color: var(--black);
		text-align: left;
	}
	.video-big-content h3 {
		max-width: 270px;
	}
	.cert-video-block {
		flex-direction: column;
		gap: 32px;
		margin: 0 0 max(20px, 30rem);
	}
	.cert-video-item {
		width: 100%;
		aspect-ratio: 16/9;
		height: auto;
	}
	.cert-video-text {
		text-align: left;
	}
	.safety-banner {
		padding: 0;
		margin: 0;
	}
	.safety-banner-bg {
		height: max(192px, 1148rem);
		margin: 0;
	}
	.safety-banner h1 {
		position: static;
		margin: 0 0 32px;
		color: var(--black);
		text-align: left;
	}
	.safety-banner-text {
		position: static;
		margin: 0 0 32px;
		font-size: 20px;
		line-height: 120%;
		color: var(--black);
	}
	.safety-banner-bg::after {
		display: none;
	}
	.about-stat {
        grid-template-columns: repeat(1, 1fr);
    }
	.about-stat-item {
		aspect-ratio: unset;
		position: relative;
		padding-left: 56px;
	}
	.about-stat-icon {
		position: absolute;
		top: 16px;
		left: 16px;
		width: max(32px, 120rem);
	}
	.about-stat-item h5 {
		font-size: 28px;
		line-height: 120%;
	}
	.about-stat-text {
		font-weight: 400;
		font-size: 20px;
		line-height: 120%;
	}
	.about-section {
		margin: 0 0 max(80px, 130rem);
	}
	.about-slide {
		padding: 0 max(16px, 50rem);
	}
	.about-slide > .h1 {
		display: block;
		margin: 0 0 32px;
	}
	.about-slide-bg {
		height: max(192px, 900rem);
		margin: 0 0 16px;
	}
	.about-slide-content {
		position: static;
		align-items: flex-start;
		gap: 16px;
		padding: 0;
		color: var(--black);
		text-align: left
	}
	.about-slide-content .h1 {
		display: none;
	}
	.about-slide-text {
		max-width: none;
	}
	.factory-top {
		align-items: flex-start;
		text-align: left;
	}
	.team-item {
		flex-direction: column;
	}
	.team-img {
		flex: none;
		height: max(192px, 800rem);
	}
	.team-text {
		margin: 0 0 20px;
	}
	.management-top {
		text-align: left;
	}
	.management-item {
		width: 100%;
	}
	.global-item {
        width: calc(50% - 10px);
    }
	.awards-item {
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 16px 0;
	}
	.awards-item h6 {
		flex: none;
		width: calc(100% - 44px);
	}
	.awards-item h6 br {display: none;}
	.awards-text {
		flex: none;
	}
	.awards-top {
		align-items: flex-start;
		text-align: left;
	}
	.support-info-link br {
		display: inline;
	}
	.quality-top {
    	align-items: flex-start;
		text-align: left;
	}
	.quality-block {
		grid-template-columns: repeat(1, 1fr);
	}
	.support h2 {
		text-align: left;
	}
	.exhibiyions-slider {
		margin: 0;
	}
	.exhibiyions-slide {
		padding: 0 0 32px;
	}
	.exhibiyions-slide:last-child {
		padding: 0;
	}
	.exhibiyions-item {
		width: auto;
	}
	.exhibiyions-img {
		height: max(192px, 800rem);
	}
	.cert h2 {
		max-width: 340px;
		margin: 0 0 max(32px, 60rem);
		text-align: left;
	}
	.control-block {
		flex-direction: column-reverse;
	}
	.control-content {
		width: 100%;
		padding: 0 0 0 7px;
	}
	.control-progress {
		left: 7px;
	}
	.control-item {
        padding-left: max(28px, 100rem);
    }
	.control-side {
        width: 100%;
    }
	.control-video {
		margin: 0 0 12px;
	}
	.core h2 {
		text-align: left;
	}
	.core-item {
		align-items: flex-start;
		text-align: left;
	}
	.process-num {
		margin: 0 0 max(20px, 40rem);
	}
	.process-box {
		text-align: left;
	}
	.hs-popular-item {
		flex-direction: column;
		padding: 0 0 32px;
		border-bottom: 0;
	}
	.hs-popular-img {
		width: 100%;
		height: max(192px, 600rem);
	}
	.hs-popular-content {
		padding: 12px 0 0;
	}
	.hs-popular-content h6 {
		margin: 0 0 max(20px, 28rem);
	}
	.hs-popular-text {
		margin: 0 0 max(20px, 20rem);
		opacity: 1;
	}
	.hs-popular-content .more {
		position: relative;
		top: auto;
		right: auto;
		font-size: var(--link);
	}
	.catalog-list {
        grid-template-columns: repeat(1, 1fr);
    }
	h3, .h3 {
		letter-spacing: 0em;
	}
	

}
@media screen and (max-width: 576px) {
	.project-content {
		gap: 32px;
	}
	.project-stat {
		border-top: 1px dashed var(--black);
	}
	.project-stat-item {
		flex-direction: column;
		gap: 16px;
	}
	.project-stat-item:first-child {
		padding-top: 20px;
	}
	.project-stat-item h6 {
		width: auto;
		padding: 0;
	}
	.project-stat-text {
		width: auto;
	}
	.project-button {
		padding: 0;
	}
	.project-photo {
		padding: 0 0 60px;
	}
	.project-photo .slick-arrow {
		margin-top: 0;
		left: 50%;
		top: auto;
		bottom: 0;
	}
	.project-photo .slick-arrow::before {
		display: none;
	}
	.project-photo .slick-arrow:hover {
		background: var(--beige);
	}
	.project-photo .slick-arrow:hover::after {
		opacity: 1;
	}
	.project-photo .slick-prev {
		left: 50%;
		margin-left: -46px;
	}
	.project-photo .slick-next {
		right: auto;
		margin-left: 6px;
	}
	.project-gallery-block {
        grid-template-columns: repeat(1, 1fr);
    }
	.safety-block {
        grid-template-columns: repeat(1, 1fr);
		gap: 8px;
    }
	.safety-item {
		height: max(192px, 265rem);
	}
	.catalog-more h2 {
		max-width: 240px;
	}
	.catalog-more .catalog-list {
        grid-template-columns: repeat(1, 1fr);
    }
	.catalog-photo .catalog-photo-item {
		height: max(170px, 250rem);
	}
	.application-content h4 {
		max-width: 200px;
	}
	.prod-block {
		grid-template-columns: repeat(1, 1fr);
	}
	.prod-item {
		height: max(192px, 800rem);
	}
	.cert-slider {
		margin-bottom: 0;
	}
	.global-item {
        width: 100%;
    }
	.page404-4 {display: none;}
	.page404-6 {
		right: -21px;
		bottom: 166px;
		width: max(64px, 453rem);
	}
	.page404-3 {
		top: -56px;
	}
	.page404-button {
		position: absolute;
		left: 16px;
		right: 16px;
		bottom: 40px;
	}
	.page404-block .button {
		width: 100%;
	}
	.about-slider {
		margin: 0 min(-16px, -50rem) 60px;
	}
	.about-slider .slick-dots {
		bottom: auto;
		top: 253px;
	}
	.about-slider .slick-dots button {
		width: max(40px, 100rem);
		height: max(1px, 3rem);
	}
	.about-slider .slick-arrow {
		top: auto;
		margin-top: 0;
		bottom: -60px;
		width: max(40px, 40rem);
		height: max(40px, 40rem);
		background: var(--beige);
		border: 1px solid var(--orange);
	}
	.about-slider .slick-arrow::after {
		background: url(../images/slider-arrow-orange.svg) 50% 50% no-repeat;
		background-size: max(24px, 24rem);
		opacity: 1;
	}
	.about-slider .slick-arrow::before {
		position: absolute;
		inset: 0;
		z-index: 5;
		content: '';
		background: url(../images/slider-arrow-white.svg) 50% 50% no-repeat;
		background-size: max(24px, 24rem);
		opacity: 0;
		transition: all 0.4s;
	}
	.about-slider .slick-prev::before {
		transform: scale(-1, 1);
	}
	.about-slider .slick-arrow:hover {
		background-color: var(--orange);
	}
	.about-slider .slick-arrow:hover::after {
		opacity: 0;
	}
	.about-slider .slick-arrow:hover::before {
		opacity: 1;
	}
	.about-slider .slick-prev {
		left: 50%;
		margin-left: -50px;
	}
	.about-slider .slick-next {
		margin-left: 10px;
		left: 50%;
		right: auto;
	}
	.obst-list {
		grid-template-columns: repeat(1, 1fr);
	}
	.obst-img {
		height: max(390px, 900rem);
	}

}