/* pt-serif-regular - cyrillic-ext */

@font-face {
  font-family: "PT Serif";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: local(""), url("../fonts/pt-serif-v17-cyrillic-ext-regular.woff2") format("woff2"), url("../fonts/pt-serif-v17-cyrillic-ext-regular.woff") format("woff"), url("../fonts/pt-serif-v17-cyrillic-ext-regular.ttf") format("truetype");
  /* Safari, Android, iOS */
}

/* pt-serif-italic - cyrillic-ext */

@font-face {
  font-family: "PT Serif";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: local(""), url("../fonts/pt-serif-v17-cyrillic-ext-italic.woff2") format("woff2"), url("../fonts/pt-serif-v17-cyrillic-ext-italic.woff") format("woff"), url("../fonts/pt-serif-v17-cyrillic-ext-italic.ttf") format("truetype");
  /* Safari, Android, iOS */
}

/* pt-serif-700 - cyrillic-ext */

@font-face {
  font-family: "PT Serif";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: local(""), url("../fonts/pt-serif-v17-cyrillic-ext-700.woff2") format("woff2"), url("../fonts/pt-serif-v17-cyrillic-ext-700.woff") format("woff"), url("../fonts/pt-serif-v17-cyrillic-ext-700.ttf") format("truetype");
  /* Safari, Android, iOS */
}

/* pt-serif-700italic - cyrillic-ext */

@font-face {
  font-family: "PT Serif";
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: local(""), url("../fonts/pt-serif-v17-cyrillic-ext-700italic.woff2") format("woff2"), url("../fonts/pt-serif-v17-cyrillic-ext-700italic.woff") format("woff"), url("../fonts/pt-serif-v17-cyrillic-ext-700italic.ttf") format("truetype");
  /* Safari, Android, iOS */
}

/* pt-serif-caption-regular - cyrillic-ext */

@font-face {
  font-family: "PT Serif Caption";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: local(""), url("../fonts/pt-serif-caption-v17-cyrillic-ext-regular.woff2") format("woff2"), url("../fonts/pt-serif-caption-v17-cyrillic-ext-regular.woff") format("woff"), url("../fonts/pt-serif-caption-v17-cyrillic-ext-regular.ttf") format("truetype");
  /* Safari, Android, iOS */
}

/* TT Firs Neue DemiBold - cyrillic-ext */

@font-face {
  font-family: "TT Firs Neue DemiBold";
  font-style: normal;
  font-weight: 600;
  font-display: block;
  src: local(""), url("../fonts/TTFirsNeue-DemiBold.woff2") format("woff2"), url("../fonts/TTFirsNeue-DemiBold.woff") format("woff"), url("../fonts/TTFirsNeue-DemiBold.ttf") format("truetype");
  /* Safari, Android, iOS */
}

/* Graphik LCG - cyrillic*/

@font-face {
  font-weight: 700;
  font-style: normal;
  font-family: "Graphik LCG";
  src: url("../../../assets/css/fonts/GraphikLCG/GraphikLCG-Bold.eot");
  src: url("../../../assets/css/fonts/GraphikLCG/GraphikLCG-Bold.woff2") format("woff2"), url("../../../assets/css/fonts/GraphikLCG/GraphikLCG-Bold.woff") format("woff"), url("../../../assets/css/fonts/GraphikLCG/GraphikLCG-Bold.ttf") format("truetype");
}

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

img {
  max-width: 100%;
  height: auto;
  display: block;
}

html,
body {
  min-height: 100%;
}

body {
  padding: 0;
  margin: 0;
  font-family: "PT Serif", serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 133%;
  color: #ffffff;
  background-color: #191919;
}

button {
  cursor: pointer;
  font-family: inherit;
  text-align: center;
}

.container {
  max-width: 1200px;
  margin: auto;
}

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

@-webkit-keyframes jumping {
  0% {
    transform: translateY(0px);
  }

  50% {
    transform: translateY(-8px);
  }

  100% {
    transform: translateY(0px);
  }
}

