@font-face {
    font-family: 'HK Grotesk';
    src: url('../fonts/HKGrotesk-Regular.eot');
    src: url('../fonts/HKGrotesk-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/HKGrotesk-Regular.woff2') format('woff2'),
        url('../fonts/HKGrotesk-Regular.woff') format('woff'),
        url('../fonts/HKGrotesk-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'HK Grotesk';
    src: url('../fonts/HKGrotesk-Medium.eot');
    src: url('../fonts/HKGrotesk-Medium.eot?#iefix') format('embedded-opentype'),
        url('../fonts/HKGrotesk-Medium.woff2') format('woff2'),
        url('../fonts/HKGrotesk-Medium.woff') format('woff'),
        url('../fonts/HKGrotesk-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'HK Grotesk';
    src: url('../fonts/HKGrotesk-SemiBold.eot');
    src: url('../fonts/HKGrotesk-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/HKGrotesk-SemiBold.woff2') format('woff2'),
        url('../fonts/HKGrotesk-SemiBold.woff') format('woff'),
        url('../fonts/HKGrotesk-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
:root{
	--primary-dark-cyan: #00465b;
	--primary-light-gray: #dfe0e2;
	--primary-black: #202020;
	--primary-white: #fff;
	--secondary-white-cyan: #f5fdff;
	--secondary-yellow-green: #d2e59e;
	--secondary-gray: #e8ecee;
	--accent-light-cyan: #b1c1c0;

	--font-family: "HK Grotesk", sans-serif;

	--h1: max(36px, 74rem);
	--h2: max(30px, 64rem);
	--h3: max(22px, 40rem);
	--h4: max(20px, 24rem);
	--h5: max(18px, 20rem);

	--text_1: max(22px, 24rem);
	--text_2: max(16px, 18rem);
	--text_3: max(20px, 20rem);
	--text_4: max(18px, 18rem);
	--text_5: max(16px, 16rem);

	--link: max(16px, 18rem);
	--button: max(16px, 20rem);

	--ease-out-expo: cubic-bezier(0.19, 1, 0.22, 1);
	--power3-out: linear( 0, 0.1538 4.09%, 0.2926 8.29%, 0.4173 12.63%, 0.5282 17.12%, 0.6255 21.77%, 0.7099 26.61%, 0.782 31.67%, 0.8425 37%, 0.8887 42.23%, 0.9257 47.79%, 0.9543 53.78%, 0.9752 60.32%, 0.9883 67.11%, 0.9961 75%, 1 );
}
::selection {
	color: var(--primary-dark-cyan);
	background-color: var(--secondary-yellow-green);
}
.hero-block ::selection,
.bottom-block ::selection,
.main-serv ::selection,
.mh-top ::selection,
.mh-logos ::selection,
.mh-num ::selection,
a.serv-item:hover ::selection {
	color: var(--primary-dark-cyan);
	background-color: var(--secondary-white-cyan);
}
/************************* reset *************************/
html{
	height: 100%;
	margin: 0;
	padding: 0;width: 100%;
	background: var(--primary-dark-cyan);
	font-size: 0.0625vw;
}
body{
	height: 100%;
	width: 100%;
	position: relative;
	margin: 0;
	padding: 0;
	color: var(--primary-dark-cyan);
	font-weight: 400;
	font-size: var(--text_3);
	line-height: 125%;
	letter-spacing: -0.05em;
	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: var(--font-family), 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-weight: 500;
	font-size: var(--h1);
	line-height: 100%;
	letter-spacing: -0.05em;
}
h2, .h2 {
	display: block;
	font-weight: 500;
	font-size: var(--h2);
	line-height: 100%;
	letter-spacing: -0.06em;
}
h3, .h3 {
	display: block;
	font-weight: 500;
	font-size: var(--h3);
	line-height: 110%;
	letter-spacing: -0.05em;
}
h4, .h4 {
	display: block;
	font-weight: 500;
	font-size: var(--h4);
	line-height: 120%;
	letter-spacing: -0.04em;
}
h5, .h5 {
	display: block;
	font-weight: 500;
	font-size: var(--h5);
	line-height: 110%;
	letter-spacing: -0.05em;
}
a {transition: all .3s linear;}
p {margin: 0 0 max(16px, 16rem);}
p:last-child {margin: 0;}
p a, .article li a {color: var(--primary-dark-cyan);}
.center {text-align: center;}
.upper {text-transform: uppercase;}
.button-holder {text-align: center;}
.button {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 24px;
	height: max(60px, 60rem);
	padding: 0 max(32px, 32rem);
	font-weight: 500;
	font-size: var(--button);
	line-height: 100%;
	letter-spacing: -0.05em;
	color: var(--primary-dark-cyan);
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	background: var(--secondary-yellow-green);
	border: 1px solid var(--secondary-yellow-green);
	border-radius: 100px;
	transition: all .2s;
}
.button path {
	stroke: var(--primary-dark-cyan);
	transition: all .2s;
}
.button:hover {
	color: var(--secondary-yellow-green);
	background: var(--primary-dark-cyan);
	border-color: var(--primary-dark-cyan);
}
.button:hover path {
	stroke: var(--secondary-yellow-green);
}
.button-border {
	background: transparent;
	border-color: var(--primary-dark-cyan);
}
.button-light:hover {
	color: var(--secondary-yellow-green);
	background: transparent;
	border-color: var(--secondary-yellow-green);
}
.button-light:hover path {
	stroke: var(--secondary-yellow-green);
}
.button-reverse {
	color: var(--secondary-yellow-green);
	background: transparent;
	border-color: var(--secondary-yellow-green);
}
.button-reverse path {
	stroke: var(--secondary-yellow-green);
}
.button-reverse:hover {
	color: var(--primary-dark-cyan);
	background: var(--secondary-yellow-green);
	border-color: var(--secondary-yellow-green);
}
.button-reverse:hover path {
	stroke: var(--primary-dark-cyan);
}
.button-min {
	height: max(48px, 48rem);
	padding: 0 max(20px, 20rem);
	gap: 12px;
}
.button.disabled,
.button:disabled {
	opacity: 0.4;
	pointer-events: none;
}
/************************* form-block *************************/
.wpcf7-form-control-wrap input {
	display: block;
	width: 100%;
	height: max(52px, 52rem);
	padding: 0 16px 1px;
	margin: 0 0 max(18px, 21rem);
	font-weight: 500;
	font-size: var(--button);
	letter-spacing: -0.05em;
	color: var(--primary-dark-cyan);
	background: transparent;
	border: 1px solid rgba(27, 69, 89, 0.3);
	border-radius: 30px;
}
.wpcf7-form-control-wrap textarea {
	display: block;
	width: 100%;
	height: max(120px, 153rem);
	padding: 17px 16px;
	margin: 0 0 max(18px, 21rem);
	font-weight: 500;
	font-size: var(--button);
	letter-spacing: -0.05em;
	color: var(--primary-dark-cyan);
	resize: vertical;
	background: transparent;
	border: 1px solid rgba(27, 69, 89, 0.3);
	border-radius: 30px;
}
.wpcf7-form-control-wrap input:focus,
.wpcf7-form-control-wrap textarea:focus {
	border-color: rgba(27, 69, 89, 0.6);
}
.inactive {
	opacity: 0.4;
	pointer-events: none;
}
::-webkit-input-placeholder {color: rgba(27, 69, 89, 0.6);}
:-moz-placeholder {color: rgba(27, 69, 89, 0.6); opacity: 1;}
::-moz-placeholder {color: rgba(27, 69, 89, 0.6); opacity: 1;}
:-ms-input-placeholder {color: rgba(27, 69, 89, 0.6);}
.error-msg {
	display: none;
	margin: min(-10px, -13rem) 0 max(18px, 21rem);
	font-weight: 400;
	font-size: max(16px, 16rem);
	line-height: 125%;
	letter-spacing: -0.06em;
	color: #e02424;
}
.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% - 8px);
}
.form-button {
	padding: 11px 0 0;
	text-align: center;
}
.check-item {
	position: relative;
}
.check-input {
	position: absolute;
	left: 0;
	width: 1px;
	height: 1px;
	opacity: 0;
}
.check-label {
	display: flex;
	align-items: center;
	min-height: max(24px, 24rem);
	padding: 0 0 0 max(28px, 28rem);
	color: var(--primary-dark-cyan);
	font-weight: 500;
	font-size: var(--button);
	line-height: 125%;
	letter-spacing: -0.06em;
	cursor: pointer;
}
.check-label::before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '';
	width: max(24px, 24rem);
	height: max(24px, 24rem);
	box-sizing: border-box;
	background: url(../images/check.svg) 50% 50%;
	background-size: contain;
}
.check-input:checked + .check-label::before {
	background: url(../images/check-active.svg) 50% 50%;
	background-size: contain;
}
.radio-item {
	position: relative;
}
.radio-input {
	position: absolute;
	left: 0;
	width: 1px;
	height: 1px;
	opacity: 0;
}
.radio-label {
	display: flex;
	align-items: center;
	min-height: max(24px, 24rem);
	padding: 0 0 0 max(28px, 28rem);
	color: var(--primary-dark-cyan);
	font-weight: 500;
	font-size: var(--button);
	line-height: 125%;
	letter-spacing: -0.06em;
	cursor: pointer;
}
.radio-label::before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '';
	width: max(24px, 24rem);
	height: max(24px, 24rem);
	box-sizing: border-box;
	background: url(../images/radio.svg) 50% 50%;
	background-size: contain;
}
.radio-input:checked + .radio-label::before {
	background: url(../images/radio-active.svg) 50% 50%;
	background-size: contain;
}
/************************* wrapper *************************/
#wrapper {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	min-height: 100dvh;
	background: var(--primary-white);
}
/************************* header *************************/
.header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 300;
	background: transparent;
	transition: all 0.3s linear;
}
.header-up {
    top: min(-55px, -100rem);
}
.header-block {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: max(55px, 100rem);
	position: relative;
}
.header-logo {
	position: relative;
	z-index: 550;
}
.header-logo img {
	width: max(115px, 163rem);
	transition: opacity 0.3s linear;
}
.logo-dark {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	opacity: 0;
}
.logo-white {
	position: relative;
}
.header-nav {
	flex: 1;
}
.header-nav-wrap {
	display: flex;
	align-items: center;
}
.header-nav-list {
	display: flex;
	gap: max(32px, 50rem);
	margin: 0 auto;
}
.header-nav-list li {
	position: relative;
	font-weight: 500;
	font-size: var(--link);
	line-height: 100%;
	letter-spacing: -0.06em;
}
.header-nav-list > li > a {
	display: inline-block;
	vertical-align: top;
	color: var(--primary-white);
	text-decoration: none;
}
.header-nav-list > li > a::before{
	position: absolute;
	left: 0;
	bottom: -2px;
	content: '';
	height: 1px;
	background: var(--primary-white);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.header-nav-list > li > .nav-parent::before {
	width: calc(100% + 20px);
}
.header-nav-list > li > a:hover::before,
.header-nav-list > li > a.active::before,
.header-nav-list > li > a.active-sub::before {
	transform: scaleX(1);
	transform-origin: left;
}
.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;
}
.subnav {
	display: none;
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	min-width: max(120px, 120rem);
	padding: 8px 0;
	background: var(--primary-white);
	border-radius: 8px;
}
.subnav a {
	position: relative;
	display: block;
	padding: 14px 16px;
	font-weight: 500;
	font-size: max(16px, 16rem);
	line-height: 125%;
	letter-spacing: -0.06em;
	color: var(--primary-dark-cyan);
	text-decoration: none;
	white-space: nowrap;
}
.subnav a:hover {
	background: var(--secondary-yellow-green);
}
@media screen and (min-width: 1025px) {
	.header-nav-list > li:hover .subnav {
		display: block;
	}
	li:hover > .nav-parent::after,
	.nav-parent.active-sub::after {
		transform: rotate(180deg);
	}
	.subnav::before {
		position: absolute;
		top: -8px;
		left: 0;
		right: 0;
		height: 8px;
		content: '';
	}
}
.header-white,
.header-fixed {
	background: var(--primary-white);
}
.header-white .logo-white,
.header-fixed .logo-white {opacity: 0;}
.header-white .logo-dark,
.header-fixed .logo-dark {opacity: 1;}
.header-white .header-nav-list > li > a,
.header-fixed .header-nav-list > li > a {
	color: var(--primary-dark-cyan);
}
.header-white .header-nav-list > li > a::before,
.header-fixed .header-nav-list > li > a::before {
	background: var(--primary-dark-cyan);
}
.header-white .nav-parent::after,
.header-fixed .nav-parent::after {
	background: url(../images/nav-arrow-2.svg) 50% 50% no-repeat;
}
.header-white .button-reverse,
.header-fixed .button-reverse {
	color: var(--primary-dark-cyan);
	background: transparent;
	border-color: var(--primary-dark-cyan);
}
.header-white .button-reverse path,
.header-fixed .button-reverse path {
	stroke: var(--primary-dark-cyan);
}
.header-white .button-reverse:hover,
.header-fixed .button-reverse:hover {
	color: var(--primary-white);
	background: var(--primary-dark-cyan);
	border-color: var(--primary-dark-cyan);
}
.header-white .button-reverse:hover path,
.header-fixed .button-reverse:hover path {
	stroke: var(--primary-white);
}
.mob-nav-icon {
	position: relative;
	z-index: 550;
	display: none;
	font-weight: 500;
	font-size: 16px;
	line-height: 125%;
	letter-spacing: -0.06em;
	color: var(--primary-white);
	text-decoration: none;
}
/************************* main-hero *************************/
.main-hero {
	padding: max(110px, 230rem) 0 max(30px, 30rem);
	margin-bottom: calc(1000px + max(620px, 630rem));
	background: url(../images/main-hero.jpg) 50% 0% no-repeat;
	background-size: cover;
}
.mh-top {
	display: flex;
	align-items: center;
	flex-direction: column;
	text-align: center;
	color: var(--primary-white);
	margin: 0 0 max(72px, 120rem);
}
.mh-top h1 {
	max-width: max(560px, 1140rem);
	margin: 0 0 max(24px, 24rem);
}
.mh-top-text {
	max-width: max(560px, 640rem);
	margin: 0 0 max(32px, 40rem);
	font-weight: 500;
	font-size: var(--h4);
	line-height: 120%;
	letter-spacing: -0.04em;
	color: rgba(255, 255, 255, 0.6);
}
.mh-logos {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: max(32px, 40rem);
	margin: 0 0 max(66px, 160rem);
}
.mh-google {
	width: max(125px, 154rem);
}
.mh-meta {
	width: max(86px, 106rem);
}
.mh-num {
	display: flex;
	justify-content: space-between;
	margin: 0 0 max(60px, 170rem);
	padding: max(24px, 40rem) 0 max(26px, 41rem);
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
.mh-num-item {
	width: max(200px, 345rem);
	text-align: center;
	color: var(--primary-white);
}
.mh-num-value {
	margin: 0 0 max(6px, 6rem);
	font-weight: 500;
	font-size: var(--h2);
	line-height: 100%;
	letter-spacing: -0.06em;
}
.mh-box {
	margin: 0 min(-5px, -20rem);
	padding: max(30px, 120rem) max(30px, 50rem);
	background: var(--secondary-white-cyan);
	border-radius: max(16px, 20rem);
}
.mh-box-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: max(22px, 22rem);
	text-align: center;
}
.mh-box-top h2 {
	max-width: max(500px, 1000rem);
}
.mh-box-text {
	max-width: max(560px, 670rem);
	font-weight: 500;
	font-size: var(--h4);
	line-height: 120%;
	letter-spacing: -0.04em;
}
.mh-box-main {
	padding: max(32px, 64rem) 0;
}
.mh-box-button {
	text-align: center;
}

