.tns-outer {
    padding: 0 !important
}

.tns-outer [hidden] {
    display: none !important
}

.tns-outer [aria-controls], .tns-outer [data-action] {
    cursor: pointer
}

.tns-slider {
    transition: all 0s
}

.tns-slider > .tns-item {
    box-sizing: border-box
}

.tns-horizontal.tns-subpixel {
    white-space: nowrap
}

.tns-horizontal.tns-subpixel > .tns-item {
    display: inline-block;
    vertical-align: top;
    white-space: normal
}

.tns-horizontal.tns-no-subpixel:after, .tns-t-ct:after {
    content: '';
    display: table;
    clear: both
}

.tns-horizontal.tns-no-subpixel > .tns-item {
    float: left
}

.tns-horizontal.tns-carousel.tns-no-subpixel > .tns-item {
    margin-right: -100%
}

.tns-gallery, .tns-no-calc {
    position: relative;
    left: 0
}

.tns-gallery {
    min-height: 1px
}

.tns-gallery > .tns-item {
    position: absolute;
    left: -100%;
    transition: transform 0s, opacity 0s
}

.tns-gallery > .tns-slide-active {
    position: relative;
    left: auto !important
}

.tns-gallery > .tns-moving {
    transition: all .25s
}

.tns-autowidth, .tns-vpfix > div, .tns-vpfix > li {
    display: inline-block
}

.tns-lazy-img {
    transition: opacity .6s;
    opacity: .6
}

.tns-lazy-img.tns-complete {
    opacity: 1
}

.tns-ah {
    transition: height 0s
}

.tns-ovh {
    overflow: hidden
}

.tns-visually-hidden {
    position: absolute;
    left: -10000em
}

.tns-transparent {
    opacity: 0;
    visibility: hidden
}

.tns-fadeIn {
    opacity: 1;
    filter: alpha(opacity=100);
    z-index: 0
}

.tns-fadeOut, .tns-normal {
    opacity: 0;
    filter: alpha(opacity=0);
    z-index: -1
}

.tns-vpfix {
    white-space: nowrap
}

.tns-t-subp2 {
    margin: 0 auto;
    width: 310px;
    position: relative;
    height: 10px;
    overflow: hidden
}

.tns-t-ct {
    width: 2333.3333333%;
    width: calc(100% * 70 / 3);
    position: absolute;
    right: 0
}

.tns-t-ct > div {
    width: 1.4285714%;
    width: calc(100% / 70);
    height: 10px;
    float: left
}

/*! OverlayScrollbars https://github.com/KingSora/OverlayScrollbars Version: 1.12.0 Copyright KingSora | Rene Haas. https://github.com/KingSora Released under the MIT license. Date: 05.04.2020 */
@-webkit-keyframes os-resize-observer-dummy-animation {
    0% {
        z-index: 0
    }
    to {
        z-index: -1
    }
}

@keyframes os-resize-observer-dummy-animation {
    0% {
        z-index: 0
    }
    to {
        z-index: -1
    }
}

html.os-html, html.os-html > .os-host {
    display: block;
    overflow: hidden;
    box-sizing: border-box;
    height: 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    position: absolute !important
}

html.os-html > .os-host > .os-padding {
    position: absolute
}

body.os-dragging, body.os-dragging * {
    cursor: default
}

.os-host, .os-host-textarea {
    position: relative;
    overflow: visible !important;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start
}

.os-host-flexbox {
    overflow: hidden !important;
    display: flex
}

.os-host-flexbox > .os-size-auto-observer {
    height: inherit !important
}

.os-host-flexbox > .os-content-glue, .os-host-flexbox > .os-size-auto-observer {
    min-height: 0;
    min-width: 0;
    flex-grow: 0;
    flex-shrink: 1;
    flex-basis: auto
}

#os-dummy-scrollbar-size {
    position: fixed;
    opacity: 0;
    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
    visibility: hidden;
    overflow: scroll;
    height: 500px;
    width: 500px
}

#os-dummy-scrollbar-size > div {
    width: 200%;
    height: 200%;
    margin: 10px 0
}

#os-dummy-scrollbar-size:after, #os-dummy-scrollbar-size:before, .os-content:after, .os-content:before {
    content: '';
    display: table;
    width: .01px;
    height: .01px;
    line-height: 0;
    font-size: 0;
    flex-grow: 0;
    flex-shrink: 0;
    visibility: hidden
}

#os-dummy-scrollbar-size, .os-viewport {
    -ms-overflow-style: scrollbar !important
}

.os-viewport-native-scrollbars-invisible#os-dummy-scrollbar-size, .os-viewport-native-scrollbars-invisible.os-viewport {
    scrollbar-width: none !important
}

.os-viewport-native-scrollbars-invisible#os-dummy-scrollbar-size::-webkit-scrollbar, .os-viewport-native-scrollbars-invisible#os-dummy-scrollbar-size::-webkit-scrollbar-corner, .os-viewport-native-scrollbars-invisible.os-viewport::-webkit-scrollbar, .os-viewport-native-scrollbars-invisible.os-viewport::-webkit-scrollbar-corner {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    visibility: hidden !important;
    background: 0 0 !important
}

.os-content-glue {
    box-sizing: inherit;
    max-height: 100%;
    max-width: 100%;
    width: 100%;
    pointer-events: none
}

.os-padding {
    box-sizing: inherit;
    direction: inherit;
    position: absolute;
    overflow: visible;
    padding: 0;
    margin: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: auto !important;
    height: auto !important;
    z-index: 1
}

.os-host-overflow > .os-padding, .os-viewport {
    overflow: hidden
}

.os-viewport {
    direction: inherit !important;
    box-sizing: inherit !important;
    resize: none !important;
    outline: 0 !important;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 0;
    margin: 0;
    -webkit-overflow-scrolling: touch
}

.os-content-arrange {
    position: absolute;
    z-index: -1;
    min-height: 1px;
    min-width: 1px;
    pointer-events: none
}

.os-content {
    direction: inherit;
    box-sizing: border-box !important;
    position: relative;
    display: block;
    height: 100%;
    width: 100%;
    visibility: visible
}

.os-content > .os-textarea {
    box-sizing: border-box !important;
    direction: inherit !important;
    background: 0 0 !important;
    outline: 0 transparent !important;
    overflow: hidden !important;
    position: absolute !important;
    display: block !important;
    top: 0 !important;
    left: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
    float: none !important;
    -webkit-filter: none !important;
    filter: none !important;
    border: 0 !important;
    resize: none !important;
    transform: none !important;
    max-width: none !important;
    max-height: none !important;
    box-shadow: none !important;
    perspective: none !important;
    opacity: 1 !important;
    z-index: 1 !important;
    clip: auto !important;
    vertical-align: baseline !important;
    padding: 0
}

.os-host-rtl > .os-padding > .os-viewport > .os-content > .os-textarea {
    right: 0 !important
}

.os-content > .os-textarea-cover {
    z-index: -1;
    pointer-events: none
}

.os-content > .os-textarea[wrap=off] {
    white-space: pre !important;
    margin: 0 !important
}

.os-text-inherit {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    font-style: inherit;
    font-variant: inherit;
    text-transform: inherit;
    text-decoration: inherit;
    text-indent: inherit;
    text-align: inherit;
    text-shadow: inherit;
    text-overflow: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
    line-height: inherit;
    unicode-bidi: inherit;
    direction: inherit;
    color: inherit;
    cursor: text
}

.os-resize-observer, .os-resize-observer-host {
    box-sizing: inherit;
    display: block;
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    overflow: hidden;
    pointer-events: none;
    z-index: -1
}

.os-resize-observer-host {
    padding: inherit;
    border: inherit;
    border-color: transparent;
    border-style: solid;
    box-sizing: border-box
}

.os-resize-observer-host > .os-resize-observer {
    height: 200%;
    width: 200%;
    padding: inherit;
    border: inherit;
    margin: 0;
    display: block;
    box-sizing: content-box
}

.os-resize-observer-host.observed {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start
}

.os-resize-observer-host.observed > .os-resize-observer, .os-size-auto-observer {
    position: relative;
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: auto
}

.os-size-auto-observer {
    box-sizing: inherit !important;
    height: 100%;
    width: inherit;
    max-width: 1px;
    float: left;
    max-height: 1px;
    overflow: hidden;
    z-index: -1;
    padding: 0;
    margin: 0;
    pointer-events: none;
    flex-grow: inherit;
    flex-basis: 0
}

.os-size-auto-observer > .os-resize-observer {
    width: 1000%;
    height: 1000%;
    min-height: 1px;
    min-width: 1px
}

.os-resize-observer-item {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    z-index: -1;
    opacity: 0;
    direction: ltr !important;
    flex: none !important
}

.os-resize-observer-item-final {
    position: absolute;
    left: 0;
    top: 0;
    transition: none !important;
    flex: none !important
}

.os-resize-observer {
    -webkit-animation-duration: .001s;
    animation-duration: .001s;
    -webkit-animation-name: os-resize-observer-dummy-animation;
    animation-name: os-resize-observer-dummy-animation
}

object.os-resize-observer {
    box-sizing: border-box !important
}

.os-host-transition > .os-scrollbar, .os-host-transition > .os-scrollbar-corner {
    transition: opacity .3s, visibility .3s, top .3s, right .3s, bottom .3s, left .3s
}

html.os-html > .os-host > .os-scrollbar {
    position: absolute;
    z-index: 999999
}

.os-scrollbar, .os-scrollbar-corner {
    position: absolute;
    opacity: 1;
    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';
    z-index: 1
}

.os-scrollbar-corner {
    bottom: 0;
    right: 0
}

.os-scrollbar {
    pointer-events: none
}

.os-scrollbar-handle, .os-scrollbar-track {
    pointer-events: auto;
    width: 100%;
    height: 100%
}

.os-scrollbar-track {
    padding: 0 !important;
    border: 0 !important;
    position: relative
}

.os-scrollbar-handle {
    position: absolute
}

.os-scrollbar-handle-off, .os-scrollbar-track-off {
    pointer-events: none
}

.os-scrollbar.os-scrollbar-unusable, .os-scrollbar.os-scrollbar-unusable * {
    pointer-events: none !important
}

.os-scrollbar.os-scrollbar-unusable .os-scrollbar-handle {
    opacity: 0 !important
}

.os-scrollbar-horizontal {
    bottom: 0;
    left: 0
}

.os-scrollbar-vertical {
    top: 0;
    right: 0
}

.os-host-rtl > .os-scrollbar-horizontal {
    right: 0
}

.os-host-rtl > .os-scrollbar-corner, .os-host-rtl > .os-scrollbar-vertical {
    right: auto;
    left: 0
}

.os-host-resize-disabled.os-host-scrollbar-horizontal-hidden > .os-scrollbar-corner, .os-host-resize-disabled.os-host-scrollbar-vertical-hidden > .os-scrollbar-corner, .os-host-scrollbar-horizontal-hidden > .os-scrollbar-horizontal, .os-host-scrollbar-vertical-hidden > .os-scrollbar-vertical, .os-padding + .os-scrollbar-corner, .os-scrollbar-auto-hidden, .os-scrollbar-horizontal + .os-scrollbar-vertical.os-scrollbar-auto-hidden + .os-scrollbar-corner, .os-scrollbar-horizontal.os-scrollbar-auto-hidden + .os-scrollbar-vertical + .os-scrollbar-corner, .os-scrollbar-horizontal.os-scrollbar-auto-hidden + .os-scrollbar-vertical.os-scrollbar-auto-hidden + .os-scrollbar-corner {
    opacity: 0;
    visibility: hidden;
    pointer-events: none
}

.os-scrollbar-corner-resize-both {
    cursor: nwse-resize
}

.os-host-rtl > .os-scrollbar-corner-resize-both {
    cursor: nesw-resize
}

.os-scrollbar-corner-resize-horizontal {
    cursor: ew-resize
}

.os-scrollbar-corner-resize-vertical {
    cursor: ns-resize
}

.os-dragging .os-scrollbar-corner.os-scrollbar-corner-resize {
    cursor: default
}

.os-host-resize-disabled.os-host-scrollbar-horizontal-hidden > .os-scrollbar-vertical {
    top: 0;
    bottom: 0
}

.os-host-resize-disabled.os-host-scrollbar-vertical-hidden > .os-scrollbar-horizontal, .os-host-rtl.os-host-resize-disabled.os-host-scrollbar-vertical-hidden > .os-scrollbar-horizontal {
    right: 0;
    left: 0
}

.os-scrollbar-corner.os-scrollbar-corner-resize, .os-scrollbar:hover {
    opacity: 1 !important;
    visibility: visible !important
}

.os-scrollbar-corner.os-scrollbar-corner-resize {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PHN2ZyAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIgICB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgICB3aWR0aD0iMTAiICAgaGVpZ2h0PSIxMCIgICB2ZXJzaW9uPSIxLjEiPiAgPGcgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAsLTEwNDIuMzYyMikiICAgICBzdHlsZT0iZGlzcGxheTppbmxpbmUiPiAgICA8cGF0aCAgICAgICBzdHlsZT0iZmlsbDojMDAwMDAwO2ZpbGwtb3BhY2l0eTowLjQ5NDExNzY1O2ZpbGwtcnVsZTpldmVub2RkO3N0cm9rZTpub25lIiAgICAgICBkPSJtIDcuNDI0MjE4NywxMDQyLjM2MjIgYyAtMC43MjM1NzkyLDAgLTEuMzEwMTU2MiwwLjU4NjYgLTEuMzEwMTU2MiwxLjMxMDIgMCwwLjI5OSAwLjEwNDM0MTksMC41NzEgMC4yNzI5NDkyLDAuNzkxNSAwLjIwOTEwMjQsMC4xNDEzIDAuNDY1NjIwNiwwLjIxODQgMC43MzY5NjI5LDAuMjE4NCAwLjcyMzU3OTMsMCAxLjMxMDE1NjMsLTAuNTg2NiAxLjMxMDE1NjMsLTEuMzEwMiAwLC0wLjI3MTMgLTAuMDc3MDkzLC0wLjUyNzggLTAuMjE4MzU5NCwtMC43MzcgLTAuMjIwNDk0MSwtMC4xNjg2IC0wLjQ5MjU0NDMsLTAuMjcyOSAtMC43OTE1NTI4LC0wLjI3MjkgeiBtIDAsMy4wODQzIGMgLTAuNzIzNTc5MiwwIC0xLjMxMDE1NjIsMC41ODY2IC0xLjMxMDE1NjIsMS4zMTAyIDAsMC4yOTkgMC4xMDQzNDE5LDAuNTcxIDAuMjcyOTQ5MiwwLjc5MTUgMC4yMDkxMDI0LDAuMTQxMyAwLjQ2NTYyMDYsMC4yMTg0IDAuNzM2OTYyOSwwLjIxODQgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjYgMS4zMTAxNTYzLC0xLjMxMDIgMCwtMC4yNzEzIC0wLjA3NzA5MywtMC41Mjc4IC0wLjIxODM1OTQsLTAuNzM2OSAtMC4yMjA0OTQxLC0wLjE2ODYgLTAuNDkyNTQ0MywtMC4yNzMgLTAuNzkxNTUyOCwtMC4yNzMgeiBtIC0zLjA4NDMyNjEsMCBjIC0wLjcyMzU3OTMsMCAtMS4zMTAxNTYzLDAuNTg2NiAtMS4zMTAxNTYzLDEuMzEwMiAwLDAuMjk5IDAuMTA0MzQxOSwwLjU3MSAwLjI3Mjk0OTIsMC43OTE1IDAuMjA5MTAyNCwwLjE0MTMgMC40NjU2MjA3LDAuMjE4NCAwLjczNjk2MjksMC4yMTg0IDAuNzIzNTc5MywwIDEuMzEwMTU2MywtMC41ODY2IDEuMzEwMTU2MywtMS4zMTAyIDAsLTAuMjcxMyAtMC4wNzcwOTMsLTAuNTI3OCAtMC4yMTgzNTk0LC0wLjczNjkgLTAuMjIwNDk0LC0wLjE2ODYgLTAuNDkyNTQ0MiwtMC4yNzMgLTAuNzkxNTUyNywtMC4yNzMgeiBtIC0zLjAyOTczNjQsMy4wMjk4IEMgMC41ODY1NzY5MywxMDQ4LjQ3NjMgMCwxMDQ5LjA2MjggMCwxMDQ5Ljc4NjQgYyAwLDAuMjk5IDAuMTA0MzQxOSwwLjU3MTEgMC4yNzI5NDkyMiwwLjc5MTYgMC4yMDkxMDIyOSwwLjE0MTIgMC40NjU2MjA2NSwwLjIxODMgMC43MzY5NjI4OCwwLjIxODMgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjUgMS4zMTAxNTYzLC0xLjMxMDEgMCwtMC4yNzE0IC0wLjA3NzA5MywtMC41Mjc5IC0wLjIxODM1OTQsLTAuNzM3IC0wLjIyMDQ5NDEsLTAuMTY4NiAtMC40OTI1NDQzLC0wLjI3MjkgLTAuNzkxNTUyOCwtMC4yNzI5IHogbSAzLjAyOTczNjQsMCBjIC0wLjcyMzU3OTMsMCAtMS4zMTAxNTYzLDAuNTg2NSAtMS4zMTAxNTYzLDEuMzEwMSAwLDAuMjk5IDAuMTA0MzQxOSwwLjU3MTEgMC4yNzI5NDkyLDAuNzkxNiAwLjIwOTEwMjQsMC4xNDEyIDAuNDY1NjIwNywwLjIxODMgMC43MzY5NjI5LDAuMjE4MyAwLjcyMzU3OTMsMCAxLjMxMDE1NjMsLTAuNTg2NSAxLjMxMDE1NjMsLTEuMzEwMSAwLC0wLjI3MTQgLTAuMDc3MDkzLC0wLjUyNzkgLTAuMjE4MzU5NCwtMC43MzcgLTAuMjIwNDk0LC0wLjE2ODYgLTAuNDkyNTQ0MiwtMC4yNzI5IC0wLjc5MTU1MjcsLTAuMjcyOSB6IG0gMy4wODQzMjYxLDAgYyAtMC43MjM1NzkyLDAgLTEuMzEwMTU2MiwwLjU4NjUgLTEuMzEwMTU2MiwxLjMxMDEgMCwwLjI5OSAwLjEwNDM0MTksMC41NzExIDAuMjcyOTQ5MiwwLjc5MTYgMC4yMDkxMDI0LDAuMTQxMiAwLjQ2NTYyMDYsMC4yMTgzIDAuNzM2OTYyOSwwLjIxODMgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjUgMS4zMTAxNTYzLC0xLjMxMDEgMCwtMC4yNzE0IC0wLjA3NzA5MywtMC41Mjc5IC0wLjIxODM1OTQsLTAuNzM3IC0wLjIyMDQ5NDEsLTAuMTY4NiAtMC40OTI1NDQzLC0wLjI3MjkgLTAuNzkxNTUyOCwtMC4yNzI5IHoiLz4gIDwvZz4gIDxnICAgICBzdHlsZT0iZGlzcGxheTppbmxpbmUiPiAgICA8cGF0aCAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpldmVub2RkO3N0cm9rZTpub25lIiAgICAgICBkPSJtIDguMjE1NzcxNSwwLjI3Mjk0OTIyIGMgMC4xNDEyNjY3LDAuMjA5MTAyMjkgMC4yMTgzNTk0LDAuNDY1NjIwNjUgMC4yMTgzNTk0LDAuNzM2OTYyODggMCwwLjcyMzU3OTMgLTAuNTg2NTc3LDEuMzEwMTU2MyAtMS4zMTAxNTYzLDEuMzEwMTU2MyAtMC4yNzEzNDIzLDAgLTAuNTI3ODYwNSwtMC4wNzcwOTMgLTAuNzM2OTYyOSwtMC4yMTgzNTk0IDAuMjM5NDEwNCwwLjMxMzA4NTkgMC42MTI2MzYyLDAuNTE4NjAzNSAxLjAzNzIwNywwLjUxODYwMzUgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjU3NyAxLjMxMDE1NjMsLTEuMzEwMTU2MyAwLC0wLjQyNDU3MDc2IC0wLjIwNTUxNzYsLTAuNzk3Nzk2NTkgLTAuNTE4NjAzNSwtMS4wMzcyMDY5OCB6IG0gMCwzLjA4NDMyNjE4IGMgMC4xNDEyNjY3LDAuMjA5MTAyMyAwLjIxODM1OTQsMC40NjU2MjA2IDAuMjE4MzU5NCwwLjczNjk2MjkgMCwwLjcyMzU3OTMgLTAuNTg2NTc3LDEuMzEwMTU2MiAtMS4zMTAxNTYzLDEuMzEwMTU2MiAtMC4yNzEzNDIzLDAgLTAuNTI3ODYwNSwtMC4wNzcwOTMgLTAuNzM2OTYyOSwtMC4yMTgzNTkzIDAuMjM5NDEwNCwwLjMxMzA4NTkgMC42MTI2MzYyLDAuNTE4NjAzNSAxLjAzNzIwNywwLjUxODYwMzUgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjU3NyAxLjMxMDE1NjMsLTEuMzEwMTU2MyAwLC0wLjQyNDU3MDggLTAuMjA1NTE3NiwtMC43OTc3OTY3IC0wLjUxODYwMzUsLTEuMDM3MjA3IHogbSAtMy4wODQzMjYyLDAgYyAwLjE0MTI2NjcsMC4yMDkxMDIzIDAuMjE4MzU5NCwwLjQ2NTYyMDYgMC4yMTgzNTk0LDAuNzM2OTYyOSAwLDAuNzIzNTc5MyAtMC41ODY1NzcsMS4zMTAxNTYyIC0xLjMxMDE1NjMsMS4zMTAxNTYyIC0wLjI3MTM0MjIsMCAtMC41Mjc4NjA1LC0wLjA3NzA5MyAtMC43MzY5NjI5LC0wLjIxODM1OTMgMC4yMzk0MTA0LDAuMzEzMDg1OSAwLjYxMjYzNjMsMC41MTg2MDM1IDEuMDM3MjA3MSwwLjUxODYwMzUgMC43MjM1NzkzLDAgMS4zMTAxNTYyLC0wLjU4NjU3NyAxLjMxMDE1NjIsLTEuMzEwMTU2MyAwLC0wLjQyNDU3MDggLTAuMjA1NTE3NSwtMC43OTc3OTY3IC0wLjUxODYwMzUsLTEuMDM3MjA3IHogTSAyLjEwMTcwOSw2LjM4NzAxMTcgYyAwLjE0MTI2NjcsMC4yMDkxMDI0IDAuMjE4MzU5NCwwLjQ2NTYyMDYgMC4yMTgzNTk0LDAuNzM2OTYyOSAwLDAuNzIzNTc5MyAtMC41ODY1NzcsMS4zMTAxNTYzIC0xLjMxMDE1NjMsMS4zMTAxNTYzIC0wLjI3MTM0MjIzLDAgLTAuNTI3ODYwNTksLTAuMDc3MDkzIC0wLjczNjk2Mjg4LC0wLjIxODM1OTQgMC4yMzk0MTAzOSwwLjMxMzA4NTkgMC42MTI2MzYyMiwwLjUxODYwMzUgMS4wMzcyMDY5OCwwLjUxODYwMzUgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjU3NyAxLjMxMDE1NjMsLTEuMzEwMTU2MyAwLC0wLjQyNDU3MDggLTAuMjA1NTE3NiwtMC43OTc3OTY2IC0wLjUxODYwMzUsLTEuMDM3MjA3IHogbSAzLjAyOTczNjMsMCBjIDAuMTQxMjY2NywwLjIwOTEwMjQgMC4yMTgzNTk0LDAuNDY1NjIwNiAwLjIxODM1OTQsMC43MzY5NjI5IDAsMC43MjM1NzkzIC0wLjU4NjU3NywxLjMxMDE1NjMgLTEuMzEwMTU2MywxLjMxMDE1NjMgLTAuMjcxMzQyMiwwIC0wLjUyNzg2MDUsLTAuMDc3MDkzIC0wLjczNjk2MjksLTAuMjE4MzU5NCAwLjIzOTQxMDQsMC4zMTMwODU5IDAuNjEyNjM2MywwLjUxODYwMzUgMS4wMzcyMDcxLDAuNTE4NjAzNSAwLjcyMzU3OTMsMCAxLjMxMDE1NjIsLTAuNTg2NTc3IDEuMzEwMTU2MiwtMS4zMTAxNTYzIDAsLTAuNDI0NTcwOCAtMC4yMDU1MTc1LC0wLjc5Nzc5NjYgLTAuNTE4NjAzNSwtMS4wMzcyMDcgeiBtIDMuMDg0MzI2MiwwIGMgMC4xNDEyNjY3LDAuMjA5MTAyNCAwLjIxODM1OTQsMC40NjU2MjA2IDAuMjE4MzU5NCwwLjczNjk2MjkgMCwwLjcyMzU3OTMgLTAuNTg2NTc3LDEuMzEwMTU2MyAtMS4zMTAxNTYzLDEuMzEwMTU2MyAtMC4yNzEzNDIzLDAgLTAuNTI3ODYwNSwtMC4wNzcwOTMgLTAuNzM2OTYyOSwtMC4yMTgzNTk0IDAuMjM5NDEwNCwwLjMxMzA4NTkgMC42MTI2MzYyLDAuNTE4NjAzNSAxLjAzNzIwNywwLjUxODYwMzUgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjU3NyAxLjMxMDE1NjMsLTEuMzEwMTU2MyAwLC0wLjQyNDU3MDggLTAuMjA1NTE3NiwtMC43OTc3OTY2IC0wLjUxODYwMzUsLTEuMDM3MjA3IHoiIC8+ICA8L2c+PC9zdmc+);
    background-repeat: no-repeat;
    background-position: 100% 100%;
    pointer-events: auto !important
}

