

/* Start:/local/templates/main/css/vendor.css?17032529566126*/
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}
/* End */


/* Start:/local/templates/main/css/app.css?1722954316167315*/
@charset "UTF-8";
.btn-reset {
    padding: 0;
    border: 0;
    background: transparent
}

.overflow-hidden {
    overflow: hidden
}

.overflow-x-hidden, .overflow-y-hidden {
    overflow-x: hidden
}

.ripple-hover {
    --width: 100%;
    --time: 1s;
    position: relative;
    display: inline-block;
    height: 100%;
    overflow: hidden
}

.ripple-hover:hover .ripple {
    width: calc(var(--width) * 3);
    padding-top: calc(var(--width) * 3)
}

.ripple-hover .ripple {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-radius: 100%;
    background: #483593;
    transform: translate(-50%, -50%);
    opacity: 1;
    transition: width var(--time), padding-top var(--time);
    content: ""
}

.flickity-page-dots {
    display: flex;
    justify-content: center;
    margin: 4rem 0 1rem;
    padding: 0;
    list-style: none
}

@media (max-width: 1023px) {
    .flickity-page-dots {
        display: none
    }
}

.flickity-page-dots .dot {
    width: 12px;
    height: 12px;
    margin-right: 3rem;
    border-radius: 100%;
    background-color: #483593;
    cursor: pointer;
    opacity: .4;
    transition: .25s ease
}

.flickity-page-dots .dot:last-child {
    margin-right: 0
}

.flickity-page-dots .dot.is-selected {
    position: relative;
    opacity: 1
}

.flickity-page-dots .dot.is-selected:after {
    position: absolute;
    top: -5px;
    left: -5px;
    width: 22px;
    height: 22px;
    padding: 5px;
    border: 1px solid #483593;
    border-radius: 100%;
    content: ""
}

.flickity-button {
    position: absolute;
    bottom: 0;
    display: inline-flex;
    justify-content: center;
    margin: 0;
    padding: 1rem;
    border: none;
    background-color: transparent;
    outline: none
}

@media (max-width: 1023px) {
    .flickity-button {
        display: none
    }
}

.flickity-button-icon {
    width: 1.3rem;
    height: 1.3rem;
    fill: #483593
}

.next {
    right: 0;
    left: auto;
    transform: translateX(-1600%)
}

.previous {
    transform: translateX(1600%)
}

.loader {
    position: absolute;
    top: calc(50% - 38px);
    left: calc(50% - 38px);
    z-index: 3;
    width: 100px;
    height: 100px;
    border: 11px solid hsla(0, 0%, 100%, .2);
    border-left-color: #fff;
    border-radius: 50%;
    -webkit-animation: loader-animation 1.1s linear infinite;
    animation: loader-animation 1.1s linear infinite
}

@-webkit-keyframes loader-animation {
    0% {
        transform: rotate(0deg)
    }
    to {
        transform: rotate(1turn)
    }
}

@keyframes loader-animation {
    0% {
        transform: rotate(0deg)
    }
    to {
        transform: rotate(1turn)
    }
}

@font-face {
    font-family: Montserrat;
    src: url(/local/templates/main/css/../fonts/Montserrat/400.woff2) format("woff2"), url(/local/templates/main/css/../fonts/Montserrat/400.woff) format("woff");
    font-style: normal;
    font-weight: 400;
    font-display: swap
}

@font-face {
    font-family: Montserrat;
    src: url(/local/templates/main/css/../fonts/Montserrat/500.woff2) format("woff2"), url(/local/templates/main/css/../fonts/Montserrat/500.woff) format("woff");
    font-style: normal;
    font-weight: 500;
    font-display: swap
}

@font-face {
    font-family: Montserrat;
    src: url(/local/templates/main/css/../fonts/Montserrat/700.woff2) format("woff2"), url(/local/templates/main/css/../fonts/Montserrat/700.woff) format("woff");
    font-style: normal;
    font-weight: 700;
    font-display: swap
}

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

body {
    display: flex;
    flex-direction: column
}

::-webkit-scrollbar {
    width: 5px;
    height: 5px
}

::-webkit-scrollbar-track {
    background: transparent
}

::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: rgba(130, 131, 133, .7)
}

.transition-disabled * {
    transition: none !important
}

.hidden, [hidden] {
    display: none !important
}

.disabled {
    cursor: not-allowed;
    opacity: .33
}

body, html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    min-height: 100vh;
    margin: 0;
    color: #333;
    font-family: Montserrat, sans-serif
}

main {
    flex: 1 0 auto;
    overflow-x: clip;
}

html {
    font-size: 62.5%;
    background-color: #fff
}

@media screen and (max-width: 767px) {
    html {
        font-size: calc(10px + (1300vw - 4875px) / 447)
    }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
    html {
        font-size: calc(10px + (400vw - 3072px) / 255)
    }
}

@media (min-width: 1024px) and (max-width: 1360px) {
    html {
        font-size: calc(8px + (200vw - 2048px) / 336)
    }
}

body {
    font-size: 1.6rem
}

ul {
    margin: 0;
    padding-left: 0;
    list-style-type: none
}

b, strong {
    font-weight: 700
}

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

button, label {
    cursor: pointer
}

[class^=_icon], picture img {
    display: block
}

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

._visually-h1, h1 {
    font-weight: 500;
    font-size: 5.6rem;
    line-height: 6.4rem
}

@media (max-width: 1023px) {
    ._visually-h1, h1 {
        font-size: 3.6rem;
        line-height: 4rem
    }
}

._visually-h2, h2 {
    font-weight: 500;
    font-size: 4rem;
    line-height: 4.8rem
}

@media (max-width: 767px) {
    ._visually-h2, h2 {
        font-size: 2.4rem;
        line-height: 3.2rem
    }
}

._visually-h3, h3 {
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 3.2rem
}

@media (max-width: 767px) {
    ._visually-h3, h3 {
        font-size: 1.8rem;
        line-height: 2.6rem
    }
}

._visually-h4, h4 {
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 2.4rem
}

@media (max-width: 1023px) {
    ._visually-h4, h4 {
        font-size: 1.6rem;
        line-height: 2.2rem
    }
}

@media (max-width: 767px) {
    ._visually-h4, h4 {
        margin: 0 0 1.6rem
    }
}

p {
    margin-top: 0;
    font-size: 1.6rem;
    line-height: 2rem
}