.process-col .process-title {
	display: none;
}
.process-title {
	padding: 0 0 0 50%;
	margin: 0 0 max(22px, 26rem);
}
.process-scroll {
	display: flex;
}
.process-col {
	width: 50%;
}
.process-col:first-child {
	padding-right: max(32px, 130rem);
}
.process-video {
	position: relative;
	overflow: hidden;
	max-width: max(500px, 602rem);
	height: max(460px, 498rem);
	border-radius: max(16px, 20rem);
}
.process-video video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.process-content {
	overflow: hidden;
	position: relative;
	height: max(460px, 498rem);
}
.process-content::after {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 20;
	content: '';
	height: max(78px, 78rem);
	background: linear-gradient(180deg, rgba(247, 253, 255, 0) 0%, #f7fdff 100%);
	transition: all 0.2s ease;
}
.process-content.finished::after {
	bottom: min(-78px, -78rem);
}
.process-list {
	display: flex;
	flex-direction: column;
	gap: max(80px, 80rem);
	padding: 0 0 0 max(32px, 130rem);
}
.process-list-item {
	position: relative;
	display: flex;
	gap: max(16px, 16rem);
	max-width: max(420px, 420rem);
}
.process-list-num {
	display: flex;
	align-items: center;
	justify-content: center;
	width: max(32px, 40rem);
	min-width: max(32px, 40rem);
	height: max(32px, 40rem);
	font-size: max(16px, 16rem);
	line-height: 125%;
	letter-spacing: -0.06em;
	color: var(--primary-white);
	background: var(--primary-dark-cyan);
	border-radius: 50%;
}
.process-list-text {
	font-weight: 500;
	font-size: var(--h4);
	line-height: 120%;
	letter-spacing: -0.04em;
}
.process-list-item:last-child .process-mark {
	height: 12px;
	bottom: auto;
}
.process-mark {
	position: absolute;
	top: 0;
	bottom: min(-90px, -90rem);
	left: min(-32px, -130rem);
	width: 12px;
}
.process-mark-def {
	position: absolute;
	overflow: hidden;
	top: 0;
	left: 0;
	bottom: 0;
	width: 12px;
}
.process-mark-def::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 5px;
	content: '';
	width: 2px;
	background: url(../images/line.svg) 0 0 no-repeat;
}
.process-mark-def::after {
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 12px;
	height: 12px;
	background: var(--accent-light-cyan);
	border-radius: 50%;
}
.process-mark-fill {
	position: absolute;
	overflow: hidden;
	width: 12px;
	left: 0;
	top: 0;
}
.process-mark-fill::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 5px;
	content: '';
	width: 2px;
	background: var(--primary-dark-cyan);
}
.process-mark-fill::after {
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 12px;
	height: 12px;
	background: var(--primary-dark-cyan);
	border-radius: 50%;
}