.os-host-rtl > .os-scrollbar-corner.os-scrollbar-corner-resize {
    transform: scale(-1, 1)
}

.os-host-overflow {
    overflow: hidden !important
}

.os-theme-none > .os-scrollbar-corner, .os-theme-none > .os-scrollbar-horizontal, .os-theme-none > .os-scrollbar-vertical {
    display: none !important
}

.os-theme-none > .os-scrollbar-corner-resize {
    display: block !important;
    min-width: 10px;
    min-height: 10px
}

.os-theme-dark > .os-scrollbar-horizontal, .os-theme-light > .os-scrollbar-horizontal {
    right: 10px;
    height: 10px
}

.os-theme-dark > .os-scrollbar-vertical, .os-theme-light > .os-scrollbar-vertical {
    bottom: 10px;
    width: 10px
}

.os-theme-dark.os-host-rtl > .os-scrollbar-horizontal, .os-theme-light.os-host-rtl > .os-scrollbar-horizontal {
    left: 10px;
    right: 0
}

.os-theme-dark > .os-scrollbar-corner, .os-theme-light > .os-scrollbar-corner {
    height: 10px;
    width: 10px;
    background-color: transparent
}

.os-theme-dark > .os-scrollbar, .os-theme-light > .os-scrollbar {
    padding: 2px;
    box-sizing: border-box;
    background: 0 0
}

.os-theme-dark > .os-scrollbar.os-scrollbar-unusable, .os-theme-dark > .os-scrollbar > .os-scrollbar-track, .os-theme-light > .os-scrollbar.os-scrollbar-unusable, .os-theme-light > .os-scrollbar > .os-scrollbar-track {
    background: 0 0
}

.os-theme-dark > .os-scrollbar-horizontal > .os-scrollbar-track > .os-scrollbar-handle, .os-theme-light > .os-scrollbar-horizontal > .os-scrollbar-track > .os-scrollbar-handle {
    min-width: 30px
}

.os-theme-dark > .os-scrollbar-vertical > .os-scrollbar-track > .os-scrollbar-handle, .os-theme-light > .os-scrollbar-vertical > .os-scrollbar-track > .os-scrollbar-handle {
    min-height: 30px
}

.os-theme-dark.os-host-transition > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle, .os-theme-light.os-host-transition > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle {
    transition: background-color .3s
}

.os-theme-dark > .os-scrollbar > .os-scrollbar-track, .os-theme-dark > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle, .os-theme-light > .os-scrollbar > .os-scrollbar-track, .os-theme-light > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle {
    border-radius: 10px
}

.os-theme-dark > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle {
    background: rgba(0, 0, 0, .4)
}

.os-theme-light > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle {
    background: rgba(255, 255, 255, .4)
}

.os-theme-dark > .os-scrollbar:hover > .os-scrollbar-track > .os-scrollbar-handle {
    background: rgba(0, 0, 0, .55)
}

.os-theme-light > .os-scrollbar:hover > .os-scrollbar-track > .os-scrollbar-handle {
    background: rgba(255, 255, 255, .55)
}

.os-theme-dark > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle.active {
    background: rgba(0, 0, 0, .7)
}

.os-theme-light > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle.active {
    background: rgba(255, 255, 255, .7)
}

.os-theme-dark > .os-scrollbar-horizontal .os-scrollbar-handle:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    display: block
}

.os-theme-dark > .os-scrollbar-vertical .os-scrollbar-handle:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    display: block
}

.os-theme-light > .os-scrollbar-horizontal .os-scrollbar-handle:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    display: block
}

.os-theme-light > .os-scrollbar-vertical .os-scrollbar-handle:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    display: block
}

.os-theme-dark.os-host-scrollbar-horizontal-hidden > .os-scrollbar-horizontal .os-scrollbar-handle:before, .os-theme-dark.os-host-scrollbar-vertical-hidden > .os-scrollbar-vertical .os-scrollbar-handle:before, .os-theme-light.os-host-scrollbar-horizontal-hidden > .os-scrollbar-horizontal .os-scrollbar-handle:before, .os-theme-light.os-host-scrollbar-vertical-hidden > .os-scrollbar-vertical .os-scrollbar-handle:before {
    display: none
}

.os-theme-dark > .os-scrollbar-horizontal .os-scrollbar-handle:before, .os-theme-light > .os-scrollbar-horizontal .os-scrollbar-handle:before {
    top: -6px;
    bottom: -2px
}

.os-theme-dark > .os-scrollbar-vertical .os-scrollbar-handle:before, .os-theme-light > .os-scrollbar-vertical .os-scrollbar-handle:before {
    left: -6px;
    right: -2px
}

.os-host-rtl.os-theme-dark > .os-scrollbar-vertical .os-scrollbar-handle:before, .os-host-rtl.os-theme-light > .os-scrollbar-vertical .os-scrollbar-handle:before {
    right: -6px;
    left: -2px
}

/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
@-webkit-keyframes show {
    to {
        opacity: .25
    }
}

@keyframes show {
    to {
        opacity: .25
    }
}

@-webkit-keyframes darr {
    0% {
        stroke-dasharray: 1000;
        stroke-dashoffset: 0
    }
    to {
        stroke-dasharray: 0;
        stroke-dashoffset: 1000
    }
}

@keyframes darr {
    0% {
        stroke-dasharray: 1000;
        stroke-dashoffset: 0
    }
    to {
        stroke-dasharray: 0;
        stroke-dashoffset: 1000
    }
}

@-webkit-keyframes scale {
    0% {
        opacity: 1;
        transform: scale(0) translate(-50%, -50%)
    }
    40% {
        opacity: .8
    }
    80% {
        opacity: .6
    }
    to {
        opacity: .2;
        transform: scale(.99) translate(-50%, -50%)
    }
}

@keyframes scale {
    0% {
        opacity: 1;
        transform: scale(0) translate(-50%, -50%)
    }
    40% {
        opacity: .8
    }
    80% {
        opacity: .6
    }
    to {
        opacity: .2;
        transform: scale(.99) translate(-50%, -50%)
    }
}

