body {
  background: #eef;
  height: 100vh;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#sky {
  margin-top: -60px;
  -webkit-perspective: 400px;
          perspective: 400px;
  -webkit-filter: drop-shadow(0px 150px 10px rgba(0, 0, 0, 0.2));
          filter: drop-shadow(0px 150px 10px rgba(0, 0, 0, 0.2));
}
@-moz-document url-prefix() {
  #sky {
    filter: none;
  }
}
#sky div {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}
#sky .bird {
  -webkit-animation: fly 10000ms linear infinite;
          animation: fly 10000ms linear infinite;
}
#sky .bird .wind {
  position: absolute;
  left: 50%;
  width: 4px;
  height: 200px;
  margin-left: -2px;
  border-radius: 999px;
  overflow: hidden;
}
#sky .bird .wind:nth-child(1) {
  -webkit-transform: translate3d(-68px, 14px, 8px) rotateY(90deg);
          transform: translate3d(-68px, 14px, 8px) rotateY(90deg);
}
#sky .bird .wind:nth-child(1)::before {
  content: '';
  position: absolute;
  width: 4px;
  height: 300px;
  background: rgba(0, 148, 255, 0.3);
  border-radius: 999px;
  -webkit-transform: translateY(-300px);
          transform: translateY(-300px);
  -webkit-animation: wind 2133ms 4794ms linear infinite;
          animation: wind 2133ms 4794ms linear infinite;
}
#sky .bird .wind:nth-child(2) {
  -webkit-transform: translate3d(-128px, -70px, 71px) rotateY(90deg);
          transform: translate3d(-128px, -70px, 71px) rotateY(90deg);
}
#sky .bird .wind:nth-child(2)::before {
  content: '';
  position: absolute;
  width: 4px;
  height: 300px;
  background: rgba(100, 200, 52, 0.3);
  border-radius: 999px;
  -webkit-transform: translateY(-300px);
          transform: translateY(-300px);
  -webkit-animation: wind 2132ms 4707ms linear infinite;
          animation: wind 2132ms 4707ms linear infinite;
}
#sky .bird .wind:nth-child(3) {
  -webkit-transform: translate3d(-2px, 115px, -46px) rotateY(90deg);
          transform: translate3d(-2px, 115px, -46px) rotateY(90deg);
}
#sky .bird .wind:nth-child(3)::before {
  content: '';
  position: absolute;
  width: 4px;
  height: 300px;
  background: rgba(100, 200, 12, 0.3);
  border-radius: 999px;
  -webkit-transform: translateY(-300px);
          transform: translateY(-300px);
  -webkit-animation: wind 1385ms 2700ms linear infinite;
          animation: wind 1385ms 2700ms linear infinite;
}
#sky .bird .wind:nth-child(4) {
  -webkit-transform: translate3d(186px, 145px, -46px) rotateY(90deg);
          transform: translate3d(186px, 145px, -46px) rotateY(90deg);
}
#sky .bird .wind:nth-child(4)::before {
  content: '';
  position: absolute;
  width: 4px;
  height: 300px;
  background: rgba(100, 200, 20, 0.3);
  border-radius: 999px;
  -webkit-transform: translateY(-300px);
          transform: translateY(-300px);
  -webkit-animation: wind 2583ms 4635ms linear infinite;
          animation: wind 2583ms 4635ms linear infinite;
}
#sky .bird .wind:nth-child(5) {
  -webkit-transform: translate3d(108px, -134px, 83px) rotateY(90deg);
          transform: translate3d(108px, -134px, 83px) rotateY(90deg);
}
#sky .bird .wind:nth-child(5)::before {
  content: '';
  position: absolute;
  width: 4px;
  height: 300px;
  background: rgba(100, 200, 79, 0.3);
  border-radius: 999px;
  -webkit-transform: translateY(-300px);
          transform: translateY(-300px);
  -webkit-animation: wind 1200ms 1761ms linear infinite;
          animation: wind 1200ms 1761ms linear infinite;
}
#sky .bird .wind:nth-child(6) {
  -webkit-transform: translate3d(-175px, -126px, 17px) rotateY(90deg);
          transform: translate3d(-175px, -126px, 17px) rotateY(90deg);
}
#sky .bird .wind:nth-child(6)::before {
  content: '';
  position: absolute;
  width: 4px;
  height: 300px;
  background: rgba(100, 200, 59, 0.3);
  border-radius: 999px;
  -webkit-transform: translateY(-300px);
          transform: translateY(-300px);
  -webkit-animation: wind 2739ms 4884ms linear infinite;
          animation: wind 2739ms 4884ms linear infinite;
}
#sky .bird .wind:nth-child(7) {
  -webkit-transform: translate3d(161px, 115px, -98px) rotateY(90deg);
          transform: translate3d(161px, 115px, -98px) rotateY(90deg);
}
#sky .bird .wind:nth-child(7)::before {
  content: '';
  position: absolute;
  width: 4px;
  height: 300px;
  background: rgba(100, 200, 26, 0.3);
  border-radius: 999px;
  -webkit-transform: translateY(-300px);
          transform: translateY(-300px);
  -webkit-animation: wind 1978ms 1045ms linear infinite;
          animation: wind 1978ms 1045ms linear infinite;
}
#sky .bird .wind:nth-child(8) {
  -webkit-transform: translate3d(-6px, -117px, 87px) rotateY(90deg);
          transform: translate3d(-6px, -117px, 87px) rotateY(90deg);
}
#sky .bird .wind:nth-child(8)::before {
  content: '';
  position: absolute;
  width: 4px;
  height: 300px;
  background: rgba(100, 200, 19, 0.3);
  border-radius: 999px;
  -webkit-transform: translateY(-300px);
          transform: translateY(-300px);
  -webkit-animation: wind 1850ms 1449ms linear infinite;
          animation: wind 1850ms 1449ms linear infinite;
}
#sky .bird .wind:nth-child(9) {
  -webkit-transform: translate3d(83px, -110px, 93px) rotateY(90deg);
          transform: translate3d(83px, -110px, 93px) rotateY(90deg);
}
#sky .bird .wind:nth-child(9)::before {
  content: '';
  position: absolute;
  width: 4px;
  height: 300px;
  background: rgba(100, 200, 178, 0.3);
  border-radius: 999px;
  -webkit-transform: translateY(-300px);
          transform: translateY(-300px);
  -webkit-animation: wind 2718ms 2462ms linear infinite;
          animation: wind 2718ms 2462ms linear infinite;
}
#sky .bird .wind:nth-child(10) {
  -webkit-transform: translate3d(173px, -12px, 84px) rotateY(90deg);
          transform: translate3d(173px, -12px, 84px) rotateY(90deg);
}
#sky .bird .wind:nth-child(10)::before {
  content: '';
  position: absolute;
  width: 4px;
  height: 300px;
  background: rgba(100, 200, 229, 0.3);
  border-radius: 999px;
  -webkit-transform: translateY(-300px);
          transform: translateY(-300px);
  -webkit-animation: wind 1715ms 4511ms linear infinite;
          animation: wind 1715ms 4511ms linear infinite;
}
#sky .bird .wind:nth-child(11) {
  -webkit-transform: translate3d(146px, -36px, -84px) rotateY(90deg);
          transform: translate3d(146px, -36px, -84px) rotateY(90deg);
}
#sky .bird .wind:nth-child(11)::before {
  content: '';
  position: absolute;
  width: 4px;
  height: 300px;
  background: rgba(100, 200, 176, 0.3);
  border-radius: 999px;
  -webkit-transform: translateY(-300px);
          transform: translateY(-300px);
  -webkit-animation: wind 2519ms 4979ms linear infinite;
          animation: wind 2519ms 4979ms linear infinite;
}
#sky .bird_body {
  position: relative;
  width: 30px;
  height: 40px;
  background: #ae6bc9;
}
#sky .bird_head {
  position: absolute;
  top: -30px;
  border-right: 15px solid transparent;
  border-bottom: 30px solid #95b9e0;
  border-left: 15px solid transparent;
  -webkit-transform-origin: 50% 100%;
          transform-origin: 50% 100%;
  -webkit-transform: rotateX(-20deg);
          transform: rotateX(-20deg);
}
#sky .bird_wing_left {
  position: absolute;
  left: -30px;
  height: 30px;
  border-right: 30px solid #adc8e9;
  border-bottom: 10px solid transparent;
  -webkit-transform-origin: 100% 0;
          transform-origin: 100% 0;
  -webkit-animation: wingLeft 1000ms cubic-bezier(0.36, 0.1, 0.16, 1) infinite alternate;
          animation: wingLeft 1000ms cubic-bezier(0.36, 0.1, 0.16, 1) infinite alternate;
}
#sky .bird_wing_left_top {
  position: absolute;
  left: -30px;
  border-right: 30px solid #8497dc;
  border-bottom: 30px solid transparent;
  -webkit-transform-origin: 100% 0;
          transform-origin: 100% 0;
  -webkit-animation: wingLeft 1000ms cubic-bezier(0.545, 0.08, 0.52, 0.975) infinite alternate;
          animation: wingLeft 1000ms cubic-bezier(0.545, 0.08, 0.52, 0.975) infinite alternate;
}
#sky .bird_wing_right {
  position: absolute;
  left: 30px;
  height: 30px;
  border-left: 30px solid #77becb;
  border-bottom: 10px solid transparent;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  -webkit-animation: wingRight 1000ms cubic-bezier(0.36, 0.1, 0.16, 1) infinite alternate;
          animation: wingRight 1000ms cubic-bezier(0.36, 0.1, 0.16, 1) infinite alternate;
}
#sky .bird_wing_right_top {
  position: absolute;
  border-left: 30px solid #b772de;
  border-bottom: 30px solid transparent;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  -webkit-animation: wingRight 1000ms cubic-bezier(0.545, 0.08, 0.52, 0.975) infinite alternate;
          animation: wingRight 1000ms cubic-bezier(0.545, 0.08, 0.52, 0.975) infinite alternate;
}
#sky .bird_tail_left {
  position: absolute;
  top: 40px;
  border-right: 30px solid transparent;
  border-top: 40px solid #c875eb;
  -webkit-transform-origin: 50% 0;
          transform-origin: 50% 0;
  -webkit-transform: rotateX(-20deg);
          transform: rotateX(-20deg);
}
#sky .bird_tail_right {
  position: absolute;
  top: 40px;
  border-left: 30px solid transparent;
  border-top: 40px solid #a39ee7;
  -webkit-transform-origin: 50% 0;
          transform-origin: 50% 0;
  -webkit-transform: rotateX(-20deg);
          transform: rotateX(-20deg);
}