/************************* review *************************/
.review-top {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: max(32px, 40rem);
	margin: 0 0 max(32px, 64rem);
}
.review-top .button {
	white-space: nowrap;
}
.review-slider {
	margin: 0 min(-12px, -20rem);
	padding: 0 0 max(78px, 100rem);
}
.review-slide {
	padding: 0 max(12px, 20rem);
}
.review-item {
	display: flex;
	justify-content: space-between;
}
.review-video {
	position: relative;
	overflow: hidden;
	width: calc(50% - max(12px, 20rem));
	height: max(400px, 420rem);
	border-radius: 16px;
}
.review-video:hover .video-cover {
	transform: scale(1.05);
}
.review-content {
	width: calc(50% - max(12px, 20rem));
	padding: max(24px, 42rem) max(24px, 64rem) max(24px, 46rem);
	text-align: center;
	background: var(--secondary-white-cyan);
	border-radius: 16px;
}
.review-text {
	position: relative;
	padding: max(42px, 72rem) 0 0;
	margin: 0 0 max(20px, 20rem);
	font-size: max(22px, 24rem);
	line-height: 125%;
	letter-spacing: -0.04em;
}
.review-text::before {
	position: absolute;
	top: 0;
	left: 50%;
	content: '';
	width: max(24px, 40rem);
	height: max(24px, 40rem);
	transform: translateX(-50%);
	background: url(../images/quotes.svg) 50% 50% no-repeat;
	background-size: contain;
}
.review-author {
	font-weight: 500;
	font-size: 20px;
	line-height: 110%;
	letter-spacing: -0.05em;
}

/************************* banner *************************/
.banner {
	position: relative;
}
.banner-scroller {
	position: relative;
	overflow: hidden;
	height: 100dvh;
}
.banner-1 .banner-scroller {
	background: url(../images/media/banner-1.jpg) 50% 50% no-repeat;
	background-size: cover;
}
.banner-2 .banner-scroller {
	background: url(../images/media/banner-2.jpg) 50% 50% no-repeat;
	background-size: cover;
}
.banner-col {
	width: 50%;
	padding: max(60px, 80rem) 0;
	color: var(--primary-white);
}
.banner-col h2 {
	max-width: max(320px, 620rem);
	margin: 0 0 max(22px, 32rem);
}
.banner-col h4 {
	max-width: max(460px, 560rem);
}
.banner-side {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	height: 100dvh;
	width: max(400px, 650rem);
	padding: max(30px, 80rem) max(30px, 45rem);
	background: var(--secondary-white-cyan);
}
.banner-part {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.5s ease-in-out, transform 0.6s ease-in-out;
}
.banner-side.finished .banner-part {
	opacity: 1;
	transform: translateY(0px);
}
.banner-wrap {
	display: flex;
	flex-direction: column;
	height: 100%;
}
.banner-side h3 {
	max-width: max(200px, 420rem);
	margin: 0 0 max(22px, 64rem);
}
.banner-side h4 {
	margin: 0 0 max(18px, 32rem);
}
.banner-list {
	margin: 0 0 max(32px, 69rem);
}
.banner-list-item {
	position: relative;
	padding: max(20px, 20rem) 0 max(20px, 20rem);
	font-size: var(--text_3);
	line-height: 125%;
	border-bottom: 1px solid rgba(27, 69, 89, 0.2);
}
.banner-list-text {
	position: relative;
	padding: 0 0 0 30px;
	max-width: max(470px, 470rem);
}
.banner-list-text b {
	font-weight: 600;
}
.banner-list-text::before {
    position: absolute;
    top: 11px;
    left: 13px;
    content: '';
    width: 5px;
    height: 5px;
    background: var(--primary-dark-cyan);
    border-radius: 50%;
}
.banner-list-item:first-child {
	padding-top: 0;
}
.banner-list-item:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}
.banner-2 .banner-col {
	width: 60%;
}
.banner-2 .banner-col h2 {
	max-width: max(380px, 820rem);
	margin: 0 0 max(22px, 32rem);
}
.banner-2 .banner-col h4 {
	max-width: max(350px, 420rem);
}
.banner-2 .banner-side h4 {
	margin: 0 0 max(22px, 64rem);
}
.banner-side h5 {
	margin: 0 0 max(18px, 20rem);
}
.banner-2 .banner-part:last-child {
	margin: auto 0 0;
}
.banner-2 .banner-list-item:first-child {
	padding-top: max(20px, 20rem);
	border-top: 1px solid rgba(27, 69, 89, 0.2);
}
.banner-2 .banner-list-item:last-child {
	padding-bottom: max(20px, 20rem);
	border-bottom: 1px solid rgba(27, 69, 89, 0.2);
}
.banner-img {
	display: none;
}

/************************* main-serv *************************/
.main-serv {
	padding: max(60px, 140rem) 0 max(96px, 140rem);
	color: var(--primary-white);
	background: url(../images/serv-bg.jpg) 50% 50% no-repeat;
	background-size: cover;
}
.main-serv h2 {
	margin: 0 0 max(32px, 64rem);
}
.main-serv-block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: max(24px, 40rem);
}
.main-serv-item {
	display: flex;
	flex-direction: column;
	height: max(324px, 403rem);
	padding: max(24px, 40rem);
	backdrop-filter: blur(5px);
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(222, 222, 222, 0.15);
	border-radius: 16px;
	transition: all 0.2s;
}
.main-serv-num {
	margin: 0 0 max(18px, 18rem);
	font-size: max(16px, 16rem);
	line-height: 125%;
	letter-spacing: -0.06em;
}
.main-serv-item h4 {
	margin: 0 0 max(24px, 24rem);
}
.main-serv-text {
	margin: auto 0 max(24px, 24rem);
}
.main-serv-item .button {
	margin: 0 auto 0 0;
	color: var(--primary-white);
	border-color: var(--primary-white);
}
.main-serv-item .button path {
    stroke: var(--primary-white);
}
@media screen and (min-width: 1025px) {
	.main-serv-item:hover {
		color: var(--primary-dark-cyan);
		background: var(--secondary-yellow-green);
	}
	.main-serv-item:hover .button {
		margin: 0 auto 0 0;
		color: var(--primary-dark-cyan);
		border-color: var(--primary-dark-cyan);
	}
	.main-serv-item:hover .button path {
		stroke: var(--primary-dark-cyan);
	}
}
.main-serv-item .button:hover {
    color: var(--secondary-yellow-green);
    background: var(--primary-dark-cyan);
    border-color: var(--primary-dark-cyan);
}
.main-serv-item .button:hover path {
    stroke: var(--secondary-yellow-green);
}

/************************* main-promo *************************/
.main-promo {
	padding: max(80px, 220rem) 0;
}
.main-promo-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: max(32px, 40rem);
	text-align: center;
}
.main-promo-block h2 {
	max-width: max(400px, 700rem);
}

