html{
  font-size:.21vw;
}

#w span{
  display:none;
}
#w span[rel="480"]{
  display:block;
}

.mob{
  display:block !important;
}
.desk{
  display:none !important;
}

#page{
  _background:url(images/m/bg@2x.jpg) no-repeat center top;
  _background-image:url(images/m/kopa.jpg);
  background-size:100% auto;
}
#page::before,
#page > .bg{
  display:none;
}


#head{
  width:100rem;
  height:95rem;
}
#head .menu > a{
  top:25rem;
  left:30rem;
}
#head .menu > div{
  width:480rem;
  height:100%;
}
#head .menu > div > div{
  width:480rem;
  height:800rem;
  _background:rgba(255,0,0,.3);
  _backdrop-filter: none;
  padding:90rem 54rem 0 54rem;
  border-top-right-radius:30rem;
  border-bottom-right-radius:30rem;
}
#head .menu > div > div{
  width:480rem;
  height:800rem;
  background-image:url(images/m/menu_bg@2x.png);
}
#head .menu ul li{
  font-size:26rem;
  line-height:30rem;
  padding:62rem 0 6rem 0;
  border-top:0;
  border-bottom:1rem solid #821969;
}
#head .menu ul.soc{
  width:auto;
  margin:100rem 0 0 60rem;
}
#head .menu ul.soc li{
  margin:0 10rem;
}
#head .menu ul.soc li a{
  width:40rem;
  height:40rem;
}
#head .menu ul.soc li a.fb{
  background-image:url(images/soc/fb@2x.png);
  background-image:url(images/soc/fb.svg), none;
}
#head .menu ul.soc li a.ig{
  background-image:url(images/soc/ig@2x.png);
  background-image:url(images/soc/ig.svg), none;
}
#head .menu ul.soc li a.yt{
  background-image:url(images/soc/yt@2x.png);
  background-image:url(images/soc/yt.svg), none;
}
#head .menu ul.soc li a.tt{
  background-image:url(images/soc/tt@2x.png);
  background-image:url(images/soc/tt.svg), none;
}


.center{
  width:100%;
  height:800rem;
}
#content .block .title{
  font-size:28rem;
  line-height:30rem;
}


#content .block.home{
  background-image:url(images/m/home.jpg);
}
#content .block.home .logo{
  display:none;
}
#content .block.home h1{
  display:none;
}
#content .block.home h2{
  width:270rem;
  height:78rem;
  margin:615rem 0 0 106rem;
  background-image:url(images/prizes@2x.png);
  _background-image:url(images/prizes.svg), none;
}
#content .block.home .buttons{
  margin:0 0 50rem 0;
}
#_content .block.home .buttons a{
  font-size:27rem;
  line-height:56rem;
  background-image:url(images/button@2x.png);
  width:280rem;
  height:56rem;
  padding:11rem 0 0 0;
  border-bottom-right-radius:6rem;
  border-bottom-left-radius:6rem;
}
#content .block.home .buttons a{
  font-size:20rem;
  line-height:38rem;
  width:180rem;
  height:40rem;
  border-radius:16rem;
}


#content .block.mechanics{
  _background:none;
}
#content .block.mechanics .center{
  padding:152rem 0 165rem 0;
}
#content .block.mechanics .title{
  margin-bottom:53rem;
}
#content .block.mechanics .about{
  width:370rem;
}
#content .block.mechanics .about li{
  font-size:14rem;
  line-height:72rem;
  margin:0 0 24rem 0;
  height:76rem;
  border-radius:13rem;
  padding:0 0 0 68rem;
}
#content .block.mechanics .about li span{
  font-size:14rem;
  line-height:16rem;
}
#content .block.mechanics .about li::before{
  font-size:16rem;
  line-height:40rem;
  width:40rem;
  height:40rem;
  left:17rem;
  top:18rem;
}
#content .block.mechanics .about li::after{
  width:20rem;
  height:72rem;
  background-image:url(images/arrow_right@2x.png);
  background-image:url(images/arrow_right.svg), none;
  right:-31rem;
  top:52rem;
}
#content .block.mechanics .about li:nth-child(even)::after{
  width:24rem;
  height:88rem;
  background-image:url(images/arrow_left@2x.png);
  background-image:url(images/arrow_left.svg), none;
  left:-31rem;
  right:auto;
  top:49rem;
}




