@import url('https://fonts.googleapis.com/css?family=Roboto');

html {
  height: 100%;
}

body {
  padding: 0;
  margin: 0;
  border: 0;
  outline: 0;
  font: 14px / 16px 'Roboto', sans-serif;
  color: #000;
  background-color: #fff;
  max-width: 100%;
  min-height: 600px;
  height: 100%;
}

img {
  border: none;
}

a {
  text-decoration: none;
  cursor: pointer;
}

*:focus {
  outline: none;
}

.clear {
  clear: both;
}

h1,
h2,
h3,
h4,
h5,
h6,
ul,
li,
em,
strong,
pre,
code {
  margin: 0;
  padding: 0;
  font-weight: normal;
  font-style: normal;
}

ul {
  list-style: none;
}

p {
  margin: 0;
}

.main {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
  background: url(../img/fon.jpg);
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-color: #0a324b;
}

.snow-canvas {
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: fixed;
  pointer-events: none;
  z-index: 99;
  opacity: 0;
  will-change: transform;
  -webkit-transition: 1.5s;
  -moz-transition: 1.5s;
  -o-transition: 1.5s;
  transition: 1.5s;
}

.snow-canvas.active {
  opacity: 1;
  will-change: transform;
  -webkit-transition: 1.5s;
  -moz-transition: 1.5s;
  -o-transition: 1.5s;
  transition: 1.5s;
}

.logo,
.logo-blue {
  position: absolute;
  width: 25vh;
  display: inline-block;
  top: 5vh;
  right: 3%;
  z-index: 2001;
  opacity: 1;
}

.logo-blue {
  opacity: 0;
}

.logo img,
.logo-blue img {
  width: 100%;
}

.s_ng {
  position: absolute;
  width: 50vw;
  top: 35vh;
  right: 8%;
  opacity: 0;
  transition: 0.3s;
}

.bashnya {
  position: absolute;
  width: 120px;
  min-width: 6.5vw;
  max-height: 96%;
  object-fit: contain;
  left: 18vw;
  bottom: 2vh;
}

.osn_svet {
  position: absolute;
  top: 0;
  left: 0;
  width: 53vw;
  opacity: 0;
  transition: 3s;
}

.verh_svet {
  position: absolute;
  top: 0;
  left: 0;
  width: 45vw;
  opacity: 0;
  transition: 3s;
}

.verh_svet.active {
  animation: shine 3s alternate infinite;
  transition: 3s;
}