/************************* res *************************/
.res {
	position: relative;
}
.res .top {
    margin: 0 0 max(32px, 48rem);
}
.res .top h2 {
    max-width: max(420px, 720rem);
}
.res-top {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 40px;
	margin: 0 0 max(24px, 24rem);
}
.tabs {
	display: flex;
	flex-wrap: wrap;
	gap: max(16px, 16rem);
}
.tabs-item {
	display: flex;
	align-items: center;
	justify-content: center;
	height: max(52px, 52rem);
	padding: 0 max(27px, 27rem);
	font-weight: 500;
	font-size: 20px;
	line-height: 100%;
	letter-spacing: -0.05em;
	text-align: center;
	color: var(--primary-dark-cyan);
	text-decoration: none;
    background: transparent;
    border: 1px solid var(--primary-dark-cyan);
	border-radius: 100px;
	transition: all 0.2s linear;
}
.tabs-item:hover,
.tabs-item.active {
	color: var(--primary-white);
	background: var(--primary-dark-cyan);
}
.tabs-mob {
	display: none;
}
.res-slider {
	width: calc(100% + max(16px, 50rem));
	padding: 0 0 max(78px, 78rem);
}
.res-slide {
	max-width: max(460px, 500rem);
	padding: 0 max(24px, 24rem) 0 0;
}
.res-video {
	overflow: hidden;
	position: relative;
	height: max(280px, 323rem);
	margin: 0 0 max(16px, 24rem);
	border-radius: max(16px, 24rem);
}
.res-video:hover .video-cover {
	transform: scale(1.1);
}
.video-cover {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 30;
	transition: all 0.4s ease;
}
.video {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 20;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.video-play {
	position: absolute;
	inset: 0;
	z-index: 40;
	display: flex;
	align-items: center;
	justify-content: center;
}
.play-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: max(40px, 68rem);
	height: max(40px, 68rem);
	border-radius: 50%;
	backdrop-filter: blur(64px);
	background: rgba(244, 253, 255, 0.1);
}
.play-icon img {
	width: max(16px, 24rem);
	height: max(16px, 24rem);
}
.res-slide h5 {
	margin: 0 0 8px;
}
.res-time {
	font-weight: 500;
	font-size: var(--h5);
	line-height: 110%;
	letter-spacing: -0.05em;
	color: rgba(29, 29, 29, 0.6);
}
.video-active .video-cover {
	z-index: 10;
}
.slick-arrow {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: max(46px, 46rem);
	height: max(46px, 46rem);
	font-size: 0;
	cursor: pointer;
	background: url(../images/slider-arrow.svg) 50% 50% no-repeat;
	border: 1px solid var(--secondary-yellow-green);
	border-radius: 50%;
	transition: all .2s;
}
.slick-arrow:hover {
	background-color: var(--secondary-yellow-green);
}
.slick-next {
	margin-left: max(12px, 12rem);
}
.slick-prev {
	margin-left: min(-58px, -58rem);
	transform: scale(-1, 1);
}
.slick-disabled {
	opacity: 0.2;
	pointer-events: none;
}

/************************* other-pages *************************/
/************************* hero *************************/
.hero {
	position: relative;
}
.hero-2 {
	padding: max(110px, 190rem) 0 max(30px, 30rem);
	background: url(../images/hero-2.jpg) 50% 50% no-repeat;
	background-size: cover;
}
.hero-3 {
	padding: max(110px, 190rem) 0 max(30px, 30rem);
	background: url(../images/hero-2.jpg) 50% 50% no-repeat;
	background-size: cover;
}
.hero-5 {
	padding: max(110px, 190rem) 0 max(250px, 350rem);
	background: url(../images/hero-5.jpg) 50% 50% no-repeat;
	background-size: cover;
}
.hero-6 {
	padding: max(110px, 190rem) 0 max(396px, 440rem);
	background: url(../images/hero-6.jpg) 50% 50% no-repeat;
	background-size: cover;
}
.hero-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: max(24px, 24rem);
	color: var(--primary-white);
	text-align: center;
}
.green {
	color: var(--secondary-yellow-green);
}
.hero-text {
	max-width: max(500px, 610rem);
	font-weight: 500;
	font-size: var(--h4);
	line-height: 120%;
	letter-spacing: -0.04em;
	color: rgba(255, 255, 255, 0.6);
}
.hero-2 h1 {
	max-width: max(450px, 940rem);
}
.hero-2 .hero-text {
	max-width: max(540px, 660rem);
}
.hero-2 .hero-block {
	padding: 0 0 max(60px, 180rem);
}
.hero-2 .holder {
    padding: 0 max(16px, 30rem);
}
.hero-box {
	background: var(--secondary-white-cyan);
	border-radius: max(16px, 20rem);
}
.hero-column {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: max(32px, 64rem);
	padding: max(30px, 120rem) max(30px, 145rem);
	text-align: center;
}
.hero-column h3 {
	max-width: max(490px, 880rem);
}
.hero-column-img {
	overflow: hidden;
	width: 100%;
	height: max(193px, 478rem);
	border-radius: max(16px, 20rem);
}
.hero-column-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.hero-3 h1 {
	max-width: max(360px, 700rem);
}
.hero-3 .hero-block {
	padding: 0 0 max(60px, 180rem);
}
.hero-3 .holder {
    padding: 0 max(16px, 30rem);
}
.hero-box-wrap {
	padding: max(30px, 120rem) max(30px, 50rem);
}
.hero-box-wrap h2 {
	max-width: max(380px, 740rem);
	margin: 0 auto max(32px, 64rem);
	text-align: center;
}
.hero-box-block {
	display: flex;
	justify-content: space-between;
	gap: max(32px, 64rem);
}
.hero-box-side {
	width: 44.5%;
	max-width: max(475px, 475rem);
}
.hero-box-img {
	width: 55.5%;
	height: max(400px, 500rem);
}
.hero-box-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: max(16px, 20rem);
}
.hero .breadcrumbs {
	position: absolute;
	top: max(55px, 110rem);
	left: max(16px, 50rem);
}
.hero .breadcrumbs li {
	color: rgba(255, 255, 255, 0.4);
}
.hero .breadcrumbs li a::before {
	background: url(../images/crumb-arrow-white.svg) 50% 50% no-repeat;
}
.hero .breadcrumbs li:last-child > span::before {
	background: url(../images/crumb-arrow-white.svg) 50% 50% no-repeat;
}
.hero .breadcrumbs li:last-child::before {
	color: rgba(255, 255, 255, 0.4);
}
.hero .breadcrumbs a {
	color: var(--primary-white);
}
@media screen and (min-width: 1480px) {
	.hero-3 .hero-box .text-inner {
		transition-delay: 0.5s;
	}
}
@media screen and (max-width: 1480px) {
	.hero-3 .hero-box .text-inner {
		transition-delay: 0.5s;
	}
	.hero-3 .hero-box .fade {
		transition-delay: 0.8s;
	}
}
@media screen and (max-width: 1024px) {
	.hero-3 .hero-box .hero-box-img.fade {
		transition-delay: 0.3s;
	}
}



/************************* section *************************/
.section {
	padding: max(80px, 180rem) 0;
}
.top {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: max(22px, 22rem);
	margin: 0 0 max(32px, 64rem);
	text-align: center;
}
.top h2 {
	max-width: max(320px, 620rem);
}
.top-text {
	max-width: max(520px, 620rem);
	font-weight: 500;
	font-size: var(--h4);
	line-height: 120%;
	letter-spacing: -0.04em;
}
.breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 0;
	margin: 0 0 max(32px, 32rem);
}
.breadcrumbs li {
	padding: 0;
	margin: 0;
	font-weight: 500;
	font-size: var(--link);
	line-height: 24px;
	letter-spacing: -0.06em;
	color: rgba(0, 70, 91, 0.4);
	list-style: none;
}
.breadcrumbs a {
	display: flex;
	align-items: center;
	gap: 8px;
	position: relative;
	font-weight: 500;
	font-size: var(--link);
	line-height: 24px;
	letter-spacing: -0.06em;
	color: var(--primary-dark-cyan);
	text-decoration: none;
}
.breadcrumbs a::before {
	display: block;
	content: '';
	width: 24px;
	height: 24px;
	background: url(../images/crumb-arrow.svg) 50% 50% no-repeat;
}
.breadcrumbs li:last-child > span {
	display: flex;
	align-items: center;
	gap: 8px;
}
.breadcrumbs li:last-child > span::before {
	display: block;
	content: '';
	width: 24px;
	height: 24px;
	background: url(../images/crumb-arrow.svg) 50% 50% no-repeat;
}
.breadcrumbs li:last-child a::before,
.breadcrumbs li:last-child span::before {
	opacity: 0.4;
}
.breadcrumbs li:first-child a::before {display: none;}
.breadcrumbs a:hover {
	opacity: 0.4;
}