@-webkit-keyframes fromOpacity {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@keyframes fromOpacity {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@-webkit-keyframes fromHeight {
    0% {
        height: 0
    }
    to {
        height: calc(100vh - 245px)
    }
}

@keyframes fromHeight {
    0% {
        height: 0
    }
    to {
        height: calc(100vh - 245px)
    }
}

html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    font-size: 16px;
    line-height: 1.25;
    color: #040404
}

body {
    margin: 0
}

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section {
    display: block
}

figure {
    margin: 1em 40px
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

code, kbd, pre, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

abbr[title] {
    border-bottom: none;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

b, strong {
    font-size: inherit;
    font-weight: bolder
}

dfn {
    font-style: italic
}

mark {
    background-color: #ffff00;
    color: #000000
}

small {
    font-size: 80%
}

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

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

audio, canvas, video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

img {
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

button {
    line-height: 1.15;
    margin: 0
}

input, optgroup, select, textarea {
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button, input {
    overflow: visible
}

button, select {
    text-transform: none
}

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

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    color: inherit;
    display: table;
    max-width: 100%;
    white-space: normal
}

progress {
    display: inline-block;
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=checkbox], [type=radio], legend {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto
}

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

[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

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

summary {
    display: list-item
}

.typography.is-minus li::after, [hidden], template {
    display: none
}

@font-face {
    font-family: "lato-thin";
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    src: url(../fonts/lato-thin.eot);
    src: url(../fonts/lato-thin.woff2) format("woff2")
}

@font-face {
    font-family: "lato-light";
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    src: url(../fonts/lato-light.eot);
    src: url(../fonts/lato-light.woff2) format("woff2")
}

@font-face {
    font-family: "lato-regular";
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    src: url(../fonts/lato-regular.eot);
    src: url(../fonts/lato-regular.woff2) format("woff2")
}

@font-face {
    font-family: "lato-medium";
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    src: url(../fonts/lato-medium.eot);
    src: url(../fonts/lato-medium.woff2) format("woff2")
}

@font-face {
    font-family: "lato-semibold";
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    src: url(../fonts/lato-semibold.eot);
    src: url(../fonts/lato-semibold.woff2) format("woff2")
}

@font-face {
    font-family: "lato-bold";
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    src: url(../fonts/lato-bold.eot);
    src: url(../fonts/lato-bold.woff2) format("woff2")
}

@font-face {
    font-family: "lato-black";
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    src: url(../fonts/lato-black.eot);
    src: url(../fonts/lato-black.woff2) format("woff2")
}

:focus {
    outline: 0
}

h1, h2, h3, h4, h5, h6, p {
    margin: 0;
    padding: 0
}

.h2, h1, h2, h4, h5, h6 {
    font-family: 'lato-semibold', 'Open Sans', sans-serif;
    font-weight: 600
}

a, button, li, p, td, time {
    font-size: 16px;
    font-family: 'lato-regular', 'Open Sans', sans-serif;
    font-weight: 400
}

.h2, h1, h2 {
    font-size: 64px;
    line-height: 1.05
}

h3 {
    font-family: 'lato-semibold', 'Open Sans', sans-serif;
    font-weight: 600
}

img, picture {
    max-width: 100%;
    height: auto
}

img.lazy {
    background-image: url(data:image/gif;base64,R0lGODlhCgAIAIABAN3d3f///yH5BAEAAAEALAAAAAAKAAgAAAINjAOnyJv2oJOrVXrzKQA7)
}

.slick-slide img.lazy, img.lazy.loaded, img.lazy[data-was-processed=true] {
    background-image: none
}

.policy p, .typography li, .typography p {
    font-size: 16px;
    font-family: 'lato-medium', 'Open Sans', sans-serif;
    padding: 0 0 5px
}

.form .is-select.is-opened .form__dropdown, .typography .visible, img, picture {
    display: block
}

.typography .hidden {
    display: none
}

.typography.bigger li, .typography.bigger p, h3 {
    font-size: 24px
}

.typography.bigger li::before {
    top: 13px
}

.typography.bigger li::after {
    top: 7px
}

.typography.two-cols p {
    -moz-column-count: 2;
    column-count: 2;
    -moz-column-gap: 50px;
    column-gap: 50px
}

.typography li, .typography p {
    padding: 0 0 15px
}

.typography li:last-child, .typography p:last-child {
    padding-bottom: 0
}

.typography h2, .typography h3, .typography h4 {
    padding: 0 0 25px
}

.typography h2:not(:first-child), .typography h3:not(:first-child), .typography h4:not(:first-child) {
    padding-top: 25px
}

.typography ol, .typography ul {
    padding: 20px 0 0
}

.typography ol:first-child, .typography ul:first-child {
    padding: 0
}

.typography ol:last-child, .typography ul:last-child {
    margin-bottom: 0
}

.typography li {
    position: relative;
    padding-left: 35px
}

.typography li::after, .typography li::before {
    content: "";
    position: absolute;
    display: block;
    background-color: red
}

.typography li::before {
    top: 7px;
    left: 0;
    width: 13px;
    height: 1px
}

.typography li::after {
    top: 1px;
    left: 6px;
    height: 13px;
    width: 1px
}

.typography img {
    margin: 0 0 20px
}

.typography a {
    text-decoration: underline;
    font-size: inherit;
    line-height: inherit;
    font-weight: 500;
}

.typography a:hover {
    text-decoration: none
}

.typography .minus, .typography .plus {
    position: absolute;
    top: 5px;
    left: 0
}

.site-button {
    outline: 0;
    display: inline-block;
    padding: 0 25px 0 0;
    text-align: center;
    position: relative;
    border: 0;
    background-color: transparent;
    min-width: 215px;
    transition: transform .25s
}

.site-button:hover {
    transform: translate(15px, 0)
}

.site-button.is-white .site-button__content {
    background-color: #ffffff;
    color: red
}

.site-button.is-white .site-button__line {
    background-color: #ffffff
}

.site-button.color-red {
    color: red
}

.site-button__content {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 16px 20px;
    background-color: red;
    color: #ffffff;
    box-shadow: 15px 5px 20px rgba(255, 0, 0, .4)
}

.site-button.is-plus .site-button__text, .site-button__text {
    font-family: 'lato-black', 'Open Sans', sans-serif;
    font-size: 16px
}

.site-button__line {
    position: absolute;
    right: 1px;
    display: block;
    width: 25px;
    height: calc((100% / 3) - 3px);
    background-color: red
}

.site-button__line:nth-child(2) {
    top: 0
}

.site-button__line:nth-child(3) {
    top: 50%;
    transform: translateY(-50%)
}

.site-button__line:nth-child(4) {
    bottom: 0
}

.site-button.is-plus {
    border: 0;
    background-color: transparent;
    color: #ffffff;
    max-width: 200px;
    width: 100%;
    padding: 10px;
    display: flex;
    align-items: center;
    min-width: auto
}

.site-button.is-plus:hover {
    transform: translate(0);
    text-decoration: underline
}

@supports (display:grid) {
    .site-button.is-plus {
        min-width: initial
    }
}

.site-button.is-plus .site-button__text {
    display: inline-block;
    white-space: nowrap;
    margin: 0 20px 0 0
}

.site-button.is-show {
    position: relative;
    cursor: pointer;
    padding: 0 0 0 50px;
    display: inline-block;
    border: 0;
    background-color: transparent;
    box-shadow: none;
    color: #040404;
    transition: color .25s;
    width: auto
}

.site-button.is-show:hover {
    transform: translate(0);
    text-decoration: underline;
    color: red
}

.site-button.is-show::before {
    content: "";
    position: absolute;
    left: 5px;
    top: 0;
    width: 12px;
    height: 12px;
    transform: rotate(-45deg);
    border-left: 2px solid #040404;
    border-bottom: 2px solid #040404;
    background: 0 0
}

.form .is-checkbox input, .form .is-file input, .site-button.is-show.is-hidden, .site-button.is-show::after {
    display: none
}

.site-button.is-show.is-reverse::before {
    transform: rotate(135deg) translate(25%, -50%)
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

body, html {
    position: relative;
    height: 100%
}

.wrapper {
    min-height: 100vh;
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start
}

.body-overflow, article {
    overflow: hidden
}

footer {
    margin: auto 0 0
}

.body-overflow {
    overscroll-behavior-y: none;
    -webkit-overflow-scrolling: auto
}

.dots::after, .main {
    background-color: #ffffff
}

.main.is-black {
    background-color: #040404
}

.main.is-black .play-button::before {
    opacity: .5
}

.container, .strict-container {
    max-width: 1680px;
    width: 100%;
    margin: 0 auto;
    padding: 0 70px
}

.container {
    max-width: 1920px;
    position: relative;
    padding: 0 140px 0 190px
}

.sr-only {
    position: absolute;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    width: 1px;
    height: 1px;
    overflow: hidden;
    padding: 0;
    border: 0;
    white-space: nowrap
}

.is-hidden {
    display: none !important;
    opacity: 0;
    pointer-events: none
}

.contain-picture {
    -o-object-fit: contain !important;
    object-fit: contain !important
}

a {
    text-decoration: none;
    color: inherit;
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

button {
    cursor: pointer
}

ol, ul {
    list-style: none
}

i {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit
}

.dc, .fw {
    display: flex
}

@supports (display:grid) {
    .dc {
        display: grid;
        grid-template-columns:minmax(0, 1fr)
    }
}

.vc {
    align-items: center
}

.ve {
    align-items: flex-end
}

.hs {
    justify-content: flex-start;
    justify-items: flex-start
}

.hc {
    justify-content: center
}

@supports (display:grid) {
    .hc {
        justify-items: center
    }
}

.he {
    justify-content: flex-end;
    justify-items: flex-end
}

.wrap {
    display: flex;
    flex-wrap: wrap
}

.icon, .icon-amr, .icon-ifes, .icon-blockquote, .icon-expo-union, .icon-facebook, .icon-hero-net, .icon-info, .icon-instagram, .icon-net, .icon-play-button, .icon-russiacb, .icon-service-dot, .icon-severinova, .icon-themoonagency, .icon-vimeo, .icon-youtube, .icon-checksanity, .icon-youtube, .icon-telegram {
    display: inline-block;
    width: 1em;
    height: 1em;
    fill: currentColor
}

.dots {
    position: absolute;
    bottom: 0;
    right: 0
}

.dots::after {
    content: "";
    position: absolute;
    z-index: 1
}

.dots__img {
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    background-image: url(../img/dots.svg);
    background-size: 23px;
    background-repeat: repeat
}

.form {
    max-width: 550px
}

.form__inner {
    position: relative;
    flex-wrap: wrap
}

@supports (display:grid) {
    .form__inner {
        margin: 0;
        flex-wrap: nowrap;
        grid-template-columns:repeat(2, calc(50% - 20px));
        gap: 40px
    }

    @media all and (max-width: 767px) {
        .form__inner {
            gap: 20px;
            grid-template-columns:1fr
        }
    }
}

.form__inner > .form__error {
    top: auto;
    bottom: 100%;
    transform: translateY(-10px)
}

.form__inner.is-error > .form__error, .form__label.is-error .form__error {
    opacity: 1
}

.form__label {
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
    z-index: 1;
    cursor: pointer;
    margin: 0 0 20px
}

@supports (display:grid) {
    .form__label {
        margin: 0
    }
}

.form .is-checkbox, .form .is-full, .form .is-select {
    grid-column: 1/3
}

.form .is-select {
    z-index: 2
}

.form .is-select.is-opened .form__placeholder::after {
    transform: rotate(135deg) translate(5px, 10px)
}

.form .is-checkbox .form__placeholder {
    padding-left: 80px;
    white-space: normal
}

.form .is-checkbox input:checked + .form__checker::before {
    opacity: 1
}

.form .is-file.is-loaded .form__key {
    top: 40%
}

.form .is-file.is-loaded .form__key::before {
    background-color: transparent;
    width: 8px;
    height: 14px;
    border-right: 2px solid red;
    border-bottom: 2px solid red;
    transform: rotate(45deg) translate(-115%, -15%)
}

.form .is-file.is-loaded .form__key::after, .form__dropdown input {
    display: none
}

.form__checker {
    position: absolute;
    top: 8px;
    left: 0;
    width: 20px;
    height: 20px;
    border: 0;
    background-color: rgba(204, 204, 204, .5)
}

.form__checker::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    display: block;
    width: 6px;
    height: 12px;
    border-right: 2px solid red;
    border-bottom: 2px solid red;
    transform: rotate(45deg) translate(-115%, -15%);
    opacity: 0;
    transition: opacity .25s
}

.form__error, .form__input, .form__placeholder, .form__textarea {
    font-size: 14px
}

.form__error, .form__help-text, .form__input, .form__placeholder, .form__textarea {
    font-family: 'lato-semibold', 'Open Sans', sans-serif;
    font-weight: 600
}

.form__input, .form__placeholder, .form__textarea {
    color: #7a7a7a;
    padding: 10px 5px 13px
}

.form__placeholder > a {
    font-size: inherit;
    line-height: inherit;
    font-weight: inherit;
    font-family: inherit;
    color: #ff0000;
}

.form__placeholder > a:hover {
    text-decoration: underline;
}

.form__placeholder {
    width: 100%;
    height: 100%;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.form__input {
    height: 100%
}

.form .is-file .form__placeholder, .form__input, .form__select > .form__placeholder, .form__textarea {
    display: block;
    width: 100%;
    border: 0;
    background-color: transparent;
    border-bottom-width: 1px;
    border-style: solid;
    border-color: rgba(122, 122, 122, .25)
}

.form .is-file .form__placeholder, .form__select > .form__placeholder {
    height: 100%
}

.form__input::-moz-placeholder, .form__textarea::-moz-placeholder {
    font-size: inherit;
    color: inherit
}

.form__input:-ms-input-placeholder, .form__input::-ms-input-placeholder, .form__textarea:-ms-input-placeholder, .form__textarea::-ms-input-placeholder {
    font-size: inherit;
    color: inherit
}

.form__input::placeholder, .form__textarea::placeholder {
    font-size: inherit;
    color: inherit
}

.form .is-file > .form__placeholder, .form__select > .form__placeholder {
    padding-right: 40px
}

.form__select {
    position: relative;
    margin: 0 0 50px;
    width: 100%
}

@supports (display:grid) {
    .form__select {
        margin: 0
    }
}

.form__select > .form__placeholder {
    position: relative;
    cursor: pointer
}

.form__select > .form__placeholder::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(-5px, -80%) rotate(-45deg);
    transition: transform .25s;
    width: 10px;
    height: 10px;
    background-color: transparent;
    border-left: 2px solid red;
    border-bottom: 2px solid red
}

.form__dropdown {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: auto;
    background-color: #f8f8f8
}

.form__dropdown .form__placeholder {
    padding: 13px
}

.form__dropdown input:checked + .form__placeholder {
    color: #040404;
    background-color: rgba(255, 0, 0, .35)
}

.form__textarea {
    resize: none;
    height: 120px
}

.form__error {
    position: absolute;
    width: auto;
    max-height: 2.5em;
    overflow: hidden;
    top: 100%;
    left: 0;
    color: tomato;
    pointer-events: none;
    opacity: 0;
    transition: opacity .25s
}

.form__error.is-opened, .form__help-icon:hover + .form__help-text {
    opacity: 1
}

.form__help, .form__key {
    position: absolute;
    right: 0
}

.form__key {
    top: 40%;
    transform: translate(0, -50%);
    width: 20px;
    height: 20px
}

.form__key::after, .form__key::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background-color: red;
    transform: translate(-50%, -50%)
}

.form__key::before {
    width: 17px;
    height: 1px
}

.form__key::after {
    height: 17px;
    width: 1px
}

.form__help {
    bottom: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    pointer-events: none
}

.form__help + .form__input {
    padding-right: 20px
}

.form__help-icon {
    cursor: pointer;
    position: relative;
    z-index: 2;
    margin: 0 0 10px;
    padding: 10px 0 10px 10px;
    pointer-events: auto
}

.form__help-icon svg {
    width: 15px;
    height: 15px;
    display: block;
    fill: red
}

.form__help-text {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: auto;
    background-color: #f8f8f8;
    padding: 5px 15px 5px 5px;
    font-size: 12px;
    align-items: center;
    display: flex;
    opacity: 0;
    transition: opacity .25s
}

.form__button {
    align-self: flex-end;
    margin: 0 0 20px
}

@supports (display:grid) {
    .form__button {
        margin: 0
    }

    @media all and (max-width: 767px) {
        .form__button {
            grid-row: 8
        }
    }
}

@supports (display:grid) {
    .form__button .site-button {
        width: 100%
    }
}

.first-section {
    padding: 225px 0 0
}

.first-section.is-full {
    height: 100vh
}

@supports (min-height:100vh) {
    .first-section.is-full {
        min-height: 100vh;
        height: auto
    }

    @media all and (max-width: 1279px) {
        .first-section.is-full {
            min-height: auto
        }
    }
}

.block-content, .block-wrapper {
    position: relative
}

.block-content {
    z-index: 1
}

.block-running-title {
    margin: 0 0 60px
}

.block-running-title.horizontal {
    width: 100%;
    justify-content: space-between
}

@supports (display:grid) {
    .block-running-title.horizontal {
        grid-template-columns:minmax(100px, 200px) 1fr minmax(100px, 200px)
    }
}

.block-running-title.horizontal .exponic__head {
    grid-column: 1/2
}

.block-running-title.horizontal .exponic__since {
    justify-self: end;
    grid-column: 3/4
}

.block-running-title.is-white {
    color: #ffffff
}

.block-head {
    justify-content: space-between;
    margin: 0 0 100px
}

@supports (display:grid) {
    .block-head.horizontal {
        grid-template-columns:auto minmax(auto, .5fr)
    }

    @media all and (max-width: 767px) {
        .block-head.horizontal {
            grid-template:repeat(2, auto)/1fr auto
        }
    }@media all and (max-width: 374px) {
    .block-head.horizontal {
        grid-template:repeat(3, auto)/1fr auto
    }
}
}

.block-head .slider__arrows {
    margin: 0 30px 0 0;
    justify-items: center
}

@supports (display:grid) {
    .block-head .slider__arrows {
        grid-column: 2/3
    }

    @media all and (max-width: 767px) {
        .block-head .slider__arrows {
            grid-column: 1/2;
            grid-row: 2/3
        }

        .block-head .slider__arrows.hc {
            justify-content: flex-start;
            align-self: center
        }

        .block-head .slider__arrows + .button {
            margin: 0 !important
        }
    }@media all and (max-width: 374px) {
    .block-head .slider__arrows {
        grid-column: 1/3;
        grid-row: 3/4;
        padding: 30px 0 0
    }
}
}

.block-head .block-title {
    padding: 0 20px 0 0
}

.block-head .block-title:last-child {
    margin: 0
}

@supports (display:grid) {
    .block-head .block-title {
        grid-column: 1/2
    }

    @media all and (max-width: 767px) {
        .block-head .block-title, .block-head .block-title + .button {
            grid-column: 1/3
        }
    }
}

@supports (display:grid) {
    .block-head .button {
        grid-column: 3/4;
        width: auto !important
    }

    @media all and (max-width: 767px) {
        .block-head .button {
            grid-column: 2/3
        }
    }@media all and (max-width: 374px) {
    .block-head .button {
        grid-column: 1/3;
        grid-row: 2/3
    }
}
}

.block-cat {
    margin: 0 0 40px
}

.block-cat__list {
    display: flex;
    flex-wrap: wrap
}

.block-cat__list.is-white .block-cat__item {
    color: #ffffff
}

.block-cat__list.is-white .block-cat__item::after, .block-cat__list.is-white-contrast .block-cat__item::after {
    background-color: #ffffff
}

.block-cat__list.is-black .block-cat__item {
    color: #040404
}

.block-cat__list.is-white-contrast .block-cat__item {
    color: red
}

.block-cat__list.is-white-contrast .block-cat__item:last-child {
    color: #ffffff
}

.block-cat__list.is-small .block-cat__item {
    padding: 0 15px 0 0;
    margin: 0 7px 0 0
}

.block-cat__list.is-small .block-cat__item::after {
    width: 10px
}

.block-cat__list.is-slash .block-cat__item::after {
    content: "/";
    background-color: transparent;
    width: auto;
    height: auto;
    font-size: inherit
}

.block-cat__list.is-circles .block-cat__item {
    margin: 0 12px 0 0;
    padding: 0 15px 0 0
}

.block-cat__list.is-circles .block-cat__item::after {
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background-color: red
}

.block-cat__list.crumbs {
    display: flex;
    justify-content: center;
    flex-wrap: wrap
}

.address-block__title a:hover, .block-cat__list.crumbs .block-cat__item:hover {
    text-decoration: underline
}

.block-cat__list.crumbs .block-cat__item:hover:last-child {
    text-decoration: none
}

.block-cat__item {
    display: inline-block;
    position: relative;
    padding: 0 65px 0 0;
    margin: 0 15px 0 0;
    font-size: 16px;
    font-family: 'lato-regular', 'Open Sans', sans-serif;
    font-weight: 400;
    color: red;
    transition: color .25s;
    overflow: hidden
}

.block-cat__item a, .block-cat__item p {
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    width: 100%;
    display: inline-block
}

.block-cat__item::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: block;
    width: 50px;
    height: 1px;
    background-color: #040404;
    transition: background-color .25s
}

.block-cat__item:last-child {
    color: #040404;
    padding: 0 !important;
    margin: 0 !important
}

.block-cat__item:last-child::after {
    display: none
}

.block-title {
    max-width: 100%
}

.block-title.space-down {
    margin: 0 0 40px
}

.block-line__inner:hover .block-cat__list .block-cat__item, .block-title.is-white {
    color: #ffffff
}

.block-title.is-line {
    position: relative
}

.block-title.is-line::before {
    content: "";
    position: absolute;
    top: 35px;
    right: 100%;
    width: 30vw;
    height: 2px;
    display: block;
    transform: translate(-100px, 0);
    background-color: red
}

.block-title .is-red {
    color: red;
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700
}

.block-title.wrap {
    justify-content: space-between
}

.block-title.wrap .h2, .block-title.wrap h1, .block-title.wrap h2 {
    max-width: 80%
}

.block-line {
    height: 300px
}

.block-line.is-filtered {
    display: none
}

.block-line .block-cat {
    margin: 0;
    padding: 20px 0 0
}

.block-line__inner {
    padding: 20px 25px;
    background-color: #f8f8f8;
    height: 100%;
    transition: background-color .25s, color .25s;
    justify-content: space-around
}

@supports (display:grid) {
    .block-line__inner {
        grid-template-columns:.5fr 1fr .5fr
    }

    @media all and (max-width: 1023px) {
        .block-line__inner {
            grid-template-columns:.5fr 1.5fr
        }
    }
}

.block-line__inner > h3, .block-line__inner > p {
    color: inherit
}

.block-line__inner .button {
    opacity: 0;
    transition: opacity .25s
}

.block-line__inner:hover {
    background-color: red;
    color: #ffffff
}

.block-line__inner:hover .button, .info-case.is-middle .info-case__picture {
    opacity: 1;
}

.info-case.is-middle .info-case__picture {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    opacity: 1
}

.block-line__inner:hover .block-cat__list:not(.is-slash) .block-cat__item::after {
    background-color: #ffffff
}

.block-line__inner:hover .block-line__time {
    color: #ffffff
}

.block-line__button, .block-line__date, .block-line__short {
    padding: 0 15px
}

.block-line__date {
    max-width: 35%;
    width: 100%
}

@supports (display:grid) {
    .block-line__date {
        max-width: initial;
        width: auto
    }
}

.block-line__short {
    max-width: 65%;
    width: 100%
}

@supports (display:grid) {
    .block-line__short {
        justify-self: flex-start;
        max-width: initial;
        width: auto
    }
}

.block-line__time {
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700
}

.block-grid {
    flex-wrap: wrap
}

@supports (display:grid) {
    .block-grid {
        flex-wrap: nowrap
    }
}

.block-catalog__wrapper {
    position: relative;
}

.block-catalog__wrapper > .slider__prev, .block-catalog__wrapper > .slider__next {
    position: absolute;
    z-index: 2;
    top: 50%;
    width: 60px;
    height: 60px;
    background-color: red;
    transform: translateY(-50%) rotate(0) !important;
}

.block-catalog__wrapper > .slider__prev:before, .block-catalog__wrapper > .slider__next:before {
    border-color: white !important;
}

.block-catalog__wrapper > .slider__prev:before {
    transform: rotate(45deg) translate(-50%, -10%) !important;
}

.block-catalog__wrapper > .slider__prev {
    left: 24px;
}

.block-catalog__wrapper > .slider__next:before {
    transform: rotate(-135deg) translate(70%, -10%) !important;
}

.block-catalog__wrapper > .slider__next {
    right: 24px;
}

@media (max-width: 1499px) {
    .block-catalog__wrapper > .slider__prev, .block-catalog__wrapper > .slider__next {
        width: 45px;
        height: 45px;
    }
}

@media (max-width: 1023px) {
    .block-catalog__wrapper > .slider__prev, .block-catalog__wrapper > .slider__next {
        width: 35px;
        height: 35px;
    }

    .block-catalog__wrapper > .slider__prev {
        left: 12px;
    }

    .block-catalog__wrapper > .slider__next {
        right: 12px;
    }
}


.block-catalog__video {
    position: relative
}

.block-catalog__video::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .15)
}

.block-catalog__video img, .block-catalog__video video {
    position: relative;
    z-index: 0;
    height: 760px;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    display: block
}

.block-catalog__info {
    justify-content: space-between
}

@supports (display:grid) {
    .block-catalog__info {
        gap: 20px;
        grid-template-columns:minmax(100px, .35fr) 1fr minmax(100px, .35fr)
    }

    @media all and (max-width: 1023px) {
        .block-catalog__info {
            grid-template-columns:auto auto
        }
    }
}

.block-catalog__info .block-cat {
    margin: 0
}

.block-catalog__info .block-cat__list {
    flex-wrap: wrap
}

.block-catalog__info .block-cat__item, .block-share p {
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 16px
}

.block-catalog__info .block-catalog__arrows {
    justify-content: flex-end
}

.block-catalog__logo img {
    max-width: 130px;
    max-height: 60px;
    height: auto;
    overflow: hidden;
    filter: grayscale(100%);
}

.address-block {
    font-size: 16px;
    font-family: 'lato-medium', 'Open Sans', sans-serif
}

.address-block__links a, .info-case__inner.is-inform:hover .info-case__title span {
    display: block
}

.address-block__route, [data-marked] span {
    color: red
}

.address-block__route:hover {
    text-decoration: underline
}

.block-share {
    display: flex
}

.block-share p {
    margin: 0 20px 0 0
}

.block-share__soc {
    border: 0;
    background-color: transparent;
    position: relative;
    cursor: pointer;
    margin: 0 10px 0 0
}

.block-share__soc:last-child {
    margin: 0
}

.block-share__soc svg {
    fill: red;
    height: 18px;
    transition: all .25s
}

.block-share__soc:hover svg {
    fill: rgba(255, 0, 0, .5)
}

.block-share__hidden {
    cursor: pointer;
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    opacity: 0
}

.tns-outer {
    display: block
}

.net svg, .tns-outer, .tns-outer .tns-inner, .tns-outer .tns-ovh {
    width: 100%;
    height: 100%
}

.slider__arrows.dc {
    align-items: center
}

@supports (display:grid) {
    .slider__arrows.dc {
        grid-template:1fr/repeat(3, 50px)
    }

    @media all and (max-width: 1365px) {
        .slider__arrows.dc {
            grid-template:1fr/repeat(3, 35px)
        }
    }@media all and (max-width: 1023px) {
    .slider__arrows.dc {
        grid-template:1fr/repeat(3, 25px)
    }
}
}

.slider__arrows.is-flex {
    width: 100%;
    display: flex;
    justify-content: space-between
}

.slider__arrows.he {
    margin: 0;
    justify-items: center
}

.slider__arrows .slider__prev {
    transform: rotate(45deg)
}

.slider__arrows .slider__next {
    transform: rotate(-135deg)
}

.slider__arrows .slider__separator {
    transform: rotate(55deg)
}

.slider__arrows.is-vert {
    flex-direction: column;
    align-items: center
}

@supports (display:grid) {
    .slider__arrows.is-vert {
        grid-template:repeat(3, 50px)/1fr
    }

    @media all and (max-width: 1365px) {
        .slider__arrows.is-vert {
            grid-template:repeat(3, 35px)/1fr
        }
    }
}

.slider__arrows.is-vert .slider__prev {
    transform: rotate(135deg)
}

.slider__arrows.is-vert .slider__next {
    transform: rotate(-45deg)
}

.slider__arrows.is-vert .slider__separator {
    transform: rotate(-15deg)
}

.slider__arrows.is-white .slider__next:not(.is-active)::before, .slider__arrows.is-white .slider__prev:not(.is-active)::before {
    border-color: #ffffff
}

.slider__arrows-container {
    width: 100%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    z-index: 2;
    pointer-events: none
}

.slider__arrows-container .slider__next, .slider__arrows-container .slider__prev {
    width: 60px;
    height: 60px;
    background-color: red;
    transform: rotate(0)
}

.slider__arrows-container .slider__next.is-active::before, .slider__arrows-container .slider__next::before, .slider__arrows-container .slider__prev.is-active::before, .slider__arrows-container .slider__prev::before {
    border-color: #ffffff
}

.slider__arrows-container .slider__next.is-active, .slider__arrows-container .slider__prev.is-active {
    background-color: red
}

.slider__arrows-container .slider__prev::before {
    transform: rotate(45deg) translate(-50%, -10%)
}

.slider__arrows-container .slider__next::before {
    transform: rotate(-135deg) translate(70%, -10%)
}

.slider__arrows-container.is-bottom {
    top: auto;
    bottom: 250px;
    transform: translateY(50%)
}

.slider__separator {
    width: 30px;
    height: 30px;
    position: relative;
    font-size: 24px;
    margin: 0 20px;
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700;
    color: red
}

@supports (display:grid) {
    .slider__separator {
        margin: auto
    }
}

.slider__next, .slider__prev {
    pointer-events: auto;
    display: inline-block !important;
    width: 30px;
    height: 30px;
    position: relative;
    background-color: transparent;
    border: 0
}

.slider__next::before, .slider__number, .slider__prev::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.slider__next::before, .slider__prev::before {
    content: "";
    width: 15px;
    height: 15px;
    border-left: 2px solid #040404;
    border-bottom: 2px solid #040404;
    transition: border-color .25s
}

.slider__next.is-active::before, .slider__prev.is-active::before {
    border-color: red
}

.slider__counter {
    width: 160px;
    height: 160px;
    position: relative;
    background-color: #ffffff
}

.slider__number {
    flex-direction: column;
    z-index: 1;
    text-align: right;
    font-family: 'lato-black', 'Open Sans', sans-serif
}

.slider__all, .slider__current {
    line-height: .95
}

.slider__all {
    font-size: 16px;
    color: #040404;
    padding: 0 10px 0 0
}

.slider__current {
    color: red;
    font-size: 60px
}

.slider__dot {
    display: block;
    width: 25px;
    height: 2px;
    transition: background-color .25s;
    background-color: #cccccc;
    margin: 0 30px 0 0
}

.slider__dot.is-active {
    background-color: red
}

.question h3:last-child, .question p:last-child, .slider__dot:last-child {
    margin: 0
}

.slider__slide .tile__item {
    padding: 0
}

.net {
    position: absolute;
    z-index: 0;
    pointer-events: none;
    overflow: hidden
}

.net path, .net svg {
    stroke: red
}

.net.is-gray path, .net.is-gray svg {
    stroke: rgba(4, 4, 4, .55)
}

.net.is-white path, .net.is-white svg {
    stroke: #f8f8f8
}

.net path {
    opacity: 0
}

.net path:nth-child(1) {
    -webkit-animation: show .5s linear .1s 1 forwards paused;
    animation: show .5s linear .1s 1 forwards paused
}

.net path:nth-child(2) {
    -webkit-animation: show .5s linear .2s 1 forwards paused;
    animation: show .5s linear .2s 1 forwards paused
}

.net path:nth-child(3) {
    -webkit-animation: show .5s linear .3s 1 forwards paused;
    animation: show .5s linear .3s 1 forwards paused
}

.net path:nth-child(4) {
    -webkit-animation: show .5s linear .4s 1 forwards paused;
    animation: show .5s linear .4s 1 forwards paused
}

.net path:nth-child(5) {
    -webkit-animation: show .5s linear .5s 1 forwards paused;
    animation: show .5s linear .5s 1 forwards paused
}

.net path:nth-child(6) {
    -webkit-animation: show .5s linear .6s 1 forwards paused;
    animation: show .5s linear .6s 1 forwards paused
}

.net path:nth-child(7) {
    -webkit-animation: show .5s linear .7s 1 forwards paused;
    animation: show .5s linear .7s 1 forwards paused
}

.net path:nth-child(8) {
    -webkit-animation: show .5s linear .8s 1 forwards paused;
    animation: show .5s linear .8s 1 forwards paused
}

.net path:nth-child(9) {
    -webkit-animation: show .5s linear .9s 1 forwards paused;
    animation: show .5s linear .9s 1 forwards paused
}

.net path:nth-child(10) {
    -webkit-animation: show .5s linear 1s 1 forwards paused;
    animation: show .5s linear 1s 1 forwards paused
}

.net path:nth-child(11) {
    -webkit-animation: show .5s linear 1.1s 1 forwards paused;
    animation: show .5s linear 1.1s 1 forwards paused
}

.net path:nth-child(12) {
    -webkit-animation: show .5s linear 1.2s 1 forwards paused;
    animation: show .5s linear 1.2s 1 forwards paused
}

.net path:nth-child(13) {
    -webkit-animation: show .5s linear 1.3s 1 forwards paused;
    animation: show .5s linear 1.3s 1 forwards paused
}

.net path:nth-child(14) {
    -webkit-animation: show .5s linear 1.4s 1 forwards paused;
    animation: show .5s linear 1.4s 1 forwards paused
}

.net path:nth-child(15) {
    -webkit-animation: show .5s linear 1.5s 1 forwards paused;
    animation: show .5s linear 1.5s 1 forwards paused
}

.net path:nth-child(16) {
    -webkit-animation: show .5s linear 1.6s 1 forwards paused;
    animation: show .5s linear 1.6s 1 forwards paused
}

.net path:nth-child(17) {
    -webkit-animation: show .5s linear 1.7s 1 forwards paused;
    animation: show .5s linear 1.7s 1 forwards paused
}

.net path:nth-child(18) {
    -webkit-animation: show .5s linear 1.8s 1 forwards paused;
    animation: show .5s linear 1.8s 1 forwards paused
}

.net path:nth-child(19) {
    -webkit-animation: show .5s linear 1.9s 1 forwards paused;
    animation: show .5s linear 1.9s 1 forwards paused
}

.net path:nth-child(20) {
    -webkit-animation: show .5s linear 2s 1 forwards paused;
    animation: show .5s linear 2s 1 forwards paused
}

.net path:nth-child(21) {
    -webkit-animation: show .5s linear 2.1s 1 forwards paused;
    animation: show .5s linear 2.1s 1 forwards paused
}

.net path:nth-child(22) {
    -webkit-animation: show .5s linear 2.2s 1 forwards paused;
    animation: show .5s linear 2.2s 1 forwards paused
}

.net path:nth-child(23) {
    -webkit-animation: show .5s linear 2.3s 1 forwards paused;
    animation: show .5s linear 2.3s 1 forwards paused
}

.net path:nth-child(24) {
    -webkit-animation: show .5s linear 2.4s 1 forwards paused;
    animation: show .5s linear 2.4s 1 forwards paused
}

.net path:nth-child(25) {
    -webkit-animation: show .5s linear 2.5s 1 forwards paused;
    animation: show .5s linear 2.5s 1 forwards paused
}

.net path:nth-child(26) {
    -webkit-animation: show .5s linear 2.6s 1 forwards paused;
    animation: show .5s linear 2.6s 1 forwards paused
}

.net path:nth-child(27) {
    -webkit-animation: show .5s linear 2.7s 1 forwards paused;
    animation: show .5s linear 2.7s 1 forwards paused
}

.net path:nth-child(28) {
    -webkit-animation: show .5s linear 2.8s 1 forwards paused;
    animation: show .5s linear 2.8s 1 forwards paused
}

.net path:nth-child(29) {
    -webkit-animation: show .5s linear 2.9s 1 forwards paused;
    animation: show .5s linear 2.9s 1 forwards paused
}

.net path:nth-child(30) {
    -webkit-animation: show .5s linear 3s 1 forwards paused;
    animation: show .5s linear 3s 1 forwards paused
}

.net path:nth-child(31) {
    -webkit-animation: show .5s linear 3.1s 1 forwards paused;
    animation: show .5s linear 3.1s 1 forwards paused
}

.net path:nth-child(32) {
    -webkit-animation: show .5s linear 3.2s 1 forwards paused;
    animation: show .5s linear 3.2s 1 forwards paused
}

.net path:nth-child(33) {
    -webkit-animation: show .5s linear 3.3s 1 forwards paused;
    animation: show .5s linear 3.3s 1 forwards paused
}

.net path:nth-child(34) {
    -webkit-animation: show .5s linear 3.4s 1 forwards paused;
    animation: show .5s linear 3.4s 1 forwards paused
}

.net path:nth-child(35) {
    -webkit-animation: show .5s linear 3.5s 1 forwards paused;
    animation: show .5s linear 3.5s 1 forwards paused
}

.net path:nth-child(36) {
    -webkit-animation: show .5s linear 3.6s 1 forwards paused;
    animation: show .5s linear 3.6s 1 forwards paused
}

.net path:nth-child(37) {
    -webkit-animation: show .5s linear 3.7s 1 forwards paused;
    animation: show .5s linear 3.7s 1 forwards paused
}

.net path:nth-child(38) {
    -webkit-animation: show .5s linear 3.8s 1 forwards paused;
    animation: show .5s linear 3.8s 1 forwards paused
}

.net path:nth-child(39) {
    -webkit-animation: show .5s linear 3.9s 1 forwards paused;
    animation: show .5s linear 3.9s 1 forwards paused
}

.net path:nth-child(40) {
    -webkit-animation: show .5s linear 4s 1 forwards paused;
    animation: show .5s linear 4s 1 forwards paused
}

.net path:nth-child(41) {
    -webkit-animation: show .5s linear 4.1s 1 forwards paused;
    animation: show .5s linear 4.1s 1 forwards paused
}

.net path:nth-child(42) {
    -webkit-animation: show .5s linear 4.2s 1 forwards paused;
    animation: show .5s linear 4.2s 1 forwards paused
}

.net path:nth-child(43) {
    -webkit-animation: show .5s linear 4.3s 1 forwards paused;
    animation: show .5s linear 4.3s 1 forwards paused
}

.net path:nth-child(44) {
    -webkit-animation: show .5s linear 4.4s 1 forwards paused;
    animation: show .5s linear 4.4s 1 forwards paused
}

.net path:nth-child(45) {
    -webkit-animation: show .5s linear 4.5s 1 forwards paused;
    animation: show .5s linear 4.5s 1 forwards paused
}

.net path:nth-child(46) {
    -webkit-animation: show .5s linear 4.6s 1 forwards paused;
    animation: show .5s linear 4.6s 1 forwards paused
}

.net path:nth-child(47) {
    -webkit-animation: show .5s linear 4.7s 1 forwards paused;
    animation: show .5s linear 4.7s 1 forwards paused
}

.net path:nth-child(48) {
    -webkit-animation: show .5s linear 4.8s 1 forwards paused;
    animation: show .5s linear 4.8s 1 forwards paused
}

.net path:nth-child(49) {
    -webkit-animation: show .5s linear 4.9s 1 forwards paused;
    animation: show .5s linear 4.9s 1 forwards paused
}

.net path:nth-child(50) {
    -webkit-animation: show .5s linear 5s 1 forwards paused;
    animation: show .5s linear 5s 1 forwards paused
}

.net.is-transparency {
    stroke-opacity: .5 !important
}

.play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    width: 95px;
    height: 95px;
    border: 0;
    background-color: transparent;
    opacity: 1;
    overflow: visible
}

.play-button:hover::before {
    transform: scale(.99) translate(-50%, -50%)
}

.play-button:hover::after {
    transform: scale(.5) translate(-50%, -50%)
}

.play-button::after, .play-button::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    transform-origin: 0 0;
    transition: transform .25s
}

.play-button::before {
    background-color: #ffffff;
    transform: scale(.8) translate(-50%, -50%);
    z-index: 1
}

.play-button::after {
    background-color: transparent;
    border: 1px solid red;
    transform: scale(.99) translate(-50%, -50%);
    z-index: 2
}

.play-button__triangle {
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    transform: translate(-25%, -50%);
    display: block;
    border: 12px solid transparent;
    border-left: 20px solid red
}

.minus, .plus {
    display: inline-block;
    width: 20px;
    height: 20px;
    position: relative;
    box-sizing: border-box
}

.plus::after, .plus::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 2px;
    background-color: #ffffff
}