@media (max-width: 767px) {
    p {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.link-external {
    font-size: 1.4rem;
    line-height: 1.8rem;
    display: inline-flex;
    align-items: center;
    transition: color .25s ease
}

@media (max-width: 1023px) {
    .link-external {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.link-external:after {
    width: 2rem;
    height: 2rem;
    margin-left: 1.4rem;
    border-radius: 3px;
    background: #483593 url(/local/templates/main/css/../i/sprite.svg#link-external) no-repeat 50%/1.2rem;
    content: ""
}

._overflow-hidden .header {
    transform: translateY(-100%)
}

.text-content > :first-child {
    margin-top: 0
}

.text-content > :last-child {
    margin-bottom: 0
}

.text-content .table-scroll-wrap {
    overflow: scroll visible
}

@media (max-width: 767px) {
    .text-content .table-scroll-wrap {
        margin: 2.4rem 0
    }
}

.text-content table:not([class]) {
    width: 100%;
    margin: 3.2rem 0;
    border-collapse: collapse
}

@media (max-width: 1023px) {
    .text-content table:not([class]) {
        margin: 2.4rem 0
    }
}

@media (max-width: 767px) {
    .text-content table:not([class]) {
        margin: 0
    }
}

.text-content table:not([class]) thead {
    border-bottom: 1px solid #9b9b9b;
    font-weight: 700
}

.text-content table:not([class]) thead td, .text-content table:not([class]) thead th {
    padding: 2rem
}

@media (max-width: 1023px) {
    .text-content table:not([class]) thead td, .text-content table:not([class]) thead th {
        padding: 1rem
    }
}

.text-content table:not([class]) tbody tr {
    border-bottom: 1px solid #9b9b9b
}

.text-content table:not([class]) tbody tr:nth-child(odd) {
    background-color: rgba(197, 218, 218, .28)
}

.text-content table:not([class]) tbody td {
    padding: 2rem
}

@media (max-width: 1023px) {
    .text-content table:not([class]) tbody td {
        padding: 1rem
    }
}

.text-content table:not([class]) td, .text-content table:not([class]) th {
    text-align: left;
    vertical-align: text-top
}

.text-content table:not([class]) td[rowspan]:first-child, .text-content table:not([class]) th[rowspan]:first-child {
    padding-left: 3.8rem
}

@media (max-width: 1023px) {
    .text-content table:not([class]) td[rowspan]:first-child, .text-content table:not([class]) th[rowspan]:first-child {
        padding-left: 2rem
    }
}

.text-content table:not([class]) td:not(:last-child), .text-content table:not([class]) th:not(:last-child) {
    border-right: 1px solid rgba(0, 0, 0, .2)
}

.text-content table:not([class]) td > :first-child, .text-content table:not([class]) th > :first-child {
    margin-top: 0
}

.text-content table:not([class]) td > :last-child, .text-content table:not([class]) th > :last-child {
    margin-bottom: 0
}

.text-content a:not([class]) {
    color: #483593;
    display: inline;
    background-image: linear-gradient(rgba(72, 53, 147, .8), rgba(72, 53, 147, .8));
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
    transition: background-size .25s ease, opacity .25s ease, color .25s ease, margin .25s ease
}

.text-content a:not([class]):hover {
    background-size: 100% 1px
}

.text-content ol:not([class]), .text-content ul:not([class]) {
    font-size: 1.6rem;
    line-height: 2rem;
    margin: 1em 0
}

@media (max-width: 767px) {
    .text-content ol:not([class]), .text-content ul:not([class]) {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.text-content ol:not([class]) > li, .text-content ul:not([class]) > li {
    position: relative;
    padding-left: 3rem
}

.text-content ol:not([class]) > li:not(:last-child), .text-content ul:not([class]) > li:not(:last-child) {
    margin-bottom: 1em
}

@media (max-width: 767px) {
    .text-content ol:not([class]) > li:not(:last-child), .text-content ul:not([class]) > li:not(:last-child) {
        margin-bottom: .4em
    }
}

.text-content ul:not([class]) {
    padding-left: 0
}

@media (max-width: 767px) {
    .text-content ul:not([class]) > li {
        padding-left: 2rem
    }
}

.text-content ul:not([class]) > li:before {
    width: .6rem;
    height: .6rem;
    position: absolute;
    top: .6em;
    left: 0;
    display: inline-block;
    border-radius: 100%;
    background-color: #483593;
    transform: translateY(-50%);
    content: ""
}

@media (max-width: 767px) {
    .text-content ul:not([class]) > li:before {
        width: 5px;
        height: 5px
    }
}

.text-content ol:not([class]) {
    padding-left: 4rem;
    counter-reset: item
}

@media (max-width: 767px) {
    .text-content ol:not([class]) {
        padding-left: 3.5rem
    }
}

.text-content ol:not([class]) > li {
    display: block;
    margin-left: 0;
    padding-left: 0
}

.text-content ol:not([class]) > li:before {
    display: inline-block;
    width: 4rem;
    margin-left: -4rem;
    color: #483593;
    font-weight: 700;
    content: counter(item) ".";
    counter-increment: item
}

@media (max-width: 767px) {
    .text-content ol:not([class]) > li:before {
        width: 3.5rem;
        margin-left: -3.5rem
    }
}

.text-content hr {
    height: 1px;
    margin: 2em 0;
    border: none;
    color: #000;
    background-color: #000
}

.text-content img:not([class]), .text-content picture img:not([class]) {
    display: block;
    width: 100%;
    height: 100%;
    max-height: 50rem;
    -o-object-fit: contain;
    object-fit: contain;
    font-family: "object-fit: contain;"
}

@media (max-width: 1023px) {
    .text-content img:not([class]), .text-content picture img:not([class]) {
        margin: 0 1.6rem 0 0
    }
}

.text-content p {
    font-size: 1.6rem;
    line-height: 2rem;
    margin-bottom: 3rem;
    font-size: 1.8rem;
    line-height: 3rem
}

@media (max-width: 1023px) {
    .text-content p {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

@media (max-width: 767px) {
    .text-content p {
        margin-bottom: 2rem
    }
}

.text-content ._heading {
    font-size: 2rem;
    line-height: 2.4rem;
    font-weight: 500;
    line-height: 3.2rem
}

@media (max-width: 1023px) {
    .text-content ._heading {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.text-content span {
    color: #483593
}

.text-content h3 {
    margin-top: 5.6rem
}

@media (max-width: 1023px) {
    .text-content h3 {
        margin-top: 4.2rem
    }
}

.text-content .form {
    margin-top: 4rem
}

.text-content .form__file, .text-content .form__input {
    background-color: #f5f5f5
}

.text-content .form__formats {
    color: #bcbcbc
}

.text-content .form__policy {
    color: #333
}

.text-content .form__error {
    color: #f27054
}

.text-content .btn {
    margin-top: 1.6rem
}

.text-content figure {
    width: 100%;
    margin: 4.8rem 0
}

@media (max-width: 1023px) {
    .text-content figure {
        margin: 2.4rem 0
    }
}

.text-content figure img {
    width: 100%;
    margin-bottom: 2rem;
    border-radius: 5px;
    -o-object-fit: cover;
    object-fit: cover
}

@media (max-width: 1023px) {
    .text-content figure img {
        margin-bottom: 1rem
    }
}

.text-content figure figcaption {
    font-size: 1.4rem;
    line-height: 1.8rem;
    color: #858585;
    text-align: center
}

@media (max-width: 1023px) {
    .text-content figure figcaption {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.text-content .slider {
    margin-bottom: 3rem
}

.container {
    width: calc(100% - 8rem);
    max-width: 128rem;
    margin: 0 auto 8.8rem
}

@media (max-width: 767px) {
    .container {
        width: calc(100% - 4rem)
    }
}

@media (max-width: 1023px) {
    .container {
        margin-bottom: 6.4rem
    }
}

@media (max-width: 767px) {
    .container {
        margin-bottom: 4.8rem
    }
}

.container:last-child {
    margin-bottom: 0
}

.container__cramped {
    flex: 0 0 66%;
    max-width: 84.7rem
}

@media (max-width: 1023px) {
    .container__cramped {
        flex-basis: 100%;
        max-width: 100%
    }
}

.container__news {
    flex: 0 0 85%;
    margin: 0 auto 10rem
}

@media (max-width: 1023px) {
    .container__news {
        flex-basis: 100%;
        width: 100%;
        margin-bottom: 6.4rem
    }
}

@media (max-width: 767px) {
    .container__news {
        margin-bottom: 4.8rem
    }
}

.container__content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%
}

.container__content h2 {
    margin-top: 0
}

@media (max-width: 1023px) {
    .container ._reversed {
        flex-direction: column-reverse
    }
}

.container ._centered {
    justify-content: center
}

.container__sidebar {
    flex: 0 0 32.5%;
    margin-left: auto
}

@media (max-width: 1023px) {
    .container__sidebar {
        flex-basis: 100%;
        margin-left: 0
    }
}

.container__sidebar .box {
    flex-direction: row;
    align-items: center;
    width: 100%;
    max-width: 36.2rem;
    margin: 0 0 3.2rem;
    padding: 3.5rem;
    border: 1px solid #e4e4e4;
    border-radius: 10px;
    background-color: transparent
}

@media (min-width: 1024px) {
    .container__sidebar .box:hover button svg {
        margin-right: 0 !important
    }

    .container__sidebar .box:hover .box__svg-title {
        color: #fff
    }
}

.container__sidebar .box h3, .container__sidebar .box svg {
    margin: 0
}

.container__sidebar .box h3 {
    font-size: 2rem;
    line-height: 2.4rem
}

@media (max-width: 1023px) {
    .container__sidebar .box h3 {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.container__sidebar .box button {
    margin-left: auto
}

.container__sidebar .box__svg-title {
    width: 3.2rem;
    height: 3.2rem;
    margin-right: 2.4rem !important;
    color: #483593;
    transition: color .25s ease
}

.container:last-child:not(:only-child) {
    margin-left: auto
}

.container:empty {
    margin: 0 !important
}

.container__intro {
    width: 100%
}

.container__intro img {
    width: 100%;
    max-height: 57.5rem;
    border-radius: 10px;
    -o-object-fit: cover;
    object-fit: cover
}

@media (max-width: 767px) {
    .container__intro img {
        margin-bottom: 2.6rem
    }
}

.container__intro ._heading {
    max-width: 84.7rem;
    margin-bottom: 5.6rem;
    font-weight: 500;
    line-height: 3.2rem
}

@media (max-width: 767px) {
    .container__intro ._heading {
        margin-bottom: 3.2rem;
        line-height: 2.6rem
    }
}

.container__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 4.8rem
}

@media (max-width: 767px) {
    .container__header .btn.more {
        margin-bottom: 0
    }
}

.container__header h2 {
    margin: 0;
    font-weight: 500
}
.container__header.sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 12.5rem;
    background-color: #fff;
    z-index: 1;
    padding: 2rem 0;
    margin: 0;
    opacity: 0.9;
}

@media (max-width: 1023px) {
    .container__header.sticky {
        top: 8.5rem;
    }
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    main, .page {
        /*clip: auto;*/
        /*clip: rect(auto, auto, auto, auto);*/
        /*-webkit-mask-image: -webkit-linear-gradient(top, #ffffff 0%,#ffffff 100%)*/
        display: table;
        overflow-x: hidden;
    }
    body {
        overflow-x: hidden;
    }
}

#js-particles {
    position: relative
}

#js-particles .particles-js-canvas-el {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 0;
    width: 50%;
    height: 100%
}

@media (max-width: 1023px) {
    #js-particles .particles-js-canvas-el {
        opacity: .5
    }
}

@media (max-width: 767px) {
    #js-particles .particles-js-canvas-el {
        width: 100%
    }
}

#js-particles > :not(.particles-js-canvas-el) {
    position: relative;
    z-index: 1
}

._white-bg {
    padding: 10rem 0;
    background-color: #fff
}

@media (max-width: 1023px) {
    ._white-bg {
        padding: 5.6rem 0 4.4rem
    }
}

@media (max-width: 767px) {
    ._white-bg {
        padding: 3.2rem 0
    }
}

._accent_bg {
    padding: 10rem 0;
    background-color: #f5f5f5
}

@media (max-width: 1023px) {
    ._accent_bg {
        padding: 5.6rem 0 4.4rem
    }
}

@media (max-width: 767px) {
    ._accent_bg {
        padding: 3.2rem 0
    }
}

._outer_padding_bg {
    padding-top: 16rem;
    padding-bottom: 6.2rem;
    background-color: #fff
}

@media (max-width: 1023px) {
    ._outer_padding_bg {
        padding-top: 12rem;
        padding-bottom: 4.6rem
    }
}

@media (max-width: 767px) {
    ._outer_padding_bg {
        padding-top: 8rem;
        padding-bottom: 3.2rem
    }
}

._less-padding {
    padding: 5.6rem 0 11rem
}

@media (max-width: 1023px) {
    ._less-padding {
        padding: 4.4rem 0
    }
}

@media (max-width: 767px) {
    ._less-padding {
        padding: 2.4rem 0
    }
}

._bgc-gradient {
    margin-bottom: -10rem;
    background-color: #f5f5f5
}

@media (max-width: 1023px) {
    ._bgc-gradient {
        margin-bottom: -8rem
    }
}

.js-tabs {
    transition: opacity .25s ease
}

.js-tabs .news-page {
    padding-bottom: 0
}

._opacity {
    opacity: 0
}

._enter {
    opacity: 0 !important
}

._enter-to {
    opacity: 1;
    transition: opacity .25s ease
}

.footer {
    color: #fff;
    background-color: #483593
}

.footer__container {
    max-width: 128rem;
    margin: 0 auto;
    padding-top: 4.4rem
}

@media (max-width: 1375px) {
    .footer__container {
        margin: 0 4rem
    }
}

@media (max-width: 1023px) {
    .footer__container {
        width: calc(100% - 8rem);
        margin: 0 auto;
        padding-top: 4rem
    }
}

@media (max-width: 767px) {
    .footer__container {
        width: calc(100% - 4rem);
        padding-top: 3rem
    }
}

.footer-info {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    border-bottom: 1px solid #d4d4d4
}

.footer-info .header__logo {
    align-self: flex-start
}

.footer-info .header__logo svg {
    color: #f5f5f5
}

@media (max-width: 1023px) {
    .footer-info .header__logo {
        margin-bottom: 3rem
    }
}

@media (max-width: 1023px) {
    .footer-info {
        flex-direction: column;
        align-items: flex-start
    }
}

.footer__about {
    display: flex;
    padding-bottom: 2rem
}

@media (max-width: 1023px) {
    .footer__about {
        align-items: center;
        justify-content: space-between
    }
}

@media (max-width: 767px) {
    .footer__about {
        flex-direction: column-reverse
    }
}

.footer__about a, .footer__about p {
    display: block;
    max-width: 32rem;
    margin: 0 0 2rem
}

.footer__about a {
    -webkit-text-decoration: underline hsla(0, 0%, 100%, 0);
    text-decoration: underline hsla(0, 0%, 100%, 0);
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
    text-underline-offset: 1px;
    transition: color .25s ease, -webkit-text-decoration .25s ease;
    transition: text-decoration .25s ease, color .25s ease;
    transition: text-decoration .25s ease, color .25s ease, -webkit-text-decoration .25s ease
}

@media (min-width: 1024px) {
    .footer__about a:hover {
        -webkit-text-decoration-color: hsla(0, 0%, 100%, .7);
        text-decoration-color: hsla(0, 0%, 100%, .7)
    }
}

.footer__about a[href^="mailto:"] {
    -webkit-text-decoration-color: #fff;
    text-decoration-color: #fff
}

.footer__copyright {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4rem 0
}

@media (max-width: 767px) {
    .footer__copyright {
        flex-direction: column-reverse;
        align-items: flex-start;
        padding: 4rem 0 2rem
    }
}

.footer__copyright p {
    margin: 0;
    color: #fff;
    opacity: .5;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.footer__icons {
    display: flex;
    align-items: center
}

.footer__icons a {
    margin-right: 1.6rem;
    transition: opacity .25s ease
}

.footer__icons a:last-child {
    margin-right: 0
}

@media (min-width: 1024px) {
    .footer__icons a:hover {
        opacity: .75
    }
}

@media (max-width: 1023px) {
    .footer__icons {
        margin-left: 7rem
    }
}

@media (max-width: 767px) {
    .footer__icons {
        margin-bottom: 2rem;
        margin-left: 0
    }
}

.footer__icons svg {
    width: 2.3rem;
    height: 1.6rem
}

@media (max-width: 767px) {
    .footer__contact {
        margin-bottom: 3rem
    }
}

.header {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 10;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    margin: 0 auto;
    border-bottom: 1px solid #d3d3d3;
    color: #333;
    background-color: #fff;
    transition: top .4s ease, transform .4s cubic-bezier(.455, .03, .515, .955), box-shadow .25s ease, background-color .25s ease
}

.header._white {
    background-color: #fff;
    box-shadow: 0 2px 30px rgba(25, 43, 106, .05)
}

.header__container {
    width: calc(100% - 8rem);
    max-width: 128rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 auto;
    transition: border-color .25s ease
}

@media (max-width: 767px) {
    .header__container {
        width: calc(100% - 4rem)
    }
}

._white .header__container {
    border-bottom: 0
}

@media (max-width: 1023px) {
    .header__container {
        padding: 1.6rem 0
    }
}

.header__box {
    display: flex
}

@media (max-width: 1023px) {
    .header__box {
        display: none
    }
}

.header__box svg {
    width: 30rem;
    max-height: 2rem;
    color: #483593;
    transition: color .25s ease
}

.header__nav {
    display: flex;
    align-items: center
}

.header__nav > :not(:last-child) {
    margin-right: 6.4rem
}

.header__nav .header__outside, .header__nav a {
    font-size: 1.8rem;
    line-height: 2.4rem;
    display: inline;
    background-image: linear-gradient(rgba(72, 53, 147, .8), rgba(72, 53, 147, .8));
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
    transition: background-size .25s ease, opacity .25s ease, color .25s ease, margin .25s ease;
    display: inline-block;
    padding: 5.1rem 0;
    font-weight: 500;
    background-size: 0 2px !important;
    cursor: pointer
}

@media (max-width: 1023px) {
    .header__nav .header__outside, .header__nav a {
        font-size: 1.6rem;
        line-height: 2.2rem
    }
}

@media (max-width: 767px) {
    .header__nav .header__outside, .header__nav a {
        margin: 0 0 1.6rem
    }
}

.header__nav .header__outside:hover, .header__nav a:hover {
    background-size: 100% 1px
}

@media (min-width: 1024px) {
    .header__nav .header__outside:hover, .header__nav a:hover {
        background-size: 100% 2px !important
    }
}

.header__outside {
    display: inline-flex !important;
    align-items: center
}

@media (min-width: 1024px) {
    .header__outside:hover .header__container {
        visibility: visible;
        opacity: 1;
        -webkit-backdrop-filter: blur(5px) opacity(1);
        backdrop-filter: blur(5px) opacity(1)
    }

    .header__outside:hover:after {
        transform: translateY(3px) rotate(-135deg)
    }
}

.header__outside:after {
    display: block;
    width: 1rem;
    height: 1rem;
    margin-left: 1rem;
    border-right: 1px solid #333;
    border-bottom: 1px solid #333;
    transform: translateY(-2px) rotate(43deg);
    transition: .35s ease-in-out;
    transition-property: transform, border-color;
    content: ""
}

.header__outside .header__container {
    position: absolute;
    bottom: -12.8rem;
    left: 0;
    width: 100%;
    max-width: unset;
    border-bottom: 1px solid #d3d3d3;
    visibility: hidden;
    opacity: 0;
    transition: visibility .25s ease, opacity .25s ease, background-color .25s ease, -webkit-backdrop-filter .01s ease;
    transition: visibility .25s ease, opacity .25s ease, backdrop-filter .01s ease, background-color .25s ease;
    transition: visibility .25s ease, opacity .25s ease, backdrop-filter .01s ease, background-color .25s ease, -webkit-backdrop-filter .01s ease
}

.header__outside .header__container:before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    display: block;
    width: 100%;
    height: 100%;
    -webkit-backdrop-filter: blur(5px) opacity(0);
    backdrop-filter: blur(5px) opacity(0);
    content: ""
}

.header__outside .header__container-inner {
    width: calc(100% - 8rem);
    max-width: 128rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 auto
}

@media (max-width: 767px) {
    .header__outside .header__container-inner {
        width: calc(100% - 4rem)
    }
}

.header__outside .header__container-inner h2 {
    margin: 0;
    font-size: 2.8rem;
    line-height: 3.8rem
}

.header__outside .header__container-inner li {
    opacity: .7;
    transition: opacity .3s ease
}

@media (min-width: 1024px) {
    .header__outside .header__container-inner li:hover {
        opacity: 1
    }
}

.header__outside .header__container-inner li a {
    background: none
}

.header__buttons {
    display: flex;
    align-items: center;
    margin-left: 8.4rem
}

.header__buttons a {
    margin-right: 3.2rem;
    text-align: center;
    transition: opacity .25s ease, color .25s ease
}

@media (min-width: 1024px) {
    .header__buttons a:hover {
        opacity: .65
    }
}

.header__buttons a:last-child {
    margin-right: 0
}

.header__buttons svg {
    width: 3.4rem;
    height: 2.4rem
}

.header__burger {
    position: relative;
    width: 3.6rem;
    height: 3.6rem;
    border: 1px solid #483593;
    border-radius: 100%;
    color: #483593;
    text-align: left;
    background: transparent
}

@media (min-width: 1024px) {
    .header__burger {
        display: none
    }
}

.header__burger i {
    position: absolute;
    left: .75rem;
    display: block;
    width: 2rem;
    height: 2px;
    color: currentColor;
    background-color: currentColor;
    transform: rotate(0deg);
    transform-origin: center;
    transition: transform .3s ease, background-color .3s ease;
    content: ""
}

.header__burger i:first-child {
    top: 0;
    transform: translateY(1.1rem)
}

.header__burger i:nth-child(2) {
    top: 0;
    transform: translateY(1.7rem)
}

.header__burger i:nth-child(3) {
    top: 0;
    transform: translateY(2.3rem)
}

@media (max-width: 767px) {
    .header__burger i {
        left: .9rem;
        width: 1.7rem;
        height: 1px
    }

    .header__burger i:first-child {
        top: 0;
        transform: translateY(1.3rem)
    }

    .header__burger i:nth-child(2) {
        top: 0;
        transform: translateY(1.7rem)
    }

    .header__burger i:nth-child(3) {
        top: 0;
        transform: translateY(2.1rem)
    }
}

.header__logo svg {
    width: 17rem;
    height: 7rem;
    color: #483593;
    transition: color .25s ease
}

@media (max-width: 1023px) {
    .header__logo svg {
        width: 14rem;
        height: 5rem
    }
}

.header._static {
    position: fixed !important;
    top: 74px
}

.header ._active {
    display: inline;
    background-image: linear-gradient(rgba(72, 53, 147, .8), rgba(72, 53, 147, .8));
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
    transition: background-size .25s ease, opacity .25s ease, color .25s ease, margin .25s ease;
    display: inline-block;
    color: #483593;
    background-size: 100% 2px !important
}

.header ._active:hover {
    background-size: 100% 1px
}

.header._transparent {
    border-bottom: 1px solid hsla(0, 0%, 100%, .3);
    color: #fff;
    background-color: transparent
}

.header._transparent .header__burger {
    border-color: #fff;
    color: #fff
}

.header._transparent .header__box svg, .header._transparent .header__logo svg {
    color: #fff
}

.header._transparent .header__nav a, .header._transparent .header__outside {
    display: inline;
    background-image: linear-gradient(hsla(0, 0%, 100%, .8), hsla(0, 0%, 100%, .8));
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
    transition: background-size .25s ease, opacity .25s ease, color .25s ease, margin .25s ease;
    display: inline-block
}

.header._transparent .header__nav a:hover, .header._transparent .header__outside:hover {
    background-size: 100% 1px
}

.header._transparent .header__outside:after {
    border-color: #fff
}

.header._transparent .header__outside .header__container {
    border-bottom: 1px solid #6e6b91;
    background-color: rgba(48, 44, 98, .3)
}

.header._transparent .header__outside .header__container a {
    background-size: 0 !important
}

.header._sticky {
    color: #333;
    background-color: #fff
}

@media (min-width: 1024px) {
    .header._sticky .header__outside:hover {
        color: #483593
    }

    .header._sticky .header__outside:hover:after {
        border-color: #483593
    }
}

.header._sticky .header__outside:after {
    border-color: #333
}

.header._sticky .header__outside .header__container {
    border-top: 1px solid #d3d3d3;
    border-bottom-color: #d3d3d3;
    background-color: hsla(0, 0%, 100%, .9)
}

.header._sticky .header__outside .header__container h2 {
    color: #000
}

.header._sticky .header__outside .header__container a {
    color: #000;
    opacity: 1
}

@media (min-width: 1024px) {
    .header._sticky .header__outside .header__container a:hover {
        color: #483593
    }
}

.header._sticky .header__box svg, .header._sticky .header__logo svg {
    color: #483593
}

.header._sticky .header__nav a, .header._sticky .header__outside {
    display: inline;
    background-image: linear-gradient(rgba(72, 53, 147, .8), rgba(72, 53, 147, .8));
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
    transition: background-size .25s ease, opacity .25s ease, color .25s ease, margin .25s ease;
    display: inline-block
}

.header._sticky .header__nav a:hover, .header._sticky .header__outside:hover {
    background-size: 100% 1px
}

.header._sticky .header__nav a a, .header._sticky .header__outside a {
    opacity: 1
}

@media (min-width: 1024px) {
    .header._sticky .header__nav a a:hover, .header._sticky .header__outside a:hover {
        color: #483593
    }
}

.header._sticky .header__burger {
    border-color: #483593;
    color: #483593
}

.page {
    margin-top: 12rem;
    overflow-x: clip
}

.page._sticky {
    overflow: unset
}

.page._sticky .side-news {
    position: -webkit-sticky;
    position: sticky;
    top: 13rem;
    right: 0;
    margin-bottom: 10rem
}

@media (max-width: 767px) {
    .page._sticky .side-news {
        margin-bottom: 4.8rem
    }
}

.page._main {
    margin-top: 0
}

.page._activity {
    display: flex;
    flex-direction: column;
    margin-top: 0
}

@media (max-width: 1023px) {
    .page {
        margin-top: 8.5rem
    }
}

.page__content {
    position: relative;
    transition: height .3s ease-in-out
}

@media (max-width: 1023px) {
    .page {
        margin-bottom: 0
    }
}

@media (max-width: 767px) {
    .page {
        padding-top: 0
    }
}

.page > :last-child {
    margin-bottom: 0
}

.page._404 {
    margin-top: 0;
    padding-top: 10.9rem
}

@media (max-width: 1023px) {
    .page._404 {
        padding-top: 7.9rem
    }
}

.btn {
    position: relative;
    flex-shrink: 0;
    padding: 0;
    border: 0;
    color: #483593;
    background: transparent;
    cursor: pointer;
    transition: fill .25s ease, color .25s ease, background-color .25s ease, opacity .25s ease, padding .25s ease
}

@media (min-width: 1024px) {
    .btn:hover:active {
        opacity: .7
    }
}

.btn._arrow {
    display: flex;
    align-items: center
}

.btn._arrow span {
    transition: color .25s ease
}

.btn._arrow svg {
    margin-right: 2.4rem;
    transition: margin .25s ease, fill .25s ease
}

@media (min-width: 1024px) {
    .btn._arrow:hover {
        color: #fff;
        background-color: #483593;
        cursor: pointer
    }

    .btn._arrow:hover svg {
        margin-right: 3.2rem;
        fill: #fff
    }

    .btn._arrow:hover span {
        color: #fff
    }
}

.btn.more {
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 2.4rem;
    display: flex;
    align-items: center
}

@media (max-width: 1023px) {
    .btn.more {
        font-size: 1.6rem;
        line-height: 2.2rem
    }
}

@media (max-width: 767px) {
    .btn.more {
        margin: 0 0 1.6rem
    }
}

@media (min-width: 1024px) {
    .btn.more:hover svg {
        margin-right: 3.2rem;
        fill: #483593
    }

    .btn.more:hover svg path {
        stroke: #fff
    }
}

.btn.more svg {
    margin-right: 2.4rem;
    background-size: contain;
    transition: fill .25s ease, margin-right .25s ease
}

@media (max-width: 767px) {
    .btn.more svg circle {
        r: 16
    }
}

.btn.more svg path {
    transition: stroke .25s ease
}

@media (max-width: 767px) {
    .btn.more svg {
        margin-right: 1.6rem
    }
}

.btn.more span {
    display: inline;
    color: #483593;
    transition: background-size .25s ease, opacity .25s ease
}

@media (max-width: 767px) {
    .btn.more span {
        font-size: 1.4rem;
        line-height: 1.6rem
    }
}

.btn.more._reversed {
    flex-direction: row-reverse
}

.btn.more._reversed svg {
    margin-right: 0;
    margin-left: 1.6rem
}

.btn._full {
    display: inline-flex;
    justify-content: center;
    min-width: 20rem;
    padding: 1.6rem 2rem;
    border-radius: 10px
}

@media (max-width: 767px) {
    .btn._full {
        min-width: 15.5rem;
        font-size: 1.4rem;
        line-height: 1.6rem
    }
}

.btn._blue {
    color: #fff;
    background-color: #483593
}

@media (min-width: 1024px) {
    .btn._blue:hover {
        color: #fff;
        background-color: #7f79b6
    }
}

.btn._white {
    border: 1px solid #483593;
    color: #483593;
    background-color: #fff
}

@media (min-width: 1024px) {
    .btn._white:hover {
        color: #fff;
        background-color: #483593
    }
}

.btn._disabled {
    background-color: #bcbcbc
}

@media (min-width: 1024px) {
    .btn._disabled[disabled]:hover {
        background-color: #bcbcbc;
        cursor: not-allowed
    }
}

.btn .loader {
    top: auto;
    right: -14rem;
    left: 0;
    display: inline-block;
    width: 2rem;
    height: 2rem;
    margin: 0 auto;
    border: 2px solid;
    border-color: #fff #fff #483593;
    border-radius: 100%;
    opacity: 0;
    transition: opacity .25s ease
}

@media (max-width: 767px) {
    .btn .loader {
        right: -12rem
    }
}

.btn._show-loader {
    padding-right: 6rem
}

@media (max-width: 767px) {
    .btn._show-loader {
        padding-right: 3.5rem
    }
}

.btn._show-loader .loader {
    opacity: 1
}

.news {
    display: flex
}

@media (max-width: 767px) {
    .news {
        flex-direction: column
    }
}

.news > .container {
    margin-bottom: 0
}

.news h2 {
    margin-top: 0
}

.news__cells {
    display: flex;
    width: 100%;
    margin-bottom: 3.2rem
}

.news__cells .project {
    margin: 0 3.2rem 0 0 !important
}

@media (max-width: 1023px) {
    .news__cells .project {
        margin-right: 1.6rem !important
    }
}

.news__cell {
    flex-shrink: 0;
    width: 50%;
    max-width: 50%;
    margin-right: 7rem;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer
}

@media (max-width: 1023px) {
    .news__cell {
        width: 55%;
        max-width: 55%;
        margin-right: 4rem
    }
}

@media (max-width: 767px) {
    .news__cell {
        width: 100%;
        max-width: unset;
        margin-right: 0;
        margin-bottom: 4rem
    }
}

@media (min-width: 1024px) {
    .news__cell:hover h4 {
        color: #483593
    }
}

.news__cell h4 {
    display: inline-block;
    margin: 2.4rem 0 0;
    transition: color .25s ease
}

@media (max-width: 767px) {
    .news__cell h4 {
        margin: 1.6rem 0 0
    }
}

.news__cell span {
    color: #333;
    opacity: .45;
    transition: color .25s ease
}

.news__tags {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 3.2rem
}

@media (max-width: 1023px) {
    .news__tags {
        margin-bottom: 1.6rem
    }
}

@media (max-width: 767px) {
    .news__tags {
        width: calc(100% - 10rem);
        margin-top: 1.6rem
    }
}

.news__tag {
    font-size: 1.6rem;
    line-height: 2rem;
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    margin-right: 2rem;
    color: #483593;
    font-weight: 500;
    text-transform: uppercase;
    background-color: transparent;
    transition: opacity .25s ease
}

@media (max-width: 1023px) {
    .news__tag {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

@media (max-width: 767px) {
    .news__tag {
        justify-content: flex-start;
        margin-right: 0;
        margin-bottom: 1.2rem
    }

    .news__tag:last-child {
        margin-bottom: 0
    }
}

.news__tag:last-child {
    margin-right: 0
}

@media (min-width: 1024px) {
    .news__tag:hover {
        opacity: .75
    }
}

.news__img {
    display: block;
    width: 100%;
    height: 34.1rem;
    overflow: hidden
}

@media (max-width: 1023px) {
    .news__img {
        height: 22.1rem
    }
}

.news__img img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform .25s ease;
    will-change: transform
}

.news__text {
    flex-grow: 1;
    padding: 3.2rem;
    border-top: none;
    border-radius: 0 0 10px 10px;
    background-color: #fff;
    transition: background-color .25s ease, border-color .25s ease
}

@media (max-width: 767px) {
    .news__text {
        padding: 1.6rem
    }
}

.news__intro {
    display: flex;
    align-items: flex-start;
    margin: 2.4rem 0 4rem
}

@media (max-width: 1023px) {
    .news__intro {
        margin-bottom: 3.2rem
    }
}

@media (max-width: 767px) {
    .news__intro {
        flex-direction: column
    }
}

.news__info {
    margin-left: 2.4rem
}

@media (max-width: 767px) {
    .news__info {
        margin-top: -10rem;
        margin-left: 0
    }
}

.news__info h1 {
    margin: 0;
    font-size: 2.8rem;
    line-height: 3.8rem
}

.news__main-image {
    display: block;
    width: 100%;
    max-height: 40rem;
    border-radius: 10px;
    -o-object-fit: cover;
    object-fit: cover
}

.news__datestamp {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.2rem 2.4rem;
    border-radius: 10px;
    color: #fff;
    background-color: #483593
}

@media (max-width: 767px) {
    .news__datestamp {
        align-self: flex-end;
        padding: 1.2rem
    }
}

.news__datestamp span {
    font-weight: 700;
    font-size: 6.4rem;
    line-height: 6.8rem
}

@media (max-width: 767px) {
    .news__datestamp span {
        font-size: 4.4rem;
        line-height: 3.8rem
    }
}

.news__datestamp p {
    margin: 0
}

.flickity-viewport {
    width: 100%
}

.controls button {
    padding: 0;
    border: 0;
    background: transparent
}

.controls button[disabled] svg circle {
    fill: #fff
}

.controls button[disabled] svg path {
    stroke: #483593
}

@media (min-width: 1024px) {
    .controls button[disabled] svg:hover {
        cursor: not-allowed
    }
}

.controls button svg {
    width: 4.8rem;
    height: 4.8rem;
    cursor: pointer
}

@media (max-width: 1023px) {
    .controls button svg {
        width: 3.6rem;
        height: 3.6rem
    }
}

.controls button svg:first-of-type {
    margin-right: 1.6rem
}

.controls button svg circle {
    transition: fill .25s ease;
    fill: #483593
}

.controls button svg path {
    transition: stroke .25s ease;
    stroke: #fff
}

.controls button.transparent svg circle {
    fill: transparent;
    stroke: #fff
}

.controls button.transparent svg path {
    stroke: #fff
}

.controls button._white[disabled] circle {
    fill: transparent;
    stroke: #fff
}

.controls button._white[disabled] path {
    stroke: #fff
}

.controls button._white svg circle {
    fill: #fff;
    stroke: #fff
}

.controls button._white svg path {
    stroke: #483593
}

.dashboard {
    display: flex;
    justify-content: space-around;
    max-width: 128rem;
    margin: 4rem auto 0;
    border-radius: 5px;
    background-color: #fff
}

@media (max-width: 1375px) {
    .dashboard {
        margin: 5.6rem 4rem 0
    }
}

@media (max-width: 1023px) {
    .dashboard {
        flex-direction: column;
        width: calc(100% - 8rem);
        margin: 4rem 4rem 0
    }
}

@media (max-width: 767px) {
    .dashboard {
        justify-content: flex-start;
        width: calc(100% - 4rem);
        margin: 3.2rem auto 1.6rem
    }
}

.dashboard input {
    display: none
}

.dashboard label, .dashboard a {
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 2.4rem;
    width: 100%;
    padding: 0 3rem 1.6rem;
    color: #333;
    font-weight: 400;
    text-align: center;
    transition: color .25s ease
}

@media (max-width: 1023px) {
    .dashboard label, .dashboard a {
        font-size: 1.6rem;
        line-height: 2.2rem
    }
}

@media (max-width: 767px) {
    .dashboard label, .dashboard a {
        margin: 0 0 1.6rem
    }
}

@media (max-width: 1023px) {
    .dashboard label, .dashboard a {
        padding: 1.6rem 0
    }
}

@media (max-width: 767px) {
    .dashboard label, .dashboard a {
        margin-bottom: 0
    }

    .dashboard label:nth-of-type(2) text:after {
        position: absolute;
        top: 42%;
        right: -18.5rem;
        width: 18rem;
        height: 2px;
        background: 0 linear-gradient(90deg, #483593 50%, #f5f5f5 0);
        transition: background .25s ease;
        content: "";
        pointer-events: none
    }
}

.dashboard input[type=radio]:not(:checked) + label, .dashboard a {
    display: inline;
    background-image: linear-gradient(hsla(0, 0%, 82.7%, .8), hsla(0, 0%, 82.7%, .8));
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
    transition: background-size .25s ease, opacity .25s ease, color .25s ease, margin .25s ease;
    color: #999;
    background-size: 100% 2px
}

.dashboard input[type=radio]:not(:checked) + label:hover {
    background-size: 100% 1px;
    background-size: 100% 2px
}

.dashboard input[type=radio]:checked + label, .dashboard a:hover {
    display: inline;
    background-image: linear-gradient(rgba(72, 53, 147, .8), rgba(72, 53, 147, .8));
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
    transition: background-size .25s ease, opacity .25s ease, color .25s ease, margin .25s ease;
    color: #483593;
    font-weight: 500;
    background-size: 100% 2px;
    /*cursor: default*/
}

.dashboard input[type=radio]:checked + label:hover {
    background-size: 100% 1px;
    background-size: 100% 2px
}

@media (max-width: 767px) {
    .dashboard input[type=radio]:checked + label text {
        position: relative;
        font-weight: 500
    }
}

.dashboard sup {
    display: none
}

.dashboard text {
    display: inline-block;
    padding-right: 1rem;
    background-color: #fff
}

@media (max-width: 767px) {
    .dashboard text {
        font-size: 1.6rem
    }
}

.dashboard .flickity-viewport {
    width: 100%
}

.research h2 {
    max-width: 52.9rem;
    margin: 0 0 8rem
}

@media (max-width: 1023px) {
    .research h2 {
        margin-bottom: 6rem
    }
}

@media (max-width: 767px) {
    .research h2 {
        margin-bottom: 4rem
    }
}

.research__cells {
    display: flex;
    flex-wrap: wrap;
    width: 90rem;
    margin-top: 4rem;
    margin-bottom: -8rem
}

@media (max-width: 1023px) {
    .research__cells {
        width: unset;
        margin-bottom: -6rem
    }
}

@media (max-width: 767px) {
    .research__cells {
        margin-bottom: -4rem
    }
}

.research__cell {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: 39.3rem;
    margin-bottom: 8rem
}

@media (max-width: 1023px) {
    .research__cell {
        width: 30rem;
        margin-bottom: 6.4rem
    }
}

@media (max-width: 767px) {
    .research__cell {
        margin-bottom: 4rem
    }
}

.research__heading {
    margin-bottom: 2.4rem;
    font-weight: 400;
    font-size: 6.4rem;
    line-height: 8rem
}

@media (max-width: 1023px) {
    .research__heading {
        font-size: 5rem;
        line-height: 5.5rem
    }
}

@media (max-width: 767px) {
    .research__heading {
        font-size: 4rem;
        line-height: 4.4rem
    }
}

.research__body {
    max-width: 80%;
    padding-bottom: 3.2rem
}

@media (max-width: 767px) {
    .research__body {
        padding-bottom: 2.4rem
    }
}

.research__button {
    display: none
}

.partners {
    padding-top: 10rem
}

@media (max-width: 1023px) {
    .partners {
        padding-top: 8rem
    }
}

@media (max-width: 767px) {
    .partners {
        padding-top: 3.2rem
    }
}

.partners h2 {
    max-width: 128rem;
    margin: 0 auto
}

@media (max-width: 1375px) {
    .partners h2 {
        margin: 0 4rem
    }
}

@media (max-width: 1023px) {
    .partners h2 {
        width: calc(100% - 8rem);
        margin: 0 auto
    }
}

@media (max-width: 767px) {
    .partners h2 {
        width: calc(100% - 4rem)
    }
}

.partners__slider {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 4rem;
    margin-bottom: 10rem
}

@media (max-width: 1023px) {
    .partners__slider {
        margin-bottom: 6.4rem
    }
}

@media (max-width: 767px) {
    .partners__slider {
        margin-bottom: 4.8rem
    }
}

.partners .flickity-viewport {
    width: 100%
}

.partners__circle {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 30.5rem;
    height: 30.5rem;
    margin-right: -4rem;
    filter: grayscale(1);
    transition: transform .25s ease, filter .25s ease, background-color .25s ease;
    will-change: transform
}

.partners__circle:last-of-type h3 {
    margin: 0
}

@media (max-width: 1023px) {
    .partners__circle {
        width: 25.5rem;
        height: 25.5rem;
        margin-right: -2rem
    }
}

@media (max-width: 767px) {
    .partners__circle {
        width: 14.5rem;
        height: 14.5rem;
        margin-right: -1rem
    }
}

.partners__circle h3 {
    max-width: 26rem;
    color: #333;
    text-align: center;
    opacity: .65;
    transition: opacity .25s ease
}

.partners__circle:hover {
    z-index: 1;
    transform: scale3d(1.03, 1.03, 1.03);
    cursor: pointer;
    filter: grayscale(0)
}

.partners__circle:hover h3 {
    opacity: 1
}

.partners__circle svg {
    width: 18.6rem;
    height: 4.9rem
}

@media (max-width: 767px) {
    .partners__circle svg {
        width: 9rem;
        height: 2.3rem
    }
}

.partners__circle img {
    width: 65%;
    -o-object-fit: contain;
    object-fit: contain
}

.news-page {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 5.6rem -1rem 10rem
}

@media (max-width: 767px) {
    .news-page {
        margin: 5.6rem 0 4.8rem
    }
}

.news-page__content {
    display: flex;
    flex-wrap: wrap;
    width: 100%
}

.news-page .news__cell {
    display: flex;
    flex-direction: column;
    max-width: 31.6%;
    margin: 1rem;
    border-radius: 10px;
    background-color: #fff;
    transition: background-color .25s ease
}

.news-page .news__cell .news__date, .news-page .news__cell h4 {
    position: relative;
    z-index: 1
}

@media (max-width: 1023px) {
    .news-page .news__cell {
        width: calc(50% - 2rem);
        max-width: unset
    }
}

@media (max-width: 767px) {
    .news-page .news__cell {
        width: 100%;
        margin: 0 0 2.4rem
    }
}

@media (min-width: 1024px) {
    .news-page .news__cell:hover {
        background-color: #483593
    }

    .news-page .news__cell:hover .news__text {
        border-color: #483593;
        background-color: #483593
    }

    .news-page .news__cell:hover .news__tag, .news-page .news__cell:hover h4, .news-page .news__cell:hover span {
        color: #fff
    }

    .news-page .news__cell:hover .news__tag:hover {
        color: #483593;
        background-color: #fff
    }
}

.news-page .news__text {
    border: 1px solid #e4e4e4;
    border-top: none
}

@media (max-width: 1023px) {
    .news-page .news__text {
        padding: 2.4rem
    }
}

.news-page .news__text a, .news-page .news__text span {
    display: block
}

.news-page .news__text h4 {
    margin-bottom: 0;
    transition: color .25s ease
}

@media (max-width: 767px) {
    .news-page .news__text {
        padding: 1.6rem
    }
}

.news-page .news__tag {
    margin-bottom: 0
}

.news-page .news__img {
    width: 100%;
    max-height: 20rem
}

.news-page .news__img, .news-page .news__img img {
    border-radius: 10px 10px 0 0
}

.news-page .btn {
    margin-top: 4rem
}

@media (max-width: 767px) {
    .news-page .btn {
        margin-top: 2.4rem
    }
}

.box {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: calc(33.33% - 2rem);
    margin: 1rem;
    padding: 3.2rem;
    border-radius: 5px;
    background-color: #f5f5f5;
    transition: color .25s ease, background-color .25s ease
}

@media (max-width: 1023px) {
    .box {
        width: 50%;
        margin: 1rem -1rem;
        padding: 2.4rem
    }
}

@media (max-width: 767px) {
    .box {
        width: 100%;
        margin: 0 0 2rem !important;
        padding: 2.4rem !important
    }
}

.box__title {
    margin: 0 0 5.6rem
}

.box__link {
    margin-top: auto;
    display: flex;
    align-items: center
}

.box__link span {
    transition: color .25s ease
}

.box__link svg {
    margin-right: 2.4rem;
    transition: margin .25s ease
}

.box__link svg circle, .box__link svg path {
    transition: stroke .25s ease
}

@media (min-width: 1024px) {
    .box:hover {
        color: #fff;
        background-color: #483593;
        cursor: pointer
    }

    .box:hover .box__link svg {
        margin-right: 3.2rem
    }

    .box:hover .box__link svg circle, .box:hover .box__link svg path {
        stroke: #fff
    }

    .box:hover .box__link span {
        color: #fff
    }
}

.box._blue {
    color: #fff;
    background-color: #483593
}

@media (min-width: 1024px) {
    .box._blue:hover svg {
        fill: none
    }
}

.box._blue .box__link span {
    color: #fff
}

.box._blue .box__link svg circle, .box._blue .box__link svg path {
    stroke: #fff
}

.search {
    z-index: 10;
    height: 100%;
    background-color: transparent;
    visibility: hidden;
    opacity: 0;
    transition: background-color .25s ease, opacity .25s ease, visibility .25s ease
}

.search, .search__container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%
}

.search__container {
    z-index: 11;
    display: flex;
    flex-direction: column;
    max-height: 38.2rem;
    padding: 4rem 8rem;
    background-color: #fff;
    transform: translateY(-100%);
    transition: transform .4s cubic-bezier(.645, .045, .355, 1)
}

.search__header {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 128rem;
    margin: 0 auto
}

.search__header h2 {
    margin-top: 0
}

.search__close {
    color: #483593;
    cursor: pointer
}

.search__close circle {
    transition: fill .25s ease;
    fill: #fff
}

.search__close path {
    transition: stroke .25s ease;
    stroke: #483593
}

@media (min-width: 1024px) {
    .search__close:hover circle {
        fill: #483593
    }

    .search__close:hover path {
        stroke: #fff
    }
}

.search__content {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 128rem;
    margin: 0 auto
}

.search__form {
    position: relative;
    width: 100%;
    height: auto;
    margin-bottom: 4rem
}

@media (max-width: 1023px) {
    .search__form {
        margin: 0 0 2.4rem
    }
}

.search__form input {
    font-size: 1.6rem;
    line-height: 2rem;
    width: 100%;
    padding: 3rem 2rem;
    border: none;
    border-radius: 5px;
    color: #333;
    background-color: #f5f5f5;
    outline: none;
    opacity: .9
}

@media (max-width: 1023px) {
    .search__form input {
        font-size: 1.4rem;
        line-height: 1.8rem;
        padding: 1.2rem
    }
}

.search__form button {
    position: absolute;
    top: 2.5rem;
    right: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 5px;
    background-color: #483593
}

@media (max-width: 1023px) {
    .search__form button {
        top: .65rem;
        right: 1rem
    }
}

.search__form button svg path {
    stroke: #fff
}

.search__requests {
    margin-top: 0;
    color: #858585
}

.search__links {
    display: flex
}

.search__links a {
    display: inline;
    background-image: linear-gradient(rgba(72, 53, 147, .8), rgba(72, 53, 147, .8));
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
    transition: background-size .25s ease, opacity .25s ease, color .25s ease, margin .25s ease;
    margin-right: 3.2rem
}

.search__links a:hover {
    background-size: 100% 1px
}

@media (min-width: 1024px) {
    .search__links a:hover {
        color: #483593
    }
}

.search__links a:last-child {
    margin-right: 0
}

._search_opened {
    background-color: rgba(51, 51, 51, .5);
    visibility: visible;
    opacity: 1
}

._search_opened .search__container {
    transform: translateY(0)
}

.burger-menu {
    z-index: 10;
    background-color: transparent;
    visibility: hidden;
    opacity: 0;
    transition: background-color .25s ease, opacity .25s ease, visibility .25s ease
}

.burger-menu, .burger-menu__box {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.burger-menu__box {
    z-index: 11;
    display: flex;
    flex-direction: column;
    padding: 2.4rem 2rem 0;
    background-color: #fff;
    transform: translateX(100%);
    transition: transform .4s cubic-bezier(.645, .045, .355, 1)
}

.burger-menu__close {
    width: 3.6rem;
    height: 3.6rem;
    color: #483593;
    cursor: pointer
}

.burger-menu__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #d4d4d4
}

@media (max-width: 1023px) {
    .burger-menu__header {
        border: none
    }
}

.burger-menu__nav {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    overflow-y: auto
}

.burger-menu__nav::-webkit-scrollbar {
    width: 5px
}

.burger-menu__nav::-webkit-scrollbar-track {
    background: #bcbcbc
}

.burger-menu__nav::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: rgba(72, 53, 147, .7)
}

.burger-menu__nav-main {
    width: 100%;
    border-bottom: 1px solid #d4d4d4
}

.burger-menu__nav-main li {
    margin-bottom: 2.4rem
}

.burger-menu__nav-main a {
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 3.2rem
}

@media (max-width: 767px) {
    .burger-menu__nav-main a {
        font-size: 1.8rem;
        line-height: 2.6rem
    }
}

.burger-menu__nav-list {
    margin-top: 2.4rem
}

.burger-menu__nav-list li {
    margin-bottom: 1.6rem
}

.burger-menu__nav-list a {
    font-size: 1.4rem;
    line-height: 1.8rem;
    color: #858585;
    text-decoration: underline;
    text-underline-offset: 1px
}

@media (max-width: 1023px) {
    .burger-menu__nav-list a {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.burger-menu__footer {
    position: relative;
    display: flex;
    align-items: center;
    margin-top: auto;
    padding: 2.4rem 0;
    background-color: #483593
}

.burger-menu__footer:after, .burger-menu__footer:before {
    position: absolute;
    top: 0;
    left: -100%;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: #483593;
    content: ""
}

.burger-menu__footer:after {
    right: -100%;
    left: auto
}

.burger-menu__footer .footer__icons {
    width: 17rem;
    margin: 0 0 0 auto
}

.burger-menu__footer .footer__icons svg {
    width: 2.5rem
}

.burger-menu__footer > a {
    margin: 0;
    color: #fff
}

.burger-menu__prioritet {
    width: 20rem;
    height: 3rem;
    color: #483593
}

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

._burger_opened {
    background-color: #fff;
    visibility: visible;
    opacity: 1
}

._burger_opened .burger-menu__box {
    transform: translateX(0)
}

.vacancies {
    display: flex;
    flex-direction: column;
    flex-grow: 1
}

.vacancy {
    display: flex;
    align-items: center;
    width: 100%;
    margin-bottom: 1.6rem;
    padding: 2.4rem;
    border-radius: 5px;
    background-color: #f5f5f5
}

@media (max-width: 767px) {
    .vacancy {
        padding: 1.6rem
    }
}

@media (min-width: 1024px) {
    .vacancy:hover p {
        color: #483593
    }

    .vacancy:hover svg {
        fill: #483593
    }

    .vacancy:hover svg path {
        stroke: #fff
    }
}

.vacancy span {
    margin-top: 0;
    font-size: 1.6rem;
    line-height: 2rem;
    display: block;
    margin-bottom: 1.6rem;
    color: #bcbcbc
}

@media (max-width: 767px) {
    .vacancy span {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.vacancy p {
    font-size: 2rem;
    line-height: 2.4rem;
    transition: color .25s ease
}

@media (max-width: 1023px) {
    .vacancy p {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.vacancy svg {
    margin-left: auto;
    transition: fill .25s ease
}

.vacancy svg circle, .vacancy svg path {
    stroke: #483593
}

.vacancy svg path {
    transition: stroke .25s ease
}

@media (max-width: 767px) {
    .vacancy__text {
        width: 80%
    }
}

.newspapers {
    position: relative;
    width: 100%;
    overflow: hidden
}

.newspapers__controls {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 4rem;
    margin-bottom: 1rem
}

.newspapers .flickity-page-dots {
    display: inline-flex;
    width: auto;
    margin: 0
}

.newspapers .flickity-button {
    position: static
}

.newspapers .next, .newspapers .previous {
    margin: 0 3rem;
    transform: none
}

@media (max-width: 1023px) {
    .newspapers .next, .newspapers .previous {
        margin: 0 2rem
    }
}

@media (max-width: 1023px) {
    .newspapers .dot {
        margin-right: 1.5rem
    }
}

.newspaper {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 32%;
    max-width: 41.3rem;
    height: 21rem;
    margin-right: 2rem;
    padding: 2.4rem;
    border-radius: 5px;
    background-color: #f5f5f5;
    cursor: pointer
}

@media (max-width: 1023px) {
    .newspaper {
        width: 48%
    }
}

@media (max-width: 767px) {
    .newspaper {
        width: 100%
    }
}

@media (min-width: 1024px) {
    .newspaper:hover h4, .newspaper:hover p {
        color: #483593
    }
}

.newspaper h4 {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    margin-bottom: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color .25s ease
}

.newspaper p {
    margin-top: auto;
    transition: color .25s ease
}

.newspaper .link-external {
    margin-bottom: 0
}

.newspaper span {
    color: #bcbcbc
}

._white-mm .newspaper {
    background-color: #fff
}

.sidedoc {
    display: flex;
    flex-direction: column;
    width: 30rem;
    margin-left: auto
}

@media (max-width: 1023px) {
    .sidedoc {
        margin: 0 0 3.2rem
    }
}

.sidedoc span {
    font-size: 1.6rem;
    line-height: 2rem;
    margin-bottom: 1.2rem;
    color: #bcbcbc
}

@media (max-width: 1023px) {
    .sidedoc span {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.sidedoc a {
    -webkit-text-decoration: underline rgba(72, 53, 147, 0);
    text-decoration: underline rgba(72, 53, 147, 0);
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
    text-underline-offset: 1px;
    transition: color .25s ease, -webkit-text-decoration .25s ease;
    transition: text-decoration .25s ease, color .25s ease;
    transition: text-decoration .25s ease, color .25s ease, -webkit-text-decoration .25s ease;
    position: relative;
    padding-left: 5rem
}

@media (min-width: 1024px) {
    .sidedoc a:hover {
        -webkit-text-decoration-color: rgba(72, 53, 147, .7);
        text-decoration-color: rgba(72, 53, 147, .7);
        color: #483593
    }
}

.sidedoc a:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 2.6rem;
    height: 3.2rem;
    background-image: url(/local/templates/main/css/../i/sprite/pdf.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    transform: translateY(-50%);
    content: ""
}

@media (max-width: 1023px) {
    .sidedoc a:before {
        width: 2rem
    }
}

.blockquote {
    position: relative;
    margin: 4.8rem 0;
    padding-left: 10.7rem
}

@media (max-width: 767px) {
    .blockquote {
        margin: 2.4rem 0;
        padding-left: 4.8rem
    }
}

.blockquote:before {
    position: absolute;
    top: 1rem;
    left: 0;
    width: 8.8rem;
    height: 6.6rem;
    background-image: url(/local/templates/main/css/../i/sprite.svg#blockquote);
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;
    content: ""
}

@media (max-width: 767px) {
    .blockquote:before {
        top: .6rem;
        width: 4rem;
        height: 2.8rem
    }
}

.blockquote__text {
    font-size: 1.6rem;
    line-height: 2rem
}

@media (max-width: 1023px) {
    .blockquote__text {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.blockquote__text:not(:last-child) {
    margin-bottom: 2.4rem
}

.blockquote cite {
    margin-top: 0;
    font-size: 1.6rem;
    line-height: 2rem;
    font-weight: 500;
    display: block;
    margin-bottom: 6px;
    font-style: normal
}

@media (max-width: 767px) {
    .blockquote cite {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.blockquote__caption {
    font-size: 1.4rem;
    line-height: 1.8rem;
    color: #333 !important
}

@media (max-width: 1023px) {
    .blockquote__caption {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.blockquote img {
    display: inline-block;
    margin-right: 2.4rem;
    width: 100%;
    max-width: 5.6rem;
    height: 100%;
    max-height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.blockquote footer, .boxes {
    display: flex
}

.boxes {
    flex-wrap: wrap;
    width: 100%
}

@media (max-width: 1023px) {
    .boxes {
        justify-content: space-between
    }
}

.slider {
    position: relative;
    width: 100%;
    overflow: hidden
}

.slider img {
    width: 100%;
    height: 50.7rem;
    border-radius: 5px;
    -o-object-fit: cover;
    object-fit: cover;
    cursor: -webkit-grab;
    cursor: grab
}

@media (max-width: 767px) {
    .slider img {
        height: 20rem
    }
}

.slider__caption {
    display: block;
    max-width: 80%;
    font-size: 1.4rem;
    line-height: 1.8rem;
    color: #858585 !important
}

@media (max-width: 1023px) {
    .slider__caption {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

@media (max-width: 767px) {
    .slider__caption {
        max-width: 100%
    }
}

.slider__buttons {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 14rem
}

@media (max-width: 767px) {
    .slider__buttons {
        position: absolute;
        top: 16rem;
        right: 0;
        bottom: auto;
        width: unset;
        padding: 1rem;
        border-radius: 5px 0 0;
        background-color: #fff
    }
}

.slider__button {
    width: 2.4rem;
    height: 2.4rem;
    padding: 0;
    border: none;
    background: transparent url(/local/templates/main/css/../i/sprite.svg#chevron-left) no-repeat 50%/2.5rem;
    outline: none
}

.slider__button_prev {
    transform: rotate(180deg)
}

.slider__counter {
    font-size: 1.6rem;
    line-height: 2rem;
    font-weight: 500;
    margin: 0 1.5rem
}

@media (max-width: 1023px) {
    .slider__counter {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.slider__total {
    color: #858585 !important
}

.slider__control {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: 2rem
}

@media (max-width: 767px) {
    .slider__control {
        margin-top: 1rem
    }
}

.side {
    display: flex;
    flex-direction: column;
    max-width: 30.5rem;
    margin-left: auto
}

.side a:not([href^="tel:"]) {
    margin: 0 0 1.8rem;
    -webkit-text-decoration: underline rgba(72, 53, 147, 0);
    text-decoration: underline rgba(72, 53, 147, 0);
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
    text-underline-offset: 1px;
    transition: color .25s ease, -webkit-text-decoration .25s ease;
    transition: text-decoration .25s ease, color .25s ease;
    transition: text-decoration .25s ease, color .25s ease, -webkit-text-decoration .25s ease
}

@media (min-width: 1024px) {
    .side a:not([href^="tel:"]):hover {
        -webkit-text-decoration-color: rgba(72, 53, 147, .7);
        text-decoration-color: rgba(72, 53, 147, .7);
        color: #483593
    }
}

.side a[href^="tel:"] {
    margin-bottom: 1.8rem;
    font-weight: 500
}

.side a[href^="mailto:"] {
    color: #483593
}

@media (max-width: 1023px) {
    .side {
        margin-bottom: 3rem;
        margin-left: 0
    }
}

.side .link-external {
    text-decoration: none !important
}

.sideinfo {
    display: flex;
    flex-direction: column;
    width: 30rem;
    margin-left: auto
}

@media (max-width: 1023px) {
    .sideinfo {
        width: 100%;
        margin: 3.2rem 0 0
    }
}

.sideinfo span {
    font-size: 1.6rem;
    line-height: 2rem;
    margin-bottom: 1.2rem;
    color: #bcbcbc
}

@media (max-width: 1023px) {
    .sideinfo span {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.sideinfo p {
    font-weight: 500;
    margin-bottom: 3.2rem
}

@media (max-width: 1023px) {
    .sideinfo p {
        margin-bottom: 2.4rem
    }
}

.sideinfo .box {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    height: 14.5rem;
    margin-top: 1.6rem;
    margin-right: 0;
    padding: 2rem
}

@media (min-width: 1024px) {
    .sideinfo .box:hover svg circle {
        fill: #fff
    }

    .sideinfo .box:hover svg path {
        stroke: #483593
    }
}

@media (max-width: 1023px) {
    .sideinfo .box {
        margin: 0
    }
}

@media (max-width: 767px) {
    .sideinfo .box {
        display: none
    }
}

.sideinfo .box button {
    margin-left: 0
}

.sideinfo .box button svg circle, .sideinfo .box button svg path {
    transition: fill .25s ease, stroke .25s ease
}

.sideinfo .box h3 {
    font-size: 1.4rem;
    line-height: 1.8rem
}

@media (max-width: 1023px) {
    .sideinfo .box h3 {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.sideinfo .box span {
    margin-bottom: 0
}

.sv-panel {
    position: relative;
    z-index: 2;
    justify-content: center;
    width: 100%;
    margin: 0;
    padding: 20px 0;
    border-bottom: 1px solid #000;
    color: #000;
    background: #fff;
    transition: top .4s ease, transform .4s cubic-bezier(.455, .03, .515, .955)
}

.sv-panel, .sv-panel__inner {
    display: flex
}

.sv-panel__disable {
    margin-left: 44px
}

.sv-panel__contrast-wrap {
    margin-right: 36px
}

.sv-panel__contrast-wrap button {
    padding: 5px 10px;
    border: 1px solid #000;
    font-weight: 700
}

.sv-panel__contrast-wrap button._black {
    color: #000 !important;
    background-color: #fff !important
}

.sv-panel__contrast-wrap button._white {
    color: #fff !important;
    background-color: #000 !important
}

.sv-panel__contrast-wrap button._yellow {
    color: #ff0 !important;
    background-color: #000 !important
}

.sv-panel__contrast-wrap button._blue {
    color: #143c5a !important;
    background-color: #9fd7ff !important
}

.sv-panel__contrast-wrap button:not(:last-child) {
    margin-right: 6px
}

.sv-panel__img-control {
    margin-left: 36px
}

.sv-panel__font-size-wrap {
    display: flex;
    align-items: center
}

.sv-panel__font-size-wrap > span {
    margin-right: 10px;
    font-size: 16px !important
}

.sv-panel__font-size {
    display: flex
}

.sv-panel__font-size > :first-child {
    font-size: 16px !important
}

.sv-panel__font-size > :nth-child(2) {
    font-size: 20px !important
}

.sv-panel__font-size > :nth-child(3) {
    font-size: 24px !important
}

.sv-panel._static {
    position: fixed
}

.main .dashboard input[type=radio]:checked + label {
    background-position: 1px 100% !important;
    background-size: 100% 1px !important
}

html ._special-version {
    color: #000;
    background-color: #fff
}

._special-version :hover {
    -webkit-text-decoration-color: #000 !important;
    text-decoration-color: #000 !important
}

._special-version .person__email:hover, ._special-version .person__phone:hover {
    -webkit-text-decoration-color: #fff !important;
    text-decoration-color: #fff !important
}

._special-version .header {
    position: relative;
    background-color: #fff
}

._special-version .footer {
    border-top: 1px solid #d3d3d3 !important
}

._special-version .dashboard label, ._special-version .footer, ._special-version .form__box .form__input, ._special-version .form__file, ._special-version .header__container, ._special-version .main-screen-new, ._special-version .news-page .btn, ._special-version .news__tag:hover, ._special-version .news__text, ._special-version .project__wrapper, ._special-version .side-news, ._special-version .vacancy {
    color: #000 !important;
    background-color: #fff !important
}

._special-version .dashboard label {
    border-bottom: 2px solid #d3d3d3
}

._special-version .dashboard input[type=radio]:checked + label {
    border-bottom-color: #000
}

._special-version .linear i {
    background: linear-gradient(180deg, transparent, transparent 11px, #fff 0, #fff 13px, transparent 0, transparent 24px) !important
}

._special-version .linear i:after {
    background: linear-gradient(180deg, transparent, transparent 11px, #000 0, #000 13px, transparent 0, transparent 24px) !important
}

._special-version .header ._active, ._special-version .header__nav .header__outside {
    background-image: linear-gradient(#d3d3d3, #d3d3d3) !important
}

._special-version .project__image-wrapper .project__logo {
    filter: grayscale(1);
    background: #000
}

._special-version .slide h1 {
    color: #000 !important
}

._special-version .slide a.btn._full._white {
    color: #000 !important;
    background-color: #fff !important;
    border-color: #d3d3d3
}

._special-version .blockquote__caption, ._special-version .header._transparent .header__box svg, ._special-version .header__logo svg, ._special-version .news-page .news__cell .news__date {
    color: #000 !important
}

._special-version a.project {
    border: 1px solid #000 !important
}

._special-version .news-page .btn, ._special-version .news__cell, ._special-version .side-news {
    border: 1px solid #d3d3d3 !important
}

._special-version .project__wrapper button {
    border: none !important
}

._special-version .page-head._reversed .project__image-wrapper, ._special-version .project__image-wrapper {
    background: #fff
}

._special-version .header._transparent, ._special-version .header._transparent .header__outside .header__container {
    border-color: #d3d3d3 !important
}

._special-version .list li a:hover {
    color: #000;
    opacity: .7
}

._special-version .controls button circle {
    fill: #000 !important
}

._special-version .controls button path {
    stroke: #fff !important
}

._special-version .controls button:disabled circle {
    stroke: #d3d3d3 !important;
    fill: #fff !important
}

._special-version .controls button:disabled path {
    stroke: #000 !important
}

._special-version .page-head__official circle, ._special-version .page-head__official path {
    stroke: #000
}

._special-version .header__outside:after {
    border-color: #000 !important
}

._special-version .document span:after {
    filter: grayscale(1)
}

._special-version .main-screen-new {
    border-bottom: 1px solid #d3d3d3 !important;
    color: #000 !important;
    background: #fff !important
}

._special-version .main-screen-new__background-dark, ._special-version .main-screen-new__background-light {
    background: grey !important
}

._special-version .vacancy:hover p {
    color: #000
}

._special-version .vacancy:hover svg {
    fill: #fff
}

._special-version .vacancy:hover svg circle, ._special-version .vacancy:hover svg path {
    stroke: #000
}

@media (min-width: 1024px) {
    ._special-version .document__title:hover {
        color: #000
    }
}

._special-version .contacts__map, ._special-version .projects__circles .partners__circle {
    filter: grayscale(1)
}

._special-version ._blue, ._special-version .council-item, ._special-version .news-page .btn:hover, ._special-version .news-page .news__cell:hover .news__text, ._special-version .news .news__cell:hover .news__text, ._special-version .news__datestamp, ._special-version .newspaper, ._special-version .pagination a, ._special-version .person__about, ._special-version .project {
    color: #fff !important;
    background-color: #000 !important
}

._special-version ._main .news__cell:hover h4, ._special-version ._main .news__date, ._special-version .box span, ._special-version .breadcrumbs li, ._special-version .contacts__item a[href^="mailto:"], ._special-version .footer__info p, ._special-version .form__submit-box span .form__link, ._special-version .header__buttons:hover a, ._special-version .header__buttons a, ._special-version .header__buttons a svg, ._special-version .header__nav a, ._special-version .line, ._special-version .main-screen-block__title sup, ._special-version .main__caption sup, ._special-version .more span, ._special-version .news-page, ._special-version .page-head__official, ._special-version .pagination__dots, ._special-version .project__wrapper, ._special-version .remarks h2, ._special-version .remarks p, ._special-version .search__links a:hover, ._special-version .sidelist .box svg, ._special-version .text-content a, ._special-version .text-content h1 span, ._special-version .text-content li:before {
    color: #000 !important
}

._special-version #_heading, ._special-version .main-screen-switcher span, ._special-version .news .news__cell:hover h4, ._special-version .news__cell:hover .news__date, ._special-version .news__cell:hover h4, ._special-version .news__date, ._special-version .newspaper .link-external, ._special-version .newspaper:hover h4, ._special-version .person, ._special-version .person__email, ._special-version .project:hover h2 {
    color: #fff !important
}

._special-version .dashboard, ._special-version .dashboard text, ._special-version .main-screen-switcher, ._special-version .newspapers .flickity-page-dots li, ._special-version .text-content ul li:before {
    background-color: #000 !important
}

._special-version ._bgc-gradient, ._special-version ._outer_padding_bg, ._special-version .activity__overlay, ._special-version .activity_detail .page__content, ._special-version .main-screen-switcher button:before {
    background: #fff !important
}

._special-version .contacts__item a, ._special-version .contacts__item a:hover, ._special-version .footer__about a, ._special-version .footer__about a:hover, ._special-version .link-external, ._special-version .link-external:hover, ._special-version .person__email, ._special-version .person__email:hover, ._special-version .side a, ._special-version .side a:hover, ._special-version .sidedoc a, ._special-version .sidedoc a:hover, ._special-version .sidedoc a:hover:hover, ._special-version a[href^="mailto:"]:hover, ._special-version a[href^="mailto:"]:hover:hover {
    color: #000
}

._special-version .contacts__item a:after, ._special-version .footer__about a:after, ._special-version .link-external:after, ._special-version .person__email:after, ._special-version .side a:after, ._special-version .sidedoc a:after, ._special-version .sidedoc a:hover:after, ._special-version a[href^="mailto:"]:hover:after {
    filter: grayscale(1)
}

._special-version .pagination #nav {
    background-color: transparent !important
}

._special-version .contacts__item-text a:hover, ._special-version .news__tags a, ._special-version .page-head__title span {
    color: #000
}

._special-version .box {
    background-color: #fff !important;
    border: 1px solid #000 !important
}

._special-version .box .box__title {
    color: #000
}

._special-version .project svg circle, ._special-version .project svg path, ._special-version .vacancy svg circle, ._special-version .vacancy svg path {
    stroke: #000
}

._special-version .project svg circle, ._special-version .project svg path {
    stroke: #fff
}

._special-version .box:hover .btn svg, ._special-version .project:hover svg {
    fill: none
}

._special-version .box:hover .btn svg circle, ._special-version .project:hover svg circle {
    fill: #000 !important
}

._special-version .box:hover .btn svg path, ._special-version .project:hover svg path {
    stroke: #fff !important
}

._special-version .flickity-page-dots .dot.is-selected:after, ._special-version .news__tag, ._special-version .partners__circle:hover {
    border-color: #000 !important
}

._special-version .form__box .form__input, ._special-version .form__file, ._special-version .vacancy {
    border: 1px solid #000
}

._special-version .form__link, ._special-version .text-content a:not([class]) {
    background-size: 0 !important;
    text-decoration: underline
}

._special-version .btn circle, ._special-version .btn path, ._special-version .search__close circle, ._special-version .search__close path {
    stroke: #000 !important
}

._special-version .btn:hover svg, ._special-version .page-head__official:hover svg, ._special-version .search__close:hover circle {
    fill: #000 !important
}

._special-version .btn:hover svg path, ._special-version .page-head__official:hover svg path, ._special-version .search__close:hover circle path {
    stroke: #fff !important
}

._special-version .newspapers .flickity-button-icon {
    fill: #000
}

._special-version .search__close:hover path, ._special-version .search__submit svg path {
    stroke: #fff !important
}

._special-version .search__links a {
    background-image: linear-gradient(rgba(0, 0, 0, .6), rgba(0, 0, 0, .6)) !important
}

._special-version .header__nav a {
    background-image: linear-gradient(transparent, transparent) !important
}

._special-version .dashboard label {
    background-image: linear-gradient(hsla(0, 0%, 100%, .6), hsla(0, 0%, 100%, .6)) !important
}

._special-version .dashboard input[type=radio]:checked + label {
    background-position: 1px 100% !important;
    background-size: 100% 1px !important
}

._special-version #js-particles .particles-js-canvas-el, ._special-version ._activity-loading, ._special-version .activity__controls, ._special-version .advantage__head svg, ._special-version .breadcrumbs li:not(:last-child):after, ._special-version .document__title:before, ._special-version .form__button, ._special-version .page-head__img, ._special-version .pagination__nav:after, ._special-version .partners__circle:hover, ._special-version .sidedoc a:before, ._special-version .slider__buttons, ._special-version .three-canvas, ._special-version .video__play, ._special-version img {
    filter: grayscale(1)
}

._special-version .activity_detail {
    padding-top: 0
}

._special-version .main-screen-canvas {
    z-index: 0
}

._special-version .main-screen-new {
    height: calc(100vh - 20rem)
}

._special-version .page-head .project__logo {
    color: #fff !important;
    background: none !important
}

._special-version .main-screen-block__text, ._special-version .main-screen-block__title, ._special-version .main-screen-block__title span, ._special-version .page-head .project__logo {
    color: #000 !important
}

._special-version .activity {
    top: 0 !important
}

._special-version .footer__icons a svg use, ._special-version .header-logo__img, ._special-version .header__prior {
    filter: brightness(0) invert(0)
}

._special-version .news__cell span {
    color: #fff
}

._special-version .partners__circle:hover h3 {
    color: #333
}

._special-version ._accent_bg, ._special-version ._white-bg, ._special-version .search__container {
    background-color: #fff !important
}

._special-version .search__form button {
    background-color: #000 !important
}

._special-version .project__image-wrapper .project__logo {
    background: transparent
}

html ._special-version-contrast {
    color: #fff;
    background-color: #000
}

._special-version-contrast :hover {
    -webkit-text-decoration-color: #fff !important;
    text-decoration-color: #fff !important
}

._special-version-contrast .person__email:hover, ._special-version-contrast .person__phone:hover {
    -webkit-text-decoration-color: #000 !important;
    text-decoration-color: #000 !important
}

._special-version-contrast .header {
    position: relative;
    background-color: #000
}

._special-version-contrast .footer {
    border-top: 1px solid #d3d3d3 !important
}

._special-version-contrast .dashboard label, ._special-version-contrast .footer, ._special-version-contrast .form__box .form__input, ._special-version-contrast .form__file, ._special-version-contrast .header__container, ._special-version-contrast .main-screen-new, ._special-version-contrast .news-page .btn, ._special-version-contrast .news__tag:hover, ._special-version-contrast .news__text, ._special-version-contrast .project__wrapper, ._special-version-contrast .side-news, ._special-version-contrast .vacancy {
    color: #fff !important;
    background-color: #000 !important
}

._special-version-contrast .dashboard label {
    border-bottom: 2px solid #d3d3d3
}

._special-version-contrast .dashboard input[type=radio]:checked + label {
    border-bottom-color: #fff
}

._special-version-contrast .linear i {
    background: linear-gradient(180deg, transparent, transparent 11px, #000 0, #000 13px, transparent 0, transparent 24px) !important
}

._special-version-contrast .linear i:after {
    background: linear-gradient(180deg, transparent, transparent 11px, #fff 0, #fff 13px, transparent 0, transparent 24px) !important
}

._special-version-contrast .header ._active, ._special-version-contrast .header__nav .header__outside {
    background-image: linear-gradient(#d3d3d3, #d3d3d3) !important
}

._special-version-contrast .project__image-wrapper .project__logo {
    filter: grayscale(1);
    background: #fff
}

._special-version-contrast .slide h1 {
    color: #fff !important
}

._special-version-contrast .slide a.btn._full._white {
    color: #fff !important;
    background-color: #000 !important;
    border-color: #d3d3d3
}

._special-version-contrast .blockquote__caption, ._special-version-contrast .header._transparent .header__box svg, ._special-version-contrast .header__logo svg, ._special-version-contrast .news-page .news__cell .news__date {
    color: #fff !important
}

._special-version-contrast a.project {
    border: 1px solid #fff !important
}

._special-version-contrast .news-page .btn, ._special-version-contrast .news__cell, ._special-version-contrast .side-news {
    border: 1px solid #d3d3d3 !important
}

._special-version-contrast .project__wrapper button {
    border: none !important
}

._special-version-contrast .page-head._reversed .project__image-wrapper, ._special-version-contrast .project__image-wrapper {
    background: #000
}

._special-version-contrast .header._transparent, ._special-version-contrast .header._transparent .header__outside .header__container {
    border-color: #d3d3d3 !important
}

._special-version-contrast .list li a:hover {
    color: #fff;
    opacity: .7
}

._special-version-contrast .controls button circle {
    fill: #fff !important
}

._special-version-contrast .controls button path {
    stroke: #000 !important
}

._special-version-contrast .controls button:disabled circle {
    stroke: #d3d3d3 !important;
    fill: #000 !important
}

._special-version-contrast .controls button:disabled path {
    stroke: #fff !important
}

._special-version-contrast .page-head__official circle, ._special-version-contrast .page-head__official path {
    stroke: #fff
}

._special-version-contrast .header__outside:after {
    border-color: #fff !important
}

._special-version-contrast .document span:after {
    filter: grayscale(1)
}

._special-version-contrast .main-screen-new {
    border-bottom: 1px solid #d3d3d3 !important;
    color: #fff !important;
    background: #000 !important
}

._special-version-contrast .main-screen-new__background-dark, ._special-version-contrast .main-screen-new__background-light {
    background: grey !important
}

._special-version-contrast .vacancy:hover p {
    color: #fff
}

._special-version-contrast .vacancy:hover svg {
    fill: #000
}

._special-version-contrast .vacancy:hover svg circle, ._special-version-contrast .vacancy:hover svg path {
    stroke: #fff
}

@media (min-width: 1024px) {
    ._special-version-contrast .document__title:hover {
        color: #fff
    }
}

._special-version-contrast .contacts__map, ._special-version-contrast .projects__circles .partners__circle {
    filter: grayscale(1)
}

._special-version-contrast ._blue, ._special-version-contrast .council-item, ._special-version-contrast .news-page .btn:hover, ._special-version-contrast .news-page .news__cell:hover .news__text, ._special-version-contrast .news .news__cell:hover .news__text, ._special-version-contrast .news__datestamp, ._special-version-contrast .newspaper, ._special-version-contrast .pagination a, ._special-version-contrast .person__about, ._special-version-contrast .project {
    color: #000 !important;
    background-color: #fff !important
}

._special-version-contrast ._main .news__cell:hover h4, ._special-version-contrast ._main .news__date, ._special-version-contrast .box span, ._special-version-contrast .breadcrumbs li, ._special-version-contrast .contacts__item a[href^="mailto:"], ._special-version-contrast .footer__info p, ._special-version-contrast .form__submit-box span .form__link, ._special-version-contrast .header__buttons:hover a, ._special-version-contrast .header__buttons a, ._special-version-contrast .header__buttons a svg, ._special-version-contrast .header__nav a, ._special-version-contrast .line, ._special-version-contrast .main-screen-block__title sup, ._special-version-contrast .main__caption sup, ._special-version-contrast .more span, ._special-version-contrast .news-page, ._special-version-contrast .page-head__official, ._special-version-contrast .pagination__dots, ._special-version-contrast .project__wrapper, ._special-version-contrast .remarks h2, ._special-version-contrast .remarks p, ._special-version-contrast .search__links a:hover, ._special-version-contrast .sidelist .box svg, ._special-version-contrast .text-content a, ._special-version-contrast .text-content h1 span, ._special-version-contrast .text-content li:before {
    color: #fff !important
}

._special-version-contrast #_heading, ._special-version-contrast .main-screen-switcher span, ._special-version-contrast .news .news__cell:hover h4, ._special-version-contrast .news__cell:hover .news__date, ._special-version-contrast .news__cell:hover h4, ._special-version-contrast .news__date, ._special-version-contrast .newspaper .link-external, ._special-version-contrast .newspaper:hover h4, ._special-version-contrast .person, ._special-version-contrast .person__email, ._special-version-contrast .project:hover h2 {
    color: #000 !important
}

._special-version-contrast .dashboard, ._special-version-contrast .dashboard text, ._special-version-contrast .main-screen-switcher, ._special-version-contrast .newspapers .flickity-page-dots li, ._special-version-contrast .text-content ul li:before {
    background-color: #fff !important
}

._special-version-contrast ._bgc-gradient, ._special-version-contrast ._outer_padding_bg, ._special-version-contrast .activity__overlay, ._special-version-contrast .activity_detail .page__content, ._special-version-contrast .main-screen-switcher button:before {
    background: #000 !important
}

._special-version-contrast .contacts__item a, ._special-version-contrast .contacts__item a:hover, ._special-version-contrast .footer__about a, ._special-version-contrast .footer__about a:hover, ._special-version-contrast .link-external, ._special-version-contrast .link-external:hover, ._special-version-contrast .person__email, ._special-version-contrast .person__email:hover, ._special-version-contrast .side a, ._special-version-contrast .side a:hover, ._special-version-contrast .sidedoc a, ._special-version-contrast .sidedoc a:hover, ._special-version-contrast .sidedoc a:hover:hover, ._special-version-contrast a[href^="mailto:"]:hover, ._special-version-contrast a[href^="mailto:"]:hover:hover {
    color: #fff
}

._special-version-contrast .contacts__item a:after, ._special-version-contrast .footer__about a:after, ._special-version-contrast .link-external:after, ._special-version-contrast .person__email:after, ._special-version-contrast .side a:after, ._special-version-contrast .sidedoc a:after, ._special-version-contrast .sidedoc a:hover:after, ._special-version-contrast a[href^="mailto:"]:hover:after {
    filter: grayscale(1)
}

._special-version-contrast .pagination #nav {
    background-color: transparent !important
}

._special-version-contrast .contacts__item-text a:hover, ._special-version-contrast .news__tags a, ._special-version-contrast .page-head__title span {
    color: #fff
}

._special-version-contrast .box {
    background-color: #000 !important;
    border: 1px solid #fff !important
}

._special-version-contrast .box .box__title {
    color: #fff
}

._special-version-contrast .project svg circle, ._special-version-contrast .project svg path, ._special-version-contrast .vacancy svg circle, ._special-version-contrast .vacancy svg path {
    stroke: #fff
}

._special-version-contrast .project svg circle, ._special-version-contrast .project svg path {
    stroke: #000
}

._special-version-contrast .box:hover .btn svg, ._special-version-contrast .project:hover svg {
    fill: none
}

._special-version-contrast .box:hover .btn svg circle, ._special-version-contrast .project:hover svg circle {
    fill: #fff !important
}

._special-version-contrast .box:hover .btn svg path, ._special-version-contrast .project:hover svg path {
    stroke: #000 !important
}

._special-version-contrast .flickity-page-dots .dot.is-selected:after, ._special-version-contrast .news__tag, ._special-version-contrast .partners__circle:hover {
    border-color: #fff !important
}

._special-version-contrast .form__box .form__input, ._special-version-contrast .form__file, ._special-version-contrast .vacancy {
    border: 1px solid #fff
}

._special-version-contrast .form__link, ._special-version-contrast .text-content a:not([class]) {
    background-size: 0 !important;
    text-decoration: underline
}

._special-version-contrast .btn circle, ._special-version-contrast .btn path, ._special-version-contrast .search__close circle, ._special-version-contrast .search__close path {
    stroke: #fff !important
}

._special-version-contrast .btn:hover svg, ._special-version-contrast .page-head__official:hover svg, ._special-version-contrast .search__close:hover circle {
    fill: #fff !important
}

._special-version-contrast .btn:hover svg path, ._special-version-contrast .page-head__official:hover svg path, ._special-version-contrast .search__close:hover circle path {
    stroke: #000 !important
}

._special-version-contrast .newspapers .flickity-button-icon {
    fill: #fff
}

._special-version-contrast .search__close:hover path, ._special-version-contrast .search__submit svg path {
    stroke: #000 !important
}

._special-version-contrast .search__links a {
    background-image: linear-gradient(hsla(0, 0%, 100%, .6), hsla(0, 0%, 100%, .6)) !important
}

._special-version-contrast .header__nav a {
    background-image: linear-gradient(transparent, transparent) !important
}

._special-version-contrast .dashboard label {
    background-image: linear-gradient(rgba(0, 0, 0, .6), rgba(0, 0, 0, .6)) !important
}

._special-version-contrast .dashboard input[type=radio]:checked + label {
    background-position: 1px 100% !important;
    background-size: 100% 1px !important
}

._special-version-contrast #js-particles .particles-js-canvas-el, ._special-version-contrast ._activity-loading, ._special-version-contrast .activity__controls, ._special-version-contrast .advantage__head svg, ._special-version-contrast .breadcrumbs li:not(:last-child):after, ._special-version-contrast .document__title:before, ._special-version-contrast .form__button, ._special-version-contrast .page-head__img, ._special-version-contrast .pagination__nav:after, ._special-version-contrast .partners__circle:hover, ._special-version-contrast .sidedoc a:before, ._special-version-contrast .slider__buttons, ._special-version-contrast .three-canvas, ._special-version-contrast .video__play, ._special-version-contrast img {
    filter: grayscale(1)
}

._special-version-contrast .activity_detail {
    padding-top: 0
}

._special-version-contrast .main-screen-canvas {
    z-index: 0
}

._special-version-contrast .main-screen-new {
    height: calc(100vh - 20rem)
}

._special-version-contrast .page-head .project__logo {
    color: #fff !important;
    background: none !important
}

._special-version-contrast .main-screen-block__btn span, ._special-version-contrast .main-screen-block__title span {
    color: #000 !important
}

._special-version-contrast .main-screen-block__btn:hover svg, ._special-version-contrast .main-screen-block__btn svg {
    fill: #000 !important
}

._special-version-contrast .main-screen-block__btn:hover svg path {
    stroke: #fff !important
}

._special-version-contrast .footer__icons a svg use, ._special-version-contrast .header-logo__img, ._special-version-contrast .header__prior {
    filter: brightness(0) invert(1)
}

._special-version-contrast .search__form button svg path {
    stroke: #000 !important
}

._special-version-contrast .partners__circle:hover h3 {
    color: #fff
}

._special-version-contrast .search__close path {
    stroke: #000 !important
}

._special-version-contrast ._accent_bg, ._special-version-contrast ._white-bg, ._special-version-contrast .search__container {
    background-color: #000 !important
}

._special-version-contrast .search__form button {
    background-color: #fff !important
}

._special-version-contrast .form__policy {
    color: #fff
}

.projects {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 5.6rem;
    margin-bottom: 10rem
}

@media (max-width: 1023px) {
    .projects {
        margin: 3.2rem 0 5.6rem
    }
}

@media (max-width: 767px) {
    .projects {
        flex-direction: column
    }
}

.project {
    display: flex;
    justify-content: space-between;
    width: calc(50% - 1.6rem);
    max-width: 60.4rem;
    margin: 1.6rem;
    border-radius: 10px;
    background-color: #fff
}

.project:nth-child(odd) {
    margin-left: 0
}

.project:nth-child(2n+2) {
    margin-right: 0
}

@media (min-width: 1024px) {
    .project:hover h2 {
        color: #483593
    }
}

@media (max-width: 1023px) {
    .project {
        margin: .8rem
    }
}

@media (max-width: 767px) {
    .project {
        flex-direction: column-reverse;
        width: 100%;
        margin: 0 0 2.4rem
    }

    .project:last-child {
        margin-bottom: 0
    }
}

.project__text {
    display: flex;
    flex-direction: column;
    max-width: 50rem
}

@media (max-width: 1023px) {
    .project__text {
        max-width: 50%
    }
}

@media (max-width: 767px) {
    .project__text {
        max-width: unset
    }
}

.project__text h2 {
    transition: color .25s ease
}

@media (max-width: 1023px) {
    .project__text h2 {
        font-weight: 500;
        font-size: 2.4rem;
        line-height: 3.2rem
    }
}

@media (max-width: 1023px) and (max-width: 767px) {
    .project__text h2 {
        font-size: 1.8rem;
        line-height: 2.6rem
    }
}

@media (max-width: 767px) {
    .project__text h2 {
        font-weight: 500;
        font-size: 4rem;
        line-height: 4.8rem
    }
}

@media (max-width: 767px) and (max-width: 767px) {
    .project__text h2 {
        font-size: 2.4rem;
        line-height: 3.2rem
    }
}

.project__text p {
    font-size: 2rem;
    line-height: 2.4rem
}

@media (max-width: 1023px) {
    .project__text p {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.project__text span {
    font-size: 1.4rem;
    line-height: 1.8rem;
    display: block;
    margin-bottom: 2rem;
    color: #858585
}

@media (max-width: 1023px) {
    .project__text span {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

@media (max-width: 767px) {
    .project__text span {
        display: none
    }
}

.project__image {
    position: relative;
    width: 100%;
    height: 33.9rem;
    border-radius: 10px;
    overflow: hidden
}

@media (max-width: 1023px) {
    .project__image {
        height: 18.9rem
    }
}

@media (min-width: 1024px) {
    .project__image:hover .project__wrapper {
        transform: translateX(0)
    }

    .project__image:hover .project__image-wrapper {
        left: -100%
    }
}

.project__image img {
    width: 100%;
    height: 100%;
    border-radius: 10px;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform .4s cubic-bezier(.645, .045, .355, 1)
}

.project__image-wrapper {
    z-index: 1;
    align-items: center;
    justify-content: center;
    background-color: #f5f5f5;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 70%;
    transition: top .4s cubic-bezier(.645, .045, .355, 1), left .4s cubic-bezier(.645, .045, .355, 1)
}

.project__image-wrapper, .project__wrapper {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    width: 100%;
    height: 100%;
    border-radius: 10px
}

.project__wrapper {
    z-index: 3;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 3.2rem;
    color: #fff;
    background-color: #483593;
    transform: translateX(100%);
    transition: transform .4s cubic-bezier(.645, .045, .355, 1)
}

@media (max-width: 1023px) {
    .project__wrapper {
        display: none
    }
}

.project__wrapper h2, .project__wrapper h3 {
    margin: 0
}

.project__wrapper .project__logo-hover {
    width: 25rem;
    height: 5rem;
    margin-bottom: 3.2rem
}

.project__wrapper .project__logo-hover.hover-5100 {
    width: 15rem
}

.project__wrapper .project__logo-hover.hover-prior {
    width: 20rem
}

.project__wrapper .project__logo-hover.hover-study {
    height: 7rem
}

.project__wrapper p {
    font-size: 2rem;
    line-height: 2.4rem;
    margin-bottom: 0
}

@media (max-width: 1023px) {
    .project__wrapper p {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.project__wrapper button {
    margin-top: auto;
    background-color: transparent !important
}

.project__wrapper button svg {
    margin-right: 0 !important
}

.project__wrapper button svg circle {
    background-color: #483593;
    fill: #fff
}

@media (min-width: 1024px) {
    .project__wrapper button:hover path {
        stroke: #483593 !important;
        fill: transparent !important
    }
}

.project__puzzle {
    position: absolute;
    right: 0;
    z-index: 2;
    height: 100%
}

@media (max-width: 1023px) {
    .project__puzzle {
        height: auto
    }
}

.project__logo {
    width: 30rem;
    height: 10rem
}

@media (max-width: 1023px) {
    .project__logo {
        width: 23rem;
        height: 6rem
    }
}

.project__logo.exam {
    width: 35rem
}

@media (max-width: 1023px) {
    .project__logo.exam {
        width: 25rem
    }
}

.remarks {
    width: 30.2rem;
    margin-left: auto;
    color: #333
}

@media (max-width: 1023px) {
    .remarks {
        display: flex;
        width: 100%;
        margin: 0
    }
}

@media (max-width: 767px) {
    .remarks {
        flex-direction: column
    }
}

@media (max-width: 1023px) {
    .remarks > li {
        width: calc(33.333% - 2.4rem);
        margin-right: 2.4rem
    }
}

@media (max-width: 767px) {
    .remarks > li {
        width: 100%
    }
}

.remarks > li:not(:last-child) {
    margin-bottom: 3.2rem;
    padding-bottom: 3.2rem;
    border-bottom: 1px solid #d3d3d3
}

@media (max-width: 1023px) {
    .remarks > li:not(:last-child) {
        margin-bottom: 0;
        padding-bottom: 0;
        border-bottom: none
    }
}

@media (max-width: 767px) {
    .remarks > li:not(:last-child) {
        margin-right: 0;
        margin-bottom: 1.6rem;
        padding-bottom: 1.6rem;
        border-bottom: 1px solid #d3d3d3
    }
}

.remarks > li h2 {
    margin: 0 0 1.6rem;
    color: #483593
}

.remarks > li p {
    font-size: 2rem;
    line-height: 2.4rem;
    margin: 0;
    font-weight: 400
}

@media (max-width: 1023px) {
    .remarks > li p {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.icons-params {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between
}

@media (max-width: 1023px) {
    .icons-params {
        margin: 0
    }
}

.icons-params .icon-param {
    display: flex;
    flex-direction: column;
    margin: 1rem;
}

.icons-params.cols3 .icon-param {
    width: calc((100% - 6rem) / 3)
}

.icons-params.cols2 .icon-param {
    width: calc((100% - 6rem) / 2)
}

@media (max-width: 767px) {
    .icons-params {
        flex-direction: column;
    }
    .icons-params.cols3 .icon-param, .icons-params.cols2 .icon-param, .icons-params .icon-param {
        width: calc(100% - 2rem);
        flex-direction: row;
    }
    .icons-params .icon-param .icon-data {
        width: calc(100% - 5.5rem);
    }
}

.icons-params .icon-param::before {
    width: 5rem;
    height: 5rem;
    display: block;
    content: "";
    background-size: cover;
    mask-size: cover;
    -webkit-mask-size: cover;
    background-color: #483593;
    margin: 0 0.5rem 0.5rem 0;
}

.icons-params .icon-param.icon-format::before {
    mask-image: url(/local/templates/main/i/icons-params/done.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/done.svg);
}

.icons-params .icon-param.icon-edu-type::before {
    mask-image: url(/local/templates/main/i/icons-params/header.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/header.svg);
}

.icons-params .icon-param.icon-edu-form::before {
    mask-image: url(/local/templates/main/i/icons-params/comp.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/comp.svg);
}

.icons-params .icon-param.icon-edu-team::before {
    mask-image: url(/local/templates/main/i/icons-params/team.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/team.svg);
}

.icons-params .icon-param.icon-cost::before {
    mask-image: url(/local/templates/main/i/icons-params/ruble.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/ruble.svg);
}

.icons-params .icon-param.icon-date::before {
    mask-image: url(/local/templates/main/i/icons-params/calendar.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/calendar.svg);
}

.icons-params .icon-param.icon-time::before {
    mask-image: url(/local/templates/main/i/icons-params/arrow-clock.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/arrow-clock.svg);
}

.icons-params .icon-param.icon-address::before {
    mask-image: url(/local/templates/main/i/icons-params/pin-rounded.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/pin-rounded.svg);
}

.icons-params .icon-param.icon-conditions::before {
    mask-image: url(/local/templates/main/i/icons-params/book.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/book.svg);
}

.icons-params .icon-param.icon-structure::before {
    mask-image: url(/local/templates/main/i/icons-params/structure.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/structure.svg);
}
.icons-params .icon-param.icon-general::before {
    mask-image: url(/local/templates/main/i/icons-params/general.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/general.svg);
}
.icons-params .icon-param.icon-quality::before {
    mask-image: url(/local/templates/main/i/icons-params/quality.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/quality.svg);
}

.icons-params .icon-param.icon-lecture::before {
    mask-image: url(/local/templates/main/i/icons-params/lecture.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/lecture.svg);
}
.icons-params .icon-param.icon-group::before {
    mask-image: url(/local/templates/main/i/icons-params/group.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/group.svg);
}
.icons-params .icon-param.icon-whiteboard::before {
    mask-image: url(/local/templates/main/i/icons-params/whiteboard.svg);
    -webkit-mask-image: url(/local/templates/main/i/icons-params/whiteboard.svg);
}

.icons-params .icon-param .icon-data .icon-value {
    font-weight: bold;
}

.persons {
    display: flex;
    flex-wrap: wrap;
    margin: -1rem -1rem 0;
    width: 100%
}

@media (max-width: 1023px) {
    .persons {
        margin: 0
    }
}

.person {
    display: flex;
    flex-direction: column;
    width: calc(33% - 2rem);
    margin: 1rem;
    border-radius: 10px
}

@media (max-width: 1023px) {
    .person {
        width: calc(50% - 2rem)
    }
}

@media (max-width: 767px) {
    .person {
        width: 100%;
        margin-right: 0;
        margin-left: 0
    }
}

.person img {
    position: relative;
    display: block;
    min-width: 100%;
    height: 38rem;
    max-height: 41rem;
    border-radius: 10px 10px 0 0;
    -o-object-fit: cover;
    object-fit: cover
}

.person img:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    content: ""
}

@media (max-width: 1023px) {
    .person img {
        height: 30rem;
        max-height: 30rem
    }
}

@media (max-width: 767px) {
    .person img {
        max-width: 100%
    }
}

.person__about {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    padding: 2.4rem;
    border-radius: 0 0 10px 10px;
    background-color: #f5f5f5
}

@media (max-width: 767px) {
    .person__about {
        padding: 1.6rem
    }
}

.person__name {
    font-size: 2rem;
    line-height: 2.4rem;
    font-weight: 500;
    margin: 0 0 1.6rem
}

@media (max-width: 1023px) {
    .person__name {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.person__position {
    font-size: 1.6rem;
    line-height: 2rem;
    display: block;
    margin-bottom: auto;
    color: #bcbcbc
}

@media (max-width: 1023px) {
    .person__position {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.person__phone {
    -webkit-text-decoration: underline rgba(72, 53, 147, 0);
    text-decoration: underline rgba(72, 53, 147, 0);
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
    text-underline-offset: 1px;
    transition: color .25s ease, -webkit-text-decoration .25s ease;
    transition: text-decoration .25s ease, color .25s ease;
    transition: text-decoration .25s ease, color .25s ease, -webkit-text-decoration .25s ease;
    font-weight: 500;
    display: block;
    margin-top: 3.2rem
}

@media (min-width: 1024px) {
    .person__phone:hover {
        -webkit-text-decoration-color: rgba(72, 53, 147, .7);
        text-decoration-color: rgba(72, 53, 147, .7)
    }
}

.person__email {
    -webkit-text-decoration: underline rgba(72, 53, 147, 0);
    text-decoration: underline rgba(72, 53, 147, 0);
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
    text-underline-offset: 1px;
    transition: color .25s ease, -webkit-text-decoration .25s ease;
    transition: text-decoration .25s ease, color .25s ease;
    transition: text-decoration .25s ease, color .25s ease, -webkit-text-decoration .25s ease;
    display: block;
    margin-top: 1.2rem;
    color: #483593;
    font-weight: 500
}

@media (min-width: 1024px) {
    .person__email:hover {
        -webkit-text-decoration-color: rgba(72, 53, 147, .7);
        text-decoration-color: rgba(72, 53, 147, .7)
    }
}

.popup {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 100;
    display: flex;
    background-color: rgba(0, 0, 0, .5);
    visibility: hidden;
    opacity: 0;
    transition: visibility .4s ease, opacity .4s ease
}

.popup__container {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 65%;
    margin: auto;
    padding-bottom: 35%
}

.popup.popupText .popup__container {
    background-color: #fff;
    display: block;
    margin: 5% auto;
    padding: 0;
}

@media (max-width: 767px) {
    .popup__container {
        width: 85%;
        padding-bottom: 45%
    }
}

.popup.popupText .popup__container .popup__content {
    height: 100%;
    overflow-y: scroll;
    padding: 2rem;
}

.popup iframe {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.popup__close {
    position: absolute;
    top: -7rem;
    right: -7rem;
    width: 5.4rem;
    height: 5.4rem;
    border: none;
    color: #fff;
    background: url(/local/templates/main/css/../i/sprite.svg#X) no-repeat 50%;
    outline: none;
    transition: opacity .25s ease
}

@media (min-width: 1024px) {
    .popup__close:hover {
        opacity: .75
    }
}

@media (max-width: 1023px) {
    .popup__close {
        display: none
    }
}

.popup._active {
    visibility: visible;
    opacity: 1
}

.video {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    width: 100%
}

.video img {
    position: relative;
    display: block;
    width: 100%;
    border-radius: 10px;
    -o-object-fit: cover;
    object-fit: cover
}

@media (max-width: 767px) {
    .video img {
        width: 100%
    }
}

.video__cell {
    position: relative;
    width: calc(33.3333% - 1.4rem);
    cursor: pointer
}

@media (max-width: 767px) {
    .video__cell {
        width: 100%
    }
}

.video__pic-wrap {
    position: relative
}

.video__play {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 5.4rem;
    height: 5.4rem;
    border: none;
    background: url(/local/templates/main/css/../i/sprite.svg#play) no-repeat 50%;
    outline: none;
    transform: translateY(-50%) translateX(-50%);
    transition: opacity .25s ease;
    pointer-events: none
}

@media (min-width: 1024px) {
    .video__play:hover {
        opacity: .75
    }
}

.video h4 {
    margin-top: 1.4rem
}

.video .loader {
    top: calc(50% - 75px);
    left: calc(50% - 50px)
}

.documents {
    margin-top: 8rem
}

@media (max-width: 1023px) {
    .documents {
        margin-top: 6.4rem
    }
}

.document {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 2.4rem 0;
    border-bottom: 1px solid #bcbcbc
}

.document:first-of-type {
    padding-top: 0
}

@media (max-width: 1023px) {
    .document {
        padding: 1.6rem 0
    }
}

@media (max-width: 767px) {
    .document {
        flex-direction: column;
        align-items: flex-start;
        padding-right: 0;
        padding-left: 0
    }
}

.document:last-child {
    border: none
}

.document__title {
    -webkit-text-decoration: underline rgba(72, 53, 147, 0);
    text-decoration: underline rgba(72, 53, 147, 0);
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
    text-underline-offset: 1px;
    transition: color .25s ease, -webkit-text-decoration .25s ease;
    transition: text-decoration .25s ease, color .25s ease;
    transition: text-decoration .25s ease, color .25s ease, -webkit-text-decoration .25s ease;
    font-size: 2rem;
    line-height: 2.4rem;
    position: relative;
    display: inline-flex;
    align-items: center;
    margin: 0
}

@media (min-width: 1024px) {
    .document__title:hover {
        -webkit-text-decoration-color: rgba(72, 53, 147, .7);
        text-decoration-color: rgba(72, 53, 147, .7)
    }
}

@media (max-width: 1023px) {
    .document__title {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

@media (min-width: 1024px) {
    .document__title:hover {
        color: #483593
    }
}

@media (max-width: 1023px) {
    .document__title {
        padding-left: 3rem
    }
}

.document__title:after {
    position: absolute;
    left: -4.6rem;
    width: 2.6rem;
    height: 3.2rem;
    color: #483593;
    background-repeat: no-repeat;
    background-size: 100%;
    content: ""
}

@media (max-width: 1023px) {
    .document__title:after {
        left: 0;
        width: 2rem
    }
}

.document__description {
    font-size: 1.2rem;
    line-height: 1.6rem;
    margin: 0;
    padding-top: 1.6rem
}

@media (max-width: 1023px) {
    .document__description {
        padding-left: 3rem
    }
}

.document span {
    font-size: 1.6rem;
    line-height: 2rem;
    display: flex;
    flex-shrink: 0;
    align-items: center;
    width: 22rem;
    margin-right: 2.4rem;
    color: #c7c7c7
}

@media (max-width: 1023px) {
    .document span {
        font-size: 1.4rem;
        line-height: 1.8rem;
        width: 13rem
    }
}

@media (max-width: 767px) {
    .document span {
        margin-bottom: 2.4rem
    }
}

@media (min-width: 1024px) {
    .document:not(:has(+ span)) > div {
        padding-left: 4.6rem
    }
}

.document__title[href$=".pdf"]:after {
    background-image: url(/local/templates/main/css/../i/sprite/pdf.svg)
}

.document__title[href$=".doc"]:after, .document__title[href$=".docx"]:after {
    background-image: url(/local/templates/main/css/../i/sprite/doc.svg)
}

.document__title[href$=".ppt"]:after, .document__title[href$=".pptx"]:after {
    background-image: url(/local/templates/main/css/../i/sprite/ppt.svg)
}

.document__title[href$=".svg"]:after {
    background-image: url(/local/templates/main/css/../i/sprite/svg.svg)
}

.document__title[href$=".png"]:after {
    background-image: url(/local/templates/main/css/../i/sprite/png.svg)
}

.document__title[href$=".jpg"]:after {
    background-image: url(/local/templates/main/css/../i/sprite/jpg.svg)
}

.document__title[href$=".xls"]:after, .document__title[href$=".xlsx"]:after {
    background-image: url(/local/templates/main/css/../i/sprite/xls.svg)
}

.page-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 128rem;
    margin: 6.5rem auto 0
}

@media (max-width: 1375px) {
    .page-head {
        width: calc(100% - 8rem);
        margin: 6.5rem 4rem 0
    }
}

@media (max-width: 1023px) {
    .page-head {
        margin: 3.6rem auto 0;
        padding: 0
    }
}

@media (max-width: 767px) {
    .page-head {
        flex-direction: column;
        width: calc(100% - 4rem);
        margin-top: 3.2rem
    }
}

.page-head__title {
    width: 100%
}

@media (max-width: 1023px) {
    .page-head__title {
        min-width: 50%;
        max-width: 100%
    }
}

.page-head__title h1 {
    margin: 0;
    font-weight: 500
}

.page-head__img {
    display: flex;
    flex-direction: column;
    align-self: flex-end;
    justify-content: space-between;
    width: 100%;
    max-width: 30rem;
    height: 100%;
    min-height: 13.2rem;
    padding: 1.6rem;
    border-radius: 10px;
    background-color: #483593;
    transition: opacity .25s ease
}

@media (min-width: 1024px) {
    .page-head__img:hover {
        opacity: .88
    }
}

@media (max-width: 1023px) {
    .page-head__img {
        align-self: flex-start
    }
}

@media (max-width: 767px) {
    .page-head__img {
        margin: 3.2rem 0
    }
}

.page-head__img img {
    display: block;
    max-height: 4.4rem;
    margin: 0 auto 1.6rem 0;
    border-radius: 5px;
    -o-object-fit: contain;
    object-fit: contain
}

@media (max-width: 767px) {
    .page-head__img img {
        height: 3.4rem
    }
}

.page-head__img p {
    font-size: 1.4rem;
    line-height: 1.8rem;
    width: 90%;
    margin-bottom: 0;
    color: #f5f5f5
}

@media (max-width: 1023px) {
    .page-head__img p {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.page-head__img svg {
    width: 2rem;
    height: 2rem
}

.page-head__about {
    display: flex;
    align-items: flex-end;
    justify-content: space-between
}

.page-head__description {
    width: 80%;
    font-size: 2rem;
    line-height: 3.2rem
}

@media (max-width: 1023px) {
    .page-head__description {
        width: 100%
    }
}

.page-head span {
    color: #483593
}

.page-head__date {
    display: block;
    font-size: 1.6rem;
    line-height: 2rem;
    margin-bottom: 2.4rem;
    color: #858585 !important
}

@media (max-width: 1023px) {
    .page-head__date {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.page-head._reversed {
    align-items: flex-start
}

.page-head._reversed > * {
    width: 50%
}

@media (max-width: 767px) {
    .page-head._reversed .page-head__title {
        width: 100%
    }

    .page-head._reversed .page-head__title h1 {
        margin-bottom: 2.4rem
    }
}

.page-head._reversed .project {
    flex-shrink: 0;
    max-width: 50%;
    margin: 0 8rem 0 0
}

@media (max-width: 1023px) {
    .page-head._reversed .project {
        margin-right: 5rem
    }
}

@media (max-width: 767px) {
    .page-head._reversed .project {
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 2.4rem
    }
}

.page-head._reversed .project__image-wrapper {
    background-color: #483593
}

.page-head._reversed .project__image:hover .project__image-wrapper {
    left: auto
}

.page-head._reversed .project__logo {
    width: 40rem;
    color: #fff
}

@media (max-width: 1023px) {
    .page-head._reversed .project__logo {
        width: 25rem
    }
}

.page-head__official {
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 2.4rem;
    display: flex;
    align-items: center;
    margin-top: 4rem;
    color: #483593
}

@media (max-width: 1023px) {
    .page-head__official {
        font-size: 1.6rem;
        line-height: 2.2rem
    }
}

@media (max-width: 767px) {
    .page-head__official {
        margin: 0 0 1.6rem;
        margin: 0
    }
}

.page-head__official svg {
    margin-right: 1.6rem;
    transition: fill .25s ease
}

.page-head__official svg path {
    transition: stroke .25s ease
}

@media (min-width: 1024px) {
    .page-head__official:hover svg {
        fill: #483593
    }

    .page-head__official:hover svg path {
        stroke: #fff
    }
}

.breadcrumbs {
    width: calc(100% - 8rem);
    max-width: 128rem;
    margin: 0 auto;
    padding-top: 3.2rem;
    font-size: 0;
    white-space: normal;
    word-wrap: break-word
}

@media (max-width: 767px) {
    .breadcrumbs {
        width: calc(100% - 4rem)
    }
}

.breadcrumbs li {
    font-size: 1.6rem;
    line-height: 2rem;
    position: relative;
    z-index: 1;
    display: inline-flex;
    margin: 0;
    color: #483593
}

@media (max-width: 767px) {
    .breadcrumbs li {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.breadcrumbs li:not(:last-child):after {
    width: 1rem;
    height: 1rem;
    margin-right: 2.2rem;
    padding-left: 1.5rem;
    content: url(/local/templates/main/css/../i/c/Vector.png)
}

.breadcrumbs li:last-child a {
    max-width: 43rem;
    overflow: hidden;
    color: #bcbcbc;
    white-space: nowrap;
    text-overflow: ellipsis;
    cursor: default
}

@media (max-width: 767px) {
    .breadcrumbs li:last-child a {
        max-width: 28rem
    }
}

.breadcrumbs li a {
    z-index: 1;
    color: inherit
}

.breadcrumbs li span {
    background-color: #f6f6f6 !important;
    cursor: default
}

@media (max-width: 767px) {
    .breadcrumbs li {
        margin-bottom: 1rem
    }
}

.council {
    display: flex;
    flex-wrap: wrap;
    margin: -1rem
}

.council-item {
    width: calc(50% - 2rem);
    margin: 1rem;
    display: flex;
    padding: 2.4rem;
    border-radius: .5rem;
    background: #fff
}

@media (max-width: 1023px) {
    .council-item {
        width: calc(100% - 2rem);
        margin: 1rem
    }
}

@media (max-width: 767px) {
    .council-item {
        padding: 1.6rem
    }
}

.council-item__title {
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 2.4rem;
    margin-top: 0;
    margin-bottom: 1.6rem
}

@media (max-width: 1023px) {
    .council-item__title {
        font-size: 1.6rem;
        line-height: 2.2rem
    }
}

@media (max-width: 767px) {
    .council-item__title {
        margin: 0 0 1.6rem
    }
}

.council-item__img {
    width: 9.4rem;
    height: 9.4rem;
    position: relative;
    min-width: 9.4rem;
    margin-right: 3.2rem;
    border-radius: .5rem;
    overflow: hidden
}

@media (max-width: 767px) {
    .council-item__img {
        width: 8.4rem;
        height: 8.4rem;
        min-width: 8.4rem;
        margin-right: 2rem
    }
}

.council-item__img img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover
}

.council-item__text {
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.council-item__positions {
    color: #bcbcbc
}

.council-item__positions > * {
    margin: 0 0 .4rem
}

@media (max-width: 1023px) {
    .council-item__positions > * {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.council-item__positions > :last-child {
    margin: 0
}

.universities .search__form {
    margin-top: 5.6rem;
    margin-bottom: 3.2rem
}

.universities .search__form input {
    padding: 2.4rem
}

.universities .search__form button {
    top: 2rem;
    right: 2rem
}

.university {
    display: flex;
    padding: 2.4rem 0;
    border-bottom: 1px solid #bcbcbc
}

.university:last-of-type {
    border-bottom: none
}

@media (max-width: 767px) {
    .university {
        flex-direction: column;
        padding: 2rem 0
    }
}

.university__img-wrap {
    position: relative;
    width: 30.4rem;
    min-width: 30.4rem;
    height: 18.1rem;
    margin-right: 3.2rem;
    border-radius: .5rem
}

@media (max-width: 1023px) {
    .university__img-wrap {
        width: 24.4rem;
        min-width: 24.4rem;
        height: 15.1rem
    }
}

@media (max-width: 767px) {
    .university__img-wrap {
        width: 28.4rem;
        min-width: 28.4rem;
        height: 17.1rem;
        margin: 0 0 1.6rem
    }
}

.university__img-wrap:not(:has(.university__logo)) > img {
    -o-object-fit: contain;
    object-fit: contain;
}

.university__img-wrap > img {
    width: 100%;
    height: 100%;
    border-radius: 5px;
    -o-object-fit: cover;
    object-fit: cover
}

.university__logo {
    width: 6.4rem;
    height: 6.4rem;
    position: absolute;
    top: 1.2rem;
    left: 1.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: .5rem;
    background: #fff
}

.university__logo img {
    width: 4.8rem;
    height: 4.8rem;
    -o-object-fit: contain;
    object-fit: contain
}

.university__text {
    display: flex;
    flex-direction: column;
    align-items: flex-start
}

.university__title {
    margin: 0 0 1.8rem
}

@media (max-width: 767px) {
    .university__title {
        margin-bottom: 1.2rem
    }
}

.university__link {
    margin-bottom: 3.2rem
}

@media (max-width: 767px) {
    .university__link {
        margin-bottom: 1.6rem
    }
}

.university__address {
    margin: 0 0 .8rem
}

.university__tel {
    font-weight: 700
}

.form {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    max-width: 84.7rem;
    transition: opacity .25s ease
}

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

.form__input {
    font-size: 1.6rem;
    line-height: 2rem;
    width: 100%;
    margin-bottom: 2rem;
    padding: 3rem 2rem;
    border: none;
    border-radius: 5px;
    color: #333;
    background-color: #f5f5f5;
    outline: none;
    opacity: .9;
    transition: padding .25s ease
}

@media (max-width: 1023px) {
    .form__input {
        font-size: 1.4rem;
        line-height: 1.8rem;
        margin-bottom: 1.2rem;
        padding: 2rem
    }
}

.form__input:-webkit-autofill, .form__input:focus, .form__input:focus:not([type=email]):not([type=tel]), .form__input:not(:focus):valid, .form__input[type=email]:not(:placeholder-shown):invalid, .form__input[type=email]:not(:placeholder-shown):valid, .form__input[type=tel]:not(:placeholder-shown):invalid, .form__input[type=tel]:not(:placeholder-shown):valid {
    padding: 4rem 2rem 2rem
}

@media (max-width: 1023px) {
    .form__input:-webkit-autofill, .form__input:focus, .form__input:focus:not([type=email]):not([type=tel]), .form__input:not(:focus):valid, .form__input[type=email]:not(:placeholder-shown):invalid, .form__input[type=email]:not(:placeholder-shown):valid, .form__input[type=tel]:not(:placeholder-shown):invalid, .form__input[type=tel]:not(:placeholder-shown):valid {
        padding: 3rem 2rem 1rem
    }
}

.form__input:-webkit-autofill ~ .form__label, .form__input:focus:not([type=email]):not([type=tel]) ~ .form__label, .form__input:focus ~ .form__label, .form__input:not(:focus):valid ~ .form__label, .form__input[type=email]:not(:placeholder-shown):invalid ~ .form__label, .form__input[type=email]:not(:placeholder-shown):valid ~ .form__label, .form__input[type=tel]:not(:placeholder-shown):invalid ~ .form__label, .form__input[type=tel]:not(:placeholder-shown):valid ~ .form__label {
    font-size: 1.4rem;
    line-height: 1.8rem;
    top: 1rem;
    padding-bottom: 1rem
}

@media (max-width: 1023px) {
    .form__input:-webkit-autofill ~ .form__label, .form__input:focus:not([type=email]):not([type=tel]) ~ .form__label, .form__input:focus ~ .form__label, .form__input:not(:focus):valid ~ .form__label, .form__input[type=email]:not(:placeholder-shown):invalid ~ .form__label, .form__input[type=email]:not(:placeholder-shown):valid ~ .form__label, .form__input[type=tel]:not(:placeholder-shown):invalid ~ .form__label, .form__input[type=tel]:not(:placeholder-shown):valid ~ .form__label {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.form__label {
    position: absolute;
    top: 3rem;
    left: 2rem;
    opacity: .5;
    transition: top .25s ease, font-size .25s ease, line-height .25s ease, padding-bottom .25s ease;
    pointer-events: none
}

@media (max-width: 1023px) {
    .form__label {
        top: 2rem
    }
}

.form__error {
    font-size: 1.4rem;
    line-height: 1.8rem;
    position: absolute;
    top: 1rem;
    right: 2rem;
    z-index: 1;
    color: #f27054;
    opacity: 0;
    transition: opacity .25s ease
}

@media (max-width: 1023px) {
    .form__error {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.form__contacts {
    display: flex;
    width: 100%
}

.form__contacts .form__box {
    width: 50%;
    margin-right: 2rem
}

.form__contacts .form__box:last-of-type {
    margin-right: 0
}

@media (max-width: 767px) {
    .form__contacts {
        flex-direction: column
    }

    .form__contacts .form__box {
        width: 100%;
        margin-right: 0
    }
}

.form__file {
    font-size: 1.6rem;
    line-height: 2rem;
    position: relative;
    display: block;
    width: 100%;
    margin-bottom: 2rem;
    padding: 3rem 2rem 3rem 8rem;
    border: none;
    border-radius: 5px;
    color: #333;
    background-color: #f5f5f5;
    outline: none;
    opacity: .9;
    transition: color .25s ease
}

@media (max-width: 1023px) {
    .form__file {
        font-size: 1.4rem;
        line-height: 1.8rem;
        margin-bottom: 1.2rem;
        padding: 2rem 2rem 2rem 7rem
    }
}

@media (min-width: 1024px) {
    .form__file:hover {
        color: #483593
    }

    .form__file:hover:before {
        box-shadow: inset 0 0 0 2rem hsla(0, 0%, 100%, .25)
    }
}

.form__button {
    position: absolute;
    top: 2.5rem;
    left: 2.5rem;
    z-index: 1;
    width: 3rem;
    height: 3rem;
    border: none;
    background: url(/local/templates/main/css/../i/sprite.svg#plus) no-repeat 50%/100%;
    outline: none;
    transition: box-shadow .25s ease
}

@media (max-width: 1023px) {
    .form__button {
        top: 1.5rem;
        left: 2rem
    }
}

.form__button:active {
    box-shadow: inset 0 0 0 2rem hsla(0, 0%, 100%, .25)
}

.form__formats {
    font-size: 1.2rem;
    line-height: 1.6rem;
    color: #858585
}

.form__submit-box {
    display: flex;
    align-items: flex-start;
    margin-top: 5.6rem
}

@media (max-width: 767px) {
    .form__submit-box {
        flex-direction: column;
        margin-top: 3.2rem
    }

    .form__submit-box button {
        margin: 0 0 1.2rem
    }
}

.form__submit-box button {
    margin-right: 2rem
}

.form__submit-box > .form__submit {
    margin-top: 0
}

.form__policy {
    font-size: 1.4rem;
    line-height: 1.8rem;
    max-width: 56.5rem
}

@media (max-width: 1023px) {
    .form__policy {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.form__policy a,
.popup.popupText .popup__container .popup__content a:not([class]) {
    display: inline;
    background-image: linear-gradient(rgba(72, 53, 147, .8), rgba(72, 53, 147, .8));
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
    transition: background-size .25s ease, opacity .25s ease, color .25s ease, margin .25s ease;
    color: #483593
}

.form__policy a:hover,
.popup.popupText .popup__container .popup__content a:not([class]):hover {
    background-size: 100% 1px
}

.form__submit-error {
    position: relative;
    font-size: 1.4rem;
    line-height: 1.8rem;
    width: 100%;
    margin-top: 5.6rem;
    padding: 2rem 6rem;
    border: 1px solid #f27054;
    border-radius: 5px;
    color: #f27054;
    transition: height .25s ease, margin .25s ease, padding, border-color .25s ease, font-size .25s ease
}

@media (max-width: 1023px) {
    .form__submit-error {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.form__submit-error:before {
    position: absolute;
    top: 1.65rem;
    left: 2rem;
    width: 2.2rem;
    height: 2.2rem;
    background: url(/local/templates/main/css/../i/sprite.svg#attention) no-repeat 50%;
    transition: background-size .25s ease;
    content: ""
}

.after-submit {
    display: flex;
    flex-direction: column;
    align-items: flex-start
}

._visually-hidden {
    height: 0;
    margin: 0;
    padding: 0;
    border-color: transparent;
    font-size: 0
}

._visually-hidden:before {
    background-size: 0
}

._textarea {
    overflow-x: hidden;
    overflow-y: auto;
    cursor: pointer;
    position: relative;
    min-width: 100%;
    max-width: 100%;
    min-height: 14rem;
    cursor: auto;
    resize: none
}

._textarea::-webkit-scrollbar {
    width: 5px
}

._textarea::-webkit-scrollbar-track {
    background: #bcbcbc
}

._textarea::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: rgba(72, 53, 147, .7)
}

._visible-error {
    opacity: 1
}

._drop {
    color: #483593
}

._added {
    background-image: url(/local/templates/main/css/../i/sprite.svg#added)
}

.__file-board {
    position: relative
}

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

.contacts__map-wrap {
    width: 100%
}

@media (max-width: 1023px) {
    .contacts__map-wrap {
        margin-top: 3.2rem
    }
}

@media (min-width: 1024px) {
    .contacts {
        flex-direction: row;
        justify-content: space-between
    }

    .contacts__content, .contacts__map-wrap {
        width: calc(50% - 1rem)
    }
}

.contacts__text {
    max-width: 55rem
}

.contacts__map {
    position: relative;
    width: 100%;
    height: 63rem
}

@media (max-width: 1023px) {
    .contacts__map {
        height: 40rem
    }
}

.contacts__map img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media (max-width: 1023px) {
    .contacts__map img {
        display: none
    }
}

.contacts__items {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 6rem;
    padding-bottom: 1.2rem;
    border-bottom: 1px solid #d4d4d4
}

@media (max-width: 1023px) {
    .contacts__items {
        margin-bottom: 3.2rem;
        padding-bottom: 0
    }
}

.contacts__item {
    font-size: 2rem;
    line-height: 2.4rem;
    margin-bottom: 4.8rem
}

@media (max-width: 1023px) {
    .contacts__item {
        font-size: 1.4rem;
        line-height: 1.8rem;
        margin-bottom: 2.8rem
    }
}

@media (max-width: 767px) {
    .contacts__item {
        margin-bottom: 0
    }
}

.contacts__item:not(:first-child) {
    width: calc(50% - 2rem);
    margin-right: 2rem
}

.contacts__item a[href^="mailto:"] {
    color: #483593
}

.contacts__item a {
    -webkit-text-decoration: underline rgba(72, 53, 147, 0);
    text-decoration: underline rgba(72, 53, 147, 0);
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
    text-underline-offset: 1px;
    transition: color .25s ease, -webkit-text-decoration .25s ease;
    transition: text-decoration .25s ease, color .25s ease;
    transition: text-decoration .25s ease, color .25s ease, -webkit-text-decoration .25s ease
}

@media (min-width: 1024px) {
    .contacts__item a:hover {
        -webkit-text-decoration-color: rgba(72, 53, 147, .7);
        text-decoration-color: rgba(72, 53, 147, .7)
    }
}

.contacts__item-title {
    font-size: 1.4rem;
    line-height: 1.8rem;
    display: block;
    margin: 0 0 .8rem;
    color: #858585
}

@media (max-width: 1023px) {
    .contacts__item-title {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.contacts__item-text {
    margin-bottom: 2.4rem;
    font-weight: 700
}

.contacts .link-external {
    color: #858585
}

@media (min-width: 1024px) {
    .contacts .link-external:hover {
        color: #483593
    }
}

[class*=ymaps-2][class*=-ground-pane] {
    filter: grayscale(1)
}

.advantages {
    display: flex;
    flex-wrap: wrap;
    margin: -2.15rem;
    max-width: 88rem
}

@media (max-width: 767px) {
    .advantages {
        display: flex;
        flex-wrap: wrap;
        margin: -2.15rem
    }
}

.advantage {
    width: calc(50% - 4.3rem);
    margin: 2.15rem;
    font-size: 2rem;
    line-height: 2.4rem
}

@media (max-width: 1023px) {
    .advantage {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

@media (max-width: 767px) {
    .advantage {
        width: calc(100% - 3.2rem);
        margin: 1.6rem
    }
}

.advantage__head {
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 3.2rem;
    display: flex;
    align-items: center;
    width: 80%;
    min-height: 9.2rem;
    margin-bottom: 2rem;
    padding: 0 0 2rem;
    border-bottom: 1px solid #d5d4d4
}

@media (max-width: 767px) {
    .advantage__head {
        font-size: 1.8rem;
        line-height: 2.6rem
    }
}

@media (max-width: 1023px) {
    .advantage__head {
        width: 100%
    }
}

.advantage__head svg {
    width: 8rem;
    height: 6.8rem;
    margin-right: 3.6rem;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: left center;
    object-position: left center
}

.search-result .document:last-child {
    border-bottom: 1px solid #bcbcbc
}

.search-result .document a:before {
    background: none
}

.search-result .document__description span {
    display: inline;
    color: #483593
}

.search-result .document .news__tags {
    margin-bottom: 0
}

.search-result .document .news__tag {
    margin-top: 2rem;
    margin-bottom: 0
}

.search-result .loader {
    top: 0;
    display: none;
    border-color: #f5f5f5 #f5f5f5 #f5f5f5 #483593
}

.search-result .form__error {
    top: 3rem;
    right: 7rem
}

@media (max-width: 1023px) {
    .search-result .form__error {
        top: 1.3rem;
        right: 6rem
    }
}

@media (max-width: 767px) {
    .search-result .form__error {
        top: -2.3rem;
        right: 1rem
    }
}

.search-results {
    position: relative
}

.pagination {
    margin-top: 4rem;
    color: #483593
}

.pagination a {
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 2.4rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.8rem;
    height: 2.8rem;
    margin-right: .8rem;
    border-radius: 3px;
    background-color: #f5f5f5;
    transition: opacity .25s ease
}

@media (max-width: 1023px) {
    .pagination a {
        font-size: 1.6rem;
        line-height: 2.2rem
    }
}

@media (max-width: 767px) {
    .pagination a {
        margin: 0 0 1.6rem;
        margin: 0 .8rem 0 0
    }
}

@media (min-width: 1024px) {
    .pagination a:hover {
        opacity: .75
    }
}

.pagination__dots {
    margin-right: .8rem;
    vertical-align: bottom
}

.pagination ._active {
    color: #fff;
    background-color: #483593
}

.pagination__nav {
    position: relative;
    margin: 0;
    color: #483593;
    background-color: #fff !important
}

.pagination__nav:after {
    width: 1rem;
    height: 1rem;
    content: url(/local/templates/main/css/../i/c/Vector.png)
}

.pagination__nav:first-of-type:after {
    transform: scaleX(-1)
}

.pagination .disabled {
    cursor: default;
    pointer-events: none
}

.main {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    height: calc(100vh - 9.7rem);
    margin-bottom: -10rem
}

@media (max-width: 1023px) {
    .main {
        height: calc(100vh - 6.7rem);
        margin-bottom: -7rem
    }
}

@media (max-width: 767px) {
    .main {
        height: calc(100vh - 7rem);
        margin-bottom: -5rem
    }
}

.main-intro {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding-top: 18rem
}

@media (max-width: 1023px) {
    .main-intro {
        flex-direction: column-reverse;
        margin: auto;
        padding-top: 0
    }
}

.main__background {
    width: 37rem;
    height: 35.7rem;
    background-image: url(/local/templates/main/css/../i/c/main/graph_h.png);
    background-repeat: no-repeat;
    background-size: 100%
}

@media (max-width: 1023px) {
    .main__background {
        position: absolute;
        top: 2rem;
        right: -5rem;
        align-self: flex-end
    }
}

@media (max-width: 767px) {
    .main__background {
        position: absolute;
        top: 2rem;
        right: -5rem;
        width: 27rem;
        height: 26.6rem
    }
}

.main__caption {
    transition: opacity .25s ease
}

@media (max-width: 1023px) {
    .main__caption {
        align-self: flex-start;
        padding-top: 20rem
    }
}

@media (max-width: 767px) {
    .main__caption {
        padding-top: 0
    }
}

.main__caption h1 {
    max-width: 80rem;
    height: 12rem;
    margin-top: 0;
    transition: opacity .25s ease
}

@media (max-width: 1023px) {
    .main__caption h1 {
        max-width: 60rem
    }
}

.main__caption p {
    max-width: 51.2rem;
    margin-top: 0;
    margin-bottom: 7rem;
    transition: opacity .25s ease
}

@media (max-width: 767px) {
    .main__caption p {
        margin-bottom: 3.2rem;
        font-size: 1.6rem;
        line-height: 2.6rem
    }
}

.main__caption sup {
    display: inline-block;
    color: #483593;
    font-weight: 500;
    font-size: 2.4rem;
    transform: translateY(-1rem) translateX(1rem)
}

.main__caption text {
    display: none
}

.main .dashboard {
    position: relative;
    justify-content: space-between;
    width: 100%;
    margin-top: 15rem
}

@media (max-width: 1023px) {
    .main .dashboard {
        width: 100%;
        margin-top: 6rem
    }
}

@media (max-width: 767px) {
    .main .dashboard {
        justify-content: flex-start;
        margin-top: 3.2rem
    }
}

@media (max-width: 767px) {
    .main .dashboard > label {
        position: absolute;
        top: 0;
        right: 1.6rem;
        font-size: 0
    }

    .main .dashboard > label:first-of-type {
        right: auto;
        left: 1.6rem
    }

    .main .dashboard > label:nth-of-type(2) {
        position: static;
        margin: 0 17rem 0 0;
        padding: 0 4rem
    }
}

@media (min-width: 1024px) {
    .main .dashboard > label:hover {
        color: #483593
    }
}

.main .dashboard input[type=radio]:checked + label {
    background-size: 100% 3px
}

.main .dashboard input[type=radio]:not(:checked) + label:hover {
    color: #483593;
    background-size: 0 3px
}

@media (max-width: 767px) {
    .main .dashboard input[type=radio]:first-of-type:checked ~ label:nth-of-type(2) {
        margin: 0 0 0 19rem
    }

    .main .dashboard input[type=radio]:first-of-type:checked ~ label:nth-of-type(2) text:after {
        left: 4.5rem !important;
        background-position-x: 0 !important
    }
}

@media (max-width: 767px) {
    .main .dashboard input[type=radio]:nth-of-type(2):not(:checked) ~ label:nth-of-type(2) text:after {
        left: 8.5rem;
        background-position-x: 9rem
    }
}

.not-found {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    height: 100vh;
    margin-top: -10.9rem
}

@media (max-width: 1023px) {
    .not-found {
        height: auto;
        min-height: 100vh;
        margin-top: -7.9rem
    }
}

.not-found-canvas {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100vh;
    min-height: inherit
}

.not-found__404 {
    display: none;
    margin-top: 15rem;
    margin-bottom: 2.8rem;
    color: #483593;
    font-size: 40rem;
    line-height: 1
}

@media (max-width: 1023px) {
    .not-found__404 {
        font-size: 20rem
    }
}

@media (max-width: 767px) {
    .not-found__404 {
        font-size: 10rem
    }
}

.not-found h3 {
    margin-top: auto;
    text-align: center
}

@media (max-width: 1023px) {
    .not-found h3 {
        margin-top: 25rem;
        margin-bottom: 1.6rem
    }
}

.not-found p {
    margin-bottom: 4rem;
    color: #858585;
    text-align: center
}

@media (max-width: 1023px) {
    .not-found p {
        margin-bottom: 2rem
    }
}

.not-found .btn {
    margin-bottom: 4.8rem
}

@media (max-width: 1023px) {
    .not-found .btn {
        margin-bottom: 3.2rem
    }
}

.not-found__footer {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 3rem
}

@media (max-width: 1023px) {
    .not-found__footer {
        margin-bottom: 1.6rem
    }
}

@media (max-width: 767px) {
    .not-found__footer {
        flex-direction: column-reverse
    }
}

.not-found__footer span {
    font-size: 1.4rem;
    line-height: 1.8rem;
    display: block;
    color: #858585;
    opacity: .5
}

@media (max-width: 1023px) {
    .not-found__footer span {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

@media (min-width: 1024px) {
    .not-found__footer .footer__icons a:hover svg {
        fill: #7f79b6
    }
}

.not-found__footer .footer__icons a svg {
    transition: fill .25s ease;
    fill: #d5d4d4
}

.main-screen {
    position: relative;
    width: 100%;
    background-color: #f5f5f5
}

.main-screen__container {
    width: calc(100% - 8rem);
    max-width: 128rem;
    margin: 0 auto
}

@media (max-width: 767px) {
    .main-screen__container {
        width: calc(100% - 4rem)
    }
}

.main-screen__content {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100vh
}

@media (max-width: 1023px) {
    .main-screen__content {
        justify-content: flex-end
    }
}

.main-screen__blocks {
    margin: 20rem 0
}

@media (max-width: 1023px) {
    .main-screen__blocks {
        margin: 16rem 0
    }
}

@media (max-width: 767px) {
    .main-screen__blocks {
        margin: 10.2rem 0
    }
}

.main-screen-block {
    max-width: 80rem;
    will-change: opacity
}

.main-screen-block__title {
    font-weight: 500
}

.main-screen-block__title span {
    color: #483593
}

.main-screen-block__title sup {
    display: inline-block;
    color: #483593;
    font-size: 2.4rem;
    transform: translateY(-1.5rem) translateX(1rem)
}

@media (max-width: 1023px) {
    .main-screen-block__title sup {
        font-size: 1.6rem;
        transform: translateY(-.5rem) translateX(.5rem)
    }
}

.main-screen-block__text {
    max-width: 66.2rem;
    margin: 4rem 0 0;
    font-size: 2rem;
    line-height: 3.2rem
}

@media (max-width: 1023px) {
    .main-screen-block__text {
        margin-top: 2.4rem;
        font-size: 1.6rem;
        line-height: 2.6rem
    }
}

.main-screen-block__btn {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 7rem
}

@media (max-width: 1023px) {
    .main-screen-block__btn {
        margin-top: 4rem
    }
}

@media (max-width: 767px) {
    .main-screen-block__btn {
        margin-top: 2.4rem
    }
}

.main-screen-switcher {
    position: absolute;
    bottom: 4rem;
    left: 0;
    display: flex;
    justify-content: space-between;
    width: 100%;
    height: 8.8rem;
    border-radius: .5rem;
    background-color: #fff
}

@media (max-width: 1023px) {
    .main-screen-switcher {
        justify-content: flex-end;
        height: 5rem;
        padding: 0 2.4rem
    }
}

@media (max-width: 767px) {
    .main-screen-switcher {
        bottom: 2rem;
        padding: 0 1.6rem
    }
}

.main-screen-switcher button {
    position: relative;
    height: 100%;
    margin: 0 3.2rem;
    color: #333;
    transition: color .5s ease
}

.main-screen-switcher button:after {
    top: calc(50% - .5px);
    left: 3rem;
    width: 22rem;
    height: 1px;
    transition: transform .5s ease
}

.main-screen-switcher button:after, .main-screen-switcher button:before {
    position: absolute;
    background-color: #483593;
    transform: scaleX(0);
    transform-origin: left;
    content: ""
}

.main-screen-switcher button:before {
    right: 0;
    bottom: 0;
    left: 0;
    height: 3px;
    transition: transform .5s ease-in-out
}

@media (max-width: 1023px) {
    .main-screen-switcher button:not(:first-child) {
        margin-left: 1.6rem
    }
}

@media (max-width: 767px) {
    .main-screen-switcher button:not(:first-child) {
        margin-left: 1rem
    }
}

@media (max-width: 1023px) {
    .main-screen-switcher button {
        flex-grow: 0;
        width: 2.1rem;
        margin: 0;
        padding: 0
    }

    .main-screen-switcher button:before {
        height: 0
    }

    .main-screen-switcher button:first-child {
        position: absolute;
        top: 0;
        left: 2.4rem
    }
}

@media (max-width: 1023px) and (max-width: 767px) {
    .main-screen-switcher button:first-child {
        left: 1.6rem
    }
}

@media (max-width: 767px) {
    .main-screen-switcher button:after {
        width: 11.6rem
    }
}

@media (min-width: 1024px) {
    .main-screen-switcher button:hover {
        color: #483593
    }
}

.main-screen-switcher button._disabled-control {
    pointer-events: none
}

.main-screen-switcher button._active {
    color: #483593
}

.main-screen-switcher button._active:before {
    transform: scaleX(1)
}

@media (max-width: 1023px) {
    .main-screen-switcher button._active:after {
        transform: scaleX(1);
        transition-delay: .5s
    }
}

.main-screen-switcher button:first-child {
    text-align: left
}

.main-screen-switcher button:last-child {
    text-align: right
}

.main-screen-switcher button span {
    color: currentColor
}

.main-screen-switcher button span:first-child {
    margin-right: 1rem;
    color: currentColor
}

@media (max-width: 1023px) {
    .main-screen-switcher button span:first-child {
        margin-right: 0
    }
}

@media (max-width: 1023px) {
    .main-screen-switcher button span:last-child {
        display: none
    }
}

.main-screen-canvas {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%
}

details {
    font-size: 2rem;
    border: 0 solid #999;
    border-left-width: 0.2rem;
    padding: 0 0 0 5rem;
    margin-bottom: 2rem;
}

summary {
    border: 4px solid transparent;
    outline: none;
    padding: 1rem;
    display: block;
    color: #483593;
    padding-left: 2.5rem;
    margin-left: -3rem;
    position: relative;
    cursor: pointer;
    font-size: 2rem;
}

details summary::-webkit-details-marker {
    display:none;
}
details[open] > summary:before {
    transform: rotate(90deg);
}
summary:before {
    content: '';
    border-width: .8rem;
    border-style: solid;
    border-color: transparent transparent transparent #483593;
    position: absolute;
    top: 1.3rem;
    left: 1rem;
    transform: rotate(0);
    transform-origin: .2rem 50%;
    transition: .25s transform ease;
}

details section, details section._less-padding {
    padding: 2rem 0 2rem;
}

.requisites__group {
    border-bottom: 1px solid #d4d4d4
}

.requisites__group .requisites {
    border-bottom: none;
}

.requisites {
    display: flex;
    align-items: flex-start;
    padding: 2.4rem 0;
    border-bottom: 1px solid #d4d4d4
}

.requisites__group .requisites:has(.requisites__text) {
    padding: 0.8rem 0
}

.requisites__group .requisites:has(.requisites__text) .requisites__heading,
.requisites__group .requisites:has(.requisites__text) .requisites__text {
    font-size: 1.6rem
}

.requisites__group .requisites:not(:has(.requisites__text)) {
    padding-bottom: 0.8rem;
}

@media (max-width: 767px) {
    .requisites {
        flex-direction: column;
        padding: 1.4rem 0
    }

    .requisites__group .requisites:has(.requisites__text) {
        padding: 0.8rem 0
    }
}

.requisites__heading {
    font-size: 2rem;
    line-height: 2.4rem;
    min-width: 37rem;
    margin: 0 3rem 0 0;
    font-weight: 500;
    line-height: 3.2rem
}

@media (max-width: 1023px) {
    .requisites__group .requisites:has(.requisites__text) .requisites__heading,
    .requisites__group .requisites:has(.requisites__text) .requisites__text {
        font-size: 1.12rem
    }
    .requisites__heading {
        font-size: 1.4rem;
        line-height: 1.8rem;
        min-width: 25rem
    }
}

@media (max-width: 767px) {
    .requisites__group .requisites__heading {
        margin-bottom: 0
    }
    .requisites__heading {
        margin-bottom: 2rem;
        margin-right: 0
    }
}

.requisites__text {
    font-size: 2rem;
    margin: 0;
    line-height: 2.4rem;
    min-width: 37rem
}

@media (max-width: 1023px) {
    .requisites__text {
        font-size: 1.4rem;
        line-height: 1.8rem;
        min-width: 25rem
    }
}

._activity-loading {
    flex: 1;
    justify-content: center;
    min-height: 40rem
}

._activity-loading, .activity {
    display: flex;
    align-items: center
}

.activity {
    height: 100vh;
    overflow: hidden
}

@media (max-width: 1023px) {
    .activity {
        align-items: flex-end
    }
}

.activity__canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.activity__overlay {
    position: absolute;
    top: 0;
    left: calc(50% - 25vw);
    width: 50%;
    background: #fff
}

@media (min-width: 1024px) {
    .activity__overlay {
        height: 100% !important
    }
}

@media (max-width: 1023px) {
    .activity__overlay {
        top: auto;
        bottom: 0;
        left: 0;
        width: 100%;
        height: auto
    }
}

.activity__container {
    width: calc(100% - 8rem);
    max-width: 128rem;
    position: relative;
    z-index: 1;
    margin: 0 auto
}

@media (max-width: 767px) {
    .activity__container {
        width: calc(100% - 4rem)
    }
}

@media (max-width: 1023px) {
    .activity__container {
        width: 100%;
        padding: 3rem 2rem
    }
}

.activity__content {
    width: 100%;
    max-width: 52.2rem
}

.activity__content h2 {
    font-weight: 500;
    font-size: 5.6rem;
    line-height: 6.4rem;
    margin: 0 0 3.2rem;
    color: #483593
}

@media (max-width: 1023px) {
    .activity__content h2 {
        font-size: 3.6rem;
        line-height: 4rem
    }
}

.activity__content h2 > :first-child {
    color: #333
}

@media (max-width: 1023px) {
    .activity__content h2 {
        margin: 0 0 2.4rem
    }
}

.activity__content p {
    margin: 0 0 5.6rem;
    font-size: 2rem;
    line-height: 3.2rem
}

@media (max-width: 1023px) {
    .activity__content p {
        margin: 0 0 2.6rem;
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

.activity__controls {
    position: absolute;
    top: 50%;
    right: 8rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%)
}

@media (max-width: 1500px) {
    .activity__controls {
        right: 2rem
    }
}

@media (max-width: 1023px) {
    .activity__controls {
        top: 38%
    }
}

@media (max-width: 767px) {
    .activity__controls {
        top: 33%
    }
}

.activity__controls i {
    width: 1.7rem;
    height: 1.7rem;
    border: .5rem solid transparent;
    border-radius: 50%;
    box-shadow: 0 0 0 1px transparent, inset 0 0 0 4px #483593;
    transition: box-shadow .3s ease
}

.activity__controls i._active {
    box-shadow: 0 0 0 1px #483593, inset 0 0 0 4px #483593
}

.activity__controls i:not(:last-child) {
    margin-bottom: 1.4rem
}

.activity__controls button {
    opacity: .4;
    transition: opacity .3s ease, visibility .3s ease
}

@media (min-width: 1024px) {
    .activity__controls button:hover {
        opacity: 1
    }
}

.activity__controls button._hidden {
    visibility: hidden;
    opacity: 0
}

.activity__controls button svg {
    width: .8rem;
    height: 10.9rem
}

@media (max-width: 767px) {
    .activity__controls button svg {
        height: 6.9rem
    }
}

.activity__controls button._top {
    transform: rotate(180deg)
}

.activity__dots-items {
    display: flex;
    flex-direction: column;
    margin: 2rem 0
}

.activity_detail {
    position: relative;
    margin-top: 0;
    padding-top: 10.9rem;
    background-color: #fff
}

@media (max-width: 1023px) {
    .activity_detail {
        padding-top: 6.9rem
    }

    .activity_detail .breadcrumbs {
        display: none
    }
}

.activity_detail .activity__overlay {
    position: fixed;
    z-index: -1;
    width: 100%;
    height: calc(100vh - 10.9rem) !important
}

@media (max-width: 1023px) {
    .activity_detail .activity__overlay {
        position: relative;
        z-index: 2;
        height: auto !important
    }
}

.activity_detail .activity__background {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1;
    width: 45%;
    height: 100vh;
    background-color: #f5f5f5
}

@media (max-width: 1023px) {
    .activity_detail .activity__background {
        position: relative;
        width: 100%;
        margin-top: -350px
    }
}

@media (max-width: 767px) {
    .activity_detail .activity__background {
        margin-top: -350px
    }
}

.activity_detail .container {
    padding-top: 10rem
}

@media (max-width: 1023px) {
    .activity_detail .container {
        padding-top: 0
    }
}

.activity_detail .page__content {
    position: static
}

.activity_detail .text-content {
    max-width: 64rem;
    padding-bottom: 6.4rem
}

@media (max-width: 1023px) {
    .activity_detail .text-content {
        max-width: 100%;
        padding: 3rem 0
    }
}

.activity_detail ._activity-loading {
    height: calc(100vh - 25rem)
}

@media (max-width: 767px) {
    .activity_detail ._activity-loading {
        height: calc(100vh - 10.9rem)
    }
}

.activity_detail .breadcrumbs {
    margin-bottom: 8rem;
    padding-top: 4rem
}

.footer {
    position: relative;
    z-index: 1
}

.sidebox {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 30.5rem;
    margin-left: auto;
    padding: 1.6rem;
    border-radius: 5px;
    background-color: #483593;
    transition: color .25s ease, background-color .25s ease, opacity .25s ease
}

@media (max-width: 767px) {
    .sidebox {
        width: 100%;
        padding: 1.6rem
    }
}

.sidebox__title {
    margin: 0 0 4rem;
    color: #f5f5f5
}

.sidebox__link {
    display: flex;
    align-items: center
}

.sidebox__link span {
    color: #f5f5f5
}

.sidebox__link svg {
    margin-right: 2.4rem;
    color: #f5f5f5;
    transition: margin .25s ease
}

.sidebox__link svg circle, .sidebox__link svg path {
    transition: stroke .25s ease
}

@media (min-width: 1024px) {
    .sidebox:hover {
        opacity: .88
    }

    .sidebox:hover .sidebox__link svg {
        margin-right: 3.2rem
    }
}

.back-link {
    width: calc(100% - 8rem);
    max-width: 128rem;
    margin: 6.5rem auto
}

@media (max-width: 767px) {
    .back-link {
        width: calc(100% - 4rem)
    }
}

@media (max-width: 1023px) {
    .back-link {
        margin: 3.2rem auto
    }
}

@media (max-width: 767px) {
    .back-link {
        margin: 1.6rem auto
    }
}

.back-link .btn.more svg {
    transform: rotate(180deg)
}

@media (min-width: 1024px) {
    .back-link .btn.more:hover svg {
        margin-right: 2.4rem
    }
}

.main-screen-new {
    position: relative;
    height: 100vh;
    min-height: 100vh;
    overflow: hidden;
    background: linear-gradient(#484192, #3c377b 25.58%, #2e2c61 68.45%, #292857)
}

@media (max-width: 1023px) {
    .main-screen-new {
        height: unset;
        min-height: 100vh
    }
}

.main-screen-new__squares {
    position: absolute;
    top: 0;
    left: 0;
    width: 150rem;
    height: 150rem;
    transform: rotate(130deg)
}

@media (max-width: 767px) {
    .main-screen-new__squares {
        top: 20rem;
        left: -30rem
    }
}

.main-screen-new__background-dark, .main-screen-new__background-light {
    width: 131.7rem;
    height: 131.7rem;
    position: absolute;
    top: -45rem;
    left: -70rem;
    border-radius: 20%;
    background-color: #302c62
}

@media (max-width: 1023px) {
    .main-screen-new__background-dark, .main-screen-new__background-light {
        top: 0
    }
}

.main-screen-new__background-light {
    right: -50rem;
    left: auto;
    background-color: #4d429b
}

.first-screen {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    height: 100%;
    padding-top: 18.8rem;
    padding-bottom: 5.5rem;
    color: #fff
}

@media (max-width: 1023px) {
    .first-screen {
        padding-top: 14.5rem;
        padding-bottom: 3.5rem
    }
}

@media (max-width: 767px) {
    .first-screen {
        min-height: calc(100vh - 11rem);
        margin-top: 11rem;
        padding-top: 0
    }
}

.first-screen h1 {
    width: 100%;
    margin: 0;
    color: #fff;
    font-weight: 400;
    font-size: 4.4rem;
    line-height: 6rem;
    transition: opacity .25s ease, visibility .25s ease
}

@media (max-width: 1023px) {
    .first-screen h1 {
        font-size: 3.6rem;
        line-height: 4rem
    }
}

@media (max-width: 767px) {
    .first-screen h1 {
        font-size: 3rem;
        line-height: 3.2rem
    }
}

.first-screen .btn {
    position: relative;
    z-index: 1;
    flex-shrink: 0;
    height: 5rem;
    margin-top: 5.6rem;
    overflow: hidden;
    font-weight: 500
}

@media (min-width: 1024px) {
    .first-screen .btn:hover:after {
        transform: translateY(0)
    }

    .first-screen .btn:hover:before {
        transform: translateY(-200%)
    }
}

.first-screen .btn:after, .first-screen .btn:before {
    position: absolute;
    right: auto;
    left: auto;
    display: block;
    transition: transform .2s cubic-bezier(.645, .045, .355, 1);
    content: "Подробнее"
}

.first-screen .btn:after {
    transform: translateY(200%)
}

.first-screen .btn:before {
    transform: translateY(0)
}

@media (min-width: 1024px) {
    .first-screen .btn:hover {
        color: #483593;
        background-color: #fff
    }
}

.first-screen__slides {
    width: 100%;
    overflow: hidden
}

.first-screen .slide {
    width: 100%;
    margin-right: 1rem;
    cursor: -webkit-grab;
    cursor: grab
}

@media (max-width: 1023px) {
    .first-screen .slide {
        margin-right: 0
    }
}

.first-screen__controls {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 11rem
}

@media (max-width: 1023px) {
    .first-screen__controls {
        margin-top: 4rem
    }
}

.first-screen .linear {
    display: flex;
    align-items: center
}

.first-screen .linear i {
    position: relative;
    width: 8.5rem;
    height: 24px;
    margin-right: 2.4rem;
    background: linear-gradient(180deg, transparent, transparent 11px, #5b54b5 0, #5b54b5 13px, transparent 0, transparent 24px);
    cursor: pointer
}

@media (max-width: 767px) {
    .first-screen .linear i {
        width: 2rem
    }
}

.first-screen .linear i:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0;
    height: 24px;
    background: linear-gradient(180deg, transparent, transparent 11px, #fff 0, #fff 13px, transparent 0, transparent 24px);
    content: ""
}

.first-screen .linear i:last-child {
    margin-right: 0
}

.first-screen .linear i._active:after {
    width: 100%;
    transition: width 6s linear
}

.first-screen .flickity-slider {
    width: 100%
}

.list {
    display: flex;
    flex-direction: column;
    max-width: 50%
}

@media (max-width: 1023px) {
    .list {
        max-width: 40%
    }
}

@media (max-width: 767px) {
    .list {
        max-width: unset
    }
}

.list li {
    margin-bottom: 3.2rem;
    padding-bottom: 3.2rem;
    border-bottom: 1px solid #d3d3d3
}

@media (max-width: 767px) {
    .list li {
        margin-bottom: 1.6rem;
        padding-bottom: 1.6rem
    }
}

.list li span {
    font-size: 1.6rem;
    line-height: 2rem;
    display: inline-block;
    width: 100%;
    margin-bottom: 2.4rem;
    color: #c7c7c7
}

@media (max-width: 1023px) {
    .list li span {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

@media (max-width: 767px) {
    .list li span {
        margin-bottom: 1.6rem
    }
}

.list li a {
    font-size: 2rem;
    line-height: 2.4rem;
    font-weight: 500;
    opacity: 1;
    transition: .25s ease;
    transition-property: color, opacity
}

@media (max-width: 1023px) {
    .list li a {
        font-size: 1.4rem;
        line-height: 1.8rem
    }
}

@media (min-width: 1024px) {
    .list li a:hover {
        color: #483593
    }
}

.side-news {
    max-height: calc(100vh - 14rem);
    padding: 3.2rem;
    border-radius: 10px;
    overflow-y: scroll;
    background-color: #f5f5f5
}

@media (max-width: 767px) {
    .side-news {
        padding: 2.4rem
    }
}

.side-news h3 {
    margin-top: 0
}

.side-news .list {
    max-width: 100%
}

.side-news .list li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0
}

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

@media (max-width: 1023px) {
    .sidelist {
        flex-direction: row;
        margin-top: 2.4rem
    }

    .sidelist .box {
        width: 33.333%;
        max-width: unset;
        margin-right: 1.6rem;
        margin-bottom: 0;
        margin-left: 0;
        padding: 1.6rem
    }

    .sidelist .box:last-child {
        margin-right: 0
    }

    .sidelist .box__svg-title {
        display: none
    }
}

@media (max-width: 767px) {
    .sidelist {
        flex-direction: column
    }

    .sidelist .box {
        width: 100%;
        margin-right: 0
    }

    .sidelist .box__svg-title {
        display: block
    }
}

.is-ie .person__email {
    padding-bottom: 2.4rem
}

.is-ie .sideinfo .box {
    display: flex;
    flex-direction: column
}

.is-ie .sideinfo .box .box__title {
    width: 100%
}

.is-ie .project__text {
    width: 50rem
}

.is-ie .council-item__positions p, .is-ie .council-item__text, .is-ie .news-page .news__cell, .is-ie .newspaper h4, .is-ie .university__text, .is-ie .university__title {
    width: 100%
}

.is-ie .popup__container {
    width: 60%;
    height: 55%;
    margin: auto
}

.is-ie .form__label {
    font-size: 1.4rem;
    line-height: 1.8rem;
    top: 1rem
}

@media (max-width: 1023px) {
    .is-ie .form__label {
        font-size: 1.2rem;
        line-height: 1.6rem
    }
}

.is-ie svg {
    fill: none
}

.is-ie .not-found__404 {
    display: inline
}

.is-ie .not-found h3 {
    margin-top: 2.8rem
}

.is-ie .council-item__img img, .is-ie .news__img img, .is-ie .page-head__img img, .is-ie .person img, .is-ie .project__image img, .is-ie .slider img, .is-ie .university__img-wrap img, .is-ie .video img, .is-ie figure img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;"
}

.is-ie .advantage__head img, .is-ie .university__logo img {
    -o-object-fit: contain;
    object-fit: contain;
    font-family: "object-fit: contain;"
}

.is-ie .list {
    width: 50%
}

.is-ie .project__wrapper p, .is-ie .side-news .list {
    width: 100%
}

.is-ie .first-screen .btn {
    justify-content: flex-start
}

.is-ie .header__outside .header__container {
    max-width: none;
    background-color: #fff
}
/* End */
/* /local/templates/main/css/vendor.css?17032529566126 */
/* /local/templates/main/css/app.css?1722954316167315 */