/************************* what *************************/
.what {
	margin: 0 0 max(80px, 180rem);
}
.what:last-child {
	margin: 0;
}
.what-block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: max(24px, 40rem);
}
.what-item {
	position: relative;
	overflow: hidden;
	min-height: max(440px, 492rem);
	background: var(--secondary-white-cyan);
	border-radius: max(16px, 20rem);
}
.what-item img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.what-text {
	padding: max(30px, 80rem) max(30px, 45rem);
}
.what-text ul {
	padding-top: max(32px, 38rem);
}
.what-text ul:first-child {
	padding-top: 0;
}

/************************* founder *************************/
.founder {
	margin: 0 0 max(80px, 180rem);
}
.founder:last-child {
	margin: 0;
}
.founder-block {
	max-width: max(1000px, 1244rem);
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: max(24px, 40rem);
}
.founder-content {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: max(30px, 45rem);
	background: var(--secondary-white-cyan);
	border-radius: max(16px, 20rem);
}
.founder-photo {
	overflow: hidden;
	position: relative;
	min-height: max(540px, 575rem);
	border-radius: max(16px, 20rem);
}
.founder-photo img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/************************* principles *************************/
.principles {
	margin: 0 0 max(80px, 180rem);
}
.principles:last-child {
	margin: 0;
}
.principles .top h2 {
	max-width: max(420px, 820rem);
}
.principles .top-text {
	max-width: max(360px, 440rem);
}
.principles-block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: max(24px, 40rem);
}
.principles-item img {
	width: 100%;
	height: max(480px, 528rem);
	object-fit: cover;
	border-radius: max(16px, 20rem);
}



/************************* team *************************/
.team-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: max(22px, 22rem);
	margin: 0 0 max(32px, 64rem);
	text-align: center;
}
.team-top-text {
	max-width: max(660px, 760rem);
	font-weight: 500;
	font-size: var(--h4);
	line-height: 120%;
	letter-spacing: -0.04em;
}
.team-block {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: max(24px, 50rem) max(24px, 40rem);
	margin: 0 0 max(80px, 180rem);
}
.team-block:last-child {
	margin: 0;
}
.team-item {
	position: relative;
	overflow: hidden;
	color: var(--primary-white);
	text-decoration: none;
	background: var(--secondary-gray);
	border-radius: max(16px, 20rem);
}
a.team-item:hover .team-img {
	transform: scale(1.1);
}
.team-img {
	width: 100%;
	height: max(343px, 444rem);
	object-fit: cover;
	transform-origin: 50% 10%;
	transition: all 0.4s ease;
}
.team-wrap {
	position: absolute;
	overflow: hidden;
	inset: max(16px, 20rem);
	top: auto;
	min-height: max(112px, 112rem);
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 4px;
	padding: 16px;
	border-radius: 16px;
	backdrop-filter: blur(5px);
	background: rgba(0, 0, 0, 0.4);
	border: 1px solid rgba(222, 222, 222, 0.15);
}
.team-wrap::before {
	position: absolute;
	inset: 0px;
	content: '';
	backdrop-filter: blur(5px);
	background: rgba(0, 0, 0, 0.2);
	filter: url(#glass-effect);
	border-radius: 16px;
	display: none;
}
.team-name {
	position: relative;
	font-weight: 500;
	font-size: var(--h4);
	line-height: 120%;
	letter-spacing: -0.04em;
	color: var(--primary-white);
}
.team-position {
	position: relative;
	font-size: var(--text_3);
	line-height: 125%;
	letter-spacing: -0.05em;
	color: var(--primary-white);
}
.team-info {
	display: flex;
	flex-direction: column;
	justify-content: center;
	grid-column: 1 / 3;
	padding: max(30px, 45rem);
	background: var(--secondary-white-cyan);
	border-radius: max(16px, 20rem);
}
.team-info h2 {
	margin: 0 0 max(32px, 64rem);
}
.team-info-text {
	max-width: max(550px, 560rem);
	font-size: var(--text_3);
	line-height: 125%;
}
.team-info-text p {
	margin: 0 0 max(16px, 16rem);
}
.team-info-text p:last-child {
	margin: 0;
}

/************************* bio *************************/
.bio {
	padding: max(65px, 110rem) 0 max(80px, 180rem);
}
.bio .breadcrumbs {
	margin: 0 0 max(8px, 8px);
}
.bio-top {
	display: flex;
	gap: max(24px, 40rem);
}
.bio-top-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: max(22px, 24rem);
	width: 57.2%;
	padding: max(30px, 60rem);
	text-align: center;
	background: var(--secondary-white-cyan);
	border-radius: max(16px, 20rem);
}
.bio-position {
	font-weight: 500;
	font-size: var(--h4);
	line-height: 120%;
	letter-spacing: -0.04em;
	color: rgba(27, 69, 89, 0.6);
}
.bio-top-photo {
	flex: 1;
	overflow: hidden;
	border-radius: max(16px, 20rem);
}
.bio-top-photo img {
	width: 100%;
	height: max(444px, 600rem);
	object-fit: cover;
}
.bio-about {
	max-width: max(750px, 760rem);
	margin: 0 auto;
	padding: max(80px, 120rem) 0 max(80px, 140rem);
	font-size: var(--text_3);
	line-height: 125%;
}
.bio-about p {
	margin: 0 0 max(12px, 16rem);
}
.bio-about p:last-child {
	margin: 0;
}
.bio-stat {
	margin: 0 0 max(24px, 40rem);
	padding: max(30px, 80rem) max(30px, 45rem);
	background: var(--secondary-white-cyan);
	border-radius: max(16px, 20rem);
}
.bio-stat-item {
	display: flex;
	justify-content: space-between;
	padding: max(20px, 20rem) 0;
	border-bottom: 1px solid rgba(27, 69, 89, 0.2);;
}
.bio-stat-item:first-child {
	padding-top: 0;
}
.bio-stat-item:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}
.bio-stat-item h4 {
	width: calc(50% - 20px);
}
.bio-stat-text {
	position: relative;
	width: calc(50% - 20px);
	padding: 0 0 0 18px;
	font-size: var(--text_3);
	line-height: 125%;
	list-style-type: disc;
}
.bio-stat-text::before {
	position: absolute;
	top: 11px;
	left: 0;
	content: '';
	width: 5px;
    height: 5px;
	background: var(--primary-dark-cyan);
	border-radius: 50%;
}
.bio-bottom {
	display: flex;
	gap: max(24px, 40rem);
}
.bio-bottom-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 65.8%;
	padding: max(30px, 60rem);
	text-align: center;
	background: var(--secondary-white-cyan);
	border-radius: max(16px, 20rem);
}
.bio-bottom-block h3 {
	width: 100%;
	max-width: max(330px, 630rem);
}
.bio-bottom-photo {
	flex: 1;
	overflow: hidden;
	border-radius: max(16px, 20rem);
}
.bio-bottom-photo img {
	width: 100%;
	height: max(444px, 525rem);
	object-fit: cover;
}

/************************* contact *************************/
.contact {
	padding: max(65px, 110rem) 0 max(80px, 160rem);
}
.contact .breadcrumbs {
	margin: 0 max(20px, 20rem) max(8px, 8px);
}
.section-contact {
	padding: 0 0 max(80px, 180rem);
}
.contact .holder {
	padding: 0 max(16px, 30rem);
}
.contact-block {
	display: flex;
	align-items: flex-start;
	gap: max(24px, 78rem);
	padding: max(24px, 24rem) max(20px, 20rem);
	background: var(--secondary-white-cyan);
	border-radius: max(16px, 20rem);
}
.contact-img {
	width: 40%;
	overflow: hidden;
	border-radius: max(16px, 20rem);
}
.contact-img img {
	width: 100%;
	height: max(640px, 738rem);
	object-fit: cover;
}
.contact-content {
	width: 100%;
	max-width: max(540px, 640rem);
	margin: 0 auto;
	padding: max(10px, 19rem) 0;
}
.contact-content h2 {
	margin: 0 0 max(22px, 20rem);
	text-align: center;
}
.contact-text {
	max-width: max(410px, 500rem);
	margin: 0 auto max(32px, 32rem);
	text-align: center;
}
.form-result {
	display: none;
}
.form-sent .form-main {
	display: none;
}
.form-sent .form-result {
	display: block;
}