.plus::before {
    transform: translate(-50%, -50%) rotate(90deg)
}

.minus::before, .plus::after {
    transform: translate(-50%, -50%)
}

.minus.is-red::before, .plus.is-red::after, .plus.is-red::before {
    background-color: red
}

.minus {
    width: 17px;
    height: 17px
}

.minus::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 1px;
    background-color: #ffffff
}

.exponic__head, .exponic__since, .exponic__year {
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 16px
}

.exponic__since, .exponic__year {
    text-transform: uppercase
}

.exponic__head {
    position: relative;
    padding: 0 0 25px
}

.exponic__head::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 30px;
    height: 2px;
    background-color: #cccccc
}

.exponic__since {
    text-align: right
}

.block-icon svg {
    width: 100px;
    height: 100px;
    fill: #040404
}

.block-icon.is-red .img {
    fill: red
}

.block-icon.is-red .circle {
    fill: #888888
}

.pulsar {
    width: 400px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    pointer-events: none
}

.pulsar__container {
    padding-bottom: 100%
}

.pulsar__item {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transform-origin: 0 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 1px solid #cccccc;
    opacity: 0
}

.pulsar__item:nth-child(2) {
    -webkit-animation: scale 3s infinite;
    animation: scale 3s infinite
}

.pulsar__item:nth-child(3) {
    -webkit-animation: scale 3s infinite 1s;
    animation: scale 3s infinite 1s
}

.pulsar__item:nth-child(4) {
    -webkit-animation: scale 3s infinite 2s;
    animation: scale 3s infinite 2s
}

.spacer {
    display: block;
    width: 100%;
    padding-bottom: 70px
}

.spacer.x2 {
    padding-bottom: 140px
}

.spacer.x3 {
    padding-bottom: 210px
}

.spacer.x4 {
    padding-bottom: 280px
}

.spacer.x5 {
    padding-bottom: 350px
}

.question h3, .question p {
    margin: 0 0 20px
}

.question h3 {
    color: red;
    font-size: 20px
}

.question p {
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 16px
}

.event-view__view picture, .stats {
    position: relative;
    z-index: 1
}

.stats__inner {
    flex-direction: column
}

.stats__inner.hs {
    align-items: flex-start
}

.stats__inner.horizontal {
    flex-direction: row
}

.stats__inner.horizontal .stats__title {
    margin: 0
}

.stats__inner.horizontal .stats__descr {
    padding: 0;
    align-self: center
}

@supports (display:grid) {
    .stats__inner.horizontal {
        grid-template-columns:200px auto
    }

    @media all and (max-width: 1023px) {
        .stats__inner.horizontal {
            grid-template-columns:135px auto
        }
    }@media all and (max-width: 767px) {
    .stats__inner.horizontal {
        grid-template-columns:100px auto
    }
}
}

.stats__inner.hc {
    text-align: center
}

.stats__title {
    color: red;
    font-size: 64px;
    font-family: 'lato-black', 'Open Sans', sans-serif;
    line-height: 1;
    margin: 0 0 20px
}

.stats__title.lsb {
    font-family: 'lato-semibold', 'Open Sans', sans-serif;
    font-weight: 600
}

.stats__subtitle {
    font-size: 24px
}

.stats__descr, .stats__subtitle {
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700
}

.info-case {
    position: relative;
    z-index: 0
}

.info-case.is-filtered, .info-case__inner.is-inform .info-case__title span {
    display: none
}

.info-case.tns-slide-active .is-lightbox, .language__item.not-active a {
    pointer-events: none
}

.info-case.is-middle {
    z-index: 1
}

@supports ((-webkit-filter:grayscale(1)) or (filter:grayscale(1))) {
    .info-case.is-middle .info-case__picture:hover {
        -webkit-filter: grayscale(0);
        filter: grayscale(0)
    }
}

.info-case.is-middle .is-lightbox {
    pointer-events: auto
}

.info-case__inner {
    margin: 0;
    background-color: #ffffff;
    position: relative;
    overflow: hidden
}

.info-case__inner.is-small {
    height: 400px
}

.info-case__inner.is-small .info-case__title {
    font-size: 20px;
    max-height: 2.5em;
    overflow: hidden
}

.info-case__inner.is-middle, .info-case__inner.is-regular {
    height: 515px
}

.info-case__inner.is-big {
    height: 670px
}

.info-case__inner.is-huge {
    height: 770px
}

.info-case__inner.is-big .info-case__button .site-button {
    justify-content: end;
}

@media all and (max-width: 767px) {
    .info-case__inner.is-big .info-case__button .site-button {
        justify-content: start;
    }
}

.info-case__inner.is-middle .info-case__info, .info-case__inner.is-middle .info-case__pre {
    padding: 50px 65px
}

.info-case__inner.is-regular .info-case__info, .info-case__inner.is-regular .info-case__pre, .info-case__inner.is-small .info-case__info, .info-case__inner.is-small .info-case__pre {
    padding: 32px
}

.info-case__inner.is-big .info-case__info, .info-case__inner.is-big .info-case__pre, .info-case__inner.is-huge .info-case__info, .info-case__inner.is-huge .info-case__pre {
    padding: 60px 60px 60px 80px
}

.info-case__inner.is-inform .info-case__info {
    width: 100%;
    background-color: rgba(255, 255, 255, .75);
    display: flex;
    flex-direction: column;
    justify-content: flex-end
}

.info-case__inner.is-inform .info-case .typography p, .info-case__inner.is-inform .info-case__position, .info-case__inner.is-inform .info-case__title {
    color: #040404
}

.info-case__inner.is-inform .info-case__button {
    display: none;
    justify-content: flex-end
}

.info-case__inner.is-inform:hover .info-case .typography p, .info-case__inner.is-inform:hover .info-case__position, .info-case__inner.is-inform:hover .info-case__title {
    color: #ffffff
}

.info-case__inner.is-inform:hover .info-case__title {
    max-height: initial
}

.info-case__inner.is-inform:hover .info-case__button {
    display: flex
}

.info-case__inner.is-media .info-case__info {
    transform: translateY(100%);
    transition: transform .25s .25s, background-color .25s .5s
}

.info-case__inner.is-media .info-case__info > * {
    opacity: 0;
    transition: opacity .25s
}

.info-case__inner.is-media.horizontal .info-case__info {
    transform: translateY(100%)
}

.info-case__inner.is-media.vertical .info-case__info {
    transform: translateX(-100%)
}

.info-case__inner.is-media:hover .info-case__info {
    transform: translateY(0%);
    transition: transform .25s
}

.info-case__inner.is-media:hover .info-case__info > * {
    opacity: 1;
    transition: opacity .25s .25s
}

.info-case__inner:hover .info-case__info {
    background-color: rgba(255, 0, 0, .9)
}

.info-case__inner:hover .info-case__hidden {
    display: block
}

.info-case__inner:hover .info-case__picture:not(.no-filter) {
    opacity: 1
}

@supports ((-webkit-filter:grayscale(1)) or (filter:grayscale(1))) {
    .info-case__inner:hover .info-case__picture:not(.no-filter) {
        -webkit-filter: grayscale(0);
        filter: grayscale(0)
    }
}

.info-case__inner:hover .info-case__pre {
    opacity: 0;
    transition: opacity .25s
}

.info-case__inner:not(.dc) {
    display: block
}

.info-case__picture {
    position: absolute;
    width: 100%;
    height: 100%;
    transition: opacity .25s, filter .25s;
    transition: opacity .25s, filter .25s, -webkit-filter .25s
}

.info-case__picture:not(.no-filter) {
    opacity: .35
}

@supports ((-webkit-filter:grayscale(1)) or (filter:grayscale(1))) {
    .info-case__picture:not(.no-filter) {
        -webkit-filter: grayscale(1);
        filter: grayscale(1)
    }
}

.info-case__picture:not(.no-filter).is-brightness {
    opacity: 1
}

@supports ((-webkit-filter:grayscale(1)) or (filter:grayscale(1))) {
    .info-case__picture:not(.no-filter).is-brightness {
        -webkit-filter: grayscale(1);
        filter: grayscale(1)
    }
}

.info-case__picture.small-opacity {
    opacity: .8
}

.info-case__picture img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.info-case__info {
    position: absolute;
    z-index: 2;
    left: 0;
    bottom: 0
}

.header.is-opened .language__item a, .info-case .typography, .info-case__position, .info-case__title {
    color: #ffffff
}

.info-case .typography p {
    font-family: 'lato-regular', 'Open Sans', sans-serif;
    font-weight: 400
}

.info-case__title + .block-cat, .info-case__title + .block-cat + .info-case__button, .info-case__title + .info-case__button, .info-case__title + .info-case__position + .info-case__hidden {
    padding: 20px 0 0
}

.info-case__hidden {
    display: none
}

.info-case__pre {
    position: absolute;
    z-index: 1;
    background-color: rgba(0, 0, 0, .8);
    color: #ffffff;
    font-size: 25px;
    transition: opacity .25s .25s
}

.info-case__pre.dc {
    align-content: flex-end
}

.info-case .block-cat {
    margin: 0
}

.info-case .site-button {
    padding: 0;
    font-size: 14px
}

.info-case .horizontal.is-middle .info-case__info, .info-case .horizontal.is-regular .info-case__info, .info-case .horizontal.is-small .info-case__info {
    height: auto;
    min-height: 160px
}

.info-case .horizontal.is-big .info-case__info, .info-case .horizontal.is-huge .info-case__info {
    height: 250px
}

.info-case .horizontal .info-case__info, .info-case .horizontal .info-case__pre {
    width: 100%
}

.info-case .horizontal .info-case__pre {
    padding-bottom: 70px
}

.info-case .horizontal .info-case__info.dc {
    flex-wrap: wrap;
    justify-content: flex-end
}

@supports (display:grid) {
    .info-case .horizontal .info-case__info.dc {
        flex-wrap: nowrap;
        grid-template:1fr auto/repeat(2, 1fr)
    }

    @media all and (max-width: 767px) {
        .info-case .horizontal .info-case__info.dc {
            grid-template:1fr auto/minmax(0, 1fr)
        }
    }
}

.info-case .horizontal .info-case__title {
    display: block;
    width: 100%
}

@supports (display:grid) {
    .info-case .horizontal .info-case__title {
        grid-column: 1/3;
        max-width: 500px
    }

    @media all and (max-width: 767px) {
        .info-case .horizontal .info-case__title {
            grid-column: 1/2
        }
    }
}

.info-case .horizontal .info-case__title + .info-case__button {
    grid-column: 1/3
}

.info-case .vertical .info-case__info, .info-case .vertical .info-case__pre {
    max-width: 560px;
    width: 100%;
    height: 100%
}

.info-case .vertical .info-case__pre {
    padding-bottom: 80px
}

.info-case .vertical .info-case__info {
    flex-direction: column;
    justify-content: space-between
}

.info-case .vertical .info-case__title {
    max-width: 250px;
    align-self: flex-start
}

@supports (display:grid) {
    .info-case .vertical .info-case__title {
        align-self: center
    }
}

.tile {
    margin: 0 -15px
}

@supports (display:grid) {
    .tile {
        margin: 0
    }
}

@supports (display:grid) {
    .tile__content {
        flex-wrap: nowrap !important
    }
}

.tile__content.horizontal .tile__item {
    width: 100%;
    margin: 0 0 30px
}

@supports (display:grid) {
    .tile__content.horizontal .tile__item {
        padding: 0;
        width: auto !important;
        max-width: initial !important;
        margin: 0 !important
    }
}

@supports (display:grid) {
    .tile__content.horizontal {
        gap: 30px;
        grid-template-columns:repeat(5, 1fr)
    }

    @media all and (max-width: 1365px) {
        .tile__content.horizontal {
            grid-template-columns:repeat(3, 1fr)
        }
    }@media all and (max-width: 767px) {
    .tile__content.horizontal {
        grid-template-columns:repeat(2, 1fr)
    }
}@media all and (max-width: 639px) {
    .tile__content.horizontal {
        grid-template-columns:repeat(1, 1fr)
    }
}
}

.tile__content.vertical {
    flex-direction: column;
    gap: 2px
}

.tile__content.vertical .tile__item {
    margin: 0 0 2px
}

@supports (display:grid) {
    .tile__content.vertical .tile__item {
        margin: 0 !important
    }
}

.tile__item {
    flex-grow: 1;
    padding: 0 15px
}

@supports (display:grid) {
    .tile__item {
        padding: 0
    }
}

.bg-layer, .tile__inner {
    width: 100%
}

.tile .tns-outer {
    width: auto;
    margin: 0 5px
}

@supports (display:grid) {
    .tile .tns-outer {
        margin: 0 -10px;
        width: auto
    }
}

.bg-layer {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    height: 100%;
    transition: opacity .25s;
    pointer-events: none
}

.bg-layer.gray {
    background-color: #f8f8f8
}

.bg-layer.dark-gray {
    background-color: #cccccc
}

.bg-layer.red {
    background-color: red
}

.bg-layer.dark {
    background-color: rgba(4, 4, 4, .75)
}

.bg-video {
    z-index: 0
}

.bg-video.no-left .container, .bg-video.no-left .strict-container {
    padding-left: 0
}

.bg-video.no-right .container, .bg-video.no-right .strict-container {
    padding-right: 0
}

.bg-video, .bg-video__inner {
    position: relative
}

.bg-video__inner video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

@supports (display:grid) {
    .event-view {
        grid-template-columns:280px auto;
        gap: 5vw
    }

    @media all and (max-width: 767px) {
        .event-view {
            grid-template-columns:1fr;
            gap: 50px
        }
    }
}

.event-view__view {
    width: 280px;
    min-height: 380px;
    display: flex;
    align-items: flex-start;
    justify-content: center
}

@supports (display:grid) {
    .event-view__view {
        width: auto;
        margin: 0 !important
    }
}

.event-view__view:hover .plus {
    opacity: 1
}

.event-view__view .plus {
    background-color: red;
    width: 60px;
    height: 60px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    opacity: 0;
    transition: opacity .25s
}

.event-view__view .plus::after, .event-view__view .plus::before {
    width: 50%
}

.event-view__image {
    position: relative;
    cursor: pointer;
    overflow: hidden;
    display: inline-block;
    height: 380px
}

.event-view__image picture {
    width: 100%;
    height: 100%
}