@keyframes jumping {
  0% {
    transform: translateY(0px);
  }

  50% {
    transform: translateY(-8px);
  }

  100% {
    transform: translateY(0px);
  }
}

@-webkit-keyframes moving-down {
  from {
    transform: translateY(-30px);
  }

  to {
    transform: translateY(0);
  }
}

@keyframes moving-down {
  from {
    transform: translateY(-30px);
  }

  to {
    transform: translateY(0);
  }
}

@-webkit-keyframes moving-up {
  from {
    transform: translateY(30px);
  }

  to {
    transform: translateY(0);
  }
}

@keyframes moving-up {
  from {
    transform: translateY(30px);
  }

  to {
    transform: translateY(0);
  }
}

@-webkit-keyframes disappear {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes disappear {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@-webkit-keyframes showing {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes showing {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@-webkit-keyframes scaleX {
  from {
    transform: scaleX(70%);
  }

  to {
    transform: scaleX(100%);
  }
}

@keyframes scaleX {
  from {
    transform: scaleX(70%);
  }

  to {
    transform: scaleX(100%);
  }
}

@-webkit-keyframes scale {
  from {
    transform-origin: bottom;
    transform: scale(70%);
  }

  to {
    transform: scale(100%);
  }
}

@keyframes scale {
  from {
    transform-origin: bottom;
    transform: scale(70%);
  }

  to {
    transform: scale(100%);
  }
}

@-webkit-keyframes move-bg {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-100vw);
  }
}

@keyframes move-bg {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-100vw);
  }
}

@-webkit-keyframes move-header {
  from {
    background-position-y: 190px;
  }

  to {
    background-position-y: 0;
  }
}

@keyframes move-header {
  from {
    background-position-y: 190px;
  }

  to {
    background-position-y: 0;
  }
}

@-webkit-keyframes rotate {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes rotate {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(360deg);
  }
}

.tablet-br {
  display: none;
}

.mobile-br {
  display: none;
}

.mobile-small-br {
  display: none;
}

.page-wrapper {
  width: 100%;
  height: 100vh;
  overflow-x: hidden;
  overflow-y: auto;
}

.header {
  width: 100%;
  max-width: 1920px;
  margin: auto;
}

.header_wrapper {
  width: 100%;
  max-width: 1920px;
  position: fixed;
  top: 0;
  z-index: 5;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 32px 32px 0 56px;
  -webkit-animation-name: showing, moving-down;
          animation-name: showing, moving-down;
  -webkit-animation-duration: 1.87s, 1.87s;
          animation-duration: 1.87s, 1.87s;
  -webkit-animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1), cubic-bezier(0.65, 0, 0.35, 1);
          animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1), cubic-bezier(0.65, 0, 0.35, 1);
  -webkit-animation-delay: 1.5s, 1.5s;
          animation-delay: 1.5s, 1.5s;
  -webkit-animation-fill-mode: both, both;
          animation-fill-mode: both, both;
}