/************************* fma *************************/
.fma {
	padding: max(65px, 110rem) 0 max(80px, 160rem);
}
.fma-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: max(22px, 22rem);
	margin: 0 0 max(32px, 54rem);
	text-align: center;
}
.fma-top-text {
	width: 100%;
	max-width: max(640px, 760rem);
	font-weight: 500;
	font-size: var(--h4);
	line-height: 120%;
	letter-spacing: -0.04em;
}
.fma-block {
	display: flex;
	gap: max(24px, 40rem);
}
.fma-content {
	width: 40%;
	min-width: 40%;
	padding: max(30px, 54rem) max(30px, 45rem);
	background: var(--secondary-white-cyan);
	border-radius: max(16px, 20rem);
}
.fma-text {
	margin: 0 0 max(32px, 32rem);
	font-size: var(--text_3);
	line-height: 125%;
}
.list li {
	position: relative;
	padding: max(20px, 20rem) 0 max(20px, 20rem) 30px;
	font-size: var(--text_3);
	line-height: 125%;
	border-bottom: 1px solid rgba(27, 69, 89, 0.2);
}
.list li::before {
    position: absolute;
    top: calc(11px + max(20px, 20rem));
    left: 13px;
    content: '';
    width: 5px;
    height: 5px;
    background: var(--primary-dark-cyan);
    border-radius: 50%;
}
.list li:first-child::before {
	top: 11px;
}
.list li:first-child {
	padding-top: 0;
}
.fma-photo {
	flex: 1;
	overflow: hidden;
	position: relative;
	min-height: max(444px, 550rem);
	border-radius: max(16px, 20rem);
}
.fma-photo img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/************************* serv *************************/
.serv {
	padding: 0 0 max(80px, 160rem);
}
.serv-block {
	position: relative;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: max(24px, 40rem);
	margin-top: min(-170px, -170rem);
}
.serv-item {
	padding: max(24px, 40rem);
	background: var(--secondary-white-cyan);
	border-radius: 16px;
	color: var(--primary-dark-cyan);
	text-decoration: none;
	transition: all 0.2s;
}
a.serv-item:hover {
	background: var(--secondary-yellow-green);
}
.serv-num {
	margin: 0 0 max(18px, 18rem);
	font-size: max(16px, 16rem);
	line-height: 125%;
	letter-spacing: -0.06em;
}
.serv-item h4 {
	margin: 0 0 max(16px, 20rem);
}
.serv-text {
	font-size: var(--text_3);
	line-height: 125%;
}

/************************* policy *************************/
.policy {
	padding: 0 0 max(60px, 180rem);
}
.policy .holder {
    padding: 0 max(16px, 30rem);
}
.policy-block {
	position: relative;
	margin-top: min(-260px, -260rem);
	padding: max(30px, 120rem) max(30px, 60rem);
	border-radius: max(16px, 20rem);
	background: var(--secondary-white-cyan);
}
.policy-wrap {
	max-width: max(680px, 730rem);
	margin: 0 auto;
}
.policy h4 {
	margin: 0 0 max(16px, 20rem);
	padding-top: max(32px, 40rem);
}
.policy h4:first-child {
	padding-top: 0;
}
.policy ul,
.policy ol {
	margin: 0 0 max(16px, 16rem);
}
.policy ul:last-child,
.policy ol:last-child {
	margin: 0;
}
.policy ul li {
	position: relative;
	padding: 0 0 0 30px;
	line-height: 125%;
}
.policy ul li::before {
    position: absolute;
    top: 11px;
    left: 13px;
    content: '';
    width: 5px;
    height: 5px;
    background: var(--primary-dark-cyan);
    border-radius: 50%;
}
.policy ol {
	padding: 0 0 0 30px;
}

/************************* 404 *************************/
.page404 {
	position: relative;
	overflow: hidden;
}
.page404-bg {
	position: absolute;
	inset: 0;
}
.page404-bg video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.page404-bg::after {
	position: absolute;
	inset: 0;
	z-index: 25;
	content: '';
	background: rgba(0, 0, 0, 0.4);
}
.page404 .holder {
	position: relative;
	z-index: 30;
}
.page404-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: max(625px, 800rem);
	max-height: 100dvh;
	gap: max(32px, 40rem);
	color: var(--primary-white);
	text-align: center;
}

/************************* footer *************************/
.footer {
	margin: auto 0 0;
	padding: 1px max(16px, 30rem) max(16px, 16rem);
	background: url(../images/footer-bg.jpg) 50% 50% no-repeat;
	background-size: cover;
}
.bottom-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: max(80px, 220rem) 0;
	color: var(--primary-white);
	text-align: center;
}
.bottom-block h2 {
	max-width: max(420px, 860rem);
	margin: 0 0 max(24px, 24rem);
}
.bottom-block h2:last-child {
	margin: 0;
}
.bottom-block h2 span {
	color: var(--secondary-yellow-green);
}
.bottom-block-text {
	max-width: max(490px, 592rem);
	margin: 0 0 max(32px, 40rem);
	font-weight: 500;
	font-size: var(--h4);
	line-height: 120%;
	letter-spacing: -0.04em;
}
.bottom-text-2 {
	max-width: max(720px, 860rem);
}
.bottom-text-4 {
	max-width: max(400px, 470rem);
}
.bottom-block-text:last-child {
	margin: 0;
}
.footer-block {
	padding: max(24px, 50rem) max(16px, 50rem) max(26px, 36rem);
	background: var(--primary-white);
	border-radius: max(16px, 20rem);
}
.footer-block:first-child {
	margin-top: max(32px, 34rem);
}
.footer-top {
	display: flex;
	justify-content: space-between;
	padding: 0 0 max(40px, 167rem);
}
.footer-side {
	width: 42%;
}
.footer-content {
	width: 51.2%;
	display: flex;
	justify-content: space-between;
}
.footer-mid {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	padding: 0 0 max(32px, 48rem);
}
.footer-logo img {
	width: max(134px, 241rem);
}
.footer-title {
	margin: 0 0 max(20px, 24rem);
	font-weight: 500;
	font-size: var(--h5);
	line-height: 110%;
	letter-spacing: -0.05em;
	color: rgba(29, 29, 29, 0.4);
}
.footer-nav {
	display: flex;
	flex-direction: column;
	gap: max(12px, 16rem);
}
.footer-nav li {
	font-weight: 500;
	font-size: var(--text_2);
	line-height: 100%;
	letter-spacing: -0.06em;
}
.footer-nav-link {
	position: relative;
	color: var(--primary-dark-cyan);
	text-decoration: none;
}
.footer-nav-link::after {
	position: absolute;
	left: 0;
	bottom: 1px;
	content: '';
	height: 1px;
	background: var(--primary-dark-cyan);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.footer-nav-link:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}
.footer-contacts {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.footer-contacts-item {
	display: flex;
	align-items: flex-end;
	gap: 10px;
}
.footer-contacts-item .footer-title {
	width: 78px;
	min-width: 78px;
	margin: 0;
}
.footer-contacts-item .footer-nav-link {
	font-weight: 500;
	font-size: var(--text_2);
	line-height: 100%;
	letter-spacing: -0.06em;
}
.footer-text {
	max-width: max(420px, 420rem);
	font-weight: 500;
	font-size: var(--text_4);
	line-height: 120%;
	letter-spacing: -0.06em;
	color: rgba(29, 29, 29, 0.4);
}
.footer-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: max(22px, 22rem) 0 0;
	border-top: 1px solid rgba(29, 29, 29, 0.1);
}
.footer-copy {
	font-weight: 500;
	font-size: var(--text_4);
	line-height: 120%;
	letter-spacing: -0.06em;
	color: rgba(29, 29, 29, 0.4);
}
.footer-links {
	display: flex;
	gap: max(24px, 36rem);
}
.footer-link {
	position: relative;
	font-weight: 500;
	font-size: var(--text_2);
	line-height: 100%;
	letter-spacing: -0.06em;
	color: rgba(29, 29, 29, 0.4);
	text-decoration: none;
}
.footer-link:hover {
	color: var(--primary-dark-cyan);
}
.footer-link::after {
	position: absolute;
	left: 0;
	bottom: 0px;
	content: '';
	height: 1px;
	background: var(--primary-dark-cyan);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.footer-link:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}
.footer-studio {
	font-weight: 500;
	font-size: var(--link);
	line-height: 100%;
	letter-spacing: -0.06em;
	color: var(--primary-dark-cyan);
}
.footer-studio img {
	display: inline-block;
	vertical-align: top;
	width: max(25px, 25rem);
	margin: 0 1px;
}
.footer-studio a {
	position: relative;
	color: var(--primary-dark-cyan);
	text-decoration: none;
}
.footer-studio a::after {
	position: absolute;
	left: 0;
	bottom: 0px;
	content: '';
	height: 1px;
	background: var(--primary-dark-cyan);
	transform: scaleX(0);
    transform-origin: right;
    transition: transform 1s var(--ease-out-expo);
    width: 100%;
}
.footer-studio a:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}

