/* ====== Media: up to 767px ====== */
@media (max-width: 767px) {
  body {
    min-width: 300px;
  }

  .container {
    width: 86%;
  }

  .m_modal a.close {
    top: 15px;
    right: 15px;
    width: 40px;
    height: 40px;
  }

  .m_modal a.close:after,
  .m_modal a.close:before {
    top: 8px;
  }

  .modal-data {
    min-height: calc(100% + 1px);
  }
}

/* ====== Media: 768–1025px ====== */
@media (min-width: 768px) and (max-width: 1025px) {
  body {
    min-width: 980px;
  }

  .container {
    width: 940px;
  }
}

/* ====== Media: up to 767px (layout/grids/header) ====== */
@media (max-width: 767px) {
  [data-b-type*=header][data-b-type*=floating] [data-floating=true].floating {
    position: static;
  }

  [data-b-type*=header][data-b-type*=floating] .fixer {
    display: none !important;
  }

  .title-1 + .grid,
  .title-2 + .grid {
    margin-top: 35px;
  }

  .grid-2,
  .grid-2-spaced,
  .grid-3,
  .grid-3-spaced,
  .grid-4,
  .grid-4-spaced {
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    margin: 0;
  }

  .grid-2 .grid-item,
  .grid-2-spaced .grid-item,
  .grid-3 .grid-item,
  .grid-3-spaced .grid-item,
  .grid-4 .grid-item,
  .grid-4-spaced .grid-item {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
  }

  .grid-3 .grid-item,
  .grid-3-spaced .grid-item,
  .grid-4 .grid-item,
  .grid-4-spaced .grid-item {
    max-width: 380px;
  }

  .grid-2,
  .grid-2-spaced {
    max-width: 480px;
    margin: 0 auto;
  }

  .grid-2 .grid-item,
  .grid-2-spaced .grid-item {
    width: 100%;
    margin: 10px 0;
    max-width: 580px;
  }

  .grid-1,
  .grid-1-spaced {
    width: 100%;
    max-width: 480px;
    margin: -10px auto;
  }

  .grid-1 .grid-item,
  .grid-1-spaced .grid-item {
    margin: 10px 0;
  }
}

/* ====== Menu burger ====== */
.menu-burger {
  pointer-events: all;
  position: relative;
  z-index: 1;
  text-align: right;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  line-height: 0;
  max-width: 40px;
  max-height: 40px;
}

.menu-burger span {
  position: relative;
  display: inline-block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  -webkit-tap-highlight-color: transparent;
}

.menu-burger i {
  display: block;
  width: 24px;
  height: 2px;
  background-color: currentColor;
  top: 50%;
  left: 8px;
  top: calc(50% - 1px);
  left: calc(50% - 12px);
  position: absolute;
  opacity: 1;
  transform-origin: right;
  transition: background-color .3s ease, opacity .3s ease, transform .3s ease;
  will-change: background-color, opacity, transform, left;
}

.menu-burger i:first-child {
  margin-top: -5px;
}

.menu-burger i:last-child {
  margin-top: 5px;
}

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

/* ====== Mobile menu ====== */
.mobile-menu {
  position: relative;
  z-index: 5;
}

.mobile-menu .menu-burger {
  position: fixed;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  right: 7%;
  left: auto;
  top: 30px;
  margin-right: -8px;
  display: none;
  opacity: 0;
}

.mobile-menu .menu-burger.animate {
  will-change: transform;
}

.mobile-menu .menu-burger.animate.floating {
  transition: all .1s cubic-bezier(.4, 0, 1, 1);
}

.mobile-menu .menu-burger.animate.floating.show {
  transition: all .35s;
}

.mobile-menu .menu-burger span {
  background: #000;
  color: #fff;
}

/* Mobile menu: up to 767px */
@media (max-width: 767px) {
  .mobile-menu .menu-burger {
    top: 10px;
  }

  .mobile-menu .menu-burger.floating {
    opacity: 1;
    display: block;
    transform: translateY(-60px);
  }

  .mobile-menu .menu-burger.floating.show {
    cursor: pointer;
    transform: translateY(0);
  }
}

