

/* Start:/local/templates/im/assets/css/global/vars.css?17798897784352*/
/*типографика НАЧАЛО*/
:root {
    --title-family: 'onest-agf', Arial, Helvetica, sans-serif;
    --title-weight: 900;

    --text-family: 'onest-agf', Arial, Helvetica, sans-serif;
    --text-weight: 400;

    --text-fz: 20rem;
    --line-height: 1.8;

    --h1-fz: 80rem;
    --h2-fz: 56rem;
    --h2-lh: 1.2;
    --h3-fz: 42rem;
    --h4-fz: 32rem;
    /*/Плитка продукции из фигмы*/
    --h5-fz: 28rem;
    --h5-lh: 1.5;
    --title-mt: 80rem;

    --list-fz: 24rem;
    --list-lh: 1.4;
    --list-gap: 20rem;

    --big-text-fz: 24rem;
    --big-text-lh: 1.8;

    --text-gap: 40rem;
    --list-gap: 20rem;
    --text-max-width: 1200rem;

    --paragraph-spacing: 15rem;
}

@media (max-width: 1280px) {
    :root {
        --text-fz: 18rem;
        --line-height: 1.6;

        --h1-fz: 66rem;
        --h2-fz: 46rem;
        --h2-lh: 1.2;
        --h3-fz: 36rem;
        --h4-fz: 26rem;
        --title-mt: 60rem;

        --list-fz: 20rem;
        --list-lh: 1.4;
        --list-gap: 15rem;

        --big-text-fz: 20rem;
        --big-text-lh: 1.6;

        --text-gap: 30rem;
        --list-gap: 15rem;

    }
}

@media (max-width: 1024px) {
    :root {
        --text-fz: 18rem;
        --line-height: 1.6;

        --h1-fz: 46rem;
        --h2-fz: 38rem;
        --h2-lh: 1.1;
        --h3-fz: 28rem;
        --h4-fz: 22rem;
        --h5-fz: 24rem;
        --h5-lh: 1.3;
        --title-mt: 40rem;

        --list-fz: 18rem;
        --list-lh: 1.6;
        --list-gap: 10rem;

        --big-text-fz: 18rem;
        --big-text-lh: 1.6;

        --text-gap: 20rem;
        --list-gap: 10rem;

        --paragraph-spacing: 10rem;
    }
}

@media (max-width: 768px) {
    :root {
        --text-fz: 16rem;
        --line-height: 1.6;

        --h1-fz: 36rem;
        --h2-fz: 32rem;
        --h2-lh: 1.1;
        --h3-fz: 24rem;
        --h4-fz: 18rem;
        --h5-fz: 18rem;


        --list-fz: 16rem;
        --list-lh: 1.6;
        --list-gap: 10rem;

        --big-text-fz: 16rem;
        --big-text-lh: 1.6;

        --text-gap: 15rem;

        --paragraph-spacing: 5rem;
    }
}

@media (max-width: 480px) {
    :root {
        --text-fz: 15rem;
        --line-height: 1.6;

        --h1-fz: 32rem;
        --h2-fz: 28rem;
        --h2-lh: 1.1;
        --h3-fz: 20rem;
        --h4-fz: 18rem;
        --h5-fz: 15rem;
        --h5-lh: 1.6;
        --title-mt: 20rem;

        --list-fz: 15rem;
        --list-lh: 1.6;
        --list-gap: 10rem;

        --big-text-fz: 15rem;
        --big-text-lh: 1.6;

        --text-gap: 10rem;

    }
}


/*цвета НАЧАЛО*/
:root {
    --black-color: #1F1F1F;
    --white-color: #fff;

    --main-color: #4C9425;
    --main-hover-color: #77BD39;

    --link-color: #686868;
    --link-hover-color: #A1A1A1;

    --red-color: #FA3030;

    --dark-color: #0F262B;
    /*todo: заменить на dark*/
    --dark-bg-color: #0F262BE5;
    --black-bg-color: #0F262BE5;

    --line-color: #3B606733;
    --ligt-bg-color: #ECF2F5;

    --vk-color: #5181B8;
    --vk-hover-color: #4177b5;
}

/*контейнеры НАЧАЛО*/
:root {
    --container-width: 1480rem;
    --container-padding: 40rem;

    --main-section-gap: 180rem;
    --section-gap: 160rem;

    --asside-gap: 120rem;
    --asside-width: 441rem;
}

@media (max-width: 1280px) {
    :root {
        --container-padding: 40rem;

        --main-section-gap: 120rem;
        --section-gap: 120rem;

        --asside-gap: 80rem;
        --asside-width: 320rem;
    }
}

@media (max-width: 1024px) {
    :root {
        --container-padding: 30rem;

        --main-section-gap: 80rem;
        --section-gap: 80rem;

        --asside-gap: 60rem;
        --asside-width: 100%;
    }
}

@media (max-width: 768px) {
    :root {
        --container-padding: 20rem;

        --main-section-gap: 60rem;
        --section-gap: 60rem;

        --asside-gap: 40rem;
    }
}

@media (max-width: 480px) {
    :root {
        --container-padding: 15rem;

        --main-section-gap: 40rem;
        --section-gap: 40rem;
    }
}


:root {
    --transition-timing-function: ease;
    --transition-duration: 0.2s;

    --border-radius: 30rem;
}


@media (max-width: 1280px) {
    :root {
        --border-radius: 20rem;
    }
}

@media (max-width: 768px) {
    :root {
        --border-radius: 10rem;
    }
}
/* End */