/************************* animations *************************/
.fade {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.5s ease-in-out 0.3s, transform 1.3s var(--power3-out) 0.3s;
}
.fade.ani_start {
	opacity: 1;
	transform: translateY(0px);
}
.reveal {
	width: 100%;
	opacity: 0;
}
.reveal.ani_start {opacity: 1;}
.reveal-box {
	display: flex;
	flex-direction: column;
}
.text-wrap {
	overflow: hidden;
	padding: 15px 0;
	margin: -15px 0;
}
.text-inner {
	transition: transform 1.3s var(--power3-out);
	transform: translateY(calc(100% + 20px));
}
.ani_start .text-inner {
	transform: translateY(0%);
}

/************************* media *************************/
@media screen and (max-width: 1320px) {
	.footer-side {
		width: 30%;
	}
	.footer-content {
		width: 64%;
	}
	.team-block {
		grid-template-columns: repeat(3, 1fr);
	}
	.team-img {
		height: max(343px, 600rem);
	}
	.main-serv-block {
		grid-template-columns: repeat(2, 1fr);
	}
	.mh-num-text {
		font-size: 16px;
		line-height: 125%;
	}

}
@media screen and (max-width: 1024px) {
	
	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(--primary-white);
		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-top: 87px;
		padding-bottom: 82px;
		flex-direction: column;
		justify-content: flex-start;
		align-items: stretch;
	}
	.header-nav-list {
		display: block;
		padding: 0 max(16px, 50rem);
		height: 100%;
		margin: 0;
		overflow-y: auto;
	}
	.header-nav-list > li {
		overflow: hidden;
		border-bottom: 1px solid rgba(0, 70, 91, 0.4);
	}
	.header-nav-list > li > a {
		display: flex;
		gap: 2px;
		padding: 14px 0 16px;
		font-weight: 500;
		font-size: 36px;
		line-height: 40px;
		letter-spacing: -0.06em;
		color: var(--primary-dark-cyan);
	}
	.header-nav-list > li:first-child > a {
		padding-top: 0;
	}
	.nav-parent {
		margin: 0;
	}
	.nav-parent.nav-active::after {
		transform: rotate(180deg);
	}
	.nav-parent::before {display: none;}
	.nav-parent::after {
		position: relative;
		top: auto;
		right: auto;
		width: 40px;
		height: 40px;
		margin-top: 0;
		background: url(../images/nav-arrow-2.svg) 50% 50% no-repeat;
		background-size: contain;
	}
	.subnav {
		position: relative;
		top: auto;
		left: auto;
		padding: 0 0 15px;
		background: none;
	}
	.subnav li {margin: 0 0 8px;}
	.subnav li:last-child {margin: 0;}
	.subnav a {
		position: relative;
		padding: 0;
		font-weight: 500;
		font-size: 18px;
		line-height: 125%;
		letter-spacing: -0.06em;
		color: var(--primary-dark-cyan);
	}
	.subnav a::after{
		display: none;
	}
	.header-white:not(.header-fixed) .subnav {
		background: none;
	}
	.header-white:not(.header-fixed) .subnav a {
		color: #172b23;
	}
	.header-button {
		position: absolute;
		top: auto;
		right: 0;
		left: 0;
		bottom: 0;
		z-index: 50;
		padding: max(16px, 50rem);
		background: var(--primary-white);
	}
	.header-button .button-reverse,
	.header-button .button-reverse:hover {
		color: var(--primary-dark-cyan);
		background: var(--secondary-yellow-green);
		border-color: var(--secondary-yellow-green);
	}
	.header-button .button-reverse path,
	.header-button .button-reverse:hover path {
		stroke: var(--primary-dark-cyan);
	}
	.header-button .button {
		width: 100%;
		justify-content: space-between;
	}
	body.lock .logo-white {opacity: 0;}
	body.lock .logo-dark {opacity: 1;}
	body.lock .mob-nav-icon,
	.header-white .mob-nav-icon,
	.header-fixed .mob-nav-icon {color: var(--primary-dark-cyan);}
	.button-min {
		height: max(60px, 60rem);
		padding: 0 max(32px, 32rem);
	}
	.footer-top {
		flex-direction: column;
		gap: 40px;
		padding: 0 0 32px;
	}
	.footer-side {
		width: auto;
	}
	.footer-content {
		width: auto;
	}
	.footer-top .footer-content {
		flex-direction: column;
		gap: 32px;
	}
	.footer-mid {
		flex-direction: column-reverse;
		align-items: stretch;
		gap: 32px;
		padding: 0 0 32px;
	}
	.footer-nav li {
		line-height: 125%;
	}
	.footer-bottom {
		flex-direction: column;
		align-items: stretch;
		gap: 32px;
		padding: 32px 0 0;
	}
	.footer-bottom .footer-content {
		flex-direction: column;
		align-items: flex-start;
		gap: 24px;
	}
	.footer-links {
		flex-direction: column;
		align-items: flex-start;
		gap: 24px;
	}
	.footer-contacts {
		gap: 32px;
	}
	.footer-contacts-item {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}
	.footer-contacts-item .footer-nav-link {
		line-height: 125%;
	}
	.footer-contacts-item .footer-nav-link::after {
		display: none;
	}
	.serv-block {
		grid-template-columns: repeat(1, 1fr);
		gap: max(32px, 40rem);
	}
	.contact .breadcrumbs {
		margin: 0 0 32px;
	}
	.contact-block {
		flex-direction: column;
		gap: 32px;
		padding: 0;
		background: none;
		border-radius: 0;
	}
	.contact-img {
		width: 100%;
	}
	.contact-img img {
		height: max(444px, 738rem);
		object-position: 50% 0;
	}
	.contact-content {
		max-width: none;
		padding: 0;
	}
	.contact-content h2 {
		text-align: left;
	}
	.contact-text {
		max-width: max(300px, 500rem);
		margin: 0 0 32px;
		text-align: left;
	}
	.form-sent .contact-text {
		max-width: none;
	}
	.fma-block {
		flex-direction: column-reverse;
		gap: max(16px, 40rem);
	}
	.fma-photo {
		min-height: max(193px, 750rem);
	}
	.fma-content {
		width: 100%;
	}
	.bio-top-block {
		width: 52%;
	}
	.bio-bottom-block {
		width: 52%;
	}
	.what-block {
		grid-template-columns: repeat(1, 1fr);
		gap: max(16px, 40rem);
	}
	.what-item {
		min-height: 1px;
	}
	.what-item img {
		position: relative;
		top: auto;
		left: auto;
		height: max(193px, 700rem);
	}
	.founder-block {
		display: flex;
		flex-direction: column-reverse;
		gap: max(16px, 40rem);
	}
	.founder-photo {
		min-height: 1px;
		height: max(350px, 700rem);
	}
	.principles-block {
		grid-template-columns: repeat(1, 1fr);
		gap: max(16px, 40rem);
	}
	.principles-item img {
		height: max(350px, 700rem);
	}
	.hero-box-block {
		flex-direction: column;
		gap: max(32px, 64rem);
	}
	.hero-box-side {
		width: 100%;
		max-width: none;
	}
	.hero-box-img {
		width: 100%;
		height: max(193px, 800rem);
	}
	.team-block {
		grid-template-columns: repeat(2, 1fr);
	}
	.team-img {
		height: max(343px, 920rem);
	}
	.banner-1 .banner-scroller,
	.banner-2 .banner-scroller {
		background: none;
	}
	.banner-scroller {
		height: auto;
	}
	.banner-col {
		width: auto;
		padding: 0 0 max(16px, 40rem);
		color: var(--primary-dark-cyan);
	}
	.banner-2 .banner-col {width: auto;}
	.banner-col h4 {
		margin: 0 0 max(32px, 64rem);
	}
	.banner-img {
		display: block;
		overflow: hidden;
		height: max(193px, 700rem);
		border-radius: 16px;
	}
	.banner-img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.banner-side {
		position: relative;
		top: auto;
		bottom: auto;
		right: auto;
		height: auto;
		width: auto;
		border-radius: 16px;
	}
	.banner-side h3 {
		max-width: max(240px, 420rem);
	}
	.banner-part {
		opacity: 1;
		transform: translateY(0px);
	}
	.main-serv-item .button-min {
        height: max(48px, 48rem);
        padding: 0 15px;
		gap: 4px;
    }
	.review-item {
		flex-direction: column;
		gap: max(16px, 40rem);
	}
	.review-video {
		width: 100%;
		height: max(193px, 700rem);
	}
	.review-content {
		width: 100%;
	}
	.process-scroll {
		display: block;
	}
	.process-col {
		width: auto;
	}
	.process-col:first-child {
		padding-right: 0;
	}
	.process-video {
		max-width: none;
		height: max(234px, 700rem);
	}
	.process-title {
		display: none;
	}
	.process-col .process-title {
		display: block;
		padding: max(32px, 64rem) 0 0;
	}
	.process-list {
		gap: 24px;
		padding: 0 0 0 28px;
	}
	.process-mark {
		top: 11px;
		bottom: -41px;
		left: -28px;
		width: 12px;
	}
	.main-hero {
		margin: 0;
	}
	.mh-box-button {
		display: none;
	}
	.process-content {
		height: auto;
	}
	.process-content::after {display: none;}
	.mh-box-main {
		padding: max(32px, 64rem) 0 0;
	}

	
}
@media screen and (max-width: 767px) {
	.hero {
		padding-top: max(65px, 110rem);
		background: url(../images/hero-5-mob.jpg) 50% 50% no-repeat;
		background-size: cover;
	}
	.hero .breadcrumbs {
		position: relative;
		top: auto;
		left: auto;
	}
	.hero-block {
		align-items: flex-start;
		text-align: left;
	}
	.hero-text {
		line-height: 110%;
		letter-spacing: -0.06em;
	}
	.hero-5 h1 {
		max-width: max(280px, 400rem);
	}
	.policy-block {
		margin-top: -336px;
	}
	.page404-block {
		align-items: flex-start;
		text-align: left;
	}
	h1, .h1 {
		letter-spacing: -0.06em;
	}
	h2, .h2 {
		letter-spacing: -0.06em;
	}
	h3, .h3 {
		letter-spacing: -0.09em;
	}
	h4, .h4 {
		line-height: 110%;
		letter-spacing: -0.06em;
	}
	h5, .h5 {
		line-height: 125%;
		letter-spacing: -0.06em;
	}
	.button {
		width: 100%;
		gap: 16px;
		justify-content: space-between;
		text-align: left;
		line-height: 125%;
	}
	.serv-block {
		margin-top: -190px;
	}
	.serv-num {
		font-size: 18px;
		line-height: 125%;
	}
	.serv-item h4 {
		margin: 0 0 max(16px, 20rem);
	}
	.serv-text {
		font-size: var(--text_3);
		line-height: 125%;
	}
	.bottom-block {
		align-items: flex-start;
		text-align: left;
	}
	.bottom-block-text {
		line-height: 110%;
		letter-spacing: -0.06em;
	}
	.footer {
		background: url(../images/footer-bg-mob.jpg) 50% 50% no-repeat;
		background-size: cover;
	}
	.input-box .wpcf7-form-control-wrap {
		width: 100%;
	}
	.form-button {
		padding: 0;
		text-align: center;
	}
	.fma-top {
		align-items: flex-start;
		text-align: left;
	}
	.fma-top-text {
		line-height: 110%;
		letter-spacing: -0.06em;
	}
	.bio .breadcrumbs {
		margin: 0 0 32px;
	}
	.bio-top {
		flex-direction: column;
		gap: 16px;
	}
	.bio-top-block {
        width: 100%;
		align-items: flex-start;
		text-align: left;
    }
	.bio-position {
		line-height: 110%;
		letter-spacing: -0.06em;
	}
	.bio-stat {
		margin: 0 0 16px;
	}
	.bio-stat-item {
		flex-direction: column;
		gap: 16px;
	}
	.bio-stat-item h4,
	.bio-stat-text {
		width: 100%;
	}
	.bio-bottom {
		flex-direction: column;
		gap: 16px;
	}
	.bio-bottom-block {
		width: 100%;
		align-items: flex-start;
		text-align: left;
	}
	.hero-column {
		text-align: left;
	}
	.hero-column h3 {
		max-width: none;
		font-size: 30px;
		line-height: 100%;
		letter-spacing: -0.03em;
	}
	.top {
		align-items: flex-start;
		text-align: left;
	}
	.what-text p,
	.founder-text p,
	.principles-item p {
		margin: 0 0 max(12px, 16rem);
	}
	.hero-box-wrap h2 {
		margin: 0 0 max(22px, 64rem);
		text-align: left;
	}
	.team-top {
		align-items: flex-start;
		text-align: left;
	}
	.team-top-text {
		line-height: 110%;
		letter-spacing: -0.06em;
	}
	.main-serv {
		background: url(../images/serv-bg-mob.jpg) 50% 50% no-repeat;
    	background-size: cover;
	}
	.main-serv-block {
		grid-template-columns: repeat(1, 1fr);
		gap: 32px;
	}
	.main-promo-block {
		align-items: flex-start;
		text-align: left;
	}
	.review {
		position: relative;
		padding-bottom: 92px;
	}
	.review-top {
		flex-direction: column;
	}
	.review-top .button {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
	}
	.review-content {
		text-align: left;
	}
	.review-text {
		letter-spacing: -0.06em;
	}
	.review-text::before {
		left: 0;
		transform: translateX(0%);
	}
	.res-slider {
		display: flex;
		flex-direction: column;
		gap: 32px;
		width: auto;
		padding: 0;
	}
	.res-slide {
		max-width: none;
		padding: 0;
	}
	.res-video {
		height: max(193px, 800rem);
	}
	.res {
		position: relative;
		padding: 0 0 92px;
	}
	.res-top .button {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
	}
	.res-top {
		display: block;
	}
	.tabs {
		display: none;
	}
	.tabs-mob {
		display: block;
		position: relative;
		z-index: 50;
	}
	.tabs-mob-top {
		display: flex;
		align-items: center;
		overflow: hidden;
		position: relative;
		height: 44px;
		padding: 0 50px 0 20px;
		font-weight: 500;
		font-size: 16px;
		line-height: 125%;
		letter-spacing: -0.06em;
		text-align: center;
		text-overflow: ellipsis;
		text-decoration: none;
		color: var(--primary-dark-cyan);
		border: 1px solid var(--primary-dark-cyan);
		border-radius: 30px;
	}
	.tabs-mob-top::after {
		position: absolute;
		top: 11px;
		right: 20px;
		content: '';
		width: 20px;
		height: 20px;
		background: url(../images/select-arrow.svg) 50% 50% no-repeat;
		background-size: contain;
		transition: all 0.3s;
	}
	.tabs-mob-top.active::after {
		transform: rotate(180deg);
	}
	.tabs-mob-hidden {
		display: none;
		position: absolute;
		top: 100%;
		margin-top: 4px;
		left: 0;
		right: 0;
		z-index: 50;
		padding: 7px 0;
		background: var(--primary-white);
		border: 1px solid var(--primary-dark-cyan);
		border-radius: 30px;
	}
	.tabs-mob-item {
		padding: 12px 16px;
	}
	.tabs-mob-reset {
		font-weight: 500;
		font-size: var(--button);
		line-height: 125%;
		letter-spacing: -0.06em;
		color: var(--primary-dark-cyan);
		text-decoration: none;
	}
	.main-hero {
		background: url(../images/main-hero-mob.jpg) 50% 0% no-repeat;
		background-size: cover;
	}
	.mh-top {
		align-items: flex-start;
		text-align: left;
	}
	.mh-top-text {
		line-height: 110%;
		letter-spacing: -0.06em;
	}
	.mh-logos {
		justify-content: flex-start;
	}
	.mh-num {
		flex-direction: column;
		padding: 0;
		border-bottom: 1px solid 0;
	}
	.mh-num-item {
		width: auto;
		padding: max(24px, 40rem) 0 max(26px, 41rem);
		text-align: left;
		border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	}
	.mh-num-value {
		letter-spacing: -0.03em;
	}
	.mh-num-text {
        max-width: 270px;
		font-size: 20px;
		line-height: 125%;
    }
	.mh-num-text br {display: none;}
	.mh-box-top {
		align-items: flex-start;
		text-align: left;
	}
	.mh-box-text {
		line-height: 110%;
		letter-spacing: -0.06em;
	}
	.process-list-text {
		line-height: 110%;
		letter-spacing: -0.06em;
	}
	.wpcf7-form-control-wrap input {
		height: 56px;
	}


}
@media screen and (max-width: 576px) {
	.header-block {
		align-items: flex-start;
		height: 66px;
		padding-top: 16px;
	}
	.mob-nav-icon {
        padding-top: 1px;
    }
	.team-block {
		grid-template-columns: repeat(1, 1fr);
		gap: 32px;
	}
	.team-img {
		height: max(444px, 1800rem);
	}
	.team-info {
		display: flex;
		flex-direction: column;
		justify-content: center;
		grid-column: 1 / 2;
		padding: max(30px, 45rem);
		background: var(--secondary-white-cyan);
		border-radius: max(16px, 20rem);
	}
	.team-info-text p {
		margin: 0 0 32px;
	}

}