/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
:root { --page-primary: #2B75EF; --page-secondary: #0C5AC7; --page-success: #198754; --page-info: #0dcaf0; --page-warning: #ffc107; --page-danger: #dc3545; --page-light: #f8f9fa; --page-dark: #151515; --page-white: #ffffff; --page-black: #000000; --page-gray-600: #575B5E; --page-gray-500: #B9C3CC; --page-gray-400: #C4C4C4; --page-primary-rgb: 43, 117, 239; --page-secondary-rgb: 12, 90, 199; --page-success-rgb: 25, 135, 84; --page-info-rgb: 13, 202, 240; --page-warning-rgb: 255, 193, 7; --page-danger-rgb: 220, 53, 69; --page-light-rgb: 248, 249, 250; --page-dark-rgb: 21, 21, 21; }

@media (prefers-reduced-motion: no-preference) { :root { scroll-behavior: smooth; } }

.page { transition: filter 500ms; }

@media (min-width: 576px) { .page { height: 100%; } }

.js-menu-opened .page { filter: blur(40px); }

.page__wrapper { display: flex; flex-direction: column; min-height: 100%; overflow: hidden; }

.page__wrapper .footer { flex: 0 0 auto; }

.page__content { flex: 1 0 auto; }

.svg-icon--stroke { fill: none; }

.descr-section__title { font-weight: 500; font-size: 2rem; line-height: 120%; letter-spacing: 0.01em; margin-bottom: 0; }

@media (min-width: 1200px) { .descr-section__title { font-size: 2.625rem; } }

.descr-section__title--small { font-size: 1.5625rem; max-width: 30.9375rem; }

.descr-section__title:not(:last-child) { margin-bottom: 2.5rem; }

.descr-section__list { position: relative; }

.descr-section__list-item { position: relative; padding-left: 2.375rem; font-size: 1rem; line-height: 150%; letter-spacing: 0.02em; }

@media (min-width: 1200px) { .descr-section__list-item { font-size: 1.3125rem; line-height: 140%; } }

.descr-section__list-item:not(:last-child) { margin-bottom: 1.25rem; }

@media (min-width: 1200px) { .descr-section__list-item:not(:last-child) { margin-bottom: 1.5rem; } }

.descr-section__list-item .svg-icon { top: 0.375rem; position: absolute; left: 0; fill: #2B75EF; }

.descr-advantage__item:not(:last-child) { margin-bottom: 2rem; }

@media (min-width: 992px) { .descr-advantage__item:not(:last-child) { margin-bottom: 7.375rem; } }

.descr-advantage__item-num { font-weight: 500; font-size: 2.75rem; line-height: 120%; letter-spacing: 0.01em; }

@media (min-width: 992px) { .descr-advantage__item-num { font-size: 3.375rem; } }

.descr-advantage__item-num:not(:last-child) { margin-bottom: 1.5rem; }

@media (min-width: 992px) { .descr-advantage__item-num:not(:last-child) { margin-bottom: 2.5rem; } }

.descr-advantage__item-pic { max-height: 312px; width: auto; }

.descr-advantage__item-descr { font-size: 1.3125rem; line-height: 140%; letter-spacing: 0.02em; }

.descr-row__text { word-wrap: break-word; }

.section-intro .row > *:first-child { position: relative; z-index: 5; }

.section-descr { padding-bottom: 2rem; }

@media (min-width: 992px) { .section-descr { padding-bottom: 4.5rem; } }

.section-descr__text { font-size: 1.3125rem; line-height: 140%; letter-spacing: 0.02em; color: rgba(21, 21, 21, 0.6); }

@media (max-width: 991.98px) { .img-fullwidth-sm { width: calc(100vw + 2px); height: 0; padding-bottom: 74.66%; margin-left: 50%; transform: translateX(-50%); } }

@media (max-width: 575px) { .d-xs-none { display: none; } }

.animation_show_element { opacity: 0; transform: translateY(100px); }

.animation_show_element.element-show { opacity: 1; transition: all .3s; transform: translateY(0%); }

html.js-menu-opened { overflow: hidden; padding-right: 22px; }

.video-element { display: flex; justify-content: center; align-items: center; cursor: pointer; }

.video-element * { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

header:not(.header--home) { position: fixed; left: 0; top: 0; width: 100%; background: #ffffff; z-index: 20; }

header:not(.header--home) + main { margin-top: 77px; }

@media (max-width: 1200px) { header:not(.header--home) + main { margin-top: 64px; } }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
*, *::before, *::after { box-sizing: border-box; }

html, body { height: 100%; }

body { font-size: 1rem; margin: 0; font-family: "Helvetica Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-weight: 400; line-height: 1.35; color: #151515; background-color: #ffffff; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: rgba(21, 21, 21, 0); }

hr { margin: 0 0; color: #000000; background-color: currentColor; border: 0; }

hr:not([size]) { height: 1px; }

h1, h2, h3, h4, h5, h6 { margin-top: 0; margin-bottom: 0.5625rem; font-weight: 500; line-height: 1.15; }

h1 { font-size: calc(1.375rem + 1.5vw); }

@media (min-width: 1200px) { h1 { font-size: 2.5rem; } }

h2 { font-size: calc(1.325rem + 0.9vw); }

@media (min-width: 1200px) { h2 { font-size: 2rem; } }

h3 { font-size: calc(1.3rem + 0.6vw); }

@media (min-width: 1200px) { h3 { font-size: 1.75rem; } }

h4 { font-size: calc(1.275rem + 0.3vw); }

@media (min-width: 1200px) { h4 { font-size: 1.5rem; } }

h5 { font-size: 1.25rem; }

h6 { font-size: 1rem; }

p { margin-top: 0; margin-bottom: 0.375rem; }

abbr[title], abbr[data-bs-original-title] { -webkit-text-decoration: underline dotted; text-decoration: underline dotted; cursor: help; -webkit-text-decoration-skip-ink: none; text-decoration-skip-ink: none; }

address { margin-bottom: 0.375rem; font-style: normal; line-height: inherit; }

ul, ol, li { padding: 0; list-style: none; }

ol, ul, dl { margin-top: 0; margin-bottom: 1.125rem; }

ol ol, ul ul, ol ul, ul ol { margin-bottom: 0; }

dt { font-weight: 700; }

dd { margin-bottom: 0.375rem; margin-left: 0; }

blockquote { margin: 0 0 1.125rem; }

b, strong { font-weight: 700; }

small { font-size: 0.875em; }

mark { padding: 0.2em; background-color: #fcf8e3; }

sub, sup { font-size: 0.75em; position: relative; line-height: 0; vertical-align: baseline; }

sub { bottom: -.25em; }

sup { top: -.5em; }

a { color: inherit; text-decoration: none; }

a:hover { color: #000000; }

a:not([href]):not([class]), a:not([href]):not([class]):hover { color: inherit; text-decoration: none; }

pre, code, kbd, samp { font-size: 1em; font-family: "Helvetica Neue", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; direction: ltr /* rtl:ignore */; unicode-bidi: bidi-override; }

pre { font-size: 0.875em; display: block; margin-top: 0; margin-bottom: 1.125rem; overflow: auto; }

pre code { font-size: inherit; color: inherit; word-break: normal; }

code { font-size: 0.875em; color: #d63384; word-wrap: break-word; }

a > code { color: inherit; }

kbd { padding: 0.2rem 0.4rem; font-size: 0.875em; color: #ffffff; background-color: #e6e6e6; border-radius: 4px; }

kbd kbd { font-size: 1em; padding: 0; font-weight: 700; }

figure { margin: 0 0 1.125rem; }

img { max-width: 100%; }

svg { max-width: 100%; max-height: 100%; stroke-width: 0; fill: currentColor; pointer-events: none; }

img, svg { vertical-align: middle; }

table { caption-side: bottom; border-collapse: collapse; }

caption { padding-top: 0.5625rem; padding-bottom: 0.5625rem; color: #6c757d; text-align: left; }

th { text-align: inherit; text-align: -webkit-match-parent; }

thead, tbody, tfoot, tr, td, th { border-color: inherit; border-style: solid; border-width: 0; }

label { display: inline-block; }

button { border-radius: 0; border: none; padding: 0; margin: 0; background-color: transparent; color: inherit; display: inline-block; }

button:focus:not(:focus-visible) { outline: 0; }

input, button, select, optgroup, textarea { font-size: inherit; margin: 0; font-family: inherit; line-height: inherit; }

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

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

button, select { text-transform: none; }

[role='button'] { cursor: pointer; }

select { word-wrap: normal; }

select:disabled { opacity: 1; }

[list]::-webkit-calendar-picker-indicator { display: none; }

button, [type='button'], [type='reset'], [type='submit'] { -webkit-appearance: button; }

button:not(:disabled), [type='button']:not(:disabled), [type='reset']:not(:disabled), [type='submit']:not(:disabled) { cursor: pointer; }

::-moz-focus-inner { padding: 0; border-style: none; }

textarea { resize: none; }

fieldset { min-width: 0; padding: 0; margin: 0; border: 0; }

legend { float: left; width: 100%; padding: 0; margin-bottom: 0.375rem; font-size: 1.25rem; line-height: inherit; }

legend + * { clear: left; }

::-webkit-inner-spin-button { height: auto; }

[type='search'] { outline-offset: -2px; -webkit-appearance: textfield; }

::-webkit-search-decoration { -webkit-appearance: none; }

::-webkit-color-swatch-wrapper { padding: 0; }

::-webkit-file-upload-button { font: inherit; -webkit-appearance: button; }

output { display: inline-block; }

iframe { border: 0; }

summary { display: list-item; cursor: pointer; }

progress { vertical-align: baseline; }

[hidden] { display: none !important; }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
h1, .h1 { font-weight: bold; font-size: 2.5rem; line-height: 110%; text-transform: uppercase; }

@media (min-width: 1200px) { h1, .h1 { font-size: 5rem; } }

h2, .h2 { font-weight: normal; font-size: 2.5rem; line-height: 140%; letter-spacing: 0.01em; text-transform: uppercase; }

@media (min-width: 1200px) { h2, .h2 { font-size: 4rem; } }

h3, .h3 { font-weight: 500; font-size: 2.75rem; line-height: 120%; letter-spacing: 0.01em; }

@media (min-width: 1200px) { h3, .h3 { font-size: 3.375rem; } }

h4, .h4 { font-weight: 500; font-size: 2rem; line-height: 120%; letter-spacing: 0.01em; }

@media (min-width: 1200px) { h4, .h4 { font-size: 2.625rem; } }

h5, .h5 { font-weight: normal; font-size: 1.875rem; line-height: 140%; letter-spacing: 0.02em; }

h6, .h6 { font-weight: 500; font-size: 1.3125rem; line-height: 120%; letter-spacing: 0.01em; }

@media (min-width: 1200px) { h6, .h6 { font-size: 1.5625rem; } }

.link { color: #2B75EF; font-size: 1rem; line-height: 150%; text-align: center; letter-spacing: 0.01em; transition: all 0.2s ease-in-out; /* pointer: fine - Desktop/Laptop and Desktop/Laptop+Touchscreen any-pointer: fine - Touchscreen+Mouse and Desktop/Laptop and Touchscreen and Desktop/Laptop+Touchscreen */ }

@media (prefers-reduced-motion: reduce) { .link { transition: none; } }

@media (pointer: fine) and (any-hover: hover), (min-width: 0\0) { .link:hover { color: #0C5AC7; } }

.subtext { font-weight: normal; font-size: 1.125rem; line-height: 140%; letter-spacing: 0.01em; }

@media (min-width: 1200px) { .subtext { font-size: 1.3125rem; letter-spacing: 0.02em; } }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
.header { border-bottom: 0.0625rem solid; border-color: rgba(21, 21, 21, 0.2); }

.header .container-fluid { max-width: calc((100% - 6%) + ( var(--page-gutter-x, 0.9375rem) * 2)); }

.header__logo { display: block; width: 3.25rem; height: 3.25rem; }

.header__nav { display: flex; margin: 0 2.1875rem; }

.header__link { transition: color; }

@media (prefers-reduced-motion: reduce) { .header__link { transition: none; } }

.header__link:hover { color: #2B75EF; }

.header__link:not(:first-child) { margin-left: 2.5rem; }

.header--home { position: absolute; z-index: 1; top: 0; left: 0; right: 0; border: none; }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
.footer { background-color: #2B75EF; color: #ffffff; font-size: 1.125rem; line-height: 140%; letter-spacing: 0.02em; }

@media (min-width: 992px) { .footer { font-size: 1.3125rem; } }

.footer a:hover { color: #ffffff; }

.footer__mail { font-size: 2rem; line-height: 140%; letter-spacing: 0.02em; word-wrap: break-word; }

@media (min-width: 1200px) { .footer__mail { font-size: 3.25rem; } }

.footer__coopyright { color: rgba(255, 255, 255, 0.6); }

.footer__coopyright a:hover { color: rgba(255, 255, 255, 0.6); }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
.form__group { display: block; margin-bottom: 0.6rem; width: 100%; padding-bottom: 1.0125rem; }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
.form__label { display: block; padding-bottom: 0.375rem; }

.form__field { width: 100%; outline: none; font-size: 1.00625rem; }

.form__field.placeholder { transition: all 0.15s ease; font-size: 1.00625rem; }

.form__field:-moz-placeholder { -moz-transition: all 0.15s ease; transition: all 0.15s ease; font-size: 1.00625rem; }

.form__field::-moz-placeholder { -moz-transition: all 0.15s ease; transition: all 0.15s ease; font-size: 1.00625rem; }

.form__field:-ms-input-placeholder { -ms-transition: all 0.15s ease; transition: all 0.15s ease; font-size: 1.00625rem; }

.form__field::-webkit-input-placeholder { -webkit-transition: all 0.15s ease; transition: all 0.15s ease; font-size: 1.00625rem; }

.form__field:focus.placeholder { opacity: 0; transform: translateX(0.375rem); }

.form__field:focus:-moz-placeholder { opacity: 0; transform: translateX(0.375rem); }

.form__field:focus::-moz-placeholder { opacity: 0; transform: translateX(0.375rem); }

.form__field:focus:-ms-input-placeholder { opacity: 0; transform: translateX(0.375rem); }

.form__field:focus::-webkit-input-placeholder { opacity: 0; transform: translateX(0.375rem); }

.form__field.gray_border_theme { border: 1px solid #E3EAEE; border-radius: 10px; padding: 10px 14px; }

.form__field.gray_border_theme.placeholder { color: #95A2B1; }

.form__field.gray_border_theme:-moz-placeholder { color: #95A2B1; }

.form__field.gray_border_theme::-moz-placeholder { color: #95A2B1; }

.form__field.gray_border_theme:-ms-input-placeholder { color: #95A2B1; }

.form__field.gray_border_theme::-webkit-input-placeholder { color: #95A2B1; }

.form__select { width: 100%; }

.form__dropdown-button { position: relative; text-align: left; width: 100%; padding-right: 1.75rem; z-index: 1; }

.form__dropdown-button .svg-icon { transition: transform 0.15s ease; position: absolute; right: 0.4375rem; top: 50%; width: 0.875rem; height: 0.875rem; transform-origin: center center; transform: translateY(-50%) rotateX(0); will-change: transform; }

.form__dropdown-button:hover { cursor: pointer; }

.form__dropdown-button.show .svg-icon { transform: translateY(-50%) rotateX(180deg); }

.form__dropdown-button .spinner-border { color: #151515; }

.form__dropdown-list { background-color: #ffffff; box-shadow: 0 0.45rem 1.5rem 0 rgba(0, 0, 0, 0.1); border-radius: 4px; }

.form__dropdown-list-item { transition: background-color 0.15s ease; cursor: pointer; background-color: #ffffff; }

.form__dropdown-list-item:hover, .form__dropdown-list-item.is-selected { background-color: rgba(21, 21, 21, 0.05); }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
.radio__content, .checkbox__content { position: relative; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.radio__content:before, .radio__content:after, .checkbox__content:before, .checkbox__content:after { content: ""; display: block; position: absolute; }

.radio__content:before, .checkbox__content:before { border: 1px solid #0C5AC7; left: 0; top: 2px; }

.radio__content:after, .checkbox__content:after { transition: transform 0.15s ease; background-color: #0C5AC7; transform: scale3d(0, 0, 0); }

.form__radio, .form__checkbox { cursor: pointer; }

.form__radio input:checked + .radio__content:after, .form__radio input:checked + .checkbox__content:after, .form__checkbox input:checked + .radio__content:after, .form__checkbox input:checked + .checkbox__content:after { transform: scale3d(1, 1, 1); }

.form__radio .radio__content { padding-left: 24px; }

.form__radio .radio__content:before, .form__radio .radio__content:after { border-radius: 50%; }

.form__radio .radio__content:before { width: 16px; height: 16px; }

.form__radio .radio__content:after { width: 8px; height: 8px; top: calc(4px + 2px); left: 4px; }

.form__checkbox .checkbox__content { padding-left: 24px; }

.form__checkbox .checkbox__content:before, .form__checkbox .checkbox__content:after { border-radius: 2px; }

.form__checkbox .checkbox__content:before { width: 16px; height: 16px; }

.form__checkbox .checkbox__content:after { width: 8px; height: 8px; top: calc(4px + 2px); left: 4px; }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
.form__group { position: relative; }

.form__group.is-need-validate { padding-bottom: 1.0125rem; }

.form__group.is-need-validate .form__group-notify { font-size: 0.725rem; white-space: nowrap; position: absolute; color: #dc3545; left: 0; bottom: 0; }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
@media (max-width: 575px) { .container .ratio { width: 100vw; height: calc(100vw / 1.34); margin-left: calc((100vw - 360px + 0.9375rem * 2) / 2 * -1); } }

@media (max-width: 575px) { .ratio { height: calc(100vw / 1.34); } }

.ratio .lazy__image { position: absolute; }

.lazy__image { position: relative; }

.lazy__image-element { transition: opacity, 0.3s; opacity: 0; }

@media (prefers-reduced-motion: reduce) { .lazy__image-element { transition: none; } }

.lazy__image-element.is-loaded { opacity: 1; }

.lazy__image-element.is-error:before { content: ""; position: absolute; display: block; left: 0; top: 0; width: 100%; height: 100%; background-color: #f8f9fa; }

.lazy__image-element.is-error:after { font-size: 0.875rem; font-family: "Helvetica Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; content: attr(data-error); display: block; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); white-space: nowrap; font-style: italic; }

.lazy__image-element.is-error + .lazy__image-loader .spinner-border { -webkit-animation: none; animation: none; border: 0 none; }

.lazy__image-element[style^='background-image'] { background-position: center center; background-size: cover; background-repeat: no-repeat; }

.lazy__image-loader { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 1.75em; max-height: 1.75em; }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
[data-bs-toggle='modal'] { cursor: pointer; /* pointer: fine - Desktop/Laptop and Desktop/Laptop+Touchscreen any-pointer: fine - Touchscreen+Mouse and Desktop/Laptop and Touchscreen and Desktop/Laptop+Touchscreen */ }

.modal { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.modal .gray_color { color: #95A2B1; font-size: 14px; text-align: center; }

.modal-content { padding: 1.5rem 2.25rem 2.25rem 2.25rem; }

.modal-body { padding: 2.25rem 0 0 0; overflow-x: hidden; }

.modal-close { transition: color; color: #95A2B1; /* pointer: fine - Desktop/Laptop and Desktop/Laptop+Touchscreen any-pointer: fine - Touchscreen+Mouse and Desktop/Laptop and Touchscreen and Desktop/Laptop+Touchscreen */ }

@media (prefers-reduced-motion: reduce) { .modal-close { transition: none; } }

.modal-close svg { width: 0.9rem; height: 0.9rem; }

.modal-close .svg-icon use { color: inherit; }

.modal--video .modal-content { background: transparent; padding: 0; border: none; }

.modal--video .modal-dialog { width: calc(95vh * 1.6); height: 95vh; max-height: calc(95vw / 1.6); max-width: 95vw; position: relative; }

.modal--video .modal-dialog-scrollable .modal-content { max-height: none; overflow: hidden; }

.modal--video .modal-body { padding: 0; display: flex; justify-content: center; align-items: center; }

.modal--video video, .modal--video iframe { width: 100%; }

.modal--video .modal-close { position: absolute; right: 15px; top: 15px; z-index: 1; color: #ffffff; }

.none { display: none !important; }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
.button, a.button { display: inline-flex; align-items: center; justify-content: center; cursor: pointer; outline: none; border-radius: 1.75rem; padding: 0.5625rem 1.25rem; background-color: #2B75EF; color: #ffffff; font-size: 0.875rem; line-height: 150%; text-align: center; letter-spacing: 0.01em; transition: all 0.2s ease-in-out; /* pointer: fine - Desktop/Laptop and Desktop/Laptop+Touchscreen any-pointer: fine - Touchscreen+Mouse and Desktop/Laptop and Touchscreen and Desktop/Laptop+Touchscreen */ }

@media (prefers-reduced-motion: reduce) { .button, a.button { transition: none; } }

@media (min-width: 1200px) { .button, a.button { padding: 0.75rem 1.5rem; font-size: 1rem; } }

@media (pointer: fine) and (any-hover: hover), (min-width: 0\0) { .button:hover, a.button:hover { background-color: #0C5AC7; } }

.button.is-disabled, a.button.is-disabled { pointer-events: none; background-color: #B9C3CC; color: #575B5E; }

.button--transparent, a.button--transparent { padding: 0.6875rem 1.375rem; border: 0.0625rem solid #2B75EF; color: #2B75EF; background: transparent; /* pointer: fine - Desktop/Laptop and Desktop/Laptop+Touchscreen any-pointer: fine - Touchscreen+Mouse and Desktop/Laptop and Touchscreen and Desktop/Laptop+Touchscreen */ }

@media (pointer: fine) and (any-hover: hover), (min-width: 0\0) { .button--transparent:hover, a.button--transparent:hover { border-color: #0C5AC7; color: #0C5AC7; background: transparent; } }

.button--transparent.is-disabled, a.button--transparent.is-disabled { pointer-events: none; border-color: #B9C3CC; color: #575B5E; background: transparent; }

.button--lang, a.button--lang { padding: 0; width: 3rem; height: 3rem; }

.button--menu-open, a.button--menu-open { display: flex; align-items: center; justify-content: center; }

.button--menu-open::after, a.button--menu-open::after { content: ""; display: block; width: 1.125rem; height: 1.125rem; background-image: url("../img/menu-burger.svg"); background-size: contain; background-position: center; flex-shrink: 0; }

@media (min-width: 1200px) { .button--menu-open::after, a.button--menu-open::after { width: 1rem; height: 1rem; margin-left: 8px; } }

@media (max-width: 1199.98px) { .button--menu-open, a.button--menu-open { width: 2.4375rem; height: 2.4375rem; border-radius: 50%; padding: 0; }
  .button--menu-open .button__content, a.button--menu-open .button__content { display: none; } }

.button--menu-close, a.button--menu-close { display: flex; align-items: center; justify-content: center; }

.button--menu-close::after, a.button--menu-close::after { content: ""; display: block; width: 1rem; height: 1rem; background-image: url("../img/menu-close.svg"); background-size: contain; background-position: center; flex-shrink: 0; }

@media (min-width: 1200px) { .button--menu-close::after, a.button--menu-close::after { margin-left: 0.5625rem; } }

@media (max-width: 1199.98px) { .button--menu-close, a.button--menu-close { width: 2.4375rem; height: 2.4375rem; border-radius: 50%; padding: 0; }
  .button--menu-close .button__content, a.button--menu-close .button__content { display: none; } }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
.toast { transition: all 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); padding: 0.75rem 1.5rem; display: inline-flex; align-items: center; box-shadow: 0 0.45rem 0.375rem rgba(0, 0, 0, 0.15); border-radius: 4px; position: fixed; opacity: 0; max-width: calc(50% - 1.5rem); z-index: 7; color: #ffffff; }

.toast.status--success { background-color: #198754; }

.toast.status--warning { background-color: #ffc107; }

.toast.status--info { background-color: #0dcaf0; }

.toast.status--danger { background-color: #dc3545; }

.toast-text { font-size: 0.875rem; margin-bottom: 0; padding-left: 1.125rem; padding-right: 0.75rem; font-weight: 500; }

.toast-close { color: inherit; width: 2em; height: 2em; padding: 0 0.5em; }

.toast-right { right: 15px; }

.toast-left { left: 15px; }

.toast-top { top: -150px; }

.toast-bottom { bottom: -150px; }

.toast-icon { width: 1.7em; height: 1.7em; margin-right: 1em; }

.toast-center { margin-left: auto; margin-right: auto; left: 0; right: 0; max-width: -webkit-fit-content; max-width: -moz-fit-content; max-width: fit-content; }

.toast.is-active { opacity: 1; }

@media (max-width: 374.98px) { .toast-right, .toast-left { margin-left: auto; margin-right: auto; left: 0; right: 0; max-width: calc(100% - 1.875rem); } }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
@-webkit-keyframes fadeIn { from { opacity: 0;
    visibility: hidden; }
  to { opacity: 1;
    visibility: visible; } }
@keyframes fadeIn { from { opacity: 0;
    visibility: hidden; }
  to { opacity: 1;
    visibility: visible; } }

.dropdown { position: relative; }

.dropdown-button-icon { flex: 0 0 auto; }

.dropdown-button-icon svg { width: 1.5rem; height: 1.5rem; }

.dropdown-button-arrow { transition: transform; }

@media (prefers-reduced-motion: reduce) { .dropdown-button-arrow { transition: none; } }

.dropdown-button-arrow svg { width: 0.75rem; height: 0.75rem; }

.dropdown-button.show .dropdown-button-arrow { transform: rotate(180deg); }

.dropdown-menu { display: none; position: absolute; z-index: 5; min-width: 100%; }

.dropdown-menu-inner { width: 100%; margin-top: 0.75rem; background-color: #ffffff; border-radius: 4px; padding: 1em; }

.dropdown-menu.show { display: block; }

.dropdown-menu.show .dropdown-menu-inner { -webkit-animation: fadeIn 0.15s ease both; animation: fadeIn 0.15s ease both; }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
@media (min-width: 576px) { .breadcrumbs { display: flex; align-items: center; flex-wrap: wrap; padding-top: 0.75rem; padding-bottom: 0.75rem; } }

@media (max-width: 575.98px) { .breadcrumbs { display: none; } }

.breadcrumbs__item { position: relative; display: flex; align-items: center; }

.breadcrumbs__item + .breadcrumbs__item { margin-left: 0.75rem; }

.breadcrumbs__item + .breadcrumbs__item:before { content: '/'; display: inline; margin-right: 0.75rem; }

.breadcrumbs__current { cursor: default; }

.current-page { padding-bottom: 1.5rem; }

@media (min-width: 1200px) { .current-page { padding-bottom: 2.5rem; } }

.current-page__name { display: flex; align-items: center; justify-content: flex-start; color: rgba(21, 21, 21, 0.6); position: relative; font-size: 1.3125rem; }

.current-page__name::before { content: ""; display: block; position: absolute; position: relative; width: 2rem; height: 0.1875rem; margin-right: 1rem; background-color: #2B75EF; }

.help__descr { font-size: 1.3125rem; line-height: 140%; letter-spacing: 0.02em; color: rgba(21, 21, 21, 0.6); }

.help__descr a { text-decoration: underline; color: #2B75EF; }

.help__descr a:hover { text-decoration: none; }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
.menu { position: fixed; top: 0; right: 0; left: 0; bottom: 0; z-index: 100; background: rgba(255, 255, 255, 0.6); display: flex; flex-direction: column; overflow: auto; -ms-scroll-chaining: none; overscroll-behavior: contain; opacity: 0; z-index: -1; visibility: hidden; transition: visibility 500ms 0s, z-index 500ms 0s, opacity 500ms; }

.menu .container-fluid { max-width: calc((100% - 6%) + (var(--page-gutter-x, 0.9375rem) * 2)); }

.js-menu-opened .menu { opacity: 1; z-index: 100; visibility: visible; transition: visibility 0s, z-index 0s, opacity 500ms; padding-right: 21px; }

.menu__container { flex: 1 1 0; display: flex; flex-direction: column; }

.menu__content { margin-top: 4.875rem; padding-bottom: 2.5rem; }

@media (min-width: 1200px) { .menu__content { margin-top: 3.375rem; display: flex; } }

.menu__items { flex: 1 1 0; }

.menu__sublinks-wrapper { flex: 1 1 0; align-self: center; display: flex; flex-direction: column; align-items: flex-start; visibility: hidden; opacity: 0; transition: visibility 300ms 0s, opacity 300ms; }

.menu--sublinks-showed .menu__sublinks-wrapper { visibility: visible; opacity: 1; transition: visibility 0s, opacity 300ms; }

@media (max-width: 1199.98px) { .menu__sublinks-wrapper { display: none; } }

.menu__item:not(:first-child) { margin-top: 1.5rem; }

@media (min-width: 1200px) { .menu__item:not(:first-child) { margin-top: 1.875rem; } }

.menu__link { text-transform: uppercase; transition: color 300ms; cursor: pointer; }

.menu__link:hover { color: #2B75EF; }

.menu__link--active { color: #2B75EF; }

.menu__subitems { padding: 0; height: 0; opacity: 0; visibility: hidden; transition: height 300ms 0s, padding 300ms, visibility 300ms 0s, opacity 300ms; }

@media (max-width: 1199.98px) { .menu--sublinks-showed .menu__subitems { padding: 2rem 0 0.5rem; height: auto; visibility: visible; opacity: 1; transition: height 0s, visibility 0s, padding 300ms, opacity 300ms; } }

.menu__sublink { display: block; font-size: 1.125rem; line-height: 140%; letter-spacing: 0.01em; padding-left: 2rem; overflow: hidden; position: relative; }

@media (min-width: 1200px) { .menu__sublink { font-size: 1.3125rem; padding-left: 0; padding-right: 1.875rem; transition: padding-left 300ms; }
  .menu__sublink:hover { padding-left: 1.875rem; padding-right: 0; }
  .menu__sublink:hover:before { transform: none; opacity: 1; } }

.menu__sublink:not(:first-child) { margin-top: 1.5rem; }

@media (min-width: 1200px) { .menu__sublink:not(:first-child) { margin-top: 2.25rem; } }

.menu__sublink:before { content: ""; position: absolute; left: 0; top: 0.25rem; width: 1.125rem; height: 1rem; background-image: url("../img/menu-arrow.svg"); background-size: contain; background-position: center; }

@media (min-width: 1200px) { .menu__sublink:before { top: 0.4375rem; opacity: 0; transform-origin: left center; transform: translateX(-100%) scale(0); transition: all 300ms; } }

.menu__footer { margin-top: auto; padding: 2.5rem 0 2rem; border-top: 1px solid #C3C5C7; display: flex; flex-direction: column; align-items: flex-start; }

@media (min-width: 1200px) { .menu__footer { flex-direction: row; } }

.menu__footer > * { font-size: 1.125rem; }

@media (max-width: 1199.98px) { .menu__footer > *:not(:first-child) { margin-top: 1.5rem; } }

.menu__footer a { text-decoration: underline; }

.menu__footer a:hover { text-decoration: none; }

@media (min-width: 1200px) { .menu__email { margin-left: 3.375rem; } }

.menu__lang { color: rgba(21, 21, 21, 0.6); }

@media (min-width: 1200px) { .menu__lang { margin-left: auto; } }

.menu__copyright { color: rgba(21, 21, 21, 0.6); }

@media (min-width: 1200px) { .menu__copyright { margin-left: 2.5rem; } }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
.home { display: flex; flex-direction: column; height: 100vh; }

.home__tip { position: fixed; z-index: 1; top: -50%; left: -50%; width: 2rem; height: 2rem; border-radius: 50%; background-color: #2B75EF; border: 0.375rem solid #ffffff; box-shadow: 0px 0px 34px 5px #0060ff; }

.home__tip-content { display: flex; flex-direction: column; max-width: 11.875rem; }

.home__tip-text { font-size: 1.3125rem; font-weight: 500; line-height: 120%; letter-spacing: 0.01em; color: #151515; }

.home__tip-link { font-weight: normal; font-size: 1rem; line-height: 150%; letter-spacing: 0.01em; margin-top: 1rem; color: #2B75EF; display: inline-flex; align-items: center; }

.home__tip-link:hover { color: #2B75EF; }

.home__tip-link:hover:after { transform: translateX(0.5rem); }

.home__tip-link:after { content: ""; display: block; width: 1.0625rem; height: 0.5rem; margin-left: 0.5rem; background-repeat: no-repeat; background-position: center; background-size: contain; background-image: url("../img/home/area-link-arrow.svg"); transition: transform 300ms; }

.home__content { height: calc(100vh - 100px); }

@media (max-width: 968px) { .home__content { height: 100vh; } }

.home__content #canvas_container__parent, .home__content #canvas_container { height: inherit; position: relative; transition: opacity 0.2s ease-in-out; }

.home__map { height: inherit; }

.home__map-wrapper { position: relative; display: block; width: 100%; height: 48.75rem; }

.home__map-areas { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 1; pointer-events: all; width: 100%; }

.home__map-area { opacity: 0; }

.home__map-group { cursor: pointer; }

.home__map-point { r: 0.0625rem; opacity: 0; }

.home__footer { display: flex; align-items: center; height: 6.25rem; padding-top: 0.25rem; background-color: transparent; box-shadow: 1px 0 30px rgba(0, 0, 0, 0.13); position: relative; z-index: 1; }

@media (max-width: 968px) { .home__footer { position: absolute; width: 100%; bottom: 2.5vh; height: -webkit-max-content; height: -moz-max-content; height: max-content; box-shadow: none; } }

.home__nav { width: 80.875rem; max-width: 95%; margin: auto; display: flex; align-items: center; justify-content: space-between; }

@media (max-width: 968px) { .home__nav { flex-direction: column; width: 100%; gap: 0.625rem 0; } }

.home__nav-item { display: flex; align-items: center; max-width: 14.25rem; }

.home__nav-item:hover { opacity: 0.8; }

@media (max-width: 968px) { .home__nav-item { background-color: rgba(40, 86, 246, 0.75); border-radius: 30px; color: white; padding: 0.625rem 1.25rem; max-width: unset; width: 252px; } }

.home__nav-item-icon { position: relative; width: 2.5rem; height: 2.5rem; background-color: #f0f0f0; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #2B75EF; transition: all 300ms; flex-shrink: 0; }

.home__nav-item-icon::after { content: ""; display: block; position: absolute; top: -10%; left: -10%; width: 120%; height: 120%; border: 0.0625rem solid #95baf7; border-radius: 50%; }

.home__nav-item-icon svg { width: 1.25rem; height: 1.875rem; }

.home__nav-item--active .home__nav-item-icon { color: #ffffff !important; background-color: #2B75EF !important; }

.home__nav-item-name { margin-left: 1.25rem; max-width: 7.5rem; text-align: left; }

@media (max-width: 968px) { .home__nav-item-name { max-width: unset; } }

.home .tippy-box { padding: 1.25rem 1.5rem; background-color: #ffffff; border-radius: 0.75rem; }

.home .tippy-content { padding: 0; }

.home .tippy-arrow { color: #ffffff; }

.nn { color: red !important; }

.sk-chasing-dots { opacity: 0; width: 4rem; height: 4rem; position: absolute; top: 50%; left: 50%; margin-left: -2rem; margin-top: -2rem; text-align: center; -webkit-animation: sk-chasing-dots-rotate 2s infinite linear; animation: sk-chasing-dots-rotate 2s infinite linear; }

.sk-chasing-dots .sk-child { width: 2rem; height: 2rem; display: inline-block; position: absolute; top: 0; background-color: #2B75EF; border-radius: 100%; -webkit-animation: sk-chasing-dots-bounce 2s infinite ease-in-out; animation: sk-chasing-dots-bounce 2s infinite ease-in-out; }

.sk-chasing-dots .sk-dot-2 { top: auto; bottom: 0; -webkit-animation-delay: -1s; animation-delay: -1s; }

@-webkit-keyframes sk-chasing-dots-rotate { 100% { transform: rotate(360deg); } }

@keyframes sk-chasing-dots-rotate { 100% { transform: rotate(360deg); } }

@-webkit-keyframes sk-chasing-dots-bounce { 0%, 100% { transform: scale(0); }
  50% { transform: scale(1); } }

@keyframes sk-chasing-dots-bounce { 0%, 100% { transform: scale(0); }
  50% { transform: scale(1); } }

.page_loading #canvas_container { opacity: 0; }

.page_loading .sk-chasing-dots { opacity: 1; }

/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
/* Colors variables start */
/* Colors variables end */
/* Custom variables start*/
/* Custom variables end*/
/* Bootstrap variables start*/
/* Bootstrap variables end*/
/* Responsive font-size start*/
/* Responsive font-size end*/
/*---------------pseudo element default styles---------------*/
/*---------------------pseudo full size---------------------*/
/*--------------------proportional ratio--------------------*/
/*--------------------placeholder styles--------------------*/
/*------------------------transition------------------------*/
/*--------------------background image--------------------*/
/*--------------------absolute alignment--------------------*/
/*------------------make triangle------------------*/
/*---------------------------fonts---------------------------*/
/*-----------------------map get recursive-----------------------*/
/*-----------------------interaction support-----------------------*/
.about-numbers { padding: 2.25rem 0; }

@media (min-width: 992px) { .about-numbers { margin: 4.5rem 0; padding: 2.5rem 0; border-top: 0.0625rem solid; border-bottom: 0.0625rem solid; border-color: #C4C4C4; } }

.about-numbers__descr { font-size: 1.125rem; line-height: 140%; letter-spacing: 0.01em; color: rgba(21, 21, 21, 0.6); margin-bottom: 0; }

.about-numbers__descr:not(:last-child) { margin-bottom: 0.25rem; }

.about-numbers__num { font-weight: bold; font-size: 2.625rem; line-height: 140%; letter-spacing: 0.02em; margin-bottom: 0; }

.about-perspectives__info { font-size: 1.3125rem; line-height: 140%; letter-spacing: 0.02em; color: rgba(21, 21, 21, 0.6); }

.about-perspectives__item-icon { display: flex; justify-content: center; height: 5.9375rem; }

.about-perspectives__item-icon:not(:last-child) { margin-bottom: 0.75rem; }

.about-perspectives__item-icon .svg-icon { fill: #2B75EF; }

.about-perspectives__item-descr { font-size: 1.3125rem; line-height: 140%; letter-spacing: 0.02em; }

.vacancies-intro__descr { font-size: 1.125rem; line-height: 140%; letter-spacing: 0.01em; color: rgba(21, 21, 21, 0.6); }

@media (min-width: 1200px) { .vacancies-intro__descr { font-size: 1.3125rem; letter-spacing: 0.02em; } }

@media (max-width: 575px) { .vacancies-list .ratio.ratio-21x9 { height: 460px; } }

.vacancies-list__item { padding: 1.75rem 0; border-bottom: 0.0625rem solid; border-color: rgba(21, 21, 21, 0.2); }

@media (min-width: 992px) { .vacancies-list__item { padding: 3.125rem 0; } }

.vacancies-list__item-descr { color: rgba(21, 21, 21, 0.6); }

.contacts-intro__descr { font-size: 1.125rem; line-height: 140%; letter-spacing: 0.02em; color: rgba(21, 21, 21, 0.6); }

@media (min-width: 992px) { .contacts-intro__descr { font-size: 1.3125rem; } }

.contacts-block__descr { font-size: 1.125rem; line-height: 140%; letter-spacing: 0.01em; color: rgba(21, 21, 21, 0.6); }

.contacts-block__name { font-weight: 500; font-size: 1.3125rem; line-height: 120%; letter-spacing: 0.01em; }

.contacts-block__text { font-size: 1.125rem; line-height: 140%; letter-spacing: 0.01em; }

.contacts-block a { transition: all 0.15s ease; /* pointer: fine - Desktop/Laptop and Desktop/Laptop+Touchscreen any-pointer: fine - Touchscreen+Mouse and Desktop/Laptop and Touchscreen and Desktop/Laptop+Touchscreen */ }

@media (pointer: fine) and (any-hover: hover), (min-width: 0\0) { .contacts-block a:hover { color: #0C5AC7; } }

.documents_title { margin-bottom: 3.125rem; color: #0c5ac7; }

.documents_list { display: grid; grid-template-columns: repeat(auto-fill, 565px); grid-gap: 70px; margin: 1.25rem 0; }

@media (max-width: 565px) { .documents_list { grid-template-columns: 1fr; } }

.documents_item { display: flex; align-items: start; }

.documents_item svg { flex-shrink: 0; margin-right: 32px; }

.documents_item p { font-weight: 500; font-size: 30px; line-height: 140%; letter-spacing: 0.02em; }

/*# sourceMappingURL=common.css.map */
