@font-face {
  src:url('/fonts/oleo.ttf');
  font-family: oleo;
}

@font-face {
  src:url('/fonts/nexabold.otf');
  font-family: nexabold;
}


*{
  box-sizing: border-box;
}

html,body{
  background-size: cover;
  background-position:center left;
  background-repeat: no-repeat;
  min-height: 100vh;
  height:100%;
  width:100%;
  margin:0;
}


.bling{
  position:relative;
  overflow: hidden;
}

.bling:after{
  content:"";
  width:20%;
  height:200%;
  background: linear-gradient(to right,rgba(0,0,0,0),rgba(255,255,255,0.3),rgba(255,255,255,0.5),rgba(255,255,255,0.3),rgba(0,0,0,0));
  position:absolute;
  left:-100%;
  top:-50%;
  -webkit-transform:rotate(45deg);
  transform:rotate(45deg);
  animation: bling 5s linear infinite;
  animation-delay: 1s;
  pointer-events: none;
}

.container{
  width:100%;
  height:100%;
  position:relative;
}

.content{
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  display:flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.left, .right{
  flex:1;
  display:flex;
  flex-direction: column;
  align-items: center;
  position:relative;
}

.trophy_top{
  width: 22vmin;
  z-index: 3;
}

.trophy_bottom{
  width: 22vmin;
  z-index: 1;
}

.country_icons{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate3d(-50%,-50%,0);
  width:12vmin;
  height:12vmin;
  z-index: 2;
}

.country_icon{
  display:flex;
  align-items: center;
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  -webkit-animation: rotate 12s linear infinite;
	        animation: rotate 12s linear infinite;
}

.country_icon img{
  width:100%;
  transition: 0.3s;
}

.country_icon:hover img{
  transform: scale(1.5);
}

.logo{
  height:12vmin;
  filter:drop-shadow(1px 1px 2px black);
}

.subheader{
  color:#ffd200;
  font-family: oleo;
  font-size: 5.5vmin;
  margin:5vmin 0;
  filter:drop-shadow(1px 1px 2px black);
}

.btns{
  display:flex;
  align-items: center;
  font-family: nexabold;
  margin-bottom: 20vmin;
}

.btn{
  position:relative;
  display:flex;
  align-items: center;
  text-decoration: none;
  color:black;
  font-size: clamp(13px,3vmin,30px);
  padding:1vmin 4vmin;
  white-space: nowrap;
  height:6vmin;
  min-height: 40px;
  cursor:pointer;
}

.mobile_btn{
  padding-right:5vmin;
  padding-left:2vmin;
}

.join_btn{
  justify-content:flex-end;
  padding-right:2vmin;
  padding-left:5vmin;
}

.btn>*{
  z-index: 4;
}

.btn_icon{
  height:90%;
  margin-right: 1vmin;
}

.btn_background{
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index: 2;
  transition: 0.3s;
}

.middle_btn{
  justify-content: center;
  margin:0 -1vmin;
  position:relative;
}

.light{
  height:100%;
  position:absolute;
  pointer-events: none;
  z-index: 2;
}

.top_light{
  bottom:50%;
  -webkit-animation: top-light 2s cubic-bezier(0.250, 0.460, 0.450, 0.940) infinite;
          animation: top-light 2s cubic-bezier(0.250, 0.460, 0.450, 0.940) infinite;
}

.bottom_light{
  top:50%;
  -webkit-animation: bottom-light 2s cubic-bezier(0.250, 0.460, 0.450, 0.940) infinite;
          animation: bottom-light 2s cubic-bezier(0.250, 0.460, 0.450, 0.940) infinite;
}

.join_btn .btn_icon{
  filter:brightness(0);
}

.btn:hover{
  color:#e2b14d;
}

.btn:hover .btn_background{
  filter:brightness(0);
}

.join_btn:hover img{
  filter:none;
}


.dropdown{
  position:absolute;
  left:50%;
  top:100%;
  width:85%;
  transform:translateX(-50%);
  display:flex;
  flex-direction: column;
  display:none;
  z-index: 1;
  perspective: 80px;
}

.country_item{
  display:flex;
  align-items: center;
  text-decoration: none;
  color:white;
    background: rgba(0,0,0,0.5);
  padding:2vmin 2vmin;
  font-size: clamp(15px,3vmin,25px);
  position:relative;
  -webkit-animation: tilt-in-fwd-tr 0.6s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
	        animation: tilt-in-fwd-tr 0.6s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

.arrow{
  margin-left: auto;
}


.country_item:nth-child(2){
  animation-delay: 0.3s;
}
.country_item:nth-child(3){
  animation-delay: 0.6s;
}
.country_item:nth-child(4){
  animation-delay: 0.9s;
}


.country_item img{
  height:3vmin;
  min-height: 40px;
  margin-right: 1vmin;
  transition: 0.2s;
}

.country_item span{
  transition: 0.2s;
}

.country_item::before{
  content:"";
  left:0;
  bottom:0;
  width:100%;
  height:2px;
  position: absolute;
  background: linear-gradient(to right, transparent, #e2b14d, transparent);
}

.languages{
  position:absolute;
  left:100%;
  display:flex;
  align-items: center;
  display:none;
}

.language{
  border:solid 2px white;
  border-radius: 100%;
  width:4.5vmin;
  height:4.5vmin;
  display:flex;
  align-items: center;
  justify-content: center;
  margin-left: 1vmin;
  font-size: 2vmin;
  -webkit-animation: puff-in-center 0.4s cubic-bezier(0.470, 0.000, 0.745, 0.715) both;
	        animation: puff-in-center 0.4s cubic-bezier(0.470, 0.000, 0.745, 0.715) both;
}

.middle_btn:hover .dropdown{
  display:flex;
}

.country_item:hover .languages{
  display:flex;
}

.country_item:hover img{
  transform:scale(1.3);
}

.country_item:hover>span{
  color:#e2b14d;
  transform:skewX(-10deg);
}


/**
 * ----------------------------------------
 * animation rotate
 * ----------------------------------------
 */
@-webkit-keyframes rotate {
  0%  { transform: rotate(0deg) translateY(24vmin) rotate(0deg) scale(1); filter:drop-shadow(0 15px 10px #f5d89d); }
  25%  { transform: rotate(90deg) translateY(24vmin) rotate(-90deg) scale(.75); filter:drop-shadow(15px 0 10px #f5d89d); }
  50%  { transform: rotate(180deg) translateY(24vmin) rotate(-180deg) scale(.60); filter:drop-shadow(0 -15px 10px #f5d89d); }
  75%  { transform: rotate(270deg) translateY(24vmin) rotate(-270deg) scale(.75); filter:drop-shadow(-15px 0 10px #f5d89d); }
  100%  { transform: rotate(360deg) translateY(24vmin) rotate(-360deg) scale(1); filter:drop-shadow(0 15px 10px #f5d89d); }
}
@keyframes rotate {
  0%  { transform: rotate(0deg) translateY(24vmin) rotate(0deg) scale(1); filter:drop-shadow(0 15px 10px #f5d89d); }
  25%  { transform: rotate(90deg) translateY(24vmin) rotate(-90deg) scale(.75); filter:drop-shadow(15px 0px 10px #f5d89d); }
  50%  { transform: rotate(180deg) translateY(24vmin) rotate(-180deg) scale(.60); filter:drop-shadow(0 -15px 10px #f5d89d); }
  75%  { transform: rotate(270deg) translateY(24vmin) rotate(-270deg) scale(.75); filter:drop-shadow(-15px 0 10px #f5d89d); }
  100%  { transform: rotate(360deg) translateY(24vmin) rotate(-360deg) scale(1); filter:drop-shadow(0 15px 10px #f5d89d); }
}



/**
 * ----------------------------------------
 * animation tilt-in-fwd-tr
 * ----------------------------------------
 */
@-webkit-keyframes tilt-in-fwd-tr {
  0% {
    -webkit-transform: rotateY(20deg) rotateX(35deg) translate(300px, -300px) skew(-35deg, 10deg);
            transform: rotateY(20deg) rotateX(35deg) translate(300px, -300px) skew(-35deg, 10deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: rotateY(0) rotateX(0deg) translate(0, 0) skew(0deg, 0deg);
            transform: rotateY(0) rotateX(0deg) translate(0, 0) skew(0deg, 0deg);
    opacity: 1;
  }
}
@keyframes tilt-in-fwd-tr {
  0% {
    -webkit-transform: rotateY(20deg) rotateX(35deg) translate(300px, -300px) skew(-35deg, 10deg);
            transform: rotateY(20deg) rotateX(35deg) translate(300px, -300px) skew(-35deg, 10deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: rotateY(0) rotateX(0deg) translate(0, 0) skew(0deg, 0deg);
            transform: rotateY(0) rotateX(0deg) translate(0, 0) skew(0deg, 0deg);
    opacity: 1;
  }
}


@-webkit-keyframes bling {

  from{
    left:-100%;
  }

  8%{
    left:200%;
  }

  to{
    left:200%;
  }

}
@keyframes bling {


    from{
      left:-100%;
    }

    8%{
      left:200%;
    }

    to{
      left:200%;
    }

}


@-webkit-keyframes top-light {

  0%{
    left:0%;
    opacity: 0;
  }

  50%{
    opacity: 0.8;
  }

  100%{
    left:50%;
    opacity: 0;
  }

}
@keyframes top-light {

  0%{
    left:0%;
    opacity: 0;
  }

  50%{
    opacity: 0.8;
  }

  100%{
    left:50%;
    opacity: 0;
  }


}


@-webkit-keyframes bottom-light {

  0%{
    right:0%;
    opacity: 0;
  }

  50%{
    opacity: 0.8;
  }

  100%{
    right:50%;
    opacity: 0;
  }

}
@keyframes bottom-light {

  0%{
    right:0%;
    opacity: 0;
  }

  50%{
    opacity: 0.8;
  }

  100%{
    right:50%;
    opacity: 0;
  }


}



/**
 * ----------------------------------------
 * animation puff-in-center
 * ----------------------------------------
 */
@-webkit-keyframes puff-in-center {
  0% {
    -webkit-transform: scale(2);
            transform: scale(2);
    -webkit-filter: blur(4px);
            filter: blur(4px);
    opacity: 0;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-filter: blur(0px);
            filter: blur(0px);
    opacity: 1;
  }
}
@keyframes puff-in-center {
  0% {
    -webkit-transform: scale(2);
            transform: scale(2);
    -webkit-filter: blur(4px);
            filter: blur(4px);
    opacity: 0;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-filter: blur(0px);
            filter: blur(0px);
    opacity: 1;
  }
}



/*-----------------------------------------------------------------*/
@media only screen and (max-width: 1200px) {
  .left {
    display:none;
  }


}

@media only screen and (max-width: 550px) {

  .logo{
    height:18vmin;
  }

  .right{
    margin-bottom: 20vmin;
  }

  .subheader{
    margin:10vmin 0;
  }

  .btns{
    flex-direction: column;
  }

  .middle_btn{
    width:70vw;
  }

  .mobile_btn{
    position:fixed;
    left:1vmin;
    top:1vmin;
    color:white;
  }

  .join_btn{
    position:fixed;
    right:1vmin;
    top:1vmin;
    color:white;
  }

  .mobile_btn .btn_background, .join_btn .btn_background{
    display:none;
  }


  .btn_icon{
    height:6vmin;
    margin-right: 2vmin;
  }

  .join_btn .btn_icon{
    filter:brightness(0) invert(1);
  }

  .dropdown{
    display:flex;
    width:100%;
    top:120%;
    border-radius: 2vmin;
    overflow: hidden;
  }

  .country_item{
    padding:4vmin 3vmin;
    font-size:4.5vmin;
  }

  .arrow{
    display:none;
  }

  .languages{
    display:flex;
    right:5%;
    left:auto;
  }

  .language{
    width:8vmin;
    height:8vmin;
    font-size: 3.5vmin;
  }

  .country_item img{
    height:5vmin;
    margin-right: 2.5vmin;
  }

}