.event-view__image img {
    -o-object-position: 50% 0;
    object-position: 50% 0
}

.event-view__content {
    flex-direction: column;
    justify-content: space-between;
    flex-basis: 0;
    flex-grow: 1;
    padding: 0 0 0 5vw;
    position: relative
}

@supports (display:grid) {
    .event-view__content {
        grid-template-rows:1fr auto;
        flex-basis: unset;
        flex-grow: unset;
        padding: 0
    }
}

.event-view__content .typography {
    padding: 0 100px 0 0;
    margin: 0 0 100px
}

.event-view .block-cat {
    padding: 0 150px 0 0;
    margin: 0
}

.event-view .block-cat__item {
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700
}

@supports (display:grid) {
    .slider-cells__wrapper {
        grid-template-columns:160px minmax(0, 1060px);
        gap: 110px
    }

    @media all and (max-width: 1499px) {
        .slider-cells__wrapper {
            grid-template-columns:160px minmax(0, 670px)
        }
    }@media all and (max-width: 1365px) {
    .slider-cells__wrapper {
        grid-template-columns:160px minmax(0, 1fr)
    }
}@media all and (max-width: 1023px) {
    .slider-cells__wrapper {
        gap: 60px
    }
}@media all and (max-width: 767px) {
    .slider-cells__wrapper {
        gap: 20px;
        grid-template-columns:100px minmax(0, 100%)
    }
}
}

@supports (display:grid) {
    .slider-cells__wrapper.reverse {
        grid-template-columns:minmax(0, 100%) 325px;
        gap: 15px
    }

    @media all and (max-width: 1499px) {
        .slider-cells__wrapper.reverse {
            grid-template-columns:minmax(0, 100%) 325px
        }
    }@media all and (max-width: 1023px) {
    .slider-cells__wrapper.reverse {
        grid-template-columns:minmax(0, 100%) 250px
    }
}@media all and (max-width: 767px) {
    .slider-cells__wrapper.reverse {
        grid-template-columns:minmax(0, 100%) 110px;
        gap: 10px
    }
}
}

.slider-cells__wrapper.reverse .slider-cells__view {
    order: 1;
    padding: 0 10px 0 0
}

@supports (display:grid) {
    .slider-cells__wrapper.reverse .slider-cells__view {
        padding: 0
    }
}

.slider-cells__wrapper.reverse .slider-cells__navigation {
    order: 2;
    margin: -10px 0
}

.slider-cells__wrapper.reverse .slider-cells__navigation > .tns-outer {
    height: auto
}

.slider-cells__wrapper.reverse .slider-cells__dot {
    width: 325px;
    height: 173px;
    padding: 10px 0;
    display: block
}

.bg-video__inner video, .slider-cells__wrapper.reverse .slider-cells__dot img {
    -o-object-fit: cover;
    object-fit: cover
}

.slider-cells__arrows {
    padding: 0 0 0 270px;
    margin: 0 0 80px
}

.slider-cells__view {
    padding: 0 0 0 110px;
    flex-grow: 1;
    width: 100%
}

@supports (display:grid) {
    .slider-cells__view {
        padding: 0 !important;
        width: auto !important
    }
}

.slider-cells__dot {
    width: 160px;
    height: 100px;
    padding: 15px 10px;
    opacity: 1;
    transition: opacity .15s, filter .15s;
    transition: opacity .15s, filter .15s, -webkit-filter .15s;
    cursor: pointer
}

@supports ((-webkit-filter:grayscale(1)) or (filter:grayscale(1))) {
    .slider-cells__dot {
        -webkit-filter: grayscale(1);
        filter: grayscale(1)
    }
}

.slider-cells__dot:hover {
    opacity: 1
}

@supports ((-webkit-filter:grayscale(0)) or (filter:grayscale(0))) {
    .slider-cells__dot:hover {
        -webkit-filter: grayscale(0);
        filter: grayscale(0)
    }
}

.event-view__image img, .slider-cells__dot img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    object-position: center;
}

.inform .net g, .slider-cells__dot.is-middle {
    opacity: 1
}

@supports ((-webkit-filter:grayscale(0)) or (filter:grayscale(0))) {
    .slider-cells__dot.is-middle {
        -webkit-filter: grayscale(0);
        filter: grayscale(0)
    }
}

@supports ((-webkit-filter:grayscale(0)) or (filter:grayscale(0))) {
    .slider-cells__dot.is-middle.is-brightness {
        -webkit-filter: grayscale(0) brightness(50%);
        filter: grayscale(0) brightness(50%)
    }
}

.slider-cells__picture {
    margin: 0 0 70px;
    position: relative;
    z-index: 1
}

.slider-cells__picture:last-child {
    margin: 0
}

.slider-cells__picture img {
    width: 100%;
    height: 500px;
    -o-object-fit: cover;
    object-fit: cover
}

.slider-cells__picture .play-button {
    z-index: 3
}

.slider-cells__picture .play-button + .slider-cells__layer {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .35)
}

.slider-cells__info {
    align-items: center
}

@supports (display:grid) {
    .slider-cells__info {
        grid-template-columns:auto 1fr
    }

    @media all and (max-width: 767px) {
        .slider-cells__info {
            grid-template-columns:1fr
        }
    }
}

.slider-cells__icon {
    margin: 0 60px 0 0
}

.slider-cells__icon img {
    height: 55px;
    -o-object-fit: contain;
    object-fit: contain
}

.slider-cells .slider__slide {
    position: relative;
    overflow: hidden
}

.slider-cells .slider__slide.no-padding {
    padding: 0
}

.filter-list {
    margin: 0 0 50px;
    position: relative;
    z-index: 3
}

.filter-list__input {
    display: none
}

.filter-list__input:checked + .filter-list__inner {
    display: flex
}

.filter-list__mobile {
    display: none;
    padding: 10px 30px 10px 0;
    cursor: pointer;
    color: red;
    width: auto;
    position: relative;
    text-transform: uppercase;
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 13px
}

.filter-list__mobile::after {
    content: "";
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-90%) rotate(-45deg);
    width: 8px;
    height: 8px;
    border-left: 2px solid #040404;
    border-bottom: 2px solid #040404
}

.filter-list__inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    position: relative
}

.filter-list__inner.is-end {
    justify-content: flex-end
}

.filter-list__item {
    border: 0;
    background-color: transparent;
    padding: 0 0 15px;
    text-transform: uppercase;
    font-size: 13px;
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700;
    border-bottom: 1px solid transparent;
    transition: color .25s;
    margin: 0 70px 0 0
}

.filter-list__item:last-child {
    margin: 0
}

.filter-list__item:hover, .header.is-opened .language__item a:hover, .language__item a:hover {
    color: red
}

.filter-list__item.is-active {
    color: red;
    border-bottom: 1px solid red
}

.service-list__item {
    position: relative;
    padding: 0 0 0 140px;
    margin: 0 0 60px
}

.service-list__item:last-child {
    margin: 0
}

.service-list__item h2 {
    margin: 0 0 35px
}

.service-list__dot {
    position: absolute;
    top: 20px;
    left: 0
}

.service-list__dot svg {
    fill: red;
    width: 45px;
    height: 25px
}

.is-projects .tns-outer {
    width: auto;
    margin: 0 -100px
}

.is-projects.middle.slider::before {
    bottom: 50%;
    transform: translateY(50%)
}

.is-projects.slider {
    position: relative
}

.is-projects.slider::before {
    content: "";
    position: absolute;
    z-index: 1;
    bottom: 250px;
    left: 0;
    width: 100%;
    height: 1px;
    transform: translateY(100%);
    display: block;
    background-color: red
}

.is-projects.slider__slide {
    position: relative;
    z-index: 0
}

.is-projects.slider__slide.is-middle {
    z-index: 1
}


.language {
    display: none;
}

.header.is-opened .language, .header.is-opened {
    display: block;
}

.language__item {
    margin: 0 30px 0 0
}

.language__item.not-active {
    cursor: not-allowed;
    opacity: .5
}

.language__item:last-child {
    margin: 0
}

.language__item a {
    color: #040404;
    transition: color .25s;
    font-size: 18px;
}

.burger {
    position: relative;
    display: block;
    width: 45px;
    height: 45px;
    border: 0;
    background-color: transparent
}

.burger__line {
    position: absolute;
    left: 0;
    width: 100%;
    height: 10px;
    background-color: red;
    transition: all .25s
}

.burger__line:first-child {
    top: 0
}

.burger__line:last-child {
    bottom: 0
}

.burger__line:nth-child(2) {
    top: 50%;
    transform: translateY(-50%)
}

.burger.is-opened .burger__line {
    top: 40%;
    left: 0;
    bottom: auto
}

.burger.is-opened .burger__line:first-child {
    transform: rotate(45deg) translateY(0%)
}

.burger.is-opened .burger__line:last-child {
    transform: rotate(-45deg) translateY(0%)
}

.burger.is-opened .burger__line:nth-child(2) {
    opacity: 0
}

.is-opened .net path, .on-viewport .net path, .thanks.is-opened .net path {
    -webkit-animation-play-state: running;
    animation-play-state: running
}

.is-opened .animated-title > span > span, .on-viewport .animated-title > span > span, .on-viewport > .animated-title > span > span {
    transform: translateY(0)
}

.animated-title > span {
    overflow: hidden;
    line-height: .9;
    font-size: inherit
}

.animated-title > span > span {
    transform: translateY(120%);
    transition: transform .55s .25s;
    line-height: .8;
    font-size: inherit
}

.animated-title span {
    display: inline-block
}

.header {
    position: fixed;
    z-index: 3;
    width: 100%;
    background-color: #f8f8f8
}

.header.is-opened .header__content-wrapper {
    -webkit-animation: fromOpacity .5s 1 forwards;
    animation: fromOpacity .5s 1 forwards
}

.header__container {
    flex-direction: column
}

.header__menu, .header__modal {
    position: relative;
    display: none
}

.header__menu .os-scrollbar.os-scrollbar-horizontal, .header__menu .os-scrollbar.os-scrollbar-vertical {
    display: none !important
}

.header__menu .header__content-wrapper {
    display: flex;
    justify-content: space-between
}

.header__menu .header__scroll-container {
    overflow-y: auto;
    width: calc(100% - 60px);
    height: 100%
}

.header__menu-inner {
    display: flex
}

.header__modal .header__content-wrapper {
    margin: 0 -130px;
    overflow: auto
}

@supports (display:grid) {
    .header__modal .header__content-wrapper {
        grid-template-columns:repeat(2, 1fr);
        gap: 260px;
        margin: 0
    }

    @media all and (max-width: 1499px) {
        .header__modal .header__content-wrapper {
            gap: 150px
        }
    }@media all and (max-width: 1365px) {
    .header__modal .header__content-wrapper {
        gap: 100px
    }
}@media all and (max-width: 1023px) {
    .header__modal .header__content-wrapper {
        grid-template-columns:1fr;
        gap: 0
    }
}
}

.header__modal .header__block {
    width: 50%;
    padding: 0 130px
}

@supports (display:grid) {
    .header__modal .header__block {
        width: auto;
        padding: 10vh 0 60px
    }

    .header__modal .header__block:last-child {
        padding: calc(10vh + 120px) 0 60px
    }

    @media all and (max-width: 1023px) {
        .header__modal .header__block {
            padding: 50px 0
        }

        .header__modal .header__block:last-child {
            padding: 0 0 50px
        }
    }
}

.header__modal .block-title, .header__modal .exponic__head {
    color: #ffffff
}

.header__modal .block-title h2, .header__modal .exponic__head h2 {
    font-size: 50px;
    margin: 0 0 50px
}

.header__modal .exponic__head {
    margin: 0 0 70px
}

.header__modal .exponic__head::after {
    background-color: #ffffff
}

.header__modal .typography {
    color: red
}

.header__modal .form {
    max-width: 515px;
    width: 100%
}

.header__modal .form__inner {
    justify-content: flex-end
}

.header__modal .form__checker {
    background-color: #f8f8f8
}

.header__modal .form__button {
    display: flex;
    justify-content: flex-end
}

@supports (display:grid) {
    .header__modal .form__button {
        align-self: flex-end;
        grid-column: 1/3
    }

    @media all and (max-width: 1023px) {
        .header__modal .form__button {
            grid-row: 4/5
        }
    }
}

.header__modal .form__button .site-button {
    min-width: 200px;
    width: auto
}

.header__content-wrapper {
    padding-bottom: 50px;
    height: calc(100vh - 145px);
    opacity: 0
}


.header__cat:hover .header__cat-title, .header__navigation-item.is-active .header__navigation-title, .header__navigation-item:hover .header__navigation-title {
    color: red
}

.header__cats {
    max-width: 480px;
    width: 100%
}

@supports (display:grid) {
    @media all and (max-width: 1023px) {
        .header__cats {
            grid-row: 2/3
        }
    }
}

.header__cat {
    margin: 0 0 30px;
    width: 100%;
    display: inline-block
}

.header__cat:last-child {
    margin: 0
}

.header__cat-img {
    width: 100%;
    height: 320px;
    position: relative;
    margin: 0 0 20px
}

@supports ((-webkit-filter:grayscale(1)) or (filter:grayscale(1))) {
    .header__cat-img {
        -webkit-filter: grayscale(1);
        filter: grayscale(1)
    }
}

.header__cat-img picture {
    position: absolute;
    width: 100%;
    height: 100%
}

.header__cat-img img, .hero .net svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.header__cat-title {
    color: #ffffff;
    font-size: 32px;
    font-family: 'lato-light', 'Open Sans', sans-serif;
    margin: 0 0 10px;
    transition: color .25s
}

.header__cat .block-cat {
    margin: 0
}

.header__navigation {
    padding: 75px 40px 75px 140px;
    width: 100%
}

@supports (display:grid) {
    @media all and (max-width: 1023px) {
        .header__navigation {
            grid-row: 1/2
        }
    }
}

.header__navigation-list {
    flex-wrap: wrap
}

@supports (display:grid) {
    .header__navigation-list {
        flex-wrap: nowrap
    }
}

.header__navigation-item {
    margin: 0 0 70px;
    max-width: 50%;
    width: 100%
}

@supports (display:grid) {
    .header__navigation-item {
        max-width: initial
    }
}

.header__navigation-item:nth-child(2n-1) {
    padding: 0 35px 0 0
}

.header__navigation-item:nth-last-child(1), .header__navigation-item:nth-last-child(2) {
    margin: 0
}

.header__navigation-title {
    color: #ffffff;
    font-size: 52px;
    font-family: 'lato-light', 'Open Sans', sans-serif;
    transition: color .25s
}

@supports (display:grid) {
    .header__navigation-list {
        grid-template:repeat(2, 1fr)/repeat(2, 1fr)
    }

    @media all and (max-width: 767px) {
        .header__navigation-list {
            grid-template:1fr/1fr
        }
    }
}

.header__navigation .block-cat {
    margin: 0
}

.header .container, .header .strict-container {
    position: relative;
    z-index: 1
}

.header .language {
    margin: 0 100px 0 0
}

.header .language__list {
    display: flex
}

.header .slider__counter {
    width: 100px;
    background-color: transparent
}

.header .net, .hero .slider__slide::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.hero {
    overflow: visible
}

.hero .container {
    padding-right: 0
}

.hero .net {
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% + 400px)
}

.hero .block-wrapper {
    position: relative;
    width: 100%;
    padding: 0 0 95px
}

.hero .block-title {
    margin: 0 0 65px
}

.hero .block-title h1, .intro__body .service-list h2 {
    font-size: 60px
}

.hero .block-content {
    height: 100%
}

@supports (display:grid) {
    .hero .block-content {
        grid-template-columns:calc(35% - 70px) calc(65% - 70px) 140px
    }

    @media all and (max-width: 1499px) {
        .hero .block-content {
            grid-template-columns:calc(40% - 35px) calc(60% - 35px) 70px
        }
    }@media all and (max-width: 767px) {
    .hero .block-content {
        flex-wrap: nowrap;
        grid-template:auto 300px/1fr 50px
    }
}@media all and (max-width: 479px) {
    .hero .block-content {
        grid-template:auto 240px/1fr 50px
    }
}
}

.hero__content {
    width: calc(35% - 70px);
    padding: 80px 60px 80px 0;
    flex-direction: column;
    align-self: center
}

@supports (display:grid) {
    .hero__content {
        width: auto !important
    }

    @media all and (max-width: 767px) {
        .hero__content {
            grid-column: 1/3
        }
    }
}

.hero__dots {
    position: absolute;
    left: 0;
    bottom: 0
}

.hero__media {
    width: calc(65% - 70px)
}

@supports (display:grid) {
    .hero__media {
        width: auto !important;
        grid-template:1fr/minmax(100px, 160px) repeat(auto-fit, minmax(100px, 1fr))
    }

    @media all and (max-width: 1499px) {
        .hero__media {
            grid-template:1fr/minmax(80px, 100px) repeat(auto-fit, minmax(100px, 1fr))
        }
    }@media all and (max-width: 1365px) {
    .hero__media {
        grid-template:1fr/minmax(80px, 80px) repeat(auto-fit, minmax(100px, 1fr))
    }
}@media all and (max-width: 1023px) {
    .hero__media {
        grid-template:1fr/minmax(60px, 60px) repeat(auto-fit, minmax(100px, 1fr))
    }
}@media all and (max-width: 767px) {
    .hero__media {
        grid-row: 2/3;
        grid-column: 1/2
    }
}
}

.hero__navigation {
    position: relative;
    z-index: 2;
    flex-direction: column;
    max-width: 160px;
    width: 100%
}

@supports (display:grid) {
    .hero__navigation {
        width: auto !important;
        max-width: initial !important;
        grid-template:160px auto 160px/1fr
    }

    @media all and (max-width: 1499px) {
        .hero__navigation {
            grid-template:120px auto 100px/1fr
        }
    }@media all and (max-width: 1365px) {
    .hero__navigation {
        grid-template:80px auto 80px/1fr
    }
}@media all and (max-width: 1023px) {
    .hero__navigation {
        grid-template:30px auto 60px/1fr
    }
}
}

.hero__arrows {
    background-color: #f8f8f8;
    height: 55%;
    width: 100%
}

.footer-list li, .hero__arrows .slider__prev {
    margin: 0 0 5px
}

@supports (display:grid) {
    .hero__arrows {
        grid-row: 2/3;
        align-items: center;
        align-content: center;
        height: 100%
    }

    .hero__arrows .slider__prev {
        margin: 0
    }
}

.hero__counter {
    width: 100%;
    align-self: flex-end
}

@supports (display:grid) {
    .hero__counter {
        width: auto;
        grid-row: 3
    }
}

.hero__counter .slider__counter {
    transform: translateX(100%);
    width: auto
}

@supports (display:grid) {
    .hero__counter .slider__counter {
        width: 160px
    }

    @media all and (max-width: 1499px) {
        .hero__counter .slider__counter {
            width: 100px
        }
    }@media all and (max-width: 1365px) {
    .hero__counter .slider__counter {
        width: 80px
    }
}@media all and (max-width: 1023px) {
    .hero__counter .slider__counter {
        width: 60px
    }
}
}

.hero__slider {
    position: relative;
    z-index: 1;
    width: 100%
}

.hero__side {
    max-width: 140px;
    width: 100%;
    justify-content: space-between;
    transform: rotateZ(180deg);
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl
}

.hero__text {
    display: block;
    width: 70%
}

@supports (display:grid) {
    .hero__side {
        grid-template-columns:repeat(2, 1fr)
    }
}

.hero__side .exponic__since, .hero__side .exponic__year {
    display: block;
    height: 50%;
    padding: 70px 0
}

@supports (display:grid) {
    .hero__side .exponic__since, .hero__side .exponic__year {
        height: auto
    }
}

.hero .slider {
    display: block;
    width: 100%;
    height: 100%
}

.hero .slider__slide {
    width: inherit;
    height: inherit;
    background-color: #ffffff;
    position: relative
}

.hero .slider__slide::after {
    content: "";
    background-color: rgba(248, 248, 248, .75)
}

@supports ((-webkit-filter:grayscale(1)) or (filter:grayscale(1))) {
    .hero .slider__slide::after {
        display: none
    }
}