.burger-menu_button {
  display: block;
  border: none;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  width: 64px;
  height: 64px;
  background-image: url("../img/icon_menu.svg");
  background-repeat: no-repeat;
  background-size: 24px;
  background-position: center;
  transition-property: background-color;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.burger-menu_button:hover {
  background-color: #191919;
  transition-property: background-color;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.burger-menu_wrap {
  display: none;
}

header.menu-opened .burger-menu_wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  position: fixed;
  z-index: 10;
  background-image: url("../img/menu_cover.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding: 40px 0;
}

header.menu-opened .burger-menu_button {
  display: none;
}

header.menu-opened .main-menu {
  z-index: -1;
}

.burger-menu .close {
  display: none;
}

header.menu-opened .burger-menu .close {
  display: block;
  background-color: transparent;
  padding: 0;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px;
  background-image: url("../img/icon_cross_small.svg");
  position: absolute;
  top: 40px;
  right: 40px;
}

header.menu-opened .burger-menu .close:hover {
  border: 1px solid #ffffff;
}

header.menu-opened .menu-title {
  font-family: "Graphik LCG", sans-serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 24px;
  text-align: center;
  text-transform: uppercase;
  color: #DC2828;
  padding: 0 80px;
  margin-top: 28px;
}

header.menu-opened .books-wrapper {
  margin: auto;
  width: 100%;
  max-width: 1200px;
}

.books-wrapper .scrollbar-track-y {
  display: none !important;
}

header.menu-opened .books {
  padding: 0 40px;
  margin: 0;
  list-style: none;
  display: flex;
  min-width: 100%;
}

header.menu-opened .book {
  flex-shrink: 0;
  width: 288px;
  height: 360px;
}

.book:not(:last-of-type) {
  margin-right: 48px;
}

.main-menu {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  list-style: none;
  padding: 77px 158px 0 161px;
  margin: 0 200px;
  position: absolute;
  z-index: 5;
  top: 0;
  width: calc(100% - 400px);
  max-width: 1920px;
  -webkit-animation-name: showing, moving-down;
          animation-name: showing, moving-down;
  -webkit-animation-duration: 1.87s, 1.87s;
          animation-duration: 1.87s, 1.87s;
  -webkit-animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1), cubic-bezier(0.65, 0, 0.35, 1);
          animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1), cubic-bezier(0.65, 0, 0.35, 1);
  -webkit-animation-delay: 1.5s, 1.5s;
          animation-delay: 1.5s, 1.5s;
  -webkit-animation-fill-mode: both, both;
          animation-fill-mode: both, both;
}

.main-menu a,
.main-menu li {
  text-transform: uppercase;
  text-decoration: none;
  color: inherit;
  font-size: 20px;
  line-height: 120%;
  letter-spacing: 0.08em;
  transition-property: color;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.main-menu li:not(:last-child) {
  margin-right: 16px;
}

.main-menu.hide li {
  z-index: -1;
  opacity: 0;
  transform: translateY(-200px);
  transition-property: opacity, transform;
  transition-duration: 0.5s, 1s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1), cubic-bezier(0.65, 0, 0.35, 1);
}

