html,
body {
    padding: 0;
    margin: 0;
    background: #fff;
    font-family: 'Trebuchet MS', 'Arial', 'Tahoma', 'Verdana', 'sans-serif';
    color: #22252d;
}

body {
    display: flex;
    flex-direction: column;
    min-width: 320px;
    min-height: 100vh;
}

html,
body,
input,
textarea {
    font-size: 10.5pt;
}

a,
img,
button,
input[type='submit'],
input[type='text'],
input[type='password'],
.edit-form input[type='number'],
textarea {
    outline: none;
    -webkit-appearance: none;
    border-radius: 0;
}

textarea {
  max-height: 500px;
  resize: vertical;
}

a {
    color: #5f5f61;
}

h1 {
    font-weight: normal;
    font-size: 200%;
}

h2 {
    font-weight: normal;
    font-size: 150%;
}

h3 {
    font-weight: normal;
    font-size: 130%;
}

h4 {
    font-weight: normal;
    font-size: 130%;
}

h5 {
    font-weight: normal;
    font-size: 100%;
}

h6 {
    font-weight: normal;
    font-size: 100%;
}

input::-ms-clear {
    display: none;
}

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

.flex--space-between {
    justify-content: space-between;
}

.flex--baseline {
    align-items: baseline;
}

.badge {
    color: #fff;
    font-size: 8pt;
    height: 17px;
    line-height: 17px;
    display: inline-block;
    padding: 0 5px;
    border-radius: 7px;
    vertical-align: top;
    white-space: nowrap;
}

.badge--red {
    background-color: #ed5564;
}

.badge--red-text {
    color: #ed5564;
    background: transparent;
}

.badge--green {
    background-color: #42cb6e;
}

.badge--green-text {
    color: #42cb6e;
    background: transparent;
}

.badge--blue {
    background-color: #4ec2e7;
}

.badge--blue {
    color: #4ec2e7;
    background: transparent;
}

.badge--yellow {
    background-color: #fcce54;
}

.badge--yellow {
    color: #fcce54;
    background: transparent;
}

input[type='text'],
input[type='password'],
input[type='time'] {
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
    height: 36px;
    line-height: 34px;
    padding: 0 12px;
}

.time-input__item {
    -moz-appearance: textfield;
}

.time-input__item::-webkit-outer-spin-button,
.time-input__item::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

.content ul {
  list-style-type: none;
  list-style-position: outside;
  padding: 0;
  margin: 10px 0 10px 13px;
}

.content ul li {
  padding: 4px 0;
  position: relative;
}

.content ul:not([style*="list-style-type"]){
  margin-left: 0;
}

.content ul:not([style*="list-style-type"]) li{
  padding: 4px 0 4px 20px;
  position: relative;
}

.content ul:not([style*="list-style-type"]) li:before{
  content: '\2014 ';
  color: #7e7e7e;
  position: absolute;
  left: 0;
}