.hero .slider__slide iframe, .hero .slider__slide img, .hero .slider__slide video {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@supports ((-webkit-filter:grayscale(1)) or (filter:grayscale(1))) {
    .hero .slider__slide iframe, .hero .slider__slide img, .hero .slider__slide video {
        opacity: .35;
        -webkit-filter: grayscale(1);
        filter: grayscale(1)
    }
}

.hero .play-button {
    z-index: 2
}

.pool {
    position: relative
}

.pool .block-title, .pool .pool__slider {
    max-width: 570px;
    width: 100%
}

@supports (display:grid) {
    .pool .block-title, .pool .pool__slider {
        max-width: initial !important
    }
}

.pool .block-content {
    padding: 90px 70px 150px 0;
    flex-direction: column;
    position: relative
}

.pool .block-title {
    align-self: center
}

.pool__bg {
    position: absolute;
    z-index: 0;
    right: 0;
    top: 0;
    width: 100vw;
    height: 100%;
    background-color: #f8f8f8
}

.pool__counter {
    flex-grow: 1
}

@supports (display:grid) {
    .pool__counter {
        flex-grow: initial
    }
}

.pool__counter .slider__counter {
    transform: translateX(70px)
}

.pool__content {
    position: relative
}

.pool__content::after, .pool__content::before {
    content: "";
    position: absolute;
    top: 50%;
    z-index: 0;
    width: 10vw;
    height: 1px;
    display: block;
    background-color: red
}

.pool__content::before {
    right: 100%;
    transform: translate(-100px, -50%)
}

.pool__content::after {
    left: 100%;
    transform: translate(120px, -50%)
}

@supports (display:grid) {
    .pool__content {
        grid-template-columns:repeat(2, 570px) 1fr
    }

    @media all and (max-width: 1499px) {
        .pool__content {
            grid-template-columns:repeat(2, 400px) 1fr
        }
    }@media all and (max-width: 1365px) {
    .pool__content {
        grid-template-columns:repeat(2, 1.5fr) 1fr
    }
}@media all and (max-width: 1023px) {
    .pool__content {
        grid-template-columns:repeat(2, 1fr) 0
    }
}@media all and (max-width: 767px) {
    .pool__content {
        grid-template:auto auto/1fr 0
    }
}
}

.pool__slider {
    position: relative
}

.pool__slider .question {
    margin: 0 0 30px
}

.pool__slider .question__wr {
    max-width: 400px;
    padding: 0 0 0 100px
}

.pool .pulsar {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.pool .slider, .pool .slider__slide, .pool .slider__slide-wr {
    height: 100%
}

.inform .net {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 75%
}

.inform .block-running-title {
    margin: 0 0 120px
}

.inform .block-title {
    max-width: 1050px
}

.inform .block-wrapper {
    padding: 0 8vw 0 0
}

.inform .block-wrapper.no-padding, .inform__head + .inform__result {
    padding: 0
}

.inform__head {
    padding: 0 0 80px
}

.inform__body.is-reverse {
    justify-content: space-between
}

.inform__body.is-reverse .inform__main {
    width: 70%;
    padding: 0 5vw 0 0
}

@supports (display:grid) {
    .inform__body.is-reverse .inform__main {
        width: auto !important
    }
}

.inform__body.is-reverse .inform__side {
    width: 30%;
    padding: 0;
    justify-content: space-around;
    text-align: center
}

@supports (display:grid) {
    .inform__body.is-reverse .inform__side {
        width: auto !important
    }
}

.inform__body.is-reverse .inform__side .button {
    padding: 80px 0 0
}

@supports (display:grid) {
    .inform__body.is-reverse {
        grid-template-columns:1fr minmax(400px, 30%)
    }

    @media all and (max-width: 1023px) {
        .inform__body.is-reverse {
            grid-template-columns:1fr 1fr
        }
    }@media all and (max-width: 767px) {
    .inform__body.is-reverse {
        grid-template-columns:1fr
    }
}
}

@supports (display:grid) {
    .inform__body.for-stats {
        grid-template-columns:minmax(350px, 25%) 1fr
    }

    @media all and (max-width: 1365px) {
        .inform__body.for-stats {
            grid-template-columns:minmax(350px, 35%) 1fr
        }
    }@media all and (max-width: 767px) {
    .inform__body.for-stats {
        grid-template:auto/1fr
    }
}
}

.inform__side {
    position: relative;
    padding: 120px 0
}

.inform__side.with-bg::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #f8f8f8
}

.inform__side.is-left {
    width: 30%
}

@supports (display:grid) {
    .inform__side.is-left {
        width: auto !important
    }
}

.inform__side.is-left::before {
    width: 60vw;
    right: 0;
    left: auto
}

.inform__side.is-left + .inform__main {
    width: 70%;
    padding: 120px 0 120px 8vw
}

@supports (display:grid) {
    .inform__side.is-left + .inform__main {
        width: auto !important;
        grid-template-rows:1fr auto
    }
}

.inform__side.vertical {
    padding-right: 90px;
    flex-direction: column
}

.inform__side .stats {
    max-width: 300px;
    margin: 0 0 65px
}

.inform__side .stats:last-child {
    margin: 0
}

.inform__main {
    flex-direction: column
}

.inform__stats {
    position: relative;
    z-index: 1
}

.inform__result {
    margin: auto 0 0;
    padding: 40px 0 0;
    justify-content: space-between
}

.inform__result p {
    color: red;
    font-size: 24px;
    font-family: 'lato-black', 'Open Sans', sans-serif;
    padding: 0 50px 0 0
}

@supports (display:grid) {
    .inform__result {
        grid-template-columns:auto 200px
    }

    @media all and (max-width: 1365px) {
        .inform__result {
            grid-template-columns:1fr
        }
    }
}

.inform .pulsar {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.inform__footer .tns-outer {
    width: auto;
    margin: 0 -20px
}

.inform__navigation {
    margin: 0 0 25px
}

.media .block-head.is-short {
    max-width: 1280px
}

.media__body, .show {
    position: relative
}

.media__body > .tns-outer {
    width: auto;
    margin: 0 -150px
}

.show .block-wrapper {
    padding: 0 8vw 0 0
}

.show .slider, .show__footer {
    position: relative;
    z-index: 1
}

.show__footer {
    z-index: 2;
    margin: -65px 0 0 auto;
    width: calc((100% - 280px - 5vw) / 2)
}

@supports (display:grid) {
    .show__footer {
        grid-template-columns:repeat(2, auto)
    }
}

.show .block-icon {
    position: absolute;
    bottom: 0;
    right: 0;
    transform: translateY(35px)
}

.show .block-icon svg {
    fill: #040404
}

@supports (display:grid) {
    .request__body {
        grid-template-columns:1fr 500px;
        gap: 150px
    }

    @media all and (max-width: 1365px) {
        .request__body {
            grid-template-columns:1fr;
            gap: 100px
        }
    }
    @media all and (max-width: 767px) {
        .request__body {
            gap: 0;
            padding: 40px 0;
        }
    }
}

.request__content {
    width: 65%;
    padding: 0 50px 0 0
}

@supports (display:grid) {
    .request__content {
        width: auto !important
    }
}

.request__form {
    width: 35%
}

@supports (display:grid) {
    .request__form {
        width: auto !important
    }
}

.intro .block-content {
    flex-direction: column
}

@supports (display:grid) {
    .intro .block-grid {
        grid-template:repeat(2, auto)/repeat(2, 1fr);
        gap: 0 40px;
        margin: 0
    }

    @media all and (max-width: 767px) {
        .intro .block-grid {
            grid-template:auto/1fr
        }
    }
}

.intro .block-grid .stats {
    max-width: 50%;
    width: 100%;
    margin: 0 0 130px;
    padding: 0 40px 0 0
}

.intro .block-grid .stats:last-child {
    margin: 0 0 45px
}

@supports (display:grid) {
    .intro .block-grid .stats {
        max-width: initial;
        width: auto;
        padding: 0
    }
}

.intro .block-grid .stats__inner {
    max-width: 420px;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start
}

.intro .block-grid .site-button__show + .button, .intro .block-grid .stats__title {
    margin: 0
}

.intro .block-grid .stats__subtitle {
    margin: 0 0 40px
}

.intro .block-grid .stats__typography {
    margin: 0 0 50px
}

.intro .block-grid .button {
    margin: 70px 0 0
}

.intro .block-grid .site-button__show {
    margin: 0 0 50px;
    align-self: flex-start
}

.intro .block-catalog .block-cat__list {
    display: flex;
    justify-content: center;
    padding: 0 20px
}

.intro .bg-layer {
    width: 65%;
    z-index: 0
}

.intro .bg-layer.is-full {
    width: 100vw;
    left: 50%;
    transform: translateX(-50%)
}

.intro .bg-layer.is-left {
    right: 280px;
    left: auto;
    transform: translateX(0%)
}

.intro .bg-layer.is-services {
    width: 500px;
    height: 100%;
    top: 200px;
    background-color: rgba(122, 122, 122, .25);
    z-index: 0
}

.intro .bg-layer.is-catalog {
    top: auto;
    bottom: 0;
    height: 80%
}

.intro__head {
    padding: 90px 0 0;
    flex-direction: column;
    align-items: center;
    z-index: 1
}

.intro__head.hc {
    text-align: center
}

.intro__head.hc .block-title {
    max-width: 800px
}

.intro__head.hs {
    align-items: flex-start
}

.intro__head, .intro__head-wr {
    position: relative
}

.intro__head-wr .net {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.intro__body {
    z-index: 1
}

.intro__body.is-centered {
    padding-left: 10%
}

.intro__body.padding-right {
    padding-right: 200px
}

.intro__body.padding-right .block-title {
    max-width: 700px
}

.intro__body.no-padding {
    padding: 0
}

.intro__body, .intro__body-wr {
    position: relative
}

.intro__body-wr .net {
    right: 0;
    top: 0;
    width: 35%;
    height: auto
}

.intro__body-wr.is-lightbox .intro__list:last-child {
    margin-bottom: 0
}

.intro__body-wr.is-lightbox .filter-list {
    position: relative;
    z-index: 2
}

.intro__body-wr.is-content {
    overflow: hidden
}

.intro__body-wr.is-content .bg-layer {
    width: 63%
}

.intro__body-wr.is-content .net {
    width: 37%;
    height: 100%
}

.intro__body-wr.is-content .stats__inner {
    text-align: center
}

.intro__body-wr.is-content .stats__descr {
    max-width: 300px
}

.intro__body.is-white {
    color: #ffffff
}

.intro__body .service-list {
    max-width: 900px
}

.intro__body .block-title {
    max-width: 1050px
}

.intro__body .block-icon {
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(0)
}

.intro__cols {
    display: flex;
    justify-content: space-between;
    margin: 0 -20px
}

.intro__cols .typography {
    padding: 0 20px;
    width: 50%
}

.intro__star-info {
    max-width: 600px;
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 14px
}

.intro__video {
    position: relative
}

.intro__video:not(.block-catalog__video) {
    margin: 0 0 130px
}

.intro__video::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .35)
}

.intro__video img, .intro__video video {
    position: relative;
    z-index: 0;
    height: 760px;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    display: block
}

@supports (display:grid) {
    .intro__for-blocks {
        grid-template-columns:2.3fr .7fr;
        gap: 100px
    }

    @media all and (max-width: 1919px) {
        .intro__for-blocks {
            gap: 50px;
            grid-template-columns:2fr .7fr
        }
    }@media all and (max-width: 1279px) {
    .intro__for-blocks {
        grid-template-columns:2fr 1fr
    }
}@media all and (max-width: 767px) {
    .intro__for-blocks {
        grid-template-columns:auto
    }
}
}

.intro__for-blocks .intro__content-block {
    max-width: 850px;
    padding: 0 30px 0 0
}

.intro__for-blocks .intro__stats {
    max-width: 400px;
    width: 100%;
    margin: 0 auto
}

.intro__for-blocks .form {
    max-width: 550px
}

.intro__list {
    margin: 0 0 90px;
    position: relative;
    z-index: 1
}

.intro__list:last-child {
    margin: 0
}

.intro__list .bg-layer {
    width: 100%;
    z-index: 1
}

.intro__slider {
    position: relative
}

.intro__stats.dc {
    flex-wrap: wrap
}

@supports (display:grid) {
    .intro__stats.dc {
        grid-template-columns:repeat(4, 1fr);
        gap: 40px
    }

    @media all and (max-width: 1023px) {
        .intro__stats.dc {
            grid-template-columns:repeat(2, 1fr)
        }
    }@media all and (max-width: 767px) {
    .intro__stats.dc {
        grid-template-columns:1fr
    }
}
}

.intro__stats.dc .stats {
    width: 25%;
    margin: 0 0 40px
}

@supports (display:grid) {
    .intro__stats.dc .stats {
        width: auto !important
    }
}

.intro__stats.dc .stats:nth-last-child(1), .intro__stats.dc .stats:nth-last-child(2) {
    margin: 0
}

.intro__stats.is-vertical .stats {
    margin: 0 0 150px;
    max-width: 600px
}

.intro__row {
    margin: 0 0 25px
}

.intro__contacts .address-block:last-child, .intro__row:last-child {
    margin: 0
}

.intro__contacts {
    max-width: 250px;
    width: 100%;
    margin: 0 auto
}

@supports (display:grid) {
    .intro__contacts {
        max-width: initial;
        margin: 0;
        padding: 0 !important
    }
}

.intro__contacts .address-block {
    margin: 0 0 100px;
    max-width: 250px;
    flex-direction: column
}

.intro__contacts .address-block__title {
    color: red;
    margin: 0 0 20px;
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700
}

.intro__contacts .address-block__links {
    margin: 0 0 20px
}

.intro__contacts .address-block__route {
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700
}

.intro__topic-images {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: -30px
}

.intro__topic-images img {
    width: 100%;
    height: auto
}

.intro__topic-images picture {
    max-width: 50%;
    width: 100%;
    padding: 30px
}

.intro__topic-images picture:first-child {
    margin: 0 0 100px
}

.intro__topic-images picture:last-child {
    margin: 100px 0 0
}

.intro__topic-typography.is-first {
    padding: 0 140px 0 190px
}

.intro__topic-typography.is-line {
    position: relative
}

.intro__topic-typography.is-line::before {
    content: "";
    position: absolute;
    top: 0;
    right: 100%;
    z-index: 0;
    display: block;
    width: 25vw;
    height: 2px;
    background-color: red;
    transform: translateX(20px)
}

.intro .event-view .block-icon {
    top: auto;
    bottom: 0
}

.intro .container {
    z-index: 1
}

.intro .typography:not(.is-full) {
    max-width: 1000px
}

.intro .policy {
    position: relative;
    padding: 0 50px
}

.intro .policy::before {
    content: "";
    position: absolute;
    right: 100%;
    top: 8px;
    width: 25vw;
    height: 1px;
    background-color: red;
    display: block;
    transform: translateX(-100px)
}

.intro .bg-video:not(.no-right) {
    padding-right: 180px
}

.intro .bg-video .bg-layer {
    width: 100%;
    height: 100%;
    z-index: 3
}

.history {
    overflow: hidden
}

.history .strict-container {
    position: relative
}

.history .bg-video {
    position: relative;
    z-index: 1
}

.history .block-title {
    margin: 0 0 50px;
    padding: 0 150px 0 0
}

.history .block-title .block-icon {
    top: 0;
    right: 0;
    transform: translateY(-50%)
}

.history .block-icon {
    position: absolute
}

@supports (display:grid) {
    .history__section {
        grid-template-columns:55% 45%
    }

    @media all and (max-width: 767px) {
        .history__section {
            grid-template-columns:minmax(0, 1fr)
        }
    }
}

.history__content {
    padding: 0 25px 0 0;
    position: relative;
    z-index: 2;
    width: 55%
}

@supports (display:grid) {
    .history__content {
        width: auto !important
    }
}

.history__content .typography {
    margin: 0 0 80px
}

.history__content .block-icon {
    transform: translate(-150px, -50%)
}

.history__picture {
    position: relative;
    margin: 0 0 60px
}

.footer-list li:last-child, .history__picture:last-child, .history__side .stats:last-child {
    margin: 0
}

.history__picture img {
    max-height: 720px
}

.history__picture.is-hide img {
    position: relative;
    max-width: calc(100% + 10vw);
    max-height: 720px;
    -o-object-fit: cover;
    object-fit: cover
}

.history__picture.is-filtered picture {
    -webkit-filter: grayscale(1);
    filter: grayscale(1)
}

.history__decor-block {
    position: relative;
    z-index: 1;
    padding: 0 0 0 2vw
}

.history__decor-block .site-button__show {
    margin: 35px 0 0
}

.history__years {
    margin: -70px 0 0;
    position: relative;
    z-index: 1;
    font-size: 90px;
    line-height: .9;
    font-family: 'lato-black', 'Open Sans', sans-serif;
    color: red
}

.history__side {
    z-index: 1;
    padding: 80px 0 70px 10vw;
    width: 45%
}

@supports (display:grid) {
    .history__side {
        width: auto !important;
        max-width: initial !important
    }
}

.history__side .bg-layer {
    width: 45vw;
    right: -7vw;
    left: auto;
    top: 0;
    height: 1000px
}

.history__side .hide {
    width: 75vw;
    height: 150%
}

.history__side .stats {
    position: relative;
    z-index: 1;
    margin: 0 0 130px
}

.history__bottom {
    padding: 50px 0 0;
    position: relative;
    z-index: 2
}

.history__final {
    color: red;
    margin: 0 0 0 auto;
    max-width: 315px;
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700
}

.history__nav {
    margin: 0 0 80px
}

.history__media {
    position: relative;
    z-index: 1
}

.history__net {
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    background: url(../images/net.svg) repeat top left
}

.thanks {
    position: fixed;
    z-index: 3;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    display: block;
    pointer-events: none;
    opacity: 0;
    transition: opacity .25s;
    background-color: #ffffff
}

.thanks .net path {
    -webkit-animation-play-state: paused;
    animation-play-state: paused
}

.thanks.is-opened {
    opacity: 1;
    pointer-events: auto
}

.thanks__wrapper {
    height: 100vh;
    width: 100%;
    position: relative
}

@supports (min-height:100vh) {
    .thanks__wrapper {
        min-height: 100vh;
        height: auto
    }
}

.thanks__wrapper .net {
    position: absolute;
    z-index: 0;
    width: 100%;
    height: 100%
}

.thanks__wrapper .net path {
    stroke: red
}

.thanks .strict-container {
    position: relative;
    z-index: 1
}

.thanks__container {
    width: 100%;
    height: 100%
}

@supports (display:grid) {
    .thanks__container {
        grid-template-rows:auto 1fr
    }
}

.thanks__head {
    width: 100%;
    padding: 40px 0
}

@supports (display:grid) {
    .thanks__head {
        grid-template-columns:1fr 1fr 1fr;
        grid-template-areas:"logo burger ...";
        gap: 20px
    }

    @media all and (max-width: 1023px) {
        .thanks__head {
            grid-template-areas:"logo burger";
            grid-template-columns:1fr auto
        }
    }
}

.thanks__body {
    width: 100%
}

.thanks__block {
    max-width: 400px;
    width: 100%;
    margin: 0 0 150px;
    text-align: center
}

.thanks__title {
    margin: 0 0 40px;
    font-size: 50px
}

.thanks__subtitle {
    color: red;
    font-size: 24px
}

.thanks__logo {
    grid-area: logo;
    justify-self: flex-start;
    width: 350px;
    height: 60px
}

.thanks__logo img {
    height: 100%;
    width: auto;
    margin: 0 auto 0 0
}

.thanks__burger {
    grid-area: burger
}

.modal:not(.cookies) {
    height: 100vh
}

@supports (min-height:100vh) {
    .modal:not(.cookies) {
        min-height: 100vh;
        height: auto
    }
}

.modal.cookies, .modal.popup {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    display: block;
    pointer-events: none;
    opacity: 0;
    transition: opacity .25s
}

.modal.popup {
    z-index: 3;
    top: 0;
    right: 0;
    height: 100%;
    background-color: rgba(255, 255, 255, .95)
}

.modal.cookies, .modal__close-button {
    z-index: 2;
    height: auto;
    background-color: red
}

.modal.cookies {
    z-index: 9999;
}

.modal.cookies .modal__container {
    position: relative;
    width: 100%;
    height: auto;
    padding: 30px 10%;
    align-items: center
}

@supports (display:grid) {
    .modal.cookies .modal__container {
        grid-template-columns:1fr 200px
    }

    @media all and (max-width: 767px) {
        .modal.cookies .modal__container {
            grid-template-columns: 1fr;
        }
    }
}

.modal.cookies .modal__single {
    padding: 0 85px 0 0;
    color: #ffffff;
    text-align: right
}

.modal.is-red, .modal__close-button:hover::after, .modal__close-button:hover::before {
    background-color: red
}

.modal.is-red .modal__container {
    color: #ffffff;
    padding: 0
}

.modal.is-solo .modal__container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    height: 100%
}

.modal.is-solo .modal__message {
    font-size: 21px;
    font-family: 'lato-regular', 'Open Sans', sans-serif;
    font-weight: 400;
    margin: 0 0 40px
}

.modal.is-solo .modal__404 {
    font-size: 222px;
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700;
    margin: 0 0 60px
}

.modal.is-solo .net {
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%
}

.modal.is-solo .net path, .modal.is-solo .net svg {
    stroke: #ffffff
}

.modal.is-solo .strict-container {
    position: relative;
    z-index: 1
}

.modal.is-opened {
    opacity: 1
}

.modal.is-opened, .modal.is-opened .slider__next, .modal.is-opened .slider__prev {
    pointer-events: auto
}

.modal__close-button {
    position: absolute;
    top: 0;
    right: 0;
    width: 90px;
    height: 90px;
    display: block;
    border: 0;
    transition: background-color .25s
}

.modal__close-button::after, .modal__close-button::before {
    content: "";
    display: block;
    width: 65%;
    height: 2px;
    position: absolute;
    top: 50%;
    left: 50%;
    background-color: #ffffff;
    transition: transform .25s, background .25s
}

.modal__close-button::before {
    transform: translate(-50%, -50%) rotate(45deg)
}

.modal__close-button::after, .modal__close-button:hover::before {
    transform: translate(-50%, -50%) rotate(-45deg)
}

.modal__close-button:hover {
    background-color: #ffffff
}

.modal__close-button:hover::after {
    transform: translate(-50%, -50%) rotate(45deg)
}

.modal__container {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 80px 60px;
    overflow: auto;
    align-items: center
}

.modal__container .slider, .modal__container .slider__slide, .modal__container picture {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center
}

.modal__nav {
    position: fixed;
    left: 0;
    top: 50%;
    transform: translate(0, -50%);
    width: 100%;
    pointer-events: none;
    padding: 0 20px;
    justify-content: space-between
}

@supports (display:grid) {
    .modal__nav {
        grid-template-columns:repeat(2, auto)
    }
}

.modal__nav .slider__next, .modal__nav .slider__prev {
    width: 50px;
    height: 50px
}

.modal__nav .slider__next::before, .modal__nav .slider__prev::before {
    width: 30px;
    height: 30px
}

.modal__nav .slider__prev {
    transform: rotate(45deg)
}

.modal__nav .slider__next {
    transform: rotate(-135deg)
}

.modal__single {
    font-family: 'lato-semibold', 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 20px
}

.modal__agree span {
    display: inline-block;
    margin: 0 20px 0 0
}