.main-menu.show li {
  opacity: 1;
  transition-property: opacity;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.main-menu a:hover {
  color: #DC2828;
  transition-property: color;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.logo a {
  display: block;
}

.logo .star {
  fill: #ffffff;
  transition-property: fill;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.logo svg:hover .star,
.logo:hover .star {
  fill: #DC2828;
  transition-property: fill;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.preview {
  position: relative;
  height: 100vh;
  max-width: 1920px;
  margin: auto;
}

.preview_wrapper {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  height: 100%;
  padding-top: 150px;
}

.preview_button {
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  width: 64px;
  height: 64px;
  background-image: url("../img/icon-arrow-right.svg");
  background-repeat: no-repeat;
  background-size: 24px;
  background-position: center;
  position: absolute;
  bottom: 56px;
  left: 56px;
  -webkit-animation-name: showing, moving-up, jumping;
          animation-name: showing, moving-up, jumping;
  -webkit-animation-duration: 1.87s, 1.87s, 2s;
          animation-duration: 1.87s, 1.87s, 2s;
  -webkit-animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1), cubic-bezier(0.65, 0, 0.35, 1), linear;
          animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1), cubic-bezier(0.65, 0, 0.35, 1), linear;
  -webkit-animation-delay: 1.5s, 1.5s, 3.39s;
          animation-delay: 1.5s, 1.5s, 3.39s;
  -webkit-animation-iteration-count: 1, 1, infinite;
          animation-iteration-count: 1, 1, infinite;
  -webkit-animation-fill-mode: both, forwards, none;
          animation-fill-mode: both, forwards, none;
}

.preview_button.hide {
  -webkit-animation-name: disappear;
          animation-name: disappear;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
          animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}

.preview_header {
  opacity: 1;
  transition-property: opacity;
  transition-duration: 1s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.preview_header.hide {
  opacity: 0;
  transition-property: opacity;
  transition-duration: 1s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.header_wrap_1,
.header_wrap_2,
.header_wrap_3 {
  width: 100%;
  height: 185px;
  background-repeat: no-repeat;
  overflow: hidden;
  -webkit-animation-name: move-header;
          animation-name: move-header;
  -webkit-animation-duration: 1.87s;
          animation-duration: 1.87s;
  -webkit-animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
          animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
}

.header_wrap_1 {
  background-image: url("../img/russkii-desktop.svg");
  margin-bottom: 5px;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}

.header_wrap_2 {
  height: 143px;
  background-image: url("../img/kod-desktop.svg");
  background-position-x: 391px;
  -webkit-animation-delay: 1.1s;
          animation-delay: 1.1s;
}

.header_wrap_3 {
  background-image: url("../img/voiny-desktop.svg");
  margin-top: -34px;
  background-position-x: 520px;
  -webkit-animation-delay: 1.2s;
          animation-delay: 1.2s;
}

.lead {
  font-family: "PT Serif Caption", serif;
  font-size: 36px;
  font-weight: 400;
  line-height: 111%;
  text-align: center;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  max-width: 880px;
  margin: 0 auto 39px;
}

.lead:last-of-type {
  margin-bottom: 95px;
}

.text {
  max-width: 576px;
  margin: 0 auto 25px;
}

.text:not(:only-child):first-of-type::before {
  content: "";
  width: 100%;
  height: 2px;
  display: block;
  background-image: url("../img/dash.svg");
  background-repeat: repeat-x;
  margin-bottom: 24px;
}

.title {
  font-family: "TT Firs Neue DemiBold", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 72px;
  line-height: 100%;
  margin: 0 0 157px;
}

.lead-text {
  font-style: italic;
  font-weight: 400;
  font-size: 28px;
  line-height: 114%;
  text-align: center;
  letter-spacing: 0.01em;
  max-width: 880px;
  margin: 73px auto 82px;
}

.lead-text::before,
.lead-text::after {
  content: "";
  display: block;
}

.lead-text::before {
  width: 100%;
  border-top: 4px solid #DC2828;
  margin-bottom: 49px;
}

.lead-text.animation::before {
  -webkit-animation-name: scaleX;
          animation-name: scaleX;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
          animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.lead-text::after {
  width: 14px;
  height: 14px;
  background-color: #DC2828;
  transform: rotate(45deg);
  margin: 48px auto 0;
}

.section_flags {
  margin: 160px auto;
  width: 100%;
  height: 100%;
  max-width: 1200px;
}

.flags {
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
  min-width: 100%;
}

.flag {
  flex-shrink: 0;
  width: 272px;
  height: 716px;
  padding: 100px 32px 210px;
  background-image: url("../img/flag.png");
  background-repeat: no-repeat;
  background-size: contain;
}

.flag.animation {
  -webkit-animation-name: showing, moving-up;
          animation-name: showing, moving-up;
  -webkit-animation-duration: 1.5s, 1s;
          animation-duration: 1.5s, 1s;
  -webkit-animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1), cubic-bezier(0.65, 0, 0.35, 1);
          animation-timing-function: cubic-bezier(0.65, 0, 0.35, 1), cubic-bezier(0.65, 0, 0.35, 1);
  -webkit-animation-fill-mode: both, both;
          animation-fill-mode: both, both;
}

.flag_1.animation {
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}

.flag_2.animation {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
}

.flag_3.animation {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

.flag_4.animation {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}

.flag:not(:last-child) {
  margin-right: 37px;
}

.flag_year {
  font-family: "TT Firs Neue DemiBold", sans-serif;
  font-size: 72px;
  line-height: 100%;
  font-weight: 600;
}

.flag_header {
  font-family: "PT Serif Caption", serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 120%;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  margin: 0 auto 24px;
}

.flag_text {
  font-style: italic;
  font-size: 14px;
  line-height: 143%;
}

.flag_text::before {
  content: "";
  width: 100%;
  height: 2px;
  display: block;
  margin-bottom: 23px;
  background-image: url("../img/dash.svg");
  background-repeat: repeat-x;
  background-size: 6px 2px;
}

.section_1 {
  padding-top: 317px;
  padding-bottom: 315px;
}

.section_1 .text:first-of-type::before {
  width: 13px;
  height: 13px;
  background-color: #DC2828;
  transform: rotate(45deg);
  background-image: none;
  margin: 0 auto 28px;
}

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

.section_2,
.section_3,
.section_5,
.section_6,
.section_7,
.section_8,
.section_9,
.section_10 {
  padding-top: 60px;
  padding-bottom: 314px;
}

.section_4.video {
  padding-top: 60px;
  padding-bottom: 345px;
}

.footer {
  padding-top: 60px;
  text-align: center;
}

.footer_link {
  display: inline-block;
  margin: 0 auto;
}

.footer_link svg path {
  fill: #ffffff;
  transition-property: fill;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.footer_link:hover svg path {
  fill: #DC2828;
  transition-property: fill;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.footer_menu {
  display: flex;
  justify-content: space-between;
  padding: 54px 0;
  margin: 142px auto 0;
  list-style: none;
}

.footer_menu a,
.footer_menu li {
  color: inherit;
  font-family: "PT Serif Caption", serif;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 18px;
  line-height: 120%;
  letter-spacing: 0.08em;
  transition-property: color;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.footer_menu li:not(:last-child) {
  margin-right: 16px;
}

.footer_menu a:hover {
  color: #DC2828;
  transition-property: color;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.photo {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  display: flex;
  height: 100vh;
  transform: translateX(0);
  transition-property: transform;
  transition-duration: 2.5s;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}

.photo_empty {
  min-width: 100vw;
  min-height: 100vh;
  background-color: #191919;
}

.photo_1-4,
.photo_5-11 {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 100%;
  background-color: #191919;
}

.photo_1-4 {
  width: 400vw;
  background-image: url("../img/photo_1-4.jpg");
}

.photo_5-11 {
  width: 700vw;
  background-image: url("../img/photo_5-11.jpg");
}

.scrollbar-track-x {
  display: none !important;
}

.preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 100;
  background-color: #191919;
  opacity: 1;
  transition: opacity 1s;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.preloader.ready {
  opacity: 0;
  transition: opacity 1s;
}

.preloader_logo {
  width: 144px;
  height: 144px;
  position: relative;
}

.logo-text {
  width: 100%;
  height: 100%;
  -webkit-animation: rotate 8s infinite linear;
          animation: rotate 8s infinite linear;
  pointer-events: none;
}

.logo-star {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.preloader_percent {
  margin-top: 60px;
  font-weight: 600;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
  color: #DC2828;
}

.media {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}

.media.video {
  padding-top: 55.8%;
  background-color: #333333;
}

.media.video::-webkit-media-controls {
  display: none !important;
}

.media.video .poster {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 4;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.media.video video,
.media.video iframe {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 100%;
  height: 100%;
}

.media.video .big_play {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
}

.media.video .big_play::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.media.video .big_play:hover::before {
  display: none;
}

.media.video .big_play > .play {
  width: 96px;
  height: 96px;
  cursor: pointer;
  border-radius: 50%;
  background-color: #DC2828;
  background-repeat: no-repeat;
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url("../img/player/play.svg");
  background-size: 32px 32px;
  background-position: center;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
  transition: 0.5s;
}

.media.video .big_play > .play:hover {
  transform: scale(101%) translate(-50%, -50%);
  transition: 0.5s;
}

.player {
  display: flex;
  flex-wrap: wrap;
  background-color: #333333;
  border-radius: 8px;
  padding: 16px 16px 0;
  align-items: center;
  font-size: 12px;
}

.player > * {
  margin-bottom: 16px;
}

.player .nowrap {
  white-space: nowrap;
  padding-top: 1px;
}

.media.video .player {
  position: absolute;
  z-index: 3;
  left: 0;
  bottom: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 0;
  color: white;
}

.player button {
  width: 20px;
  height: 20px;
  background-color: transparent;
  border: none;
  padding: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.player button:not(:last-child) {
  margin-right: 16px;
}

.player .duration {
  margin-right: 16px;
}

.player button.play {
  background-image: url("../img/player/player-play.svg");
  background-position: -1px center;
}

.player button.pause {
  background-image: url("../img/player/player-pause.svg");
  background-position: -2px center;
}

.player button.sound_max {
  background-image: url("../img/player/player-volume.svg");
}

.player button.sound_off {
  background-image: url("../img/player/player-muted.svg");
}

.media.video .player button.play {
  background-image: url("../img/player/player-play-white.svg");
}

.media.video .player button.pause {
  background-image: url("../img/player/player-pause-white.svg");
}

.media.video .player button.sound_max {
  background-image: url("../img/player/player-volume-white.svg");
}

.media.video .player button.sound_off {
  background-image: url("../img/player/player-muted-white.svg");
}

.media.video .player button.expand {
  background-image: url("../img/player/player-full-screen-enter2-white.svg");
  margin-left: 16px;
}

.media.audio .player button.expand {
  display: none;
}

.player .nowrap span {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.player .current::after {
  content: "/";
  width: 2px;
  height: 10px;
  margin-left: 8px;
  margin-right: 8px;
}

.player .progress {
  position: relative;
  height: 4px;
  flex: 0 0 100%;
  border-radius: 100px;
  background-color: #e4e4e4;
  cursor: pointer;
}

.player .progress .preload {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 0%;
  height: 4px;
  border-radius: 100px;
  background-color: #c4c4c4;
}

.media.video .player .progress {
  background-color: white;
}

.player .progress .active {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 0%;
  height: 4px;
  border-radius: 100px;
  background-color: #DC2828;
  box-shadow: -1px 0px 0px 0px #DC2828, 1px 0px 0px 0px #DC2828;
}

.player .volume_wrap {
  display: flex;
  align-items: center;
  margin-left: auto;
}

.player .volume {
  position: relative;
  width: 80px;
  height: 4px;
  border-radius: 100px;
  background-color: #e4e4e4;
  cursor: pointer;
}

.media.video .player .volume {
  background-color: white;
}

.player .current_volume {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 0%;
  height: 4px;
  border-radius: 100px;
  background-color: #DC2828;
}

.media.video.fullscreen {
  padding-top: 0;
  background-color: black;
}

.media.video.fullscreen .player {
  height: -webkit-max-content !important;
  height: -moz-max-content !important;
  height: max-content !important;
  background-color: black;
}

.media.video.fullscreen button.expand {
  background-image: url("../img/player/player-full-screen-exit2-white.svg");
}

.media.video.fullscreen .poster {
  z-index: -1;
}

.media.youtube_video::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.media.video iframe[src^="https://www.youtube"] + .player,
.media.video iframe[src^="https://www.rutube"] + .player {
  background-color: black;
}

.media.video iframe[src^="https://www.youtube"]:hover,
.media.video iframe[src^="https://www.rutube"]:hover {
  pointer-events: none;
}

*[id^=placeid_] {
  display: none;
}

@media (max-width: 1350px) {
  .container {
    padding: 0 72px;
  }

  .main-menu {
    padding: 77px 24px 0 26px;
  }

  .header_wrap_1,
  .header_wrap_2,
  .header_wrap_3 {
    height: 142px;
  }

  .header_wrap_1 {
    background-size: 711px 140px;
  }

  .header_wrap_2 {
    height: 110px;
    background-size: 317px 110px;
    background-position-x: 300px;
  }

  .header_wrap_3 {
    background-size: 551px 140px;
    background-position-x: 400px;
    margin-top: -26px;
  }

  .lead:last-of-type {
    margin-bottom: 97px;
  }

  .text:not(:only-child):first-of-type::before {
    margin-bottom: 26px;
  }

  .section_flags {
    padding-left: 72px;
  }

  .flags {
    padding-right: 72px;
  }

  .flag:not(:last-child) {
    margin-right: 32px;
  }

  .flag_header {
    margin: 0 auto 20px;
  }

  .section_1 {
    padding-top: 310px;
    padding-bottom: 314px;
  }

  .footer_menu {
    margin: 88px auto 0;
    padding: 67px 0;
  }
}

@media (max-width: 1023px) {
  .container {
    padding: 0 96px;
  }

  .desktop-br {
    display: none;
  }

  .tablet-br {
    display: inline;
  }

  .header {
    position: absolute;
    height: 100%;
  }

  .header_wrapper {
    padding: 32px 32px 0 56px;
    height: 150px;
  }

  .header_wrapper.scrolling {
    background: linear-gradient(180deg, #191919 29.16%, rgba(25, 25, 25, 0) 100%);
  }

  .main-menu {
    flex-direction: column;
    padding: 0;
    transform: none;
    top: initial;
    bottom: 342px;
    left: 56px;
    width: auto;
    margin: 0;
  }

  .main-menu li:not(:last-child) {
    margin-right: 0;
    margin-bottom: 7px;
  }

  .preview_button {
    left: 56px;
  }

  .lead {
    max-width: 576px;
  }

  .title {
    font-size: 60px;
    line-height: 107%;
    margin: 0 0 116px;
  }

  .section_flags {
    margin: 119px auto 120px;
    padding-left: 96px;
  }

  .flags {
    padding-right: 96px;
  }

  .flag_header {
    margin: 0 auto 22px;
  }

  .section_1 {
    padding-top: 238px;
    padding-bottom: 236px;
  }

  .section_2,
  .section_3,
  .section_5,
  .section_6,
  .section_7,
  .section_8,
  .section_9,
  .section_10 {
    padding-bottom: 234px;
  }

  .section_4.video {
    padding-bottom: 263px;
  }

  .footer {
    padding-top: 63px;
  }

  .footer_menu {
    margin: 129px auto 0;
    padding: 67px 0 80px;
  }

  .photo_1-4,
  .photo_5-11 {
    background-position: top center;
    background-size: 100% auto;
  }
}

@media (max-width: 1023px), (max-height: 700px) {
  .header_wrap_1,
  .header_wrap_2,
  .header_wrap_3 {
    height: 114px;
  }

  .header_wrap_1 {
    background-size: 573px 113px;
    margin-bottom: 0;
  }

  .header_wrap_2 {
    height: 89px;
    background-size: 256px 89px;
    background-position-x: 242px;
  }

  .header_wrap_3 {
    background-size: 445px 113px;
    background-position-x: 322px;
    margin-top: -23px;
  }
}

@media (max-width: 800px) {
  .header_wrap_2 {
    background-position-x: 122px;
  }

  .header_wrap_3 {
    background-position-x: 216px;
  }
}

@media (max-width: 660px) {
  .container {
    padding: 0 24px;
  }

  .mobile-br {
    display: inline;
  }

  .no-mobile-br {
    display: none;
  }

  .header_wrapper {
    padding: 16px 16px 0 15px;
    height: 120px;
    align-items: flex-start;
  }

  .burger-menu_button {
    width: 40px;
    height: 40px;
    background-size: 16px;
    margin-top: 16px;
  }

  header.menu-opened .burger-menu_wrap {
    padding: 20px 0;
  }

  header.menu-opened .burger-menu .close {
    width: 40px;
    height: 40px;
    top: 20px;
    right: 20px;
  }

  header.menu-opened .menu-title {
    padding: 0 40px;
    margin-top: 60px;
  }

  header.menu-opened .books {
    padding: 0 20px;
  }

  header.menu-opened .book {
    width: 262px;
    height: 328px;
  }

  .book:not(:last-of-type) {
    margin-right: 20px;
  }

  .main-menu {
    bottom: 147px;
    left: 25px;
  }

  .main-menu a,
  .main-menu li {
    font-size: 16px;
  }

  .main-menu li:not(:last-child) {
    margin-bottom: 5px;
  }

  .logo svg {
    width: 72px;
    height: 72px;
  }

  .preview_wrapper {
    padding-top: 120px;
  }

  .lead {
    font-size: 20px;
    line-height: 120%;
    margin: 0 auto 24px;
  }

  .lead:last-of-type {
    margin-bottom: 50px;
  }

  .title {
    font-size: 34px;
    line-height: 106%;
    margin: 0 0 61px;
  }

  .lead-text {
    font-size: 22px;
    line-height: 109%;
    margin: 74px auto 83px;
  }

  .lead-text::before {
    margin-bottom: 25px;
  }

  .lead-text::after {
    width: 11px;
    height: 11px;
    margin: 25px auto 0;
  }

  .section_flags {
    margin: 63px auto 69px;
    padding-left: 24px;
  }

  .flags {
    padding-right: 24px;
  }

  .flag:not(:last-child) {
    margin-right: 16px;
  }

  .section_1 {
    padding-top: 160px;
    padding-bottom: 139px;
  }

  .section_1 .text:first-of-type::before {
    width: 11px;
    height: 11px;
  }

  .section_2,
  .section_3,
  .section_5,
  .section_6,
  .section_7,
  .section_8,
  .section_9,
  .section_10 {
    padding-bottom: 139px;
    padding-top: 61px;
  }

  .section_4.video {
    padding-bottom: 161px;
  }

  .footer {
    text-align: left;
    padding-top: 34px;
  }

  .footer_link {
    display: none;
  }

  .footer_menu {
    flex-direction: column;
    padding: 24px 0 39px;
    margin: 0 auto;
  }

  .footer_menu a,
  .footer_menu li {
    font-size: 16px;
    line-height: 125%;
    letter-spacing: normal;
  }

  .footer_menu li:not(:last-child) {
    margin-right: 0;
    margin-bottom: 4px;
  }

  .photo_1-4 {
    background-image: url("../img/photo_1-4_mob.jpg");
  }

  .photo_5-11 {
    background-image: url("../img/photo_5-11_mob.jpg");
  }

  .media.video .big_play > .play {
    background-color: transparent;
  }
}

@media (max-width: 660px), (max-height: 400px) {
  .preview_button {
    display: none;
  }

  .header_wrap_1,
  .header_wrap_2,
  .header_wrap_3 {
    height: 48px;
  }

  .header_wrap_1 {
    background-size: 239px 48px;
    margin-bottom: 1px;
  }

  .header_wrap_2 {
    height: 37px;
    background-size: 107px 37px;
    background-position-x: 101px;
    margin-bottom: 0;
  }

  .header_wrap_3 {
    background-size: 185px 47px;
    background-position-x: 134px;
    margin-top: -8px;
  }
}

@media (max-width: 440px) {
  .mobile-small-br {
    display: inline;
  }

  .player .duration {
    margin-right: 0;
  }
}

@media (max-height: 400px) {
  .main-menu {
    flex-direction: column;
    padding: 0;
    transform: none;
    top: 47px;
    bottom: initial;
    left: 318px;
    width: auto;
    margin: 0;
  }
}

@media (max-height: 700px) {
  .photo_1-4,
  .photo_5-11 {
    background-position: top center;
  }
}