@-webkit-keyframes fly {
  0% {
    -webkit-transform: rotateX(-120deg) rotateZ(0deg) rotateX(10deg);
            transform: rotateX(-120deg) rotateZ(0deg) rotateX(10deg);
  }
  100% {
    -webkit-transform: rotateX(-120deg) rotateZ(360deg) rotateX(10deg);
            transform: rotateX(-120deg) rotateZ(360deg) rotateX(10deg);
  }
}

@keyframes fly {
  0% {
    -webkit-transform: rotateX(-120deg) rotateZ(0deg) rotateX(10deg);
            transform: rotateX(-120deg) rotateZ(0deg) rotateX(10deg);
  }
  100% {
    -webkit-transform: rotateX(-120deg) rotateZ(360deg) rotateX(10deg);
            transform: rotateX(-120deg) rotateZ(360deg) rotateX(10deg);
  }
}
@-webkit-keyframes wingLeft {
  0% {
    -webkit-transform: rotateY(-40deg);
            transform: rotateY(-40deg);
  }
  100% {
    -webkit-transform: rotateY(40deg);
            transform: rotateY(40deg);
  }
}
@keyframes wingLeft {
  0% {
    -webkit-transform: rotateY(-40deg);
            transform: rotateY(-40deg);
  }
  100% {
    -webkit-transform: rotateY(40deg);
            transform: rotateY(40deg);
  }
}
@-webkit-keyframes wingRight {
  0% {
    -webkit-transform: rotateY(40deg);
            transform: rotateY(40deg);
  }
  100% {
    -webkit-transform: rotateY(-40deg);
            transform: rotateY(-40deg);
  }
}
@keyframes wingRight {
  0% {
    -webkit-transform: rotateY(40deg);
            transform: rotateY(40deg);
  }
  100% {
    -webkit-transform: rotateY(-40deg);
            transform: rotateY(-40deg);
  }
}
@-webkit-keyframes wind {
  0% {
    -webkit-transform: translateY(-300px);
            transform: translateY(-300px);
  }
  100% {
    -webkit-transform: translateY(200px);
            transform: translateY(200px);
  }
}
@keyframes wind {
  0% {
    -webkit-transform: translateY(-300px);
            transform: translateY(-300px);
  }
  100% {
    -webkit-transform: translateY(200px);
            transform: translateY(200px);
  }
}