.modal__image-wr, .modal__video-wr {
    padding: 50px;
    display: flex;
    width: 100%;
    height: 100%;
    overflow: hidden;
    align-items: center;
    justify-content: center
}

.modal__image-wr iframe, .modal__image-wr video, .modal__video-wr iframe, .modal__video-wr video {
    display: block;
    width: 100%;
    height: 100%
}

.modal__image-wr img, .modal__video-wr img {
    max-width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.footer {
    background-color: #000000;
    position: relative
}

.footer-list, .footer-title {
    font-size: 16px
}

.footer-list {
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700
}

.footer-list.is-media-manager .footer-title {
    margin-bottom: 0;
}

@supports (display:grid) {
    @media all and (max-width: 1499px) {
        .footer-list.is-community, .footer-list.is-media-manager {
            grid-column: 1/3
        }
    }
    @media all and (max-width: 767px) {
        .footer-list.is-community, .footer-list.is-media-manager {
            grid-column: 1/2
        }
    }
}

.footer-title {
    color: red;
    margin: 0 0 20px
}

.footer-block .typography p, .footer-list {
    color: #ffffff
}

.footer-list a:hover {
    text-decoration: underline
}

.footer .address-block {
    color: #ffffff;
    flex-wrap: wrap;
    width: 50%;
    padding: 0 20px 0 0;
    margin: 0 0 20px
}

@supports (display:grid) {
    .footer .address-block {
        padding: 0;
        margin: 0;
        width: auto;
        flex-wrap: nowrap;
        grid-template-columns:repeat(2, 1fr);
        grid-template-rows:-webkit-min-content;
        grid-template-rows:min-content;
        -moz-column-gap: 20px;
        column-gap: 20px
    }

    @media all and (max-width: 1365px) {
        .footer .address-block {
            margin: 0 !important
        }
    }@media all and (max-width: 767px) {
    .footer .address-block {
        grid-template-columns:1fr
    }
}
}

.footer .address-block__route, .footer .address-block__title {
    width: 100%
}

@supports (display:grid) {
    .footer .address-block__route, .footer .address-block__title {
        width: auto;
        grid-column: 1/3
    }

    @media all and (max-width: 1023px) {
        .footer .address-block__route, .footer .address-block__title {
            grid-column: 1/2
        }
    }
}

.footer .address-block__card, .footer .address-block__links {
    width: 50%
}

@supports (display:grid) {
    .footer .address-block__card, .footer .address-block__links {
        width: auto
    }

    @media all and (max-width: 1023px) {
        .footer .address-block__card, .footer .address-block__links {
            grid-column: 1/2
        }
    }
}

.footer .address-block__card {
    padding: 0 20px 0 0
}

@supports (display:grid) {
    @media all and (max-width: 767px) {
        .footer .address-block__card {
            width: 100%
        }
    }
}

.footer .address-block__card a {
    color: red
}

.footer .address-block__route {
    padding: 10px 0 0
}

@supports (display:grid) {
    @media all and (max-width: 767px) {
        .footer .address-block__route {
            grid-row: 3/4;
            padding: 0;
            margin: 0 0 20px
        }
    }
}

.footer-block {
    padding: 50px 0;
    border-bottom: 1px solid rgba(248, 248, 248, .2)
}

@supports (display:grid) {
    .footer-block {
        grid-template-columns:repeat(2, 1fr)
    }

    @media all and (max-width: 1023px) {
        .footer-block {
            grid-template-columns:1fr
        }
    }
}

.footer-block:last-child {
    border: 0
}

.footer-block__left {
    padding: 0 5vw 0 0;
    width: 50%
}

@supports (display:grid) {
    .footer-block__left {
        width: auto
    }
}

.footer-block__right {
    width: 50%
}

@supports (display:grid) {
    .footer-block__right {
        width: auto
    }
}

.footer-block .typography {
    max-width: 500px
}

.footer-block .map {
    position: relative;
    height: 300px
}

.footer-block .map__container {
    position: absolute;
    width: 100%;
    height: 100%
}

.footer__middle .footer-list {
    margin: 0 30px 0 0
}

.footer__middle .footer-list svg, .footer__middle .footer-list img {
    width: 80px;
    height: 80px;
    fill: #ffffff
}

.footer__bottom .conditions a:last-child, .footer__bottom .conditions p:last-child, .footer__bottom .developers a:last-child, .footer__bottom .developers p:last-child, .footer__middle .footer-list:last-child {
    margin: 0
}

@supports (display:grid) {
    .footer__middle .footer-list {
        margin: 0 !important
    }
}

@supports (display:grid) {
    .footer__middle .footer-block__left {
        gap: 40px;
        grid-template-columns:minmax(100px, 1fr) minmax(100px, 2fr) minmax(100px, 1fr)
    }

    @media all and (max-width: 1499px) {
        .footer__middle .footer-block__left {
            grid-template-columns:minmax(100px, .5fr) minmax(100px, 1fr)
        }
    }@media all and (max-width: 767px) {
    .footer__middle .footer-block__left {
        grid-template-columns:1fr
    }
}
}

.footer__middle .footer-block__right {
    flex-wrap: wrap
}

@supports (display:grid) {
    .footer__middle .footer-block__right {
        flex-wrap: nowrap;
        -moz-column-gap: 50px;
        column-gap: 50px;
        row-gap: 30px;
        grid-template-columns:repeat(2, 1fr)
    }

    @media all and (max-width: 1499px) {
        .footer__middle .footer-block__right {
            grid-template-columns:1fr
        }
    }
}

.footer__bottom {
    color: #ffffff
}

@supports (display:grid) {
    .footer__bottom {
        gap: 50px;
        grid-template-columns:auto auto
    }

    @media all and (max-width: 1365px) {
        .footer__bottom {
            grid-template-columns:1fr
        }
    }
}

.footer__bottom a {
    font-family: 'lato-bold', 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 16px;
    text-decoration: underline
}

.footer__bottom .conditions a {
    font-family: 'lato-regular', 'Open Sans', sans-serif;
}

.footer__bottom .presentation:hover, .footer__bottom a:hover, .footer__bottom .trademark:hover {
    text-decoration: none
}

.footer__bottom .policy {
    color: red
}

.footer__bottom, .footer__bottom .conditions {
    justify-content: space-between;
    gap: 36px;
}

.footer__bottom .presentation, .footer__bottom .trademark {
    border: 0;
    background-color: transparent;
    color: inherit;
    text-decoration: underline;
    display: inline-block
}

.footer__bottom .developers {
    justify-content: flex-end;
    align-items: center;
    gap: 36px;
}

.footer__bottom .developers a, .footer__bottom .developers p {
    display: inline-block;
}

.footer__bottom .developers p {
    color: rgba(204, 204, 204, .5)
}

.footer__bottom .developers svg {
    fill: rgba(204, 204, 204, .5)
}

.footer__bottom .developers .severinova, .footer__bottom .developers .themoon, .footer__bottom .developers .checksanity {
    display: flex;
    align-items: center;
    justify-content: center
}

.footer__bottom .developers .checksanity svg {
    width: 20px;
    height: 20px;
}

.footer__bottom .developers .themoon svg {
    width: 60px;
    height: 20px
}

.footer__bottom .developers .severinova {
    align-self: flex-end
}

.footer__bottom .developers .severinova svg {
    width: 160px;
    height: 16px
}

@media all and (max-width: 1919px) {
    .strict-container {
        max-width: 100%
    }

    .container {
        padding: 0 100px 0 70px
    }

    .header__cat-img {
        height: 240px
    }

    .header__navigation-title {
        font-size: 32px
    }

    .pool .block-title {
        padding: 0 100px 0 50px
    }

    .pool__content::before {
        transform: translate(-20px, -50%)
    }

    .intro .policy::before {
        transform: translateX(0)
    }

    .history__side .bg-layer {
        height: 800px
    }

    .thanks__logo {
        width: 320px;
        height: 40px
    }
}

@media all and (max-width: 1499px) {
    .h2, .header__modal .block-title h2, .header__modal .exponic__head h2, .hero .block-title h1, .intro__body .service-list h2, h1, h2 {
        font-size: 38px
    }

    .typography.bigger li, .typography.bigger p {
        font-size: 18px
    }

    .typography.bigger li::before {
        top: 10px
    }

    .typography.bigger li::after {
        top: 4px
    }

    .typography li {
        padding-left: 35px
    }

    .site-button.is-plus .site-button__text {
        font-size: 14px;
        margin: 0 10px 0 0
    }

    .site-button.is-plus .plus {
        width: 17px;
        height: 17px
    }

    .first-section {
        padding: 180px 0 0
    }

    .block-head {
        margin: 0 0 80px
    }

    .block-title.space-down {
        margin: 0 0 20px
    }

    .block-catalog__video img, .block-catalog__video video {
        height: 500px
    }

    .slider__arrows-container .slider__next, .slider__arrows-container .slider__prev {
        width: 45px;
        height: 45px
    }

    .is-projects.slider::before, .slider__arrows-container.is-bottom {
        bottom: 200px
    }

    .slider__next, .slider__prev {
        width: 20px;
        height: 20px
    }

    .slider__next::before, .slider__prev::before {
        width: 10px;
        height: 10px
    }

    .slider__counter {
        width: 100px;
        height: 100px
    }

    .slider__all {
        padding: 0 2px 0 0
    }

    .slider__current {
        font-size: 26px
    }

    .play-button {
        width: 75px;
        height: 75px
    }

    .play-button__triangle {
        border: 9px solid transparent;
        border-left: 16px solid red
    }

    .exponic__head, .exponic__since, .exponic__year {
        font-size: 10px
    }

    .block-icon svg {
        width: 80px;
        height: 80px
    }

    .pulsar {
        width: 300px
    }

    .spacer {
        padding-bottom: 50px
    }

    .spacer.x2 {
        padding-bottom: 100px
    }

    .spacer.x3 {
        padding-bottom: 150px
    }

    .spacer.x4 {
        padding-bottom: 200px
    }

    .spacer.x5 {
        padding-bottom: 250px
    }

    .stats__title {
        font-size: 40px
    }

    .info-case__inner.is-small .info-case__title {
        font-size: 18px
    }

    .info-case__inner.is-big {
        height: 530px
    }

    .info-case__inner.is-huge {
        height: 450px
    }

    .info-case__inner.is-big .info-case__info, .info-case__inner.is-big .info-case__pre, .info-case__inner.is-huge .info-case__info, .info-case__inner.is-huge .info-case__pre {
        padding: 40px 60px
    }

    .info-case .horizontal.is-middle .info-case__info, .info-case .horizontal.is-regular .info-case__info, .info-case .horizontal.is-small .info-case__info {
        min-height: 145px
    }

    .info-case .horizontal.is-big .info-case__info, .info-case .horizontal.is-huge .info-case__info {
        height: 200px
    }

    .info-case .vertical .info-case__info, .info-case .vertical .info-case__pre {
        max-width: 400px
    }

    .event-view .block-cat {
        padding: 0 100px 0 0
    }

    .slider-cells__wrapper.reverse .slider-cells__dot {
        height: 160px
    }

    .slider-cells__dot {
        height: 92px;
        padding: 10px
    }

    .slider-cells__picture img {
        height: 460px
    }

    .filter-list__item, .footer-list.is-community .footer-list__list svg {
        margin: 0 30px 0 0
    }

    .service-list__item {
        padding: 0 0 0 100px
    }

    .service-list__dot {
        top: 10px
    }

    .language__item a {
        font-size: 15px
    }

    .burger {
        width: 40px;
        height: 40px
    }

    .burger__line {
        height: 8px
    }

    .header__content-wrapper {
        height: calc(100vh - 100px)
    }

    .header__navigation {
        padding: 50px 40px 50px 140px
    }

    .hero__content {
        width: calc(40% - 35px)
    }

    .hero__media {
        width: calc(60% - 35px)
    }

    .hero__navigation {
        max-width: 100px
    }

    .hero__arrows {
        height: min(100%, 220px)
    }

    .pool .block-title, .pool .pool__slider {
        max-width: 400px
    }

    .pool__content::after {
        transform: translate(80px, -50%)
    }

    .inform .block-running-title {
        margin: 0 0 40px
    }

    .inform .block-wrapper {
        padding: 0
    }

    .inform__body.is-reverse .inform__side .button {
        padding: 40px 0 0
    }

    .inform__side .stats {
        margin: 0 0 50px
    }

    .intro__body.padding-right, .show .block-wrapper {
        padding: 0
    }

    .intro .bg-layer.is-left {
        right: 50%;
        transform: translateX(50%)
    }

    .intro__video img, .intro__video video {
        height: 560px
    }

    .intro__stats.is-vertical .stats {
        margin: 0 0 100px
    }

    .intro__topic-typography.is-first {
        padding: 0 140px
    }

    .intro .typography:not(.is-full) {
        max-width: 700px
    }

    .intro .bg-video:not(.no-right) {
        padding-right: 0
    }

    .history__picture .block-icon {
        position: relative;
        transform: translate(0);
        margin: 0 0 40px
    }

    .history__picture img, .history__picture.is-hide img {
        max-height: 670px
    }

    .history__decor-block {
        padding: 125px 0 0 6vw
    }

    .history__years {
        font-size: 76px;
        margin: -60px 0 0
    }

    .history__side {
        max-width: 550px
    }

    .history__side .bg-layer {
        width: 45vw;
        right: 0
    }

    .history__side .hide {
        width: 55vw
    }

    .history__side .stats {
        margin: 0 0 65px
    }

    .thanks__block {
        margin: 0 0 100px
    }

    .thanks__title {
        font-size: 40px
    }

    .modal.cookies .modal__single {
        padding: 0 40px 0 0;
        font-size: 14px
    }

    .footer-list.is-community .footer-list__list {
        display: flex
    }

    .footer-list li {
        margin: 0 0 2px
    }

    .footer__bottom .conditions a, .footer__bottom .conditions p, .footer__bottom .presentation, .footer__bottom .trademark {
        font-size: 14px
    }
}

@media all and (max-width: 1365px) {
    .inform__result p, .typography.bigger li, .typography.bigger p {
        font-size: 16px
    }

    .site-button__text {
        font-size: 14px
    }

    .site-button.is-plus .plus {
        width: 15px;
        height: 15px
    }

    .container {
        padding: 0 70px
    }

    .form__button {
        width: 100%
    }

    .form__button .site-button {
        min-width: auto;
        width: 100%
    }

    .block-running-title {
        margin: 0 0 45px
    }

    .block-head {
        margin: 0 0 60px
    }

    .block-cat {
        margin: 0 0 30px
    }

    .block-cat__item {
        padding: 0 40px 0 0
    }

    .block-cat__item::after {
        width: 25px
    }

    .block-catalog .spacer {
        padding-bottom: 30px
    }

    .block-catalog__info .block-cat__item {
        font-size: 14px
    }

    .block-catalog__logo img {
        max-height: 35px
    }

    .slider__separator {
        width: 20px;
        height: 20px;
        font-size: 18px;
        margin: 0 10px
    }

    .slider__counter {
        width: 80px;
        height: 80px
    }

    .slider__dot {
        width: 18px;
        margin: 0 15px 0 0
    }

    .play-button {
        width: 60px;
        height: 60px
    }

    .play-button__triangle {
        border: 7px solid transparent;
        border-left: 12px solid red
    }

    .info-case__inner.is-middle:not(.is-fixed), .info-case__inner.is-regular:not(.is-fixed) {
        height: 450px
    }

    .tile__content {
        flex-wrap: wrap
    }

    .tile__content.horizontal .tile__item {
        max-width: calc(100% / 3);
        width: 100%
    }

    .event-view__content .typography {
        margin: 0 0 80px
    }

    .slider-cells__icon img {
        height: 45px
    }

    .filter-list__mobile {
        display: inline-block
    }

    .filter-list__inner {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        background-color: rgba(248, 248, 248, .9);
        flex-direction: column
    }

    .filter-list__item {
        margin: 0;
        width: 100%;
        border-bottom: 1px solid #cccccc;
        text-align: center;
        padding: 15px 10px
    }

    .filter-list__item:last-child {
        border-bottom: 1px solid transparent
    }

    .header__menu .header__scroll-container {
        width: 100%
    }

    .header__modal .form__button {
        padding: 0 20px 0 0
    }

    .header__cats {
        padding: 50px 0 0;
        max-width: 360px
    }

    .header__arrows {
        display: none
    }

    .header__navigation {
        padding: 50px 0 50px 50px
    }

    .hero .block-wrapper {
        padding: 0 0 30px
    }

    .hero .block-title {
        margin: 0 0 30px
    }

    .hero .block-title h1 {
        font-size: 32px
    }

    .hero__navigation {
        max-width: 80px
    }

    .hero__side {
        max-width: 70px
    }

    .pool .block-title, .pool .pool__slider {
        max-width: 40%
    }

    .pool .block-content {
        padding: 60px 60px 80px 0
    }

    .inform__head {
        padding: 0 0 60px
    }

    .inform__side {
        padding: 60px 0
    }

    .inform__side.is-left {
        width: 40%
    }

    .inform__side.is-left + .inform__main {
        padding: 60px 0 60px 8vw;
        width: 60%
    }

    .inform__result {
        flex-direction: column
    }

    .inform__result.dc {
        justify-content: flex-start;
        align-items: flex-start
    }

    .inform__button {
        padding: 45px 0 0
    }

    .inform__button.he {
        justify-items: start
    }

    .request__body {
        flex-direction: column
    }

    .request__content {
        width: 100%;
        padding: 0;
        margin: 0 0 50px
    }

    .request__form {
        width: 100%
    }

    .intro .bg-layer {
        width: 60%
    }

    .intro__head {
        padding: 50px 0 0
    }

    .intro__body.is-centered {
        padding: 0
    }

    .intro__body-wr .net {
        width: 40%
    }

    .intro__body-wr.is-lightbox .intro__list {
        margin: 0 -70px 90px
    }

    .intro__body .service-list h2 {
        font-size: 34px
    }

    .intro__video:not(.block-catalog__video) {
        margin: 0 0 90px
    }

    .intro__for-blocks .intro__content-block {
        padding: 0 75px 0 0
    }

    .intro__list .bg-layer {
        width: 100%
    }

    .intro__stats.is-vertical .stats {
        max-width: 450px
    }

    .intro__contacts {
        padding: 0 0 0 20px
    }

    .intro__topic-typography.is-first {
        padding: 0 60px 0 80px
    }

    .intro__topic-typography.is-line::before {
        transform: translate(0)
    }

    .history__picture img {
        max-height: 615px
    }

    .history__picture.is-hide + .typography {
        transform: translateX(-70px);
        padding: 0 0 0 70px
    }

    .history__picture.is-hide img {
        max-width: 100vw;
        width: 100vw;
        max-height: 560px;
        transform: translateX(-70px)
    }

    .history__years {
        font-size: 56px;
        margin: -45px 0 0
    }

    .history__side {
        padding: 60px 6vw 70px
    }

    .history__side .hide {
        width: 50vw
    }

    .thanks__block {
        margin: 0 0 75px
    }

    .modal.cookies .modal__container {
        padding: 30px 0
    }

    .modal.is-solo .first-section {
        height: 100vh
    }

    @supports (min-height:100vh) {
        .modal.is-solo .first-section {
            min-height: 100vh;
            height: auto
        }
    }.modal.is-solo .modal__404 {
         font-size: 190px;
         margin: 0 0 40px
     }

    .modal__nav .slider__next, .modal__nav .slider__prev {
        width: 35px;
        height: 35px
    }

    .modal__nav .slider__next::before, .modal__nav .slider__prev::before {
        width: 18px;
        height: 18px
    }

    .footer .address-block {
        width: 100%;
        padding: 0;
        margin: 0 0 30px
    }

    .footer__bottom .developers {
        justify-content: flex-start
    }
}

@media all and (max-width: 1279px) {
    .first-section.is-full {
        height: auto
    }

    .slider-cells.on-tablet {
        margin: 0 -70px 0 0
    }

    .inform .block-title {
        max-width: 750px
    }
}

@media all and (max-width: 1024px) {
    .inform__side.vertical {
        padding-right: 60px
    }
}

@media all and (max-width: 1023px) {
    .h2, h1, h2 {
        font-size: 34px
    }

    h3 {
        font-size: 22px
    }

    .site-button {
        min-width: auto;
        min-width: min(100%, 180px);
        padding: 0 18px 0 0
    }

    .site-button__content {
        padding: 12px 20px 12px 22px
    }

    .site-button__line {
        height: calc((100% / 3) - 2.5px);
        width: 18px
    }

    .block-share p, .site-button.is-show {
        font-size: 14px
    }

    .site-button.is-show::before, .slider__next::before, .slider__prev::before {
        width: 8px;
        height: 8px
    }

    .strict-container {
        padding: 0 40px
    }

    .container {
        padding: 0 35px
    }

    .form .is-checkbox .form__placeholder {
        padding-left: 60px
    }

    .block-title.wrap {
        flex-direction: column;
        flex-wrap: nowrap
    }

    .block-title.wrap .h2, .block-title.wrap h1, .block-title.wrap h2 {
        max-width: 100%
    }

    .block-title.wrap .block-icon {
        padding: 35px 0 0;
        align-self: flex-end
    }

    .block-line__inner .button {
        display: none
    }

    .block-line__time {
        font-size: 10px
    }

    .block-catalog__video img, .block-catalog__video video {
        height: 350px
    }

    .block-catalog__info {
        flex-wrap: wrap
    }

    .block-catalog__info .block-cat {
        width: 100%;
        order: 1;
        margin: 0 0 25px
    }

    @supports (display:grid) {
        .block-catalog__info .block-cat {
            width: auto;
            grid-column: 1/3;
            margin: 0
        }
    }.block-catalog__info .block-share {
         order: 2
     }

    .block-catalog__info .block-catalog__arrows {
        width: auto;
        order: 3
    }

    .block-catalog__logo {
        width: auto;
        order: 2
    }

    .block-catalog__logo > img {
        margin: 0 auto;
    }

    @supports (display:grid) {
        .block-catalog__logo {
            grid-row: 2/3;
            grid-column: 1 / 3;
        }
    }

    .block-share__soc svg {
        height: 14px
    }

    .slider__arrows-container .slider__next, .slider__arrows-container .slider__prev {
        width: 35px;
        height: 35px
    }

    .is-projects.slider::before, .slider__arrows-container.is-bottom {
        bottom: 150px
    }

    .block-icon svg, .slider__counter {
        width: 60px;
        height: 60px
    }

    .net.no-mobile {
        display: none
    }

    .plus {
        width: 15px;
        height: 15px
    }

    .pulsar {
        width: 250px
    }

    .spacer.x2 {
        padding-bottom: 80px
    }

    .spacer.x3 {
        padding-bottom: 120px
    }

    .spacer.x4 {
        padding-bottom: 150px
    }

    .spacer.x5 {
        padding-bottom: 200px
    }

    .stats__title {
        font-size: 30px
    }

    .stats__subtitle {
        font-size: 16px
    }

    .info-case.is-middle .info-case__picture {
        opacity: 1
    }

    @supports ((-webkit-filter:grayscale(1)) or (filter:grayscale(1))) {
        .info-case.is-middle .info-case__picture {
            -webkit-filter: grayscale(0);
            filter: grayscale(0)
        }
    }.info-case .info-case__inner.is-media .info-case__info {
         transform: translateY(0%);
         transition: transform .25s
     }

    .info-case .info-case__inner.is-media .info-case__info > * {
        opacity: 1;
        transition: opacity .25s .25s
    }

    .info-case .info-case__inner.is-inform .info-case__button {
        display: flex
    }

    .info-case .info-case__inner.is-inform .info-case__position, .info-case .info-case__inner.is-inform .info-case__title, .info-case .info-case__inner.is-media .info-case__position, .info-case .info-case__inner.is-media .info-case__title {
        color: #ffffff
    }

    .info-case .info-case__inner.is-inform .info-case__title, .info-case .info-case__inner.is-media .info-case__title {
        max-height: auto
    }

    .info-case .info-case__inner.is-inform .info-case__title span, .info-case .info-case__inner.is-media .info-case__title span {
        display: block
    }

    .info-case .info-case__inner.is-inform .info-case__info, .info-case .info-case__inner.is-media .info-case__info {
        background-color: rgba(255, 0, 0, .9)
    }

    .info-case .info-case__picture:not(.no-filter) {
        opacity: 1
    }

    @supports ((-webkit-filter:grayscale(1)) or (filter:grayscale(1))) {
        .info-case .info-case__picture:not(.no-filter) {
            -webkit-filter: grayscale(0);
            filter: grayscale(0)
        }
    }.info-case .info-case__pre {
         display: none
     }

    .info-case .info-case__hidden {
        display: block
    }

    .info-case__inner.is-small .info-case__title, .modal.cookies .site-button.is-plus .site-button__text {
        font-size: 16px
    }

    .info-case__inner.is-middle:not(.is-fixed), .info-case__inner.is-regular:not(.is-fixed) {
        height: 350px
    }

    .info-case__inner.is-big {
        height: 400px
    }

    .info-case__inner.is-huge, .intro__video img, .intro__video video {
        height: 350px
    }

    .info-case__inner.is-middle .info-case__info, .info-case__inner.is-middle .info-case__pre, .info-case__inner.is-small .info-case__info, .info-case__inner.is-small .info-case__pre {
        padding: 25px
    }

    .info-case__inner.is-big .info-case__info, .info-case__inner.is-big .info-case__pre, .info-case__inner.is-huge .info-case__info, .info-case__inner.is-huge .info-case__pre {
        padding: 30px 40px
    }

    .info-case__title + .block-cat, .info-case__title + .block-cat + .info-case__button, .info-case__title + .info-case__button, .info-case__title + .info-case__position + .info-case__hidden {
        padding: 10px 0 0
    }

    .info-case .horizontal.is-middle .info-case__info, .info-case .horizontal.is-regular .info-case__info, .info-case .horizontal.is-small .info-case__info {
        min-height: 100px
    }

    .info-case .horizontal.is-big .info-case__info, .info-case .horizontal.is-huge .info-case__info {
        height: 150px
    }

    .info-case .vertical .info-case__info, .info-case .vertical .info-case__pre {
        max-width: 300px
    }

    .event-view__view {
        min-height: auto
    }

    .event-view__view:hover .plus {
        display: none
    }

    .event-view__content .typography {
        padding: 0;
        margin: 0 0 60px
    }

    .event-view .block-cat {
        padding: 0 0 80px
    }

    .slider-cells__wrapper.reverse .slider-cells__dot {
        width: 250px
    }

    .slider-cells__arrows {
        margin: 0 0 60px;
        padding: 0 0 0 220px
    }

    .slider-cells__view {
        padding: 0 0 0 60px
    }

    .animated-title > span, .animated-title > span > span {
        line-height: 1
    }

    .header.is-opened .header__content-wrapper {
        height: calc(100vh - 145px)
    }

    .first-section {
        padding-top: 178px;
    }

    .header__menu-inner {
        flex-direction: column-reverse
    }

    .header__modal .block-title h2, .header__modal .exponic__head h2 {
        font-size: 24px
    }

    .header__modal .exponic__head {
        margin: 0 0 30px
    }

    .header__cats, .header__modal .form {
        max-width: 100%
    }

    .header__cats {
        padding: 25px 0 50px
    }

    .header__navigation {
        max-width: 100%;
        padding: 50px 0 25px
    }

    .hero .block-content {
        height: auto
    }

    .hero__navigation {
        max-width: 60px
    }

    .hero__side .exponic__since, .hero__side .exponic__year {
        padding: 45px 0
    }

    .pool .block-title, .pool .pool__slider {
        max-width: 50%
    }

    .pool .exponic__since {
        display: none
    }

    .pool__arrows {
        grid-column: 3/4
    }

    .pool__arrows.dc {
        justify-content: flex-end
    }

    .pool__content::before {
        transform: translate(0, -50%);
        top: 35px
    }

    .pool__slider .question__wr {
        padding: 0 0 0 40px
    }

    .inform__head {
        padding: 0 0 40px
    }

    .list .container {
        padding: 0
    }

    .list__head {
        padding: 0 35px
    }

    .intro .block-grid .stats {
        margin: 0 0 75px
    }

    .intro .block-grid .stats__typography {
        margin: 0 0 35px
    }

    .intro .block-grid .button {
        margin: 15px 0 0
    }

    .intro .block-catalog .block-cat__list {
        padding: 0
    }

    .intro .bg-layer.is-services {
        width: 350px
    }

    .intro__body-wr.is-lightbox .intro__list {
        margin: 0 -40px 90px
    }

    .intro__body .service-list h2 {
        font-size: 30px
    }

    .intro__body .block-title .block-icon {
        position: relative;
        top: auto;
        left: auto;
        padding: 50px 0 0;
        margin: 0 0 0 auto;
        display: flex;
        justify-content: flex-end
    }

    .intro__cols {
        margin: 0;
        flex-direction: column
    }

    .intro__cols .typography {
        width: 100%;
        padding: 0;
        margin: 0 0 20px
    }

    .intro__cols .typography:last-child {
        margin: 0
    }

    .intro__video:not(.block-catalog__video) {
        margin: 0 0 50px
    }

    .intro__slider .tns-outer {
        margin: 0 -100px;
        width: auto
    }

    .intro__stats.dc .stats {
        width: 50%
    }

    .intro__stats.is-vertical .stats {
        max-width: 350px;
        margin: 0 0 75px
    }

    .intro__contacts {
        max-width: 200px
    }

    .intro__contacts .address-block {
        margin: 0 0 80px
    }

    .intro .policy {
        padding: 0
    }

    .intro .policy::before {
        transform: translateX(-10px)
    }

    .history__content {
        padding: 0 20px 0 0
    }

    .history__content .typography {
        margin: 0 0 60px
    }

    .history__picture.is-hide + .typography {
        transform: translateX(-40px);
        padding: 0 0 0 40px
    }

    .history__picture.is-hide img {
        transform: translateX(-40px)
    }

    .history__decor-block {
        padding: 105px 0 0 6vw
    }

    .history__years {
        font-size: 40px;
        margin: -30px 0 15px
    }

    .history__side {
        padding: 60px 0 0 6vw
    }

    .history__nav {
        margin: 0 0 60px
    }

    .thanks__title {
        font-size: 32px
    }

    .thanks__subtitle {
        font-size: 20px
    }

    .thanks__logo {
        width: 180px
    }

    .modal.is-solo .modal__message {
        margin: 0 0 20px;
        font-size: 18px
    }

    .modal.is-solo .modal__404 {
        font-size: 160px;
        margin: 0 0 30px;
        line-height: 1
    }

    .modal__close-button {
        width: 50px;
        height: 50px;
        font-size: 14px
    }

    .modal__container {
        padding: 60px 30px
    }

    .modal__nav .slider__next, .modal__nav .slider__prev {
        width: 25px;
        height: 25px
    }

    .modal__nav .slider__next::before, .modal__nav .slider__prev::before {
        width: 13px;
        height: 13px
    }

    .modal__image-wr, .modal__video-wr {
        padding: 20px
    }

    .footer .address-block, .footer-block {
        flex-direction: column
    }

    .footer .address-block:last-child {
        margin: 0
    }

    .footer-block__left {
        width: 100%;
        padding: 0;
        margin: 0 0 50px
    }

    .footer .address-block__card, .footer .address-block__links, .footer-block__right {
        width: 100%
    }

    .footer-block .typography {
        max-width: 100%
    }

    .footer-block .map {
        height: 260px
    }

    .footer__bottom .conditions {
        margin: 0 0 50px
    }

    @supports (display:grid) {
        .footer__bottom .conditions {
            margin: 0
        }
    }
}

@media all and (max-width: 767px) {
    .h2, h1, h2, h3, h4, h5, h6 {
        letter-spacing: -.8px
    }

    .h2, h1, h2 {
        font-size: 30px
    }

    h3 {
        font-size: 18px
    }

    .typography.two-cols p {
        -moz-column-count: 1;
        column-count: 1;
        -moz-column-gap: 0;
        column-gap: 0
    }

    .site-button.is-plus .site-button__text, .site-button__text {
        letter-spacing: -.4px
    }

    .container, .strict-container {
        padding: 0 25px
    }

    .form .is-checkbox, .form .is-full, .form .is-select {
        grid-column: 1/2
    }

    .form__error, .form__help-text, .form__input, .form__placeholder, .form__textarea {
        letter-spacing: -.8px
    }

    .form__button {
        order: 1;
        margin: 0
    }

    .block-head {
        flex-direction: column
    }

    .block-head.vc {
        align-items: flex-start
    }

    .block-head .slider__arrows {
        margin: 0 10px 0 0;
        order: 2
    }

    .block-head .slider__arrows + .button {
        order: 1;
        margin: 0 0 50px
    }

    .block-head .slider__arrows.he {
        justify-content: flex-start
    }

    .block-head .block-title {
        margin: 0 0 35px;
        width: 100%
    }

    .block-cat__item {
        font-size: 13px;
        padding: 0 25px 0 0;
        margin: 0 9px 0 0
    }

    .block-cat__item::after {
        width: 15px
    }

    .block-catalog__info .block-cat__item, .block-line__time, .block-share p, .block-title .is-red, .slider__separator {
        letter-spacing: -.8px
    }

    .block-catalog__video img, .block-catalog__video video {
        height: 300px
    }

    .block-catalog__logo img {
        max-height: 25px
    }

    .is-projects.slider::before, .slider__arrows-container.is-bottom {
        bottom: 135px
    }

    .slider__number {
        letter-spacing: -.4px
    }

    .play-button {
        width: 45px;
        height: 45px
    }

    .exponic__head, .exponic__since, .exponic__year, .question p {
        letter-spacing: -.8px
    }

    .spacer.x2 {
        padding-bottom: 60px
    }

    .spacer.x3 {
        padding-bottom: 90px
    }

    .spacer.x4 {
        padding-bottom: 100px
    }

    .spacer.x5 {
        padding-bottom: 150px
    }

    .inform__result p, .stats__title {
        letter-spacing: -.4px
    }

    .stats__descr, .stats__subtitle, .stats__title.lsb {
        letter-spacing: -.8px
    }

    .info-case__inner.is-middle:not(.is-fixed), .info-case__inner.is-regular:not(.is-fixed) {
        height: 250px
    }

    .info-case__inner.is-big {
        height: 300px
    }

    .info-case__inner.is-big .info-case__info, .info-case__inner.is-big .info-case__pre, .info-case__inner.is-huge .info-case__info, .info-case__inner.is-huge .info-case__pre {
        padding: 20px
    }

    .info-case .site-button {
        font-size: 12px
    }

    .info-case .horizontal.is-big .info-case__info, .info-case .horizontal.is-huge .info-case__info {
        height: 135px
    }

    .info-case .horizontal .info-case__title + .info-case__button {
        grid-column: 1/2
    }

    .info-case .horizontal .block-cat + .info-case__button.dc {
        justify-items: flex-start
    }

    .info-case .vertical .info-case__info, .info-case .vertical .info-case__pre {
        max-width: 220px
    }

    .tile__content.horizontal .tile__item {
        max-width: 100%;
        width: 100%
    }

    .event-view {
        flex-direction: column
    }

    .event-view__view {
        width: 100%;
        margin: 0 0 50px
    }

    .event-view__image {
        width: 100%;
        max-width: 275px
    }

    .event-view__content {
        padding: 0
    }

    .event-view .block-cat__item {
        letter-spacing: -.8px
    }

    .slider-cells, .slider-cells.on-tablet {
        margin: 0 -25px
    }

    .slider-cells__wrapper.reverse .slider-cells__navigation {
        margin: -5px 0
    }

    .slider-cells__wrapper.reverse .slider-cells__dot {
        width: 110px;
        height: 87px;
        padding: 5px 0
    }

    .slider-cells__arrows {
        padding: 0 0 0 120px;
        margin: 0 0 45px
    }

    .slider-cells__view {
        padding: 0 0 0 20px
    }

    .slider-cells__dot {
        width: 100px;
        height: 53px
    }

    .slider-cells__picture {
        margin: 0 0 45px
    }

    .slider-cells__picture img {
        height: 250px
    }

    .slider-cells__info {
        flex-direction: column;
        align-items: flex-start
    }

    .slider-cells__icon {
        margin: 0 0 20px
    }

    .slider-cells__icon img {
        height: 35px
    }

    .filter-list__mobile {
        letter-spacing: -.8px
    }

    .filter-list__inner {
        width: 100%
    }

    .filter-list__item {
        letter-spacing: -.8px
    }

    .service-list__item {
        padding: 0 0 0 70px
    }

    .burger {
        width: 35px;
        height: 35px
    }

    .header__navigation-item {
        max-width: 100%;
        margin: 0 0 45px
    }

    @supports (display:grid) {
        .header__navigation-item {
            max-width: initial
        }
    }.header__navigation-item:nth-last-child(2) {
         margin: 0 0 45px
     }

    .hero .container {
        padding: 0
    }

    .hero .block-content {
        flex-wrap: wrap
    }

    .hero__content {
        padding: 45px 40px 0;
        position: relative;
        width: 100%
    }

    .hero__dots {
        position: relative;
        padding: 35px 0 0;
        margin: 0 0 45px
    }

    .hero__media {
        width: calc(100% - 50px)
    }

    .hero__slider {
        height: 300px
    }

    .hero__side {
        max-width: 50px
    }

    .hero__side .exponic__since, .hero__side .exponic__year {
        padding: 25px 0
    }

    .hero__text {
        width: 100%;
        padding: 0 25px
    }

    .pool .block-title, .pool .pool__slider {
        max-width: 100%
    }

    .pool .block-content {
        padding: 60px 0 80px
    }

    .pool .block-title {
        padding: 0 0 0 50px;
        margin: 0 0 70px
    }

    .inform__side.is-left::before, .pool__bg {
        transform: translateX(-50%);
        right: auto;
        left: 50%
    }

    .pool__counter .slider__counter {
        position: absolute;
        top: 50%;
        right: 0;
        transform: translate(35px, -50%)
    }

    .pool__content {
        flex-direction: column;
        padding: 0 30px 0 0
    }

    @supports (display:grid) {
        .pool__slider {
            grid-column: 1/3;
            grid-row: 2/3
        }
    }.pool__slider .question__wr {
         padding: 0
     }

    .inform .net {
        transform: translateX(25px)
    }

    .inform__body {
        flex-direction: column
    }

    .inform__body.is-reverse .inform__main {
        width: 100%;
        padding: 0;
        margin: 0 0 20px
    }

    .inform__body.is-reverse .inform__side {
        padding: 60px 0;
        width: 100%
    }

    .inform__side.is-left {
        width: 100%
    }

    .inform__side.is-left::before {
        width: 100vw;
        top: 0
    }

    .inform__side.is-left + .inform__main {
        width: 100%;
        padding: 60px 0 0
    }

    .inform__side.vertical {
        padding-right: 0
    }

    .list__head {
        padding: 0 25px
    }

    .intro__body-wr.is-lightbox .intro__list {
        margin: 0 -25px 60px
    }

    .intro .bg-layer, .intro__body-wr.is-content .bg-layer {
        width: 100%
    }

    .intro__body-wr.is-content .net {
        display: none
    }

    .intro__star-info {
        letter-spacing: -.8px
    }

    .intro__video img, .intro__video video {
        height: 250px
    }

    .intro__for-blocks {
        flex-direction: column
    }

    .intro__for-blocks .intro__content-block {
        padding: 0;
        margin: 0 0 50px
    }

    @supports (display:grid) {
        .intro__for-blocks .intro__content-block {
            margin: 0
        }
    }.intro__stats.dc .stats {
         width: 100%
     }

    .intro__stats.dc .stats:nth-last-child(2) {
        margin: 0 0 40px
    }

    .intro__stats.dc .stats:last-child {
        margin: 0
    }

    .intro__contacts {
        max-width: 100%;
        padding: 0
    }

    .intro__contacts .address-block {
        margin: 0 0 60px
    }

    .intro__contacts .address-block__route, .intro__contacts .address-block__title {
        letter-spacing: -.8px
    }

    .intro__topic-images {
        margin: -15px
    }

    .intro__topic-images picture {
        max-width: 65%;
        padding: 15px
    }

    .intro__topic-images picture:first-child {
        margin: 0 auto 0 0
    }

    .intro__topic-images picture:last-child {
        margin: 0 0 0 auto;
        align-items: flex-end
    }

    .intro__topic-typography.is-first {
        padding: 0
    }

    .intro__topic-typography.is-line::before {
        transform: translate(50px, -25px)
    }

    .history__section {
        flex-direction: column
    }

    .history__content {
        width: 100%;
        padding: 0
    }

    .history__content .typography {
        margin: 0 0 40px
    }

    .history__picture img {
        max-height: 400px
    }

    .history__picture.is-hide + .typography {
        transform: translateX(0);
        padding: 0
    }

    .history__picture.is-hide img {
        max-height: 400px;
        transform: translateX(-25px)
    }

    .history__decor-block {
        padding: 0
    }

    .history__years {
        letter-spacing: -.4px
    }

    .history__side {
        max-width: 100%;
        width: 100%;
        padding: 20px 0 60px;
        position: relative
    }

    .history__side .bg-layer {
        top: 0;
        right: auto;
        left: 50%;
        transform: translateX(-50%)
    }

    .history__side .bg-layer, .history__side .hide {
        width: 100vw;
        height: 1000vh
    }

    .history__final {
        letter-spacing: -.8px;
        max-width: 100%;
        margin: 0
    }

    .history__slider > .tns-outer {
        margin: 0 -100px;
        width: auto
    }

    .modal.cookies .modal__container {
        padding: 16px 0
    }

    .modal.cookies .modal__single {
        padding: 0 20px 0 0;
        font-size: 12px;
        line-height: 16px;
        text-align: left;
    }

    .modal.is-solo .modal__container {
        align-items: center
    }

    .modal.is-solo .modal__404 {
        letter-spacing: -.8px;
        font-size: 100px
    }

    .modal__container {
        padding: 60px 25px
    }

    .modal__single {
        letter-spacing: -.8px
    }

    .modal__image-wr, .modal__video-wr {
        padding: 0
    }

    .footer-list.is-community .footer-list__list {
        flex-wrap: wrap
    }

    .footer-list, .footer__bottom a {
        letter-spacing: -.8px
    }

    .footer__middle .footer-list svg {
        width: 65px;
        height: 65px
    }

    .footer__middle .footer-list {
        margin: 0 0 50px
    }

    .footer__bottom .conditions, .footer__middle .footer-block__left {
        flex-direction: column;
        gap: 20px;
    }

    .footer__bottom .presentation, .footer__bottom .trademark {
        text-align: left
    }

    .footer__bottom .developers p {
        font-size: 14px;
        width: 100%;
    }
}

@media all and (max-width: 639px) {
    .intro .bg-layer.is-services {
        width: 50%
    }

    .intro__topic-images picture {
        max-width: 75%
    }
}

@media all and (max-width: 479px) {
    .block-catalog__video img, .block-catalog__video video {
        height: 200px
    }

    .hero__slider {
        height: 240px
    }
}

@media all and (max-width: 374px) {
    .site-button {
        min-width: min(100%, 160px)
    }

    .block-head .slider__arrows + .button {
        margin: 0 0 30px
    }

    .block-head .block-title {
        margin: 0 0 30px;
        order: 1
    }

    .block-head .button {
        order: 2;
        width: 100%
    }

    .slider-cells__dot {
        height: 50px
    }

    .footer__bottom .developers {
        justify-content: space-between
    }
}

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