@keyframes shine {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.gift {
  position: absolute;
  transform: translateY(-40vh);
  opacity: 0;
  transition: opacity 3s ease-in;
  top: 0;
}

.gift.active {
  transform: translateY(86vh);
  opacity: 1;
  transition: transform 10s ease-in, opacity 3s ease-in;
}

.gift-1 {
  left: 24vw;
  width: 150px;
}

.gift-7 {
  width: 150px;
  left: 28vw;
  z-index: 3;
}

.gift-9 {
  left: 24vw;
  width: 210px;
}

.gift.gift-9.active {
  transform: translateY(72vh);
}

.gift-6 {
  left: 34vw;
  width: 125px;
}

.gift.gift-6.active {
  transform: translateY(78vh);
}

.gift-5 {
  left: 28vw;
  width: 180px;
}

.gift-4 {
  left: 4vw;
  width: 222px;
}

.gift-2 {
  left: 12vw;
  width: 166px;
}

.gift-8 {
  left: 12vw;
  width: 200px;
  z-index: 3;
}

.gift-3 {
  width: 130px;
  left: 10vw;
  z-index: 2;
}

.elki-wrapper {
  position: absolute;
  width: 100vw;
  left: 0;
  bottom: 0;
}

.elki-wrapper img {
  max-width: 100%;
}

.elki_1,
.elki_2 {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: 3s;
}

.elki_2.active {
  animation: shine 3s alternate infinite;
}

@keyframes shine {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.s-ng {
  width: 88%;
  height: 20%;
  top: 64%;
  left: 6%;
}

.map {
  position: absolute;
  left: 0;
  height: 75%;
  width: auto;
  opacity: 0;
  -webkit-transition: 2s;
  -moz-transition: 2s;
  -o-transition: 2s;
  transition: 2s;
}

.snow-canvas.active {
  -webkit-transition: 12.5s;
  -moz-transition: 12.5s;
  -o-transition: 12.5s;
  transition: 12.5s;
}

.text-block {
  display: inline-block;
  max-width: 60vw;
  width: 95vh;
  position: absolute;
  right: 5%;
  top: 40%;
  transform: translate(0, -40%);
  padding: 2%;
  border-radius: 3px;
  z-index: 20;
  -webkit-transition: 2.5s;
  -moz-transition: 2.5s;
  -o-transition: 2.5s;
  transition: 2.5s;
  z-index: 105;
}

.text-1,
.text-2,
.text-3,
.text-4,
.text-5,
.text-6 {
  max-width: 100%;
  opacity: 0;
  will-change: transform;
  -webkit-transition: 1.5s;
  -moz-transition: 1.5s;
  -o-transition: 1.5s;
  transition: 1.5s;
}

@keyframes goup {
  0% {
    transform: translate(0%, 0%);
  }

  100% {
    transform: translate(78%, -40%);
  }
}

.text-block .text {
  width: 100%;
  display: block;
}

.social {
  position: absolute;
  right: 1.5%;
  bottom: 0;
  z-index: 2000;
  background: #36759d;
  padding: 0.8% 0.8% 0.2% 0.8%;
  display: none;
}

.social li {
  margin: 0 0 10px 0;
}

.social li img {
  width: 4.5vh;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

.social li a:hover img {
  opacity: .7;
}

.buttonPlayer {
  position: absolute;
  bottom: 5vh;
  left: 3%;
  z-index: 2000;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

.buttonPlayer a {
  cursor: pointer;
  opacity: .75;
  margin-right: 3vh;
}

.buttonPlayer a:hover {
  opacity: 1;
}

.buttonPlayer a img {
  width: 7vh;
}

.soc {
  width: 140px;
  height: 140px;
  position: absolute;
  bottom: -10px;
  right: 0;
  z-index: 2000;
  display: flex;
  flex-direction: column;
  gap: 10px;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

.soc a {
  position: relative;
  width: 80px;
  height: 80px;
  margin-top: 30px;
  margin-left: 30px;
}

.soc:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 130%;
  height: 130%;
  border-radius: 50%;
  background-color: #c7efff;
}

.soc img {
  max-width: 100%;
}

.youtube:hover,
.tg:hover {
  scale: 1.1;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

#loader {
  background: url(../img/loader.gif) center center no-repeat;
  height: 43px;
  width: 157px;
  left: 50%;
  top: 50%;
  position: absolute;
  z-index: 100001;
  margin: -35px 0 0 -79px;
  background-size: 100%;
}

#loader p {
  position: absolute;
  bottom: -35px;
  left: 0;
  font: 16px / 16px 'Roboto', sans-serif;
  color: #cc3333;
  letter-spacing: 13px;
}

.mask-load {
  background: #fff;
  z-index: 100000;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  position: fixed;
}

.active {
  -webkit-transition: 2.5s;
  -moz-transition: 2.5s;
  -o-transition: 2.5s;
  transition: 2.5s;
  opacity: 1;
}



@media (max-width: 992px) {
  .main {
    width: 100%;
    min-height: 720px;
  }

  .text-block {
    max-width: 70% !important;
    width: 90% !important;
    right: 5% !important;
    left: unset !important;
    top: 24% !important;
    transform: translatex(5%) !important;
  }

  .buttonPlayer {
    top: 5vh;
    left: 3%;
  }

  .bashnya {
    left: 11vw;
  }

  .gift-1 {
    left: 12vw;
    width: 75px;
  }

  .gift-7 {
    width: 75px;
    left: 28vw;
    z-index: 3;
  }

  .gift-9 {
    left: 24vw;
    width: 105px;
  }

  .gift.gift-9.active {
    transform: translateY(72vh);
  }

  .gift-6 {
    left: 34vw;
    width: 62px;
  }

  .gift.gift-6.active {
    transform: translateY(78vh);
  }

  .gift-5 {
    left: 28vw;
    width: 90px;
  }

  .gift-4 {
    left: 4vw;
    width: 111px;
  }

  .gift-2 {
    left: 12vw;
    width: 83px;
  }

  .gift-8 {
    left: 12vw;
    width: 100px;
    z-index: 3;
  }

  .gift-3 {
    width: 65px;
    left: 10vw;
    z-index: 2;
  }
}

@media (max-width: 767px) {
  .main {
    min-height: 720px;
  }

  .buttonPlayer a img {
    width: 12vw;
  }

  .logo,
  .logo-blue {
    position: absolute;
    width: 42vw;
  }

  .youtube {
    top: 12vh;
  }

  .tg {
    top: 21vh;
  }

  .text-block {
    top: 30% !important;
  }

  .bashnya {
    left: 12vw;
  }

  .gift-1 {
    left: 12vw;
    width: 75px;
  }

  .gift-7 {
    width: 75px;
    left: 28vw;
    z-index: 3;
  }

  .gift-9 {
    left: 24vw;
    width: 105px;
  }

  .gift.gift-9.active {
    transform: translateY(72vh);
  }

  .gift-6 {
    left: 34vw;
    width: 62px;
  }

  .gift.gift-6.active {
    transform: translateY(78vh);
  }

  .gift-5 {
    left: 28vw;
    width: 90px;
  }

  .gift-4 {
    left: 4vw;
    width: 111px;
  }

  .gift-2 {
    left: 12vw;
    width: 83px;
  }

  .gift-8 {
    left: 12vw;
    width: 100px;
    z-index: 3;
  }

  .gift-3 {
    width: 65px;
    left: 10vw;
    z-index: 2;
  }
}