#content .block.register{
  background:rgba(255,0,0,.2);
}
#content .block.register::before{
  width:100%;
  height:1008rem;
  background-image:url(images/m/register2.png);
  _background:none;
  top:-105rem;
}
#content .block.register .center{
  padding-top:137rem;
  height:662rem;
}
#content .block.register .card{
  width:375rem;
  height:524rem;
  border-radius:20rem;
  _background-color: rgba(255, 255, 255, .7);
  _backdrop-filter:none;
  padding:37rem 25rem;
}
#content .block.register .title{
  font-size:24rem;
  line-height:25rem;
  margin:0 0 25rem 0;
}
#content .block.register .fields + .fields{
  margin-top:3rem;
}
#content .block.register .fields li{
  width:100%;
  display:block;
  margin:0 0 3rem 0;
}
#content .block.register .fields li.empty{
  display:none;
}
#content .block.register .fields + .fields li{
  width:100%;
  display:block;
}
#content .block.register .fields .text input{
  font-size:14rem;
  line-height:30rem;
  padding:0 15rem;
  border-radius:4rem;
}
#content .block.register .fields .text label{
  font-size:14rem;
  line-height:20rem;
  margin:0 0 7rem 0;
}
#content .block.register .fields li.choose{
  margin-bottom:12rem;
}
#content .block.register .fields li.choose h4{
  font-size:14rem;
  line-height:20rem;
  margin:0 0 7rem 0;
}
div.choose{
  height:30rem;
}
div.choose span{
  font-size:10rem;
  line-height:30rem;
  height:30rem;
  padding:0 35rem 0 15rem;
  border-radius:4rem;
}
div.choose label{
  background-image:url(images/choose@2x.png);
  background-image:url(images/choose.svg), none;
  width:8rem;
  height:9rem;
  margin:11rem 15rem 0 0;
}
.err div.choose label{
  background-image:url(images/choose_err@2x.png);
  background-image:url(images/choose_err.svg), none;
}
#content .block.register .fields .check label{
  font-size:10rem;
  line-height:12rem;
  padding:0 0 0 25rem;
}
#content .block.register .fields .check label::before,
#content .block.register .fields .check label::after{
  width:14rem;
  height:14rem;
  left:0;
  top:0;
}
#content .block.register .fields .check label::before,
#content .block.register .fields .check.err input:checked + label::before{
  border:1rem solid #821969;
  border-radius:4rem;
}
#content .block.register .fields .check input:checked + label::after{
  width:14rem;
  height:14rem;
  background-image:url(images/check@2x.png);
  background-image:url(images/check.svg), none;
  left:1rem;
  top:1rem;
}
#content .block.register .alert{
  width:340rem;
  border-radius:20rem;
  top:50rem;
  left:15rem;
}
#content .block.register .alert .close{
  width:28rem;
  height:28rem;
  background-image:url(images/check@2x.png);
  background-image:url(images/check.svg), none;
  right:20rem;
  top:20rem;
}
#content .block.register .alert div{
  font-size:30rem;
  line-height:35rem;
  padding:80rem 20rem 50rem 20rem;
}
#content .block.register .submit{
  width:180rem;
  height:36rem;
  margin:33rem 0 0 70rem;
}
#content .block.register .submit button{
  font-size:16rem;
  line-height:36rem;
  height:36rem;
  padding:0 20rem;
  border-radius:4rem;
}
#content .block.register .info{
  margin-top:130rem;
}
#content .block.register .info h3{
  font-size:40rem;
  line-height:45rem;
}
#content .block.register .off{
  margin-top:170rem;
}





#content .block.festivals{
  _background:none;
}
#content .block.festivals > .top{
  height:103rem;
}
#content .block.festivals > .top::after{
  height:1008rem;
  background-image:url(images/m/register.png);
}
#content .block.festivals .center{
  height:800rem;
}
#content .block.festivals .title{
  position:relative;
  padding-top:49rem;
}
#content .block.festivals .cards{
  width:480rem;
  height:650rem;
  margin:38rem 0 0 0;
}
#content .block.festivals .cards .nav{
  bottom:42rem;
  width:430rem;
}
#content .block.festivals .cards .nav span{
  width:8rem;
  height:8rem;
  margin:0 0 0 7rem;
}
#content .block.festivals .cards .item{
  width:380rem;
  height:560rem;
  background-image:url(images/m/card.png);
  _background:none;
  margin:0 50rem;
}
#content .block.festivals .cards .item em{
  width:380rem;
}
#content .block.festivals .cards .item:nth-child(even){
  margin-top:0;
}
#content .block.festivals .cards .item > div{
  margin:81rem 32rem 0 32rem;
  position:relative;
}
#content .block.festivals .cards .item h2{
  font-size:26rem;
  line-height:30rem;
  margin:0 0 5rem 0;
}
#content .block.festivals .cards .item h4{
  font-size:20rem;
  line-height:22rem;
  margin:0 0 29rem 0;
  padding:0 0 7rem 0;
}
#content .block.festivals .cards .item .profile{
  width:75rem;
  height:75rem;
  top:-27rem;
  right:-1rem;
  border:4rem solid #ffffff;
}
#content .block.festivals .cards .item .video{
  width:316rem;
  height:316rem;
}
#content .block.festivals .cards .item h3{
  font-size:20rem;
  line-height:22rem;
}
#content .block.festivals .cards .item li{
  font-size:14rem;
  line-height:20rem;
}
#content .block.festivals .cards .item p{
  font-size:14rem;
  line-height:16rem;
}
#window .card{
  width:440rem;
  padding:30rem 15rem;
  margin:50rem 0;
}
#window .card .video video{
  width:410rem;
  _height:410rem;
}
#window .card .video a.play{
  width:410rem;
  _height:410rem;
}