/* Start:/local/templates/im/assets/css/global/reset.css?1762453865489*/
*,
*::after,
*::before {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

input,
textarea {
    outline: none;
    border: none;
    font-size: inherit;
    color: inherit;
    font-family: inherit;
}

input::placeholder,
textarea::placeholder {
    color: inherit;
}

button {
    border: none;
    outline: none;
    cursor: pointer;
    font-family: inherit;
    font-size: inherit;
    background-color: transparent;
}

a {
    color: inherit;
    text-decoration: none;
}
/* End */


/* Start:/local/templates/im/assets/css/global/font.css?17624538654829*/
@font-face {
    font-family: 'onest-agf';
    src: url('/local/templates/im/assets/font/Onest-Black.eot');
    src: url('/local/templates/im/assets/font/Onest-Black.eot?#iefix') format('embedded-opentype'),
        url('/local/templates/im/assets/font/Onest-Black.woff2') format('woff2'),
        url('/local/templates/im/assets/font/Onest-Black.woff') format('woff'),
        url('/local/templates/im/assets/font/Onest-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'onest-agf';
    src: url('/local/templates/im/assets/font/Onest-ExtraBold.eot');
    src: url('/local/templates/im/assets/font/Onest-ExtraBold.eot?#iefix') format('embedded-opentype'),
        url('/local/templates/im/assets/font/Onest-ExtraBold.woff2') format('woff2'),
        url('/local/templates/im/assets/font/Onest-ExtraBold.woff') format('woff'),
        url('/local/templates/im/assets/font/Onest-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'onest-agf';
    src: url('/local/templates/im/assets/font/Onest-Bold.eot');
    src: url('/local/templates/im/assets/font/Onest-Bold.eot?#iefix') format('embedded-opentype'),
        url('/local/templates/im/assets/font/Onest-Bold.woff2') format('woff2'),
        url('/local/templates/im/assets/font/Onest-Bold.woff') format('woff'),
        url('/local/templates/im/assets/font/Onest-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* @font-face {
    font-family: 'onest-agf';
    src: url('/local/templates/im/assets/font/Onest-SemiBold.eot');
    src: url('/local/templates/im/assets/font/Onest-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('/local/templates/im/assets/font/Onest-SemiBold.woff2') format('woff2'),
        url('/local/templates/im/assets/font/Onest-SemiBold.woff') format('woff'),
        url('/local/templates/im/assets/font/Onest-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
} */

/* @font-face {
    font-family: 'onest-agf';
    src: url('/local/templates/im/assets/font/Onest-Medium.eot');
    src: url('/local/templates/im/assets/font/Onest-Medium.eot?#iefix') format('embedded-opentype'),
        url('/local/templates/im/assets/font/Onest-Medium.woff2') format('woff2'),
        url('/local/templates/im/assets/font/Onest-Medium.woff') format('woff'),
        url('/local/templates/im/assets/font/Onest-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
 */
@font-face {
    font-family: 'onest-agf';
    src: url('/local/templates/im/assets/font/Onest-Regular.eot');
    src: url('/local/templates/im/assets/font/Onest-Regular.eot?#iefix') format('embedded-opentype'),
        url('/local/templates/im/assets/font/Onest-Regular.woff2') format('woff2'),
        url('/local/templates/im/assets/font/Onest-Regular.woff') format('woff'),
        url('/local/templates/im/assets/font/Onest-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* @font-face {
    font-family: 'onest-agf';
    src: url('/local/templates/im/assets/font/Onest-Light.eot');
    src: url('/local/templates/im/assets/font/Onest-Light.eot?#iefix') format('embedded-opentype'),
        url('/local/templates/im/assets/font/Onest-Light.woff2') format('woff2'),
        url('/local/templates/im/assets/font/Onest-Light.woff') format('woff'),
        url('/local/templates/im/assets/font/Onest-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
} */

/* @font-face {
    font-family: 'onest-agf';
    src: url('/local/templates/im/assets/font/Onest-ExtraLight.eot');
    src: url('/local/templates/im/assets/font/Onest-ExtraLight.eot?#iefix') format('embedded-opentype'),
        url('/local/templates/im/assets/font/Onest-ExtraLight.woff2') format('woff2'),
        url('/local/templates/im/assets/font/Onest-ExtraLight.woff') format('woff'),
        url('/local/templates/im/assets/font/Onest-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
} */

/* @font-face {
    font-family: 'onest-agf';
    src: url('/local/templates/im/assets/font/Onest-Thin.eot');
    src: url('/local/templates/im/assets/font/Onest-Thin.eot?#iefix') format('embedded-opentype'),
        url('/local/templates/im/assets/font/Onest-Thin.woff2') format('woff2'),
        url('/local/templates/im/assets/font/Onest-Thin.woff') format('woff'),
        url('/local/templates/im/assets/font/Onest-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}
 */

/* End */


/* Start:/local/templates/im/assets/css/template/main.css?177988982419625*/
pre {
	display: block;
	padding: 9.5px;
	margin: 0 0 10px;
	font-size: 13px;
	line-height: 1.4;
	word-break: break-all;
	word-wrap: break-word;
	color: black;
	background-color: lightgray;
	border: 1px solid gray;
	border-radius: 4px;
}

pre code {
	padding: 0;
	font-size: inherit;
	color: inherit;
	white-space: pre-wrap;
	background-color: transparent;
	border-radius: 0;
}

body::selection {
	background: var(--main-hover-color);
	color: var(--white-color);
}

*::-moz-selection {
	background: var(--main-hover-color);
	color: var(--white-color);
}


html {
	font-size: 1px;
}

@media (min-width:1921px) {
	html {
		font-size: 1.1px;
	}
}


html>body {
	font-family: var(--text-family);
	font-weight: var(--text-weight);
	font-size: var(--text-fz);
	line-height: var(--line-height);

	font-style: normal;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 100svh;
	margin: 0;
	min-width: 320rem;
	color: var(--black-color);
}

body._lock {
	overflow-y: hidden;
	padding-right: var(--scroll-bar-width);
}

body._lock header.header._fixed {
	padding-right: var(--scroll-bar-width);
}


body::before {
	content: '';
	position: fixed;
	display: flex;
	width: 100%;
	height: 100%;
	inset: 0;
	z-index: 23;
	pointer-events: none;
	opacity: 0;
	background: rgba(0, 0, 0, 0.25);
	transition: opacity 0.4s var(--transition-timing-function);
}

body._backdrop::before {
	opacity: 1;
	pointer-events: all;
}

html>body>.content {
	flex: 1 0 0;
	display: flex;
	flex-direction: column;
}

main {
	display: flex;
	flex-direction: column;
	gap: var(--section-gap);
}

main._main {
	gap: var(--main-section-gap);
}


/*----*/

.container {
	margin: 0 auto;
	max-width: calc(var(--container-width) + var(--container-padding)*2);
	padding-left: var(--container-padding);
	padding-right: var(--container-padding);
	width: 100%;
	position: relative;
}

.aside-page {
	display: flex;
	gap: var(--asside-gap);
}

.aside-page>section {
	width: 100%;
}

.aside-page>aside {
	width: var(--asside-width);
	flex-shrink: 0;
}

@media (max-width: 1024px) {
	.aside-page {
		flex-direction: column;
	}
}

/* типографика НАЧАЛО */
img,
picture {
	line-height: 1;
}

picture,
img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

picture {
	display: flex;
}

a {
	transition: color var(--transition-duration) var(--transition-timing-function);
	color: var(--main-color);
}

a.inter {
	color: var(--link-color);
}

@media (min-width: 1025px) {
	a:hover {
		color: var(--main-hover-color);
	}

	a.inter:hover {
		color: var(--link-hover-color);
	}
}

@media (max-width: 1024px) {
	a:active {
		color: var(--main-hover-color);
	}

	a.inter:active {
		color: var(--link-hover-color);
	}
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
	font-family: var(--title-family);
	font-weight: var(--title-weight);
}

h1,
.h1 {
	font-size: var(--h1-fz);
	line-height: var(--h1-lh);
	line-height: 1;
}

h2,
.h2 {
	font-size: var(--h2-fz);
	line-height: var(--h2-lh);
}

h3,
.h3 {
	font-size: var(--h3-fz);
	line-height: 1.2;
}

h4,
.h4 {
	/*/Плитка продукции из фигмы*/
	font-size: var(--h4-fz);
	font-weight: 800;
	line-height: 1.1;
}

h5,
.h5 {
	font-size: var(--h5-fz);
	font-weight: 700;
	line-height: var(--h5-lh);
}

p+h2,
p+.h2 {
	margin-top: var(--title-mt);
}

p {
	margin: var(--text-gap) 0;
	max-width: var(--text-max-width);
}

p._big {
	font-size: var(--big-text-fz);
	line-height: var(--big-text-lh);
}

p:first-child {
	margin-top: 0;
}

p:last-child {
	margin-bottom: 0;
}

ul {
	--marker-widht: 28rem;
	--marker-height: calc(var(--list-fz) * var(--list-lh));
	--marker-gap: 15rem;
}

ul.check {
	--marker-widht: 32rem;
}

@media (max-width: 1280px) {
	ul.check {
		--marker-widht: 28rem;
	}
}

@media (max-width: 1024px) {
	ul {
		--marker-widht: 16rem;
		--marker-gap: 10rem;
	}
}

@media (max-width: 768px) {
	ul {
		--marker-gap: 8rem;
	}

	ul.check {
		--marker-widht: 22rem;
		--list-gap: 8rem;
	}
}

@media (max-width: 768px) {
	ul.check {
		--marker-widht: 19rem;
	}
}

ol {
	max-width: var(--text-max-width);
}

ul {
	list-style: none;
	margin: var(--text-gap) 0;
	max-width: var(--text-max-width);
}

ul:last-child {
	margin-bottom: 0;
}

ul>li {
	position: relative;
	padding-left: calc(var(--marker-widht) + var(--marker-gap));
	margin-bottom: var(--list-gap);

	font-size: var(--list-fz);
	line-height: var(--list-lh);
}

ul>li:last-child {
	margin-bottom: 0;
}

ul>li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: var(--marker-widht);
	height: var(--marker-height);
	background-image: url("/local/templates/im/assets/css/template/../../images/svg/line.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

ul.check>li::before {
	background-image: url("/local/templates/im/assets/css/template/../../images/svg/check.svg");
}

ol,
ol ol,
ol ul {
	counter-reset: li;
	list-style: none;
	font-size: var(--list-fz);
	line-height: var(--list-lh);
}

ol._small,
ol._small ol,
ol._small ul {
	font-size: var(--text-fz);
	line-height: var(--line-height);
}

ol._small ul {
	--list-fz: var(--text-fz);
	--list-lh: var(--line-height);
}


section>ol>li:has(ul, ol) {
	margin-top: var(--title-mt);
	margin-bottom: var(--title-mt);
}

section>ol>li:has(ul, ol):first-child {
	margin-top: 0;
}

section>ol>li:has(ul, ol):last-child {
	margin-bottom: 0;
}

ol>li {
	margin-bottom: var(--list-gap);
}

ol>li:last-child {
	margin-bottom: 0;
}

ol li>ol,
ol li>ul {
	margin-top: var(--list-gap);
	margin-bottom: var(--list-gap);
}

ol>li>ol>li>ul {
	padding-left: 1.4em;
}

ol li>ol:first-child,
ol li>ul:first-child {
	margin-top: 0;
}

ol li>ol:last-child,
ol li>ul:last-child {
	margin-bottom: 0;
}


ol ol>li::before,
ol>li::before {
	content: counters(li, ".") ". ";
	counter-increment: li;
	font-weight: 700
}

div>p {
	margin: 0;
}

div>p+p {
	margin-top: var(--paragraph-spacing);
}

/*класс для быстро обнуления типографики*/
nav>ul,
nav>ul>li ul,
.reset {
	max-width: unset;
	margin: 0;
}

ul.reset>li,
ul.reset>li ul>li,
nav>ul li,
nav>ul li ul>li {
	padding: 0;
	margin: 0;
}

ol.reset ol>li::before,
ol.reset>li::before,
ul.reset li::before,
nav>ul li::before {
	display: none;
	background: none;
}

h1.reset {
	font-size: initial;
	line-height: initial;
	font-family: var(--text-family);
	font-weight: var(--text-weight);
}

.sub-h2 {
	margin-top: 30rem;
	font-size: 28rem;
	line-height: 1.5;
}

@media (max-width: 1280px) {
	.sub-h2 {
		font-size: 20rem;
		line-height: 1.6;
	}
}

@media (max-width: 1024px) {
	.sub-h2 {
		margin-top: 20rem;
		font-size: 18rem;
	}
}

@media (max-width: 768px) {
	.sub-h2 {
		margin-top: 15rem;
		font-size: 16rem;
	}
}

@media (max-width: 480px) {
	.sub-h2 {
		margin-top: 10rem;
		font-size: 15rem;
	}
}

/* типографика КОНЕЦ */

section .description {
	--descr-m: 30rem 0 60rem;
	--descr-fz: 28rem;
}

@media (max-width: 1280px) {
	section .description {
		--descr-fz: 20rem;
	}
}

@media (max-width: 1024px) {
	section .description {
		--descr-m: 20rem 0 40rem;
		--descr-fz: 18rem;
	}
}

@media (max-width: 768px) {
	section .description {
		--descr-m: 15rem 0 30rem;
		--descr-fz: 16rem;
	}
}

@media (max-width: 480px) {
	section .description {
		--descr-m: 10rem 0 20rem;
		--descr-fz: 15rem;
	}
}

section .description {
	margin: var(--descr-m);
	font-size: var(--descr-fz);
	line-height: 1.5;
}

/*----*/

.social-link {
	--gap: 20rem;
	--icon-size: 40rem;
}

@media (max-width: 1280px) {
	.social-link {
		--gap: 15rem;
		--icon-size: 36rem;
	}
}

@media (max-width: 1024px) {
	.social-link {
		--gap: 10rem;
		--icon-size: 30rem;
	}
}

.social-link {
	display: flex;
	gap: var(--gap);
}

.social-link a {
	display: flex;
	width: var(--icon-size);
	height: var(--icon-size);
}

@media (min-width: 1025px) {
	.social-link a:hover {
		color: var(--main-hover-color);
	}
}

@media (max-width: 1024px) {
	.social-link a:active {
		color: var(--main-hover-color);
	}
}

.social-link a svg {
	width: 100%;
	height: 100%;
}

/*----*/

.partner-link {
	display: flex;
	align-items: center;
	gap: 5rem;
	width: fit-content;

	font-size: 16rem;
	line-height: 1.4;
}

.partner-link span.icon {
	display: flex;
	width: 16rem;
	height: 16rem;
	overflow: hidden;
	border-radius: 50%;
}

/*----*/

.banner-full {
	--banner-full-height: auto;
}

@media (max-width: 768px) {
	.banner-full {
		--banner-full-height: 180rem;
	}
}

@media (max-width: 480px) {
	.banner-full {
		--banner-full-height: 200rem;
	}
}

.banner-full {
	display: flex;
	width: 100%;
	height: var(--banner-full-height);

	aspect-ratio: 74 / 21;

	border-radius: var(--border-radius);
	overflow: hidden;
}

/*----*/

.main-description {
	--title-mb: 60rem;
	--banner-mb: 40rem;
}

@media (max-width: 1280px) {
	.main-description {
		--banner-mb: 30rem;
	}
}

@media (max-width: 1024px) {
	.main-description {
		--title-mb: 40rem;
	}
}

@media (max-width: 768px) {
	.main-description {
		--title-mb: 30rem;
		--banner-mb: 20rem;
	}
}

@media (max-width: 480px) {
	.main-description {
		--title-mb: 20rem;
	}
}

.main-description h2 {
	margin-bottom: var(--title-mb);
}

.main-description .banner-full {
	margin-bottom: var(--banner-mb);
}

/*----*/
.play-button {
	--play-btn-size: 120rem;
}

@media (max-width: 1024px) {
	.play-button {
		--play-btn-size: 64rem;
	}
}

.play-button {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);

	display: flex;
	align-items: center;
	justify-content: center;
	font-size: var(--play-btn-size);
	color: var(--white-color);

	width: 1em;
	height: 1em;
	border-radius: 50%;

	background-color: #231F2099;
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
	transition: background-color var(--transition-duration) var(--transition-timing-function);
}

.play-button svg {
	width: 0.5em;
	height: 0.5em;
}

/*----*/

.img-text {
	--wrapper-mt: 80rem;
	--img-size: 380rem;
	--wrapper-gap: 60rem;
	--title-mb: 25rem;
	--text-gap: 30rem;
}

@media (max-width: 1280px) {
	.img-text {
		--wrapper-mt: 60rem;
		--img-size: 340rem;
		--wrapper-gap: 40rem;
		--title-mb: 25rem;
		--text-gap: 20rem;
	}
}

@media (max-width: 1024px) {
	.img-text {
		--wrapper-mt: 40rem;
		--img-size: 220rem;

		--list-fz: var(--text-fz);
		--list-lh: var(--line-height);
	}

	.img-text._big {
		--img-size: 220rem;
	}
}

@media (max-width: 768px) {
	.img-text {
		--wrapper-mt: 30rem;
		--wrapper-gap: 30rem;
		--title-mb: 10rem;
		--text-gap: 10rem;
	}
}

@media (max-width: 480px) {
	.img-text {
		--wrapper-mt: 20rem;
		--wrapper-gap: 20rem;
	}
}

.img-text {
	display: flex;
	gap: var(--wrapper-gap);
}

h2+.img-text,
.h2+.img-text {
	margin-top: var(--wrapper-mt);
}

.img-text img {
	width: var(--img-size);
	height: var(--img-size);
	border-radius: 50%;
}

.img-text__text {
	margin: auto 0;
}

.img-text__text h4 {
	margin-bottom: var(--title-mb);
}

.img-text__text h4+*,
.img-text__text .h4+* {
	margin-top: 0;
}



@media (max-width: 768px) {
	.img-text {
		flex-wrap: wrap;
	}

	.img-text._reverse {
		flex-wrap: wrap-reverse;
	}

	.img-text__text {
		flex: 1 1 400rem
	}
}

@media (max-width: 480px) {
	.img-text {
		flex-direction: column;
	}

	.img-text img {
		border-radius: 10rem;
		width: 100%;
		height: 220rem;
	}


	.img-text__text {
		flex: 1 0 0
	}
}

/*----*/
._animate,
section:not(.hero, ._not-animate),
aside {
	opacity: 0;
	transform: translateY(100rem);

	transition: opacity 1s var(--transition-timing-function),
		transform 1s var(--transition-timing-function);
}

._animate._load,
section._load,
aside._load {
	opacity: 1;
	transform: translateY(0);
}

/*----*/

.sticker-img {
	--wrapper-gap: 60rem;

	--img-width: 460rem;
	--img-height: 100%;

	--img-aspect-ratio: 460 / 330;

	--sticker-position: 20rem;
	--sticker-padding: 4rem 13rem 4rem 10rem;
	--sticker-gap: 7rem;
	--sticker-fz: 16rem;
	--sticker-lh: 1.4;

	--title-mb: 30rem;
}

.sticker-img._square {
	--wrapper-mt: 60px;

	--img-width: 400rem;
	--img-height: max-content;
	--img-aspect-ratio: 1 / 1;
}

@media (max-width: 1280px) {
	.sticker-img {
		--wrapper-gap: 40rem;
		--img-width: 400rem;

		--title-mb: 20rem;
	}

	.sticker-img._square {
		--wrapper-mt: 40px;

		--img-width: 340rem;
	}
}


@media (max-width: 1024px) {
	.sticker-img {
		--img-width: 260rem;
		--img-height: 186rem;
	}

	.sticker-img._square {
		--img-width: 220rem;
	}
}

@media (max-width: 768px) {
	.sticker-img {
		--wrapper-gap: 30rem;
		--img-width: 220rem;
		--img-height: 157rem;

		--title-mb: 15rem;
	}

	.sticker-img._square {
		--wrapper-mt: 30px;
	}
}

@media (max-width: 480px) {
	.sticker-img {
		--wrapper-gap: 20rem;
		--img-width: 100%;
		--img-height: 220rem;

		--sticker-position: 10rem;
		--sticker-fz: 14rem;
		--sticker-lh: 1.3;

		--title-mb: 10rem;
	}

	.sticker-img._square {
		--wrapper-gap: 30rem;
		--wrapper-mt: 20px;
	}
}


.sticker-img {
	display: flex;
	flex-direction: row;
	gap: var(--wrapper-gap);
}

.sticker-img._after-title {
	margin-top: var(--wrapper-mt);
}

.sticker-img__img {
	width: var(--img-width);
	height: var(--img-height);
	aspect-ratio: var(--img-aspect-ratio);

	border-radius: var(--border-radius);
	overflow: hidden;
	position: relative;
	flex-shrink: 0;
}

.sticker-img__img:hover .play-button {
	background-color: #231F20E5;
}

.sticker-img__sticker {
	position: absolute;
	top: auto;
	left: var(--sticker-position);
	bottom: var(--sticker-position);
	padding: var(--sticker-padding);

	display: flex;
	align-items: center;
	gap: var(--sticker-gap);
	border-radius: 30rem;

	background-color: var(--dark-bg-color);

	font-size: var(--sticker-fz);
	line-height: var(--sticker-lh);

	color: var(--white-color);
}

.sticker-img__sticker svg {
	color: var(--main-hover-color);
}

.sticker-img h3,
.sticker-img .h3 {
	margin-bottom: var(--title-mb);
}

.sticker-img__wrapper {
	margin: auto 0;
}

.sticker-img__wrapper p {
	margin: 0;
}

.sticker-img__wrapper div>p+p {
	margin-top: var(--paragraph-spacing);
}


@media (max-width: 768px) {
	.sticker-img {
		flex-wrap: wrap;
	}

	.sticker-img__wrapper {
		flex: 1 1 400rem;
	}
}

@media (max-width: 480px) {
	.sticker-img {
		flex-direction: column;
	}

	.sticker-img__wrapper {
		flex: 1 0 0;
	}
}


/*модификаторы */
/*flex*/
[class^="flex-"] {
	display: flex;
}

.flex-column {
	flex-direction: column;
}

/*gap*/
.xl-gap-80 {
	gap: 80rem;
}

@media (max-width: 1024px) {
	.m-gap-60 {
		gap: 60rem;
	}
}

@media (max-width: 768px) {
	.s-gap-40 {
		gap: 40rem;
	}
}

/*width*/
@media (max-width: 480px) {
	.xs-width-100p {
		width: 100% !important;
	}
}

/*font-size*/
.xl-fz-16 {
	font-size: 16rem;
}

@media (max-width: 480px) {
	.xs-fz-15 {
		font-size: 15rem;
	}
}

/*margin-top*/
.xl-mt-30 {
	margin-top: 30rem;
}

.xl-mt-60 {
	margin-top: 60rem;
}

.xl-mt-80 {
	margin-top: 80rem;
}

@media (max-width: 1280px) {
	.l-mt-20 {
		margin-top: 20rem;
	}

	.l-mt-60 {
		margin-top: 60rem;
	}
}

@media (max-width: 1024px) {
	.m-mt-40 {
		margin-top: 40rem;
	}
}

@media (max-width: 768px) {
	.s-mt-30 {
		margin-top: 30rem;
	}

	.s-mt-15 {
		margin-top: 15rem;
	}
}

@media (max-width: 480px) {
	.xs-mt-20 {
		margin-top: 20rem;
	}

	.xs-mt-10 {
		margin-top: 10rem;
	}
}

.c-green {
	color: var(--main-color);
}

/*height*/
.xl-height-50 {
	height: 50rem !important;
}

img._top {
	object-position: top;
}

/*fancybox*/
@media (max-width: 1024px) {

	.f-button.is-arrow.is-prev,
	.f-button.is-arrow.is-next {
		display: none;
	}
}

/*каунтер у заголовка */
:root {
	--title-counter-fz: 22rem;
	--title-counter-padding: 4rem 12rem;
}

@media (max-width: 1280px) {
	:root {
		--title-counter-fz: 20rem;
	}
}

@media (max-width: 768px) {
	:root {
		--title-counter-fz: 16rem;
		--title-counter-padding: 3rem 10rem;
	}
}

h2[data-count],
.h2[data-count] {
	display: flex;
}

h2[data-count]::after,
.h2[data-count]::after {
	content: attr(data-count);
	display: flex;
	justify-content: center;
	align-items: center;
	padding: var(--title-counter-padding);
	border-radius: 30rem;
	box-shadow: inset 0 0 0 2rem var(--main-color);
	margin-left: 10rem;
	align-self: start;

	color: var(--main-color);

	font-weight: 900;
	font-size: var(--title-counter-fz);
	line-height: 1;
}

@keyframes fade {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes fadeUpDown {
	from {
		opacity: 0;
		transform: translateY(-100%);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes fadeDownUp {
	from {
		opacity: 0;
		transform: translateY(100rem);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes fadeDownUpReverse {
	from {
		opacity: 1;
		transform: translateY(0);
	}

	to {
		opacity: 0;
		transform: translateY(100rem);
	}
}


@keyframes fadeRightLeft {
	from {
		opacity: 0;
		transform: translateX(100rem);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes fadeRightLeftReverse {
	from {
		opacity: 1;
		transform: translateX(0);
	}

	to {
		opacity: 0;
		transform: translateX(100rem);
	}
}

/*скрываем плашку капчи */
div:has(.grecaptcha-badge),
div.grecaptcha-badge {
	display: none !important;
}

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


/*всплывающая плашка */
.notification {
	--close-size: 44rem;
	--close-position: 15rem;

	--wrapper-position: var(--container-padding);

	--wrapper-width: 770rem;
	--wrapper-padding: 30rem 40rem 40rem;
	--wrapper-gap: 25rem;

	--text-fz: 16rem;
	--text-lh: 1.4;

	--btn-width: 271rem;
	--btn-height: 60rem;
	--btn-fz: 18rem;
	--btn-lh: 1.4;
}

@media (max-width: 1280px) {
	.notification {
		--close-position: 10rem;

		--wrapper-width: 625rem;
		--wrapper-padding: 30rem;
		--wrapper-gap: 20rem;

		--text-fz: 15rem;

		--btn-width: 257rem;
		--btn-fz: 15rem;
	}
}

@media (max-width: 1024px) {
	.notification {
		--wrapper-width: 565rem;
		--text-lh: 1.3;

		--btn-width: 217rem;
		--btn-height: 50rem;
	}
}

@media (max-width: 768px) {
	.notification {
		--wrapper-width: calc(100% - (2 * var(--container-padding)));
		--wrapper-padding: 20rem;

		--text-fz: 14rem;
		--text-lh: 1.3;

		--btn-width: 197rem;
		--btn-height: 45rem;
		--btn-lh: 1.3;
	}
}

@media (max-width: 480px) {
	.notification {
		--close-size: 32rem;
		--wrapper-padding: 15rem;
		--wrapper-gap: 15rem;

		--btn-width: 100%;
	}
}

.notification {
	position: fixed;
	z-index: 5;
	inset: auto var(--wrapper-position) var(--wrapper-position) auto;

	display: flex;
	gap: var(--wrapper-gap);
	flex-direction: column;
	padding: var(--wrapper-padding);
	border-radius: var(--border-radius);

	background-color: var(--ligt-bg-color);
	max-width: var(--wrapper-width);

	animation: 1s 1 normal ease both 1.6s;
	animation-name: fadeRightLeft;

	box-shadow: 0px 4px 14.4px rgba(0, 0, 0, 0.25);
}

.notification__close {
	position: absolute;
	inset: var(--close-position) var(--close-position) auto auto;
	transition: color var(--transition-duration) var(--transition-timing-function);
	color: var(--line-color);
}

.notification__text {
	font-size: var(--text-fz);
	line-height: var(--text-lh);
}

.notification .site-btn {
	font-size: var(--btn-fz);
	line-height: var(--btn-lh);
}

.notification__close:focus {
	color: var(--main-hover-color);
}

.notification._close {
	animation-name: fadeRightLeftReverse;
	animation-delay: 0s;
	animation-duration: .6s;
	pointer-events: none;
}

@media (min-width: 1025px) {
	.notification__close:hover {
		color: var(--main-hover-color);
	}
}

@media (max-width: 768px) {
	.notification {
		animation-name: fadeDownUp;
	}

	.notification._close {
		animation-name: fadeDownUpReverse;
	}
}
/* End */


/* Start:/local/templates/im/assets/css/template/burger.css?17624538656408*/
.burger-button {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}


.burger-button use {
    transition: opacity var(--transition-duration) var(--transition-timing-function);

}

.burger-button use[href="#icon-burger-close"] {
    opacity: 0;
}

.burger-button._open use[href="#icon-burger"] {
    opacity: 0;
}

.burger-button._open use[href="#icon-burger-close"] {
    opacity: 1;
}

.burger-menu {
    --padding-top: 150rem;

    --menu-row-gap: 30rem;
    --menu-column-gap: 100rem;
    --menu-column-count: 4;
    --contact-mt: 0;
    --social-link-mt: 30rem;
    --partner-link-mt: 30rem;


    --menu-title-fz: 28rem;
    --menu-title-lh: 1.5;
    --menu-title-mb: 20rem;
    --menu-title-weight: 700;

    --menu-item-fz: 20rem;
    --menu-item-lh: 1.4;

    --menu-item-icon-size: 32rem;
    --menu-item-icon-mr: 12rem;
}

@media (max-width: 1280px) {
    .burger-menu {
        --padding-top: 105rem;

        --menu-column-gap: 50rem;

        --menu-title-fz: 20rem;
        --menu-title-lh: 1.6;
        --menu-title-mb: 15rem;

        --menu-item-fz: 18rem;
        --menu-item-lh: 1.5;

        --menu-item-icon-size: 24rem;
        --menu-item-icon-mr: 7rem;
    }
}

@media (max-width: 1024px) {
    .burger-menu {
        --padding-top: 65rem;

        --menu-column-gap: 40rem;
        --menu-column-count: 2;
        --menu-row-gap: 40rem;

        --menu-title-fz: 18rem;
        --menu-title-lh: 1.6;
        --menu-title-mb: 10rem;

        --menu-item-fz: 18rem;
        --menu-item-lh: 1.5;

        --menu-item-icon-size: 24rem;
    }
}

@media (max-width: 768px) {
    .burger-menu {
        --padding-top: 45rem;

        --menu-column-gap: 20rem;
        --menu-row-gap: 30rem;
        --contact-mt: 40rem;
        --social-link-mt: 40rem;
        --partner-link-mt: 15rem;

        --menu-title-fz: 18rem;
        --menu-title-lh: 1.3;
        --menu-title-mb: 10rem;

        --menu-item-fz: 16rem;
        --menu-item-lh: 1.4;

        --contact-gap: 5rem;
        --contact-fz: 16rem;
        --contact-lh: 1.4;
        --contact-icon-size: 20rem;
    }
}

@media (max-width: 480px) {
    .burger-menu {
        --padding-top: 30rem;

        --menu-column-count: 1;
        --social-link-mt: 20rem;
        --partner-link-mt: 20rem;

        --menu-title-fz: 20rem;
        --menu-title-lh: 1.2;
        --menu-title-mb: 10rem;
        --menu-title-weight: 900;

        --menu-item-fz: 16rem;
        --menu-item-lh: 1.4;

        --contact-gap: 10.5rem;
        --contact-fz: 15rem;
        --contact-lh: 1.3;
        --contact-icon-size: 18rem;
    }
}


.burger-menu {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100dvh;
    background-color: var(--black-bg-color);
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    opacity: 0;
    transition: opacity var(--transition-duration) var(--transition-timing-function);
    pointer-events: none;

    padding-top: var(--header-height);
}

.burger-menu .container {
    height: 100%;
    overflow: auto;
}


.burger-menu._open {
    opacity: 1;
    pointer-events: all;
}

.burger-menu__wrapper {
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-top);
    padding-inline: var(--header-fixed-container-padding);
    column-count: var(--menu-column-count);
    column-gap: var(--menu-column-gap);
}

.burger-menu__menu,
.burger-menu__menu nav,
.burger-menu__menu nav>ul,
.burger-menu__menu>ul {
    display: contents;
}


.burger-menu__menu a {
    color: var(--white-color);
}

@media (min-width: 1025px) {
    .burger-menu__menu ul a:hover {
        color: var(--main-hover-color);
    }
}

@media (max-width: 1024px) {
    .burger-menu__menu ul a:active {
        color: var(--main-hover-color);
    }
}

.burger-menu__menu ul>li>ul {
    margin: 0;
}


/*заголовок*/
.burger-menu__menu nav>ul>li,
.burger-menu__menu>ul>li {
    font-weight: var(--menu-title-weight);
    font-size: var(--menu-title-fz);
    line-height: var(--menu-title-lh);
    padding: 0;
    color: var(--white-color);

    page-break-inside: avoid;
    margin-bottom: var(--menu-row-gap);
}

.burger-menu__menu nav>ul>li:last-child {
    margin-bottom: 0;
}


.burger-menu__menu ul>li>ul {
    margin-top: var(--menu-title-mb);
}

.burger-menu__menu ul>li>ul>li {
    padding: 10rem 0;
    width: fit-content;

    font-weight: 400;
    font-size: var(--menu-item-fz);
    line-height: var(--menu-item-lh);
}


.burger-menu__menu ul>li>a {
    position: relative;
}

.burger-menu__menu ul>li>a>.icon {
    display: flex;
    width: var(--menu-item-icon-size);
    height: var(--menu-item-icon-size);

    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.burger-menu__menu ul>li>a>.icon+span {
    padding-left: calc(var(--menu-item-icon-size) + var(--menu-item-icon-mr));
}




/*----*/

.burger-menu__contact {
    display: none;
    flex-direction: column;
    gap: var(--contact-gap);
    margin-top: var(--contact-mt);
}

.burger-menu__contact a {
    display: flex;
    gap: 5rem;

    font-weight: 700;
    font-size: var(--contact-fz);
    line-height: var(--contact-lh);
    color: var(--white-color);
}

.burger-menu__contact a svg {
    color: var(--main-color);
    width: var(--contact-icon-size);
    height: var(--contact-icon-size);
    align-self: end;
    transition: color var(--transition-duration) var(--transition-timing-function);
}


@media (max-width: 768px) {
    .burger-menu__contact {
        display: flex;
    }

    .burger-menu__contact a:active,
    .burger-menu__contact a:active svg {
        color: var(--main-hover-color);
    }
}

/*----*/


.burger-menu__wrapper .social-link {
    margin-top: var(--social-link-mt);
    --gap: 15rem;
}

.burger-menu__wrapper .partner-link {
    margin-top: var(--partner-link-mt);
}

@media (max-width: 1024px) {
    .burger-menu__wrapper .social-link {
        --gap: 10rem;
    }
}

/*----*/

.burger-menu .site-btn {
    display: none;
}

@media (max-width: 480px) {
    .burger-menu .site-btn {
        --btn-width: 100%;
        --btn-height: 50rem;

        margin-top: 30rem;
        display: flex;

        font-size: 15rem;
        line-height: 1.3;
    }
}

@media (max-width: 400px) {
    .burger-menu .site-btn {
        --btn-height: 45rem;

        font-size: 14rem;
        line-height: 1.4;
    }
}
/* End */


/* Start:/local/templates/im/assets/css/template/header.css?176245386512768*/
:root {
    --header-fixed-container-padding: 20rem;
}

.header {
    --header-gap: 40rem;
    --header-link-height: 50rem;
    --burger-button-size: 42rem;
    --burger-button-ml: 20rem;

    --header-top-padding: 10rem;
    --header-top-menu-gap: 40rem;

    --top-menu-fz: 16rem;
    --top-menu-lh: 1.4;

    --header-bottom-padding: 20rem;
    --header-bottom-menu-gap: 40rem;

    --bottom-menu-fz: 20rem;
    --bottom-menu-lh: 1.4;

    --logo-width: 210rem;

    --header-fixed-padding: 15rem;
    --header-fixed-radius: 20rem;

    --contact-gap: 5rem 43rem;
    --contact-fz: 16rem;
    --contact-lh: 1.4;
    --contact-item-gap: 7rem;
    --contact-icon-size: 20rem;

    --btn-fz: 16rem;
    --btn-lh: 1.4;
    --btn-padding: 30rem;
    --btn-height: 50rem;
}

.header._fixed {
    --contact-gap: 40rem;
    --contact-fz: 20rem;
    --contact-lh: 1.4;
    --contact-item-gap: 7rem;
    --contact-icon-size: 24rem;
}

@media (max-width: 1280px) {
    .header {
        --burger-button-ml: 10rem;

        --header-top-padding: 15rem;
        --header-top-menu-gap: 25rem;
        --top-menu-fz: 18rem;
        --top-menu-lh: 1.5;

        --header-bottom-padding: 20rem;
        --header-bottom-menu-gap: 20rem;

        --bottom-menu-fz: 18rem;
        --bottom-menu-lh: 1.5;

        --contact-fz: 15rem;

        --btn-fz: 15rem;
        --btn-lh: 1.4;
        --btn-padding: 30rem;
        --btn-height: 50rem;
    }

    .header._fixed {
        --logo-width: 165rem;

        --contact-gap: 0.5rem 22rem;
        --contact-fz: 18rem;
        --contact-lh: 1.5;
        --contact-item-gap: 5rem;
        --contact-icon-size: 24rem;

        --btn-padding: 25rem;
        --btn-height: 45rem;
    }
}

@media (max-width: 1024px) {
    .header {
        --header-link-height: 45rem;

        --header-top-padding: 14rem;

        --header-bottom-padding: 15rem;

        --bottom-menu-fz: 16rem;
        --bottom-menu-lh: 1.5;

        --contact-gap: 5rem 25rem;
        --contact-fz: 15rem;
        --contact-lh: 1.3;
        --contact-item-gap: 5rem;
        --contact-icon-size: 18rem;

        --btn-fz: 15rem;
        --btn-lh: 1.3;
        --btn-padding: 30rem;
        --btn-height: 45rem;
    }

    .header._fixed {
        --contact-gap: 15rem;
        --contact-fz: 15rem;
        --contact-lh: 1.3;
        --contact-item-gap: 5rem;
        --contact-icon-size: 18rem;

        --btn-padding: 25rem;
    }
}

@media (max-width: 768px) {
    .header {
        --burger-button-ml: 15rem;

        --header-top-padding: 15rem;

        --header-bottom-padding: 15rem;

        --logo-width: 165rem;

        --header-fixed-radius: 10rem;

        --btn-fz: 16rem;
        --btn-lh: 1.4;
        --btn-padding: 30rem;
        --btn-height: 45rem;
    }

    .header._fixed {
        --btn-fz: 15rem;
        --btn-lh: 1.3;
        --btn-padding: 25rem;
    }
}


@media (max-width: 480px) {
    :root {
        --header-fixed-container-padding: 15rem;
    }

    .header {
        --header-top-padding: 10rem;

        --logo-width: 138rem;

        --header-fixed-padding: 10rem;

        --btn-fz: 15rem;
        --btn-lh: 1.3;
        --btn-padding: 20rem;
        --btn-height: 40rem;
    }

    .header._fixed {
        --logo-width: 138rem;

        --btn-fz: 16rem;
        --btn-lh: 1.4;
        --btn-height: 40rem;
        --btn-padding: 20rem;
    }
}

@media (max-width: 400px) {
    .header._fixed {
        --header-fixed-container-padding: 10rem;
    }
}

.header {
    position: relative;
    z-index: 1;
    color: var(--black-color);
    opacity: 1;
    transition: transform 0.4s var(--transition-timing-function);
}

.header__top {
    padding: var(--header-top-padding) 0;
    display: flex;
    justify-content: space-between;
    gap: var(--header-gap);
}

/*контакты НАЧАЛО*/
.header__contact {
    gap: var(--contact-gap);
    display: flex;
    align-self: center;
}

.header__contact a {
    display: flex;
    align-items: end;
    gap: var(--contact-item-gap);

    font-weight: 700;
    font-size: var(--contact-fz);
    line-height: var(--contact-lh);

    color: inherit;
}

.header__contact a svg {
    width: var(--contact-icon-size);
    height: var(--contact-icon-size);
    color: var(--main-color);
    transition: color var(--transition-duration) var(--transition-timing-function);
}

@media (min-width: 1025px) {
    .header__contact a:hover {
        color: var(--main-hover-color);
    }

    .header__contact a:hover svg {
        color: var(--main-hover-color);
    }
}

@media (max-width: 1024px) {
    .header__contact a:active {
        color: var(--main-hover-color);
    }

    .header__contact a:active svg {
        color: var(--main-hover-color);
    }
}


@media (max-width: 1280px) {
    .header__contact {
        flex-direction: column;
    }

    .header__contact a {
        height: auto;
    }
}

@media (max-width: 1024px) {
    .header__contact {
        flex-direction: row;
    }
}

@media (max-width: 768px) {
    .header__contact {
        display: none;
    }
}

/*контакты КОНЕЦ*/

.header__bottom {
    padding: var(--header-bottom-padding) 0;
    display: flex;
    justify-content: space-between;
    gap: var(--header-gap);
    border-top: 1px solid var(--line-color);
}

.header .logo {
    display: flex;
    align-items: center;
    width: var(--logo-width);
    flex-shrink: 0;
    color: inherit;
}

.header .logo svg {
    width: 100%;
}

.header .burger-button {
    display: none;
    color: inherit;
    width: var(--burger-button-size);
    height: var(--burger-button-size);
    flex-shrink: 0;
    margin-left: var(--burger-button-ml);
    transition: color var(--transition-duration) var(--transition-timing-function);
}

@media (min-width: 1025px) {
    .header .burger-button:hover {
        color: var(--main-hover-color);
    }
}

@media (max-width: 1024px) {
    .header .burger-button:active {
        color: var(--main-hover-color);
    }
}

.header .burger-button svg {
    width: 100%;
    height: 100%;
}

.header__bottom .site-btn {
    font-size: var(--btn-fz);
    line-height: var(--btn-lh);
    padding: 0 var(--btn-padding);
    height: var(--btn-height);
}

/* меню */
.header__top nav>ul>li>a,
.header__top nav>ul>li>span {
    padding: 0 calc(var(--header-top-menu-gap) / 2);
}

.header__top nav>ul>li:first-child>a,
.header__top nav>ul>li:first-child>span {
    padding-left: 0;
}

.header__top nav>ul>li:last-child>a,
.header__top nav>ul>li:last-child>span {
    padding-right: 0;
}

.header__bottom nav>ul>li>a,
.header__bottom nav>ul>li>span {
    padding: 0 calc(var(--header-bottom-menu-gap) / 2);
}

.header nav ul {
    display: flex;
}

.header nav ul>li>a,
.header nav ul>li>span {
    display: flex;
    align-items: center;
    gap: 7rem;
}

.header nav ul>li._parent>a::after,
.header nav ul>li._parent>span::after {
    content: '';
    display: flex;
    width: 8rem;
    height: 8rem;
    background-image: url("/local/templates/im/assets/css/template/../../images/svg/arrow-menu.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;

    transition: transform var(--transition-duration) var(--transition-timing-function);
}


/*все уровени*/
header nav ul,
header nav ul>li ul {
    max-width: unset;
    margin: 0;
}

header nav ul li,
header nav ul li ul>li {
    padding: 0;
    margin: 0;
}

header nav ul li::before {
    display: none;
    background: none;
}

.header nav ul>li>a {
    font-style: normal;
    font-weight: 400;

    color: inherit;
    white-space: nowrap;
}

.header__top nav ul>li>a,
.header__top nav ul>li>span {
    font-size: var(--top-menu-fz);
    line-height: var(--top-menu-lh);
}

.header__bottom nav ul>li>a {
    font-size: var(--bottom-menu-fz);
    line-height: var(--bottom-menu-lh);
}

/*все уровени*/
@media (min-width: 1025px) {
    .header nav ul>li>a:hover {
        color: var(--main-hover-color);
    }
}

@media (max-width: 1024px) {
    .header nav ul>li>a:active {
        color: var(--main-hover-color);
    }
}

/*первый уровень*/
.header nav>ul>li>a,
.header nav>ul>li>span {
    display: flex;
    align-items: center;
    height: var(--header-link-height);
}

/*второй уровень*/
.header nav ul>li>ul {
    display: block;
    position: absolute;
    top: calc(100% + var(--header-top-padding));
    opacity: 0;
    pointer-events: none;
    background-color: var(--white-color);
    z-index: 1;
    box-shadow: inset 0 1rem 0 var(--main-color), 0px 4px 4px 0px #0000000D;

    padding: 10rem 0;

    transition: opacity var(--transition-duration) var(--transition-timing-function);
}

.header nav ul>li>ul::before {
    content: '';
    position: absolute;
    bottom: 100%;
    height: var(--header-top-padding);
    width: 100%;
}


.header ul>li:hover>ul {
    opacity: 1;
    pointer-events: all;
}

.header nav ul>li>ul>li>a {
    display: flex;
    align-items: center;
    height: 42rem;
    padding: 0 20rem;
    width: 100%;
}

@media (max-width:1024px) {
    .header__top nav {
        display: none;
    }
}

.header__wrapper_bottom,
.header__wrapper {
    display: contents;
}

.header__wrapper {
    transition: backdrop-filter var(--transition-duration) var(--transition-timing-function),
        background-color var(--transition-duration) var(--transition-timing-function);
}

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

    .header__wrapper {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 0 var(--header-gap);
        padding-top: var(--header-top-padding);
    }

    .header__bottom {
        display: contents;
    }

    .header .logo {
        order: -1;
    }

    .header__wrapper_bottom {
        display: flex;
        align-items: center;
        width: 100%;
        padding: var(--header-bottom-padding) 0;
        border-top: 1rem solid var(--line-color);
        margin-top: 13rem;
    }

    .header__bottom nav {
        margin-right: var(--header-gap);
    }

    .header__bottom .site-btn {
        margin-left: auto;
        margin-right: 0;
        flex-shrink: 0;
    }

    .header .burger-button {
        display: flex;
    }
}


@media (max-width: 768px) {
    .header__bottom nav {
        display: none;
    }

    .header__wrapper_bottom {
        display: contents;
    }

    .header__wrapper {
        padding: var(--header-top-padding) 0;
        border-bottom: 1px solid var(--line-color);
        gap: 0;
        align-items: center;
    }
}

@media (max-width: 480px) {
    .header__bottom .site-btn {
        display: none;
    }
}



/*фиксированная шапка*/
.header._burger-open {
    color: var(--white-color);
}

.header._fixed {
    position: fixed;
    padding-top: 10rem;
    width: 100%;
    animation: slideDown 0.3s ease;
    color: var(--white-color);
    transition: transform 0.4s var(--transition-timing-function);
}

.header._burger-open {
    transform: translateY(0) !important;
}

.header._fixed .header__wrapper,
.header._burger-open .header__wrapper {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;

}

.header._fixed .header__wrapper {
    background-color: var(--black-bg-color);
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    border: unset;
    border-radius: var(--header-fixed-radius);
    padding: var(--header-fixed-padding) var(--header-fixed-container-padding);
}

.header._burger-open .header__wrapper {
    padding-bottom: var(--header-top-padding);
}

.header._fixed .burger-button {
    display: flex;
}

.header._fixed .header__top,
.header._fixed .header__bottom,
.header._fixed .header__wrapper_bottom,
.header._burger-open .header__top,
.header._burger-open .header__bottom,
.header._burger-open .header__wrapper_bottom {
    display: contents;
}

.header._fixed nav,
.header._burger-open nav {
    display: none;
}

.header._fixed .logo,
.header._burger-open .logo {
    order: -1;
}

.header._fixed .header__contact,
.header._burger-open .header__contact {
    margin: 0 auto;
}

@keyframes slideDown {
    from {
        transform: translateY(-100%);
    }

    to {
        transform: translateY(0);
    }
}

@media (max-width: 1280px) {

    .header._fixed .header__contact,
    .header._burger-open .header__contact {
        flex-direction: row;
        flex-wrap: wrap;
    }
}

@media (max-width: 1024px) {

    .header._fixed .header__contact,
    .header._burger-open .header__contact {
        margin: 0 40rem;
    }
}

.header._burger-open {
    transition: transform 0.4s var(--transition-timing-function);
}

.header._burger-open .header__wrapper {
    backdrop-filter: blur(0);
    background-color: transparent;
}
/* End */


/* Start:/local/templates/im/assets/css/template/breadcrumb.css?17690749564266*/
.breadcrumb {
    --breadcrumb-mb: 15rem;

    --breadcrumb-gap: 5rem 7rem;
    --item-gap: 2rem;
    --item-color: var(--black-color);
    --item-icon-color: var(--main-color);

    --item-padding: 0;
    --item-bgc: initial;
    --item-backdrop-filter: initial;
    --item-border-radius: initial;

    --item-fz: 16rem;
    --item-lh: 1.4;

    --dot-color: var(--black-color);
}

._banner .breadcrumb {
    --breadcrumb-mb: 12rem;

    --item-color: var(--white-color);
    --item-icon-color: var(--white-color);

    --item-bgc: #ECF2F533;
    --item-padding: 2rem 13rem 2rem 10rem;
    --item-backdrop-filter: blur(4px);
    --item-border-radius: 30rem;

    --dot-color: var(--white-color);
}

@media (max-width: 1280px) {
    .breadcrumb {
        --item-fz: 15rem;
        --item-lh: 1.4;
    }
}

@media (max-width: 1024px) {
    .breadcrumb {
        --breadcrumb-mb: 12rem;

        --item-fz: 15rem;
        --item-lh: 1.3;
    }
}

@media (max-width: 768px) {
    .breadcrumb {
        --item-fz: 14rem;
        --item-lh: 1.3;
    }
}

@media (max-width: 480px) {
    .breadcrumb {
        --item-fz: 14rem;
        --item-lh: 1.3;
    }

    ._banner .breadcrumb {
        --breadcrumb-gap: 5rem;
    }
}


/*----*/

.breadcrumb {
    display: flex;
    gap: var(--breadcrumb-gap);

    margin-bottom: var(--breadcrumb-mb);

    width: fit-content;
    padding: var(--item-padding);
    background-color: var(--item-bgc);
    -webkit-backdrop-filter: var(--item-backdrop-filter);
    backdrop-filter: var(--item-backdrop-filter);
    border-radius: var(--item-border-radius);
    flex-wrap: wrap;
}

.breadcrumb__item {
    display: flex;
    align-items: center;
    gap: var(--breadcrumb-gap);
}

.breadcrumb__item>span.link,
.breadcrumb__item>a {
    display: flex;
    align-items: center;

    font-weight: 400;
    font-size: var(--item-fz);
    line-height: var(--item-lh);

    transition: color var(--transition-duration) var(--transition-timing-function);
    color: var(--item-color);
}


.breadcrumb__item svg {
    color: var(--item-icon-color);
    margin-right: var(--item-gap);
    transition: color var(--transition-duration) var(--transition-timing-function);
}

.breadcrumb__item svg.arrow {
	transform: rotate(180deg);
	margin-right: 7rem;
}


.breadcrumb__item span.dot,
.breadcrumb__open span.dot {
    display: flex;
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    background-color: var(--dot-color);
    opacity: 0.5;
}

.breadcrumb__open {
    display: none;
}

@media (min-width: 1025px) {
    .breadcrumb__item>a:hover {
        color: var(--main-hover-color);
    }

    .breadcrumb__item a:hover svg {
        color: var(--main-hover-color);
    }
}

@media (max-width: 1024px) {

    .breadcrumb__item a:active svg {
        color: var(--main-hover-color);
    }
}

@media (max-width: 480px) {
    .breadcrumb {
        width: fit-content;
        padding: 0;
        background-color: transparent;
        -webkit-backdrop-filter: unset;
        backdrop-filter: unset;
        border-radius: unset;
    }

    .breadcrumb__item {
        display: none;
    }

    .breadcrumb__item:last-child {
        display: flex;
    }

    .breadcrumb__item a,
    .breadcrumb__item .link {
        padding: var(--item-padding);
        background-color: var(--item-bgc);
        -webkit-backdrop-filter: var(--item-backdrop-filter);
        backdrop-filter: var(--item-backdrop-filter);
        border-radius: var(--item-border-radius);
        flex-wrap: wrap;
    }

    .breadcrumb__open {
        display: flex;
        align-items: center;
        gap: var(--breadcrumb-gap);
    }

    .breadcrumb__open span.icon {
        display: flex;
        color: var(--dot-color);
        align-items: center;
        justify-content: center;
        border-radius: 30rem;
        padding: 2rem 10rem;
        background-color: var(--ligt-bg-color);
        -webkit-backdrop-filter: blur(4px);
        backdrop-filter: blur(4px);
        height: 100%;
        min-height: 22rem;
    }

    ._banner .breadcrumb__open span.icon {
        background-color: #ECF2F533;
    }

    .breadcrumb._open .breadcrumb__item {
        display: flex;
    }

    .breadcrumb._open .breadcrumb__open {
        display: none;
    }
}
/* End */


/* Start:/local/templates/im/assets/css/template/hero.css?17746105334732*/
.hero {
	--section-mt: 100rem;
	--section-mb: 80rem;

	--hero-date-mt: 25rem;
	--hero-date-fz: 16rem;
	--hero-date-lh: 1.4;
}

.hero._banner {
	--section-mt: 60rem;
	--section-mb: 100rem;

	--padding: 180rem 50rem 40rem;
	--border-radius: 30rem;
	--title-mb: 10rem;
	--text-fz: 24rem;
	--text-lh: 1.8;
}

.hero._banner._big-mb {
	--section-mb: var(--section-gap);
}

.hero._main {
	--section-mt: 100rem;
	--section-mb: 0;

	--main-title-fz: 126.289rem;
	--main-title-mb: 40rem;
	--main-text-fz: 40rem;
}

@media (max-width: 1280px) {
	.hero {
		--section-mt: 80rem;
		--section-mb: 60rem;

		--hero-date-mt: 20rem;
		--hero-date-fz: 15rem;
	}

	.hero._banner {
		--section-mt: 40rem;
		--section-mb: 80rem;

		--border-radius: 20rem;
		--padding: 160rem 40rem 40rem;
		--text-fz: 20rem;
		--text-lh: 1.6;
	}

	.hero._main {
		--section-mt: 60rem;

		--main-title-fz: 101rem;
		--main-title-mb: 40rem;
		--main-text-fz: 32rem;
	}
}

@media (max-width: 1024px) {
	.hero {
		--section-mt: 60rem;
		--section-mb: 40rem;

		--hero-date-mt: 15rem;
		--hero-date-lh: 1.3;
	}

	.hero._banner {
		--section-mt: 30rem;
		--section-mb: 60rem;

		--padding: 140rem 30rem 30rem;
		--text-fz: 18rem;
		--text-lh: 1.5;
	}

	.hero._main {
		--section-mt: 40rem;

		--main-title-fz: 83.3138rem;
		--main-title-mb: 20rem;
		--main-text-fz: 26rem;
	}
}

@media (max-width: 768px) {
	.hero {
		--section-mt: 40rem;
		--section-mb: 30rem;

		--hero-date-fz: 14rem;
	}

	.hero._banner {
		--section-mt: 20rem;
		--section-mb: 40rem;

		--border-radius: 10rem;
		--padding: 100rem 20rem 20rem;
		--text-fz: 16rem;
		--text-lh: 1.4;
	}

	.hero._main {
		--section-mt: 30rem;

		--main-title-fz: 52rem;
		--main-title-mb: 15rem;
		--main-text-fz: 16rem;
	}
}

@media (max-width: 480px) {
	.hero {
		--section-mt: 30rem;
		--section-mb: 20rem;
	}

	.hero._banner {
		--section-mt: 15rem;
		--padding: 60rem 15rem 20rem;
		--text-fz: 15rem;
		--text-lh: 1.3;
	}

	.hero._main {
		--section-mt: 20rem;

		--main-title-fz: 54rem;
		--main-title-mb: 20rem;
		--main-text-fz: 16.7rem;
	}
}

.hero {
	position: relative;
	margin-top: var(--section-mt);
	margin-bottom: var(--section-mb);
}

.hero .img-bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.hero .img-bg::after {
	content: '';
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(270deg, rgba(0, 0, 0, 0) 33.1%, rgba(25, 17, 2, 0.56) 86.06%);
}


.hero._banner {
	border-radius: var(--border-radius);
	overflow: hidden;
	color: var(--white-color);
	padding: var(--padding);
}

.hero._banner p {
	margin: 0;
	margin-top: var(--title-mb);
	opacity: 0.7;

	font-size: var(--text-fz);
	line-height: var(--text-lh);
}



/*----*/

.hero._main {
	display: flex;
	flex-direction: column;
	gap: var(--main-title-mb);
}

.hero._main .main-title {
	max-width: 8.4em;
	line-height: 85%;
	font-size: var(--main-title-fz);
	font-family: var(--title-family);
	font-weight: var(--title-weight);

	background-image: url('/local/templates/im/assets/css/template/../../images/static/main-hero.jpg');
	background-repeat: no-repeat;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	animation: shrinkBackground 3s 1 normal ease both 1.2s;
}

.hero._main .p {
	font-weight: 400;
	font-size: var(--main-text-fz);
	line-height: 1.4;

	animation: loadPageAnimationTitleText 1.5s 1 normal ease both 2.7s;
}

p.hero-date {
	font-size: var(--hero-date-fz);
	line-height: var(--hero-date-lh);
	margin-top: var(--hero-date-mt);
	opacity: 0.7;
}

@media (max-width: 768px) {
	.hero._main p {
		font-weight: 500;
	}
}

@media (max-width: 480px) {
	.hero._main {
		padding-top: 10rem;
	}

	.hero._main p br {
		display: none;
	}
}

/*анимация*/
:root {
	--fade-header: 0.8s;
}

@keyframes shrinkBackground {
	from {
		background-size: 150%;
		background-position: top;
	}

	to {
		background-size: 100%;
		background-position: bottom;
	}
}

@media (max-width: 480px) {
	@keyframes shrinkBackground {
		from {
			background-size: 150%;
			background-position: top;
		}

		to {
			background-size: 121%;
			background-position: bottom;
		}
	}
}


/*шапка из фейда 0.8*/
.header {
	animation: fade var(--fade-header) 1 normal ease both;
}

.hero {
	animation: fadeDownUp 1s 1 normal ease both 0.6s;
}

.hero._banner {
	animation: fadeDownUp 1s 1 normal ease both var(--fade-header);
}

.hero._main {
	animation: fade 0.6s 1 normal ease both var(--fade-header);
}

.hero._main h1 {
	animation: shrinkBackground 3.5s 1 normal ease both var(--fade-header);
}


.hero._main p {
	animation: fadeDownUp 1.5s 1 normal ease both calc(var(--fade-header) + 1s);
}

main._main>.video-banner {
	animation: fadeDownUp 1s 1 normal ease both calc(var(--fade-header) + 2s);
}
/* End */


/* Start:/local/templates/im/assets/css/template/footer.css?17624538657965*/
.footer {
    --wrapper-mt: 60rem;
    --padding: 50rem 60rem 60rem;

    --logo-width: 327rem;
    --logo-height: auto;
    --logo-mb: 50rem;

    --footer-wrapper-gap: 80rem;
    --menu-gap: 30rem;

    --footer-info-width: 491rem;
    --footer-info-gap: 20rem;
    --footer-contact-gap: 15rem;
    --footer-contact-fz: 36rem;
    --footer-contact-item-gap: 15rem;

    --footer-bottom-mt: 60rem;
    --footer-bottom-pt: 40rem;
    --footer-bottom-gap: 20rem 40rem;

    --menu-item-fz: 24rem;
    --menu-item-lh: 1.4;


    --footer-bottom-fz: 16rem;
    --footer-bottom-lh: 1.4;

    --dev-logo-width: 30rem;
    --dev-logo-height: 32rem;
    --dev-logo-gap: 10rem;
}

@media (max-width: 1280px) {
    .footer {
        --wrapper-mt: 40rem;

        --padding: 30rem 40rem 40rem;

        --logo-width: 260rem;
        --logo-mb: 30rem;

        --footer-wrapper-gap: 20rem;
        --menu-gap: 20rem;

        --footer-info-width: 347rem;
        --footer-contact-gap: 15rem;
        --footer-contact-fz: 24rem;
        --footer-contact-item-gap: 8rem;

        --footer-bottom-mt: 40rem;
        --footer-bottom-pt: 40rem;

        --menu-item-fz: 20rem;
        --menu-item-lh: 1.4;
    }
}

@media (max-width: 1024px) {
    .footer {
        --wrapper-mt: 30rem;

        --padding: 20rem 30rem 30rem;

        --logo-width: 203rem;
        --logo-height: 50rem;
        --logo-mb: 30rem;

        --footer-wrapper-gap: 0;
        --menu-gap: 15rem;

        --footer-info-width: 50%;
        --footer-contact-gap: 10rem;
        --footer-contact-fz: 20rem;
        --footer-contact-item-gap: 5rem;

        --footer-bottom-mt: 30rem;
        --footer-bottom-pt: 30rem;

        --menu-item-fz: 18rem;
        --menu-item-lh: 1.4;

        --footer-bottom-fz: 14rem;
        --footer-bottom-lh: 1.4;

        --dev-logo-width: 28rem;
        --dev-logo-height: 30rem;
        --dev-logo-gap: 8rem;
    }
}

@media (max-width: 768px) {
    .footer {
        --wrapper-mt: 20rem;
        --padding: 10rem 20rem 30rem;

        --logo-width: 212rem;
        --logo-height: 60rem;
        --logo-mb: 15rem;

        --footer-wrapper-gap: 30rem;

        --footer-info-width: 100%;

        --footer-bottom-mt: 20rem;
        --footer-bottom-pt: 20rem;
    }
}

@media (max-width: 480px) {
    .footer {
        --padding: 10rem 15rem 20rem;

        --logo-width: 152rem;
        --logo-height: 55rem;

        --footer-contact-gap: 10rem;
        --footer-contact-fz: 18rem;
        --footer-contact-item-gap: 5rem;

        --footer-bottom-mt: 20rem;
        --footer-bottom-pt: 15rem;
        --footer-bottom-gap: 15rem;

        --menu-item-fz: 16rem;
        --menu-item-lh: 1.4;

        --footer-bottom-fz: 13rem;
        --footer-bottom-lh: 1.1;

        --dev-logo-width: 23rem;
        --dev-logo-height: 24rem;
    }
}

.footer-section {
    margin-top: var(--section-gap);
}

.footer-section .form-section+.footer {
    margin-top: var(--wrapper-mt);
}

.footer {
    display: flex;
    flex-direction: column;

    padding: var(--padding);
    border-radius: var(--border-radius) var(--border-radius) 0 0;
    background-color: var(--dark-color);

    color: var(--white-color);
}

.footer ul li a {
    color: var(--white-color);
}

@media (min-width: 1025px) {
    .footer ul li a:hover {
        color: var(--main-hover-color);
    }
}

@media (max-width: 1024px) {
    .footer ul li a:active {
        color: var(--main-hover-color);
    }
}

.footer__logo {
    margin-bottom: var(--logo-mb);
}

.footer .logo {
    display: flex;
    align-items: center;
    width: var(--logo-width);
    height: var(--logo-height);
    flex-shrink: 0;
    color: var(--white-color);
}

@media (max-width: 1024px) {
    .footer .logo img {
        width: 100%;
        height: inherit;
        object-fit: cover;
        object-position: top;
    }
}

@media (max-width: 768px) {
    .footer .logo img {
        object-position: 0 6rem;
    }
}


@media (max-width: 480px) {
    .footer .logo img {
        object-fit: contain;
    }
}



/*----*/
.footer__wrapper {
    display: flex;
    gap: var(--footer-wrapper-gap);
}

.footer__wrapper nav {
    flex: 1 0 0;
}

.footer__wrapper nav ul {
    width: 100%;
    column-count: 2;
    column-gap: var(--footer-wrapper-gap);
}

.footer__wrapper nav ul li {
    margin-bottom: var(--menu-gap);
    font-size: var(--menu-item-fz);
    line-height: var(--menu-item-lh);
}

.footer__wrapper nav ul li:last-child {
    margin-bottom: 0;
}


@media (max-width: 1280px) {
    .footer__wrapper {
        display: grid;
        grid-template-rows: repeat(4, min-content);
        justify-content: space-between;
        grid-auto-flow: column;
    }

    .footer__info {
        grid-row: 4 span;
    }

    .footer__wrapper nav,
    .footer__wrapper nav ul {
        display: contents;
    }

    .footer__wrapper nav ul li {
        margin-bottom: 0;
    }
}

@media (max-width: 1024px) {
    .footer__wrapper {
        display: flex;
        justify-content: space-between;
    }

    .footer__info {
        flex: 1 0 0;
    }

    .footer__wrapper nav,
    .footer__wrapper nav ul {
        display: block;
    }

    .footer__wrapper nav ul {
        column-gap: 50rem;
    }

    .footer__wrapper nav {
        width: 50%;
        flex: 1 0 0;
    }

    .footer__wrapper nav ul li {
        margin-bottom: var(--menu-gap);
    }
}

@media (max-width: 768px) {
    .footer__wrapper {
        flex-direction: column;
    }

    .footer__wrapper nav {
        width: 100%;
        max-width: 500rem;
    }
}

@media (max-width: 480px) {
    .footer__wrapper nav ul {
        column-gap: 15rem;
    }
}

@media (max-width: 400px) {
    .footer__wrapper nav ul {
        column-count: 1;
    }
}


/*----*/

.footer__info {
    width: var(--footer-info-width);
    display: flex;
    gap: var(--footer-info-gap);
    flex-direction: column;
    justify-content: space-between;
}

.footer__contact {
    display: flex;
    flex-direction: column;
    gap: var(--footer-contact-gap)
}

.footer__contact a {
    display: flex;
    gap: var(--footer-contact-item-gap);
    align-items: center;
    width: fit-content;

    font-weight: 700;
    font-size: var(--footer-contact-fz);
    line-height: 1.4;
    color: var(--white-color);
}

.footer__contact a svg {
    color: var(--main-color);
    width: max(1em, 20rem);
    height: max(1em, 20rem);
    transition: color var(--transition-duration) var(--transition-timing-function);
}

.footer__social .social-link a {
    color: var(--main-color);
}

@media (min-width: 1025px) {

    .footer__contact a:hover,
    .footer__contact a:hover svg,
    .footer__social .social-link a:hover {
        color: var(--main-hover-color);
    }
}

@media (max-width: 1024px) {

    .footer__contact a:active,
    .footer__contact a:active svg,
    .footer__social .social-link a:active {
        color: var(--main-hover-color);
    }
}

/*----*/


.footer__bottom {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20rem 40rem;

    margin-top: var(--footer-bottom-mt);
    padding-top: var(--footer-bottom-pt);
    box-shadow: inset 0 1rem 0 var(--line-color);
}

.footer__policy,
.footer__bottom .partner-link {
    display: flex;
    margin-bottom: 10px;

    font-size: var(--footer-bottom-fz);
    line-height: var(--footer-bottom-lh);
}

.footer__copy {
    font-size: var(--footer-bottom-fz);
    line-height: var(--footer-bottom-lh);
}


.footer__dev {
    display: flex;
    align-items: center;
    gap: var(--dev-logo-gap);

    font-size: var(--footer-bottom-fz);
    line-height: var(--footer-bottom-lh);
    color: var(--white-color);
}

.footer__dev svg {
    width: var(--dev-logo-width);
    height: var(--dev-logo-height);
}

@media (max-width: 768px) {
    .footer__bottom {
        flex-direction: column;
        align-items: start;
    }
}

@media (max-width: 480px) {
    .footer__bottom {
        gap: 15rem;
    }
}
/* End */


/* Start:/local/templates/im/assets/css/components/form.css?176245386513873*/
.form-section {
    --img-width: clamp(540rem, calc(0.03584 * 100vw + 497.95rem), 550rem);

    --title-fz: 42rem;
    --title-lh: 1.1;

    --text-fz: 20rem;
    --text-lh: 1.4;
}

.form-section._modal {
    --title-fz: 42rem;
    --title-lh: 1.2;

    --text-fz: 24rem;
    --text-lh: 1.8;

    --modal-width: 1480rem;
    --modal-close-size: 64rem;
    --modal-close-position: 15rem;
}

@media (max-width: 1280px) {
    .form-section {
        --img-width: 350rem;

        --title-fz: 32rem;

        --text-fz: 18rem;
        --text-lh: 1.6;
    }

    .form-section._modal {
        --title-fz: 32rem;
        --title-lh: 1.1;

        --text-fz: 18rem;
        --text-lh: 1.6;

        --modal-width: 1200rem;
    }
}

@media (max-width: 1024px) {
    .form-section {
        --img-width: 0;

        --title-fz: 28rem;
        --title-lh: 1.2;
    }

    .form-section._modal {
        --title-fz: 28rem;
        --title-lh: 1.2;

        --modal-width: 964rem;
        --modal-close-size: 48rem;
        --modal-close-position: 20rem;
    }
}

@media (max-width: 768px) {
    .form-section {
        --title-fz: 24rem;
        --text-fz: 16rem;
    }

    .form-section._modal {
        --title-fz: 24rem;
        --text-fz: 16rem;

        --modal-width: 728rem;
        --modal-close-size: 42rem;
        --modal-close-position: 10rem;
    }
}

@media (max-width: 480px) {
    .form-section {
        --title-fz: 20rem;
        --text-fz: 15rem;
    }

    .form-section._modal {
        --title-fz: 20rem;
        --text-fz: 15rem;

        --modal-width: 100vw;
        --modal-close-size: 32rem;
    }
}


.form-section {
    border-radius: var(--border-radius);
    overflow: hidden;
}

.form-section__img {
    width: var(--img-width);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: auto;
}

.form-section__wrapper {
    padding-left: var(--img-width);
}

/*модалка*/
.form-section._modal {
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

    max-width: var(--modal-width);
    width: calc(100vw - (var(--container-padding)*2));

    transition: opacity 0.4s var(--transition-timing-function);

    z-index: 30;
}

.form-section._modal._open {
    opacity: 1;
    pointer-events: all;
}

.form-section._modal .form-close-button {
    position: absolute;
    z-index: 10;
    left: auto;
    width: var(--modal-close-size);
    height: var(--modal-close-size);
    top: var(--modal-close-position);
    right: var(--modal-close-position);
    color: var(--line-color);
    transition: color var(--transition-durationx) var(--transition-timing-function);
}

.form-section._modal .form-close-button svg {
    width: 100%;
    height: 100%;
}

.form-section._modal .form-close-button:hover {
    color: var(--main-hover-color);
}

.form-section._modal .form {
    max-height: calc(100dvh - (var(--container-padding)*2));
    overflow: auto;
}

@media (max-width: 1024px) {
    .form-section._modal {
        overflow: auto;
    }

    .form-section._modal .form-close-button {
        /*  position: fixed; */
        z-index: 3;
    }

    .form-section._modal .form__head {
        position: sticky;
        top: 0;
        background-color: var(--ligt-bg-color);
        z-index: 2;
    }
}

@media (max-width: 480px) {
    .form-section._modal {
        max-width: 100%;
        max-height: 100%;
        width: 100vw;
        height: 100dvh;
        border-radius: 0;
    }

    .form-section._modal .form {
        max-height: 100dvh;
        height: 100dvh;
    }

}

/*----*/
.form {
    --wrapper-pt: 70rem;
    --wrapper-pr: 70rem;
    --wrapper-pb: 80rem;
    --wrapper-pl: 60rem;

    --title-mb: 20rem;
    --head-mb: 40rem;

    --input-gap: 20rem;
    --input-column: 2;
    --input-mb: 60rem;

    --submit-btn-mt: 30rem;
    --btn-width: 330rem;
    --btn-height: 60rem;
    --btn-fz: 16rem;
    --btn-lh: 1.4;

    --error-fz: 16rem;
    --error-lh: 1.4;
    --error-gap: 12rem;
    --error-icon-size: 24rem;
    --error-mt: 30rem;

    --success-wrapper-mt: 171rem;
    --success-icon-widht: 44rem;
    --success-icon-height: 32rem;
    --success-icon-mb: 12rem;
    --success-title-mb: 20rem;
    --success-text-fz: 24rem;
    --success-text-lh: 1.5;

    --captcha-text-mt: 30rem;
    --captcha-text-fz: 16rem;
    --captcha-text-lh: 1.4;
}

@media (max-width: 1450px) {
    .form {
        --wrapper-pt: 70rem;
        --wrapper-pr: 60rem;
        --wrapper-pb: 80rem;
        --wrapper-pl: 60rem;
    }

}

@media (max-width: 1280px) {
    .form {
        --title-mb: 15rem;
        --head-mb: 30rem;

        --wrapper-pt: 40rem;
        --wrapper-pr: 40rem;
        --wrapper-pb: 40rem;
        --wrapper-pl: 40rem;

        --input-gap: 20rem 15rem;
        --input-mb: 20rem;

        --btn-width: 330rem;
        --btn-height: 60rem;
        --btn-fz: 18rem;

        --error-fz: 15rem;

        --success-wrapper-mt: 117rem;
        --success-icon-mb: 21rem;
        --success-text-fz: 20rem;
    }
}

@media (max-width: 1024px) {
    .form {
        --title-mb: 10rem;
        --head-mb: 20rem;

        --wrapper-pt: 30rem;
        --wrapper-pr: 30rem;
        --wrapper-pb: 30rem;
        --wrapper-pl: 30rem;

        --input-mb: 30rem;

        --btn-width: 330rem;
        --btn-height: 60rem;

        --error-lh: 1.3;

        --success-wrapper-mt: 0;
        --success-icon-widht: 28rem;
        --success-icon-height: 22rem;
        --success-icon-mb: 7rem;
        --success-title-mb: 20rem;
        --success-text-fz: 18rem;
        --success-text-lh: 1.6;
    }
}

@media (max-width: 768px) {
    .form {
        --wrapper-pt: 20rem;
        --wrapper-pr: 20rem;
        --wrapper-pb: 20rem;
        --wrapper-pl: 20rem;

        --input-gap: 15rem 10rem;
        --input-mb: 20rem;
        --submit-btn-mt: 20rem;

        --btn-width: 339rem;
        --btn-height: 45rem;
        --btn-fz: 15rem;
        --btn-lh: 1.3;

        --error-mt: 20rem;

        --success-title-mb: 15rem;
        --success-text-fz: 16rem;

        --captcha-text-mt: 20rem;
    }
}


@media (max-width: 680px) {
    .form {
        --input-column: 1;
    }
}


@media (max-width: 480px) {
    .form {
        --title-mb: 5rem;

        --wrapper-pt: 15rem;
        --wrapper-pr: 15rem;
        --wrapper-pb: 15rem;
        --wrapper-pl: 15rem;

        --btn-width: 100%;
        --btn-height: 40rem;

        --success-icon-mb: 4rem;
        --success-text-fz: 15rem;
    }
}

.form {
    background-color: var(--ligt-bg-color);
    padding-top: 0;
    padding-right: var(--wrapper-pr);
    padding-bottom: var(--wrapper-pb);
    padding-left: var(--wrapper-pl);
    position: relative;
}

.form__head {
    padding-top: var(--wrapper-pt);
    padding-bottom: var(--head-mb);
    transition: opacity var(--transition-duration) var(--transition-timing-function);
}

.form h3,
.form .h3 {
    font-size: var(--title-fz);
    line-height: var(--title-lh);
}

.form__head p {
    margin-top: var(--title-mb);
    font-size: var(--text-fz);
    line-height: var(--text-lh);
}

.form__wrapper {
    transition: opacity var(--transition-duration) var(--transition-timing-function);
}

.form__input {
    display: grid;
    grid-template-columns: repeat(var(--input-column), 1fr);
    gap: var(--input-gap);
}

.form__checkbox {
    margin-top: var(--input-mb);
}

.form__submit {
    margin-top: var(--submit-btn-mt);
}

.form__submit .site-btn {
    font-size: var(--btn-fz);
    line-height: var(--btn-lh);
}

.form .error {
    display: flex;
    align-items: center;
    gap: var(--error-gap);
    margin-top: var(--error-mt);
    font-size: var(--error-fz);
    line-height: var(--error-lh);
    color: var(--red-color);
}

.form .error::before {
    content: '';
    width: var(--error-icon-size);
    height: var(--error-icon-size);
    background-image: url(/local/templates/im/assets/images/svg/error.svg);
}



.form:not(:has(.input._error)) .error {
    display: none;
}


/*спасибка*/

.form._success .form__head,
.form._success .form__wrapper {
    opacity: 0;
    pointer-events: none;
}

.form__success {
    position: absolute;
    top: 0;
    left: 0;
    margin-top: var(--success-wrapper-mt);
    padding-right: var(--wrapper-pr);
    padding-left: var(--wrapper-pl);
    padding-top: 0;
    padding-bottom: 0;

    opacity: 0;
    transition: opacity var(--transition-duration) var(--transition-timing-function) 0.2s;
}

.form._success .form__success {
    opacity: 1;
}

.form__success svg {
    margin-bottom: var(--success-icon-mb);
    width: var(--success-icon-widht);
    height: var(--success-icon-height);
}

.form__success h3,
.form__success .h3 {
    margin-bottom: var(--success-title-mb);
}

.form__success p {
    font-size: var(--success-text-fz);
    line-height: var(--success-text-lh);
    font-weight: 700;
}

@media (max-width: 1024px) {

    .form._success .form__head,
    .form._success .form__wrapper {
        display: none;
    }

    .form__success {
        position: static;
        padding: 0;
        padding-top: var(--wrapper-pt);
    }
}

.form__captcha {
    opacity: 0.8;
    margin-top: var(--captcha-text-mt);
    font-size: var(--captcha-text-fz);
    line-height: var(--captcha-text-lh);
}

/*----*/
.input._text {
    --input-height: 55rem;
    --input-padding: 16rem 10rem 17rem 20rem;
}

@media (max-width: 480px) {
    .input._text {
        --input-padding: 16rem 10rem 17rem 10rem;
    }
}

.input._text {
    display: flex;
    flex-direction: column;
    gap: 10rem;
}

.input._text .input__wrapper {
    position: relative;
}

.input._text .input__wrapper._required::before {
    content: '*';
    position: absolute;

    top: 4rem;
    left: auto;
    right: 11rem;

    font-size: 20rem;
    line-height: 1.4;
    opacity: 0.5;

    transition: color var(--transition-duration) var(--transition-timing-function),
        opacity var(--transition-duration) var(--transition-timing-function);
}

.input._text label {
    font-weight: 400;
    font-size: 14rem;
    line-height: 1.1;
    opacity: 0.4;

    transition: color var(--transition-duration) var(--transition-timing-function),
        opacity var(--transition-duration) var(--transition-timing-function);
}

.input._text input {
    width: 100%;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.4;
    color: #1F1F1F;
    opacity: 1;
    height: var(--input-height);
    padding: var(--input-padding);
    border-radius: 10rem;
    box-shadow: inset 0 0 0 1rem var(--line-color);

    transition: box-shadow var(--transition-duration) var(--transition-timing-function);
}

.input input::placeholder {
    opacity: 0.3;
    color: inherit;
    text-indent: 0px;
    transition: opacity var(--transition-duration) var(--transition-timing-function),
        text-indent 0.6s ease;
}

.input input:focus::placeholder {
    opacity: 0;
    text-indent: 2000rem;
}

/*hover*/

@media (min-width: 1024px) {
    .input._text:hover label {
        /*label */
        opacity: 1;
    }

    .input:hover input {
        /*input */
        box-shadow: inset 0 0 0 1rem var(--main-hover-color);
    }
}

/* active*/
@media (max-width: 1024px) {
    .input._text:active label {
        /*label */
        opacity: 1;
    }

    .input:active input {
        /*input */
        box-shadow: inset 0 0 0 1rem var(--main-hover-color);
    }
}

/* focus*/

.input._text:focus-within label {
    /*label */
    opacity: 1;
}

.input:focus-within input {
    /*input */
    box-shadow: inset 0 0 0 1rem var(--main-hover-color);
}

/*error*/

.input._text._error .input__wrapper._required::before {
    /*звездочка*/
    color: var(--red-color);
    opacity: 1;
}

.input._text._error label {
    /*label */
    color: var(--red-color);
    opacity: 0.8;
}

.input._error input {
    /*input */
    box-shadow: inset 0 0 0 1rem var(--red-color);
}

.input._text._error input::placeholder {
    opacity: 1;
}

/*чекбокс*/
.input._checkbox {
    position: relative;
    display: flex;
    gap: 12rem;
    cursor: pointer;
}

.input._checkbox input {
    opacity: 0;
    width: 0;
    height: 0;
    z-index: -1000;
    position: absolute;
}

.input._checkbox .checkmark {
    position: relative;
    width: 24rem;
    height: 24rem;
    border-radius: 6rem;
    box-shadow: inset 0 0 0 1.3rem var(--main-color);
    flex-shrink: 0;
    transition: box-shadow var(--transition-duration) var(--transition-timing-function),
        background-color var(--transition-duration) var(--transition-timing-function);

}

.input._checkbox input:checked+.checkmark {
    background-color: var(--main-color);
}

.input._checkbox .checkmark::before {
    content: '';
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity var(--transition-duration) var(--transition-timing-function);

    mask-image: url(/local/templates/im/assets/images/svg/check.svg);
    mask-size: 78%;
    mask-repeat: no-repeat;
    mask-position: center;
    background-color: var(--white-color);
}

.input._checkbox input:checked+.checkmark::before {
    opacity: 1;
}


.input._checkbox .label {
    font-size: 16rem;
    line-height: 1.4;

    opacity: 0.8;
}

/*hover*/

@media (min-width: 1024px) {
    .input._checkbox:hover .checkmark {
        box-shadow: inset 0 0 0 1.3rem var(--main-hover-color);
    }

    .input._checkbox input:checked:hover+.checkmark {
        background-color: var(--main-hover-color);
    }
}

/* active*/
@media (max-width: 1024px) {
    .input._checkbox:active .checkmark {
        box-shadow: inset 0 0 0 1.3rem var(--main-hover-color);
    }

    .input._checkbox input:checked:active+.checkmark {
        background-color: var(--main-hover-color);
    }
}

/*error*/

.input._checkbox._error .checkmark {
    box-shadow: inset 0 0 0 1.3rem var(--red-color);
}
/* End */


/* Start:/local/templates/im/assets/css/ui/site-btn.css?17624538651734*/
.site-btn {
    --btn-height-default: 50rem;
    --btn-padding-default: 30rem;
    --btn-radius: 10rem;
}

@media (max-width: 1024px) {
    .site-btn {
        --btn-height-default: 45rem;
    }
}

@media (max-width: 480px) {
    .site-btn {
        --btn-height-default: 40rem;
        --btn-padding-default: 20rem;
        --btn-radius: 6rem;
    }
}

.site-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    /* gap: var(--btn-gap, var(--btn-gap-default)); */

    width: var(--btn-width, fit-content);
    height: var(--btn-height, var(--btn-height-default));

    padding: 0 var(--btn-padding, var(--btn-padding-default));

    /* --icon-size: var(--btn-icon-size, var(--btn-icon-size-default)); */

    border-radius: var(--btn-radius);

    transition-duration: var(--transition-duration);
    transition-timing-function: var(--transition-timing-function);

    font-weight: 700;
}


.site-btn svg+span {
    margin-left: 7rem;
}

.site-btn._main {
    background-color: var(--main-color);
    color: var(--white-color);

    transition-property: background-color;
}

@media (min-width: 1025px) {
    .site-btn._main:hover {
        background-color: var(--main-hover-color);
    }
}

@media (max-width: 1024px) {
    .site-btn._main:active {
        background-color: var(--main-hover-color);
    }
}

.site-btn._transparent {
    box-shadow: inset 0 0 0 2rem var(--main-color);
    transition-property: box-shadow, color;
}

@media (min-width: 1025px) {
    .site-btn._transparent:hover {
        box-shadow: inset 0 0 0 2rem var(--main-hover-color);
    }
}

@media (max-width: 1024px) {
    .site-btn._transparent:active {
        box-shadow: inset 0 0 0 2rem var(--main-hover-color);
    }
}
/* End */
/* /local/templates/im/assets/css/global/vars.css?17798897784352 */
/* /local/templates/im/assets/css/global/reset.css?1762453865489 */
/* /local/templates/im/assets/css/global/font.css?17624538654829 */
/* /local/templates/im/assets/css/template/main.css?177988982419625 */
/* /local/templates/im/assets/css/template/burger.css?17624538656408 */
/* /local/templates/im/assets/css/template/header.css?176245386512768 */
/* /local/templates/im/assets/css/template/breadcrumb.css?17690749564266 */
/* /local/templates/im/assets/css/template/hero.css?17746105334732 */
/* /local/templates/im/assets/css/template/footer.css?17624538657965 */
/* /local/templates/im/assets/css/components/form.css?176245386513873 */
/* /local/templates/im/assets/css/ui/site-btn.css?17624538651734 */