/* Mobile menu: 768–1025px */
@media (min-width: 768px) and (max-width: 1025px) {
  .mobile-menu .menu-burger {
    right: 13px;
  }
}

.mobile-menu .menu-wrapper {
  visibility: hidden;
  vertical-align: middle;
  position: fixed;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  pointer-events: none;
}

.mobile-menu .menu-wrapper:after {
  content: "";
  display: block;
  margin: 0 auto;
  width: 65px;
  height: 65px;
  border: 1px solid hsla(0, 0%, 61%, .2);
  border-radius: 50%;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIHZpZXdCb3g9IjAgMCAzMCAzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBpZD0iaWNvbiI+PHBhdGggZD0iTTE2LjQ5IDE1bDEzLjIwMyAxMy4yMDNhMS4wNTUgMS4wNTUgMCAwIDEtMS40OSAxLjQ5TDE1IDE2LjQ5IDEuNzk4IDI5LjY5MmExLjA1MiAxLjA1MiAwIDEgMS0xLjQ5LTEuNDlMMTMuNTEzIDE1IC4zMDggMS44Yy0uNDEtLjQxMi0uNDEtMS4wOCAwLTEuNDkyLjQxLS40MSAxLjA3OC0uNDEgMS40OSAwTDE1IDEzLjUxIDI4LjIwNC4zMDhjLjQxLS40MSAxLjA4LS40MSAxLjQ5IDAgLjQxLjQxMi40MSAxLjA4IDAgMS40OUwxNi40OSAxNXoiIGZpbGw9IiNGRkYiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZmlsbC1vcGFjaXR5PSIuOSIvPjwvc3ZnPg==);
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 30px;
  bottom: 20px;
  left: 50%;
  margin-left: -33px;
  visibility: 0;
  transform: rotate(-75deg);
}

.mobile-menu .menu-wrapper:after,
.mobile-menu .overlay {
  position: absolute;
  opacity: 0;
  transition: all .35s ease-out;
}

.mobile-menu .overlay {
  background: rgba(0, 0, 0, .9);
  z-index: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  visibility: hidden;
}

.mobile-menu .menu-content {
  color: #fff;
  position: relative;
  z-index: 2;
  padding: 25px 20px;
  height: calc(100% - 100px);
  opacity: 0;
  visibility: hidden;
  transform: translateY(30px);
  transition: all .35s ease-out;
  overflow: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.mobile-menu .scroll-wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column;
  flex-flow: column;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-align: center;
  align-items: center;
  min-height: 100%;
}

.mobile-menu .menu-holder ul {
  text-align: center;
  -ms-flex-flow: column;
  flex-flow: column;
}

.mobile-menu .menu-holder ul li a {
  font-size: 1rem;
  line-height: 1.286;
  padding: 15px 0;
}

.mobile-menu .logo-holder,
.mobile-menu .socials-holder,
.mobile-menu .text-holder {
  display: none;
}

.mobile-menu.show {
  z-index: 20;
}

.mobile-menu.show .menu-burger {
  opacity: 0;
  visibility: hidden;
}

.mobile-menu.show .menu-wrapper {
  visibility: visible;
}

.mobile-menu.show .menu-wrapper:after {
  transform: rotate(0);
  opacity: 1;
  visibility: visible;
  transition-delay: .2s;
}

.mobile-menu.show .menu-content,
.mobile-menu.show .overlay {
  pointer-events: all;
  opacity: 1;
  visibility: visible;
}

.mobile-menu.show .menu-content {
  transform: translateY(0);
  transition-delay: .1s;
}

/* ====== Misc mobile rules ====== */
@media (max-width: 767px) {
  .gost {
    display: none;
  }

  #cookies {
    width: min(92vw, 360px);
    height: 270px;
  }
}