#content .block.winners{
  _background:none;
}
#content .block.winners .center{
  background:url(images/m/winners@2x.png) no-repeat center top;
  background-size:100% auto;
  padding-bottom:234rem;
}
#content .block.winners .title{
  padding:48rem 0 0 0;
}
#content .block.winners .center > h3{
  font-size:58rem;
  line-height:120%;
  color:#ffffff;
  width:340rem;
  text-decoration:none;
  text-align:center;
  padding:160rem 0 0 80rem;
  margin:0;
  position:relative;
}
#content .block.winners .list{
  width:410rem;
  margin:50rem auto 0 auto;
}
#content .block.winners .list .item{
  margin:0 0 13rem 0;
}
#content .block.winners .list .item label{
  font-size:14rem;
  line-height:60rem;
  height:60rem;
  border-radius:5rem;
}
#content .block.winners .list .item label::before{
  border-radius:5rem;
}
#content .block.winners .list .item label span{
  padding:0 0 0 65rem;
}
#content .block.winners .list .item label span::before{
  width:40rem;
  height:40rem;
  font-size:16rem;
  line-height:40rem;
  left:12rem;
  top:10rem;
}
#content .block.winners .list .item label span::after{
  width:20rem;
  height:20rem;
  right:8rem;
  top:19rem;
  background-image:url(images/arrow@2x.png);
  background-image:url(images/arrow.svg), none;
}
#content .block.winners .list .item label b{
  font-weight:inherit;
  color:#8d006c;
}
#content .block.winners .list .item div{
  font-size:14rem;
  line-height:16rem;
  margin-top:13rem;
  border-radius:5rem;
  padding:20rem 12rem 50rem 12rem;
}
#content .block.winners .list .item div::before{
  border-radius:5rem;
}
#content .block.winners .list .item div h3{
  font-size:22rem;
  line-height:25rem;
  margin:0 0 15rem 0;
}
#content .block.winners .list .item div h3 small{
  font-size:12rem;
  line-height:14rem;
  margin:0 0 5rem 0;
}
#content .block.winners .list .item div h3 small span::before{
  margin:0 13rem;
}
#content .block.winners .list .item div li{
  padding:6rem 0 6rem 10rem;
}
#content .block.winners .list .item div li:nth-child(even){
  padding-left:12rem;
}
#content .block.winners .list .item div li b,
#content .block.winners .list .item div li small{
  display:block;
}
#content .block.winners .list .item div li b br{
  display:none;
}
#content .block.winners .list .item div li b{
  font-size:14rem;
  line-height:16rem;
  width:auto;
  margin:0 0 5rem 0;
}
#content .block.winners .list .item div li small{
  font-size:10rem;
  line-height:12rem;
}
#content .block.winners .list .item div li small span{
  display:inline-block;
}
#content .block.winners .list .item div li small span::before{
  content:'–';
  margin:0 8rem;
}



#content .block.rules{
  _background:none;
}
#content .block.rules > .top{
  height:103rem;
}
#content .block.rules > .top::after{
  height:1008rem;
  background-image:url(images/m/register.png);
}
#content .block.rules .center{
  height:auto;
  padding-bottom:100rem;
}
#content .block.rules .title{
  padding:49rem 0 0 0;
}
#content .block.rules .about{
  width:410rem;
  margin:45rem auto 0 auto;
}
#content .block.rules .about h3{
  font-size:16rem;
  line-height:18rem;
  margin:0 0 7rem 0;
}
#content .block.rules .about ul{
  margin:0 0 30rem 0;
}
#content .block.rules .about li{
  font-size:16rem;
  line-height:18rem;
  padding:0 0 5rem 0;
}
#content .block.rules .about li::before{
  margin:4rem 5rem 0 0;
}
#content .block.rules .about h4{
  font-size:16rem;
  line-height:18rem;
  margin:30rem 0 0 0;
}





#footer::before{
  display:none;
}
#footer > div{
  width:100%;
  height:36rem;
  line-height:36rem;
  background:url(images/foot52.png) no-repeat left center;
  background-size:auto 100%;
  background-image:url(images/m/foot36.png);
  bottom:-36rem;
  bottom:0;
}
#footer span{
  font-size:10rem;
  line-height:12rem;
  font-weight:bold;
}
#footer span + span::before{
  padding:0 10rem;
}