.hidden {
    display: none !important;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

.text-center {
    text-align: center;
}

.text-justify {
    text-align: justify;
}

.nowrap {
    white-space: nowrap;
}

.clear {
    clear: both;
}

.grayscale {
    filter: grayscale(100%);
}


.top-warning-wrapper {
    background: #f5e7d0;
    color: #000000;
}

.top-warning {
    display: flex;
    max-width: 1170px;
    margin: 0 auto;
    padding: 10px 10px;
    font-size: 1.15em;
}

.top-warning__left {
    flex: 12 250px;
}
.top-warning__right {
    display: flex;
    flex: 1;
    align-items: center;
}

.top-warning__close-button {
    display: inline-block;
    padding: 3px 5px;
    margin-left: 20px;
    font-size: 1.15em;
    color: #000000;
    cursor: pointer;
    transition: color 0.3s, background 0.3s;
}

.cookie-warning-wrapper {
    position: fixed;
    width: 100%;
    bottom: 0;
    z-index: 9999;
    display: block;
    backdrop-filter: saturate(180%) blur(20px);
    background-color: rgba(243,243,243,0.6);
    box-shadow: 0 2px 6px rgba(8, 23, 68, 0.27);
}

.cookie-warning {
    display: flex;
    padding: 25px;
    justify-content: space-between;
}

.cookie-warning__close-button {
    cursor: pointer;
}

.top-panel-wrapper {
    background: #2f3133;
    color: #fff;
}

.top-panel {
    max-width: 1170px;
    display: flex;
    margin: 0 auto;
    height: 39px;
    justify-content: space-between;
    position: relative;
}

.top-panel-blocks {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.top-panel-block {
    display: flex;
}

.top-panel-block--left {
    flex: 1;
}

.top-search-wrapper {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
    width: 440px;
    box-sizing: border-box;
}

.top-social {
    display: flex;
    align-items: center;
    flex-basis: 200px;
    justify-content: center;
}

.top-social__icon {
    margin: 7px 6px 7px 0px;
    display: inline-block;
    height: 28px;
    width: 28px;
    color: #fff;
    text-align: center;
    font-size: 20px;
    padding-top: 3px;
    box-sizing: border-box;
    position: relative;
}

/* remove after migration to Font Awesome 5 */
.top-social__icon-tiktok {
  width: 65%;
  margin-top: 2px;
}

.top-social__icon i {
    text-shadow: 3px 3px 0px rgba(0, 0, 0, 0.15);
}

.top-social__icon:hover {
    color: #fff;
}

.top-social__icon:hover i {
    text-shadow: none;
}

.top-search-form {
    height: 39px;
    display: flex;
}

.top-search-form__input {
    flex: 1;
    margin: 0 0 0 7px;
    padding: 0 15px !important;
    border: 0;
    box-shadow: inset 0 -10px 10px -14px #000;
    border: 0 !important;
    height: 39px !important;
}

.top-search-form__button,
.mobile-menu-trigger,
.top-portals,
.top-special,
.top-sitemap,
.top-feedback,
.top-hotline,
.top-auth,
.top-search,
.top-user {
    display: flex;
    align-items: center;
    margin: 0 auto;
    color: #a6cbea;
}

.top-special {
    margin-left: 7px;
}

.top-special .top-search-form__button:hover,
.mobile-menu-trigger:hover,
.top-portals:hover,
.top-special:hover,
.top-sitemap:hover,
.top-feedback:hover,
.top-hotline:hover,
.top-auth:hover,
.top-search:hover,
.top-user:hover {
    color: #fff;
}

.top-portals {
    color: #fff;
    text-decoration: none;
    margin-right: 0;
    margin-left: 7px;
    flex-basis: 250px;
}

.top-portals__icon {
    flex: 1 0 60px;
    vertical-align: middle;
    color: #b3bec9;
    text-align: center;
    font-size: 22pt !important;
    line-height: 36px !important;
    position: relative;
    top: -1px;
}

.mobile-menu-trigger,
.top-special,
.top-sitemap,
.top-feedback,
.top-hotline,
.top-user {
    text-decoration: none;
}

.mobile-menu-trigger {
    margin-left: 0;
    color: #fff;
}

.top-auth {
    color: #fff;
    text-decoration: none;
    padding: 0 10px;
    margin-right: 0;
    margin-left: auto;
}

.top-auth--logout {
    margin-left: 0;
}

.top-search,
.top-search-form__button {
    color: #fff;
    text-decoration: none;
    padding: 0 15px;
    margin-left: 0;
    margin-right: 7px;
}

.mobile-menu-trigger__icon,
.top-special__icon,
.top-sitemap__icon,
.top-feedback__icon,
.top-hotline__icon,
.top-auth__icon,
.top-search__icon,
.top-user__icon {
    vertical-align: middle;
    font-size: 17pt !important;
    position: relative;
    top: -2px;
    margin: 0 10px;
}

.top-special, .top-sitemap, .top-feedback, .top-hotline {
    margin: 0;
}

.top-user {
    margin-left: auto;
    margin-right: 0;
}

.mobile-menu-trigger__icon {
    top: 0;
}

.top-portals__caption,
.mobile-menu-trigger__caption,
.top-special__caption,
.top-sitemap__caption,
.top-feedback__caption,
.top-hotline__caption,
.top-auth__caption,
.top-search__caption {
    margin-left: 10px;
}

.popup__hint-block,
.top-auth-error__hint-block{
    max-width: 440px;
    margin: 0 auto;
    position: relative;
    padding: 10px;
    background: #fff;
}
.popup__hint,
.top-auth-error__hint{
    text-align: center;
}
.popup__close,
.top-auth-error__close{
    display: inline;
    position: absolute;
    top: -4px;
    right: -22px;
    color: rgba(255, 255, 255, 0.8);
    font-size: 16pt;
}

.top-menu-wrapper {
    max-width: 1170px;
    margin: 0 auto;
    display: flex;
    box-sizing: border-box;
    justify-content: space-between;
    flex-wrap: wrap;
}

.top-sitename {
    margin: 10px 7px;
    flex: 1 340px;
    display: flex;
    align-items: center;
    text-decoration: none;
}

.top-sitename__logo {
    margin: 0 15px 0 0;
}

.top-sitename__title {
    color: #22252d;
    flex: 1 230px;
    font-size: 100%;
}

.top-menu {
    list-style-type: none;
    display: flex;
    margin: 0 7px;
    padding: 0;
    justify-content: space-between;
//    flex-wrap: wrap;
    align-items: center;
    flex-grow: 1;
}

.top-menu > li {
    position: relative;
}

.top-menu__root-item {
    padding: 0 12px;
    display: flex;
    align-items: center;
    border-right: 1px #f2f2f2 solid;
}

.top-menu__root-item-icon {
    color: #c3ced6;
    font-size: 16pt !important;
    margin-right: 5px;
    margin-top: 7px;
    margin-bottom: 7px;
}
.top-menu__root-item-link{
    color: #22252d;
    text-decoration: none;
}
.top-menu__root-item:hover .top-menu__root-item-link{
    color: #68a8db;
}

.top-menu__child-items {
    display: none;
    list-style-type: none;
    padding: 0;
    margin: 0;
    position: absolute;
    border: 1px #dbdbdb solid;
    border-bottom: 2px #cccccc solid;
    background: #f3f3f3;
    z-index: 10;
    width: 190px;
    left: 14px;
}

.top-menu > li:last-child .top-menu__child-items {
    left: auto;
    right: 0;
}

.top-menu__child-item {
    color: #62656b;
    padding: 7px 0;
    margin: 0 15px;
    display: block;
    text-decoration: none;
    border-bottom: 1px #e0e0e0 solid;
    border-top: 1px #ffffff solid;
    position: relative;
}

.top-menu__child-items > li:first-child > .top-menu__child-item {
    border-top: none;
}

.top-menu__child-items > li:last-child > .top-menu__child-item {
    border-bottom: none;
}

.top-menu > li:hover > .top-menu__child-items {
    display: block;
}

.top-menu > li > .top-menu__child-items > li {
    position: relative;
}

.top-menu > li > .top-menu__child-items > li:hover > .top-menu__child-items {
    display: block;
    top: -1px;
    left: 100%;
    box-shadow: inset 5px 0 10px -10px #000;
    border-left: none;
    background: #efefef;
}

.top-menu > li.first .top-menu__child-items {
    left: 0 !important;
    right: auto !important;
}

.top-menu > li.last .top-menu__child-items {
    left: auto !important;
    right: 0 !important;
}

.content-wrapper {
    box-shadow: inset 0 10px 10px -15px #000;
    background: #ffffff;
    position: relative;
}

.scroll-top {
    position: fixed;
    left: 0;
    bottom: 5px;
    font-size: 28pt;
    opacity: 0.75;
    width: 50px;
    text-align: center;
    z-index: 1;
    -webkit-transition: bottom ease-out 0.5s !important;
    -moz-transition: bottom ease-out 0.5s !important;
    -o-transition: bottom ease-out 0.5s !important;
    transition: bottom ease-out 0.5s !important;
}

.scroll-top--hidden {
    bottom: -50px;
}

.content {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 7px 30px 7px;
    box-sizing: border-box;
}

.main-speech-wrapper {
    background: #e3e5ec;
    box-shadow: inset 0 10px 10px -15px #000;
    padding: 30px 0;
    position: relative;
}

.main-speech-wrapper--empty {
    padding: 5px 0 0 0;
}

.main-speech-wrapper--empty .main-site-profile {
    margin-bottom: 5px;
}

.main-site-profile {
    margin: 20px auto;
    text-align: center;
    max-width: 1170px;
}

.main-site-profile .button {
    margin: 0 5px 5px 0;
}

.main-speech-vote {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 7px;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
}

.main-speech {
    flex: 1000 650px;
    margin: 7px 0;
    display: flex;
    background: #fff;
    box-shadow: 0 0 25px -10px #000;
    z-index: 2;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .main-speech {
        flex: 10 650px;
    }
}

.main-speech__picture {
    margin: 0;
    position: relative;
    align-self: center;
}

.main-speech__picture img {
    display: block;
    max-width: 180px;
    width: 180px;
    height: auto;
}

.main-speech__delta {
    position: absolute;
    right: 0;
    bottom: 20%;
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 30px solid #fff;
    border-left: 30px solid transparent;
}

.main-speech__body {
    display: flex;
    flex-direction: column;
    padding: 25px;
    justify-content: space-between;
    flex-basis: 100%;
}

.main-speech__title {
    margin: 0 0 20px 0;
}

.main-speech__preview {
    line-height: 1.3em;
    flex-basis: 6.6em;
    overflow: hidden;
    text-align: justify;
}

.main-speech__sign {
    margin: 26px 0 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.main-speech__detail {
    font-size: 12pt;
    font-weight: bold;
    text-decoration: none;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    margin-left: 15px;
}

.main-speech__detail-icon {
    font-size: 24pt !important;
    position: relative;
    margin: 0 0 0 5px;
}

.main-vote-wrapper {
    display: flex;
    flex-wrap: nowrap;
    flex: 1;
    z-index: 1;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .main-vote-wrapper {
        flex-grow: 1;
        flex-basis: auto;
    }
}

.main-vote {
    padding: 17px 25px 25px 25px;
    flex: 1 190px;
    min-width: 190px;
    margin: 7px 0;
    background: #f3f3f3;
    overflow: hidden;
    box-shadow: 0 0 25px -10px #000;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-left: 1px #e5e5e5 solid;
}

.main-vote__title {
    display: flex;
    align-items: center;
    margin: 0 0 20px 0;
}

.main-vote__icons {
    font-size: 11pt;
    margin: 0 15px 0 0;
    white-space: nowrap;
}

.main-vote__icons > div:last-child {
    margin-top: -3px;
}

.main-vote__icon {
    margin-right: 1px;
}

.main-vote__detail {
    font-weight: bold;
    font-size: 11pt;
    text-decoration: none;
}

.main-vote__more {
    font-size: 12pt;
    font-weight: bold;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.main-vote__more-icon {
    font-size: 24pt !important;
    position: relative;
    margin: 0 0 0 5px;
}

.main-attention {
    padding: 17px 25px 25px 25px;
    flex: 1 190px;
    min-width: 190px;
    margin: 7px 0;
    background: #f3f3f3;
    overflow: hidden;
    box-shadow: 0 0 25px -10px #000;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-left: 1px #e5e5e5 solid;
}

.main-attention__title {
    display: flex;
    align-items: center;
    margin: 0 0 20px 0;
}

.main-attention__icon {
    font-size: 20pt !important;
    margin-right: 10px;
}

.main-attention__detail {
    font-weight: bold;
    font-size: 11pt;
    text-decoration: none;
}

.main-attention__more {
    font-size: 12pt;
    font-weight: bold;
    text-decoration: none;
    display: flex;
    align-items: center;
    margin-left: auto;
}

.main-attention__more-icon {
    font-size: 24pt !important;
    position: relative;
    margin: 0 0 0 5px;
}

.main-news {
    max-width: 1170px;
    margin: 0 auto 60px auto;
}

.main-news__title {
    font-size: 200%;
    display: flex;
    align-items: center;
    margin: 20px 7px;
}

.main-news__icon {
    font-size: 35pt !important;
    margin-right: 15px;
}

.main-news__more {
    font-size: 12pt;
    text-decoration: none;
    font-weight: bold;
    margin-left: auto;
    display: flex;
    align-items: center;
}

.main-news__more-icon {
    font-size: 24pt !important;
    position: relative;
    margin: 0 0 0 5px;
}

.main-news-row {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.main-news__item {
    display: flex;
    flex: 1;
    flex-direction: column;
    background: #f3f3f3;
    border-bottom: 2px #dbdbdb solid;
    margin: 7px;
}

.main-news__picture {
    width: 100%;
    flex: 0 0 auto;
}

.main-news__date {
    margin: 10px 20px 0 20px;
    text-transform: lowercase;
}

.main-news__name {
    color: #22252d;
    text-decoration: none;
    margin: 20px 20px 25px 20px;
    font-weight: bold;
}

.main-news-slider {
    flex: 1 1 25%;
    margin: 7px;
    color: #fff;
    background: #6c7882;
    position: relative;
    overflow: hidden;
}

.main-news-slider__slides {
    list-style-type: none;
    padding: 0;
    margin: 0;
    position: relative;
    left: 0%;
    white-space: nowrap;
    -webkit-transition: left ease-out 0.5s;
    -moz-transition: left ease-out 0.5s;
    -o-transition: left ease-out 0.5s;
    transition: left ease-out 0.5s;
}

.main-news-slider__item-wrapper {
    display: inline-block;
    width: 100%;
}

.main-news-slider__item {
    display: flex;
    flex-direction: column;
}

.main-news-slider__picture {
    width: 100%;
    flex: 0 0 auto;
}

.main-news-slider__date {
    margin: 15px 20px;
}

.main-news-slider__name {
    color: #fff;
    white-space: normal;
    margin: 0 20px 10px 20px;
    font-size: 16pt;
    text-decoration: none;
}

.main-news-slider__name:hover {
    color: #fff;
    text-decoration: underline;
}

.main-news-slider__nav-prev,
.main-news-slider__nav-next {
    position: absolute;
    display: inline-block;
    width: 45px;
    height: 45px;
    background: rgba(255, 255, 255, 0.25);
    border: 1px #fff solid;
    text-align: center;
    font-size: 30pt !important;
    cursor: pointer;
    top: 40%;
}

.main-news-slider__nav-prev:hover,
.main-news-slider__nav-next:hover {
    background: rgba(255, 255, 255, 0.5);
}

.main-news-slider__nav-prev {
    left: 10px;
}

.main-news-slider__nav-next {
    right: 10px;
}

.main-news-slider__paging {
    list-style-type: none;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0 0 15px 0;
}

.main-news-slider__page {
    font-size: 11pt;
    cursor: pointer;
    opacity: 0.75;
}

.main-news-slider__page--active {
    font-size: 17pt;
}

.main-news-slider__page:hover {
    opacity: 1;
}

.main-events {
    max-width: 1170px;
    margin: 0 auto 60px auto;
}

.main-events__title {
    font-size: 200%;
    display: flex;
    align-items: center;
    margin: 20px 7px;
}

.main-events__title-text {
}

.main-events__more {
    font-size: 12pt;
    text-decoration: none;
    font-weight: bold;
    margin-left: auto;
    display: flex;
    align-items: center;
}

.main-events__more-icon {
    font-size: 24pt !important;
    position: relative;
    margin: 0 0 0 5px;
}

.main-events-row {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.main-events__item {
    display: flex;
    flex: 1;
    flex-direction: column;
    background: #f3f3f3;
    border-bottom: 2px #dbdbdb solid;
    margin: 7px;
}

.main-events__picture {
    width: 100%;
}

.main-events__date {
    margin: 10px 20px 0 20px;
}

.main-events__name {
    color: #22252d;
    text-decoration: none;
    margin: 20px 20px 25px 20px;
    font-weight: bold;
}

.main-projects-wrapper {
    background: #e3e5ec;
    box-shadow: inset 0 10px 10px -15px #000;
    padding: 40px 0;
}

.main-projects {
    max-width: 1170px;
    margin: 0 auto 60px auto;
}

.main-projects__title {
    font-size: 200%;
    display: flex;
    align-items: center;
    margin: 20px 7px;
}

.main-projects__icon {
    font-size: 35pt !important;
    margin-right: 15px;
}

.main-projects__more {
    font-size: 12pt;
    text-decoration: none;
    font-weight: bold;
    margin-left: auto;
    display: flex;
    align-items: center;
}

.main-projects__more-icon {
    font-size: 24pt !important;
    position: relative;
    margin: 0 0 0 5px;
}

.main-projects-row {
    display: flex;
    margin: 0 7px;
    justify-content: space-between;
    flex-wrap: wrap;
}

.main-projects__item {
    background: #fff;
    border: 1px #cdcdcd solid;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 25px 30px;
    flex-basis: 300px;
}

.main-projects__preview {
    padding: 0 0 0 25px;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    flex: 1 160px;
}

.main-projects__name {
    font-size: 150%;
    margin: 0 0 10px 0;
}

.main-projects__picture {
    width: 96px;
}

.main-gallery-wrapper {
    color: #fff;
    margin: 0 0 60px 0;
}

.main-gallery {
    max-width: 1170px;
    margin: 0 auto;
    padding: 35px 0;
    display: flex;
    flex-wrap: wrap;
}

.main-photo {
    margin: 7px;
    flex: 5;
    flex-basis: 550px;
    display: flex;
    flex-direction: column;
    width: 0;
}

.main-photo-slider {
    position: relative;
    overflow: hidden;
    /*flex-basis: 420px;*/
}

.main-photo-slider__slides {
    list-style-type: none;
    padding: 0;
    margin: 0;
    position: relative;
    left: 0%;
    white-space: nowrap;
    -webkit-transition: left ease-out 0.5s;
    -moz-transition: left ease-out 0.5s;
    -o-transition: left ease-out 0.5s;
    transition: left ease-out 0.5s;
}

.main-photo-slider__item-wrapper {
    display: inline-block;
    width: 100%;
    vertical-align: top;
}

.main-photo-slider__item {
    display: flex;
    flex-direction: column;
    position: relative;
}

.main-photo-slider__picture {
    width: 100%;
}

.main-photo-slider__preview {
    position: absolute;
    bottom: 0;
    height: 130px;
    background: rgba(0, 0, 0, 0.65);
    display: flex;
    flex-direction: column;
    padding: 0 0 0 135px;
    width: 100%;
    box-sizing: border-box;
}

.main-photo-slider__date {
    margin: 20px 20px 15px 20px;
    font-weight: bold;
}

.main-photo-slider__name {
    color: #fff;
    white-space: normal;
    margin: 0 20px;
    text-decoration: none;
    height: 65px;
    overflow: hidden;
    text-align: justify;
}

.main-photo-slider__nav-prev,
.main-photo-slider__nav-next {
    position: absolute;
    display: inline-block;
    width: 45px;
    height: 45px;
    background: rgba(255, 255, 255, 0.25);
    border: 1px #fff solid;
    text-align: center;
    font-size: 30pt !important;
    cursor: pointer;
    bottom: 60px;
}

.main-photo-slider__nav-prev:hover,
.main-photo-slider__nav-next:hover {
    background: rgba(255, 255, 255, 0.5);
}

.main-photo-slider__nav-prev {
    left: 25px;
}

.main-photo-slider__nav-next {
    left: 80px;
}

.main-video {
    margin: 7px;
    flex: 3;
    flex-basis: 300px;
    display: flex;
    flex-direction: column;
}

.main-video__item {
    display: flex;
    flex-direction: column;
    flex-basis: 350px;
}

.main-video__image {
    max-width: 400px;
}

.main-video__embed {
    flex: 1;
}

.main-video__date {
    margin: 15px 0;
    font-weight: bold;
}

.main-photo__title,
.main-video__title {
    font-size: 200%;
    display: flex;
    align-items: center;
    margin: 20px 7px;
}

.main-photo__icon,
.main-video__icon {
    font-size: 35pt !important;
    margin-right: 15px;
}

.main-photo__more,
.main-video__more {
    font-size: 12pt;
    text-decoration: none;
    font-weight: bold;
    margin-left: auto;
    display: flex;
    align-items: center;
}

.main-photo__more-icon,
.main-video__more-icon {
    font-size: 24pt !important;
    position: relative;
    margin: 0 0 0 5px;
}

.main-video__description {
    text-align: justify;
}

.main-free-block {
    max-width: 1170px;
    margin: 0 auto;
    padding: 15px;
}

.main-free-block img {
    max-width: 1170px !important;
    height: auto;
}

.main-sortable--enabled > div {
    position: relative;
}

.main-sortable--enabled > div:before {
    content: "\f047";
    font-family: 'Font Awesome 5 Free', sans-serif;
    font-weight: 900;
    position: absolute;
    right: 5px;
    top: 5px;
    background: #383c42;
    font-size: 14pt;
    color: #ffffff;
    padding: 5px;
}

.main-sortable-ghost {
    opacity: 0.5;
}

.main-sortable-chosen {
    border: 2px #22252d dotted !important;
}

.main-sortable-drag {

}

.footer-menu-wrapper {
    background: #2f3133;
    margin-top: auto;
}

.footer-menu {
    max-width: 1170px;
    margin: 0 auto;
}

.footer-menu__root-items {
    display: flex;
    list-style-type: none;
    padding: 0;
    margin: 40px 0;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.footer-menu__root-item {
    margin: 7px;
    flex: auto;
}

.footer-menu__root-item a {
    text-decoration: none;
}

.footer-menu__items {
    list-style-type: none;
    margin: 20px 0 0 0;
    padding: 0;
}

.footer-menu__item {
    margin: 7px 0;
    font-size: 10pt;
}

.footer-menu__item a {
    color: #eaeaea;
}

.footer-contacts-wrapper {
    background: #2f3133;
    color: #fff;
}

.footer-contacts {
    max-width: 1170px;
    margin: 10px auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    font-size: 10pt;
}

.footer-contacts__item {
    display: flex;
}

.footer-contacts__caption,
.footer-contacts__value {
    margin: 7px;
}

.footer-contacts__value {
    color: #ffffff;
    font-size: 11pt;
}

.footer-wrapper {
    background: #2f3133;
    color: #fff;
}

.footer {
    max-width: 1170px;
    margin: 15px auto;
    display: flex;
    justify-content: space-between;
    font-size: 10pt;
    flex-wrap: wrap;
    align-items: center;
}

.footer-sitename {
    color: #fff;
    text-decoration: none;
    display: flex;
    align-items: center;
    flex-basis: 420px;
}

.footer-sitename__logo {
    margin: 7px;
}

.footer-sitename__title {
    margin: 7px;
    flex: 1 200px;
}

.footer-social {
    display: flex;
    align-items: center;
    flex-basis: 320px;
    justify-content: flex-end;
}

.footer-social__caption {
    margin: 7px 10px 7px 7px;
}

.footer-social__icon {
    margin: 7px 6px 7px 0px;
    display: inline-block;
    height: 28px;
    width: 28px;
    color: #fff;
    text-align: center;
    font-size: 20px;
    padding-top: 3px;
    box-sizing: border-box;
    position: relative;
}

/* remove after migration to Font Awesome 5 */
.footer-social__icon-tiktok {
  width: 65%;
  margin-top: 2px;
}

.footer-social__icon--separated {
    margin-left: 7px;
}

.footer-social__icon--separated:before {
    content: '';
    display: inline-block;
    background: rgba(255, 255, 255, 0.15);
    width: 1px;
    height: 28px;
    position: absolute;
    left: -7px;
    top: 0;
}

.footer-social__icon i {
    text-shadow: 3px 3px 0px rgba(0, 0, 0, 0.15);
}

.footer-social__icon:hover {
    color: #fff;
    /*font-size: 18pt;
      padding-top: 3px;*/
}

.footer-social__icon:hover i {
    text-shadow: none;
}

.footer-license {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 44px;
  margin: 0 auto;
}

.footer-license span > a {
  margin: 10px 0;
  color: #ffffff;
}

.footer-license span {
  position: relative;
}

.footer-license span:before {
  content: '';
  position: absolute;
  top: 4px;
  left: -30px;
  width: 24px;
  height: 25px;
  background: url("/local/templates/g1/images/footer-license.png");
}

/*.button {
    text-align: left;
    background: #f4f7f8;
    background: -webkit-linear-gradient(top,#fafcfc,#ecf2f4);
    background: -moz-linear-gradient(top,#fafcfc,#ecf2f4);
    background: -o-linear-gradient(top,#fafcfc,#ecf2f4);
    background: -ms-linear-gradient(top,#fafcfc,#ecf2f4);
    background: linear-gradient(to bottom,#fafcfc,#ecf2f4);
    border-radius: 3px;
    -webkit-box-shadow: 0 0 0 1px rgba(0,0,0,.07),0 1px 0 rgba(0,0,0,.1),0 1px 1px rgba(0,0,0,.15);
    box-shadow: 0 0 0 1px rgba(0,0,0,.07),0 1px 0 rgba(0,0,0,.1),0 1px 1px rgba(0,0,0,.15);
    display: inline-block;
    color: #505d67!important;
    cursor: pointer;
    font-size: 12pt;
    height: 29px;
    line-height: 29px;
    text-decoration: none;
    padding: 0 13px;
    margin: 0;
    position: relative;
    vertical-align: top;
    z-index: 1;
    box-sizing: border-box;
    border: none;
}
.button > i {
    margin-right: 7px;
}
.button:hover {
    background: #fbfcfc;
    background: -webkit-linear-gradient(top,#fcfcfc,#fafcfc);
    background: -moz-linear-gradient(top,#fcfcfc,#fafcfc);
    background: -o-linear-gradient(top,#fcfcfc,#fafcfc);
    background: -ms-linear-gradient(top,#fcfcfc,#fafcfc);
    background: linear-gradient(to bottom,#fcfcfc,#fafcfc);
    -webkit-box-shadow: 0 0 0 1px rgba(0,0,0,.07),0 1px 0 rgba(0,0,0,.1),0 1px 1px rgba(0,0,0,.15),inset 0 -1px 0 #fff;
    box-shadow: 0 0 0 1px rgba(0,0,0,.07),0 1px 0 rgba(0,0,0,.1),0 1px 1px rgba(0,0,0,.15),inset 0 -1px 0 #fff;
    text-decoration: none;
}
.button[disabled], .button[disabled]:hover {
    color: #737373 !important;
    cursor: default !important;
}*/
.button {
    font-family: 'Trebuchet MS', 'Arial', 'Tahoma', 'Verdana', 'sans-serif';
    text-align: left;
    border-width: 1px;
    border-style: solid;
    height: 36px;
    line-height: 34px;
    padding: 0 12px;
    display: inline-block;
    text-decoration: none;
    box-sizing: border-box;
    cursor: pointer;
    background: #fff;
    vertical-align: middle;
}

.button > i {
    margin-right: 7px;
}

.button.wait {
    cursor: progress;
}

.button.wait > i:before {
    content: '\f1ce';
}

.button.wait > i {
    animation: spinner 1s infinite linear;
}

@keyframes spinner {
    to {
        transform: rotate(360deg);
    }
}

.button:hover {
    color: #fff;
}

.button[disabled],
.button[disabled]:hover {
    opacity: 0.5;
    background: #fff;
    cursor: default !important;
    display: inline-block;
    pointer-events: none;
}

.content-wrapper table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
}

.content-wrapper table td,
.content-wrapper table th {
    border: 1px #e4e5e5 solid;
    padding: 7px 14px;
    text-align: left;
    vertical-align: top;
}

.content-wrapper table th {
    font-weight: bold;
    background: #efefef;
}

.content-wrapper table.striped tbody tr:nth-child(odd) {
    background: #f8f8f8;
}

.item-admin {
    font-size: 14pt;
    white-space: nowrap;
    margin-left: auto;
}

.item-admin__delete {
    color: #a14743;
}

.item-admin > * {
    text-decoration: none;
}

.item-admin__delete:hover {
    color: #e42f27;
}

.tabs {
    display: none;
}

.tabs-head {
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
    padding: 10px 25px 0 25px !important;
    margin: 0 !important;
    background: #f3f3f3;
    border-bottom: 2px #dbdbdb solid;
    font-size: 12pt;
}

.tabs-head__item {
    height: 42px;
    line-height: 36px;
    padding: 0 16px !important;
    position: relative;
    bottom: -2px;
    white-space: nowrap;
    cursor: pointer;
    border: 1px transparent solid;
    border-bottom: 0;
}

.tabs-head__item:before {
    display: none;
}

.tabs-head__item--active {
    background: #fff;
    border: 1px #e6e6e6 solid;
    border-bottom: 0;
}

.tabs-body {
    display: block;
    list-style-type: none;
    padding: 20px 0 !important;
    margin: 0 !important;
}

.tabs-body__item {
    display: none;
    padding: 0 !important;
}

.tabs-body__item:before {
    display: none;
}

.tabs-body__item--active {
    display: block;
}

.ya-share2__list {
    padding: 0 !important;
    margin: 0 !important;
}

.ya-share2__item {
    padding: 0 !important;
    margin: 0 5px 5px 0 !important;
}

.ya-share2__item:before {
    display: none;
}

body.special {
    opacity: 0;
}

.b-color,
.b-light-color,
.b-extra-light-color,
.b-desat-color {
    transition: color 0.25s ease-out;
}

.b-bg,
.b-light-bg,
.b-extra-light-bg,
.b-desat-bg,
.b-dark-1-bg,
.b-dark-2-bg,
.b-dark-3-bg {
    transition: background-color 0.25s ease-out;
}

.b-border,
.b-light-border,
.b-extra-light-border,
.b-desat-border,
.b-dark-1-border,
.b-dark-2-border,
.b-dark-3-border {
    transition: border-color 0.25s ease-out;
}

.b-dark-grad {
    transition: all 0.25s ease-out;
}

.edit-form__date,
.news-filter__date {
    position: relative;
    width: 125px !important;
    padding-right: 34px !important;
}

.edit-form__date--time,
.news-filter__date--time {
    width: 155px !important;
}

.edit-form__date + .fa,
.edit-form__date + .fas,
.edit-form__date + .far,
.edit-form__date + .fab,
.news-filter__date + .fa,
.news-filter__date + .fas,
.news-filter__date + .far,
.news-filter__date + .fab {
    color: #a2a4a9;
    cursor: pointer;
    position: absolute;
    margin: 8px 0 0 -24px;
    font-size: 10.5pt;
}

.edit-form__date + .fa:hover,
.news-filter__date + .fa:hover {
    color: #6e7072;
}

li > p {
    margin: 0 0 10px 0;
}

.select2-selection__choice:before,
.select2-search:before {
    display: none;
}

.select2-container--default .select2-selection--multiple {
    border-color: #c8cad2 !important;
    border-radius: 0 !important;
    position: relative;
}

.select2-container--default .select2-selection--multiple:after {
    content: '';
    display: inline-block;
    position: absolute;
    width: 0;
    height: 0;
    border-top: 5px #888 solid;
    border-left: 4px transparent solid;
    border-right: 4px transparent solid;
    right: 5px;
    top: 50%;
}

.select2-container--default .select2-selection--multiple[aria-expanded='true']:after {
    border-top: none;
    border-bottom: 5px #888 solid;
    border-left: 4px transparent solid;
    border-right: 4px transparent solid;
}

.select2-container--default .select2-selection--single {
    border-color: #c8cad2 !important;
    border-radius: 0 !important;
    height: 100% !important;
    min-height: 32px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100%!important;
}

.bx-calendar-form-input {
    padding: 0 !important;
    height: 21px !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
    padding: 2px 5px !important;
    border: 1px #dbdbdb solid !important;
    border-left-width: 4px !important;
    background-color: #f3f3f3 !important;
    border-radius: 0 !important;
    color: #454545 !important;
    max-width: 320px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.select2-results__option option  {
    white-space: normal !important;
    line-height: 1.6;
}

.select2-container .select2-selection--single .select2-selection__rendered{
    white-space: normal !important;
}

.select2-container{
    display: inline-block;
    border: 1px solid #aaa;
    vertical-align: top !important;
}

.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple{
    border: none !important;
}

.select2-container--open .select2-dropdown--below{
    margin-left: -1px !important;
}

.bxlhe-frame-table {
    margin: 0 !important;
}

.lha-source-div {
    padding: 0;
}

.lha-textarea {
    width: 100% !important;
    height: 100% !important;
}

.lhe-button-cont--html {
    font-size: 10px;
    line-height: 20px;
    font-weight: bold;
    height: 20px;
    margin: 2px 4px;
    width: 40px;
    text-align: center;
    color: #383838;
    cursor: default;
}

.lhe-button-cont--html:hover {
    background: #e7e7e7;
}

.map-columns tr {
    display: flex;
    flex-wrap: wrap;
}

.map-columns td {
    border: none !important;
    flex: 1 320px;
    padding: 0 !important;
}

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

.portals--wide {
    display: block;
}

.portal-groups {
    flex: 0 320px;
    padding: 10px 0;
}

.portal-groups__item {
    display: block;
}

.portal-list {
    flex: 1 320px;
    padding: 10px;
}

.portal-list__group-name {
    padding: 7px 0;
}

.portal-list__item {
    padding: 7px 0;
}

.mfp-content .portals {
    max-width: 800px;
    margin: 20px auto;
    background: #fff;
    padding: 0;
}

.mfp-content .portal-groups {
    background: #525252;
    height: 500px;
    overflow-y: auto;
}

.mfp-content .portal-groups__item {
    color: #fff;
    padding: 7px 20px;
    text-transform: uppercase;
    text-decoration: none;
}

.mfp-content .portal-groups__item:hover {
    background: #fff;
    color: #525252;
}

.mfp-content .portal-list__group-name {
    text-transform: uppercase;
    padding: 7px 0;
}

.mfp-content .portal-list {
    height: 500px;
    overflow-y: auto;
}

.mfp-content .portal-list__item {
    padding: 7px 0;
}

.contacts-map {
    height: 500px;
}

.edit-form--disabled::before {
    cursor: wait;
}

.map__edit {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 20px;
}

.district-map {
    height: 700px;
    padding: 5px;
    border: 1px solid #eee;
}

.district__symbols {
    display: flex;
    justify-content: flex-start;
}

.district__symbols-images {
    flex: 1 250px;
    margin-right: 20px;
}

.district__symbols-image {
    text-align: center;
    font-size: 0;
}

.district__symbols-image:not(:last-child) {
    margin-bottom: 25px;
}

.district__symbols-image img {
    max-width: 100%;
}

.district__symbols-description {
    flex: 3 650px;
}

.district__symbols-link {
    margin-top: 10px;
}

.district__buttons {
    margin-bottom: 10px;
}

.news-filter__sort {
    flex: 1 300px;
    white-space: nowrap;
}

.edit-form__hint-msg {
    font-size: 10pt;
    color: #7e7e7e;
    font-style: italic;
}

.progress {
    display: none;
}

.progress__bar {
    height: 20px;
    width: calc(100% - 2px);
    margin-top: 3px;
    transition: height .2s, margin-top .2s !important;
    text-align: center;
    line-height: 20px;
    border: 1px solid;
    color: #fff;
}

.progress__loading {
    width: 0;
    height: 100%;
    transition: width .5s linear !important;
}

p.progress__title {
    margin: 5px 0;
}

.change-blocks-order.b-bg {
    color: #ffffff;
}

#sputnik-informer {
    line-height: 0;
}

.top-age {
    display: flex;
    align-items: center;
    margin: 0px 10px 0 10px;
    font-size: 14pt !important;
    font-weight: 600;
    text-decoration: none;
  }

.gray-link {
    color: #808080 !important;
}

.platform-news {
    color: #ba000d;
    background-color: rgba(255, 121, 97, 0.7);
    border-color: #ba000d !important;
  }

@media print {
    body > *:not(.content-wrapper) {
      display: none;
    }

    .breadcrumb {
      display: none;
    }

    .sub-menu {
      display: none;
    }
  }

.deleting-dialog {
    position: relative;
    background: #FFF;
    padding: 20px;
    width:auto;
    max-width: 550px;
    margin: 20px auto;
}

.deleting-dialog__head {
    font-size: 120%;
    margin-bottom: 10px;
}

.deleting-dialog__body {
    max-height: 500px;
    overflow-y: auto;
}

.deleting-dialog__relation {
    display: flex;
    align-items: center;
    margin: 2px 0;
}

.deleting-dialog__relation > div {
    flex: 1;
}

.deleting-dialog__relation > div.deleting-dialog__label {
    flex: 0 170px;
}

.deleting-dialog__buttons {
    margin-top: 10px;
}

#video-bg__wrapper {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    clip: rect(0, auto, auto, 0);
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    overflow: hidden;
}

#video-bg__player {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
    overflow: hidden;
    position: fixed;
    top: 0;
    left: 0;
}

.browser-warning {
  position: relative;
  padding: 10px 10px;
  text-align: center;
  font-size: 14px;
  background: #f5e7d0;
  border-bottom: 1px solid #efd9b6;
  z-index: 10;
}

.browser-warning__link {
  color: #2b76b2;
}

.browser-warning__link:hover {
  text-decoration: none;
}
